fcd5e2cc61
patch_tool resolved V4A header paths against the task workspace for locking, staleness, and reporting, but handed the original (often relative) patch text to file_ops.patch_v4a — which re-resolved headers against the backend env's own cwd. When the two diverge (the git-worktree cwd bug), a relative header landed in a different directory than everything the tool locked and reported: a silent wrong-file write. Rewrite Update/Add/Delete/Move File headers to the resolved absolute paths before apply, only for host-filesystem backends (container/remote namespaces keep their own paths). Header patterns mirror patch_parser (no-space ***Update File: form) and cover Move File: src -> dst. Salvage of #53176 by @necoweb3, reimplemented onto current main (the original branch predates the sensitive-path/Move-header extraction and per-path locking now in patch_tool). Co-authored-by: necoweb3 <sswdarius@gmail.com>