Skip to content

v0.46.0 — apply_patch cross-file atomicity + dry-run preview (#67)

Choose a tag to compare

@gobha-me gobha-me released this 21 Jul 20:15

Follow-up to #63. Two improvements to the apply_patch coding tool (venice code):

  • Cross-file atomicity. A multi-file patch is now all-or-nothing. Every file's new text is staged to a temp file first, and the files are committed (os.replace) only once every stage succeeds — so an I/O failure part-way through no longer leaves some files written and others not. (Previously each file was written as it went, so a failed write of file 2 stranded file 1.)
  • Dry-run preview. A new dry_run: true argument validates the hunks as usual but writes nothing and needs no confirmation, returning a per-hunk oldnew preview for every file. Lets a human — or an agent self-checking — see exactly what a patch will change before applying it.

Docstring, tool schema, and tool description updated; three new tests cover the preview, dry-run validation errors, and cross-file write-failure atomicity. 607 tests green.

Closes #67.