Type: Design note / foundational doctrine · Track: Boundary Instrument (bonds + DB) · Status: resolved-by-design, write it down so we never re-introduce it
Owner: TBD · This is the load-bearing argument for why the benchmark is non-circular. Anyone touching the judge, the labels, or the scoring must read this first.
The paradox (the objection a sharp reviewer/investor will raise)
We claim to benchmark agents on whether they know where ambiguity lives — when they can act vs. when they must ask a human. But to grade that, our benchmark seemingly needs to know where the ambiguity is and whether the candidate got it right.
If we used an agent to decide where the ambiguity is and whether the candidate was correct, our judge-agent would have the exact same blind spots as the agents under test. Fox grading foxes. The classic "the evaluator must be smarter than the evaluated" trap — and it would make the whole benchmark circular and worthless.
Restated as the question that exposes it: "Why would we perform better at finding the ambiguity than the agents we're judging?" If the honest answer is "we wouldn't," a naive eval design collapses.
This paradox is real, and it sinks any design that judges with an agent. We must be able to state precisely why ours doesn't.
The solution (the escape — and the architecture is built around it)
We never judge with an agent, and we never find the ambiguity by reasoning. We manufacture the answer key. Ground truth comes from two non-agent sources:
- Deterministic re-derivation (
bonds_instrument/judge.py — no LLM). It knows the answer because the arithmetic is decidable (re-derive the per-million / coverage / reconciliation from the trace), not because it is clever about bonds.
- Planted truth. Error labels exist because we injected them (
claims.py: poison) — we know a claim is wrong because we broke it and recorded how. The "needs-human / unverifiable" labels exist because we stripped the provenance ourselves — we know it's unresolvable because we removed the verification, not because an agent judged it murky.
So the benchmark never has to understand the ambiguity better than the candidate. It sets up situations where it already holds the answer key — because it wrote the question. Same move as: a teacher who wrote the exam grading a prodigy (she has the key, she needn't out-think the student); a unit test asserting a known expected output (not smarter than the code); a held-out label set (no need for a model better than the one evaluated).
The reframe that dissolves "why are we better than the agents?"
We're the ruler, not a runner. A ruler doesn't sprint faster than the athletes; it measures how far each got. We are not competing with the agents at finding bond errors — we are the only party holding an objective answer key in a domain where everyone else has only opinions. The value is "we manufactured the truth, so we can grade any agent," never "we are a better agent."
⚠️ Referee vs. contestant — never conflate them. The LLM in bonds_instrument (LLMAgent) is a contestant being measured, NOT the referee. The referee is judge.py + the planted labels. Confusing the two is the paradox. The architecture exists to keep them separate.
The honest limit (where the paradox genuinely wins — do NOT pretend otherwise)
The escape only holds where we can manufacture or re-derive truth: the arithmetic layer + the policy-defined "no provenance → escalate" layer. On the genuinely interpretive layer (is this covenant material? is this truly the right ICMA category?) there is no answer key to plant and no deterministic re-derivation. If we tried to grade that, we would be right back in the paradox — needing a judge at least as good as the agent.
So we do not grade that. We measure the boundary — does the agent escalate the things we made unverifiable — and explicitly label the interpretive core "human territory" the instrument cannot score. The moment we use an LLM as the judge to feel like we've "solved" interpretation, we un-escape the trap and the benchmark becomes circular again.
This is why the manifesto insists the judge stay frozen and objective and the pore stay frozen — not pedantry, it is the escape hatch from the circularity.
Why this is defensible where "LLM-grades-LLM" eval startups are not
They stand inside the paradox (a model judging models). We built the architecture to stand outside it (deterministic judge + planted truth), and we are honest about exactly where the outside ends.
Definition of done (for this doctrine)
Out of scope
- Trying to "solve" interpretive grading with a smarter model — that is re-entering the paradox. The deferred, honest extension is a small human-judged audit sample that bounds (never certifies) the interpretive blind spot.
Owner: TBD · This is the load-bearing argument for why the benchmark is non-circular. Anyone touching the judge, the labels, or the scoring must read this first.
The paradox (the objection a sharp reviewer/investor will raise)
We claim to benchmark agents on whether they know where ambiguity lives — when they can act vs. when they must ask a human. But to grade that, our benchmark seemingly needs to know where the ambiguity is and whether the candidate got it right.
Restated as the question that exposes it: "Why would we perform better at finding the ambiguity than the agents we're judging?" If the honest answer is "we wouldn't," a naive eval design collapses.
This paradox is real, and it sinks any design that judges with an agent. We must be able to state precisely why ours doesn't.
The solution (the escape — and the architecture is built around it)
We never judge with an agent, and we never find the ambiguity by reasoning. We manufacture the answer key. Ground truth comes from two non-agent sources:
bonds_instrument/judge.py— no LLM). It knows the answer because the arithmetic is decidable (re-derive the per-million / coverage / reconciliation from the trace), not because it is clever about bonds.claims.py: poison) — we know a claim is wrong because we broke it and recorded how. The "needs-human / unverifiable" labels exist because we stripped the provenance ourselves — we know it's unresolvable because we removed the verification, not because an agent judged it murky.So the benchmark never has to understand the ambiguity better than the candidate. It sets up situations where it already holds the answer key — because it wrote the question. Same move as: a teacher who wrote the exam grading a prodigy (she has the key, she needn't out-think the student); a unit test asserting a known expected output (not smarter than the code); a held-out label set (no need for a model better than the one evaluated).
The reframe that dissolves "why are we better than the agents?"
We're the ruler, not a runner. A ruler doesn't sprint faster than the athletes; it measures how far each got. We are not competing with the agents at finding bond errors — we are the only party holding an objective answer key in a domain where everyone else has only opinions. The value is "we manufactured the truth, so we can grade any agent," never "we are a better agent."
The honest limit (where the paradox genuinely wins — do NOT pretend otherwise)
The escape only holds where we can manufacture or re-derive truth: the arithmetic layer + the policy-defined "no provenance → escalate" layer. On the genuinely interpretive layer (is this covenant material? is this truly the right ICMA category?) there is no answer key to plant and no deterministic re-derivation. If we tried to grade that, we would be right back in the paradox — needing a judge at least as good as the agent.
So we do not grade that. We measure the boundary — does the agent escalate the things we made unverifiable — and explicitly label the interpretive core "human territory" the instrument cannot score. The moment we use an LLM as the judge to feel like we've "solved" interpretation, we un-escape the trap and the benchmark becomes circular again.
This is why the manifesto insists the judge stay frozen and objective and the pore stay frozen — not pedantry, it is the escape hatch from the circularity.
Why this is defensible where "LLM-grades-LLM" eval startups are not
They stand inside the paradox (a model judging models). We built the architecture to stand outside it (deterministic judge + planted truth), and we are honest about exactly where the outside ends.
Definition of done (for this doctrine)
docs/bonds-instrument-spec.mdand the manifesto).judge.pyimports no LLM client.REGIONS.md, the pitch) states the honest limit: scored only up to the manufacturable edge; interpretation is human territory, not measured.LLMAgentappears, so no future change wires a model in as the judge.Out of scope