Uploaded git bundles are verified against your own checkout before being sent.
What's wrong with this entry?
After building a bundle, Claude Code now confirms every commit it references really exists in this checkout, so a bundle assembled against some other object store is rejected rather than uploaded.
- Bundle heads are piped through
cat-file --batch-check; a mismatch fails with reasongit_dir_tampered. - Companion checks cover refs that were missing, ambiguous, or changed while the bundle was being built, each with its own remediation text.
- Only on the hardened upload path; skipped when the legacy path is in use.
at commits this checkout's own object store does not hold: another object store stood in while the bundle was made.
Strings lifted out of the shipped bundle, so the claim above can be checked against them.
Related
Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.
-
v2.1.227
Large bundled skill and docs blocks moved, not deleted
Both mention batch
-
v2.1.248
Chrome sessions get nudged to batch browser actions
Both mention batch