Repository navigation
fix(tests): hide ordinary control setup token from jq arguments - #560
Conversation
|
Blocked on bench-ci#1063. Job The code, regression tests, corrected documentation and author-side adversarial/security reviews are complete in draft PR #560, and all eight GitHub checks pass at that head. The managed recovery role owning bench-ci#1063 must diagnose and restore current baseline health and verify safe admission. Once that prerequisite closes, this issue needs a fresh narrow ordinary |
|
Ready for review The ordinary control harness now supplies its temporary write token to a constant jq program through stdin. The shared editor preserves config publication and apply failure handling; the regression runs that real helper, rejects token-bearing arguments, checks all synthetic logs, and exercises the real EXIT restoration trap after both setup failures and successful control behavior. Restoring the old setup makes the regression fail. GitHub lint, suite, coverage, Docker e2e and security checks passed on the PR head. The renewed queued ordinary control proof preserves authenticated application, DONATION persistence, thermal summary publication and restoration; I read its full status/log and sole artifact, and the PR includes its exact generated evidence. Author-side verifier and security reviews are clean. Historical job 2016 remains an error; the known unrelated profiler-redaction occurrence is recorded on bench-ci#1011. I did not capture real process-observer traces or run other contract phases, mining-performance checks or long stress tests. Token secrecy is established by the argument/log regression; the narrow hardware run establishes preserved ordinary gate behavior. The PR stays draft for the independent review session. |
|
adversarial-review: PASS at 1ff6628, round 1, by the pithead-reviewer reviewer (a fresh session that did not produce this head; claude-sonnet-5-5). PR #560 resolves #554: ordinary Evidence
Findings
|
Closes #554
Ordinary control setup previously embedded its temporary write token in jq's program argument. The shared
set_cfgeditor now accepts quoted jq options, allowingphase_controlto pass the token through stdin using--rawfileand a constant program. Setup fields, apply failure handling, ordinary DONATION/thermal gates and EXIT restoration are preserved. The harness documentation describes both setup and request transport.Ponytail review: kept only the shared editor option forwarding, ordinary-control caller, regression and doc correction; no additional abstraction or unrelated phase changes. Separate credential exposures are tracked in #559.
Validation:
timeout 60 bash tests/test-refresh-window-control.sh— PASS. The real editor's jq arguments are inspected, config values asserted, every synthetic log checked for the token, setup edit/apply failures rejected, and the real EXIT trap restores byte-identical config on failure and success.shellcheck --severity=warning tests/e2e-pithead-control.sh tests/test-refresh-window-control.sh— PASS.shfmt -i 4 -d tests/e2e-pithead.sh tests/e2e-pithead-control.sh tests/test-refresh-window-control.sh— PASS.FILE_BUDGET_REQUIRE_BASE=1 bash scripts/lint-file-budget.sh,make lint-topology,git diff --check— PASS.make lint— stopped during the aggregate ShellCheck pass after prolonged resource use; no aggregate PASS claimed.make lint-md— unavailable locally (npxmissing); GitHub runs both gates.All eight GitHub checks passed on
1ff6628b056227907a3158fd62ec0cf217133e3d, including shell lint, suite, coverage and Docker e2e. No container or hardware tests ran locally. Other hardware phases are outside this ordinary setup change.The renewed ordinary
controlproof's full status, complete log and sole retained artifact were inspected. It exercises authenticated setup, DONATION application/persistence, the thermal direct-feed gate and restoration. The hardware-free regression separately inspects jq arguments and checks log secrecy and byte-identical EXIT restoration on success and setup failures; the hardware job does not inspect process arguments. Final verifier review at the unchanged head is clean; the prior security review remains clean. The file-budget freeze gate passed again after evidence review. The PR remains draft for the independent reviewer.Historical job 2016 remains an error with no candidate scenarios or artifacts. Recovery under bench-ci#1063 enabled the renewed proof without a code change. One profiler helper-end timestamp in the renewed log/artifact contains a redaction marker, an existing diagnostic defect tracked by bench-ci#1011. That record was not used for timing claims and does not affect the ordinary control assertions or #554's argument-inspection regression. Separate phase credential exposures remain scoped to #559.
Unchanged limitations: no real process-observer capture was performed; argv/log absence is covered by the synthetic regression. Other contract phases, mining performance and long-duration stress were not run because this change only alters ordinary control credential setup. All required GitHub gates passed; local aggregate lint was stopped and local markdown lint was unavailable as recorded above.
Bench evidence:
bench-ci job 2016@1ff6628b056227907a3158fd62ec0cf217133e3d · rigforge · tier4-e2e
Generated by
bench-ci evidence 2016@1ff6628b056227907a3158fd62ec0cf217133e3d; re-run it to check.bench-ci job 2026@1ff6628b056227907a3158fd62ec0cf217133e3d · rigforge · tier4-e2e
Generated by
bench-ci evidence 2026@1ff6628b056227907a3158fd62ec0cf217133e3d; re-run it to check.