forked from bchanot/claude
feat(gates): wire GATE 0 into the four orchestrator skill restatements
The include is authoritative, but feat/bugfix/ship-feature/init-project each restate the verify loop inline — an orchestrator following the restatement alone would have skipped the floor. Each now carries the GATE 0 bullet ahead of GATE 1 (4 new structure locks, flip-tested). The contract-interview weight table stops promising a hotfix oracle nothing executes: hotfix runs no floor, the hotfixer runs the suite itself. CHANGELOG extended with the wiring + the RED result.
This commit is contained in:
@@ -161,6 +161,11 @@ Run the two fresh gates per `$HOME/.claude/lib/verify-secure-loop.md` with
|
||||
`CONTRACT` = the STEP 0.7 path, `DIFF` = the working-tree diff the executor
|
||||
produced, `TEST` = the suite named in its report:
|
||||
|
||||
- GATE 0 — deterministic floor, no dispatch: `bash ~/.claude/lib/gates.sh
|
||||
run "$CONTRACT"` executes the criteria's declared oracles fail-closed.
|
||||
UNMET → re-dispatch a FRESH feater with the NOT-MET rows verbatim — no
|
||||
verifier is spent on a red floor; own budget, max 3 → escalate.
|
||||
MET (an all-manual contract too) → GATE 1.
|
||||
- GATE 1 — a FRESH verifier judges the diff against the contract (blind).
|
||||
CONFORME on the first pass → straight to GATE 2, no loop. ECARTS → the
|
||||
"dev" of the loop is the dispatched executor: re-dispatch a FRESH feater
|
||||
@@ -171,8 +176,8 @@ produced, `TEST` = the suite named in its report:
|
||||
CONTRACT path; re-verify the request THEN re-scan, max 3 → escalate.
|
||||
|
||||
Loop decisions stay HERE, in the main loop (LRN-083). Nominal (clear
|
||||
request, conform first pass, clean diff) = one executor + one
|
||||
verifier + one security dispatch.
|
||||
request, conform first pass, clean diff) = one executor + a free floor
|
||||
run + one verifier + one security dispatch.
|
||||
|
||||
## STEP 5 — COMMIT
|
||||
|
||||
|
||||
Reference in New Issue
Block a user