Skip to content

Session Handoff [default]: configure.sh Refuses Unknown Arguments, Released as 2.0.805 #2289

Closed

Description

@ptr727

Next steps, in priority order

Re-read each issue and pull request rather than trusting these summaries.

  1. Resync the seven repos left out of Session Handoff [default]: Table Carry, Quota Safety and install-tools Shipped to Develop, Defined-Moments Review Gate #2278 Ready #2281's ruleset run, then apply configure.sh there. The repos are KiCadLibrary, EspDinIoT, DevKitCIoT, HomeAssistant-Config, PhotoCleaner, AudioCleaner, and HolidayLights. Each is its own session and its own deliverable in that repo, the way the aiopurpleair resync was. KiCadLibrary's untracked requirements-dev.txt from Audit Cross-Checks No Python Dependabot Ecosystem, and KiCadLibrary's requirements-dev.txt Is Untracked #2286 can ride with its resync. Done means each passes configure.sh check with no failures. configure.sh on main now refuses a missing command and malformed arguments (see "What the last round did"), so pass the command, the repo, and the model every time.

  2. The rest of Every CLI Script Answers --help and Refuses Unknown Arguments Before Writing #2285: the rule and the gate. Require configure.sh's Command and Refuse Unknown Arguments Before Any Read #2287 fixed only configure.sh. Still open:

    • The CODESTYLE.md (General and Shell) and shell-codestyle rule: every CLI script answers --help or refuses an unknown argument before any read or write, and a write mode is never the default.
    • A test that runs every tracked CLI entry point with --help and with an unknown flag.

    The gate needs a design decision first: which entry points it covers, and how to sandbox host-setup/bootstrap.sh and install-tools.sh, which install software. The rule is carried prose, so expect several review rounds.

  3. Audit Cross-Checks No Python Dependabot Ecosystem, and KiCadLibrary's requirements-dev.txt Is Untracked #2286's audit check. spec/audit.py does not cross-check a Python Dependabot ecosystem.

  4. Run the Whole Test Suite Before a Push, Not the Modules a Change Touches #2280. A governance proposal: run the whole test suite before a push.

  5. Fix STANDUP.md's Prerequisite Item That Says Mechanisms Declare Environments #2270, then the items Session Handoff [default]: Table Carry, Quota Safety and install-tools Shipped to Develop, Defined-Moments Review Gate #2278 Ready #2281 carried from Session Handoff [default]: Fork Handoff Chains Released as 2.0.799, #2268 Fix on Develop #2273, in its order.

External blockers

Internal dependencies

State

  • Hub: main is at bc9dc654, released as 2.0.805 (publish-release run 37050361747, success). develop is at cce212f7, level with main apart from the promotion merge commit.
  • Open PRs: only Deny a Signal-0 timeout as a Wait Bound in the Guard #2117, on the unattended auto-1634 lane, untouched.
  • Worktrees: every worktree and branch this session made is removed, local and remote. The primary checkout is clean on develop at cce212f7. Re-derive with git worktree list.
  • Skills: this machine's Codex and opencode snapshot is refreshed to bc9dc654. The Claude Code registration loads the primary checkout in place.
  • Unattended lanes untouched: auto-2176, auto-2167, auto-2157, auto-2080, auto-1634, and python-contract. Re-derive with handoff.py tracks.
  • Other repositories: none written.

The parked decision queue

Zero issues carry the decision label. This round's questions were answered as they came up: which next step to take, how to scope #2285, and whether to merge and release the promotion.

What the last round did

What not to repeat

  • Accepting a strict-review suggestion that widens a grammar the tree already states. The local pass proposed an underscore in the owner pattern, for managed-user handles. Copilot then pointed at spec/validate.py's owner grammar, which allows letters, digits, and hyphens only, and that cost a round. Check the tree's existing grammar before widening one.
  • gh ... --jq with --arg. gh's --jq takes no --arg, so the release-run correlation loop spun on parse errors. Pipe to jq instead.
  • Expecting pr_review.py reply to answer an outdated thread. Copilot resolved its own thread once the line changed, so reply returned NO_MATCH (exit 60). The thread needed nothing further.

New learnings

  • None beyond the three above. Each is a specific misstep rather than a rule.

Activity

  1. added
    handoffA link in the session handoff chain, one open issue per track
    on Oct 2, 2026
  2. ptr727 commented on Oct 2, 2026

    @ptr727
    OwnerAuthor

    Continued in #2291, round 44 on track default.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    handoffA link in the session handoff chain, one open issue per track

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions