DirectoryProofKitNewsletterSponsor

ProofKit

Copy-paste proof templates. Drafts derived from the directory sources; marked untested until benchmarked.

Done report (any harness)

## Done report
- Claim: <what is done, one line>
- Command(s) run: <exact command>
- Result: <N passed / M failed / K skipped>  (fail if N == 0)
- Diff hash at run time: <git diff --staged | sha1sum>
- Red-to-green: <test name> failed on parent, passes now
- Evidence: <log path | screenshot path | CI run URL>
- Not verified: <what remains, honestly>
untested

Cursor rule: proof required (.cursor/rules/proof-of-done.mdc)

---
description: Require evidence before claiming a task is complete
alwaysApply: true
---
Never say "done", "fixed" or "tests pass" without pasting the exact command,
its exit code and the runner's pass/fail count from THIS turn.
If zero tests ran, the task is not done. Do not edit test files to make them pass.
untested

Claude Code Stop gate (.claude/settings.json)

{ "hooks": { "Stop": [ { "hooks": [ {
  "type": "command", "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/require-green.sh" } ] } ] } }
# require-green.sh: run tests; if count==0 or failures>0, echo reason >&2; exit 2
untested

Grok Build commit gate (PreToolUse)

# PreToolUse is the only blocking event in Grok Build (docs.x.ai/build/features/hooks).
# Match the shell tool on `git commit`; exit 2 unless .proof/verdict.json is
# newer than the last edit, has passed>0 and failed==0. Hooks fail open on crash.
untested

AGENTS.md generic block

## Definition of done
- Run the project's test command after every change and paste the summary line.
- A run with 0 tests collected is a failure.
- For UI changes, attach a screenshot of the changed screen.
- End with a Done report (see ProofKit).
untested