corral/ledger — the record

Every audit and review corral has recorded, as a hash-linked chain, signed where a key was present. An audit plants faults in a file and runs the project's own tests against each one; a review's findings each carry the script that was executed to test them, and the exit code that came back. Nothing here asks to be believed: re-run any of it.

162ledger entries
21audits
55reviews
219findings
102reproduced by execution
76confirmed by a person
5refuted by a person
52verified by another vendor

The whole chain, entry by entry →

Audits

Each audit planted faults in a file and ran the project's own test command against every one. The kill rate is what execution measured, with its 95% interval. A proven gap is a fault the suite missed and a test corral wrote did catch: that test passed on the real code and failed on the fault.

pushedrepositoryauditedkill rate got throughprovencommit
2026-10-28 pdbethke/pylint
pylint/checkers
none not graded 0 0 278fc1bec3
2026-10-27 pdbethke/starlette
starlette
starlette/datastructures.py 0.80 (32 of 40) 8 8 8aa828ceaf
2026-10-26 morluto/rea
src/application/reverse
src/application/reverse/ReverseEngineeringService.ts 0.71 (27 of 38) 11 7 87a5be3000
2026-10-21 pdbethke/pylint
pylint/checkers
none not graded 0 0 5e998f6871
2026-10-21 pdbethke/starlette
starlette
starlette/datastructures.py 0.82 (33 of 40) 7 7 1a3a401c0d
2026-10-21 pdbethke/cli flag_mutex.go 0.50 (1 of 2) 1 1 059cddd42f
2026-10-19 warpdotdev/warp
crates/fuzzy_match
crates/fuzzy_match/src/lib.rs 0.14 (5 of 37) 32 29 714c51f1e2
2026-10-19 warpdotdev/warp
crates/fuzzy_match
crates/fuzzy_match/src/lib.rs 0.14 (5 of 37) 32 6 714c51f1e2
2026-10-19 warpdotdev/warp
crates/fuzzy_match
crates/fuzzy_match/src/lib.rs 0.86 (32 of 37) 5 3 714c51f1e2
2026-10-19 warpdotdev/warp
crates/fuzzy_match
crates/fuzzy_match/src/lib.rs 0.14 (5 of 37) 32 29 714c51f1e2
2026-10-19 warpdotdev/warp
crates/fuzzy_match
none not graded 0 0 714c51f1e2
2026-10-19 warpdotdev/warp src/lib.rs 0.16 (6 of 37) 31 28 714c51f1e2
2026-10-19 pdbethke/warp
crates/secret_redaction
crates/secret_redaction/src/lib.rs 0.00 (0 of 26) 26 26 325d4d4701
2026-10-19 pdbethke/warp
crates/secret_redaction
crates/secret_redaction/src/lib.rs 0.00 (0 of 26) 26 26 325d4d4701
2026-10-19 pdbethke/warp
crates/secret_redaction
crates/secret_redaction/src/lib.rs 0.00 (0 of 26) 26 26 325d4d4701
2026-10-19 pdbethke/warp
crates/secret_redaction
none not graded 0 0 325d4d4701
2026-10-19 pdbethke/warp
crates/secret_redaction
none not graded 0 0 325d4d4701
2026-10-19 warpdotdev/warp src/lib.rs 0.24 (9 of 37) 28 27 714c51f1e2
2026-10-14 warpdotdev/warp src/lib.rs 0.32 (11 of 34) 23 22 714c51f1e2
2026-09-08 pallets/flask src/flask/app.py 0.72 (29 of 40) 11 10 36e4a824f3
2026-09-08 pallets/flask src/flask/app.py 0.72 (29 of 40) 11 10 36e4a824f3

What "reproduced" means here

A finding is reproduced only when a script the reviewer wrote was executed and exited 0 — the contract being: exit 0 if and only if the defect is demonstrated. The other outcomes are kept separate on purpose, because collapsing them is how a could-not-measure turns into a measured zero:

A person's verdict is a separate axis from execution, and it wins: a human confirmed/refuted is recorded as its own signed entry and is never clawed back by a later automatic pass.

Decorrelation, 52 times over

A reviewer seat finds; a different model verifies. The rule is enforced, not requested — the verifier is never the reviewer's model. What actually ran:

Seats that ran across this record:

