diff --git a/README.md b/README.md index 3235dcb..090e626 100644 --- a/README.md +++ b/README.md @@ -148,7 +148,7 @@ The extension detects outdated CLI builds and warns with upgrade guidance. It re Set `patchloom.path` in settings, or add the CLI to your `PATH`. **CLI compatibility warning** -Run `Patchloom: Open Releases` to download the latest release. The extension requires 0.3.0 or newer; 0.5.0 is recommended. +Run `Patchloom: Open Releases` to download the latest release. The extension requires 0.3.0 or newer; 0.6.0 is recommended. **MCP config not injected** Run `Patchloom: Configure MCP` and select the target editor config. @@ -183,7 +183,7 @@ File bugs and feature requests at [patchloom/patchloom-vscode/issues](https://gi ## Requirements - VS Code 1.90 or newer (or compatible editors: Cursor, Windsurf, VSCodium) -- [Patchloom CLI](https://github.com/patchloom/patchloom) 0.3.0 or newer (0.5.0+ recommended for latest features including HTTP MCP transport, execute_plan, and expanded library API) +- [Patchloom CLI](https://github.com/patchloom/patchloom) 0.3.0 or newer (0.6.0+ recommended for 43 MCP tools including 11 AST tools, declarative MCP registry, and concurrent performance improvements) ## Contributing diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md new file mode 100644 index 0000000..689b861 --- /dev/null +++ b/RELEASE_NOTES.md @@ -0,0 +1,51 @@ +# Patchloom for VS Code + +This release aligns the extension with [Patchloom CLI v0.6.0](https://github.com/patchloom/patchloom/releases/tag/patchloom-v0.6.0), the biggest CLI release to date: 41 PRs, 112 files changed, and 1,816 tests. + +## What's new in the CLI + +### 11 AST tools for code-aware agents + +The CLI's MCP server now exposes 43 tools (up from 32), with 11 new AST tools powered by tree-sitter: + +| Tool | What it does | +|------|-------------| +| `ast_list` | List symbol definitions (functions, classes, structs) across 20 languages | +| `ast_read` | Read a specific symbol's source code by name | +| `ast_rename` | Rename identifiers across files (skips strings and comments) | +| `ast_validate` | Check syntax and report parse errors with line numbers | +| `ast_search` | Structural search using tree-sitter queries and code patterns | +| `ast_refs` | Find all references to a symbol, distinguishing definitions from uses | +| `ast_deps` | Extract import/dependency statements from source files | +| `ast_map` | Generate a ranked repository map using PageRank over the symbol graph | +| `ast_diff` | Structural diff showing added, removed, and modified symbols | +| `ast_impact` | Transitive impact analysis: trace dependents through the reference graph | +| `ast_replace` | Replace text only within a specific symbol's body | + +### Declarative MCP tool registry + +The MCP server architecture was rebuilt around a declarative registry. Tool schemas are derived directly from Rust types via `schemars`, eliminating schema drift between CLI operations and MCP tools. + +### Performance improvements + +- **`spawn_blocking` for all sync I/O** on Tokio's blocking thread pool, critical for HTTP/HTTPS transport under concurrent requests +- **Tree-sitter parse tree caching** for repeated AST queries against the same file +- **PageRank convergence** using L1-norm (threshold 1e-6) instead of fixed iterations + +### Bug fixes + +- `doc flatten` now includes empty arrays and empty objects instead of silently dropping them +- Transaction engine preserves idempotent delete semantics within a plan +- `search --jsonl` with zero matches returns exit code 3 consistently +- `ast_rename` with a no-op rename returns early instead of rewriting files identically +- Git argument injection blocked across all commands that accept paths +- Concurrent-write warnings added to all MCP tool descriptions + +## Install or update the CLI + +```bash +brew upgrade patchloom # Homebrew +cargo install patchloom # crates.io +``` + +Or run **Patchloom: Update Patchloom** from the VS Code command palette if using the managed installer.