codebaseiq 0.1.0 → 0.3.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 (447) hide show
  1. package/CHANGELOG.md +89 -0
  2. package/README.md +1 -1
  3. package/dist/augment-vue-worker.js +1 -1
  4. package/dist/{chunk-ZMI2JSX2.js → chunk-23C5AD3B.js} +2 -2
  5. package/dist/chunk-2E6OUPCF.js +2 -0
  6. package/dist/chunk-2EDX3JT5.js +3 -0
  7. package/dist/chunk-2I2UHZET.js +2 -0
  8. package/dist/{chunk-T3DGWPXM.js → chunk-2OMXFE64.js} +2 -2
  9. package/dist/chunk-2PRONPAS.js +3 -0
  10. package/dist/{chunk-GW6Z3WGY.js → chunk-356EZBIP.js} +2 -2
  11. package/dist/{chunk-UDS562V4.js → chunk-36JC5BG2.js} +2 -2
  12. package/dist/chunk-3RR2K7EZ.js +20 -0
  13. package/dist/{chunk-JE3WZ6II.js → chunk-3RSBGWGL.js} +2 -2
  14. package/dist/{chunk-VE5AVNMP.js → chunk-3VJ3OCRE.js} +2 -2
  15. package/dist/{chunk-FDGD5AB5.js → chunk-4LK5OIPW.js} +2 -2
  16. package/dist/chunk-5DSL3NT2.js +17 -0
  17. package/dist/chunk-5FWR5HLG.js +90 -0
  18. package/dist/chunk-5IC2WZAL.js +22 -0
  19. package/dist/{chunk-MVB3DAEY.js → chunk-5IZRKWTZ.js} +2 -2
  20. package/dist/{chunk-Q65CQ4XL.js → chunk-5LL4KEHO.js} +2 -2
  21. package/dist/chunk-5T44HG5Y.js +88 -0
  22. package/dist/{chunk-TRRC4ZJ7.js → chunk-5ZI2PPI7.js} +2 -2
  23. package/dist/{chunk-7XAN6GKB.js → chunk-67VJAYVR.js} +2 -2
  24. package/dist/{chunk-MOVBWNIP.js → chunk-6BF3VYEF.js} +2 -2
  25. package/dist/chunk-6JMAVFL4.js +3 -0
  26. package/dist/chunk-6O3KXIDL.js +2 -0
  27. package/dist/{chunk-JOIRNPPY.js → chunk-6VREELBC.js} +2 -2
  28. package/dist/chunk-6WAPPQ5F.js +82 -0
  29. package/dist/{chunk-FW53T7EB.js → chunk-75KJGYX7.js} +2 -2
  30. package/dist/chunk-7GAK2F3H.js +77 -0
  31. package/dist/{chunk-UBGWN7I4.js → chunk-7JELP5YE.js} +2 -2
  32. package/dist/chunk-7UCDGXRW.js +8 -0
  33. package/dist/{chunk-L57ZKWVG.js → chunk-AEXQYQD7.js} +2 -2
  34. package/dist/chunk-AQI4N64O.js +22 -0
  35. package/dist/{chunk-ICFDQHAM.js → chunk-AURCQHSG.js} +2 -2
  36. package/dist/{chunk-I2T2LLK2.js → chunk-BBP7HVBJ.js} +2 -2
  37. package/dist/{chunk-OFBE4NGP.js → chunk-BFBIMTCJ.js} +2 -2
  38. package/dist/{chunk-JEJLSICM.js → chunk-BGGB5N53.js} +2 -2
  39. package/dist/{chunk-TIIC3ZE7.js → chunk-BRQL7AFJ.js} +2 -2
  40. package/dist/{chunk-YSNONTJ2.js → chunk-BWL3PMPT.js} +2 -2
  41. package/dist/chunk-C6WKPKCF.js +127 -0
  42. package/dist/{chunk-YESXMKX3.js → chunk-C7OUW52M.js} +2 -2
  43. package/dist/chunk-C7QWUBR2.js +545 -0
  44. package/dist/{chunk-4WKDMDEW.js → chunk-CCIYWXX6.js} +2 -2
  45. package/dist/{chunk-FAJQ7LWY.js → chunk-CIYA2KZN.js} +2 -2
  46. package/dist/{chunk-VEXUL62T.js → chunk-CR3OG6SQ.js} +2 -2
  47. package/dist/{chunk-JSOYNVWH.js → chunk-CVHOQONG.js} +2 -2
  48. package/dist/{chunk-LU3BMVH2.js → chunk-CW6AXOLR.js} +2 -2
  49. package/dist/{chunk-TXXOEMZJ.js → chunk-D53LWANR.js} +2 -2
  50. package/dist/{chunk-DO6WQD2T.js → chunk-D62CTZX6.js} +2 -2
  51. package/dist/{chunk-N3IQCBCF.js → chunk-D7AZAOZX.js} +2 -2
  52. package/dist/{chunk-RDBI2RXU.js → chunk-D7DOB27N.js} +7 -7
  53. package/dist/chunk-DAKIGMIK.js +21 -0
  54. package/dist/chunk-DDN2F6GB.js +2 -0
  55. package/dist/chunk-DUKHVPU5.js +4 -0
  56. package/dist/chunk-DVWO7RBC.js +2 -0
  57. package/dist/{chunk-HKQUXIFO.js → chunk-E52K4L2W.js} +2 -2
  58. package/dist/chunk-EIBGSU2R.js +2 -0
  59. package/dist/chunk-EN4AHLL3.js +3 -0
  60. package/dist/chunk-EQNMD62X.js +51 -0
  61. package/dist/{chunk-ENCCHKM6.js → chunk-EXZ7VLRY.js} +4 -4
  62. package/dist/{chunk-NEDP5RFQ.js → chunk-F3QSL4W2.js} +2 -2
  63. package/dist/{chunk-O6QTXQPJ.js → chunk-F74LZWCE.js} +2 -2
  64. package/dist/{chunk-BH5F2Q4O.js → chunk-FEIZXBLH.js} +2 -2
  65. package/dist/chunk-FH5WG4LE.js +2 -0
  66. package/dist/{chunk-BVAJLC5A.js → chunk-FOZ74V56.js} +2 -2
  67. package/dist/{chunk-L4NRUAGJ.js → chunk-FQTIFWLR.js} +2 -2
  68. package/dist/chunk-FTTV7IRX.js +355 -0
  69. package/dist/chunk-FWQGH2N2.js +2 -0
  70. package/dist/{chunk-CAUCPUOF.js → chunk-GDHWOA57.js} +2 -2
  71. package/dist/{chunk-6MUIJMVL.js → chunk-GIDCP7KV.js} +2 -2
  72. package/dist/{chunk-ZV3JV5G5.js → chunk-GL6UTNUB.js} +2 -2
  73. package/dist/chunk-GP7C5VAE.js +2 -0
  74. package/dist/{chunk-FQKZWM4L.js → chunk-GQLDYCWS.js} +5 -5
  75. package/dist/chunk-GQXXOS55.js +2 -0
  76. package/dist/{chunk-H3LGFZVK.js → chunk-GUFPEFBG.js} +2 -2
  77. package/dist/{chunk-NNOKTMZT.js → chunk-GV2CEZCW.js} +2 -2
  78. package/dist/{chunk-FETNQCFO.js → chunk-GVAF222T.js} +2 -2
  79. package/dist/chunk-GWYZVVKY.js +21 -0
  80. package/dist/{chunk-7FND7D7N.js → chunk-HENP2O4A.js} +2 -2
  81. package/dist/{chunk-LZYFLFEH.js → chunk-HINZQKSY.js} +2 -2
  82. package/dist/{chunk-RR7SX44N.js → chunk-HQA7EBSK.js} +2 -2
  83. package/dist/{chunk-XMQ23E27.js → chunk-HVFB3PME.js} +2 -2
  84. package/dist/chunk-I22IZYDI.js +2 -0
  85. package/dist/chunk-ICUL7XRT.js +21 -0
  86. package/dist/{chunk-CQP3THUZ.js → chunk-IHSLIIL3.js} +2 -2
  87. package/dist/{chunk-34WBMAYK.js → chunk-ITSJMNUD.js} +2 -2
  88. package/dist/{chunk-PX4RYAAK.js → chunk-IZDPGOZR.js} +2 -2
  89. package/dist/chunk-J3GLP7Q5.js +3 -0
  90. package/dist/{chunk-CVYSU6BX.js → chunk-J7AMBVWF.js} +2 -2
  91. package/dist/{chunk-Y6KHROC3.js → chunk-JCMFBF4Z.js} +2 -2
  92. package/dist/chunk-JFIA2JI3.js +3 -0
  93. package/dist/chunk-JLZLLLW5.js +3 -0
  94. package/dist/{chunk-5PUWMSDU.js → chunk-JSNTHRLQ.js} +2 -2
  95. package/dist/{chunk-C6SBF2WH.js → chunk-JX6ZWDOS.js} +2 -2
  96. package/dist/{chunk-4XTAUQFD.js → chunk-JYI7CV25.js} +2 -2
  97. package/dist/chunk-K7JLSGCJ.js +8 -0
  98. package/dist/{chunk-XWUOUWYI.js → chunk-KPZGTB2O.js} +2 -2
  99. package/dist/{chunk-VXYS3FZD.js → chunk-LKUTSP4G.js} +2 -2
  100. package/dist/{chunk-GTXSJDCO.js → chunk-LMTSB3TB.js} +2 -2
  101. package/dist/chunk-LONKINMJ.js +543 -0
  102. package/dist/{chunk-WMPRTGH2.js → chunk-LQHYYIOB.js} +2 -2
  103. package/dist/{chunk-VUIYB2V3.js → chunk-LZSQ6X7E.js} +2 -2
  104. package/dist/{chunk-ST7V3SKN.js → chunk-M2Y6PCFE.js} +2 -2
  105. package/dist/chunk-MEUHIDI3.js +7 -0
  106. package/dist/{chunk-OZYRSMSH.js → chunk-MHWMEZDA.js} +2 -2
  107. package/dist/{chunk-RKEJ6VTF.js → chunk-MQW6SJ4P.js} +2 -2
  108. package/dist/{chunk-J77SU6VA.js → chunk-MSI3K7PJ.js} +2 -2
  109. package/dist/chunk-MVRGB4KJ.js +278 -0
  110. package/dist/{chunk-DQMDCD24.js → chunk-MZNMASFM.js} +2 -2
  111. package/dist/{chunk-ID63777H.js → chunk-NBCQZSGR.js} +2 -2
  112. package/dist/chunk-NBZKSTXP.js +2 -0
  113. package/dist/{chunk-SZD2KF7Q.js → chunk-NCJILOAK.js} +2 -2
  114. package/dist/{chunk-C7QOQX32.js → chunk-NDKOVQFG.js} +2 -2
  115. package/dist/{chunk-UNBY47BC.js → chunk-NEWHKGVD.js} +2 -2
  116. package/dist/{chunk-PYAB5SM6.js → chunk-O2M3VNDY.js} +2 -2
  117. package/dist/chunk-OFGOOL6U.js +3 -0
  118. package/dist/{chunk-SWHMHUKF.js → chunk-OQUCBKOI.js} +2 -2
  119. package/dist/{chunk-7MGU3HPH.js → chunk-P4NVCOM7.js} +2 -2
  120. package/dist/{chunk-ANFVSJWQ.js → chunk-PFC44E6D.js} +2 -2
  121. package/dist/{chunk-EZNMUY67.js → chunk-PHNCEUXX.js} +2 -2
  122. package/dist/{chunk-4FC325IF.js → chunk-PTQPPPG2.js} +2 -2
  123. package/dist/chunk-PUVNH4PO.js +3 -0
  124. package/dist/chunk-Q23IMHXS.js +343 -0
  125. package/dist/chunk-Q3ZCQY2Y.js +3 -0
  126. package/dist/{chunk-KMITESMT.js → chunk-Q4XEU3UH.js} +2 -2
  127. package/dist/{chunk-QKPLA6IC.js → chunk-QEOWONKY.js} +2 -2
  128. package/dist/{chunk-BJ6SQAEN.js → chunk-QMOZZ2VX.js} +2 -2
  129. package/dist/chunk-RCIGX23V.js +60 -0
  130. package/dist/{chunk-IOP6FWIM.js → chunk-RIYJ4L33.js} +2 -2
  131. package/dist/chunk-RJVAPMHF.js +14 -0
  132. package/dist/chunk-SB7NASHU.js +2 -0
  133. package/dist/{chunk-UZGZB3VB.js → chunk-SGMNWYTH.js} +2 -2
  134. package/dist/chunk-SMDIEDM4.js +27 -0
  135. package/dist/chunk-SV2LEFVM.js +2 -0
  136. package/dist/chunk-SX72EVMY.js +3 -0
  137. package/dist/chunk-T5X7DK6C.js +3 -0
  138. package/dist/{chunk-6NW7MU72.js → chunk-T6MQNNAC.js} +2 -2
  139. package/dist/chunk-T75DS2E6.js +21 -0
  140. package/dist/{chunk-HRWGYWRJ.js → chunk-TEANKHUU.js} +2 -2
  141. package/dist/chunk-TJBOJUVN.js +3 -0
  142. package/dist/{chunk-XLQ3GLWZ.js → chunk-TJWVT4DO.js} +2 -2
  143. package/dist/{chunk-7NVGT435.js → chunk-TNJGTQWO.js} +2 -2
  144. package/dist/{chunk-NE6IU5ZD.js → chunk-TOTWJZIX.js} +2 -2
  145. package/dist/{chunk-PBI2LFKH.js → chunk-TPO7XC5Z.js} +2 -2
  146. package/dist/{chunk-HPJRBHVT.js → chunk-U33PMPNW.js} +2 -2
  147. package/dist/{chunk-QHRNXP3C.js → chunk-U7NUXDQO.js} +2 -2
  148. package/dist/chunk-UC2FD2PS.js +4 -0
  149. package/dist/{chunk-PIOMTC27.js → chunk-UQE4XFSA.js} +2 -2
  150. package/dist/chunk-UQYQBLJX.js +5 -0
  151. package/dist/{chunk-KWVHSKHK.js → chunk-USOAJHY7.js} +2 -2
  152. package/dist/{chunk-GCHRX4YW.js → chunk-UW6KD57C.js} +2 -2
  153. package/dist/{chunk-PTAWHLVJ.js → chunk-VGWZ4MOY.js} +2 -2
  154. package/dist/{chunk-XME3HPXZ.js → chunk-VWYGCMV5.js} +2 -2
  155. package/dist/{chunk-AKB7V7TV.js → chunk-W7YLRXZE.js} +2 -2
  156. package/dist/{chunk-SYDJMPES.js → chunk-WK2IQJPK.js} +2 -2
  157. package/dist/{chunk-RBAS5ZHI.js → chunk-WWCV4E6J.js} +2 -2
  158. package/dist/{chunk-OL6KJP3N.js → chunk-XMJ53WG4.js} +2 -2
  159. package/dist/chunk-XN3EKMLI.js +4 -0
  160. package/dist/chunk-XQAVQVIL.js +3 -0
  161. package/dist/{chunk-IJ4HMYBE.js → chunk-XQPPURLQ.js} +2 -2
  162. package/dist/{chunk-OVTS4DKB.js → chunk-YHPG3S2U.js} +2 -2
  163. package/dist/{chunk-WOQBZPIF.js → chunk-YRKP7PM7.js} +2 -2
  164. package/dist/chunk-YT4DVWUV.js +11 -0
  165. package/dist/chunk-YTJHCGYB.js +61 -0
  166. package/dist/chunk-Z35GOVEH.js +2 -0
  167. package/dist/{chunk-OLF4MA5W.js → chunk-Z6RL7XOE.js} +4 -4
  168. package/dist/{chunk-UP3BUZR5.js → chunk-ZAFGY22Q.js} +2 -2
  169. package/dist/{chunk-CO5R3UNA.js → chunk-ZB4C5TTR.js} +2 -2
  170. package/dist/{chunk-ZZXSWSN6.js → chunk-ZNH33XIB.js} +2 -2
  171. package/dist/{chunk-EMNIHCRB.js → chunk-ZQ62NNKN.js} +2 -2
  172. package/dist/cli-context-FJL2JHOE.js +3 -0
  173. package/dist/cli-context-PQNWHMCQ.js +2 -0
  174. package/dist/cli-program-UO7PZD6V.js +7 -0
  175. package/dist/cli.js +1 -1
  176. package/dist/{code-DlqpBDd0.d.ts → code-DfX3xeWy.d.ts} +1 -1
  177. package/dist/code-viewer-KIXEYQNJ.js +12 -0
  178. package/dist/code-viewer-VHLBLIUM.js +11 -0
  179. package/dist/command-descriptors-F5P2V3NW.js +335 -0
  180. package/dist/command-descriptors-YCLATF5I.js +337 -0
  181. package/dist/{config-types-BNoC96J3.d.ts → config-types-D6X5S68_.d.ts} +50 -0
  182. package/dist/{db-D7sauVFH.d.ts → db-BoG_PWYH.d.ts} +2 -2
  183. package/dist/direct-navigation-4XJTXIDT.js +2 -0
  184. package/dist/direct-navigation-J5MVYYAD.js +3 -0
  185. package/dist/{graph-evidence-BIFqyisO.d.ts → graph-evidence-D1jx1Cql.d.ts} +1 -1
  186. package/dist/{health-DJaZXg8I.d.ts → health-DkYBS5BI.d.ts} +1 -1
  187. package/dist/index.d.ts +2 -2
  188. package/dist/index.js +1 -1
  189. package/dist/invocation-command-descriptors-RWV4VAI4.js +2 -0
  190. package/dist/invocation-command-descriptors-U76PN7IY.js +3 -0
  191. package/dist/{scip-cli-B7N3haxa.d.ts → maintenance-types-CdL5eQii.d.ts} +2 -21
  192. package/dist/output-continuation-command-BL25S26S.js +3 -0
  193. package/dist/output-continuation-command-BTETTXEC.js +2 -0
  194. package/dist/postinstall.js +1 -1
  195. package/dist/project-reindex-CRJU3IFG.js +2 -0
  196. package/dist/project-reindex-TQFCOA2O.js +3 -0
  197. package/dist/queries/affected.d.ts +2 -2
  198. package/dist/queries/affected.js +1 -1
  199. package/dist/queries/anchors.d.ts +2 -2
  200. package/dist/queries/anchors.js +1 -1
  201. package/dist/queries/architecture.d.ts +2 -2
  202. package/dist/queries/architecture.js +1 -1
  203. package/dist/queries/bottlenecks.d.ts +2 -2
  204. package/dist/queries/bottlenecks.js +1 -1
  205. package/dist/queries/by-kind.d.ts +2 -2
  206. package/dist/queries/by-kind.js +1 -1
  207. package/dist/queries/call-graph.d.ts +2 -2
  208. package/dist/queries/call-graph.js +1 -1
  209. package/dist/queries/change-surface.d.ts +2 -2
  210. package/dist/queries/change-surface.js +1 -1
  211. package/dist/queries/cleanup-plan.d.ts +2 -2
  212. package/dist/queries/cleanup-plan.js +1 -1
  213. package/dist/queries/co-change.d.ts +2 -2
  214. package/dist/queries/co-change.js +1 -1
  215. package/dist/queries/code.d.ts +3 -3
  216. package/dist/queries/code.js +1 -1
  217. package/dist/queries/complexity-hotspots.d.ts +2 -2
  218. package/dist/queries/complexity-hotspots.js +1 -1
  219. package/dist/queries/complexity.d.ts +2 -2
  220. package/dist/queries/complexity.js +1 -1
  221. package/dist/queries/context.d.ts +2 -2
  222. package/dist/queries/context.js +1 -1
  223. package/dist/queries/convergence.d.ts +2 -2
  224. package/dist/queries/convergence.js +1 -1
  225. package/dist/queries/coupling.d.ts +2 -2
  226. package/dist/queries/coupling.js +1 -1
  227. package/dist/queries/cycles.d.ts +2 -2
  228. package/dist/queries/cycles.js +1 -1
  229. package/dist/queries/dataflow.d.ts +2 -2
  230. package/dist/queries/dataflow.js +1 -1
  231. package/dist/queries/dead.d.ts +2 -2
  232. package/dist/queries/dead.js +1 -1
  233. package/dist/queries/decorative-checkers.d.ts +2 -2
  234. package/dist/queries/decorative-checkers.js +1 -1
  235. package/dist/queries/deep-chains.d.ts +2 -2
  236. package/dist/queries/deep-chains.js +1 -1
  237. package/dist/queries/dependence-slice.d.ts +3 -3
  238. package/dist/queries/dependence-slice.js +1 -1
  239. package/dist/queries/dependency-depth.d.ts +2 -2
  240. package/dist/queries/dependency-depth.js +1 -1
  241. package/dist/queries/deps.d.ts +2 -2
  242. package/dist/queries/deps.js +1 -1
  243. package/dist/queries/diff-impact.d.ts +2 -2
  244. package/dist/queries/diff-impact.js +1 -1
  245. package/dist/queries/doc-drift.d.ts +2 -2
  246. package/dist/queries/doc-drift.js +1 -1
  247. package/dist/queries/drift.d.ts +2 -2
  248. package/dist/queries/drift.js +1 -1
  249. package/dist/queries/duplicate-bodies.d.ts +2 -2
  250. package/dist/queries/duplicate-bodies.js +1 -1
  251. package/dist/queries/entry-map.d.ts +2 -2
  252. package/dist/queries/entry-map.js +1 -1
  253. package/dist/queries/evidence.d.ts +3 -3
  254. package/dist/queries/evidence.js +1 -1
  255. package/dist/queries/extract-candidates.d.ts +2 -2
  256. package/dist/queries/extract-candidates.js +1 -1
  257. package/dist/queries/fan.d.ts +2 -2
  258. package/dist/queries/fan.js +1 -1
  259. package/dist/queries/files.d.ts +2 -2
  260. package/dist/queries/files.js +1 -1
  261. package/dist/queries/health.d.ts +3 -3
  262. package/dist/queries/health.js +1 -1
  263. package/dist/queries/hierarchy.d.ts +2 -2
  264. package/dist/queries/hierarchy.js +1 -1
  265. package/dist/queries/hotspots.d.ts +2 -2
  266. package/dist/queries/hotspots.js +1 -1
  267. package/dist/queries/imports.d.ts +2 -2
  268. package/dist/queries/imports.js +1 -1
  269. package/dist/queries/incomplete-migration.d.ts +2 -2
  270. package/dist/queries/incomplete-migration.js +1 -1
  271. package/dist/queries/index.d.ts +5 -5
  272. package/dist/queries/index.js +1 -1
  273. package/dist/queries/isolated.d.ts +2 -2
  274. package/dist/queries/isolated.js +1 -1
  275. package/dist/queries/locality-candidates.d.ts +2 -2
  276. package/dist/queries/locality-candidates.js +1 -1
  277. package/dist/queries/members.d.ts +2 -2
  278. package/dist/queries/members.js +1 -1
  279. package/dist/queries/methods.d.ts +2 -2
  280. package/dist/queries/methods.js +1 -1
  281. package/dist/queries/not-implemented.d.ts +2 -2
  282. package/dist/queries/not-implemented.js +1 -1
  283. package/dist/queries/outline.d.ts +2 -2
  284. package/dist/queries/outline.js +1 -1
  285. package/dist/queries/passthrough-candidates.d.ts +2 -2
  286. package/dist/queries/passthrough-candidates.js +1 -1
  287. package/dist/queries/plan-context.d.ts +2 -2
  288. package/dist/queries/plan-context.js +1 -1
  289. package/dist/queries/react-component-duplicates.d.ts +2 -2
  290. package/dist/queries/react-component-duplicates.js +1 -1
  291. package/dist/queries/react-hook-candidates.d.ts +2 -2
  292. package/dist/queries/react-hook-candidates.js +1 -1
  293. package/dist/queries/react-large-component-pressure.d.ts +2 -2
  294. package/dist/queries/react-large-component-pressure.js +1 -1
  295. package/dist/queries/recent-duplicates.d.ts +2 -2
  296. package/dist/queries/recent-duplicates.js +1 -1
  297. package/dist/queries/redundant-reexports.d.ts +2 -2
  298. package/dist/queries/redundant-reexports.js +1 -1
  299. package/dist/queries/reference-neighborhood.d.ts +2 -2
  300. package/dist/queries/reference-neighborhood.js +1 -1
  301. package/dist/queries/reference-reachability.d.ts +2 -2
  302. package/dist/queries/reference-reachability.js +1 -1
  303. package/dist/queries/refs.d.ts +2 -2
  304. package/dist/queries/refs.js +1 -1
  305. package/dist/queries/self-audit.d.ts +2 -2
  306. package/dist/queries/self-audit.js +1 -1
  307. package/dist/queries/similar-chains.d.ts +2 -2
  308. package/dist/queries/similar-chains.js +1 -1
  309. package/dist/queries/similar-files.d.ts +2 -2
  310. package/dist/queries/similar-files.js +1 -1
  311. package/dist/queries/similar-signatures.d.ts +2 -2
  312. package/dist/queries/similar-signatures.js +1 -1
  313. package/dist/queries/similar.d.ts +2 -2
  314. package/dist/queries/similar.js +1 -1
  315. package/dist/queries/slice.d.ts +2 -2
  316. package/dist/queries/slice.js +1 -1
  317. package/dist/queries/source-inspection.d.ts +4 -4
  318. package/dist/queries/source-inspection.js +1 -1
  319. package/dist/queries/source-search.d.ts +2 -2
  320. package/dist/queries/source-search.js +1 -1
  321. package/dist/queries/stale-abstractions.d.ts +2 -2
  322. package/dist/queries/stale-abstractions.js +1 -1
  323. package/dist/queries/stats.d.ts +2 -2
  324. package/dist/queries/surface.d.ts +2 -2
  325. package/dist/queries/surface.js +1 -1
  326. package/dist/queries/symbols.d.ts +2 -2
  327. package/dist/queries/symbols.js +1 -1
  328. package/dist/queries/system-map.d.ts +2 -2
  329. package/dist/queries/system-map.js +1 -1
  330. package/dist/queries/system.d.ts +2 -2
  331. package/dist/queries/system.js +1 -1
  332. package/dist/queries/test-quality.d.ts +2 -2
  333. package/dist/queries/test-quality.js +1 -1
  334. package/dist/queries/trace.d.ts +2 -2
  335. package/dist/queries/trace.js +1 -1
  336. package/dist/queries/twin-ab.d.ts +2 -2
  337. package/dist/queries/twin-ab.js +1 -1
  338. package/dist/queries/twin-drift.d.ts +2 -2
  339. package/dist/queries/twin-drift.js +1 -1
  340. package/dist/queries/unused-imports.d.ts +2 -2
  341. package/dist/queries/unused-imports.js +1 -1
  342. package/dist/queries/unused-params.d.ts +2 -2
  343. package/dist/queries/unused-params.js +1 -1
  344. package/dist/queries/value-flow.d.ts +3 -3
  345. package/dist/queries/value-flow.js +1 -1
  346. package/dist/queries/vue-component-duplicates.d.ts +2 -2
  347. package/dist/queries/vue-component-duplicates.js +1 -1
  348. package/dist/queries/vue-composable-candidates.d.ts +2 -2
  349. package/dist/queries/vue-composable-candidates.js +1 -1
  350. package/dist/queries/vue-large-view-pressure.d.ts +2 -2
  351. package/dist/queries/vue-large-view-pressure.js +1 -1
  352. package/dist/queries/wrapper-candidates.d.ts +2 -2
  353. package/dist/queries/wrapper-candidates.js +1 -1
  354. package/dist/reindex-worker.js +2 -2
  355. package/dist/reindex.d.ts +3 -5
  356. package/dist/reindex.js +72 -33
  357. package/dist/runtime.d.ts +23 -4
  358. package/dist/runtime.js +3 -3
  359. package/dist/rust-semantic-session-server.js +1 -1
  360. package/dist/rust-semantic-session-worker.js +1 -1
  361. package/dist/rust-semantic-worker.js +1 -1
  362. package/dist/sentinel-ensure-command-OSWGCFFL.js +3 -0
  363. package/dist/sentinel-ensure-command-SPW7XQLB.js +2 -0
  364. package/dist/sentinel-hook.js +39 -0
  365. package/dist/sentinel-worker.js +16 -0
  366. package/dist/typescript-mailbox-worker.js +1 -1
  367. package/dist/watch-server.js +6 -6
  368. package/docs/COMMAND_REFERENCE.md +5 -3
  369. package/docs/INDEX_GENERATIONS.md +2 -2
  370. package/docs/NPM_RELEASE.md +323 -0
  371. package/docs/schemas/npm-release-state.schema.json +4 -13
  372. package/docs/schemas/project-config.schema.json +159 -0
  373. package/package.json +10 -14
  374. package/skills/codebaseiq/SKILL.md +1 -1
  375. package/skills/concrete-plan/SKILL.md +1 -1
  376. package/ui/view/api.js +450 -0
  377. package/ui/view/app.js +394 -0
  378. package/ui/view/builder.js +323 -0
  379. package/ui/view/file-panel.js +170 -0
  380. package/ui/view/focus.js +379 -0
  381. package/ui/view/index.html +54 -0
  382. package/ui/view/map.js +424 -0
  383. package/ui/view/styles.css +1125 -0
  384. package/dist/chunk-2Q2LW5JW.js +0 -14
  385. package/dist/chunk-2X7V4HS4.js +0 -88
  386. package/dist/chunk-3IER7Q6H.js +0 -12
  387. package/dist/chunk-3JSXXYTZ.js +0 -345
  388. package/dist/chunk-476NR5B7.js +0 -2
  389. package/dist/chunk-5VKBFZZU.js +0 -3
  390. package/dist/chunk-6BQ3DSPK.js +0 -2
  391. package/dist/chunk-6CS3UQTN.js +0 -3
  392. package/dist/chunk-6OAHRI2D.js +0 -6
  393. package/dist/chunk-ADTBPVUZ.js +0 -21
  394. package/dist/chunk-BFFZDZQV.js +0 -2
  395. package/dist/chunk-BMYOV5GP.js +0 -77
  396. package/dist/chunk-C74PPYLA.js +0 -3
  397. package/dist/chunk-CWONGW6P.js +0 -3
  398. package/dist/chunk-DDZ7VHWV.js +0 -20
  399. package/dist/chunk-DR2LURYU.js +0 -3
  400. package/dist/chunk-ECQBG7PW.js +0 -564
  401. package/dist/chunk-EF2R3WNQ.js +0 -2
  402. package/dist/chunk-FM5BPL4V.js +0 -60
  403. package/dist/chunk-G6XFR4ZL.js +0 -4
  404. package/dist/chunk-GTIYTDRE.js +0 -562
  405. package/dist/chunk-HOA5YGOH.js +0 -3
  406. package/dist/chunk-KUW32IRO.js +0 -2
  407. package/dist/chunk-LTA3BRZX.js +0 -2
  408. package/dist/chunk-NAUD7LCA.js +0 -2
  409. package/dist/chunk-NCZUNH3E.js +0 -109
  410. package/dist/chunk-NNJ2KZZG.js +0 -4
  411. package/dist/chunk-NNO6A2PO.js +0 -2
  412. package/dist/chunk-OGTFJ3XD.js +0 -2
  413. package/dist/chunk-Q5ELPRKQ.js +0 -2
  414. package/dist/chunk-Q72QSKXC.js +0 -308
  415. package/dist/chunk-QCN62RTF.js +0 -3
  416. package/dist/chunk-QW7EP6WI.js +0 -21
  417. package/dist/chunk-RU65DDUP.js +0 -215
  418. package/dist/chunk-SELM5MER.js +0 -2
  419. package/dist/chunk-SMRBZ6EC.js +0 -2
  420. package/dist/chunk-SNNWPCN7.js +0 -4
  421. package/dist/chunk-TFZB6XTM.js +0 -239
  422. package/dist/chunk-UCD3H3UZ.js +0 -5
  423. package/dist/chunk-UXM43C7T.js +0 -3
  424. package/dist/chunk-VFY6Y2H6.js +0 -61
  425. package/dist/chunk-WE5RZHZ7.js +0 -5
  426. package/dist/chunk-YMGZZEW4.js +0 -2
  427. package/dist/chunk-YVCIMIOC.js +0 -12
  428. package/dist/chunk-Z54RD7VL.js +0 -3
  429. package/dist/chunk-ZKX2FRS6.js +0 -15
  430. package/dist/cli-context-3SNLDYBM.js +0 -3
  431. package/dist/cli-context-T3B7W6GG.js +0 -2
  432. package/dist/cli-program-YNOXO72B.js +0 -7
  433. package/dist/command-descriptors-6AOUKWW7.js +0 -346
  434. package/dist/command-descriptors-ZFKJSRUP.js +0 -344
  435. package/dist/direct-navigation-DP4LVMRX.js +0 -3
  436. package/dist/direct-navigation-FLUS3BT6.js +0 -2
  437. package/dist/invocation-command-descriptors-QT2JMY5J.js +0 -3
  438. package/dist/invocation-command-descriptors-YN4QJEAX.js +0 -2
  439. package/dist/output-continuation-command-2V2SL4TD.js +0 -2
  440. package/dist/output-continuation-command-65J5IP3O.js +0 -3
  441. package/dist/project-reindex-5JOKXAXT.js +0 -2
  442. package/dist/project-reindex-UQBIKO4M.js +0 -3
  443. package/docs/WINDOWS_SIDECAR_RELEASE.md +0 -424
  444. package/docs/schemas/windows-sidecar-provenance.schema.json +0 -137
  445. package/scripts/build-codebaseiq-windows.mjs +0 -197
  446. package/scripts/codebaseiq-windows-provenance.mjs +0 -364
  447. package/scripts/verify-codebaseiq-windows.mjs +0 -29
