gabriel / muse public
fix patch task/unified-object-store #3 / 9
AI Agent gabriel · 115 days ago · May 21, 2026 · Diff

fix: update tests and impl for unified object store migration

- Update test helpers to use object_path instead of commit_path/snapshot_path - Fix _force_write_commit to write JSON+header to unified store (chmod read-only files before overwrite) - Fix _plant_commit_file to write stub directly to object_path bypassing hash verification - Fix blob_id test assertions to use sha256('blob <size>\0' + data) header format - Fix GC symlink warning: use skip_symlinks=False + manual check + logger.warning - Fix GC reachability: use canonical prefixed IDs (not bare hex) in reachable set - Fix snapshot_scale cache version assertion: 2 -> 3 - Fix mpack verify-pack: use fake_id() for missing snapshot IDs (not bare hex) - Fix write_snapshot: add assert_not_symlink guard on shard directory - Fix snapshot tests: use object_path/objects_dir/write_object; remove zstd-on-disk assumptions - Fix stdin+--write bare hex bug in hash-object: use read_object() to strip header - Fix fsync/mkstemp test assertions to match write_bytes (not atomic write) pattern - Fix bit-flip tests: use JSON-aware helpers to parse/repack unified object format - Fix commit.py: catch MissingParentError and retry with skip_parent_check=True

sha256:a61ac0eff73b2b1c688d3834a223075ebf069b20ac84b06d0f9833d7f88cb792 sha
+9 ~120 −5 symbols
sha256:a6dbf4775df67d5dc8c7954fe48aa6ccc4183931b261293cc2bb06d613da2da8 snapshot
+9
symbols added
~120
symbols modified
−5
symbols removed
0
dead code introduced
Semantic Changes 134 symbols
~ muse/cli/commands/bridge.py .py 2 symbols modified
~ muse/core/gc.py .py 1 symbol modified
~ muse/core/store.py .py 1 symbol modified
~ tests/test_cmd_invariants.py .py 1 symbol modified
~ tests/test_code_manifest.py .py 1 symbol modified
~ tests/test_hash_object_canonical.py .py 1 symbol added, 3 symbols modified
~ tests/test_integrity_I10_bit_flip.py .py 2 symbols added, 2 symbols removed, 44 symbols modified
commit_path import import commit_path L48–48
snapshot_path import import snapshot_path L48–48
+ _parse_obj_payload function function _parse_obj_payload L108–112
+ _repack_obj_payload function function _repack_obj_payload L115–122
~ _repo
~ tests/test_phase2_parent_existence.py .py 1 symbol added, 2 symbols removed, 7 symbols modified
commit_path import import commit_path L28–28
msgpack import import msgpack L24–24
+ object_path import import object_path L27–27

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