scip-query 0.20.0 → 0.21.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 (586) hide show
  1. package/CHANGELOG.md +69 -0
  2. package/README.md +255 -884
  3. package/dist/augment-vue-worker.js +1 -1
  4. package/dist/by-kind-CI3O6PQG.js +2 -0
  5. package/dist/call-graph-6QTUTXH7.js +2 -0
  6. package/dist/call-graph-evidence-lZa2dwQA.d.ts +11 -0
  7. package/dist/change-analysis-types-CCtoCHbC.d.ts +9 -0
  8. package/dist/chunk-26CT72HM.js +2 -0
  9. package/dist/{chunk-7PIO7NKH.js → chunk-2COFMIVK.js} +2 -2
  10. package/dist/chunk-2H4IAJHO.js +2 -0
  11. package/dist/chunk-2I3RSUWX.js +16 -0
  12. package/dist/chunk-2RP27XLR.js +2 -0
  13. package/dist/chunk-2ZBMOQGG.js +3 -0
  14. package/dist/{chunk-HX4GQPZP.js → chunk-32A42O5B.js} +3 -3
  15. package/dist/chunk-35ELD3RM.js +2 -0
  16. package/dist/chunk-35IW3P4H.js +2 -0
  17. package/dist/{chunk-DQGFVPUV.js → chunk-3653GTR7.js} +3 -3
  18. package/dist/chunk-3EX7DNBC.js +2 -0
  19. package/dist/chunk-3FQ3KMCD.js +2 -0
  20. package/dist/{chunk-5E4WNAVD.js → chunk-3PII3JI5.js} +2 -2
  21. package/dist/chunk-3TNRNKAT.js +2 -0
  22. package/dist/chunk-3VLJ2DCA.js +2 -0
  23. package/dist/{chunk-XSRF6Q77.js → chunk-46JLFIGA.js} +2 -2
  24. package/dist/chunk-4DCKBY6T.js +5 -0
  25. package/dist/chunk-4EXFZP6H.js +2 -0
  26. package/dist/chunk-4IIMPWMR.js +29 -0
  27. package/dist/chunk-4ILHWBYF.js +2 -0
  28. package/dist/chunk-4N6QSEMZ.js +10 -0
  29. package/dist/chunk-4OE2JO6I.js +2 -0
  30. package/dist/{chunk-7BAVHKMJ.js → chunk-4S4DF62J.js} +9 -9
  31. package/dist/chunk-4UUCUASK.js +554 -0
  32. package/dist/chunk-5236NQV3.js +2 -0
  33. package/dist/chunk-54EOGFBR.js +2 -0
  34. package/dist/{chunk-LY4WC4AD.js → chunk-5H7IWVXJ.js} +2 -2
  35. package/dist/chunk-5IZTXSOL.js +117 -0
  36. package/dist/{chunk-AZJQQKDD.js → chunk-5SE323LF.js} +2 -2
  37. package/dist/chunk-5ZJH6DDE.js +2 -0
  38. package/dist/chunk-63MBA7EG.js +3 -0
  39. package/dist/chunk-6BJ7SOY7.js +2 -0
  40. package/dist/chunk-6GJAP4OE.js +2 -0
  41. package/dist/chunk-6IEVHGWG.js +26 -0
  42. package/dist/chunk-6SWA6B24.js +7 -0
  43. package/dist/chunk-6T7H2AFY.js +3 -0
  44. package/dist/chunk-73Z33VFI.js +4 -0
  45. package/dist/chunk-7COHFNJK.js +38 -0
  46. package/dist/chunk-7HU2IJ2T.js +3 -0
  47. package/dist/chunk-7IOAZRVL.js +60 -0
  48. package/dist/chunk-7KCZELVM.js +2 -0
  49. package/dist/chunk-7PPYXENX.js +2 -0
  50. package/dist/chunk-7TWP3MCP.js +2 -0
  51. package/dist/chunk-AA7K3XLM.js +21 -0
  52. package/dist/chunk-AJVMVE7X.js +7 -0
  53. package/dist/chunk-ANWGXPPN.js +4 -0
  54. package/dist/chunk-APLKXICZ.js +3 -0
  55. package/dist/{chunk-JDOEX4E6.js → chunk-AQDWTCDC.js} +2 -2
  56. package/dist/chunk-AUP6YI5M.js +2 -0
  57. package/dist/chunk-B7ECWJAZ.js +2 -0
  58. package/dist/{chunk-ZHXX42OH.js → chunk-BATIVRU2.js} +4 -4
  59. package/dist/chunk-BBEDPVPB.js +4 -0
  60. package/dist/chunk-BBWPOMGU.js +2 -0
  61. package/dist/chunk-BD6CV7PN.js +2 -0
  62. package/dist/{chunk-XKWKXZKW.js → chunk-BHE44MHT.js} +2 -2
  63. package/dist/chunk-BOJ5SVE2.js +2 -0
  64. package/dist/chunk-BZYSGZRK.js +2 -0
  65. package/dist/chunk-CA5RE6H7.js +2 -0
  66. package/dist/chunk-CKDOY6JA.js +2 -0
  67. package/dist/chunk-CN2WGM7D.js +2 -0
  68. package/dist/chunk-COTMS5KM.js +3 -0
  69. package/dist/chunk-CSDDOUA4.js +3 -0
  70. package/dist/chunk-CT5SI2I4.js +2 -0
  71. package/dist/chunk-D5EKVZPI.js +2 -0
  72. package/dist/{chunk-FKSELJQF.js → chunk-D5W4UZY5.js} +2 -2
  73. package/dist/{chunk-RUJURYSV.js → chunk-DEUGHURX.js} +2 -2
  74. package/dist/chunk-DHKBIOXF.js +7 -0
  75. package/dist/chunk-DMQ7ZKJG.js +81 -0
  76. package/dist/chunk-DMUGTKMD.js +2 -0
  77. package/dist/chunk-DOPCR5BY.js +2 -0
  78. package/dist/chunk-DRENNWRG.js +2 -0
  79. package/dist/chunk-E4EJBGDZ.js +2 -0
  80. package/dist/chunk-E7BJXRNV.js +2 -0
  81. package/dist/chunk-EA4SH4U5.js +5 -0
  82. package/dist/{chunk-L7AW2QB5.js → chunk-EKZRF57O.js} +2 -2
  83. package/dist/chunk-ELNRLMC5.js +29 -0
  84. package/dist/chunk-F4FNK44D.js +2 -0
  85. package/dist/chunk-F7WQ337U.js +308 -0
  86. package/dist/chunk-FEQIQ26E.js +2 -0
  87. package/dist/chunk-FGB567HK.js +23 -0
  88. package/dist/chunk-FHV7NMFU.js +29 -0
  89. package/dist/chunk-FN6EJM6Q.js +2 -0
  90. package/dist/chunk-FTSQNONX.js +2 -0
  91. package/dist/chunk-FUG6RPYY.js +6 -0
  92. package/dist/chunk-G2F6T5BV.js +2 -0
  93. package/dist/chunk-G6OGPXJW.js +9 -0
  94. package/dist/chunk-GFLTPNWV.js +3 -0
  95. package/dist/chunk-GTDP2SKQ.js +2 -0
  96. package/dist/chunk-H46QMB7E.js +2 -0
  97. package/dist/chunk-H5EXS3HM.js +2 -0
  98. package/dist/chunk-HEOMG7IM.js +8 -0
  99. package/dist/chunk-HG5YI7PV.js +2 -0
  100. package/dist/{chunk-7SQQWSY3.js → chunk-HGKEAP7F.js} +2 -2
  101. package/dist/chunk-HUZNZ3H2.js +2 -0
  102. package/dist/chunk-HWLCBKFE.js +2 -0
  103. package/dist/chunk-I3U2FN2T.js +13 -0
  104. package/dist/{chunk-JAYYFEQY.js → chunk-I7PFL5P3.js} +2 -2
  105. package/dist/{chunk-2HPVVXM5.js → chunk-ICHBVITH.js} +2 -2
  106. package/dist/chunk-ICUQONOG.js +38 -0
  107. package/dist/chunk-IDPLC3FI.js +5 -0
  108. package/dist/{chunk-A73XVBCR.js → chunk-IGKKTHJR.js} +2 -2
  109. package/dist/chunk-IOKWFRFQ.js +4 -0
  110. package/dist/chunk-IPAL6DP2.js +3 -0
  111. package/dist/chunk-IUJ3ZFEE.js +7 -0
  112. package/dist/chunk-IXJ26KJJ.js +16 -0
  113. package/dist/chunk-IYV2YBHM.js +2 -0
  114. package/dist/chunk-JVZNWJBH.js +2 -0
  115. package/dist/chunk-K5MZYZV7.js +3 -0
  116. package/dist/{chunk-3G66UZBH.js → chunk-KFK7GF5C.js} +2 -2
  117. package/dist/chunk-KTRGJLY7.js +18 -0
  118. package/dist/chunk-KW6B5OL4.js +2 -0
  119. package/dist/chunk-KWARB5FZ.js +2 -0
  120. package/dist/chunk-LHTT5C3Z.js +2 -0
  121. package/dist/chunk-LPGDO2XA.js +3 -0
  122. package/dist/chunk-LXLD46LH.js +21 -0
  123. package/dist/chunk-MEI3PTUK.js +2 -0
  124. package/dist/chunk-MJNV7OCG.js +5 -0
  125. package/dist/chunk-MO226P4Q.js +4 -0
  126. package/dist/{chunk-3CLX5EOX.js → chunk-MOBF2GH6.js} +2 -2
  127. package/dist/chunk-MXNGIEPU.js +3 -0
  128. package/dist/chunk-MYUKI5VN.js +4 -0
  129. package/dist/{chunk-TFRAYKN6.js → chunk-N5C65OFK.js} +2 -2
  130. package/dist/{chunk-PXY7F6Y4.js → chunk-O2RM7E7L.js} +5 -5
  131. package/dist/chunk-OFUBXBYX.js +3 -0
  132. package/dist/chunk-OFY4HTMI.js +2 -0
  133. package/dist/chunk-OIRWZIYL.js +38 -0
  134. package/dist/chunk-OIVZ7PW6.js +438 -0
  135. package/dist/chunk-ORBKAUCH.js +4 -0
  136. package/dist/chunk-OUB4J26T.js +2 -0
  137. package/dist/chunk-OVPS2ILI.js +20 -0
  138. package/dist/chunk-PHSPBQM6.js +5 -0
  139. package/dist/{chunk-JVYA47YU.js → chunk-PIZY2GX6.js} +2 -2
  140. package/dist/chunk-PNISDVYC.js +3 -0
  141. package/dist/chunk-PQOL42AW.js +2 -0
  142. package/dist/chunk-PUVZNFVY.js +11 -0
  143. package/dist/chunk-PZEI2TVL.js +4 -0
  144. package/dist/{chunk-ZK26BAQL.js → chunk-Q2J2VZZT.js} +2 -2
  145. package/dist/chunk-Q7HB7BFJ.js +2 -0
  146. package/dist/{chunk-ZTETIQ35.js → chunk-QBANU5BQ.js} +2 -2
  147. package/dist/chunk-QD7IFBCR.js +10 -0
  148. package/dist/chunk-QDCCHMVZ.js +2 -0
  149. package/dist/chunk-QLQBZOJH.js +3 -0
  150. package/dist/{chunk-PQCI4SQX.js → chunk-QXR5QPSF.js} +2 -2
  151. package/dist/chunk-R2MOKIVO.js +2 -0
  152. package/dist/{chunk-EN3O7VJA.js → chunk-RFWAUHVW.js} +2 -2
  153. package/dist/chunk-RGCJ4646.js +16 -0
  154. package/dist/{chunk-BPAPWKP6.js → chunk-S3RTPPLQ.js} +8 -8
  155. package/dist/chunk-S73HBCGI.js +11 -0
  156. package/dist/chunk-SDPA5DKN.js +210 -0
  157. package/dist/chunk-SEUJVWT2.js +3 -0
  158. package/dist/chunk-SF7X6QNW.js +2 -0
  159. package/dist/chunk-SKUMCCC5.js +2 -0
  160. package/dist/chunk-SSSJO4RG.js +2 -0
  161. package/dist/chunk-SWFAFA4G.js +49 -0
  162. package/dist/chunk-SYUNTKO2.js +2 -0
  163. package/dist/chunk-T6FRID7Y.js +3 -0
  164. package/dist/chunk-TGWNNMPF.js +3 -0
  165. package/dist/chunk-TM5XEDDR.js +4 -0
  166. package/dist/chunk-TNOHGHZQ.js +2 -0
  167. package/dist/chunk-U2GPTA5U.js +3 -0
  168. package/dist/{chunk-SXP2MBJH.js → chunk-U7DR7MJD.js} +2 -2
  169. package/dist/chunk-U7LRSQG6.js +3 -0
  170. package/dist/chunk-UL4VJUMD.js +2 -0
  171. package/dist/chunk-UNORWZIJ.js +16 -0
  172. package/dist/chunk-UQ7XPRWU.js +2 -0
  173. package/dist/{chunk-6SHPK5ZE.js → chunk-URMZLV2N.js} +2 -2
  174. package/dist/chunk-URTX2BEA.js +6 -0
  175. package/dist/chunk-UZFCZ7SJ.js +2 -0
  176. package/dist/{chunk-KMKTIO2G.js → chunk-V7LQZTTZ.js} +2 -2
  177. package/dist/chunk-VETXXOYU.js +3 -0
  178. package/dist/chunk-VGRUM7JI.js +3 -0
  179. package/dist/{chunk-WXZLAAWK.js → chunk-VNKYRJKN.js} +2 -2
  180. package/dist/chunk-VWLIOEEF.js +11 -0
  181. package/dist/chunk-WB6LGCFB.js +6 -0
  182. package/dist/{chunk-W4ETQAXM.js → chunk-WK4FD4PG.js} +2 -2
  183. package/dist/{chunk-O64IZ6UX.js → chunk-WKPZCQLI.js} +2 -2
  184. package/dist/chunk-WSG3DK5H.js +2 -0
  185. package/dist/chunk-WULAPQUD.js +38 -0
  186. package/dist/chunk-WZQFY5S7.js +4 -0
  187. package/dist/chunk-X434XZAI.js +2 -0
  188. package/dist/chunk-X7PJJYKX.js +29 -0
  189. package/dist/chunk-XDAUYDFT.js +2 -0
  190. package/dist/chunk-XITQLISP.js +2 -0
  191. package/dist/chunk-XRXCANFQ.js +4 -0
  192. package/dist/chunk-XVDMJMES.js +3 -0
  193. package/dist/chunk-XXJ7WL3F.js +35 -0
  194. package/dist/chunk-Y4XQ7LES.js +9 -0
  195. package/dist/chunk-YIEFEPG6.js +16 -0
  196. package/dist/chunk-YRVERHJR.js +49 -0
  197. package/dist/{chunk-CJST5ETY.js → chunk-YUFWLWIC.js} +2 -2
  198. package/dist/chunk-YUKYB54I.js +1 -0
  199. package/dist/chunk-Z3GCK3PD.js +3 -0
  200. package/dist/chunk-ZBNL3QCY.js +4 -0
  201. package/dist/chunk-ZD3Z54IW.js +2 -0
  202. package/dist/chunk-ZDVDSDFG.js +4 -0
  203. package/dist/{chunk-32LVLCLN.js → chunk-ZHSARYVS.js} +3 -3
  204. package/dist/{chunk-BDCC2NPY.js → chunk-ZW44MCJM.js} +2 -2
  205. package/dist/{chunk-N5W4YZMK.js → chunk-ZYREOING.js} +2 -2
  206. package/dist/cli-main.js +8 -0
  207. package/dist/cli.js +1 -3
  208. package/dist/code-CczEvHui.d.ts +121 -0
  209. package/dist/code-EQL6ZBLH.js +2 -0
  210. package/dist/code-result-json-6E4J6LGZ.js +2 -0
  211. package/dist/command-descriptors-QH3G2OVD.js +346 -0
  212. package/dist/{config-types-jVM3D7MA.d.ts → config-types-Cm-VSEBb.d.ts} +189 -23
  213. package/dist/dataflow-2BLMUZBP.js +2 -0
  214. package/dist/{db-B5PM5yNk.d.ts → db-LKJXAlNS.d.ts} +1 -1
  215. package/dist/dependence-slice-MGAJDZXB.js +2 -0
  216. package/dist/deps-GQMUYVKW.js +2 -0
  217. package/dist/direct-navigation-6RUJKLAV.js +3 -0
  218. package/dist/entry-map-V2NQP5JU.js +2 -0
  219. package/dist/exploration-topology-BG4v30HZ.d.ts +256 -0
  220. package/dist/file-dep-graph-Bqg3t3Px.d.ts +4 -0
  221. package/dist/file-kind-BKCVMNUf.d.ts +10 -0
  222. package/dist/files-VM53I4IU.js +2 -0
  223. package/dist/graph-evidence-CbUPCSKV.d.ts +126 -0
  224. package/dist/graph-exploration-contract-CqDsnPQL.d.ts +7 -0
  225. package/dist/{health-Do5TKSJI.d.ts → health-Wl5G_LRt.d.ts} +33 -34
  226. package/dist/hierarchy-D553WRSZ.js +2 -0
  227. package/dist/imports-DOZAJWLW.js +2 -0
  228. package/dist/index.d.ts +4 -31
  229. package/dist/index.js +1 -1
  230. package/dist/members-HE67475K.js +2 -0
  231. package/dist/methods-K5JK4PPH.js +2 -0
  232. package/dist/next-anchor-candidates-BwMczMvX.d.ts +90 -0
  233. package/dist/output-continuation-command-LKBUTNRL.js +3 -0
  234. package/dist/output-pagination-VAWOGX4R.js +19 -0
  235. package/dist/postinstall.js +1 -1
  236. package/dist/project-reindex-4ARU6QCM.js +3 -0
  237. package/dist/queries/affected.d.ts +22 -4
  238. package/dist/queries/affected.js +1 -1
  239. package/dist/queries/anchors.d.ts +123 -0
  240. package/dist/queries/anchors.js +2 -0
  241. package/dist/queries/architecture.d.ts +3 -2
  242. package/dist/queries/architecture.js +1 -1
  243. package/dist/queries/bottlenecks.d.ts +26 -7
  244. package/dist/queries/bottlenecks.js +1 -1
  245. package/dist/queries/by-kind.d.ts +2 -2
  246. package/dist/queries/by-kind.js +1 -1
  247. package/dist/queries/call-graph.d.ts +17 -3
  248. package/dist/queries/call-graph.js +1 -1
  249. package/dist/queries/change-surface.d.ts +2 -2
  250. package/dist/queries/change-surface.js +1 -1
  251. package/dist/queries/cleanup-plan.d.ts +2 -2
  252. package/dist/queries/cleanup-plan.js +1 -1
  253. package/dist/queries/co-change.d.ts +2 -2
  254. package/dist/queries/co-change.js +1 -1
  255. package/dist/queries/code.d.ts +5 -26
  256. package/dist/queries/code.js +1 -1
  257. package/dist/queries/complexity-hotspots.d.ts +2 -2
  258. package/dist/queries/complexity-hotspots.js +1 -1
  259. package/dist/queries/complexity.d.ts +2 -2
  260. package/dist/queries/complexity.js +1 -1
  261. package/dist/queries/context.d.ts +145 -0
  262. package/dist/queries/context.js +2 -0
  263. package/dist/queries/convergence.d.ts +2 -2
  264. package/dist/queries/convergence.js +1 -1
  265. package/dist/queries/coupling.d.ts +8 -3
  266. package/dist/queries/coupling.js +1 -1
  267. package/dist/queries/cycles.d.ts +34 -7
  268. package/dist/queries/cycles.js +1 -1
  269. package/dist/queries/dataflow.d.ts +40 -14
  270. package/dist/queries/dataflow.js +1 -1
  271. package/dist/queries/dead.d.ts +2 -2
  272. package/dist/queries/dead.js +1 -1
  273. package/dist/queries/decorative-checkers.d.ts +3 -3
  274. package/dist/queries/decorative-checkers.js +1 -1
  275. package/dist/queries/deep-chains.d.ts +4 -38
  276. package/dist/queries/deep-chains.js +1 -1
  277. package/dist/queries/dependence-slice.d.ts +47 -0
  278. package/dist/queries/dependence-slice.js +2 -0
  279. package/dist/queries/dependency-depth.d.ts +49 -0
  280. package/dist/queries/dependency-depth.js +2 -0
  281. package/dist/queries/deps.d.ts +4 -2
  282. package/dist/queries/deps.js +1 -1
  283. package/dist/queries/diff-impact.d.ts +3 -3
  284. package/dist/queries/diff-impact.js +1 -1
  285. package/dist/queries/doc-drift.d.ts +4 -4
  286. package/dist/queries/doc-drift.js +1 -1
  287. package/dist/queries/drift.d.ts +2 -2
  288. package/dist/queries/drift.js +1 -1
  289. package/dist/queries/duplicate-bodies.d.ts +2 -2
  290. package/dist/queries/duplicate-bodies.js +1 -1
  291. package/dist/queries/entry-map.d.ts +121 -0
  292. package/dist/queries/entry-map.js +2 -0
  293. package/dist/queries/evidence.d.ts +70 -0
  294. package/dist/queries/evidence.js +2 -0
  295. package/dist/queries/extract-candidates.d.ts +2 -2
  296. package/dist/queries/extract-candidates.js +1 -1
  297. package/dist/queries/fan.d.ts +18 -5
  298. package/dist/queries/fan.js +1 -1
  299. package/dist/queries/files.d.ts +2 -2
  300. package/dist/queries/files.js +1 -1
  301. package/dist/queries/health.d.ts +4 -3
  302. package/dist/queries/health.js +1 -1
  303. package/dist/queries/hierarchy.d.ts +5 -3
  304. package/dist/queries/hierarchy.js +1 -1
  305. package/dist/queries/hotspots.d.ts +11 -5
  306. package/dist/queries/hotspots.js +1 -1
  307. package/dist/queries/imports.d.ts +2 -2
  308. package/dist/queries/imports.js +1 -1
  309. package/dist/queries/incomplete-migration.d.ts +4 -4
  310. package/dist/queries/incomplete-migration.js +1 -1
  311. package/dist/queries/index.d.ts +56 -136
  312. package/dist/queries/index.js +1 -1
  313. package/dist/queries/isolated.d.ts +2 -2
  314. package/dist/queries/isolated.js +1 -1
  315. package/dist/queries/locality-candidates.d.ts +2 -2
  316. package/dist/queries/locality-candidates.js +1 -1
  317. package/dist/queries/members.d.ts +2 -2
  318. package/dist/queries/members.js +1 -1
  319. package/dist/queries/methods.d.ts +2 -2
  320. package/dist/queries/methods.js +1 -1
  321. package/dist/queries/not-implemented.d.ts +3 -3
  322. package/dist/queries/not-implemented.js +1 -1
  323. package/dist/queries/outline.d.ts +2 -2
  324. package/dist/queries/outline.js +1 -1
  325. package/dist/queries/passthrough-candidates.d.ts +5 -9
  326. package/dist/queries/passthrough-candidates.js +1 -1
  327. package/dist/queries/plan-context.d.ts +27 -64
  328. package/dist/queries/plan-context.js +1 -1
  329. package/dist/queries/react-component-duplicates.d.ts +2 -2
  330. package/dist/queries/react-component-duplicates.js +1 -1
  331. package/dist/queries/react-hook-candidates.d.ts +2 -2
  332. package/dist/queries/react-hook-candidates.js +1 -1
  333. package/dist/queries/react-large-component-pressure.d.ts +2 -2
  334. package/dist/queries/react-large-component-pressure.js +1 -1
  335. package/dist/queries/recent-duplicates.d.ts +2 -2
  336. package/dist/queries/recent-duplicates.js +1 -1
  337. package/dist/queries/redundant-reexports.d.ts +2 -2
  338. package/dist/queries/redundant-reexports.js +1 -1
  339. package/dist/queries/reference-neighborhood.d.ts +4 -0
  340. package/dist/queries/reference-neighborhood.js +2 -0
  341. package/dist/queries/reference-reachability.d.ts +48 -0
  342. package/dist/queries/reference-reachability.js +2 -0
  343. package/dist/queries/refs.d.ts +2 -2
  344. package/dist/queries/refs.js +1 -1
  345. package/dist/queries/self-audit.d.ts +2 -2
  346. package/dist/queries/self-audit.js +1 -1
  347. package/dist/queries/similar-chains.d.ts +2 -2
  348. package/dist/queries/similar-chains.js +1 -1
  349. package/dist/queries/similar-files.d.ts +2 -2
  350. package/dist/queries/similar-files.js +1 -1
  351. package/dist/queries/similar-signatures.d.ts +2 -2
  352. package/dist/queries/similar-signatures.js +1 -1
  353. package/dist/queries/similar.d.ts +2 -2
  354. package/dist/queries/similar.js +1 -1
  355. package/dist/queries/slice.d.ts +3 -36
  356. package/dist/queries/slice.js +1 -1
  357. package/dist/queries/source-inspection.d.ts +209 -0
  358. package/dist/queries/source-inspection.js +2 -0
  359. package/dist/queries/source-search.d.ts +13 -0
  360. package/dist/queries/source-search.js +2 -0
  361. package/dist/queries/stale-abstractions.d.ts +2 -2
  362. package/dist/queries/stale-abstractions.js +1 -1
  363. package/dist/queries/stats.d.ts +2 -2
  364. package/dist/queries/surface.d.ts +13 -4
  365. package/dist/queries/surface.js +1 -1
  366. package/dist/queries/symbols.d.ts +2 -2
  367. package/dist/queries/symbols.js +1 -1
  368. package/dist/queries/system-map.d.ts +449 -0
  369. package/dist/queries/system-map.js +2 -0
  370. package/dist/queries/system.d.ts +5 -3
  371. package/dist/queries/system.js +1 -1
  372. package/dist/queries/test-quality.d.ts +2 -2
  373. package/dist/queries/test-quality.js +1 -1
  374. package/dist/queries/trace.d.ts +47 -3
  375. package/dist/queries/trace.js +1 -1
  376. package/dist/queries/twin-ab.d.ts +3 -3
  377. package/dist/queries/twin-ab.js +1 -1
  378. package/dist/queries/twin-drift.d.ts +3 -3
  379. package/dist/queries/twin-drift.js +1 -1
  380. package/dist/queries/unused-imports.d.ts +2 -2
  381. package/dist/queries/unused-imports.js +1 -1
  382. package/dist/queries/unused-params.d.ts +2 -2
  383. package/dist/queries/unused-params.js +1 -1
  384. package/dist/queries/value-flow.d.ts +43 -0
  385. package/dist/queries/value-flow.js +2 -0
  386. package/dist/queries/vue-component-duplicates.d.ts +2 -2
  387. package/dist/queries/vue-component-duplicates.js +1 -1
  388. package/dist/queries/vue-composable-candidates.d.ts +2 -2
  389. package/dist/queries/vue-composable-candidates.js +1 -1
  390. package/dist/queries/vue-large-view-pressure.d.ts +2 -2
  391. package/dist/queries/vue-large-view-pressure.js +1 -1
  392. package/dist/queries/wrapper-candidates.d.ts +2 -2
  393. package/dist/queries/wrapper-candidates.js +1 -1
  394. package/dist/query-service-fastpath.js +6 -0
  395. package/dist/query-service-server.js +5 -0
  396. package/dist/refs-NBHKL4UQ.js +2 -0
  397. package/dist/refs-pagination-BBVTIHMH.js +2 -0
  398. package/dist/reindex-worker.js +27 -45
  399. package/dist/reindex.d.ts +62 -42
  400. package/dist/reindex.js +32 -33
  401. package/dist/repository-text-C0Q8VYdN.d.ts +19 -0
  402. package/dist/runtime.d.ts +286 -7
  403. package/dist/runtime.js +4 -3
  404. package/dist/rust-semantic-session-server.js +1 -1
  405. package/dist/rust-semantic-session-worker.js +1 -1
  406. package/dist/rust-semantic-worker.js +1 -1
  407. package/dist/{scip-cli-BnEwZRLJ.d.ts → scip-cli-CppzF5MK.d.ts} +33 -2
  408. package/dist/slice-U6S6LBSB.js +2 -0
  409. package/dist/source-search-types-Dwz8KeuW.d.ts +79 -0
  410. package/dist/source-snippet-_wrcgmZc.d.ts +15 -0
  411. package/dist/stats-OOJ74B32.js +2 -0
  412. package/dist/surface-C7SS5CDQ.js +2 -0
  413. package/dist/symbol-resolution-3FVEKDTJ.js +2 -0
  414. package/dist/system-6K2NOO5C.js +2 -0
  415. package/dist/trace-II5K2TMH.js +2 -0
  416. package/dist/typescript-mailbox-worker.js +1 -1
  417. package/dist/value-flow-MKFUUE5B.js +2 -0
  418. package/dist/watch-server.js +3 -2
  419. package/docs/AGENT_GUIDE.md +133 -476
  420. package/docs/AI_FAILURE_MODES.md +30 -301
  421. package/docs/API.md +1 -1
  422. package/docs/API_EVOLUTION.md +6 -0
  423. package/docs/CLI_JSON_OUTPUT.md +207 -29
  424. package/docs/COMMAND_REFERENCE.md +255 -154
  425. package/docs/CONFIGURATION_WRITE_SAFETY.md +14 -13
  426. package/docs/DETECTOR_EVIDENCE_CONTRACTS.md +84 -0
  427. package/docs/DETECTOR_GUIDE.md +46 -138
  428. package/docs/DURABILITY.md +7 -1
  429. package/docs/INDEX_GENERATIONS.md +6 -0
  430. package/docs/LOCK_PROTOCOL.md +8 -0
  431. package/docs/REINDEX_METADATA_COMPATIBILITY.md +13 -3
  432. package/docs/SECURITY_MODEL.md +39 -42
  433. package/docs/accuracy-audit-checklist.md +4 -0
  434. package/docs/accuracy-hardening-goal.md +9 -2
  435. package/docs/analyzer-inventory.md +59 -264
  436. package/docs/analyzer-validation-protocol.md +62 -170
  437. package/docs/architecture-coherence-vision.md +18 -12
  438. package/docs/locality-analyzer-design.md +1 -1
  439. package/docs/schemas/cli-json-envelope.schema.json +212 -27
  440. package/docs/schemas/cli-json-export-receipt.schema.json +25 -0
  441. package/docs/schemas/cli-output-page.schema.json +1 -1
  442. package/docs/schemas/observation-receipt.schema.json +164 -0
  443. package/docs/schemas/project-config.schema.json +27 -45
  444. package/docs/schemas/suppression-record.schema.json +1 -34
  445. package/package.json +65 -8
  446. package/skills/concrete-plan/SKILL.md +8 -0
  447. package/skills/concrete-plan/agents/openai.yaml +4 -0
  448. package/skills/scip-explore/SKILL.md +3 -85
  449. package/skills/scip-explore/agents/openai.yaml +3 -3
  450. package/skills/scip-integrity-audit/SKILL.md +185 -0
  451. package/skills/scip-integrity-audit/agents/openai.yaml +4 -0
  452. package/skills/scip-plan/SKILL.md +67 -49
  453. package/skills/scip-plan/agents/openai.yaml +3 -3
  454. package/skills/scip-query/SKILL.md +77 -77
  455. package/skills/scip-query/agents/openai.yaml +3 -3
  456. package/skills/scip-setup/SKILL.md +10 -102
  457. package/skills/scip-setup/agents/openai.yaml +3 -3
  458. package/dist/chunk-26QA6FAI.js +0 -8
  459. package/dist/chunk-2KAZEZ6M.js +0 -2
  460. package/dist/chunk-3ORVDL3H.js +0 -2
  461. package/dist/chunk-46XGSFNI.js +0 -2
  462. package/dist/chunk-4MAK2HOY.js +0 -6
  463. package/dist/chunk-4TURLRL5.js +0 -16
  464. package/dist/chunk-4UQVNCQE.js +0 -2
  465. package/dist/chunk-55Q3WLZX.js +0 -2
  466. package/dist/chunk-5I5G2QOX.js +0 -3
  467. package/dist/chunk-6LDJQXAH.js +0 -2
  468. package/dist/chunk-6O5TICIZ.js +0 -3
  469. package/dist/chunk-7O5IKBTZ.js +0 -16
  470. package/dist/chunk-7S5E7KWT.js +0 -2
  471. package/dist/chunk-7WPLAODU.js +0 -5
  472. package/dist/chunk-AFHORGLH.js +0 -42
  473. package/dist/chunk-AIE7TFJW.js +0 -9
  474. package/dist/chunk-AQOFWNQJ.js +0 -1
  475. package/dist/chunk-B2PX5I6M.js +0 -2
  476. package/dist/chunk-B75HZHUP.js +0 -2
  477. package/dist/chunk-B7PBSLZN.js +0 -2
  478. package/dist/chunk-BBW6JFHN.js +0 -2
  479. package/dist/chunk-BNXCIFVY.js +0 -2
  480. package/dist/chunk-BS2NMXQZ.js +0 -4
  481. package/dist/chunk-C3KV2II6.js +0 -2
  482. package/dist/chunk-C43RDDP4.js +0 -20
  483. package/dist/chunk-DAFAHMNB.js +0 -42
  484. package/dist/chunk-DQLPXMH6.js +0 -8
  485. package/dist/chunk-EKZTZXHZ.js +0 -117
  486. package/dist/chunk-EW2NTSFA.js +0 -18
  487. package/dist/chunk-F3Z4OUDS.js +0 -8
  488. package/dist/chunk-FJH2NW7J.js +0 -66
  489. package/dist/chunk-FTFP6O3L.js +0 -11
  490. package/dist/chunk-FYLK2DEJ.js +0 -2
  491. package/dist/chunk-GH74ASD6.js +0 -11
  492. package/dist/chunk-GMXWZP2B.js +0 -2
  493. package/dist/chunk-GOUBFH5O.js +0 -3
  494. package/dist/chunk-HLF2TX6R.js +0 -2
  495. package/dist/chunk-HX7M4BDI.js +0 -30
  496. package/dist/chunk-HZ72SESS.js +0 -128
  497. package/dist/chunk-IB2N4FIY.js +0 -10
  498. package/dist/chunk-IZYYAFN5.js +0 -2
  499. package/dist/chunk-JFGGXWQF.js +0 -947
  500. package/dist/chunk-JN4NMBEX.js +0 -8
  501. package/dist/chunk-JW56N3KI.js +0 -4
  502. package/dist/chunk-JZ2OXNWB.js +0 -2
  503. package/dist/chunk-KFZNKUNT.js +0 -2
  504. package/dist/chunk-L5GJNV2T.js +0 -8
  505. package/dist/chunk-L7JDSCDF.js +0 -4
  506. package/dist/chunk-LU47HG23.js +0 -14
  507. package/dist/chunk-LVY7NPF7.js +0 -2
  508. package/dist/chunk-MKCDWWGV.js +0 -4
  509. package/dist/chunk-MNE7YG56.js +0 -2
  510. package/dist/chunk-MRXBEXSY.js +0 -26
  511. package/dist/chunk-MV7OWDUX.js +0 -2
  512. package/dist/chunk-NGEXCJJW.js +0 -11
  513. package/dist/chunk-NIW6JDC5.js +0 -29
  514. package/dist/chunk-PBUQFCNB.js +0 -16
  515. package/dist/chunk-POAVPHH7.js +0 -2
  516. package/dist/chunk-QZ4JVECJ.js +0 -2
  517. package/dist/chunk-RDO52JGY.js +0 -2
  518. package/dist/chunk-RJT3TUUZ.js +0 -2
  519. package/dist/chunk-RVLDN63O.js +0 -4
  520. package/dist/chunk-RXOXSKY3.js +0 -2
  521. package/dist/chunk-S7OYBOCK.js +0 -2
  522. package/dist/chunk-SMNXQT5Z.js +0 -3
  523. package/dist/chunk-SRAFT254.js +0 -2
  524. package/dist/chunk-T7YQSHPQ.js +0 -3
  525. package/dist/chunk-UJCOIXDY.js +0 -2
  526. package/dist/chunk-UJPRPGCO.js +0 -13
  527. package/dist/chunk-WCCFZ7V7.js +0 -113
  528. package/dist/chunk-WUPW3UN3.js +0 -3
  529. package/dist/chunk-X54AGLVX.js +0 -2
  530. package/dist/chunk-Y2MVPNKY.js +0 -5
  531. package/dist/chunk-YKUU5AIC.js +0 -3
  532. package/dist/chunk-YLCJLTPL.js +0 -2
  533. package/dist/chunk-YTQVETEO.js +0 -2
  534. package/dist/chunk-Z4N3MZYA.js +0 -38
  535. package/dist/chunk-ZJOOT3BG.js +0 -2
  536. package/dist/command-descriptors-DSS46KXI.js +0 -642
  537. package/dist/diff-gate-types-B0QYpDv1.d.ts +0 -11
  538. package/dist/direct-navigation-6YHV6IB5.js +0 -3
  539. package/dist/queries/diff-gate.d.ts +0 -253
  540. package/dist/queries/diff-gate.js +0 -2
  541. package/docs/COMMITTED_RECORD_COMPATIBILITY.md +0 -154
  542. package/docs/analyzer-validation-ledger.md +0 -516
  543. package/docs/schemas/outcome-event-record.schema.json +0 -95
  544. package/skills/_shared/SKILL.md +0 -101
  545. package/skills/_shared/agents/openai.yaml +0 -4
  546. package/skills/_shared/references/agent-contract-catalog.md +0 -105
  547. package/skills/_shared/references/command-catalog.md +0 -118
  548. package/skills/_shared/references/detector-precision-and-diffgate.md +0 -59
  549. package/skills/_shared/references/evidence-and-dead-code.md +0 -25
  550. package/skills/scip-audit/SKILL.md +0 -77
  551. package/skills/scip-audit/agents/openai.yaml +0 -4
  552. package/skills/scip-audit/references/claims.md +0 -98
  553. package/skills/scip-audit/references/cleanup.md +0 -100
  554. package/skills/scip-audit/references/directory.md +0 -222
  555. package/skills/scip-audit/references/frontend.md +0 -130
  556. package/skills/scip-audit/references/integrity.md +0 -154
  557. package/skills/scip-audit/references/maintainability.md +0 -162
  558. package/skills/scip-audit/references/twin-drift.md +0 -104
  559. package/skills/scip-diagnose/SKILL.md +0 -52
  560. package/skills/scip-diagnose/agents/openai.yaml +0 -4
  561. package/skills/scip-diagnose/references/debug.md +0 -117
  562. package/skills/scip-diagnose/references/probe-reachability.md +0 -77
  563. package/skills/scip-diagnose/references/root-cause.md +0 -145
  564. package/skills/scip-diagnose/references/triage.md +0 -119
  565. package/skills/scip-explore/references/diagrams.md +0 -40
  566. package/skills/scip-explore/references/language-playbook.md +0 -49
  567. package/skills/scip-improve/SKILL.md +0 -56
  568. package/skills/scip-improve/agents/openai.yaml +0 -4
  569. package/skills/scip-improve/references/cleanup-batches.md +0 -53
  570. package/skills/scip-improve/references/directory-moves.md +0 -53
  571. package/skills/scip-improve/references/doc-reconcile.md +0 -30
  572. package/skills/scip-improve/references/frontend-extraction.md +0 -39
  573. package/skills/scip-improve/references/maintainability-mechanism.md +0 -43
  574. package/skills/scip-improve/references/twin-drift.md +0 -35
  575. package/skills/scip-plan/references/api-impact.md +0 -19
  576. package/skills/scip-plan/references/conductor.md +0 -41
  577. package/skills/scip-plan/references/high-assurance.md +0 -43
  578. package/skills/scip-plan/references/hyper-optimization.md +0 -50
  579. package/skills/scip-plan/references/tla-model.md +0 -88
  580. package/skills/scip-setup/references/bootstrap-workflow.md +0 -119
  581. package/skills/scip-setup/references/language-verification.md +0 -61
  582. package/skills/scip-setup/references/lifecycle-commands.md +0 -119
  583. package/skills/scip-setup/references/per-repo-triage.md +0 -24
  584. package/skills/scip-verify/SKILL.md +0 -229
  585. package/skills/scip-verify/agents/openai.yaml +0 -4
  586. package/skills/scip-verify/references/calibrate-detectors.md +0 -170
