@lzehrung/codegraph 3.0.1 → 3.1.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.
Files changed (684) hide show
  1. package/README.md +17 -17
  2. package/codegraph-skill/codegraph/SKILL.md +6 -2
  3. package/dist/agent/artifact.d.ts.map +1 -1
  4. package/dist/agent/artifact.js +4 -9
  5. package/dist/agent/artifact.js.map +1 -1
  6. package/dist/agent/call-hierarchy.d.ts +4 -2
  7. package/dist/agent/call-hierarchy.d.ts.map +1 -1
  8. package/dist/agent/call-hierarchy.js +20 -29
  9. package/dist/agent/call-hierarchy.js.map +1 -1
  10. package/dist/agent/explain.d.ts.map +1 -1
  11. package/dist/agent/explain.js +24 -18
  12. package/dist/agent/explain.js.map +1 -1
  13. package/dist/agent/explore.d.ts.map +1 -1
  14. package/dist/agent/explore.js +2 -11
  15. package/dist/agent/explore.js.map +1 -1
  16. package/dist/agent/file-view.d.ts.map +1 -1
  17. package/dist/agent/file-view.js +4 -12
  18. package/dist/agent/file-view.js.map +1 -1
  19. package/dist/agent/normalize.d.ts +0 -3
  20. package/dist/agent/normalize.d.ts.map +1 -1
  21. package/dist/agent/normalize.js +1 -7
  22. package/dist/agent/normalize.js.map +1 -1
  23. package/dist/agent/orient.d.ts.map +1 -1
  24. package/dist/agent/orient.js +2 -6
  25. package/dist/agent/orient.js.map +1 -1
  26. package/dist/agent/packet.d.ts.map +1 -1
  27. package/dist/agent/packet.js +2 -5
  28. package/dist/agent/packet.js.map +1 -1
  29. package/dist/agent/query-index/content.d.ts.map +1 -1
  30. package/dist/agent/query-index/content.js +2 -6
  31. package/dist/agent/query-index/content.js.map +1 -1
  32. package/dist/agent/query-index/update.d.ts.map +1 -1
  33. package/dist/agent/query-index/update.js +8 -45
  34. package/dist/agent/query-index/update.js.map +1 -1
  35. package/dist/agent/query-index/worker-pool.d.ts.map +1 -1
  36. package/dist/agent/query-index/worker-pool.js +2 -1
  37. package/dist/agent/query-index/worker-pool.js.map +1 -1
  38. package/dist/agent/refactor-plan.d.ts +2 -2
  39. package/dist/agent/refactor-plan.d.ts.map +1 -1
  40. package/dist/agent/refactor-plan.js +11 -57
  41. package/dist/agent/refactor-plan.js.map +1 -1
  42. package/dist/agent/rename-preview.d.ts.map +1 -1
  43. package/dist/agent/rename-preview.js +166 -23
  44. package/dist/agent/rename-preview.js.map +1 -1
  45. package/dist/agent/search.d.ts +13 -0
  46. package/dist/agent/search.d.ts.map +1 -1
  47. package/dist/agent/search.js +17 -26
  48. package/dist/agent/search.js.map +1 -1
  49. package/dist/agent/semantic-symbols.d.ts +1 -1
  50. package/dist/agent/semantic-symbols.d.ts.map +1 -1
  51. package/dist/agent/semantic-symbols.js +2 -5
  52. package/dist/agent/semantic-symbols.js.map +1 -1
  53. package/dist/agent/semantic.d.ts +5 -0
  54. package/dist/agent/semantic.d.ts.map +1 -1
  55. package/dist/agent/semantic.js +12 -1
  56. package/dist/agent/semantic.js.map +1 -1
  57. package/dist/agent/session.d.ts +9 -0
  58. package/dist/agent/session.d.ts.map +1 -1
  59. package/dist/agent/session.js +59 -41
  60. package/dist/agent/session.js.map +1 -1
  61. package/dist/agent/type-hierarchy.d.ts +4 -2
  62. package/dist/agent/type-hierarchy.d.ts.map +1 -1
  63. package/dist/agent/type-hierarchy.js +19 -31
  64. package/dist/agent/type-hierarchy.js.map +1 -1
  65. package/dist/agent/workspace-symbols.d.ts +1 -1
  66. package/dist/agent/workspace-symbols.d.ts.map +1 -1
  67. package/dist/agent/workspace-symbols.js +7 -15
  68. package/dist/agent/workspace-symbols.js.map +1 -1
  69. package/dist/analysis-summary.d.ts +1 -4
  70. package/dist/analysis-summary.d.ts.map +1 -1
  71. package/dist/analysis-summary.js +58 -19
  72. package/dist/analysis-summary.js.map +1 -1
  73. package/dist/bin/cli.js +41060 -27641
  74. package/dist/bin/query-index-worker.js +268 -241
  75. package/dist/bootstrap/tree-sitter-languages.d.ts +2 -0
  76. package/dist/bootstrap/tree-sitter-languages.d.ts.map +1 -1
  77. package/dist/bootstrap/tree-sitter-languages.js +6 -19
  78. package/dist/bootstrap/tree-sitter-languages.js.map +1 -1
  79. package/dist/chunking/chunk-matches.d.ts.map +1 -1
  80. package/dist/chunking/chunk-matches.js +6 -42
  81. package/dist/chunking/chunk-matches.js.map +1 -1
  82. package/dist/chunking/chunk-split.d.ts +7 -0
  83. package/dist/chunking/chunk-split.d.ts.map +1 -1
  84. package/dist/chunking/chunk-split.js +3 -3
  85. package/dist/chunking/chunk-split.js.map +1 -1
  86. package/dist/chunking/chunk-text-file.js +2 -30
  87. package/dist/chunking/chunk-text-file.js.map +1 -1
  88. package/dist/cli/affected.d.ts.map +1 -1
  89. package/dist/cli/affected.js +1 -9
  90. package/dist/cli/affected.js.map +1 -1
  91. package/dist/cli/call-hierarchy.js +3 -6
  92. package/dist/cli/call-hierarchy.js.map +1 -1
  93. package/dist/cli/chunk.d.ts.map +1 -1
  94. package/dist/cli/chunk.js +4 -11
  95. package/dist/cli/chunk.js.map +1 -1
  96. package/dist/cli/command-table.d.ts.map +1 -1
  97. package/dist/cli/command-table.js +7 -0
  98. package/dist/cli/command-table.js.map +1 -1
  99. package/dist/cli/context.d.ts +1 -0
  100. package/dist/cli/context.d.ts.map +1 -1
  101. package/dist/cli/context.js +1 -1
  102. package/dist/cli/context.js.map +1 -1
  103. package/dist/cli/doctor.d.ts.map +1 -1
  104. package/dist/cli/doctor.js +1 -11
  105. package/dist/cli/doctor.js.map +1 -1
  106. package/dist/cli/duplicates.d.ts +5 -0
  107. package/dist/cli/duplicates.d.ts.map +1 -1
  108. package/dist/cli/duplicates.js +15 -2
  109. package/dist/cli/duplicates.js.map +1 -1
  110. package/dist/cli/graph.d.ts +4 -12
  111. package/dist/cli/graph.d.ts.map +1 -1
  112. package/dist/cli/graph.js +17 -8
  113. package/dist/cli/graph.js.map +1 -1
  114. package/dist/cli/help.d.ts +4 -4
  115. package/dist/cli/help.d.ts.map +1 -1
  116. package/dist/cli/help.js +17 -9
  117. package/dist/cli/help.js.map +1 -1
  118. package/dist/cli/index.d.ts +2 -12
  119. package/dist/cli/index.d.ts.map +1 -1
  120. package/dist/cli/index.js +2 -5
  121. package/dist/cli/index.js.map +1 -1
  122. package/dist/cli/links.d.ts.map +1 -1
  123. package/dist/cli/links.js +4 -10
  124. package/dist/cli/links.js.map +1 -1
  125. package/dist/cli/mcp.d.ts.map +1 -1
  126. package/dist/cli/mcp.js +5 -0
  127. package/dist/cli/mcp.js.map +1 -1
  128. package/dist/cli/module-locals.d.ts +8 -0
  129. package/dist/cli/module-locals.d.ts.map +1 -0
  130. package/dist/cli/module-locals.js +9 -0
  131. package/dist/cli/module-locals.js.map +1 -0
  132. package/dist/cli/navigation.d.ts +2 -0
  133. package/dist/cli/navigation.d.ts.map +1 -1
  134. package/dist/cli/navigation.js +3 -5
  135. package/dist/cli/navigation.js.map +1 -1
  136. package/dist/cli/options.d.ts.map +1 -1
  137. package/dist/cli/options.js +6 -1
  138. package/dist/cli/options.js.map +1 -1
  139. package/dist/cli/pretty.d.ts +1 -0
  140. package/dist/cli/pretty.d.ts.map +1 -1
  141. package/dist/cli/pretty.js +6 -8
  142. package/dist/cli/pretty.js.map +1 -1
  143. package/dist/cli/progress.d.ts.map +1 -1
  144. package/dist/cli/progress.js +42 -16
  145. package/dist/cli/progress.js.map +1 -1
  146. package/dist/cli/refactor-plan.js +2 -5
  147. package/dist/cli/refactor-plan.js.map +1 -1
  148. package/dist/cli/rename-preview.js +2 -5
  149. package/dist/cli/rename-preview.js.map +1 -1
  150. package/dist/cli/review.d.ts +6 -16
  151. package/dist/cli/review.d.ts.map +1 -1
  152. package/dist/cli/review.js +2 -0
  153. package/dist/cli/review.js.map +1 -1
  154. package/dist/cli/server.d.ts.map +1 -1
  155. package/dist/cli/server.js +9 -10
  156. package/dist/cli/server.js.map +1 -1
  157. package/dist/cli/type-hierarchy.js +8 -8
  158. package/dist/cli/type-hierarchy.js.map +1 -1
  159. package/dist/cli/viewer.js +1 -1
  160. package/dist/cli/viewer.js.map +1 -1
  161. package/dist/document-links/asciidoc.d.ts.map +1 -1
  162. package/dist/document-links/asciidoc.js +4 -16
  163. package/dist/document-links/asciidoc.js.map +1 -1
  164. package/dist/document-links/check.d.ts.map +1 -1
  165. package/dist/document-links/check.js +1 -3
  166. package/dist/document-links/check.js.map +1 -1
  167. package/dist/document-links/html.d.ts.map +1 -1
  168. package/dist/document-links/html.js +6 -44
  169. package/dist/document-links/html.js.map +1 -1
  170. package/dist/document-links/markdown.d.ts.map +1 -1
  171. package/dist/document-links/markdown.js +4 -13
  172. package/dist/document-links/markdown.js.map +1 -1
  173. package/dist/document-links/rst.d.ts.map +1 -1
  174. package/dist/document-links/rst.js +7 -31
  175. package/dist/document-links/rst.js.map +1 -1
  176. package/dist/document-links/sfc.d.ts.map +1 -1
  177. package/dist/document-links/sfc.js +2 -5
  178. package/dist/document-links/sfc.js.map +1 -1
  179. package/dist/document-links/shared.d.ts +2 -0
  180. package/dist/document-links/shared.d.ts.map +1 -1
  181. package/dist/document-links/shared.js +13 -0
  182. package/dist/document-links/shared.js.map +1 -1
  183. package/dist/drift/artifact.d.ts.map +1 -1
  184. package/dist/drift/artifact.js +4 -27
  185. package/dist/drift/artifact.js.map +1 -1
  186. package/dist/drift/git.d.ts.map +1 -1
  187. package/dist/drift/git.js +10 -2
  188. package/dist/drift/git.js.map +1 -1
  189. package/dist/drift/graph-edges.d.ts +4 -0
  190. package/dist/drift/graph-edges.d.ts.map +1 -0
  191. package/dist/drift/graph-edges.js +15 -0
  192. package/dist/drift/graph-edges.js.map +1 -0
  193. package/dist/drift/snapshot.d.ts.map +1 -1
  194. package/dist/drift/snapshot.js +2 -17
  195. package/dist/drift/snapshot.js.map +1 -1
  196. package/dist/duplicates/candidates.d.ts +61 -0
  197. package/dist/duplicates/candidates.d.ts.map +1 -0
  198. package/dist/duplicates/candidates.js +873 -0
  199. package/dist/duplicates/candidates.js.map +1 -0
  200. package/dist/duplicates/progress.d.ts +17 -0
  201. package/dist/duplicates/progress.d.ts.map +1 -0
  202. package/dist/duplicates/progress.js +57 -0
  203. package/dist/duplicates/progress.js.map +1 -0
  204. package/dist/duplicates/scoring.d.ts +9 -40
  205. package/dist/duplicates/scoring.d.ts.map +1 -1
  206. package/dist/duplicates/scoring.js +34 -414
  207. package/dist/duplicates/scoring.js.map +1 -1
  208. package/dist/duplicates/types.d.ts +30 -1
  209. package/dist/duplicates/types.d.ts.map +1 -1
  210. package/dist/duplicates/unit-cache.d.ts +11 -1
  211. package/dist/duplicates/unit-cache.d.ts.map +1 -1
  212. package/dist/duplicates/unit-cache.js +20 -2
  213. package/dist/duplicates/unit-cache.js.map +1 -1
  214. package/dist/duplicates/units.d.ts +4 -2
  215. package/dist/duplicates/units.d.ts.map +1 -1
  216. package/dist/duplicates/units.js +47 -25
  217. package/dist/duplicates/units.js.map +1 -1
  218. package/dist/duplicates.d.ts +1 -0
  219. package/dist/duplicates.d.ts.map +1 -1
  220. package/dist/duplicates.js +116 -62
  221. package/dist/duplicates.js.map +1 -1
  222. package/dist/graph-builder.d.ts +1 -1
  223. package/dist/graph-builder.d.ts.map +1 -1
  224. package/dist/graph-builder.js +3 -2
  225. package/dist/graph-builder.js.map +1 -1
  226. package/dist/graph-edge-collector.d.ts +3 -1
  227. package/dist/graph-edge-collector.d.ts.map +1 -1
  228. package/dist/graph-edge-collector.js +38 -6
  229. package/dist/graph-edge-collector.js.map +1 -1
  230. package/dist/graphs/angularjs.d.ts.map +1 -1
  231. package/dist/graphs/angularjs.js +2 -9
  232. package/dist/graphs/angularjs.js.map +1 -1
  233. package/dist/graphs/edge-resolution.d.ts +4 -0
  234. package/dist/graphs/edge-resolution.d.ts.map +1 -1
  235. package/dist/graphs/edge-resolution.js +2 -0
  236. package/dist/graphs/edge-resolution.js.map +1 -1
  237. package/dist/graphs/external/manifests.d.ts.map +1 -1
  238. package/dist/graphs/external/manifests.js +1 -6
  239. package/dist/graphs/external/manifests.js.map +1 -1
  240. package/dist/graphs/specifiers.d.ts.map +1 -1
  241. package/dist/graphs/specifiers.js +47 -26
  242. package/dist/graphs/specifiers.js.map +1 -1
  243. package/dist/graphs/symbol-graph-detailed/edge-passes.d.ts +2 -0
  244. package/dist/graphs/symbol-graph-detailed/edge-passes.d.ts.map +1 -1
  245. package/dist/graphs/symbol-graph-detailed/edge-passes.js +9 -3
  246. package/dist/graphs/symbol-graph-detailed/edge-passes.js.map +1 -1
  247. package/dist/graphs/symbol-graph-detailed/receiver-calls.d.ts +3 -3
  248. package/dist/graphs/symbol-graph-detailed/receiver-calls.d.ts.map +1 -1
  249. package/dist/graphs/symbol-graph-detailed/receiver-calls.js +2 -26
  250. package/dist/graphs/symbol-graph-detailed/receiver-calls.js.map +1 -1
  251. package/dist/graphs/symbol-graph-detailed.d.ts.map +1 -1
  252. package/dist/graphs/symbol-graph-detailed.js +38 -1
  253. package/dist/graphs/symbol-graph-detailed.js.map +1 -1
  254. package/dist/impact/analyzer.d.ts.map +1 -1
  255. package/dist/impact/analyzer.js +23 -17
  256. package/dist/impact/analyzer.js.map +1 -1
  257. package/dist/impact/budgets.d.ts.map +1 -1
  258. package/dist/impact/budgets.js +3 -9
  259. package/dist/impact/budgets.js.map +1 -1
  260. package/dist/impact/call-compatibility.d.ts.map +1 -1
  261. package/dist/impact/call-compatibility.js +3 -12
  262. package/dist/impact/call-compatibility.js.map +1 -1
  263. package/dist/impact/context.d.ts +6 -0
  264. package/dist/impact/context.d.ts.map +1 -1
  265. package/dist/impact/context.js +2 -2
  266. package/dist/impact/context.js.map +1 -1
  267. package/dist/impact/direct.d.ts.map +1 -1
  268. package/dist/impact/direct.js +2 -6
  269. package/dist/impact/direct.js.map +1 -1
  270. package/dist/impact/map.d.ts +3 -1
  271. package/dist/impact/map.d.ts.map +1 -1
  272. package/dist/impact/map.js +12 -5
  273. package/dist/impact/map.js.map +1 -1
  274. package/dist/impact/providers/base.js +1 -1
  275. package/dist/impact/providers/base.js.map +1 -1
  276. package/dist/impact/reference-cache.d.ts.map +1 -1
  277. package/dist/impact/reference-cache.js +1 -24
  278. package/dist/impact/reference-cache.js.map +1 -1
  279. package/dist/impact/report-shared.d.ts +2 -1
  280. package/dist/impact/report-shared.d.ts.map +1 -1
  281. package/dist/impact/report-shared.js +10 -0
  282. package/dist/impact/report-shared.js.map +1 -1
  283. package/dist/impact/report-suggestions.d.ts.map +1 -1
  284. package/dist/impact/report-suggestions.js +2 -8
  285. package/dist/impact/report-suggestions.js.map +1 -1
  286. package/dist/impact/report.d.ts.map +1 -1
  287. package/dist/impact/report.js +2 -8
  288. package/dist/impact/report.js.map +1 -1
  289. package/dist/impact/streaming.d.ts.map +1 -1
  290. package/dist/impact/streaming.js +3 -8
  291. package/dist/impact/streaming.js.map +1 -1
  292. package/dist/indexer/build-cache/manifest.d.ts.map +1 -1
  293. package/dist/indexer/build-cache/manifest.js +10 -108
  294. package/dist/indexer/build-cache/manifest.js.map +1 -1
  295. package/dist/indexer/build-cache/module-cache.d.ts +6 -1
  296. package/dist/indexer/build-cache/module-cache.d.ts.map +1 -1
  297. package/dist/indexer/build-cache/module-cache.js +25 -2
  298. package/dist/indexer/build-cache/module-cache.js.map +1 -1
  299. package/dist/indexer/build-cache/options.d.ts +38 -1
  300. package/dist/indexer/build-cache/options.d.ts.map +1 -1
  301. package/dist/indexer/build-cache/options.js +38 -1
  302. package/dist/indexer/build-cache/options.js.map +1 -1
  303. package/dist/indexer/build-cache/project-snapshot.d.ts.map +1 -1
  304. package/dist/indexer/build-cache/project-snapshot.js +48 -99
  305. package/dist/indexer/build-cache/project-snapshot.js.map +1 -1
  306. package/dist/indexer/build-cache/reports.d.ts +1 -0
  307. package/dist/indexer/build-cache/reports.d.ts.map +1 -1
  308. package/dist/indexer/build-cache/reports.js +10 -0
  309. package/dist/indexer/build-cache/reports.js.map +1 -1
  310. package/dist/indexer/build-index.d.ts +2 -0
  311. package/dist/indexer/build-index.d.ts.map +1 -1
  312. package/dist/indexer/build-index.js +187 -57
  313. package/dist/indexer/build-index.js.map +1 -1
  314. package/dist/indexer/build-workers.d.ts +7 -1
  315. package/dist/indexer/build-workers.d.ts.map +1 -1
  316. package/dist/indexer/build-workers.js +12 -0
  317. package/dist/indexer/build-workers.js.map +1 -1
  318. package/dist/indexer/call-hierarchy.d.ts.map +1 -1
  319. package/dist/indexer/call-hierarchy.js +5 -17
  320. package/dist/indexer/call-hierarchy.js.map +1 -1
  321. package/dist/indexer/compilation-units.d.ts +32 -20
  322. package/dist/indexer/compilation-units.d.ts.map +1 -1
  323. package/dist/indexer/compilation-units.js +139 -145
  324. package/dist/indexer/compilation-units.js.map +1 -1
  325. package/dist/indexer/cpp-callables.d.ts.map +1 -1
  326. package/dist/indexer/cpp-callables.js +2 -7
  327. package/dist/indexer/cpp-callables.js.map +1 -1
  328. package/dist/indexer/import-types.d.ts +5 -0
  329. package/dist/indexer/import-types.d.ts.map +1 -1
  330. package/dist/indexer/import-types.js.map +1 -1
  331. package/dist/indexer/imports/binding-ranges.d.ts +5 -12
  332. package/dist/indexer/imports/binding-ranges.d.ts.map +1 -1
  333. package/dist/indexer/imports/binding-ranges.js +13 -19
  334. package/dist/indexer/imports/binding-ranges.js.map +1 -1
  335. package/dist/indexer/imports/context.d.ts +6 -0
  336. package/dist/indexer/imports/context.d.ts.map +1 -1
  337. package/dist/indexer/imports/import-binding-tables.d.ts +28 -13
  338. package/dist/indexer/imports/import-binding-tables.d.ts.map +1 -1
  339. package/dist/indexer/imports/import-binding-tables.js +179 -178
  340. package/dist/indexer/imports/import-binding-tables.js.map +1 -1
  341. package/dist/indexer/imports/js-text-imports.d.ts +0 -1
  342. package/dist/indexer/imports/js-text-imports.d.ts.map +1 -1
  343. package/dist/indexer/imports/js-text-imports.js +0 -176
  344. package/dist/indexer/imports/js-text-imports.js.map +1 -1
  345. package/dist/indexer/imports/language-specific.d.ts.map +1 -1
  346. package/dist/indexer/imports/language-specific.js +4 -8
  347. package/dist/indexer/imports/language-specific.js.map +1 -1
  348. package/dist/indexer/imports/python.d.ts +0 -1
  349. package/dist/indexer/imports/python.d.ts.map +1 -1
  350. package/dist/indexer/imports/python.js +1 -29
  351. package/dist/indexer/imports/python.js.map +1 -1
  352. package/dist/indexer/imports/text-import-extractors.d.ts +2 -9
  353. package/dist/indexer/imports/text-import-extractors.d.ts.map +1 -1
  354. package/dist/indexer/imports/text-import-extractors.js +0 -284
  355. package/dist/indexer/imports/text-import-extractors.js.map +1 -1
  356. package/dist/indexer/imports.d.ts +15 -0
  357. package/dist/indexer/imports.d.ts.map +1 -1
  358. package/dist/indexer/imports.js +82 -44
  359. package/dist/indexer/imports.js.map +1 -1
  360. package/dist/indexer/incremental-plan.d.ts +0 -1
  361. package/dist/indexer/incremental-plan.d.ts.map +1 -1
  362. package/dist/indexer/incremental-plan.js +6 -12
  363. package/dist/indexer/incremental-plan.js.map +1 -1
  364. package/dist/indexer/name-lookup-policies/implicit-self.d.ts.map +1 -1
  365. package/dist/indexer/name-lookup-policies/implicit-self.js +25 -4
  366. package/dist/indexer/name-lookup-policies/implicit-self.js.map +1 -1
  367. package/dist/indexer/name-resolution-types.d.ts +5 -0
  368. package/dist/indexer/name-resolution-types.d.ts.map +1 -1
  369. package/dist/indexer/name-resolution.d.ts.map +1 -1
  370. package/dist/indexer/name-resolution.js +2 -0
  371. package/dist/indexer/name-resolution.js.map +1 -1
  372. package/dist/indexer/navigation-cpp.d.ts.map +1 -1
  373. package/dist/indexer/navigation-cpp.js +3 -5
  374. package/dist/indexer/navigation-cpp.js.map +1 -1
  375. package/dist/indexer/navigation-goto.d.ts +49 -3
  376. package/dist/indexer/navigation-goto.d.ts.map +1 -1
  377. package/dist/indexer/navigation-goto.js +500 -106
  378. package/dist/indexer/navigation-goto.js.map +1 -1
  379. package/dist/indexer/navigation-local.d.ts +7 -0
  380. package/dist/indexer/navigation-local.d.ts.map +1 -1
  381. package/dist/indexer/navigation-local.js +22 -2
  382. package/dist/indexer/navigation-local.js.map +1 -1
  383. package/dist/indexer/navigation-php.d.ts +0 -1
  384. package/dist/indexer/navigation-php.d.ts.map +1 -1
  385. package/dist/indexer/navigation-php.js +1 -7
  386. package/dist/indexer/navigation-php.js.map +1 -1
  387. package/dist/indexer/navigation-references.d.ts +1 -0
  388. package/dist/indexer/navigation-references.d.ts.map +1 -1
  389. package/dist/indexer/navigation-references.js +134 -23
  390. package/dist/indexer/navigation-references.js.map +1 -1
  391. package/dist/indexer/navigation-resolve.d.ts +22 -0
  392. package/dist/indexer/navigation-resolve.d.ts.map +1 -1
  393. package/dist/indexer/navigation-resolve.js +73 -8
  394. package/dist/indexer/navigation-resolve.js.map +1 -1
  395. package/dist/indexer/navigation.d.ts +4 -1
  396. package/dist/indexer/navigation.d.ts.map +1 -1
  397. package/dist/indexer/navigation.js +398 -95
  398. package/dist/indexer/navigation.js.map +1 -1
  399. package/dist/indexer/python-property-decorator.d.ts +11 -0
  400. package/dist/indexer/python-property-decorator.d.ts.map +1 -0
  401. package/dist/indexer/python-property-decorator.js +30 -0
  402. package/dist/indexer/python-property-decorator.js.map +1 -0
  403. package/dist/indexer/shared-owner-identity.d.ts +3 -1
  404. package/dist/indexer/shared-owner-identity.d.ts.map +1 -1
  405. package/dist/indexer/shared-owner-identity.js +40 -12
  406. package/dist/indexer/shared-owner-identity.js.map +1 -1
  407. package/dist/indexer/shared.d.ts +10 -0
  408. package/dist/indexer/shared.d.ts.map +1 -1
  409. package/dist/indexer/shared.js +8 -0
  410. package/dist/indexer/shared.js.map +1 -1
  411. package/dist/indexer/star-import-precedence.d.ts +5 -1
  412. package/dist/indexer/star-import-precedence.d.ts.map +1 -1
  413. package/dist/indexer/star-import-precedence.js +12 -19
  414. package/dist/indexer/star-import-precedence.js.map +1 -1
  415. package/dist/indexer/type-hierarchy.d.ts.map +1 -1
  416. package/dist/indexer/type-hierarchy.js +8 -9
  417. package/dist/indexer/type-hierarchy.js.map +1 -1
  418. package/dist/indexer/types.d.ts +49 -1
  419. package/dist/indexer/types.d.ts.map +1 -1
  420. package/dist/indexer/types.js.map +1 -1
  421. package/dist/indexer/workspace-symbols.d.ts.map +1 -1
  422. package/dist/indexer/workspace-symbols.js +3 -13
  423. package/dist/indexer/workspace-symbols.js.map +1 -1
  424. package/dist/installer/locks.d.ts +1 -0
  425. package/dist/installer/locks.d.ts.map +1 -1
  426. package/dist/installer/locks.js +4 -8
  427. package/dist/installer/locks.js.map +1 -1
  428. package/dist/installer/registry.d.ts.map +1 -1
  429. package/dist/installer/registry.js +9 -15
  430. package/dist/installer/registry.js.map +1 -1
  431. package/dist/languages/callable-arity.d.ts.map +1 -1
  432. package/dist/languages/callable-arity.js +1 -38
  433. package/dist/languages/callable-arity.js.map +1 -1
  434. package/dist/languages/definitions/csharp.d.ts.map +1 -1
  435. package/dist/languages/definitions/csharp.js +5 -13
  436. package/dist/languages/definitions/csharp.js.map +1 -1
  437. package/dist/languages/definitions/java.d.ts.map +1 -1
  438. package/dist/languages/definitions/java.js +4 -13
  439. package/dist/languages/definitions/java.js.map +1 -1
  440. package/dist/languages/definitions/kotlin.d.ts.map +1 -1
  441. package/dist/languages/definitions/kotlin.js +4 -8
  442. package/dist/languages/definitions/kotlin.js.map +1 -1
  443. package/dist/languages/definitions/python.d.ts.map +1 -1
  444. package/dist/languages/definitions/python.js +5 -3
  445. package/dist/languages/definitions/python.js.map +1 -1
  446. package/dist/languages/import-statement-parsers.d.ts +0 -30
  447. package/dist/languages/import-statement-parsers.d.ts.map +1 -1
  448. package/dist/languages/import-statement-parsers.js +1 -81
  449. package/dist/languages/import-statement-parsers.js.map +1 -1
  450. package/dist/languages/sfc.d.ts.map +1 -1
  451. package/dist/languages/sfc.js +8 -43
  452. package/dist/languages/sfc.js.map +1 -1
  453. package/dist/lifecycle/manifest.d.ts.map +1 -1
  454. package/dist/lifecycle/manifest.js +11 -29
  455. package/dist/lifecycle/manifest.js.map +1 -1
  456. package/dist/mcp/cancellation.d.ts +6 -0
  457. package/dist/mcp/cancellation.d.ts.map +1 -0
  458. package/dist/mcp/cancellation.js +11 -0
  459. package/dist/mcp/cancellation.js.map +1 -0
  460. package/dist/mcp/handlers.d.ts +54 -3
  461. package/dist/mcp/handlers.d.ts.map +1 -1
  462. package/dist/mcp/handlers.js +186 -42
  463. package/dist/mcp/handlers.js.map +1 -1
  464. package/dist/mcp/http-transport.d.ts.map +1 -1
  465. package/dist/mcp/http-transport.js +9 -2
  466. package/dist/mcp/http-transport.js.map +1 -1
  467. package/dist/mcp/index-readiness.d.ts +114 -0
  468. package/dist/mcp/index-readiness.d.ts.map +1 -0
  469. package/dist/mcp/index-readiness.js +264 -0
  470. package/dist/mcp/index-readiness.js.map +1 -0
  471. package/dist/mcp/project-watcher.d.ts +125 -0
  472. package/dist/mcp/project-watcher.d.ts.map +1 -0
  473. package/dist/mcp/project-watcher.js +643 -0
  474. package/dist/mcp/project-watcher.js.map +1 -0
  475. package/dist/mcp/protocol.d.ts.map +1 -1
  476. package/dist/mcp/protocol.js +23 -10
  477. package/dist/mcp/protocol.js.map +1 -1
  478. package/dist/mcp/server.d.ts +2 -0
  479. package/dist/mcp/server.d.ts.map +1 -1
  480. package/dist/mcp/server.js +11 -2
  481. package/dist/mcp/server.js.map +1 -1
  482. package/dist/mcp/stale-install.d.ts +13 -0
  483. package/dist/mcp/stale-install.d.ts.map +1 -0
  484. package/dist/mcp/stale-install.js +30 -0
  485. package/dist/mcp/stale-install.js.map +1 -0
  486. package/dist/native/byte-index.d.ts +1 -0
  487. package/dist/native/byte-index.d.ts.map +1 -1
  488. package/dist/native/byte-index.js +1 -1
  489. package/dist/native/byte-index.js.map +1 -1
  490. package/dist/native/contracts.d.ts +1 -0
  491. package/dist/native/contracts.d.ts.map +1 -1
  492. package/dist/native/native-backend-report.d.ts +2 -1
  493. package/dist/native/native-backend-report.d.ts.map +1 -1
  494. package/dist/native/native-backend-report.js +23 -0
  495. package/dist/native/native-backend-report.js.map +1 -1
  496. package/dist/native/tree-shape.d.ts +5 -7
  497. package/dist/native/tree-shape.d.ts.map +1 -1
  498. package/dist/native/tree-shape.js +11 -10
  499. package/dist/native/tree-shape.js.map +1 -1
  500. package/dist/presentation/bounds.d.ts +2 -0
  501. package/dist/presentation/bounds.d.ts.map +1 -1
  502. package/dist/presentation/bounds.js +8 -0
  503. package/dist/presentation/bounds.js.map +1 -1
  504. package/dist/review/candidates.d.ts.map +1 -1
  505. package/dist/review/candidates.js +4 -25
  506. package/dist/review/candidates.js.map +1 -1
  507. package/dist/review/deleted.js +1 -1
  508. package/dist/review/deleted.js.map +1 -1
  509. package/dist/review/report.d.ts.map +1 -1
  510. package/dist/review/report.js +4 -2
  511. package/dist/review/report.js.map +1 -1
  512. package/dist/review/summaries.d.ts.map +1 -1
  513. package/dist/review/summaries.js +14 -35
  514. package/dist/review/summaries.js.map +1 -1
  515. package/dist/review.d.ts +6 -0
  516. package/dist/review.d.ts.map +1 -1
  517. package/dist/review.js +5 -6
  518. package/dist/review.js.map +1 -1
  519. package/dist/scss/navigation.d.ts +13 -0
  520. package/dist/scss/navigation.d.ts.map +1 -0
  521. package/dist/scss/navigation.js +150 -0
  522. package/dist/scss/navigation.js.map +1 -0
  523. package/dist/scss/resolution.d.ts +190 -0
  524. package/dist/scss/resolution.d.ts.map +1 -0
  525. package/dist/scss/resolution.js +1802 -0
  526. package/dist/scss/resolution.js.map +1 -0
  527. package/dist/scss/syntax.d.ts +181 -0
  528. package/dist/scss/syntax.d.ts.map +1 -0
  529. package/dist/scss/syntax.js +1436 -0
  530. package/dist/scss/syntax.js.map +1 -0
  531. package/dist/sql/classify-sql-file.d.ts +7 -0
  532. package/dist/sql/classify-sql-file.d.ts.map +1 -1
  533. package/dist/sql/classify-sql-file.js +9 -0
  534. package/dist/sql/classify-sql-file.js.map +1 -1
  535. package/dist/sql/extract-facts.d.ts.map +1 -1
  536. package/dist/sql/extract-facts.js +517 -77
  537. package/dist/sql/extract-facts.js.map +1 -1
  538. package/dist/sql/lex.d.ts +100 -1
  539. package/dist/sql/lex.d.ts.map +1 -1
  540. package/dist/sql/lex.js +473 -11
  541. package/dist/sql/lex.js.map +1 -1
  542. package/dist/sql/lookup.d.ts +17 -0
  543. package/dist/sql/lookup.d.ts.map +1 -1
  544. package/dist/sql/lookup.js +21 -0
  545. package/dist/sql/lookup.js.map +1 -1
  546. package/dist/sql/navigation.d.ts +28 -1
  547. package/dist/sql/navigation.d.ts.map +1 -1
  548. package/dist/sql/navigation.js +474 -84
  549. package/dist/sql/navigation.js.map +1 -1
  550. package/dist/sql/object-mentions.d.ts +24 -0
  551. package/dist/sql/object-mentions.d.ts.map +1 -0
  552. package/dist/sql/object-mentions.js +233 -0
  553. package/dist/sql/object-mentions.js.map +1 -0
  554. package/dist/sql/review.d.ts +3 -0
  555. package/dist/sql/review.d.ts.map +1 -1
  556. package/dist/sql/review.js +15 -14
  557. package/dist/sql/review.js.map +1 -1
  558. package/dist/sql/routine-mentions.d.ts +61 -0
  559. package/dist/sql/routine-mentions.d.ts.map +1 -0
  560. package/dist/sql/routine-mentions.js +868 -0
  561. package/dist/sql/routine-mentions.js.map +1 -0
  562. package/dist/sql/source-graph.d.ts +18 -3
  563. package/dist/sql/source-graph.d.ts.map +1 -1
  564. package/dist/sql/source-graph.js +109 -32
  565. package/dist/sql/source-graph.js.map +1 -1
  566. package/dist/sqlite/raw-query-worker-pool.d.ts.map +1 -1
  567. package/dist/sqlite/raw-query-worker-pool.js +2 -0
  568. package/dist/sqlite/raw-query-worker-pool.js.map +1 -1
  569. package/dist/sqlite/types.d.ts +6 -5
  570. package/dist/sqlite/types.d.ts.map +1 -1
  571. package/dist/sqlite/write.d.ts.map +1 -1
  572. package/dist/sqlite/write.js.map +1 -1
  573. package/dist/sqlite-driver.d.ts +0 -1
  574. package/dist/sqlite-driver.d.ts.map +1 -1
  575. package/dist/sqlite-driver.js +0 -11
  576. package/dist/sqlite-driver.js.map +1 -1
  577. package/dist/terraform/navigation.d.ts.map +1 -1
  578. package/dist/terraform/navigation.js +1 -3
  579. package/dist/terraform/navigation.js.map +1 -1
  580. package/dist/terraform/syntax.d.ts.map +1 -1
  581. package/dist/terraform/syntax.js +1 -4
  582. package/dist/terraform/syntax.js.map +1 -1
  583. package/dist/types.d.ts +2 -0
  584. package/dist/types.d.ts.map +1 -1
  585. package/dist/util/ast.d.ts +5 -0
  586. package/dist/util/ast.d.ts.map +1 -1
  587. package/dist/util/ast.js +10 -0
  588. package/dist/util/ast.js.map +1 -1
  589. package/dist/util/atomic-file.d.ts +22 -0
  590. package/dist/util/atomic-file.d.ts.map +1 -0
  591. package/dist/util/atomic-file.js +106 -0
  592. package/dist/util/atomic-file.js.map +1 -0
  593. package/dist/util/collections.d.ts +5 -0
  594. package/dist/util/collections.d.ts.map +1 -1
  595. package/dist/util/collections.js +26 -0
  596. package/dist/util/collections.js.map +1 -1
  597. package/dist/util/concurrency.d.ts +8 -0
  598. package/dist/util/concurrency.d.ts.map +1 -1
  599. package/dist/util/concurrency.js +16 -0
  600. package/dist/util/concurrency.js.map +1 -1
  601. package/dist/util/confined-file.d.ts.map +1 -1
  602. package/dist/util/confined-file.js +1 -3
  603. package/dist/util/confined-file.js.map +1 -1
  604. package/dist/util/csharp-tree.d.ts +65 -0
  605. package/dist/util/csharp-tree.d.ts.map +1 -0
  606. package/dist/util/csharp-tree.js +266 -0
  607. package/dist/util/csharp-tree.js.map +1 -0
  608. package/dist/util/errors.d.ts +1 -0
  609. package/dist/util/errors.d.ts.map +1 -1
  610. package/dist/util/errors.js +3 -0
  611. package/dist/util/errors.js.map +1 -1
  612. package/dist/util/graph-edges.d.ts +2 -0
  613. package/dist/util/graph-edges.d.ts.map +1 -1
  614. package/dist/util/graph-edges.js +11 -0
  615. package/dist/util/graph-edges.js.map +1 -1
  616. package/dist/util/guards.d.ts +1 -0
  617. package/dist/util/guards.d.ts.map +1 -1
  618. package/dist/util/guards.js +6 -0
  619. package/dist/util/guards.js.map +1 -1
  620. package/dist/util/identifiers.d.ts +0 -24
  621. package/dist/util/identifiers.d.ts.map +1 -1
  622. package/dist/util/identifiers.js +0 -24
  623. package/dist/util/identifiers.js.map +1 -1
  624. package/dist/util/jvm-tree.d.ts +58 -0
  625. package/dist/util/jvm-tree.d.ts.map +1 -0
  626. package/dist/util/jvm-tree.js +153 -0
  627. package/dist/util/jvm-tree.js.map +1 -0
  628. package/dist/util/package-exports.d.ts +0 -22
  629. package/dist/util/package-exports.d.ts.map +1 -1
  630. package/dist/util/package-exports.js +25 -5
  631. package/dist/util/package-exports.js.map +1 -1
  632. package/dist/util/paths.d.ts +1 -0
  633. package/dist/util/paths.d.ts.map +1 -1
  634. package/dist/util/paths.js +10 -4
  635. package/dist/util/paths.js.map +1 -1
  636. package/dist/util/resolution/csharp.d.ts +20 -8
  637. package/dist/util/resolution/csharp.d.ts.map +1 -1
  638. package/dist/util/resolution/csharp.js +126 -127
  639. package/dist/util/resolution/csharp.js.map +1 -1
  640. package/dist/util/resolution/files.d.ts +6 -0
  641. package/dist/util/resolution/files.d.ts.map +1 -1
  642. package/dist/util/resolution/files.js +74 -21
  643. package/dist/util/resolution/files.js.map +1 -1
  644. package/dist/util/resolution/jvm.d.ts +21 -1
  645. package/dist/util/resolution/jvm.d.ts.map +1 -1
  646. package/dist/util/resolution/jvm.js +168 -100
  647. package/dist/util/resolution/jvm.js.map +1 -1
  648. package/dist/util/resolution/project-symbols.d.ts +1 -1
  649. package/dist/util/resolution/project-symbols.d.ts.map +1 -1
  650. package/dist/util/resolution/project-symbols.js.map +1 -1
  651. package/dist/util/resolution/specifier-targets.d.ts +4 -0
  652. package/dist/util/resolution/specifier-targets.d.ts.map +1 -1
  653. package/dist/util/resolution/specifier-targets.js +11 -3
  654. package/dist/util/resolution/specifier-targets.js.map +1 -1
  655. package/dist/util/resolution.d.ts.map +1 -1
  656. package/dist/util/resolution.js +21 -7
  657. package/dist/util/resolution.js.map +1 -1
  658. package/dist/util/syntax-tree.d.ts +16 -0
  659. package/dist/util/syntax-tree.d.ts.map +1 -0
  660. package/dist/util/syntax-tree.js +34 -0
  661. package/dist/util/syntax-tree.js.map +1 -0
  662. package/dist/util/text-scanning.d.ts +6 -0
  663. package/dist/util/text-scanning.d.ts.map +1 -0
  664. package/dist/util/text-scanning.js +35 -0
  665. package/dist/util/text-scanning.js.map +1 -0
  666. package/dist/util/trivia-tables.d.ts +13 -8
  667. package/dist/util/trivia-tables.d.ts.map +1 -1
  668. package/dist/util/trivia-tables.js +13 -72
  669. package/dist/util/trivia-tables.js.map +1 -1
  670. package/dist/util/trivia.d.ts +10 -3
  671. package/dist/util/trivia.d.ts.map +1 -1
  672. package/dist/util/trivia.js +209 -79
  673. package/dist/util/trivia.js.map +1 -1
  674. package/dist/util/windows-process-drain.d.ts.map +1 -1
  675. package/dist/util/windows-process-drain.js.map +1 -1
  676. package/dist/util/worker-threads.d.ts +16 -0
  677. package/dist/util/worker-threads.d.ts.map +1 -1
  678. package/dist/util/worker-threads.js +118 -0
  679. package/dist/util/worker-threads.js.map +1 -1
  680. package/dist/worker/native-worker-pool.d.ts.map +1 -1
  681. package/dist/worker/native-worker-pool.js +2 -1
  682. package/dist/worker/native-worker-pool.js.map +1 -1
  683. package/docs/mcp.md +82 -8
  684. package/package.json +7 -7
