Skip to content

Tags: patchloom/patchloom

Tags

patchloom-v0.21.0

Toggle patchloom-v0.21.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release patchloom 0.21.0 (#1983)

🤖 I have created a release *beep* *boop*
---


##
[0.21.0](patchloom-v0.20.0...patchloom-v0.21.0)
(2026-07-27)


### Features

* **api:** fuzzy_span_suspicious for host over-wide fuzzy refuse
([#1982](#1982))
([0443be5](0443be5)),
closes [#1981](#1981)


### Bug Fixes

* **api:** polish fuzzy_span_suspicious host contract
([#1984](#1984))
([fe71d9f](fe71d9f))
* **dist:** align Smithery MCP description with differentiated
positioning
([#2001](#2001))
([0cacc23](0cacc23)),
closes [#1987](#1987)
* **mcp:** server.json description within Registry 100-char limit
([#2000](#2000))
([846fdec](846fdec)),
closes [#1987](#1987)

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: patchloom-release[bot] <291219740+patchloom-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

patchloom-v0.20.0

Toggle patchloom-v0.20.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release patchloom 0.20.0 (#1968)

🤖 I have created a release *beep* *boop*
---


##
[0.20.0](patchloom-v0.19.0...patchloom-v0.20.0)
(2026-07-27)


### Features

* **api:** Binary/InvalidEncoding peels and force create over non-text
prior ([#1969](#1969))
([c3b4d30](c3b4d30))
* **api:** export is_load_text_strict_fail for embedders
([#1973](#1973))
([468e069](468e069))
* **api:** ReplaceOptions::for_agent shared host preset
([#1971](#1971))
([6305b54](6305b54))
* is_ambiguous peel and embedder-smoke host peels
([#1967](#1967))
([ec1024b](ec1024b))


### Bug Fixes

* **cli:** AST sole-path Binary/InvalidEncoding error_kind emit
([#1974](#1974))
([201c28b](201c28b))
* **cli:** preserve Binary/InvalidEncoding on remaining load remappers
([#1970](#1970))
([cccc81e](cccc81e)),
closes [#1963](#1963)
[#1969](#1969)
* load_text_strict helper, md binary emit, Windows validate flake
([#1972](#1972))
([427e8f4](427e8f4))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: patchloom-release[bot] <291219740+patchloom-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

patchloom-v0.19.0

Toggle patchloom-v0.19.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release patchloom 0.19.0 (#1951)

🤖 I have created a release *beep* *boop*
---


##
[0.19.0](patchloom-v0.18.0...patchloom-v0.19.0)
(2026-07-25)


### Features

* complete public EditErrorKind bool peels
([#1959](#1959))
([a4a3136](a4a3136))
* public is_not_found/is_conflicts/is_changes_detected peels
([#1958](#1958))
([0287d97](0287d97))


### Bug Fixes

* append EditErrorKind variants after FormatFailed
([#1955](#1955))
([4b3ea56](4b3ea56))
* library peels for already_exists and CLI error_kind strings
([#1950](#1950))
([888227a](888227a)),
closes [#1947](#1947)
[#1948](#1948)
* lychee exclude-path for RELEASE_NOTES; create force hints
([#1952](#1952))
([8a8f92b](8a8f92b))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: patchloom-release[bot] <291219740+patchloom-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

patchloom-v0.18.0

Toggle patchloom-v0.18.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release patchloom 0.18.0 (#1930)

🤖 I have created a release *beep* *boop*
---


##
[0.18.0](patchloom-v0.17.0...patchloom-v0.18.0)
(2026-07-24)


### Features

* find_backup_roots and structured GuardRejected for file ops
([#1938](#1938))
([c1ee516](c1ee516))


### Bug Fixes

* batch replace --new flag gets PATH OLD NEW hint
([#1942](#1942))
([757879f](757879f))
* raise did-you-mean bar for similar_targets noise
([#1941](#1941))
([01a2387](01a2387))
* stop doubling OS detail in agent error JSON
([#1929](#1929))
([35b9a29](35b9a29))
* tidy check JSON error_kind changes_detected
([#1940](#1940))
([1d7e185](1d7e185))
* use dunce::canonicalize for PathGuard (Windows UNC)
([#1932](#1932))
([14bfa87](14bfa87)),
closes [#1931](#1931)

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: patchloom-release[bot] <291219740+patchloom-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

patchloom-v0.17.0

Toggle patchloom-v0.17.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release patchloom 0.17.0

🤖 I have created a release *beep* *boop*
---


##
[0.17.0](patchloom-v0.16.0...patchloom-v0.17.0)
(2026-07-23)


### Features

* library doc_merge selector and embedder text I/O surface
([#1913](#1913))
([0abfb40](0abfb40)),
closes [#1909](#1909)
[#1910](#1910)


### Bug Fixes

* clarify init skip when AGENTS.md is not written
([#1922](#1922))
([4323811](4323811))
* doc.merge catalog blurb mentions multi-doc selector
([#1917](#1917))
([58e3f7a](58e3f7a))
* keep Permission denied and invalid_input on unreadable sole paths
([#1925](#1925))
([cec22bd](cec22bd))
* load errors keep OS detail without double-wrap
([#1926](#1926))
([8dd6987](8dd6987))
* publish MCP Registry after crates and npm
([#1908](#1908))
([4ee64e8](4ee64e8))
* set error_kind on patch check multi-file JSON failures
([#1924](#1924))
([322486c](322486c))
* sole unreadable path error without double-wrap
([#1916](#1916))
([ec40404](ec40404))
* stop double-wrapping load_text_strict IO errors
([#1918](#1918))
([8df2b48](8df2b48))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: patchloom-release[bot] <291219740+patchloom-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

patchloom-v0.16.0

Toggle patchloom-v0.16.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release patchloom 0.16.0 (#1882)

Release patchloom 0.16.0.

patchloom-v0.15.3

Toggle patchloom-v0.15.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release patchloom 0.15.3 (#1857)

🤖 I have created a release *beep* *boop*
---


##
[0.15.3](patchloom-v0.15.2...patchloom-v0.15.3)
(2026-07-20)


### Bug Fixes

* agent honesty for pre-write applied and batch replace order
([#1856](#1856))
([4e50e3b](4e50e3b))
* empty --files-from honesty for search and tidy
([#1861](#1861))
([c0c7049](c0c7049))
* honest explain for md section bounds and dedupe discard
([#1865](#1865))
([99422e1](99422e1))
* MCP md_lint JSON envelope matches CLI
([#1859](#1859))
([#1860](#1860))
([c799d90](c799d90))
* md lint-agents JSON envelope; replace context structs
([#1858](#1858))
([b6f157c](b6f157c))
* multi-doc bare-key honesty for doc has and keys
([#1871](#1871))
([f47d655](f47d655))
* multi-doc bare-key type_error for append/delete/update
([#1873](#1873))
([1d16992](1d16992))
* multi-doc bare-key type_error for doc move
([#1874](#1874))
([2a23f33](2a23f33))
* multi-doc doc get bare key type_error hint
([#1862](#1862))
([87c8303](87c8303))
* multi-doc merge array refuse + sole binary search honesty
([#1875](#1875))
([a1bc515](a1bc515))
* publish Smithery MCPB via REST API
([#1868](#1868))
([6935ab5](6935ab5))
* refuse binary targets on read
([#1876](#1876))
([bb5e6b9](bb5e6b9))
* refuse doc merge object overlay on multi-doc array root
([#1872](#1872))
([ccff9b3](ccff9b3))
* search multi-path refused[] for binary co-paths
([#1877](#1877))
([f45afe5](f45afe5))
* tidy multi-path binary refused[] and md sole binary honesty
([#1878](#1878))
([cb01061](cb01061))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: patchloom-release[bot] <291219740+patchloom-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

patchloom-v0.15.2

Toggle patchloom-v0.15.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release patchloom 0.15.2 (#1837)

🤖 I have created a release *beep* *boop*
---


##
[0.15.2](patchloom-v0.15.1...patchloom-v0.15.2)
(2026-07-18)


### Bug Fixes

* agent honesty for contain, init JSON, names table, applied
([#1845](#1845))
([136db8f](136db8f))
* agent honesty for doc query, tidy.fix, md/AST docs
([#1846](#1846))
([e9e75a1](e9e75a1))
* agent JSON honesty for replace mode, undo, and format_failed
([#1836](#1836))
([dc765e6](dc765e6))
* honor tidy.fix plan write_policy; lock doc query envelopes
([#1848](#1848))
([ffedb27](ffedb27))
* include applied on plan/batch/tx JSON
([#1851](#1851))
([194e3e4](194e3e4))
* tidy.fix op write-policy survives commit
([#1849](#1849))
([59da347](59da347))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: patchloom-release[bot] <291219740+patchloom-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

patchloom-v0.15.1

Toggle patchloom-v0.15.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release patchloom 0.15.1 (#1786)

🤖 I have created a release *beep* *boop*
---


##
[0.15.1](patchloom-v0.15.0...patchloom-v0.15.1)
(2026-07-17)


### Bug Fixes

* agent JSON honesty for Bline consumers
([#1791](https://github.com/patchloom/patchloom/issues/1791)-[#1798](https://github.com/patchloom/patchloom/issues/1798))
([#1814](#1814))
([7c04653](7c04653)),
closes [#1792](#1792)
[#1793](#1793)
[#1794](#1794)
[#1795](#1795)
[#1796](#1796)
[#1797](#1797)
* agent JSON honesty for no-op apply and related write paths
([#1816](#1816))
([f378253](f378253))
* agent JSON honesty for preview backup and multi-file jsonl
([#1815](#1815))
([7ce6eba](7ce6eba))
* ast validate fails closed on unsupported or empty targets
([#1787](#1787))
([84b74ef](84b74ef))
* batch file.create preserves unquoted JSON content
([#1820](#1820))
([18f414d](18f414d))
* batch/tx replace if_exists soft-skips missing paths
([#1823](#1823))
([302f02f](302f02f))
* delete and rename JSON include backup_session
([#1817](#1817))
([93504dc](93504dc))
* expand newline escapes in batch file content
([#1821](#1821))
([38d444a](38d444a))
* fail closed on sole explicit binary replace/tidy target
([#1790](#1790))
([99a71e4](99a71e4))
* patch check reports would_change like apply preview
([#1818](#1818))
([ebe9705](ebe9705))
* reject append/prepend on binary (NUL) files
([#1789](#1789))
([846e80b](846e80b))
* reject create/rename when a path parent is a file
([#1785](#1785))
([810f74f](810f74f))
* report applied:true in write --json after --apply
([#1788](#1788))
([2625ec1](2625ec1))
* search match_count counts all occurrences per line
([#1819](#1819))
([a44e9a3](a44e9a3))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: patchloom-release[bot] <291219740+patchloom-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

patchloom-v0.15.0

Toggle patchloom-v0.15.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release patchloom 0.15.0 (#1735)

🤖 I have created a release *beep* *boop*
---


##
[0.15.0](patchloom-v0.14.0...patchloom-v0.15.0)
(2026-07-16)


### Features

* mark edit/tx result types non_exhaustive for 0.15.0
([#1744](#1744))
([5be63f8](5be63f8)),
closes [#1735](#1735)


### Bug Fixes

* agent JSON honesty for search skipped and fuzzy refuse meta
([#1760](#1760))
([aad6e64](aad6e64))
* agent-honest JSON, context anchors, batch suggestions
([#1766](#1766))
([b608859](b608859))
* always put no_matches diagnostics in replace/search JSON error
([#1755](#1755))
([e5750f4](e5750f4))
* chain multi-hop file.rename in one plan
([#1743](#1743))
([fe0e615](fe0e615))
* **choco:** address Chocolatey moderation guidelines
([#1782](#1782))
([25abab5](25abab5))
* CLI format_failed backup_session + directory invalid_input
([#1779](#1779))
([20034ee](20034ee))
* CLI replace error hints and word_boundary+fuzzy boundary honesty
([#1754](#1754))
([5d7d4c7](5d7d4c7))
* dedupe CLI and plan verify checks
([#1767](#1767))
([dc15816](dc15816))
* explain - as stdin; explicit missing paths in skipped
([#1781](#1781))
([c5f3131](c5f3131))
* fail closed when replace context does not disambiguate
([#1765](#1765))
([4d3d520](4d3d520))
* force rename hardlinks and TxOutput serde defaults
([#1746](#1746))
([d22fbc3](d22fbc3))
* fuzzy fails closed when exact old is absent
([#1759](#1759))
([0d46e85](0d46e85))
* honor if_exists on min_fuzzy_score floor reject
([#1750](#1750))
([4164fef](4164fef))
* honor require_change after min_fuzzy_score path reject
([#1748](#1748))
([9b9c659](9b9c659))
* min fuzzy score on meta merge and glob success hint
([#1749](#1749))
([2338c48](2338c48))
* multi-file --nth out-of-range fails closed for all paths
([#1772](#1772))
([a0d0c08](a0d0c08))
* never walk .git when collecting files (tidy include_hidden)
([#1770](#1770))
([5326ec4](5326ec4))
* preserve hardlinks for tx rename-then-edit plans
([#1742](#1742))
([bf2cbbb](bf2cbbb))
* preserve hardlinks in atomic_write when nlink &gt; 1
([#1734](#1734))
([b7bcb85](b7bcb85))
* preserve hardlinks on plain text rename
([#1740](#1740))
([52a3a37](52a3a37))
* preserve hardlinks on plan/tx file.rename
([#1741](#1741))
([cf64190](cf64190)),
closes [#1739](#1739)
* put error_kind and replace_hint on tx no_matches JSON
([#1753](#1753))
([057a002](057a002))
* read directory invalid_input + init --json report
([#1780](#1780))
([cb76ec6](cb76ec6))
* reject --verify without ast feature instead of silent no-op
([#1763](#1763))
([0478aa0](0478aa0))
* report applied changes on non-strict format/validate failure
([#1778](#1778))
([a08f1b3](a08f1b3))
* report matched_text for fuzzy replace and document semantic check
([#1737](#1737))
([72a8d29](72a8d29))
* report missing --files-from paths in replace JSON skipped
([#1757](#1757))
([c524d4d](c524d4d))
* report nth out of range instead of false no-match
([#1768](#1768))
([46ec98f](46ec98f))
* report refused fuzzy paths on multi-file partial apply
([#1761](#1761))
([4cdc8df](4cdc8df))
* search truncated honesty for count modes and agent docs
([#1775](#1775))
([262d83a](262d83a))
* set error_kind no_matches for unknown undo --session
([#1776](#1776))
([e0e6cf0](e0e6cf0))
* set replace_hint when glob fuzzy floor rejects
([#1745](#1745))
([e23eb43](e23eb43))
* set truncated when search --max-results caps matches
([#1773](#1773))
([e306273](e306273))
* skip MCP exact pre-validation when fuzzy or context set
([#1751](#1751))
([a82a60d](a82a60d))
* surface replace_hint on glob require_change no-match
([#1752](#1752))
([038f8f0](038f8f0))
* surface soft replace no-match in multi-op refused[]
([#1774](#1774))
([9bbe096](9bbe096))
* treat empty JSON as {} for doc parse/set
([#1771](#1771))
([27357ce](27357ce))
* unique_names verify catches cross-file symbol collisions
([#1764](#1764))
([82560c7](82560c7))
* whole-line nth honesty (lines, range) and agent-rules
([#1769](#1769))
([30d2de6](30d2de6))
* worst-case fuzzy score min and matched_text meta gate
([#1747](#1747))
([1d3ecb5](1d3ecb5))
* wrap schema --format prompt under global --json
([#1777](#1777))
([406ddff](406ddff))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: patchloom-release[bot] <291219740+patchloom-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>