sdl-mcp 0.6.7 → 0.6.9

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.
Files changed (129) hide show
  1. package/README.md +62 -56
  2. package/config/benchmark.ci.config.json +12 -8
  3. package/config/benchmark.config.json +5 -5
  4. package/config/sdlmcp.config.example.json +10 -3
  5. package/config/sdlmcp.config.json +2 -1
  6. package/config/sdlmcp.config.schema.json +48 -3
  7. package/dist/benchmark/threshold.d.ts +1 -1
  8. package/dist/benchmark/threshold.d.ts.map +1 -1
  9. package/dist/benchmark/threshold.js +6 -1
  10. package/dist/benchmark/threshold.js.map +1 -1
  11. package/dist/cli/commands/benchmark.d.ts.map +1 -1
  12. package/dist/cli/commands/benchmark.js +22 -1
  13. package/dist/cli/commands/benchmark.js.map +1 -1
  14. package/dist/cli/commands/index.d.ts.map +1 -1
  15. package/dist/cli/commands/index.js +9 -3
  16. package/dist/cli/commands/index.js.map +1 -1
  17. package/dist/cli/commands/init.d.ts.map +1 -1
  18. package/dist/cli/commands/init.js +1 -0
  19. package/dist/cli/commands/init.js.map +1 -1
  20. package/dist/cli/commands/serve.js +3 -3
  21. package/dist/cli/commands/serve.js.map +1 -1
  22. package/dist/code/gate.d.ts +22 -2
  23. package/dist/code/gate.d.ts.map +1 -1
  24. package/dist/code/gate.js +112 -29
  25. package/dist/code/gate.js.map +1 -1
  26. package/dist/code/hotpath.d.ts.map +1 -1
  27. package/dist/code/hotpath.js +29 -19
  28. package/dist/code/hotpath.js.map +1 -1
  29. package/dist/code/skeleton.d.ts.map +1 -1
  30. package/dist/code/skeleton.js +33 -2
  31. package/dist/code/skeleton.js.map +1 -1
  32. package/dist/config/constants.d.ts +6 -0
  33. package/dist/config/constants.d.ts.map +1 -1
  34. package/dist/config/constants.js +9 -0
  35. package/dist/config/constants.js.map +1 -1
  36. package/dist/config/types.d.ts +56 -0
  37. package/dist/config/types.d.ts.map +1 -1
  38. package/dist/config/types.js +7 -0
  39. package/dist/config/types.js.map +1 -1
  40. package/dist/db/queries.d.ts +80 -1
  41. package/dist/db/queries.d.ts.map +1 -1
  42. package/dist/db/queries.js +174 -4
  43. package/dist/db/queries.js.map +1 -1
  44. package/dist/db/schema.d.ts +11 -0
  45. package/dist/db/schema.d.ts.map +1 -1
  46. package/dist/delta/blastRadius.d.ts +5 -0
  47. package/dist/delta/blastRadius.d.ts.map +1 -1
  48. package/dist/delta/blastRadius.js +35 -2
  49. package/dist/delta/blastRadius.js.map +1 -1
  50. package/dist/graph/metrics.d.ts +12 -1
  51. package/dist/graph/metrics.d.ts.map +1 -1
  52. package/dist/graph/metrics.js +212 -0
  53. package/dist/graph/metrics.js.map +1 -1
  54. package/dist/graph/slice/beam-search-engine.d.ts.map +1 -1
  55. package/dist/graph/slice/beam-search-engine.js +12 -2
  56. package/dist/graph/slice/beam-search-engine.js.map +1 -1
  57. package/dist/graph/slice/start-node-resolver.d.ts.map +1 -1
  58. package/dist/graph/slice/start-node-resolver.js +25 -3
  59. package/dist/graph/slice/start-node-resolver.js.map +1 -1
  60. package/dist/graph/slice.d.ts.map +1 -1
  61. package/dist/graph/slice.js +6 -1
  62. package/dist/graph/slice.js.map +1 -1
  63. package/dist/graph/sliceCache.d.ts +4 -0
  64. package/dist/graph/sliceCache.d.ts.map +1 -1
  65. package/dist/graph/sliceCache.js +15 -5
  66. package/dist/graph/sliceCache.js.map +1 -1
  67. package/dist/indexer/adapter/java.d.ts.map +1 -1
  68. package/dist/indexer/adapter/java.js +0 -1
  69. package/dist/indexer/adapter/java.js.map +1 -1
  70. package/dist/indexer/fileScanner.d.ts +2 -0
  71. package/dist/indexer/fileScanner.d.ts.map +1 -1
  72. package/dist/indexer/fileScanner.js +19 -1
  73. package/dist/indexer/fileScanner.js.map +1 -1
  74. package/dist/indexer/indexer.d.ts +15 -0
  75. package/dist/indexer/indexer.d.ts.map +1 -1
  76. package/dist/indexer/indexer.js +522 -81
  77. package/dist/indexer/indexer.js.map +1 -1
  78. package/dist/indexer/rustIndexer.d.ts +55 -0
  79. package/dist/indexer/rustIndexer.d.ts.map +1 -0
  80. package/dist/indexer/rustIndexer.js +222 -0
  81. package/dist/indexer/rustIndexer.js.map +1 -0
  82. package/dist/indexer/summary-generator.d.ts +64 -1
  83. package/dist/indexer/summary-generator.d.ts.map +1 -1
  84. package/dist/indexer/summary-generator.js +284 -2
  85. package/dist/indexer/summary-generator.js.map +1 -1
  86. package/dist/indexer/ts/tsParser.d.ts +1 -0
  87. package/dist/indexer/ts/tsParser.d.ts.map +1 -1
  88. package/dist/indexer/ts/tsParser.js +126 -12
  89. package/dist/indexer/ts/tsParser.js.map +1 -1
  90. package/dist/mcp/health.d.ts +6 -0
  91. package/dist/mcp/health.d.ts.map +1 -1
  92. package/dist/mcp/health.js +12 -0
  93. package/dist/mcp/health.js.map +1 -1
  94. package/dist/mcp/tools/code.d.ts.map +1 -1
  95. package/dist/mcp/tools/code.js +14 -6
  96. package/dist/mcp/tools/code.js.map +1 -1
  97. package/dist/mcp/tools/delta.d.ts.map +1 -1
  98. package/dist/mcp/tools/delta.js +11 -1
  99. package/dist/mcp/tools/delta.js.map +1 -1
  100. package/dist/mcp/tools/index.d.ts.map +1 -1
  101. package/dist/mcp/tools/index.js +9 -3
  102. package/dist/mcp/tools/index.js.map +1 -1
  103. package/dist/mcp/tools/repo.d.ts +2 -1
  104. package/dist/mcp/tools/repo.d.ts.map +1 -1
  105. package/dist/mcp/tools/repo.js +22 -3
  106. package/dist/mcp/tools/repo.js.map +1 -1
  107. package/dist/mcp/tools/slice.d.ts.map +1 -1
  108. package/dist/mcp/tools/slice.js +31 -0
  109. package/dist/mcp/tools/slice.js.map +1 -1
  110. package/dist/mcp/tools/symbol.d.ts +11 -1
  111. package/dist/mcp/tools/symbol.d.ts.map +1 -1
  112. package/dist/mcp/tools/symbol.js +59 -21
  113. package/dist/mcp/tools/symbol.js.map +1 -1
  114. package/dist/mcp/tools.d.ts +382 -3
  115. package/dist/mcp/tools.d.ts.map +1 -1
  116. package/dist/mcp/tools.js +49 -1
  117. package/dist/mcp/tools.js.map +1 -1
  118. package/dist/mcp/types.d.ts +26 -0
  119. package/dist/mcp/types.d.ts.map +1 -1
  120. package/dist/mcp/types.js.map +1 -1
  121. package/dist/server.d.ts +7 -1
  122. package/dist/server.d.ts.map +1 -1
  123. package/dist/server.js +8 -3
  124. package/dist/server.js.map +1 -1
  125. package/migrations/0018_summary_cache.sql +15 -0
  126. package/migrations/0019_canonical_test.sql +1 -0
  127. package/migrations/0020_deduplicate_edges.sql +27 -0
  128. package/package.json +6 -1
  129. package/templates/claude-code.json +4 -4
