03Research / Reliability

Building agents that don't drift.

A 2% per-step error rate is invisible in a demo and fatal over a 200-step horizon — here's how to build agents that stay reliable when no one is watching.

The failure mode everyone worries about — the agent going rogue, doing something obviously wrong — almost never happens in practice. What actually happens is quieter: the agent slowly gets a little worse at its job. Outputs drift. Decisions compound. By the time anyone notices, the damage is done and the trail is cold. Reliability is the whole game once an agent runs unattended.

Two ways agents drift

Most reliability problems trace back to one of two sources, and they look similar on the surface but require different fixes.

Model drifthappens when your AI provider silently updates the model underneath you. You didn't change anything. The prompts are identical. But the outputs shifted — subtly enough that no single response looks wrong, visibly enough that downstream quality degrades. This is more common than providers advertise and harder to catch than any single bug.

Horizon driftis the compounding problem. A single step that is 98% reliable sounds impressive. Run 200 of those steps in sequence and the odds that everything goes right drop to around 1.8%. Small errors accumulate: a misclassified item shapes the next decision, which shapes the one after that. At the same time, long tasks fill the agent's context window with stale information and irrelevant history, which quietly degrades the quality of later decisions. The agent isn't broken — it's just slowly losing the thread.

Persistent agents fail like bridges, not lightbulbs — slow corrosion, not a sudden pop. Monitor for the corrosion.

The patterns we use

None of these are exotic. They're the engineering discipline that any long-running system requires — applied to agents specifically.

  • Pin model versions. Request a specific model version from your provider, and run your eval suite before adopting any update. Treat a model upgrade the same way you'd treat a dependency upgrade — tested, intentional, rolled back if it regresses.
  • Golden tasks in CI. Maintain a small set of representative tasks with machine-checkable success criteria. Run them in continuous integration on every change. If the agent starts failing tasks it used to pass, you find out in minutes, not weeks.
  • Checkpoints and idempotent steps. Design each step so it can be retried safely without corrupting state. Checkpoint progress so a failed run resumes where it left off rather than starting over or, worse, partially re-doing work it already completed.
  • Keep scope narrow. One job per agent. Reliability rises as scope falls. An agent that does one thing well is easier to test, easier to monitor, and easier to fix than an agent trying to do five things adequately.
  • Aggressive context management. Summarize and compact the context window at regular intervals. Strip out history the agent no longer needs. A clean, focused context window produces better decisions than a bloated one full of resolved sub-problems.
  • Guardrails and human approval on risky steps. Define which actions are irreversible — sending an email, writing to a database, making a payment — and require a human sign-off before those steps execute. Autonomy is earned step by step, not granted upfront.
  • Observability that watches trends, not just errors. Log success rate, cost per task, and output quality over time. A dashboard that only shows crashes misses drift entirely. You want to catch a 94% success rate trending toward 87% before your customer catches it first.

The short version

Reliability engineering for agents is not a new discipline — it borrows from distributed systems, from CI/CD, from safety engineering. What is new is applying it to systems whose behavior can change underneath you without a single line of your code changing. That requires a different kind of vigilance: automated evals, tight scope, clean context, and human checkpoints on anything that matters.

The goal is not a perfect agent. The goal is an agent whose failures are visible, recoverable, and caught before they reach your customers. That's what makes long-running automation actually useful in production.

Want agents that hold up in production?

Gain AI designs AI workflows — and builds the software, websites, web apps, and mobile apps around them. From a first automation to a shipped product, one team.