The Verifier's Blind Spot
A "self-improving" model cascade is supposed to cost less every round: answer most queries with a cheap model, escalate the hard ones to an expensive verifier, then fine-tune the cheap model on whatever the verifier rejected so it escalates less next time. We built that loop and measured it on real language models. It got quietly worse — and every dashboard we had said it was fine.
01 — the free lunch that isn't
The loop everyone reaches for
The standard move for cutting inference cost: answer most queries with a cheap student, escalate the hard ones to an expensive frontier verifier, then close the loop — retrain the student on the cases the verifier rejected so it needs the expensive model less each round.
Cheaper over time, same quality. It looks like a free lunch, and it borrows its intuition from speculative decoding, where a small model drafts and a large one verifies losslessly. But semantic verification isn't lossless. The verifier is a judge, and judges are wrong in both directions. The moment you train a student to satisfy an imperfect verifier, you are optimising against a proxy — the classic setup for Goodhart's law.
02 — finding one
The blind spot is worst where you save money
Hold the verifier fixed and make the student better. The blind spot — the share of the student's wrong answers the verifier waves through — doesn't shrink. It grows.
A stronger student makes subtler, more convincing mistakes, and a fixed verifier catches fewer of them. In our runs the blind-spot rate climbed from 0.12 at 0.5B to a peak of 0.55 at 14B, easing only slightly at 32B. This is a capability-gap effect — not a model preferring its own text — and it carries a sharp warning: the problem gets worse as your cheap model improves, not better.
03 — finding two
Buying it away gives the cost back
"Fine — use a better verifier." It works: a frontier verifier crushes the blind spot to ≈0.05. But look at what it costs.
On hard MATH, that strong verifier escalates 46% of queries against a 39% true error rate — it buys its recall by over-rejecting correct answers too, paying the frontier price on nearly half of all traffic. That is the exact cost the cascade existed to avoid. Low blind spot and low cost are not simultaneously available from a fixed verifier.
04 — findings three and four
The loop degraded — and the dashboard never saw it
We ran the actual self-improving loop. Naive fine-tuning on the verifier-rejected tail didn't improve our small students. It degraded them, and eventually collapsed them — with every teacher we tried, cross-family and same-family.
The rejected tail is the hardest, most style-shifted slice of the data; training a small model only on that destabilises it. But here is the part that should worry anyone shipping one of these systems: none of it showed up on the dashboard. Every in-loop metric is computed through the verifier. Ours held flat near 3% while the true, gold-checked error of the delivered answers climbed to 32%. The system was blind to its own decay, by construction.
05 — why it happens
A conservation law for blind spots
The mechanism is structural. Split the student's errors into two piles: the ones the verifier can see, and the ones it can't.
The loop trains only on the detectable pile, so that mass drains towards zero. The blind pile gets no training signal — it is conserved. User-facing error doesn't vanish; it settles at the confidently-wrong-and-accepted mass it started with, a floor of roughly q₀·β₀. And because every in-loop metric lives on the detectable side, the dashboard keeps improving while true quality stalls. In a synthetic study — where the loop provably does improve the student — the same two populations appear, which is what lets us call the floor a property of the mechanism rather than an artefact of one run.
06 — what to do about it
Measure outside the verifier
None of this is an argument against cascades — they are the most direct cost lever we have. It is an argument about measurement.
You cannot read the reliability of a self-improving cascade from any metric computed through its own verifier. A system optimised against a proxy will satisfy the proxy — so the proxy stops being evidence.
The fix is an independent audit channel: a small, periodic, gold-labelled sample that never touches routing or training. It is the one instrument that can see the blind spot, because it doesn't share the verifier's eyes. Two more design rules fall out of the findings — decorrelate the verifier from the student (shared failure modes share blind spots), and treat feeding accepted answers back as labels as a safety decision, not a free data source: it turns a passive blind spot into an actively reinforced one.
We built the loop we set out to build, watched it fail in an instructive way, and measured exactly how. The honest version of "self-improving" comes with a gold-labelled audit stapled to the side. The full paper is on arXiv, and the experimental harness and the committed measurements behind every figure are open at github.com/AltSlate-Labs/cascade-blindspot.