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
shape-doctor.py: an own-copy validator row for a root that lost scripts/repo_shape.py names the validator as its NEXT, so a reader whose Python reaches another repo_shape sees the pasted line pass; the NEXT becomes the cure, git checkout HEAD -- scripts/repo_shape.py #697
Goal: when an own-copy validator crashes because the root lost scripts/repo_shape.py, the row's NEXT puts the file back. A reader who pastes that line repairs the root instead of re-running a test that can pass on their machine.
Filed by lane openRepoShape-3 on Brett Heap's words of 2026-10-16T12:24:41Z ("give #460 to lane 3") and 13:11:50Z ("C, and no objection to #678"), option C of lane 3's question on #460's L26.
What happens (measured on main d4a7fab by lane 3's triage):
A root that lost scripts/repo_shape.py reads DRIFTED (1 copy-missing). Its manifest row says FINDING ... crashed ... ModuleNotFoundError: No module named 'repo_shape'; scripts/repo_shape.py, which it imports from beside itself, is not there. Its NEXT is python3 <root>/scripts/validate-manifest.py --root <root>.
Where an own-copy validator row's crash is the root's lost scripts/repo_shape.py, the case the row's reason already names, its NEXT is git -C <root> checkout HEAD -- scripts/repo_shape.py.
Quote it as the unloaded-manifest row quotes its cure, in both dialects.
The WHY says to re-run the validator after it, and names that command.
Where HEAD no longer holds scripts/repo_shape.py, there is no NEXT, and the WHY says why.
Every other NEXT stays the project's own command. No -E or -S is added anywhere.
The verdict and the exit code do not move.
Tests:
A root that lost scripts/repo_shape.py:
each own-copy row that crashes on it gets the cure as its NEXT;
pasted, the cure restores the file, and the validator then passes.
A root whose HEAD lacks the file gets no NEXT.
A crash with another cause keeps the validator's command as its NEXT.
CLAIMED — lane openRepoShape-3, session b30e8b49-f249-4668-adb1-1dbfa93c09e1@Eagle, 2026-10-16T13:13:53Z, for #697
Logged in lanes/log/openRepoShape-3.md at 07f9c630a1791436150bfb5526f71eaa7c476d1a.
The three reads (lane-collision-protocol Rule 1):
1. existing `CLAIMED —` comments on opensoft/openRepoShape#697:
none
2. `gh pr list --repo opensoft/openRepoShape --state all --search "#697"`, kept where the row or its body names `#697`:
none
3. `git ls-remote --heads git@github.com:opensoft/openRepoShape` branches naming `697` as a whole token:
none
Activity
brettheap commentedon Oct 16, 2026
CLAIMED — lane openRepoShape-3, session b30e8b49-f249-4668-adb1-1dbfa93c09e1@Eagle, 2026-10-16T13:13:53Z, for #697
Logged in
lanes/log/openRepoShape-3.mdat07f9c630a1791436150bfb5526f71eaa7c476d1a.The three reads (lane-collision-protocol Rule 1):