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
scaffold-project.py and family.py init: the help of the five folder flags does not say an empty value is refused or that . is this directory, and validate-manifest.py's docstring says a leg with a bad repository: is left out #999
Goal: each folder flag's --help says what #972 makes true of an empty value and of ., and _run_products's docstring names only the legs the naming gate leaves out.
State. Read at origin/main c7a3ff16. #981 is merged. #972 (closes #911 and #930) is READY and not yet merged, and the first part applies once it lands.
_run_products's docstring (templates/assembly-root/scripts/validate-manifest.py:226-230) says the naming gate's _project_chain_links leaves out "a leg whose repository: is bad or missing". It leaves out only a missing one: scripts/validate-repository-naming.py asks "repository" not in leg (about :934-936). The run fails either way, so only the words are wrong.
RV981 measured that the gate keeps a leg whose repository: is present and bad, and leaves out a leg with none.
Direction.
Add one clause to each of the five flags' help=, for example "an empty value is refused as <flag>-no-path, and . means the directory the run stands in". Then regenerate docs/cli.md with scripts/render-cli-reference.py. AGENTS.md and the handbook need nothing.
In _run_products's docstring, write "missing" for "bad or missing". This file is the assembly root's pinned copy, so even a one-word change re-pins every project. Take it with the next change to that file, not on its own.
Verify.
tests/test_cli_reference.py passes with the regenerated docs/cli.md, and each tool's --help shows the clause.
tests/test_repo_hygiene.py and the pinned-copy tests pass with the docstring word changed.
Size. Small: five help strings, one regenerated doc, and one docstring word.
CLAIMED — lane openRepoShape-3, session b30e8b49-f249-4668-adb1-1dbfa93c09e1@Eagle, 2026-10-19T18:34:21Z, for #999
Logged in lanes/log/openRepoShape-3.md at b889cb0b82a83b878c9a96c0928979a689a58b33.
The three reads (lane-collision-protocol Rule 1):
1. existing `CLAIMED —` comments on opensoft/openRepoShape#999:
none
2. `gh pr list --repo opensoft/openRepoShape --state all --search "#999"`, kept where the row or its body names `#999`:
none
3. `git ls-remote --heads git@github.com:opensoft/openRepoShape` branches naming `999` as a whole token:
none
Activity
brettheap commentedon Oct 19, 2026
CLAIMED — lane openRepoShape-3, session b30e8b49-f249-4668-adb1-1dbfa93c09e1@Eagle, 2026-10-19T18:34:21Z, for #999
Logged in
lanes/log/openRepoShape-3.mdatb889cb0b82a83b878c9a96c0928979a689a58b33.The three reads (lane-collision-protocol Rule 1):
scaffold-project.py, family.py and shape_materialize.py: the scaffold…
validate-repository-naming.py and validate-manifest.py: a set `SHAPE_…
brettheap commentedon Oct 20, 2026
(lane openRepoShape-3, 2026-10-20T09:52:01Z) Done: every part of #999 is on main. Closing it, since neither of its PRs used a closing keyword.
e076e3e8) put the clause on what an empty value and.mean in all five folder flags'--help:scaffold-project.py's--work-dirand--local-remote-dir, andfamily.py init's--into,--work-dirand--local-remote-dir.docs/cli.mdwas regenerated.SHAPE_PIN_SOURCE_<LINK>the run guard passes over is named once by alink-source-collidesnote,--link-remedy=openXdox=a/openYdox=bgivesopenXdoxits words, and a row runs setup step (4) from another folder (#990, #991, part of #999) #1011 (f3090616) changed_run_products's docstring to "missing" (templates/assembly-root/scripts/validate-manifest.py).dc7cd49bby lane 3's survey.Lane: openreposhape-3 (openRepoShape-3)