Repository navigation
fix(iiif): keep each namespace's copy of imported IIIF media apart - #201
Merged
Merged
Conversation
The import copy was keyed by the media's fingerprint only, so importing the same manifest into a second namespace overwrote the first namespace's sealed file with one sealed under the other key. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01W42z4FbekWr33b6791svQQ
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requested by Adeel · project thread
Description
Before: importing the same IIIF manifest into two namespaces wrote both copies of the media to one file,
iiif-import/<fingerprint>. Each namespace seals its files with its own key, so the second import replaced the first namespace's file, and its recording could no longer be played.After: the copy lives under
iiif-import/<namespace>/<fingerprint>, so each namespace keeps its own. Files already imported keep their stored paths and still open.Motivation and Context
This came out of threat-model question Q43 (per-namespace keys must never share a sealed file).
Steps to reproduce (if appropriate):
The new lines in
tests/api/test_iiif.pyimport the manifest into a second namespace and compare the paths; they fail on main and pass here.Types of changes
!in the title)Checklist:
make hookschecks it on commit).docs/accordingly.## UnreleasedinCHANGELOG.md.🤖 Generated with Claude Code
https://claude.ai/code/session_01W42z4FbekWr33b6791svQQ
Generated by Claude Code