Acceptance gate CONFORM
A rule frozen word for word: generate candidates in order, run the visible acceptance tests on each, let the first one that passes through; at most five, and if none passes, refuse delivery. Refused delivery counts as a failure and the denominator is all tasks — this is the most important half of the rule.
This page cites 2 verdicts: Held 2click one to jump to its claim card
#The rule
The rule is frozen word for word and has no tunable parameters:
- Generate candidates in order.
- Run the visible acceptance tests on every candidate in a sandbox.
- Let the first candidate that passes through, and stop generating.
- At most five. If none passes, refuse delivery.
- Refused delivery counts as a failure, and the denominator is all tasks.
#How it replaced the review committee
The gain experiments of 2026-08 showed that a committee-style design (reputation routing, three reviewers, sampled audits, one revision) lost, at the same call budget, to generating the same task five times and taking the majority vote.
The mechanism analysis found the reason:
| Metric | Value |
|---|---|
| Reviewer vote accuracy | 0.7552 |
| The zero-intelligence baseline "rule everything as pass" | 0.7522 |
| Gap | +0.29 percentage points |
| Share of single-round revisions that "had no chance to fix anything" | 93 / 113 |
| Hidden pass rate when blindly adopting the revised version | 82.3% → 78.8% (−3.5 pp) |
| Real improvement brought by revision | 1 / 113 |
Reviewers track task difficulty, not whether the answer is right
On 2026-09-03, R440P replaced the whole referee: delete the review committee, and run the customer's acceptance tests instead. In the project documents' words —
Execution instead of opinion, receipts instead of votes.}}
#Measured results
Three task banks, across five replications and four mutually exclusive task sets:
| Task bank | n | Difference | Statistic | Calls per task |
|---|---|---|---|---|
| MBPP+ (pooled 371) | 371 | +4.58 pp | 95% CI [+0.57, +8.04] | 1.51 |
| LCB v2 (hard tasks) | 120 | +19.17 pp | b=31 c=8, p=0.0003 | 1.71 |
| LCB v3 | 189 | +7.94 pp | b=25 c=10, p=0.0167 | 1.55 |
The gate delivers more than a single sample — it holds up across task banks and across replications
The harder the task, the more early stopping is worth
#Equal-budget comparison: the gate beats the vote
This is the cleanest comparison we ran: the same 5 candidates, the same 5 calls; one delivers the first that passes, the other takes a majority vote of the five.
| Stage / task bank | Gate success | Majority-vote success | Δ | Uncorrected p |
|---|---|---|---|---|
| r446 MBPP+ | 280/371 | 265/371 | +4.04 | .0135 |
| r448 MBPP+ (new seed) | 286/371 | 273/371 | +3.50 | .0241 |
| r449b LCB v2 | 85/120 | 75/120 | +8.33 | .0414 |
| r449c LCB v3 | 157/189 | 149/189 | +4.23 | .0963 Same sign, unresolved |
#Why the gate works and reviewers don't
| Selection rule | What it can do | Ceiling |
|---|---|---|
| Gate, majority vote | Can only pick from existing candidates | The share of tasks where "at least one candidate is correct" |
| Revision loop | Changes the candidates themselves | Can in principle go past the ceiling |
In the two saved batches of five-candidate data, the candidate-pool ceiling was 82.68% (31 tasks with all five wrong) and 85.03% (22 tasks all wrong).
This post gathers the numbers and the refutation record of the whole gate line in one place
#This gate still stands, but it isn't the only path
After the end of 2026-09, the product gained another main line called zero-config (zero-config Vacant). It does only one thing: at the moment the agent says "I'm done," it sends one message back.
Three of the four batches measured no difference. The fourth measured one, and it did not replicate on a different inference engine.
| Batch | Denominator | Difference | p |
|---|---|---|---|
| DABstep paid (gemma-4-26b) | 77 tasks | 50 → 44 tasks correct | 0.21 |
| DABstep paid (qwen3.8-27b) | 77 tasks | 68 → 64 tasks correct | 0.29 |
| Colab 920 tasks | 920 tasks | 81.3% → 82.4% | 0.387 |
| u274 preregistered | 100 tasks | 9 → 10 tasks correct | 1.0 |
This does not refute the numbers on this page. The reason is that the two are missing different things:
| Part | Gate CONFORM | Zero-config |
|---|---|---|
| An executable signal | The customer's acceptance tests, which actually run | DABstep answers have no visible tests |
| The power to retry | Up to five candidates | Sent back within the same session, at most 2 times |
| The power to refuse delivery | If none passes, nothing is delivered | Failures are always let through |
The original document puts it this way: zero-config group C has none of the three parts.
#Sandbox and acceptance suite
Candidate programs run in a separate process: 10 seconds, 128 MiB, a temporary directory as the working directory, and no inherited environment variables. The test program and the candidate program sit in two different processes and communicate through remote calls that carry a random token and allow only literal values, so that the candidate program structurally cannot see the test code.
#The acceptance suite is data, not code
The attack experiment of 2026-09-06 (R451) showed that as long as the acceptance suite is a piece of "trusted code," an attacker can write a stateful variant that breaks the gauge — the gauge scored perfectly in both directions, yet the delivery rate dropped by −75.20 pp, and the gauge still reported ok.
The fix is SuiteSpec: a suite contains only the dialect, the entry-point name, and a literal list of "input—expected value" pairs. The executor only runs test code generated from this data by its own deterministic renderer, and the hash of the rendered output can be compared across machines.
Effect: exec smuggling went from 368/371 → 0/371.
After turning the acceptance suite from code into data
#Preconditions
We write this sentence word for word into every document that reports effectiveness numbers; deleting that block deletes the condition under which those numbers hold.
A related structural finding: in the task banks we used, the hidden tests were always a superset of the visible tests (V ⊆ GT), so "passes hidden but fails visible" is impossible by construction. This empties the sentence "visible filtering is lossless" of content. v-gt-is-not-lossless
#False delivery: the gate really does block some, but not half
R532 larger-model experiment (836 tasks, 43 blocks, 0 voided):
| Arm | Accepted | False delivery | Rate |
|---|---|---|---|
| CONFORM | 811 | 120 | 14.4% (14.8% of accepted) |
| OFF | 625 | 211 | 25.2% |
The gate cut false delivery by roughly 40%, not by half. The thesis originally said "halved," which the fact check flagged as ERROR E6 — because the two rates used different denominators.
#Next
- What adding the revision loop does: The executable acceptance layer
- The verdict after five replications: The headline claim lost to its own stability rule
- The token ledger: This is a gain in success rate, not in token efficiency

