Countersign
AI clears what it can prove. A named human signs the rest.
Demo countersign.toivo.devCode github.com/Zawaer/countersign
Junction 2026 · Tieto: Earned Trust in AI Code
An AI agent wrote this fix.
#2234 The analyzer does not work if SuppressSourceGeneration = true
- Builds
- 175/175 tests pass
- AI reviewer: requirements met
It fixes the wrong bug.
Countersigncountersign.toivo.dev2 / 13
A signed mandate decides what AI may clear.
the AI may clear
a named human signs
Countersigncountersign.toivo.dev3 / 13
The reported bug is on a line the fix never touches.
- 4 of 8 new tests pass without the fix
- Still crashes on Key(null): reproduced
ASKToivo
Countersigncountersign.toivo.dev4 / 13
Every change says why. Low risk can clear.
2129BLOCK2234ASK2283ASK2297BLOCKdemo-docs1NOTIFYup-1934ASKup-1967NOTIFYup-2022ASKA docs fix: cleared by the AI alone, merged in 40 sdemo PR #11
Countersigncountersign.toivo.dev5 / 13
Toivo signs on GitHub. The merge is blocked.
Implementation for #2234 The analyzer does not work if SuppressSourceGeneration = true #2
countersign/tier has not succeeded. The merge button stays grey.Countersigncountersign.toivo.dev6 / 13
You read it, then you sign.
- Which requirement was refused?the no-crash clause
- Why can't the tests prove the fix?4 of 8 pass without it
- Sign unlocksread check 2 of 2, in the ledger
Countersigncountersign.toivo.dev7 / 13
Every sign-off is signed and chained.
- Ledger OK18 entries, every signature verifies
- Edit one lineinvalid: hash mismatch
- Recompute the hashinvalid: signature fails
Countersigncountersign.toivo.dev8 / 13
Measured, not claimed.
Countersigncountersign.toivo.dev9 / 13
Who it's for.
- Whoteams whose coding agents out-write their reviewers, where a named person answers for every merge
- What they getevery merge signed: proven, refused, risk left
- What it costs297k to 484k reviewer tokens per change; about 21 s from push to pack
- How it startsone repo at ask; the AI earns clearance
Countersigncountersign.toivo.dev10 / 13
Built with.
- Nemotronreviewer in CI; flagged both hidden security downgrades, tests caught one
- Geminithe adjudicator: another vendor, can never clear
- Codexreviewer; its security review found holes in our pipeline
- CRACIdeny-by-default CI; its trace exposed ~2,900 denied revocation lookups
- Verdaself-hosted reviewer: about $0.04 and 60 s per review
- Gemmaself-hosted adjudicator for confidential code
Countersigncountersign.toivo.dev11 / 13
It says where it stops.
Countersigncountersign.toivo.dev12 / 13
Try it on one repo.
One area, one owner, one signed mandate.
Demo countersign.toivo.devCode github.com/Zawaer/countersign
Run scripts/demo.shVerify uv run countersign verify-ledger
Team Toivo · Rene
Countersigncountersign.toivo.dev13 / 13