Verdict checks what an AI agent produced before it reaches anyone or triggers anything, and returns a ruling you can act on: pass, flag, or block — with the evidence behind it.
One API call per output. No second chat model grading the first one, no paragraph to re-parse into a boolean.
Nothing to answer for. It ships, and the case is logged.
Someone should look. It reaches your review queue, not your customer.
It does not ship until a human says so.
Every ruling opens into the checks behind it: what was asked, what came back, how confident it was, and the threshold it was scored against.
“Good news — your refund for order #88213 has been approved.”
record_state.refund_status = "denied"
The verdict is the worst outcome across the checks that ran. If a check cannot be answered, it flags — an unverified output goes to a human rather than silently passing.
Post the output and the context it had. Every active check is batched into a single model call, so the cost scales with calls, not with questions.
A typed ruling with the evidence attached — something your code can branch on, not prose it has to interpret.
You choose which run, write the rules in plain language, and tune the thresholds. Not every check is allowed to block — the ones that would cost more in false positives than false negatives only route.
| Check | Asks | Strongest ruling |
|---|---|---|
| hallucination | Is a claim unsupported by the source context? | BLOCK |
| contradiction | Does this conflict with the record or the conversation? | BLOCK |
| policy_violation | Does this break a rule you wrote? One question per rule. | BLOCK |
| pii_leak | Does this expose data the requester does not own? | BLOCK |
| high_risk_action | A refund, a deletion, an external send — should a human see it first? | routes to review |
| code_convention | Does this diff break a project convention? | FLAG |
| tone_brand_safety | Does this sound like your brand, or like a template? | FLAG |
| routing_escalation | Which queue, and does this need a human right now? | routes to review |
Verdict runs on TypeSafe's Jev — a System One model that does not generate text. It takes a state payload and typed questions and answers them directly, at roughly $0.042 per million input tokens. That is what makes checking every output viable instead of sampling a few and hoping.
Verdict never calls an LLM to write anything. It is not a chatbot, not a logging tool, and it runs on your own install against your own Jev key.