feat(muse#83): Phase 1 -- migrate_snapshot_content_ids
Detects and corrects unified-store snapshots whose declared snapshot_id does not reproduce their own manifest -- the class of corruption found in musehub#134's investigation that muse.core.migrate's existing snapshot/ commit ID recomputation cannot touch (it only reads the legacy pre- unified-object-store layout).
Standalone module (muse/core/snapshot_content_migrate.py), deliberately not folded into muse code migrate's default pass list -- see the module docstring and docs/issues/snapshot-content-id-migration-plan.md for why.
6 tests, all green: correct snapshots produce zero changes (SC_01), mismatched snapshots are detected and corrected non-destructively (SC_02), dry-run computes without writing (SC_03), the legacy layout is never read by this function (SC_04), directories are included in recomputation (SC_05), a missing objects dir is a clean no-op (SC_06).
Semantic Changes
47 symbols
0 comments
muse hub commit comment sha256:bda202d7c00307949ce90fda73fc9bd0e29255918d90861a6dbb91038775e760 --body "your comment"
No comments yet. Be the first to start the discussion.