@vizalice/codegraph 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (821) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +872 -0
  3. package/dist/bin/codegraph.d.ts +26 -0
  4. package/dist/bin/codegraph.d.ts.map +1 -0
  5. package/dist/bin/codegraph.js +2324 -0
  6. package/dist/bin/codegraph.js.map +1 -0
  7. package/dist/bin/command-supervision.d.ts +49 -0
  8. package/dist/bin/command-supervision.d.ts.map +1 -0
  9. package/dist/bin/command-supervision.js +95 -0
  10. package/dist/bin/command-supervision.js.map +1 -0
  11. package/dist/bin/fatal-handler.d.ts +20 -0
  12. package/dist/bin/fatal-handler.d.ts.map +1 -0
  13. package/dist/bin/fatal-handler.js +118 -0
  14. package/dist/bin/fatal-handler.js.map +1 -0
  15. package/dist/bin/node-version-check.d.ts +37 -0
  16. package/dist/bin/node-version-check.d.ts.map +1 -0
  17. package/dist/bin/node-version-check.js +79 -0
  18. package/dist/bin/node-version-check.js.map +1 -0
  19. package/dist/bin/uninstall.d.ts +14 -0
  20. package/dist/bin/uninstall.d.ts.map +1 -0
  21. package/dist/bin/uninstall.js +36 -0
  22. package/dist/bin/uninstall.js.map +1 -0
  23. package/dist/context/formatter.d.ts +36 -0
  24. package/dist/context/formatter.d.ts.map +1 -0
  25. package/dist/context/formatter.js +269 -0
  26. package/dist/context/formatter.js.map +1 -0
  27. package/dist/context/index.d.ts +119 -0
  28. package/dist/context/index.d.ts.map +1 -0
  29. package/dist/context/index.js +1333 -0
  30. package/dist/context/index.js.map +1 -0
  31. package/dist/context/markers.d.ts +19 -0
  32. package/dist/context/markers.d.ts.map +1 -0
  33. package/dist/context/markers.js +22 -0
  34. package/dist/context/markers.js.map +1 -0
  35. package/dist/db/index.d.ts +378 -0
  36. package/dist/db/index.d.ts.map +1 -0
  37. package/dist/db/index.js +831 -0
  38. package/dist/db/index.js.map +1 -0
  39. package/dist/db/migrations.d.ts +44 -0
  40. package/dist/db/migrations.d.ts.map +1 -0
  41. package/dist/db/migrations.js +236 -0
  42. package/dist/db/migrations.js.map +1 -0
  43. package/dist/db/queries.d.ts +705 -0
  44. package/dist/db/queries.d.ts.map +1 -0
  45. package/dist/db/queries.js +2435 -0
  46. package/dist/db/queries.js.map +1 -0
  47. package/dist/db/schema.sql +207 -0
  48. package/dist/db/sqlite-adapter.d.ts +55 -0
  49. package/dist/db/sqlite-adapter.d.ts.map +1 -0
  50. package/dist/db/sqlite-adapter.js +135 -0
  51. package/dist/db/sqlite-adapter.js.map +1 -0
  52. package/dist/db/wal-valve.d.ts +119 -0
  53. package/dist/db/wal-valve.d.ts.map +1 -0
  54. package/dist/db/wal-valve.js +290 -0
  55. package/dist/db/wal-valve.js.map +1 -0
  56. package/dist/directory.d.ts +183 -0
  57. package/dist/directory.d.ts.map +1 -0
  58. package/dist/directory.js +797 -0
  59. package/dist/directory.js.map +1 -0
  60. package/dist/errors.d.ts +136 -0
  61. package/dist/errors.d.ts.map +1 -0
  62. package/dist/errors.js +219 -0
  63. package/dist/errors.js.map +1 -0
  64. package/dist/extraction/astro-extractor.d.ts +79 -0
  65. package/dist/extraction/astro-extractor.d.ts.map +1 -0
  66. package/dist/extraction/astro-extractor.js +320 -0
  67. package/dist/extraction/astro-extractor.js.map +1 -0
  68. package/dist/extraction/cfml-extractor.d.ts +107 -0
  69. package/dist/extraction/cfml-extractor.d.ts.map +1 -0
  70. package/dist/extraction/cfml-extractor.js +494 -0
  71. package/dist/extraction/cfml-extractor.js.map +1 -0
  72. package/dist/extraction/dfm-extractor.d.ts +31 -0
  73. package/dist/extraction/dfm-extractor.d.ts.map +1 -0
  74. package/dist/extraction/dfm-extractor.js +151 -0
  75. package/dist/extraction/dfm-extractor.js.map +1 -0
  76. package/dist/extraction/extraction-version.d.ts +25 -0
  77. package/dist/extraction/extraction-version.d.ts.map +1 -0
  78. package/dist/extraction/extraction-version.js +28 -0
  79. package/dist/extraction/extraction-version.js.map +1 -0
  80. package/dist/extraction/function-ref.d.ts +118 -0
  81. package/dist/extraction/function-ref.d.ts.map +1 -0
  82. package/dist/extraction/function-ref.js +733 -0
  83. package/dist/extraction/function-ref.js.map +1 -0
  84. package/dist/extraction/generated-detection.d.ts +66 -0
  85. package/dist/extraction/generated-detection.d.ts.map +1 -0
  86. package/dist/extraction/generated-detection.js +248 -0
  87. package/dist/extraction/generated-detection.js.map +1 -0
  88. package/dist/extraction/grammars.d.ts +138 -0
  89. package/dist/extraction/grammars.d.ts.map +1 -0
  90. package/dist/extraction/grammars.js +694 -0
  91. package/dist/extraction/grammars.js.map +1 -0
  92. package/dist/extraction/index.d.ts +308 -0
  93. package/dist/extraction/index.d.ts.map +1 -0
  94. package/dist/extraction/index.js +2711 -0
  95. package/dist/extraction/index.js.map +1 -0
  96. package/dist/extraction/kernel/decode.d.ts +9 -0
  97. package/dist/extraction/kernel/decode.d.ts.map +1 -0
  98. package/dist/extraction/kernel/decode.js +162 -0
  99. package/dist/extraction/kernel/decode.js.map +1 -0
  100. package/dist/extraction/kernel/index.d.ts +64 -0
  101. package/dist/extraction/kernel/index.d.ts.map +1 -0
  102. package/dist/extraction/kernel/index.js +279 -0
  103. package/dist/extraction/kernel/index.js.map +1 -0
  104. package/dist/extraction/kernel/layout.d.ts +101 -0
  105. package/dist/extraction/kernel/layout.d.ts.map +1 -0
  106. package/dist/extraction/kernel/layout.js +104 -0
  107. package/dist/extraction/kernel/layout.js.map +1 -0
  108. package/dist/extraction/kernel/loader.d.ts +103 -0
  109. package/dist/extraction/kernel/loader.d.ts.map +1 -0
  110. package/dist/extraction/kernel/loader.js +146 -0
  111. package/dist/extraction/kernel/loader.js.map +1 -0
  112. package/dist/extraction/languages/arkts.d.ts +3 -0
  113. package/dist/extraction/languages/arkts.d.ts.map +1 -0
  114. package/dist/extraction/languages/arkts.js +127 -0
  115. package/dist/extraction/languages/arkts.js.map +1 -0
  116. package/dist/extraction/languages/c-cpp.d.ts +124 -0
  117. package/dist/extraction/languages/c-cpp.d.ts.map +1 -0
  118. package/dist/extraction/languages/c-cpp.js +1689 -0
  119. package/dist/extraction/languages/c-cpp.js.map +1 -0
  120. package/dist/extraction/languages/cfquery.d.ts +12 -0
  121. package/dist/extraction/languages/cfquery.d.ts.map +1 -0
  122. package/dist/extraction/languages/cfquery.js +28 -0
  123. package/dist/extraction/languages/cfquery.js.map +1 -0
  124. package/dist/extraction/languages/cfscript.d.ts +3 -0
  125. package/dist/extraction/languages/cfscript.d.ts.map +1 -0
  126. package/dist/extraction/languages/cfscript.js +73 -0
  127. package/dist/extraction/languages/cfscript.js.map +1 -0
  128. package/dist/extraction/languages/cobol.d.ts +33 -0
  129. package/dist/extraction/languages/cobol.d.ts.map +1 -0
  130. package/dist/extraction/languages/cobol.js +499 -0
  131. package/dist/extraction/languages/cobol.js.map +1 -0
  132. package/dist/extraction/languages/csharp.d.ts +25 -0
  133. package/dist/extraction/languages/csharp.d.ts.map +1 -0
  134. package/dist/extraction/languages/csharp.js +175 -0
  135. package/dist/extraction/languages/csharp.js.map +1 -0
  136. package/dist/extraction/languages/dart.d.ts +3 -0
  137. package/dist/extraction/languages/dart.d.ts.map +1 -0
  138. package/dist/extraction/languages/dart.js +374 -0
  139. package/dist/extraction/languages/dart.js.map +1 -0
  140. package/dist/extraction/languages/erlang.d.ts +3 -0
  141. package/dist/extraction/languages/erlang.d.ts.map +1 -0
  142. package/dist/extraction/languages/erlang.js +350 -0
  143. package/dist/extraction/languages/erlang.js.map +1 -0
  144. package/dist/extraction/languages/go.d.ts +3 -0
  145. package/dist/extraction/languages/go.d.ts.map +1 -0
  146. package/dist/extraction/languages/go.js +111 -0
  147. package/dist/extraction/languages/go.js.map +1 -0
  148. package/dist/extraction/languages/index.d.ts +10 -0
  149. package/dist/extraction/languages/index.d.ts.map +1 -0
  150. package/dist/extraction/languages/index.js +71 -0
  151. package/dist/extraction/languages/index.js.map +1 -0
  152. package/dist/extraction/languages/java.d.ts +3 -0
  153. package/dist/extraction/languages/java.d.ts.map +1 -0
  154. package/dist/extraction/languages/java.js +315 -0
  155. package/dist/extraction/languages/java.js.map +1 -0
  156. package/dist/extraction/languages/javascript.d.ts +3 -0
  157. package/dist/extraction/languages/javascript.d.ts.map +1 -0
  158. package/dist/extraction/languages/javascript.js +106 -0
  159. package/dist/extraction/languages/javascript.js.map +1 -0
  160. package/dist/extraction/languages/kotlin.d.ts +3 -0
  161. package/dist/extraction/languages/kotlin.d.ts.map +1 -0
  162. package/dist/extraction/languages/kotlin.js +379 -0
  163. package/dist/extraction/languages/kotlin.js.map +1 -0
  164. package/dist/extraction/languages/lua.d.ts +3 -0
  165. package/dist/extraction/languages/lua.d.ts.map +1 -0
  166. package/dist/extraction/languages/lua.js +150 -0
  167. package/dist/extraction/languages/lua.js.map +1 -0
  168. package/dist/extraction/languages/luau.d.ts +3 -0
  169. package/dist/extraction/languages/luau.d.ts.map +1 -0
  170. package/dist/extraction/languages/luau.js +37 -0
  171. package/dist/extraction/languages/luau.js.map +1 -0
  172. package/dist/extraction/languages/nix.d.ts +3 -0
  173. package/dist/extraction/languages/nix.d.ts.map +1 -0
  174. package/dist/extraction/languages/nix.js +294 -0
  175. package/dist/extraction/languages/nix.js.map +1 -0
  176. package/dist/extraction/languages/objc.d.ts +3 -0
  177. package/dist/extraction/languages/objc.d.ts.map +1 -0
  178. package/dist/extraction/languages/objc.js +179 -0
  179. package/dist/extraction/languages/objc.js.map +1 -0
  180. package/dist/extraction/languages/pascal.d.ts +3 -0
  181. package/dist/extraction/languages/pascal.d.ts.map +1 -0
  182. package/dist/extraction/languages/pascal.js +77 -0
  183. package/dist/extraction/languages/pascal.js.map +1 -0
  184. package/dist/extraction/languages/php.d.ts +3 -0
  185. package/dist/extraction/languages/php.d.ts.map +1 -0
  186. package/dist/extraction/languages/php.js +196 -0
  187. package/dist/extraction/languages/php.js.map +1 -0
  188. package/dist/extraction/languages/python.d.ts +3 -0
  189. package/dist/extraction/languages/python.d.ts.map +1 -0
  190. package/dist/extraction/languages/python.js +56 -0
  191. package/dist/extraction/languages/python.js.map +1 -0
  192. package/dist/extraction/languages/r.d.ts +3 -0
  193. package/dist/extraction/languages/r.d.ts.map +1 -0
  194. package/dist/extraction/languages/r.js +314 -0
  195. package/dist/extraction/languages/r.js.map +1 -0
  196. package/dist/extraction/languages/ruby.d.ts +3 -0
  197. package/dist/extraction/languages/ruby.d.ts.map +1 -0
  198. package/dist/extraction/languages/ruby.js +149 -0
  199. package/dist/extraction/languages/ruby.js.map +1 -0
  200. package/dist/extraction/languages/rust.d.ts +3 -0
  201. package/dist/extraction/languages/rust.d.ts.map +1 -0
  202. package/dist/extraction/languages/rust.js +145 -0
  203. package/dist/extraction/languages/rust.js.map +1 -0
  204. package/dist/extraction/languages/scala.d.ts +3 -0
  205. package/dist/extraction/languages/scala.d.ts.map +1 -0
  206. package/dist/extraction/languages/scala.js +209 -0
  207. package/dist/extraction/languages/scala.js.map +1 -0
  208. package/dist/extraction/languages/solidity.d.ts +3 -0
  209. package/dist/extraction/languages/solidity.d.ts.map +1 -0
  210. package/dist/extraction/languages/solidity.js +293 -0
  211. package/dist/extraction/languages/solidity.js.map +1 -0
  212. package/dist/extraction/languages/swift.d.ts +3 -0
  213. package/dist/extraction/languages/swift.d.ts.map +1 -0
  214. package/dist/extraction/languages/swift.js +152 -0
  215. package/dist/extraction/languages/swift.js.map +1 -0
  216. package/dist/extraction/languages/terraform.d.ts +3 -0
  217. package/dist/extraction/languages/terraform.d.ts.map +1 -0
  218. package/dist/extraction/languages/terraform.js +641 -0
  219. package/dist/extraction/languages/terraform.js.map +1 -0
  220. package/dist/extraction/languages/typescript.d.ts +16 -0
  221. package/dist/extraction/languages/typescript.d.ts.map +1 -0
  222. package/dist/extraction/languages/typescript.js +167 -0
  223. package/dist/extraction/languages/typescript.js.map +1 -0
  224. package/dist/extraction/languages/vbnet.d.ts +11 -0
  225. package/dist/extraction/languages/vbnet.d.ts.map +1 -0
  226. package/dist/extraction/languages/vbnet.js +141 -0
  227. package/dist/extraction/languages/vbnet.js.map +1 -0
  228. package/dist/extraction/liquid-extractor.d.ts +59 -0
  229. package/dist/extraction/liquid-extractor.d.ts.map +1 -0
  230. package/dist/extraction/liquid-extractor.js +357 -0
  231. package/dist/extraction/liquid-extractor.js.map +1 -0
  232. package/dist/extraction/mybatis-extractor.d.ts +68 -0
  233. package/dist/extraction/mybatis-extractor.d.ts.map +1 -0
  234. package/dist/extraction/mybatis-extractor.js +300 -0
  235. package/dist/extraction/mybatis-extractor.js.map +1 -0
  236. package/dist/extraction/parse-pool.d.ts +160 -0
  237. package/dist/extraction/parse-pool.d.ts.map +1 -0
  238. package/dist/extraction/parse-pool.js +402 -0
  239. package/dist/extraction/parse-pool.js.map +1 -0
  240. package/dist/extraction/parse-worker.d.ts +8 -0
  241. package/dist/extraction/parse-worker.d.ts.map +1 -0
  242. package/dist/extraction/parse-worker.js +138 -0
  243. package/dist/extraction/parse-worker.js.map +1 -0
  244. package/dist/extraction/razor-extractor.d.ts +42 -0
  245. package/dist/extraction/razor-extractor.d.ts.map +1 -0
  246. package/dist/extraction/razor-extractor.js +285 -0
  247. package/dist/extraction/razor-extractor.js.map +1 -0
  248. package/dist/extraction/store-worker.d.ts +24 -0
  249. package/dist/extraction/store-worker.d.ts.map +1 -0
  250. package/dist/extraction/store-worker.js +139 -0
  251. package/dist/extraction/store-worker.js.map +1 -0
  252. package/dist/extraction/store-writer.d.ts +63 -0
  253. package/dist/extraction/store-writer.d.ts.map +1 -0
  254. package/dist/extraction/store-writer.js +174 -0
  255. package/dist/extraction/store-writer.js.map +1 -0
  256. package/dist/extraction/svelte-extractor.d.ts +56 -0
  257. package/dist/extraction/svelte-extractor.d.ts.map +1 -0
  258. package/dist/extraction/svelte-extractor.js +275 -0
  259. package/dist/extraction/svelte-extractor.js.map +1 -0
  260. package/dist/extraction/tree-sitter-helpers.d.ts +28 -0
  261. package/dist/extraction/tree-sitter-helpers.d.ts.map +1 -0
  262. package/dist/extraction/tree-sitter-helpers.js +153 -0
  263. package/dist/extraction/tree-sitter-helpers.js.map +1 -0
  264. package/dist/extraction/tree-sitter-types.d.ts +260 -0
  265. package/dist/extraction/tree-sitter-types.d.ts.map +1 -0
  266. package/dist/extraction/tree-sitter-types.js +10 -0
  267. package/dist/extraction/tree-sitter-types.js.map +1 -0
  268. package/dist/extraction/tree-sitter.d.ts +728 -0
  269. package/dist/extraction/tree-sitter.d.ts.map +1 -0
  270. package/dist/extraction/tree-sitter.js +6676 -0
  271. package/dist/extraction/tree-sitter.js.map +1 -0
  272. package/dist/extraction/vue-extractor.d.ts +51 -0
  273. package/dist/extraction/vue-extractor.d.ts.map +1 -0
  274. package/dist/extraction/vue-extractor.js +254 -0
  275. package/dist/extraction/vue-extractor.js.map +1 -0
  276. package/dist/extraction/wasm/tree-sitter-arkts.wasm +0 -0
  277. package/dist/extraction/wasm/tree-sitter-c.wasm +0 -0
  278. package/dist/extraction/wasm/tree-sitter-c_sharp.wasm +0 -0
  279. package/dist/extraction/wasm/tree-sitter-cfml.wasm +0 -0
  280. package/dist/extraction/wasm/tree-sitter-cfquery.wasm +0 -0
  281. package/dist/extraction/wasm/tree-sitter-cfscript.wasm +0 -0
  282. package/dist/extraction/wasm/tree-sitter-cobol.wasm +0 -0
  283. package/dist/extraction/wasm/tree-sitter-cpp.wasm +0 -0
  284. package/dist/extraction/wasm/tree-sitter-dart.wasm +0 -0
  285. package/dist/extraction/wasm/tree-sitter-erlang.wasm +0 -0
  286. package/dist/extraction/wasm/tree-sitter-go.wasm +0 -0
  287. package/dist/extraction/wasm/tree-sitter-java.wasm +0 -0
  288. package/dist/extraction/wasm/tree-sitter-javascript.wasm +0 -0
  289. package/dist/extraction/wasm/tree-sitter-kotlin.wasm +0 -0
  290. package/dist/extraction/wasm/tree-sitter-lua.wasm +0 -0
  291. package/dist/extraction/wasm/tree-sitter-luau.wasm +0 -0
  292. package/dist/extraction/wasm/tree-sitter-nix.wasm +0 -0
  293. package/dist/extraction/wasm/tree-sitter-pascal.wasm +0 -0
  294. package/dist/extraction/wasm/tree-sitter-php.wasm +0 -0
  295. package/dist/extraction/wasm/tree-sitter-python.wasm +0 -0
  296. package/dist/extraction/wasm/tree-sitter-r.wasm +0 -0
  297. package/dist/extraction/wasm/tree-sitter-ruby.wasm +0 -0
  298. package/dist/extraction/wasm/tree-sitter-rust.wasm +0 -0
  299. package/dist/extraction/wasm/tree-sitter-scala.wasm +0 -0
  300. package/dist/extraction/wasm/tree-sitter-swift.wasm +0 -0
  301. package/dist/extraction/wasm/tree-sitter-terraform.wasm +0 -0
  302. package/dist/extraction/wasm/tree-sitter-tsx.wasm +0 -0
  303. package/dist/extraction/wasm/tree-sitter-typescript.wasm +0 -0
  304. package/dist/extraction/wasm/tree-sitter-vbnet.wasm +0 -0
  305. package/dist/extraction/wasm-runtime-flags.d.ts +53 -0
  306. package/dist/extraction/wasm-runtime-flags.d.ts.map +1 -0
  307. package/dist/extraction/wasm-runtime-flags.js +130 -0
  308. package/dist/extraction/wasm-runtime-flags.js.map +1 -0
  309. package/dist/graph/index.d.ts +8 -0
  310. package/dist/graph/index.d.ts.map +1 -0
  311. package/dist/graph/index.js +13 -0
  312. package/dist/graph/index.js.map +1 -0
  313. package/dist/graph/queries.d.ts +106 -0
  314. package/dist/graph/queries.d.ts.map +1 -0
  315. package/dist/graph/queries.js +341 -0
  316. package/dist/graph/queries.js.map +1 -0
  317. package/dist/graph/traversal.d.ts +127 -0
  318. package/dist/graph/traversal.d.ts.map +1 -0
  319. package/dist/graph/traversal.js +599 -0
  320. package/dist/graph/traversal.js.map +1 -0
  321. package/dist/index.d.ts +677 -0
  322. package/dist/index.d.ts.map +1 -0
  323. package/dist/index.js +1718 -0
  324. package/dist/index.js.map +1 -0
  325. package/dist/installer/beta-signup.d.ts +54 -0
  326. package/dist/installer/beta-signup.d.ts.map +1 -0
  327. package/dist/installer/beta-signup.js +178 -0
  328. package/dist/installer/beta-signup.js.map +1 -0
  329. package/dist/installer/config-writer.d.ts +28 -0
  330. package/dist/installer/config-writer.d.ts.map +1 -0
  331. package/dist/installer/config-writer.js +91 -0
  332. package/dist/installer/config-writer.js.map +1 -0
  333. package/dist/installer/index.d.ts +144 -0
  334. package/dist/installer/index.d.ts.map +1 -0
  335. package/dist/installer/index.js +634 -0
  336. package/dist/installer/index.js.map +1 -0
  337. package/dist/installer/instructions-template.d.ts +41 -0
  338. package/dist/installer/instructions-template.d.ts.map +1 -0
  339. package/dist/installer/instructions-template.js +53 -0
  340. package/dist/installer/instructions-template.js.map +1 -0
  341. package/dist/installer/targets/antigravity.d.ts +57 -0
  342. package/dist/installer/targets/antigravity.d.ts.map +1 -0
  343. package/dist/installer/targets/antigravity.js +308 -0
  344. package/dist/installer/targets/antigravity.js.map +1 -0
  345. package/dist/installer/targets/claude.d.ts +62 -0
  346. package/dist/installer/targets/claude.d.ts.map +1 -0
  347. package/dist/installer/targets/claude.js +486 -0
  348. package/dist/installer/targets/claude.js.map +1 -0
  349. package/dist/installer/targets/codex.d.ts +18 -0
  350. package/dist/installer/targets/codex.d.ts.map +1 -0
  351. package/dist/installer/targets/codex.js +185 -0
  352. package/dist/installer/targets/codex.js.map +1 -0
  353. package/dist/installer/targets/copilot-cli.d.ts +32 -0
  354. package/dist/installer/targets/copilot-cli.d.ts.map +1 -0
  355. package/dist/installer/targets/copilot-cli.js +209 -0
  356. package/dist/installer/targets/copilot-cli.js.map +1 -0
  357. package/dist/installer/targets/copilot-jetbrains.d.ts +42 -0
  358. package/dist/installer/targets/copilot-jetbrains.d.ts.map +1 -0
  359. package/dist/installer/targets/copilot-jetbrains.js +238 -0
  360. package/dist/installer/targets/copilot-jetbrains.js.map +1 -0
  361. package/dist/installer/targets/copilot-vscode.d.ts +47 -0
  362. package/dist/installer/targets/copilot-vscode.d.ts.map +1 -0
  363. package/dist/installer/targets/copilot-vscode.js +219 -0
  364. package/dist/installer/targets/copilot-vscode.js.map +1 -0
  365. package/dist/installer/targets/cursor.d.ts +35 -0
  366. package/dist/installer/targets/cursor.d.ts.map +1 -0
  367. package/dist/installer/targets/cursor.js +254 -0
  368. package/dist/installer/targets/cursor.js.map +1 -0
  369. package/dist/installer/targets/dsh.d.ts +97 -0
  370. package/dist/installer/targets/dsh.d.ts.map +1 -0
  371. package/dist/installer/targets/dsh.js +358 -0
  372. package/dist/installer/targets/dsh.js.map +1 -0
  373. package/dist/installer/targets/gemini.d.ts +26 -0
  374. package/dist/installer/targets/gemini.d.ts.map +1 -0
  375. package/dist/installer/targets/gemini.js +165 -0
  376. package/dist/installer/targets/gemini.js.map +1 -0
  377. package/dist/installer/targets/hermes.d.ts +18 -0
  378. package/dist/installer/targets/hermes.d.ts.map +1 -0
  379. package/dist/installer/targets/hermes.js +359 -0
  380. package/dist/installer/targets/hermes.js.map +1 -0
  381. package/dist/installer/targets/kiro.d.ts +27 -0
  382. package/dist/installer/targets/kiro.d.ts.map +1 -0
  383. package/dist/installer/targets/kiro.js +178 -0
  384. package/dist/installer/targets/kiro.js.map +1 -0
  385. package/dist/installer/targets/opencode.d.ts +38 -0
  386. package/dist/installer/targets/opencode.d.ts.map +1 -0
  387. package/dist/installer/targets/opencode.js +288 -0
  388. package/dist/installer/targets/opencode.js.map +1 -0
  389. package/dist/installer/targets/registry.d.ts +35 -0
  390. package/dist/installer/targets/registry.d.ts.map +1 -0
  391. package/dist/installer/targets/registry.js +101 -0
  392. package/dist/installer/targets/registry.js.map +1 -0
  393. package/dist/installer/targets/shared.d.ts +132 -0
  394. package/dist/installer/targets/shared.d.ts.map +1 -0
  395. package/dist/installer/targets/shared.js +314 -0
  396. package/dist/installer/targets/shared.js.map +1 -0
  397. package/dist/installer/targets/toml.d.ts +53 -0
  398. package/dist/installer/targets/toml.d.ts.map +1 -0
  399. package/dist/installer/targets/toml.js +226 -0
  400. package/dist/installer/targets/toml.js.map +1 -0
  401. package/dist/installer/targets/types.d.ts +109 -0
  402. package/dist/installer/targets/types.d.ts.map +1 -0
  403. package/dist/installer/targets/types.js +16 -0
  404. package/dist/installer/targets/types.js.map +1 -0
  405. package/dist/installer/targets/zcode.d.ts +106 -0
  406. package/dist/installer/targets/zcode.d.ts.map +1 -0
  407. package/dist/installer/targets/zcode.js +451 -0
  408. package/dist/installer/targets/zcode.js.map +1 -0
  409. package/dist/mcp/daemon-manager.d.ts +42 -0
  410. package/dist/mcp/daemon-manager.d.ts.map +1 -0
  411. package/dist/mcp/daemon-manager.js +129 -0
  412. package/dist/mcp/daemon-manager.js.map +1 -0
  413. package/dist/mcp/daemon-paths.d.ts +73 -0
  414. package/dist/mcp/daemon-paths.d.ts.map +1 -0
  415. package/dist/mcp/daemon-paths.js +165 -0
  416. package/dist/mcp/daemon-paths.js.map +1 -0
  417. package/dist/mcp/daemon-registry.d.ts +47 -0
  418. package/dist/mcp/daemon-registry.d.ts.map +1 -0
  419. package/dist/mcp/daemon-registry.js +233 -0
  420. package/dist/mcp/daemon-registry.js.map +1 -0
  421. package/dist/mcp/daemon.d.ts +290 -0
  422. package/dist/mcp/daemon.d.ts.map +1 -0
  423. package/dist/mcp/daemon.js +862 -0
  424. package/dist/mcp/daemon.js.map +1 -0
  425. package/dist/mcp/dynamic-boundaries.d.ts +41 -0
  426. package/dist/mcp/dynamic-boundaries.d.ts.map +1 -0
  427. package/dist/mcp/dynamic-boundaries.js +360 -0
  428. package/dist/mcp/dynamic-boundaries.js.map +1 -0
  429. package/dist/mcp/early-ppid.d.ts +26 -0
  430. package/dist/mcp/early-ppid.d.ts.map +1 -0
  431. package/dist/mcp/early-ppid.js +29 -0
  432. package/dist/mcp/early-ppid.js.map +1 -0
  433. package/dist/mcp/engine.d.ts +122 -0
  434. package/dist/mcp/engine.d.ts.map +1 -0
  435. package/dist/mcp/engine.js +350 -0
  436. package/dist/mcp/engine.js.map +1 -0
  437. package/dist/mcp/explore-dedup.d.ts +137 -0
  438. package/dist/mcp/explore-dedup.d.ts.map +1 -0
  439. package/dist/mcp/explore-dedup.js +236 -0
  440. package/dist/mcp/explore-dedup.js.map +1 -0
  441. package/dist/mcp/explore-diagnostics.d.ts +287 -0
  442. package/dist/mcp/explore-diagnostics.d.ts.map +1 -0
  443. package/dist/mcp/explore-diagnostics.js +555 -0
  444. package/dist/mcp/explore-diagnostics.js.map +1 -0
  445. package/dist/mcp/explore-session-state.d.ts +217 -0
  446. package/dist/mcp/explore-session-state.d.ts.map +1 -0
  447. package/dist/mcp/explore-session-state.js +322 -0
  448. package/dist/mcp/explore-session-state.js.map +1 -0
  449. package/dist/mcp/index.d.ts +137 -0
  450. package/dist/mcp/index.d.ts.map +1 -0
  451. package/dist/mcp/index.js +554 -0
  452. package/dist/mcp/index.js.map +1 -0
  453. package/dist/mcp/liveness-watchdog.d.ts +35 -0
  454. package/dist/mcp/liveness-watchdog.d.ts.map +1 -0
  455. package/dist/mcp/liveness-watchdog.js +269 -0
  456. package/dist/mcp/liveness-watchdog.js.map +1 -0
  457. package/dist/mcp/ppid-watchdog.d.ts +62 -0
  458. package/dist/mcp/ppid-watchdog.d.ts.map +1 -0
  459. package/dist/mcp/ppid-watchdog.js +64 -0
  460. package/dist/mcp/ppid-watchdog.js.map +1 -0
  461. package/dist/mcp/proxy.d.ts +87 -0
  462. package/dist/mcp/proxy.d.ts.map +1 -0
  463. package/dist/mcp/proxy.js +672 -0
  464. package/dist/mcp/proxy.js.map +1 -0
  465. package/dist/mcp/query-pool.d.ts +108 -0
  466. package/dist/mcp/query-pool.d.ts.map +1 -0
  467. package/dist/mcp/query-pool.js +315 -0
  468. package/dist/mcp/query-pool.js.map +1 -0
  469. package/dist/mcp/query-worker.d.ts +24 -0
  470. package/dist/mcp/query-worker.d.ts.map +1 -0
  471. package/dist/mcp/query-worker.js +87 -0
  472. package/dist/mcp/query-worker.js.map +1 -0
  473. package/dist/mcp/server-instructions.d.ts +34 -0
  474. package/dist/mcp/server-instructions.d.ts.map +1 -0
  475. package/dist/mcp/server-instructions.js +111 -0
  476. package/dist/mcp/server-instructions.js.map +1 -0
  477. package/dist/mcp/session.d.ts +109 -0
  478. package/dist/mcp/session.d.ts.map +1 -0
  479. package/dist/mcp/session.js +375 -0
  480. package/dist/mcp/session.js.map +1 -0
  481. package/dist/mcp/startup-handshake.d.ts +44 -0
  482. package/dist/mcp/startup-handshake.d.ts.map +1 -0
  483. package/dist/mcp/startup-handshake.js +73 -0
  484. package/dist/mcp/startup-handshake.js.map +1 -0
  485. package/dist/mcp/stdin-teardown.d.ts +27 -0
  486. package/dist/mcp/stdin-teardown.d.ts.map +1 -0
  487. package/dist/mcp/stdin-teardown.js +49 -0
  488. package/dist/mcp/stdin-teardown.js.map +1 -0
  489. package/dist/mcp/tools.d.ts +862 -0
  490. package/dist/mcp/tools.d.ts.map +1 -0
  491. package/dist/mcp/tools.js +6526 -0
  492. package/dist/mcp/tools.js.map +1 -0
  493. package/dist/mcp/transport.d.ts +188 -0
  494. package/dist/mcp/transport.d.ts.map +1 -0
  495. package/dist/mcp/transport.js +377 -0
  496. package/dist/mcp/transport.js.map +1 -0
  497. package/dist/mcp/version.d.ts +19 -0
  498. package/dist/mcp/version.d.ts.map +1 -0
  499. package/dist/mcp/version.js +71 -0
  500. package/dist/mcp/version.js.map +1 -0
  501. package/dist/project-config.d.ts +94 -0
  502. package/dist/project-config.d.ts.map +1 -0
  503. package/dist/project-config.js +374 -0
  504. package/dist/project-config.js.map +1 -0
  505. package/dist/prompt-hook-output.d.ts +23 -0
  506. package/dist/prompt-hook-output.d.ts.map +1 -0
  507. package/dist/prompt-hook-output.js +35 -0
  508. package/dist/prompt-hook-output.js.map +1 -0
  509. package/dist/resolution/c-fnptr-synthesizer.d.ts +6 -0
  510. package/dist/resolution/c-fnptr-synthesizer.d.ts.map +1 -0
  511. package/dist/resolution/c-fnptr-synthesizer.js +1506 -0
  512. package/dist/resolution/c-fnptr-synthesizer.js.map +1 -0
  513. package/dist/resolution/callback-synthesizer.d.ts +59 -0
  514. package/dist/resolution/callback-synthesizer.d.ts.map +1 -0
  515. package/dist/resolution/callback-synthesizer.js +4030 -0
  516. package/dist/resolution/callback-synthesizer.js.map +1 -0
  517. package/dist/resolution/cooperative-yield.d.ts +40 -0
  518. package/dist/resolution/cooperative-yield.d.ts.map +1 -0
  519. package/dist/resolution/cooperative-yield.js +44 -0
  520. package/dist/resolution/cooperative-yield.js.map +1 -0
  521. package/dist/resolution/frameworks/astro.d.ts +9 -0
  522. package/dist/resolution/frameworks/astro.d.ts.map +1 -0
  523. package/dist/resolution/frameworks/astro.js +169 -0
  524. package/dist/resolution/frameworks/astro.js.map +1 -0
  525. package/dist/resolution/frameworks/cargo-workspace.d.ts +18 -0
  526. package/dist/resolution/frameworks/cargo-workspace.d.ts.map +1 -0
  527. package/dist/resolution/frameworks/cargo-workspace.js +225 -0
  528. package/dist/resolution/frameworks/cargo-workspace.js.map +1 -0
  529. package/dist/resolution/frameworks/cics.d.ts +20 -0
  530. package/dist/resolution/frameworks/cics.d.ts.map +1 -0
  531. package/dist/resolution/frameworks/cics.js +90 -0
  532. package/dist/resolution/frameworks/cics.js.map +1 -0
  533. package/dist/resolution/frameworks/csharp.d.ts +8 -0
  534. package/dist/resolution/frameworks/csharp.d.ts.map +1 -0
  535. package/dist/resolution/frameworks/csharp.js +241 -0
  536. package/dist/resolution/frameworks/csharp.js.map +1 -0
  537. package/dist/resolution/frameworks/drupal.d.ts +51 -0
  538. package/dist/resolution/frameworks/drupal.d.ts.map +1 -0
  539. package/dist/resolution/frameworks/drupal.js +367 -0
  540. package/dist/resolution/frameworks/drupal.js.map +1 -0
  541. package/dist/resolution/frameworks/expo-modules.d.ts +3 -0
  542. package/dist/resolution/frameworks/expo-modules.d.ts.map +1 -0
  543. package/dist/resolution/frameworks/expo-modules.js +148 -0
  544. package/dist/resolution/frameworks/expo-modules.js.map +1 -0
  545. package/dist/resolution/frameworks/express.d.ts +8 -0
  546. package/dist/resolution/frameworks/express.d.ts.map +1 -0
  547. package/dist/resolution/frameworks/express.js +308 -0
  548. package/dist/resolution/frameworks/express.js.map +1 -0
  549. package/dist/resolution/frameworks/fabric.d.ts +3 -0
  550. package/dist/resolution/frameworks/fabric.d.ts.map +1 -0
  551. package/dist/resolution/frameworks/fabric.js +354 -0
  552. package/dist/resolution/frameworks/fabric.js.map +1 -0
  553. package/dist/resolution/frameworks/go.d.ts +8 -0
  554. package/dist/resolution/frameworks/go.d.ts.map +1 -0
  555. package/dist/resolution/frameworks/go.js +184 -0
  556. package/dist/resolution/frameworks/go.js.map +1 -0
  557. package/dist/resolution/frameworks/goframe.d.ts +41 -0
  558. package/dist/resolution/frameworks/goframe.d.ts.map +1 -0
  559. package/dist/resolution/frameworks/goframe.js +112 -0
  560. package/dist/resolution/frameworks/goframe.js.map +1 -0
  561. package/dist/resolution/frameworks/index.d.ts +50 -0
  562. package/dist/resolution/frameworks/index.d.ts.map +1 -0
  563. package/dist/resolution/frameworks/index.js +175 -0
  564. package/dist/resolution/frameworks/index.js.map +1 -0
  565. package/dist/resolution/frameworks/java.d.ts +8 -0
  566. package/dist/resolution/frameworks/java.d.ts.map +1 -0
  567. package/dist/resolution/frameworks/java.js +517 -0
  568. package/dist/resolution/frameworks/java.js.map +1 -0
  569. package/dist/resolution/frameworks/laravel.d.ts +13 -0
  570. package/dist/resolution/frameworks/laravel.d.ts.map +1 -0
  571. package/dist/resolution/frameworks/laravel.js +257 -0
  572. package/dist/resolution/frameworks/laravel.js.map +1 -0
  573. package/dist/resolution/frameworks/nestjs.d.ts +26 -0
  574. package/dist/resolution/frameworks/nestjs.d.ts.map +1 -0
  575. package/dist/resolution/frameworks/nestjs.js +698 -0
  576. package/dist/resolution/frameworks/nestjs.js.map +1 -0
  577. package/dist/resolution/frameworks/play.d.ts +19 -0
  578. package/dist/resolution/frameworks/play.d.ts.map +1 -0
  579. package/dist/resolution/frameworks/play.js +111 -0
  580. package/dist/resolution/frameworks/play.js.map +1 -0
  581. package/dist/resolution/frameworks/python.d.ts +10 -0
  582. package/dist/resolution/frameworks/python.d.ts.map +1 -0
  583. package/dist/resolution/frameworks/python.js +400 -0
  584. package/dist/resolution/frameworks/python.js.map +1 -0
  585. package/dist/resolution/frameworks/react-native.d.ts +3 -0
  586. package/dist/resolution/frameworks/react-native.d.ts.map +1 -0
  587. package/dist/resolution/frameworks/react-native.js +410 -0
  588. package/dist/resolution/frameworks/react-native.js.map +1 -0
  589. package/dist/resolution/frameworks/react.d.ts +8 -0
  590. package/dist/resolution/frameworks/react.d.ts.map +1 -0
  591. package/dist/resolution/frameworks/react.js +334 -0
  592. package/dist/resolution/frameworks/react.js.map +1 -0
  593. package/dist/resolution/frameworks/ruby.d.ts +8 -0
  594. package/dist/resolution/frameworks/ruby.d.ts.map +1 -0
  595. package/dist/resolution/frameworks/ruby.js +302 -0
  596. package/dist/resolution/frameworks/ruby.js.map +1 -0
  597. package/dist/resolution/frameworks/rust.d.ts +8 -0
  598. package/dist/resolution/frameworks/rust.d.ts.map +1 -0
  599. package/dist/resolution/frameworks/rust.js +304 -0
  600. package/dist/resolution/frameworks/rust.js.map +1 -0
  601. package/dist/resolution/frameworks/svelte.d.ts +9 -0
  602. package/dist/resolution/frameworks/svelte.d.ts.map +1 -0
  603. package/dist/resolution/frameworks/svelte.js +253 -0
  604. package/dist/resolution/frameworks/svelte.js.map +1 -0
  605. package/dist/resolution/frameworks/swift-objc.d.ts +37 -0
  606. package/dist/resolution/frameworks/swift-objc.d.ts.map +1 -0
  607. package/dist/resolution/frameworks/swift-objc.js +252 -0
  608. package/dist/resolution/frameworks/swift-objc.js.map +1 -0
  609. package/dist/resolution/frameworks/swift.d.ts +10 -0
  610. package/dist/resolution/frameworks/swift.d.ts.map +1 -0
  611. package/dist/resolution/frameworks/swift.js +400 -0
  612. package/dist/resolution/frameworks/swift.js.map +1 -0
  613. package/dist/resolution/frameworks/terraform.d.ts +38 -0
  614. package/dist/resolution/frameworks/terraform.d.ts.map +1 -0
  615. package/dist/resolution/frameworks/terraform.js +277 -0
  616. package/dist/resolution/frameworks/terraform.js.map +1 -0
  617. package/dist/resolution/frameworks/vue.d.ts +9 -0
  618. package/dist/resolution/frameworks/vue.d.ts.map +1 -0
  619. package/dist/resolution/frameworks/vue.js +303 -0
  620. package/dist/resolution/frameworks/vue.js.map +1 -0
  621. package/dist/resolution/go-module.d.ts +26 -0
  622. package/dist/resolution/go-module.d.ts.map +1 -0
  623. package/dist/resolution/go-module.js +78 -0
  624. package/dist/resolution/go-module.js.map +1 -0
  625. package/dist/resolution/goframe-synthesizer.d.ts +29 -0
  626. package/dist/resolution/goframe-synthesizer.d.ts.map +1 -0
  627. package/dist/resolution/goframe-synthesizer.js +163 -0
  628. package/dist/resolution/goframe-synthesizer.js.map +1 -0
  629. package/dist/resolution/import-resolver.d.ts +84 -0
  630. package/dist/resolution/import-resolver.d.ts.map +1 -0
  631. package/dist/resolution/import-resolver.js +2134 -0
  632. package/dist/resolution/import-resolver.js.map +1 -0
  633. package/dist/resolution/index.d.ts +343 -0
  634. package/dist/resolution/index.d.ts.map +1 -0
  635. package/dist/resolution/index.js +2339 -0
  636. package/dist/resolution/index.js.map +1 -0
  637. package/dist/resolution/lru-cache.d.ts +24 -0
  638. package/dist/resolution/lru-cache.d.ts.map +1 -0
  639. package/dist/resolution/lru-cache.js +62 -0
  640. package/dist/resolution/lru-cache.js.map +1 -0
  641. package/dist/resolution/memory-budget.d.ts +48 -0
  642. package/dist/resolution/memory-budget.d.ts.map +1 -0
  643. package/dist/resolution/memory-budget.js +162 -0
  644. package/dist/resolution/memory-budget.js.map +1 -0
  645. package/dist/resolution/name-matcher.d.ts +123 -0
  646. package/dist/resolution/name-matcher.d.ts.map +1 -0
  647. package/dist/resolution/name-matcher.js +2134 -0
  648. package/dist/resolution/name-matcher.js.map +1 -0
  649. package/dist/resolution/path-aliases.d.ts +68 -0
  650. package/dist/resolution/path-aliases.d.ts.map +1 -0
  651. package/dist/resolution/path-aliases.js +238 -0
  652. package/dist/resolution/path-aliases.js.map +1 -0
  653. package/dist/resolution/resolver-pool.d.ts +106 -0
  654. package/dist/resolution/resolver-pool.d.ts.map +1 -0
  655. package/dist/resolution/resolver-pool.js +344 -0
  656. package/dist/resolution/resolver-pool.js.map +1 -0
  657. package/dist/resolution/resolver-worker.d.ts +17 -0
  658. package/dist/resolution/resolver-worker.d.ts.map +1 -0
  659. package/dist/resolution/resolver-worker.js +141 -0
  660. package/dist/resolution/resolver-worker.js.map +1 -0
  661. package/dist/resolution/strip-comments.d.ts +27 -0
  662. package/dist/resolution/strip-comments.d.ts.map +1 -0
  663. package/dist/resolution/strip-comments.js +492 -0
  664. package/dist/resolution/strip-comments.js.map +1 -0
  665. package/dist/resolution/swift-objc-bridge.d.ts +134 -0
  666. package/dist/resolution/swift-objc-bridge.d.ts.map +1 -0
  667. package/dist/resolution/swift-objc-bridge.js +256 -0
  668. package/dist/resolution/swift-objc-bridge.js.map +1 -0
  669. package/dist/resolution/types.d.ts +265 -0
  670. package/dist/resolution/types.d.ts.map +1 -0
  671. package/dist/resolution/types.js +8 -0
  672. package/dist/resolution/types.js.map +1 -0
  673. package/dist/resolution/workspace-packages.d.ts +58 -0
  674. package/dist/resolution/workspace-packages.d.ts.map +1 -0
  675. package/dist/resolution/workspace-packages.js +346 -0
  676. package/dist/resolution/workspace-packages.js.map +1 -0
  677. package/dist/search/identifier-segments.d.ts +60 -0
  678. package/dist/search/identifier-segments.d.ts.map +1 -0
  679. package/dist/search/identifier-segments.js +176 -0
  680. package/dist/search/identifier-segments.js.map +1 -0
  681. package/dist/search/query-parser.d.ts +57 -0
  682. package/dist/search/query-parser.d.ts.map +1 -0
  683. package/dist/search/query-parser.js +177 -0
  684. package/dist/search/query-parser.js.map +1 -0
  685. package/dist/search/query-utils.d.ts +87 -0
  686. package/dist/search/query-utils.d.ts.map +1 -0
  687. package/dist/search/query-utils.js +450 -0
  688. package/dist/search/query-utils.js.map +1 -0
  689. package/dist/sync/git-hooks.d.ts +45 -0
  690. package/dist/sync/git-hooks.d.ts.map +1 -0
  691. package/dist/sync/git-hooks.js +227 -0
  692. package/dist/sync/git-hooks.js.map +1 -0
  693. package/dist/sync/index.d.ts +19 -0
  694. package/dist/sync/index.d.ts.map +1 -0
  695. package/dist/sync/index.js +35 -0
  696. package/dist/sync/index.js.map +1 -0
  697. package/dist/sync/watch-policy.d.ts +48 -0
  698. package/dist/sync/watch-policy.d.ts.map +1 -0
  699. package/dist/sync/watch-policy.js +124 -0
  700. package/dist/sync/watch-policy.js.map +1 -0
  701. package/dist/sync/watcher.d.ts +379 -0
  702. package/dist/sync/watcher.d.ts.map +1 -0
  703. package/dist/sync/watcher.js +921 -0
  704. package/dist/sync/watcher.js.map +1 -0
  705. package/dist/sync/worktree.d.ts +63 -0
  706. package/dist/sync/worktree.d.ts.map +1 -0
  707. package/dist/sync/worktree.js +182 -0
  708. package/dist/sync/worktree.js.map +1 -0
  709. package/dist/telemetry/index.d.ts +143 -0
  710. package/dist/telemetry/index.d.ts.map +1 -0
  711. package/dist/telemetry/index.js +541 -0
  712. package/dist/telemetry/index.js.map +1 -0
  713. package/dist/types.d.ts +465 -0
  714. package/dist/types.d.ts.map +1 -0
  715. package/dist/types.js +117 -0
  716. package/dist/types.js.map +1 -0
  717. package/dist/ui/color.d.ts +21 -0
  718. package/dist/ui/color.d.ts.map +1 -0
  719. package/dist/ui/color.js +42 -0
  720. package/dist/ui/color.js.map +1 -0
  721. package/dist/ui/glyphs.d.ts +67 -0
  722. package/dist/ui/glyphs.d.ts.map +1 -0
  723. package/dist/ui/glyphs.js +125 -0
  724. package/dist/ui/glyphs.js.map +1 -0
  725. package/dist/ui/shimmer-progress.d.ts +11 -0
  726. package/dist/ui/shimmer-progress.d.ts.map +1 -0
  727. package/dist/ui/shimmer-progress.js +164 -0
  728. package/dist/ui/shimmer-progress.js.map +1 -0
  729. package/dist/ui/shimmer-worker.d.ts +2 -0
  730. package/dist/ui/shimmer-worker.d.ts.map +1 -0
  731. package/dist/ui/shimmer-worker.js +126 -0
  732. package/dist/ui/shimmer-worker.js.map +1 -0
  733. package/dist/ui/types.d.ts +15 -0
  734. package/dist/ui/types.d.ts.map +1 -0
  735. package/dist/ui/types.js +3 -0
  736. package/dist/ui/types.js.map +1 -0
  737. package/dist/upgrade/index.d.ts +171 -0
  738. package/dist/upgrade/index.d.ts.map +1 -0
  739. package/dist/upgrade/index.js +659 -0
  740. package/dist/upgrade/index.js.map +1 -0
  741. package/dist/upgrade/remove-binary.d.ts +87 -0
  742. package/dist/upgrade/remove-binary.d.ts.map +1 -0
  743. package/dist/upgrade/remove-binary.js +289 -0
  744. package/dist/upgrade/remove-binary.js.map +1 -0
  745. package/dist/upgrade/update-check.d.ts +92 -0
  746. package/dist/upgrade/update-check.d.ts.map +1 -0
  747. package/dist/upgrade/update-check.js +258 -0
  748. package/dist/upgrade/update-check.js.map +1 -0
  749. package/dist/utils.d.ts +224 -0
  750. package/dist/utils.d.ts.map +1 -0
  751. package/dist/utils.js +583 -0
  752. package/dist/utils.js.map +1 -0
  753. package/package.json +61 -0
  754. package/scripts/add-lang/bench.sh +60 -0
  755. package/scripts/add-lang/check-grammar.mjs +75 -0
  756. package/scripts/add-lang/dump-ast.mjs +103 -0
  757. package/scripts/add-lang/verify-extraction.mjs +70 -0
  758. package/scripts/agent-eval/ab-adoption.sh +91 -0
  759. package/scripts/agent-eval/ab-hook.sh +86 -0
  760. package/scripts/agent-eval/ab-impl.sh +78 -0
  761. package/scripts/agent-eval/ab-new-vs-baseline.sh +161 -0
  762. package/scripts/agent-eval/ab-sufficiency.sh +78 -0
  763. package/scripts/agent-eval/allocation-fixtures.json +344 -0
  764. package/scripts/agent-eval/arms-F.sh +21 -0
  765. package/scripts/agent-eval/arms-matrix.sh +37 -0
  766. package/scripts/agent-eval/audit.sh +68 -0
  767. package/scripts/agent-eval/bench-readme.sh +48 -0
  768. package/scripts/agent-eval/bench-why-repo.sh +22 -0
  769. package/scripts/agent-eval/block-read-hook.sh +19 -0
  770. package/scripts/agent-eval/compare-arms.mjs +209 -0
  771. package/scripts/agent-eval/diff-index-drift.mjs +102 -0
  772. package/scripts/agent-eval/hook-settings.json +15 -0
  773. package/scripts/agent-eval/itrun.sh +120 -0
  774. package/scripts/agent-eval/no-cli-shim.sh +96 -0
  775. package/scripts/agent-eval/offload-eval-3arm.sh +72 -0
  776. package/scripts/agent-eval/offload-eval-cost.mjs +133 -0
  777. package/scripts/agent-eval/offload-eval-effort.mjs +108 -0
  778. package/scripts/agent-eval/offload-eval-frontload-matrix.sh +25 -0
  779. package/scripts/agent-eval/offload-eval-frontload.sh +47 -0
  780. package/scripts/agent-eval/offload-eval-ground-truth.json +18 -0
  781. package/scripts/agent-eval/offload-eval-hook.mjs +84 -0
  782. package/scripts/agent-eval/offload-eval-judge.mjs +103 -0
  783. package/scripts/agent-eval/offload-eval-matrix.sh +20 -0
  784. package/scripts/agent-eval/offload-eval-metrics.mjs +94 -0
  785. package/scripts/agent-eval/offload-eval-refs1.sh +50 -0
  786. package/scripts/agent-eval/offload-eval-setup.sh +24 -0
  787. package/scripts/agent-eval/offload-eval-styles.sh +72 -0
  788. package/scripts/agent-eval/offload-eval-summarize.mjs +68 -0
  789. package/scripts/agent-eval/offload-eval.md +76 -0
  790. package/scripts/agent-eval/parse-arms.mjs +116 -0
  791. package/scripts/agent-eval/parse-bench-readme.mjs +238 -0
  792. package/scripts/agent-eval/parse-run.mjs +1401 -0
  793. package/scripts/agent-eval/parse-session.mjs +130 -0
  794. package/scripts/agent-eval/probe-allocation.mjs +335 -0
  795. package/scripts/agent-eval/probe-context.mjs +21 -0
  796. package/scripts/agent-eval/probe-decl-only.mjs +198 -0
  797. package/scripts/agent-eval/probe-explore.mjs +40 -0
  798. package/scripts/agent-eval/probe-factory-closure.mjs +147 -0
  799. package/scripts/agent-eval/probe-file-spend.mjs +195 -0
  800. package/scripts/agent-eval/probe-named-symbol.mjs +163 -0
  801. package/scripts/agent-eval/probe-node.mjs +20 -0
  802. package/scripts/agent-eval/probe-suite-envelope.mjs +124 -0
  803. package/scripts/agent-eval/probe-sweep.mjs +119 -0
  804. package/scripts/agent-eval/probe-trace.mjs +20 -0
  805. package/scripts/agent-eval/redirect-read-hook.sh +38 -0
  806. package/scripts/agent-eval/repro-concurrent-explore.mjs +119 -0
  807. package/scripts/agent-eval/repro-daemon-clients.mjs +125 -0
  808. package/scripts/agent-eval/run-agent.sh +34 -0
  809. package/scripts/agent-eval/run-all.sh +149 -0
  810. package/scripts/agent-eval/run-arms.sh +56 -0
  811. package/scripts/agent-eval/seq-matrix.mjs +137 -0
  812. package/scripts/build-bundle.sh +145 -0
  813. package/scripts/build-kernel.sh +87 -0
  814. package/scripts/dump-graph.mjs +57 -0
  815. package/scripts/extract-release-notes.mjs +130 -0
  816. package/scripts/kernel-parity.mjs +283 -0
  817. package/scripts/local-install.sh +41 -0
  818. package/scripts/npm-sdk.js +75 -0
  819. package/scripts/npm-shim.js +279 -0
  820. package/scripts/pack-npm.sh +123 -0
  821. package/scripts/prepare-release.mjs +270 -0
