@lzehrung/codegraph 2.3.20 → 2.3.22

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 (1386) hide show
  1. package/README.md +6 -5
  2. package/THIRD_PARTY_NOTICES +4 -4
  3. package/codegraph-skill/codegraph/SKILL.md +97 -281
  4. package/dist/agent/call-hierarchy.d.ts +28 -0
  5. package/dist/agent/call-hierarchy.d.ts.map +1 -0
  6. package/dist/agent/call-hierarchy.js +82 -0
  7. package/dist/agent/call-hierarchy.js.map +1 -0
  8. package/dist/agent/candidate-tests.d.ts +12 -0
  9. package/dist/agent/candidate-tests.d.ts.map +1 -0
  10. package/dist/agent/candidate-tests.js +17 -0
  11. package/dist/agent/candidate-tests.js.map +1 -0
  12. package/dist/agent/explain.d.ts +8 -2
  13. package/dist/agent/explain.d.ts.map +1 -1
  14. package/dist/agent/explain.js +17 -3
  15. package/dist/agent/explain.js.map +1 -1
  16. package/dist/agent/explore.d.ts +3 -3
  17. package/dist/agent/explore.d.ts.map +1 -1
  18. package/dist/agent/explore.js +2 -2
  19. package/dist/agent/explore.js.map +1 -1
  20. package/dist/agent/file-view.d.ts +55 -0
  21. package/dist/agent/file-view.d.ts.map +1 -0
  22. package/dist/agent/file-view.js +521 -0
  23. package/dist/agent/file-view.js.map +1 -0
  24. package/dist/agent/follow-ups.d.ts +10 -0
  25. package/dist/agent/follow-ups.d.ts.map +1 -0
  26. package/dist/agent/follow-ups.js +175 -0
  27. package/dist/agent/follow-ups.js.map +1 -0
  28. package/dist/agent/normalize.d.ts +1 -1
  29. package/dist/agent/normalize.d.ts.map +1 -1
  30. package/dist/agent/normalize.js +2 -2
  31. package/dist/agent/normalize.js.map +1 -1
  32. package/dist/agent/orient.d.ts +1 -1
  33. package/dist/agent/orient.d.ts.map +1 -1
  34. package/dist/agent/orient.js +2 -2
  35. package/dist/agent/orient.js.map +1 -1
  36. package/dist/agent/packet.d.ts +1 -1
  37. package/dist/agent/packet.d.ts.map +1 -1
  38. package/dist/agent/packet.js +1 -1
  39. package/dist/agent/packet.js.map +1 -1
  40. package/dist/agent/query-index/candidates.d.ts +8 -2
  41. package/dist/agent/query-index/candidates.d.ts.map +1 -1
  42. package/dist/agent/query-index/candidates.js +12 -5
  43. package/dist/agent/query-index/candidates.js.map +1 -1
  44. package/dist/agent/query-index/content.js +2 -2
  45. package/dist/agent/query-index/content.js.map +1 -1
  46. package/dist/agent/query-index/query-index-worker.d.ts +8 -0
  47. package/dist/agent/query-index/query-index-worker.d.ts.map +1 -0
  48. package/dist/agent/query-index/query-index-worker.js +11 -0
  49. package/dist/agent/query-index/query-index-worker.js.map +1 -0
  50. package/dist/agent/query-index/session-store.d.ts +5 -0
  51. package/dist/agent/query-index/session-store.d.ts.map +1 -0
  52. package/dist/agent/query-index/session-store.js +69 -0
  53. package/dist/agent/query-index/session-store.js.map +1 -0
  54. package/dist/agent/query-index/source-identity.d.ts +3 -0
  55. package/dist/agent/query-index/source-identity.d.ts.map +1 -0
  56. package/dist/agent/query-index/source-identity.js +12 -0
  57. package/dist/agent/query-index/source-identity.js.map +1 -0
  58. package/dist/agent/query-index/store.d.ts +5 -1
  59. package/dist/agent/query-index/store.d.ts.map +1 -1
  60. package/dist/agent/query-index/store.js +98 -31
  61. package/dist/agent/query-index/store.js.map +1 -1
  62. package/dist/agent/query-index/update.js +3 -3
  63. package/dist/agent/query-index/update.js.map +1 -1
  64. package/dist/agent/query-index/worker-pool.d.ts +27 -0
  65. package/dist/agent/query-index/worker-pool.d.ts.map +1 -0
  66. package/dist/agent/query-index/worker-pool.js +114 -0
  67. package/dist/agent/query-index/worker-pool.js.map +1 -0
  68. package/dist/agent/refactor-plan.d.ts +40 -0
  69. package/dist/agent/refactor-plan.d.ts.map +1 -0
  70. package/dist/agent/refactor-plan.js +226 -0
  71. package/dist/agent/refactor-plan.js.map +1 -0
  72. package/dist/agent/rename-preview.d.ts +57 -0
  73. package/dist/agent/rename-preview.d.ts.map +1 -0
  74. package/dist/agent/rename-preview.js +1062 -0
  75. package/dist/agent/rename-preview.js.map +1 -0
  76. package/dist/agent/search.d.ts +8 -2
  77. package/dist/agent/search.d.ts.map +1 -1
  78. package/dist/agent/search.js +26 -9
  79. package/dist/agent/search.js.map +1 -1
  80. package/dist/agent/semantic-symbols.d.ts +16 -0
  81. package/dist/agent/semantic-symbols.d.ts.map +1 -0
  82. package/dist/agent/semantic-symbols.js +97 -0
  83. package/dist/agent/semantic-symbols.js.map +1 -0
  84. package/dist/agent/semantic.d.ts +1 -1
  85. package/dist/agent/semantic.d.ts.map +1 -1
  86. package/dist/agent/session-lifecycle.d.ts +5 -0
  87. package/dist/agent/session-lifecycle.d.ts.map +1 -0
  88. package/dist/agent/session-lifecycle.js +18 -0
  89. package/dist/agent/session-lifecycle.js.map +1 -0
  90. package/dist/agent/session.d.ts +3 -3
  91. package/dist/agent/session.d.ts.map +1 -1
  92. package/dist/agent/session.js +73 -26
  93. package/dist/agent/session.js.map +1 -1
  94. package/dist/agent/symbol-lookup.d.ts +12 -0
  95. package/dist/agent/symbol-lookup.d.ts.map +1 -0
  96. package/dist/agent/symbol-lookup.js +26 -0
  97. package/dist/agent/symbol-lookup.js.map +1 -0
  98. package/dist/agent/type-hierarchy.d.ts +39 -0
  99. package/dist/agent/type-hierarchy.d.ts.map +1 -0
  100. package/dist/agent/type-hierarchy.js +125 -0
  101. package/dist/agent/type-hierarchy.js.map +1 -0
  102. package/dist/agent/workspace-symbols.d.ts +18 -0
  103. package/dist/agent/workspace-symbols.d.ts.map +1 -0
  104. package/dist/agent/workspace-symbols.js +75 -0
  105. package/dist/agent/workspace-symbols.js.map +1 -0
  106. package/dist/agent-tools.d.ts +6 -6
  107. package/dist/agent-tools.d.ts.map +1 -1
  108. package/dist/agent-tools.js +6 -6
  109. package/dist/agent-tools.js.map +1 -1
  110. package/dist/agent.d.ts +18 -18
  111. package/dist/agent.d.ts.map +1 -1
  112. package/dist/agent.js +10 -10
  113. package/dist/agent.js.map +1 -1
  114. package/dist/analysis-summary.d.ts +19 -0
  115. package/dist/analysis-summary.d.ts.map +1 -0
  116. package/dist/analysis-summary.js +80 -0
  117. package/dist/analysis-summary.js.map +1 -0
  118. package/dist/bin/cli.js +37347 -36812
  119. package/dist/bin/query-index-worker.js +4382 -0
  120. package/dist/bin/raw-query-worker.js +383 -0
  121. package/dist/bootstrap/tree-sitter-languages.d.ts +5 -0
  122. package/dist/bootstrap/tree-sitter-languages.d.ts.map +1 -0
  123. package/dist/bootstrap/tree-sitter-languages.js +41 -0
  124. package/dist/bootstrap/tree-sitter-languages.js.map +1 -0
  125. package/dist/chunking/chunk-blocks.d.ts +9 -0
  126. package/dist/chunking/chunk-blocks.d.ts.map +1 -0
  127. package/dist/chunking/chunk-blocks.js +60 -0
  128. package/dist/chunking/chunk-blocks.js.map +1 -0
  129. package/dist/chunking/chunk-file.d.ts +39 -0
  130. package/dist/chunking/chunk-file.d.ts.map +1 -0
  131. package/dist/chunking/chunk-file.js +152 -0
  132. package/dist/chunking/chunk-file.js.map +1 -0
  133. package/dist/chunking/chunk-id.d.ts +7 -0
  134. package/dist/chunking/chunk-id.d.ts.map +1 -0
  135. package/dist/chunking/chunk-id.js +30 -0
  136. package/dist/chunking/chunk-id.js.map +1 -0
  137. package/dist/chunking/chunk-matches.d.ts +4 -0
  138. package/dist/chunking/chunk-matches.d.ts.map +1 -0
  139. package/dist/chunking/chunk-matches.js +65 -0
  140. package/dist/chunking/chunk-matches.js.map +1 -0
  141. package/dist/chunking/chunk-merge.d.ts +4 -0
  142. package/dist/chunking/chunk-merge.d.ts.map +1 -0
  143. package/dist/chunking/chunk-merge.js +144 -0
  144. package/dist/chunking/chunk-merge.js.map +1 -0
  145. package/dist/chunking/chunk-sfc.d.ts +18 -0
  146. package/dist/chunking/chunk-sfc.d.ts.map +1 -0
  147. package/dist/chunking/chunk-sfc.js +165 -0
  148. package/dist/chunking/chunk-sfc.js.map +1 -0
  149. package/dist/chunking/chunk-split.d.ts +6 -0
  150. package/dist/chunking/chunk-split.d.ts.map +1 -0
  151. package/dist/chunking/chunk-split.js +155 -0
  152. package/dist/chunking/chunk-split.js.map +1 -0
  153. package/dist/chunking/chunk-text-file.d.ts +28 -0
  154. package/dist/chunking/chunk-text-file.d.ts.map +1 -0
  155. package/dist/chunking/chunk-text-file.js +107 -0
  156. package/dist/chunking/chunk-text-file.js.map +1 -0
  157. package/dist/chunking/language-config.d.ts +35 -0
  158. package/dist/chunking/language-config.d.ts.map +1 -0
  159. package/dist/chunking/language-config.js +24 -0
  160. package/dist/chunking/language-config.js.map +1 -0
  161. package/dist/cli/affected.js +1 -1
  162. package/dist/cli/affected.js.map +1 -1
  163. package/dist/cli/call-hierarchy.d.ts +6 -0
  164. package/dist/cli/call-hierarchy.d.ts.map +1 -0
  165. package/dist/cli/call-hierarchy.js +72 -0
  166. package/dist/cli/call-hierarchy.js.map +1 -0
  167. package/dist/cli/chunk.js +5 -5
  168. package/dist/cli/chunk.js.map +1 -1
  169. package/dist/cli/command-catalog.d.ts +14 -0
  170. package/dist/cli/command-catalog.d.ts.map +1 -0
  171. package/dist/cli/command-catalog.js +118 -0
  172. package/dist/cli/command-catalog.js.map +1 -0
  173. package/dist/cli/command-table.d.ts +16 -0
  174. package/dist/cli/command-table.d.ts.map +1 -0
  175. package/dist/cli/command-table.js +758 -0
  176. package/dist/cli/command-table.js.map +1 -0
  177. package/dist/cli/compile-cache.d.ts +22 -0
  178. package/dist/cli/compile-cache.d.ts.map +1 -0
  179. package/dist/cli/compile-cache.js +81 -0
  180. package/dist/cli/compile-cache.js.map +1 -0
  181. package/dist/cli/discovery-globs.d.ts +11 -0
  182. package/dist/cli/discovery-globs.d.ts.map +1 -0
  183. package/dist/cli/discovery-globs.js +74 -0
  184. package/dist/cli/discovery-globs.js.map +1 -0
  185. package/dist/cli/doctor.d.ts +1 -1
  186. package/dist/cli/doctor.d.ts.map +1 -1
  187. package/dist/cli/doctor.js +3 -3
  188. package/dist/cli/doctor.js.map +1 -1
  189. package/dist/cli/drift.d.ts +1 -1
  190. package/dist/cli/drift.d.ts.map +1 -1
  191. package/dist/cli/duplicate-similarity.d.ts +10 -0
  192. package/dist/cli/duplicate-similarity.d.ts.map +1 -0
  193. package/dist/cli/duplicate-similarity.js +20 -0
  194. package/dist/cli/duplicate-similarity.js.map +1 -0
  195. package/dist/cli/file.js +2 -2
  196. package/dist/cli/file.js.map +1 -1
  197. package/dist/cli/graph-delta.d.ts +25 -0
  198. package/dist/cli/graph-delta.d.ts.map +1 -0
  199. package/dist/cli/graph-delta.js +80 -0
  200. package/dist/cli/graph-delta.js.map +1 -0
  201. package/dist/cli/graph-queries.d.ts +23 -0
  202. package/dist/cli/graph-queries.d.ts.map +1 -0
  203. package/dist/cli/graph-queries.js +265 -0
  204. package/dist/cli/graph-queries.js.map +1 -0
  205. package/dist/cli/graph.d.ts +2 -2
  206. package/dist/cli/graph.d.ts.map +1 -1
  207. package/dist/cli/graph.js +2 -2
  208. package/dist/cli/graph.js.map +1 -1
  209. package/dist/cli/grep.d.ts +1 -1
  210. package/dist/cli/grep.d.ts.map +1 -1
  211. package/dist/cli/grep.js +1 -1
  212. package/dist/cli/grep.js.map +1 -1
  213. package/dist/cli/help.d.ts +1 -1
  214. package/dist/cli/help.d.ts.map +1 -1
  215. package/dist/cli/help.js +2 -2
  216. package/dist/cli/help.js.map +1 -1
  217. package/dist/cli/impact.d.ts +2 -2
  218. package/dist/cli/impact.d.ts.map +1 -1
  219. package/dist/cli/impact.js +4 -4
  220. package/dist/cli/impact.js.map +1 -1
  221. package/dist/cli/index-policy.d.ts +36 -0
  222. package/dist/cli/index-policy.d.ts.map +1 -0
  223. package/dist/cli/index-policy.js +169 -0
  224. package/dist/cli/index-policy.js.map +1 -0
  225. package/dist/cli/index.d.ts +2 -2
  226. package/dist/cli/index.d.ts.map +1 -1
  227. package/dist/cli/index.js +1 -1
  228. package/dist/cli/index.js.map +1 -1
  229. package/dist/cli/inspect.d.ts +2 -2
  230. package/dist/cli/inspect.d.ts.map +1 -1
  231. package/dist/cli/inspect.js +2 -2
  232. package/dist/cli/inspect.js.map +1 -1
  233. package/dist/cli/invocation-context.d.ts +77 -0
  234. package/dist/cli/invocation-context.d.ts.map +1 -0
  235. package/dist/cli/invocation-context.js +423 -0
  236. package/dist/cli/invocation-context.js.map +1 -0
  237. package/dist/cli/links.d.ts +2 -2
  238. package/dist/cli/links.d.ts.map +1 -1
  239. package/dist/cli/links.js +1 -1
  240. package/dist/cli/links.js.map +1 -1
  241. package/dist/cli/location.d.ts +1 -1
  242. package/dist/cli/location.d.ts.map +1 -1
  243. package/dist/cli/location.js +1 -1
  244. package/dist/cli/location.js.map +1 -1
  245. package/dist/cli/navigation.d.ts +2 -2
  246. package/dist/cli/navigation.d.ts.map +1 -1
  247. package/dist/cli/navigation.js +2 -2
  248. package/dist/cli/navigation.js.map +1 -1
  249. package/dist/cli/packet.js +1 -1
  250. package/dist/cli/packet.js.map +1 -1
  251. package/dist/cli/project-file.d.ts +13 -0
  252. package/dist/cli/project-file.d.ts.map +1 -0
  253. package/dist/cli/project-file.js +23 -0
  254. package/dist/cli/project-file.js.map +1 -0
  255. package/dist/cli/refactor-plan.d.ts +6 -0
  256. package/dist/cli/refactor-plan.d.ts.map +1 -0
  257. package/dist/cli/refactor-plan.js +84 -0
  258. package/dist/cli/refactor-plan.js.map +1 -0
  259. package/dist/cli/rename-preview.d.ts +4 -0
  260. package/dist/cli/rename-preview.d.ts.map +1 -0
  261. package/dist/cli/rename-preview.js +92 -0
  262. package/dist/cli/rename-preview.js.map +1 -0
  263. package/dist/cli/review.d.ts +2 -2
  264. package/dist/cli/review.d.ts.map +1 -1
  265. package/dist/cli/review.js +4 -4
  266. package/dist/cli/review.js.map +1 -1
  267. package/dist/cli/root-policy.d.ts +53 -0
  268. package/dist/cli/root-policy.d.ts.map +1 -0
  269. package/dist/cli/root-policy.js +221 -0
  270. package/dist/cli/root-policy.js.map +1 -0
  271. package/dist/cli/server.js +5 -5
  272. package/dist/cli/server.js.map +1 -1
  273. package/dist/cli/skill.js +1 -1
  274. package/dist/cli/skill.js.map +1 -1
  275. package/dist/cli/symbols.js +1 -1
  276. package/dist/cli/symbols.js.map +1 -1
  277. package/dist/cli/type-hierarchy.d.ts +6 -0
  278. package/dist/cli/type-hierarchy.d.ts.map +1 -0
  279. package/dist/cli/type-hierarchy.js +90 -0
  280. package/dist/cli/type-hierarchy.js.map +1 -0
  281. package/dist/cli/viewer.js +2 -2
  282. package/dist/cli/viewer.js.map +1 -1
  283. package/dist/cli-bootstrap.d.ts +3 -0
  284. package/dist/cli-bootstrap.d.ts.map +1 -0
  285. package/dist/cli-bootstrap.js +10 -0
  286. package/dist/cli-bootstrap.js.map +1 -0
  287. package/dist/cli.d.ts +1 -1
  288. package/dist/cli.d.ts.map +1 -1
  289. package/dist/cli.js +5 -5
  290. package/dist/cli.js.map +1 -1
  291. package/dist/config.d.ts +1 -1
  292. package/dist/config.d.ts.map +1 -1
  293. package/dist/config.js +0 -1
  294. package/dist/config.js.map +1 -1
  295. package/dist/document-links/asciidoc.d.ts.map +1 -0
  296. package/dist/document-links/asciidoc.js.map +1 -0
  297. package/dist/document-links/check.d.ts +32 -0
  298. package/dist/document-links/check.d.ts.map +1 -0
  299. package/dist/document-links/check.js +286 -0
  300. package/dist/document-links/check.js.map +1 -0
  301. package/dist/document-links/html.d.ts.map +1 -0
  302. package/dist/document-links/html.js.map +1 -0
  303. package/dist/document-links/markdown.d.ts.map +1 -0
  304. package/dist/document-links/markdown.js.map +1 -0
  305. package/dist/document-links/rst.d.ts.map +1 -0
  306. package/dist/document-links/rst.js.map +1 -0
  307. package/dist/document-links/sfc.d.ts.map +1 -0
  308. package/dist/document-links/sfc.js.map +1 -0
  309. package/dist/document-links/shared.d.ts.map +1 -0
  310. package/dist/document-links/shared.js.map +1 -0
  311. package/dist/document-links.d.ts +12 -0
  312. package/dist/document-links.d.ts.map +1 -0
  313. package/dist/document-links.js +49 -0
  314. package/dist/document-links.js.map +1 -0
  315. package/dist/drift/snapshot.js +2 -2
  316. package/dist/drift/snapshot.js.map +1 -1
  317. package/dist/drift/types.d.ts +2 -2
  318. package/dist/drift/types.d.ts.map +1 -1
  319. package/dist/duplicates/unit-cache.d.ts +46 -0
  320. package/dist/duplicates/unit-cache.d.ts.map +1 -0
  321. package/dist/duplicates/unit-cache.js +512 -0
  322. package/dist/duplicates/unit-cache.js.map +1 -0
  323. package/dist/duplicates/units.d.ts +1 -1
  324. package/dist/duplicates/units.d.ts.map +1 -1
  325. package/dist/duplicates/units.js +6 -6
  326. package/dist/duplicates/units.js.map +1 -1
  327. package/dist/duplicates-leads.d.ts +39 -0
  328. package/dist/duplicates-leads.d.ts.map +1 -0
  329. package/dist/duplicates-leads.js +112 -0
  330. package/dist/duplicates-leads.js.map +1 -0
  331. package/dist/duplicates.d.ts +1 -1
  332. package/dist/duplicates.d.ts.map +1 -1
  333. package/dist/duplicates.js +2 -2
  334. package/dist/duplicates.js.map +1 -1
  335. package/dist/graph-builder.d.ts +1 -1
  336. package/dist/graph-builder.d.ts.map +1 -1
  337. package/dist/graph-builder.js +4 -4
  338. package/dist/graph-builder.js.map +1 -1
  339. package/dist/graph-edge-collector.d.ts +3 -3
  340. package/dist/graph-edge-collector.d.ts.map +1 -1
  341. package/dist/graph-edge-collector.js +6 -6
  342. package/dist/graph-edge-collector.js.map +1 -1
  343. package/dist/graphs/cycles.js +1 -1
  344. package/dist/graphs/cycles.js.map +1 -1
  345. package/dist/graphs/edge-resolution.d.ts +25 -0
  346. package/dist/graphs/edge-resolution.d.ts.map +1 -0
  347. package/dist/graphs/edge-resolution.js +97 -0
  348. package/dist/graphs/edge-resolution.js.map +1 -0
  349. package/dist/graphs/grep.d.ts +1 -1
  350. package/dist/graphs/grep.d.ts.map +1 -1
  351. package/dist/graphs/grep.js +4 -4
  352. package/dist/graphs/grep.js.map +1 -1
  353. package/dist/graphs/specifiers.d.ts +1 -1
  354. package/dist/graphs/specifiers.d.ts.map +1 -1
  355. package/dist/graphs/specifiers.js +5 -5
  356. package/dist/graphs/specifiers.js.map +1 -1
  357. package/dist/graphs/symbol-graph-detailed/ast.d.ts +0 -1
  358. package/dist/graphs/symbol-graph-detailed/ast.d.ts.map +1 -1
  359. package/dist/graphs/symbol-graph-detailed/ast.js +1 -8
  360. package/dist/graphs/symbol-graph-detailed/ast.js.map +1 -1
  361. package/dist/graphs/symbol-graph-detailed/edge-passes.d.ts +35 -0
  362. package/dist/graphs/symbol-graph-detailed/edge-passes.d.ts.map +1 -0
  363. package/dist/graphs/symbol-graph-detailed/edge-passes.js +676 -0
  364. package/dist/graphs/symbol-graph-detailed/edge-passes.js.map +1 -0
  365. package/dist/graphs/symbol-graph-detailed/import-aliases.d.ts +10 -0
  366. package/dist/graphs/symbol-graph-detailed/import-aliases.d.ts.map +1 -0
  367. package/dist/graphs/symbol-graph-detailed/import-aliases.js +44 -0
  368. package/dist/graphs/symbol-graph-detailed/import-aliases.js.map +1 -0
  369. package/dist/graphs/symbol-graph-detailed/member-chains.d.ts +17 -0
  370. package/dist/graphs/symbol-graph-detailed/member-chains.d.ts.map +1 -0
  371. package/dist/graphs/symbol-graph-detailed/member-chains.js +30 -0
  372. package/dist/graphs/symbol-graph-detailed/member-chains.js.map +1 -0
  373. package/dist/graphs/symbol-graph-detailed/receiver-calls.d.ts +69 -0
  374. package/dist/graphs/symbol-graph-detailed/receiver-calls.d.ts.map +1 -0
  375. package/dist/graphs/symbol-graph-detailed/receiver-calls.js +408 -0
  376. package/dist/graphs/symbol-graph-detailed/receiver-calls.js.map +1 -0
  377. package/dist/graphs/symbol-graph-detailed.d.ts.map +1 -1
  378. package/dist/graphs/symbol-graph-detailed.js +22 -12
  379. package/dist/graphs/symbol-graph-detailed.js.map +1 -1
  380. package/dist/graphs/types.d.ts +1 -1
  381. package/dist/graphs/types.d.ts.map +1 -1
  382. package/dist/graphs/unresolved.js +1 -1
  383. package/dist/graphs/unresolved.js.map +1 -1
  384. package/dist/impact/analyzer.js +4 -4
  385. package/dist/impact/analyzer.js.map +1 -1
  386. package/dist/impact/call-compatibility/text-scanner.d.ts +23 -0
  387. package/dist/impact/call-compatibility/text-scanner.d.ts.map +1 -0
  388. package/dist/impact/call-compatibility/text-scanner.js +615 -0
  389. package/dist/impact/call-compatibility/text-scanner.js.map +1 -0
  390. package/dist/impact/call-compatibility.d.ts +24 -0
  391. package/dist/impact/call-compatibility.d.ts.map +1 -0
  392. package/dist/impact/call-compatibility.js +1023 -0
  393. package/dist/impact/call-compatibility.js.map +1 -0
  394. package/dist/impact/context.js +1 -1
  395. package/dist/impact/context.js.map +1 -1
  396. package/dist/impact/direct.d.ts +1 -1
  397. package/dist/impact/direct.d.ts.map +1 -1
  398. package/dist/impact/index.d.ts +1 -1
  399. package/dist/impact/index.d.ts.map +1 -1
  400. package/dist/impact/index.js +1 -1
  401. package/dist/impact/index.js.map +1 -1
  402. package/dist/impact/map.js +1 -1
  403. package/dist/impact/map.js.map +1 -1
  404. package/dist/impact/member-resolution-coverage.d.ts +14 -0
  405. package/dist/impact/member-resolution-coverage.d.ts.map +1 -0
  406. package/dist/impact/member-resolution-coverage.js +42 -0
  407. package/dist/impact/member-resolution-coverage.js.map +1 -0
  408. package/dist/impact/reference-cache.d.ts +12 -0
  409. package/dist/impact/reference-cache.d.ts.map +1 -0
  410. package/dist/impact/reference-cache.js +101 -0
  411. package/dist/impact/reference-cache.js.map +1 -0
  412. package/dist/impact/report-compact.d.ts +8 -0
  413. package/dist/impact/report-compact.d.ts.map +1 -0
  414. package/dist/impact/report-compact.js +153 -0
  415. package/dist/impact/report-compact.js.map +1 -0
  416. package/dist/impact/report-full.d.ts +10 -0
  417. package/dist/impact/report-full.d.ts.map +1 -0
  418. package/dist/impact/report-full.js +67 -0
  419. package/dist/impact/report-full.js.map +1 -0
  420. package/dist/impact/report-parts.d.ts +51 -0
  421. package/dist/impact/report-parts.d.ts.map +1 -0
  422. package/dist/impact/report-parts.js +2 -0
  423. package/dist/impact/report-parts.js.map +1 -0
  424. package/dist/impact/report-shared.d.ts +76 -0
  425. package/dist/impact/report-shared.d.ts.map +1 -0
  426. package/dist/impact/report-shared.js +130 -0
  427. package/dist/impact/report-shared.js.map +1 -0
  428. package/dist/impact/report-suggestions.js +2 -2
  429. package/dist/impact/report-suggestions.js.map +1 -1
  430. package/dist/impact/report.js +5 -5
  431. package/dist/impact/report.js.map +1 -1
  432. package/dist/impact/streaming.d.ts +1 -1
  433. package/dist/impact/streaming.d.ts.map +1 -1
  434. package/dist/impact/streaming.js +2 -2
  435. package/dist/impact/streaming.js.map +1 -1
  436. package/dist/impact/test-patterns.d.ts +6 -0
  437. package/dist/impact/test-patterns.d.ts.map +1 -0
  438. package/dist/impact/test-patterns.js +65 -0
  439. package/dist/impact/test-patterns.js.map +1 -0
  440. package/dist/impact/transitive.js +1 -1
  441. package/dist/impact/transitive.js.map +1 -1
  442. package/dist/impact/types.d.ts +3 -3
  443. package/dist/impact/types.d.ts.map +1 -1
  444. package/dist/impact/types.js +1 -1
  445. package/dist/impact/types.js.map +1 -1
  446. package/dist/index.d.ts +10 -10
  447. package/dist/index.d.ts.map +1 -1
  448. package/dist/index.js +9 -9
  449. package/dist/index.js.map +1 -1
  450. package/dist/indexer/build-cache/manifest.d.ts +4 -4
  451. package/dist/indexer/build-cache/manifest.d.ts.map +1 -1
  452. package/dist/indexer/build-cache/manifest.js +9 -34
  453. package/dist/indexer/build-cache/manifest.js.map +1 -1
  454. package/dist/indexer/build-cache/module-cache.d.ts +1 -1
  455. package/dist/indexer/build-cache/module-cache.d.ts.map +1 -1
  456. package/dist/indexer/build-cache/module-cache.js +4 -4
  457. package/dist/indexer/build-cache/module-cache.js.map +1 -1
  458. package/dist/indexer/build-cache/options.d.ts +6 -4
  459. package/dist/indexer/build-cache/options.d.ts.map +1 -1
  460. package/dist/indexer/build-cache/options.js +9 -7
  461. package/dist/indexer/build-cache/options.js.map +1 -1
  462. package/dist/indexer/build-cache/project-snapshot.d.ts +1 -1
  463. package/dist/indexer/build-cache/project-snapshot.d.ts.map +1 -1
  464. package/dist/indexer/build-cache/project-snapshot.js +16 -19
  465. package/dist/indexer/build-cache/project-snapshot.js.map +1 -1
  466. package/dist/indexer/build-cache/reports.js +1 -1
  467. package/dist/indexer/build-cache/reports.js.map +1 -1
  468. package/dist/indexer/build-cache/resolver-environment.d.ts +6 -2
  469. package/dist/indexer/build-cache/resolver-environment.d.ts.map +1 -1
  470. package/dist/indexer/build-cache/resolver-environment.js +41 -5
  471. package/dist/indexer/build-cache/resolver-environment.js.map +1 -1
  472. package/dist/indexer/build-index.d.ts.map +1 -1
  473. package/dist/indexer/build-index.js +63 -29
  474. package/dist/indexer/build-index.js.map +1 -1
  475. package/dist/indexer/build-manifest.d.ts +3 -0
  476. package/dist/indexer/build-manifest.d.ts.map +1 -1
  477. package/dist/indexer/build-manifest.js +1 -1
  478. package/dist/indexer/build-manifest.js.map +1 -1
  479. package/dist/indexer/build-workers.d.ts +1 -1
  480. package/dist/indexer/build-workers.d.ts.map +1 -1
  481. package/dist/indexer/build-workers.js +6 -6
  482. package/dist/indexer/build-workers.js.map +1 -1
  483. package/dist/indexer/finalize.d.ts +3 -2
  484. package/dist/indexer/finalize.d.ts.map +1 -1
  485. package/dist/indexer/finalize.js +2 -1
  486. package/dist/indexer/finalize.js.map +1 -1
  487. package/dist/indexer/imports/graph-only.d.ts +13 -0
  488. package/dist/indexer/imports/graph-only.d.ts.map +1 -0
  489. package/dist/indexer/imports/graph-only.js +40 -0
  490. package/dist/indexer/imports/graph-only.js.map +1 -0
  491. package/dist/indexer/imports/js-text-imports.d.ts +9 -0
  492. package/dist/indexer/imports/js-text-imports.d.ts.map +1 -0
  493. package/dist/indexer/imports/js-text-imports.js +181 -0
  494. package/dist/indexer/imports/js-text-imports.js.map +1 -0
  495. package/dist/indexer/imports/language-specific.d.ts +26 -0
  496. package/dist/indexer/imports/language-specific.d.ts.map +1 -0
  497. package/dist/indexer/imports/language-specific.js +449 -0
  498. package/dist/indexer/imports/language-specific.js.map +1 -0
  499. package/dist/indexer/imports/native-captures.d.ts +16 -0
  500. package/dist/indexer/imports/native-captures.d.ts.map +1 -0
  501. package/dist/indexer/imports/native-captures.js +142 -0
  502. package/dist/indexer/imports/native-captures.js.map +1 -0
  503. package/dist/indexer/imports.d.ts +1 -1
  504. package/dist/indexer/imports.d.ts.map +1 -1
  505. package/dist/indexer/imports.js +7 -7
  506. package/dist/indexer/imports.js.map +1 -1
  507. package/dist/indexer/incremental-plan.d.ts +4 -3
  508. package/dist/indexer/incremental-plan.d.ts.map +1 -1
  509. package/dist/indexer/incremental-plan.js +9 -5
  510. package/dist/indexer/incremental-plan.js.map +1 -1
  511. package/dist/indexer/locals-and-exports.d.ts +1 -1
  512. package/dist/indexer/locals-and-exports.d.ts.map +1 -1
  513. package/dist/indexer/locals-and-exports.js +5 -5
  514. package/dist/indexer/locals-and-exports.js.map +1 -1
  515. package/dist/indexer/navigation-goto.js +1 -1
  516. package/dist/indexer/navigation-goto.js.map +1 -1
  517. package/dist/indexer/navigation-local.d.ts +2 -1
  518. package/dist/indexer/navigation-local.d.ts.map +1 -1
  519. package/dist/indexer/navigation-local.js +26 -21
  520. package/dist/indexer/navigation-local.js.map +1 -1
  521. package/dist/indexer/navigation.js +1 -1
  522. package/dist/indexer/navigation.js.map +1 -1
  523. package/dist/indexer/parse-context.d.ts +2 -2
  524. package/dist/indexer/parse-context.d.ts.map +1 -1
  525. package/dist/indexer/parse-context.js +5 -5
  526. package/dist/indexer/parse-context.js.map +1 -1
  527. package/dist/indexer/scope.d.ts +1 -1
  528. package/dist/indexer/scope.d.ts.map +1 -1
  529. package/dist/indexer/scope.js +2 -2
  530. package/dist/indexer/scope.js.map +1 -1
  531. package/dist/indexer/shared.d.ts +1 -1
  532. package/dist/indexer/shared.d.ts.map +1 -1
  533. package/dist/indexer/shared.js +1 -1
  534. package/dist/indexer/shared.js.map +1 -1
  535. package/dist/indexer/symbols.js +1 -1
  536. package/dist/indexer/symbols.js.map +1 -1
  537. package/dist/indexer/types.d.ts +4 -2
  538. package/dist/indexer/types.d.ts.map +1 -1
  539. package/dist/indexer.d.ts +2 -2
  540. package/dist/indexer.d.ts.map +1 -1
  541. package/dist/installer/locks.js +1 -1
  542. package/dist/installer/locks.js.map +1 -1
  543. package/dist/installer/registry.js +1 -1
  544. package/dist/installer/registry.js.map +1 -1
  545. package/dist/languages/definitions/adoc.js +1 -1
  546. package/dist/languages/definitions/adoc.js.map +1 -1
  547. package/dist/languages/definitions/astro.js +1 -1
  548. package/dist/languages/definitions/astro.js.map +1 -1
  549. package/dist/languages/definitions/c-family.d.ts +34 -0
  550. package/dist/languages/definitions/c-family.d.ts.map +1 -0
  551. package/dist/languages/definitions/c-family.js +177 -0
  552. package/dist/languages/definitions/c-family.js.map +1 -0
  553. package/dist/languages/definitions/c.js +1 -1
  554. package/dist/languages/definitions/c.js.map +1 -1
  555. package/dist/languages/definitions/cpp.js +1 -1
  556. package/dist/languages/definitions/cpp.js.map +1 -1
  557. package/dist/languages/definitions/css-like.d.ts +5 -0
  558. package/dist/languages/definitions/css-like.d.ts.map +1 -0
  559. package/dist/languages/definitions/css-like.js +32 -0
  560. package/dist/languages/definitions/css-like.js.map +1 -0
  561. package/dist/languages/definitions/css.js +1 -1
  562. package/dist/languages/definitions/css.js.map +1 -1
  563. package/dist/languages/definitions/hbs.js +1 -1
  564. package/dist/languages/definitions/hbs.js.map +1 -1
  565. package/dist/languages/definitions/html-stub.d.ts +18 -0
  566. package/dist/languages/definitions/html-stub.d.ts.map +1 -0
  567. package/dist/languages/definitions/html-stub.js +36 -0
  568. package/dist/languages/definitions/html-stub.js.map +1 -0
  569. package/dist/languages/definitions/javascript.js +1 -1
  570. package/dist/languages/definitions/javascript.js.map +1 -1
  571. package/dist/languages/definitions/js-family.d.ts +5 -0
  572. package/dist/languages/definitions/js-family.d.ts.map +1 -0
  573. package/dist/languages/definitions/js-family.js +75 -0
  574. package/dist/languages/definitions/js-family.js.map +1 -0
  575. package/dist/languages/definitions/less.js +1 -1
  576. package/dist/languages/definitions/less.js.map +1 -1
  577. package/dist/languages/definitions/markdown.js +1 -1
  578. package/dist/languages/definitions/markdown.js.map +1 -1
  579. package/dist/languages/definitions/mdx.js +1 -1
  580. package/dist/languages/definitions/mdx.js.map +1 -1
  581. package/dist/languages/definitions/rst.js +1 -1
  582. package/dist/languages/definitions/rst.js.map +1 -1
  583. package/dist/languages/definitions/typescript.js +1 -1
  584. package/dist/languages/definitions/typescript.js.map +1 -1
  585. package/dist/languages/file-prep.d.ts +36 -0
  586. package/dist/languages/file-prep.d.ts.map +1 -0
  587. package/dist/languages/file-prep.js +76 -0
  588. package/dist/languages/file-prep.js.map +1 -0
  589. package/dist/languages/import-statement-parsers.d.ts +57 -0
  590. package/dist/languages/import-statement-parsers.d.ts.map +1 -0
  591. package/dist/languages/import-statement-parsers.js +383 -0
  592. package/dist/languages/import-statement-parsers.js.map +1 -0
  593. package/dist/languages/query-generator.d.ts +6 -0
  594. package/dist/languages/query-generator.d.ts.map +1 -0
  595. package/dist/languages/query-generator.js +46 -0
  596. package/dist/languages/query-generator.js.map +1 -0
  597. package/dist/lifecycle/manifest.d.ts +1 -1
  598. package/dist/lifecycle/manifest.d.ts.map +1 -1
  599. package/dist/lifecycle/manifest.js +6 -4
  600. package/dist/lifecycle/manifest.js.map +1 -1
  601. package/dist/mcp/handlers.d.ts +7 -7
  602. package/dist/mcp/handlers.d.ts.map +1 -1
  603. package/dist/mcp/handlers.js +12 -15
  604. package/dist/mcp/handlers.js.map +1 -1
  605. package/dist/mcp/http-transport.d.ts +14 -0
  606. package/dist/mcp/http-transport.d.ts.map +1 -0
  607. package/dist/mcp/http-transport.js +185 -0
  608. package/dist/mcp/http-transport.js.map +1 -0
  609. package/dist/mcp/legacy-sessions.d.ts +38 -0
  610. package/dist/mcp/legacy-sessions.d.ts.map +1 -0
  611. package/dist/mcp/legacy-sessions.js +264 -0
  612. package/dist/mcp/legacy-sessions.js.map +1 -0
  613. package/dist/mcp/lifecycle-health.d.ts +12 -0
  614. package/dist/mcp/lifecycle-health.d.ts.map +1 -0
  615. package/dist/mcp/lifecycle-health.js +37 -0
  616. package/dist/mcp/lifecycle-health.js.map +1 -0
  617. package/dist/mcp/protocol.d.ts +1 -1
  618. package/dist/mcp/protocol.d.ts.map +1 -1
  619. package/dist/mcp/protocol.js +3 -3
  620. package/dist/mcp/protocol.js.map +1 -1
  621. package/dist/mcp/security.js +1 -1
  622. package/dist/mcp/security.js.map +1 -1
  623. package/dist/mcp/server.d.ts +4 -4
  624. package/dist/mcp/server.d.ts.map +1 -1
  625. package/dist/mcp/server.js +6 -6
  626. package/dist/mcp/server.js.map +1 -1
  627. package/dist/mcp/sqlite-guard.d.ts +3 -0
  628. package/dist/mcp/sqlite-guard.d.ts.map +1 -0
  629. package/dist/mcp/sqlite-guard.js +35 -0
  630. package/dist/mcp/sqlite-guard.js.map +1 -0
  631. package/dist/mcp/stdio-lifecycle.d.ts +23 -0
  632. package/dist/mcp/stdio-lifecycle.d.ts.map +1 -0
  633. package/dist/mcp/stdio-lifecycle.js +83 -0
  634. package/dist/mcp/stdio-lifecycle.js.map +1 -0
  635. package/dist/mcp/tools.js +2 -2
  636. package/dist/mcp/tools.js.map +1 -1
  637. package/dist/native/binding-loader.d.ts +51 -0
  638. package/dist/native/binding-loader.d.ts.map +1 -0
  639. package/dist/native/binding-loader.js +223 -0
  640. package/dist/native/binding-loader.js.map +1 -0
  641. package/dist/native/byte-index.d.ts +26 -0
  642. package/dist/native/byte-index.d.ts.map +1 -0
  643. package/dist/native/byte-index.js +70 -0
  644. package/dist/native/byte-index.js.map +1 -0
  645. package/dist/native/execution.js +1 -1
  646. package/dist/native/execution.js.map +1 -1
  647. package/dist/native/js-bridge.d.ts +7 -0
  648. package/dist/native/js-bridge.d.ts.map +1 -0
  649. package/dist/native/js-bridge.js +20 -0
  650. package/dist/native/js-bridge.js.map +1 -0
  651. package/dist/native/native-backend-report.d.ts +22 -0
  652. package/dist/native/native-backend-report.d.ts.map +1 -0
  653. package/dist/native/native-backend-report.js +102 -0
  654. package/dist/native/native-backend-report.js.map +1 -0
  655. package/dist/native/projected-tree.d.ts +53 -0
  656. package/dist/native/projected-tree.d.ts.map +1 -0
  657. package/dist/native/projected-tree.js +180 -0
  658. package/dist/native/projected-tree.js.map +1 -0
  659. package/dist/native/query-results.d.ts +12 -0
  660. package/dist/native/query-results.d.ts.map +1 -0
  661. package/dist/native/query-results.js +34 -0
  662. package/dist/native/query-results.js.map +1 -0
  663. package/dist/native/runtime-cache.d.ts +128 -0
  664. package/dist/native/runtime-cache.d.ts.map +1 -0
  665. package/dist/native/runtime-cache.js +667 -0
  666. package/dist/native/runtime-cache.js.map +1 -0
  667. package/dist/native/runtime.js +3 -3
  668. package/dist/native/runtime.js.map +1 -1
  669. package/dist/native/tree-shape.d.ts +21 -0
  670. package/dist/native/tree-shape.d.ts.map +1 -0
  671. package/dist/native/tree-shape.js +28 -0
  672. package/dist/native/tree-shape.js.map +1 -0
  673. package/dist/native/tree-sitter-native.d.ts +6 -0
  674. package/dist/native/tree-sitter-native.d.ts.map +1 -0
  675. package/dist/native/tree-sitter-native.js +5 -0
  676. package/dist/native/tree-sitter-native.js.map +1 -0
  677. package/dist/review/deleted.js +2 -2
  678. package/dist/review/deleted.js.map +1 -1
  679. package/dist/review/report.d.ts +3 -3
  680. package/dist/review/report.d.ts.map +1 -1
  681. package/dist/review/report.js +2 -2
  682. package/dist/review/report.js.map +1 -1
  683. package/dist/review/summaries.js +3 -3
  684. package/dist/review/summaries.js.map +1 -1
  685. package/dist/review/types.d.ts +3 -3
  686. package/dist/review/types.d.ts.map +1 -1
  687. package/dist/review.js +3 -3
  688. package/dist/review.js.map +1 -1
  689. package/dist/runtime-identity.d.ts +27 -0
  690. package/dist/runtime-identity.d.ts.map +1 -0
  691. package/dist/runtime-identity.js +75 -0
  692. package/dist/runtime-identity.js.map +1 -0
  693. package/dist/session.js +1 -1
  694. package/dist/session.js.map +1 -1
  695. package/dist/sql/classify-sql-file.d.ts +3 -0
  696. package/dist/sql/classify-sql-file.d.ts.map +1 -0
  697. package/dist/sql/classify-sql-file.js +42 -0
  698. package/dist/sql/classify-sql-file.js.map +1 -0
  699. package/dist/sql/extract-facts.d.ts +4 -0
  700. package/dist/sql/extract-facts.d.ts.map +1 -0
  701. package/dist/sql/extract-facts.js +511 -0
  702. package/dist/sql/extract-facts.js.map +1 -0
  703. package/dist/sql/graph.js +1 -1
  704. package/dist/sql/graph.js.map +1 -1
  705. package/dist/sql/index.d.ts +2 -2
  706. package/dist/sql/index.d.ts.map +1 -1
  707. package/dist/sql/index.js +2 -2
  708. package/dist/sql/index.js.map +1 -1
  709. package/dist/sql/navigation.js +1 -1
  710. package/dist/sql/navigation.js.map +1 -1
  711. package/dist/sql/review.js +2 -2
  712. package/dist/sql/review.js.map +1 -1
  713. package/dist/sql/source-graph.d.ts +19 -0
  714. package/dist/sql/source-graph.d.ts.map +1 -0
  715. package/dist/sql/source-graph.js +195 -0
  716. package/dist/sql/source-graph.js.map +1 -0
  717. package/dist/sqlite/query.d.ts +2 -2
  718. package/dist/sqlite/query.d.ts.map +1 -1
  719. package/dist/sqlite/query.js +3 -3
  720. package/dist/sqlite/query.js.map +1 -1
  721. package/dist/sqlite/raw-query-worker-pool.d.ts +66 -0
  722. package/dist/sqlite/raw-query-worker-pool.d.ts.map +1 -0
  723. package/dist/sqlite/raw-query-worker-pool.js +146 -0
  724. package/dist/sqlite/raw-query-worker-pool.js.map +1 -0
  725. package/dist/sqlite/raw-query-worker.d.ts +22 -0
  726. package/dist/sqlite/raw-query-worker.d.ts.map +1 -0
  727. package/dist/sqlite/raw-query-worker.js +31 -0
  728. package/dist/sqlite/raw-query-worker.js.map +1 -0
  729. package/dist/sqlite/row-bounds.d.ts +24 -0
  730. package/dist/sqlite/row-bounds.d.ts.map +1 -0
  731. package/dist/sqlite/row-bounds.js +95 -0
  732. package/dist/sqlite/row-bounds.js.map +1 -0
  733. package/dist/sqlite-driver.js +1 -1
  734. package/dist/sqlite-driver.js.map +1 -1
  735. package/dist/util/bloom-filter.d.ts +100 -0
  736. package/dist/util/bloom-filter.d.ts.map +1 -0
  737. package/dist/util/bloom-filter.js +206 -0
  738. package/dist/util/bloom-filter.js.map +1 -0
  739. package/dist/util/confined-file.d.ts +48 -0
  740. package/dist/util/confined-file.d.ts.map +1 -0
  741. package/dist/util/confined-file.js +164 -0
  742. package/dist/util/confined-file.js.map +1 -0
  743. package/dist/util/discovery-path.d.ts +3 -0
  744. package/dist/util/discovery-path.d.ts.map +1 -0
  745. package/dist/util/discovery-path.js +19 -0
  746. package/dist/util/discovery-path.js.map +1 -0
  747. package/dist/util/git.d.ts +13 -10
  748. package/dist/util/git.d.ts.map +1 -1
  749. package/dist/util/git.js +29 -25
  750. package/dist/util/git.js.map +1 -1
  751. package/dist/util/graph-edges.d.ts +5 -0
  752. package/dist/util/graph-edges.d.ts.map +1 -0
  753. package/dist/util/graph-edges.js +42 -0
  754. package/dist/util/graph-edges.js.map +1 -0
  755. package/dist/util/graph-only-extensions.d.ts +5 -0
  756. package/dist/util/graph-only-extensions.d.ts.map +1 -0
  757. package/dist/util/graph-only-extensions.js +12 -0
  758. package/dist/util/graph-only-extensions.js.map +1 -0
  759. package/dist/util/include-roots.d.ts +6 -0
  760. package/dist/util/include-roots.d.ts.map +1 -0
  761. package/dist/util/include-roots.js +53 -0
  762. package/dist/util/include-roots.js.map +1 -0
  763. package/dist/util/lazy-symbols.d.ts +166 -0
  764. package/dist/util/lazy-symbols.d.ts.map +1 -0
  765. package/dist/util/lazy-symbols.js +365 -0
  766. package/dist/util/lazy-symbols.js.map +1 -0
  767. package/dist/util/lru-map.d.ts +3 -0
  768. package/dist/util/lru-map.d.ts.map +1 -0
  769. package/dist/util/lru-map.js +22 -0
  770. package/dist/util/lru-map.js.map +1 -0
  771. package/dist/util/member-access.d.ts +26 -0
  772. package/dist/util/member-access.d.ts.map +1 -0
  773. package/dist/util/member-access.js +185 -0
  774. package/dist/util/member-access.js.map +1 -0
  775. package/dist/util/package-exports.d.ts +25 -0
  776. package/dist/util/package-exports.d.ts.map +1 -0
  777. package/dist/util/package-exports.js +79 -0
  778. package/dist/util/package-exports.js.map +1 -0
  779. package/dist/util/package-info.d.ts +12 -0
  780. package/dist/util/package-info.d.ts.map +1 -0
  781. package/dist/util/package-info.js +57 -0
  782. package/dist/util/package-info.js.map +1 -0
  783. package/dist/util/partial-results.d.ts +81 -0
  784. package/dist/util/partial-results.d.ts.map +1 -0
  785. package/dist/util/partial-results.js +290 -0
  786. package/dist/util/partial-results.js.map +1 -0
  787. package/dist/util/project-files/definitions.d.ts +40 -0
  788. package/dist/util/project-files/definitions.d.ts.map +1 -0
  789. package/dist/util/project-files/definitions.js.map +1 -0
  790. package/dist/util/project-files/parsers.d.ts.map +1 -0
  791. package/dist/util/project-files/parsers.js.map +1 -0
  792. package/dist/util/project-files.d.ts +153 -0
  793. package/dist/util/project-files.d.ts.map +1 -0
  794. package/dist/util/project-files.js +1460 -0
  795. package/dist/util/project-files.js.map +1 -0
  796. package/dist/util/resolution/find-first-existing.d.ts +2 -0
  797. package/dist/util/resolution/find-first-existing.d.ts.map +1 -0
  798. package/dist/util/resolution/find-first-existing.js +13 -0
  799. package/dist/util/resolution/find-first-existing.js.map +1 -0
  800. package/dist/util/resolution/jvm.js +1 -1
  801. package/dist/util/resolution/jvm.js.map +1 -1
  802. package/dist/util/resolution/node.d.ts +1 -1
  803. package/dist/util/resolution/node.d.ts.map +1 -1
  804. package/dist/util/resolution/node.js +2 -2
  805. package/dist/util/resolution/node.js.map +1 -1
  806. package/dist/util/resolution/php-composer.d.ts +17 -0
  807. package/dist/util/resolution/php-composer.d.ts.map +1 -0
  808. package/dist/util/resolution/php-composer.js +269 -0
  809. package/dist/util/resolution/php-composer.js.map +1 -0
  810. package/dist/util/resolution/php.d.ts +1 -1
  811. package/dist/util/resolution/php.d.ts.map +1 -1
  812. package/dist/util/resolution/php.js +4 -4
  813. package/dist/util/resolution/php.js.map +1 -1
  814. package/dist/util/resolution/project-symbols.d.ts +14 -0
  815. package/dist/util/resolution/project-symbols.d.ts.map +1 -0
  816. package/dist/util/resolution/project-symbols.js +70 -0
  817. package/dist/util/resolution/project-symbols.js.map +1 -0
  818. package/dist/util/resolution/tsconfig.d.ts +7 -0
  819. package/dist/util/resolution/tsconfig.d.ts.map +1 -1
  820. package/dist/util/resolution/tsconfig.js +23 -8
  821. package/dist/util/resolution/tsconfig.js.map +1 -1
  822. package/dist/util/resolution-candidates.d.ts +5 -0
  823. package/dist/util/resolution-candidates.d.ts.map +1 -0
  824. package/dist/util/resolution-candidates.js +70 -0
  825. package/dist/util/resolution-candidates.js.map +1 -0
  826. package/dist/util/resolution.d.ts +2 -2
  827. package/dist/util/resolution.d.ts.map +1 -1
  828. package/dist/util/resolution.js +6 -6
  829. package/dist/util/resolution.js.map +1 -1
  830. package/dist/util/rust-test-modules.d.ts +3 -0
  831. package/dist/util/rust-test-modules.d.ts.map +1 -0
  832. package/dist/util/rust-test-modules.js +71 -0
  833. package/dist/util/rust-test-modules.js.map +1 -0
  834. package/dist/util/source-location.d.ts +8 -0
  835. package/dist/util/source-location.d.ts.map +1 -0
  836. package/dist/util/source-location.js +19 -0
  837. package/dist/util/source-location.js.map +1 -0
  838. package/dist/util/sqlite-schema.d.ts +28 -0
  839. package/dist/util/sqlite-schema.d.ts.map +1 -0
  840. package/dist/util/sqlite-schema.js +75 -0
  841. package/dist/util/sqlite-schema.js.map +1 -0
  842. package/dist/util/symbol-hash.d.ts +59 -0
  843. package/dist/util/symbol-hash.d.ts.map +1 -0
  844. package/dist/util/symbol-hash.js +84 -0
  845. package/dist/util/symbol-hash.js.map +1 -0
  846. package/dist/util/windows-process-drain.d.ts +23 -0
  847. package/dist/util/windows-process-drain.d.ts.map +1 -0
  848. package/dist/util/windows-process-drain.js +51 -0
  849. package/dist/util/windows-process-drain.js.map +1 -0
  850. package/dist/util/worker-threads.d.ts +12 -0
  851. package/dist/util/worker-threads.d.ts.map +1 -0
  852. package/dist/util/worker-threads.js +19 -0
  853. package/dist/util/worker-threads.js.map +1 -0
  854. package/dist/util/workspace.d.ts +1 -1
  855. package/dist/util/workspace.d.ts.map +1 -1
  856. package/dist/util/workspace.js +2 -2
  857. package/dist/util/workspace.js.map +1 -1
  858. package/dist/util.d.ts +2 -2
  859. package/dist/util.d.ts.map +1 -1
  860. package/dist/util.js +1 -1
  861. package/dist/util.js.map +1 -1
  862. package/dist/worker/native-extract-worker.d.ts +77 -0
  863. package/dist/worker/native-extract-worker.d.ts.map +1 -0
  864. package/dist/worker/native-extract-worker.js +272 -0
  865. package/dist/worker/native-extract-worker.js.map +1 -0
  866. package/dist/worker/native-worker-pool.d.ts +16 -0
  867. package/dist/worker/native-worker-pool.d.ts.map +1 -0
  868. package/dist/worker/native-worker-pool.js +54 -0
  869. package/dist/worker/native-worker-pool.js.map +1 -0
  870. package/docs/mcp.md +2 -2
  871. package/package.json +4 -4
  872. package/dist/agent/callHierarchy.d.ts +0 -28
  873. package/dist/agent/callHierarchy.d.ts.map +0 -1
  874. package/dist/agent/callHierarchy.js +0 -82
  875. package/dist/agent/callHierarchy.js.map +0 -1
  876. package/dist/agent/candidateTests.d.ts +0 -12
  877. package/dist/agent/candidateTests.d.ts.map +0 -1
  878. package/dist/agent/candidateTests.js +0 -17
  879. package/dist/agent/candidateTests.js.map +0 -1
  880. package/dist/agent/fileView.d.ts +0 -55
  881. package/dist/agent/fileView.d.ts.map +0 -1
  882. package/dist/agent/fileView.js +0 -521
  883. package/dist/agent/fileView.js.map +0 -1
  884. package/dist/agent/followUps.d.ts +0 -10
  885. package/dist/agent/followUps.d.ts.map +0 -1
  886. package/dist/agent/followUps.js +0 -175
  887. package/dist/agent/followUps.js.map +0 -1
  888. package/dist/agent/query-index/queryIndexWorker.d.ts +0 -8
  889. package/dist/agent/query-index/queryIndexWorker.d.ts.map +0 -1
  890. package/dist/agent/query-index/queryIndexWorker.js +0 -11
  891. package/dist/agent/query-index/queryIndexWorker.js.map +0 -1
  892. package/dist/agent/query-index/sessionStore.d.ts +0 -5
  893. package/dist/agent/query-index/sessionStore.d.ts.map +0 -1
  894. package/dist/agent/query-index/sessionStore.js +0 -69
  895. package/dist/agent/query-index/sessionStore.js.map +0 -1
  896. package/dist/agent/query-index/sourceIdentity.d.ts +0 -3
  897. package/dist/agent/query-index/sourceIdentity.d.ts.map +0 -1
  898. package/dist/agent/query-index/sourceIdentity.js +0 -12
  899. package/dist/agent/query-index/sourceIdentity.js.map +0 -1
  900. package/dist/agent/query-index/workerPool.d.ts +0 -27
  901. package/dist/agent/query-index/workerPool.d.ts.map +0 -1
  902. package/dist/agent/query-index/workerPool.js +0 -114
  903. package/dist/agent/query-index/workerPool.js.map +0 -1
  904. package/dist/agent/refactorPlan.d.ts +0 -40
  905. package/dist/agent/refactorPlan.d.ts.map +0 -1
  906. package/dist/agent/refactorPlan.js +0 -226
  907. package/dist/agent/refactorPlan.js.map +0 -1
  908. package/dist/agent/renamePreview.d.ts +0 -57
  909. package/dist/agent/renamePreview.d.ts.map +0 -1
  910. package/dist/agent/renamePreview.js +0 -1062
  911. package/dist/agent/renamePreview.js.map +0 -1
  912. package/dist/agent/semanticSymbols.d.ts +0 -16
  913. package/dist/agent/semanticSymbols.d.ts.map +0 -1
  914. package/dist/agent/semanticSymbols.js +0 -97
  915. package/dist/agent/semanticSymbols.js.map +0 -1
  916. package/dist/agent/sessionLifecycle.d.ts +0 -5
  917. package/dist/agent/sessionLifecycle.d.ts.map +0 -1
  918. package/dist/agent/sessionLifecycle.js +0 -18
  919. package/dist/agent/sessionLifecycle.js.map +0 -1
  920. package/dist/agent/symbolLookup.d.ts +0 -12
  921. package/dist/agent/symbolLookup.d.ts.map +0 -1
  922. package/dist/agent/symbolLookup.js +0 -26
  923. package/dist/agent/symbolLookup.js.map +0 -1
  924. package/dist/agent/typeHierarchy.d.ts +0 -39
  925. package/dist/agent/typeHierarchy.d.ts.map +0 -1
  926. package/dist/agent/typeHierarchy.js +0 -125
  927. package/dist/agent/typeHierarchy.js.map +0 -1
  928. package/dist/agent/workspaceSymbols.d.ts +0 -18
  929. package/dist/agent/workspaceSymbols.d.ts.map +0 -1
  930. package/dist/agent/workspaceSymbols.js +0 -75
  931. package/dist/agent/workspaceSymbols.js.map +0 -1
  932. package/dist/analysisSummary.d.ts +0 -19
  933. package/dist/analysisSummary.d.ts.map +0 -1
  934. package/dist/analysisSummary.js +0 -80
  935. package/dist/analysisSummary.js.map +0 -1
  936. package/dist/bin/queryIndexWorker.js +0 -4382
  937. package/dist/bin/rawQueryWorker.js +0 -383
  938. package/dist/bootstrap/treeSitterLanguages.d.ts +0 -5
  939. package/dist/bootstrap/treeSitterLanguages.d.ts.map +0 -1
  940. package/dist/bootstrap/treeSitterLanguages.js +0 -41
  941. package/dist/bootstrap/treeSitterLanguages.js.map +0 -1
  942. package/dist/chunking/chunkBlocks.d.ts +0 -9
  943. package/dist/chunking/chunkBlocks.d.ts.map +0 -1
  944. package/dist/chunking/chunkBlocks.js +0 -60
  945. package/dist/chunking/chunkBlocks.js.map +0 -1
  946. package/dist/chunking/chunkFile.d.ts +0 -39
  947. package/dist/chunking/chunkFile.d.ts.map +0 -1
  948. package/dist/chunking/chunkFile.js +0 -152
  949. package/dist/chunking/chunkFile.js.map +0 -1
  950. package/dist/chunking/chunkId.d.ts +0 -7
  951. package/dist/chunking/chunkId.d.ts.map +0 -1
  952. package/dist/chunking/chunkId.js +0 -30
  953. package/dist/chunking/chunkId.js.map +0 -1
  954. package/dist/chunking/chunkMatches.d.ts +0 -4
  955. package/dist/chunking/chunkMatches.d.ts.map +0 -1
  956. package/dist/chunking/chunkMatches.js +0 -65
  957. package/dist/chunking/chunkMatches.js.map +0 -1
  958. package/dist/chunking/chunkMerge.d.ts +0 -4
  959. package/dist/chunking/chunkMerge.d.ts.map +0 -1
  960. package/dist/chunking/chunkMerge.js +0 -144
  961. package/dist/chunking/chunkMerge.js.map +0 -1
  962. package/dist/chunking/chunkSFC.d.ts +0 -18
  963. package/dist/chunking/chunkSFC.d.ts.map +0 -1
  964. package/dist/chunking/chunkSFC.js +0 -165
  965. package/dist/chunking/chunkSFC.js.map +0 -1
  966. package/dist/chunking/chunkSplit.d.ts +0 -6
  967. package/dist/chunking/chunkSplit.d.ts.map +0 -1
  968. package/dist/chunking/chunkSplit.js +0 -155
  969. package/dist/chunking/chunkSplit.js.map +0 -1
  970. package/dist/chunking/chunkTextFile.d.ts +0 -28
  971. package/dist/chunking/chunkTextFile.d.ts.map +0 -1
  972. package/dist/chunking/chunkTextFile.js +0 -107
  973. package/dist/chunking/chunkTextFile.js.map +0 -1
  974. package/dist/chunking/languageConfig.d.ts +0 -35
  975. package/dist/chunking/languageConfig.d.ts.map +0 -1
  976. package/dist/chunking/languageConfig.js +0 -24
  977. package/dist/chunking/languageConfig.js.map +0 -1
  978. package/dist/cli/callHierarchy.d.ts +0 -6
  979. package/dist/cli/callHierarchy.d.ts.map +0 -1
  980. package/dist/cli/callHierarchy.js +0 -72
  981. package/dist/cli/callHierarchy.js.map +0 -1
  982. package/dist/cli/commandCatalog.d.ts +0 -14
  983. package/dist/cli/commandCatalog.d.ts.map +0 -1
  984. package/dist/cli/commandCatalog.js +0 -118
  985. package/dist/cli/commandCatalog.js.map +0 -1
  986. package/dist/cli/commandTable.d.ts +0 -16
  987. package/dist/cli/commandTable.d.ts.map +0 -1
  988. package/dist/cli/commandTable.js +0 -758
  989. package/dist/cli/commandTable.js.map +0 -1
  990. package/dist/cli/compileCache.d.ts +0 -22
  991. package/dist/cli/compileCache.d.ts.map +0 -1
  992. package/dist/cli/compileCache.js +0 -81
  993. package/dist/cli/compileCache.js.map +0 -1
  994. package/dist/cli/discoveryGlobs.d.ts +0 -11
  995. package/dist/cli/discoveryGlobs.d.ts.map +0 -1
  996. package/dist/cli/discoveryGlobs.js +0 -74
  997. package/dist/cli/discoveryGlobs.js.map +0 -1
  998. package/dist/cli/duplicateSimilarity.d.ts +0 -10
  999. package/dist/cli/duplicateSimilarity.d.ts.map +0 -1
  1000. package/dist/cli/duplicateSimilarity.js +0 -20
  1001. package/dist/cli/duplicateSimilarity.js.map +0 -1
  1002. package/dist/cli/graphDelta.d.ts +0 -25
  1003. package/dist/cli/graphDelta.d.ts.map +0 -1
  1004. package/dist/cli/graphDelta.js +0 -80
  1005. package/dist/cli/graphDelta.js.map +0 -1
  1006. package/dist/cli/graphQueries.d.ts +0 -23
  1007. package/dist/cli/graphQueries.d.ts.map +0 -1
  1008. package/dist/cli/graphQueries.js +0 -265
  1009. package/dist/cli/graphQueries.js.map +0 -1
  1010. package/dist/cli/indexPolicy.d.ts +0 -36
  1011. package/dist/cli/indexPolicy.d.ts.map +0 -1
  1012. package/dist/cli/indexPolicy.js +0 -169
  1013. package/dist/cli/indexPolicy.js.map +0 -1
  1014. package/dist/cli/invocationContext.d.ts +0 -77
  1015. package/dist/cli/invocationContext.d.ts.map +0 -1
  1016. package/dist/cli/invocationContext.js +0 -423
  1017. package/dist/cli/invocationContext.js.map +0 -1
  1018. package/dist/cli/projectFile.d.ts +0 -13
  1019. package/dist/cli/projectFile.d.ts.map +0 -1
  1020. package/dist/cli/projectFile.js +0 -23
  1021. package/dist/cli/projectFile.js.map +0 -1
  1022. package/dist/cli/refactorPlan.d.ts +0 -6
  1023. package/dist/cli/refactorPlan.d.ts.map +0 -1
  1024. package/dist/cli/refactorPlan.js +0 -84
  1025. package/dist/cli/refactorPlan.js.map +0 -1
  1026. package/dist/cli/renamePreview.d.ts +0 -4
  1027. package/dist/cli/renamePreview.d.ts.map +0 -1
  1028. package/dist/cli/renamePreview.js +0 -92
  1029. package/dist/cli/renamePreview.js.map +0 -1
  1030. package/dist/cli/rootPolicy.d.ts +0 -53
  1031. package/dist/cli/rootPolicy.d.ts.map +0 -1
  1032. package/dist/cli/rootPolicy.js +0 -221
  1033. package/dist/cli/rootPolicy.js.map +0 -1
  1034. package/dist/cli/typeHierarchy.d.ts +0 -6
  1035. package/dist/cli/typeHierarchy.d.ts.map +0 -1
  1036. package/dist/cli/typeHierarchy.js +0 -90
  1037. package/dist/cli/typeHierarchy.js.map +0 -1
  1038. package/dist/cliBootstrap.d.ts +0 -3
  1039. package/dist/cliBootstrap.d.ts.map +0 -1
  1040. package/dist/cliBootstrap.js +0 -10
  1041. package/dist/cliBootstrap.js.map +0 -1
  1042. package/dist/documentLinks/asciidoc.d.ts.map +0 -1
  1043. package/dist/documentLinks/asciidoc.js.map +0 -1
  1044. package/dist/documentLinks/check.d.ts +0 -32
  1045. package/dist/documentLinks/check.d.ts.map +0 -1
  1046. package/dist/documentLinks/check.js +0 -286
  1047. package/dist/documentLinks/check.js.map +0 -1
  1048. package/dist/documentLinks/html.d.ts.map +0 -1
  1049. package/dist/documentLinks/html.js.map +0 -1
  1050. package/dist/documentLinks/markdown.d.ts.map +0 -1
  1051. package/dist/documentLinks/markdown.js.map +0 -1
  1052. package/dist/documentLinks/rst.d.ts.map +0 -1
  1053. package/dist/documentLinks/rst.js.map +0 -1
  1054. package/dist/documentLinks/sfc.d.ts.map +0 -1
  1055. package/dist/documentLinks/sfc.js.map +0 -1
  1056. package/dist/documentLinks/shared.d.ts.map +0 -1
  1057. package/dist/documentLinks/shared.js.map +0 -1
  1058. package/dist/documentLinks.d.ts +0 -12
  1059. package/dist/documentLinks.d.ts.map +0 -1
  1060. package/dist/documentLinks.js +0 -49
  1061. package/dist/documentLinks.js.map +0 -1
  1062. package/dist/duplicates/unitCache.d.ts +0 -46
  1063. package/dist/duplicates/unitCache.d.ts.map +0 -1
  1064. package/dist/duplicates/unitCache.js +0 -512
  1065. package/dist/duplicates/unitCache.js.map +0 -1
  1066. package/dist/duplicatesLeads.d.ts +0 -39
  1067. package/dist/duplicatesLeads.d.ts.map +0 -1
  1068. package/dist/duplicatesLeads.js +0 -112
  1069. package/dist/duplicatesLeads.js.map +0 -1
  1070. package/dist/graphs/edgeResolution.d.ts +0 -25
  1071. package/dist/graphs/edgeResolution.d.ts.map +0 -1
  1072. package/dist/graphs/edgeResolution.js +0 -97
  1073. package/dist/graphs/edgeResolution.js.map +0 -1
  1074. package/dist/graphs/symbol-graph-detailed/edgePasses.d.ts +0 -35
  1075. package/dist/graphs/symbol-graph-detailed/edgePasses.d.ts.map +0 -1
  1076. package/dist/graphs/symbol-graph-detailed/edgePasses.js +0 -586
  1077. package/dist/graphs/symbol-graph-detailed/edgePasses.js.map +0 -1
  1078. package/dist/graphs/symbol-graph-detailed/importAliases.d.ts +0 -10
  1079. package/dist/graphs/symbol-graph-detailed/importAliases.d.ts.map +0 -1
  1080. package/dist/graphs/symbol-graph-detailed/importAliases.js +0 -44
  1081. package/dist/graphs/symbol-graph-detailed/importAliases.js.map +0 -1
  1082. package/dist/graphs/symbol-graph-detailed/memberChains.d.ts +0 -17
  1083. package/dist/graphs/symbol-graph-detailed/memberChains.d.ts.map +0 -1
  1084. package/dist/graphs/symbol-graph-detailed/memberChains.js +0 -30
  1085. package/dist/graphs/symbol-graph-detailed/memberChains.js.map +0 -1
  1086. package/dist/graphs/symbol-graph-detailed/receiverCalls.d.ts +0 -69
  1087. package/dist/graphs/symbol-graph-detailed/receiverCalls.d.ts.map +0 -1
  1088. package/dist/graphs/symbol-graph-detailed/receiverCalls.js +0 -408
  1089. package/dist/graphs/symbol-graph-detailed/receiverCalls.js.map +0 -1
  1090. package/dist/impact/call-compatibility/textScanner.d.ts +0 -23
  1091. package/dist/impact/call-compatibility/textScanner.d.ts.map +0 -1
  1092. package/dist/impact/call-compatibility/textScanner.js +0 -615
  1093. package/dist/impact/call-compatibility/textScanner.js.map +0 -1
  1094. package/dist/impact/callCompatibility.d.ts +0 -24
  1095. package/dist/impact/callCompatibility.d.ts.map +0 -1
  1096. package/dist/impact/callCompatibility.js +0 -1023
  1097. package/dist/impact/callCompatibility.js.map +0 -1
  1098. package/dist/impact/memberResolutionCoverage.d.ts +0 -14
  1099. package/dist/impact/memberResolutionCoverage.d.ts.map +0 -1
  1100. package/dist/impact/memberResolutionCoverage.js +0 -42
  1101. package/dist/impact/memberResolutionCoverage.js.map +0 -1
  1102. package/dist/impact/referenceCache.d.ts +0 -12
  1103. package/dist/impact/referenceCache.d.ts.map +0 -1
  1104. package/dist/impact/referenceCache.js +0 -101
  1105. package/dist/impact/referenceCache.js.map +0 -1
  1106. package/dist/impact/reportCompact.d.ts +0 -8
  1107. package/dist/impact/reportCompact.d.ts.map +0 -1
  1108. package/dist/impact/reportCompact.js +0 -153
  1109. package/dist/impact/reportCompact.js.map +0 -1
  1110. package/dist/impact/reportFull.d.ts +0 -10
  1111. package/dist/impact/reportFull.d.ts.map +0 -1
  1112. package/dist/impact/reportFull.js +0 -67
  1113. package/dist/impact/reportFull.js.map +0 -1
  1114. package/dist/impact/reportParts.d.ts +0 -51
  1115. package/dist/impact/reportParts.d.ts.map +0 -1
  1116. package/dist/impact/reportParts.js +0 -2
  1117. package/dist/impact/reportParts.js.map +0 -1
  1118. package/dist/impact/reportShared.d.ts +0 -76
  1119. package/dist/impact/reportShared.d.ts.map +0 -1
  1120. package/dist/impact/reportShared.js +0 -130
  1121. package/dist/impact/reportShared.js.map +0 -1
  1122. package/dist/impact/testPatterns.d.ts +0 -6
  1123. package/dist/impact/testPatterns.d.ts.map +0 -1
  1124. package/dist/impact/testPatterns.js +0 -65
  1125. package/dist/impact/testPatterns.js.map +0 -1
  1126. package/dist/indexer/imports/graphOnly.d.ts +0 -13
  1127. package/dist/indexer/imports/graphOnly.d.ts.map +0 -1
  1128. package/dist/indexer/imports/graphOnly.js +0 -40
  1129. package/dist/indexer/imports/graphOnly.js.map +0 -1
  1130. package/dist/indexer/imports/jsTextImports.d.ts +0 -9
  1131. package/dist/indexer/imports/jsTextImports.d.ts.map +0 -1
  1132. package/dist/indexer/imports/jsTextImports.js +0 -181
  1133. package/dist/indexer/imports/jsTextImports.js.map +0 -1
  1134. package/dist/indexer/imports/languageSpecific.d.ts +0 -26
  1135. package/dist/indexer/imports/languageSpecific.d.ts.map +0 -1
  1136. package/dist/indexer/imports/languageSpecific.js +0 -449
  1137. package/dist/indexer/imports/languageSpecific.js.map +0 -1
  1138. package/dist/indexer/imports/nativeCaptures.d.ts +0 -16
  1139. package/dist/indexer/imports/nativeCaptures.d.ts.map +0 -1
  1140. package/dist/indexer/imports/nativeCaptures.js +0 -142
  1141. package/dist/indexer/imports/nativeCaptures.js.map +0 -1
  1142. package/dist/languages/definitions/cFamily.d.ts +0 -34
  1143. package/dist/languages/definitions/cFamily.d.ts.map +0 -1
  1144. package/dist/languages/definitions/cFamily.js +0 -177
  1145. package/dist/languages/definitions/cFamily.js.map +0 -1
  1146. package/dist/languages/definitions/cssLike.d.ts +0 -5
  1147. package/dist/languages/definitions/cssLike.d.ts.map +0 -1
  1148. package/dist/languages/definitions/cssLike.js +0 -32
  1149. package/dist/languages/definitions/cssLike.js.map +0 -1
  1150. package/dist/languages/definitions/htmlStub.d.ts +0 -18
  1151. package/dist/languages/definitions/htmlStub.d.ts.map +0 -1
  1152. package/dist/languages/definitions/htmlStub.js +0 -36
  1153. package/dist/languages/definitions/htmlStub.js.map +0 -1
  1154. package/dist/languages/definitions/jsFamily.d.ts +0 -5
  1155. package/dist/languages/definitions/jsFamily.d.ts.map +0 -1
  1156. package/dist/languages/definitions/jsFamily.js +0 -75
  1157. package/dist/languages/definitions/jsFamily.js.map +0 -1
  1158. package/dist/languages/filePrep.d.ts +0 -36
  1159. package/dist/languages/filePrep.d.ts.map +0 -1
  1160. package/dist/languages/filePrep.js +0 -76
  1161. package/dist/languages/filePrep.js.map +0 -1
  1162. package/dist/languages/importStatementParsers.d.ts +0 -57
  1163. package/dist/languages/importStatementParsers.d.ts.map +0 -1
  1164. package/dist/languages/importStatementParsers.js +0 -383
  1165. package/dist/languages/importStatementParsers.js.map +0 -1
  1166. package/dist/languages/queryGenerator.d.ts +0 -6
  1167. package/dist/languages/queryGenerator.d.ts.map +0 -1
  1168. package/dist/languages/queryGenerator.js +0 -46
  1169. package/dist/languages/queryGenerator.js.map +0 -1
  1170. package/dist/mcp/httpTransport.d.ts +0 -14
  1171. package/dist/mcp/httpTransport.d.ts.map +0 -1
  1172. package/dist/mcp/httpTransport.js +0 -185
  1173. package/dist/mcp/httpTransport.js.map +0 -1
  1174. package/dist/mcp/legacySessions.d.ts +0 -38
  1175. package/dist/mcp/legacySessions.d.ts.map +0 -1
  1176. package/dist/mcp/legacySessions.js +0 -264
  1177. package/dist/mcp/legacySessions.js.map +0 -1
  1178. package/dist/mcp/lifecycleHealth.d.ts +0 -12
  1179. package/dist/mcp/lifecycleHealth.d.ts.map +0 -1
  1180. package/dist/mcp/lifecycleHealth.js +0 -37
  1181. package/dist/mcp/lifecycleHealth.js.map +0 -1
  1182. package/dist/mcp/sqliteGuard.d.ts +0 -3
  1183. package/dist/mcp/sqliteGuard.d.ts.map +0 -1
  1184. package/dist/mcp/sqliteGuard.js +0 -35
  1185. package/dist/mcp/sqliteGuard.js.map +0 -1
  1186. package/dist/mcp/stdioLifecycle.d.ts +0 -23
  1187. package/dist/mcp/stdioLifecycle.d.ts.map +0 -1
  1188. package/dist/mcp/stdioLifecycle.js +0 -83
  1189. package/dist/mcp/stdioLifecycle.js.map +0 -1
  1190. package/dist/native/bindingLoader.d.ts +0 -51
  1191. package/dist/native/bindingLoader.d.ts.map +0 -1
  1192. package/dist/native/bindingLoader.js +0 -223
  1193. package/dist/native/bindingLoader.js.map +0 -1
  1194. package/dist/native/byteIndex.d.ts +0 -26
  1195. package/dist/native/byteIndex.d.ts.map +0 -1
  1196. package/dist/native/byteIndex.js +0 -70
  1197. package/dist/native/byteIndex.js.map +0 -1
  1198. package/dist/native/jsBridge.d.ts +0 -7
  1199. package/dist/native/jsBridge.d.ts.map +0 -1
  1200. package/dist/native/jsBridge.js +0 -25
  1201. package/dist/native/jsBridge.js.map +0 -1
  1202. package/dist/native/nativeBackendReport.d.ts +0 -22
  1203. package/dist/native/nativeBackendReport.d.ts.map +0 -1
  1204. package/dist/native/nativeBackendReport.js +0 -102
  1205. package/dist/native/nativeBackendReport.js.map +0 -1
  1206. package/dist/native/projectedTree.d.ts +0 -53
  1207. package/dist/native/projectedTree.d.ts.map +0 -1
  1208. package/dist/native/projectedTree.js +0 -180
  1209. package/dist/native/projectedTree.js.map +0 -1
  1210. package/dist/native/queryResults.d.ts +0 -12
  1211. package/dist/native/queryResults.d.ts.map +0 -1
  1212. package/dist/native/queryResults.js +0 -34
  1213. package/dist/native/queryResults.js.map +0 -1
  1214. package/dist/native/runtimeCache.d.ts +0 -128
  1215. package/dist/native/runtimeCache.d.ts.map +0 -1
  1216. package/dist/native/runtimeCache.js +0 -667
  1217. package/dist/native/runtimeCache.js.map +0 -1
  1218. package/dist/native/treeShape.d.ts +0 -21
  1219. package/dist/native/treeShape.d.ts.map +0 -1
  1220. package/dist/native/treeShape.js +0 -28
  1221. package/dist/native/treeShape.js.map +0 -1
  1222. package/dist/native/treeSitterNative.d.ts +0 -6
  1223. package/dist/native/treeSitterNative.d.ts.map +0 -1
  1224. package/dist/native/treeSitterNative.js +0 -5
  1225. package/dist/native/treeSitterNative.js.map +0 -1
  1226. package/dist/runtimeIdentity.d.ts +0 -27
  1227. package/dist/runtimeIdentity.d.ts.map +0 -1
  1228. package/dist/runtimeIdentity.js +0 -75
  1229. package/dist/runtimeIdentity.js.map +0 -1
  1230. package/dist/sql/classifySqlFile.d.ts +0 -3
  1231. package/dist/sql/classifySqlFile.d.ts.map +0 -1
  1232. package/dist/sql/classifySqlFile.js +0 -42
  1233. package/dist/sql/classifySqlFile.js.map +0 -1
  1234. package/dist/sql/extractFacts.d.ts +0 -4
  1235. package/dist/sql/extractFacts.d.ts.map +0 -1
  1236. package/dist/sql/extractFacts.js +0 -511
  1237. package/dist/sql/extractFacts.js.map +0 -1
  1238. package/dist/sql/sourceGraph.d.ts +0 -19
  1239. package/dist/sql/sourceGraph.d.ts.map +0 -1
  1240. package/dist/sql/sourceGraph.js +0 -195
  1241. package/dist/sql/sourceGraph.js.map +0 -1
  1242. package/dist/sqlite/rawQueryWorker.d.ts +0 -22
  1243. package/dist/sqlite/rawQueryWorker.d.ts.map +0 -1
  1244. package/dist/sqlite/rawQueryWorker.js +0 -31
  1245. package/dist/sqlite/rawQueryWorker.js.map +0 -1
  1246. package/dist/sqlite/rawQueryWorkerPool.d.ts +0 -66
  1247. package/dist/sqlite/rawQueryWorkerPool.d.ts.map +0 -1
  1248. package/dist/sqlite/rawQueryWorkerPool.js +0 -146
  1249. package/dist/sqlite/rawQueryWorkerPool.js.map +0 -1
  1250. package/dist/sqlite/rowBounds.d.ts +0 -24
  1251. package/dist/sqlite/rowBounds.d.ts.map +0 -1
  1252. package/dist/sqlite/rowBounds.js +0 -95
  1253. package/dist/sqlite/rowBounds.js.map +0 -1
  1254. package/dist/util/bloomFilter.d.ts +0 -100
  1255. package/dist/util/bloomFilter.d.ts.map +0 -1
  1256. package/dist/util/bloomFilter.js +0 -206
  1257. package/dist/util/bloomFilter.js.map +0 -1
  1258. package/dist/util/confinedFile.d.ts +0 -48
  1259. package/dist/util/confinedFile.d.ts.map +0 -1
  1260. package/dist/util/confinedFile.js +0 -164
  1261. package/dist/util/confinedFile.js.map +0 -1
  1262. package/dist/util/discoveryPath.d.ts +0 -3
  1263. package/dist/util/discoveryPath.d.ts.map +0 -1
  1264. package/dist/util/discoveryPath.js +0 -19
  1265. package/dist/util/discoveryPath.js.map +0 -1
  1266. package/dist/util/graphEdges.d.ts +0 -5
  1267. package/dist/util/graphEdges.d.ts.map +0 -1
  1268. package/dist/util/graphEdges.js +0 -42
  1269. package/dist/util/graphEdges.js.map +0 -1
  1270. package/dist/util/graphOnlyExtensions.d.ts +0 -5
  1271. package/dist/util/graphOnlyExtensions.d.ts.map +0 -1
  1272. package/dist/util/graphOnlyExtensions.js +0 -12
  1273. package/dist/util/graphOnlyExtensions.js.map +0 -1
  1274. package/dist/util/includeRoots.d.ts +0 -6
  1275. package/dist/util/includeRoots.d.ts.map +0 -1
  1276. package/dist/util/includeRoots.js +0 -53
  1277. package/dist/util/includeRoots.js.map +0 -1
  1278. package/dist/util/lazySymbols.d.ts +0 -166
  1279. package/dist/util/lazySymbols.d.ts.map +0 -1
  1280. package/dist/util/lazySymbols.js +0 -365
  1281. package/dist/util/lazySymbols.js.map +0 -1
  1282. package/dist/util/lruMap.d.ts +0 -3
  1283. package/dist/util/lruMap.d.ts.map +0 -1
  1284. package/dist/util/lruMap.js +0 -22
  1285. package/dist/util/lruMap.js.map +0 -1
  1286. package/dist/util/memberAccess.d.ts +0 -26
  1287. package/dist/util/memberAccess.d.ts.map +0 -1
  1288. package/dist/util/memberAccess.js +0 -185
  1289. package/dist/util/memberAccess.js.map +0 -1
  1290. package/dist/util/packageExports.d.ts +0 -25
  1291. package/dist/util/packageExports.d.ts.map +0 -1
  1292. package/dist/util/packageExports.js +0 -79
  1293. package/dist/util/packageExports.js.map +0 -1
  1294. package/dist/util/packageInfo.d.ts +0 -12
  1295. package/dist/util/packageInfo.d.ts.map +0 -1
  1296. package/dist/util/packageInfo.js +0 -57
  1297. package/dist/util/packageInfo.js.map +0 -1
  1298. package/dist/util/partialResults.d.ts +0 -81
  1299. package/dist/util/partialResults.d.ts.map +0 -1
  1300. package/dist/util/partialResults.js +0 -290
  1301. package/dist/util/partialResults.js.map +0 -1
  1302. package/dist/util/projectFiles/definitions.d.ts +0 -21
  1303. package/dist/util/projectFiles/definitions.d.ts.map +0 -1
  1304. package/dist/util/projectFiles/definitions.js.map +0 -1
  1305. package/dist/util/projectFiles/parsers.d.ts.map +0 -1
  1306. package/dist/util/projectFiles/parsers.js.map +0 -1
  1307. package/dist/util/projectFiles.d.ts +0 -102
  1308. package/dist/util/projectFiles.d.ts.map +0 -1
  1309. package/dist/util/projectFiles.js +0 -1209
  1310. package/dist/util/projectFiles.js.map +0 -1
  1311. package/dist/util/resolution/findFirstExisting.d.ts +0 -2
  1312. package/dist/util/resolution/findFirstExisting.d.ts.map +0 -1
  1313. package/dist/util/resolution/findFirstExisting.js +0 -13
  1314. package/dist/util/resolution/findFirstExisting.js.map +0 -1
  1315. package/dist/util/resolution/phpComposer.d.ts +0 -17
  1316. package/dist/util/resolution/phpComposer.d.ts.map +0 -1
  1317. package/dist/util/resolution/phpComposer.js +0 -269
  1318. package/dist/util/resolution/phpComposer.js.map +0 -1
  1319. package/dist/util/resolution/projectSymbols.d.ts +0 -14
  1320. package/dist/util/resolution/projectSymbols.d.ts.map +0 -1
  1321. package/dist/util/resolution/projectSymbols.js +0 -70
  1322. package/dist/util/resolution/projectSymbols.js.map +0 -1
  1323. package/dist/util/resolutionCandidates.d.ts +0 -5
  1324. package/dist/util/resolutionCandidates.d.ts.map +0 -1
  1325. package/dist/util/resolutionCandidates.js +0 -70
  1326. package/dist/util/resolutionCandidates.js.map +0 -1
  1327. package/dist/util/rustTestModules.d.ts +0 -3
  1328. package/dist/util/rustTestModules.d.ts.map +0 -1
  1329. package/dist/util/rustTestModules.js +0 -71
  1330. package/dist/util/rustTestModules.js.map +0 -1
  1331. package/dist/util/sourceLocation.d.ts +0 -8
  1332. package/dist/util/sourceLocation.d.ts.map +0 -1
  1333. package/dist/util/sourceLocation.js +0 -19
  1334. package/dist/util/sourceLocation.js.map +0 -1
  1335. package/dist/util/sqliteSchema.d.ts +0 -28
  1336. package/dist/util/sqliteSchema.d.ts.map +0 -1
  1337. package/dist/util/sqliteSchema.js +0 -75
  1338. package/dist/util/sqliteSchema.js.map +0 -1
  1339. package/dist/util/symbolHash.d.ts +0 -59
  1340. package/dist/util/symbolHash.d.ts.map +0 -1
  1341. package/dist/util/symbolHash.js +0 -84
  1342. package/dist/util/symbolHash.js.map +0 -1
  1343. package/dist/util/windowsProcessDrain.d.ts +0 -23
  1344. package/dist/util/windowsProcessDrain.d.ts.map +0 -1
  1345. package/dist/util/windowsProcessDrain.js +0 -51
  1346. package/dist/util/windowsProcessDrain.js.map +0 -1
  1347. package/dist/util/workerThreads.d.ts +0 -12
  1348. package/dist/util/workerThreads.d.ts.map +0 -1
  1349. package/dist/util/workerThreads.js +0 -16
  1350. package/dist/util/workerThreads.js.map +0 -1
  1351. package/dist/worker/nativeExtractWorker.d.ts +0 -77
  1352. package/dist/worker/nativeExtractWorker.d.ts.map +0 -1
  1353. package/dist/worker/nativeExtractWorker.js +0 -272
  1354. package/dist/worker/nativeExtractWorker.js.map +0 -1
  1355. package/dist/worker/nativeWorkerPool.d.ts +0 -16
  1356. package/dist/worker/nativeWorkerPool.d.ts.map +0 -1
  1357. package/dist/worker/nativeWorkerPool.js +0 -54
  1358. package/dist/worker/nativeWorkerPool.js.map +0 -1
  1359. package/docs/graph-visualization/viewer-selected-node.webp +0 -0
  1360. /package/dist/{documentLinks → document-links}/asciidoc.d.ts +0 -0
  1361. /package/dist/{documentLinks → document-links}/asciidoc.js +0 -0
  1362. /package/dist/{documentLinks → document-links}/html.d.ts +0 -0
  1363. /package/dist/{documentLinks → document-links}/html.js +0 -0
  1364. /package/dist/{documentLinks → document-links}/markdown.d.ts +0 -0
  1365. /package/dist/{documentLinks → document-links}/markdown.js +0 -0
  1366. /package/dist/{documentLinks → document-links}/rst.d.ts +0 -0
  1367. /package/dist/{documentLinks → document-links}/rst.js +0 -0
  1368. /package/dist/{documentLinks → document-links}/sfc.d.ts +0 -0
  1369. /package/dist/{documentLinks → document-links}/sfc.js +0 -0
  1370. /package/dist/{documentLinks → document-links}/shared.d.ts +0 -0
  1371. /package/dist/{documentLinks → document-links}/shared.js +0 -0
  1372. /package/dist/util/{projectFiles → project-files}/definitions.js +0 -0
  1373. /package/dist/util/{projectFiles → project-files}/parsers.d.ts +0 -0
  1374. /package/dist/util/{projectFiles → project-files}/parsers.js +0 -0
  1375. /package/{docs/graph-visualization → src/viewer}/app.js +0 -0
  1376. /package/{docs/graph-visualization → src/viewer}/file-tree-filters.js +0 -0
  1377. /package/{docs/graph-visualization → src/viewer}/file-tree-model.js +0 -0
  1378. /package/{docs/graph-visualization → src/viewer}/graph-builder.js +0 -0
  1379. /package/{docs/graph-visualization → src/viewer}/index.html +0 -0
  1380. /package/{docs/graph-visualization → src/viewer}/styles.css +0 -0
  1381. /package/{docs/graph-visualization → src/viewer}/vendor/LICENSE.graphology-layout-forceatlas2.txt +0 -0
  1382. /package/{docs/graph-visualization → src/viewer}/vendor/LICENSE.graphology.txt +0 -0
  1383. /package/{docs/graph-visualization → src/viewer}/vendor/LICENSE.sigma.txt +0 -0
  1384. /package/{docs/graph-visualization → src/viewer}/vendor/graphology-layout-forceatlas2.js +0 -0
  1385. /package/{docs/graph-visualization → src/viewer}/vendor/graphology.js +0 -0
  1386. /package/{docs/graph-visualization → src/viewer}/vendor/sigma.js +0 -0
