1acb5cc8ff
file_edit failed en masse for small models on two ergonomics traps: - replace() rejected calls that sent `content` (the append param) instead of `replacement` — intent unambiguous; now accepted as an alias. - exact-string match died on leading-whitespace drift (model can't reproduce indentation). Added whitespace-flexible line matching + replacement reindent, wired into both the pre-exec validation gate and replace(). Also made the WRITE_SCOPE / PATH_OUTSIDE_MANIFEST block messages emit a literal copy-pasteable task_update(id=..., affected_paths=[...]) call and warn against action=block — the exact wrong turn models kept taking (18x in one session). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Rdo9fe7SujNVeyZA8YkpkD