Ask an agent to fix an off-by-one and you often get the bug fixed plus a rewritten function, a renamed variable, and new input validation nobody asked for. One write-up calls this the over-editing problem: the output is functionally correct but structurally diverges from the original code far more than the minimal fix requires, and the author shows a model turning a range(len(x) - 1) correction into a full function rewrite with added None checks and a changed call signature (Coding Models Are Doing Too Much). The important part of that observation is that over-editing is a brown-field failure, so a test suite that only checks behavior cannot see it.
That is why an instruction alone underperforms. A practitioner running autonomous agents found that a plain "only change what the task requires" line "helped a little, and not nearly enough," because from inside the task a rename feels like good work rather than scope creep (How I Stopped My AI Coding Agent's Scope Creep With a Diff Budget). The conclusion is the decision rule for the rest of this article: instructions describe intent, and if you need a guarantee you need a mechanism. A diff budget is that mechanism expressed as numbers.
Over-editing also makes review materially harder. The same analysis notes that reviewers must understand what changed, why, and whether it is safe, and a model that rewrites whole functions makes that job dramatically harder because the code is no longer recognizable (minimal editing). The cost shows up as fatigue. Review effectiveness drops sharply after roughly 200 to 400 changed lines, and median time-to-review climbs with each additional block of lines (Pull Request Best Practices). A separate summary of the research states that more than 400 changed lines is generally considered too large for a single review and that defect-finding falls as size grows (Pull Request Size Matters). A budget turns that human finding into a check that fires before anyone opens the pull request.



