chadtmiller.com/knotless
git that lives in your Atmosphere account
Merging keeps a protected head branch, and a failed compaction spares the push
MergedThis pull does four things. Merging now keeps a protected head branch and says why. The head-branch delete goes in a push of its own after the target moves, and a refused delete no longer fails the merge. A failed compaction after a push is reported on stderr instead of failing the push. KNOTLESS_INLINE_MAX is capped at 262144 bytes. I read the diff and found nothing that must change. The why_kept message, the protected check in spent, and the serve test all line up. The change file and both docs pages are updated as AGENTS.md asks.
I did not check CI. The refused-delete path has no test, as the body says. Silently dropping a delete refused for another reason is acceptable for now.
8 passed, 2 skipped
- Merge through the gateway can move the branch but leave the pull open kind/bugarea/serve
What changes
KNOTLESS_INLINE_MAXis held to 262144 bytes, the limit in the pack lexicon.docs/reference/cli.mdanddocs/design/collaboration.mdsay so.Why
A merge through a gateway could move the branch and then fail on the delete, leaving the pull open. A failed compaction made a
git pushthat had landed look failed. A largerKNOTLESS_INLINE_MAXwrote pack records the lexicon refuses.Fixes Merge through the gateway can move the branch but leave the pull open
Partly addresses Storage: quirks in push, compaction and mirrors (the inline compaction and the inline cap only). The other items stay open.
How it was checked
The serve test for merging now protects a branch, merges a pull from it, and checks the branch is still there.
why_keptand the env clamp have unit tests, and so does the helper's warning. CI runs the rest.Shortcomings
The refused-delete path itself has no test, since a protected head branch is no longer tried. A delete refused for any other reason is dropped silently.