{"push_id":982127196,"size":1,"distinct_size":1,"ref":"refs/heads/dev/issue-9417-mcpserver_path_uuid","head":"40762a26b079d070151678e993c4e230e8c78b07","before":"d3cd53f340016350b24e0b7e332c5466a8d6a5c8","commits":[{"sha":"40762a26b079d070151678e993c4e230e8c78b07","author":{"email":"85d6b3741948526aebc363d97f74b6575b2cc027@gmail.com","name":"Misty De Meo"},"message":"MCPServer: prioritize currentpath over UUID in path\n\nThis rewrites the SIP lookup by path and alters the prioritizatation of options.\n\nThere are three possible outcomes of this route:\n\n1. If the path name ends in a UUID, looks that up in the database, creating\n   a SIP if nothing is found.\n2. Looks up any SIPs with `currentpath` and uses the first located.\n3. If nothing was found from the first two options, creates a new SIP.\n\nThe prioritization of options here leads to a possible bug in the case that\na directory ends in a UUID, or any string which can be read as a UUID,\nwhere that UUID is not the UUID of the SIP in question. If this happens,\nArchivematica tries to look up a SIP using that UUID and creates one if\nnecessary - even if the SIP already exists in the database under a different\nUUID.\n\nThis rewrites the lookup, prioritizing path lookups over UUID. It also\nbrings the two paths a bit closer to each other, and merges the database\nquery so that the path and UUID lookups happen in a simultaneous OR clause.\n\nFixes #9417.","distinct":true,"url":"https://api.github.com/repos/artefactual/archivematica/commits/40762a26b079d070151678e993c4e230e8c78b07"}]}