Fail-closed gates (failClosed)
Hooks fail open by default. Set failClosed: true so a crashing or timed-out verification hook blocks instead of silently passing.
proof: logs blocks: verification hook silently failing open
By harness
| Harness | Status | How |
|---|---|---|
| Cursor | native | failClosed: true on the hook definition. |
| Claude Code | adapted | Claude Code equivalent: onFailure: "block" (see entry). |
| Grok Build | adapted | Grok Build hooks are fail-open on crash or timeout per docs; keep the gate itself simple and exit 2 explicitly. |
| Codex | untested | Untested. |
| AGENTS.md generic | unsupported | Harness feature. |
By model family
| Claude | any |
| GPT | any |
| Grok | any |
| Gemini | any |
Sponsor slot: your verification tool here, one sponsor per week. Details
Proof of the week
One verification pattern every week, adapted per harness and model. No spam.