@@ -0,0 +1,705 @@
1
+ /**
2
+ * Database Queries
3
+ *
4
+ * Prepared statements for CRUD operations on the knowledge graph.
5
+ */
6
+ import { SqliteDatabase } from './sqlite-adapter';
7
+ import { Node, Edge, FileRecord, UnresolvedReference, NodeKind, EdgeKind, Language, GraphStats, SearchOptions, SearchResult } from '../types';
8
+ /**
9
+ * Query builder for the knowledge graph database
10
+ */
11
+ export declare class QueryBuilder {
12
+ private db;
13
+ private projectNameTokens;
14
+ private nodeCache;
15
+ private readonly maxCacheSize;
16
+ private stmts;
17
+ private segmentedNames;
18
+ private static readonly MAX_SEGMENTED_NAMES;
19
+ private batchStmts;
20
+ private static readonly BATCH_SIZES;
21
+ /**
22
+ * Run `rows` through a multi-row `INSERT` built as `head + (tuple,)*n`,
23
+ * decomposed greedily into the cached batch sizes. Preserves row order.
24
+ */
25
+ private runBatched;
26
+ constructor(db: SqliteDatabase);
27
+ /**
28
+ * Swap the underlying connection in place. Used by pool workers'
29
+ * connection recycling (plan §7a.6, writes-under-readers): a long-lived
30
+ * read connection pins WAL checkpoint progress, and the deep WAL that
31
+ * accumulates behind it taxes every main-thread B-tree page operation
32
+ * (deletes measured 42.6s → 118.8s from 0 to 4 attached readers on
33
+ * identical hardware). Workers therefore close and reopen their read-only
34
+ * connection at the pool-idle boundary; everything above the connection —
35
+ * this QueryBuilder, the resolver and its warm caches — survives, and only
36
+ * connection-derived state (prepared statements) resets, re-preparing
37
+ * lazily on next use.
38
+ */
39
+ rebind(db: SqliteDatabase): void;
40
+ /** Set the normalized project-name tokens used to down-weight non-discriminative
41
+ * query words in path scoring (#720). Called once when the project opens. */
42
+ setProjectNameTokens(tokens: Set<string>): void;
43
+ /** The normalized project-name tokens (#720); empty if none were derived. */
44
+ getProjectNameTokens(): Set<string>;
45
+ /**
46
+ * Insert a new node
47
+ */
48
+ insertNode(node: Node): void;
49
+ /** Which node kinds contribute their name to the segment vocabulary — the
50
+ * single gate shared by insertNode, updateNode, and the rebuild page query
51
+ * (getDistinctNodeNames), so the write paths can't drift apart. */
52
+ private isSegmentableKind;
53
+ /** Write `name`'s segments into name_segment_vocab (idempotent). */
54
+ private insertNameSegments;
55
+ /**
56
+ * Insert multiple nodes in a transaction
57
+ */
58
+ insertNodes(nodes: Node[]): void;
59
+ /**
60
+ * Store one file's whole extraction bundle — nodes, edges, unresolved refs,
61
+ * and the file record — in a SINGLE transaction. The bulk-index path calls
62
+ * this once per file instead of opening one transaction per table (#1015
63
+ * file-order commit discipline is unchanged: callers still invoke it in file
64
+ * order, and row order within is input order).
65
+ *
66
+ * Edges MUST already be endpoint-filtered by the caller (the store path
67
+ * filters to the file's own inserted node ids), so the per-file existence
68
+ * SELECT that insertEdges() pays is skipped here.
69
+ */
70
+ storeFileBundle(bundle: {
71
+ nodes: Node[];
72
+ edges: Edge[];
73
+ refs: UnresolvedReference[];
74
+ file: FileRecord;
75
+ }): void;
76
+ /**
77
+ * Collect (segment, name) rows for a name, honouring the same session-dedupe
78
+ * semantics as insertNameSegments(). Shared by the bulk write paths.
79
+ */
80
+ private collectNameSegmentRows;
81
+ /**
82
+ * Update an existing node
83
+ */
84
+ updateNode(node: Node): void;
85
+ /**
86
+ * Delete a node by ID
87
+ */
88
+ deleteNode(id: string): void;
89
+ /**
90
+ * Delete all nodes for a file
91
+ */
92
+ deleteNodesByFile(filePath: string): void;
93
+ /** Wipe the segment vocabulary. A full index calls this at its start; the
94
+ * node write path repopulates it as files (re-)index, so the end state is
95
+ * exactly the current names with no orphan rows. */
96
+ clearNameSegmentVocab(): void;
97
+ /** True when the vocab has no rows — an index built before the table existed.
98
+ * `sync` uses this to heal such databases (see rebuildNameSegmentVocabFrom). */
99
+ isNameSegmentVocabEmpty(): boolean;
100
+ /** One page of distinct segmentable node names, for batched vocab rebuilds
101
+ * (file basenames and import specifiers are excluded from the vocab — see
102
+ * insertNode). */
103
+ getDistinctNodeNames(limit: number, offset: number): string[];
104
+ /** Insert segments for a batch of names in one transaction (vocab heal path). */
105
+ insertNameSegmentsBatch(names: string[]): void;
106
+ /**
107
+ * Names whose segments cover at least `minWords` distinct PROMPT WORDS —
108
+ * the co-occurrence probe behind the prompt hook's medium tier: the words
109
+ * "state" and "machine" both being segments of `OrderStateMachine` is strong
110
+ * evidence the prompt names that symbol in prose. Ordered by coverage.
111
+ *
112
+ * Takes (segment variant → original word) pairs and folds variants back to
113
+ * their word INSIDE the SQL: a name matching both `service` and `services`
114
+ * counts ONE word, not two. Counting raw variants let plural-variant pairs
115
+ * of a single word tie with genuine two-word matches and — because ORDER
116
+ * BY/LIMIT run here, before any JS-side re-check — crowd a real match past
117
+ * the LIMIT on vocab-heavy repos (#1146).
118
+ */
119
+ getSegmentCoOccurrence(variants: Array<{
120
+ segment: string;
121
+ word: string;
122
+ }>, minWords: number, limit: number): Array<{
123
+ name: string;
124
+ matches: number;
125
+ }>;
126
+ /** How many distinct names each segment appears in — the rarity signal that
127
+ * separates a discriminative word ("checkout") from a ubiquitous one ("state"). */
128
+ getSegmentNameCounts(segments: string[]): Map<string, number>;
129
+ /** Names containing the given segment (rare-single-word tier). */
130
+ getNamesForSegment(segment: string, limit: number): string[];
131
+ /**
132
+ * Get a node by ID
133
+ */
134
+ getNodeById(id: string): Node | null;
135
+ /**
136
+ * Batch lookup: fetch many nodes by ID in a single SQL round-trip.
137
+ *
138
+ * Replaces the N+1 pattern in graph traversal where every edge would
139
+ * trigger its own `getNodeById` call. For a function with 50 callers
140
+ * this collapses 50 point reads into one IN-list query (~10-50x
141
+ * faster end-to-end).
142
+ *
143
+ * Returns a Map keyed by id so callers can preserve their own ordering
144
+ * (typically the order edges were returned from the graph). Missing IDs
145
+ * are simply absent from the map.
146
+ *
147
+ * Cache-aware: ids already in the LRU cache are served from memory and
148
+ * the SQL query only touches the misses.
149
+ */
150
+ getNodesByIds(ids: readonly string[]): Map<string, Node>;
151
+ private getExistingNodeIds;
152
+ /**
153
+ * Add a node to the cache, evicting oldest if needed
154
+ */
155
+ private cacheNode;
156
+ /**
157
+ * Clear the node cache
158
+ */
159
+ clearCache(): void;
160
+ /**
161
+ * Get all nodes in a file
162
+ */
163
+ getNodesByFile(filePath: string): Node[];
164
+ /**
165
+ * Find the file that holds the densest concentration of the project's
166
+ * internal call graph — the "core" file. Used by context-builder to
167
+ * boost ranking of symbols in that file's directory (so e.g. sinatra
168
+ * queries surface `lib/sinatra/base.rb`'s `route!` instead of
169
+ * `sinatra-contrib/lib/sinatra/multi_route.rb`'s `route` extension).
170
+ *
171
+ * Returns null if no file has a meaningful concentration (e.g. spread
172
+ * evenly across many files, or empty index).
173
+ *
174
+ * "Internal" = source and target are in the same file. Cross-file
175
+ * edges aren't useful here — they don't tell us which file is the
176
+ * functional center.
177
+ *
178
+ * Excludes test/spec files from candidacy via path-pattern. The agent's
179
+ * typical question is "how does X work", not "how is X tested", so
180
+ * boosting a test file's directory would be a misfire.
181
+ */
182
+ getDominantFile(): {
183
+ filePath: string;
184
+ edgeCount: number;
185
+ nextEdgeCount: number;
186
+ } | null;
187
+ /**
188
+ * Find the file that holds the densest concentration of the project's
189
+ * `route` nodes (framework-emitted: Express/Gin/Flask/Rails/Drupal/etc.).
190
+ * Used by handleContext on small repos to inline the project's routing
191
+ * config when the agent's query is about request flow — eliminating the
192
+ * "Glob + Read routes.rb" pattern that beats codegraph on tiny realworld
193
+ * template repos.
194
+ *
195
+ * Excludes test/generated files from candidacy. Returns null if there
196
+ * are fewer than 3 non-test routes total, or if no file holds at least
197
+ * 30% of them (diffuse routing → no single answer file).
198
+ */
199
+ getTopRouteFile(): {
200
+ filePath: string;
201
+ routeCount: number;
202
+ totalRoutes: number;
203
+ } | null;
204
+ /**
205
+ * Build a URL → handler manifest from the index. Each route node's
206
+ * `references` edge points at the function/method that handles the
207
+ * request. We join them in one pass; the agent gets the canonical
208
+ * routing answer ("POST /users/login → AuthController#login") without
209
+ * having to parse the framework's route DSL itself.
210
+ *
211
+ * Also returns the file with the most handler endpoints — used as the
212
+ * "top handler file" to inline source for, so the agent has both the
213
+ * mapping AND the handler implementations.
214
+ */
215
+ getRoutingManifest(limit?: number): {
216
+ entries: Array<{
217
+ url: string;
218
+ handler: string;
219
+ handlerFile: string;
220
+ handlerLine: number;
221
+ handlerKind: string;
222
+ }>;
223
+ topHandlerFile: string | null;
224
+ topHandlerFileCount: number;
225
+ totalRoutes: number;
226
+ } | null;
227
+ /**
228
+ * Get all nodes of a specific kind
229
+ */
230
+ getNodesByKind(kind: NodeKind): Node[];
231
+ /**
232
+ * Stream every node of a kind one at a time (lazy) instead of materializing
233
+ * them all like {@link getNodesByKind}. For unbounded kinds (`function`,
234
+ * `method`) on a symbol-dense project the full array is gigabytes; the
235
+ * dynamic-edge synthesizers only scan-and-filter, so they iterate to keep
236
+ * memory O(1) in the node count rather than O(nodes) (#610).
237
+ */
238
+ iterateNodesByKind(kind: NodeKind): IterableIterator<Node>;
239
+ /**
240
+ * Get all nodes in the database
241
+ */
242
+ getAllNodes(): Node[];
243
+ /**
244
+ * Stream nodes of one language whose `decorators` JSON array contains
245
+ * `decorator`. The LIKE on the JSON text is a cheap index-free pre-filter
246
+ * (a decorator name can appear as a substring of another), so callers must
247
+ * still exact-check `node.decorators.includes(decorator)`. Exists so the
248
+ * kotlin expect/actual synthesizer never materializes the whole node table
249
+ * the way `getAllNodes().filter(...)` did — that array alone OOM'd Node's
250
+ * default heap on a 2M-node graph (#1212).
251
+ */
252
+ iterateNodesByLanguageWithDecorator(language: Language, decorator: string): IterableIterator<Node>;
253
+ /**
254
+ * Distinct languages present in the files table. One indexed aggregate —
255
+ * lets the dynamic-edge synthesizers skip passes for languages the project
256
+ * doesn't contain at all (a Kotlin pass has no work on a pure-C repo), so
257
+ * their cost is zero rather than a full-graph scan that finds nothing (#1212).
258
+ */
259
+ getDistinctFileLanguages(): Set<string>;
260
+ /**
261
+ * Get nodes by exact name match (uses idx_nodes_name index).
262
+ *
263
+ * This is resolution's candidate list, and the ORDER BY is load-bearing for
264
+ * index correctness, not cosmetic (CG-33). When a reference names a symbol
265
+ * that several files define and nothing disambiguates them, resolution binds
266
+ * to the first candidate — so without an ORDER BY the winner was decided by
267
+ * rowid, i.e. by the order files happened to be WRITTEN. A full index writes
268
+ * them in scan order; an incremental sync appends each file as it changes, so
269
+ * the same tree resolved to different edges depending on how the index was
270
+ * built, and a long-lived synced index drifted away from a rebuild of itself
271
+ * (measured at 4.3% of distinct edges, mostly `calls`).
272
+ *
273
+ * `(file_path, start_line)` is a property of the CODE, so both paths now pick
274
+ * the same candidate. The sort is paid once per distinct name per resolution
275
+ * run — ReferenceResolver memoizes this in its nameCache — and the population
276
+ * is capped by AMBIGUOUS_NAME_CEILING (#999).
277
+ */
278
+ getNodesByName(name: string): Node[];
279
+ /**
280
+ * Nodes whose name starts with `prefix`, by index range scan (a LIKE would
281
+ * skip idx_nodes_name under SQLite's default case-insensitive LIKE).
282
+ */
283
+ getNodesByNamePrefix(prefix: string, limit?: number): Node[];
284
+ /**
285
+ * Get nodes by exact qualified name match (uses idx_nodes_qualified_name index)
286
+ */
287
+ getNodesByQualifiedNameExact(qualifiedName: string): Node[];
288
+ /**
289
+ * Get nodes by lowercase name match (uses idx_nodes_lower_name expression index)
290
+ */
291
+ getNodesByLowerName(lowerName: string): Node[];
292
+ /**
293
+ * Search nodes by name using FTS with fallback to LIKE for better matching
294
+ *
295
+ * Search strategy:
296
+ * 1. Try FTS5 prefix match (query*) for word-start matching
297
+ * 2. If no results, try LIKE for substring matching (e.g., "signIn" finds "signInWithGoogle")
298
+ * 3. Score results based on match quality
299
+ */
300
+ searchNodes(query: string, options?: SearchOptions): SearchResult[];
301
+ /**
302
+ * Match-everything path used when the user supplied only field
303
+ * filters (`kind:function lang:typescript`) with no text. Returns
304
+ * candidates ordered by name; the caller's filter pass narrows to
305
+ * what was asked for.
306
+ */
307
+ private searchAllByFilters;
308
+ /**
309
+ * Fuzzy fallback: when zero FTS/LIKE hits, try an edit-distance
310
+ * sweep over the distinct symbol-name set. Caps `maxDist` at 2 so
311
+ * `getUssr` finds `getUser` but `process` doesn't match `prosody`.
312
+ * Bounded edit distance keeps each comparison cheap; the per-query
313
+ * scan is O(distinct-name-count) which is far smaller than total
314
+ * node count on any real codebase.
315
+ */
316
+ private searchNodesFuzzy;
317
+ /**
318
+ * FTS5 search with prefix matching
319
+ */
320
+ private searchNodesFTS;
321
+ /**
322
+ * LIKE-based substring search for cases where FTS doesn't match
323
+ * Useful for camelCase matching (e.g., "signIn" finds "signInWithGoogle")
324
+ */
325
+ private searchNodesLike;
326
+ /**
327
+ * Find nodes by exact name match
328
+ *
329
+ * Used for hybrid search - looks up symbols by exact name or case-insensitive match.
330
+ * Returns high-confidence matches for known symbol names extracted from query.
331
+ *
332
+ * @param names - Array of symbol names to look up
333
+ * @param options - Search options (kinds, languages, limit)
334
+ * @returns SearchResult array with exact matches scored at 1.0
335
+ */
336
+ findNodesByExactName(names: string[], options?: SearchOptions): SearchResult[];
337
+ /**
338
+ * Find nodes whose name contains a substring (LIKE-based).
339
+ * Useful for CamelCase-part matching where FTS fails because
340
+ * e.g. "TransportSearchAction" is one FTS token, not matchable by "Search"*.
341
+ *
342
+ * Results are ordered by name length (shorter = more likely to be the core type).
343
+ */
344
+ findNodesByNameSubstring(substring: string, options?: SearchOptions & {
345
+ excludePrefix?: boolean;
346
+ }): SearchResult[];
347
+ /**
348
+ * Insert a new edge
349
+ */
350
+ insertEdge(edge: Edge): void;
351
+ /**
352
+ * Insert multiple edges in a transaction
353
+ */
354
+ insertEdges(edges: Edge[]): void;
355
+ /**
356
+ * Delete all edges from a source node
357
+ */
358
+ deleteEdgesBySource(sourceId: string): void;
359
+ /**
360
+ * Get outgoing edges from a node
361
+ */
362
+ getOutgoingEdges(sourceId: string, kinds?: EdgeKind[], provenance?: string): Edge[];
363
+ /**
364
+ * Get incoming edges to a node
365
+ */
366
+ getIncomingEdges(targetId: string, kinds?: EdgeKind[]): Edge[];
367
+ /**
368
+ * Find all edges where both source and target are in the given node set.
369
+ * Useful for recovering inter-node connectivity after BFS.
370
+ */
371
+ findEdgesBetweenNodes(nodeIds: string[], kinds?: EdgeKind[]): Edge[];
372
+ /**
373
+ * Distinct file paths that DEPEND ON `filePath`: every file containing a
374
+ * symbol with a cross-file edge (any kind except `contains`) into a symbol
375
+ * of this file. This is the file-level projection of the symbol dependency
376
+ * graph and the basis for blast-radius / `affected` test selection.
377
+ *
378
+ * It deliberately does NOT restrict to `imports` edges. In this graph an
379
+ * `imports` edge connects a file to its own local import declarations
380
+ * (it is always same-file), so an imports-only lookup returns zero
381
+ * cross-file dependents for every file. The real cross-file dependency
382
+ * signal is the resolved call/reference graph — calls, references,
383
+ * instantiates, extends, implements, overrides, type_of, returns,
384
+ * decorates — exactly what {@link GraphTraverser.getImpactRadius} traverses.
385
+ * `contains` is excluded: a parent containing a symbol does not *depend* on
386
+ * it. One indexed query (idx_nodes_file_path + idx_edges_target_kind).
387
+ */
388
+ getDependentFilePaths(filePath: string): string[];
389
+ /**
390
+ * Distinct file paths that `filePath` DEPENDS ON — the inverse of
391
+ * {@link getDependentFilePaths}: every file containing a symbol that a
392
+ * symbol of this file has a cross-file edge into. Same edge-kind rules
393
+ * (all kinds except `contains`); same reason imports-only is insufficient.
394
+ */
395
+ getDependencyFilePaths(filePath: string): string[];
396
+ /**
397
+ * Cross-file edges whose TARGET is a node in `filePath` and whose SOURCE is a
398
+ * node in a *different* file, paired with the target node's (name, kind) so a
399
+ * caller can re-resolve the edge to the re-indexed target's new ID (node IDs
400
+ * are `sha256(filePath:kind:name:line)`, so any line shift in the callee file
401
+ * changes target IDs and a naive re-insert by old ID silently drops them).
402
+ * Used by `storeExtractionResult` to preserve incoming edges across a file
403
+ * re-index (issue #899). Same edge-kind rules as
404
+ * {@link getDependentFilePaths}: all kinds except `contains`.
405
+ */
406
+ getCrossFileIncomingEdgesWithTarget(filePath: string): Array<Edge & {
407
+ targetName: string;
408
+ targetKind: NodeKind;
409
+ sourceFilePath: string;
410
+ sourceLanguage: Language;
411
+ }>;
412
+ /**
413
+ * Insert or update a file record
414
+ */
415
+ upsertFile(file: FileRecord): void;
416
+ /**
417
+ * Which of `filePaths` the index flagged as tool-generated (schema v9+).
418
+ *
419
+ * Bounded-lookup by design: every consumer already holds a short candidate
420
+ * list (a ranked file group, an FTS result page, a LIMIT-20 aggregate), so
421
+ * this stays a partial-index probe over a handful of paths — no whole-repo
422
+ * set to materialize, and no cache to invalidate, which means a ranking call
423
+ * can never serve a verdict the last sync already replaced.
424
+ *
425
+ * Returns ONLY the content/index signal; callers union it with
426
+ * {@link isGeneratedFile} so pre-v9 databases (column present, all zeros
427
+ * until a re-index) keep the path-only behavior rather than regressing.
428
+ */
429
+ getGeneratedPathsAmong(filePaths: Iterable<string>): Set<string>;
430
+ /**
431
+ * A reusable `(path) => boolean` over a bounded candidate list, unioning the
432
+ * indexed flag with the path convention. This is the shape every ranking
433
+ * comparator wants: one query up front, then O(1) per comparison.
434
+ */
435
+ generatedPredicateFor(filePaths: Iterable<string>): (filePath: string) => boolean;
436
+ /**
437
+ * Which of `filePaths` are AMBIENT DECLARATION files — they declare nothing
438
+ * but types, and nothing in the index depends on them (CG-28). A hand-written
439
+ * ambient `.d.ts` of global shims, a vendored typings file, module
440
+ * augmentation: reachable only by name, structurally attached to nothing.
441
+ *
442
+ * Structural, not extension-based, so a hand-written `types.ts` and a `.d.ts`
443
+ * are judged by the same rule and a `.d.ts` that does declare a class or a
444
+ * const is (correctly) not caught. Four conditions, all required:
445
+ *
446
+ * 1. it declares at least one symbol — an empty or unparsed file is not a
447
+ * declaration file, it is a file we know nothing about;
448
+ * 2. EVERY declared symbol is a type-level kind (interface / type alias /
449
+ * enum / namespace). The narrowness is deliberate and measured: a rule
450
+ * of "no callables" alone flags 1–18% of a repo, including Kotlin sealed
451
+ * classes, Rust `mod.rs` re-exports and django's locale constant tables —
452
+ * real source that must not be demoted. This rule flags 0–4%;
453
+ * 3. no symbol in it originates a `calls`/`instantiates` edge — the direct
454
+ * evidence that nothing here has a body;
455
+ * 4. NOTHING ELSE IN THE INDEX points at it. This is the condition that
456
+ * separates an ambient shim from a working type module, and it is why
457
+ * the flag is narrow enough to be safe: `displacement-ts`'s pipeline
458
+ * `types.ts` passes 1–3 identically but carries 13 inbound imports and
459
+ * 21 references, so the files that answer a query about the pipeline are
460
+ * typed BY it — it is part of that answer's structure. An ambient
461
+ * `declare global` shim has zero. Deliberately index-wide rather than
462
+ * restricted to the candidate list: the file that imports it is usually
463
+ * not itself a candidate.
464
+ *
465
+ * Bounded-lookup like {@link getGeneratedPathsAmong}: callers hold a ranked
466
+ * candidate list, so this is a partial-index probe over a handful of paths.
467
+ */
468
+ getAmbientDeclarationPathsAmong(filePaths: Iterable<string>): Set<string>;
469
+ /**
470
+ * A reusable `(path) => boolean` ambient-declaration test over a bounded
471
+ * candidate list — the shape a ranking comparator wants: one query up front,
472
+ * O(1) per comparison.
473
+ */
474
+ ambientDeclarationPredicateFor(filePaths: Iterable<string>): (filePath: string) => boolean;
475
+ /** How many indexed files carry the generated flag. Surfaced by `status`. */
476
+ countGeneratedFiles(): number;
477
+ /**
478
+ * Delete a file record and its nodes
479
+ */
480
+ deleteFile(filePath: string): void;
481
+ /**
482
+ * Get a file record by path
483
+ */
484
+ getFileByPath(filePath: string): FileRecord | null;
485
+ /**
486
+ * Get all tracked files
487
+ */
488
+ getAllFiles(): FileRecord[];
489
+ /**
490
+ * Most recent index timestamp (ms since epoch) across all tracked files, or
491
+ * null when nothing is indexed yet. One indexed aggregate, no per-row scan. (#329)
492
+ */
493
+ getLastIndexedAt(): number | null;
494
+ /**
495
+ * Get files that need re-indexing (hash changed)
496
+ */
497
+ getStaleFiles(currentHashes: Map<string, string>): FileRecord[];
498
+ /**
499
+ * Insert an unresolved reference
500
+ */
501
+ insertUnresolvedRef(ref: UnresolvedReference): void;
502
+ /**
503
+ * Insert multiple unresolved references in a transaction
504
+ */
505
+ insertUnresolvedRefsBatch(refs: UnresolvedReference[]): void;
506
+ /**
507
+ * Delete unresolved references from a node
508
+ */
509
+ deleteUnresolvedByNode(nodeId: string): void;
510
+ /**
511
+ * Get unresolved references by name (for resolution)
512
+ */
513
+ getUnresolvedByName(name: string): UnresolvedReference[];
514
+ /**
515
+ * Get all unresolved references
516
+ */
517
+ getUnresolvedReferences(): UnresolvedReference[];
518
+ /**
519
+ * Get the count of PENDING (never-attempted) references without loading
520
+ * them into memory. Rows marked status='failed' — attempted by a completed
521
+ * pass, no match — are excluded: they are not outstanding work, only retry
522
+ * candidates for the #1240 sweep, so they must not trip the #1187 orphan
523
+ * sweep or the `status` pending-refs warning.
524
+ */
525
+ getUnresolvedReferencesCount(): number;
526
+ /**
527
+ * Get a batch of PENDING unresolved references using LIMIT/OFFSET
528
+ * pagination. Used to process references in bounded memory chunks; failed
529
+ * rows are excluded so the batched drain loop terminates once every row
530
+ * has been attempted.
531
+ */
532
+ getUnresolvedReferencesBatch(offset: number, limit: number): UnresolvedReference[];
533
+ /**
534
+ * Keyset variant of {@link getUnresolvedReferencesBatch} for the batched
535
+ * resolution loop: seek past the last-seen row id instead of OFFSET-walking.
536
+ * OFFSET reads re-scan the accumulated failed-row prefix on every batch —
537
+ * O(failed rows) per read, measured at 54.6s of the kernel-scale batch loop
538
+ * (§7a.2) — while the seek is O(batch) forever. `id` is the rowid alias, so
539
+ * the enumeration order is identical to the OFFSET reader's.
540
+ */
541
+ getUnresolvedReferencesBatchAfter(afterRowId: number, limit: number): UnresolvedReference[];
542
+ /**
543
+ * Get all tracked file paths (lightweight — no full FileRecord objects)
544
+ */
545
+ getAllFilePaths(): string[];
546
+ /**
547
+ * Get all distinct node names (lightweight — just name strings for pre-filtering)
548
+ */
549
+ getAllNodeNames(): string[];
550
+ /**
551
+ * Stream the distinct node names one row at a time — the incremental
552
+ * counterpart to {@link getAllNodeNames} for callers that need to yield
553
+ * to the event loop mid-scan (resolver cache warm-up on multi-million-node
554
+ * indexes). Fresh statement per call: the iterator holds an open cursor.
555
+ */
556
+ iterateNodeNames(): IterableIterator<string>;
557
+ /**
558
+ * Get unresolved references scoped to specific file paths.
559
+ * Uses the idx_unresolved_file_path index for efficient lookup.
560
+ */
561
+ getUnresolvedReferencesByFiles(filePaths: string[]): UnresolvedReference[];
562
+ /**
563
+ * Delete all unresolved references (after resolution)
564
+ */
565
+ clearUnresolvedReferences(): void;
566
+ /**
567
+ * Delete resolved references by their IDs
568
+ */
569
+ deleteResolvedReferences(fromNodeIds: string[]): void;
570
+ /**
571
+ * Delete specific resolved references by (fromNodeId, referenceName, referenceKind) tuples.
572
+ * More precise than deleteResolvedReferences — only removes refs that were actually resolved.
573
+ */
574
+ deleteSpecificResolvedReferences(refs: Array<{
575
+ fromNodeId: string;
576
+ referenceName: string;
577
+ referenceKind: string;
578
+ }>): number;
579
+ /**
580
+ * Delete unresolved-ref rows by row id — the precise cleanup for refs a
581
+ * resolution pass actually processed. The key-tuple variant above also
582
+ * deletes SIBLING rows (same caller calling the same callee at other lines)
583
+ * that a later batch hasn't attempted yet, so when a batch boundary split a
584
+ * caller's same-named call sites, the later sites' edges were silently never
585
+ * created (#1269).
586
+ */
587
+ deleteReferencesByRowIds(rowIds: number[]): number;
588
+ /**
589
+ * Mark refs a completed resolution pass could not resolve as status='failed'
590
+ * instead of deleting them (#1240). Failed rows are invisible to the pending
591
+ * count/batch readers (so drain loops and the #1187 orphan sweep still
592
+ * terminate) but stay queryable by name_tail so a later sync can retry them
593
+ * when a changed file introduces a symbol that could satisfy them. name_tail
594
+ * is (re)written here so rows inserted before the v8 migration get their
595
+ * tail the first time they're attempted.
596
+ */
597
+ markReferencesFailed(refs: Array<{
598
+ fromNodeId: string;
599
+ referenceName: string;
600
+ referenceKind: string;
601
+ }>): number;
602
+ /**
603
+ * Park refs as status='failed' by row id — the precise counterpart of
604
+ * markReferencesFailed, for the same reason as deleteReferencesByRowIds:
605
+ * the key-tuple variant also flips same-key sibling rows in later batches
606
+ * to 'failed' before they were ever attempted (#1269). Resolution outcome
607
+ * can differ per call site (receiver-type inference reads the ref's line),
608
+ * so a sibling must not inherit this row's failure.
609
+ */
610
+ markReferencesFailedByRowIds(refs: Array<{
611
+ rowId: number;
612
+ referenceName: string;
613
+ }>): number;
614
+ /**
615
+ * Failed refs whose name tail matches one of the given symbol names — the
616
+ * candidates a sync should retry after files carrying those names changed
617
+ * (#1240). Names matching more than `perNameCeiling` failed refs are
618
+ * skipped entirely: at that population a name is external/builtin noise
619
+ * (`get`, `map`, …) that one new definition won't resolve — the same
620
+ * rationale as resolution's AMBIGUOUS_NAME_CEILING (#999) — and retrying an
621
+ * arbitrary subset would be both wasted work and incoherent coverage.
622
+ */
623
+ getRetryableFailedReferences(names: string[], perNameCeiling?: number): UnresolvedReference[];
624
+ /**
625
+ * Resolution edges whose TARGET symbol is named one of `names` — the edges a
626
+ * sync must re-resolve after `names` gained or lost a definition (CG-33).
627
+ *
628
+ * Resolution binds a reference to a node whose name matches the reference's
629
+ * tail, and it picks among ALL same-named definitions project-wide. So adding
630
+ * or removing one definition of `pct` changes the answer for every `pct(...)`
631
+ * reference in the repo — including references in files this sync never
632
+ * touches, whose edges nothing else revisits. Those edges' current target is,
633
+ * by that same rule, a node named `pct`, which is why the target's name is a
634
+ * sufficient (and index-backed, via idx_nodes_name) way to find them without
635
+ * a schema change or a scan of edge metadata.
636
+ *
637
+ * Returns the source file/language alongside each edge so the caller can
638
+ * resurrect it as its original reference. Excludes `provenance='heuristic'`
639
+ * (synthesized dispatch edges are not resolution output and carry no refName
640
+ * stamp to resurrect from — deleting one would be a permanent loss).
641
+ *
642
+ * Names matching more than `perNameCeiling` edges are skipped entirely, same
643
+ * rationale and same default as {@link getRetryableFailedReferences}: at that
644
+ * population the name is generic (`get`, `clear`, …), one definition changing
645
+ * won't flip most of them, and rebinding an arbitrary subset is both wasted
646
+ * work and incoherent coverage.
647
+ */
648
+ getResolutionEdgesByTargetName(names: string[], perNameCeiling?: number): Array<Edge & {
649
+ edgeId: number;
650
+ sourceFilePath: string;
651
+ sourceLanguage: Language;
652
+ }>;
653
+ /** Delete edges by primary key — the rebind pass's half of a re-resolution. */
654
+ deleteEdgesByIds(edgeIds: number[]): number;
655
+ /**
656
+ * Distinct node names present in the given files — the symbol names a sync
657
+ * pass uses to look up retryable failed refs after those files changed.
658
+ */
659
+ getNodeNamesByFiles(filePaths: string[]): string[];
660
+ /**
661
+ * Distinct `file\0name` pairs defined by the given files — the shape sync's
662
+ * definition delta needs (CG-33).
663
+ *
664
+ * Deliberately NOT `getNodeNamesByFiles`: a bare name set is taken over the
665
+ * WHOLE changed batch, so a name that moves between two files in one commit
666
+ * (or exists in one changed file and is newly added to another) appears on
667
+ * both sides and cancels out of the symmetric difference — even though a
668
+ * definition genuinely appeared or vanished and every reference to that name
669
+ * repo-wide may now bind elsewhere. Keying by file makes each definition its
670
+ * own fact, so the move is seen as one removal plus one addition.
671
+ */
672
+ getNodeNamePairsByFiles(filePaths: string[]): Set<string>;
673
+ /**
674
+ * Lightweight (nodes, edges) count snapshot. Used around an index/sync
675
+ * run to compute true additions across extraction + resolution +
676
+ * synthesis — the per-phase counter in the orchestrator only sees
677
+ * extraction's contribution, which is why the CLI summary under-reported
678
+ * the edge count (resolution + synthesizer edges were invisible).
679
+ */
680
+ getNodeAndEdgeCount(): {
681
+ nodes: number;
682
+ edges: number;
683
+ };
684
+ /**
685
+ * Get graph statistics
686
+ */
687
+ getStats(): GraphStats;
688
+ /**
689
+ * Get a metadata value by key
690
+ */
691
+ getMetadata(key: string): string | null;
692
+ /**
693
+ * Set a metadata key-value pair (upsert)
694
+ */
695
+ setMetadata(key: string, value: string): void;
696
+ /**
697
+ * Get all metadata as a key-value record
698
+ */
699
+ getAllMetadata(): Record<string, string>;
700
+ /**
701
+ * Clear all data from the database
702
+ */
703
+ clear(): void;
704
+ }
705
+ //# sourceMappingURL=queries.d.ts.map