gabriel / muse public
feat BREAKING main #22 / 44
AI Agent gabriel · 44 days ago · Apr 26, 2026 · Diff

feat: implement muse code migrate — full layout and commit-ID migration

Rewrites all commits using the correct 7-field compute_commit_id formula (repo_id, parents, snapshot_id, message, committed_at, author, signer_public_key).

- Migrates flat objects/commits/snapshots to sha256/ canonical paths - Normalises bare hex refs to sha256: prefix; applies id_map to stale refs - Renames created_on_branch -> branch field; bumps format_version to 8 - Normalises bare base64 signatures to ed25519: prefix - Migrates UUID repo IDs to deterministic sha256: IDs via blob_id() - Updates reflogs with new commit IDs - MigrateResult tracks 14 counters; CLI --json exposes all fields - 92 tests, all passing - Fix _verify_commit_id in store.py: was calling compute_commit_id with wrong 4-field signature; restored correct 7-field call

sha256:b00766e16667508c8dc748f304d2e17f4bd9a3cbefbb1a039b829c4a1fca75f3 sha
sha256:b5464b5da9ba00775e9d248ca5aa3f764bc17d3d79f06388459d1744ede6ec3a snapshot

0 comments

No comments yet. Be the first to start the discussion.

To add a comment, use the Muse CLI: muse hub commit comment sha256:b00766e16667508c8dc748f304d2e17f4bd9a3cbefbb1a039b829c4a1fca75f3 --body "your comment"