Workflow evals: how TypeSafe measures Jev
TL;DR TypeSafe fixes a code workflow, runs every model through the same harness, and scores each model against reference labels produced by averaging GPT-6 Astra and Claude Fable 5.1 at high thinking. Across four workflows Jev is claimed 193.6x faster and 444.6x cheaper; TypeSafe itself says these "are on the higher end of real world gains." Treat the numbers as vendor-run, self-labeled, and useful mainly as evidence for the architecture claim: a structured workflow beats a single prompt for every model tested.
What it is
A vendor-published eval suite at https://evals.typesafe.ai/ with four end-to-end automation workflows. Its framing sentence: "Real world tasks can be executed via structured workflows or standalone prompts. Structure is always better."
The headline plot averages "one model configuration's accuracy, cost and time over the four workflows with equal weight, against the consensus labels. Every model runs at its provider's default reasoning setting. Up and to the left is better." Model families plotted: TypeSafe, OpenAI, Anthropic, Fireworks, each in two variants — workflow and prompt. Two Pareto frontiers are drawn: "nothing is both cheaper and more accurate" and "nothing is both faster and more accurate."
Methodology
1. Decompose the work, build a harness
"To automate a task, we decompose the decisions into programmatic rules and intelligent judgments. Rather than ask a model to solve the entire problem in one shot (like the prompt examples in the plot), we ask independent narrow questions and defer to code where possible."
The three question types used, as the eval site describes them:
| Type | Question | What the model returns |
|---|---|---|
| Noul | yes or no | a probability |
| Choice | one option from a defined set | a distribution over the choices, as well as confidence |
| Score | a continuous rating on a scale | a score, distribution over the levels, and confidence |
The results are then used programmatically to produce the output actions.
The key finding: "Averaged across the four example tasks, every model is more accurate, cheaper and faster in the workflow than it is with the same policy as a prompt." This is the most portable result on the site — it is about harness design, not about Jev.
The site's toy illustration is an expense-claims policy, where each sentence becomes either a typed question or a code rule:
- Every claim comes with a receipt. If the receipt cannot be read, ask the employee for a new one.
- Work out what kind of expense it is: a meal, travel, or equipment.
- A meal over $75 needs a manager's sign-off when the description on the claim does not clearly match the receipt.
- Everything else is approved.
2. Assume the harness is correct
"Instead of debating the correctness of the harness and labels, we assume that the code is correct, and measure against the current smartest large models. For this eval, the reference labels are generated via an average of the responses of GPT-6 Astra and Claude Fable 5.1, both at high thinking, answering every question in the harness. All other models are evaluated using the provider's default reasoning settings."
Restated in the blog: "every model gets the same workflow. We test how they compare to the average of the smartest models (in this case, Astra and Fable)." TypeSafe explicitly does not optimize for a ground-truth classification and does not allow the harness or model to change — "potentially allowing for overfitting via harness engineering."
3. Wrap the LLMs so they can answer the same questions
"The LLMs use our System One LLM wrapper, which constrains LLMs to output structured decisions compatible with our API. We have found this to be the most accurate way to get decisions from LLMs, but this tends to be slower and more expensive than giving decisions without probabilities."
Each workflow page also publishes a handful of qualitative cases: "for each model, one where it alone differs from the other two; one where all three miss the reference; one where all three agree." The three models walked through on those pages are labelled TypeSafe, Opus, and Sol.
The four workflows
| Workflow | Task | Inputs | Output |
|---|---|---|---|
| Security Incidents | "A security alert fires on a laptop or a server. Given the alert and everything on file about that machine, we decide whether to close it, pass it to an analyst, or contain it now." | The alert (what fired, on which asset, when); the asset (environment, tier, owner); open tickets; registered devices; scheduled maintenance; standing authorizations | one of AUTO CLOSE, NOTIFY USER, ESCALATE TIER2, KILL PROCESS, DISABLE ACCOUNT, ESCALATE URGENT |
| Agent Trace Observability | "A support agent has just finished with a customer. Given the whole run, every tool call included, we decide whether a person needs to look at it, and how soon." | The agent's instructions; the conversation; tool calls with arguments and results; the final message; customer feedback when left | one of AUTO-CLOSE, NOT A BUG, HUMAN REVIEW, PRIORITY REVIEW, FILE ISSUE · ROUTE, PAGE ON-CALL |
| Invoice Processing | "A vendor's bill arrives. Given the bill, the order behind it, and what was actually delivered, we decide whether it gets paid, held, or sent back." | The invoice; the purchase order; the contract; the vendor record; prior invoices; correspondence; delivery evidence; approvals | any that apply: PAY, SCHEDULE, SHORT PAY, ROUTE FOR APPROVAL, HOLD FOR DOCUMENTS, REQUEST CORRECTED INVOICE, DISPUTE LINES, FRAUD REVIEW, DUPLICATE |
| Customer Service | "A customer writes in. Given the thread so far and the state of their account, we decide what the assistant should say and do next." | The conversation; the customer record; the account (subscription, recent charges, refunds, card status); a pending proposal | any that apply, sometimes none: SAY, REFUND, FREEZE CARD, SET INTENT, HAND OFF, FLAG FOR REVIEW, CLOSE |
Workflow structures (worth copying)
Security Incidents — four stages. (1) Read the alert: three questions about the alert and the records joined to it — was the activity unauthorized, does a record explain it, how strong is the evidence. (2) Close, queue, or act: code combines the three answers with how important the machine is and where it runs; borderline identity alerts also notify the user. (3) The state of the incident: acting opens eleven more questions — credentials, live sessions, mail, anything left behind to run later, processes, network traffic, and how far the activity spread. (4) Choose the response: the playbook takes the first group whose conditions are met, then the strongest step in it that still applies; when no group applies, the alert is escalated.
Agent Trace Observability — three stages. (1) Permission on irreversible actions: every action the agent took that cannot be undone is measured against what it was permitted to do at that point in the run; a breach pages on-call and the review ends there. (2) Task completion and user satisfaction, asked as two separate questions reading different parts of the run "so neither colours the other." (3) The two answers select one of four outcomes — healthy, an expectation gap, an overt failure, or a silent failure — and each asks one further question and then ends the review: close, queue, file a bug, or send to a person.
Invoice Processing — four stages. (1) Read the documents: seven rounds of questions, one subject at a time; "sums, dates, account numbers and statuses are computed in code rather than asked." (2) Reasons to stop: four conditions end the review immediately — a fraud pattern, an invoice already paid, the wrong vendor or company, or a document that is not an invoice. (3) Holds, disputes and corrections: three rule lists run side by side, every rule that applies adds its actions. (4) Releasing the payment: a sequence of yes-or-no checks decides how the payment leaves.
Customer Service — four stages. (1) Intent, frustration and risk flags: eleven readings of the conversation at once — what the customer wants and how they want it resolved, how frustrated they sound, how urgent it is, and flags such as unauthorized activity, a legal threat, or a request for a person. (2) Consent, fraud, money, retention: four follow-ups plus a tie-break when two intents are close, each running only when the first reading calls for it, with the records it needs attached. (3) Check the assistant's claims against the record — "did it tell the customer a refund had gone through, or that the card was frozen, when neither had happened?" (4) Nine sections run top to bottom: safety, the assistant's claims, a pending proposal, handing off, closing, then the issue itself; the first rule that applies in a section emits its actions, otherwise the next section runs.
Common design signature across all four: many atomic questions asked at once, deterministic arithmetic and status checks kept in code, early-exit stop conditions, and ordered rule groups where the first match wins.
What "193.6x faster, 444.6x cheaper" means
From the blog: "This is where the claims of 193.6x faster, 444.6x cheaper on our home page comes from."
- The comparison is Jev vs. the LLMs running the identical workflow harness, averaged across the four workflows above — not Jev vs. a raw LLM API call, and not a benchmark of intelligence.
- The LLM baselines run through the System One LLM wrapper, which TypeSafe says "tends to be slower and more expensive than giving decisions without probabilities" — the wrapper is part of what makes the multiplier large.
- TypeSafe frames accuracy separately: "Jev is off the charts – owning the Pareto frontier for almost 2 orders of magnitude."
- TypeSafe's own bound on the number: "we expect that these are on the higher end of real world gains."
Caveats TypeSafe publishes (verbatim in substance)
- Authorship bias. "These content of these workflows were not deliberately chosen nor constructed to make our model look good, and are not in our training distribution. However, they were made by individuals on our model capabilities team, so some bias could exist."
- Reference-label bias. "We use the average of GPT-6 Astra and Fable 5.1 as the reference answer, which biases answers towards OpenAI and Anthropic's models. We likely underestimate the relative performance of our model and DeepSeek's models." Note the direction: the scoring reference is two of the competitors, so Jev can never score above the reference by construction.
- Wrapper overhead. The LLMs are constrained through TypeSafe's own System One LLM wrapper (above).
- Reasoning settings are asymmetric. Reference labels use Astra and Fable "both at high thinking"; every evaluated model runs at "the provider's default reasoning setting."
- Measurement location. "Our published evals are generally run from our laptops on the West Coast (this is where our service is currently based)" — latency numbers include that network path.
- Complexity is deliberate. "Note that the calls here are significantly more complex than the side-by-side demonstration above. That's because they're more representative of the types of production workloads needed for true business automation."
Separate claims that are not from the workflow evals
- The side-by-side demo used GPT-5.6 Terra with default reasoning, "because we've found it to be the most comparable at intelligence to Jev on average," on a deliberately short, dense state — TypeSafe notes "the relatively shorter input paints our model in an advantageous light," and that the only disagreement in the recorded run was on "Churn likelihood level," which TypeSafe calls genuinely ambiguous.
- The hallucination / type-error plot uses OpenRouter numbers for LLMs ("there almost certainly is bias here: more complex queries might be routed to better models"), and Jev's 0% is not empirical: "Schema matching is guaranteed, thus we can confidently add 0% into the plots."
- The Wikiracing demo ran against non-reasoning modes of the models (except Astra at its lowest reasoning setting), so "our speedups here tend to be a lot less than in previous demos."
Why it matters for code
- Copy the harness shape, not the score. The transferable result is that the same policy expressed as a workflow beat the same policy expressed as a prompt for every model tested.
- Ask questions in bulk. Three of the four workflows front-load a large parallel batch (eleven questions in two of them) and only then branch. See Speculative fan-out.
- Keep arithmetic in code. Invoice Processing explicitly computes sums, dates, account numbers and statuses in code rather than asking the model.
- Early exits are cheap correctness. Both Invoice Processing and Agent Trace Observability end the review immediately on a stop condition rather than scoring everything first.
- Build your own reference set the same way if you lack labels: an ensemble of expensive reasoning models answering every question in your harness. See Testing and evaluating a Jev workflow and Cookbook: Autoresearch feature discovery.
Gotchas
- These are vendor-run evals with vendor-generated labels. There is no independent ground truth and no third-party replication in the sources.
- "Accuracy" here means agreement with the Astra+Fable average, not correctness.
- The four workflows are the published set; the site notes deeper material (examples, disagreements, full queries) lives on
evals.typesafe.aiitself, which the captured text only summarizes. - Per-workflow numeric results are not present in the captured text — the plots are images. Do not quote per-workflow accuracy figures from this page; only the aggregate 193.6x / 444.6x is textually attested.
Related
- System One Models — the claims this eval backs
- How to build software with System One — the harness design the evals embody
- Speculative fan-out — bulk parallel questions
- Confidence-gated routing — probability-driven branching
- Testing and evaluating a Jev workflow — evaluating your own workflow
- Blog: Introducing System One Models & Jev (2026-09-15) — the launch post
- Blog: Lies, Damned Lies, and Benchmarks — TypeSafe on benchmarks
- Models, aliases, pricing, rate limits, context — the price and latency the evals rest on
Sources
- raw/site/evals-site.txt (https://evals.typesafe.ai/)
- raw/site/evals-security_incidents.txt (https://evals.typesafe.ai/security_incidents.html)
- raw/site/evals-agent_trace_observability.txt (https://evals.typesafe.ai/agent_trace_observability.html)
- raw/site/evals-invoice_processing.txt (https://evals.typesafe.ai/invoice_processing.html)
- raw/site/evals-customer_service.txt (https://evals.typesafe.ai/customer_service.html)
- raw/site/blog-introducing-system-one.txt (https://typesafe.ai/blog/introducing-system-one-models-and-jev) — "Evidence / Technical Results"