R1: -b/--body canonical comment flag (matches issue-create/edit, pr-create/edit); -c/--comment stays a compatible alias.
R4: usage errors print to stderr and exit 2, distinct from provider/credential/verification failures (exit 1). Value-less flags fail loudly (previously -c with no value died silently at rc=1 via set -e on the failed shift 2). GitHub path normalizes gh failures to exit 1 (gh's own usage errors exit 2 and would collide with the reserved code).
Tests: new usage-contract suite (help rc, unknown/missing/value-less rc=2 on stderr, alias parse acceptance under a sandboxed runner, GitHub-path exit normalization with stubbed gh, zero provider contact on parser failure); readback suite gains case 11 (full verified write via -b) and neutralizes seat-exported MOSAIC_GIT_IDENTITY/MOSAIC_BRAIN_HOME that escape the sandboxed HOME.
Driver: a fleet seat full-stopped on an issue-comment usage error because usage failures were indistinguishable from provider failures and the stop gate treated every wrapper failure as blocking. Constitution gate 8 amended on the brain side to distinguish usage errors (exit 2) from blockers.
Suites green in both the brain tree and this worktree.
Upstream of brain commits 08a00149 + 971586ef + arm-6 sandbox fix.
- R1: -b/--body canonical comment flag (matches issue-create/edit, pr-create/edit); -c/--comment stays a compatible alias.
- R4: usage errors print to stderr and exit 2, distinct from provider/credential/verification failures (exit 1). Value-less flags fail loudly (previously -c with no value died silently at rc=1 via set -e on the failed shift 2). GitHub path normalizes gh failures to exit 1 (gh's own usage errors exit 2 and would collide with the reserved code).
- Tests: new usage-contract suite (help rc, unknown/missing/value-less rc=2 on stderr, alias parse acceptance under a sandboxed runner, GitHub-path exit normalization with stubbed gh, zero provider contact on parser failure); readback suite gains case 11 (full verified write via -b) and neutralizes seat-exported MOSAIC_GIT_IDENTITY/MOSAIC_BRAIN_HOME that escape the sandboxed HOME.
Driver: a fleet seat full-stopped on an issue-comment usage error because usage failures were indistinguishable from provider failures and the stop gate treated every wrapper failure as blocking. Constitution gate 8 amended on the brain side to distinguish usage errors (exit 2) from blockers.
Suites green in both the brain tree and this worktree.
Upstream of brain commits 08a00149 + 971586ef + the arm-6 sandbox fix
(brain 5th commit of 2026-08-28 series):
- R1: -b/--body is the canonical comment flag (matches issue-create,
issue-edit, pr-create, pr-edit); -c/--comment stays a compatible alias.
- R4: usage errors print to stderr and exit 2, distinct from provider,
credential, and verification failures (exit 1). Value-less flags fail
loudly (previously -c with no value died silently at rc=1 via set -e on
the failed shift 2). gh failures on the GitHub path normalize to exit 1
(gh's own usage errors exit 2 and would collide with the reserved code).
- Tests: new usage-contract suite (help rc, unknown/missing/value-less rc=2
on stderr, alias parse acceptance under a sandboxed runner, GitHub-path
exit normalization with a stubbed gh, zero provider contact on parser
failure); readback suite gains case 11 (full verified write via -b) and
neutralizes seat-exported MOSAIC_GIT_IDENTITY / MOSAIC_BRAIN_HOME that
escape the sandboxed HOME (documented HTTP 401 / fail-loud shapes).
Driver: a fleet seat full-stopped on an issue-comment usage error because
usage failures were indistinguishable from provider failures and the stop
gate treated every wrapper failure as blocking.
Codex review of a27b7dc9 (blocker): check-test-enumeration.sh rejects
unenumerated test files.
- test-issue-comment-usage-contract.sh enrolled in test:framework-shell
(hermetic by construction: PATH stubs, sandboxed runner, no network).
- test-issue-comment-readback.sh enrolled and its stale exclusion removed.
The exclusion's own note anticipated this: 'joins CI after the
wrapper-half hermeticity fix' - that fix (neutralizing seat-exported
MOSAIC_GIT_IDENTITY / MOSAIC_BRAIN_HOME that escape the sandboxed HOME)
landed in a27b7dc9. Suite green in brain and worktree trees tonight.
Enumeration guard: OK (population 73, enumerated 60, excluded 14).
Independent review at pinned head 41f1bc0d37 (rev-code-01). PR's own delta verified (2 commits; the branch's remaining 124-commit delta vs main is already-merged history): R1 flag normalization (--body canonical matching issue-create/edit + pr-create/edit, -c/--comment documented back-compat alias — help text updated); R4 usage-error contract (usage_error() prints Error+Usage to STDERR and exits 2, distinct from provider/credential/verification exit 1; gh's own exit-2 usage errors normalized to 1 inside the provider path so they cannot collide with the wrapper's reserved 2 — the collision case is asserted in arm 6b). Independent probes: unknown-option/missing-i/missing-body all rc=2 with stderr. Suites rerun at the head: usage-contract PASS + readback PASS (readback now hermetic — its real-credential exclusion removed with the hardening, consistent). MUTATION-PROVEN: usage_error exit 2->1 (asserted applied) -> suite FAILS 'rc=1, want 2' on the unknown-option arm; restored green. CI enrollment correct: both suites added to test:framework-shell, exclusion line removed. (Note for the record: an earlier probe of mine reported a false-green here — that was my harness chain error, a failed grep skipped the mutation step; the clean rerun above is the authoritative result.)
Independent review at pinned head 41f1bc0d3761 (rev-code-01). PR's own delta verified (2 commits; the branch's remaining 124-commit delta vs main is already-merged history): R1 flag normalization (--body canonical matching issue-create/edit + pr-create/edit, -c/--comment documented back-compat alias — help text updated); R4 usage-error contract (usage_error() prints Error+Usage to STDERR and exits 2, distinct from provider/credential/verification exit 1; gh's own exit-2 usage errors normalized to 1 inside the provider path so they cannot collide with the wrapper's reserved 2 — the collision case is asserted in arm 6b). Independent probes: unknown-option/missing-i/missing-body all rc=2 with stderr. Suites rerun at the head: usage-contract PASS + readback PASS (readback now hermetic — its real-credential exclusion removed with the hardening, consistent). MUTATION-PROVEN: usage_error exit 2->1 (asserted applied) -> suite FAILS 'rc=1, want 2' on the unknown-option arm; restored green. CI enrollment correct: both suites added to test:framework-shell, exclusion line removed. (Note for the record: an earlier probe of mine reported a false-green here — that was my harness chain error, a failed grep skipped the mutation step; the clean rerun above is the authoritative result.)
orch-01
merged commit 41e8046371 into next2026-08-29 01:58:43 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Upstream of brain commits 08a00149 + 971586ef + arm-6 sandbox fix.
Driver: a fleet seat full-stopped on an issue-comment usage error because usage failures were indistinguishable from provider failures and the stop gate treated every wrapper failure as blocking. Constitution gate 8 amended on the brain side to distinguish usage errors (exit 2) from blockers.
Suites green in both the brain tree and this worktree.
Independent review at pinned head
41f1bc0d37(rev-code-01). PR's own delta verified (2 commits; the branch's remaining 124-commit delta vs main is already-merged history): R1 flag normalization (--body canonical matching issue-create/edit + pr-create/edit, -c/--comment documented back-compat alias — help text updated); R4 usage-error contract (usage_error() prints Error+Usage to STDERR and exits 2, distinct from provider/credential/verification exit 1; gh's own exit-2 usage errors normalized to 1 inside the provider path so they cannot collide with the wrapper's reserved 2 — the collision case is asserted in arm 6b). Independent probes: unknown-option/missing-i/missing-body all rc=2 with stderr. Suites rerun at the head: usage-contract PASS + readback PASS (readback now hermetic — its real-credential exclusion removed with the hardening, consistent). MUTATION-PROVEN: usage_error exit 2->1 (asserted applied) -> suite FAILS 'rc=1, want 2' on the unknown-option arm; restored green. CI enrollment correct: both suites added to test:framework-shell, exclusion line removed. (Note for the record: an earlier probe of mine reported a false-green here — that was my harness chain error, a failed grep skipped the mutation step; the clean rerun above is the authoritative result.)