reviewer models
antigravity, antigravity:claude-opus-4-6-thinking, antigravity:gemini-3.1-pro-high, claude-code, claude-code:claude-fable-5-1, claude-sonnet-5, codex, codex:gpt-6-astra, gemini-3.6-flash
verifier models
antigravity, claude-code, claude-code:claude-fable-5-1, claude-haiku-4-5, codex, codex:gpt-6-astra, gemini-3.6-flash
tools + versions
2.1.263 (Claude Code), 2.1.265 (Claude Code), 2.1.267 (Claude Code), 2.1.272 (Claude Code), 2.1.295 (Claude Code), [sh -c 'agy --output-format text --sandbox --dangerously-skip-permissions --print-timeout 15m "$@" -p="$(cat)"' sh {model:--model}], codex-cli 0.152.0, codex-cli 0.153.4, codex-cli 0.154.0, codex-cli 0.156.1, codex-cli 0.160.0
scopes reviewed
.github/workflows, action.yml, cmd/corral, cmd/corral/certify_repo.go, cmd/corral/certify_repo_transparency.go, cmd/corral/ledger.go, cmd/corral/ui_ledger.go, eval, internal/adequacy, internal/advpool, internal/auditpush, internal/auditpush/pubkey.go, internal/brain, internal/certify, internal/certify/review_statement.go, internal/certify/signbuild.go, internal/creds/creds.go, internal/fence, internal/gate, internal/lang, internal/prior, internal/reposcan, internal/review, internal/sandbox, internal/transparency, scripts, site/src/content/docs/docs, src/flask/sessions.py

138 finding(s) await a person's verdict →

Reviews

Newest first. Record spans 2026-09-06 to 2026-10-28.

pushedscopereviewerverifier findingsreproverdictscommit
2026-10-08 cmd/corral/ui_ledger.go codex:gpt-6-astra claude-code:claude-fable-5-1 ≠ 2 0 2✓ b663803169
2026-10-08 cmd/corral/certify_repo_transparency.go claude-code:claude-fable-5-1 codex:gpt-6-astra ≠ 4 1 4✓ b663803169
2026-10-08 internal/creds/creds.go codex:gpt-6-astra claude-code:claude-fable-5-1 ≠ 1 1 1✓ b663803169
2026-10-08 internal/certify/signbuild.go claude-code:claude-fable-5-1 codex:gpt-6-astra ≠ 4 3 3✓ 1✗ b663803169
2026-10-08 internal/auditpush/pubkey.go codex:gpt-6-astra claude-code:claude-fable-5-1 ≠ 1 0 1✓ b663803169
2026-09-24 internal/adequacy codex:gpt-6-astra none 2 2 2✓ 954c320247
2026-09-15 internal/gate claude-code:claude-fable-5-1 codex:gpt-6-astra ≠ 7 3 7✓ 6951ca4c11
2026-09-15 internal/transparency codex:gpt-6-astra claude-code:claude-fable-5-1 ≠ 1 1 1✓ 6951ca4c11
2026-09-12 internal/transparency claude-code antigravity ≠ 8 3 382df06437
2026-09-12 internal/gate antigravity codex ≠ 5 4 382df06437
2026-09-12 internal/gate claude-code antigravity ≠ 8 6 459add6e04
2026-09-12 internal/transparency codex claude-code ≠ 2 1 459add6e04
2026-09-09 internal/sandbox antigravity:claude-opus-4-6-thinking codex ≠ 5 0 9f824f73d1
2026-09-09 internal/adequacy antigravity:gemini-3.1-pro-high claude-code ≠ 1 1 9f824f73d1
2026-09-08 internal/fence antigravity:gemini-3.1-pro-high codex ≠ 1 1 e39ec399a5
2026-09-08 internal/fence antigravity:gemini-3.1-pro-high codex ≠ 2 1 e39ec399a5
2026-09-08 internal/advpool claude-code codex ≠ 5 2 91d433696a
2026-09-08 internal/reposcan claude-code codex ≠ 6 3 91d433696a
2026-09-08 action.yml claude-code codex ≠ 5 2 2b02f27989
2026-09-08 cmd/corral/certify_repo.go claude-code codex ≠ 5 2 2b02f27989
2026-09-08 internal/auditpush claude-code codex ≠ 5 2 2b02f27989
2026-09-08 cmd/corral/ledger.go claude-code codex ≠ 6 1 441da802c8
2026-09-08 scripts claude-code codex ≠ 9 1 441da802c8
2026-09-08 internal/auditpush claude-code codex ≠ 7 3 441da802c8
2026-09-08 scripts claude-code codex ≠ 9 5 5b173fbc66

All 55 reviews →

Verify it yourself

The record is a git branch, so there is nothing to trust and nothing to install to read it:

git clone https://github.com/pdbethke/corralai.git corralai
cd corralai
git fetch origin corral/ledger
git checkout corral/ledger      # 162 gzipped JSON entries under scans/

# walk the chain: every hash against its bytes, every link against its predecessor,
# and every signature against the ledger's published key
corral ledger verify --pub 909429443700441a9f662c07c5f1b7110333fd7fb94fb21e8991e40f2cb6dc09 --ledger-repo pdbethke/corralai .

That key is the repository's published LEDGER_PUBKEY, and it is the key this page checked the signatures against. Leave out --pub and corral uses your local certify key if you have one, which did not sign this record, or checks no signatures at all if you do not. Hash and link integrity need no key: any reader can confirm from the files alone that no entry was edited and none removed from the middle.