package/README.md CHANGED
@@ -71,45 +71,48 @@ Or run without global install:
71
71
  npx --yes sdl-mcp@latest version
72
72
  ```
73
73
 
74
- ### Configure and Initialize
75
-
76
- ```bash
77
- # Tip: If you are using npx, replace `sdl-mcp` with `npx --yes sdl-mcp@latest`.
78
- # 1) Set config location variable then open a new terminal
79
- setx SDL_CONFIG_HOME "C:\[your path]"
80
-
81
- # 2) One-line non-interactive setup (includes inline index + doctor)
82
- sdl-mcp init -y --auto-index --config "C:\[same path as SDL_CONFIG_HOME]"
83
-
84
- # 3) Start MCP server (stdio for coding agents)
85
- sdl-mcp serve --stdio
86
-
87
- # Optional: start HTTP transport for graph explorer + REST endpoints
88
- sdl-mcp serve --http --host localhost --port 3000
89
-
90
- # Optional: disable watch mode if your environment has watcher instability
91
- sdl-mcp serve --stdio --no-watch
92
-
93
- # 4) Copy the agent instructions from agent-workflows.md and paste them in the AGENTS.md file for your project.
94
- ```
74
+ ### Configure and Initialize
75
+
76
+ ```bash
77
+ # Tip: If you are using npx, replace `sdl-mcp` with `npx --yes sdl-mcp@latest`.
78
+ # 1) Set config location variable then open a new terminal
79
+ setx SDL_CONFIG_HOME "C:\[your path]"
80
+
81
+ # 2) One-line non-interactive setup (includes inline index + doctor)
82
+ sdl-mcp init -y --auto-index --config "C:\[same path as SDL_CONFIG_HOME]"
83
+
84
+ # 3) Start MCP server (stdio for coding agents)
85
+ sdl-mcp serve --stdio
86
+
87
+ # Optional: start HTTP transport for graph explorer + REST endpoints
88
+ sdl-mcp serve --http --host localhost --port 3000
89
+
90
+ # Optional: disable watch mode if your environment has watcher instability
91
+ sdl-mcp serve --stdio --no-watch
92
+
93
+ # 4) Copy the agent instructions from agent-workflows.md and paste them in the AGENTS.md file for your project.
94
+ ```
95
95
 
96
96
  ## Core Feature Set
97
97
 
98
98
  - Multi-language repository indexing with tree-sitter adapters
99
+ - Optional native Rust pass-1 indexing engine (`indexing.engine: "rust"`)
99
100
  - Symbol cards with signatures, deps, metrics, and versioning
100
- - Graph slices with handles, leases, refresh, and spillover
101
- - Delta analysis and blast radius support
102
- - Semantic symbol search reranking (`sdl.symbol.search` with `semantic: true`)
103
- - Optional generated symbol summaries (`semantic.generateSummaries`)
104
- - Code access ladder: `getSkeleton` -> `getHotPath` -> `needWindow`
105
- - Policy management (`sdl.policy.get` / `sdl.policy.set`)
106
- - Repository overview and hotspot inspection (`sdl.repo.overview`)
107
- - PR risk analysis (`sdl.pr.risk.analyze`)
108
- - Agent orchestration tool (`sdl.agent.orchestrate`)
109
- - Predictive prefetch heuristics with status metrics (`prefetchStats`)
110
- - Graph HTTP surface and browser explorer (`/api/graph/*`, `/ui/graph`)
111
- - VSCode extension MVP in `sdl-mcp-vscode/`
112
- - Sync artifact export/import/pull workflows
101
+ - Graph slices with handles, leases, refresh, and spillover
102
+ - Delta analysis and blast radius support with amplifier scoring
103
+ - Semantic symbol search reranking (`sdl.symbol.search` with `semantic: true`)
104
+ - LLM-generated symbol summaries with configurable concurrency and batching (`semantic.summaryModel`, `summaryMaxConcurrency`, `summaryBatchSize`)
105
+ - Code access ladder: `getSkeleton` -> `getHotPath` -> `needWindow`
106
+ - Policy management (`sdl.policy.get` / `sdl.policy.set`)
107
+ - Repository overview and hotspot inspection (`sdl.repo.overview`)
108
+ - PR risk analysis (`sdl.pr.risk.analyze`)
109
+ - Agent orchestration tool (`sdl.agent.orchestrate`)
110
+ - Predictive prefetch heuristics with status metrics (`prefetchStats`)
111
+ - File watch debouncing for efficient incremental indexing (`indexing.watchDebounceMs`)
112
+ - Canonical test mapping in symbol cards (`metrics.canonicalTest`)
113
+ - Graph HTTP surface and browser explorer (`/api/graph/*`, `/ui/graph`)
114
+ - VSCode extension MVP in `sdl-mcp-vscode/`
115
+ - Sync artifact export/import/pull workflows
113
116
 
114
117
  ## CLI Commands
115
118
 
@@ -119,18 +122,18 @@ sdl-mcp serve --stdio --no-watch
119
122
  - `serve` - run MCP server (`--stdio` or `--http`)
120
123
  - `export` - export sync artifact
121
124
  - `import` - import sync artifact
122
- - `pull` - pull by version/commit with fallback behavior
123
- - `benchmark:ci` - run CI benchmark checks, including edge-accuracy regression gating
124
- - `summary` - generate token-bounded copy/paste context summaries
125
- - `health` - compute composite index health score and badge/json output
126
- - `version` - show version and environment info
125
+ - `pull` - pull by version/commit with fallback behavior
126
+ - `benchmark:ci` - run CI benchmark checks, including edge-accuracy regression gating
127
+ - `summary` - generate token-bounded copy/paste context summaries
128
+ - `health` - compute composite index health score and badge/json output
129
+ - `version` - show version and environment info
127
130
 
128
131
  ## MCP Tools
129
132
 
130
133
  - Repository: `sdl.repo.register`, `sdl.repo.status`, `sdl.repo.overview`, `sdl.index.refresh`
131
- - Symbols: `sdl.symbol.search`, `sdl.symbol.getCard`
132
- - Context: `sdl.context.summary`
133
- - Slice: `sdl.slice.build`, `sdl.slice.refresh`, `sdl.slice.spillover.get`
134
+ - Symbols: `sdl.symbol.search`, `sdl.symbol.getCard`
135
+ - Context: `sdl.context.summary`
136
+ - Slice: `sdl.slice.build`, `sdl.slice.refresh`, `sdl.slice.spillover.get`
134
137
  - Delta: `sdl.delta.get`
135
138
  - Code: `sdl.code.needWindow`, `sdl.code.getSkeleton`, `sdl.code.getHotPath`
136
139
  - Policy: `sdl.policy.get`, `sdl.policy.set`
@@ -144,11 +147,11 @@ See: [MCP Tools Reference](./docs/mcp-tools-reference.md)
144
147
  - [Getting Started](./docs/getting-started.md)
145
148
  - [CLI Reference](./docs/cli-reference.md)
146
149
  - [MCP Tools Reference](./docs/mcp-tools-reference.md)
147
- - [Configuration Reference](./docs/configuration-reference.md)
148
- - [Agent Workflows](./docs/agent-workflows.md)
149
- - [Troubleshooting](./docs/troubleshooting.md)
150
- - [VSCode Extension README](./sdl-mcp-vscode/README.md)
151
- - [Legacy User Guide](./docs/USER_GUIDE.md)
150
+ - [Configuration Reference](./docs/configuration-reference.md)
151
+ - [Agent Workflows](./docs/agent-workflows.md)
152
+ - [Troubleshooting](./docs/troubleshooting.md)
153
+ - [VSCode Extension README](./sdl-mcp-vscode/README.md)
154
+ - [Legacy User Guide](./docs/USER_GUIDE.md)
152
155
 
153
156
  ## Development
154
157
 
@@ -157,17 +160,20 @@ npm run build
157
160
  npm run typecheck
158
161
  npm run lint
159
162
  npm test
163
+ # Optional native addon + parity checks
164
+ npm run build:native
165
+ npm run test:native-parity
160
166
  ```
161
167
 
162
- Benchmark tooling (npm scripts):
163
-
164
- - `npm run benchmark:real`
165
- - `npm run benchmark:matrix`
166
- - `npm run benchmark:sweep`
167
-
168
- Phase A benchmark lockfile:
169
-
170
- - `scripts/benchmark/phase-a-benchmark-lock.json` pins TS/Python/Tier-3 repos for reproducible baseline runs.
168
+ Benchmark tooling (npm scripts):
169
+
170
+ - `npm run benchmark:real`
171
+ - `npm run benchmark:matrix`
172
+ - `npm run benchmark:sweep`
173
+
174
+ Phase A benchmark lockfile:
175
+
176
+ - `scripts/benchmark/phase-a-benchmark-lock.json` pins TS/Python/Tier-3 repos for reproducible baseline runs.
171
177
 
172
178
  ## License
173
179
 
@@ -4,14 +4,16 @@
4
4
  "thresholds": {
5
5
  "indexing": {
6
6
  "indexTimePerFile": {
7
- "maxMs": 200,
7
+ "maxMs": 350,
8
8
  "trend": "lower-is-better",
9
- "allowableIncreasePercent": 10
9
+ "allowableIncreasePercent": 15,
10
+ "_comment": "Raised from 220 ms (v0.6.9b): canonical-test BFS is now O(edges) via batch pass, but CI runner variance warrants ~75 % headroom above the ~198 ms zod-oss baseline."
10
11
  },
11
12
  "indexTimePerSymbol": {
12
- "maxMs": 15,
13
+ "maxMs": 20,
13
14
  "trend": "lower-is-better",
14
- "allowableIncreasePercent": 60
15
+ "allowableIncreasePercent": 60,
16
+ "_comment": "Raised from 15 ms: TS call-resolver adds per-symbol resolution work. Absolute cap still guards against catastrophic regressions."
15
17
  }
16
18
  },
17
19
  "quality": {
@@ -33,14 +35,16 @@
33
35
  "exportedSymbolRatio": {
34
36
  "minValue": 0.2,
35
37
  "trend": "higher-is-better",
36
- "allowableDecreasePercent": 10
38
+ "allowableDecreasePercent": 15,
39
+ "_comment": "Widened from 10 %: TS call-resolver indexes more internal helper symbols (alias targets, barrel re-exports), which legitimately dilutes the exported ratio."
37
40
  }
38
41
  },
39
42
  "performance": {
40
43
  "sliceBuildTimeMs": {
41
- "maxMs": 200,
44
+ "maxMs": 350,
42
45
  "trend": "lower-is-better",
43
- "allowableIncreasePercent": 125
46
+ "allowableIncreasePercent": 125,
47
+ "_comment": "Raised from 200 ms: TS call-resolver creates more edges (import aliases, barrel re-exports), making graph loading and beam-search proportionally slower."
44
48
  },
45
49
  "avgSkeletonTimeMs": {
46
50
  "maxMs": 5,
@@ -80,7 +84,7 @@
80
84
  "iqrMultiplier": 1.5
81
85
  },
82
86
  "baseline": {
83
- "filePath": ".benchmark/baseline.json",
87
+ "filePath": ".benchmark/baseline.zod-oss.json",
84
88
  "autoUpdateOnPass": false
85
89
  }
86
90
  }
@@ -4,12 +4,12 @@
4
4
  "thresholds": {
5
5
  "indexing": {
6
6
  "indexTimePerFile": {
7
- "maxMs": 200,
7
+ "maxMs": 450,
8
8
  "trend": "lower-is-better",
9
- "allowableIncreasePercent": 10
9
+ "allowableIncreasePercent": 15
10
10
  },
11
11
  "indexTimePerSymbol": {
12
- "maxMs": 15,
12
+ "maxMs": 20,
13
13
  "trend": "lower-is-better",
14
14
  "allowableIncreasePercent": 60
15
15
  }
@@ -33,12 +33,12 @@
33
33
  "exportedSymbolRatio": {
34
34
  "minValue": 0.2,
35
35
  "trend": "higher-is-better",
36
- "allowableDecreasePercent": 10
36
+ "allowableDecreasePercent": 15
37
37
  }
38
38
  },
39
39
  "performance": {
40
40
  "sliceBuildTimeMs": {
41
- "maxMs": 200,
41
+ "maxMs": 350,
42
42
  "trend": "lower-is-better",
43
43
  "allowableIncreasePercent": 125
44
44
  },
@@ -120,7 +120,9 @@
120
120
  "indexing": {
121
121
  "concurrency": 4,
122
122
  "enableFileWatching": true,
123
- "maxWatchedFiles": 25000
123
+ "maxWatchedFiles": 25000,
124
+ "engine": "typescript",
125
+ "watchDebounceMs": 300
124
126
  },
125
127
  "slice": {
126
128
  "defaultMaxCards": 60,
@@ -143,10 +145,15 @@
143
145
  "alpha": 0.6,
144
146
  "provider": "mock",
145
147
  "model": "all-MiniLM-L6-v2",
146
- "generateSummaries": false
148
+ "generateSummaries": false,
149
+ "summaryModel": "claude-haiku-4-5-20251001",
150
+ "summaryApiKey": null,
151
+ "summaryApiBaseUrl": null,
152
+ "summaryMaxConcurrency": 5,
153
+ "summaryBatchSize": 20
147
154
  },
148
155
  "prefetch": {
149
- "enabled": false,
156
+ "enabled": true,
150
157
  "maxBudgetPercent": 20,
151
158
  "warmTopN": 50
152
159
  }
@@ -9,7 +9,8 @@
9
9
  "**/.next/**",
10
10
  "**/build/**",
11
11
  "**/.git/**",
12
- "**/coverage/**"
12
+ "**/coverage/**",
13
+ "**/native/target/**"
13
14
  ],
14
15
  "languages": [
15
16
  "ts",
@@ -214,12 +214,27 @@
214
214
  "description": "Optional cap for the indexing worker pool size",
215
215
  "minimum": 1,
216
216
  "maximum": 16
217
+ },
218
+ "engine": {
219
+ "type": "string",
220
+ "description": "Pass-1 indexing engine implementation",
221
+ "enum": ["typescript", "rust"],
222
+ "default": "typescript"
223
+ },
224
+ "watchDebounceMs": {
225
+ "type": "integer",
226
+ "description": "Debounce delay in milliseconds for file watch events",
227
+ "minimum": 50,
228
+ "maximum": 5000,
229
+ "default": 300
217
230
  }
218
231
  },
219
232
  "default": {
220
233
  "concurrency": 8,
221
234
  "enableFileWatching": true,
222
- "maxWatchedFiles": 25000
235
+ "maxWatchedFiles": 25000,
236
+ "engine": "typescript",
237
+ "watchDebounceMs": 300
223
238
  }
224
239
  },
225
240
  "slice": {
@@ -416,6 +431,33 @@
416
431
  "type": "boolean",
417
432
  "default": false
418
433
  },
434
+ "summaryModel": {
435
+ "type": "string",
436
+ "description": "Model name to use for LLM-generated summaries (Anthropic or OpenAI-compatible)",
437
+ "default": "claude-haiku-4-5-20251001"
438
+ },
439
+ "summaryApiKey": {
440
+ "type": "string",
441
+ "description": "API key for the summary LLM provider. Falls back to ANTHROPIC_API_KEY environment variable."
442
+ },
443
+ "summaryApiBaseUrl": {
444
+ "type": "string",
445
+ "description": "Base URL for OpenAI-compatible local providers (e.g., http://localhost:11434 for Ollama)"
446
+ },
447
+ "summaryMaxConcurrency": {
448
+ "type": "integer",
449
+ "description": "Maximum concurrent LLM requests for summary generation",
450
+ "minimum": 1,
451
+ "maximum": 20,
452
+ "default": 5
453
+ },
454
+ "summaryBatchSize": {
455
+ "type": "integer",
456
+ "description": "Number of symbols to batch per summary generation pass",
457
+ "minimum": 1,
458
+ "maximum": 50,
459
+ "default": 20
460
+ },
419
461
  "ann": {
420
462
  "type": "object",
421
463
  "description": "HNSW approximate nearest neighbor index configuration for semantic retrieval",
@@ -469,6 +511,9 @@
469
511
  "provider": "mock",
470
512
  "model": "all-MiniLM-L6-v2",
471
513
  "generateSummaries": false,
514
+ "summaryModel": "claude-haiku-4-5-20251001",
515
+ "summaryMaxConcurrency": 5,
516
+ "summaryBatchSize": 20,
472
517
  "ann": {
473
518
  "enabled": false,
474
519
  "m": 16,
@@ -484,7 +529,7 @@
484
529
  "properties": {
485
530
  "enabled": {
486
531
  "type": "boolean",
487
- "default": false
532
+ "default": true
488
533
  },
489
534
  "maxBudgetPercent": {
490
535
  "type": "integer",
@@ -499,7 +544,7 @@
499
544
  }
500
545
  },
501
546
  "default": {
502
- "enabled": false,
547
+ "enabled": true,
503
548
  "maxBudgetPercent": 20,
504
549
  "warmTopN": 50
505
550
  }
@@ -59,6 +59,6 @@ export declare class ThresholdEvaluator {
59
59
  private evaluateMetric;
60
60
  }
61
61
  export declare function loadThresholdConfig(configPath: string): BenchmarkThresholds;
62
- export declare function loadBaselineMetrics(baselinePath: string): Record<string, number> | undefined;
62
+ export declare function loadBaselineMetrics(baselinePath: string, expectedRepoId?: string): Record<string, number> | undefined;
63
63
  export declare function saveBaselineMetrics(baselinePath: string, results: unknown): void;
64
64
  //# sourceMappingURL=threshold.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"threshold.d.ts","sourceRoot":"","sources":["../../src/benchmark/threshold.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,kBAAkB,GAAG,iBAAiB,CAAC;IAC9C,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,iBAAiB;IAChC,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,CAAC;CACvC;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE;QACV,QAAQ,EAAE,iBAAiB,CAAC;QAC5B,OAAO,EAAE,iBAAiB,CAAC;QAC3B,WAAW,EAAE,iBAAiB,CAAC;QAC/B,eAAe,EAAE,iBAAiB,CAAC;QACnC,QAAQ,EAAE,iBAAiB,CAAC;KAC7B,CAAC;IACF,SAAS,EAAE;QACT,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;QACzC,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,QAAQ,EAAE;QACR,QAAQ,EAAE,MAAM,CAAC;QACjB,gBAAgB,EAAE,OAAO,CAAC;KAC3B,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,eAAe,CAAC;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,UAAU,CAAsB;gBAE5B,UAAU,EAAE,mBAAmB;IAI3C,QAAQ,CACN,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACvC,yBAAyB;IAuC5B,OAAO,CAAC,cAAc;CAyGvB;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,mBAAmB,CAG3E;AAoBD,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,GACnB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAmDpC;AAED,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,OAAO,GACf,IAAI,CAON"}
1
+ {"version":3,"file":"threshold.d.ts","sourceRoot":"","sources":["../../src/benchmark/threshold.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,kBAAkB,GAAG,iBAAiB,CAAC;IAC9C,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,iBAAiB;IAChC,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,CAAC;CACvC;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE;QACV,QAAQ,EAAE,iBAAiB,CAAC;QAC5B,OAAO,EAAE,iBAAiB,CAAC;QAC3B,WAAW,EAAE,iBAAiB,CAAC;QAC/B,eAAe,EAAE,iBAAiB,CAAC;QACnC,QAAQ,EAAE,iBAAiB,CAAC;KAC7B,CAAC;IACF,SAAS,EAAE;QACT,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;QACzC,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,QAAQ,EAAE;QACR,QAAQ,EAAE,MAAM,CAAC;QACjB,gBAAgB,EAAE,OAAO,CAAC;KAC3B,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,eAAe,CAAC;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,UAAU,CAAsB;gBAE5B,UAAU,EAAE,mBAAmB;IAI3C,QAAQ,CACN,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACvC,yBAAyB;IAuC5B,OAAO,CAAC,cAAc;CAyGvB;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,mBAAmB,CAG3E;AAoBD,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,EACpB,cAAc,CAAC,EAAE,MAAM,GACtB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CA2DpC;AAED,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,OAAO,GACf,IAAI,CAON"}
@@ -130,12 +130,17 @@ function normalizeBaselineDerivedMetrics(metrics) {
130
130
  }
131
131
  return normalized;
132
132
  }
133
- export function loadBaselineMetrics(baselinePath) {
133
+ export function loadBaselineMetrics(baselinePath, expectedRepoId) {
134
134
  if (!existsSync(baselinePath)) {
135
135
  return undefined;
136
136
  }
137
137
  const content = readFileSync(baselinePath, "utf-8");
138
138
  const baseline = JSON.parse(content);
139
+ if (expectedRepoId &&
140
+ typeof baseline.repoId === "string" &&
141
+ baseline.repoId !== expectedRepoId) {
142
+ return undefined;
143
+ }
139
144
  if (baseline.metrics) {
140
145
  const metrics = baseline.metrics;
141
146
  return normalizeBaselineDerivedMetrics({
@@ -1 +1 @@
1
- {"version":3,"file":"threshold.js","sourceRoot":"","sources":["../../src/benchmark/threshold.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"threshold.js","sourceRoot":"","sources":["../../src/benchmark/threshold.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"benchmark.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/benchmark.ts"],"names":[],"mappings":";AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAiC9C,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,UAAU,kBAAmB,SAAQ,gBAAgB;CAAG;AA4DxD,eAAO,MAAM,+BAA+B,UAK3C,CAAC;AAEF,wBAAgB,4BAA4B,CAC1C,kBAAkB,GAAE,aAAa,CAAC,MAAM,CAAM,GAC7C,MAAM,EAAE,CAQV;AA4TD,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,MAAM,CAAC,CA4XjB"}
1
+ {"version":3,"file":"benchmark.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/benchmark.ts"],"names":[],"mappings":";AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAiC9C,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,UAAU,kBAAmB,SAAQ,gBAAgB;CAAG;AA4DxD,eAAO,MAAM,+BAA+B,UAsB3C,CAAC;AAEF,wBAAgB,4BAA4B,CAC1C,kBAAkB,GAAE,aAAa,CAAC,MAAM,CAAM,GAC7C,MAAM,EAAE,CAQV;AA4TD,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,MAAM,CAAC,CAiYjB"}
@@ -18,10 +18,27 @@ import { getWatcherHealth } from "../../indexer/indexer.js";
18
18
  import { evaluateEdgeAccuracySuite, } from "../../benchmark/edgeAccuracy.js";
19
19
  import { logEdgeResolutionTelemetry } from "../../mcp/telemetry.js";
20
20
  export const BENCHMARK_SCOPE_IGNORE_PATTERNS = [
21
+ // Test files
21
22
  "**/tests/**",
22
23
  "**/dist-tests/**",
23
24
  "**/*.test.ts",