@@ -1,7 +1,7 @@
1
1
  import fsp from "node:fs/promises";
2
2
  import path from "node:path";
3
3
  import { boundList } from "../presentation/bounds.js";
4
- import { buildProjectIndexIncremental } from "../indexer/build-index.js";
4
+ import { buildProjectIndexIncremental, emitIndexCheckActivity, emitIndexCheckStart } from "../indexer/build-index.js";
5
5
  import { resolveIncrementalFilePlan } from "../indexer/incremental-plan.js";
6
6
  import { computeConfigHash } from "../indexer/build-cache/manifest.js";
7
7
  import { tryLoadDetailedSymbolGraphSnapshot, writeDetailedSymbolGraphSnapshot } from "../indexer/build-cache.js";
@@ -16,6 +16,11 @@ import { createAgentFileLookup } from "./normalize.js";
16
16
  import { summarizeAnalysis } from "../analysis-summary.js";
17
17
  import { runSessionInvalidationHooks } from "./session-lifecycle.js";
18
18
  import { prepareDuplicateAnalysis } from "../duplicates.js";
19
+ import { isMissingPathError } from "../util/errors.js";
20
+ /** A session without a freshness check reports itself fresh. */
21
+ export async function checkSessionFreshness(session) {
22
+ return session.checkFreshness ? await session.checkFreshness() : { state: "fresh" };
23
+ }
19
24
  export function assertNoPrebuiltSessionWithBuildOptions(options, consumer) {
20
25
  if (options.session && options.buildOptions) {
21
26
  throw new Error(`${consumer} cannot combine a prebuilt session with buildOptions.`);
@@ -50,17 +55,6 @@ async function resolveAgentDiscoverySettings(options) {
50
55
  ...(cacheLocation ? { cacheLocation } : {}),
51
56
  };
52
57
  }
53
- function emitAgentFilePlanProgress(options) {
54
- options.buildOptions?.onProgress?.({
55
- type: "progress",
56
- phase: "start",
57
- mode: "check",
58
- message: "Discovering source files",
59
- activity: "Discovering source files",
60
- current: 0,
61
- total: 0,
62
- });
63
- }
64
58
  /**
65
59
  * Report discovery work while it runs. Discovery walks or Git-lists the whole project
66
60
  * before any file is parsed, and on a project holding a large ignored tree that phase can
@@ -68,19 +62,11 @@ function emitAgentFilePlanProgress(options) {
68
62
  * source files" line, which is indistinguishable from a hang.
69
63
  */
70
64
  function agentDiscoveryProgressReporter(options) {
71
- const onProgress = options.buildOptions?.onProgress;
72
- if (!onProgress)
65
+ const buildOptions = options.buildOptions;
66
+ if (!buildOptions?.onProgress)
73
67
  return undefined;
74
68
  return ({ activity, current, total }) => {
75
- onProgress({
76
- type: "progress",
77
- phase: "update",
78
- mode: "check",
79
- message: activity,
80
- activity,
81
- current,
82
- total,
83
- });
69
+ emitIndexCheckActivity(buildOptions, activity, current, total);
84
70
  };
85
71
  }
86
72
  async function resolveAgentSessionFilePlan(options, discoveryContext = createProjectDiscoveryContext(options.root)) {
@@ -111,7 +97,7 @@ async function resolveAgentSessionFilePlan(options, discoveryContext = createPro
111
97
  const { DEFAULT_PROJECT_PATTERNS } = await import("../util/project-files.js");
112
98
  const customPatterns = languageExtensionPatterns(languageExtensions);
113
99
  const patterns = customPatterns.length ? [...DEFAULT_PROJECT_PATTERNS, ...customPatterns] : undefined;
114
- emitAgentFilePlanProgress(options);
100
+ emitIndexCheckStart(options.buildOptions, "Discovering source files");
115
101
  const onDiscoveryProgress = agentDiscoveryProgressReporter(options);
116
102
  const files = await listProjectFilesWithGitCandidates(options.root, patterns, {
117
103
  ...discoveryOptions,
@@ -130,13 +116,6 @@ async function resolveAgentSessionFilePlan(options, discoveryContext = createPro
130
116
  export async function listAgentSessionFiles(options, discoveryContext) {
131
117
  return (await resolveAgentSessionFilePlan(options, discoveryContext)).files;
132
118
  }
133
- function isMissingStatRace(error) {
134
- if (!(error instanceof Error))
135
- return false;
136
- if (!("code" in error))
137
- return false;
138
- return error.code === "ENOENT" || error.code === "ENOTDIR";
139
- }
140
119
  function summarizeChangedFiles(files) {
141
120
  const bounded = boundList(files, DEFAULT_MAX_FRESHNESS_CHANGED_FILES);
142
121
  return {
@@ -161,7 +140,7 @@ async function collectAgentFileSignatures(files) {
161
140
  });
162
141
  }
163
142
  catch (error) {
164
- if (isMissingStatRace(error))
143
+ if (isMissingPathError(error))
165
144
  return;
166
145
  throw new Error(`Unable to verify freshness for ${resolvedFile}`, { cause: error });
167
146
  }
@@ -222,6 +201,22 @@ function diffAgentFileSignatures(previous, current) {
222
201
  changedFiles.sort();
223
202
  return { changedFiles, changedBytes };
224
203
  }
204
+ export function createRequestSession(request, extra = {}) {
205
+ return createAgentSession({
206
+ root: request.root,
207
+ ...(request.buildOptions ? { buildOptions: request.buildOptions } : {}),
208
+ ...extra,
209
+ });
210
+ }
211
+ export async function withRequestSession(request, run, extra = {}) {
212
+ const session = createRequestSession(request, extra);
213
+ try {
214
+ return await run(session);
215
+ }
216
+ finally {
217
+ session.invalidate();
218
+ }
219
+ }
225
220
  export function createAgentSession(options) {
226
221
  let cachedFilePlan;
227
222
  let cachedFiles;
@@ -237,6 +232,9 @@ export function createAgentSession(options) {
237
232
  let lastFreshnessCheckedAt = 0;
238
233
  let lastFreshnessResult;
239
234
  let freshnessInFlight;
235
+ // Bumped by markChanged. A scan that started under an older generation may have read files before the edit
236
+ // that bumped it, so it must not cache its result.
237
+ let changeGeneration = 0;
240
238
  const invalidate = () => {
241
239
  runSessionInvalidationHooks(session);
242
240
  cachedFilePlan = undefined;
@@ -254,6 +252,12 @@ export function createAgentSession(options) {
254
252
  lastFreshnessResult = undefined;
255
253
  freshnessInFlight = undefined;
256
254
  };
255
+ const markChanged = () => {
256
+ changeGeneration += 1;
257
+ lastFreshnessCheckedAt = 0;
258
+ lastFreshnessResult = undefined;
259
+ freshnessInFlight = undefined;
260
+ };
257
261
  const loadFilePlan = async (discoveryContext) => {
258
262
  if (cachedFilePlan)
259
263
  return cachedFilePlan;
@@ -450,12 +454,15 @@ export function createAgentSession(options) {
450
454
  }
451
455
  if (freshnessInFlight)
452
456
  return freshnessInFlight;
453
- freshnessInFlight = (async () => {
457
+ const generation = changeGeneration;
458
+ const scan = (async () => {
454
459
  if (cachedBase)
455
460
  await cachedBase;
456
461
  else if (cachedFilePlan)
457
462
  await cachedFilePlan;
458
- if (!cachedFileSignatures)
463
+ // The baseline that this scan checks, read before any file is: the stats below cannot be older than it.
464
+ const signatures = cachedFileSignatures;
465
+ if (!signatures)
459
466
  return { state: "fresh" };
460
467
  // Share discovery work within this check. File-only sessions have no indexed
461
468
  // configuration baseline, so they only need to compare discovery signatures.
@@ -467,10 +474,12 @@ export function createAgentSession(options) {
467
474
  resolveAgentSessionFilePlan(options, discoveryContext),
468
475
  ]);
469
476
  const currentSignatures = await collectAgentFileSignatures(currentFilePlan.files);
470
- const signatures = cachedFileSignatures;
471
- const configurationIdentity = cachedConfigurationIdentity;
472
- if (!signatures)
477
+ // `invalidate` dropped that baseline, or a rebuild replaced it, while the files were read. The stats may predate
478
+ // the replacement and report it as changed. This scan then changes nothing: it neither invalidates the newer
479
+ // snapshot nor caches, and what its caller loads next was built after the scan began.
480
+ if (cachedFileSignatures !== signatures)
473
481
  return { state: "fresh" };
482
+ const configurationIdentity = cachedConfigurationIdentity;
474
483
  const diff = diffAgentFileSignatures(signatures, currentSignatures);
475
484
  const configurationChanged = !!currentConfigurationIdentity &&
476
485
  (!!configurationIdentity?.error ||
@@ -516,18 +525,26 @@ export function createAgentSession(options) {
516
525
  };
517
526
  }
518
527
  else {
528
+ // The stats were compared with the baseline that is still the session's, so the change is real even when
529
+ // markChanged detached this scan. Holding the refresh back would starve it while events keep arriving.
519
530
  invalidate();
520
531
  result = { state: "refreshed", changedFiles };
521
532
  }
522
533
  }
523
534
  }
524
- lastFreshnessCheckedAt = Date.now();
525
- lastFreshnessResult = result;
535
+ if (generation === changeGeneration) {
536
+ lastFreshnessCheckedAt = Date.now();
537
+ lastFreshnessResult = result;
538
+ }
526
539
  return result;
527
540
  })().finally(() => {
528
- freshnessInFlight = undefined;
541
+ // `markChanged` and `invalidate` detach a running scan, and a newer one may hold the slot by the time this one
542
+ // ends. That scan is not this one's to clear.
543
+ if (freshnessInFlight === scan)
544
+ freshnessInFlight = undefined;
529
545
  });
530
- return freshnessInFlight;
546
+ freshnessInFlight = scan;
547
+ return scan;
531
548
  };
532
549
  const session = {
533
550
  root: options.root,
@@ -536,6 +553,7 @@ export function createAgentSession(options) {
536
553
  loadProject,
537
554
  loadDuplicateAnalysis,
538
555
  checkFreshness,
556
+ markChanged,
539
557
  invalidate,
540
558
  };
541
559
  return session;
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/agent/session.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,kBAAkB,CAAC;AACnC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAA4B,MAAM,gCAAgC,CAAC;AACtG,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAEvE,OAAO,EAAE,kCAAkC,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AACjH,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAoB,MAAM,2BAA2B,CAAC;AAE/E,OAAO,EACL,6BAA6B,EAC7B,iCAAiC,GAGlC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAClH,OAAO,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAwB,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAkC,MAAM,kBAAkB,CAAC;AA8D5F,MAAM,UAAU,uCAAuC,CACrD,OAAgE,EAChE,QAAgB;IAEhB,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,uDAAuD,CAAC,CAAC;IACtF,CAAC;AACH,CAAC;AAED,MAAM,kBAAkB,GAAgB;IACtC,KAAK,EAAE,IAAI,GAAG,EAAE;IAChB,KAAK,EAAE,EAAE;CACV,CAAC;AACF,OAAO,EAAE,iCAAiC,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAAE,iCAAiC,EAAE,CAAC;AAC7C,MAAM,CAAC,MAAM,iCAAiC,GAAG,KAAK,CAAC;AACvD,MAAM,8BAA8B,GAAG,EAAE,CAAC;AAC1C,MAAM,8BAA8B,GAAG,SAAS,CAAC;AACjD,MAAM,mCAAmC,GAAG,EAAE,CAAC;AAkC/C,KAAK,UAAU,6BAA6B,CAAC,OAA4B;IACvE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;IAC5C,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,MAAM,eAAe,GAAG,qBAAqB,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAClG,MAAM,SAAS,GAAG,qBAAqB,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IAC3E,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAC3E,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,IAAI,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACrF,MAAM,kBAAkB,GACtB,2BAA2B,CAAC,OAAO,CAAC,YAAY,EAAE,kBAAkB,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC;IACxG,MAAM,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE,aAAa,IAAI,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC;IACpF,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,SAAS,CAAC;QACrD,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE;QAChE,CAAC,CAAC,SAAS,CAAC;IACd,OAAO;QACL,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,OAA4B;IAC7D,OAAO,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC;QACjC,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,0BAA0B;QACnC,QAAQ,EAAE,0BAA0B;QACpC,OAAO,EAAE,CAAC;QACV,KAAK,EAAE,CAAC;KACT,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAS,8BAA8B,CACrC,OAA4B;IAE5B,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC;IACpD,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAClC,OAAO,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE;QACtC,UAAU,CAAC;YACT,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,QAAQ;YACf,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,QAAQ;YACjB,QAAQ;YACR,OAAO;YACP,KAAK;SACN,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,2BAA2B,CACxC,OAA4B,EAC5B,gBAAgB,GAAG,6BAA6B,CAAC,OAAO,CAAC,IAAI,CAAC;IAE9D,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IACpC,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,GACzE,MAAM,6BAA6B,CAAC,OAAO,CAAC,CAAC;IAC/C,qFAAqF;IACrF,kFAAkF;IAClF,0DAA0D;IAC1D,MAAM,kBAAkB,GAAiB;QACvC,GAAG,OAAO,CAAC,YAAY;QACvB,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC;IACF,MAAM,eAAe,GAAG,MAAM,0BAA0B,CAAC,OAAO,CAAC,IAAI,EAAE,kBAAkB,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACjH,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO;YACL,KAAK,EAAE,eAAe,CAAC,KAAK;YAC5B,eAAe;YACf,SAAS;YACT,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5C,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,wBAAwB,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;IAC9E,MAAM,cAAc,GAAG,yBAAyB,CAAC,kBAAkB,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,wBAAwB,EAAE,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,mBAAmB,GAAG,8BAA8B,CAAC,OAAO,CAAC,CAAC;IACpE,MAAM,KAAK,GAAG,MAAM,iCAAiC,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE;QAC5E,GAAG,gBAAgB;QACnB,gBAAgB;QAChB,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,CAAC,CAAC;IACH,OAAO;QACL,KAAK;QACL,SAAS;QACT,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,OAA4B,EAC5B,gBAA0C;IAE1C,OAAO,CAAC,MAAM,2BAA2B,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC;AAC9E,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACrC,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC;AAC7D,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAwB;IAKrD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,EAAE,mCAAmC,CAAC,CAAC;IACtE,OAAO;QACL,YAAY,EAAE,OAAO,CAAC,KAAK;QAC3B,gBAAgB,EAAE,KAAK,CAAC,MAAM;QAC9B,uBAAuB,EAAE,OAAO,CAAC,OAAO;KACzC,CAAC;AACJ,CAAC;AAED,MAAM,+BAA+B,GAAG,EAAE,CAAC;AAE3C,KAAK,UAAU,0BAA0B,CAAC,KAAwB;IAChE,MAAM,UAAU,GAAG,IAAI,GAAG,EAA8B,CAAC;IACzD,MAAM,QAAQ,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,+BAA+B,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACzE,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACvD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBAAE,OAAO;YAC3B,UAAU,CAAC,GAAG,CAAC,YAAY,EAAE;gBAC3B,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,iBAAiB,CAAC,KAAK,CAAC;gBAAE,OAAO;YACrC,MAAM,IAAI,KAAK,CAAC,kCAAkC,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACtF,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,8BAA8B,CAAC,IAAY,EAAE,SAAiB;IACrE,MAAM,cAAc,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAI,cAAc,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IACzC,MAAM,eAAe,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,GAAG,CAAC,CAAC,CAAC;IACnE,MAAM,OAAO,GAAG,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC;IACzE,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAClE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,OAAO,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IACrG,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AACjC,CAAC;AAED,KAAK,UAAU,+BAA+B,CAC5C,KAAwB,EACxB,KAAmB;IAEnB,MAAM,UAAU,GAAG,IAAI,GAAG,EAA8B,CAAC;IACzD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnG,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,8BAA8B,CAAC,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9F,IAAI,SAAS,EAAE,CAAC;YACd,UAAU,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAC3D,KAAK,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,QAAQ;YAAE,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,uBAAuB,CAC9B,QAA6D,EAC7D,OAAgD;IAEhD,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,KAAK,MAAM,CAAC,IAAI,EAAE,gBAAgB,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QACzD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC7C,IACE,CAAC,iBAAiB;YAClB,iBAAiB,CAAC,IAAI,KAAK,gBAAgB,CAAC,IAAI;YAChD,iBAAiB,CAAC,OAAO,KAAK,gBAAgB,CAAC,OAAO,EACtD,CAAC;YACD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxB,YAAY,IAAI,gBAAgB,CAAC,IAAI,CAAC;QACxC,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;QAC3D,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QAChC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,YAAY,IAAI,iBAAiB,EAAE,IAAI,IAAI,CAAC,CAAC;IAC/C,CAAC;IACD,YAAY,CAAC,IAAI,EAAE,CAAC;IACpB,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAA4B;IAC7D,IAAI,cAAyD,CAAC;IAC9D,IAAI,WAA0C,CAAC;IAC/C,IAAI,UAAyD,CAAC;IAC9D,IAAI,iBAAmD,CAAC;IACxD,IAAI,sBAAwD,CAAC;IAC7D,IAAI,mBAA8D,CAAC;IACnE,IAAI,mBAA8D,CAAC;IACnE,IAAI,qBAAgE,CAAC;IACrE,IAAI,oBAA6E,CAAC;IAClF,IAAI,2BAAmE,CAAC;IACxE,IAAI,uBAAuE,CAAC;IAE5E,IAAI,sBAAsB,GAAG,CAAC,CAAC;IAC/B,IAAI,mBAAqD,CAAC;IAC1D,IAAI,iBAA4D,CAAC;IAEjE,MAAM,UAAU,GAAG,GAAS,EAAE;QAC5B,2BAA2B,CAAC,OAAO,CAAC,CAAC;QACrC,cAAc,GAAG,SAAS,CAAC;QAC3B,WAAW,GAAG,SAAS,CAAC;QACxB,UAAU,GAAG,SAAS,CAAC;QACvB,iBAAiB,GAAG,SAAS,CAAC;QAC9B,sBAAsB,GAAG,SAAS,CAAC;QACnC,mBAAmB,GAAG,SAAS,CAAC;QAChC,mBAAmB,GAAG,SAAS,CAAC;QAChC,qBAAqB,GAAG,SAAS,CAAC;QAClC,oBAAoB,GAAG,SAAS,CAAC;QACjC,2BAA2B,GAAG,SAAS,CAAC;QACxC,uBAAuB,GAAG,SAAS,CAAC;QACpC,sBAAsB,GAAG,CAAC,CAAC;QAC3B,mBAAmB,GAAG,SAAS,CAAC;QAChC,iBAAiB,GAAG,SAAS,CAAC;IAChC,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,KAAK,EAAE,gBAA0C,EAAiC,EAAE;QACvG,IAAI,cAAc;YAAE,OAAO,cAAc,CAAC;QAC1C,MAAM,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;YAC9B,MAAM,IAAI,GAAG,MAAM,2BAA2B,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;YAC1E,IAAI,OAAO,CAAC,SAAS,EAAE,MAAM,KAAK,QAAQ,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACpE,MAAM,UAAU,GAAgD,MAAM,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC7G,2FAA2F;gBAC3F,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBAC9B,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;oBACvD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC;wBAAE,UAAU,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;gBAC7E,CAAC;gBACD,oBAAoB,GAAG,UAAU,CAAC;YACpC,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,EAAE,CAAC;QACL,cAAc,GAAG,WAAW,CAAC;QAC7B,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE;YACrB,IAAI,cAAc,KAAK,WAAW;gBAAE,cAAc,GAAG,SAAS,CAAC;QACjE,CAAC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,KAAK,IAAuB,EAAE;QAC9C,IAAI,WAAW;YAAE,OAAO,WAAW,CAAC;QACpC,MAAM,WAAW,GAAG,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9D,WAAW,GAAG,WAAW,CAAC;QAC1B,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE;YACrB,IAAI,WAAW,KAAK,WAAW;gBAAE,WAAW,GAAG,SAAS,CAAC;QAC3D,CAAC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,KAAK,IAAuC,EAAE;QAC7D,IAAI,UAAU;YAAE,OAAO,UAAU,CAAC;QAClC,MAAM,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;YAC9B,MAAM,gBAAgB,GAAG,6BAA6B,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACrE,MAAM,qBAAqB,GACzB,OAAO,CAAC,SAAS,EAAE,MAAM,KAAK,QAAQ;gBACpC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,MAAM,iBAAiB,CACrB,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,YAAY,EAAE,QAAQ,EAC9B,gBAAgB,EAChB,SAAS,EACT,OAAO,CAAC,SAAS,CAClB,CAAC;YACR,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,eAAe,EAAE,SAAS,EAAE,GAC5G,MAAM,YAAY,CAAC,gBAAgB,CAAC,CAAC;YACvC,MAAM,YAAY,GAA4B;gBAC5C,GAAG,OAAO,CAAC,YAAY;gBACvB,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChD,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE,KAAK,IAAI,MAAM;gBAC5C,UAAU,EAAE,OAAO,CAAC,YAAY,EAAE,UAAU,IAAI,IAAI;gBACpD,KAAK;gBACL,oBAAoB,EAAE,IAAI;gBAC1B,gBAAgB;gBAChB,oFAAoF;gBACpF,iBAAiB,EAAE,OAAO,CAAC,YAAY,EAAE,iBAAiB,IAAI,SAAS;gBACvE,GAAG,CAAC,eAAe;oBACjB,CAAC,CAAC;wBACE,2BAA2B,EAAE,eAAe,CAAC,iBAAiB;wBAC9D,8BAA8B,EAAE,eAAe,CAAC,oBAAoB;wBACpE,wBAAwB,EAAE,eAAe,CAAC,cAAc;qBACzD;oBACH,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5D,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrD,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5C,CAAC;YACF,yFAAyF;YACzF,0FAA0F;YAC1F,qDAAqD;YACrD,MAAM,WAAW,GAAgB,OAAO,CAAC,YAAY,EAAE,MAAM,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;YACjF,YAAY,CAAC,MAAM,GAAG,WAAW,CAAC;YAClC,MAAM,KAAK,GAAG,MAAM,4BAA4B,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;YAC7E,MAAM,cAAc,GAClB,OAAO,CAAC,SAAS,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,+BAA+B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC3G,oBAAoB,GAAG,cAAc,CAAC;YACtC,2BAA2B,GAAG,qBAAqB,CAAC;YACpD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;YAE9B,OAAO;gBACL,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK;gBACL,UAAU,EAAE,qBAAqB,CAAC,KAAK,CAAC;gBACxC,KAAK;gBACL,SAAS;gBACT,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7C,WAAW;gBACX,QAAQ,EAAE,iBAAiB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;aAC5D,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;QACL,UAAU,GAAG,WAAW,CAAC;QACzB,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE;YACrB,IAAI,UAAU,KAAK,WAAW;gBAAE,UAAU,GAAG,SAAS,CAAC;QACzD,CAAC,CAAC,CAAC;QAEH,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,KAAK,EAAE,IAA8B,EAAwB,EAAE;QACrF,IAAI,iBAAiB;YAAE,OAAO,iBAAiB,CAAC;QAChD,MAAM,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;YAC9B,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,MAAM,YAAY,EAAE,CAAC;YAC7D,MAAM,YAAY,GAAiB;gBACjC,GAAG,OAAO,CAAC,YAAY;gBACvB,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChD,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE,KAAK,IAAI,MAAM;gBAC5C,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5C,CAAC;YACF,MAAM,SAAS,GAAG,MAAM,kCAAkC,CACxD,OAAO,CAAC,IAAI,EACZ,YAAY,EACZ,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,WAAW,CACjB,CAAC;YACF,IAAI,SAAS;gBAAE,OAAO,SAAS,CAAC;YAChC,MAAM,KAAK,GAAG,MAAM,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzD,MAAM,gCAAgC,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACtF,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,EAAE,CAAC;QACL,iBAAiB,GAAG,WAAW,CAAC;QAChC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE;YACrB,IAAI,iBAAiB,KAAK,WAAW;gBAAE,iBAAiB,GAAG,SAAS,CAAC;QACvE,CAAC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,KAAK,EAAE,IAA8B,EAAwB,EAAE;QAC1F,mEAAmE;QACnE,IAAI,iBAAiB;YAAE,OAAO,iBAAiB,CAAC;QAChD,IAAI,sBAAsB;YAAE,OAAO,sBAAsB,CAAC;QAC1D,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,sBAAsB,GAAG,WAAW,CAAC;QACrC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE;YACrB,IAAI,sBAAsB,KAAK,WAAW;gBAAE,sBAAsB,GAAG,SAAS,CAAC;QACjF,CAAC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,KAAK,EAAE,WAAqC,EAAiC,EAAE;QACjG,IAAI,WAAW,EAAE,WAAW,KAAK,MAAM,EAAE,CAAC;YACxC,qBAAqB,KAAK,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACnD,GAAG,IAAI;gBACP,WAAW,EAAE,kBAAkB;aAChC,CAAC,CAAC,CAAC;YACJ,qBAAqB,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC/B,qBAAqB,GAAG,SAAS,CAAC;YACpC,CAAC,CAAC,CAAC;YACH,OAAO,MAAM,qBAAqB,CAAC;QACrC,CAAC;QAED,IAAI,WAAW,EAAE,WAAW,KAAK,OAAO,EAAE,CAAC;YACzC,4DAA4D;YAC5D,IAAI,mBAAmB;gBAAE,OAAO,MAAM,mBAAmB,CAAC;YAC1D,mBAAmB,KAAK,QAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;gBACvD,GAAG,IAAI;gBACP,WAAW,EAAE,MAAM,oBAAoB,CAAC,IAAI,CAAC;aAC9C,CAAC,CAAC,CAAC;YACJ,mBAAmB,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC7B,mBAAmB,GAAG,SAAS,CAAC;YAClC,CAAC,CAAC,CAAC;YACH,OAAO,MAAM,mBAAmB,CAAC;QACnC,CAAC;QAED,mBAAmB,KAAK,QAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACvD,GAAG,IAAI;YACP,WAAW,EAAE,MAAM,eAAe,CAAC,IAAI,CAAC;SACzC,CAAC,CAAC,CAAC;QACJ,mBAAmB,CAAC,KAAK,CAAC,GAAG,EAAE;YAC7B,mBAAmB,GAAG,SAAS,CAAC;QAClC,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,mBAAmB,CAAC;IACnC,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,KAAK,IAAwC,EAAE;QAC3E,IAAI,uBAAuB;YAAE,OAAO,uBAAuB,CAAC;QAC5D,MAAM,WAAW,GAAG,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACnH,uBAAuB,GAAG,WAAW,CAAC;QACtC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE;YACrB,IAAI,uBAAuB,KAAK,WAAW;gBAAE,uBAAuB,GAAG,SAAS,CAAC;QACnF,CAAC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,KAAK,IAAmC,EAAE;QAC/D,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,MAAM,IAAI,OAAO,CAAC;QACpD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,oFAAoF;YACpF,qFAAqF;YACrF,8EAA8E;YAC9E,qFAAqF;YACrF,OAAO;gBACL,KAAK,EAAE,WAAW;gBAClB,MAAM,EAAE,sEAAsE;aAC/E,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,UAAU,IAAI,CAAC,cAAc,IAAI,CAAC,WAAW,IAAI,CAAC,oBAAoB;YAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAEvG,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,mBAAmB,IAAI,GAAG,GAAG,sBAAsB,GAAG,iCAAiC,EAAE,CAAC;YAC5F,OAAO,mBAAmB,CAAC;QAC7B,CAAC;QACD,IAAI,iBAAiB;YAAE,OAAO,iBAAiB,CAAC;QAEhD,iBAAiB,GAAG,CAAC,KAAK,IAAmC,EAAE;YAC7D,IAAI,UAAU;gBAAE,MAAM,UAAU,CAAC;iBAC5B,IAAI,cAAc;gBAAE,MAAM,cAAc,CAAC;YAC9C,IAAI,CAAC,oBAAoB;gBAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;YACrD,6EAA6E;YAC7E,6EAA6E;YAC7E,MAAM,gBAAgB,GAAG,6BAA6B,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACrE,MAAM,CAAC,4BAA4B,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACxE,2BAA2B;oBACzB,CAAC,CAAC,iBAAiB,CACf,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,YAAY,EAAE,QAAQ,EAC9B,gBAAgB,EAChB,SAAS,EACT,OAAO,CAAC,SAAS,CAClB;oBACH,CAAC,CAAC,SAAS;gBACb,2BAA2B,CAAC,OAAO,EAAE,gBAAgB,CAAC;aACvD,CAAC,CAAC;YACH,MAAM,iBAAiB,GAAG,MAAM,0BAA0B,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAClF,MAAM,UAAU,GAAG,oBAAoB,CAAC;YACxC,MAAM,qBAAqB,GAAG,2BAA2B,CAAC;YAC1D,IAAI,CAAC,UAAU;gBAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;YAC3C,MAAM,IAAI,GAAG,uBAAuB,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;YACpE,MAAM,oBAAoB,GACxB,CAAC,CAAC,4BAA4B;gBAC9B,CAAC,CAAC,CAAC,qBAAqB,EAAE,KAAK;oBAC7B,CAAC,CAAC,4BAA4B,CAAC,KAAK;oBACpC,qBAAqB,EAAE,IAAI,KAAK,4BAA4B,CAAC,IAAI,CAAC,CAAC;YACvE,IAAI,MAA4B,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACvD,MAAM,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACN,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC/F,IAAI,4BAA4B,EAAE,KAAK,EAAE,CAAC;oBACxC,MAAM,GAAG;wBACP,KAAK,EAAE,OAAO;wBACd,GAAG,qBAAqB,CAAC,YAAY,CAAC;wBACtC,MAAM,EAAE,4CAA4C;qBACrD,CAAC;gBACJ,CAAC;qBAAM,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC9B,MAAM,GAAG;wBACP,KAAK,EAAE,OAAO;wBACd,GAAG,qBAAqB,CAAC,YAAY,CAAC;wBACtC,MAAM,EAAE,oBAAoB;4BAC1B,CAAC,CAAC,oEAAoE;4BACtE,CAAC,CAAC,8CAA8C;qBACnD,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,EAAE,mBAAmB,IAAI,8BAA8B,CAAC;oBAC1F,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,EAAE,mBAAmB,IAAI,8BAA8B,CAAC;oBAC1F,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;wBACxC,MAAM,GAAG;4BACP,KAAK,EAAE,OAAO;4BACd,GAAG,qBAAqB,CAAC,YAAY,CAAC;4BACtC,MAAM,EAAE,8BAA8B,QAAQ,EAAE;yBACjD,CAAC;oBACJ,CAAC;yBAAM,IAAI,IAAI,CAAC,YAAY,GAAG,QAAQ,EAAE,CAAC;wBACxC,MAAM,GAAG;4BACP,KAAK,EAAE,OAAO;4BACd,GAAG,qBAAqB,CAAC,YAAY,CAAC;4BACtC,MAAM,EAAE,8BAA8B,QAAQ,EAAE;yBACjD,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,UAAU,EAAE,CAAC;wBACb,MAAM,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;oBAChD,CAAC;gBACH,CAAC;YACH,CAAC;YACD,sBAAsB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACpC,mBAAmB,GAAG,MAAM,CAAC;YAC7B,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;YAChB,iBAAiB,GAAG,SAAS,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,OAAO,iBAAiB,CAAC;IAC3B,CAAC,CAAC;IAEF,MAAM,OAAO,GAAiB;QAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,aAAa,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC;QACnD,SAAS,EAAE,SAAS;QACpB,WAAW;QACX,qBAAqB;QACrB,cAAc;QACd,UAAU;KACX,CAAC;IACF,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/agent/session.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import type { BuildOptions } from "../indexer/types.js";
2
- import { type TypeHierarchyDirection, type TypeHierarchyRelationKind } from "../indexer/type-hierarchy.js";
2
+ import { type TypeHierarchyDirection, type TypeHierarchyRelationKind, type TypeHierarchyRelationMatch } from "../indexer/type-hierarchy.js";
3
3
  import type { SemanticLocation, SemanticProvenance, SemanticResponseEnvelope, SemanticSymbol } from "./semantic.js";
4
- import { type AgentSession } from "./session.js";
4
+ import { type AgentProjectSnapshot, type AgentSession } from "./session.js";
5
+ import { type SymbolLookup } from "./symbol-lookup.js";
5
6
  export type TypeHierarchyRequest = {
6
7
  root: string;
7
8
  handle: string;
@@ -36,4 +37,5 @@ export declare function findSupertypesWithSession(session: AgentSession, request
36
37
  export declare function findSubtypesWithSession(session: AgentSession, request: TypeHierarchyRequest): Promise<TypeHierarchyResponse>;
37
38
  export declare function findImplementations(request: TypeHierarchyRequest): Promise<ImplementationsResponse>;
38
39
  export declare function findImplementationsWithSession(session: AgentSession, request: TypeHierarchyRequest): Promise<ImplementationsResponse>;
40
+ export declare function typeHierarchyRelations(snapshot: AgentProjectSnapshot, lookup: SymbolLookup, matches: readonly TypeHierarchyRelationMatch[], provenance: SemanticProvenance): TypeHierarchyRelation[];
39
41
  //# sourceMappingURL=type-hierarchy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-hierarchy.d.ts","sourceRoot":"","sources":["../../src/agent/type-hierarchy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAGL,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC/B,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpH,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,cAAc,CAAC;AAGtB,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,yBAAyB,CAAC;IACpC,eAAe,CAAC,EAAE,gBAAgB,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,kBAAkB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,wBAAwB,GAAG;IAC7D,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,sBAAsB,CAAC;IAClC,SAAS,EAAE,qBAAqB,EAAE,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,cAAc,CAAC;IACvB,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,UAAU,EAAE,kBAAkB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,wBAAwB,GAAG;IAC/D,MAAM,EAAE,cAAc,CAAC;IACvB,eAAe,EAAE,mBAAmB,EAAE,CAAC;CACxC,CAAC;AAEF,wBAAsB,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAElG;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAEhG;AAED,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,qBAAqB,CAAC,CAEhC;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,qBAAqB,CAAC,CAEhC;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAEzG;AAED,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,uBAAuB,CAAC,CAiClC"}
1
+ {"version":3,"file":"type-hierarchy.d.ts","sourceRoot":"","sources":["../../src/agent/type-hierarchy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAGL,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAChC,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAGpH,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,YAAY,EAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAqB,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE1E,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,yBAAyB,CAAC;IACpC,eAAe,CAAC,EAAE,gBAAgB,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,kBAAkB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,wBAAwB,GAAG;IAC7D,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,sBAAsB,CAAC;IAClC,SAAS,EAAE,qBAAqB,EAAE,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,cAAc,CAAC;IACvB,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,UAAU,EAAE,kBAAkB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,wBAAwB,GAAG;IAC/D,MAAM,EAAE,cAAc,CAAC;IACvB,eAAe,EAAE,mBAAmB,EAAE,CAAC;CACxC,CAAC;AAEF,wBAAsB,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAElG;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAEhG;AAED,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,qBAAqB,CAAC,CAEhC;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,qBAAqB,CAAC,CAEhC;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAEzG;AAED,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,uBAAuB,CAAC,CAiClC;AA0BD,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,oBAAoB,EAC9B,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,SAAS,0BAA0B,EAAE,EAC9C,UAAU,EAAE,kBAAkB,GAC7B,qBAAqB,EAAE,CAqBzB"}
@@ -1,13 +1,14 @@
1
1
  import { findImplementations as queryImplementations, findTypeHierarchy, } from "../indexer/type-hierarchy.js";
2
2
  import { normalizeAgentFilePath } from "./normalize.js";
3
+ import { semanticProvenance } from "./semantic.js";
3
4
  import { requireSemanticSymbol, semanticSymbolFromDef } from "./semantic-symbols.js";
4
- import { createAgentSession, } from "./session.js";
5
+ import { checkSessionFreshness, createRequestSession, } from "./session.js";
5
6
  import { buildSymbolLookup } from "./symbol-lookup.js";
6
7
  export async function findSupertypes(request) {
7
- return await runTypeHierarchy(createSession(request), request, "super");
8
+ return await runTypeHierarchy(createRequestSession(request), request, "super");
8
9
  }
9
10
  export async function findSubtypes(request) {
10
- return await runTypeHierarchy(createSession(request), request, "sub");
11
+ return await runTypeHierarchy(createRequestSession(request), request, "sub");
11
12
  }
12
13
  export async function findSupertypesWithSession(session, request) {
13
14
  return await runTypeHierarchy(session, request, "super");
@@ -16,10 +17,10 @@ export async function findSubtypesWithSession(session, request) {
16
17
  return await runTypeHierarchy(session, request, "sub");
17
18
  }
18
19
  export async function findImplementations(request) {
19
- return await findImplementationsWithSession(createSession(request), request);
20
+ return await findImplementationsWithSession(createRequestSession(request), request);
20
21
  }
21
22
  export async function findImplementationsWithSession(session, request) {
22
- const freshness = await checkFreshness(session);
23
+ const freshness = await checkSessionFreshness(session);
23
24
  const snapshot = await session.loadProject();
24
25
  const resolved = requireSemanticSymbol(snapshot, request.handle);
25
26
  const result = queryImplementations(snapshot.index, snapshot.symbolGraph, resolved.id, {
@@ -28,7 +29,7 @@ export async function findImplementationsWithSession(session, request) {
28
29
  if (result.status !== "ok")
29
30
  throw new Error(result.reason);
30
31
  const lookup = buildSymbolLookup(snapshot);
31
- const provenance = relationshipProvenance(snapshot);
32
+ const provenance = semanticProvenance(snapshot);
32
33
  const implementations = result.implementations.flatMap((match) => {
33
34
  const def = lookup.defById.get(match.symbolId);
34
35
  if (!def)
@@ -55,7 +56,7 @@ export async function findImplementationsWithSession(session, request) {
55
56
  };
56
57
  }
57
58
  async function runTypeHierarchy(session, request, direction) {
58
- const freshness = await checkFreshness(session);
59
+ const freshness = await checkSessionFreshness(session);
59
60
  const snapshot = await session.loadProject();
60
61
  const resolved = requireSemanticSymbol(snapshot, request.handle);
61
62
  const result = findTypeHierarchy(snapshot.symbolGraph, resolved.id, direction, {
@@ -65,8 +66,17 @@ async function runTypeHierarchy(session, request, direction) {
65
66
  if (result.status !== "ok")
66
67
  throw new Error(result.reason);
67
68
  const lookup = buildSymbolLookup(snapshot);
68
- const provenance = relationshipProvenance(snapshot);
69
- const relations = result.relations.flatMap((match) => {
69
+ const provenance = semanticProvenance(snapshot);
70
+ const relations = typeHierarchyRelations(snapshot, lookup, result.relations, provenance);
71
+ return {
72
+ ...responseEnvelope(snapshot, freshness, result.limit, result.omitted),
73
+ target: semanticSymbolFromDef(snapshot, resolved.def),
74
+ direction,
75
+ relations,
76
+ };
77
+ }
78
+ export function typeHierarchyRelations(snapshot, lookup, matches, provenance) {
79
+ return matches.flatMap((match) => {
70
80
  const def = lookup.defById.get(match.targetId);
71
81
  if (!def)
72
82
  return [];
@@ -87,28 +97,6 @@ async function runTypeHierarchy(session, request, direction) {
87
97
  },
88
98
  ];
89
99
  });
90
- return {
91
- ...responseEnvelope(snapshot, freshness, result.limit, result.omitted),
92
- target: semanticSymbolFromDef(snapshot, resolved.def),
93
- direction,
94
- relations,
95
- };
96
- }
97
- function createSession(request) {
98
- return createAgentSession({
99
- root: request.root,
100
- ...(request.buildOptions ? { buildOptions: request.buildOptions } : {}),
101
- });
102
- }
103
- async function checkFreshness(session) {
104
- return session.checkFreshness ? await session.checkFreshness() : { state: "fresh" };
105
- }
106
- function relationshipProvenance(snapshot) {
107
- return {
108
- capability: "semantic",
109
- backend: snapshot.analysis.backend,
110
- confidence: "high",
111
- };
112
100
  }
113
101
  function responseEnvelope(snapshot, freshness, limit, omitted) {
114
102
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"type-hierarchy.js","sourceRoot":"","sources":["../../src/agent/type-hierarchy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-hierarchy.js","sourceRoot":"","sources":["../../src/agent/type-hierarchy.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,IAAI,oBAAoB,EAC3C,iBAAiB,GAIlB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EACL,qBAAqB,EACrB,oBAAoB,GAIrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAqB,MAAM,oBAAoB,CAAC;AAmC1E,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAA6B;IAChE,OAAO,MAAM,gBAAgB,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACjF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAA6B;IAC9D,OAAO,MAAM,gBAAgB,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,OAAqB,EACrB,OAA6B;IAE7B,OAAO,MAAM,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAqB,EACrB,OAA6B;IAE7B,OAAO,MAAM,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAA6B;IACrE,OAAO,MAAM,8BAA8B,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;AACtF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,OAAqB,EACrB,OAA6B;IAE7B,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,qBAAqB,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE,MAAM,MAAM,GAAG,oBAAoB,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,EAAE;QACrF,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,KAAK,EAAyB,EAAE;QACtF,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,GAAG;YAAE,OAAO,EAAE,CAAC;QACpB,OAAO;YACL;gBACE,MAAM,EAAE,qBAAqB,CAAC,QAAQ,EAAE,GAAG,CAAC;gBAC5C,GAAG,CAAC,KAAK,CAAC,IAAI;oBACZ,CAAC,CAAC;wBACE,YAAY,EAAE;4BACZ,IAAI,EAAE,sBAAsB,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;4BAC5D,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;yBACxB;qBACF;oBACH,CAAC,CAAC,EAAE,CAAC;gBACP,UAAU;aACX;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO;QACL,GAAG,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC;QACtE,MAAM,EAAE,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC;QACrD,eAAe;KAChB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,OAAqB,EACrB,OAA6B,EAC7B,SAAiC;IAEjC,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,qBAAqB,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE;QAC7E,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACzF,OAAO;QACL,GAAG,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC;QACtE,MAAM,EAAE,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC;QACrD,SAAS;QACT,SAAS;KACV,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,QAA8B,EAC9B,MAAoB,EACpB,OAA8C,EAC9C,UAA8B;IAE9B,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAA2B,EAAE;QACxD,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,GAAG;YAAE,OAAO,EAAE,CAAC;QACpB,OAAO;YACL;gBACE,IAAI,EAAE,qBAAqB,CAAC,QAAQ,EAAE,GAAG,CAAC;gBAC1C,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,GAAG,CAAC,KAAK,CAAC,IAAI;oBACZ,CAAC,CAAC;wBACE,eAAe,EAAE;4BACf,IAAI,EAAE,sBAAsB,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;4BAC5D,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;yBACxB;qBACF;oBACH,CAAC,CAAC,EAAE,CAAC;gBACP,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,UAAU;aACX;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CACvB,QAA8B,EAC9B,SAA+B,EAC/B,KAAa,EACb,OAAe;IAEf,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,SAAS;QACT,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE;QAC5B,aAAa,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE;KACtC,CAAC;AACJ,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type { BuildOptions } from "../indexer/types.js";
2
2
  import { type WorkspaceSymbolsRequest } from "../indexer/workspace-symbols.js";
3
3
  import { type AgentFreshnessResult, type AgentProjectSnapshot, type AgentSession } from "./session.js";
4
- import type { SemanticResponseEnvelope, SemanticSymbol } from "./semantic.js";
4
+ import { type SemanticResponseEnvelope, type SemanticSymbol } from "./semantic.js";
5
5
  export type AgentWorkspaceSymbolsRequest = WorkspaceSymbolsRequest & {
6
6
  root: string;
7
7
  buildOptions?: BuildOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-symbols.d.ts","sourceRoot":"","sources":["../../src/agent/workspace-symbols.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,iCAAiC,CAAC;AAIzC,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,YAAY,EAClB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE9E,MAAM,MAAM,4BAA4B,GAAG,uBAAuB,GAAG;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,wBAAwB,GAAG;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,4BAA4B,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAM/G;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,wBAAwB,CAAC,CAInC;AAED,wBAAsB,0BAA0B,CAC9C,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,uBAAuB,EAChC,SAAS,GAAE,oBAAyC,GACnD,OAAO,CAAC,wBAAwB,CAAC,CA4CnC;AAED,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,wBAAwB,GAAG,MAAM,CASzF"}
1
+ {"version":3,"file":"workspace-symbols.d.ts","sourceRoot":"","sources":["../../src/agent/workspace-symbols.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,iCAAiC,CAAC;AAIzC,OAAO,EAGL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,YAAY,EAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAGL,KAAK,wBAAwB,EAC7B,KAAK,cAAc,EACpB,MAAM,eAAe,CAAC;AAEvB,MAAM,MAAM,4BAA4B,GAAG,uBAAuB,GAAG;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,wBAAwB,GAAG;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,4BAA4B,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAG/G;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,wBAAwB,CAAC,CAInC;AAED,wBAAsB,0BAA0B,CAC9C,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,uBAAuB,EAChC,SAAS,GAAE,oBAAyC,GACnD,OAAO,CAAC,wBAAwB,CAAC,CAwCnC;AAED,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,wBAAwB,GAAG,MAAM,CAMzF"}
@@ -2,16 +2,14 @@ import { workspaceSymbols as queryWorkspaceSymbols, } from "../indexer/workspace
2
2
  import { defaultAgentLimit } from "./bounds.js";
3
3
  import { formatAgentSymbolHandle } from "./handles.js";
4
4
  import { normalizeAgentFilePath } from "./normalize.js";
5
- import { createAgentSession, } from "./session.js";
5
+ import { checkSessionFreshness, createRequestSession, } from "./session.js";
6
+ import { formatSemanticSymbol, semanticProvenance, } from "./semantic.js";
6
7
  export async function workspaceSymbols(request) {
7
- const session = createAgentSession({
8
- root: request.root,
9
- ...(request.buildOptions ? { buildOptions: request.buildOptions } : {}),
10
- });
8
+ const session = createRequestSession(request);
11
9
  return await workspaceSymbolsWithSession(session, request);
12
10
  }
13
11
  export async function workspaceSymbolsWithSession(session, request) {
14
- const freshness = session.checkFreshness ? await session.checkFreshness() : { state: "fresh" };
12
+ const freshness = await checkSessionFreshness(session);
15
13
  const snapshot = await session.loadProject({ symbolGraph: "skip" });
16
14
  return await workspaceSymbolsInSnapshot(snapshot, request, freshness);
17
15
  }
@@ -36,11 +34,7 @@ export async function workspaceSymbolsInSnapshot(snapshot, request, freshness =
36
34
  kind: symbol.kind,
37
35
  location: { file, range },
38
36
  exported: symbol.exported,
39
- provenance: {
40
- capability: "semantic",
41
- backend: snapshot.analysis.backend,
42
- confidence: "high",
43
- },
37
+ provenance: semanticProvenance(snapshot),
44
38
  };
45
39
  });
46
40
  return {
@@ -63,10 +57,8 @@ export function formatWorkspaceSymbolsResponse(response) {
63
57
  if (!response.symbols.length)
64
58
  return `No workspace symbols matched "${response.query}".`;
65
59
  const lines = [`Analysis: ${response.analysis.label}`, `Symbols: ${response.symbols.length}`];
66
- for (const symbol of response.symbols) {
67
- const { file, range } = symbol.location;
68
- lines.push(`${symbol.name} [${symbol.kind}] ${file}:${range.start.line}:${range.start.column}`);
69
- }
60
+ for (const symbol of response.symbols)
61
+ lines.push(formatSemanticSymbol(symbol));
70
62
  if (response.omittedCounts.symbols)
71
63
  lines.push(`Omitted: ${response.omittedCounts.symbols}`);
72
64
  return lines.join("\n");
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-symbols.js","sourceRoot":"","sources":["../../src/agent/workspace-symbols.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-symbols.js","sourceRoot":"","sources":["../../src/agent/workspace-symbols.ts"],"names":[],"mappings":"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"}
@@ -10,11 +10,8 @@ export type AnalysisSummary = {
10
10
  label: string;
11
11
  };
12
12
  type AnalysisCoverage = Pick<AnalysisSummary, "parserDegradedFiles" | "nativeFilesFellBack">;
13
- /** Files the native parser skipped (for example `sourceTooLarge` or `queryFailure`). */
14
- export declare function analysisSkippedFileCount(summary: AnalysisCoverage): number;
15
- /** True when no file was skipped, so reference and rename evidence covers the whole index. */
13
+ /** True when no file was skipped or degraded, so reference and rename evidence covers the whole index. */
16
14
  export declare function isAnalysisComplete(summary: AnalysisCoverage): boolean;
17
- export declare function formatAnalysisSummaryLabel(summary: AnalysisSummary): string;
18
15
  export declare function summarizeAnalysis(input: {
19
16
  index?: ProjectIndex | undefined;
20
17
  report?: BuildReport | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"analysis-summary.d.ts","sourceRoot":"","sources":["../src/analysis-summary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEpE,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC;AAEtC,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEnD,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,eAAe,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,gBAAgB,GAAG,IAAI,CAAC,eAAe,EAAE,qBAAqB,GAAG,qBAAqB,CAAC,CAAC;AAE7F,wFAAwF;AACxF,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAE1E;AAED,8FAA8F;AAC9F,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAErE;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAI3E;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,KAAK,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACjC,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CAClC,GAAG,eAAe,CAalB"}
1
+ {"version":3,"file":"analysis-summary.d.ts","sourceRoot":"","sources":["../src/analysis-summary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGpE,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC;AAEtC,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEnD,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,eAAe,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,gBAAgB,GAAG,IAAI,CAAC,eAAe,EAAE,qBAAqB,GAAG,qBAAqB,CAAC,CAAC;AAE7F,0GAA0G;AAC1G,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAErE;AA2DD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,KAAK,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACjC,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CAClC,GAAG,eAAe,CAalB"}