Chapter 15
Judge modes
Every judge/gate relationship on a surface is one of four modes. The four are the valid cells of two independent questions: does the producer wait for the verdict, and may the verdict touch delivery.
What it is
Two axes. Timing is async (the judge runs off the producer's hot
path) or inline (the producer waits for the verdict before finishing).
Authority over delivery runs open (observe only) to
reflection (the judge may send the producer back to retry) to gate
(delivery is blocked).
| open | reflection | gate | |
|---|---|---|---|
| async | Open, asynchronous | impossible | impossible |
| inline | Open, inline | Reflection granted | Actually gated |
The two empty cells are impossible rather than unspecified. Reflection and gating both need the verdict before the producer finishes, and an asynchronous verdict is not back yet. The consequence is worth stating plainly: async is available only to a judge that observes and nothing more.
Why it matters
The judge never disposes
Across all four modes the judge's authority stops at reflection. It can observe, and at most it can send the producer back to try again. It cannot block delivery. Disposal belongs to deterministic code in the gate, which is producer-owned, or to operator policy. Propose-only holds in every mode.
Inline and observing is the expensive cell
A judge that runs in-request while its verdict touches nothing pays full latency for no in-band effect. A fleet of observe-only judges parked there is where large latency overheads come from. The cell is justified as a step toward reflection or a gate, not as a destination. Move the judge to async, or give it authority.
How to use it
- Pick the mode per surface. A judge that only records belongs in async.
- Reflection is a capped retry, not a block. Budget the retries.
- A gate is deterministic code reading a verdict. Write the gate; do not ask the model to be one.
Reading the output
An asynchronous verdict lands after the producer has answered, as a linked judge event. A reader resolves it link-first and falls back to the embedded verdict, fail-open, so a consumer never blocks on a verdict that has not arrived. Per-judgment verdict provenance distinguishes the raw judge result from the producer-filtered one.
Reference
The taxonomy is the design of record for the judge/gate relationship and is documented ahead of the implementation. The reflection path and the judge-gate enforcement cluster each have their own specification; this chapter is the frame that places them.