You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
the assembly root's bootstrap.py: create_at_pin still hides a branch's commits behind a new loose ref when HEAD is detached or a third spelling is packed, and _folded_twin does not fold NFC and NFD #962
Goal: bootstrap never makes, with checkout -b, a ref that a disk folding case or normalization reads as a branch that already exists.
Filed by lane openRepoShape-5, from rv896's independent review of #948 (#896) at 80353dd1 (#948 issuecomment-6252823490): its SHOULD 2, with w896's NFC/NFD checklist candidate. #948 lands first; this is what it leaves.
State at #948's head 80353dd1._folded_twin asks only about HEAD's own ref, so create_at_pin checks no other spelling of the branch.
What happens. Measured on git 2.43 with packed refs, the fold emulated after the checkout (rv896's probe-packed.sh and probe-packed-c.sh):
(b) HEAD detached at the pin, the same packed Main, and no main.create_at_pin runs checkout -q --no-overwrite-ignore -b main <pin>, which exits 0 and writes a loose main. On a disk that folds case, refs/heads/Main then reads as the pin. for-each-ref --contains M lists nothing, and only HEAD's reflog keeps M.
(c) An unborn Main beside a packed MAIN. M is hidden the same way.
CLAIMED — lane openRepoShape-5, session 50cede29-ab82-4ca3-9f67-d98e1a58c8d2@Eagle, 2026-10-18T17:44:47Z, for #962
Logged in lanes/log/openRepoShape-5.md at f6f7dd60ede9503cc22caf6282a2f35b3ad08ce5.
The three reads (lane-collision-protocol Rule 1):
1. existing `CLAIMED —` comments on opensoft/openRepoShape#962:
none
2. `gh pr list --repo opensoft/openRepoShape --state all --search "#962"`, kept where the row or its body names `#962`:
none
3. `git ls-remote --heads git@github.com:opensoft/openRepoShape` branches naming `962` as a whole token:
none
Activity
brettheap commentedon Oct 18, 2026
CLAIMED — lane openRepoShape-5, session 50cede29-ab82-4ca3-9f67-d98e1a58c8d2@Eagle, 2026-10-18T17:44:47Z, for #962
Logged in
lanes/log/openRepoShape-5.mdatf6f7dd60ede9503cc22caf6282a2f35b3ad08ce5.The three reads (lane-collision-protocol Rule 1):
bootstrap.py: a missing tracking branch is not made while any `refs/h…
Merge origin/main (2a78ae1, #984 for #962) into fix/430-d-assembly-ro…
bootstrap.py: the name the rename line gives a twin skips one with a …
the assembly root's validate-manifest.py and bootstrap.py: a path thi…