gabriel / musehub public
refactor BREAKING task/remove-repo-id-from-commit-snapshot #1 / 1
AI Agent gabriel · 124 days ago · May 14, 2026 · Diff

refactor: replace MusehubCommit/Snapshot.repo_id with MusehubCommitRef/SnapshotRef joins

Remove all query-site references to the removed repo_id column on MusehubCommit and MusehubSnapshot. Every SELECT that filtered by commit.repo_id now joins through MusehubCommitRef (or MusehubSnapshotRef) to resolve repo membership.

Fixes issue #61 — muse clone after push from a shutil.copytree'd repo returned an empty bundle because the global content-addressed object model was violated by the now-removed repo_id column.

Files updated: sitemap, topics, ui (hero stats), ui_agents, ui_blame, ui_commits, ui_proposals, ui_releases, ui_symbols, ui_topics, ui_user_profile, ui_view, users, services/musehub_symbol_indexer, deploy/backfill_intel_jobs, deploy/backfill_move_to_address, tests (gc, gc_background_tasks, bundle_push_async, identity_repo_phase2/3, commit_meta_promotion, object_store_canonical, push_commit_created_at).

sha256:cf5be13b6b7093777bdf3edec21500eb05383f7447f2d0a0f32d31878c0bbbe3 sha
+36 ~166 symbols
sha256:aab642ad49ef7e418346c2461cc87998be221ed8936292a8ac9f5844a9a46d8a snapshot
+36
symbols added
~166
symbols modified
0
dead code introduced
Semantic Changes 202 symbols
~ deploy/backfill_intel_jobs.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L17–17
~ musehub/api/routes/musehub/blame.py .py 1 symbol added, 2 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L26–26
~ musehub/api/routes/musehub/sitemap.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L43–43
~ musehub/api/routes/musehub/topics.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L35–35
~ musehub/api/routes/musehub/ui.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L19–19
~ musehub/api/routes/musehub/ui_agents.py .py 1 symbol added, 2 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L23–23
~ musehub/api/routes/musehub/ui_blame.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L44–44
~ musehub/api/routes/musehub/ui_commits.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L34–34
~ musehub/api/routes/musehub/ui_proposals.py .py 1 symbol added, 2 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L30–30
~ musehub/api/routes/musehub/ui_topics.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L37–37
~ musehub/api/routes/musehub/ui_view.py .py 1 symbol added, 6 symbols modified
~ musehub/api/routes/musehub/users.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L33–33
~ musehub/services/file_last_commits.py .py 1 symbol added, 2 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L16–16
~ musehub/services/musehub_context.py .py 1 symbol added, 7 symbols modified
~ musehub/services/musehub_credits.py .py 1 symbol added, 2 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L24–24
~ musehub/services/musehub_discover.py .py 1 symbol added, 4 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L27–27
~ musehub/services/musehub_divergence.py .py 1 symbol added, 2 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L40–40
~ musehub/services/musehub_gc.py .py 1 symbol added, 6 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L35–35
~ run_gc
~ musehub/services/musehub_issues.py .py 1 symbol added, 2 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L24–24
~ musehub/services/musehub_profile.py .py 1 symbol added, 5 symbols modified
~ musehub/services/musehub_social.py .py 1 symbol added, 5 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L28–28
~ musehub/services/release_analysis.py .py 1 symbol added, 2 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L27–27
~ tests/test_bundle_push_async.py .py 2 symbols added, 4 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L41–41
+ MusehubSnapshotRef import import MusehubSnapshotRef L41–41
~ tests/test_gc.py .py 2 symbols added, 6 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L27–27
+ MusehubSnapshotRef import import MusehubSnapshotRef L27–27
~ tests/test_gc_background_tasks.py .py 1 symbol added, 5 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L23–23
~ tests/test_identity_repo_phase2.py .py 1 symbol added, 5 symbols modified
~ tests/test_identity_repo_phase3.py .py 1 symbol added, 5 symbols modified
~ tests/test_object_store_canonical.py .py 1 symbol added, 4 symbols modified
← Older Oldest on task/remove-repo-id-from-commit-snapshot
All commits
Newer → Latest on task/remove-repo-id-from-commit-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:cf5be13b6b7093777bdf3edec21500eb05383f7447f2d0a0f32d31878c0bbbe3 --body "your comment"