8000 fix(iiif): keep each namespace's copy of imported IIIF media apart by adeelahmad · Pull Request #201 · adeelahmad/lense · GitHub
[go: up one dir, main page]

Skip to content

fix(iiif): keep each namespace's copy of imported IIIF media apart - #201

Merged
adeelahmad merged 1 commit into
mainfrom
claude/project-thread-qt650x-iiif-import-path
Oct 6, 2026
Merged

adeelahmad merged 1 commit into
mainfrom
claude/project-thread-qt650x-iiif-import-path

Conversation

@adeelahmad
Copy link
Copy Markdown
Owner

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.py import the manifest into a second namespace and compare the paths; they fail on main and pass here.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change; ! in the title)

Checklist:

  • The title is a Conventional Commit.
  • My code follows the code style of this project (make hooks checks it on commit).
  • I added or updated tests.
  • My change requires documentation updates, and I have updated docs/ accordingly.
  • Users need more than the title to understand it, so I wrote it under ## Unreleased in CHANGELOG.md.

🤖 Generated with Claude Code

https://claude.ai/code/session_01W42z4FbekWr33b6791svQQ


Generated by Claude Code

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
@adeelahmad adeelahmad self-assigned this Oct 6, 2026
@adeelahmad
adeelahmad merged commit 929774f into main Oct 6, 2026
5 checks passed
@adeelahmad
adeelahmad deleted the claude/project-thread-qt650x-iiif-import-path branch October 6, 2026 10:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

0