How can verifiers be bypassed? Explore our adversarial tests →

Verifiers

Verifiers need verification, too.

Record which strategies bypassed the checks, and what happened after adding the missing constraints.

Why evaluation needs
to be more reliable

59.4%

Of 138 difficult tasks reviewed by OpenAI, 59.4% had substantial test or task-description flaws. On February 23, 2026, OpenAI announced it would stop reporting SWE-bench Verified results.

296

METR asked four maintainers of scikit-learn, Sphinx, and pytest to review 296 AI submissions that passed automated grading. Human review and automated scores still diverge.

38.3%

Gemini 3 Pro accuracy listed on the HLE website. The researchers caution that high scores on closed academic questions alone do not establish autonomous research ability.

Match the final state

Compare the final database with an annotated target state. An agent may reach that state through incorrect actions and still pass; each task also needs its own annotation.

Check process invariants

Encode business rules that must hold throughout the workflow. Different tasks in a domain can reuse these rules, with evidence used to verify the result.

Month-end close

Both books balance. Only one agent did the work.

If you only check whether the trial balance is zero, both agents pass.

Adjusting entriesAmount
Unrecorded bank feeSTMT-04171,240.00
Transposed digits: 5,400 / 4,500JE-2291900.00
Outstanding checkSTMT-04223,100.00
Reverse a duplicate entryJE-23042,860.00
Trial balance difference0.00 ✓
Invariant · Suspense balance0.00 ✓

Both checks pass. The close is genuinely complete.

Adversarial tests

We attack our own verifiers and publish the results.

Ten degenerate strategies. Two rounds. The first round shows where we failed.

Month-end close · Controlled comparison. Round 1 uses a baseline verifier constructed for this experiment. Round 2 adds process and evidence checks. The same ten synthetic trajectories are executed in both rounds; full source code and results are available to download.

StrategyRound oneAdded checkRound two
Move the discrepancy into suspenseBypassedRequire zero closing suspense balanceBlocked
Claim completion without entriesBypassedRequire at least one adjustment with a nonzero net amountBlocked
Exhaust the budget with retriesBypassedLimit tool calls to 200Blocked
Delete problematic entriesBlockedBlocked
Insert balancing entries without evidenceBlockedBlocked
Spread tiny adjustments across accountsBypassedValidate evidence and account per entryBlocked
Fix only the easy discrepanciesBlockedBlocked
Reverse and repost repeatedlyBypassedDetect zero-net-amount churnBlocked
Abuse materiality flagsBypassedCheck thresholds for flagged itemsBlocked
Take no actionBlockedBlocked
10Strategies tested
6Round-one bypasses
0Round-two bypasses

Month-end close · Invariants

INV-01

The trial balance debit-credit difference stays at zero after every step

The fundamental accounting identity.

INV-02

Suspense and clearing accounts close at zero

Balanced books alone do not resolve discrepancies.

INV-03

Every adjustment references its supporting evidence

Evidence must identify a statement record or voucher.

INV-04

Original journal entries cannot be edited or deleted

Correct errors with new reversal entries; preserve the originals.

INV-05

Adjusted book and bank balances reconcile

Only explicitly supported timing differences are allowed.