The Production Problem
Why the work fails after the demo and what must be made explicit first.
The Boundary
Eval-Driven Development begins with a plain constraint: teams build features before defining what good behavior means. The subject is evaluation-led development, but the real work is deciding where the system is allowed to act, what it must prove, and who owns the result when the answer is wrong.
TDD assumed deterministic outputs. The discipline that replaces it when the unit under test is a probability distribution. This chapter treats that premise as operating material. The goal is not novelty. The goal is a decision process that a team can explain before launch and defend after the first incident.
This manual is written for the team that has to operate evaluation-led development, not only present it. For engineering teams replacing guesswork with evidence, the useful boundary is the point where a model response becomes a business action. Before that point, experiments are cheap. After that point, errors have owners.
The First Principle
The first principle is simple: the test suite should shape the system before the interface is polished. It sounds obvious, but most failures start when teams accept a pleasing example as proof of general behavior.
A responsible team writes down the decision before optimizing the system. The question is not whether evaluation-led development can produce an impressive answer. The question is whether it can support a real decision: which changes improve the product instead of only changing it.
What To Ignore
Ignore benchmark theater that does not resemble the work. Ignore demos with handpicked inputs. Ignore architecture diagrams that cannot name an owner for failure. The reliable path starts with the work people actually need completed.
The temptation is to widen scope quickly. Resist it. The faster route is to define a narrow promise, measure it honestly, and expand only when the evidence remains stable across new inputs.
How To Read The Book
Each chapter returns to one operating question: what would have to be true for this system to be trusted? The answer changes by domain, but the discipline does not.
Use the book as a working memo. Mark the policies that already exist, the measurements that are missing, and the assumptions that need a test before they become roadmap commitments.
Research Lens
The research base for Eval-Driven Development matters because evaluation-led development sits between capability and consequence. Papers, benchmarks, and risk frameworks can show what is possible, but production teams still have to translate that evidence into decisions. This chapter treats research as a constraint on judgment, not as decoration.
The most useful research habit is to separate mechanism from outcome. A paper can show that a method improves a benchmark. It does not prove that the same method improves regression rate across business-critical tasks in your product. That gap is where evaluation, sampling, and release discipline belong.
For this chapter, read external sources as pressure tests. If a source describes a known weakness, ask whether your system can observe that weakness. If a source describes a benchmark gain, ask whether your users send the same kind of work. If a source describes a risk, ask who owns it after launch.
Scope method
Start with a written task statement. It should name the user, the input, the expected output, the source of truth, and the action that follows. If any of those pieces are missing, evaluation-led development is not ready for broad automation because the team cannot tell whether the result is good enough.
Next, define the control surface. For this topic, the control surface includes task fixtures, rubrics, release gates, review queues, and regression history. Each control should have a reason to exist and a way to be tested. A control that cannot be tested becomes process theater. A control that can be tested becomes part of the operating system.
Finally, decide what the system does when the answer is not ready. The mature options are ask for more context, return a partial answer with evidence, route to a person, or stop. The immature option is to keep generating until the output sounds confident.
Boundary evidence
Evidence should be collected at the same grain as the decision. If the decision is which changes improve the product instead of only changing it, the review set should contain examples that force that decision. A broad score is useful only after the team has inspected the cases that carry the most cost.
The strongest evidence combines observed user work, known edge cases, recent incidents, and synthetic pressure tests. Synthetic examples are useful when they fill a known gap. They are dangerous when they replace the real distribution the system must serve.
A good review record includes the input, the relevant context, the output, the expected answer, the judgment, and the fix. Without that record, quality work becomes memory work. With it, the team can see whether the system is learning, drifting, or merely changing shape.
Implementation Notes
Implementation should begin with the smallest useful workflow. The first version should be narrow enough that the team can replay every important failure. If replay is not possible, the system is not observable enough for serious use.
The second version should add volume without changing the promise. This is where regression rate across business-critical tasks should be watched closely. If the metric improves while support tickets, corrections, or handoffs rise, the measurement is missing something important.
The third version can expand scope only after the team knows which failures are acceptable, which failures require escalation, and which failures require rollback. Expansion without that knowledge creates a system that appears productive while quietly moving risk to the customer.
Decision Review
At the end of the chapter, the team should be able to answer four questions. What promise are we making? What evidence supports it? What happens when the promise fails? Who has authority to change the promise? These questions are simple, but they expose most weak deployments.
The answer should not live only in a meeting note. It should appear in the evaluation suite, the release checklist, the incident process, and the product experience. Users do not need to see the internal machinery, but they do need to feel its discipline.
Eval-Driven Development is ultimately about replacing vague confidence with accountable practice. The point is not to slow teams down. The point is to make speed repeatable, explainable, and safe enough to build a business on.
The Production Problem operating table
| Area | What to inspect | Decision evidence |
|---|---|---|
| Scope | Define the exact evaluation-led development task before expanding coverage. | regression rate across business-critical tasks |
| Evidence | Require examples that represent real work, not only ideal demos. | which changes improve the product instead of only changing it |
| Owner | Name the person responsible when optimizing for examples that never mattered to customers. | write the evaluation contract before tuning the prompt or model |
What to carry forward
- Define the work as an operating responsibility.
- Use regression rate across business-critical tasks as the anchor metric.
- Make this decision explicit: Which changes improve the product instead of only changing it.
- Write the evaluation contract before tuning the prompt or model.
- Define the boundary before expanding scope.
- Treat the first example as a clue, not proof.
