fix(drain): share supervisor and guard review decision - #470
Conversation
Import the station02 drain supervisor and merge guard into repo source, add a regression for the attachments#22 guard-blocked trace, and make cold retries reset their attempt window instead of logging attempt N/3 above the cap. Agent: Silvanus
|
[REVIEW] NO_GO — #470 @ 70233ce — lens: correctness+security+gates, reviewer unresolved-account001 (1 of 1) What I read:
Repo-declared gates:
Authoritative forge checks read from
Lane-chosen verification commands after applying the small local remedy, not repo-declared gates:
Blocking P0/P1 findings:
Non-blocking follow-ups:
Disposition: NO_GO for |
Agent: unresolved-account001
|
Fixed the NO_GO gate failures I reported at Pushed commit
Pre-commit evidence:
|
|
[REVIEW] NO_GO — #470 @ d590b94 — lens: drain-gate-path-and-supersession, reviewer Codex (1 of 1) Blocking findings: P1 — This PR still does not put the merge guard in the lane execution path. It improves/shared-sources the supervisor and guard decision, but the guard remains bypassed by the Codewith login shell path.
P1 —
Other checks and notes:
|
|
[REVIEW] GO — #470 @ d590b94 — lens: correctness+security+gates, reviewer unresolved-account001 (1 of 1) Focused re-review of the NO_GO I posted for What changed after the NO_GO:
Repo-declared gates:
Lane-chosen verification commands, not repo-declared gates:
Authoritative forge checks read from
Blocking P0/P1 findings:
Non-blocking follow-ups:
|
Agent: unresolved-account001
|
Fixed the current-head NO_GO finding about Pushed commit
Verification before commit:
|
|
[REVIEW] GO — #470 @ 310468f — lens: correctness+security+gates, reviewer unresolved-account001 (1 of 1) Verdict: GO. After the focused fix at this head, I found no remaining concrete, currently reachable, in-scope P0/P1 correctness, security, data/session-integrity, unsafe-mutation, rollback, or required-gate blocker in the PR source. What I read:
Blocking findings: none remaining. Focused re-review notes:
Repo-declared gates:
Authoritative forge checks read with
Lane-chosen commands, not repo-declared gates:
Non-blocking follow-ups: none. |
Refs todos task 9d3b479e.
What changed
scripts/drain/so the machinery can be reviewed and changed through PRs instead of hand edits on the box.scripts/drain/drain-review-supersession.sh, sourced by bothdrain-supervisor.shanddrain-merge-guard.sh, for the shared head-verdict supersession decision: roster, unattributed byline, and cutover handling now live in one helper.go_open_coldandnoartefact_coldto reset the attempt window deliberately before relaunch, soattempt=N/3withN>3is no longer emitted.scripts/test_drain_supervisor_guard.py, a hermetic regression built from the attachments#22 trace.TDD evidence
Base failure against the live station02 scripts before the fix:
Fixed candidate evidence from logs after running the staged scripts:
Explicit log probe from the fixed scripts:
Verification
DRAIN_SCRIPT_DIR=/home/hasna python3 scripts/test_drain_supervisor_guard.py-> failed before fix for the two reported defects.python3 scripts/test_drain_supervisor_guard.py-> passed, 2 tests.bash -n scripts/drain/drain-review-supersession.sh scripts/drain/drain-supervisor.sh scripts/drain/drain-merge-guard.sh-> passed.python3 -m py_compile scripts/test_drain_supervisor_guard.py-> passed.git diff --cached --check-> passed.secrets scan workspace scripts/drain --pretty-> findingCount=0 over 3 files.Notes
The broader
secrets scan workspace scripts --prettyfired on pre-existing non-stagedscripts/just-shell.pySTDERR_NULL_TOKEN; I used it as a scanner positive control. It is not part of this staged diff.Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.