@aroman22/codegraph-vba 1.7.2 → 1.8.0

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.
@@ -6,6 +6,11 @@
6
6
  import type CodeGraph from '../index';
7
7
  import type { QueryPool } from './query-pool';
8
8
  import type { PendingFile } from '../sync';
9
+ import { spawnSync } from 'child_process';
10
+ /** Narrow subprocess seam for testing CLI-only MCP wrappers. */
11
+ export declare const cliProcess: {
12
+ spawnSync: typeof spawnSync;
13
+ };
9
14
  /**
10
15
  * An expected, recoverable "codegraph can't serve this" condition — most
11
16
  * importantly a project with no index. The dispatch catch converts these to
@@ -252,7 +257,8 @@ export declare class ToolHandler {
252
257
  /**
253
258
  * Optional allowlist of exposed tools, parsed from the CODEGRAPH_MCP_TOOLS
254
259
  * env var (comma-separated short names, e.g. "trace,search,node,context").
255
- * Unset/empty → every tool is exposed. Lets an operator (or an A/B harness)
260
+ * Unset/empty → legacy direct calls to read-only tools are allowed, while
261
+ * mutating lifecycle tools remain opt-in. Lets an operator (or an A/B harness)
256
262
  * trim the tool surface without rebuilding the client config; the ablated
257
263
  * tool is then truly absent from ListTools rather than merely denied on call.
258
264
  * Matching is on the short form, so "node" and "codegraph_node" both work.
@@ -344,6 +350,12 @@ export declare class ToolHandler {
344
350
  * Execute a tool by name
345
351
  */
346
352
  execute(toolName: string, args: Record<string, unknown>): Promise<ToolResult>;
353
+ /** Run the CLI sync command and preserve its complete process output. */
354
+ private handleSync;
355
+ /** Resolve symlinks/junctions and enforce mutation-root boundaries. */
356
+ private validateMutationTarget;
357
+ /** Execute a mutating CodeGraph CLI command after enforcing its path allowlist. */
358
+ private executeMutatingTool;
347
359
  /**
348
360
  * Run a single read tool to completion and return its raw {@link ToolResult},
349
361
  * classifying expected failures the same way {@link execute}'s catch does so
@@ -365,6 +377,8 @@ export declare class ToolHandler {
365
377
  * NotIndexed/PathRefusal, which {@link executeReadTool} classifies.
366
378
  */
367
379
  private dispatchTool;
380
+ /** Run the CLI-only query command and preserve its JSON stdout verbatim. */
381
+ private handleQuery;
368
382
  /**
369
383
  * Handle codegraph_search
370
384
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aroman22/codegraph-vba",
3
- "version": "1.7.2",
3
+ "version": "1.8.0",
4
4
  "description": "Local-first code intelligence for AI agents (MCP). Self-contained — bundles its own runtime.",
5
5
  "bin": {
6
6
  "codegraph-vba": "npm-shim.js"
@@ -15,12 +15,12 @@
15
15
  "./package.json": "./package.json"
16
16
  },
17
17
  "optionalDependencies": {
18
- "@aroman22/codegraph-vba-darwin-arm64": "1.7.2",
19
- "@aroman22/codegraph-vba-darwin-x64": "1.7.2",
20
- "@aroman22/codegraph-vba-linux-arm64": "1.7.2",
21
- "@aroman22/codegraph-vba-linux-x64": "1.7.2",
22
- "@aroman22/codegraph-vba-win32-arm64": "1.7.2",
23
- "@aroman22/codegraph-vba-win32-x64": "1.7.2"
18
+ "@aroman22/codegraph-vba-darwin-arm64": "1.8.0",
19
+ "@aroman22/codegraph-vba-darwin-x64": "1.8.0",
20
+ "@aroman22/codegraph-vba-linux-arm64": "1.8.0",
21
+ "@aroman22/codegraph-vba-linux-x64": "1.8.0",
22
+ "@aroman22/codegraph-vba-win32-arm64": "1.8.0",
23
+ "@aroman22/codegraph-vba-win32-x64": "1.8.0"
24
24
  },
25
25
  "files": [
26
26
  "npm-shim.js",