@@ -0,0 +1,43 @@
1
+ import { S as ScipDatabase } from '../db-LKJXAlNS.js';
2
+ import { G as GraphEvidenceCoverage, b as GraphEvidenceTarget, a as GraphEvidenceEdge } from '../graph-evidence-CbUPCSKV.js';
3
+ import 'better-sqlite3';
4
+ import '../config-types-Cm-VSEBb.js';
5
+ import '../graph-exploration-contract-CqDsnPQL.js';
6
+ import '../exploration-topology-BG4v30HZ.js';
7
+
8
+ /** Coverage of the conservative value-flow relationships actually proved. */
9
+ interface ValueFlowCoverage {
10
+ status: GraphEvidenceCoverage['status'];
11
+ basis: 'proved-bounded-static-value-flow';
12
+ analysisBasis: 'partial-system-definition-use';
13
+ providers: readonly ['bounded-static-value-flow', 'typescript-local-dependence'];
14
+ supportedRelations: string[];
15
+ unsupportedRelations: string[];
16
+ graph: GraphEvidenceCoverage;
17
+ }
18
+ interface ValueFlowResult {
19
+ kind: 'value-flow';
20
+ targets: GraphEvidenceTarget[];
21
+ edges: GraphEvidenceEdge[];
22
+ coverage: ValueFlowCoverage;
23
+ }
24
+ /**
25
+ * Project proved value transfers around exact symbol or source-location roots.
26
+ *
27
+ * This is intentionally narrower than a whole-program dataflow claim. The
28
+ * providers prove TypeScript local reaching definitions and right-hand-side
29
+ * assignment flow, compiler-resolved argument-to-parameter forwarding,
30
+ * bounded static argument values, and a callee-return-to-call-result transfer
31
+ * when the call result is consumed. Unsupported heap, exception, and dynamic
32
+ * flow remains in graph coverage rather than being relabeled as proved flow.
33
+ */
34
+ declare function valueFlow(db: ScipDatabase, selectors: {
35
+ symbols?: readonly string[];
36
+ locations?: readonly string[];
37
+ searches?: readonly string[];
38
+ }, options?: {
39
+ maxDepth?: number;
40
+ maxEdges?: number;
41
+ }): ValueFlowResult;
42
+
43
+ export { type ValueFlowCoverage, type ValueFlowResult, valueFlow };
@@ -0,0 +1,2 @@
1
+ import{a}from"../chunk-2RP27XLR.js";import"../chunk-BBWPOMGU.js";import"../chunk-XDAUYDFT.js";import"../chunk-YIEFEPG6.js";import"../chunk-U7LRSQG6.js";import"../chunk-3TNRNKAT.js";import"../chunk-B7ECWJAZ.js";import"../chunk-VETXXOYU.js";import"../chunk-WB6LGCFB.js";import"../chunk-FEQIQ26E.js";import"../chunk-TM5XEDDR.js";import"../chunk-YRVERHJR.js";import"../chunk-7TWP3MCP.js";import"../chunk-BOJ5SVE2.js";import"../chunk-JVZNWJBH.js";import"../chunk-BGBBVSH4.js";import"../chunk-6BJ7SOY7.js";import"../chunk-63MBA7EG.js";import"../chunk-P5XHIJHI.js";import"../chunk-ICUQONOG.js";import"../chunk-ZDVDSDFG.js";import"../chunk-RGCJ4646.js";import"../chunk-ELNRLMC5.js";import"../chunk-LPGDO2XA.js";import"../chunk-MYUKI5VN.js";import"../chunk-HEOMG7IM.js";import"../chunk-35IW3P4H.js";import"../chunk-YUKYB54I.js";import"../chunk-DHEQMPLW.js";import"../chunk-7COHFNJK.js";import"../chunk-MTDBHTSF.js";import"../chunk-5IZTXSOL.js";import"../chunk-I3U2FN2T.js";import"../chunk-AA7K3XLM.js";import"../chunk-DMQ7ZKJG.js";import"../chunk-7HU2IJ2T.js";import"../chunk-MO226P4Q.js";export{a as valueFlow};
2
+ //# sourceMappingURL=value-flow.js.map
@@ -1,7 +1,7 @@
1
- import { S as ScipDatabase } from '../db-B5PM5yNk.js';
1
+ import { S as ScipDatabase } from '../db-LKJXAlNS.js';
2
2
  import { F as FrontendBehaviorEvidenceClass, a as FrontendBehaviorActionTier } from '../frontend-behavior-evidence-EfM4_9bc.js';