@@ -0,0 +1,1023 @@
1
+ import path from "node:path";
2
+ import { findReferences, goToDefinition } from "../indexer/navigation.js";
3
+ import { ensureParsedContext } from "../indexer/parse-context.js";
4
+ import { SymbolKind } from "../indexer/types.js";
5
+ import { supportForFileWithoutHeaderSample } from "../languages.js";
6
+ import { isJsTsLanguage } from "../languages/js-family.js";
7
+ import { sliceText, toRange } from "../util/ast.js";
8
+ import { fileIdentityKey } from "../util/paths.js";
9
+ import { getCallCompatibilityProvider, getCallCompatibilitySupportedLanguages, registerCallCompatibilityExtractors, } from "./call-compatibility/providers/index.js";
10
+ import { findOpeningParen, findSignatureOpeningParen, findCommentEnd, findCallOpeningParen, findBalancedParentheses, canStartRegexLiteral, findRegexLiteralEnd, splitTopLevelCommaGroups, } from "./call-compatibility/text-scanner.js";
11
+ import { directSignatureParameterNode, findAncestorOfTypes, findFirstDescendantOfTypes, } from "./signature-node-utils.js";
12
+ import { canStartReferenceLookup, recordReferenceLookupOmitted, recordReferenceLookupStarted, } from "./budgets.js";
13
+ function supportsCallCompatibilityLanguage(languageId) {
14
+ return getCallCompatibilityProvider(languageId) !== null;
15
+ }
16
+ function referenceScanLimitForCallsites(maxRefs) {
17
+ return Math.max(maxRefs + 50, maxRefs * 4);
18
+ }
19
+ function hasTopLevelEquals(text) {
20
+ let parenDepth = 0;
21
+ let bracketDepth = 0;
22
+ let braceDepth = 0;
23
+ let angleDepth = 0;
24
+ let quote = null;
25
+ let escaped = false;
26
+ for (let index = 0; index < text.length; index += 1) {
27
+ const char = text[index];
28
+ if (quote) {
29
+ if (escaped) {
30
+ escaped = false;
31
+ continue;
32
+ }
33
+ if (char === "\\") {
34
+ escaped = true;
35
+ continue;
36
+ }
37
+ if (char === quote) {
38
+ quote = null;
39
+ }
40
+ continue;
41
+ }
42
+ const commentEnd = findCommentEnd(text, index);
43
+ if (commentEnd !== null) {
44
+ if (commentEnd < 0) {
45
+ return false;
46
+ }
47
+ index = commentEnd - 1;
48
+ continue;
49
+ }
50
+ if (char === '"' || char === "'" || char === "`") {
51
+ quote = char;
52
+ continue;
53
+ }
54
+ if (char === "(") {
55
+ parenDepth += 1;
56
+ continue;
57
+ }
58
+ if (char === ")") {
59
+ parenDepth -= 1;
60
+ if (parenDepth < 0) {
61
+ return false;
62
+ }
63
+ continue;
64
+ }
65
+ if (char === "[") {
66
+ bracketDepth += 1;
67
+ continue;
68
+ }
69
+ if (char === "]") {
70
+ bracketDepth -= 1;
71
+ if (bracketDepth < 0) {
72
+ return false;
73
+ }
74
+ continue;
75
+ }
76
+ if (char === "{") {
77
+ braceDepth += 1;
78
+ continue;
79
+ }
80
+ if (char === "}") {
81
+ braceDepth -= 1;
82
+ if (braceDepth < 0) {
83
+ return false;
84
+ }
85
+ continue;
86
+ }
87
+ const atTopLevel = !parenDepth && !bracketDepth && !braceDepth;
88
+ if (char === "<" && atTopLevel) {
89
+ angleDepth += 1;
90
+ continue;
91
+ }
92
+ if (char === ">" && text[index - 1] !== "=" && atTopLevel && angleDepth) {
93
+ angleDepth -= 1;
94
+ continue;
95
+ }
96
+ if (char === "=" && text[index + 1] !== ">" && atTopLevel && !angleDepth) {
97
+ return true;
98
+ }
99
+ }
100
+ return false;
101
+ }
102
+ function isOptionalParameter(parameter) {
103
+ const colonIndex = parameter.indexOf(":");
104
+ let searchText = parameter;
105
+ if (colonIndex >= 0) {
106
+ searchText = parameter.slice(0, colonIndex);
107
+ }
108
+ return searchText.includes("?") || hasTopLevelEquals(parameter);
109
+ }
110
+ function isThisParameter(parameter) {
111
+ const colonIndex = parameter.indexOf(":");
112
+ if (colonIndex < 0) {
113
+ return parameter.trim() === "this";
114
+ }
115
+ return parameter.slice(0, colonIndex).trim() === "this";
116
+ }
117
+ const callableDeclarationTypes = new Set([
118
+ "function_declaration",
119
+ "function_definition",
120
+ "function_item",
121
+ "method",
122
+ "singleton_method",
123
+ "method_declaration",
124
+ "constructor_declaration",
125
+ "init_declaration",
126
+ "protocol_function_declaration",
127
+ "arrow_function",
128
+ "function",
129
+ "function_expression",
130
+ "variable_declarator",
131
+ "declaration",
132
+ ]);
133
+ const callableVariableValueTypes = new Set(["arrow_function", "function_expression", "function"]);
134
+ const parameterListTypes = new Set([
135
+ "parameters",
136
+ "parameter_list",
137
+ "formal_parameters",
138
+ "function_value_parameters",
139
+ "method_parameters",
140
+ ]);
141
+ function isPythonMethodDeclaration(declaration) {
142
+ let current = declaration.parent;
143
+ while (current) {
144
+ if (current.type === "class_definition") {
145
+ return true;
146
+ }
147
+ if (current.type === "function_definition") {
148
+ return false;
149
+ }
150
+ current = current.parent;
151
+ }
152
+ return false;
153
+ }
154
+ function shouldSkipFirstReceiverParameter(languageId, declaration) {
155
+ if (languageId === "python") {
156
+ return isPythonMethodDeclaration(declaration);
157
+ }
158
+ return true;
159
+ }
160
+ function findSignatureParameterText(request) {
161
+ if (!request.tree) {
162
+ return null;
163
+ }
164
+ const node = request.tree.rootNode.descendantForIndex(request.symbolStartIndex, request.symbolStartIndex);
165
+ const declaration = findAncestorOfTypes(node, callableDeclarationTypes);
166
+ if (!declaration) {
167
+ return null;
168
+ }
169
+ let params = directSignatureParameterNode(declaration);
170
+ if (!params && declaration.type === "variable_declarator") {
171
+ const valueNode = declaration.childForFieldName("value");
172
+ if (!valueNode || !callableVariableValueTypes.has(valueNode.type)) {
173
+ return null;
174
+ }
175
+ params = directSignatureParameterNode(valueNode) ?? findFirstDescendantOfTypes(valueNode, parameterListTypes);
176
+ }
177
+ if (!params) {
178
+ params = findFirstDescendantOfTypes(declaration, parameterListTypes);
179
+ }
180
+ if (!params) {
181
+ if (request.languageId === "swift") {
182
+ const parameterNodes = declaration.namedChildren.filter((child) => child.type === "parameter");
183
+ const first = parameterNodes[0];
184
+ const last = parameterNodes[parameterNodes.length - 1];
185
+ if (first && last) {
186
+ return {
187
+ text: request.source.slice(first.startIndex, last.endIndex),
188
+ skipFirstReceiver: shouldSkipFirstReceiverParameter(request.languageId, declaration),
189
+ };
190
+ }
191
+ }
192
+ return {
193
+ text: "",
194
+ skipFirstReceiver: shouldSkipFirstReceiverParameter(request.languageId, declaration),
195
+ };
196
+ }
197
+ const text = request.source.slice(params.startIndex, params.endIndex).trim();
198
+ if (text.startsWith("(") && text.endsWith(")")) {
199
+ return {
200
+ text: text.slice(1, -1),
201
+ skipFirstReceiver: shouldSkipFirstReceiverParameter(request.languageId, declaration),
202
+ };
203
+ }
204
+ return {
205
+ text,
206
+ skipFirstReceiver: shouldSkipFirstReceiverParameter(request.languageId, declaration),
207
+ };
208
+ }
209
+ function isReceiverParameter(languageId, parameter, index, skipFirstReceiver) {
210
+ if (!skipFirstReceiver) {
211
+ return false;
212
+ }
213
+ const trimmed = parameter.trim();
214
+ if (!index && (languageId === "python" || languageId === "ruby")) {
215
+ return trimmed === "self" || trimmed === "cls" || trimmed.startsWith("self:") || trimmed.startsWith("cls:");
216
+ }
217
+ if (!index && languageId === "rust") {
218
+ return trimmed === "self" || trimmed === "&self" || trimmed === "&mut self" || trimmed.startsWith("self:");
219
+ }
220
+ if (isJsTsLanguage(languageId)) {
221
+ return isThisParameter(trimmed);
222
+ }
223
+ return false;
224
+ }
225
+ function hasTopLevelEllipsis(text) {
226
+ let parenDepth = 0;
227
+ let bracketDepth = 0;
228
+ let braceDepth = 0;
229
+ let angleDepth = 0;
230
+ let quote = null;
231
+ let escaped = false;
232
+ for (let index = 0; index < text.length; index += 1) {
233
+ const char = text[index];
234
+ if (quote) {
235
+ if (escaped) {
236
+ escaped = false;
237
+ continue;
238
+ }
239
+ if (char === "\\") {
240
+ escaped = true;
241
+ continue;
242
+ }
243
+ if (char === quote) {
244
+ quote = null;
245
+ }
246
+ continue;
247
+ }
248
+ const commentEnd = findCommentEnd(text, index);
249
+ if (commentEnd !== null) {
250
+ if (commentEnd < 0) {
251
+ return false;
252
+ }
253
+ index = commentEnd - 1;
254
+ continue;
255
+ }
256
+ if (canStartRegexLiteral(text, index, 0)) {
257
+ const regexEnd = findRegexLiteralEnd(text, index);
258
+ if (regexEnd === null || regexEnd < 0) {
259
+ return false;
260
+ }
261
+ index = regexEnd - 1;
262
+ continue;
263
+ }
264
+ if (char === '"' || char === "'" || char === "`") {
265
+ quote = char;
266
+ continue;
267
+ }
268
+ if (char === "(") {
269
+ parenDepth += 1;
270
+ continue;
271
+ }
272
+ if (char === ")") {
273
+ parenDepth -= 1;
274
+ if (parenDepth < 0) {
275
+ return false;
276
+ }
277
+ continue;
278
+ }
279
+ if (char === "[") {
280
+ bracketDepth += 1;
281
+ continue;
282
+ }
283
+ if (char === "]") {
284
+ bracketDepth -= 1;
285
+ if (bracketDepth < 0) {
286
+ return false;
287
+ }
288
+ continue;
289
+ }
290
+ if (char === "{") {
291
+ braceDepth += 1;
292
+ continue;
293
+ }
294
+ if (char === "}") {
295
+ braceDepth -= 1;
296
+ if (braceDepth < 0) {
297
+ return false;
298
+ }
299
+ continue;
300
+ }
301
+ const atDelimiterTopLevel = !parenDepth && !bracketDepth && !braceDepth;
302
+ if (char === "<" && atDelimiterTopLevel) {
303
+ angleDepth += 1;
304
+ continue;
305
+ }
306
+ if (char === ">" && angleDepth && atDelimiterTopLevel && text[index - 1] !== "=") {
307
+ angleDepth -= 1;
308
+ continue;
309
+ }
310
+ if (!angleDepth && atDelimiterTopLevel && text.startsWith("...", index)) {
311
+ return true;
312
+ }
313
+ }
314
+ return false;
315
+ }
316
+ function isParameterSeparator(languageId, parameter) {
317
+ const trimmed = parameter.trim();
318
+ return languageId === "python" && (trimmed === "/" || trimmed === "*");
319
+ }
320
+ function isRestParameter(languageId, parameter) {
321
+ const trimmed = parameter.trim();
322
+ if (!trimmed) {
323
+ return false;
324
+ }
325
+ if (hasTopLevelEllipsis(trimmed)) {
326
+ return true;
327
+ }
328
+ if (languageId === "python" || languageId === "ruby") {
329
+ return trimmed.startsWith("*") || trimmed.startsWith("**");
330
+ }
331
+ if (languageId === "csharp") {
332
+ return /\bparams\b/.test(trimmed);
333
+ }
334
+ if (languageId === "kotlin") {
335
+ return /\bvararg\b/.test(trimmed);
336
+ }
337
+ return false;
338
+ }
339
+ function isOptionalParameterForLanguage(languageId, parameter) {
340
+ const trimmed = parameter.trim();
341
+ if (!trimmed) {
342
+ return false;
343
+ }
344
+ if (isJsTsLanguage(languageId)) {
345
+ return isOptionalParameter(trimmed);
346
+ }
347
+ if (languageId === "ruby" && /^[A-Za-z_]\w*:\s*\S/.test(trimmed)) {
348
+ return true;
349
+ }
350
+ return hasTopLevelEquals(trimmed);
351
+ }
352
+ function parameterSlotCount(languageId, parameter) {
353
+ const trimmed = parameter.trim();
354
+ if (!trimmed) {
355
+ return 0;
356
+ }
357
+ if ((languageId === "c" || languageId === "cpp") && trimmed === "void") {
358
+ return 0;
359
+ }
360
+ return 1;
361
+ }
362
+ function signatureFromParameterText(languageId, parameterText, angleMode, skipFirstReceiver = true) {
363
+ const parameters = splitTopLevelCommaGroups(parameterText, angleMode, languageId !== "python");
364
+ if (!parameters) {
365
+ return null;
366
+ }
367
+ let minArgs = 0;
368
+ let maxArgs = 0;
369
+ let positionalArgCount = 0;
370
+ let hasRest = false;
371
+ parameters.forEach((parameter, index) => {
372
+ const trimmed = parameter.trim();
373
+ if (!trimmed ||
374
+ isParameterSeparator(languageId, trimmed) ||
375
+ isReceiverParameter(languageId, trimmed, index, skipFirstReceiver)) {
376
+ return;
377
+ }
378
+ if (isRestParameter(languageId, trimmed)) {
379
+ hasRest = true;
380
+ return;
381
+ }
382
+ if (languageId === "ruby" && /^[A-Za-z_]\w*:/.test(trimmed)) {
383
+ maxArgs += 1;
384
+ if (!isOptionalParameterForLanguage(languageId, trimmed)) {
385
+ minArgs += 1;
386
+ }
387
+ return;
388
+ }
389
+ const slotCount = parameterSlotCount(languageId, trimmed);
390
+ if (!slotCount) {
391
+ return;
392
+ }
393
+ positionalArgCount += slotCount;
394
+ maxArgs += slotCount;
395
+ if (!isOptionalParameterForLanguage(languageId, trimmed)) {
396
+ minArgs = positionalArgCount;
397
+ }
398
+ });
399
+ return { minArgs, maxArgs: hasRest ? null : maxArgs, confidence: "high" };
400
+ }
401
+ function extractCallableSignatureFromProvider(request) {
402
+ if (!supportsCallCompatibilityLanguage(request.languageId)) {
403
+ return null;
404
+ }
405
+ const astParameterText = findSignatureParameterText(request);
406
+ if (astParameterText !== null) {
407
+ return signatureFromParameterText(request.languageId, astParameterText.text, "type-context", astParameterText.skipFirstReceiver);
408
+ }
409
+ if (!isJsTsLanguage(request.languageId)) {
410
+ return null;
411
+ }
412
+ const openIndex = findSignatureOpeningParen(request.source, request.symbolStartIndex);
413
+ const balanced = findBalancedParentheses(request.source, openIndex);
414
+ if (!balanced) {
415
+ return null;
416
+ }
417
+ return signatureFromParameterText(request.languageId, balanced.inner, "type-context");
418
+ }
419
+ function extractCallsiteArgumentsFromProvider(request) {
420
+ if (!supportsCallCompatibilityLanguage(request.languageId)) {
421
+ return null;
422
+ }
423
+ const astArgumentText = findCallsiteArgumentText(request);
424
+ if (astArgumentText !== null) {
425
+ return callsiteFromArgumentText(request.languageId, astArgumentText.text, astArgumentText.trailingArgumentCount);
426
+ }
427
+ if (!isJsTsLanguage(request.languageId)) {
428
+ return null;
429
+ }
430
+ const openIndex = findCallOpeningParen(request.source, request.calleeStartIndex, request.calleeEndIndex);
431
+ const balanced = findBalancedParentheses(request.source, openIndex);
432
+ if (!balanced) {
433
+ return null;
434
+ }
435
+ return callsiteFromArgumentText(request.languageId, balanced.inner);
436
+ }
437
+ registerCallCompatibilityExtractors({
438
+ extractSignature: extractCallableSignatureFromProvider,
439
+ extractCallsite: extractCallsiteArgumentsFromProvider,
440
+ });
441
+ export function extractCallableSignature(request) {
442
+ const provider = getCallCompatibilityProvider(request.languageId);
443
+ if (!provider) {
444
+ return null;
445
+ }
446
+ return provider.extractSignature(request);
447
+ }
448
+ export function extractCallsiteArguments(request) {
449
+ const provider = getCallCompatibilityProvider(request.languageId);
450
+ if (!provider) {
451
+ return null;
452
+ }
453
+ return provider.extractCallsite(request);
454
+ }
455
+ const callExpressionTypes = new Set([
456
+ "call_expression",
457
+ "call",
458
+ "method_invocation",
459
+ "invocation_expression",
460
+ "function_call_expression",
461
+ "object_creation_expression",
462
+ ]);
463
+ const argumentListTypes = new Set(["argument_list", "arguments", "value_arguments", "call_suffix"]);
464
+ function countTrailingClosureArguments(text) {
465
+ let startIndex = 0;
466
+ let count = 0;
467
+ while (startIndex < text.length) {
468
+ while (/\s/.test(text[startIndex] ?? "")) {
469
+ startIndex += 1;
470
+ }
471
+ if (startIndex === text.length) {
472
+ return count;
473
+ }
474
+ if (text[startIndex] !== "{") {
475
+ return null;
476
+ }
477
+ let braceDepth = 0;
478
+ let quote = null;
479
+ let escaped = false;
480
+ let closed = false;
481
+ for (let index = startIndex; index < text.length; index += 1) {
482
+ const char = text[index];
483
+ if (quote) {
484
+ if (escaped) {
485
+ escaped = false;
486
+ continue;
487
+ }
488
+ if (char === "\\") {
489
+ escaped = true;
490
+ continue;
491
+ }
492
+ if (char === quote) {
493
+ quote = null;
494
+ }
495
+ continue;
496
+ }
497
+ const commentEnd = findCommentEnd(text, index);
498
+ if (commentEnd !== null) {
499
+ if (commentEnd < 0) {
500
+ return null;
501
+ }
502
+ index = commentEnd - 1;
503
+ continue;
504
+ }
505
+ if (char === '"' || char === "'" || char === "`") {
506
+ quote = char;
507
+ continue;
508
+ }
509
+ if (char === "{") {
510
+ braceDepth += 1;
511
+ continue;
512
+ }
513
+ if (char === "}") {
514
+ braceDepth -= 1;
515
+ if (braceDepth < 0) {
516
+ return null;
517
+ }
518
+ if (!braceDepth) {
519
+ startIndex = index + 1;
520
+ count += 1;
521
+ closed = true;
522
+ break;
523
+ }
524
+ }
525
+ }
526
+ if (!closed) {
527
+ return null;
528
+ }
529
+ }
530
+ return count;
531
+ }
532
+ function findCallsiteArgumentText(request) {
533
+ if (!request.tree) {
534
+ return null;
535
+ }
536
+ const endIndex = request.calleeEndIndex ?? request.calleeStartIndex;
537
+ const node = request.tree.rootNode.descendantForIndex(request.calleeStartIndex, endIndex);
538
+ let callNode = findAncestorOfTypes(node, callExpressionTypes);
539
+ if (!callNode) {
540
+ return null;
541
+ }
542
+ let parentCallNode = callNode.parent;
543
+ while (parentCallNode && callExpressionTypes.has(parentCallNode.type)) {
544
+ const trailingText = request.source.slice(callNode.endIndex, parentCallNode.endIndex).trimStart();
545
+ if (!trailingText.startsWith("{")) {
546
+ break;
547
+ }
548
+ callNode = parentCallNode;
549
+ parentCallNode = callNode.parent;
550
+ }
551
+ if (request.calleeStartIndex < callNode.startIndex || request.calleeStartIndex > callNode.endIndex) {
552
+ return null;
553
+ }
554
+ const targetNode = callTargetNode(callNode);
555
+ if (!targetNode || request.calleeStartIndex < targetNode.startIndex || endIndex > targetNode.endIndex) {
556
+ return null;
557
+ }
558
+ const argumentNode = callNode.childForFieldName("arguments") ??
559
+ callNode.namedChildren.find((child) => argumentListTypes.has(child.type)) ??
560
+ findFirstDescendantOfTypes(callNode, argumentListTypes);
561
+ if (argumentNode) {
562
+ let text = request.source.slice(argumentNode.startIndex, argumentNode.endIndex).trim();
563
+ let trailingArgumentCount = 0;
564
+ const callSuffix = argumentNode.type === "call_suffix"
565
+ ? argumentNode
566
+ : findFirstDescendantOfTypes(callNode, new Set(["call_suffix"]));
567
+ const valueArguments = argumentNode.type === "value_arguments"
568
+ ? argumentNode
569
+ : findFirstDescendantOfTypes(callSuffix ?? argumentNode, new Set(["value_arguments"]));
570
+ if (valueArguments) {
571
+ const trailingEndIndex = callSuffix?.endIndex ?? callNode.endIndex;
572
+ const trailingText = request.source.slice(valueArguments.endIndex, trailingEndIndex).trim();
573
+ const count = countTrailingClosureArguments(trailingText);
574
+ if (count === null) {
575
+ return null;
576
+ }
577
+ text = request.source.slice(valueArguments.startIndex, valueArguments.endIndex).trim();
578
+ trailingArgumentCount = count;
579
+ }
580
+ if (text.startsWith("(") && text.endsWith(")")) {
581
+ return { text: text.slice(1, -1), trailingArgumentCount };
582
+ }
583
+ return { text, trailingArgumentCount };
584
+ }
585
+ if (request.languageId === "zig") {
586
+ const openIndex = findOpeningParen(request.source, callNode.startIndex);
587
+ const balanced = findBalancedParentheses(request.source, openIndex);
588
+ return balanced ? { text: balanced.inner, trailingArgumentCount: 0 } : null;
589
+ }
590
+ return null;
591
+ }
592
+ function hasUncountableSpreadArgument(languageId, arg) {
593
+ const trimmed = arg.trim();
594
+ if (trimmed.startsWith("...")) {
595
+ return true;
596
+ }
597
+ if (languageId === "python" || languageId === "ruby") {
598
+ return trimmed.startsWith("*") || trimmed.startsWith("**");
599
+ }
600
+ if (languageId === "php") {
601
+ return trimmed.startsWith("...");
602
+ }
603
+ return false;
604
+ }
605
+ function callsiteFromArgumentText(languageId, argumentText, trailingArgumentCount = 0) {
606
+ const args = splitTopLevelCommaGroups(argumentText, "type-context");
607
+ if (!args) {
608
+ return null;
609
+ }
610
+ for (const arg of args) {
611
+ if (hasUncountableSpreadArgument(languageId, arg)) {
612
+ return null;
613
+ }
614
+ }
615
+ return { argCount: args.length + trailingArgumentCount, confidence: "high" };
616
+ }
617
+ function isCallableChangedSymbol(symbol) {
618
+ return (symbol.kind === SymbolKind.Function ||
619
+ symbol.kind === SymbolKind.Default ||
620
+ symbol.kind === SymbolKind.Variable ||
621
+ String(symbol.kind) === "method");
622
+ }
623
+ function sameRangeStart(left, right) {
624
+ const leftIndex = left.start.index;
625
+ const rightIndex = right.start.index;
626
+ return left.start.line === right.start.line && left.start.column === right.start.column && leftIndex === rightIndex;
627
+ }
628
+ function sameDefinition(left, right) {
629
+ return (fileIdentityKey(left.file) === fileIdentityKey(right.file) &&
630
+ left.localName === right.localName &&
631
+ left.kind === right.kind &&
632
+ left.range.start.index === right.range.start.index);
633
+ }
634
+ function callableDeclarationAt(tree, startIndex) {
635
+ const node = tree.rootNode.descendantForIndex(startIndex, startIndex);
636
+ return findAncestorOfTypes(node, callableDeclarationTypes);
637
+ }
638
+ function sameOverloadContainer(left, right) {
639
+ if (!left || !right || !left.parent || !right.parent) {
640
+ return false;
641
+ }
642
+ return left.parent.id === right.parent.id;
643
+ }
644
+ function hasSameFileOverloadCandidates(index, changedSymbol, languageId, source, tree) {
645
+ const module = index.byFile.get(fileIdentityKey(changedSymbol.file));
646
+ if (!module) {
647
+ return false;
648
+ }
649
+ const changedStartIndex = changedSymbol.range.start.index;
650
+ if (changedStartIndex === undefined) {
651
+ return false;
652
+ }
653
+ const changedDeclaration = callableDeclarationAt(tree, changedStartIndex);
654
+ for (const local of module.locals) {
655
+ if (local.localName !== changedSymbol.name || sameRangeStart(local.range, changedSymbol.range)) {
656
+ continue;
657
+ }
658
+ const symbolStartIndex = local.range.start.index;
659
+ if (symbolStartIndex === undefined) {
660
+ continue;
661
+ }
662
+ const localDeclaration = callableDeclarationAt(tree, symbolStartIndex);
663
+ if (!sameOverloadContainer(changedDeclaration, localDeclaration)) {
664
+ continue;
665
+ }
666
+ const signature = extractCallableSignature({
667
+ languageId,
668
+ source,
669
+ symbolStartIndex,
670
+ tree,
671
+ });
672
+ if (signature) {
673
+ return true;
674
+ }
675
+ }
676
+ return false;
677
+ }
678
+ function rangeContainsIndex(range, index) {
679
+ const startIndex = range.start.index;
680
+ const endIndex = range.end.index;
681
+ if (startIndex === undefined || endIndex === undefined) {
682
+ return false;
683
+ }
684
+ return index >= startIndex && index <= endIndex;
685
+ }
686
+ export function buildCallerRangeIndex(index) {
687
+ const byFile = new Map();
688
+ for (const module of index.byFile.values()) {
689
+ const entries = module.locals
690
+ .flatMap((local) => {
691
+ const startIndex = local.range.start.index;
692
+ const endIndex = local.range.end.index;
693
+ if (startIndex === undefined || endIndex === undefined)
694
+ return [];
695
+ return [{ local, maxEndIndex: endIndex }];
696
+ })
697
+ .sort((left, right) => {
698
+ const startDifference = left.local.range.start.index - right.local.range.start.index;
699
+ if (startDifference !== 0)
700
+ return startDifference;
701
+ return left.local.range.end.index - right.local.range.end.index;
702
+ });
703
+ let maxEndIndex = Number.NEGATIVE_INFINITY;
704
+ for (const entry of entries) {
705
+ maxEndIndex = Math.max(maxEndIndex, entry.local.range.end.index);
706
+ entry.maxEndIndex = maxEndIndex;
707
+ }
708
+ byFile.set(fileIdentityKey(module.file), entries);
709
+ }
710
+ return byFile;
711
+ }
712
+ export function findCallerSymbolId(callerRangeIndex, ref) {
713
+ const startIndex = ref.range.start.index;
714
+ if (startIndex === undefined)
715
+ return undefined;
716
+ const entries = callerRangeIndex.get(fileIdentityKey(ref.file));
717
+ if (!entries?.length)
718
+ return undefined;
719
+ let low = 0;
720
+ let high = entries.length;
721
+ while (low < high) {
722
+ const middle = Math.floor((low + high) / 2);
723
+ const middleStart = entries[middle].local.range.start.index;
724
+ if (middleStart <= startIndex) {
725
+ low = middle + 1;
726
+ }
727
+ else {
728
+ high = middle;
729
+ }
730
+ }
731
+ let best;
732
+ for (let index = low - 1; index >= 0; index -= 1) {
733
+ const entry = entries[index];
734
+ if (entry.maxEndIndex < startIndex)
735
+ break;
736
+ if (!rangeContainsIndex(entry.local.range, startIndex))
737
+ continue;
738
+ if (!best) {
739
+ best = entry.local;
740
+ continue;
741
+ }
742
+ const localSpan = (entry.local.range.end.index ?? 0) - (entry.local.range.start.index ?? 0);
743
+ const bestSpan = (best.range.end.index ?? 0) - (best.range.start.index ?? 0);
744
+ if (localSpan < bestSpan)
745
+ best = entry.local;
746
+ }
747
+ if (!best)
748
+ return undefined;
749
+ const bestStartIndex = best.range.start.index ?? 0;
750
+ return `${best.file}::${best.localName}::${bestStartIndex}`;
751
+ }
752
+ function callTargetNode(node) {
753
+ const explicitTarget = node.childForFieldName("function") ??
754
+ node.childForFieldName("callee") ??
755
+ node.childForFieldName("name") ??
756
+ node.childForFieldName("method") ??
757
+ node.childForFieldName("member") ??
758
+ node.childForFieldName("expression");
759
+ if (explicitTarget) {
760
+ return explicitTarget;
761
+ }
762
+ const argumentTypes = new Set(["argument_list", "arguments", "value_arguments", "call_suffix"]);
763
+ return node.namedChildren.find((child) => !argumentTypes.has(child.type)) ?? null;
764
+ }
765
+ function bestGotoNode(target, symbolName, source) {
766
+ let best = target;
767
+ const walk = (node) => {
768
+ if (sliceText(node, source) === symbolName) {
769
+ best = node;
770
+ }
771
+ for (const child of node.namedChildren ?? []) {
772
+ walk(child);
773
+ }
774
+ };
775
+ walk(target);
776
+ return best;
777
+ }
778
+ async function collectVerifiedCallsiteReferences(index, changedSymbol, maxRefs, shouldIncludeReference, diagnostics) {
779
+ const refs = [];
780
+ const seen = new Set();
781
+ for (const module of index.byFile.values()) {
782
+ const file = module.file;
783
+ if (refs.length >= maxRefs) {
784
+ break;
785
+ }
786
+ if (!shouldIncludeReference(file)) {
787
+ continue;
788
+ }
789
+ const support = supportForFileWithoutHeaderSample(file, index.languageExtensions);
790
+ if (!support || !supportsCallCompatibilityLanguage(support.id)) {
791
+ continue;
792
+ }
793
+ const parsed = await tryEnsureParsedContext(file, index.parsed?.get(fileIdentityKey(file)), index.languageExtensions, diagnostics);
794
+ if (!parsed) {
795
+ continue;
796
+ }
797
+ const walk = async (node) => {
798
+ if (refs.length >= maxRefs) {
799
+ return;
800
+ }
801
+ if (callExpressionTypes.has(node.type)) {
802
+ const target = callTargetNode(node);
803
+ if (target) {
804
+ const gotoNode = bestGotoNode(target, changedSymbol.name, parsed.source);
805
+ if (sliceText(gotoNode, parsed.source) === changedSymbol.name) {
806
+ const result = await goToDefinition(index, {
807
+ file,
808
+ line: gotoNode.startPosition.row + 1,
809
+ column: gotoNode.startPosition.column + 1,
810
+ });
811
+ if (result.status === "ok") {
812
+ const def = {
813
+ file: changedSymbol.file,
814
+ localName: changedSymbol.name,
815
+ kind: changedSymbol.kind,
816
+ range: changedSymbol.range,
817
+ };
818
+ if (sameDefinition(result.definition, def)) {
819
+ const range = toRange(gotoNode);
820
+ const key = `${fileIdentityKey(file)}:${range.start.line}:${range.start.column}`;
821
+ if (!seen.has(key)) {
822
+ seen.add(key);
823
+ refs.push({ file, range });
824
+ }
825
+ }
826
+ }
827
+ }
828
+ }
829
+ }
830
+ for (const child of node.namedChildren ?? []) {
831
+ await walk(child);
832
+ }
833
+ };
834
+ await walk(parsed.tree.rootNode);
835
+ }
836
+ return refs;
837
+ }
838
+ function classifyCompatibility(expected, actual) {
839
+ if (actual.argCount < expected.minArgs) {
840
+ return { status: "likely_mismatch", reason: "argument_count_below_minimum" };
841
+ }
842
+ if (expected.maxArgs !== null && actual.argCount > expected.maxArgs) {
843
+ return { status: "likely_mismatch", reason: "argument_count_above_maximum" };
844
+ }
845
+ return { status: "compatible", reason: "compatible_argument_count" };
846
+ }
847
+ function tryEnsureParsedContext(file, parsedEntry, languageExtensions, diagnostics) {
848
+ return ensureParsedContext(file, parsedEntry, languageExtensions).catch(() => {
849
+ incrementSkippedReason(diagnostics, "parse-failed");
850
+ return null;
851
+ });
852
+ }
853
+ function incrementSkippedReason(diagnostics, reason) {
854
+ if (!diagnostics) {
855
+ return;
856
+ }
857
+ diagnostics.skippedByReason[reason] = (diagnostics.skippedByReason[reason] ?? 0) + 1;
858
+ }
859
+ async function buildCallCompatibilityHintForReference(input) {
860
+ const { index, changedSymbol, signature, ref, callerRangeIndex, diagnostics, projectRoot } = input;
861
+ if (fileIdentityKey(ref.file) === fileIdentityKey(changedSymbol.file) &&
862
+ sameRangeStart(ref.range, changedSymbol.range)) {
863
+ return null;
864
+ }
865
+ const calleeStartIndex = ref.range.start.index;
866
+ if (calleeStartIndex === undefined) {
867
+ return null;
868
+ }
869
+ const parsedCallsite = await tryEnsureParsedContext(ref.file, index.parsed?.get(fileIdentityKey(ref.file)), index.languageExtensions, diagnostics);
870
+ if (!parsedCallsite) {
871
+ return null;
872
+ }
873
+ const callsiteRequest = {
874
+ languageId: parsedCallsite.sup.id,
875
+ source: parsedCallsite.source,
876
+ calleeStartIndex,
877
+ tree: parsedCallsite.tree,
878
+ ...(ref.range.end.index !== undefined ? { calleeEndIndex: ref.range.end.index } : {}),
879
+ };
880
+ const actual = extractCallsiteArguments(callsiteRequest);
881
+ if (!actual) {
882
+ if (diagnostics) {
883
+ diagnostics.unknownCallsites += 1;
884
+ }
885
+ return null;
886
+ }
887
+ const compatibility = classifyCompatibility(signature, actual);
888
+ const callerSymbolId = findCallerSymbolId(callerRangeIndex, ref);
889
+ const callsiteFile = projectRoot ? path.relative(projectRoot, ref.file).replace(/\\/g, "/") : ref.file;
890
+ return {
891
+ ...compatibility,
892
+ changedSymbolId: changedSymbol.id,
893
+ callsiteFile,
894
+ callsiteRange: ref.range,
895
+ ...(callerSymbolId ? { callerSymbolId } : {}),
896
+ expected: signature,
897
+ actual,
898
+ };
899
+ }
900
+ function resetCallCompatibilityHints(changedSymbols) {
901
+ for (const changedSymbol of changedSymbols) {
902
+ delete changedSymbol.callCompatibility;
903
+ }
904
+ }
905
+ export async function attachCallCompatibilityHints(index, changedSymbols, options) {
906
+ resetCallCompatibilityHints(changedSymbols);
907
+ if (options.maxRefs <= 0) {
908
+ return;
909
+ }
910
+ const callerRangeIndex = buildCallerRangeIndex(index);
911
+ const diagnostics = options.diagnostics?.callCompatibility;
912
+ if (diagnostics) {
913
+ diagnostics.supportedLanguages = [...getCallCompatibilitySupportedLanguages()];
914
+ }
915
+ for (const changedSymbol of changedSymbols) {
916
+ if (!changedSymbol.signatureChanged || !isCallableChangedSymbol(changedSymbol)) {
917
+ if (changedSymbol.signatureChanged) {
918
+ incrementSkippedReason(diagnostics, "not_callable");
919
+ }
920
+ continue;
921
+ }
922
+ if (options.workBudget && !canStartReferenceLookup(options.workBudget)) {
923
+ recordReferenceLookupOmitted(options.workBudget, 1);
924
+ continue;
925
+ }
926
+ const parsedDefinition = await tryEnsureParsedContext(changedSymbol.file, index.parsed?.get(fileIdentityKey(changedSymbol.file)), index.languageExtensions, diagnostics);
927
+ if (!parsedDefinition) {
928
+ continue;
929
+ }
930
+ if (!supportsCallCompatibilityLanguage(parsedDefinition.sup.id)) {
931
+ if (diagnostics && !diagnostics.unsupportedLanguages.includes(parsedDefinition.sup.id)) {
932
+ diagnostics.unsupportedLanguages.push(parsedDefinition.sup.id);
933
+ }
934
+ incrementSkippedReason(diagnostics, "unsupported_language");
935
+ continue;
936
+ }
937
+ const signature = extractCallableSignature({
938
+ languageId: parsedDefinition.sup.id,
939
+ source: parsedDefinition.source,
940
+ symbolStartIndex: changedSymbol.range.start.index ?? 0,
941
+ tree: parsedDefinition.tree,
942
+ });
943
+ if (!signature) {
944
+ incrementSkippedReason(diagnostics, "signature_unknown");
945
+ continue;
946
+ }
947
+ if (hasSameFileOverloadCandidates(index, changedSymbol, parsedDefinition.sup.id, parsedDefinition.source, parsedDefinition.tree)) {
948
+ incrementSkippedReason(diagnostics, "overload_set");
949
+ continue;
950
+ }
951
+ const referenceScanLimit = referenceScanLimitForCallsites(options.maxRefs);
952
+ const referenceDef = {
953
+ file: changedSymbol.file,
954
+ localName: changedSymbol.name,
955
+ kind: changedSymbol.kind,
956
+ range: changedSymbol.range,
957
+ };
958
+ if (options.workBudget) {
959
+ recordReferenceLookupStarted(options.workBudget);
960
+ }
961
+ const referenceResult = await (options.referenceCache
962
+ ? options.referenceCache.get(index, referenceDef, { maxReferences: referenceScanLimit })
963
+ : findReferences(index, { def: referenceDef }, { maxReferences: referenceScanLimit }));
964
+ let refs = [];
965
+ const shouldIncludeReference = options.shouldIncludeReference ?? (() => true);
966
+ if (referenceResult.status === "ok") {
967
+ refs = referenceResult.references.filter((ref) => shouldIncludeReference(ref.file));
968
+ }
969
+ const seenRefs = new Set(refs.map((ref) => `${ref.file}:${ref.range.start.line}:${ref.range.start.column}`));
970
+ const hints = [];
971
+ let consideredCallsites = 0;
972
+ const addHintForReference = async (ref) => {
973
+ if (consideredCallsites >= options.maxRefs) {
974
+ return;
975
+ }
976
+ const hint = await buildCallCompatibilityHintForReference({
977
+ index,
978
+ changedSymbol,
979
+ signature,
980
+ ref,
981
+ callerRangeIndex,
982
+ diagnostics,
983
+ ...(options.projectRoot ? { projectRoot: options.projectRoot } : {}),
984
+ });
985
+ if (!hint) {
986
+ return;
987
+ }
988
+ consideredCallsites += 1;
989
+ hints.push(hint);
990
+ };
991
+ for (const ref of refs) {
992
+ if (consideredCallsites >= options.maxRefs) {
993
+ break;
994
+ }
995
+ await addHintForReference(ref);
996
+ }
997
+ const shouldRunVerifiedScan = consideredCallsites < options.maxRefs && (referenceResult.status !== "ok" || !consideredCallsites);
998
+ if (shouldRunVerifiedScan) {
999
+ const verifiedScanLimit = Math.max(0, Math.min(referenceScanLimit - refs.length, options.maxRefs - consideredCallsites));
1000
+ if (verifiedScanLimit) {
1001
+ const verifiedCallsites = await collectVerifiedCallsiteReferences(index, changedSymbol, verifiedScanLimit, shouldIncludeReference, diagnostics);
1002
+ for (const ref of verifiedCallsites) {
1003
+ if (consideredCallsites >= options.maxRefs) {
1004
+ break;
1005
+ }
1006
+ const key = `${ref.file}:${ref.range.start.line}:${ref.range.start.column}`;
1007
+ if (seenRefs.has(key)) {
1008
+ continue;
1009
+ }
1010
+ seenRefs.add(key);
1011
+ await addHintForReference(ref);
1012
+ }
1013
+ }
1014
+ }
1015
+ if (hints.length) {
1016
+ changedSymbol.callCompatibility = hints;
1017
+ if (diagnostics) {
1018
+ diagnostics.emittedHints += hints.length;
1019
+ }
1020
+ }
1021
+ }
1022
+ }
1023
+ //# sourceMappingURL=call-compatibility.js.map