@@ -0,0 +1,3 @@
1
+ import{H as x,J as h,M as P,N as g,O as N,P as y,Q as f,R as p}from"./chunk-UC2FD2PS.js";var te=new Set(["aix","android","darwin","freebsd","haiku","linux","openbsd","sunos","win32","cygwin","netbsd"]);function S(e){if(!e||typeof e!="object"||Array.isArray(e))return null;let r=e;return r.version!==1||typeof r.pid!="number"||!Number.isSafeInteger(r.pid)||r.pid<=0||typeof r.platform!="string"||!te.has(r.platform)||typeof r.startToken!="string"||r.startToken.trim()===""?null:{version:1,pid:r.pid,platform:r.platform,startToken:r.startToken}}function m(e,r){return e.version===r.version&&e.pid===r.pid&&e.platform===r.platform&&e.startToken===r.startToken}import{execFileSync as ne}from"child_process";import{platform as oe}from"os";var A=new WeakMap,ie=1e3,_=16*1024;function k(e,r=le){if(!Number.isSafeInteger(e)||e<=0)return null;if(e===process.pid){let t=A.get(r);if(t)return t}try{let t=se(e,r);if(!t)return null;let n={version:1,pid:e,platform:r.platform,startToken:t};return e===process.pid&&A.set(r,n),n}catch{return null}}function se(e,r){if(r.platform==="linux"||r.platform==="android")return ce(r.readFile(`/proc/${e}/stat`));if(r.platform==="win32"){let t=`([DateTimeOffset](Get-Process -Id ${e} -ErrorAction Stop).StartTime).ToUnixTimeMilliseconds()`;return M(r.run("powershell.exe",["-NoProfile","-NonInteractive","-Command",t]))}return r.platform==="darwin"||r.platform==="freebsd"||r.platform==="openbsd"||r.platform==="netbsd"?M(r.run("ps",["-p",String(e),"-o","lstart="])):null}function ce(e){let r=e.lastIndexOf(")");if(r<0)return null;let n=e.slice(r+1).trim().split(/\s+/)[19];return n&&/^\d+$/.test(n)?n:null}function M(e){let r=e.trim();return r===""?null:r}var le={platform:oe(),readFile(e){return h(e,{maxBytes:_,inputKind:"process identity pseudo-file"})},run(e,r){return ne(e,[...r],{encoding:"utf8",timeout:ie,maxBuffer:_,env:{...process.env,LC_ALL:"C",LANG:"C"},stdio:["ignore","pipe","ignore"],windowsHide:!0})}};function C(e){try{return process.kill(e,0),!0}catch(r){return typeof r=="object"&&r!==null&&"code"in r&&r.code==="EPERM"}}function Qe(){return performance.now()}import{randomUUID as ae}from"crypto";import{closeSync as de,fsyncSync as ue,linkSync as me,mkdirSync as fe,openSync as ye,statSync as pe,unlinkSync as be,writeSync as Pe}from"fs";import{dirname as L}from"path";var R="codebaseiq-process-lock",T=1,w=Object.freeze({wallNow:()=>Date.now(),isProcessAlive:C,readProcessIdentity:k,randomToken:()=>ae(),makeDirectory:e=>fe(e,{recursive:!0}),openFile:(e,r,t)=>ye(e,r,t),writeFile:(e,r,t,n)=>Pe(e,r,t,n),syncFile:e=>ue(e),closeFile:e=>de(e),linkFile:(e,r)=>me(e,r),readFile:e=>x(e,"process lock record"),statFile:e=>{let r=pe(e);return{dev:r.dev,ino:r.ino,size:r.size,mtimeMs:r.mtimeMs}},removeFile:e=>be(e)});function cr(e,r){let t=r.runtime??w;t.makeDirectory(L(e));let n;for(let o=0;o<2;o+=1)try{return{kind:"acquired",lock:B(e,r,t),...n?{reclaimed:n}:{}}}catch(i){if(i.code!=="EEXIST")throw i;let s=b(e,{parseLegacy:r.parseLegacy,runtime:t});if(o===0&&ke(e,s,{creationGraceMs:r.creationGraceMs,parseLegacy:r.parseLegacy,runtime:t})){n=s;continue}return{kind:"contended",observation:s}}return{kind:"contended",observation:b(e,{parseLegacy:r.parseLegacy,runtime:t})}}function b(e,r={}){let t=r.runtime??w,n,o;try{n=t.statFile(e),o=t.readFile(e)}catch(a){return a.code==="ENOENT"?{state:"missing"}:{state:"malformed"}}let i;try{i=JSON.parse(o)}catch{return{state:"malformed",raw:o,identity:n}}let s=Fe(i);if(s)return{state:"valid",raw:o,identity:n,record:s,owner:ge(s),parsed:i};let c=r.parseLegacy?.(i)??null;return c?{state:"legacy",raw:o,identity:n,owner:c,parsed:i}:{state:"malformed",raw:o,identity:n,parsed:i}}function Fe(e){if(!e||typeof e!="object"||Array.isArray(e))return null;let r=e;if(r.protocol!==R||r.version!==T||typeof r.kind!="string"||r.kind.trim()===""||typeof r.pid!="number"||!Number.isSafeInteger(r.pid)||r.pid<=0||typeof r.token!="string"||r.token.trim()===""||typeof r.startedAt!="string"||!Number.isFinite(Date.parse(r.startedAt))||r.detail!==void 0&&(typeof r.detail!="object"||r.detail===null||Array.isArray(r.detail)))return null;let t=r.processIdentity===void 0?null:S(r.processIdentity);return r.processIdentity!==void 0&&(!t||t.pid!==r.pid)?null:{protocol:R,version:T,kind:r.kind,pid:r.pid,token:r.token,...t?{processIdentity:t}:{},startedAt:r.startedAt,...r.detail?{detail:r.detail}:{}}}function ke(e,r,t={}){let n=t.runtime??w;if(!E(r,n))return!1;let o=we(`${e}.reclaim`,n);if(!o)return!1;try{let i=b(e,{parseLegacy:t.parseLegacy,runtime:n});return!W(r,i)||!E(i,n)?!1:O(e,n)}finally{o.release()}}function B(e,r,t){let n=r.pid??process.pid,o=t.randomToken(),i=r.processIdentity===void 0?t.readProcessIdentity(n):r.processIdentity,s={protocol:R,version:T,kind:r.kind,pid:n,token:o,...i?{processIdentity:i}:{},startedAt:new Date(t.wallNow()).toISOString(),...r.detail?{detail:r.detail}:{}},c=`${e}.${o}.candidate`,a=t.openFile(c,"wx",384),l;try{P(a,Buffer.from(`${JSON.stringify(s)}
2
+ `),t,"process lock"),t.syncFile(a)}catch(u){l=u}try{t.closeFile(a)}catch(u){l??=u}if(l!==void 0)throw I(c,t),l;try{t.linkFile(c,e)}catch(u){throw I(c,t),u}I(c,t);try{J(L(e),t)}catch(u){throw U(e,s,t),u}let d=!1;return{path:e,record:s,release:()=>d?!1:(d=!0,U(e,s,t))}}function U(e,r,t=w){let n=b(e,{runtime:t});return n.state!=="valid"||!n.record||n.record.pid!==r.pid||n.record.token!==r.token||r.processIdentity&&(!n.record.processIdentity||!m(r.processIdentity,n.record.processIdentity))?!1:O(e,t)}function we(e,r){for(let t=0;t<2;t+=1)try{return B(e,{kind:"reclaim-guard",runtime:r},r)}catch(n){if(n.code!=="EEXIST")return null;let o=b(e,{runtime:r});if(t>0||!E(o,r))return null;let i=b(e,{runtime:r});if(!W(o,i)||!O(e,r))return null}return null}function E(e,r){if(e.state==="missing")return!1;if(e.owner){if(!r.isProcessAlive(e.owner.pid))return!0;if(!e.owner.processIdentity)return!1;let t=r.readProcessIdentity(e.owner.pid);return t!==null&&!m(e.owner.processIdentity,t)}return!1}function W(e,r){return e.state===r.state&&e.raw===r.raw&&e.identity!==void 0&&r.identity!==void 0&&e.identity.dev===r.identity.dev&&e.identity.ino===r.identity.ino&&e.identity.size===r.identity.size&&e.identity.mtimeMs===r.identity.mtimeMs}function ge(e){return{pid:e.pid,...e.processIdentity?{processIdentity:e.processIdentity}:{}}}function J(e,r){let t;try{t=r.openFile(e,"r")}catch(n){if(g(n,process.platform))return;throw n}try{r.syncFile(t)}catch(n){if(!g(n,process.platform))throw n}finally{r.closeFile(t)}}function O(e,r){try{return r.removeFile(e),J(L(e),r),!0}catch{return!1}}function I(e,r){try{r.removeFile(e)}catch{}}var Se=Object.freeze(["EPERM","EACCES","EBUSY"]),Ie=Object.freeze([10,20,40,80,160,320,640,1e3,1e3,1e3]);function Re(e){Atomics.wait(new Int32Array(new SharedArrayBuffer(4)),0,0,e)}var v=Object.freeze({platform:process.platform,sleep:Re});function Te(e,r){if(r!=="win32")return!1;let t=e?.code;return typeof t=="string"&&Se.includes(t)}function q(e,r={}){let t=r.runtime??v,n=r.delaysMs??Ie;for(let o of n)try{return e()}catch(i){if(!Te(i,t.platform))throw i;t.sleep(o)}return e()}import{chmodSync as Ee,constants as Le,copyFileSync as Oe}from"fs";import{dirname as ve}from"path";var $=Object.freeze({...N,copyFile:(e,r)=>Oe(e,r,Le.COPYFILE_FICLONE),chmodFile:(e,r)=>Ee(e,r)});function De(e,r,t={}){let n=t.runtime??$,o=ve(r),i=y(o,n);if(n.copyFile(e,r),n.platform==="win32")xe(r,t.mode,n);else{t.mode!==void 0&&n.chmodFile(r,t.mode);let s=n.openFile(r,"r");try{n.syncFile(s)}finally{n.closeFile(s)}}return p(i,f(o,n))}function xe(e,r,t){let n=!1,o;try{o=t.openFile(e,"r+")}catch(i){let s=i.code;if(s!=="EACCES"&&s!=="EPERM")throw i;t.chmodFile(e,384),n=!0,o=t.openFile(e,"r+")}try{t.syncFile(o)}finally{t.closeFile(o)}r!==void 0?t.chmodFile(e,r):n&&t.chmodFile(e,292)}import{randomUUID as he}from"crypto";import{closeSync as Ne,existsSync as Ae,fsyncSync as _e,linkSync as Me,mkdirSync as Ce,openSync as Ue,renameSync as Be,unlinkSync as We,writeSync as Je}from"fs";import{dirname as G}from"path";var j=Object.freeze({platform:process.platform,randomToken:()=>he(),pathExists:e=>Ae(e),makeDirectory:e=>Ce(e,{recursive:!0}),openFile:(e,r,t)=>Ue(e,r,t),writeFile:(e,r,t,n)=>Je(e,r,t,n),syncFile:e=>_e(e),closeFile:e=>Ne(e),renameFile:(e,r)=>Be(e,r),linkFile:(e,r)=>Me(e,r),removeFile:e=>We(e)});function wr(e,r,t={}){let n=t.durability??"visibility",o=t.runtime??j,i=G(e),s=n==="durable"?y(i,o):(o.makeDirectory(i),"not-requested"),c=`${e}.tmp-${o.randomToken()}`,a=typeof r=="string"?Buffer.from(r):r,l,d=!1;try{l=o.openFile(c,"wx",t.mode??384),d=!0,P(l,a,o,"atomic file"),n==="durable"&&o.syncFile(l),o.closeFile(l),l=void 0,q(()=>o.renameFile(c,e),{runtime:{platform:o.platform,sleep:o.sleep??v.sleep}}),d=!1;let u=n==="durable"?p(s,f(i,o)):"not-requested";return Y(n,u)}finally{if(l!==void 0)try{o.closeFile(l)}catch{}if(d)try{o.removeFile(c)}catch{}}}function gr(e,r,t={}){let n=t.durability??"visibility",o=t.runtime??j;if(!o.linkFile)throw new Error("Exclusive atomic file publication requires hard-link support.");let i=G(e),s=n==="durable"?y(i,o):(o.makeDirectory(i),"not-requested"),c=`${e}.tmp-${o.randomToken()}`,a=typeof r=="string"?Buffer.from(r):r,l,d=!1;try{l=o.openFile(c,"wx",t.mode??384),d=!0,P(l,a,o,"exclusive atomic file"),n==="durable"&&o.syncFile(l),o.closeFile(l),l=void 0,o.linkFile(c,e);let u=n==="durable"?f(i,o):"not-requested";o.removeFile(c),d=!1;let re=n==="durable"?p(s,u,f(i,o)):"not-requested";return Y(n,re)}finally{if(l!==void 0)try{o.closeFile(l)}catch{}if(d)try{o.removeFile(c)}catch{}}}function Y(e,r){return{requestedDurability:e,achievedDurability:e==="visibility"?"visibility":r==="synced"?"directory-durable":"file-flushed",directorySync:r}}import{execFileSync as H}from"child_process";import{platform as qe}from"os";var X=1e3,V=2*1024*1024,$e=25;function Or(e,r,t=ee){let n=t.readIdentity(e),o=new Map;return n&&o.set(e,n),{rootPid:e,rootIdentity:n,ownsProcessGroup:r,knownMembers:o}}async function vr(e,r,t=ee){if(!e.rootIdentity){let a=await F(e,r.gracefulMs+r.forceMs,t);return{reaped:a,reason:a?"terminated":"identity-unavailable",detail:a?void 0:`Could not establish the birth identity of process ${e.rootPid}.`}}let n=Q(e,t);if(n==="mismatch")return{reaped:!1,reason:"identity-mismatch",detail:`Process ${e.rootPid} no longer has the identity owned by this runner.`};if(n==="exited"&&!Z(e,t))return{reaped:!0,reason:"terminated"};if(t.platform==="win32"){try{t.terminateWindowsTree(e.rootPid)}catch(l){let d=await F(e,r.forceMs,t);return{reaped:d,reason:d?"terminated":"signal-failed",detail:d?void 0:D(l)}}let a=await F(e,r.forceMs,t);return{reaped:a,reason:a?"terminated":"deadline"}}let o=z(e,"SIGTERM",t);if(await F(e,r.gracefulMs,t))return{reaped:!0,reason:"terminated"};let s=z(e,"SIGKILL",t);return await F(e,r.forceMs,t)?{reaped:!0,reason:"terminated"}:s?{reaped:!1,reason:s.reason,detail:s.detail}:o?{reaped:!1,reason:o.reason,detail:o.detail}:{reaped:!1,reason:"deadline",detail:`Process tree ${e.rootPid} did not exit before its termination deadline.`}}function Q(e,r){let t=r.readIdentity(e.rootPid);if(!t)return"exited";if(!e.rootIdentity||!m(e.rootIdentity,t))return"mismatch";e.knownMembers.set(e.rootPid,t);for(let n of r.listDescendantPids(e.rootPid)){let o=r.readIdentity(n);o&&e.knownMembers.set(n,o)}return"owned"}function z(e,r,t){let n=Q(e,t);if(n==="mismatch")return{reason:"identity-mismatch",detail:`Process ${e.rootPid} changed identity before ${r}.`};if(n==="owned"&&e.ownsProcessGroup)try{return t.signal(-e.rootPid,r),null}catch(i){if(!K(i))return{reason:"signal-failed",detail:D(i)}}let o=null;for(let i of e.knownMembers.values()){let s=t.readIdentity(i.pid);if(!(!s||!m(i,s)))try{t.signal(i.pid,r)}catch(c){!K(c)&&o===null&&(o=D(c))}}return o===null?null:{reason:"signal-failed",detail:o}}async function F(e,r,t){let n=t.now()+r;for(;Z(e,t);){if(t.now()>=n)return!1;await t.sleep(Math.min($e,Math.max(1,n-t.now())))}return!0}function Z(e,r){if(!e.rootIdentity&&r.isProcessAlive(e.rootPid))return!0;for(let t of e.knownMembers.values()){let n=r.readIdentity(t.pid);if(n&&m(t,n))return!0}return!!(e.ownsProcessGroup&&r.isProcessGroupAlive(e.rootPid))}function Ge(e){let r=H("ps",["-axo","pid=,ppid="],{encoding:"utf8",timeout:X,maxBuffer:V,env:{...process.env,LC_ALL:"C",LANG:"C"},stdio:["ignore","pipe","ignore"],windowsHide:!0}),t=new Map;for(let s of r.split(/\r?\n/)){let c=/^\s*(\d+)\s+(\d+)\s*$/.exec(s);if(!c)continue;let a=Number(c[1]),l=Number(c[2]),d=t.get(l)??[];d.push(a),t.set(l,d)}let n=[],o=[...t.get(e)??[]],i=new Set;for(;o.length>0;){let s=o.pop();i.has(s)||(i.add(s),n.push(s),o.push(...t.get(s)??[]))}return n}function K(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="ESRCH"}function D(e){return e instanceof Error?e.message:String(e)}var ee={platform:qe(),now:Date.now,readIdentity:k,isProcessAlive(e){try{return process.kill(e,0),!0}catch(r){return typeof r=="object"&&r!==null&&"code"in r&&r.code==="EPERM"}},isProcessGroupAlive(e){if(this.platform==="win32")return!1;try{return process.kill(-e,0),!0}catch(r){return typeof r=="object"&&r!==null&&"code"in r&&r.code==="EPERM"}},listDescendantPids(e){if(this.platform==="win32")return[];try{return Ge(e)}catch{return[]}},signal(e,r){process.kill(e,r)},terminateWindowsTree(e){H("taskkill.exe",["/PID",String(e),"/T","/F"],{timeout:X,maxBuffer:V,stdio:"ignore",windowsHide:!0})},async sleep(e){await new Promise(r=>setTimeout(r,e))}};export{S as a,m as b,k as c,C as d,Qe as e,cr as f,b as g,ke as h,q as i,De as j,wr as k,gr as l,Or as m,vr as n};
3
+ //# sourceMappingURL=chunk-6JMAVFL4.js.map
@@ -0,0 +1,2 @@
1
+ import{k as o}from"./chunk-UQYQBLJX.js";function I(){return performance.now()}function T(){return Date.now()}var f=new Set(["aix","android","darwin","freebsd","haiku","linux","openbsd","sunos","win32","cygwin","netbsd"]);function l(r){if(!r||typeof r!="object"||Array.isArray(r))return null;let t=r;return t.version!==1||typeof t.pid!="number"||!Number.isSafeInteger(t.pid)||t.pid<=0||typeof t.platform!="string"||!f.has(t.platform)||typeof t.startToken!="string"||t.startToken.trim()===""?null:{version:1,pid:t.pid,platform:t.platform,startToken:t.startToken}}function c(r,t){return r.version===t.version&&r.pid===t.pid&&r.platform===t.platform&&r.startToken===t.startToken}import{execFileSync as m}from"child_process";import{platform as d}from"os";var s=new WeakMap,u=1e3,i=16*1024;function k(r,t=P){if(!Number.isSafeInteger(r)||r<=0)return null;if(r===process.pid){let n=s.get(t);if(n)return n}try{let n=p(r,t);if(!n)return null;let e={version:1,pid:r,platform:t.platform,startToken:n};return r===process.pid&&s.set(t,e),e}catch{return null}}function p(r,t){if(t.platform==="linux"||t.platform==="android")return y(t.readFile(`/proc/${r}/stat`));if(t.platform==="win32"){let n=`([DateTimeOffset](Get-Process -Id ${r} -ErrorAction Stop).StartTime).ToUnixTimeMilliseconds()`;return a(t.run("powershell.exe",["-NoProfile","-NonInteractive","-Command",n]))}return t.platform==="darwin"||t.platform==="freebsd"||t.platform==="openbsd"||t.platform==="netbsd"?a(t.run("ps",["-p",String(r),"-o","lstart="])):null}function y(r){let t=r.lastIndexOf(")");if(t<0)return null;let e=r.slice(t+1).trim().split(/\s+/)[19];return e&&/^\d+$/.test(e)?e:null}function a(r){let t=r.trim();return t===""?null:t}var P={platform:d(),readFile(r){return o(r,{maxBytes:i,inputKind:"process identity pseudo-file"})},run(r,t){return m(r,[...t],{encoding:"utf8",timeout:u,maxBuffer:i,env:{...process.env,LC_ALL:"C",LANG:"C"},stdio:["ignore","pipe","ignore"],windowsHide:!0})}};export{I as a,T as b,l as c,c as d,k as e};
2
+ //# sourceMappingURL=chunk-6O3KXIDL.js.map
@@ -1,2 +1,2 @@
1
- import{a as O,b as T,c as y,f as I,g as G,i as $,l as Y,m as q,n as K}from"./chunk-6CS3UQTN.js";import{S as _}from"./chunk-UCD3H3UZ.js";import{a as N}from"./chunk-NNOKTMZT.js";import{e as U,i as P,j as h,l as z,n as E,u as g}from"./chunk-BMYOV5GP.js";import{a as J,d as f}from"./chunk-3LCDIREB.js";var ue={references:$,referenceMap:Y,referenceEvidenceMap:q,callerMap:(e,i)=>I(e).callerMap(i),calleeMap:X,calleeEvidenceMap:Q};function X(e,i,r={}){return Q(e,i,r).rows}function Q(e,i,r={}){let a=J(),o=new Map,l=G(e,i),n=[],c=[],m=0,p=0,d=0,w=0,R=0,H=0,k=0,S=new Set,v=new Set;for(let{definition:t,callees:s}of l.hits)R+=1,o.set(t.symbolId,s),s.length>0&&(H+=1,k+=s.length);let u=Z(e,l.hits);if(u.entries.length>0&&f("semantic.callees.prefetch-cache-write",()=>E(e,u.entries),()=>({entries:u.entries.length,sourceMissing:u.sourceMissing,skippedUnsupportedLanguage:u.skippedUnsupportedLanguage})),f("semantic.callees.cache-scan",()=>{for(let[t,s]of O(l.misses)){if(!y(t)){a&&(m+=s.length);continue}let j=g(e,t);if(!j){a&&(p+=s.length),c.push(...s);continue}let A=h(e,t,j),D=V(e,t);if(!D){c.push(...s);continue}let W=z(e,t,A,D);for(let M of s){let L=W.get(M.symbol)??null;if(L!==null){let B=te(L);if(B){a&&(d+=1),o.set(M.symbolId,B);continue}a&&(w+=1)}n.push({def:M,contentHash:A,depsDigest:D})}}},()=>({definitions:i.length,skippedUnsupportedLanguage:m,sourceMissing:p,cacheHits:d,parseFailures:w,misses:n.length,unkeyed:c.length,inMemoryHits:R,inMemoryRows:H,inMemoryCalleeCount:k,resultRows:o.size})),n.length===0&&c.length===0)return{rows:o,incompleteSymbolIds:S,unavailableSymbolIds:v};let x=[...c,...n.map(t=>t.def)],F=0,C=f("semantic.callees.compute-misses",()=>{let t=K(e,x,r.resolveProvider);for(let s of t.incompleteSymbolIds)S.add(s);for(let s of t.unavailableSymbolIds)v.add(s);return F=t.rows.size,t.rows},()=>({definitions:x.length,misses:n.length,unkeyed:c.length,rows:F}));for(let[t,s]of C)o.set(t,s);let b=n.filter(t=>C.has(t.def.symbolId)&&I(e).capability("semantic-callees",t.def.relativePath).available).map(t=>({relativePath:t.def.relativePath,symbol:t.def.symbol,contentHash:t.contentHash,depsDigest:t.depsDigest,payload:JSON.stringify(C.get(t.def.symbolId)??[])}));return b.length>0?f("semantic.callees.cache-write",()=>E(e,b),()=>({entries:b.length})):f("semantic.callees.cache-write-skip",()=>{},()=>({reason:"provider-unavailable",misses:n.length})),{rows:o,incompleteSymbolIds:S,unavailableSymbolIds:v}}function Z(e,i){let r=[],a=new Map,o=0,l=0;for(let{definition:n,callees:c}of i){if(!y(n.relativePath)){l+=1;continue}if(!a.has(n.relativePath)){let p=g(e,n.relativePath),d=p?V(e,n.relativePath):null;a.set(n.relativePath,p&&d?{contentHash:h(e,n.relativePath,p),depsDigest:d}:null)}let m=a.get(n.relativePath);if(!m){o+=1;continue}r.push({relativePath:n.relativePath,symbol:n.symbol,contentHash:m.contentHash,depsDigest:m.depsDigest,payload:JSON.stringify(c)})}return{entries:r,sourceMissing:o,skippedUnsupportedLanguage:l}}var ee="typescript-callees-v3-incomplete-scan";function V(e,i){let r=y(i);if(r==="typescript")return _(e,i,ee)?.key??null;let a=ie(e,i);return r==="rust"?P(JSON.stringify({kind:"semantic-callees",language:r,engine:T(e.config.projectRoot),positionMapping:"nearby-leaf-v2-callsite-line",depsDigest:a})):a}function te(e){try{return JSON.parse(e)}catch{return null}}var ne=U("semantic-deps-digest",{clearGroups:["whole-project","source-file"]});function ie(e,i){return ne.get(e,i,()=>{let a=[...N(e).get(i)??[]].sort().map(o=>`${o}:${h(e,o,g(e,o))}`);return P(a.join("|"))})}export{ue as a};
2
- //# sourceMappingURL=chunk-JOIRNPPY.js.map
1
+ import{a as O,b as T,c as y,f as I,g as G,i as $,l as Y,m as q,n as K}from"./chunk-J3GLP7Q5.js";import{Y as _}from"./chunk-SMDIEDM4.js";import{a as N}from"./chunk-GV2CEZCW.js";import{g as U,k as P,l as h,n as z,p as E,w as g}from"./chunk-7GAK2F3H.js";import{a as J,d as f}from"./chunk-3LCDIREB.js";var ue={references:$,referenceMap:Y,referenceEvidenceMap:q,callerMap:(e,i)=>I(e).callerMap(i),calleeMap:X,calleeEvidenceMap:Q};function X(e,i,r={}){return Q(e,i,r).rows}function Q(e,i,r={}){let a=J(),o=new Map,l=G(e,i),n=[],c=[],m=0,p=0,d=0,w=0,R=0,H=0,k=0,S=new Set,v=new Set;for(let{definition:t,callees:s}of l.hits)R+=1,o.set(t.symbolId,s),s.length>0&&(H+=1,k+=s.length);let u=Z(e,l.hits);if(u.entries.length>0&&f("semantic.callees.prefetch-cache-write",()=>E(e,u.entries),()=>({entries:u.entries.length,sourceMissing:u.sourceMissing,skippedUnsupportedLanguage:u.skippedUnsupportedLanguage})),f("semantic.callees.cache-scan",()=>{for(let[t,s]of O(l.misses)){if(!y(t)){a&&(m+=s.length);continue}let j=g(e,t);if(!j){a&&(p+=s.length),c.push(...s);continue}let A=h(e,t,j),D=V(e,t);if(!D){c.push(...s);continue}let W=z(e,t,A,D);for(let M of s){let L=W.get(M.symbol)??null;if(L!==null){let B=te(L);if(B){a&&(d+=1),o.set(M.symbolId,B);continue}a&&(w+=1)}n.push({def:M,contentHash:A,depsDigest:D})}}},()=>({definitions:i.length,skippedUnsupportedLanguage:m,sourceMissing:p,cacheHits:d,parseFailures:w,misses:n.length,unkeyed:c.length,inMemoryHits:R,inMemoryRows:H,inMemoryCalleeCount:k,resultRows:o.size})),n.length===0&&c.length===0)return{rows:o,incompleteSymbolIds:S,unavailableSymbolIds:v};let x=[...c,...n.map(t=>t.def)],F=0,C=f("semantic.callees.compute-misses",()=>{let t=K(e,x,r.resolveProvider);for(let s of t.incompleteSymbolIds)S.add(s);for(let s of t.unavailableSymbolIds)v.add(s);return F=t.rows.size,t.rows},()=>({definitions:x.length,misses:n.length,unkeyed:c.length,rows:F}));for(let[t,s]of C)o.set(t,s);let b=n.filter(t=>C.has(t.def.symbolId)&&I(e).capability("semantic-callees",t.def.relativePath).available).map(t=>({relativePath:t.def.relativePath,symbol:t.def.symbol,contentHash:t.contentHash,depsDigest:t.depsDigest,payload:JSON.stringify(C.get(t.def.symbolId)??[])}));return b.length>0?f("semantic.callees.cache-write",()=>E(e,b),()=>({entries:b.length})):f("semantic.callees.cache-write-skip",()=>{},()=>({reason:"provider-unavailable",misses:n.length})),{rows:o,incompleteSymbolIds:S,unavailableSymbolIds:v}}function Z(e,i){let r=[],a=new Map,o=0,l=0;for(let{definition:n,callees:c}of i){if(!y(n.relativePath)){l+=1;continue}if(!a.has(n.relativePath)){let p=g(e,n.relativePath),d=p?V(e,n.relativePath):null;a.set(n.relativePath,p&&d?{contentHash:h(e,n.relativePath,p),depsDigest:d}:null)}let m=a.get(n.relativePath);if(!m){o+=1;continue}r.push({relativePath:n.relativePath,symbol:n.symbol,contentHash:m.contentHash,depsDigest:m.depsDigest,payload:JSON.stringify(c)})}return{entries:r,sourceMissing:o,skippedUnsupportedLanguage:l}}var ee="typescript-callees-v3-incomplete-scan";function V(e,i){let r=y(i);if(r==="typescript")return _(e,i,ee)?.key??null;let a=ie(e,i);return r==="rust"?P(JSON.stringify({kind:"semantic-callees",language:r,engine:T(e.config.projectRoot),positionMapping:"nearby-leaf-v2-callsite-line",depsDigest:a})):a}function te(e){try{return JSON.parse(e)}catch{return null}}var ne=U("semantic-deps-digest",{clearGroups:["whole-project","source-file"]});function ie(e,i){return ne.get(e,i,()=>{let a=[...N(e).get(i)??[]].sort().map(o=>`${o}:${h(e,o,g(e,o))}`);return P(a.join("|"))})}export{ue as a};
2
+ //# sourceMappingURL=chunk-6VREELBC.js.map
@@ -0,0 +1,82 @@
1
+ import{q as on}from"./chunk-EQNMD62X.js";import{a as sn,b as ln}from"./chunk-P4NVCOM7.js";import{B as W,C as X,F as ie,H as N,O as ae,P as Ae,e as U,o as ne,p as A,s as Te,u as ke,x as $e,y as rn}from"./chunk-C6WKPKCF.js";import{c as z}from"./chunk-XQAVQVIL.js";import{b as fe,c as re,d as M,f as st,g as lt,h as an}from"./chunk-DRENNWRG.js";import{G as D,J as nn,a as pe,c as Zt,i as Xt,j as Qt,k as _e,l as L,q as Yt,r as en,y as Be,z as tn}from"./chunk-5FWR5HLG.js";import{a as Gt,d as Ht}from"./chunk-T75DS2E6.js";import{a as $,b as Pe,e as Le,f as Jt}from"./chunk-YT4DVWUV.js";import{a as zt}from"./chunk-RCIGX23V.js";import{b as Vt,e as S,h as qt}from"./chunk-D7DOB27N.js";import{i as Z}from"./chunk-R2NOK63J.js";import{c as Kt}from"./chunk-6O3KXIDL.js";import{A as Wt,B as te,h as Mt,n as Ot,o as jt,z as Ut}from"./chunk-UQYQBLJX.js";import{join as De}from"path";var Zo=6,Xo=5e3,Sr="watch.lock",br="watch-state.json",vr="watch-activity.json",xr="watch-refresh-requests";function Qo(e){return{lockPath:De(e,Sr),statePath:De(e,br),activityPath:De(e,vr),refreshRequestsPath:De(e,xr)}}function Jo(e){try{return Rr(JSON.parse(Mt(e,"watch service state")))}catch{return null}}function Rr(e){if(!e||typeof e!="object")return null;let t=e;if(t.version!==1||typeof t.protocolVersion!="number"||typeof t.pid!="number"||!Number.isInteger(t.pid)||t.pid<=0||typeof t.projectRoot!="string"||t.worktreeId!==void 0&&(typeof t.worktreeId!="string"||t.worktreeId.length===0)||typeof t.cliVersion!="string"||!P(t.startedAt)||!P(t.heartbeatAt)||!P(t.lastActivityAt)||!Ir(t.watcher)||t.idleDeadlineAt!==void 0&&!P(t.idleDeadlineAt))return null;if(t.processIdentity!==void 0){let n=Kt(t.processIdentity);if(!n||n.pid!==t.pid)return null;t.processIdentity=n}return t.indexGeneration!==void 0&&!/^[a-f0-9]{64}$/.test(t.indexGeneration)||t.lastError!==void 0&&!wr(t.lastError)||t.lastRefresh!==void 0&&!Cr(t.lastRefresh)||t.reindexActivity!==void 0&&!Nr(t.reindexActivity)||t.refreshRequests!==void 0&&!Er(t.refreshRequests)||t.typescriptSemantic!==void 0&&!Pr(t.typescriptSemantic)||t.typescriptIndex!==void 0&&!_r(t.typescriptIndex)||t.queryLane!==void 0&&!Lr(t.queryLane)?null:t}function P(e){return Vt(e)}function Ir(e){if(!e||typeof e!="object"||!("state"in e))return!1;let t=e;switch(t.state){case"idle":return!0;case"waiting":return B(t.changedFiles)&&B(t.reindexAt);case"indexing":return B(t.startedAt);case"cooldown":return B(t.until)&&typeof t.dirty=="boolean";case"budget-paused":return B(t.until)&&typeof t.dirty=="boolean"&&typeof t.reason=="string"&&S(t.rebuilt)&&S(t.estimatedWriteBytes);case"draining":return B(t.startedAt)&&typeof t.reason=="string";default:return!1}}function wr(e){if(!e||typeof e!="object")return!1;let t=e;return P(t.at)&&typeof t.message=="string"}function Cr(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.trigger?.kind=="string"&&typeof t.result=="string"&&P(t.startedAt)&&P(t.completedAt)&&B(t.durationMs)}function Nr(e){if(!e||typeof e!="object")return!1;let t=e;return t.confidence!==void 0&&t.confidence!=="complete"&&t.confidence!=="partial"&&t.confidence!=="unavailable"||t.recordsRead!==void 0&&!S(t.recordsRead)||t.invalidRecords!==void 0&&!S(t.invalidRecords)||t.skippedRecords!==void 0&&!S(t.skippedRecords)||t.readErrors!==void 0&&!S(t.readErrors)||t.ignoredPartialTailBytes!==void 0&&!S(t.ignoredPartialTailBytes)||!P(t.windowStartedAt)||!P(t.windowEndedAt)||!S(t.runs)||!S(t.rebuilt)||!S(t.reused)||!S(t.failed)||!S(t.suppressed)||!B(t.estimatedLogicalOutputBytes)||t.estimatedWriteBytes!==void 0&&!S(t.estimatedWriteBytes)||t.reflinkedBytes!==void 0&&!S(t.reflinkedBytes)||t.fallbackCopiedBytes!==void 0&&!S(t.fallbackCopiedBytes)||t.oldestRebuildAt!==void 0&&!P(t.oldestRebuildAt)||t.oldestWriteAt!==void 0&&!P(t.oldestWriteAt)||t.languageAttribution!==void 0&&t.languageAttribution!=="complete"&&t.languageAttribution!=="partial"&&t.languageAttribution!=="unavailable"||t.attributedRuns!==void 0&&!S(t.attributedRuns)||t.unattributedRuns!==void 0&&!S(t.unattributedRuns)||t.invalidLanguageDetails!==void 0&&!S(t.invalidLanguageDetails)||t.estimatedLogicalOutputBytes<0||!t.byTrigger||typeof t.byTrigger!="object"||Array.isArray(t.byTrigger)||t.byLanguage!==void 0&&!Fr(t.byLanguage)?!1:Object.values(t.byTrigger).every(n=>n===void 0||S(n))}function Fr(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;for(let[t,n]of Object.entries(e)){if(!Gt.includes(t)||!n||typeof n!="object")return!1;let r=n;if(!S(r.runs)||!S(r.rebuilt)||!S(r.reused)||!S(r.producedOutputBytes)||!qt(r.durationMs)||r.rebuilt+r.reused!==r.runs)return!1}return!0}function Er(e){if(!e||typeof e!="object")return!1;let t=e;return S(t.pending)&&S(t.claimed)&&S(t.completed)&&S(t.expired)&&S(t.invalid)&&(t.oldestPendingAt===void 0||P(t.oldestPendingAt))}function Pr(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.protocolVersion=="number"&&(t.state==="idle"||t.state==="ready"||t.state==="unavailable"||t.state==="error")&&B(t.requests)&&B(t.sessionsCreated)&&B(t.sessionsReused)&&B(t.sessionsRefreshed)&&B(t.sessionsReplaced)&&B(t.projectsCreated)&&(t.lastRequestAt===void 0||P(t.lastRequestAt))&&(t.lastError===void 0||typeof t.lastError=="string")&&(t.busyUntil===void 0||P(t.busyUntil))&&(t.mailbox===void 0||cn(t.mailbox))}function _r(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.protocolVersion=="number"&&(t.state==="idle"||t.state==="ready"||t.state==="unavailable"||t.state==="error")&&S(t.requests)&&S(t.sessionsCreated)&&S(t.sessionsReplaced)&&S(t.initializations)&&S(t.programUpdates)&&S(t.documentsEmitted)&&S(t.documentsRemoved)&&(t.lastRequestAt===void 0||P(t.lastRequestAt))&&(t.lastDurationMs===void 0||B(t.lastDurationMs)&&t.lastDurationMs>=0)&&(t.lastError===void 0||typeof t.lastError=="string")&&(t.busyUntil===void 0||P(t.busyUntil))&&(t.mailbox===void 0||cn(t.mailbox))}function Lr(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.protocolVersion=="number"&&typeof t.socketPath=="string"&&t.socketPath.length>0&&S(t.requests)&&(t.lastRequestAt===void 0||P(t.lastRequestAt))&&(t.lastError===void 0||typeof t.lastError=="string")}function cn(e){if(!e||typeof e!="object")return!1;let t=e;return S(t.pending)&&S(t.inflight)&&S(t.responses)&&S(t.deadLetters)&&S(t.invalid)&&S(t.totalItems)&&B(t.totalBytes)&&t.totalBytes>=0&&t.totalItems===t.pending+t.inflight+t.responses+t.deadLetters&&(t.oldestPendingAt===void 0||P(t.oldestPendingAt))}function B(e){return typeof e=="number"&&Number.isFinite(e)}var un=Qt({kind:"file-dependency-graph",invalidation:_e("file-dependency-graph"),serialize:e=>JSON.stringify(e),deserialize:Mr}),Br=$("file-dep-graph",{clearGroups:["whole-project"]});function Me(e,t,n={}){let r=n.scipEdges??"all-references",i=n.sourceEdges??"imports-only",a=$r(t,r,i);return Br.get(e,a,()=>{let o=new Set(Le(e,{includeIgnored:!1})),s=Zt(e),l=0,c=0,u=null,d=!1,p=0,f=0;return Z("file-dep-graph.product",()=>{if(s){let h=un.read(e,a,s);if(h){d=!0;let v=Dr(h);return l=h.sourceFileCount,c=h.sourceEdgeCount,p=h.scipEdgeCount,f=v.size,u=h.sourceDependencyFingerprint,v}}let m=Z("file-dep-graph.source-imports",()=>{let h=Tr(e,o,t,i);return l=h.files.length,c=h.edges.length,u=h.fingerprint,h},()=>({scope:t??null,sourceEdges:i,files:l,edges:c})),g=new Map,b=(h,v)=>qr(e,g,o,h,v);Z("file-dep-graph.scip-edges",()=>{for(let h of Vr(e,t,r))p+=1,b(h.from_file,h.to_file)},()=>({scope:t??null,edges:p}));for(let h of m.edges)b(h.fromFile,h.toFile);return f=g.size,s&&un.write(e,a,s,{sourceDependencyFingerprint:m.fingerprint,sourceFileCount:m.files.length,sourceEdgeCount:m.edges.length,scipEdgeCount:p,graph:Ar(g)}),g},()=>({scope:t??null,available:s!==null,hit:d,files:l,sourceEdges:c,sourceEdgeMode:i,scipEdges:p,graphFiles:f,sourceDependencyFingerprint:u}))})}function Tr(e,t,n,r){let i=[],a=[];for(let o of t)if(!(n&&!o.includes(n))){i.push(o);for(let s of A(e,o))s.sourcePath&&a.push({fromFile:o,toFile:s.sourcePath});if(r==="imports-and-reexports")for(let s of ne(e,o))s.sourcePath&&a.push({fromFile:o,toFile:s.sourcePath})}return{files:i,edges:a,fingerprint:kr(i,a)}}function kr(e,t){let n=t.map(r=>`${r.fromFile}\0${r.toFile}`).sort();return pe(JSON.stringify({files:e,edges:n}))}function $r(e,t,n){return`edge-mode-v3:${t}:${n}:${e??"<all>"}`}function Ar(e){return[...e].map(([t,n])=>[t,[...n]])}function Dr(e){return new Map(e.graph.map(([t,n])=>[t,new Set(n)]))}function Mr(e){let t=JSON.parse(e);return Or(t)?t:null}function Or(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.sourceDependencyFingerprint=="string"&&typeof t.sourceFileCount=="number"&&typeof t.sourceEdgeCount=="number"&&typeof t.scipEdgeCount=="number"&&Array.isArray(t.graph)&&t.graph.every(jr)}function jr(e){return Array.isArray(e)&&e.length===2&&typeof e[0]=="string"&&Array.isArray(e[1])&&e[1].every(t=>typeof t=="string")}function Vr(e,t,n){let r=t?"AND d1.relative_path LIKE ?":"",i=t?[`%${t}%`]:[],a=n==="imports-only"?"AND m.role = 2":"AND m.role != 1";return e.all(`SELECT DISTINCT
2
+ d1.relative_path AS from_file,
3
+ d2.relative_path AS to_file
4
+ FROM mentions m
5
+ JOIN chunks c ON m.chunk_id = c.id
6
+ JOIN documents d1 ON c.document_id = d1.id
7
+ JOIN global_symbols gs ON m.symbol_id = gs.id
8
+ JOIN (
9
+ SELECT m2.symbol_id, c2.document_id
10
+ FROM mentions m2
11
+ JOIN chunks c2 ON m2.chunk_id = c2.id
12
+ WHERE m2.role = 1
13
+ GROUP BY m2.symbol_id
14
+ ) sym_def ON sym_def.symbol_id = gs.id
15
+ JOIN documents d2 ON sym_def.document_id = d2.id
16
+ WHERE d1.id != d2.id
17
+ ${a}
18
+ ${e.pathExclusionsFor("d1","d2")}
19
+ ${r}`,...i)}function qr(e,t,n,r,i){if(r===i||e.isIgnored(r)||e.isIgnored(i)||!n.has(i))return;let a=t.get(r);a||(a=new Set,t.set(r,a)),a.add(i)}function je(e){let t=Oe(e.projectFiles),n=new Set(t),r=new Map(e.snapshot.files.map(d=>[d.path,d])),i=e.snapshot.files.filter(d=>{let p=Ot(d.path,["typescript"]);return p==="config"||p==="ambient"}).map(d=>d.path),a=Oe([...t,...i]),o=a.find(d=>!r.has(d)),s=new Set(e.snapshot.files.map(d=>d.path)).size!==e.snapshot.files.length,l=!o&&a.some(d=>dn(r.get(d))),c=pe(JSON.stringify({pnpmWorkspaces:e.snapshot.pnpmWorkspaces,typescriptProjectMode:e.snapshot.typescriptProjectMode,typescriptProjects:Oe(e.snapshot.typescriptProjects),membership:t})),u=new Map;return{identityFor(d,p){if(!n.has(d))return oe("target-outside-project");if(s)return oe("duplicate-input-path");if(o)return oe("missing-input-fingerprint");if(l)return oe("unreadable-input");let f=[],m,g;if(e.graph===null)f.push("dependency-graph-unavailable"),g="whole-project",m=a;else{let v=Hr(d,e.graph,u);if(v.find(x=>!r.has(x)))return oe("missing-input-fingerprint");if(m=Oe([...v,...i]),m.some(x=>dn(r.get(x))))return oe("unreadable-input");g="dependency-closure"}let b=m.map(v=>zr(r.get(v)));return{version:1,key:pe(JSON.stringify({version:1,engineIdentity:e.engineIdentity,schemaVersion:p,projectIdentity:c,inputs:b})),mode:g,inputFiles:m,reasons:f}}}}function Gr(e,t){let n=new Set,r=[e];for(let i=0;i<r.length;i+=1){let a=r[i];if(!(a===void 0||n.has(a))){n.add(a);for(let o of[...t.get(a)??[]].sort())n.has(o)||r.push(o)}}return[...n].sort()}function Hr(e,t,n){let r=n.get(e);if(r)return r;let i=Gr(e,t);return n.set(e,i),i}function zr(e){return{path:e.path,size:e.size,hash:e.hash}}function dn(e){return e.size<0||e.hash==="unreadable"}function oe(e){return{version:1,key:null,mode:"unkeyed",inputFiles:[],reasons:[e]}}function Oe(e){return[...new Set(e)].sort()}var Ur=Pe("typescript-semantic-identity-context",{clearGroups:["whole-project"]});function ct(e,t,n){let r=Ur.get(e,()=>Wr(e));if(!r)return null;let i=`${n}\0${t}`,a=r.identities.get(i);if(a)return a;let o=r.builder.identityFor(t,n);return r.identities.set(i,o),o}function me(e){return Le(e,{includeIgnored:!1}).filter(Te).sort()}function Wr(e){try{if(!e.generation.metadataRaw)return null;let t=Ht(e.generation.metadataRaw);if(t.kind!=="legacy"&&t.kind!=="supported"||!t.capabilities.usableForEvidenceCache)return null;let n=jt(t.metadata.fingerprint);return n?{builder:je({projectFiles:me(e),snapshot:n,graph:Me(e),engineIdentity:ke()}),identities:new Map}:null}catch{return null}}var ut="typescript-reference-fragment-v3-incomplete-scan",Ve=Xt({kind:"typescript-reference-fragments",invalidation:_e("typescript-reference-fragments"),serialize:e=>JSON.stringify(e),deserialize:Zr});function Fs(e,t,n,r=e){let i=me(e),a=je({projectFiles:i,snapshot:t,graph:Me(e),engineIdentity:ke()}),o=[...n].map(([s,l])=>({relativePath:s,contentHash:a.identityFor(s,ut).key,value:[...l]}));if(o.some(s=>s.contentHash===null))throw new Error("TypeScript reference fragment identity is unavailable for an affected document.");return Ve.writeBatch(r,o.map(s=>({...s,contentHash:s.contentHash}))),o.length}function Es(e,t,n,r){let i=t.filter(o=>Te(o.relativePath));if(i.length===0)return ye("no TypeScript definitions");let a=ye("shadow did not run");return Z("typescript.reference-fragments.shadow",()=>{try{let o=r(i[0].relativePath);if(!o.availability().available||!o.referenceFragmentsForFiles)return a=ye("TypeScript reference fragment provider is unavailable"),a;let s=me(e),l=new Set(s),c=o.referenceFragmentsForFiles(s),u=s.filter(m=>!c.has(m));if(u.length>0)return a=ye(`TypeScript reference lookup was incomplete for ${u.length} file(s)`),a;let d=$e(i,c),p=rn(i,Kr(n,l),d);if(!p.passed)return a={state:"failing",files:s.length,keyedFiles:0,writtenFiles:0,...p},a;let f=[];for(let m of s){let g=ct(e,m,ut);g?.key&&f.push({relativePath:m,contentHash:g.key,value:c.get(m)??[]})}return Ve.writeBatch(e,f),a={state:"passing",files:s.length,keyedFiles:f.length,writtenFiles:f.length,...p},a}catch(o){return a=ye(o instanceof Error?o.message:String(o)),a}},()=>({...a}))}function Kr(e,t){return new Map([...e].map(([n,r])=>[n,r.filter(i=>t.has(i.file))]))}function Ps(e,t,n){if(t.length===0)return{references:new Map,files:0,cacheHits:0,cacheMisses:0,computedFiles:0};let r="fallback",i=0,a=0,o=0,s=0;return Z("typescript.reference-fragments.materialize",()=>{try{let l=me(e);i=l.length;let c=new Map,u=new Map,d=[];for(let m of l){let g=ct(e,m,ut);if(!g?.key)return null;c.set(m,g.key);let b=Ve.read(e,m,g.key);b===null?(o+=1,d.push(m)):(a+=1,u.set(m,b))}if(o===0)return r="hit",{references:$e(t,u),files:i,cacheHits:a,cacheMisses:o,computedFiles:s};let p=n(t[0].relativePath);if(!p.availability().available||!p.referenceFragmentsForFiles)return null;let f=p.referenceFragmentsForFiles(d);if(d.some(m=>!f.has(m)))return null;s=f.size,Ve.writeBatch(e,d.map(m=>({relativePath:m,contentHash:c.get(m),value:f.get(m)??[]})));for(let[m,g]of f)u.set(m,g);return r="computed",{references:$e(t,u),files:i,cacheHits:a,cacheMisses:o,computedFiles:s}}catch{return null}},()=>({state:r,files:i,cacheHits:a,cacheMisses:o,computedFiles:s}))}function ye(e){return{state:"unavailable",files:0,keyedFiles:0,writtenFiles:0,expectedCount:0,actualCount:0,missing:[],extra:[],reason:e}}function Zr(e){try{let t=JSON.parse(e);return!Array.isArray(t)||!t.every(Xr)?null:t}catch{return null}}function Xr(e){if(!e||typeof e!="object")return!1;let t=e,n=t.location;return typeof t.targetSymbol=="string"&&!!n&&typeof n.file=="string"&&typeof n.line=="number"&&typeof n.column=="number"}var Qr=$("symbol-resolution",{clearGroups:[]});function Os(e,t){return Jr(e,t).match}function Jr(e,t){return Qr.get(e,t,()=>{let n=mn(e,t.trim()).filter(o=>!e.isIgnored(o.relative_path));if(n.length>0)return se(e,n);let r=oi(e,t);if(r&&!e.isIgnored(r.relative_path))return se(e,[r]);let i=Yr(e,t);if(i.length>0)return se(e,i);let a=ei(e,t);return a.length>0?se(e,a):ii(e,t)})}function Yr(e,t){let n=t.trim().replace(/\(\)$/u,""),r=n.lastIndexOf(":");if(r<=0||r===n.length-1||n.startsWith("local:"))return[];let i=n.slice(r+1);if(!/^[\p{L}_$][\p{L}\p{N}_$]*$/u.test(i))return[];let a=[`/${i}().`,`/${i}.`,`/${i}#`,`#${i}().`,`#${i}.`,`/${i}/`],o=`gs.display_name = ? OR ${a.map(()=>"instr(gs.symbol, ?) > 0").join(" OR ")}`,s=[i,...a],l=W(e,{where:o,params:s,orderBy:"d.relative_path, der.start_line",limit:200}),c=l.length>0?[]:X(e,{where:o,params:s,orderBy:"d.relative_path, start_line",limit:200}),u=ie(l,c).filter(d=>!e.isIgnored(d.relative_path)).filter(d=>re(d.symbol).replace(/\(\)$/u,"")===n);return[...new Map(u.map(d=>[`${d.symbol}\0${d.relative_path}`,d])).values()]}function ei(e,t){let n=qe(t),r=dt(n);if(!r)return[];let i=`%${r.path}%`,a=r.leaf;return ti(e,i,a,n)}function ti(e,t,n,r){let i=ie([],[...ni(e,t,n),...ri(e,t,n)]).filter(a=>!e.isIgnored(a.relative_path)).filter(a=>le(a,r)>1);return i.sort((a,o)=>le(o,r)-le(a,r)||a.end_line-a.start_line-(o.end_line-o.start_line)||a.start_line-o.start_line||a.symbol.localeCompare(o.symbol)),i}function ni(e,t,n){return W(e,{where:"d.relative_path LIKE ? AND (gs.display_name = ? OR gs.symbol LIKE ?)",params:[t,n,`%/${n}.%`]})}function ri(e,t,n){return X(e,{where:"d.relative_path LIKE ? AND (gs.display_name = ? OR gs.symbol LIKE ?)",params:[t,n,`%/${n}.%`]})}function ii(e,t){let n=qe(t),r=pi(t),i=ui(e,r),a=fi(i,t,n).filter(s=>!e.isIgnored(s.relative_path));if(a.length>0)return se(e,a);let o=[];for(let s of i){if(e.isIgnored(s.relative_path))continue;let l=di(s,t,n,r);l<=0||o.push({row:s,score:l})}return o.sort((s,l)=>l.score-s.score||s.row.end_line-s.row.start_line-(l.row.end_line-l.row.start_line)||s.row.relative_path.localeCompare(l.row.relative_path)||s.row.symbol.localeCompare(l.row.symbol)),se(e,o.map(s=>s.row))}function se(e,t){let n=t.map(i=>Ae(e,i)),r=n[0]??null;return{match:r,candidates:r?ai(n,r):[],total:n.length}}function ai(e,t){let n=new Set([`${t.symbolId}:${t.relativePath}:${t.startLine}`]),r=[];for(let i of e){let a=`${i.symbolId}:${i.relativePath}:${i.startLine}`;if(!n.has(a)&&(n.add(a),r.push({symbol:i.symbol,shortName:re(i.symbol),relativePath:i.relativePath,startLine:i.startLine}),r.length>=5))break}return r}function oi(e,t){let n=t.match(/^(.+):(\d+)(?:-(\d+))?$/);if(!n)return;let[,r,i,a]=n,o=Jt(e,r,{allowMultiple:!1})[0]?.relativePath;if(!o)return;let s=Math.max(0,parseInt(i,10)-1),l=a?Math.max(s,parseInt(a,10)-1):s;return si(e,o,s,l)??li(e,o,s,l)}function si(e,t,n,r){return W(e,{where:"d.relative_path = ? AND der.start_line <= ? AND der.end_line >= ?",params:[t,n,r],orderBy:"(der.end_line - der.start_line) ASC",limit:1})[0]}function li(e,t,n,r){return X(e,{where:"d.relative_path = ? AND c.start_line <= ? AND c.end_line >= ?",params:[t,n,r],orderBy:"(MAX(c.end_line) - MIN(c.start_line)) ASC",limit:1})[0]}function js(e,t){let n=mn(e,t).find(r=>!e.isIgnored(r.relative_path));return n?Ae(e,n):null}function mn(e,t){let n=W(e,{where:"gs.symbol = ?",params:[t],orderBy:"d.relative_path, der.start_line"}),r=n.length>0?[]:X(e,{where:"gs.symbol = ?",params:[t],orderBy:"d.relative_path, start_line"});return ie(n,r)}function ge(e,t){if("symbol"in t&&"relativePath"in t)return t;let n=ci(e,t.symbolId)[0];return n?Ae(e,n):null}function ci(e,t){let n=W(e,{where:"gs.id = ?",params:[t],orderBy:"der.start_line, der.end_line"}),r=X(e,{where:"gs.id = ?",params:[t],orderBy:"start_line, end_line"});return ie(n,r)}function ui(e,t){let n=t.map(()=>"(gs.symbol LIKE ? OR d.relative_path LIKE ? OR COALESCE(gs.display_name, '') LIKE ?)"),r=t.flatMap(s=>{let l=`%${s}%`;return[l,l,l]}),i=n.join(`
20
+ AND `),a=W(e,{where:i,params:r,limit:200}),o=X(e,{where:i,params:r,limit:200});return ie(a,o)}function di(e,t,n,r){let i=t.trim(),a=n,o=a.replace(/\(\)$/,""),s=t.toLowerCase(),l=n.toLowerCase(),c=l.replace(/\(\)$/,""),u=e.symbol,d=re(e.symbol),p=M(e.symbol),f=e.display_name??"",m=e.symbol.toLowerCase(),g=d.toLowerCase(),b=p.toLowerCase(),h=f.toLowerCase(),v=e.relative_path.toLowerCase(),F=/[/:.]/.test(n),x=dt(n),w=x?.leaf.toLowerCase(),y=0;return(u===i||u===a)&&(y+=1150),(d===i||d===a)&&(y+=1100),f===o&&(y+=1180),p===o&&(y+=1160),(`${p}()`===i||`${p}()`===a)&&(y+=955),(m===s||m===l)&&(y+=1e3),(g===s||g===l)&&(y+=950),(v===s||v===l)&&(y+=925),(v.endsWith(`/${l}`)||v.endsWith(`/${s}`))&&(y+=875),h===c&&(y+=850),b===c&&(y+=825),(`${b}()`===s||`${b}()`===l)&&(y+=820),(g.endsWith(`:${l}`)||g.endsWith(`:${c}`)||g.endsWith(`:${c}()`))&&(y+=800),m.includes(l)&&(y+=120),g.includes(l)&&(y+=140),v.includes(l)&&(y+=140),h.includes(l)&&(y+=110),r.every(R=>{let I=R.toLowerCase();return m.includes(I)||g.includes(I)||v.includes(I)||h.includes(I)})&&(y+=100+r.length*15),x&&v.includes(x.path.toLowerCase())&&(y+=360,w&&(b===w||`${b}()`===w||`${b}()`==`${w}()`)&&(y+=700),st(e.symbol)&&(y+=180)),lt(e.symbol)&&b===c&&(y+=60),!F&&an(e.symbol)&&(y-=160),y-=Math.min(50,Math.max(0,e.end_line-e.start_line)),y}function dt(e){let t=e.trim().replace(/\\/g,"/"),n=t.lastIndexOf("/");if(n<=0||n===t.length-1)return null;let r=t.slice(n+1).replace(/\(\)$/,"");return!r||r.includes(".")?null:{path:t.slice(0,n),leaf:r}}function qe(e){return e.trim().replace(/\(\)$/,"").replace(/\(.*$/,"")}function pi(e){let t=qe(e),n=t.split(/[^A-Za-z0-9_]+/).map(r=>r.trim()).filter(r=>r.length>0);return n.length>0?[...new Set(n)]:[t]}function fi(e,t,n){let r=t.trim(),i=e.filter(s=>{let l=re(s.symbol),c=M(s.symbol),u=(s.display_name??"").trim();return s.symbol===r||l===r||l===n||c===r||c===n||`${c}()`===r||u===r||u===n||`${u}()`===r||le(s,n)>1||s.relative_path===r});if(i.length===0)return[];let a=n.replace(/\(\)$/u,""),o=i.filter(s=>M(s.symbol)===a);if(o.length>0){o.sort((l,c)=>pn(l,c,n));let s=o.filter(l=>lt(l.symbol));return s.length>0?s:o}return i.sort((s,l)=>pn(s,l,n)),i}function pn(e,t,n){return le(t,n)-le(e,n)||e.end_line-e.start_line-(t.end_line-t.start_line)||e.relative_path.localeCompare(t.relative_path)||e.symbol.localeCompare(t.symbol)}function le(e,t){let n=dt(t);if(!n)return 0;let r=e.relative_path.toLowerCase(),i=M(e.symbol).toLowerCase(),a=n.path.toLowerCase(),o=n.leaf.toLowerCase();return r.includes(a)?i!==o?1:st(e.symbol)?fe(e.symbol)===null?5:4:fe(e.symbol)===null?3:2:0}function Vs(e,t,n=5){let r=fn(t);if(!r)return[];let i=W(e,{where:"1 = 1",orderBy:"d.relative_path, der.start_line",limit:5e3}),a=new Map;for(let o of i){if(e.isIgnored(o.relative_path))continue;let s=re(o.symbol),l=M(o.symbol),c=o.display_name??l,u=[s,l,c].filter(f=>f.trim().length>0),d=Math.min(...u.map(f=>mi(fn(f),r))),p=a.get(s);(!p||d<p.distance)&&a.set(s,{shortName:s,distance:d})}return[...a.values()].sort((o,s)=>o.distance-s.distance||o.shortName.localeCompare(s.shortName)).slice(0,n).map(o=>o.shortName)}function fn(e){return qe(e).toLowerCase().replace(/[^a-z0-9_]+/g,"")}function mi(e,t){if(e===t)return 0;if(e.length===0)return t.length;if(t.length===0)return e.length;let n=Array.from({length:t.length+1},(r,i)=>i);for(let r=0;r<e.length;r++){let i=[r+1];for(let a=0;a<t.length;a++){let o=e[r]===t[a]?0:1;i[a+1]=Math.min(i[a]+1,n[a+1]+1,n[a]+o)}n=i}return n[t.length]}function Xs(e,t){let n=yn(e);return n?t.filter(r=>yn(r.file)===n):t}function Qs(e,t,n,r,i){let a=n.find(o=>o.file===t);if(a)return a;if(r){let o=i?.match(/^[A-Za-z_$][\w$]*/u)?.[0];if(!o)return null;let s=A(e,t),l=new Set(s.filter(p=>p.localName===o||p.importedName===o).map(p=>p.sourcePath).filter(p=>!!p));for(let p of n)for(let f of l)if(te(f,p.file))return p;let c=yi(L(e,t)??"",o);if(c.size===0)return null;let u=new Set(s.filter(p=>c.has(p.localName??p.importedName)).map(p=>p.sourcePath).filter(p=>!!p)),d=n.filter(p=>c.has(fe(p.symbol)??"")&&[...u].some(f=>te(f,p.file)));return d.length===1?d[0]:null}return n.length===1?n[0]:null}function yi(e,t){let n=t.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),r=new Set,i=[new RegExp(`\\b${n}\\s*:\\s*([A-Za-z_$][\\w$]*)`,"gu"),new RegExp(`\\b${n}\\s*=\\s*(?:new\\s+)?([A-Za-z_$][\\w$]*)\\s*\\(`,"gu")];for(let a of i)for(let o of e.matchAll(a))r.add(o[1]);return r.size===1?r:new Set}function yn(e){let t=Be(e);return t?t==="typescript"||t==="tsx"||t==="javascript"?"javascript-family":t:null}var gi=Pe("global-leaf-index",{clearGroups:["whole-project"]});function pt(e){return gi.get(e,()=>{let t=e.all(`SELECT gs.id, gs.symbol,
21
+ COALESCE(der_doc.relative_path, mention_doc.relative_path) AS relative_path
22
+ FROM global_symbols gs
23
+ LEFT JOIN defn_enclosing_ranges der ON der.symbol_id = gs.id
24
+ LEFT JOIN documents der_doc ON der_doc.id = der.document_id
25
+ LEFT JOIN (
26
+ SELECT m.symbol_id, MIN(d.relative_path) AS relative_path
27
+ FROM mentions m
28
+ JOIN chunks c ON m.chunk_id = c.id
29
+ JOIN documents d ON c.document_id = d.id
30
+ WHERE m.role = 1
31
+ GROUP BY m.symbol_id
32
+ ) mention_doc ON mention_doc.symbol_id = gs.id
33
+ WHERE 1 = 1
34
+ ${e.symbolNoiseFor("gs")}`),n=new Map;for(let r of t){if(!r.relative_path||e.isIgnored(r.relative_path))continue;let i=M(r.symbol);if(!i)continue;let a=n.get(i);a||(a=[],n.set(i,a)),a.some(o=>o.symbolId===r.id)||a.push({symbol:r.symbol,symbolId:r.id,file:r.relative_path})}return n})}function Ge(e,t,n,r={}){if(!n)return[];let i=L(e,t);return i?i.indexOf(n)===-1?[]:(ft(e,t).get(n)??[]).filter(o=>!hi(o,r)):[]}function hi(e,t){return typeof t.excludeStartLine=="number"&&typeof t.excludeEndLine=="number"&&e>=t.excludeStartLine&&e<=t.excludeEndLine}var Si=$("file-identifiers",{clearGroups:["whole-project","source-file"]});function gn(e,t){let n=U(e,t);return n?n.fileIdentifiers:Si.get(e,t,()=>new Set(ft(e,t).keys()))}var bi=$("file-ident-lines",{clearGroups:["whole-project","source-file"]});function ft(e,t){let n=U(e,t);return n?n.identifierLineMap:bi.get(e,t,()=>xi(e,t))}var vi=$("file-idents-by-line",{clearGroups:["whole-project","source-file"]});function rl(e,t){let n=U(e,t);return n?n.identifiersByLine:vi.get(e,t,()=>{let r=ft(e,t),i=0;for(let o of r.values()){let s=o[o.length-1];s!==void 0&&s>i&&(i=s)}let a=new Array(i+1);for(let o=0;o<=i;o+=1)a[o]=new Set;for(let[o,s]of r)for(let l of s)a[l].add(o);return a})}function xi(e,t){let n=new Map,r=(s,l)=>{let c=n.get(s);if(!c){n.set(s,[l]);return}c[c.length-1]!==l&&c.push(l)},i=L(e,t);if(!i)return n;let a=en(i).split(/\r?\n/),o=/\b([A-Za-z_$][\w$]*)\b/g;for(let s=0;s<a.length;s+=1){let l=a[s]??"";for(let c of l.matchAll(o))c[1]&&r(c[1],s)}return n}var hn=/[A-Za-z_$][A-Za-z0-9_$]*/g,Sn=/^[A-Za-z_$][A-Za-z0-9_$]*$/,Ri=512;function mt(e){let t=[],n=!1;for(let r of e)r&&(n=!0,Sn.test(r)||t.push(r));return{candidateNames:e,hasUsableCandidate:n,nonIdentifierNames:t}}function bn(e,t){let n=Ii(t)?t:mt(t);if(n.candidateNames.size===0||!n.hasUsableCandidate)return!0;if(n.candidateNames.size<=Ri){for(let i of n.candidateNames)if(i){if(Sn.test(i)){if(wi(i).test(e))return!0;continue}if(e.includes(i))return!0}return!1}hn.lastIndex=0;let r;for(;(r=hn.exec(e))!==null;)if(n.candidateNames.has(r[0]))return!0;for(let i of n.nonIdentifierNames)if(e.includes(i))return!0;return!1}function Ii(e){return"candidateNames"in e}function wi(e){return new RegExp(`(?<![A-Za-z_$0-9])${Yt(e)}(?![A-Za-z_$0-9])`)}var Ci=$("source-import-paths-by-local-name",{clearGroups:["whole-project","source-file"]});function xn(e,t){let n=Ut(t);return Ci.get(e,n,()=>Ni(e,n))}function Ni(e,t){let n=new Map;for(let r of A(e,t)){if(!r.sourcePath)continue;let i=r.localName??r.importedName;if(i&&vn(n,i,r.sourcePath),r.kind==="namespace")for(let a of r.usedMembers)vn(n,a,r.sourcePath)}return n}function vn(e,t,n){let r=e.get(t);r||(r=new Set,e.set(t,r)),r.add(n)}function yt(e,t,n){let r=pt(e).get(n);if(!r||r.length===0)return[];if(r.length===1)return[he(r[0])];let i=r.filter(l=>l.file===t);if(i.length>0)return i.map(he);let a=xn(e,t),o=a.get(n);if(o)for(let l of o){let c=r.filter(u=>te(l,u.file));if(c.length>0)return c.map(he)}let s=new Set;for(let l of a.values())for(let c of l)s.add(c);for(let l of s){let c=r.filter(u=>te(l,u.file));if(c.length>0&&c.length===r.length)return c.map(he)}return[]}function xl(e,t,n){let r=yt(e,t,n);if(r.length>0)return r;let i=pt(e).get(n);return!i||i.length===0?[]:i.map(he)}function Rn(e,t,n={}){let r=Fi(e,t);if(!r)return[];let i=ge(e,t);if(n.semantic!==!1&&n.semanticEvidence){let o=n.semanticEvidence.references(e,{...i,leaf:r.identifier,parentTypeName:null,isFunctionLike:!1,isTypeLike:!1,kind:null,documentation:null,enclosingSymbol:null});if(o.length>0){let s=new Map;for(let l of o){let c=s.get(l.file)??[];c.push(l.line),s.set(l.file,c)}return He(e,s)}}let a=new Map;for(let o of z(e)){let s=Ei(e,r,o);s.length>0&&a.set(o,s)}return He(e,a)}function Fi(e,t){let n=ge(e,t);if(!n)return null;let r=M(n.symbol);return r?{symbolId:n.symbolId,relativePath:n.relativePath,startLine:n.startLine,endLine:n.endLine,identifier:r}:null}function Ei(e,t,n){let r=L(e,n);return!r||r.indexOf(t.identifier)===-1?[]:n!==t.relativePath&&!yt(e,n,t.identifier).some(a=>a.symbolId===t.symbolId)?[]:Ge(e,n,t.identifier,n===t.relativePath?{excludeStartLine:t.startLine,excludeEndLine:t.endLine}:{})}function Rl(e,t,n={}){let r=new Map;for(let l of t){if(!l.leaf)continue;let c=r.get(l.leaf)??[];c.push(l),r.set(l.leaf,c)}if(r.size===0)return new Map;let i=new Set(t.map(l=>l.symbolId)),a=new Set(r.keys()),o=mt(a),s=new Map;for(let l of z(e)){if(n.skipPath?.(l)||!bn(L(e,l),o))continue;let c=gn(e,l);if(c.size!==0){for(let u of c)if(r.has(u))for(let d of yt(e,l,u)){if(!i.has(d.symbolId)||l===d.relativePath)continue;let p=s.get(d.symbolId);p||(p=new Set,s.set(d.symbolId,p)),p.add(l)}}}return s}function he(e){return{symbolId:e.symbolId,symbol:e.symbol,relativePath:e.file}}function He(e,t){let n=[],r=new Set;for(let[i,a]of t){let o=N(e,i);for(let s of a){let l=ae(o,s),c=`${i}|${s}|${l?.symbol??""}`;r.has(c)||(r.add(c),n.push({file:i,line:s,enclosingSymbol:l?.symbol??null}))}}return n}function Pi(e,t){return _i(e,[t]).get(t.symbolId)??[]}function _i(e,t){let n=t.map(a=>({symbolId:a.symbolId,prelude:$i(e,a)})).filter(a=>a.prelude!==null),r=Bi(e,n.map(a=>a.symbolId)),i=new Map;for(let{symbolId:a,prelude:o}of n){let s=Li(e,r.get(a)??new Map,o.match,o.identifier);i.set(a,He(e,s))}return i}function Pl(e,t,n={}){return gt(e,t,n).map(r=>({file:r.file,line:r.line,enclosingSymbol:r.enclosingSymbol}))}function gt(e,t,n={}){let r=Rn(e,t,{semantic:n.semantic,semanticEvidence:n.semanticEvidence}),i=r.length>0?In(r,"source-attribution"):In(Pi(e,t),"scip-reference-chunk");return n.includeIgnored===!0?i:i.filter(a=>!e.isIgnored(a.file))}function In(e,t){return e.map(n=>({...n,provenance:t}))}function Li(e,t,n,r){let i=new Map;for(let[a,o]of t)i.set(a,Ti(e,a,o,n,r));return i}function Bi(e,t){let n=new Map;for(let r of on(e,t)){if(e.isIgnored(r.relative_path))continue;let i=n.get(r.symbol_id);i||(i=new Map,n.set(r.symbol_id,i));let a=i.get(r.relative_path);a||(a=[],i.set(r.relative_path,a)),a.push({start_line:r.chunk_start,end_line:r.chunk_end})}return n}function Ti(e,t,n,r,i){let a=t===r.relativePath?{excludeStartLine:r.startLine,excludeEndLine:r.endLine}:{},o=i?Ge(e,t,i,a):[];return n.flatMap(s=>ki(o,s))}function ki(e,t){let n=e.filter(r=>r>=t.start_line&&r<=t.end_line);return n.length>0?n:[t.start_line]}function $i(e,t){let n=ge(e,t);return n?{match:n,identifier:M(n.symbol)||null}:null}import{spawn as Ai}from"child_process";import{platform as wn}from"os";import{performance as Cn}from"perf_hooks";var $l={probe:1e4,git:3e4,analysis:18e4,install:3e5,indexer:6e5},be=class extends Error{constructor(n,r,i,a={}){super(i,a.cause===void 0?void 0:{cause:a.cause});this.kind=n;this.label=r;this.name="BoundedProcessError",this.timedOut=a.timedOut??!1,this.reaped=a.reaped??!1,this.stdout=a.stdout??"",this.stderr=a.stderr??"",this.stdoutTruncated=a.stdoutTruncated??!1,this.stderrTruncated=a.stderrTruncated??!1}kind;label;timedOut;reaped;stdout;stderr;stdoutTruncated;stderrTruncated};function Se(e,t){if(!Number.isFinite(e)||e<=0)throw new TypeError(`${t} must be a positive finite number.`)}function Nn(e,t,n,r){let i=Math.max(0,r-n);i>0&&e.push(t.subarray(0,i))}function Fn(e,t,n){let r=Buffer.concat([...e,t]);e.length=0,e.push(r.subarray(Math.max(0,r.length-n)))}function Al(e){Se(e.timeoutMs,"timeoutMs"),Se(e.maxStdoutBytes,"maxStdoutBytes"),Se(e.maxStderrBytes,"maxStderrBytes");let t=e.terminationGraceMs??1e3;Se(t,"terminationGraceMs");let n=e.terminationForceMs??t;return Se(n,"terminationForceMs"),new Promise((r,i)=>{let a=Cn.now(),o;try{let y=wn()!=="win32";o=Ai(e.command,[...e.args??[]],{cwd:e.cwd,env:e.env,detached:y?!0:e.detached,stdio:["pipe","pipe","pipe"],windowsHide:!0})}catch(y){i(new be("spawn",e.label,`${e.label} could not start.`,{cause:y,reaped:!0}));return}let s=[],l=[],c=0,u=0,d=!1,p=!1,f=null,m=!1,g=wn()!=="win32",b=o.pid===void 0?null:sn(o.pid,g),h=()=>{clearTimeout(x),e.signal?.removeEventListener("abort",w)},v=y=>{if(m||!f)return;m=!0,h();let R=Buffer.concat(s).toString("utf8"),I=Buffer.concat(l).toString("utf8"),E=y.reaped||!y.detail?"":` Process-tree cleanup failed: ${y.detail}`;i(new be(f.kind,e.label,`${f.message}${E}`,{timedOut:f.timedOut,reaped:y.reaped,stdout:R,stderr:I,stdoutTruncated:d,stderrTruncated:p}))},F=y=>{if(!(f||m)){if(f=y,!b){v({reaped:o.pid===void 0,reason:o.pid===void 0?"terminated":"identity-unavailable"});return}ln(b,{gracefulMs:t,forceMs:n}).then(v,R=>{v({reaped:!1,reason:"signal-failed",detail:R instanceof Error?R.message:String(R)})})}},x=setTimeout(()=>{F({kind:"timeout",timedOut:!0,message:`${e.label} timed out after ${e.timeoutMs}ms.`})},e.timeoutMs);x.unref();let w=()=>{F({kind:"aborted",timedOut:!1,message:`${e.label} was cancelled.`})};e.signal?.addEventListener("abort",w,{once:!0}),e.signal?.aborted&&w(),o.stdout.on("data",y=>{let R=Buffer.isBuffer(y)?y:Buffer.from(y);e.outputLimitBehavior==="truncate-tail"?Fn(s,R,e.maxStdoutBytes):Nn(s,R,c,e.maxStdoutBytes),c+=R.length,c>e.maxStdoutBytes&&(d=!0,e.outputLimitBehavior!=="truncate-tail"&&F({kind:"stdout-limit",timedOut:!1,message:`${e.label} exceeded stdout limit (${e.maxStdoutBytes} bytes).`}))}),o.stderr.on("data",y=>{let R=Buffer.isBuffer(y)?y:Buffer.from(y);e.outputLimitBehavior==="truncate-tail"?Fn(l,R,e.maxStderrBytes):Nn(l,R,u,e.maxStderrBytes),u+=R.length,u>e.maxStderrBytes&&(p=!0,e.outputLimitBehavior!=="truncate-tail"&&F({kind:"stderr-limit",timedOut:!1,message:`${e.label} exceeded stderr limit (${e.maxStderrBytes} bytes).`}))}),o.on("error",y=>{if(!m&&!f){if(o.pid===void 0){h(),m=!0,i(new be("spawn",e.label,`${e.label} could not start: ${y.message}`,{cause:y,reaped:!0}));return}F({kind:"spawn",timedOut:!1,message:`${e.label} failed after start: ${y.message}`})}}),o.on("close",(y,R)=>{if(m||f)return;m=!0,h();let I=Buffer.concat(s).toString("utf8"),E=Buffer.concat(l).toString("utf8");r({status:y,signal:R,stdout:I,stderr:E,timedOut:!1,durationMs:Cn.now()-a,stdoutTruncated:d,stderrTruncated:p})}),e.input===void 0?o.stdin.end():o.stdin.end(e.input)})}function En(e){let t=Wt(e);return Di(t)?"test":Mi(t)?"worker":Oi(t)?"entry":ji(t)?"barrel":"source"}function Di(e){return!!(/\.(?:test|spec)\.[a-z0-9]+$/i.test(e)||/(?:^|\/)(?:_)?test_[^/]+$/i.test(e)||/(?:^|\/)spec_[^/]+$/i.test(e)||/(?:^|\/)[^/]+_test\.[a-z0-9]+$/i.test(e)||/(?:^|\/)[^/]+_tests\.rs$/i.test(e)||/(?:^|\/)tests\.rs$/i.test(e)||/(?:^|\/)[^/]+_spec\.[a-z0-9]+$/i.test(e)||/(?:^|\/)__tests__\//i.test(e)||/(?:^|\/)test\//i.test(e)||/(?:^|\/)tests\//i.test(e)||/(?:^|\/)__fixtures__\//i.test(e)||/(?:^|\/)__mocks__\//i.test(e)||/(?:^|\/)test-support\//i.test(e)||/(?:^|\/)test-utils\//i.test(e)||/(?:^|\/)testing\//i.test(e))}function Mi(e){return/(?:^|\/)[^/]*worker\.(?:ts|tsx|js|mjs|cjs|rs|py|go)$/.test(e)}function Oi(e){let t=e.split("/"),n=t[t.length-1]??e;return n==="cli.ts"||n==="cli.js"||n==="postinstall.ts"||n==="postinstall.js"||n==="main.ts"||n==="main.js"||n==="main.rs"||n==="main.go"||n==="main.py"||n==="build.rs"||n==="lib.rs"||/\bsrc\/bin\/[^/]+\.rs$/.test(e)||/(?:^|\/)examples\/[^/]+\.rs$/.test(e)||/(?:^|\/)tests\/[^/]+\.rs$/.test(e)||/(?:^|\/)benches\/[^/]+\.rs$/.test(e)?!0:n==="index.ts"||n==="index.js"?/(?:^|\/)(?:apps|services)\/[^/]+\/src\/index\.(?:ts|js)$/.test(e)?!0:t.length<=2:!1}function ji(e){return e==="index.ts"||e==="index.js"||e.endsWith("/index.ts")||e.endsWith("/index.js")||e.endsWith("/mod.rs")||e.endsWith("/__init__.py")}function ze(e){let t=e.replaceAll("\\","/");return En(t)==="test"?/(?:^|\/)__fixtures__\//iu.test(t)?"fixture":"test":/(?:^|\/)(?:fixtures?|testdata)\//iu.test(t)?"fixture":/(?:^|\/)(?:examples?|demos?|previews?)\//iu.test(t)?"example":/(?:^|\/)(?:generated|dist|build|coverage)\//iu.test(t)||/\.generated\./iu.test(t)?"generated":/^(?:scripts?|tools?)\//iu.test(t)?"script":"production"}var Vi=4;function Q(e,t,n,r={}){return Pn(e,t,n,r.maxReexportDepth??Vi,0,new Set)}function Pn(e,t,n,r,i,a){let o=`${t}\0${n}`;if(a.has(o)||i>r)return[];a.add(o);let s=N(e,t).filter(l=>l.leaf===n);return s.length>0?s:ne(e,t).flatMap(l=>l.sourcePath?l.kind==="named"&&!l.names.includes(n)?[]:Pn(e,l.sourcePath,n,r,i+1,new Set(a)):[])}import{createHash as mr}from"crypto";import{createHash as oa}from"crypto";var Ue=8;function ce(e,t,n){return xt(_n(e,t,bt(n),0,new Set))}function vt(e,t,n){return ht(e,t,n,0,new Set)}function _n(e,t,n,r,i){if(r>Ue)return[];let a=/^([A-Za-z_$][\w$]*)\.([A-Za-z_$][\w$]*)$/u.exec(n);return a?Ln(e,t,a[1],a[2],r,i):/^[A-Za-z_$][\w$]*$/u.test(n)?Bn(e,t,n,r,i):[]}function Ln(e,t,n,r,i,a){let o=[];for(let s of ht(e,t,n,i+1,new Set(a))){let l=Ui(s.initializer);for(let c of l.namedChildren){if(c.type==="pair"){let u=c.childForFieldName("key")??c.namedChild(0);if(Wi(u)!==r)continue;let d=c.childForFieldName("value")??c.namedChild(1);d&&o.push(..._n(e,s.definition.relativePath,bt(d.text),i+1,new Set(a)));continue}if(/(?:method|function)/u.test(c.type)){if((c.childForFieldName("name")??c.namedChild(0))?.text!==r)continue;let d=Hi(e,s.definition.relativePath,r,c);o.push(...d.length>0?d:[qi(s.definition,r,c)]);continue}if(c.type==="spread_element"){let u=c.namedChild(0);if(!u)continue;for(let d of ht(e,s.definition.relativePath,bt(u.text),i+1,new Set(a)))o.push(...Ln(e,d.definition.relativePath,d.definition.leaf,r,i+1,new Set(a)))}}}return xt(o)}function qi(e,t,n){return{documentId:e.documentId,symbolId:-1,symbol:`source-callable:${e.relativePath}:${n.startPosition.row}:${t}`,relativePath:e.relativePath,startLine:n.startPosition.row,startChar:n.startPosition.column,endLine:n.endPosition.row,endChar:n.endPosition.column,leaf:t,parentTypeName:e.leaf,isFunctionLike:!0,isTypeLike:!1,kind:null,documentation:null,enclosingSymbol:e.symbol}}function ht(e,t,n,r,i){return r>Ue||!/^[A-Za-z_$][\w$]*$/u.test(n)?[]:Bn(e,t,n,r,i).flatMap(a=>{let o=D(e,a.relativePath)?.rootNode,s=o?zi(o,a.leaf):null;return s?[{definition:a,initializer:s}]:[]})}function Bn(e,t,n,r,i){if(r>Ue)return[];let a=`${t}\0${n}`;if(i.has(a))return[];i.add(a);let o=N(e,t).filter(c=>c.leaf===n);if(o.length>0)return o;let s=Gi(e,t,n);if(s.length>0)return s;let l=A(e,t).find(c=>c.localName===n&&c.sourcePath);if(l?.sourcePath){let c=l.kind==="namespace"||l.importedName==="default"?n:l.importedName;return St(e,l.sourcePath,c,r+1,new Set(i))}return St(e,t,n,r+1,new Set(i))}function Gi(e,t,n){let r=e.get("SELECT id FROM documents WHERE relative_path = ?",t)?.id;return r===void 0?[]:(U(e,t)?.callables??[]).filter(i=>i.name===n).map(i=>({documentId:r,symbolId:-1,symbol:`source-callable:${t}:${i.startLine}:${n}`,relativePath:t,startLine:i.startLine,startChar:0,endLine:i.endLine,endChar:0,leaf:n,parentTypeName:null,isFunctionLike:!0,isTypeLike:!1,kind:null,documentation:null,enclosingSymbol:null}))}function St(e,t,n,r,i){if(r>Ue)return[];let a=N(e,t).filter(o=>o.leaf===n);return a.length>0?a:xt(ne(e,t).flatMap(o=>o.sourcePath?o.kind==="named"&&!o.names.includes(n)?[]:St(e,o.sourcePath,n,r+1,new Set(i)):[]))}function Hi(e,t,n,r){return N(e,t).filter(i=>i.leaf===n&&i.startLine<=r.startPosition.row&&i.endLine>=r.endPosition.row)}function zi(e,t){let n=null;return Tn(e,r=>{n||r.type!=="variable_declarator"||(r.childForFieldName("name")??r.namedChild(0))?.text.trim()!==t||(n=r.childForFieldName("value")??r.namedChild(1))}),n}function Ui(e){let t=e;for(;["as_expression","satisfies_expression","type_assertion","parenthesized_expression"].includes(t.type)&&t.namedChildren.length>0;)t=t.namedChildren[0];return t}function Wi(e){return e?.text.replace(/^['"`]|['"`]$/gu,"")??null}function bt(e){return e.replace(/\s+/gu,"").replace(/^\.\.\./u,"")}function xt(e){return[...new Map(e.map(t=>[t.symbol,t])).values()]}function Tn(e,t){t(e);for(let n of e.namedChildren)Tn(n,t)}var Ki=8;function V(e,t){return t?ue(e,t,0,new Set):null}function ue(e,t,n,r){if(n>Ki)return G(t,"value-evaluation-depth");let i=$n(t),a=ea(i);if(a)return ta(e.file,i,a.term,a.value,a.precision);if(i.type==="binary_expression"&&/\+/u.test(i.text)){let l=i.namedChildren.map(c=>ue(e,c,n+1,new Set(r)));if(l.length>=2&&l.every(c=>c!==null)){let c={kind:"concat",parts:l.map(d=>d.term)},u=l.map(d=>d.value).join("");return na(e.file,i,c,u,l.some(d=>d.precision!=="literal")?"constrained-pattern":"literal",l)}}let o=i.text.trim();if(/^[A-Za-z_$][\w$]*$/u.test(o))return Ji(e,o,i,n,r);let s=ra(i);return s?Yi(e,s.base,s.properties,i,n,r):i.type==="call_expression"||i.type==="call"?Zi(e,i,n,r):G(i,`unsupported-expression:${i.type}`)}function Zi(e,t,n,r){let a=(t.childForFieldName("function")??t.namedChild(0))?.text.replace(/\s+/gu,"").replace(/<.*>$/u,"")??"",o=Xi(e,a);if(o.length!==1)return G(t,o.length===0?"call-target-unresolved":"call-target-ambiguous");let s=o[0],l=`${s.relativePath}\0${s.symbol}`;if(r.has(l))return G(t,"call-return-cycle");let c=D(e.db,s.relativePath)?.rootNode;if(!c)return G(t,"call-target-unparsed");let u=aa(c,s.startLine,s.endLine);if(!u)return G(t,"call-target-syntax-unavailable");let d=Qi(u);if(!d)return G(t,"call-return-not-single-expression");let p=new Set(r);p.add(l);let f=ue({db:e.db,file:s.relativePath,root:c},d,n+1,p);return f?We(t,"bounded-call-return",f,s.symbol):G(t,"call-return-unresolved")}function Xi(e,t){if(/^[A-Za-z_$][\w$]*$/u.test(t)){let i=N(e.db,e.file).filter(o=>o.isFunctionLike&&o.leaf===t);if(i.length>0)return i;let a=A(e.db,e.file).find(o=>o.localName===t&&o.sourcePath&&o.kind!=="namespace");return a?.sourcePath?Q(e.db,a.sourcePath,a.importedName==="default"?t:a.importedName).filter(o=>o.isFunctionLike):[]}let n=/^([A-Za-z_$][\w$]*)\.([A-Za-z_$][\w$]*)$/u.exec(t);if(!n)return[];let r=A(e.db,e.file).find(i=>i.kind==="namespace"&&i.localName===n[1]&&i.sourcePath);return r?.sourcePath?Q(e.db,r.sourcePath,n[2]).filter(i=>i.isFunctionLike):[]}function Qi(e){let t=e.childForFieldName("body");if(e.type==="arrow_function"&&t&&t.type!=="statement_block")return t;let n=[];return kn(t??e,t??e,n),n.length!==1?null:n[0].childForFieldName("argument")??n[0].namedChild(0)}function kn(e,t,n){if(!(t!==e&&(/(?:function|method|lambda)/u.test(t.type)||t.type==="arrow_function"))){if(t.type==="return_statement"){n.push(t);return}for(let r of t.namedChildren)kn(e,r,n)}}function Ji(e,t,n,r,i){let a=`${e.file}\0${t}`;if(i.has(a))return G(n,"value-cycle");i.add(a);let o=Rt(e.root,t);if(o){let m=ue(e,o,r+1,i);return m?We(n,"local-constant",m):G(n,"non-foldable-local")}let s=A(e.db,e.file).find(m=>m.localName===t&&m.sourcePath);if(!s?.sourcePath)return j(n,t,"unresolved-identifier");if(s.kind==="namespace")return j(n,t,"namespace-import-requires-property");let l=s.importedName==="default"?t:s.importedName,c=Q(e.db,s.sourcePath,l);if(c.length!==1)return j(n,t,c.length===0?"import-definition-missing":"import-definition-ambiguous");let u=c[0],d=D(e.db,u.relativePath)?.rootNode;if(!d)return j(n,u.symbol,"import-definition-unparsed");let p=Rt(d,u.leaf);if(!p)return j(n,u.symbol,"import-definition-non-value");let f=ue({db:e.db,file:u.relativePath,root:d},p,r+1,i);return f?We(n,"imported-constant",f,u.symbol):j(n,u.symbol,"import-value-unresolved")}function Yi(e,t,n,r,i,a){let o=A(e.db,e.file).find(f=>f.localName===t&&f.sourcePath),s=e.file,l=t,c;if(o?.sourcePath){o.kind==="namespace"?(l=n[0]??"",n=n.slice(1)):l=o.importedName==="default"?t:o.importedName;let f=Q(e.db,o.sourcePath,l);if(f.length!==1)return j(r,`${t}.${n.join(".")}`,f.length===0?"member-definition-missing":"member-definition-ambiguous");s=f[0].relativePath,l=f[0].leaf,c=f[0].symbol}let u=s===e.file?e.root:D(e.db,s)?.rootNode;if(!u)return j(r,c??t,"member-definition-unparsed");let d=Rt(u,l);if(!d)return j(r,c??t,"member-base-non-value");for(let f of n){let m=$n(d);if(d=ia(m,f),!d)return j(r,c??`${t}.${n.join(".")}`,`member-property-missing:${f}`)}let p=ue({db:e.db,file:s,root:u},d,i+1,a);return p?We(r,"member-constant",p,c):j(r,c??t,"member-value-unresolved")}function ea(e){let t=e.text.trim(),n=t[0];if(n!=="'"&&n!=='"'&&n!=="`"||t.at(-1)!==n)return null;let r=t.slice(1,-1);if(n!=="`"||!r.includes("${"))return{term:{kind:"literal",value:r},value:r,precision:"literal"};let i=[],a=0,o=/\$\{([^}]*)\}/gu;for(let s of r.matchAll(o)){let l=s.index??0;l>a&&i.push({kind:"literal",value:r.slice(a,l)}),i.push({kind:"unknown",reason:`template-hole:${s[1]?.trim()||"expression"}`}),a=l+s[0].length}return a<r.length&&i.push({kind:"literal",value:r.slice(a)}),{term:{kind:"pattern",language:"template",value:r.replace(o,"{}")},value:r.replace(o,"{}"),precision:"constrained-pattern"}}function ta(e,t,n,r,i){return{value:r,evidence:"literal",term:n,precision:i,derivation:Ke("direct-literal","direct",e,t)}}function na(e,t,n,r,i,a){return{value:r,evidence:"constant",term:n,precision:i,derivation:{...Ke("constant-concatenation","mechanically-derived",e,t),inputFactIds:a.flatMap(o=>o.derivation.inputFactIds),sourceSpans:a.flatMap(o=>o.derivation.sourceSpans)}}}function We(e,t,n,r){return n.evidence==="expression"?{...n,derivation:{kind:"heuristic",rule:t,ruleVersion:"1",inputFactIds:[...n.derivation.inputFactIds,...r?[r]:[]],sourceSpans:n.derivation.sourceSpans}}:{...n,evidence:"constant",derivation:{kind:"mechanically-derived",rule:t,ruleVersion:"1",inputFactIds:[...n.derivation.inputFactIds,...r?[r]:[]],sourceSpans:n.derivation.sourceSpans}}}function j(e,t,n){return{value:e.text.trim(),evidence:"expression",term:{kind:"symbol",symbol:t},precision:"symbolic",derivation:Ke(n,"heuristic","",e)}}function G(e,t){return{value:e.text.trim(),evidence:"expression",term:{kind:"unknown",reason:t},precision:"unknown",derivation:Ke(t,"heuristic","",e)}}function Ke(e,t,n,r){return{kind:t,rule:e,ruleVersion:"1",inputFactIds:[],sourceSpans:n?[{file:n,startLine:r.startPosition.row,endLine:r.endPosition.row}]:[]}}function ra(e){let t=e.text.replace(/\s+/gu,"");if(!/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*)+$/u.test(t))return null;let[n,...r]=t.split(".");return n?{base:n,properties:r}:null}function Rt(e,t){let n=null;return It(e,r=>{if(n||r.type!=="variable_declarator"||(r.childForFieldName("name")??r.namedChild(0))?.text.trim()!==t)return;let a=r.parent;!a||a.type!=="lexical_declaration"||!/^\s*(?:export\s+)?const\b/u.test(a.text)||(n=r.childForFieldName("value")??r.namedChild(1))}),n}function ia(e,t){for(let n of e.namedChildren)if(!(n.type!=="pair"||(n.childForFieldName("key")??n.namedChild(0))?.text.replace(/^['"`]|['"`]$/gu,"")!==t))return n.childForFieldName("value")??n.namedChild(1);return null}function $n(e){let t=e;for(;["as_expression","satisfies_expression","type_assertion","parenthesized_expression"].includes(t.type)&&t.namedChildren.length>0;)t=t.namedChildren[0];return t}function aa(e,t,n){let r=null;return It(e,i=>{!/(?:function|method|lambda)/u.test(i.type)&&i.type!=="arrow_function"||i.startPosition.row>t||i.endPosition.row<n||(!r||i.endIndex-i.startIndex<r.endIndex-r.startIndex)&&(r=i)}),r}function It(e,t){t(e);for(let n of e.namedChildren)It(n,t)}var On=new Set(["delete","get","head","options","patch","post","put"]),sa=/(?:^|\.)(?:app|router|server)$/u,la=new Set(["findFirst","findMany","findUnique","from","get","select"]),ca=new Set(["create","delete","insert","remove","update","upsert"]),ua=new Set(["execute","query","raw"]),Nt=[ma(),fa(),da(),ya(),ha(),Sa(),va()],Ct=new Set(["exec","execFile","execFileSync","execSync","fork","spawn","spawnSync"]);function da(){return{id:"builtin.node-child-process",supports:e=>/(?:from\s*|require\s*\(\s*)['"](?:node:)?child_process['"]/u.test(e)&&/\b(?:exec|execFile|execFileSync|execSync|fork|spawn|spawnSync)\s*\(/u.test(e),extract:e=>{let t=pa(e.source),n=[];return q(e.root,r=>{if(r.type!=="call_expression")return;let i=Re(r);if(!i)return;let a=t.direct.get(i),o=/^(.*?)\.([A-Za-z_$][\w$]*)$/u.exec(i),s=o&&t.namespaces.has(o[1])?o[2]:null,l=a??s;if(!l||!Ct.has(l))return;let c=J(r),u=O(c[0],e)??{value:c[0]?.text.trim()||"<missing>",evidence:"expression"},d=["exec","execFile","execFileSync","execSync"].includes(l)?"process.exec":"process.spawn";n.push(T(e,r,"builtin.node-child-process",d,[{name:"operation",value:l,evidence:"literal"},{name:"executable",...u}],"exact","node-child-process-import"))}),n}}}function pa(e){let t=new Map,n=new Set,r=String.raw`['"](?:node:)?child_process['"]`,i=new RegExp(String.raw`\bimport\s*\{([^}]*)\}\s*from\s*${r}`,"gu");for(let l of e.matchAll(i))for(let c of(l[1]??"").split(",")){let u=/^\s*([A-Za-z_$][\w$]*)(?:\s+as\s+([A-Za-z_$][\w$]*))?\s*$/u.exec(c);u&&Ct.has(u[1])&&t.set(u[2]??u[1],u[1])}let a=new RegExp(String.raw`\b(?:const|let)\s*\{([^}]*)\}\s*=\s*require\s*\(\s*${r}\s*\)`,"gu");for(let l of e.matchAll(a))for(let c of(l[1]??"").split(",")){let u=/^\s*([A-Za-z_$][\w$]*)(?:\s*:\s*([A-Za-z_$][\w$]*))?\s*$/u.exec(c);u&&Ct.has(u[1])&&t.set(u[2]??u[1],u[1])}let o=new RegExp(String.raw`\bimport\s*\*\s*as\s*([A-Za-z_$][\w$]*)\s*from\s*${r}`,"gu");for(let l of e.matchAll(o))n.add(l[1]);let s=new RegExp(String.raw`\b(?:const|let)\s+([A-Za-z_$][\w$]*)\s*=\s*require\s*\(\s*${r}\s*\)`,"gu");for(let l of e.matchAll(s))n.add(l[1]);return{direct:t,namespaces:n}}function k(e,t){let n=D(e,t)?.rootNode;if(!n)return null;let r=L(e,t),i=N(e,t),a=U(e,t)?.callables??[];return{db:e,file:t,source:r,root:n,constants:Na(n),ownerAt:o=>{let s=i.filter(c=>c.startLine<=o&&c.endLine>=o).sort((c,u)=>c.endLine-c.startLine-(u.endLine-u.startLine)||c.startLine-u.startLine)[0];if(s)return{file:t,symbol:s.symbol,name:s.leaf,startLine:s.startLine,endLine:s.endLine};let l=a.filter(c=>c.startLine<=o&&c.endLine>=o).sort((c,u)=>c.endLine-c.startLine-(u.endLine-u.startLine)||c.startLine-u.startLine)[0];return{file:t,symbol:null,name:l?.name??null,startLine:l?.startLine??o,endLine:l?.endLine??o}}}}function fa(){return{id:"builtin.effect-httpapi",supports:e=>ve(e,"HttpApiEndpoint").size>0||ve(e,"HttpApiBuilder").size>0,extract:e=>{let t=[],n=ve(e.source,"HttpApiEndpoint"),r=ve(e.source,"HttpApiGroup"),i=ve(e.source,"HttpApiBuilder");return q(e.root,a=>{if(a.type!=="call_expression")return;let o=jn(a);if(!o)return;let s=J(a);if(n.has(o.receiver)&&On.has(o.member)){let g=O(s[0],e),b=O(s[1],e),h=Dn(a,r,"make",0,e);if(!g||!b||!h)return;let v=o.member.toUpperCase();t.push(T(e,a,"builtin.effect-httpapi","http.handle",[{name:"method",value:v,evidence:"literal"},{name:"path",...b}],H([{name:"path",...b}]),"effect-httpapi-endpoint-declaration")),t.push(T(e,a,"builtin.effect-httpapi","framework.declare",wt(h,g),H(wt(h,g)),"effect-httpapi-operation-declaration"));return}if(!["handle","handleRaw"].includes(o.member))return;let l=Dn(a,i,"group",1,e),c=O(s[0],e),u=s[1];if(!l||!c||!u)return;let d=wt(l,c),p=ce(e.db,e.file,u.text),f=T(e,a,"builtin.effect-httpapi","framework.handle",d,p.length===1?H(d):"candidate","effect-httpapi-handler-registration"),m=p[0];p.length===1&&m&&(f.owner={file:m.relativePath,symbol:m.symbol,name:m.leaf,startLine:m.startLine,endLine:m.endLine}),t.push(f)}),t}}}function wt(e,t){return[{name:"adapter",value:"effect-httpapi",evidence:"literal"},{name:"group",...e},{name:"operation",...t}]}function ve(e,t){let n=new Set,r=/\bimport\s*\{([\s\S]*?)\}\s*from\s*['"]([^'"]+)['"]/gu;for(let a of e.matchAll(r)){let o=a[2]??"";if(An(o))for(let s of(a[1]??"").split(",")){let l=s.trim().replace(/^type\s+/u,""),c=/^([A-Za-z_$][\w$]*)(?:\s+as\s+([A-Za-z_$][\w$]*))?$/u.exec(l);c?.[1]===t&&n.add(c[2]??c[1])}}let i=/\bimport\s*\*\s*as\s*([A-Za-z_$][\w$]*)\s*from\s*['"]([^'"]+)['"]/gu;for(let a of e.matchAll(i)){let o=a[2]??"";o.endsWith(`/${t}`)&&An(o)&&n.add(a[1])}return n}function An(e){return e==="effect/unstable/httpapi"||e==="@effect/platform"||e.startsWith("@effect/platform/HttpApi")}function Dn(e,t,n,r,i){let a=e.parent;for(;a;){if(a.type==="call_expression"){let o=Mn(a,t,n,r,i);if(o)return o;let s=a.childForFieldName("function")??a.namedChild(0),l=null;if(s&&q(s,c=>{!l&&c.type==="call_expression"&&(l=Mn(c,t,n,r,i))}),l)return l}a=a.parent}return null}function Mn(e,t,n,r,i){let a=jn(e);return!a||a.member!==n||!t.has(a.receiver)?null:O(J(e)[r],i)}function jn(e){let t=e.childForFieldName("function")??e.namedChild(0);if(!t||!["member_expression","subscript_expression"].includes(t.type))return null;let n=t.childForFieldName("object")??t.namedChild(0),r=t.childForFieldName("property")??t.childForFieldName("index")??t.namedChild(1);return!n||!r?null:{receiver:n.text.replace(/\s+/gu,""),member:r.text.replace(/^['"`]|['"`]$/gu,"")}}function ma(){return{id:"builtin.http",supports:e=>/\bfetch\s*\(|\baxios\b|\b(?:app|router|server)\s*\.\s*(?:get|post|put|patch|delete|options|head)\s*\(/u.test(e)||xe(e,["axios"])||/\b(?:FastAPI|Flask|APIRouter|axum|Router::new)\b/u.test(e),extract:e=>{let t=[];return q(e.root,n=>{if(n.type==="decorator"){let p=/^@[^\s(]+\.(get|post|put|patch|delete|options|head)\s*\(\s*(['"`])([^'"`]+)\2/iu.exec(n.text.trim());if(!p||!xe(e.source,["fastapi","flask"]))return;t.push(T(e,n,"builtin.http","http.handle",[{name:"method",value:p[1].toUpperCase(),evidence:"literal"},{name:"path",value:p[3],evidence:"literal"}],"exact","framework-decorator"));return}if(n.type!=="call_expression")return;let r=Re(n);if(!r)return;let i=r.split(".").at(-1)?.toLowerCase()??"",a=r.includes(".")?r.slice(0,r.lastIndexOf(".")):"",o=J(n);if(i==="route"&&xe(e.source,["axum"])){let p=O(o[0],e),f=/^\s*(get|post|put|patch|delete|options|head)\s*\(/iu.exec(o[1]?.text??"")?.[1];if(!p||!f)return;t.push(T(e,n,"builtin.http","http.handle",[{name:"method",value:f.toUpperCase(),evidence:"literal"},{name:"path",...p}],H([{name:"path",...p}]),"framework-adapter"));return}if(r==="fetch"||r.endsWith(".fetch")){let p=O(o[0],e);if(!p)return;let m=/\bmethod\s*:\s*['"`]([A-Za-z]+)['"`]/u.exec(o[1]?.text??"")?.[1]?.toUpperCase()??(o[1]?null:"GET"),g=[...m?[{name:"method",value:m,evidence:"literal"}]:[],{name:"path",...p}];t.push(T(e,n,"builtin.http","http.request",g,m?H(g):"candidate","call-expression"));return}if(!On.has(i))return;let s=O(o[0],e);if(!s)return;let l=i.toUpperCase();if(sa.test(a)&&xe(e.source,["express","fastify","hono","koa-router","@koa/router"])){t.push(T(e,n,"builtin.http","http.handle",[{name:"method",value:l,evidence:"literal"},{name:"path",...s}],H([{name:"path",...s}]),"framework-adapter"));return}let u=Ia(e.source,["axios"]),d=a.split(".")[0]??"";u.has(d)&&t.push(T(e,n,"builtin.http","http.request",[{name:"method",value:l,evidence:"literal"},{name:"path",...s}],H([{name:"path",...s}]),"client-adapter"))}),t}}}function ya(){return{id:"builtin.capability-registry",supports:e=>/\b(?:execute|handler|invoke|run)\s*(?:[:(])/u.test(e)||/['"`][^'"`\n]{0,256}\b[A-Za-z_$][\w$-]*\s*\(/u.test(e),extract:e=>{let t=[],n=new Set;return q(e.root,r=>{if(r.type==="pair"){let a=r.childForFieldName("key")??r.namedChild(0),o=r.childForFieldName("value")??r.namedChild(1),s=a?.text.replace(/^['"`]|['"`]$/gu,"");if(s!=="name"&&s!=="id")return;let l=Vn(o,e),c=Ea(r);if(!l||l.evidence!=="literal"||!c)return;let u=`handle\0${l.value}\0${c.startPosition.row}`;if(n.has(u))return;n.add(u),t.push(T(e,c,"builtin.capability-registry","registry.handle",[{name:"key",...l}],"exact","capability-descriptor"));return}if(!["string","string_literal","template_string"].includes(r.type))return;let i=r.text.replace(/^['"`]|['"`]$/gu,"");for(let a of i.matchAll(/\b([A-Za-z_$][\w$-]*)\s*\(/gu)){let o=a[1];if(!ga(i,o,a.index))continue;let s=`reference\0${o}\0${r.startPosition.row}`;n.has(s)||(n.add(s),t.push(T(e,r,"builtin.capability-registry","registry.reference",[{name:"key",value:o,evidence:"literal"}],"exact","capability-instruction-reference")))}}),t}}}function ga(e,t,n){if(t.includes("_")||t.includes("-"))return!0;let r=e.slice(Math.max(0,n-64),n);return/\b(?:use|call|invoke|run|via|with|read|stop)(?:\s+the)?(?:\s+(?:tool|capability|command))?\s*$/iu.test(r)}function ha(){return{id:"builtin.registry",supports:e=>/(?:Handlers?|Registry|Routes?)\b/iu.test(e),extract:e=>{let t=[];return q(e.root,n=>{if(n.type==="pair"){let a=Fa(n);if(!a)return;let o=n.childForFieldName("key")??n.namedChild(0),s=n.childForFieldName("value")??n.namedChild(1),l=Vn(o,e);if(!l||!s||!qn(s))return;let c=Ft(s)?"exact":"candidate";t.push(T(e,n,"builtin.registry","registry.handle",[{name:"registry",value:a,evidence:"identifier"},{name:"key",...l}],H([{name:"key",...l}],c),"object-member"));return}if(n.type!=="call_expression")return;let r=n.childForFieldName("function")??n.namedChild(0);if(!r)return;let i=/^([A-Za-z_$][\w$]*)\s*\[\s*(['"`])([^'"`]+)\2\s*\]$/u.exec(r.text.trim());i&&t.push(T(e,n,"builtin.registry","registry.dispatch",[{name:"registry",value:i[1],evidence:"identifier"},{name:"key",value:i[3],evidence:"literal"}],"exact","indexed-access-call"))}),t}}}function Sa(){return{id:"builtin.persistence",supports:e=>/\b(?:db|database|prisma|drizzle|[A-Za-z_$][\w$]*(?:Repository|Repo))\b[^;]{0,1024}?\.\s*(?:findFirst|findMany|findUnique|from|get|select|create|delete|insert|remove|update|upsert|execute|query|raw|transaction)(?:\s*<[^()]{1,512}>)?\s*\(/iu.test(e),extract:e=>{let t=[],n=_a(e.root);return q(e.root,r=>{if(r.type!=="call_expression")return;let i=Re(r);if(!i)return;let a=i.split("."),o=a.at(-1)??"",s=J(r),l=s[0]?.text??"",c=Pa(o,l);if(!c)return;let u=Gn(a,n);if(!u)return;let d=ba(s[0],e)??La(l),p=Ba(u,a,o,d);if(!p)return;let f=o==="insert"?"persistence-insert":c==="database.read"&&/\bFOR\s+UPDATE\s+SKIP\s+LOCKED\b/iu.test(l)?"persistence-skip-locked-claim":"persistence-adapter";t.push(T(e,r,"builtin.persistence",c,[{name:"resource",...p}],H([{name:"resource",...p}]),f))}),t}}}function ba(e,t){if(!e)return null;let n=e.text.replace(/\s+/gu,"");return/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*)*$/u.test(n)?{value:n.split(".").at(-1),evidence:"identifier",term:{kind:"symbol",symbol:n}}:O(e,t)}function va(){return{id:"builtin.queue",supports:e=>xe(e,["amqplib","bullmq","kafkajs","@aws-sdk/client-sqs","rabbitmq"])&&/\.(?:sendToQueue|consume|send|subscribe)\s*\(/u.test(e),extract:e=>{let t=[];return q(e.root,n=>{if(n.type!=="call_expression")return;let r=Re(n);if(!r)return;let i=r.split(".").at(-1)??"",a=J(n),o=i==="sendToQueue"||i==="send"?"queue.send":i==="consume"||i==="subscribe"?"queue.consume":null;if(!o)return;let s=i==="send"||i==="subscribe"?wa(a[0],"topic",e):O(a[0],e);s&&t.push(T(e,n,"builtin.queue",o,[{name:"address",...s}],H([{name:"address",...s}]),"framework-adapter"))}),t}}}function T(e,t,n,r,i,a,o){let s=e.ownerAt(t.startPosition.row),l=JSON.stringify({extractor:n,action:r,file:e.file,line:t.startPosition.row,keyParts:i});return{id:`boundary:${oa("sha256").update(l).digest("hex").slice(0,16)}`,extractor:n,action:r,owner:s,source:{file:e.file,startLine:t.startPosition.row,endLine:t.endPosition.row},keyParts:i,evidence:o,strength:a,protocol:r.split(".")[0]??r,role:xa(r),executionDomain:Ra(e.file),derivation:{kind:a==="candidate"?"heuristic":a==="derived"?"mechanically-derived":"direct",rule:o,ruleVersion:"1",inputFactIds:i.flatMap(c=>c.derivation?.inputFactIds??[]),sourceSpans:[{file:e.file,startLine:t.startPosition.row,endLine:t.endPosition.row},...i.flatMap(c=>c.derivation?.sourceSpans??[])]},valuePrecision:i.some(c=>c.evidence==="expression")?"unknown":i.some(c=>c.evidence==="identifier")?"symbolic":"literal",modality:"may",resolution:"unresolved",sourceScope:ze(e.file)}}function xa(e){let t=e.split(".").at(-1)??e;return["handle","subscribe","consume","read"].includes(t)?"consumer":["request","publish","send","write","dispatch","reference","invoke","spawn","exec"].includes(t)?"producer":"observe"}function Ra(e){let t=e.replaceAll("\\","/"),n=/^(apps|services|packages)\/([^/]+)/u.exec(t);return n?`${n[1]}/${n[2]}`:null}function xe(e,t){return t.some(n=>{let r=n.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&");return new RegExp(`(?:\\bfrom\\s+${r}\\b|\\buse\\s+${r}\\b|(?:\\bfrom\\s*|\\brequire\\s*\\(\\s*)['"]${r}(?:[/']|"))`,"u").test(e)})}function Ia(e,t){let n=new Set;for(let r of t){let i=r.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),a=new RegExp(`(?:import\\s+([A-Za-z_$][\\w$]*)[^;]*?\\sfrom\\s*|(?:const|let)\\s+([A-Za-z_$][\\w$]*)\\s*=\\s*require\\s*\\(\\s*)['"]${i}(?:[/']|")`,"gu");for(let o of e.matchAll(a)){let s=o[1]??o[2];s&&n.add(s)}}return n}function Ze(e,t,n,r,i,a,o){return T(e,t,n,r,i,a,o)}function Re(e){return(e.childForFieldName("function")??e.namedChild(0))?.text.replace(/\s+/gu,"")??null}function J(e){return(e.childForFieldName("arguments")??e.namedChildren.find(n=>n.type==="arguments"))?.namedChildren??[]}function O(e,t){let n=V(t,e);return n?{value:n.value,evidence:n.evidence,term:n.term,derivation:n.derivation}:null}function wa(e,t,n){if(!e)return null;let r=e.namedChildren.find(a=>a.type!=="pair"?!1:(a.childForFieldName("key")??a.namedChild(0))?.text.replace(/^['"`]|['"`]$/gu,"")===t),i=r?.childForFieldName("value")??r?.namedChild(1);return O(i,n)}function Vn(e,t){if(!e)return null;let n=O(e,t);if(n?.evidence==="literal"||n?.evidence==="constant")return n;let r=e.text.trim();return/^[A-Za-z_$][\w$]*$/u.test(r)?{value:r,evidence:"identifier",term:{kind:"symbol",symbol:r}}:n}function H(e,t="exact"){return t==="candidate"||e.some(n=>n.evidence==="expression")?"candidate":t==="derived"||e.some(n=>n.evidence==="constant")?"derived":"exact"}function Ca(e){let t=e.text.trim(),n=t[0];if(n!=="'"&&n!=='"'&&n!=="`"||t.at(-1)!==n)return null;let r=t.slice(1,-1);return n==="`"&&r.includes("${")?null:r}function Na(e){let t=new Map;return q(e,n=>{if(n.type!=="variable_declarator")return;let r=n.childForFieldName("name")??n.namedChild(0),i=n.childForFieldName("value")??n.namedChild(1);if(!r||!i||!/^[A-Za-z_$][\w$]*$/u.test(r.text))return;let a=Ca(i);a!==null&&t.set(r.text,a)}),t}function Fa(e){let t=e.parent,n=t?.parent??null;for(;n&&["as_expression","satisfies_expression","type_assertion","parenthesized_expression"].includes(n.type);)n=n.parent;if(!t||!n||n.type!=="variable_declarator")return null;let i=(n.childForFieldName("name")??n.namedChild(0))?.text??"";return/(?:handlers?|registry|routes?)$/iu.test(i)?i:null}function Ft(e){return/(?:function|lambda|method)/u.test(e.type)||e.type==="arrow_function"}function qn(e){return Ft(e)||e.type==="member_expression"?!0:e.type==="identifier"&&/(?:command|controller|dispatch|handle|handler)/iu.test(e.text)}function Ea(e){let t=e.parent;for(;t&&t.type!=="variable_declarator";){if(["object","object_literal","dictionary"].includes(t.type))for(let n of t.namedChildren){if(n.type==="pair"){let i=n.childForFieldName("key")??n.namedChild(0),a=n.childForFieldName("value")??n.namedChild(1),o=i?.text.replace(/^['"`]|['"`]$/gu,"");if(o&&["execute","handler","invoke","run"].includes(o)&&a&&qn(a))return t}let r=n.childForFieldName("name")??n.namedChild(0);if(r&&["execute","handler","invoke","run"].includes(r.text.replace(/^['"`]|['"`]$/gu,""))&&/(?:function|method)/u.test(n.type))return t}t=t.parent}return null}function Gn(e,t=new Set){let n=e.slice(0,-1).map(r=>r.replace(/\([^)]*\)/gu,""));return n.some(r=>/^(?:prisma|drizzle)$/iu.test(r))?"orm":n.some(r=>/(?:Repository|Repo)$/u.test(r))?"repository":n.some(r=>/^(?:db|database)$/iu.test(r)||t.has(r))?"database":null}function Pa(e,t){if(la.has(e))return"database.read";if(ca.has(e))return"database.write";if(!ua.has(e))return null;let n=/\b(SELECT|INSERT|UPDATE|DELETE)\b/iu.exec(t)?.[1]?.toUpperCase();return n==="SELECT"?"database.read":n?"database.write":null}function _a(e){let t=new Set;return q(e,n=>{if(n.type!=="call_expression")return;let r=Re(n);if(!r)return;let i=r.split(".");if(!(i.at(-1)!=="transaction"||!Gn(i)))for(let a of J(n)){if(!Ft(a))continue;let s=(a.childForFieldName("parameters")??a.namedChildren.find(c=>/parameters/u.test(c.type)))?.namedChildren[0],l=s?Hn(s):null;l&&t.add(l)}}),t}function Hn(e){if(e.type==="identifier")return e.text;let t=e.childForFieldName("name")??e.childForFieldName("pattern");return t?Hn(t):e.namedChildren.find(n=>n.type==="identifier")?.text??null}function La(e){let t=zn(e);return t?{value:t,evidence:"identifier",term:{kind:"symbol",symbol:t}}:null}function Ba(e,t,n,r){if(e==="orm"&&t.length>=3)return{value:t.at(-2).replace(/\([^)]*\)/gu,""),evidence:"identifier"};if(e==="repository"){let a=t.at(-2)?.replace(/(?:Repository|Repo)$/u,"");return a?{value:a,evidence:"identifier"}:null}if(!r)return null;if(n==="from"||n==="insert")return r;let i=zn(r.value);return i?{value:i,evidence:r.evidence}:null}function zn(e){return/\b(?:from|into|update|table)\s+(?:\$\{\s*)?['"`]?([A-Za-z_$][\w$.-]*)/iu.exec(e)?.[1]??null}function q(e,t){t(e);for(let n of e.namedChildren)q(n,t)}var Ta=$("resolved-call-syntax",{clearGroups:[]}),ka=$("resolved-call-sites",{clearGroups:[]});function Ie(e,t){return ka.get(e,t.symbolId,()=>$a(e,t))}function $a(e,t){let n=[],r=[],i=new Set,a=new Set;for(let o of gt(e,t,{semantic:!1})){i.add(o.file);let s=Ta.get(e,o.file,()=>Aa(e,o.file));if(!s){r.push({callee:t,file:o.file,line:o.line,reason:"ast-unavailable",candidates:0,referenceProvenance:o.provenance});continue}let l=(s.byLeaf.get(t.leaf)??[]).filter(({callNode:d})=>d.startPosition.row<=o.line&&d.endPosition.row>=o.line);if(l.length!==1){r.push({callee:t,file:o.file,line:o.line,reason:l.length===0?"call-not-found":"ambiguous-call",candidates:l.length,referenceProvenance:o.provenance});continue}let c=l[0],u=`${o.file}\0${c.callNode.startIndex}\0${c.callNode.endIndex}`;a.has(u)||(a.add(u),n.push({callee:t,caller:ae(N(e,o.file),c.callNode.startPosition.row),file:o.file,line:o.line,startLine:c.callNode.startPosition.row,endLine:c.callNode.endPosition.row,targetText:c.targetNode.text,callNode:c.callNode,targetNode:c.targetNode,arguments:c.arguments,referenceProvenance:o.provenance}))}return{sites:n,unresolved:r,filesVisited:i.size}}function Aa(e,t){let n=D(e,t)?.rootNode;if(!n)return null;let r=new Map;return Un(n,i=>{if(i.type!=="call_expression"&&i.type!=="call")return;let a=i.childForFieldName("function")??i.namedChild(0);if(!a)return;let o=nn(a);if(!o)return;let s=i.childForFieldName("arguments")??i.namedChildren.find(u=>u.type==="arguments"),l={callNode:i,targetNode:a,arguments:s?.namedChildren??[]},c=r.get(o);c?c.push(l):r.set(o,[l])}),{byLeaf:r}}function Un(e,t){t(e);for(let n of e.namedChildren)Un(n,t)}var Da=$("call-parameter-value-flow",{clearGroups:[]});function we(e,t){let n=`${t.callee.symbolId}\0${t.file}\0${t.callNode.startIndex}\0${t.callNode.endIndex}`;return Da.get(e,n,()=>Ma(e,t))}function Ce(e,t){let n=new Set(t);return[...new Set(e.transfers.flatMap(r=>n.has(r.calleePosition)?[r.callerPosition]:[]))].sort((r,i)=>r-i)}function Ma(e,t){let n={file:t.file,startLine:t.startLine,endLine:t.endLine};if(!t.caller)return{callee:t.callee,caller:null,call:n,transfers:[],unknown:t.arguments.map((l,c)=>({calleePosition:c,argumentText:l.text.trim(),reason:"caller-unavailable",proof:n}))};let r=D(e,t.caller.relativePath)?.rootNode,i=r?Oa(r,t.caller.startLine,t.caller.endLine):null;if(!i)return{callee:t.callee,caller:t.caller,call:n,transfers:[],unknown:t.arguments.map((l,c)=>({calleePosition:c,argumentText:l.text.trim(),reason:"caller-syntax-unavailable",proof:n}))};let a=ja(i),o=[],s=[];return t.arguments.forEach((l,c)=>{let u=l.text.trim(),d=a.indexOf(u);d>=0?o.push({calleePosition:c,callerPosition:d,argumentText:u,proof:n}):s.push({calleePosition:c,argumentText:u,reason:"argument-not-direct-parameter",proof:n})}),{callee:t.callee,caller:t.caller,call:n,transfers:o,unknown:s}}function Oa(e,t,n){let r=null;return Kn(e,i=>{!/(?:function|method|lambda)/u.test(i.type)&&i.type!=="arrow_function"||i.startPosition.row>t||i.endPosition.row<n||(!r||i.endIndex-i.startIndex<r.endIndex-r.startIndex)&&(r=i)}),r}function ja(e){return(e.childForFieldName("parameters")??e.namedChildren.find(n=>/parameters/u.test(n.type)))?.namedChildren.map(Wn)??[]}function Wn(e){if(e.type==="identifier")return e.text;let t=e.childForFieldName("name")??e.childForFieldName("pattern");return t?Wn(t):e.namedChildren.find(n=>n.type==="identifier")?.text??null}function Kn(e,t){t(e);for(let n of e.namedChildren)Kn(n,t)}var Va=8,qa=8;function Xn(e,t){let n=[],r=Ga(e,n),i=r.summaries,a=Ha(e,t,i,n),o=za(e,t,n);return{observations:no([...a.observations,...o]),bodySummaries:i.size,discriminatorSummaries:a.summaries,filesInspected:r.filesInspected,errors:n}}function Ga(e,t){let n=new Map,r=[],i=z(e);for(let a of i){let o=L(e,a);if(!/\bJSON\.stringify\s*\(/u.test(o)||!/\bbody\s*:/u.test(o))continue;let s=k(e,a);if(s)for(let[l,c]of Ua(s)){let u={definition:l,parameterIndexes:c,depth:0,proofSpans:[{file:a,startLine:l.startLine,endLine:l.endLine}]};n.set(l.symbol,u),r.push(u)}}for(;r.length>0;){let a=r.shift();if(!(a.depth>=Va))try{for(let o of Ie(e,a.definition).sites){if(!k(e,o.file))continue;let l=o.caller;if(!l)continue;let c=Ce(we(e,o),a.parameterIndexes);if(c.length===0)continue;let u={definition:l,parameterIndexes:rr(c),depth:a.depth+1,proofSpans:[...a.proofSpans,{file:o.file,startLine:o.startLine,endLine:o.endLine}]};Xa(n,u)&&r.push(n.get(l.symbol))}}catch(o){t.push(`builtin.carrier body summary failed for ${a.definition.relativePath}: ${Lt(o)}`)}}return{summaries:n,filesInspected:i.length}}function Ha(e,t,n,r){let i=new Map,a=[],o=[];for(let s of t){if(s.action!=="http.request"||s.strength==="candidate"||s.sourceScope!=="production")continue;let l=Qn(s);if(!l)continue;let c=k(e,s.source.file);if(!c)continue;let u=er(c.root,s.source.startLine),d=u.find(v=>v.startPosition.row===s.source.startLine)??u[0];if(!d)continue;let p=_t(d);if(!p)continue;let f=ce(e,s.source.file,p.text);if(f.length!==1)continue;let m=n.get(f[0].symbol);if(!m)continue;let g=s.owner.symbol?N(e,s.owner.file).find(v=>v.symbol===s.owner.symbol):null;if(!g)continue;let b=Qa(c,g),h=Qe(d);for(let v of m.parameterIndexes){let F=Ya(c,h[v]);if(F)for(let x of eo(F)){let w=tr(x),y=nr(x);if(!w||!y)continue;let R=b.indexOf(y.text.trim());if(R>=0){let E={definition:g,carrier:l,field:w,parameterIndex:R,depth:0,proofObservationIds:[s.id],proofSpans:[s.source,{file:s.source.file,startLine:x.startPosition.row,endLine:x.endPosition.row}]},_=Zn(E);i.has(_)||(i.set(_,E),a.push(E));continue}let I=V(c,y);!I||I.evidence==="expression"||o.push(Pt(c,x,"carrier.publish",l,w,I.value,[s.id]))}}}for(;a.length>0;){let s=a.shift();if(!(s.depth>=qa))try{for(let l of Ie(e,s.definition).sites){let c=k(e,l.file);if(!c)continue;let u=l.callNode,d=Qe(u)[s.parameterIndex];if(!d)continue;let p=V(c,d);p&&p.evidence!=="expression"&&o.push(Pt(c,u,"carrier.publish",s.carrier,s.field,p.value,s.proofObservationIds));let f=l.caller;if(!f)continue;let m=we(e,l).transfers.find(h=>h.calleePosition===s.parameterIndex)?.callerPosition;if(m===void 0)continue;let g={...s,definition:f,parameterIndex:m,depth:s.depth+1,proofSpans:[...s.proofSpans,{file:l.file,startLine:l.startLine,endLine:l.endLine}]},b=Zn(g);i.has(b)||(i.set(b,g),a.push(g))}}catch(l){r.push(`builtin.carrier discriminator summary failed for ${s.definition.relativePath}: ${Lt(l)}`)}}return{observations:o,summaries:i.size}}function za(e,t,n){let r=[],i=t.filter(a=>a.action==="registry.handle"&&a.strength!=="candidate"&&a.sourceScope==="production");for(let a of t){if(a.action!=="http.handle"||a.strength==="candidate"||a.sourceScope!=="production")continue;let o=Qn(a);if(!o)continue;let s=k(e,a.source.file);if(!s)continue;let l=er(s.root,a.source.startLine)[0];if(l)for(let c of Qe(l).slice(1)){let u=ce(e,a.source.file,c.text);for(let d of u)try{let p=k(e,d.relativePath);if(!p)continue;let f=Xe(p.root,d.startLine,d.endLine);if(!f)continue;K(f,m=>{if(m.type!=="call_expression")return;let g=_t(m);if(!g)return;let b=/^([A-Za-z_$][\w$]*)\s*\[\s*([A-Za-z_$][\w$]*)\s*\]$/u.exec(g.text.trim());if(!b)return;let h=b[1],v=b[2],F=Ka(e,p,d,v);if(!F)return;let x=Za(e,d.relativePath,h);for(let w of i){let y=w.keyParts.find(_=>_.name==="registry")?.value,R=w.keyParts.find(_=>_.name==="key")?.value;if(!y||!R||!x.some(_=>_.file===w.source.file&&_.binding===y))continue;let I=k(e,w.source.file),E=I?Ja(I.root,w.source.startLine):null;!I||!E||r.push(Pt(I,E,"carrier.consume",o,F,R,[a.id,w.id]))}})}catch(p){n.push(`builtin.carrier consumer analysis failed for ${d.relativePath}: ${Lt(p)}`)}}}return r}function Ua(e){let t=N(e.db,e.file),n=new Map;return K(e.root,r=>{if(r.type!=="pair"||tr(r)?.toLowerCase()!=="body")return;let i=nr(r);if(!i||!/\bJSON\.stringify\s*\(/u.test(i.text))return;let a=ae(t,r.startPosition.row),o=Wa(r);if(!a||!o)return;let s=Jn(o),l=new Set;to(i,s,l);let c=n.get(a.symbol)??new Set;s.forEach((u,d)=>{u&&l.has(u)&&c.add(d)}),c.size>0&&n.set(a.symbol,c)}),t.flatMap(r=>{let i=n.get(r.symbol);return i?[[r,[...i].sort((a,o)=>a-o)]]:[]})}function Wa(e){let t=e.parent;for(;t;){if(/(?:function|method|lambda)/u.test(t.type)||t.type==="arrow_function")return t;t=t.parent}return null}function Ka(e,t,n,r){let i=Xe(t.root,n.startLine,n.endLine);if(!i)return null;let a=new RegExp(`\\.body\\??\\.${Et(r)}\\b`,"u");if(a.test(i.text))return r;let o=null;if(K(i,u=>{if(o||u.type!=="variable_declarator")return;let d=u.childForFieldName("name")??u.namedChild(0),p=u.childForFieldName("value")??u.namedChild(1);!d||!p||!new RegExp(`(?:^|[,{}])\\s*${Et(r)}\\s*(?:[,}]|$)`,"u").test(d.text)||p.type==="call_expression"&&(o=_t(p)?.text??null)}),!o)return null;let s=ce(e,n.relativePath,o);if(s.length!==1)return null;let l=k(e,s[0].relativePath),c=l?Xe(l.root,s[0].startLine,s[0].endLine):null;return c&&a.test(c.text)&&new RegExp(`\\b${Et(r)}\\s*[,}]`,"u").test(c.text)?r:null}function Za(e,t,n){let r=[];for(let i of vt(e,t,n)){let a=Ne(i.initializer);if(a.type==="call_expression")for(let o of Qe(a)){let s=o.text.trim();if(/^[A-Za-z_$][\w$]*$/u.test(s))for(let l of vt(e,i.definition.relativePath,s))r.push({file:l.definition.relativePath,binding:l.definition.leaf})}}return[...new Map(r.map(i=>[`${i.file}\0${i.binding}`,i])).values()]}function Pt(e,t,n,r,i,a,o){let l=Ze(e,t,"builtin.carrier",n,[{name:"carrier",value:r,evidence:"constant",term:{kind:"literal",value:r}},{name:"field",value:i,evidence:"literal",term:{kind:"literal",value:i}},{name:"value",value:a,evidence:"constant",term:{kind:"literal",value:a}}],"derived","http-body-registry-discriminator");return l.derivation={kind:"mechanically-derived",rule:"http-body-registry-discriminator",ruleVersion:"1",inputFactIds:[...o],sourceSpans:[l.source]},l}function Qn(e){let t=e.keyParts.find(r=>r.name==="method"&&r.evidence!=="expression")?.value,n=e.keyParts.find(r=>r.name==="path"&&r.evidence!=="expression")?.value;return t&&n?`${t.toUpperCase()} ${n}`:null}function Xa(e,t){let n=e.get(t.definition.symbol);if(!n)return e.set(t.definition.symbol,t),!0;let r=rr([...n.parameterIndexes,...t.parameterIndexes]);return r.length===n.parameterIndexes.length&&t.depth>=n.depth?!1:(e.set(t.definition.symbol,{...n,parameterIndexes:r,depth:Math.min(n.depth,t.depth),proofSpans:[...n.proofSpans,...t.proofSpans]}),!0)}function Zn(e){return`${e.definition.symbol}\0${e.carrier}\0${e.field}\0${e.parameterIndex}`}function Qa(e,t){let n=Xe(e.root,t.startLine,t.endLine);return n?Jn(n):[]}function Jn(e){return(e.childForFieldName("parameters")??e.namedChildren.find(n=>/parameters/u.test(n.type)))?.namedChildren.map(Yn)??[]}function Yn(e){if(e.type==="identifier")return e.text;let t=e.childForFieldName("name")??e.childForFieldName("pattern");return t?Yn(t):e.namedChildren.find(n=>n.type==="identifier")?.text??null}function Xe(e,t,n){let r=null;return K(e,i=>{!/(?:function|method|lambda)/u.test(i.type)&&i.type!=="arrow_function"||i.startPosition.row>t||i.endPosition.row<n||(!r||i.endIndex-i.startIndex<r.endIndex-r.startIndex)&&(r=i)}),r}function Ja(e,t){let n=null;return K(e,r=>{r.startPosition.row>t||r.endPosition.row<t||(!n||r.endIndex-r.startIndex<n.endIndex-n.startIndex)&&(n=r)}),n}function er(e,t){let n=[];return K(e,r=>{r.type==="call_expression"&&r.startPosition.row<=t&&r.endPosition.row>=t&&n.push(r)}),n.sort((r,i)=>r.endIndex-r.startIndex-(i.endIndex-i.startIndex))}function _t(e){return e.childForFieldName("function")??e.namedChild(0)}function Qe(e){return(e.childForFieldName("arguments")??e.namedChildren.find(n=>n.type==="arguments"))?.namedChildren??[]}function Ya(e,t){if(!t)return null;let n=t.text.trim();if(!/^[A-Za-z_$][\w$]*$/u.test(n))return Ne(t);let r=null;return K(e.root,i=>{r||i.type!=="variable_declarator"||(i.childForFieldName("name")??i.namedChild(0))?.text.trim()!==n||(r=i.childForFieldName("value")??i.namedChild(1))}),Ne(r||t)}function eo(e){let t=Ne(e);return t.type==="object"?t.namedChildren.filter(n=>n.type==="pair"||n.type==="shorthand_property_identifier"):[]}function tr(e){return e.type==="shorthand_property_identifier"?e.text:(e.childForFieldName("key")??e.namedChild(0))?.text.replace(/^['"`]|['"`]$/gu,"")??null}function nr(e){return e.type==="shorthand_property_identifier"?e:e.childForFieldName("value")??e.namedChild(1)}function Ne(e){let t=e;for(;["as_expression","satisfies_expression","type_assertion","parenthesized_expression"].includes(t.type)&&t.namedChildren.length>0;)t=t.namedChildren[0];return t}function to(e,t,n){let r=new Set(e.text.match(/[A-Za-z_$][\w$]*/gu)??[]);for(let i of t)i&&r.has(i)&&n.add(i)}function rr(e){return[...new Set(e)].sort((t,n)=>t-n)}function no(e){return[...new Map(e.map(t=>[t.id,t])).values()]}function Et(e){return e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&")}function Lt(e){return e instanceof Error?e.message:String(e)}function K(e,t){t(e);for(let n of e.namedChildren)K(n,t)}import{createHash as ro}from"crypto";function ir(e,t){let n=new Map;for(let a of t){if(a.action!=="http.handle"||a.sourceScope!=="production")continue;let o=n.get(a.source.file)??[];o.push(a),n.set(a.source.file,o)}let r=[],i=io(e);for(let a of i.mounts)for(let o of a.targetFiles)for(let s of n.get(o)??[]){let l=s.keyParts.find(p=>p.name==="path");if(!l||l.evidence==="expression")continue;let c=oo(a.prefix.value,l.value),u=s.keyParts.map(p=>p.name==="path"?{name:"path",value:c,evidence:"constant",term:{kind:"concat",parts:[a.prefix.term??{kind:"literal",value:a.prefix.value},l.term??{kind:"literal",value:l.value}]},derivation:{kind:"mechanically-derived",rule:"http.mount-prefix",ruleVersion:"1",inputFactIds:[s.id],sourceSpans:[s.source,{file:a.file,startLine:a.line,endLine:a.line},...a.prefix.derivation?.sourceSpans??[],...l.derivation?.sourceSpans??[]]}}:p),d=`${s.id}\0${a.file}\0${a.line}\0${c}`;r.push({...s,id:`boundary:${ro("sha256").update(d).digest("hex").slice(0,16)}`,keyParts:u,strength:"derived",evidence:"framework-mount-composition",derivation:{kind:"mechanically-derived",rule:"http.mount-prefix",ruleVersion:"1",inputFactIds:[s.id],sourceSpans:[s.source,{file:a.file,startLine:a.line,endLine:a.line}]},resolution:"unresolved"}),s.strength="candidate",s.resolution="unresolved"}return{observations:r,filesInspected:i.filesInspected,mounts:i.mounts.length}}function io(e){let t=[],n=z(e);for(let r of n){let i=L(e,r);if(!so(i))continue;let a=k(e,r);a&&ar(a.root,o=>{if(o.type!=="call_expression")return;let s=o.childForFieldName("function")??o.namedChild(0);if(!s||!/\.use$/u.test(s.text.replace(/\s+/gu,"")))return;let l=lo(o);if(l.length<2)return;let c=V(a,l[0]);if(!c||c.evidence==="expression")return;let u=ao(e,r,l[1]);u.length!==0&&t.push({file:r,line:o.startPosition.row,prefix:{value:c.value,evidence:c.evidence,term:c.term,derivation:c.derivation},targetFiles:u})})}return{mounts:t,filesInspected:n.length}}function ao(e,t,n){let r=n.text.replace(/\s+/gu,""),i=/^([A-Za-z_$][\w$]*)/u.exec(r)?.[1];if(!i)return[];let a=A(e,t).find(l=>l.localName===i&&l.sourcePath);if(!a?.sourcePath)return[t];if(a.kind==="namespace")return[a.sourcePath];let o=a.importedName==="default"?i:a.importedName,s=Q(e,a.sourcePath,o);return[...new Set(s.map(l=>l.relativePath))]}function oo(e,t){let n=e==="/"?"":e.replace(/\/+$/u,""),r=t.startsWith("/")?t:`/${t}`;return`${n}${r}`||"/"}function so(e){return/(?:\bfrom\s*|\brequire\s*\(\s*)['"](?:express|fastify|hono|koa-router|@koa\/router)(?:[/']|")/u.test(e)}function lo(e){return(e.childForFieldName("arguments")??e.namedChildren.find(n=>n.type==="arguments"))?.namedChildren??[]}function ar(e,t){t(e);for(let n of e.namedChildren)ar(n,t)}import{createHash as co}from"crypto";var Bt=new Set(["DELETE","GET","HEAD","OPTIONS","PATCH","POST","PUT"]),uo=8;function lr(e,t){let n=new Map,r=[],i=[],a=new Set,o=[],s=[];for(let l of t){if(l.action!=="http.request"||!l.owner.symbol||l.evidence!=="call-expression"&&l.evidence!=="client-adapter")continue;let c=N(e,l.owner.file).find(f=>f.symbol===l.owner.symbol);if(!c)continue;let u=k(e,c.relativePath);if(!u)continue;let d=or(u,c),p={definition:c,...d,constantMethods:l.keyParts.flatMap(f=>f.name==="method"&&f.evidence!=="expression"&&Bt.has(f.value.toUpperCase())?[f.value.toUpperCase()]:[]),depth:0,proofObservationIds:[l.id],proofSpans:[l.source]};sr(n,p)&&r.push(n.get(c.symbol))}for(;r.length>0;){let l=r.shift();if(!(l.depth>=uo))try{let c=Ie(e,l.definition);s.push(...c.unresolved.map(u=>po(l,u)));for(let u of c.sites){let d=k(e,u.file);if(!d)continue;a.add(u.file);let p=u.callNode,f=mo(l,p,d);f&&i.push(f);let m=u.caller;if(!m)continue;let g=or(d,m),b=yo(e,l,u),h={definition:m,pathParameterIndexes:Je([...g.pathParameterIndexes,...b.pathParameterIndexes]),methodParameterIndexes:Je([...g.methodParameterIndexes,...b.methodParameterIndexes]),constantMethods:de([...l.constantMethods,...g.constantMethods]),depth:l.depth+1,proofObservationIds:de([...l.proofObservationIds,...f?[f.id]:[]]),proofSpans:[...l.proofSpans,{file:u.file,startLine:u.startLine,endLine:u.endLine}]};sr(n,h)&&r.push(n.get(m.symbol))}}catch(c){o.push(`builtin.http-summary failed for ${l.definition.relativePath}:${l.definition.startLine+1}: ${c instanceof Error?c.message:String(c)}`)}}return{observations:i,frontiers:fo(s),summaries:n.size,filesInspected:a.size,errors:o}}function po(e,t){let n=de([...e.pathParameterIndexes.length>0?["path"]:[],...e.methodParameterIndexes.length>0&&e.constantMethods.length!==1?["method"]:[]]),r=e.constantMethods.length===1?e.constantMethods[0]:"?",i=`${e.definition.symbol}\0${t.file}\0${t.line}\0${t.reason}`;return{observationId:`frontier:${co("sha256").update(i).digest("hex").slice(0,16)}`,kind:"call-resolution",action:"http.request",strength:"candidate",source:{file:t.file,startLine:t.line,endLine:t.line},ownerShortName:null,address:`method=${r??"?"} path=?`,reason:`Compiler identity found a reference to ${e.definition.leaf}, but exact call recovery stopped with ${t.reason} (${t.candidates} syntax candidate(s)); HTTP value propagation did not cross this site.`,missingKeyParts:n.length>0?n:["call"],sourceScope:ze(t.file)}}function fo(e){return[...new Map(e.map(t=>[t.observationId,t])).values()].sort((t,n)=>t.observationId.localeCompare(n.observationId))}function mo(e,t,n){let r=ur(t),i=e.pathParameterIndexes.flatMap(d=>{let p=V(n,r[d]);return p&&p.evidence!=="expression"&&bo(p.value)?[{index:d,value:p}]:[]}),a=e.methodParameterIndexes.flatMap(d=>{let p=V(n,r[d]),f=p?.value.toUpperCase();return p&&f&&p.evidence!=="expression"&&Bt.has(f)?[{index:d,value:{...p,value:f}}]:[]}),o=de([...e.constantMethods,...a.map(d=>d.value.value)]);if(i.length!==1||o.length!==1)return null;let s=i[0].value,l=a.find(d=>d.value.value===o[0])?.value,c=[{name:"method",value:o[0],evidence:l?"constant":"literal",term:l?.term??{kind:"literal",value:o[0]},derivation:l?.derivation},{name:"path",value:s.value,evidence:"constant",term:s.term,derivation:s.derivation}],u=Ze(n,t,"builtin.http-summary","http.request",c,"derived","compiler-resolved-http-summary");return u.derivation={kind:"mechanically-derived",rule:"compiler-resolved-http-summary",ruleVersion:"1",inputFactIds:e.proofObservationIds,sourceSpans:[...e.proofSpans,u.source]},u}function or(e,t){let n=So(e.root,t.startLine,t.endLine);if(!n)return{pathParameterIndexes:[],methodParameterIndexes:[],constantMethods:[]};let r=ho(n),i=new Set,a=new Set,o=new Set;return Tt(n,s=>{if(s.type==="call_expression"&&((s.childForFieldName("function")??s.namedChild(0))?.text.replace(/\s+/gu,"").split(".").at(-1)??"")==="fetch"){let f=ur(s);Fe(f[0],r,i);let m=go(f[1],"method");if(m){Fe(m,r,a);let g=V(e,m),b=g?.value.toUpperCase();b&&g?.evidence!=="expression"&&Bt.has(b)&&o.add(b)}else Fe(f[1],r,a)}if(s.type!=="pair")return;let l=s.childForFieldName("key")??s.namedChild(0),c=s.childForFieldName("value")??s.namedChild(1),u=l?.text.replace(/^['"`]|['"`]$/gu,"").toLowerCase();(u==="url"||u==="path"||u==="endpoint")&&Fe(c,r,i),(u==="init"||u==="requestinit"||u==="options")&&Fe(c,r,a)}),{pathParameterIndexes:r.flatMap((s,l)=>s&&i.has(s)?[l]:[]),methodParameterIndexes:r.flatMap((s,l)=>s&&a.has(s)?[l]:[]),constantMethods:[...o].sort()}}function yo(e,t,n){let r=we(e,n);return{pathParameterIndexes:Ce(r,t.pathParameterIndexes),methodParameterIndexes:Ce(r,t.methodParameterIndexes)}}function sr(e,t){let n=e.get(t.definition.symbol);if(!n)return e.set(t.definition.symbol,t),!0;let r=Je([...n.pathParameterIndexes,...t.pathParameterIndexes]),i=Je([...n.methodParameterIndexes,...t.methodParameterIndexes]),a=de([...n.constantMethods,...t.constantMethods]);return r.length!==n.pathParameterIndexes.length||i.length!==n.methodParameterIndexes.length||a.length!==n.constantMethods.length||t.depth<n.depth?(e.set(t.definition.symbol,{...n,pathParameterIndexes:r,methodParameterIndexes:i,constantMethods:a,depth:Math.min(n.depth,t.depth),proofObservationIds:de([...n.proofObservationIds,...t.proofObservationIds]),proofSpans:[...n.proofSpans,...t.proofSpans]}),!0):!1}function go(e,t){if(!e)return null;for(let n of e.namedChildren)if(!(n.type!=="pair"||(n.childForFieldName("key")??n.namedChild(0))?.text.replace(/^['"`]|['"`]$/gu,"").toLowerCase()!==t))return n.childForFieldName("value")??n.namedChild(1);return null}function Fe(e,t,n){if(!e)return;let r=new Set(e.text.match(/[A-Za-z_$][\w$]*/gu)??[]);for(let i of t)i&&r.has(i)&&n.add(i)}function ho(e){return(e.childForFieldName("parameters")??e.namedChildren.find(n=>/parameters/u.test(n.type)))?.namedChildren.map(cr)??[]}function cr(e){if(e.type==="identifier")return e.text;let t=e.childForFieldName("name")??e.childForFieldName("pattern");return t?cr(t):e.namedChildren.find(n=>n.type==="identifier")?.text??null}function So(e,t,n){let r=null;return Tt(e,i=>{!/(?:function|method|lambda)/u.test(i.type)&&i.type!=="arrow_function"||i.startPosition.row>t||i.endPosition.row<n||(!r||i.endIndex-i.startIndex<r.endIndex-r.startIndex)&&(r=i)}),r}function ur(e){return(e.childForFieldName("arguments")??e.namedChildren.find(n=>n.type==="arguments"))?.namedChildren??[]}function bo(e){return e.startsWith("/")||/^https?:\/\//iu.test(e)}function Je(e){return[...new Set(e)].sort((t,n)=>t-n)}function de(e){return[...new Set(e)].sort()}function Tt(e,t){t(e);for(let n of e.namedChildren)Tt(n,t)}import{createHash as vo}from"crypto";function fr(e){let t=dr(e.filter(r=>r.action==="database.read"&&r.evidence==="persistence-skip-locked-claim")),n=dr(e.filter(r=>r.action==="database.write"&&r.evidence==="persistence-insert"));return e.flatMap(r=>r.action==="database.write"&&r.evidence==="persistence-insert"?kt(r).flatMap(i=>{let a=t.get(i)?.[0];return a?[pr(r,a,i,"queue.send")]:[]}):r.action==="database.read"&&r.evidence==="persistence-skip-locked-claim"?kt(r).flatMap(i=>{let a=n.get(i)?.[0];return a?[pr(r,a,i,"queue.consume")]:[]}):[])}function dr(e){let t=new Map;for(let n of e)for(let r of kt(n)){let i=t.get(r);i?i.push(n):t.set(r,[n])}for(let n of t.values())n.sort((r,i)=>r.id.localeCompare(i.id));return t}function kt(e){return e.keyParts.filter(t=>t.name==="resource").map(t=>t.value)}function pr(e,t,n,r){let i=`database:${n}`,a=r==="queue.send"?"database-queue-insert":"database-queue-skip-locked-claim",o=[e.id,r,i,a].join("\0");return{...e,id:`boundary:${vo("sha256").update(o).digest("hex").slice(0,16)}`,extractor:"builtin.database-queue",action:r,keyParts:[{name:"address",value:i,evidence:"identifier",term:{kind:"symbol",symbol:n},derivation:{kind:"mechanically-derived",rule:"database-work-queue.resource",ruleVersion:"1",inputFactIds:[e.id,t.id],sourceSpans:[e.source,t.source]}}],evidence:a,strength:"derived",protocol:"queue",role:r==="queue.send"?"producer":"consumer",derivation:{kind:"mechanically-derived",rule:"database-work-queue.insert-skip-locked",ruleVersion:"1",inputFactIds:[e.id,t.id],sourceSpans:[e.source,t.source]},valuePrecision:"symbolic",resolution:"unresolved"}}var $t="runtime-boundaries-v15",tt=[{id:"http.method-path",protocol:"http",producerActions:["http.request"],consumerActions:["http.handle"],keyNames:["method","path"],traversable:!0},{id:"registry.identity-key",protocol:"registry",producerActions:["registry.dispatch"],consumerActions:["registry.handle"],keyNames:["registry","key"],traversable:!0},{id:"registry.capability-key",protocol:"registry",producerActions:["registry.reference"],consumerActions:["registry.handle"],keyNames:["key"],traversable:!0,requireUniqueConsumer:!0},{id:"queue.address",protocol:"queue",producerActions:["queue.send"],consumerActions:["queue.consume"],keyNames:["address"],traversable:!0},{id:"carrier.discriminator",protocol:"carrier",producerActions:["carrier.publish"],consumerActions:["carrier.consume"],keyNames:["carrier","field","value"],traversable:!0},{id:"resource.identity",protocol:"database",producerActions:["database.write"],consumerActions:["database.read"],keyNames:["resource"],traversable:!1},{id:"framework.effect-httpapi-operation",protocol:"framework",producerActions:[],consumerActions:["framework.handle"],declarationActions:["framework.declare"],keyNames:["adapter","group","operation"],traversable:!0,linkFrom:"declaration",requireUniquePair:!0}],xo=64;function Ro(e,t={}){let n=z(e),r=new Set(n),i=new Set((t.affectedFiles??[]).map(No)),a=t.previousGraph?.fileCoverage,o=i.size>0&&t.previousGraph?.extractorVersion===$t&&a!==void 0&&a.length===t.previousGraph.coverage.filesScanned,s=o?a.filter(C=>r.has(C.file)&&!i.has(C.file)):[],l=new Set(s.flatMap(C=>C.observationIds)),c=o?t.previousGraph.observations.filter(C=>l.has(C.id)&&r.has(C.source.file)):[],u=o?n.filter(C=>i.has(C)):n,d=[],p=a?.reduce((C,ot)=>C+ot.observationIds.length,0)??0,f=performance.now(),m=Io(e,u);Y(d,"direct-extraction",f,u.length,m.observations.length,{filesVisited:u.length,filesReused:s.length,factsReused:c.length,factsInvalidated:Math.max(0,p-c.length)});let g=[...s,...m.fileCoverage].sort((C,ot)=>C.file.localeCompare(ot.file)),b=Co(g),h=g.flatMap(C=>C.extractionErrors),v=Ee([...c,...m.observations]),F=Ee([...v,...fr(v)]);f=performance.now();let x=lr(e,F);Y(d,"http-summary",f,F.length,x.observations.length,{filesVisited:x.filesInspected}),b.set("builtin.wrapper",{id:"builtin.wrapper",applicableFiles:x.filesInspected,observations:x.observations.length,errors:x.errors.length}),h.push(...x.errors);let w=Ee([...F,...x.observations]);f=performance.now();let y=ir(e,w);Y(d,"http-mount",f,w.length,y.observations.length,{filesVisited:y.filesInspected});let R=Ee([...w,...y.observations]);f=performance.now();let I=Xn(e,R);Y(d,"carrier",f,R.length,I.observations.length,{filesVisited:I.filesInspected}),b.set("builtin.carrier",{id:"builtin.carrier",applicableFiles:I.bodySummaries,observations:I.observations.length,errors:I.errors.length}),h.push(...I.errors);let E=Ee([...R,...I.observations]);f=performance.now();let _=Fo(E);Y(d,"relations",f,E.length,_.length),f=performance.now();let At=Po(E,_);Y(d,"links",f,_.length,At.length),_o(E,_),f=performance.now();let Dt=To([...Lo(E,_),...x.frontiers]);return Y(d,"frontiers",f,E.length,Dt.length),{schemaVersion:2,extractorVersion:$t,observations:E,relationGroups:_,links:At,frontiers:Dt,coverage:{filesScanned:n.length,filesWithAst:g.filter(C=>C.hasAst).length,filesWithoutAst:g.filter(C=>!C.hasAst).length,...o?{filesReused:s.length}:{},extractors:[...b.values()],extractionErrors:h,phases:d},fileCoverage:g}}function Y(e,t,n,r,i,a={}){e.push({id:t,durationMs:Math.max(0,performance.now()-n),inputFacts:r,outputFacts:i,...a})}function Io(e,t){let n=[],r=[];for(let i of t){let a=L(e,i),o=Nt.filter(c=>c.supports(a)),s=o.length>0?k(e,i):null,l={file:i,hasAst:s!==null||wo(i,a),observationIds:[],extractors:[],extractionErrors:[]};if(s)for(let c of o){let u={id:c.id,applicableFiles:1,observations:0,errors:0};try{let d=c.extract(s);u.observations=d.length,n.push(...d),l.observationIds.push(...d.map(p=>p.id))}catch(d){u.errors=1,l.extractionErrors.push(`${c.id} failed for ${i}: ${d instanceof Error?d.message:String(d)}`)}l.extractors.push(u)}r.push(l)}return{observations:n,fileCoverage:r}}function wo(e,t){return t?tn(e)?/<script\b/iu.test(t):Be(e)!==null:!1}function Co(e){let t=new Map(Nt.map(n=>[n.id,{id:n.id,applicableFiles:0,observations:0,errors:0}]));for(let n of e)for(let r of n.extractors){let i=t.get(r.id);i&&(i.applicableFiles+=r.applicableFiles,i.observations+=r.observations,i.errors+=r.errors)}return t}function No(e){return e.replaceAll("\\","/").replace(/^\.\//u,"")}function Fo(e){let t=new Map;for(let n of tt){let r=new Set([...n.producerActions,...n.consumerActions,...n.declarationActions??[]]);for(let i of e){if(!r.has(i.action)||i.strength==="candidate")continue;let a=ko(i,n.keyNames);if(!a)continue;let o=a.map(d=>`${d.name}=${gr(d.name,d.value)}`).join("\0"),s=i.sourceScope==="production"?"production":i.sourceScope,l=`${n.id}\0${s}\0${o}`,c=`boundary-group:${mr("sha256").update(l).digest("hex").slice(0,16)}`,u=t.get(c)??{id:c,protocol:n.protocol,joinRule:n.id,normalizedKey:o,keyParts:a,producerIds:[],consumerIds:[],declarationIds:[],derivation:{kind:"mechanically-derived",rule:n.id,ruleVersion:"2",inputFactIds:[],sourceSpans:[]}};n.producerActions.includes(i.action)&&u.producerIds.push(i.id),n.consumerActions.includes(i.action)&&u.consumerIds.push(i.id),n.declarationActions?.includes(i.action)&&u.declarationIds.push(i.id),u.derivation.inputFactIds.push(i.id),u.derivation.sourceSpans.push(i.source),t.set(c,u)}}return[...t.values()].map(Eo).sort(Ao)}function Eo(e){return{...e,producerIds:Ye(e.producerIds),consumerIds:Ye(e.consumerIds),declarationIds:Ye(e.declarationIds),derivation:{...e.derivation,inputFactIds:Ye(e.derivation.inputFactIds),sourceSpans:[...new Map(e.derivation.sourceSpans.map(t=>[`${t.file}:${t.startLine}:${t.endLine}`,t])).values()]}}}function Po(e,t){let n=new Map(e.map(i=>[i.id,i])),r=new Map;for(let i of t){let a=tt.find(s=>s.id===i.joinRule);if(!a?.traversable)continue;let o=a.linkFrom==="declaration"?i.declarationIds:i.producerIds;if(!(o.length===0||i.consumerIds.length===0)&&!(a.requireUniquePair&&(o.length!==1||i.consumerIds.length!==1))&&!(a.requireUniqueConsumer&&i.consumerIds.length!==1)&&!(o.length*i.consumerIds.length>xo))for(let s of o)for(let l of i.consumerIds){let c=n.get(s),u=n.get(l);if(!c||!u||$o(c,u))continue;let d=c.strength==="derived"||u.strength==="derived"?"derived":"exact",p=`${i.joinRule}\0${s}\0${l}`,f={id:`boundary-link:${mr("sha256").update(p).digest("hex").slice(0,16)}`,from:s,to:l,joinRule:i.joinRule,matchedKeyParts:i.keyParts,strength:d,derivation:{kind:"mechanically-derived",rule:i.joinRule,ruleVersion:"2",inputFactIds:[s,l],sourceSpans:[c.source,u.source]}};r.set(f.id,f)}}return[...r.values()].sort(Do)}function _o(e,t){let n=new Set(t.filter(yr).flatMap(et)),r=new Set(t.filter(Bo).flatMap(et));for(let i of e)i.resolution=n.has(i.id)?"locally-linked":r.has(i.id)?"ambiguous":"unresolved"}function Lo(e,t){let n=new Set(e.filter(a=>a.strength!=="candidate").map(a=>`${a.action}\0${a.source.file}\0${a.source.startLine}\0${a.source.endLine}`)),r=new Set(t.flatMap(et)),i=new Set(t.filter(yr).flatMap(et));return e.filter(a=>a.sourceScope==="production").filter(a=>a.strength!=="candidate"||!n.has(`${a.action}\0${a.source.file}\0${a.source.startLine}\0${a.source.endLine}`)).filter(a=>!i.has(a.id)).map(a=>{let o=a.keyParts.filter(l=>l.evidence==="expression"||l.value.length===0).map(l=>l.name),s=o.length>0?`${a.extractor} observed ${a.action}, but ${o.join(", ")} remained symbolic or unknown.`:a.resolution==="ambiguous"?`${a.extractor} established the address for ${a.action}, but more than one indexed peer has the same runtime key.`:r.has(a.id)?`${a.extractor} established the address for ${a.action}, but the indexed production scope contains no counterpart role in that relation group.`:`${a.extractor} observed ${a.action}, but no supported factorization rule could establish its addressed relation.`;return{observationId:a.id,reason:s,missingKeyParts:o,sourceScope:a.sourceScope}}).sort((a,o)=>a.observationId.localeCompare(o.observationId))}function et(e){return[...e.producerIds,...e.consumerIds,...e.declarationIds]}function yr(e){let t=tt.find(r=>r.id===e.joinRule);if(!t)return!1;let n=t.linkFrom==="declaration"?e.declarationIds:e.producerIds;return n.length===0||e.consumerIds.length===0?!1:!t.requireUniquePair||n.length===1&&e.consumerIds.length===1}function Bo(e){let t=tt.find(r=>r.id===e.joinRule);if(!t?.requireUniquePair)return!1;let n=t.linkFrom==="declaration"?e.declarationIds:e.producerIds;return n.length>0&&e.consumerIds.length>0&&(n.length!==1||e.consumerIds.length!==1)}function To(e){return[...new Map(e.map(t=>[t.observationId,t])).values()].sort((t,n)=>t.observationId.localeCompare(n.observationId))}function ko(e,t){let n=[];for(let r of t){let i=e.keyParts.find(a=>a.name===r);if(!i||i.evidence==="expression"||i.value.length===0)return null;n.push({...i,value:gr(r,i.value)})}return n}function gr(e,t){if(e==="method")return t.toUpperCase();if(e!=="path")return t;let n=t.startsWith("/")?t:`/${t}`;return n.length>1?n.replace(/\/+$/u,""):n}function $o(e,t){return e.source.file===t.source.file&&e.source.startLine===t.source.startLine}function Ee(e){return[...new Map(e.map(t=>[t.id,t])).values()].sort((t,n)=>t.source.file.localeCompare(n.source.file)||t.source.startLine-n.source.startLine||t.action.localeCompare(n.action))}function Ye(e){return[...new Set(e)].sort()}function Ao(e,t){return e.joinRule.localeCompare(t.joinRule)||e.normalizedKey.localeCompare(t.normalizedKey)}function Do(e,t){return e.joinRule.localeCompare(t.joinRule)||e.from.localeCompare(t.from)||e.to.localeCompare(t.to)}import Mo from"better-sqlite3";var rt="codebaseiq_runtime_boundaries",ee="codebaseiq_runtime_observations",it="codebaseiq_runtime_relation_groups",at="codebaseiq_runtime_relation_participants";function Oo(e,t){let n=new Mo(zt(e));try{n.exec(`
35
+ CREATE TABLE IF NOT EXISTS ${rt} (
36
+ singleton INTEGER PRIMARY KEY CHECK (singleton = 1),
37
+ schema_version INTEGER NOT NULL,
38
+ extractor_version TEXT NOT NULL,
39
+ payload TEXT NOT NULL
40
+ )
41
+ `),Vo(n),n.transaction(()=>{n.prepare(`INSERT OR REPLACE INTO ${rt} (singleton, schema_version, extractor_version, payload) VALUES (1, ?, ?, ?)`).run(t.schemaVersion,t.extractorVersion,JSON.stringify(t)),n.prepare(`DELETE FROM ${ee}`).run(),n.prepare(`DELETE FROM ${at}`).run(),n.prepare(`DELETE FROM ${it}`).run();let r=n.prepare(`INSERT INTO ${ee}
42
+ (id, protocol, action, role, strength, source_scope, resolution, file, start_line, end_line, owner_symbol, payload)
43
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`);for(let o of t.observations)r.run(o.id,o.protocol,o.action,o.role,o.strength,o.sourceScope,o.resolution,o.source.file,o.source.startLine,o.source.endLine,o.owner.symbol,JSON.stringify(o));let i=n.prepare(`INSERT INTO ${it} (id, protocol, join_rule, normalized_key, payload) VALUES (?, ?, ?, ?, ?)`),a=n.prepare(`INSERT INTO ${at} (group_id, observation_id, participant_role) VALUES (?, ?, ?)`);for(let o of t.relationGroups){i.run(o.id,o.protocol,o.joinRule,o.normalizedKey,JSON.stringify(o));for(let s of o.producerIds)a.run(o.id,s,"producer");for(let s of o.consumerIds)a.run(o.id,s,"consumer");for(let s of o.declarationIds)a.run(o.id,s,"declaration")}})()}finally{n.close()}}function jo(e,t={}){if(!qo(e,ee))return hr(e)?.observations??[];let n=[],r=[];return nt(n,r,"protocol",t.protocols),nt(n,r,"action",t.actions),nt(n,r,"source_scope",t.sourceScopes),nt(n,r,"file",t.files),e.all(`SELECT payload FROM ${ee}${n.length>0?` WHERE ${n.join(" AND ")}`:""} ORDER BY file, start_line, id`,...r).flatMap(a=>Go(a.payload))}function Vo(e){e.exec(`
44
+ CREATE TABLE IF NOT EXISTS ${ee} (
45
+ id TEXT PRIMARY KEY,
46
+ protocol TEXT NOT NULL,
47
+ action TEXT NOT NULL,
48
+ role TEXT NOT NULL,
49
+ strength TEXT NOT NULL,
50
+ source_scope TEXT NOT NULL,
51
+ resolution TEXT NOT NULL,
52
+ file TEXT NOT NULL,
53
+ start_line INTEGER NOT NULL,
54
+ end_line INTEGER NOT NULL,
55
+ owner_symbol TEXT,
56
+ payload TEXT NOT NULL
57
+ );
58
+ CREATE INDEX IF NOT EXISTS idx_runtime_observations_protocol_action_scope
59
+ ON ${ee}(protocol, action, source_scope);
60
+ CREATE INDEX IF NOT EXISTS idx_runtime_observations_file_line
61
+ ON ${ee}(file, start_line);
62
+
63
+ CREATE TABLE IF NOT EXISTS ${it} (
64
+ id TEXT PRIMARY KEY,
65
+ protocol TEXT NOT NULL,
66
+ join_rule TEXT NOT NULL,
67
+ normalized_key TEXT NOT NULL,
68
+ payload TEXT NOT NULL
69
+ );
70
+ CREATE INDEX IF NOT EXISTS idx_runtime_groups_protocol_key
71
+ ON ${it}(protocol, join_rule, normalized_key);
72
+
73
+ CREATE TABLE IF NOT EXISTS ${at} (
74
+ group_id TEXT NOT NULL,
75
+ observation_id TEXT NOT NULL,
76
+ participant_role TEXT NOT NULL,
77
+ PRIMARY KEY (group_id, observation_id, participant_role)
78
+ );
79
+ CREATE INDEX IF NOT EXISTS idx_runtime_participants_observation
80
+ ON ${at}(observation_id, participant_role);
81
+ `)}function qo(e,t){return!!e.get("SELECT name FROM sqlite_master WHERE type = 'table' AND name = ?",t)}function nt(e,t,n,r){!r||r.length===0||(e.push(`${n} IN (${r.map(()=>"?").join(", ")})`),t.push(...r))}function Go(e){try{return[JSON.parse(e)]}catch{return[]}}function hr(e){if(!e.get("SELECT name FROM sqlite_master WHERE type = 'table' AND name = ?",rt))return null;let n=e.get(`SELECT schema_version, payload FROM ${rt} WHERE singleton = 1`);if(!n||n.schema_version!==2)return null;try{let r=JSON.parse(n.payload);return r.schemaVersion===2&&Array.isArray(r.observations)&&Array.isArray(r.relationGroups)&&Array.isArray(r.links)?r:null}catch{return null}}export{Me as a,je as b,ct as c,Fs as d,Es as e,Ps as f,En as g,ze as h,Q as i,V as j,Ge as k,ft as l,rl as m,Os as n,Jr as o,js as p,Vs as q,Xs as r,Qs as s,pt as t,mt as u,bn as v,xn as w,yt as x,xl as y,Fi as z,Ei as A,Rl as B,Pi as C,_i as D,Pl as E,gt as F,Ie as G,we as H,$t as I,Ro as J,Oo as K,jo as L,hr as M,Zo as N,Xo as O,Sr as P,Qo as Q,Jo as R,P as S,$l as T,be as U,Al as V};
82
+ //# sourceMappingURL=chunk-6WAPPQ5F.js.map
@@ -1,2 +1,2 @@
1
- import{c as f}from"./chunk-7FND7D7N.js";import{a as L}from"./chunk-UZGZB3VB.js";import{d as i,e as b,f as u,l as c}from"./chunk-FETNQCFO.js";import{f as l}from"./chunk-O6QTXQPJ.js";import{z as a}from"./chunk-ADTBPVUZ.js";function S(o,s){let t=L(o,s);if(!t)return[];let e=new f(o).definitionsForFile(t.relativePath).filter(r=>r.symbol!==t.symbol).filter(r=>c(t.symbol,r.symbol)).sort((r,m)=>r.startLine-m.startLine||r.endLine-m.endLine).map(r=>({symbol:r.symbol,shortName:i(r.symbol),startLine:r.startLine,endLine:r.endLine,kind:u(r.symbol)??"unknown"}));return a(t.relativePath)!=="clojure"?e:d(e,y(o,t))}function y(o,s){let t=b(s.symbol);if(!t)return[];let n=i(s.symbol);return(l(o,s.relativePath)?.clojureMembers??[]).filter(e=>e.ownerName===t).map(e=>({symbol:`${s.symbol}${e.memberName}().`,shortName:`${n}:${e.memberName}()`,startLine:e.startLine,endLine:e.endLine,kind:e.memberKind}))}function d(o,s){let t=new Map;for(let n of[...o,...s])t.set(`${n.shortName}:${n.startLine}:${n.endLine}`,n);return[...t.values()].sort((n,e)=>n.startLine-e.startLine||n.endLine-e.endLine)}export{S as a};
2
- //# sourceMappingURL=chunk-FW53T7EB.js.map
1
+ import{c as f}from"./chunk-HENP2O4A.js";import{a as L}from"./chunk-SGMNWYTH.js";import{d as i,e as b,f as u,l as c}from"./chunk-GVAF222T.js";import{f as l}from"./chunk-F74LZWCE.js";import{z as a}from"./chunk-ICUL7XRT.js";function S(o,s){let t=L(o,s);if(!t)return[];let e=new f(o).definitionsForFile(t.relativePath).filter(r=>r.symbol!==t.symbol).filter(r=>c(t.symbol,r.symbol)).sort((r,m)=>r.startLine-m.startLine||r.endLine-m.endLine).map(r=>({symbol:r.symbol,shortName:i(r.symbol),startLine:r.startLine,endLine:r.endLine,kind:u(r.symbol)??"unknown"}));return a(t.relativePath)!=="clojure"?e:d(e,y(o,t))}function y(o,s){let t=b(s.symbol);if(!t)return[];let n=i(s.symbol);return(l(o,s.relativePath)?.clojureMembers??[]).filter(e=>e.ownerName===t).map(e=>({symbol:`${s.symbol}${e.memberName}().`,shortName:`${n}:${e.memberName}()`,startLine:e.startLine,endLine:e.endLine,kind:e.memberKind}))}function d(o,s){let t=new Map;for(let n of[...o,...s])t.set(`${n.shortName}:${n.startLine}:${n.endLine}`,n);return[...t.values()].sort((n,e)=>n.startLine-e.startLine||n.endLine-e.endLine)}export{S as a};
2
+ //# sourceMappingURL=chunk-75KJGYX7.js.map
@@ -0,0 +1,77 @@
1
+ import{f as L,g as A}from"./chunk-SX72EVMY.js";import{a as _,b as S,d as b}from"./chunk-3LCDIREB.js";import{v as F}from"./chunk-UC2FD2PS.js";import{mkdtempSync as O}from"fs";import{win32 as q}from"path";var Q=259,Z=8,ee=6,y="\\\\?\\",C=`${y}UNC\\`;function k(e,n,t){if(t!=="win32"||e.startsWith(y))return;let a=q.resolve(e);if(!(a.length+n<=Q))return a.startsWith("\\\\")?`${C}${a.slice(2)}`:`${y}${a}`}function N(e,n=process.platform){return e===""||e===":memory:"?e:k(e,Z,n)??e}function _e(e,n=process.platform){let t=k(e,ee,n);if(!t)return O(e);let a=O(t);return a.startsWith(C)?`\\\\${a.slice(C.length)}`:a.slice(y.length)}var I=[],x=[];function m(e){e.groups.length>0&&I.push(e)}function j(e){x.push(e)}function be(e){let n=[];for(let t of x)try{t.close(e)}catch(a){n.push(a)}if(n.length===1)throw n[0];if(n.length>1)throw new AggregateError(n,"Multiple database-owned resources failed to close.")}function Ce(e,n){let t=new Set(n.groups);for(let a of I)a.groups.some(r=>t.has(r))&&(n.file!==void 0&&a.clearFile?a.clearFile(e,n.file):a.clearAll(e))}function M(){let e=new WeakMap;return{cache:e,ensure(n){let t=e.get(n);return t||(t=new Map,e.set(n,t)),t}}}function h(e,n){let{cache:t,ensure:a}=M(),r={get(i,s,o){let c=a(i);if(c.has(s))return c.get(s);let d=o();return c.set(s,d),d},invalidate(i,s){t.get(i)?.delete(s)},invalidateAll(i){t.delete(i)},size(i){return t.get(i)?.size??0}};return m({name:e,groups:n.clearGroups,clearAll:i=>r.invalidateAll(i),clearFile:(i,s)=>r.invalidate(i,s)}),r}function Pe(e,n){let t=new WeakMap,a={get(r,i){let s=t.get(r);if(s)return s.value;let o=i();return t.set(r,{value:o}),o},invalidate(r){t.delete(r)},has(r){return t.has(r)}};return m({name:e,groups:n.clearGroups,clearAll:r=>a.invalidate(r)}),a}var te={clearGroups:["whole-project","source-file"]};function we(e){return ne(e,te)}function ne(e,n){let{cache:t,ensure:a}=M(),r={get(i,s,o,c){let d=a(i),T=d.get(s);if(T&&T.source===o)return T.value;let w=c();return d.set(s,{source:o,value:w}),w},invalidate(i,s){t.get(i)?.delete(s)},invalidateAll(i){t.delete(i)}};return m({name:e,groups:n.clearGroups,clearAll:i=>r.invalidateAll(i),clearFile:(i,s)=>r.invalidate(i,s)}),r}import{createHash as re}from"crypto";import{existsSync as Oe,mkdirSync as ae}from"fs";import{dirname as V,join as ie}from"path";import K from"better-sqlite3";var se="evidence.db";var oe=["source-facts","callable-units","definition-exclusions","doc-path-tokens","react-component-behavior-profiles"],R=new Set(oe);var Ke=512*1024*1024,ce=6e4,v=new WeakMap;j({name:"evidence-connections",close:X});var le=h("evidence-content-hash",{clearGroups:["whole-project","source-file"]}),de=h("evidence-project-fingerprint",{clearGroups:["whole-project"]}),p="evidence-v1",f="version NOT LIKE 'evidence-%'";function H(e){return re("sha256").update(e).digest("hex")}function He(e,n,t){return le.get(e,n,()=>H(t))}function U(e){return de.get(e,"current",()=>{try{if(!e.generation.metadataRaw)return null;let n=F(e.generation.metadataRaw);if(n.kind!=="legacy"&&n.kind!=="supported"||!n.capabilities.usableForEvidenceCache)return null;let t=n.metadata,a=[...t.indexedLanguages??[]].sort();return H(JSON.stringify({fingerprint:t.fingerprint,indexedLanguages:a,status:t.status}))}catch(n){return E("project fingerprint unavailable",n),null}})}function E(e,n){process.env.CODEBASEIQ_DEBUG&&console.error(`evidence-cache: ${e}: ${n instanceof Error?n.message:String(n)}`)}function u(e){if(v.has(e))return v.get(e)??null;let n=null;try{let t=new K(N(ie(V(e.config.dbPath),se)));t.pragma("journal_mode = WAL"),t.pragma("busy_timeout = 5000"),t.pragma("synchronous = NORMAL"),t.exec(`
2
+ CREATE TABLE IF NOT EXISTS file_evidence (
3
+ kind TEXT NOT NULL,
4
+ relative_path TEXT NOT NULL,
5
+ content_hash TEXT NOT NULL,
6
+ version TEXT NOT NULL,
7
+ payload TEXT NOT NULL,
8
+ PRIMARY KEY (kind, relative_path)
9
+ );
10
+ CREATE TABLE IF NOT EXISTS project_evidence (
11
+ kind TEXT NOT NULL,
12
+ cache_key TEXT NOT NULL,
13
+ project_fingerprint TEXT NOT NULL,
14
+ version TEXT NOT NULL,
15
+ payload TEXT NOT NULL,
16
+ PRIMARY KEY (kind, cache_key)
17
+ );
18
+ CREATE TABLE IF NOT EXISTS semantic_callees (
19
+ relative_path TEXT NOT NULL,
20
+ symbol TEXT NOT NULL,
21
+ content_hash TEXT NOT NULL,
22
+ deps_digest TEXT NOT NULL,
23
+ version TEXT NOT NULL,
24
+ payload TEXT NOT NULL,
25
+ PRIMARY KEY (relative_path, symbol)
26
+ );
27
+ CREATE TABLE IF NOT EXISTS semantic_references (
28
+ relative_path TEXT NOT NULL,
29
+ symbol TEXT NOT NULL,
30
+ project_fingerprint TEXT NOT NULL,
31
+ version TEXT NOT NULL,
32
+ payload TEXT NOT NULL,
33
+ PRIMARY KEY (relative_path, symbol)
34
+ );
35
+ `),n={evidence:t,shared:pe(e.config.sharedEvidenceDbPath),readFileEvidence:t.prepare("SELECT payload FROM file_evidence WHERE kind = ? AND relative_path = ? AND content_hash = ? AND version = ?"),readLegacyFileEvidence:t.prepare(`SELECT payload FROM file_evidence
36
+ WHERE kind = ? AND relative_path = ? AND content_hash = ? AND ${f}
37
+ ORDER BY version DESC
38
+ LIMIT 1`),writeFileEvidence:t.prepare("INSERT OR REPLACE INTO file_evidence (kind, relative_path, content_hash, version, payload) VALUES (?, ?, ?, ?, ?)"),readProjectEvidence:t.prepare("SELECT payload FROM project_evidence WHERE kind = ? AND cache_key = ? AND project_fingerprint = ? AND version = ?"),readLegacyProjectEvidence:t.prepare(`SELECT payload FROM project_evidence
39
+ WHERE kind = ? AND cache_key = ? AND project_fingerprint = ? AND ${f}
40
+ ORDER BY version DESC
41
+ LIMIT 1`),writeProjectEvidence:t.prepare("INSERT OR REPLACE INTO project_evidence (kind, cache_key, project_fingerprint, version, payload) VALUES (?, ?, ?, ?, ?)"),readCallees:t.prepare(`SELECT payload FROM semantic_callees
42
+ WHERE relative_path = ? AND symbol = ? AND content_hash = ? AND deps_digest = ? AND version = ?`),readLegacyCallees:t.prepare(`SELECT payload FROM semantic_callees
43
+ WHERE relative_path = ? AND symbol = ? AND content_hash = ? AND deps_digest = ? AND ${f}
44
+ ORDER BY version DESC
45
+ LIMIT 1`),readCalleesForFile:t.prepare(`SELECT symbol, payload FROM semantic_callees
46
+ WHERE relative_path = ? AND content_hash = ? AND deps_digest = ? AND version = ?`),readLegacyCalleesForFile:t.prepare(`SELECT symbol, payload FROM semantic_callees
47
+ WHERE relative_path = ? AND content_hash = ? AND deps_digest = ? AND ${f}
48
+ ORDER BY symbol, version DESC`),writeCallees:t.prepare(`INSERT OR REPLACE INTO semantic_callees
49
+ (relative_path, symbol, content_hash, deps_digest, version, payload) VALUES (?, ?, ?, ?, ?, ?)`),dropStaleCallees:t.prepare("DELETE FROM semantic_callees WHERE relative_path = ? AND content_hash != ?"),readReferences:t.prepare(`SELECT payload FROM semantic_references
50
+ WHERE relative_path = ? AND symbol = ? AND project_fingerprint = ? AND version = ?`),readLegacyReferences:t.prepare(`SELECT payload FROM semantic_references
51
+ WHERE relative_path = ? AND symbol = ? AND project_fingerprint = ? AND ${f}
52
+ ORDER BY version DESC
53
+ LIMIT 1`),readReferencesForFile:t.prepare(`SELECT symbol, payload FROM semantic_references
54
+ WHERE relative_path = ? AND project_fingerprint = ? AND version = ?`),readLegacyReferencesForFile:t.prepare(`SELECT symbol, payload FROM semantic_references
55
+ WHERE relative_path = ? AND project_fingerprint = ? AND ${f}
56
+ ORDER BY symbol, version DESC`),writeReferences:t.prepare(`INSERT OR REPLACE INTO semantic_references
57
+ (relative_path, symbol, project_fingerprint, version, payload) VALUES (?, ?, ?, ?, ?)`),dropStaleReferences:t.prepare("DELETE FROM semantic_references WHERE relative_path = ? AND project_fingerprint != ?")}}catch(t){E("disabled (open failed)",t)}return v.set(e,n),n}function g(e,n,t){E(`disabled (${n})`,t);try{X(e)}catch(a){E("close failed while disabling",a)}v.set(e,null)}function X(e){let n=v.get(e);if(v.delete(e),!n)return;let t,a;try{n.shared?.evidence.close()}catch(r){t=r}try{n.evidence.close()}catch(r){a=r}if(t!==void 0&&a!==void 0)throw new AggregateError([t,a],"Shared and project evidence connections failed to close.");if(t!==void 0)throw t;if(a!==void 0)throw a}function pe(e){if(!e)return null;try{ae(V(e),{recursive:!0});let n=new K(N(e));return n.pragma("journal_mode = WAL"),n.pragma("busy_timeout = 250"),n.pragma("synchronous = NORMAL"),n.exec(`
58
+ CREATE TABLE IF NOT EXISTS file_evidence (
59
+ kind TEXT NOT NULL,
60
+ relative_path TEXT NOT NULL,
61
+ content_hash TEXT NOT NULL,
62
+ version TEXT NOT NULL,
63
+ payload TEXT NOT NULL,
64
+ last_accessed_at INTEGER NOT NULL,
65
+ PRIMARY KEY (kind, relative_path, content_hash, version)
66
+ );
67
+ CREATE INDEX IF NOT EXISTS idx_file_evidence_lru
68
+ ON file_evidence(last_accessed_at, kind, relative_path, content_hash, version);
69
+ `),{evidence:n,readFileEvidence:n.prepare("SELECT payload FROM file_evidence WHERE kind = ? AND relative_path = ? AND content_hash = ? AND version = ?"),writeFileEvidence:n.prepare(`INSERT INTO file_evidence (kind, relative_path, content_hash, version, payload, last_accessed_at)
70
+ VALUES (?, ?, ?, ?, ?, ?)
71
+ ON CONFLICT(kind, relative_path, content_hash, version)
72
+ DO UPDATE SET payload = excluded.payload, last_accessed_at = excluded.last_accessed_at`),touchFileEvidence:n.prepare(`UPDATE file_evidence
73
+ SET last_accessed_at = ?
74
+ WHERE kind = ? AND relative_path = ? AND content_hash = ? AND version = ?
75
+ AND last_accessed_at < ?`)}}catch(n){return E("shared cache disabled (open failed)",n),null}}function P(e,n,t){E(`shared cache disabled (${n})`,t);try{e.shared?.evidence.close()}catch{}e.shared=null}function W(e,n,t,a){let r=u(e);if(!r)return null;try{let i=r.readFileEvidence.get(n,t,a,p)??r.readLegacyFileEvidence.get(n,t,a);if(i?.payload!==void 0)return i.payload;if(!R.has(n)||!r.shared)return null;try{let s=r.shared.readFileEvidence.get(n,t,a,p);return s?.payload!==void 0&&ue(r.shared,n,t,a),s?.payload??null}catch(s){return P(r,"file_evidence read",s),null}}catch(i){return g(e,"file_evidence read",i),null}}function ue(e,n,t,a){let r=Date.now();try{e.touchFileEvidence.run(r,n,t,a,p,r-ce)}catch(i){E("shared file_evidence recency touch skipped",i)}}function B(e,n,t,a,r){let i=u(e);if(i)try{if(i.writeFileEvidence.run(n,t,a,p,r),R.has(n)&&i.shared)try{i.shared.writeFileEvidence.run(n,t,a,p,r,Date.now())}catch(s){P(i,"file_evidence write",s)}}catch(s){g(e,"file_evidence write",s)}}function $(e,n){if(n.length===0)return;let t=u(e);if(t)try{t.evidence.transaction(()=>{for(let r of n)t.writeFileEvidence.run(r.kind,r.relativePath,r.contentHash,p,r.payload)})();let a=n.filter(r=>R.has(r.kind));if(a.length>0&&t.shared)try{t.shared.evidence.transaction(()=>{for(let r of a)t.shared.writeFileEvidence.run(r.kind,r.relativePath,r.contentHash,p,r.payload,Date.now())})()}catch(r){P(t,"file_evidence batch write",r)}}catch(a){g(e,"file_evidence batch write",a)}}function G(e,n,t,a){let r=u(e);if(!r)return null;try{return(r.readProjectEvidence.get(n,t,a,p)??r.readLegacyProjectEvidence.get(n,t,a))?.payload??null}catch(i){return g(e,"project_evidence read",i),null}}function Y(e,n,t,a,r){let i=u(e);if(i)try{i.writeProjectEvidence.run(n,t,a,p,r)}catch(s){g(e,"project_evidence write",s)}}function Ue(e,n,t,a){let r=u(e);if(!r)return new Map;try{let i=r.readCalleesForFile.all(n,t,a,p),s=r.readLegacyCalleesForFile.all(n,t,a);return z([...s,...i])}catch(i){return g(e,"semantic_callees bulk read",i),new Map}}function Xe(e,n,t){let a=u(e);if(!a)return new Map;try{let r=a.readReferencesForFile.all(n,t,p),i=a.readLegacyReferencesForFile.all(n,t);return z([...i,...r])}catch(r){return g(e,"semantic_references bulk read",r),new Map}}function z(e){let n=new Map;for(let t of e)n.set(t.symbol,t.payload);return n}function We(e,n){if(n.length===0)return;let t=u(e);if(t)try{t.evidence.transaction(()=>{let a=new Set;for(let r of n){let i=`${r.relativePath}\0${r.contentHash}`;a.has(i)||(a.add(i),t.dropStaleCallees.run(r.relativePath,r.contentHash)),t.writeCallees.run(r.relativePath,r.symbol,r.contentHash,r.depsDigest,p,r.payload)}})()}catch(a){g(e,"semantic_callees write",a)}}function Be(e,n){if(n.length===0)return;let t=u(e);if(t)try{t.evidence.transaction(()=>{let a=new Set;for(let r of n){let i=`${r.relativePath}\0${r.projectFingerprint}`;a.has(i)||(a.add(i),t.dropStaleReferences.run(r.relativePath,r.projectFingerprint)),t.writeReferences.run(r.relativePath,r.symbol,r.projectFingerprint,p,r.payload)}})()}catch(a){g(e,"semantic_references write",a)}}function Ge(e){return typeof e=="object"&&e!==null}function Ye(e){return Array.isArray(e)&&e.every(n=>typeof n=="string")?e:null}var ge=[l("source-facts",{dependsOn:["content-hash","tool-version"],keyParts:["kind","relativePath","contentHash","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/source/source-facts.ts"}),l("callable-units",{dependsOn:["content-hash","tool-version"],keyParts:["kind","relativePath","contentHash","payloadVersion"],stalenessTest:"tests/source/callable-units.test.ts",owner:"src/source/facts/callable-units.ts"}),l("file-definitions",{dependsOn:["content-hash","project-fingerprint","indexed-language-set","tool-version"],keyParts:["kind","relativePath","contentHash","projectFingerprint","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/symbols/definition-catalog.ts"}),l("definition-exclusions",{dependsOn:["content-hash","tool-version"],keyParts:["kind","relativePath","contentHash","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/analysis/framework-patterns.ts"}),l("doc-path-tokens",{dependsOn:["content-hash","tool-version"],keyParts:["kind","relativePath","contentHash","payloadVersion"],stalenessTest:"tests/storage/evidence-products.test.ts",owner:"tests/storage/evidence-cache.test.ts"}),l("doc-path-evidence",{dependsOn:["content-hash","git-history","git-head","tool-version"],keyParts:["kind","relativePath","contentHash","trackedFiles","historyWindow","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/queries/cleanup/doc-drift.ts"}),l("source-imports",{dependsOn:["content-hash","import-resolution-fingerprint","config","tool-version"],keyParts:["kind","relativePath","contentHash","importResolutionFingerprint","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/language-parsers/index.ts"}),l("source-reexports",{dependsOn:["content-hash","import-resolution-fingerprint","config","tool-version"],keyParts:["kind","relativePath","contentHash","importResolutionFingerprint","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/language-parsers/index.ts"}),l("source-fingerprints",{dependsOn:["content-hash","project-fingerprint","indexed-language-set","tool-version"],keyParts:["kind","relativePath","contentHash","projectFingerprint","payloadVersion"],stalenessTest:"tests/symbols/definition-catalog.test.ts",owner:"src/queries/cleanup/similar.ts"}),l("consumer-file-usage",{dependsOn:["content-hash","project-fingerprint","indexed-language-set","tool-version"],keyParts:["kind","relativePath","contentHash","projectFingerprint","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/queries/internal/consumer-evidence.ts"}),l("react-component-behavior-profiles",{dependsOn:["content-hash","tool-version"],keyParts:["kind","relativePath","contentHash","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/source/react-profile.ts"}),l("git-file-adds",{dependsOn:["git-head","git-history","tool-version"],keyParts:["kind","cacheKey","head","historyWindow","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/analysis/git-history.ts"}),l("typescript-reference-fragments",{dependsOn:["content-hash","transitive-deps-digest","config","tool-version"],keyParts:["kind","relativePath","semanticIdentity","payloadVersion"],stalenessTest:"tests/semantic/typescript/typescript-reference-fragments.test.ts",owner:"src/semantic/typescript/reference-fragment-shadow.ts"}),l("typescript-import-usage",{dependsOn:["content-hash","transitive-deps-digest","config","tool-version"],keyParts:["kind","relativePath","semanticIdentity","payloadVersion"],stalenessTest:"tests/semantic/typescript/typescript-semantic-provider.test.ts",owner:"src/semantic/shared-primitives.ts"}),l("typescript-signatures",{dependsOn:["content-hash","transitive-deps-digest","config","tool-version"],keyParts:["kind","relativePath","semanticIdentity","payloadVersion"],stalenessTest:"tests/semantic/typescript/typescript-semantic-provider.test.ts",owner:"src/semantic/shared-primitives.ts"}),D("file-dependency-graph",{dependsOn:["project-fingerprint","indexed-language-set","import-resolution-fingerprint","tool-version"],keyParts:["kind","scope","projectFingerprint","payloadVersion"],stalenessTest:"tests/symbols/file-dep-graph.test.ts",owner:"src/symbols/graph/file-dep-graph.ts"}),D("semantic-import-usage",{dependsOn:["project-fingerprint","indexed-language-set","import-resolution-fingerprint","tool-version"],keyParts:["kind","relativePath","projectFingerprint","language","semanticEngine","payloadVersion"],stalenessTest:"tests/semantic/rust/rust-semantic-cache-gate.test.ts",owner:"src/semantic/shared-primitives.ts"}),D("semantic-signatures",{dependsOn:["project-fingerprint","indexed-language-set","tool-version"],keyParts:["kind","relativePath","symbol","projectFingerprint","language","semanticEngine","payloadVersion"],stalenessTest:"tests/semantic/rust/rust-semantic-cache-gate.test.ts",owner:"src/semantic/shared-primitives.ts"}),D("health-semantic-prewarm",{dependsOn:["project-fingerprint","indexed-language-set","tool-version"],keyParts:["kind","scope","cliVersion","projectFingerprint","payloadVersion"],stalenessTest:"tests/runtime/cli-support.test.ts",owner:"src/runtime/cli-support.ts"})];function et(e){let n=new Map;return{kind:e.kind,read(t,a,r){let i=!1,s=0,o;if(_()){let c=U(t);if(c){let d=`${c}\0${a}\0${r}`;o=n.get(d),o||(o=S(["evidence-product-file-read-v1",e.kind,c,a,r]),n.set(d,o))}}return b("evidence-product.file.read",()=>{let c=W(t,e.kind,a,r);if(c===null)return null;s=c.length;try{let d=e.deserialize(c);return i=d!==null,d}catch{return null}},()=>({...o?{workIdentity:o,workOutcome:"computed"}:{},scope:"file",kind:e.kind,available:!0,hit:i,payloadBytes:s}))},write(t,a,r,i){B(t,e.kind,a,r,e.serialize(i))},writeBatch(t,a){$(t,a.map(r=>({kind:e.kind,relativePath:r.relativePath,contentHash:r.contentHash,payload:e.serialize(r.value)})))}}}function tt(e){let n=new Map;return{kind:e.kind,read(t,a,r){let i=!1,s=0,o;if(_()){let c=`${r}\0${a}`;o=n.get(c),o||(o=S(["evidence-product-project-read-v1",e.kind,r,a]),n.set(c,o))}return b("evidence-product.project.read",()=>{let c=G(t,e.kind,a,r);if(c===null)return null;s=c.length;try{let d=e.deserialize(c);return i=d!==null,d}catch{return null}},()=>({...o?{workIdentity:o,workOutcome:"computed"}:{},scope:"project",kind:e.kind,available:!0,hit:i,payloadBytes:s}))},write(t,a,r,i){Y(t,e.kind,a,r,e.serialize(i))}}}function nt(e){let n=ge.find(t=>t.kind===e);if(!n)throw new Error(`missing evidence product manifest entry for ${e}`);return n.invalidation}function l(e,n){return{scope:"file",kind:e,invalidation:{scope:"file",...n}}}function D(e,n){return{scope:"project",kind:e,invalidation:{scope:"project",...n}}}var Ee=h("source-text",{clearGroups:["whole-project","source-file"]}),he=h("source-lines",{clearGroups:["whole-project","source-file"]});function fe(e,n){let t=n.replace(/\\/g,"/");return Ee.get(e,t,()=>{try{return L(e.config.projectRoot,t,{inputKind:"indexed source file"})}catch(a){if(A(a))return"";throw a}})}function ve(e,n){let t=n.replace(/\\/g,"/");return he.get(e,t,()=>{let a=fe(e,t);return a?a.split(`
76
+ `):[]})}var ye=/^\s*(?:\/\/|#|\/\*+|\*)\s*codebaseiq[\s:-]*ignore(?:[\s:-]+(dead(?:-code)?|stale|wrapper|passthrough|drift|extract|similar|twin))?\b/i;function me(e){let n=ye.exec(e);return n?n[1]??"":null}function st(e,n,t){return J(e,n,t).length>0}function ot(e,n,t,a){let r=a.toLowerCase();return J(e,n,t).some(i=>i.toLowerCase()===r)}function J(e,n,t){if(t<=0)return[];let a=ve(e,n);if(a.length===0)return[];let r=[];for(let i=t-1;i>=0&&i>=t-5;i-=1){let s=(a[i]??"").trim();if(s==="")continue;let o=me(s);if(o!==null){r.push(o);continue}if(!s.startsWith("//")&&!s.startsWith("*")&&!s.startsWith("/*")&&!s.startsWith("@")&&!s.startsWith("#"))return r}return r}export{N as a,_e as b,m as c,j as d,be as e,Ce as f,h as g,Pe as h,we as i,ne as j,H as k,He as l,U as m,Ue as n,Xe as o,We as p,Be as q,Ge as r,Ye as s,et as t,tt as u,nt as v,fe as w,ve as x,me as y,st as z,ot as A};
77
+ //# sourceMappingURL=chunk-7GAK2F3H.js.map
@@ -1,2 +1,2 @@
1
- import{a as _}from"./chunk-SELM5MER.js";import{f as L,g as A}from"./chunk-T3DGWPXM.js";import{a as R}from"./chunk-QHRNXP3C.js";import{b as D}from"./chunk-B75HZHUP.js";import{c as E}from"./chunk-7FND7D7N.js";import{a as w}from"./chunk-BGBBVSH4.js";import{f as I,h as x}from"./chunk-C7QOQX32.js";import{d as N}from"./chunk-FETNQCFO.js";import{b as T,c as h}from"./chunk-O6QTXQPJ.js";import{a as g}from"./chunk-ADTBPVUZ.js";import{u as S}from"./chunk-BMYOV5GP.js";var F={caller:3,"entry-surface":2,rooted:1},O=/not\s*yet\s*implement|not\s*implement|unimplement|\bnyi\b|\btodo\b|\bstub\b|not\s*supported|coming\s*soon/i,P=/^throw\s+new\s+[\w.]*Error\s*\(([\s\S]*)\)\s*;?$/,C=/^return(\s+(null|undefined|false|0|''|""|``|\[\]|\{\}))?\s*;?$/,v=/\/\/\s*TODO\b|\/\*\s*TODO\b/i,K=/(?:=>|\))\s*(?::\s*[^{;=]+)?\s*\{\s*\}\s*;?\s*$/;function et(e,n={}){let{scope:o,limit:r=30,scanLimit:l,semantic:a=!0}=n,s=new E(e),t=D(s.productionCallableDefinitions({scope:o,minLoc:1,requireFunctionLikeSymbol:!0,excludeTypesFiles:!0}),l),c=[];for(let i of t){let m=M(e,i);m&&c.push(m)}if(c.length===0)return[];let d=j(e,c,t),f=c.filter(i=>!d.has(i.def.symbol));if(f.length===0)return[];let p=_(e,s).forDefinitions(f.map(i=>i.def),{semantic:a}),u=[];for(let i of f){let m=p.get(i.def.symbolId);if(m?.semanticIncomplete||m?.semanticUnavailable)continue;let b=m?.realConsumers.length??0,y=B(e,i.def,b);y&&u.push({symbol:i.def.symbol,shortName:N(i.def.symbol),file:i.def.relativePath,startLine:i.def.startLine,endLine:i.def.endLine,loc:w(i.def),stubKind:i.stubKind,reachability:y,callerFanIn:b,stubText:i.stubText})}return u.sort((i,m)=>F[m.reachability]-F[i.reachability]||m.callerFanIn-i.callerFanIn||i.file.localeCompare(m.file)||i.startLine-m.startLine),r?u.slice(0,r):u}function B(e,n,o){return o>0?"caller":x(e,n.symbol,n.relativePath)?"rooted":I(e,n.relativePath)?"entry-surface":null}function M(e,n){let o=L(e,n);if(!o)return null;let r=A(o),l=r.trim();if(l==="")return!z(o)||!R(e,n)?null:{def:n,stubKind:"empty-body",stubText:"(empty body)"};let a=h(r),s=T(r),t=U(a,s);if(t.length!==1)return null;let c=t[0];return $(c)?{def:n,stubKind:"throw-stub",stubText:c.trim()}:v.test(r)&&C.test(c.trim())?{def:n,stubKind:"todo-return-default",stubText:l}:null}function U(e,n){let o=[],r=0,l="";for(let a=0;a<n.length;a+=1){let s=n[a];if(s==="("||s==="["||s==="{"?r+=1:(s===")"||s==="]"||s==="}")&&(r=Math.max(0,r-1)),s===";"&&r===0){o.push(l),l="";continue}l+=e[a]??""}return l.trim()&&o.push(l),o.map(a=>a.trim()).filter(a=>a.length>0)}function $(e){let n=P.exec(e.trim());return n?O.test(n[1]??""):!1}function z(e){return K.test(e.trimEnd())}function j(e,n,o){let r=new Set,l=new Set(n.map(t=>t.def.parentTypeName).filter(t=>t!==null));if(l.size===0)return r;let a=k(e,l),s=new Map;for(let t of o){if(!t.parentTypeName)continue;let c=s.get(t.leaf)??new Set;c.add(t.parentTypeName),s.set(t.leaf,c)}for(let t of n){let c=t.def.parentTypeName;if(!c)continue;let d=a.get(c);if(!d||d.size===0)continue;let f=s.get(t.def.leaf)??new Set;[...d].every(u=>f.has(u))&&r.add(t.def.symbol)}return r}var Y=/\bclass\s+([A-Za-z_$][\w$]*)\s+extends\s+([A-Za-z_$][\w$]*)/g;function k(e,n){let o=new Map;for(let r of g(e,{includeIgnored:!1})){let l=S(e,r);if(l)for(let a of l.matchAll(Y)){let s=a[1],t=a[2];if(!s||!t||!n.has(t))continue;let c=o.get(t)??new Set;c.add(s),o.set(t,c)}}return o}export{et as a};
2
- //# sourceMappingURL=chunk-UBGWN7I4.js.map
1
+ import{a as _}from"./chunk-NBZKSTXP.js";import{f as L,g as A}from"./chunk-2OMXFE64.js";import{a as R}from"./chunk-U7NUXDQO.js";import{b as D}from"./chunk-B75HZHUP.js";import{c as E}from"./chunk-HENP2O4A.js";import{a as w}from"./chunk-BGBBVSH4.js";import{f as I,h as x}from"./chunk-NDKOVQFG.js";import{d as N}from"./chunk-GVAF222T.js";import{b as T,c as h}from"./chunk-F74LZWCE.js";import{a as g}from"./chunk-ICUL7XRT.js";import{w as S}from"./chunk-7GAK2F3H.js";var F={caller:3,"entry-surface":2,rooted:1},O=/not\s*yet\s*implement|not\s*implement|unimplement|\bnyi\b|\btodo\b|\bstub\b|not\s*supported|coming\s*soon/i,P=/^throw\s+new\s+[\w.]*Error\s*\(([\s\S]*)\)\s*;?$/,C=/^return(\s+(null|undefined|false|0|''|""|``|\[\]|\{\}))?\s*;?$/,v=/\/\/\s*TODO\b|\/\*\s*TODO\b/i,K=/(?:=>|\))\s*(?::\s*[^{;=]+)?\s*\{\s*\}\s*;?\s*$/;function et(e,n={}){let{scope:o,limit:r=30,scanLimit:l,semantic:a=!0}=n,s=new E(e),t=D(s.productionCallableDefinitions({scope:o,minLoc:1,requireFunctionLikeSymbol:!0,excludeTypesFiles:!0}),l),c=[];for(let i of t){let m=M(e,i);m&&c.push(m)}if(c.length===0)return[];let d=j(e,c,t),f=c.filter(i=>!d.has(i.def.symbol));if(f.length===0)return[];let p=_(e,s).forDefinitions(f.map(i=>i.def),{semantic:a}),u=[];for(let i of f){let m=p.get(i.def.symbolId);if(m?.semanticIncomplete||m?.semanticUnavailable)continue;let b=m?.realConsumers.length??0,y=B(e,i.def,b);y&&u.push({symbol:i.def.symbol,shortName:N(i.def.symbol),file:i.def.relativePath,startLine:i.def.startLine,endLine:i.def.endLine,loc:w(i.def),stubKind:i.stubKind,reachability:y,callerFanIn:b,stubText:i.stubText})}return u.sort((i,m)=>F[m.reachability]-F[i.reachability]||m.callerFanIn-i.callerFanIn||i.file.localeCompare(m.file)||i.startLine-m.startLine),r?u.slice(0,r):u}function B(e,n,o){return o>0?"caller":x(e,n.symbol,n.relativePath)?"rooted":I(e,n.relativePath)?"entry-surface":null}function M(e,n){let o=L(e,n);if(!o)return null;let r=A(o),l=r.trim();if(l==="")return!z(o)||!R(e,n)?null:{def:n,stubKind:"empty-body",stubText:"(empty body)"};let a=h(r),s=T(r),t=U(a,s);if(t.length!==1)return null;let c=t[0];return $(c)?{def:n,stubKind:"throw-stub",stubText:c.trim()}:v.test(r)&&C.test(c.trim())?{def:n,stubKind:"todo-return-default",stubText:l}:null}function U(e,n){let o=[],r=0,l="";for(let a=0;a<n.length;a+=1){let s=n[a];if(s==="("||s==="["||s==="{"?r+=1:(s===")"||s==="]"||s==="}")&&(r=Math.max(0,r-1)),s===";"&&r===0){o.push(l),l="";continue}l+=e[a]??""}return l.trim()&&o.push(l),o.map(a=>a.trim()).filter(a=>a.length>0)}function $(e){let n=P.exec(e.trim());return n?O.test(n[1]??""):!1}function z(e){return K.test(e.trimEnd())}function j(e,n,o){let r=new Set,l=new Set(n.map(t=>t.def.parentTypeName).filter(t=>t!==null));if(l.size===0)return r;let a=k(e,l),s=new Map;for(let t of o){if(!t.parentTypeName)continue;let c=s.get(t.leaf)??new Set;c.add(t.parentTypeName),s.set(t.leaf,c)}for(let t of n){let c=t.def.parentTypeName;if(!c)continue;let d=a.get(c);if(!d||d.size===0)continue;let f=s.get(t.def.leaf)??new Set;[...d].every(u=>f.has(u))&&r.add(t.def.symbol)}return r}var Y=/\bclass\s+([A-Za-z_$][\w$]*)\s+extends\s+([A-Za-z_$][\w$]*)/g;function k(e,n){let o=new Map;for(let r of g(e,{includeIgnored:!1})){let l=S(e,r);if(l)for(let a of l.matchAll(Y)){let s=a[1],t=a[2];if(!s||!t||!n.has(t))continue;let c=o.get(t)??new Set;c.add(s),o.set(t,c)}}return o}export{et as a};
2
+ //# sourceMappingURL=chunk-7JELP5YE.js.map