3
3
  import 'better-sqlite3';
4
- import '../config-types-jVM3D7MA.js';
4
+ import '../config-types-Cm-VSEBb.js';
5
5
 
6
6
  interface VueComponentDuplicateResult {
7
7
  fileA: string;
@@ -1,2 +1,2 @@
1
- import{a}from"../chunk-B7PBSLZN.js";import"../chunk-AZJQQKDD.js";import"../chunk-B3X6KU75.js";import"../chunk-KMVGRIO2.js";import"../chunk-GH74ASD6.js";import"../chunk-WCCFZ7V7.js";import"../chunk-NGEXCJJW.js";import"../chunk-7S5E7KWT.js";import"../chunk-2KAZEZ6M.js";import"../chunk-C3KV2II6.js";export{a as vueComponentDuplicates};
1
+ import{a}from"../chunk-DMUGTKMD.js";import"../chunk-5SE323LF.js";import"../chunk-B3X6KU75.js";import"../chunk-KMVGRIO2.js";import"../chunk-AA7K3XLM.js";import"../chunk-DMQ7ZKJG.js";import"../chunk-7HU2IJ2T.js";import"../chunk-MO226P4Q.js";export{a as vueComponentDuplicates};
2
2
  //# sourceMappingURL=vue-component-duplicates.js.map
@@ -1,7 +1,7 @@
1
- import { S as ScipDatabase } from '../db-B5PM5yNk.js';
1
+ import { S as ScipDatabase } from '../db-LKJXAlNS.js';
2
2
  import { a as FrontendBehaviorActionTier, F as FrontendBehaviorEvidenceClass } from '../frontend-behavior-evidence-EfM4_9bc.js';
3
3
  import 'better-sqlite3';
4
- import '../config-types-jVM3D7MA.js';
4
+ import '../config-types-Cm-VSEBb.js';
5
5
 
6
6
  type VueComposableEvidenceClass = FrontendBehaviorEvidenceClass;
7
7
  type VueComposableActionTier = FrontendBehaviorActionTier;
@@ -1,2 +1,2 @@
1
- import{a}from"../chunk-WXZLAAWK.js";import"../chunk-AZJQQKDD.js";import"../chunk-B3X6KU75.js";import"../chunk-KMVGRIO2.js";import"../chunk-GH74ASD6.js";import"../chunk-WCCFZ7V7.js";import"../chunk-NGEXCJJW.js";import"../chunk-7S5E7KWT.js";import"../chunk-2KAZEZ6M.js";import"../chunk-C3KV2II6.js";export{a as vueComposableCandidates};
1
+ import{a}from"../chunk-VNKYRJKN.js";import"../chunk-5SE323LF.js";import"../chunk-B3X6KU75.js";import"../chunk-KMVGRIO2.js";import"../chunk-AA7K3XLM.js";import"../chunk-DMQ7ZKJG.js";import"../chunk-7HU2IJ2T.js";import"../chunk-MO226P4Q.js";export{a as vueComposableCandidates};
2
2
  //# sourceMappingURL=vue-composable-candidates.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-B5PM5yNk.js';
1
+ import { S as ScipDatabase } from '../db-LKJXAlNS.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-jVM3D7MA.js';
3
+ import '../config-types-Cm-VSEBb.js';
4
4
 
5
5
  type VueLargeViewPressureAxis = 'template' | 'script' | 'style' | 'external-script' | 'custom-block' | 'total';
6
6
  type VueLargeViewContextKind = 'component' | 'route-page';
@@ -1,2 +1,2 @@
1
- import{a}from"../chunk-PQCI4SQX.js";import"../chunk-B3X6KU75.js";import"../chunk-KMVGRIO2.js";import"../chunk-GH74ASD6.js";import"../chunk-WCCFZ7V7.js";import"../chunk-NGEXCJJW.js";import"../chunk-7S5E7KWT.js";import"../chunk-2KAZEZ6M.js";import"../chunk-C3KV2II6.js";export{a as vueLargeViewPressure};
1
+ import{a}from"../chunk-QXR5QPSF.js";import"../chunk-B3X6KU75.js";import"../chunk-KMVGRIO2.js";import"../chunk-AA7K3XLM.js";import"../chunk-DMQ7ZKJG.js";import"../chunk-7HU2IJ2T.js";import"../chunk-MO226P4Q.js";export{a as vueLargeViewPressure};
2
2
  //# sourceMappingURL=vue-large-view-pressure.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-B5PM5yNk.js';
1
+ import { S as ScipDatabase } from '../db-LKJXAlNS.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-jVM3D7MA.js';
3
+ import '../config-types-Cm-VSEBb.js';
4
4
 
5
5
  type WrapperActionTier = 'direct' | 'signal';
6
6
  interface WrapperCandidate {
@@ -1,2 +1,2 @@
1
- import{a}from"../chunk-HX4GQPZP.js";import"../chunk-N5W4YZMK.js";import"../chunk-MV7OWDUX.js";import"../chunk-ZTETIQ35.js";import"../chunk-UJCOIXDY.js";import"../chunk-26QA6FAI.js";import"../chunk-AQOFWNQJ.js";import"../chunk-DHEQMPLW.js";import"../chunk-B75HZHUP.js";import"../chunk-BGBBVSH4.js";import"../chunk-Z4N3MZYA.js";import"../chunk-7O5IKBTZ.js";import"../chunk-HX7M4BDI.js";import"../chunk-P5XHIJHI.js";import"../chunk-T7YQSHPQ.js";import"../chunk-7WPLAODU.js";import"../chunk-BS2NMXQZ.js";import"../chunk-C43RDDP4.js";import"../chunk-MTDBHTSF.js";import"../chunk-EKZTZXHZ.js";import"../chunk-UJPRPGCO.js";import"../chunk-GH74ASD6.js";import"../chunk-WCCFZ7V7.js";import"../chunk-NGEXCJJW.js";import"../chunk-7S5E7KWT.js";import"../chunk-2KAZEZ6M.js";import"../chunk-C3KV2II6.js";export{a as wrapperCandidates};
1
+ import{a}from"../chunk-32A42O5B.js";import"../chunk-ZYREOING.js";import"../chunk-CA5RE6H7.js";import"../chunk-QBANU5BQ.js";import"../chunk-BOJ5SVE2.js";import"../chunk-JVZNWJBH.js";import"../chunk-BGBBVSH4.js";import"../chunk-6BJ7SOY7.js";import"../chunk-63MBA7EG.js";import"../chunk-P5XHIJHI.js";import"../chunk-ICUQONOG.js";import"../chunk-ZDVDSDFG.js";import"../chunk-RGCJ4646.js";import"../chunk-ELNRLMC5.js";import"../chunk-LPGDO2XA.js";import"../chunk-MYUKI5VN.js";import"../chunk-HEOMG7IM.js";import"../chunk-35IW3P4H.js";import"../chunk-YUKYB54I.js";import"../chunk-DHEQMPLW.js";import"../chunk-7COHFNJK.js";import"../chunk-MTDBHTSF.js";import"../chunk-5IZTXSOL.js";import"../chunk-I3U2FN2T.js";import"../chunk-AA7K3XLM.js";import"../chunk-DMQ7ZKJG.js";import"../chunk-7HU2IJ2T.js";import"../chunk-MO226P4Q.js";export{a as wrapperCandidates};
2
2
  //# sourceMappingURL=wrapper-candidates.js.map
@@ -0,0 +1,6 @@
1
+ import{B as it,C as Re,G as ot,b as ze,f as M,g as Xe,h as ve,i as re,j as _,k as q,l as Ze,m as et,n as G,o as I,p as f,q as ie,r as d,s as tt,t as nt,u as k,v as rt,w as j,x as ee,y as B,z as V}from"./chunk-Y4XQ7LES.js";import{createRequire as $n}from"module";var Un=$n(import.meta.url),Q=Hn().version;function Hn(){for(let t of["../package.json","../../package.json"])try{return Un(t)}catch{}return{version:"0.0.0"}}import{existsSync as ji,statSync as Di}from"fs";import{join as Ti}from"path";import{createHash as lt,randomUUID as Yn}from"crypto";import{chmodSync as pt,existsSync as se,linkSync as zn,lstatSync as Ie,readdirSync as ft,realpathSync as T,unlinkSync as Xn,writeSync as Zn}from"fs";import{homedir as er}from"os";import{basename as qs,dirname as we,isAbsolute as ct,join as E,resolve as ke}from"path";import{isAbsolute as st,relative as Jn}from"path";var C=class extends Error{constructor(n,r){super(`refusing unsafe project file path ${JSON.stringify(n)} (${r})`);this.relativePath=n;this.reason=r;this.name="UnsafeProjectPathError"}relativePath;reason;code="SCIP_QUERY_UNSAFE_PROJECT_PATH"};function Kn(t){return t.replace(/\\/g,"/").replace(/^\.\//,"")}function xe(t,e){let n=Jn(t,e);return n===""||!n.startsWith("..")&&!st(n)}function at(t){if(!t)throw new C(t,"empty-path");if(t.includes("\0"))throw new C(t,"nul-byte");if(st(t)||/^[A-Za-z]:/.test(t)||t.startsWith("//")||t.startsWith("\\\\"))throw new C(t,"absolute-path");let e=Kn(t);if(e.split("/").some(r=>r===".."))throw new C(t,"parent-traversal");if(!e||e===".")throw new C(t,"empty-path");return e}var yt=1,ce=".scip-query-cache-owner.json",tr=16*1024,mt=Object.freeze({...ve,randomToken:()=>Yn(),linkFile:(t,e)=>zn(t,e),removeFile:t=>Xn(t),writeFile:(t,e,n,r)=>Zn(t,e,n,r)});function oe(t,e){return Object.assign(new Error(`refusing unsafe project dbPath ${JSON.stringify(t)} (${e}); use a repository-relative directory that remains inside the checkout`),{name:"UnsafeCachePathError",code:"SCIP_QUERY_UNSAFE_CACHE_PATH",configuredPath:t,reason:e})}function D(t,e){return Object.assign(new Error(`refusing unowned cache directory ${JSON.stringify(t)} (${e}); move unrelated data elsewhere or choose a new empty dbPath`),{name:"CacheOwnershipError",code:"SCIP_QUERY_CACHE_OWNERSHIP",cacheDir:t,reason:e})}function nr(t,e){let n=T(t);return sr(n,rr(n,e))}function rr(t,e){let n=T(t),r=process.env.SCIP_QUERY_CACHE_DIR;return r?ke(r):e?.dbPath?cr(n,e.dbPath):or(n)}function ir(){let t=process.env.XDG_CACHE_HOME;return E(t||E(er(),".cache"),"scip-query")}function or(t){let e=ke(t);try{e=T(e)}catch{}let n=lt("sha256").update(e).digest("hex").slice(0,12);return E(ir(),"projects",n)}function gt(t,e){let n=nr(t,e);return{cacheDir:n,dbPath:E(n,"index.db"),indexPath:E(n,"index.scip"),metaPath:E(n,"meta.json")}}function sr(t,e,n=mt){return ar(t,e,n).cacheDir}function ar(t,e,n=mt){let r=T(t),i=se(e)?"synced":mr(e,n),o=T(e),s=E(o,ce);if(se(s))return ut(r,o),ht(s),ae(o),{kind:"existing",cacheDir:o};dt(o),fr(o),dt(o);let c=`${JSON.stringify({schemaVersion:yt,canonicalProjectRoot:r,canonicalCacheDir:o,creatorVersion:Q},null,2)}
2
+ `;try{let u=gr(s,c,n),l=q(i,u);return{kind:"published",cacheDir:o,achievedDurability:l==="synced"?"directory-durable":"file-flushed",directorySync:l}}catch(u){if(hr(u))return ut(r,o),{kind:"existing",cacheDir:o};throw u}}function ut(t,e){let n=T(t),r=T(e);return dr(r,n,r)}function cr(t,e){let n;try{n=at(e)}catch(s){throw s instanceof C?oe(e,s.reason):s}let r=ke(t,...n.split("/"));if(r===t||!xe(t,r))throw oe(e,"outside-project");let i=ur(r),o=T(i);if(!xe(t,o)&&o!==t)throw oe(e,"symlink-escape");return r}function ur(t){let e=t;for(;!se(e);){let n=we(e);if(n===e)throw oe(t,"no-existing-ancestor");e=n}return e}function dr(t,e,n){let r=E(t,ce);if(!se(r)||Ie(r).isSymbolicLink())throw D(t,"missing regular ownership record");let i=Ie(r);if(!i.isFile()||i.size>tr)throw D(t,"invalid ownership record file");let o=I(r,"cache ownership record"),s=lr(o,t);if(e!==void 0&&s.canonicalProjectRoot!==e)throw D(t,"ownership record belongs to a different project");if(s.canonicalCacheDir!==n)throw D(t,"ownership record names a different cache directory");return{record:s,ownerSha256:lt("sha256").update(o).digest("hex"),physicalCacheDir:t}}function lr(t,e){try{let n=JSON.parse(t);if(n.schemaVersion!==yt||typeof n.canonicalProjectRoot!="string"||typeof n.canonicalCacheDir!="string"||typeof n.creatorVersion!="string"||!ct(n.canonicalProjectRoot)||!ct(n.canonicalCacheDir))throw new Error("invalid fields");return n}catch(n){throw D(e,`malformed ownership record: ${n instanceof Error?n.message:String(n)}`)}}function dt(t){let e=ft(t).filter(n=>n!==ce&&!pr(n));if(e.length>0)throw D(t,`unrecognized existing entries: ${e.slice(0,3).join(", ")}`)}function pr(t){return t.startsWith(`${ce}.tmp-`)||t.startsWith("git-worktree-context.json.tmp-")||[".scipquery-generations","affected-shadow-latest.json","affected-shadow.jsonl","agent-hooks","augment-vue-meta.json","cache-lifecycle.lock","evidence.db","evidence.db-shm","evidence.db-wal","health-report-cache.json","git-worktree-context.json","index.db","index.db-shm","index.db-wal","index.lock","index.scip","language-indexes","meta.json","reindex-activity.jsonl","shared-cache.json","typescript-index","typescript-scip-fragments","typescript-scip-overlays","typescript-semantic","watch-activity.json","watch-refresh-requests","watch-state.json","watch.lock"].includes(t)?!0:/^(?:reindex-|rust-|typescript-)/.test(t)}function fr(t){for(let e of ft(t)){let n=E(t,e);try{let r=Ie(n);if(r.isSymbolicLink())throw D(t,`legacy cache entry ${e} is a symlink`);if(r.isDirectory())ae(n);else if(r.isFile())ht(n);else throw D(t,`legacy cache entry ${e} is not a file or directory`)}catch(r){if(yr(r))continue;throw r}}ae(t)}function yr(t){let e=t?.code;return e==="ENOENT"||e==="ENOTDIR"}function mr(t,e=ve){let n=re(t,e);return ae(t),n}function gr(t,e,n){let r=`${t}.tmp-${process.pid}-${n.randomToken()}`,i,o=!1;try{i=n.openFile(r,"wx",384),o=!0,Xe(i,Buffer.from(e),n,"cache ownership record"),n.syncFile(i),n.closeFile(i),i=void 0,n.linkFile(r,t);let s=_(we(t),n);return n.removeFile(r),o=!1,q(s,_(we(t),n))}finally{if(i!==void 0)try{n.closeFile(i)}catch{}if(o)try{n.removeFile(r)}catch{}}}function ae(t){process.platform!=="win32"&&pt(t,448)}function ht(t){process.platform!=="win32"&&pt(t,384)}function hr(t){return typeof t=="object"&&t!==null&&"code"in t&&t.code==="EEXIST"}import{createHash as kr,randomUUID as Pr}from"crypto";import{existsSync as Cr,mkdirSync as ra,readdirSync as ia,rmSync as oa,statSync as Er}from"fs";import{basename as aa,dirname as Rt,join as Ee}from"path";function bt(t){if(typeof t!="object"||t===null)return!1;let e=t;return typeof e.path=="string"&&typeof e.size=="number"&&Number.isFinite(e.size)&&typeof e.hash=="string"}var $=["typescript","javascript","java","scala","kotlin","rust","python","ruby","go","cpp","c","csharp","vb","dart","php","clojure"];var Pe=2,U=3;var Ce=new Set($);function St(t){let e=t;if(typeof t=="string")try{e=JSON.parse(t)}catch(s){return{kind:"malformed",reason:`invalid JSON: ${wr(s)}`}}if(!f(e))return{kind:"malformed",reason:"metadata must be a JSON object"};let n=e.version;if(!Number.isInteger(n))return{kind:"malformed",reason:"version must be an integer"};if(n!==Pe&&n!==U)return{kind:"unsupported",version:n,direction:n<Pe?"older":"future"};let r=Sr(e,n);if(r)return{kind:"malformed",reason:r};let i=e,o={metadata:i,capabilities:br(i)};return n===Pe?{kind:"legacy",...o,metadata:i}:{kind:"supported",...o,metadata:i}}function vt(t){if(t.kind!=="legacy"&&t.kind!=="supported"||!t.capabilities.stableGenerationIdentity)return null;let e=t.metadata;return JSON.stringify({version:e.version,status:e.status,updatedAt:e.updatedAt,fingerprint:e.fingerprint,indexedLanguages:e.indexedLanguages,scipCompanion:e.scipCompanion,sqliteLayoutVersion:e.version===U?e.sqliteLayoutVersion:void 0})}function br(t){let e=t.fingerprint!==void 0,n=f(t.fingerprint),r=t.indexedLanguages!==void 0,i=t.status==="complete",o=t.version===U?t:null;return{usableForQuery:r,usableForEvidenceCache:e,publishableGeneration:i&&n&&r,stableGenerationIdentity:i&&e&&typeof t.updatedAt=="string",languageShardReuse:!!o?.languageFingerprints,typescriptProjectShardReuse:!!o?.typescriptProjectShards}}function Sr(t,e){if(t.status!=="complete"&&t.status!=="partial")return"status must be complete or partial";if(t.updatedAt!==void 0&&!ie(t.updatedAt))return"updatedAt must be a valid timestamp";for(let n of["requestedLanguages","indexedLanguages"])if(t[n]!==void 0&&!vr(t[n]))return`${n} must contain unique supported languages`;return t.skipped!==void 0&&!Rr(t.skipped)?"skipped must contain supported language/reason pairs":t.scipCompanion!==void 0&&t.scipCompanion!=="current"&&t.scipCompanion!=="deferred"?"scipCompanion must be current or deferred":e===U&&t.sqliteLayoutVersion!==void 0&&(!Number.isSafeInteger(t.sqliteLayoutVersion)||t.sqliteLayoutVersion<1)?"sqliteLayoutVersion must be a positive safe integer":e===U&&t.languageFingerprints!==void 0&&!xr(t.languageFingerprints)?"languageFingerprints must map supported languages to fingerprint objects":e===U&&t.typescriptProjectShards!==void 0&&!Ir(t.typescriptProjectShards)?"typescriptProjectShards must map project names to file fingerprints":null}function vr(t){return!Array.isArray(t)||!t.every(e=>typeof e=="string"&&Ce.has(e))?!1:new Set(t).size===t.length}function Rr(t){return Array.isArray(t)&&t.every(e=>f(e)&&typeof e.language=="string"&&Ce.has(e.language)&&typeof e.reason=="string")}function xr(t){return f(t)&&Object.entries(t).every(([e,n])=>Ce.has(e)&&f(n))}function Ir(t){return f(t)&&Object.values(t).every(e=>f(e)&&Array.isArray(e.files)&&e.files.every(bt))}function wr(t){return t instanceof Error?t.message:String(t)}function A(){return performance.now()}var Ar=1;var Or=".scipquery-generations";var pa={pid:process.pid,now:()=>new Date,randomToken:()=>Pr(),isProcessAlive:V,readProcessIdentity:B};function Mr(t){return Ee(Rt(t),Or)}function _r(t){try{let e=JSON.parse(I(Ee(Mr(t),"state.json"),"SQLite generation state"));return Nr(e)?e:null}catch{return null}}function xt(t){let e=_r(t);if(e)return e.currentGeneration;try{let n=Ee(Rt(t),"meta.json"),r=Cr(n)?I(n,"reindex metadata"):void 0;return Dr(t,r)}catch{return null}}function jr(t){return vt(St(t))??t}function Dr(t,e){let n=kr("sha256").update("sqlite-generation-legacy-v1\0");return e!==void 0&&n.update(jr(e)),n.update(`\0${Tr(t)}`),n.digest("hex")}function Tr(t){let e=Er(t);return`${e.dev}:${e.ino}:${e.size}:${e.mtimeMs}`}function Nr(t){return t.version===Ar&&typeof t.currentGeneration=="string"&&!!t.currentGeneration&&typeof t.publishedAt=="string"&&Number.isFinite(Date.parse(t.publishedAt))&&(t.artifactSet===void 0||t.artifactSet==="immutable-v1")&&Fr(t.stableMirrors)&&Lr(t.previousGeneration)&&Wr(t.publication)}function Fr(t){if(t===void 0)return!0;if(!t||typeof t!="object")return!1;let e=t;return typeof e.databaseFileIdentity=="string"&&!!e.databaseFileIdentity&&(e.indexFileIdentity===void 0||typeof e.indexFileIdentity=="string"&&!!e.indexFileIdentity)}function Lr(t){if(t===void 0)return!0;if(!t||typeof t!="object")return!1;let e=t;return typeof e.generationIdentity=="string"&&!!e.generationIdentity&&typeof e.databasePath=="string"&&!!e.databasePath&&(e.metadataPath===void 0||typeof e.metadataPath=="string"&&!!e.metadataPath)}function Wr(t){if(t===void 0)return!0;if(!t||typeof t!="object")return!1;let e=t,n=[e.converterDurationMs,e.affectedDocumentCount,e.changedDocumentCount,e.producerDurationMs,e.materializationDurationMs,e.patchDurationMs].filter(r=>r!==void 0);return(e.mode==="incremental"||e.mode==="full")&&e.validation==="passed"&&e.converterDurationMs!==void 0&&n.every(r=>typeof r=="number"&&Number.isFinite(r)&&r>=0)&&(e.scipCompanion===void 0||e.scipCompanion==="current"||e.scipCompanion==="deferred")&&(e.typescriptOverlayGeneration===void 0||typeof e.typescriptOverlayGeneration=="string"&&!!e.typescriptOverlayGeneration)&&(e.scipCompanion!=="deferred"||!!e.typescriptOverlayGeneration)&&(e.fallbackReason===void 0||typeof e.fallbackReason=="string")}import{existsSync as ei}from"fs";import{randomUUID as Ia}from"crypto";import{isAbsolute as ka,join as ti,relative as Pa,resolve as Ca}from"path";var L=1,H=2,qr="./node_modules/scip-query/docs/schemas/project-config.schema.json";function It(t){let e=t;if(typeof t=="string")try{e=JSON.parse(t)}catch(a){return{kind:"malformed",reason:`invalid JSON: ${a instanceof Error?a.message:String(a)}`}}if(!f(e))return{kind:"malformed",reason:"project config must be a JSON object"};let n=e.schemaVersion;if(n!==void 0&&!Number.isInteger(n))return{kind:"malformed",reason:"schemaVersion must be an integer"};let r=n===void 0?L:n;if(r!==L&&r!==H)return{kind:"unsupported",schemaVersion:r,direction:r<L?"older":"future"};let i=e.$schema;if(i!==void 0&&(typeof i!="string"||i.trim()===""))return{kind:"malformed",reason:"$schema must be a non-empty string when present"};let o=wt(e),s=r!==H||typeof e.$schema!="string";return r===L?{kind:"legacy",sourceVersion:L,config:o,needsMigration:s}:{kind:"supported",sourceVersion:H,config:o,needsMigration:s}}function wt(t){let e=t,{$schema:n,schemaVersion:r,...i}=e;return{$schema:typeof n=="string"&&n.trim()!==""?n:qr,schemaVersion:H,...i}}import{createHash as ha}from"crypto";var Ae=1,kt=2,Gr=1,Br=1,Vr="sha256";function Pt(t){if(!f(t))return{kind:"malformed",reason:"observation receipt must be an object"};let e=t.schemaVersion;if(!Number.isInteger(e))return{kind:"malformed",reason:"observation receipt schemaVersion must be an integer"};if(e===Ae)return $r(t)?{kind:"legacy",schemaVersion:Ae,receipt:t}:{kind:"malformed",reason:"observation receipt v1 fields are malformed or contradictory"};if(e===kt)return Ur(t)?{kind:"supported",schemaVersion:kt,receipt:t}:{kind:"malformed",reason:"observation receipt v2 facts are malformed or contradictory"};let n=e;return{kind:"unsupported",schemaVersion:n,direction:n<Ae?"older":"future"}}function Qr(t,e){return t.schemaVersion===e.schemaVersion&&t.canonicalizationVersion===e.canonicalizationVersion&&t.hashAlgorithm===e.hashAlgorithm&&t.projection.name===e.projection.name&&t.projection.version===e.projection.version}function $r(t){if(!f(t))return!1;let e=t.index,n=t.worktree;return Et(t.observedAt)&&k(t.projectIdentity)&&Zr(t.authorityKind)&&(e===void 0||f(e)&&k(e.generationIdentity)&&(e.source==="immutable"||e.source==="legacy")&&(e.alignment==="not-certified"||e.alignment==="leased"))&&(n===void 0||f(n)&&k(n.identity)&&typeof n.clean=="boolean"&&(n.headCommit===void 0||k(n.headCommit))&&(n.treeOid===void 0||k(n.treeOid)))&&Xr(t.authorityKind,e,n)}function Ur(t){if(!f(t))return!1;let e=t.facts,n=t.observedSources,r=t.stabilityProofs;if(!Et(t.observedAt)||!f(e)||!Array.isArray(n)||n.length===0||!n.every(Jr)||!Me(n,c=>c.kind)||!Array.isArray(r)||!r.every(Kr)||!Me(r,c=>c.source)||r.some(c=>!n.some(u=>u.kind===c.source))||!r.every(c=>zr(c,e))||["collaborationDomain","repositoryLineage","workspaceInstance","wholeContent"].some(c=>e[c]!==void 0&&!N(e[c])))return!1;let o=e.relevantInputs;if(o!==void 0&&(!Array.isArray(o)||!o.every(Hr)||!Me(o,c=>`${c.subject}\0${c.identity.projection.name}`)))return!1;let s=e.index;if(s!==void 0&&(!f(s)||!N(s.generation)||s.inputs!==void 0&&!N(s.inputs)||s.source!=="immutable"&&s.source!=="legacy"))return!1;let a=t.diagnostics;return(a===void 0||f(a)&&(a.clean===void 0||typeof a.clean=="boolean")&&(a.headCommit===void 0||k(a.headCommit))&&(a.treeOid===void 0||k(a.treeOid)))&&Yr(e,n)}function N(t){return!f(t)||!f(t.projection)?!1:t.schemaVersion===Gr&&t.canonicalizationVersion===Br&&t.hashAlgorithm===Vr&&k(t.projection.name)&&tt(t.projection.version)&&nt(t.digest)}function Hr(t){return f(t)&&k(t.subject)&&N(t.identity)}function Jr(t){return f(t)&&Ct(t.kind)&&(t.identity===void 0||N(t.identity))}function Kr(t){return f(t)&&Ct(t.source)&&(t.kind==="immutable"||t.kind==="fixed-snapshot"||t.kind==="bracketed"||t.kind==="not-established"||t.kind==="invalidated")}function Yr(t,e){let n=t.index,r=e.find(c=>c.kind==="index-generation");if(r){if(!f(n)||!N(n.generation)||r.identity&&!Oe(r.identity,n.generation))return!1}else if(n!==void 0)return!1;let i=t.workspaceInstance,o=e.find(c=>c.kind==="live-workspace");if(o?.identity&&(!N(i)||!Oe(o.identity,i)))return!1;let s=t.wholeContent,a=e.find(c=>c.kind==="repository-snapshot");return!(a?.identity&&(!N(s)||!Oe(a.identity,s)))}function zr(t,e){return t.kind==="not-established"||t.kind==="invalidated"?!0:t.source==="index-generation"?t.kind==="immutable"&&f(e.index)&&e.index.source==="immutable":t.source==="repository-snapshot"?t.kind==="fixed-snapshot":t.source==="live-workspace"?t.kind==="bracketed":!1}function Oe(t,e){return Qr(t,e)&&t.digest===e.digest}function Xr(t,e,n){return t==="index-worktree"?e!==void 0&&n!==void 0:t==="index-only"?e!==void 0&&n===void 0:t==="worktree-only"?e===void 0&&n!==void 0:t==="process-local"&&e===void 0&&n===void 0}function Zr(t){return t==="index-worktree"||t==="index-only"||t==="worktree-only"||t==="process-local"}function Ct(t){return t==="index-generation"||t==="repository-snapshot"||t==="live-workspace"||t==="process"}function Et(t){return typeof t=="string"&&!Number.isNaN(Date.parse(t))}function Me(t,e){return new Set(t.map(e)).size===t.length}var ue=".scipquery.json";var Ma=15*6e4,_a={enabled:!0,windowMs:15*6e4,maxRebuilds:2,maxEstimatedWriteBytes:1024*1024*1024};var ja=new Set($);function At(t){let e=ti(t,ue);if(!ei(e))return{};let n;try{n=G(e,{maxBytes:Ze,inputKind:"scip-query project config"})}catch(r){let i=r instanceof Error?r.message:String(r);throw new Error(`unable to read ${ue} at ${e}: ${i}`,{cause:r})}return ni(It(n),e,"read").config}function ni(t,e,n){if(t.kind==="legacy"||t.kind==="supported")return t;if(t.kind==="malformed"){let i=n==="read"?`invalid ${ue} at ${e}: ${t.reason}`:`Cannot update ${e}: the latest project config is ${t.reason}.`;throw new Error(`${i} The file was left untouched.`)}let r=n==="read"?`invalid ${ue} at ${e}`:`Cannot update ${e}: the latest project config is invalid`;throw new Error(`${r} (unsupported ${t.direction} schemaVersion ${t.schemaVersion}; this scip-query reads legacy v${L} and current v${H}). Upgrade scip-query before retrying; the file was left untouched.`)}import{spawnSync as ri}from"child_process";import{createHash as ii}from"crypto";import{existsSync as oi,lstatSync as si,realpathSync as ai}from"fs";import{dirname as ci,isAbsolute as ui,join as di,relative as Ga,resolve as le,sep as Ba}from"path";var Ot=Symbol.for("scip-query.project-file-listing-context.v1"),Mt=globalThis,_e=Mt[Ot],_t=_e&&typeof _e=="object"?_e:{};Mt[Ot]=_t;function jt(){return _t.sequence??0}var De={run(t,e){let n=Nt(t,e);return n.kind==="success"?n.output:void 0},runResult:Nt},li=["rev-parse","--show-toplevel","--absolute-git-dir","--git-common-dir","HEAD","HEAD^{tree}"],Ft=["status","--porcelain=v2","--branch","-z","--untracked-files=all"],je=/^[0-9a-f]{40,64}$/;function Lt(t,e=De){return pi(t,e)?.context}function pi(t,e=De){let n=e.runResult(t,li);if(n.kind==="success"){let i=fi(n.output);if(i){let o=yi(i,e);if(o)return Dt(o)}}let r=mi(t,e);return r?Dt(r):void 0}function Dt(t){return{context:t,projectFileInventorySequence:jt()}}function Wt(t){let e=t.split("\0").filter(Boolean),n=e.find(i=>i.startsWith("# branch.oid "))?.slice(13),r=n==="(initial)"?void 0:n;if(!(r!==void 0&&!je.test(r))&&n!==void 0)return{headCommit:r,clean:e.every(i=>i.startsWith("# "))}}function fi(t){let e=t.split(`
3
+ `).map(c=>c.trim());if(e.length!==5)return;let[n,r,i,o,s]=e;if(!n||!r||!i||!o||!s||!je.test(o)||!je.test(s))return;let a=O(n);return{root:a,gitDir:O(de(a,r)),commonDir:O(de(a,i)),headCommit:o,treeOid:s}}function yi(t,e){let n=e.run(t.root,Ft);if(n===void 0)return;let r=Wt(n);return r?.headCommit!==t.headCommit?void 0:{...qt(t.root,t.gitDir),commonDir:t.commonDir,repositoryId:Ne("repository",t.commonDir),headCommit:t.headCommit,treeOid:t.treeOid,clean:r.clean}}function mi(t,e){let n=Te(t,e);if(n.kind!=="worktree")return;let r=n.identity,i=r.projectRoot,o=e.run(i,["rev-parse","--git-common-dir"])?.trim();if(!o)return;let s=O(de(i,o)),a=Tt(e.run(i,["rev-parse","--verify","HEAD"])),c=Tt(e.run(i,["rev-parse","--verify","HEAD^{tree}"])),u=e.run(i,Ft);if(u===void 0)return;let l=Wt(u);if(!(!l||l.headCommit!==a))return{...r,commonDir:s,repositoryId:Ne("repository",s),headCommit:a,treeOid:c,clean:l.clean}}function Te(t,e=De){let n=e.runResult(t,["rev-parse","--show-toplevel"]);if(n.kind==="not-repository")return{kind:"non-git"};if(n.kind==="error")return n;let r=n.output.trim();if(!r)return{kind:"error",message:"Git returned an empty worktree root."};let i=O(r),o=e.run(i,["rev-parse","--absolute-git-dir"])?.trim();if(!o)return{kind:"error",message:"Git did not return an absolute worktree directory."};let s=O(de(i,o));return{kind:"worktree",identity:qt(i,s)}}function qt(t,e){return{projectRoot:t,gitDir:e,worktreeId:Ne("worktree",`${t}\0${e}`)}}function de(t,e){return ui(e)?e:le(t,e)}function O(t){try{return ai(t)}catch{return le(t)}}function Ne(t,e){return ii("sha256").update(`${t}\0${e}`).digest("hex").slice(0,24)}function Tt(t){return t?.trim()||void 0}function Nt(t,e){let n=ri("git",["-C",t,...e],{encoding:"utf-8",env:{...process.env,LC_ALL:"C"},maxBuffer:52428800,stdio:["ignore","pipe","pipe"],timeout:3e4,killSignal:"SIGKILL"});if(n.status===0)return{kind:"success",output:n.stdout.trimEnd()};let i=(typeof n.stderr=="string"?n.stderr.trim():"")||n.error?.message||`git exited with status ${n.status??"unknown"}`,o=n.error?.code;return(/not a git repository/i.test(i)||o==="ENOENT"&&oi(le(t)))&&!gi(t)?{kind:"not-repository"}:{kind:"error",message:i}}function gi(t){if(process.env.GIT_DIR||process.env.GIT_COMMON_DIR)return!0;let e=le(t);for(;;){try{return si(di(e,".git")),!0}catch(r){let i=r.code;if(i!=="ENOENT"&&i!=="ENOTDIR")return!0}let n=ci(e);if(n===e)return!1;e=n}}import{createHash as Ha,randomUUID as $t}from"crypto";import{existsSync as Y,lstatSync as ne,mkdirSync as Ka,readdirSync as K,renameSync as Ut,rmSync as F}from"fs";import{basename as fe,dirname as bi,join as g}from"path";function pe(t){return Fe(t,hi)}function Fe(t,e){return Array.isArray(t)?`[${t.map(n=>Fe(n,e)).join(",")}]`:t&&typeof t=="object"?`{${Object.entries(t).sort(([n],[r])=>e(n,r)).map(([n,r])=>`${JSON.stringify(n)}:${Fe(r,e)}`).join(",")}}`:JSON.stringify(t)}function hi(t,e){return t<e?-1:t>e?1:0}var ye=1,Si=Object.freeze({maxItems:1024,maxBytes:512*1024*1024,maxItemBytes:64*1024*1024,maxBatch:16,claimLeaseMs:5*6e4,responseRetentionMs:10*6e4,deadLetterRetentionMs:1440*6e4,temporaryRetentionMs:6e4,cleanupBatch:64}),J=class extends Error{constructor(n,r,i,o){let s=n==="item-too-large"?`request is ${o} bytes; per-item limit is ${i.maxItemBytes}`:n==="item-capacity"?`mailbox has ${r.totalItems} retained items; limit is ${i.maxItems}`:n==="byte-capacity"?`mailbox retains ${r.totalBytes} bytes and the request adds ${o}; limit is ${i.maxBytes}`:"another writer held the admission coordinator through the bounded wait";super(`Mailbox backpressure: ${s}. Retry after the service drains or expires retained work.`);this.code=n;this.status=r;this.limits=i;this.attemptedBytes=o;this.name="MailboxBackpressureError"}code;status;limits;attemptedBytes},vi=".owner.json",Ri={isProcessAlive:()=>!0,readProcessIdentity:()=>null};function Ht(t){return{rootDir:t,pendingDir:g(t,"pending"),inflightDir:g(t,"inflight"),responseDir:g(t,"responses"),deadLetterDir:g(t,"dead-letter"),legacyRequestDir:g(t,"requests")}}function xi(t={}){let e={...Si,...t};for(let[n,r]of Object.entries(e))if(!Number.isFinite(r)||r<=0||!Number.isInteger(r))throw new Error(`Mailbox limit ${n} must be a positive integer.`);return e}function Jt(t){let e=[t.pendingDir,t.inflightDir,t.responseDir,t.deadLetterDir,t.legacyRequestDir].map(n=>re(n));return q(...e)}function me(t){if(!/^[a-f0-9]{64}$/.test(t))throw new Error("Mailbox operation keys must be lowercase SHA-256 identities.");return`op-${t}`}function Kt(t,e,n={}){let r=xi(n.limits),i=n.nowMs??Date.now(),o=Jt(t);return Oi(e),wi(t,r,n.admissionLockTimeoutMs??2e3,n.monotonicNow??A,n.durability??"durable",()=>{Ii(t,i,r);let s=g(t.pendingDir,`${e.id}.json`),a=g(t.responseDir,`${e.id}.json`),c=Gt(t,e.id);if(c){let y=Bt(c,e.operationKey,e.id);return{disposition:"duplicate",requestId:e.id,responsePath:a,authoritativeDeadlineAtMs:y.deadlineAtMs??e.deadlineAtMs}}let u=`${JSON.stringify(e)}
4
+ `,l=Buffer.byteLength(u),p=Yt(t);if(l>r.maxItemBytes)throw new J("item-too-large",p,r,l);if(p.totalItems+1>r.maxItems)throw new J("item-capacity",p,r,l);if(p.totalBytes+l>r.maxBytes)throw new J("byte-capacity",p,r,l);n.onBeforePublish?.();try{let y=n.durability??"durable",R=Re(s,u,{durability:y}),P=y==="durable"?q(o,R.directorySync):"not-requested";return{disposition:"accepted",requestId:e.id,responsePath:a,authoritativeDeadlineAtMs:e.deadlineAtMs,achievedDurability:R.achievedDurability,directorySync:P}}catch(y){if(y.code!=="EEXIST")throw y;let R=Gt(t,e.id);if(!R)throw y;let P=Bt(R,e.operationKey,e.id);return{disposition:"duplicate",requestId:e.id,responsePath:a,authoritativeDeadlineAtMs:P.deadlineAtMs??e.deadlineAtMs}}})}function Ii(t,e,n,r=Ri){let i={reclaimed:0,completedClaimsRemoved:0,responsesRemoved:0,deadLettersRemoved:0,temporaryFilesRemoved:0},o=n.cleanupBatch;for(let s of We(t.inflightDir)){if(o<=0)break;let a=g(t.responseDir,`${s.requestId}.json`);if(Y(a)){F(s.path,{force:!0}),i.completedClaimsRemoved++,o--;continue}if(s.claimExpiresAtMs>e||Ei(t,s.ownerId,r)!=="dead")continue;let c=g(t.pendingDir,s.originalFile);try{Ut(s.path,c),i.reclaimed++}catch(u){if(u.code!=="EEXIST")throw u;F(s.path,{force:!0})}_(bi(s.path)),_(t.pendingDir),o--}o=Vt(t.responseDir,o,(s,a)=>a+n.responseRetentionMs,e,()=>{i.responsesRemoved++}),o=Vt(t.deadLetterDir,o,(s,a)=>a+n.deadLetterRetentionMs,e,()=>{i.deadLettersRemoved++});for(let s of[t.pendingDir,t.inflightDir,t.responseDir,t.deadLetterDir,t.legacyRequestDir]){if(o<=0)break;for(let a of zt(s)){if(o<=0)break;if(!fe(a).includes(".tmp-"))continue;let c;try{c=ne(a).mtimeMs}catch(u){if(u.code==="ENOENT")continue;throw u}c+n.temporaryRetentionMs>e||(F(a,{force:!0}),i.temporaryFilesRemoved++,o--)}}return Mi(t.inflightDir),i}function Yt(t){Jt(t);let e=[...te(t.pendingDir).map(c=>({path:c,pending:!0})),...te(t.legacyRequestDir).map(c=>({path:c,pending:!0}))],n=We(t.inflightDir).map(c=>({path:c.path,pending:!1})),r=te(t.responseDir).map(c=>({path:c,pending:!1})),i=te(t.deadLetterDir).map(c=>({path:c,pending:!1})),o=[...e,...n,...r,...i],s=0,a;for(let c of e){let u=qe(c.path);if(!u){s++;continue}let l=u.enqueuedAtMs;if(l===void 0)try{l=ne(c.path).mtimeMs}catch(p){if(p.code==="ENOENT")continue;throw p}a=a===void 0?l:Math.min(a,l)}return{pending:e.length,inflight:n.length,responses:r.length,deadLetters:i.length,invalid:s,totalItems:o.length,totalBytes:o.reduce((c,u)=>c+_i(u.path),0),...a===void 0?{}:{oldestPendingAt:new Date(a).toISOString()}}}function wi(t,e,n,r,i,o){let s=g(t.rootDir,".admission.lock"),a=`${process.pid}-${$t()}`,c=r()+Math.max(0,n);for(;!ki(t.rootDir,s,a,i);){if(Pi(s),r()>=c)throw new J("admission-busy",Yt(t),e,0);Atomics.wait(new Int32Array(new SharedArrayBuffer(4)),0,0,5)}try{return o()}finally{try{Le(s).ownerToken===a&&(F(s,{recursive:!0,force:!0}),i==="durable"&&_(t.rootDir))}catch{}}}function ki(t,e,n,r){let i=`${JSON.stringify({ownerToken:n,pid:process.pid,acquiredAtMs:Date.now()})}
5
+ `;try{return Re(e,i,{durability:r}),!0}catch(o){if(o.code==="EEXIST")return!1;try{Le(e).ownerToken===n&&(F(e,{force:!0}),r==="durable"&&_(t))}catch{}throw o}}function Pi(t){let e=null;try{let r=Le(t);typeof r.ownerToken=="string"&&Number.isSafeInteger(r.pid)&&Number(r.pid)>0&&(e=Number(r.pid))}catch{}if(e===null||Ci(e))return;let n=`${t}.stale-${$t()}`;try{Ut(t,n)}catch(r){let i=r.code;if(i==="ENOENT"||i==="EEXIST")return;throw r}F(n,{recursive:!0,force:!0})}function Le(t){try{return JSON.parse(I(t,"mailbox lock record"))}catch(e){if(e.code!=="EISDIR"&&!(e instanceof et&&e.reason==="not-regular"))throw e;return JSON.parse(I(g(t,"owner.json"),"mailbox lock owner record"))}}function Ci(t){try{return process.kill(t,0),!0}catch(e){let n=e.code;return n==="EPERM"||n!=="ESRCH"}}function Ei(t,e,n){let r=Ai(g(t.inflightDir,Xt(e),vi));if(!r)return"unknown";if(!n.isProcessAlive(r.pid))return"dead";if(!r.processIdentity)return"live";let i=n.readProcessIdentity(r.pid);return i?ee(r.processIdentity,i)?"live":"dead":"unknown"}function Ai(t){try{let e=JSON.parse(I(t,"mailbox owner record"));if(e.version!==1||typeof e.ownerId!="string"||!e.ownerId||typeof e.pid!="number"||!Number.isSafeInteger(e.pid)||e.pid<=0)return null;let n=e.processIdentity===void 0?null:j(e.processIdentity);return e.processIdentity!==void 0&&(!n||n.pid!==e.pid)?null:{version:1,ownerId:e.ownerId,pid:e.pid,...n?{processIdentity:n}:{}}}catch{return null}}function Gt(t,e){for(let n of[g(t.pendingDir,`${e}.json`),g(t.legacyRequestDir,`${e}.json`),g(t.responseDir,`${e}.json`)])if(Y(n))return n;for(let n of We(t.inflightDir))if(n.requestId===e)return n.path;return null}function Bt(t,e,n){let r=qe(t);if(r?.operationKey===e)return r;if(fe(t)===`${me(e)}.json`)return{id:n,operationKey:e};throw new Error(`Mailbox operation ${n} conflicts with an existing retained record.`)}function Oi(t){if(t.mailboxVersion!==ye||t.id!==me(t.operationKey)||!t.clientId.trim()||!Number.isFinite(t.enqueuedAtMs)||!Number.isFinite(t.deadlineAtMs)||t.deadlineAtMs<t.enqueuedAtMs)throw new Error("Mailbox request has an invalid lifecycle identity.")}function We(t){if(!Y(t))return[];let e=[];for(let n of K(t,{withFileTypes:!0})){if(!n.isDirectory())continue;let r=Qt(n.name);if(r===null)continue;let i=g(t,n.name);for(let o of K(i,{withFileTypes:!0})){if(!o.isFile()||!o.name.endsWith(".claim"))continue;let s=/^(.*)\.(\d+)\.claim$/.exec(o.name);if(!s)continue;let a=Qt(s[1]),c=Number(s[2]);if(a===null||fe(a)!==a||!a.endsWith(".json")||!Number.isSafeInteger(c))continue;let u=g(i,o.name),l=qe(u)??{id:fe(a,".json")},p;try{p=ne(u)}catch(y){if(y.code==="ENOENT")continue;throw y}e.push({requestId:l.id,ownerId:r,path:u,originalFile:a,claimedAtMs:p.mtimeMs,claimExpiresAtMs:c,byteLength:p.size,...l.operationKey?{operationKey:l.operationKey}:{},...l.clientId?{clientId:l.clientId}:{},...l.enqueuedAtMs===void 0?{}:{enqueuedAtMs:l.enqueuedAtMs},...l.deadlineAtMs===void 0?{}:{deadlineAtMs:l.deadlineAtMs},legacy:l.operationKey===void 0})}}return e.sort((n,r)=>n.claimedAtMs-r.claimedAtMs||n.path.localeCompare(r.path))}function qe(t){try{let e=JSON.parse(I(t,"mailbox record"));return typeof e.id!="string"||!e.id?null:{id:e.id,...typeof e.operationKey=="string"?{operationKey:e.operationKey}:{},...typeof e.clientId=="string"?{clientId:e.clientId}:{},...typeof e.enqueuedAtMs=="number"?{enqueuedAtMs:e.enqueuedAtMs}:{},...typeof e.deadlineAtMs=="number"?{deadlineAtMs:e.deadlineAtMs}:{}}}catch{return null}}function Vt(t,e,n,r,i){for(let o of te(t)){if(e<=0)break;let s;try{s=ne(o)}catch(a){if(a.code==="ENOENT")continue;throw a}n(o,s.mtimeMs)>r||(F(o,{force:!0}),i(),e--)}return e}function te(t){return Y(t)?K(t,{withFileTypes:!0}).filter(e=>e.isFile()).map(e=>g(t,e.name)).sort():[]}function zt(t){if(!Y(t))return[];let e=[];for(let n of K(t,{withFileTypes:!0})){let r=g(t,n.name);n.isFile()?e.push(r):n.isDirectory()&&e.push(...zt(r))}return e.sort()}function Mi(t){if(Y(t))for(let e of K(t,{withFileTypes:!0})){if(!e.isDirectory())continue;let n=g(t,e.name);K(n).some(r=>r.endsWith(".claim"))||F(n,{recursive:!0,force:!0})}}function _i(t){try{return ne(t).size}catch{return 0}}function Xt(t){return Buffer.from(t,"utf8").toString("base64url")}function Qt(t){try{let e=Buffer.from(t,"base64url").toString("utf8");return Xt(e)===t?e:null}catch{return null}}function Ge(){return process.env.SCIP_QUERY_PROJECT_ROOT??process.cwd()}var Zt;function en(t=Ge(),e=void 0){if(e===void 0&&Zt?.projectRoot===t)return Zt;let n=At(t),r=gt(t,n),i=process.env.SCIP_QUERY_INDEX_DB;if(i)return{projectRoot:t,config:n,paths:r,dbPath:i,dbPathSource:"env",gitContext:e};if(ji(r.dbPath))return{projectRoot:t,config:n,paths:r,dbPath:r.dbPath,dbPathSource:"configured",gitContext:e};let o=Ti(t,"index.db");return{projectRoot:t,config:n,paths:r,dbPath:o,dbPathSource:"root-fallback",rootFallbackWarning:Ni(o,r.dbPath),gitContext:e}}function Ni(t,e){let n="unknown time";try{n=Di(t).mtime.toISOString()}catch{}return`warning: using legacy project-root index.db (${t}, modified ${n}) because the configured index was not found at ${e}. This fallback may be stale; run 'scip-query reindex' to refresh the configured index.`}import{basename as Fi}from"path";function tn(t=process.argv,e=process.execPath){let n=t[1];return!n||Fi(n)==="scip-query"?["scip-query"]:[e,n]}import{spawn as ao}from"child_process";import{createHash as be,randomUUID as co}from"crypto";import{existsSync as Be,realpathSync as uo}from"fs";import{tmpdir as lo}from"os";import{join as fn,resolve as he}from"path";import{fileURLToPath as po}from"url";import{spawn as zi}from"child_process";import{existsSync as Xi,rmSync as vc}from"fs";import{dirname as xc,resolve as Zi}from"path";import{fileURLToPath as wc}from"url";import{join as ge}from"path";var nn=6,rn=1e4,Li="watch.lock",Wi="watch-state.json",qi="watch-activity.json",Gi="watch-refresh-requests";function on(t){return{lockPath:ge(t,Li),statePath:ge(t,Wi),activityPath:ge(t,qi),refreshRequestsPath:ge(t,Gi)}}function sn(t){try{return Bi(JSON.parse(I(t,"watch service state")))}catch{return null}}function Bi(t){if(!t||typeof t!="object")return null;let e=t;if(e.version!==1||typeof e.protocolVersion!="number"||typeof e.pid!="number"||!Number.isInteger(e.pid)||e.pid<=0||typeof e.projectRoot!="string"||e.worktreeId!==void 0&&(typeof e.worktreeId!="string"||e.worktreeId.length===0)||typeof e.cliVersion!="string"||!h(e.startedAt)||!h(e.heartbeatAt)||!h(e.lastActivityAt)||!Vi(e.watcher)||e.idleDeadlineAt!==void 0&&!h(e.idleDeadlineAt))return null;if(e.processIdentity!==void 0){let n=j(e.processIdentity);if(!n||n.pid!==e.pid)return null;e.processIdentity=n}return e.indexGeneration!==void 0&&!/^[a-f0-9]{64}$/.test(e.indexGeneration)||e.lastError!==void 0&&!Qi(e.lastError)||e.lastRefresh!==void 0&&!$i(e.lastRefresh)||e.reindexActivity!==void 0&&!Ui(e.reindexActivity)||e.refreshRequests!==void 0&&!Ji(e.refreshRequests)||e.typescriptSemantic!==void 0&&!Ki(e.typescriptSemantic)||e.typescriptIndex!==void 0&&!Yi(e.typescriptIndex)?null:e}function h(t){return ie(t)}function Vi(t){if(!t||typeof t!="object"||!("state"in t))return!1;let e=t;switch(e.state){case"idle":return!0;case"waiting":return b(e.changedFiles)&&b(e.reindexAt);case"indexing":return b(e.startedAt);case"cooldown":return b(e.until)&&typeof e.dirty=="boolean";case"budget-paused":return b(e.until)&&typeof e.dirty=="boolean"&&typeof e.reason=="string"&&d(e.rebuilt)&&d(e.estimatedWriteBytes);case"draining":return b(e.startedAt)&&typeof e.reason=="string";default:return!1}}function Qi(t){if(!t||typeof t!="object")return!1;let e=t;return h(e.at)&&typeof e.message=="string"}function $i(t){if(!t||typeof t!="object")return!1;let e=t;return typeof e.trigger?.kind=="string"&&typeof e.result=="string"&&h(e.startedAt)&&h(e.completedAt)&&b(e.durationMs)}function Ui(t){if(!t||typeof t!="object")return!1;let e=t;return e.confidence!==void 0&&e.confidence!=="complete"&&e.confidence!=="partial"&&e.confidence!=="unavailable"||e.recordsRead!==void 0&&!d(e.recordsRead)||e.invalidRecords!==void 0&&!d(e.invalidRecords)||e.skippedRecords!==void 0&&!d(e.skippedRecords)||e.readErrors!==void 0&&!d(e.readErrors)||e.ignoredPartialTailBytes!==void 0&&!d(e.ignoredPartialTailBytes)||!h(e.windowStartedAt)||!h(e.windowEndedAt)||!d(e.runs)||!d(e.rebuilt)||e.fullRebuilds!==void 0&&!d(e.fullRebuilds)||!d(e.reused)||!d(e.failed)||!d(e.suppressed)||!b(e.estimatedLogicalOutputBytes)||e.estimatedWriteBytes!==void 0&&!d(e.estimatedWriteBytes)||e.reflinkedBytes!==void 0&&!d(e.reflinkedBytes)||e.fallbackCopiedBytes!==void 0&&!d(e.fallbackCopiedBytes)||e.oldestRebuildAt!==void 0&&!h(e.oldestRebuildAt)||e.oldestWriteAt!==void 0&&!h(e.oldestWriteAt)||e.languageAttribution!==void 0&&e.languageAttribution!=="complete"&&e.languageAttribution!=="partial"&&e.languageAttribution!=="unavailable"||e.attributedRuns!==void 0&&!d(e.attributedRuns)||e.unattributedRuns!==void 0&&!d(e.unattributedRuns)||e.invalidLanguageDetails!==void 0&&!d(e.invalidLanguageDetails)||e.estimatedLogicalOutputBytes<0||!e.byTrigger||typeof e.byTrigger!="object"||Array.isArray(e.byTrigger)||e.byLanguage!==void 0&&!Hi(e.byLanguage)?!1:Object.values(e.byTrigger).every(n=>n===void 0||d(n))}function Hi(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;for(let[e,n]of Object.entries(t)){if(!$.includes(e)||!n||typeof n!="object")return!1;let r=n;if(!d(r.runs)||!d(r.rebuilt)||!d(r.reused)||!d(r.producedOutputBytes)||!rt(r.durationMs)||r.rebuilt+r.reused!==r.runs)return!1}return!0}function Ji(t){if(!t||typeof t!="object")return!1;let e=t;return d(e.pending)&&d(e.claimed)&&d(e.completed)&&d(e.expired)&&d(e.invalid)&&(e.oldestPendingAt===void 0||h(e.oldestPendingAt))}function Ki(t){if(!t||typeof t!="object")return!1;let e=t;return typeof e.protocolVersion=="number"&&(e.state==="idle"||e.state==="ready"||e.state==="unavailable"||e.state==="error")&&b(e.requests)&&b(e.sessionsCreated)&&b(e.sessionsReused)&&b(e.sessionsRefreshed)&&b(e.sessionsReplaced)&&b(e.projectsCreated)&&(e.lastRequestAt===void 0||h(e.lastRequestAt))&&(e.lastError===void 0||typeof e.lastError=="string")&&(e.busyUntil===void 0||h(e.busyUntil))&&(e.mailbox===void 0||an(e.mailbox))}function Yi(t){if(!t||typeof t!="object")return!1;let e=t;return typeof e.protocolVersion=="number"&&(e.state==="idle"||e.state==="ready"||e.state==="unavailable"||e.state==="error")&&d(e.requests)&&d(e.sessionsCreated)&&d(e.sessionsReplaced)&&(e.sessionsEvicted===void 0||d(e.sessionsEvicted))&&(e.activeSessions===void 0||d(e.activeSessions))&&(e.maxActiveSessions===void 0||d(e.maxActiveSessions))&&(e.heapUsedBytes===void 0||d(e.heapUsedBytes))&&(e.heapLimitBytes===void 0||d(e.heapLimitBytes))&&(e.softMemoryLimitBytes===void 0||d(e.softMemoryLimitBytes))&&(e.retireRequested===void 0||typeof e.retireRequested=="boolean")&&d(e.initializations)&&d(e.programUpdates)&&d(e.documentsEmitted)&&d(e.documentsRemoved)&&(e.lastRequestAt===void 0||h(e.lastRequestAt))&&(e.lastDurationMs===void 0||b(e.lastDurationMs)&&e.lastDurationMs>=0)&&(e.lastError===void 0||typeof e.lastError=="string")&&(e.busyUntil===void 0||h(e.busyUntil))&&(e.mailbox===void 0||an(e.mailbox))}function an(t){if(!t||typeof t!="object")return!1;let e=t;return d(e.pending)&&d(e.inflight)&&d(e.responses)&&d(e.deadLetters)&&d(e.invalid)&&d(e.totalItems)&&b(e.totalBytes)&&e.totalBytes>=0&&e.totalItems===e.pending+e.inflight+e.responses+e.deadLetters&&(e.oldestPendingAt===void 0||h(e.oldestPendingAt))}function b(t){return typeof t=="number"&&Number.isFinite(t)}function cn(t){let e=t.classification;if(e.kind!=="live")return;let{state:n}=e;return n.watcher.state==="idle"&&n.lastError===void 0?n.indexGeneration:void 0}function eo(t,e,n){let r=O(Zi(t));if(n&&O(n.projectRoot)===r)return{projectRoot:r,worktreeKind:"git",worktreeId:n.worktreeId,cliVersion:e};let i=Te(r);if(i.kind==="error")throw new Error(`Could not establish Git worktree identity for ${r}: ${i.message}`);return i.kind==="non-git"?{projectRoot:r,worktreeKind:"non-git",cliVersion:e}:{projectRoot:r,worktreeKind:"git",worktreeId:i.identity.worktreeId,cliVersion:e}}function un(t){return to(t,eo(t.projectRoot,t.cliVersion,t.gitContext))}function to(t,e){let n=t.runtime??so,r=on(t.cacheDir),i=sn(r.statePath),o=no(r.lockPath);return{identity:e,classification:oo(i,e,n.now(),n.isProcessAlive),lock:o,lockIsLive:o!==null&&n.isProcessAlive(o.pid),paths:r}}function no(t){return io(it(t,{parseLegacy:ro}))}var ro=t=>{let e=dn(t);return e?{pid:e.pid,...e.processIdentity?{processIdentity:e.processIdentity}:{}}:null};function io(t){if(t.state==="valid"&&t.record?.kind==="watch"){let e=t.record.detail?.projectRoot;return typeof e!="string"?null:{version:1,pid:t.record.pid,...t.record.processIdentity?{processIdentity:t.record.processIdentity}:{},projectRoot:e,startedAt:t.record.startedAt}}return dn(t.parsed)}function dn(t){try{let e=t;if(e.version!==1||typeof e.pid!="number"||!Number.isInteger(e.pid)||e.pid<=0||typeof e.projectRoot!="string"||!h(e.startedAt))return null;let n=e.processIdentity===void 0?null:j(e.processIdentity);return e.processIdentity!==void 0&&(!n||n.pid!==e.pid)?null:{version:1,pid:e.pid,...n?{processIdentity:n}:{},projectRoot:e.projectRoot,startedAt:e.startedAt}}catch{return null}}function oo(t,e,n,r){if(!t)return{kind:"stopped"};if(t.protocolVersion!==nn)return{kind:"incompatible",state:t,reason:"protocol"};if(t.projectRoot!==e.projectRoot)return{kind:"incompatible",state:t,reason:"project"};let i=e.worktreeKind==="git"?e.worktreeId:void 0;if(t.worktreeId!==i)return{kind:"incompatible",state:t,reason:"worktree"};if(t.cliVersion!==e.cliVersion)return{kind:"incompatible",state:t,reason:"cli-version"};if(!r(t.pid))return{kind:"stale",state:t,reason:"dead-process"};let o=Date.parse(t.heartbeatAt);return n-o>rn?{kind:"stale",state:t,reason:"old-heartbeat"}:{kind:"live",state:t}}var so={now:Date.now,monotonicNow:A,isProcessAlive:V,readProcessIdentity:B,spawnServer(t,e,n,r){if(!Xi(t))throw new Error(`Watch service helper was not found at ${t}. Run npm run build first.`);zi(process.execPath,[t,e,n,JSON.stringify(r)],{detached:!0,stdio:"ignore",env:{...process.env,SCIP_QUERY_SKIP_WATCH_SERVICE:"1"}}).unref()},signalProcess(t){process.kill(t,"SIGTERM")},forceSignalProcess(t){process.kill(t,"SIGKILL")},sleep(t){let e=new Int32Array(new SharedArrayBuffer(4));Atomics.wait(e,0,0,t)}};var W=18,fo=1e3,yo=2*fo,mo=6,go=4,ho=5,bo=3,So=3,vo=4,Ro=3,xo=3,Io=8,ln=3e4,wo=5e3,yn=5,ko=10,Po=1,Co=5,$e=64*1024*1024,Eo={maxItems:64,maxBytes:128*1024*1024,maxItemBytes:$e,maxBatch:1,responseRetentionMs:6e4};function mn(t,e,n={},r={}){return m(t,i=>({kind:"source-search",expectedGeneration:i,pattern:e,options:n}),ss,"search result",r)}function gn(t,e,n={}){return m(t,r=>({kind:"outline",expectedGeneration:r,filePattern:e}),Do,"outline result",n)}function hn(t,e={},n={}){return m(t,r=>({kind:"entrypoints",expectedGeneration:r,options:e}),To,"entrypoints result",n)}function bn(t,e,n={}){return m(t,r=>({kind:"files",expectedGeneration:r,pattern:e}),No,"files result",n)}function Sn(t,e={}){return m(t,n=>({kind:"stats",expectedGeneration:n}),Fo,"stats result",e)}function vn(t,e,n={}){return m(t,r=>({kind:"members",expectedGeneration:r,symbolPattern:e}),Lo,"members result",n)}function Rn(t,e,n={}){return m(t,r=>({kind:"methods",expectedGeneration:r,className:e}),Wo,"methods result",n)}function xn(t,e,n,r={}){return m(t,i=>({kind:"file-dependencies",expectedGeneration:i,direction:e,filePattern:n}),qo,"file dependencies result",r)}function In(t,e,n={}){return m(t,r=>({kind:"imported-by",expectedGeneration:r,symbolPattern:e}),Ln,"imported-by result",n)}function wn(t,e,n={}){return m(t,r=>({kind:"hierarchy",expectedGeneration:r,symbolPattern:e}),Qo,"hierarchy result",n)}function kn(t,e,n={}){return m(t,r=>({kind:"by-kind",expectedGeneration:r,kindQuery:e}),Uo,"by-kind result",n)}function Pn(t,e={}){return m(t,n=>({kind:"kind-counts",expectedGeneration:n}),Jo,"kind-counts result",e)}function Cn(t,e,n={}){return m(t,r=>({kind:"refs",expectedGeneration:r,symbolPattern:e}),Yo,"refs result",n)}function En(t,e,n={}){return m(t,r=>({kind:"trace",expectedGeneration:r,symbolPattern:e}),z,"trace result",n)}function An(t,e,n={}){return m(t,r=>({kind:"value-flow",expectedGeneration:r,symbolPattern:e}),z,"value-flow result",n)}function On(t,e,n={}){return m(t,r=>({kind:"dependence-slice",expectedGeneration:r,criterion:e}),z,"dependence-slice result",n)}function Mn(t,e,n,r={}){return m(t,i=>({kind:e,expectedGeneration:i,symbolPattern:n}),z,`${e} result`,r)}function _n(t,e,n={}){return m(t,r=>({kind:"system",expectedGeneration:r,modulePattern:e}),z,"system result",n)}function jn(t,e,n={}){return m(t,r=>({kind:"imports",expectedGeneration:r,filePattern:e}),Ln,"imports result",n)}function Dn(t,e,n={}){return m(t,r=>({kind:"unused-imports",expectedGeneration:r,filePattern:e}),Go,"unused imports result",n)}function Tn(t,e,n={}){return m(t,r=>({kind:"surface",expectedGeneration:r,modulePattern:e}),Xo,"surface result",n)}function Nn(t,e,n,r={}){return m(t,i=>({kind:"code",expectedGeneration:i,selectors:[...e],options:n}),z,"serialized code result",r)}function m(t,e,n,r,i){if(!us(i.allowDefault===!0))return null;try{let o=i.allowDefault===!0&&process.env.SCIP_QUERY_QUERY_SERVICE!=="1",s=o?Lt(t):void 0,a=en(t,s);if(!Be(a.dbPath))return null;let c=xt(a.dbPath);if(!c||o&&!Ao(a,s,c))return null;let u=Mo({projectRoot:a.projectRoot,dbPath:a.dbPath,generationIdentity:c},e(c),n,r);return{result:u.result,generationIdentity:c,observationReceipt:u.observationReceipt}}catch(o){return Wn()&&console.error(`query-service fallback: ${o instanceof Error?o.message:String(o)}`),null}}function Ao(t,e,n){if(t.config.watch?.enabled!==!0)return!1;try{return cn(un({projectRoot:t.projectRoot,cacheDir:t.paths.cacheDir,cliVersion:Q,gitContext:e}))===n}catch{return!1}}function Fn(t){return be("sha256").update(pe({kind:"scip-query-service-mailbox",protocolVersion:W,sessionDir:he(t)})).digest("hex")}function Ve(t){let e=fn(t,"server.json");try{let n=JSON.parse(G(e,{maxBytes:65536,inputKind:"query service state"}));if(!n||typeof n!="object"||Array.isArray(n))return null;let r=n,i=r.processIdentity===void 0?void 0:j(r.processIdentity);return r.protocolVersion!==W||typeof r.sessionIdentity!="string"||r.sessionIdentity!==Fn(t)||typeof r.pid!="number"||!Number.isSafeInteger(r.pid)||r.pid<=0||r.processIdentity!==void 0&&(!i||i.pid!==r.pid)||typeof r.generation!="string"||typeof r.heartbeatAtMs!="number"||!Number.isFinite(r.heartbeatAtMs)?null:{protocolVersion:W,sessionIdentity:r.sessionIdentity,pid:r.pid,...i?{processIdentity:i}:{},generation:r.generation,heartbeatAtMs:r.heartbeatAtMs}}catch{return null}}function Qe(t,e=Date.now()){if(!V(t.pid))return!1;let n=e-t.heartbeatAtMs;if(n>=0&&n<=yo||!t.processIdentity)return!0;let r=B(t.pid);return r!==null&&ee(t.processIdentity,r)}function Oo(t){let e=t<ko;return{intervalMs:e?Po:yn,checkServerState:!e||t%Co===0}}function Mo(t,e,n,r){let i=cs();if(!Be(i))throw new Error("Query service server executable is unavailable.");let o=Math.abs(process.pid)%ls(e),s=as(t,i,o),a=Ht(s),c=Date.now(),u=c+ln,l=A()+ln,p=co(),y=_o(p,e),R=me(y),P=Fn(s),x=Kt(a,{mailboxVersion:ye,protocolVersion:W,id:R,operationKey:y,clientId:p,enqueuedAtMs:c,deadlineAtMs:u,sessionIdentity:P,request:e},{nowMs:c,limits:Eo,durability:"visibility"});pn(s,t.projectRoot,i,l);let Je=0;for(;A()<=l;){if(Be(x.responsePath))return jo(G(x.responsePath,{maxBytes:$e,inputKind:"query service response"}),{id:R,operationKey:y,clientId:p,deadlineAtMs:x.authoritativeDeadlineAtMs,generation:t.generationIdentity},n,r);let Ke=Oo(Je);if(Ke.checkServerState){let Ye=Ve(s);(!Ye||!Qe(Ye))&&pn(s,t.projectRoot,i,l)}qn(Ke.intervalMs),Je+=1}throw new Error("Persistent query service timed out.")}function _o(t,e){return be("sha256").update(pe({namespace:"query-service-v18",payload:{clientId:t,request:e}})).digest("hex")}function pn(t,e,n,r){let i=Ve(t);if(i&&Qe(i))return;let o=Wn();ao(process.execPath,[n,t,e],{cwd:e,detached:!o,stdio:o?["ignore","ignore","inherit"]:"ignore",env:{...process.env,SCIP_QUERY_QUERY_SERVICE_SERVER:"1"}}).unref();let s=Math.min(r,A()+wo);for(;A()<=s;){let a=Ve(t);if(a&&Qe(a))return;qn(yn)}throw new Error("Persistent query service did not become ready within 5s.")}function jo(t,e,n,r){let i=JSON.parse(t);if(!i||typeof i!="object"||Array.isArray(i))throw new Error("Invalid query service response.");let o=i;if(o.mailboxVersion!==ye||o.protocolVersion!==W||o.id!==e.id||o.operationKey!==e.operationKey||o.clientId!==e.clientId||o.deadlineAtMs!==e.deadlineAtMs)throw new Error("Query service response identity does not match the request.");if(o.ok!==!0)throw new Error(typeof o.error=="string"?o.error:"Persistent query service rejected the request.");if(o.generation!==e.generation)throw new Error("Persistent query service generation changed.");if(!n(o.result))throw new Error(`Persistent query service returned an invalid ${r}.`);let s=Pt(o.observationReceipt);if(s.kind!=="supported")throw new Error("Persistent query service returned an invalid observation receipt.");return{ok:!0,protocolVersion:W,id:e.id,generation:e.generation,result:o.result,observationReceipt:s.receipt}}function Do(t){if(!Array.isArray(t))return!1;let e=[...t];for(;e.length>0;){let n=e.pop();if(!n||typeof n!="object"||Array.isArray(n))return!1;let r=n;if(typeof r.symbol!="string"||typeof r.shortName!="string"||!Number.isSafeInteger(r.startLine)||r.startLine<0||!Number.isSafeInteger(r.endLine)||r.endLine<r.startLine||r.signature!==null&&typeof r.signature!="string"||!Array.isArray(r.children))return!1;e.push(...r.children)}return!0}function To(t){return Array.isArray(t)?t.every(e=>{if(!e||typeof e!="object"||Array.isArray(e))return!1;let n=e;return typeof n.symbol=="string"&&typeof n.shortName=="string"&&typeof n.file=="string"&&Number.isSafeInteger(n.startLine)&&n.startLine>=0&&Number.isSafeInteger(n.endLine)&&n.endLine>=n.startLine&&(n.documentation===null||typeof n.documentation=="string")&&(n.confidence==="root"||n.confidence==="candidate")&&Array.isArray(n.evidence)&&n.evidence.every(r=>typeof r=="string")&&Number.isSafeInteger(n.indexedCallerCount)&&n.indexedCallerCount>=0}):!1}function No(t){return Array.isArray(t)?t.every(e=>!e||typeof e!="object"||Array.isArray(e)?!1:typeof e.relativePath=="string"):!1}function Fo(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return S(e.documents)&&S(e.symbols)&&S(e.definitions)&&S(e.references)&&S(e.indexSizeBytes)&&(e.lastBuilt===null||typeof e.lastBuilt=="string")}function Lo(t){if(!Ue(t))return!1;let e=t.members;return Array.isArray(e)&&e.every(es)}function Ue(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return e.matched===!1?e.resolved===void 0&&e.otherMatches===void 0&&e.totalMatches===void 0&&Array.isArray(e.suggestions)&&e.suggestions.every(n=>typeof n=="string"):e.matched===!0&&rs(e.resolved)&&Array.isArray(e.otherMatches)&&e.otherMatches.every(is)&&S(e.totalMatches)&&e.totalMatches>=1&&e.suggestions===void 0}function Wo(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.query!="string"?!1:e.kind==="missing"?Array.isArray(e.suggestions)&&e.suggestions.every(n=>typeof n=="string"):e.kind==="ambiguous"?S(e.total)&&e.total>1&&Array.isArray(e.candidates)&&e.candidates.every(os):e.kind==="matched"&&ns(e.owner)&&Array.isArray(e.methods)&&e.methods.every(ts)}function qo(t){return Array.isArray(t)?t.every(e=>{if(!e||typeof e!="object"||Array.isArray(e))return!1;let n=e;return typeof n.relativePath=="string"&&(n.edgeBasis===void 0||n.edgeBasis==="symbol-references")&&(n.evidence===void 0||n.evidence==="cross-file SCIP references plus resolved source imports")}):!1}function Ln(t){return Array.isArray(t)&&t.every(Vo)}function Go(t){return Array.isArray(t)&&t.every(Bo)}function Bo(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.symbol=="string"&&typeof e.shortName=="string"&&typeof e.importedIn=="string"}function Vo(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.symbol=="string"&&typeof e.shortName=="string"&&typeof e.fromFile=="string"}function Qo(t){if(!Ue(t))return!1;let e=t.hierarchy;return Array.isArray(e)&&e.every($o)}function $o(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.symbol=="string"&&typeof e.shortName=="string"&&S(e.depth)}function Uo(t){return Array.isArray(t)&&t.every(Ho)}function Ho(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.symbol=="string"&&typeof e.shortName=="string"&&S(e.kind)&&typeof e.kindName=="string"&&typeof e.relativePath=="string"&&Se(e)}function Jo(t){return Array.isArray(t)&&t.every(Ko)}function Ko(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return S(e.kind)&&typeof e.kindName=="string"&&S(e.count)}function Yo(t){if(!Ue(t))return!1;let e=t,n=e.references,r=e.pagination;if(!Array.isArray(n)||!n.every(zo)||!r||typeof r!="object"||Array.isArray(r))return!1;let i=r;return i.cursorVersion===2&&i.producer==="complete-only"&&typeof i.semanticEnrichment=="boolean"}function zo(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.relativePath=="string"&&S(e.line)}function Xo(t){return Array.isArray(t)&&t.every(Zo)}function Zo(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.consumer=="string"&&typeof e.symbol=="string"&&typeof e.shortName=="string"&&e.basis==="external-reference"}function es(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.symbol=="string"&&typeof e.shortName=="string"&&typeof e.kind=="string"&&Se(e)}function ts(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.name=="string"&&Se(e)}function ns(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.symbol=="string"&&typeof e.shortName=="string"&&typeof e.relativePath=="string"&&Se(e)}function rs(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.symbol=="string"&&typeof e.shortName=="string"&&typeof e.relativePath=="string"}function is(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.shortName=="string"&&typeof e.relativePath=="string"&&S(e.startLine)&&e.symbol===void 0}function os(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.symbol=="string"&&typeof e.shortName=="string"&&typeof e.relativePath=="string"&&S(e.startLine)}function Se(t){return S(t.startLine)&&S(t.endLine)&&t.endLine>=t.startLine}function S(t){return Number.isSafeInteger(t)&&t>=0}function ss(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;return typeof e.pattern=="string"&&(e.mode==="literal"||e.mode==="regexp")&&Array.isArray(e.matches)&&typeof e.matchingLines=="number"&&Number.isSafeInteger(e.matchingLines)&&e.matchingLines>=0&&typeof e.omittedMatches=="number"&&Number.isSafeInteger(e.omittedMatches)&&e.omittedMatches>=0&&typeof e.scannedFiles=="number"&&Number.isSafeInteger(e.scannedFiles)&&e.scannedFiles>=0}function z(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=t;if(typeof e.serializedJson!="string"||typeof e.sha256!="string"||e.serializedJson.length>$e||be("sha256").update(e.serializedJson).digest("hex")!==e.sha256)return!1;try{let n=JSON.parse(e.serializedJson);return n!==null&&typeof n=="object"&&!Array.isArray(n)}catch{return!1}}function as(t,e,n){let r=ps(t.projectRoot),i=be("sha256").update(pe({protocolVersion:W,projectRoot:r,dbPath:he(t.dbPath),serverPath:he(e),lane:n})).digest("hex");return fn(lo(),"scip-query-query-service",i)}function cs(){return process.env.SCIP_QUERY_QUERY_SERVICE_SERVER_PATH??po(new URL("./query-service-server.js",import.meta.url))}function us(t){let e=process.env.SCIP_QUERY_QUERY_SERVICE;return process.env.SCIP_QUERY_QUERY_SERVICE_SERVER!=="1"&&e!=="0"&&(e==="1"||t)}function Wn(){return process.env.SCIP_QUERY_QUERY_SERVICE_DEBUG==="1"}function ds(){let t=Number(process.env.SCIP_QUERY_QUERY_SERVICE_POOL_SIZE);return Number.isInteger(t)&&t>=1&&t<=Io?t:mo}function ls(t){let e=ds();return t.kind==="value-flow"?Math.min(e,Ro):t.kind==="dependence-slice"?Math.min(e,xo):t.kind==="call-graph"?Math.min(e,bo):t.kind==="system"?Math.min(e,vo):t.kind==="reference-reachability"||t.kind==="slice"?Math.min(e,So):t.kind==="refs"||t.kind==="trace"||t.kind==="reference-neighborhood"||t.kind==="dataflow"||t.kind==="imports"||t.kind==="unused-imports"?Math.min(e,ho):t.kind==="imported-by"||t.kind==="hierarchy"||t.kind==="by-kind"||t.kind==="kind-counts"?Math.min(e,go):e}function ps(t){try{return uo.native(t)}catch{return he(t)}}function qn(t){Atomics.wait(new Int32Array(new SharedArrayBuffer(4)),0,0,t)}async function iu(t){if(process.env.SCIP_QUERY_PROFILE==="1"||process.env.SCIP_QUERY_PROFILE==="true")return!1;let e=fs(t);if(!e)return!1;let n=Ge();if(e.kind==="code"){try{ot(n,"code",e.session)}catch{return!1}let i=Nn(n,e.selectors,e.options,{allowDefault:!0});return i?(M(i.result.serializedJson),!0):!1}if(e.kind==="files"){let i=bn(n,e.pattern,{allowDefault:!0});return i?(await w(JSON.stringify(i.result),e.kind,t),!0):!1}if(e.kind==="members"){let i=vn(n,e.symbolPattern,{allowDefault:!0});return i?(await w(JSON.stringify(i.result),e.kind,t),!0):!1}if(e.kind==="methods"){let i=Rn(n,e.className,{allowDefault:!0});return!i||!X(i.result)?!1:(i.result.kind!=="matched"&&(process.exitCode=1),!0)}if(e.kind==="file-dependencies"){let i=xn(n,e.direction,e.filePattern,{allowDefault:!0});if(!i)return!1;let o=e.direction==="outgoing"?"deps":"rdeps";return await w(JSON.stringify(i.result),o,t),!0}if(e.kind==="imported-by"){let i=In(n,e.symbolPattern,{allowDefault:!0});return i?(await w(JSON.stringify(i.result),e.kind,t),!0):!1}if(e.kind==="hierarchy"){let i=wn(n,e.symbolPattern,{allowDefault:!0});return!(!i||!X(i.result))}if(e.kind==="by-kind"){let i=kn(n,e.kindQuery,{allowDefault:!0});return!(!i||!X(i.result))}if(e.kind==="kind-counts"){let i=Pn(n,{allowDefault:!0});return!(!i||!X(i.result))}if(e.kind==="refs"){let i=Cn(n,e.symbolPattern,{allowDefault:!0});return i?(await w(JSON.stringify(i.result),e.kind,t),!0):!1}if(e.kind==="trace"){let i=En(n,e.symbolPattern,{allowDefault:!0});return i?(await w(i.result.serializedJson,e.kind,t),!0):!1}if(e.kind==="value-flow"){let i=An(n,e.symbolPattern,{allowDefault:!0});return i?(await w(i.result.serializedJson,e.kind,t),!0):!1}if(e.kind==="dependence-slice"){let i=On(n,e.criterion,{allowDefault:!0});return i?(await w(i.result.serializedJson,e.kind,t),!0):!1}if(e.kind==="call-graph"||e.kind==="reference-neighborhood"||e.kind==="reference-reachability"||e.kind==="slice"||e.kind==="dataflow"){let i=Mn(n,e.kind,e.symbolPattern,{allowDefault:!0});return i?(await w(i.result.serializedJson,e.kind,t),!0):!1}if(e.kind==="imports"){let i=jn(n,e.filePattern,{allowDefault:!0});return!(!i||!X(i.result))}if(e.kind==="unused-imports"){let i=Dn(n,e.filePattern,{allowDefault:!0});return!(!i||!X(i.result))}if(e.kind==="system"){let i=_n(n,e.modulePattern,{allowDefault:!0});return i?(await w(i.result.serializedJson,e.kind,t),!0):!1}if(e.kind==="surface"){let i=Tn(n,e.modulePattern,{allowDefault:!0});return i?(await w(JSON.stringify(i.result),e.kind,t),!0):!1}if(e.kind==="stats"){let i=Sn(n,{allowDefault:!0});return i?(M(JSON.stringify(i.result)),!0):!1}if(e.kind==="entrypoints"){let i=hn(n,e.options,{allowDefault:!0});return i?(M(JSON.stringify(i.result)),!0):!1}let r=e.kind==="source-search"?mn(n,e.pattern,e.options,{allowDefault:!0}):gn(n,e.filePattern,{allowDefault:!0});return r?(M(JSON.stringify(r.result)),!0):!1}function fs(t){return t[0]==="search"?Os(t):t[0]==="outline"?Ms(t):t[0]==="code"?As(t):t[0]==="entrypoints"?Es(t):t[0]==="files"?Cs(t):t[0]==="stats"?Vn(t,"stats"):t[0]==="kind-counts"?Vn(t,"kind-counts"):t[0]==="members"?Gn(t,"members"):t[0]==="methods"?Gn(t,"methods"):t[0]==="deps"?Bn(t,"outgoing"):t[0]==="rdeps"?Bn(t,"incoming"):t[0]==="imported-by"?ys(t):t[0]==="hierarchy"?ms(t):t[0]==="by-kind"?gs(t):t[0]==="refs"?hs(t):t[0]==="trace"?bs(t):t[0]==="value-flow"?Ss(t):t[0]==="dependence-slice"?vs(t):t[0]==="call-graph"||t[0]==="reference-neighborhood"||t[0]==="reference-reachability"||t[0]==="slice"||t[0]==="dataflow"?Rs(t):t[0]==="imports"?xs(t):t[0]==="unused-imports"?Is(t):t[0]==="system"?ws(t):t[0]==="surface"?ks(t):null}function Gn(t,e){let n=v(t);return n===null?null:e==="members"?{kind:e,symbolPattern:n}:{kind:e,className:n}}function Bn(t,e){let n=v(t);return n===null?null:{kind:"file-dependencies",direction:e,filePattern:n}}function ys(t){let e=v(t);return e===null?null:{kind:"imported-by",symbolPattern:e}}function ms(t){let e=v(t);return e===null?null:{kind:"hierarchy",symbolPattern:e}}function gs(t){let e=v(t);return e===null?null:{kind:"by-kind",kindQuery:e}}function hs(t){let e=v(t);return e===null?null:{kind:"refs",symbolPattern:e}}function bs(t){let e=v(t);return e===null?null:{kind:"trace",symbolPattern:e}}function Ss(t){let e=v(t);return e===null?null:{kind:"value-flow",symbolPattern:e}}function vs(t){let e=v(t);return e===null?null:{kind:"dependence-slice",criterion:e}}function Rs(t){let e=t[0];if(e!=="call-graph"&&e!=="reference-neighborhood"&&e!=="reference-reachability"&&e!=="slice"&&e!=="dataflow")return null;let n=v(t);return n===null?null:{kind:e,symbolPattern:n}}function xs(t){let e=v(t);return e===null?null:{kind:"imports",filePattern:e}}function Is(t){let e=v(t);return e===null?null:{kind:"unused-imports",filePattern:e}}function ws(t){let e=v(t);return e===null?null:{kind:"system",modulePattern:e}}function ks(t){let e=v(t);return e===null?null:{kind:"surface",modulePattern:e}}function v(t){let e,n=!1,r=!1,i=!1;for(let o=1;o<t.length;o+=1){let s=t[o];if(s==="--"){let a=t.slice(o+1);if(a.length!==1||e!==void 0)return null;e=a[0];break}if(s==="--json"){n=!0;continue}if(s==="--result-only"){r=!0;continue}if(s==="--compact"){i=!0;continue}if(s.startsWith("-")||e!==void 0)return null;e=s}return!n||!r||!i||e===void 0?null:e}function X(t){return Ps(JSON.stringify(t))}function Ps(t){return Qn(t)?(M(t),!0):!1}async function w(t,e,n){if(Qn(t)){M(t);return}let{runWithCliOutputPagination:r}=await import("./output-pagination-VAWOGX4R.js");await r({command:e,producerVersion:Q,invocationPrefix:tn(),argv:[...n],cwd:process.cwd(),json:!0,sourceSession:!0,reemitSource:!1},()=>M(t))}function Qn(t){return Buffer.byteLength(t)+1<=ze}function Cs(t){let e,n=!1,r=!1,i=!1;for(let o=1;o<t.length;o+=1){let s=t[o];if(s==="--"){let a=t.slice(o+1);if(a.length!==1||e!==void 0)return null;e=a[0];break}if(s==="--json"){n=!0;continue}if(s==="--result-only"){r=!0;continue}if(s==="--compact"){i=!0;continue}if(s.startsWith("-")||e!==void 0)return null;e=s}return!n||!r||!i||e===void 0?null:{kind:"files",pattern:e}}function Vn(t,e){let n=!1,r=!1,i=!1;for(let o=1;o<t.length;o+=1){let s=t[o];if(s==="--json"){n=!0;continue}if(s==="--result-only"){r=!0;continue}if(s==="--compact"){i=!0;continue}return null}return n&&r&&i?{kind:e}:null}function Es(t){let e,n,r=!1,i=!1,o=!1;for(let s=1;s<t.length;s+=1){let a=t[s];if(a==="--"){let u=t.slice(s+1);if(u.length!==1||e!==void 0)return null;e=u[0];break}if(a==="--json"){r=!0;continue}if(a==="--result-only"){i=!0;continue}if(a==="--compact"){o=!0;continue}let c=Z(t,s,a,"--scope","-s");if(c){n=c.value,s=c.nextIndex;continue}if(a.startsWith("-")||e!==void 0)return null;e=a}return!r||!i||!o?null:{kind:"entrypoints",options:{...e===void 0?{}:{search:e},...n===void 0?{}:{scope:n}}}}function As(t){let e=[],n=0,r="exported",i=!0,o=!1,s=!1,a=!1;for(let c=1;c<t.length;c+=1){let u=t[c];if(u==="--"){e.push(...t.slice(c+1));break}if(u==="--json"){o=!0;continue}if(u==="--result-only"){s=!0;continue}if(u==="--compact"){a=!0;continue}if(u==="--no-session"){i=!1;continue}let l=Z(t,c,u,"--context","-C");if(l){let y=He(l.value,0);if(y===null)return null;n=y,c=l.nextIndex;continue}let p=Z(t,c,u,"--members");if(p){if(p.value!=="exported"&&p.value!=="all")return null;r=p.value,c=p.nextIndex;continue}if(u.startsWith("-"))return null;e.push(u)}return!o||!s||!a||e.length<1||e.length>24||e.some(c=>c.length===0)?null:{kind:"code",selectors:e,options:{context:n,members:r},session:i}}function Os(t){let e,n,r=2,i=6,o=!1,s=!1,a=!1,c=!1,u=!1;for(let l=1;l<t.length;l+=1){let p=t[l];if(p==="--"){let x=t.slice(l+1);if(x.length!==1||e!==void 0)return null;e=x[0];break}if(p==="--json"){a=!0;continue}if(p==="--result-only"){c=!0;continue}if(p==="--compact"){u=!0;continue}if(p==="--regexp"){o=!0;continue}if(p==="--ignore-case"||p==="-i"){s=!0;continue}let y=Z(t,l,p,"--scope","-s");if(y){n=y.value,l=y.nextIndex;continue}let R=Z(t,l,p,"--context","-C");if(R){let x=He(R.value,0);if(x===null)return null;r=x,l=R.nextIndex;continue}let P=Z(t,l,p,"--limit","-n");if(P){let x=He(P.value,1);if(x===null)return null;i=x,l=P.nextIndex;continue}if(p.startsWith("-")||e!==void 0)return null;e=p}return!a||!c||!u||e===void 0?null:{kind:"source-search",pattern:e,options:{scope:n,context:r,limit:i,regexp:o,ignoreCase:s,ranking:"structural"}}}function Ms(t){let e,n=!1,r=!1,i=!1;for(let o=1;o<t.length;o+=1){let s=t[o];if(s==="--"){let a=t.slice(o+1);if(a.length!==1||e!==void 0)return null;e=a[0];break}if(s==="--json"){n=!0;continue}if(s==="--result-only"){r=!0;continue}if(s==="--compact"){i=!0;continue}if(s!=="--signatures"){if(s.startsWith("-")||e!==void 0)return null;e=s}}return!n||!r||!i||e===void 0?null:{kind:"outline",filePattern:e}}function Z(t,e,n,r,i){if(n.startsWith(`${r}=`))return{value:n.slice(r.length+1),nextIndex:e};if(n!==r&&(i===void 0||n!==i))return null;let o=t[e+1];return o===void 0?null:{value:o,nextIndex:e+1}}function He(t,e){if(!/^\d+$/.test(t))return null;let n=Number(t);return Number.isSafeInteger(n)&&n>=e?n:null}export{fs as parseFastPathInvocation,Qn as serializedJsonFitsClientBudget,iu as tryRunQueryServiceFastPath};
6
+ //# sourceMappingURL=query-service-fastpath.js.map
@@ -0,0 +1,5 @@
1
+ import"./chunk-WSG3DK5H.js";import"./chunk-3FQ3KMCD.js";import"./chunk-LHTT5C3Z.js";import"./chunk-6GJAP4OE.js";import"./chunk-LXLD46LH.js";import"./chunk-26CT72HM.js";import"./chunk-QLQBZOJH.js";import"./chunk-XRXCANFQ.js";import"./chunk-4IIMPWMR.js";import"./chunk-XXJ7WL3F.js";import"./chunk-SSSJO4RG.js";import"./chunk-FGB567HK.js";import"./chunk-2ZBMOQGG.js";import"./chunk-IPAL6DP2.js";import"./chunk-3TNRNKAT.js";import{a as _}from"./chunk-6YTSKJJ3.js";import"./chunk-E7BJXRNV.js";import"./chunk-IYV2YBHM.js";import"./chunk-7KCZELVM.js";import{a as de}from"./chunk-AJVMVE7X.js";import"./chunk-Z3GCK3PD.js";import{c as M}from"./chunk-7PPYXENX.js";import"./chunk-H46QMB7E.js";import"./chunk-SKUMCCC5.js";import"./chunk-WZQFY5S7.js";import"./chunk-EA4SH4U5.js";import{h as fe}from"./chunk-PZEI2TVL.js";import"./chunk-OFY4HTMI.js";import{d as ge}from"./chunk-ZBNL3QCY.js";import"./chunk-BGBBVSH4.js";import"./chunk-WULAPQUD.js";import"./chunk-MTDBHTSF.js";import{b as he}from"./chunk-FTSQNONX.js";import{b as me,c as ye}from"./chunk-35ELD3RM.js";import"./chunk-SWFAFA4G.js";import"./chunk-3EX7DNBC.js";import"./chunk-GTDP2SKQ.js";import{a as w,b as Z}from"./chunk-OUB4J26T.js";import"./chunk-2I3RSUWX.js";import"./chunk-4N6QSEMZ.js";import"./chunk-OIRWZIYL.js";import"./chunk-VGRUM7JI.js";import"./chunk-YUKYB54I.js";import"./chunk-GFLTPNWV.js";import{d as ae}from"./chunk-CT5SI2I4.js";import"./chunk-54EOGFBR.js";import"./chunk-F4FNK44D.js";import"./chunk-T6FRID7Y.js";import{a as ue}from"./chunk-CN2WGM7D.js";import"./chunk-BHE44MHT.js";import{a as pe}from"./chunk-G2F6T5BV.js";import"./chunk-MXNGIEPU.js";import"./chunk-UZFCZ7SJ.js";import"./chunk-Q7HB7BFJ.js";import{a as ce,b as g}from"./chunk-MEI3PTUK.js";import{a as le}from"./chunk-DHEQMPLW.js";import"./chunk-SEUJVWT2.js";import"./chunk-AUP6YI5M.js";import"./chunk-SF7X6QNW.js";import{F as z,G as K,V as J,a as $,aa as X,c as U,j as q,k as W,q as k}from"./chunk-SDPA5DKN.js";import{d as H}from"./chunk-DOPCR5BY.js";import"./chunk-7IOAZRVL.js";import"./chunk-VWLIOEEF.js";import{a as L,c as B,g as V,h as G,i as ee,j as te,l as re,m as ne,q as ie,r as oe,s as O,t as se}from"./chunk-G6OGPXJW.js";import{c as A,h as Y}from"./chunk-DRENNWRG.js";import"./chunk-H5EXS3HM.js";import"./chunk-HGFDYOVB.js";import{c as P,d as C}from"./chunk-3VLJ2DCA.js";import{P as F,n as Q}from"./chunk-4DCKBY6T.js";import{createHash as h,randomUUID as Rt}from"crypto";import{rmSync as bt}from"fs";import{join as Qe,resolve as Ge}from"path";import{pathToFileURL as vt}from"url";function Re(e,t,i,o,u=!1){let r=[...e],n=[],s=new Set,c=0;for(;r.length>0&&n.length<t;){let a=r.filter(d=>c+d.evidenceCharacters<=i||u&&n.length===0);if(a.length===0)break;let l=a.filter(d=>d.roles.includes("location")||d.roles.includes("definition")).sort(o);a.sort((d,f)=>Se(f,s)-Se(d,s)||o(d,f));let p=l[0]??a[0];n.push(p),c+=p.evidenceCharacters;for(let d of be(p))s.add(d.key);r.splice(r.indexOf(p),1)}return{selected:n,omitted:r.sort(o)}}function Se(e,t){let i=be(e).reduce((r,n)=>r+(t.has(n.key)?0:n.weight),0),o=Math.max(0,8-e.priority)*20,u=Math.min(500,Math.ceil(e.evidenceCharacters/160));return i+o-u}function be(e){return[...e.reasons.map(Ue),...e.roles.map(t=>({key:`role:${t}`,weight:qe(t)})),{key:`file:${e.relativePath}`,weight:180},{key:`scope:${We(e.relativePath)}`,weight:120},{key:`kind:${e.fileKind}`,weight:40},...e.symbols.map(t=>({key:`symbol:${t}`,weight:100})),...e.behaviorSignals.map(t=>({key:`behavior:${t}`,weight:70}))]}function Ue(e){let t=e.indexOf(":"),i=t<0?e:e.slice(0,t);return i==="dependency"||i==="consumer"?{key:`reason:${i}`,weight:220}:{key:`reason:${e}`,weight:i==="location"||i==="definition"?1400:800}}function qe(e){switch(e){case"location":return 1200;case"definition":return 1100;case"reference":return 600;case"caller":case"callee":return 550;case"dependency":case"consumer":return 500;case"search":return 400;default:return 300}}function We(e){let t=e.lastIndexOf("/");return t<0?e:e.slice(0,t)}var ve=64,xe=12;function Ie(e,t,i={}){if(t.length===0)return[];let o=i.context??6;if(!Number.isSafeInteger(o)||o<0)throw new RangeError(`context must be a non-negative safe integer; received ${o}`);let u=i.limit??12;if(!Number.isSafeInteger(u)||u<=0)throw new RangeError(`limit must be a positive safe integer; received ${u}`);let r=t.map(n=>{if(n.length===0)throw new Error("The source search pattern must not be empty.");return{pattern:n,regexp:i.regexp?le(n,"source search pattern",i.ignoreCase?"iu":"u"):null,literal:i.ignoreCase?n.toLocaleLowerCase():n,identities:[],fileCoverage:[],textByPath:new Map}});if(!i.regexp&&!i.ignoreCase){let n=r.map(c=>Buffer.from(c.pattern,"utf8")),s=M(e,{scope:i.scope,literalBytes:n.length===1?n[0]:n},(c,a)=>{let l=k(c.text);if(l.length!==0)for(let p of a){let d=r[p];d&&Ee(e,d,c,l,i)}});return r.map(c=>Ce(c,s,o,u,i))}return r.map(n=>{let s=M(e,{scope:i.scope},c=>{let a=k(c.text);a.length>0&&Ee(e,n,c,a,i)});return Ce(n,s,o,u,i)})}function Ee(e,t,i,o,u){let r=[];for(let a=0;a<o.length;a+=1){let l=o[a]??"",p=l.endsWith("\r")?l.slice(0,-1):l;(t.regexp?t.regexp.test(p):(u.ignoreCase?p.toLocaleLowerCase():p).includes(t.literal))&&r.push(a)}if(r.length===0)return;let n=i.relativePath;t.textByPath.set(n,i.text);let s=i.freshness.semantic.state!=="stale"&&i.freshness.semantic.basis!=="no-compiler-document"?J(e,n):[],c=K(e,n)?.callables??[];for(let a of r){let l=X(s,a),p=z(c,a),d=l&&!Y(l.symbol)?l:null,f=d?.startLine??p?.startLine??l?.startLine??a,m=d?.endLine??p?.endLine??l?.endLine??a,R=fe(e,n,a,f,m);t.identities.push({relativePath:n,focusLine:a,ownerSymbol:d?.symbol??null,ownerShort:d?A(d.symbol):p?.name??(l?A(l.symbol):null),ownerStartLine:R.startLine,ownerEndLine:R.endLine,fileKind:Z(n),freshness:i.freshness})}t.fileCoverage.push({relativePath:n,matchingLines:r.length,returnedMatches:0,freshness:i.freshness})}function Ce(e,t,i,o,u){e.identities.sort(Pe);let r=e.identities.length>ve?we(e.identities,ve):e.identities,s=(o===Number.MAX_SAFE_INTEGER?e.identities:u.ranking?we(e.identities,o):e.identities.slice(0,o)).flatMap(l=>{let p=e.textByPath.get(l.relativePath),d=p===void 0?null:ze(l.relativePath,p,l.focusLine,i);return d?[{...d,...l}]:[]}),c=new Map;for(let l of s)c.set(l.relativePath,(c.get(l.relativePath)??0)+1);for(let l of e.fileCoverage)l.returnedMatches=c.get(l.relativePath)??0;let a=Ke(e.fileCoverage);return{pattern:e.pattern,mode:u.regexp?"regexp":"literal",identities:e.identities,...r.length<e.identities.length?{identityManifest:r}:{},identityCoverage:{mode:r.length===e.identities.length?"complete":"bounded",returned:r.length,total:e.identities.length,omitted:e.identities.length-r.length},matches:s,matchingLines:e.identities.length,matchingFiles:e.fileCoverage.length,omittedMatches:Math.max(0,e.identities.length-s.length),fileCoverage:e.fileCoverage,scopeHints:a.slice(0,xe),omittedScopeHints:Math.max(0,a.length-xe),scannedFiles:t.scannedTextFiles,textCoverage:{basis:"current-project-text-files",candidateFiles:t.candidateFiles,scannedTextFiles:t.scannedTextFiles,scannedBytes:t.scannedBytes,skippedBinaryPaths:t.skippedBinaryPaths,skippedUnreadablePaths:t.skippedUnreadablePaths,skippedOversizedPaths:t.skippedOversizedPaths,semanticFiles:t.semanticFiles}}}function ze(e,t,i,o){let u=t.split(`
2
+ `),r=t.endsWith(`
3
+ `)?u.length-1:u.length;if(i<0||i>=r)return null;let n=Math.max(0,i-o),s=Math.min(r-1,i+o);return{relativePath:e,startLine:n,endLine:s,focusLine:i,source:u.slice(n,s+1).join(`
4
+ `)}}function Ke(e){let t=new Map;for(let i of e){let o=Ye(i.relativePath),u=t.get(o)??{matchingLines:0,matchingFiles:0};u.matchingLines+=i.matchingLines,u.matchingFiles+=1,t.set(o,u)}return[...t.entries()].map(([i,o])=>({scope:i,...o})).sort((i,o)=>o.matchingLines-i.matchingLines||o.matchingFiles-i.matchingFiles||i.scope.localeCompare(o.scope))}function Ye(e){let t=e.lastIndexOf("/");return t<0?e:e.slice(0,t)}function we(e,t){let i=e.map((u,r)=>({...u,priority:w(u.fileKind),sequence:r,evidenceCharacters:1,roles:["search"],reasons:["search"],symbols:u.ownerSymbol?[u.ownerSymbol]:[],behaviorSignals:[]})),o=[];for(let u of[0,1,2]){let r=t-o.length;if(r===0)break;let n=i.filter(s=>w(s.fileKind)===u);o.push(...Re(n,r,Number.MAX_SAFE_INTEGER,Pe).selected)}return o.map(({priority:u,sequence:r,evidenceCharacters:n,roles:s,reasons:c,symbols:a,behaviorSignals:l,...p})=>p)}function Pe(e,t){return w(e.fileKind)-w(t.fileKind)||+(t.ownerSymbol!==null)-+(e.ownerSymbol!==null)||e.relativePath.localeCompare(t.relativePath)||e.focusLine-t.focusLine}function ke(e,t,i={}){if(t.length===0)throw new Error("The source search pattern must not be empty.");return Ie(e,[t],i)[0]}import{availableParallelism as it}from"os";import{fileURLToPath as Dr}from"url";import{execFileSync as er}from"child_process";import{createHash as rr}from"crypto";import{lstatSync as ir,readlinkSync as or,readdirSync as sr,realpathSync as ar,statSync as cr}from"fs";import{dirname as ur,isAbsolute as pr,join as dr,posix as fr,relative as mr,resolve as yr,sep as hr}from"path";var Sr=512*1024*1024;function Ae(e){return ee({version:e.version,...e.base?{base:e.base}:{},files:[...e.files].sort((t,i)=>t.path.localeCompare(i.path))})}function T(e){return JSON.stringify({...e.clojureConfigPath?{clojureConfigPath:e.clojureConfigPath}:{},files:[...e.files].sort((t,i)=>t.path.localeCompare(i.path)).map(t=>({hash:t.hash,path:t.path,size:t.size})),languages:[...e.languages].sort(),pnpmWorkspaces:e.pnpmWorkspaces,typescriptProjectMode:e.typescriptProjectMode,typescriptProjects:[...e.typescriptProjects].sort(),version:e.version})}var Xe="scip-query:collaboration-domain",Ze="scip-query:workspace-instance",et="scip-query:index-generation",tt="scip-query:repository-content",Oe="scip-query:index-inputs",rt="scip-query:index-inputs";function Me(e){let t=e.snapshot,i=e.observedSourceKinds?new Set(e.observedSourceKinds):void 0,o=e.gitContext??t?.gitContext??(i?.has("live-workspace")?F(e.projectRoot):void 0),u=e.collaborationDomainId??e.db?.config.collaborationDomainId,r=u?g(Xe,1,u):void 0,n=o?g(Ze,1,o.worktreeId):void 0,s=t?g(tt,1,Ae(t.repositoryContent)):void 0,c=t?g(Oe,t.indexInputs.version,T(t.indexInputs)):void 0,a=e.db&&t?nt(e.db.generation.metadataRaw):void 0,l=e.db?{generation:g(et,1,e.db.generation.identity),...a?{inputs:a}:{},source:e.db.generation.source}:void 0,p=i??new Set([...l?["index-generation"]:[],...s?["repository-snapshot"]:n?["live-workspace"]:[]]),d=[...l&&p.has("index-generation")?[{kind:"index-generation",identity:l.generation}]:[],...s&&p.has("repository-snapshot")?[{kind:"repository-snapshot",identity:s}]:[],...n&&p.has("live-workspace")?[{kind:"live-workspace",identity:n}]:[],...p.has("process")?[{kind:"process"}]:[]],f=[...l&&p.has("index-generation")?[{source:"index-generation",kind:l.source==="immutable"?"immutable":"not-established"}]:[],...s&&p.has("repository-snapshot")?[{source:"repository-snapshot",kind:"fixed-snapshot"}]:[],...n&&p.has("live-workspace")?[{source:"live-workspace",kind:"not-established"}]:[],...p.has("process")?[{source:"process",kind:"not-established"}]:[]];return d.length===0&&(d.push({kind:"process"}),f.push({source:"process",kind:"not-established"})),{schemaVersion:ce,observedAt:(e.observedAt??(t?new Date(t.capturedAt):new Date)).toISOString(),facts:{...r?{collaborationDomain:r}:{},...n?{workspaceInstance:n}:{},...s?{wholeContent:s}:{},...c?{relevantInputs:[{subject:rt,identity:c}]}:{},...l?{index:l}:{}},observedSources:d,stabilityProofs:f,...o?{diagnostics:{clean:o.clean,...o.headCommit?{headCommit:o.headCommit}:{},...o.treeOid?{treeOid:o.treeOid}:{}}}:{}}}function nt(e){if(!e)return;let t=H(e);if(t.kind!=="legacy"&&t.kind!=="supported")return;let i=Q(t.metadata.fingerprint);return i&&Number.isSafeInteger(i.version)&&i.version>0?g(Oe,i.version,T(i)):void 0}var ot=4,st=8,at=25e3,ct=2500;var lt=4,ut=12;var pt=new Set(["vue-component-duplicates","vue-composable-candidates","vue-large-view-pressure"]),Vr=new Set([...pt,"suppressions"]);var _e=2,Te=q({kind:"health-semantic-prewarm",invalidation:W("health-semantic-prewarm"),serialize:e=>JSON.stringify(e),deserialize:dt});function dt(e){try{let t=JSON.parse(e);if(!t||typeof t!="object")return null;let i=t;return i.version!==_e||typeof i.definitions!="number"||!Number.isFinite(i.definitions)||typeof i.referenceCacheWrites!="number"||!Number.isFinite(i.referenceCacheWrites)||typeof i.referenceIncomplete!="number"||!Number.isFinite(i.referenceIncomplete)||typeof i.calleeRows!="number"||!Number.isFinite(i.calleeRows)||typeof i.warmedAt!="number"||!Number.isFinite(i.warmedAt)?null:{version:_e,definitions:i.definitions,referenceCacheWrites:i.referenceCacheWrites,referenceIncomplete:i.referenceIncomplete,calleeRows:i.calleeRows,warmedAt:i.warmedAt}}catch{return null}}function De(e){let t=_(e);return t.symbols>=at||t.documents>=ct}var Gr={env:process.env,projectFingerprint:U,semanticEngineFingerprint:ft,readMarker:(e,t,i)=>Te.read(e,t,i),writeMarker:(e,t,i,o)=>Te.write(e,t,i,o),candidateDefinitions:(e,t)=>new ge(e).scopedDefinitions(t.scope).filter(i=>me(i.relativePath)!==null),materializeReferences:(e,t,i)=>ye(e).materializeReferences(t,i),materializeCallees:he};function ft(e){return $(JSON.stringify({kind:"health-semantic-prewarm-engine",rust:ae(e.config.projectRoot)}))}var $r=je({envKey:"SCIP_QUERY_HEALTH_CONCURRENCY",defaultMinimum:lt,defaultMaximum:ut});var Ur=je({envKey:"SCIP_QUERY_DIFF_IMPACT_CONCURRENCY",defaultMinimum:ot,defaultMaximum:st});function je(e){return(t,i=process.env,o=it)=>mt(t,i,o,e)}function mt(e,t,i,o){let u=t[o.envKey],r=yt(i,o),n=u?parseInt(u,10):r;return!Number.isFinite(n)||n<1?Math.min(r,e):Math.min(n,e)}function yt(e,t){let i=e(),o=Number.isFinite(i)?Math.max(t.defaultMinimum,i-1):0;return Math.min(t.defaultMaximum,Math.max(t.defaultMinimum,o))}import{spawn as zr}from"child_process";import{createHash as ht,randomUUID as Yr}from"crypto";import{existsSync as Xr,realpathSync as Zr}from"fs";import{tmpdir as tn}from"os";import{join as nn,resolve as gt}from"path";import{fileURLToPath as sn}from"url";var y=18,D=1e3,cn=2*D;var St=64*1024*1024,ln={maxItems:64,maxBytes:128*1024*1024,maxItemBytes:St,maxBatch:1,responseRetentionMs:6e4};function Ne(e){return ht("sha256").update(te({kind:"scip-query-service-mailbox",protocolVersion:y,sessionDir:gt(e)})).digest("hex")}var xt=3e4,He=5,Et=100,Ct=1024*1024,wt=1280*1024,I={maxItems:64,maxBytes:128*1024*1024,maxItemBytes:64*1024*1024,maxBatch:1,responseRetentionMs:6e4};async function It(e,t){let i=re(e);ne(i);let o=B(Qe(e,"server.lock"),{kind:"query-service-server",detail:{projectRoot:Ge(t)}});if(o.kind!=="acquired")return;let u;try{u=ue(t)}catch(b){throw o.lock.release(),b}let r=pe([i.pendingDir,i.legacyRequestDir]),n=Qe(e,"server.json"),s=Ne(e),c=P(process.pid),a=!1,l=!1,p=C(),d=Number.NEGATIVE_INFINITY,f=0,m=()=>{a=!0};process.once("SIGINT",m),process.once("SIGTERM",m);let R=(b=!1)=>{let E=C();if(!b&&E-d<D)return;d=E;let N={protocolVersion:y,sessionIdentity:s,pid:process.pid,...c?{processIdentity:c}:{},generation:u.generation.identity,heartbeatAtMs:Date.now()};b?G(n,N):V(n,N)};try{R(!0);let b=_t();for(;!a&&!l&&C()-p<b;){let E=await Pt(i,u,s,()=>{l=!0});E>0?(f=0,p=C(),R()):(f+=1,R()),await r.wait(Tt(E,f))}}finally{r.close(),u.close(),bt(n,{force:!0}),o.lock.release()}}async function Pt(e,t,i,o){let u=ie(e,{ownerId:Dt,nowMs:Date.now(),limits:I,owner:jt,liveness:Nt,durability:"visibility"}),r=0;for(let n of u){let s=n.requestId;try{let c=At(oe(n,I),i);if(s=c.id,c.id!==n.requestId||c.operationKey!==n.operationKey||c.clientId!==n.clientId||c.deadlineAtMs!==n.deadlineAtMs)throw new Error("Query service request identity does not match its mailbox claim.");if(c.deadlineAtMs<Date.now())throw new Error("Query service request expired before processing.");if(c.request.expectedGeneration!==t.generation.identity){O(e,n,{ok:!1,protocolVersion:y,id:s,generation:t.generation.identity,errorCode:"generation-mismatch",error:"Persistent query service opened a different generation."},{nowMs:Date.now(),limits:I,durability:"visibility"}),o(),r+=1;continue}let a=await kt(t,c.request),l=Me({projectRoot:t.config.projectRoot,db:t,observedSourceKinds:["index-generation"]}),p=Date.now();if(c.deadlineAtMs<p)throw new Error("Query service request expired while processing.");O(e,n,{ok:!0,protocolVersion:y,id:s,generation:t.generation.identity,result:a,observationReceipt:l},{nowMs:p,limits:I,durability:"visibility"})}catch(c){let a=c instanceof Error?c.message:String(c);se(e,n,{ok:!1,protocolVersion:y,id:s,errorCode:"request-failed",error:a},a,{nowMs:Date.now(),limits:I})}r+=1}return r}async function kt(e,t){if(t.kind==="source-search")return ke(e,t.pattern,t.options);if(t.kind==="outline")return de(e,t.filePattern);if(t.kind==="entrypoints"){let{entryPoints:n}=await import("./entry-map-V2NQP5JU.js");return n(e,t.options)}if(t.kind==="files"){let{files:n}=await import("./files-VM53I4IU.js");return n(e,t.pattern)}if(t.kind==="stats"){let{stats:n}=await import("./stats-OOJ74B32.js");return n(e)}if(t.kind==="members"){let[{members:n},{symbolResolutionJson:s}]=await Promise.all([import("./members-HE67475K.js"),import("./code-result-json-6E4J6LGZ.js")]);return{...s(e,t.symbolPattern),members:n(e,t.symbolPattern)}}if(t.kind==="methods"){let{resolveMethods:n}=await import("./methods-K5JK4PPH.js");return n(e,{className:t.className})}if(t.kind==="file-dependencies"){let{deps:n,rdeps:s}=await import("./deps-GQMUYVKW.js");return t.direction==="outgoing"?n(e,t.filePattern):s(e,t.filePattern)}if(t.kind==="imported-by"){let{importedBy:n}=await import("./imports-DOZAJWLW.js");return n(e,t.symbolPattern)}if(t.kind==="hierarchy"){let[{hierarchy:n},{withSymbolResolutionJson:s}]=await Promise.all([import("./hierarchy-D553WRSZ.js"),import("./symbol-resolution-3FVEKDTJ.js")]);return s(e,t.symbolPattern,n(e,t.symbolPattern),"hierarchy")}if(t.kind==="by-kind"||t.kind==="kind-counts"){let{byKind:n,kindCounts:s}=await import("./by-kind-CI3O6PQG.js");return t.kind==="by-kind"?n(e,t.kindQuery):s(e)}if(t.kind==="refs"){let[{refs:n},{compareReferenceKey:s},{withSymbolResolutionJson:c}]=await Promise.all([import("./refs-NBHKL4UQ.js"),import("./refs-pagination-BBVTIHMH.js"),import("./symbol-resolution-3FVEKDTJ.js")]),a=S(e),l=n(e,t.symbolPattern,{semantic:a}).sort(s);return{...c(e,t.symbolPattern,l,"references"),pagination:{cursorVersion:2,producer:"complete-only",semanticEnrichment:a}}}if(t.kind==="trace"){let n=S(e);if(!n){let p=v(e,t.kind,t.symbolPattern);if(p)return p}let[{qualifiedTraceEvidence:s},{symbolResolutionJson:c}]=await Promise.all([import("./trace-II5K2TMH.js"),import("./symbol-resolution-3FVEKDTJ.js")]),a=JSON.stringify({...c(e,t.symbolPattern),...s(e,t.symbolPattern,{semantic:n})}),l={serializedJson:a,sha256:h("sha256").update(a).digest("hex")};return n||x(e,t.kind,t.symbolPattern,l,wt),l}if(t.kind==="value-flow"){let n=v(e,t.kind,t.symbolPattern);if(n)return n;let{valueFlow:s}=await import("./value-flow-MKFUUE5B.js"),c=JSON.stringify(s(e,{symbols:[t.symbolPattern]},{maxDepth:2,maxEdges:48})),a={serializedJson:c,sha256:h("sha256").update(c).digest("hex")};return x(e,t.kind,t.symbolPattern,a),a}if(t.kind==="dependence-slice"){let n=v(e,t.kind,t.criterion);if(n)return n;let{dependenceSlice:s}=await import("./dependence-slice-MGAJDZXB.js"),c=JSON.stringify(s(e,t.criterion)),a={serializedJson:c,sha256:h("sha256").update(c).digest("hex")};return x(e,t.kind,t.criterion,a),a}if(t.kind==="call-graph"){let[{callGraph:n},{symbolResolutionJson:s}]=await Promise.all([import("./call-graph-6QTUTXH7.js"),import("./symbol-resolution-3FVEKDTJ.js")]),c=JSON.stringify({...s(e,t.symbolPattern),callGraph:n(e,t.symbolPattern,{semantic:S(e)})});return{serializedJson:c,sha256:h("sha256").update(c).digest("hex")}}if(t.kind==="reference-neighborhood"||t.kind==="dataflow"){let n=S(e),s=t.kind==="reference-neighborhood"&&!n;if(s){let m=v(e,t.kind,t.symbolPattern);if(m)return m}let[{dataflow:c,referenceNeighborhood:a},{symbolResolutionJson:l}]=await Promise.all([import("./dataflow-2BLMUZBP.js"),import("./symbol-resolution-3FVEKDTJ.js")]),p=t.kind==="dataflow"?c(e,t.symbolPattern,{semantic:n}):a(e,t.symbolPattern,{semantic:n}),d=JSON.stringify({...l(e,t.symbolPattern),[t.kind]:p}),f={serializedJson:d,sha256:h("sha256").update(d).digest("hex")};return s&&x(e,t.kind,t.symbolPattern,f),f}if(t.kind==="reference-reachability"||t.kind==="slice"){let n=S(e);if(!n){let p=v(e,t.kind,t.symbolPattern);if(p)return p}let[{referenceReachability:s},{symbolResolutionJson:c}]=await Promise.all([import("./slice-U6S6LBSB.js"),import("./symbol-resolution-3FVEKDTJ.js")]),a=JSON.stringify({...c(e,t.symbolPattern),[t.kind]:s(e,t.symbolPattern,{semantic:n})}),l={serializedJson:a,sha256:h("sha256").update(a).digest("hex")};return n||x(e,t.kind,t.symbolPattern,l),l}if(t.kind==="imports"){let{imports:n}=await import("./imports-DOZAJWLW.js");return n(e,t.filePattern,{semantic:S(e)})}if(t.kind==="unused-imports"){let{unusedImports:n}=await import("./imports-DOZAJWLW.js");return n(e,t.filePattern,{semantic:S(e)})}if(t.kind==="system"){let n=v(e,t.kind,t.modulePattern);if(n)return n;let{system:s}=await import("./system-6K2NOO5C.js"),c=JSON.stringify(s(e,t.modulePattern)),a={serializedJson:c,sha256:h("sha256").update(c).digest("hex")};return x(e,t.kind,t.modulePattern,a),a}if(t.kind==="surface"){let{consumerSurface:n}=await import("./surface-C7SS5CDQ.js");return n(e,t.modulePattern)}let[{codeBatch:i},{codeBatchResultOnlyJsonForSelectors:o}]=await Promise.all([import("./code-EQL6ZBLH.js"),import("./code-result-json-6E4J6LGZ.js")]),u=i(e,t.selectors,t.options),r=JSON.stringify(o(e,t.selectors,u));return{serializedJson:r,sha256:h("sha256").update(r).digest("hex")}}function At(e,t){let i=JSON.parse(e);if(!i||typeof i!="object"||Array.isArray(i))throw new Error("Invalid query service request.");let o=i,u=o.request;if(o.mailboxVersion!==1||o.protocolVersion!==y||typeof o.id!="string"||o.id.length===0||typeof o.operationKey!="string"||o.operationKey.length===0||typeof o.clientId!="string"||o.clientId.length===0||typeof o.enqueuedAtMs!="number"||!Number.isSafeInteger(o.enqueuedAtMs)||o.enqueuedAtMs<0||typeof o.deadlineAtMs!="number"||!Number.isSafeInteger(o.deadlineAtMs)||o.deadlineAtMs<o.enqueuedAtMs||o.sessionIdentity!==t||!u||typeof u!="object"||Array.isArray(u))throw new Error("Invalid query service request envelope.");let r=u;if(typeof r.expectedGeneration!="string")throw new Error("Invalid query service request generation.");let n={mailboxVersion:1,protocolVersion:y,id:o.id,operationKey:o.operationKey,clientId:o.clientId,enqueuedAtMs:o.enqueuedAtMs,deadlineAtMs:o.deadlineAtMs,sessionIdentity:t};if(r.kind==="outline"){if(typeof r.filePattern!="string")throw new Error("Invalid query service outline request.");return{...n,request:{kind:"outline",expectedGeneration:r.expectedGeneration,filePattern:r.filePattern}}}if(r.kind==="files"){if(typeof r.pattern!="string")throw new Error("Invalid query service files request.");return{...n,request:{kind:"files",expectedGeneration:r.expectedGeneration,pattern:r.pattern}}}if(r.kind==="stats")return{...n,request:{kind:"stats",expectedGeneration:r.expectedGeneration}};if(r.kind==="members"){if(typeof r.symbolPattern!="string")throw new Error("Invalid query service members request.");return{...n,request:{kind:"members",expectedGeneration:r.expectedGeneration,symbolPattern:r.symbolPattern}}}if(r.kind==="methods"){if(typeof r.className!="string")throw new Error("Invalid query service methods request.");return{...n,request:{kind:"methods",expectedGeneration:r.expectedGeneration,className:r.className}}}if(r.kind==="file-dependencies"){if(r.direction!=="outgoing"&&r.direction!=="incoming"||typeof r.filePattern!="string")throw new Error("Invalid query service file dependencies request.");return{...n,request:{kind:"file-dependencies",expectedGeneration:r.expectedGeneration,direction:r.direction,filePattern:r.filePattern}}}if(r.kind==="imported-by"||r.kind==="hierarchy"||r.kind==="refs"||r.kind==="trace"||r.kind==="value-flow"||r.kind==="call-graph"||r.kind==="reference-neighborhood"||r.kind==="reference-reachability"||r.kind==="slice"||r.kind==="dataflow"){if(typeof r.symbolPattern!="string")throw new Error(`Invalid query service ${r.kind} request.`);return{...n,request:{kind:r.kind,expectedGeneration:r.expectedGeneration,symbolPattern:r.symbolPattern}}}if(r.kind==="dependence-slice"){if(typeof r.criterion!="string")throw new Error("Invalid query service dependence-slice request.");return{...n,request:{kind:"dependence-slice",expectedGeneration:r.expectedGeneration,criterion:r.criterion}}}if(r.kind==="by-kind"){if(typeof r.kindQuery!="string")throw new Error("Invalid query service by-kind request.");return{...n,request:{kind:"by-kind",expectedGeneration:r.expectedGeneration,kindQuery:r.kindQuery}}}if(r.kind==="kind-counts")return{...n,request:{kind:"kind-counts",expectedGeneration:r.expectedGeneration}};if(r.kind==="imports"||r.kind==="unused-imports"){if(typeof r.filePattern!="string")throw new Error(`Invalid query service ${r.kind} request.`);return{...n,request:{kind:r.kind,expectedGeneration:r.expectedGeneration,filePattern:r.filePattern}}}if(r.kind==="system"||r.kind==="surface"){if(typeof r.modulePattern!="string")throw new Error(`Invalid query service ${r.kind} request.`);return{...n,request:{kind:r.kind,expectedGeneration:r.expectedGeneration,modulePattern:r.modulePattern}}}if(r.kind==="code"){if(!Array.isArray(r.selectors)||r.selectors.length<1||r.selectors.length>24||r.selectors.some(p=>typeof p!="string"||p.length===0)||!r.options||typeof r.options!="object"||Array.isArray(r.options))throw new Error("Invalid query service code request.");let a=r.options,l=a.members;if(l!=="exported"&&l!=="all")throw new Error("Query service code members must be exported or all.");return{...n,request:{kind:"code",expectedGeneration:r.expectedGeneration,selectors:r.selectors,options:{context:Le(a.context,"context"),members:l}}}}if(r.kind==="entrypoints"){if(!r.options||typeof r.options!="object"||Array.isArray(r.options))throw new Error("Invalid query service entrypoints request.");let a=r.options;return{...n,request:{kind:"entrypoints",expectedGeneration:r.expectedGeneration,options:{...a.search===void 0?{}:{search:j(a.search,"search")},...a.scope===void 0?{}:{scope:j(a.scope,"scope")}}}}}if(r.kind!=="source-search"||typeof r.pattern!="string"||r.pattern.length===0||!r.options||typeof r.options!="object"||Array.isArray(r.options))throw new Error("Invalid query service source-search request.");let s=r.options,c={...s.scope===void 0?{}:{scope:j(s.scope,"scope")},...s.context===void 0?{}:{context:Le(s.context,"context")},...s.limit===void 0?{}:{limit:Ot(s.limit,"limit")},...s.regexp===void 0?{}:{regexp:Be(s.regexp,"regexp")},...s.ignoreCase===void 0?{}:{ignoreCase:Be(s.ignoreCase,"ignoreCase")},...s.ranking===void 0?{}:{ranking:Mt(s.ranking)}};return{...n,request:{kind:"source-search",expectedGeneration:r.expectedGeneration,pattern:r.pattern,options:c}}}function j(e,t){if(typeof e!="string")throw new Error(`Query service option ${t} must be a string.`);return e}function Le(e,t){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Query service option ${t} must be a non-negative safe integer.`);return e}var Fe=new WeakMap,$e=new WeakMap;function v(e,t,i){let o=$e.get(e);return o?.kind===t&&o.operand===i?o.result:null}function x(e,t,i,o,u=Ct){Buffer.byteLength(o.serializedJson)<=u&&$e.set(e,{kind:t,operand:i,result:o})}function S(e){let t=Fe.get(e);if(t!==void 0)return t;let i=!De(e);return Fe.set(e,i),i}function Ot(e,t){if(!Number.isSafeInteger(e)||e<=0)throw new Error(`Query service option ${t} must be a positive safe integer.`);return e}function Be(e,t){if(typeof e!="boolean")throw new Error(`Query service option ${t} must be a boolean.`);return e}function Mt(e){if(e!=="structural")throw new Error("Query service option ranking must be structural.");return e}function _t(){let e=Number(process.env.SCIP_QUERY_QUERY_SERVICE_IDLE_MS);return Number.isInteger(e)&&e>=0?e:xt}function Tt(e,t){if(e>0)return He;let i=Math.max(0,Math.min(5,t-1));return Math.min(Et,He*2**i)}var Dt=`query-service-${process.pid}-${Rt()}`,Ve=P(process.pid),jt={pid:process.pid,...Ve?{processIdentity:Ve}:{}},Nt={isProcessAlive:L,readProcessIdentity:P},Qt=process.argv[1]?vt(Ge(process.argv[1])).href:null;if(Qt===import.meta.url){let e=process.argv[2],t=process.argv[3];!e||!t?(console.error("query-service: expected <session-dir> <project-root>"),process.exitCode=1):await It(e,t)}export{It as runQueryServiceServer};
5
+ //# sourceMappingURL=query-service-server.js.map
@@ -0,0 +1,2 @@
1
+ import{a}from"./chunk-QLQBZOJH.js";import"./chunk-FTSQNONX.js";import"./chunk-35ELD3RM.js";import"./chunk-GTDP2SKQ.js";import"./chunk-2I3RSUWX.js";import"./chunk-4N6QSEMZ.js";import"./chunk-OIRWZIYL.js";import"./chunk-VGRUM7JI.js";import"./chunk-GFLTPNWV.js";import"./chunk-CT5SI2I4.js";import"./chunk-54EOGFBR.js";import"./chunk-F4FNK44D.js";import"./chunk-T6FRID7Y.js";import"./chunk-UZFCZ7SJ.js";import"./chunk-Q7HB7BFJ.js";import"./chunk-SEUJVWT2.js";import"./chunk-SF7X6QNW.js";import"./chunk-SDPA5DKN.js";import"./chunk-DOPCR5BY.js";import"./chunk-VWLIOEEF.js";import"./chunk-G6OGPXJW.js";import"./chunk-DRENNWRG.js";import"./chunk-H5EXS3HM.js";import"./chunk-HGFDYOVB.js";import"./chunk-3VLJ2DCA.js";import"./chunk-4DCKBY6T.js";export{a as refs};
2
+ //# sourceMappingURL=refs-NBHKL4UQ.js.map
@@ -0,0 +1,2 @@
1
+ import{a as y}from"./chunk-QLQBZOJH.js";import"./chunk-FTSQNONX.js";import"./chunk-35ELD3RM.js";import"./chunk-GTDP2SKQ.js";import{k as v,l as S,n as w}from"./chunk-2I3RSUWX.js";import"./chunk-4N6QSEMZ.js";import"./chunk-OIRWZIYL.js";import{a as u}from"./chunk-VGRUM7JI.js";import{c as d}from"./chunk-GFLTPNWV.js";import"./chunk-CT5SI2I4.js";import"./chunk-54EOGFBR.js";import"./chunk-F4FNK44D.js";import"./chunk-T6FRID7Y.js";import"./chunk-UZFCZ7SJ.js";import"./chunk-Q7HB7BFJ.js";import"./chunk-SEUJVWT2.js";import"./chunk-SF7X6QNW.js";import"./chunk-SDPA5DKN.js";import"./chunk-DOPCR5BY.js";import"./chunk-VWLIOEEF.js";import"./chunk-G6OGPXJW.js";import{g}from"./chunk-DRENNWRG.js";import"./chunk-H5EXS3HM.js";import"./chunk-HGFDYOVB.js";import"./chunk-3VLJ2DCA.js";import"./chunk-4DCKBY6T.js";function j(t,r,e){if(!Number.isSafeInteger(e.limit)||e.limit<=0)throw new Error("Reference page limit must be a positive safe integer.");let n=u(t,r);if(!n)return{rows:[],hasMore:!1,producer:e.producer??"source-keyset",semanticEnrichment:!1};if(e.producer==="complete-only"||e.semantic===!0||n.relativePath.endsWith(".rb"))return m(t,r,e);let a=v(t,n);if(!a)return m(t,r,e);let i=F(t,n),c=x(t,i),f=[],R=e.producer==="source-keyset";for(let l of c){if(e.after&&l<e.after.relativePath)continue;e.instrumentation?.fileScanned?.(l);let h=S(t,a,l);h.length>0&&(R=!0);let P=new Set(h);i?.relativePath===l&&P.add(i.line);for(let k of[...P].sort((s,M)=>s-M)){let s={relativePath:l,line:k};if(!(e.after&&p(s,e.after)<=0)&&(f.push(s),e.instrumentation?.rowAccepted?.(s),R&&f.length>e.limit))return b(f,e.limit)}}return R?b(f,e.limit):m(t,r,e,i)}function p(t,r){return(t.relativePath<r.relativePath?-1:t.relativePath>r.relativePath?1:0)||t.line-r.line}function b(t,r){return{rows:t.slice(0,r),hasMore:t.length>r,producer:"source-keyset",semanticEnrichment:!1}}function m(t,r,e,n){let o=u(t,r),a=e.semantic===!0||o?.relativePath.endsWith(".rb")?y(t,r,{semantic:e.semantic}):D(t,r,n),i=E(a).filter(c=>!e.after||p(c,e.after)>0);for(let c of i.slice(0,e.limit+1))e.instrumentation?.rowAccepted?.(c);return{rows:i.slice(0,e.limit),hasMore:i.length>e.limit,producer:"complete-only",semanticEnrichment:e.semantic===!0}}function D(t,r,e){let n=u(t,r);if(!n)return[];let o=e===void 0?F(t,n):e,a=w(t,n).map(i=>({relativePath:i.file,line:i.line}));return o?[o,...a]:a}function F(t,r){return!g(r.symbol)&&!t.isIgnored(r.relativePath)?{relativePath:r.relativePath,line:r.startLine}:null}function x(t,r){let e=d(t);return!r||e.includes(r.relativePath)?e:[...e,r.relativePath].sort((n,o)=>n<o?-1:n>o?1:0)}function E(t){let r=new Map;for(let e of t)r.set(`${e.relativePath}\0${e.line}`,e);return[...r.values()].sort(p)}export{p as compareReferenceKey,j as referencePage};
2
+ //# sourceMappingURL=refs-pagination-BBVTIHMH.js.map