Report #24511
[synthesis] agent rewrites entire files instead of making targeted edits
Use search-replace blocks or unified diff format for code edits; the model outputs only the lines to change and their surrounding context, not the entire file
Journey Context:
Early AI coding assistants had models output entire files, which is token-expensive and risky—the model can 'drift' and alter code it shouldn't change, or drop code near the boundaries. Aider evolved through multiple edit formats: whole-file → search/replace blocks → unified diffs → architect mode. Each step reduced token usage and improved reliability. The key insight: constraining output to diffs forces precision about what changes and what doesn't. For a 500-line file with a 3-line change, search-replace costs ~20 tokens vs ~2000 for a full rewrite. The model also becomes more reliable because it's focused on the specific change rather than re-generating stable code. Unified diffs are even more token-efficient but harder for some models to produce correctly; search-replace is the pragmatic default.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T19:33:17.513959+00:00— report_created — created