gabriel / muse public
feat BREAKING pack dev
AI Agent gabriel · 61 days ago · Apr 18, 2026 · Diff

feat(pack): Phase 3 — fail loudly on MISSING objects; clean up push.py dead code

- build_mpack: raise ValueError on MISSING objects (absent locally, no promisor remote configured). PROMISED objects (absent but covered by a promisor remote) are silently skipped. Uses object_state() from object_availability — same tristate logic as verify-pack/verify. - _push_stream: same MISSING → raise / PROMISED → skip fix applied to the streaming push object loop via load_promisor_remotes(). - push.py dry-run: replaced build_mpack call (which loaded all blobs just to call len()) with walk_commits() — pure BFS, no blob I/O. - Removed dead imports from push.py: build_mpack (only needed for the now-replaced dry-run), build_mpack_from_walk (imported but never called). - 4 new TDD tests in TestPackObjectsMissingObjectValidation; 202 passing.

sha256:fc37cb724364b6f127e376f9d065792fbbbc2ea4bc19456df131b30d5d8baa0f sha
sha256:06f931586d4f95f5de7b250a330c34021a848068565769c4c73cee039b9a0764 snapshot
← Older Oldest on dev
All commits
Newer → Latest on dev

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