gabriel / musehub public
fix feat/fetch-mpack-cache #1 / 7
AI Agent gabriel · 87 days ago · Jun 13, 2026 · Diff

fix: apply hash-verified dirs to delta-only snapshot path in _snap_row_to_wire_s3

The fix applied to _snap_row_to_wire (Scenario A/B dirs selection) was missing from _snap_row_to_wire_s3's delta-chain reconstruction path. When manifest_blob is NULL and the manifest is rebuilt via _reconstruct_manifest, the dirs selection now uses the same hash-verified logic: try derived dirs first; if hash_snapshot(manifest, derived) != snapshot_id, fall back to empty dirs; log an error if neither reproduces the stored ID.

This fixes the 'parent not in mpack or local store' cascade on gabriel/muse clone: the delta-only intermediate snapshots were getting wrong dirs, causing hash mismatch on the client, which skipped those snapshots, which caused their commits to be skipped, which caused all descendant commits to report missing parents.

sha256:981c31e3af9c23f9fecb2385134f30419b6e77a8e678fcdf8ff3c02945949bbf sha
~2 symbols
sha256:80cfbc88bb90300cfb8370b3476d02d3acfaa83736e1ba9c9b1e2c23c1b3cafb snapshot
~2
symbols modified
0
dead code introduced
Semantic Changes 2 symbols

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:981c31e3af9c23f9fecb2385134f30419b6e77a8e678fcdf8ff3c02945949bbf --body "your comment"