What is the AI equivalent of a rollback, and when is it not available?
- Treat a rollback as putting back three things together (the weights, the config, and a trusted eval score), not one deploy flag.Why: restoring the weights alone without reverifying against a score you trust means guessing you fixed it, not knowing it.
- Check whether the old checkpoint and its training data still physically exist before promising anyone a timeline.Why: that one fact is the entire difference between a few hours and several days.
- Race the data deletion deadline, not the incident.Why: past the day the original training data fully ages out, no amount of budget rebuilds it, so speed only helps before that date.
- Never bundle a model retrain and a business rule change into one release under one eval baseline.Why: it removes the option to roll back either one on its own, and leaves no old baseline to check a partial rollback against.
- Under pressure, route back to a checkpoint with a known score rather than patch the broken one in place.Why: an unverified patch risks shipping a second, unmeasured regression on top of the first one.
- Watch for the regression daily with an automated eval alert, not a quarterly review.Why: every extra day before detection eats further into the exact data you would need for a real rebuild.
How to answer this, stage by stage
Nobody is grading whether you can say "just roll it back." They are grading whether you know that phrase means something different, and something slower, for a model than for a code deploy. Eight moves get you there.
Let's learn
Here's an assumption worth checking before it costs real money: that undoing a bad model release works the same way undoing a bad code release does. It mostly doesn't.
Fernvale Marketplace is an online marketplace. Kestone is the model that decides what shows up in "Picked for you" and "You might also like" on every page a shopper visits. With Kestone v4, the personalized rows got a 4.2 percent click rate, shown to about 1.6 million of Fernvale's 2.4 million daily shoppers.
In March, the team shipped Kestone v5. It quietly pulled that click rate down by 3.1 percent, relative, to about 4.07 percent. That sounds small. It wasn't. About 2,100 fewer clicks a day. About 380 fewer orders a day, at an average order value of 54 dollars. Roughly 20,500 dollars a day, walking out the door, for forty days before anyone caught it. Call it 820,000 dollars.
Those 380 missing orders a day are not really the story. The real story is what happened when the team went to put it back.
At its worst, this doesn't stay a five day problem. Wait long enough and the exact data needed to reproduce the old, correct behavior is gone for good. Not slow to get back. Gone. What Fernvale had in February becomes something no amount of engineering time buys back.
The choice I would take back. Shipping the ranking rule and the model retrain together, under one eval baseline, to save a week. It made sense in the moment, one release to test instead of two. It stopped making sense the day someone needed to undo only one of them.
What I would leave alone. Fernvale's "Recently viewed" and "Trending near you" rows aren't model driven at all. They're a plain sort by recency and a plain count by region. There's no checkpoint, no training data, nothing to roll back, ever. Chasing this same worry there would be solving a problem that doesn't exist.
The lesson. A rollback is a promise about what you kept, not what you built. Build the model without keeping the checkpoint, the config, and the data all lined up together, and the promise was never really available in the first place. You just hadn't been asked to cash it yet.
Now here is the same thing as a story
The short version sits above. Read on if you want to feel how close forty ordinary days came to becoming a permanent loss.
Ilyas Bramton has run personalization at Fernvale for five years. Before Kestone existed, he was the ops analyst who built the manual best seller list by hand every Sunday night, the one Kestone eventually replaced. He knows exactly what the fallback looks like, because he used to be the fallback.
Kestone v5 launched on a Tuesday in early March, timed to a supplier partnership push. For the first few weeks, the dashboards looked fine. Click rate held near 4.2 percent. Nobody had a reason to look closer.
It didn't drop all at once. It slid. Four tenths of a point one week, barely inside normal noise. Another sliver the next. No alert fired, because nobody had built one for this. The only thing watching the personalized rows closely was a quarterly cohort review, and the next one wasn't due until May.
Ilyas found it early, by accident, comparing a routine screenshot to one from six weeks back for an unrelated deck. The numbers looked close enough that he almost moved on. He didn't. He pulled the real data instead of trusting his eye.
Forty days in. Click rate down 3.1 percent, relative. Roughly 380 fewer orders a day. Nobody had done anything obviously wrong. The margin boosting rule that shipped with v5 looked, on its own dashboard, like a modest win, a little more revenue per order. It was only next to the click and conversion numbers that the trade became visible.
The meeting where the ranking rule got bundled into the v5 release happened back in February. It wasn't reckless. It was one release plan, reviewed once, tested once, shipped once, instead of coordinating two separate rollouts across two teams in the same sprint. Everyone in the room thought they were saving a week.
Ilyas asked the obvious question first: roll back to v4, right, that's the whole checkpoint sitting in the registry. It was. Signoff, reverify against the golden set, ramp the traffic back. Four and a half hours. Done by lunch, for most of the traffic.
Except the business account segment, the piece of v5 tuned specifically on clickstream logs from January and February. Those logs auto delete ninety days after capture, per Fernvale's privacy policy, the same policy that protects every shopper on the site including the business accounts. By day forty, the earliest slice of that training window had already crossed ninety days old and been purged. Not corrupted. Not archived somewhere hard to reach. Gone, the way the policy was designed to make it gone.
Recovering what was left in cold storage took a full day. Backfilling the missing piece with newer interaction data took a day and a half more. The retrain itself was almost the fast part, sixteen hours including validation. What ate the rest of the week was a longer, more careful canary, forty eight hours instead of ninety minutes, because nobody trusted a rebuilt model the way they trusted a known checkpoint.
Five days. About eleven thousand dollars. And it worked, mostly, this time, because forty days was still on the right side of the deadline.
What stayed with Ilyas wasn't the five days. It was running the math on what day eighty eight would have meant. Ninety days from the last day of the training window, the point where the entire original slice, all fifty nine days of it, would have aged out. Catch it that late and there's no five day rebuild waiting. There's a decision about how close you can get with what's left, and an honest conversation with the business account team about what got lost.
The redesigned monitoring now runs a golden set eval against Kestone daily, not quarterly, with an alert if the score moves more than half a point week over week. And every release plan gets one explicit line: does this change bundle a model update with anything else, and if so, is there a way to test and revert them separately. The ranking rule gets its own flag now, off Kestone's release train entirely.
The thing Ilyas would tell his past self, back in that February planning meeting: a five day rebuild feels like the worst case right up until you check how many days you actually have left before it isn't a rebuild at all.
BOUND: the arithmetic behind the rollback
This is a sizing question, how much time and money it actually takes to undo a bad model release, not a story about someone's habit flipping between two settings. FLIPS doesn't fit here, and forcing it would hide the real answer.
B, break it down. Time to restore equals detection time, plus decision and signoff time, plus execution time. Execution time is where the two paths split completely: swap to an existing checkpoint and reverify against a trusted eval score, or recover, backfill, and retrain because the original data has partly aged out.
O, own the numbers. Fast path: 2 hours signoff, 1 hour reverify against a 1,200 pair golden set, 1.5 hours to ramp traffic at 5, 25, then 100 percent. Total 4.5 hours, about 650 dollars. Slow path: the business account fine tune used clickstream logs collected across a 59 day window, auto deleted 90 days after capture. At day 40 post launch, about 19 percent of that window had already expired. Recovery, backfill, retrain, and an extended 48 hour canary added up to about 124 hours, call it 5 days, in the 9,000 to 14,000 dollar range, midpoint about 11,000.
U, use a range. The slow path isn't one number, it's a curve. Detected inside the first month, essentially none of the training window has expired yet, and the fast path applies everywhere. Detected around day 88, the entire 59 day window has aged past the retention deadline, and the honest range stops being "5 days" and becomes "however long it takes to rebuild from whatever newer data exists, with no promise of matching the old behavior." A single point estimate here would have been false precision.
N, nail the sanity check. Fernvale's own incident policy promises a fix inside 4 hours for anything of this size. The fast path, 4.5 hours, just barely misses that promise even in the best case, because a model fix always needs a reverify step a code fix doesn't. A plain code deploy revert, by comparison, runs about 15 minutes and 40 dollars, no eval step needed, because it's deterministic. The model rollback is roughly 18 times slower than the code rollback even in its best case, and the slow path misses the 4 hour SLA by more than 25 times.
D, direction. The assumption that swings this estimate the most isn't GPU time, which barely moves, it's fixed near 16 hours regardless of how the rest plays out. It's detection lag, the number of days between the regression starting and someone actually noticing it. That number interacts with a hard, non negotiable data deletion deadline around day 88. Before that day, a slow rollback is expensive but real: days and dollars. After it, some of the exact data needed to reproduce the old model is gone forever, whatever budget gets thrown at it. Detection lag is the one lever worth arguing about in this meeting, because it's the only one that can turn a bounded cost into an unbounded one.
One more scenario worth pricing, because it's the true ceiling. If the base model behind Kestone had been a third party hosted model, and the provider fully retired that exact version with no snapshot access, there would be no checkpoint to route back to at all. Not slower. Not available. The only path is picking the nearest still supported model and running a full new fine tune, eval, and gradual rollout cycle, typically 3 to 4 weeks for a personalization model this size, in the 70,000 to 100,000 dollar range. That's not a rollback with a longer clock. It's a different project wearing a rollback's name.
And if you want to be sure it really works, try it somewhere else
Renfold Translate builds custom terminology models for enterprise clients, so a client's legal or medical documents come back using their own house vocabulary instead of a generic translation. Doriane Faslane runs product for the enterprise tier.
B, break it down. Same equation. Time to restore equals detect, decide, execute, and execute again splits between "swap to a known checkpoint" and "rebuild from the original examples," except here the reason rebuild isn't possible has nothing to do with a retention clock.
O, own the numbers. A bad fine tune update dropped terminology match rate for one client's document set from 94 percent to 81 percent. Reverting the general model checkpoint to the prior version took about 3 hours, cheap, because that checkpoint was untouched. But this client had exercised their own right to erasure two weeks earlier, deleting the original glossary examples their custom fine tune was built from, for privacy reasons that had nothing to do with this incident.
U, use a range. Rebuilding the client specific fine tune now depends entirely on the client resupplying terminology sheets, historically about 12 business days on average across similar requests, plus 1 day to retrain once the data arrives. Call it 2 to 3 weeks, almost none of it inside Renfold's own control.
N, nail the sanity check. Renfold's enterprise SLA promises major issues addressed within 5 business days. The general checkpoint revert clears that easily. The client specific rebuild cannot, structurally, because the bottleneck sits outside the company entirely.
D, direction. The lever that matters here isn't a deletion deadline Renfold controls, it's whether the client can be persuaded to resupply data quickly, which is a relationship problem wearing an engineering problem's clothes.
Swap the trigger and it still runs.
Speed: an interviewer caps the answer at ninety seconds. Skip straight to the definition: a rollback needs the weights, the config, and a trusted score together, fast when all three exist, a rebuild in days when the data is partly gone, not available at all when it's gone entirely.
Cost: the data science team only has a few days this sprint. Don't shrink the reverify step to save time, shrink it and you're trusting an unverified swap, which is exactly the failure mode a rollback exists to avoid.
The model got better: say Kestone v5 turns out to be a genuine win on every number once it's fixed. That doesn't make the daily eval alert unnecessary, it's still the only reason anyone would know that for certain within days instead of guessing for a quarter.
Where people run it wrong.
They assume "we kept the checkpoint" means the whole rollback problem is solved, without checking whether the training data behind it is still intact too.
They treat a deterministic "it must go back exactly" as the bar, instead of a calibrated eval score compared against a baseline everyone agrees is trustworthy.
They bundle unrelated changes into one release to save testing time, and only discover the cost when someone needs to undo just one of them.
How to use it live. Say the three part definition before naming a single number: "a rollback for a model means the weights, the config, and a trusted score, all three, still standing." That buys you room to ask what's actually still standing on this product, instead of promising a timeline you haven't checked.
Flashcards (click a card to flip it)
Check yourself Score: 0 / 0
Show hint
Show answer
Show hint
Show answer
Show hint
Show answer
Show hint
Show answer
Show hint
Show answer
Show hint
Show answer
"Couldn't you just keep retraining from live traffic after the rollback, instead of chasing the old data?" Response: that's roughly what the five day path already does past day 29, backfilling the gap with newer interaction data. But the further past day 88 you go, the more of the old, correct shaped behavior is gone for good, so at that point you're not reproducing the old model, you're building a new one that happens to start from a similar place.
From answering questions to owning outcomes.
A live workshop where you ship a working AI agent, defend a launch decision, and walk away with a portfolio recruiters can't wave off, not just more questions to study.
- A live AI agent you actually shipped
- A launch decision you can defend under pressure
- An interview-ready portfolio, not more flashcards
More on Incident management for AI products
- #1 What counts as an incident for an AI feature but not for a normal one?
- #2 Write the severity definitions for AI quality incidents.
- #3 Your model starts producing offensive output. Describe the first hour.
- #4 How do you triage an incident where the code is fine and the model is the problem?
- #6 Describe the on-call runbook entry for a sudden quality drop.
- #7 How do you decide whether to disable a feature or degrade it during an incident?