Claude Code approved one state. Its MCP write changed another
A reviewer approved a Claude Code change against resource version 41. By execution time, version 42 existed, but the MCP write replaced it anyway.
Topic archive
10 essays tagged Rollback. Practical notes on what happens after the demo: prompts, tools, review packets, evals, rollback, and production ownership.
A reviewer approved a Claude Code change against resource version 41. By execution time, version 42 existed, but the MCP write replaced it anyway.
A permitted CI retry reached production through an artifact event and a more powerful release service. Tool permissions missed the effect that mattered.
A multi-step Claude Code run can fail after several external writes have already succeeded. Use an effect ledger to resume, compensate, or stop without repeating completed work.
A rollback note says recovery should work. A rollback rehearsal checks the exact target, non-code state, data compatibility, recovery time, and service behaviour before approval.
Claude Code can revert a patch, but Git cannot restore every MCP or production effect. Add an irreversibility gate before destructive tool calls run.
Before Claude Code edits production-adjacent code, ask for the rollback note. If the agent cannot explain how to undo the change, the task contract is not ready yet.
Claude Code gets risky when a failed run keeps retrying without a stop rule. Use failure budgets, review packets, evals, and rollback notes before giving agents more autonomy.
Claude Code gets risky when teams roll it out through enthusiasm instead of a runbook. Start with task contracts, scoped permissions, review packets, evals, and rollback before widening autonomy.
A Claude Code diff is not enough evidence for production review. Ask for the objective, permission boundary, tool trace, tests, failures, cost, and rollback path before approving agent work.
If a Claude Code agent can change production-shaped code, the prompt should say how to undo the work. Rollback is not paperwork after the diff. It is part of the task boundary.