feat(verify): snapshot store sweep, nothing_checked flag, zero-byte detection
Three supercharges to muse verify:
1. Snapshot store sweep — after BFS walk from branch refs, also checks every .muse/snapshots/*.msgpack not yet visited. Catches missing objects after partial clones where the branch ref file was never written (clone crashed before the final step). Previously these repos showed all_ok=True because the BFS found 0 branch refs and checked nothing.
2. nothing_checked flag — VerifyResult and --json output now include nothing_checked: bool. True when refs=0, commits=0, and snapshots=0, meaning the repo was structurally empty. Distinguishes 'clean' from 'nothing was checked' for scripts and repair tools.
3. Zero-byte object detection — always flags object files with st_size==0 as corruption, even with --no-objects / check_objects=False. Zero bytes cannot match any real SHA-256 OID (e3b0c442… is the empty-bytes hash). Previously these slipped through --no-objects undetected.
9 new tests in TestVerifySupercharged covering all three capabilities plus edge cases (no double-reporting, sweep deduplication, orphan snapshots with present vs missing objects).
0 comments
muse hub commit comment sha256:30637a38c2c205fb4bbc0568ed26ce4c8dc05636ad069a8486019d224f4b3c20 --body "your comment"
No comments yet. Be the first to start the discussion.