Anirudh Bhardwaj
Writing
Field notes · January 12, 2026

Why most AI agents fail in production (and the boring fixes that work)

Almost every "our agent failed in production" call I've been on has the same shape. The model was fine. The failure was sitting somewhere nobody had bothered to design.

Five things, in order of how often I see them.

Nobody defined what wrong looks like. Teams ship an agent, watch it work in the demo, call it done. Nobody wrote down what a bad output actually looks like, so nobody built anything to catch one. If you can't describe the failure mode in a sentence, you have no way of knowing it's happening right now.

The agent has more autonomy than the team has trust. Autonomy gets earned in increments. It doesn't get granted on day one because it's convenient for the roadmap. Start narrow, human in the loop, and widen the scope only as far as the production failure rate actually justifies — not as far as the deck promised.

There's no deterministic floor underneath it. Every production AI system needs a layer that isn't AI — rules, policy, plain validation — sitting under the model, ready to catch the cases it gets confidently wrong. Skip this and you haven't saved engineering time. You've deferred an incident to a worse day.

Logging was an afterthought. If you can't replay a decision six months later — what the agent saw, what it output, what happened next — you don't have an AI system. You have a black box with good PR, and it will get found out at the worst possible time.

Nobody owned the boring twenty percent. Prompt engineering is fun. Eval harnesses, monitoring, incident runbooks are not. Every agent I've seen survive contact with production had a team willing to spend most of its time on that unglamorous twenty percent. Every one that failed had a team that skipped it, hoping the model would cover for them.

None of this needed a better model. It needed someone to sit down and do the boring part before production forced the issue. That's the whole post, honestly — the fix was never going to arrive in the next release.