From 5f2015c26f30311cc7ec2113b18b2f8f1855cd67 Mon Sep 17 00:00:00 2001 From: Levi Neuwirth Date: Thu, 20 Aug 2026 17:32:34 +0200 Subject: [PATCH] docs(handoff): a timeout wrapper around the gate is not a result Section 3 already forbids starting the gate from a shell that ignores SIGINT, and already records that an ordinary tool-level background launch is measured deliverable. It did not cover the other way a harness convenience turns into false evidence. The 16-stage suite outruns a ten-minute agent command cap. Wrapping it in `timeout 580` kills sweep mid-run, and the runner records that stage as a failure --- indistinguishable in the log from a real red. That produced one false SS5b gate result. Records the supported alternative, which is the tool-level background launch the section already vouches for, and the fallback of labelled pieces with the record saying which piece produced which result. Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_016bqGA6s9tTUFzYpbeW3tai --- docs/agent-handoff.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/docs/agent-handoff.md b/docs/agent-handoff.md index 553f130..02b4e82 100644 --- a/docs/agent-handoff.md +++ b/docs/agent-handoff.md @@ -2575,6 +2575,23 @@ the fix is to re-run it in the foreground, not to work around the guard. `scripts/check-sigint-deliverable` answers the question on its own: exit **0** deliverable, **1** ignored, **2** undecidable. +**AND NEVER WRAP THE GATE IN `timeout` TO FIT AN AGENT COMMAND CAP.** +The full 16-stage suite outruns a ten-minute cap, and a `timeout 580` +around it kills `sweep` mid-run; the runner then records that stage as +a **failure**, which reads in the log exactly like a real red. This +already produced one false ยง5b gate result. It is the same defect as +the one above in a different costume: a harness convenience silently +becoming evidence. + +The supported way to run past the cap is the **tool-level background +launch**, which is measured `safe` by +`scripts/check-sigint-deliverable`, so the guard admits it and the run +is valid. Check it directly if in doubt --- the helper is one command +and answers for whatever shell actually invoked it. Failing that, run +the suite in labelled pieces and say in the record which piece produced +which result. **A truncated run is not a result, and must never be +reported as one.** + ``` scripts/gate [--acceptance SUITE]... [--protocol] ```