ast-mcp-server 0.15.0 → 0.15.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -6,7 +6,17 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
-
## [0.15.
|
|
9
|
+
## [0.15.1] — not yet published (2026-11-04)
|
|
10
|
+
|
|
11
|
+
### Changed
|
|
12
|
+
|
|
13
|
+
- `@angular/compiler` 18 and 19 are now supported (`>=18.0.0 <23.0.0`); an Angular 18 project previously reported `compiler_unsupported` and missed every template usage (#399).
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
|
|
17
|
+
- `publish-next` waits up to five minutes (was two) for the registry to expose an accepted publish before giving up, and when that bound is exhausted after a publish that did not throw, it now points the maintainer at `verify-next` instead of asking for a new dispatch that would try to republish immutable bytes. `0.15.0` was reported as failed 46 seconds before the registry served it (#395).
|
|
18
|
+
|
|
19
|
+
## [0.15.0] — published to `next`, verification failed, not promoted (2026-11-04)
|
|
10
20
|
|
|
11
21
|
### Added
|
|
12
22
|
|
|
@@ -29,6 +39,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
|
29
39
|
- `ast_find_references` and `ast_rename_symbol` no longer count the declaration identifier as a reference. When a member was used before its declaration in source order, ts-morph returned the declaration identifier among the references, so the declaration appeared twice and `reference_count` was inflated by one. The declaration is now reported once and `reference_count` counts only real references (#390).
|
|
30
40
|
- The dsh-adapter smoke no longer reports a surviving Harness process tree when descendants are still exiting after a clean shutdown on a loaded runner. The lifecycle assertion now polls the owned process tree with a bounded ten-second deadline, and when survivors remain it keeps failing but lists each PID with its command line and parent chain (#363).
|
|
31
41
|
|
|
42
|
+
### Release status
|
|
43
|
+
|
|
44
|
+
- npm published these immutable bytes under `next` with provenance and the expected Git commit (`5b2d483001d21ef29a760a9c0ae538dc719f11ea`, integrity `sha512-4dUo7lyTyIGMPhWfVHHZ0BnUMXNAiSIapItorm3VTGiJXm8JyL6jW5lrNlj1LGyONAGtA6S6cHoFtiZxakGy1A==`, publish run `41905976154`). Public-registry verification (run `41906680048`) then failed for the same reason as `0.14.3`: the consumer install resolves `minimatch@10.2.6` through `ts-morph@28.0.0`, flagged by `npm audit` for GHSA-g3hv-75wg-m249 (#361). `0.15.0` was never promoted to `latest`, tagged in Git, or released on GitHub; the version that ships the ts-morph fix will supersede it.
|
|
45
|
+
|
|
32
46
|
## [0.14.3] — published to `next`, verification failed, not promoted (2026-11-01)
|
|
33
47
|
|
|
34
48
|
### Security
|
package/README.md
CHANGED
|
@@ -81,7 +81,7 @@ These fields are additive: existing edge shapes, kind strings, defaults, and pub
|
|
|
81
81
|
|
|
82
82
|
### Angular templates
|
|
83
83
|
|
|
84
|
-
In an Angular project, `ast_find_references` also reports usages of a component member in its template, and `ast_rename_symbol` rewrites external templates as part of the same reviewed plan. This needs the project's own `@angular/compiler`. The server does not bundle it: it is an optional peer dependency (`>=
|
|
84
|
+
In an Angular project, `ast_find_references` also reports usages of a component member in its template, and `ast_rename_symbol` rewrites external templates as part of the same reviewed plan. This needs the project's own `@angular/compiler`. The server does not bundle it: it is an optional peer dependency (`>=18.0.0 <23.0.0`, majors 18 to 22) that Angular projects already install next to `@angular/core`. Nothing changes for projects without `@angular/core`.
|
|
85
85
|
|
|
86
86
|
Install or align it in the target project when the response reports `compiler_missing` or `compiler_unsupported`:
|
|
87
87
|
|
|
@@ -371,7 +371,7 @@ For a local candidate, pack and install its tarball instead:
|
|
|
371
371
|
|
|
372
372
|
```bash
|
|
373
373
|
yarn pack --out ast-mcp-server-%v.tgz
|
|
374
|
-
dsh plugin --profile web add ./ast-mcp-server-0.15.
|
|
374
|
+
dsh plugin --profile web add ./ast-mcp-server-0.15.1.tgz
|
|
375
375
|
```
|
|
376
376
|
|
|
377
377
|
The first supported surface is **reads + prepare + preview**. Every apply path is
|
package/cordis.patch.yml
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
# Mounts the packaged `ast-mcp-server` stdio command through the official
|
|
4
4
|
# `@deepseek-ai/dsh-mcp-client` bridge. Harness does not resolve MCP binaries
|
|
5
5
|
# from PATH, so the entrypoint is resolved relative to the profile directory
|
|
6
|
-
# (`baseUrl`), where `dsh plugin --profile <name> add ./ast-mcp-server-0.15.
|
|
6
|
+
# (`baseUrl`), where `dsh plugin --profile <name> add ./ast-mcp-server-0.15.1.tgz`
|
|
7
7
|
# installs a locally packed package as a dependency.
|
|
8
8
|
#
|
|
9
9
|
# First-slice surface: reads + prepare + preview. Every apply path is denied
|
|
@@ -9,7 +9,7 @@ import { assertSafeOperationFile } from "./safe-file.js";
|
|
|
9
9
|
const MAX_TEMPLATE_BYTES = 512 * 1024;
|
|
10
10
|
const MAX_TEMPLATE_NODES = 100_000;
|
|
11
11
|
const CHECKPOINT_EVERY_NODES = 1000;
|
|
12
|
-
const MIN_COMPILER_MAJOR =
|
|
12
|
+
const MIN_COMPILER_MAJOR = 18;
|
|
13
13
|
const MAX_COMPILER_MAJOR = 22;
|
|
14
14
|
const TWO_WAY_BINDING = 5; // BindingType.TwoWay, stable across supported majors
|
|
15
15
|
const TWO_WAY_EVENT = 2; // ParsedEventType.TwoWay, stable across supported majors
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ast-mcp-server",
|
|
3
|
-
"version": "0.15.
|
|
3
|
+
"version": "0.15.1",
|
|
4
4
|
"description": "Structural code MCP server and batch CLI for compact TypeScript/JavaScript reads and hash-bound AST edits.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"mcp",
|
|
@@ -110,7 +110,7 @@
|
|
|
110
110
|
"zod": "^4.6.7"
|
|
111
111
|
},
|
|
112
112
|
"peerDependencies": {
|
|
113
|
-
"@angular/compiler": ">=
|
|
113
|
+
"@angular/compiler": ">=18.0.0 <23.0.0"
|
|
114
114
|
},
|
|
115
115
|
"peerDependenciesMeta": {
|
|
116
116
|
"@angular/compiler": {
|
|
@@ -120,6 +120,8 @@
|
|
|
120
120
|
"devDependencies": {
|
|
121
121
|
"@eslint/js": "^10.0.1",
|
|
122
122
|
"@types/node": "^26.6.5",
|
|
123
|
+
"angular-compiler-v18": "npm:@angular/compiler@18.2.14",
|
|
124
|
+
"angular-compiler-v19": "npm:@angular/compiler@19.2.15",
|
|
123
125
|
"angular-compiler-v20": "npm:@angular/compiler@20.3.34",
|
|
124
126
|
"angular-compiler-v21": "npm:@angular/compiler@21.2.25",
|
|
125
127
|
"angular-compiler-v22": "npm:@angular/compiler@22.2.4",
|
|
@@ -133,5 +135,5 @@
|
|
|
133
135
|
"vitest": "^5.0.5",
|
|
134
136
|
"yaml": "^2.9.0"
|
|
135
137
|
},
|
|
136
|
-
"gitHead": "
|
|
138
|
+
"gitHead": "20548017b7c9266160963a0272ce8757b8f42a77"
|
|
137
139
|
}
|
|
@@ -55,7 +55,7 @@ Limits to state when reporting:
|
|
|
55
55
|
|
|
56
56
|
- `ast_explore` is TypeScript-only: its references omit template usages. This is tracked in issue #380. Use `ast_find_references` for template evidence; rename still blocks independently.
|
|
57
57
|
- Diagnostics stay TypeScript-only: `ast_get_diagnostics` and the post-apply delta do not detect template errors. A template-only breakage produces no diagnostic, so run the project's Angular build or tests after a rename.
|
|
58
|
-
- Detection uses the user's own `@angular/compiler`, never a bundled one. It is an optional peer (`>=
|
|
58
|
+
- Detection uses the user's own `@angular/compiler`, never a bundled one. It is an optional peer (`>=18.0.0 <23.0.0`) that the project already installs with Angular. If it is missing or out of range, coverage is `unfinished` and rename is blocked. Yarn PnP projects without `node_modules` resolve nothing and report `unfinished`.
|
|
59
59
|
|
|
60
60
|
## Contributor contract
|
|
61
61
|
|