fix(migrate): warn on empty cat.read() blob instead of silent drop
Add 7 integrity tests to TestMigrateIntegrity covering: - all manifest OIDs exist in the local object store - stored object SHA-256 matches its filename - every commit references an existing snapshot - binary files written correctly - object deduplication (unique versions only) - no empty (zero-byte) objects written - cat.read() empty blob emits WARNING, not silent drop
Fix the silent-drop bug: when git cat-file returns b'' for a non-null blob SHA, migrate now emits a logger.warning() naming the path and blob prefix instead of silently excluding the file from the manifest.
sha256:32f4b6cf21fa27eb4c14c1da29cec02865d9b15873a6dc1cf2b69bdfc2861b10
sha
+10
~1
symbols
sha256:a224706541a9059afae6b3ac25c68b937c78ce2b1329ab383f93663cce172110
snapshot
+10
symbols added
~1
symbol modified
0
dead code introduced
Semantic Changes
11 symbols
+
test_all_manifest_oids_exist_in_object_store
method
method test_all_manifest_oids_exist_in_object_store L493–514
+
test_binary_file_objects_written_correctly
method
method test_binary_file_objects_written_correctly L551–566
+
test_every_commit_references_existing_snapshot
method
method test_every_commit_references_existing_snapshot L533–549
+
test_object_count_matches_unique_file_versions
method
method test_object_count_matches_unique_file_versions L568–585
+
test_silent_drop_warns_on_unreadable_blob
method
method test_silent_drop_warns_on_unreadable_blob L604–628
+
test_stored_object_sha256_matches_filename
method
method test_stored_object_sha256_matches_filename L516–531
0 comments
To add a comment, use the Muse CLI:
muse hub commit comment sha256:32f4b6cf21fa27eb4c14c1da29cec02865d9b15873a6dc1cf2b69bdfc2861b10 --body "your comment"
No comments yet. Be the first to start the discussion.