feat: bundle.index job writes objects to MinIO and registers refs
The job was indexing snapshots and commits but never writing object blobs to MinIO or inserting musehub_objects / musehub_object_refs rows. This caused the ghost guard to fail on any stream push after a bundle push and made fetch/clone unable to serve file content.
Changes: - Extract raw_objects from bundle, decompress zstd in-memory - Parallel MinIO writes capped by _get_blob_put_sem() (100 slots) - Bulk INSERT musehub_objects (on_conflict_do_nothing — idempotent) - _upsert_object_refs for all objects in bundle - Extend return dict: objects_written, object_refs_written, elapsed_ms
No per-object sha256 re-verification — sha256(wire_bytes) == bundle_key already authenticated every byte. Checking again is checking the work of the hash.
TDD: test_bundle_index_job.py — 6 tests green.
0 comments
muse hub commit comment sha256:638a778fa91d16b2db87440016d98abc40e0fc7ac598279fe4c665a166265169 --body "your comment"
No comments yet. Be the first to start the discussion.