feat(mist): Phase 3 — snapshot indexer writes anchors to normalized tables
- New musehub/services/musehub_mist_indexer.py: build_mist_anchor_index(session, repo_id, head_commit_id): walks HEAD commit → snapshot_id → manifest → MusehubObject (content_cache / disk / S3) → extract_mist_symbol_anchors → upserts into musehub_symbol_history_entries (ON CONFLICT DO NOTHING) and musehub_symbol_intel (upsert on repo_id+address); returns mist.anchor_index intel result tuple - musehub_intel_providers.py MistProvider.compute refactored: always calls build_mist_anchor_index first (VCS + API paths); appends mist.anchors blob result only when MusehubMist row exists (API path) - 13 TDD tests: importability, history entry fields, multiple artifacts, binary skip, symbol intel rows, idempotency, missing object graceful skip, commit without snapshot, result tuple shape, MistProvider delegation
0 comments
muse hub commit comment sha256:2b25b8ee68018f1375948dc273cae101d091c6f23afc056cf216758c3ba43c94 --body "your comment"
No comments yet. Be the first to start the discussion.