24
25
  "**/*.spec.ts",
26
+ // Build output and native addons
27
+ "**/native/**",
28
+ "**/dist/**",
29
+ "**/build/**",
30
+ "**/target/**",
31
+ // Root-level non-source directories (scopes self-repo to src/)
32
+ "scripts/**",
33
+ "migrations/**",
34
+ "templates/**",
35
+ "benchmarks/**",
36
+ "docs/**",
37
+ "devdocs/**",
38
+ "config/**",
39
+ "data/**",
40
+ ".benchmark/**",
41
+ ".tmp/**",
25
42
  ];
26
43
  export function mergeBenchmarkIgnorePatterns(baseIgnorePatterns = []) {
27
44
  const merged = [...baseIgnorePatterns];
@@ -437,10 +454,14 @@ export async function benchmarkCICommand(options) {
437
454
  }
438
455
  let baselineMetrics;
439
456
  try {
440
- baselineMetrics = loadBaselineMetrics(baselinePath);
457
+ baselineMetrics = loadBaselineMetrics(baselinePath, repoId);
441
458
  if (baselineMetrics) {
442
459
  console.log(`\n✓ Loaded baseline from: ${baselinePath}`);
443
460
  }
461
+ else if (existsSync(baselinePath)) {
462
+ console.log(`\n⚠ Baseline at ${baselinePath} does not match repo ${repoId} or has an unsupported format`);
463
+ console.log(` Use --update-baseline to refresh it for this repo`);
464
+ }
444
465
  else {
445
466
  console.log(`\n⚠ No baseline found at: ${baselinePath}`);
446
467
  console.log(` Use --update-baseline to create one`);
@@ -1 +1 @@
1
- {"version":3,"file":"benchmark.js","sourceRoot":"","sources":["../../../src/cli/commands/benchmark.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"benchmark.js","sourceRoot":"","sources":["../../../src/cli/commands/benchmark.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAc3C,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAgHvE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAc3C,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAwHvE"}
@@ -2,7 +2,7 @@ import { loadConfig } from "../../config/loadConfig.js";
2
2
  import { getDb } from "../../db/db.js";
3
3
  import { runMigrations } from "../../db/migrations.js";
4
4
  import { indexRepo, watchRepository, } from "../../indexer/indexer.js";
5
- import { getRepo, createRepo } from "../../db/queries.js";
5
+ import { getRepo, createRepo, countSymbolsByRepo, countEdgesByRepo } from "../../db/queries.js";
6
6
  import { getCurrentTimestamp } from "../../util/time.js";
7
7
  import { activateCliConfigPath } from "../../config/configPath.js";
8
8
  export async function indexCommand(options) {
@@ -46,10 +46,16 @@ export async function indexCommand(options) {
46
46
  lastProgressLine = line;
47
47
  }
48
48
  });
49
+ const totalSymbols = countSymbolsByRepo(repo.repoId);
50
+ const totalEdges = countEdgesByRepo(repo.repoId);
49
51
  console.log(` Files: ${stats.filesProcessed}`);
50
- console.log(` Symbols: ${stats.symbolsIndexed}`);
51
- console.log(` Edges: ${stats.edgesCreated}`);
52
+ console.log(` Symbols: ${stats.symbolsIndexed} new (${totalSymbols} total)`);
53
+ console.log(` Edges: ${stats.edgesCreated} new (${totalEdges} total)`);
52
54
  console.log(` Duration: ${stats.durationMs}ms`);
55
+ if (stats.summaryStats) {
56
+ const s = stats.summaryStats;
57
+ console.log(` Summaries: ${s.generated} new ($${s.totalCostUsd.toFixed(4)}), ${s.skipped} cached, ${s.failed} failed`);
58
+ }
53
59
  }
54
60
  catch (error) {
55
61
  console.error(` Error: ${error instanceof Error ? error.message : String(error)}`);