fix
BREAKING
#61
task/fix-issue-61-global-commits
#2 / 2
fix(#61): make commits and snapshots globally content-addressed
Remove repo_id from musehub_commits and musehub_snapshots. These are content-addressed objects identified by their SHA-256 hash alone — they do not belong to any repo. Per-repo membership is now tracked in musehub_commit_refs and musehub_snapshot_refs, mirroring the existing musehub_object_refs pattern.
Fix the root cause of issue #61: when two repos push the same commits the ON CONFLICT DO NOTHING skip was correct, but the subsequent BFS fetch filtered by repo_id and found nothing for the second repo.
All write paths (wire push, sync ingest, repo create, proposal merge) updated to insert into the ref tables. All critical read paths in the fetch/clone flow updated to join through the ref tables.
sha256:9c1794ce96efd36e3492875d6487dc60b0f674d0123370a5284e97d5bd68d0a4
sha
sha256:287bd0687f25bd9db6b3df9c6f887f549db6795fe918042acc44a72277a5546f
snapshot
← Older
Oldest on task/fix-issue-61-global-commits
All commits
Newer
fix(#61): add migration, TDD tests, and blob-page query fix
sha256:2734174b3dcc180563b77be1cae0dda48801d5e76c2dcf64d63231bd02912b53
0 comments
To add a comment, use the Muse CLI:
muse hub commit comment sha256:9c1794ce96efd36e3492875d6487dc60b0f674d0123370a5284e97d5bd68d0a4 --body "your comment"
No comments yet. Be the first to start the discussion.