2026-09-07

Rollback Is a Factory Capability

When agents can change production all day, undo cannot remain the plan you invent after something breaks. Reversal has to be part of the factory that shipped the change.

Speed makes reversal more important

A slow release process gives a team time to pretend every change is permanent. People gather around the launch, watch dashboards, and keep the authors nearby in case the plan goes wrong. That ritual can hide a weak recovery path because human attention is temporarily filling the gap.
Agent-run delivery removes that pause. Changes can arrive faster, in parallel, and long after the person who chose the destination has moved on. That is the point. It is also why the old recovery ritual collapses. You cannot scale continuous production while requiring a small group of people to remember how to unwind every unit of work.
The uncomfortable truth is that faster code increases the number of bets you can place before you understand the result. If the factory only knows how to move forward, throughput becomes exposure. A useful factory must be able to stop, reverse, and preserve the evidence that explains why it did.

Rollback starts before release

Rollback is not one command. A code deployment may be reversible while its data migration is not. A feature flag may hide an interface while background work keeps mutating records. A configuration change may restore old behavior but leave new messages waiting in a queue. The visible change and the operating consequence are rarely the same boundary.
That means the exit route has to be designed with the change. Before an agent acts, the work packet should say what can be reversed, what cannot, which state must be preserved, and what signal requires the route to turn back. If those answers appear only during an incident, the factory is asking production to finish the specification.
A real reversal plan also has an owner. Machinery can detect a breached threshold and execute a known response. Human judgment still decides which consequences justify an automatic rollback, when a partial recovery is safer than a full one, and where irreversible work needs a deliberate gate. The point is not to remove judgment. It is to stop spending judgment on the same recovery decision every time.

Make the exit executable

Start with the smallest independently controllable change. Give it a deployment path, a clear observation window, and a mechanical way to reduce or remove its effect. Keep configuration versioned. Separate code activation from code arrival when the risk calls for it. Make data changes compatible across the transition instead of assuming every worker changes at once.
Then test the route backward. A rollback command that has never run under production-like conditions is documentation, not control. The factory should rehearse reversal, verify the restored behavior, and record what survived. If an agent can ship a change but cannot prove the exit works, it has completed construction and failed delivery.
The evidence must travel with the release. Which version was active? Which state changed? Which checks triggered? What did reversal restore, and what still needs repair? Those records let another agent or a person continue without reconstructing the incident from chat, memory, and timestamps. Recovery becomes part of the product record instead of a story told afterward.

Recovery cannot belong only to the builder

The agent that produced a change should not be the sole judge of whether the change is healthy or whether its rollback succeeded. It knows its own interpretation too well. It can repeat the same missed requirement, trust the same proxy, and report success inside conditions it chose.
Independent monitoring has to watch the consequence the business cares about. Independent gates have to decide whether the evidence permits expansion, pause, or reversal. That does not require a different model for every step. It requires authority and proof to live outside the builder's attempt, where the worker cannot quietly redefine success to match its output.
This separation is what turns recovery from heroics into machinery. The builder creates the change. The operating system measures it. A policy routes the ordinary response. People receive the narrow exceptions with the evidence already assembled. Each incident should leave a sharper threshold, a better rehearsal, or a smaller blast radius behind.

The factory needs a way back

Our position is that agents will replace roles built around repeatable software-delivery work. But that shift does not happen safely because models become more capable. It happens when the factory can govern their authority, judge their output, and recover from bad work without summoning the old team to carry the process by hand.
Look at your next release and ask a blunt question: if the factory decides this change is hurting production, can it reduce the damage without waiting for its author? If the answer depends on somebody remembering a sequence, finding an old file, or improvising a data repair, reversal is still a human service hidden behind an automation story.
Build the way back while the path forward is still fresh. Test it before the launch. Let the system keep the evidence. Faster delivery is valuable, but only when every additional change arrives with a controlled way to contain its consequences. A factory that can only advance is not autonomous. It is just difficult to stop.