codebaseiq 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (447) hide show
  1. package/CHANGELOG.md +89 -0
  2. package/README.md +1 -1
  3. package/dist/augment-vue-worker.js +1 -1
  4. package/dist/{chunk-ZMI2JSX2.js → chunk-23C5AD3B.js} +2 -2
  5. package/dist/chunk-2E6OUPCF.js +2 -0
  6. package/dist/chunk-2EDX3JT5.js +3 -0
  7. package/dist/chunk-2I2UHZET.js +2 -0
  8. package/dist/{chunk-T3DGWPXM.js → chunk-2OMXFE64.js} +2 -2
  9. package/dist/chunk-2PRONPAS.js +3 -0
  10. package/dist/{chunk-GW6Z3WGY.js → chunk-356EZBIP.js} +2 -2
  11. package/dist/{chunk-UDS562V4.js → chunk-36JC5BG2.js} +2 -2
  12. package/dist/chunk-3RR2K7EZ.js +20 -0
  13. package/dist/{chunk-JE3WZ6II.js → chunk-3RSBGWGL.js} +2 -2
  14. package/dist/{chunk-VE5AVNMP.js → chunk-3VJ3OCRE.js} +2 -2
  15. package/dist/{chunk-FDGD5AB5.js → chunk-4LK5OIPW.js} +2 -2
  16. package/dist/chunk-5DSL3NT2.js +17 -0
  17. package/dist/chunk-5FWR5HLG.js +90 -0
  18. package/dist/chunk-5IC2WZAL.js +22 -0
  19. package/dist/{chunk-MVB3DAEY.js → chunk-5IZRKWTZ.js} +2 -2
  20. package/dist/{chunk-Q65CQ4XL.js → chunk-5LL4KEHO.js} +2 -2
  21. package/dist/chunk-5T44HG5Y.js +88 -0
  22. package/dist/{chunk-TRRC4ZJ7.js → chunk-5ZI2PPI7.js} +2 -2
  23. package/dist/{chunk-7XAN6GKB.js → chunk-67VJAYVR.js} +2 -2
  24. package/dist/{chunk-MOVBWNIP.js → chunk-6BF3VYEF.js} +2 -2
  25. package/dist/chunk-6JMAVFL4.js +3 -0
  26. package/dist/chunk-6O3KXIDL.js +2 -0
  27. package/dist/{chunk-JOIRNPPY.js → chunk-6VREELBC.js} +2 -2
  28. package/dist/chunk-6WAPPQ5F.js +82 -0
  29. package/dist/{chunk-FW53T7EB.js → chunk-75KJGYX7.js} +2 -2
  30. package/dist/chunk-7GAK2F3H.js +77 -0
  31. package/dist/{chunk-UBGWN7I4.js → chunk-7JELP5YE.js} +2 -2
  32. package/dist/chunk-7UCDGXRW.js +8 -0
  33. package/dist/{chunk-L57ZKWVG.js → chunk-AEXQYQD7.js} +2 -2
  34. package/dist/chunk-AQI4N64O.js +22 -0
  35. package/dist/{chunk-ICFDQHAM.js → chunk-AURCQHSG.js} +2 -2
  36. package/dist/{chunk-I2T2LLK2.js → chunk-BBP7HVBJ.js} +2 -2
  37. package/dist/{chunk-OFBE4NGP.js → chunk-BFBIMTCJ.js} +2 -2
  38. package/dist/{chunk-JEJLSICM.js → chunk-BGGB5N53.js} +2 -2
  39. package/dist/{chunk-TIIC3ZE7.js → chunk-BRQL7AFJ.js} +2 -2
  40. package/dist/{chunk-YSNONTJ2.js → chunk-BWL3PMPT.js} +2 -2
  41. package/dist/chunk-C6WKPKCF.js +127 -0
  42. package/dist/{chunk-YESXMKX3.js → chunk-C7OUW52M.js} +2 -2
  43. package/dist/chunk-C7QWUBR2.js +545 -0
  44. package/dist/{chunk-4WKDMDEW.js → chunk-CCIYWXX6.js} +2 -2
  45. package/dist/{chunk-FAJQ7LWY.js → chunk-CIYA2KZN.js} +2 -2
  46. package/dist/{chunk-VEXUL62T.js → chunk-CR3OG6SQ.js} +2 -2
  47. package/dist/{chunk-JSOYNVWH.js → chunk-CVHOQONG.js} +2 -2
  48. package/dist/{chunk-LU3BMVH2.js → chunk-CW6AXOLR.js} +2 -2
  49. package/dist/{chunk-TXXOEMZJ.js → chunk-D53LWANR.js} +2 -2
  50. package/dist/{chunk-DO6WQD2T.js → chunk-D62CTZX6.js} +2 -2
  51. package/dist/{chunk-N3IQCBCF.js → chunk-D7AZAOZX.js} +2 -2
  52. package/dist/{chunk-RDBI2RXU.js → chunk-D7DOB27N.js} +7 -7
  53. package/dist/chunk-DAKIGMIK.js +21 -0
  54. package/dist/chunk-DDN2F6GB.js +2 -0
  55. package/dist/chunk-DUKHVPU5.js +4 -0
  56. package/dist/chunk-DVWO7RBC.js +2 -0
  57. package/dist/{chunk-HKQUXIFO.js → chunk-E52K4L2W.js} +2 -2
  58. package/dist/chunk-EIBGSU2R.js +2 -0
  59. package/dist/chunk-EN4AHLL3.js +3 -0
  60. package/dist/chunk-EQNMD62X.js +51 -0
  61. package/dist/{chunk-ENCCHKM6.js → chunk-EXZ7VLRY.js} +4 -4
  62. package/dist/{chunk-NEDP5RFQ.js → chunk-F3QSL4W2.js} +2 -2
  63. package/dist/{chunk-O6QTXQPJ.js → chunk-F74LZWCE.js} +2 -2
  64. package/dist/{chunk-BH5F2Q4O.js → chunk-FEIZXBLH.js} +2 -2
  65. package/dist/chunk-FH5WG4LE.js +2 -0
  66. package/dist/{chunk-BVAJLC5A.js → chunk-FOZ74V56.js} +2 -2
  67. package/dist/{chunk-L4NRUAGJ.js → chunk-FQTIFWLR.js} +2 -2
  68. package/dist/chunk-FTTV7IRX.js +355 -0
  69. package/dist/chunk-FWQGH2N2.js +2 -0
  70. package/dist/{chunk-CAUCPUOF.js → chunk-GDHWOA57.js} +2 -2
  71. package/dist/{chunk-6MUIJMVL.js → chunk-GIDCP7KV.js} +2 -2
  72. package/dist/{chunk-ZV3JV5G5.js → chunk-GL6UTNUB.js} +2 -2
  73. package/dist/chunk-GP7C5VAE.js +2 -0
  74. package/dist/{chunk-FQKZWM4L.js → chunk-GQLDYCWS.js} +5 -5
  75. package/dist/chunk-GQXXOS55.js +2 -0
  76. package/dist/{chunk-H3LGFZVK.js → chunk-GUFPEFBG.js} +2 -2
  77. package/dist/{chunk-NNOKTMZT.js → chunk-GV2CEZCW.js} +2 -2
  78. package/dist/{chunk-FETNQCFO.js → chunk-GVAF222T.js} +2 -2
  79. package/dist/chunk-GWYZVVKY.js +21 -0
  80. package/dist/{chunk-7FND7D7N.js → chunk-HENP2O4A.js} +2 -2
  81. package/dist/{chunk-LZYFLFEH.js → chunk-HINZQKSY.js} +2 -2
  82. package/dist/{chunk-RR7SX44N.js → chunk-HQA7EBSK.js} +2 -2
  83. package/dist/{chunk-XMQ23E27.js → chunk-HVFB3PME.js} +2 -2
  84. package/dist/chunk-I22IZYDI.js +2 -0
  85. package/dist/chunk-ICUL7XRT.js +21 -0
  86. package/dist/{chunk-CQP3THUZ.js → chunk-IHSLIIL3.js} +2 -2
  87. package/dist/{chunk-34WBMAYK.js → chunk-ITSJMNUD.js} +2 -2
  88. package/dist/{chunk-PX4RYAAK.js → chunk-IZDPGOZR.js} +2 -2
  89. package/dist/chunk-J3GLP7Q5.js +3 -0
  90. package/dist/{chunk-CVYSU6BX.js → chunk-J7AMBVWF.js} +2 -2
  91. package/dist/{chunk-Y6KHROC3.js → chunk-JCMFBF4Z.js} +2 -2
  92. package/dist/chunk-JFIA2JI3.js +3 -0
  93. package/dist/chunk-JLZLLLW5.js +3 -0
  94. package/dist/{chunk-5PUWMSDU.js → chunk-JSNTHRLQ.js} +2 -2
  95. package/dist/{chunk-C6SBF2WH.js → chunk-JX6ZWDOS.js} +2 -2
  96. package/dist/{chunk-4XTAUQFD.js → chunk-JYI7CV25.js} +2 -2
  97. package/dist/chunk-K7JLSGCJ.js +8 -0
  98. package/dist/{chunk-XWUOUWYI.js → chunk-KPZGTB2O.js} +2 -2
  99. package/dist/{chunk-VXYS3FZD.js → chunk-LKUTSP4G.js} +2 -2
  100. package/dist/{chunk-GTXSJDCO.js → chunk-LMTSB3TB.js} +2 -2
  101. package/dist/chunk-LONKINMJ.js +543 -0
  102. package/dist/{chunk-WMPRTGH2.js → chunk-LQHYYIOB.js} +2 -2
  103. package/dist/{chunk-VUIYB2V3.js → chunk-LZSQ6X7E.js} +2 -2
  104. package/dist/{chunk-ST7V3SKN.js → chunk-M2Y6PCFE.js} +2 -2
  105. package/dist/chunk-MEUHIDI3.js +7 -0
  106. package/dist/{chunk-OZYRSMSH.js → chunk-MHWMEZDA.js} +2 -2
  107. package/dist/{chunk-RKEJ6VTF.js → chunk-MQW6SJ4P.js} +2 -2
  108. package/dist/{chunk-J77SU6VA.js → chunk-MSI3K7PJ.js} +2 -2
  109. package/dist/chunk-MVRGB4KJ.js +278 -0
  110. package/dist/{chunk-DQMDCD24.js → chunk-MZNMASFM.js} +2 -2
  111. package/dist/{chunk-ID63777H.js → chunk-NBCQZSGR.js} +2 -2
  112. package/dist/chunk-NBZKSTXP.js +2 -0
  113. package/dist/{chunk-SZD2KF7Q.js → chunk-NCJILOAK.js} +2 -2
  114. package/dist/{chunk-C7QOQX32.js → chunk-NDKOVQFG.js} +2 -2
  115. package/dist/{chunk-UNBY47BC.js → chunk-NEWHKGVD.js} +2 -2
  116. package/dist/{chunk-PYAB5SM6.js → chunk-O2M3VNDY.js} +2 -2
  117. package/dist/chunk-OFGOOL6U.js +3 -0
  118. package/dist/{chunk-SWHMHUKF.js → chunk-OQUCBKOI.js} +2 -2
  119. package/dist/{chunk-7MGU3HPH.js → chunk-P4NVCOM7.js} +2 -2
  120. package/dist/{chunk-ANFVSJWQ.js → chunk-PFC44E6D.js} +2 -2
  121. package/dist/{chunk-EZNMUY67.js → chunk-PHNCEUXX.js} +2 -2
  122. package/dist/{chunk-4FC325IF.js → chunk-PTQPPPG2.js} +2 -2
  123. package/dist/chunk-PUVNH4PO.js +3 -0
  124. package/dist/chunk-Q23IMHXS.js +343 -0
  125. package/dist/chunk-Q3ZCQY2Y.js +3 -0
  126. package/dist/{chunk-KMITESMT.js → chunk-Q4XEU3UH.js} +2 -2
  127. package/dist/{chunk-QKPLA6IC.js → chunk-QEOWONKY.js} +2 -2
  128. package/dist/{chunk-BJ6SQAEN.js → chunk-QMOZZ2VX.js} +2 -2
  129. package/dist/chunk-RCIGX23V.js +60 -0
  130. package/dist/{chunk-IOP6FWIM.js → chunk-RIYJ4L33.js} +2 -2
  131. package/dist/chunk-RJVAPMHF.js +14 -0
  132. package/dist/chunk-SB7NASHU.js +2 -0
  133. package/dist/{chunk-UZGZB3VB.js → chunk-SGMNWYTH.js} +2 -2
  134. package/dist/chunk-SMDIEDM4.js +27 -0
  135. package/dist/chunk-SV2LEFVM.js +2 -0
  136. package/dist/chunk-SX72EVMY.js +3 -0
  137. package/dist/chunk-T5X7DK6C.js +3 -0
  138. package/dist/{chunk-6NW7MU72.js → chunk-T6MQNNAC.js} +2 -2
  139. package/dist/chunk-T75DS2E6.js +21 -0
  140. package/dist/{chunk-HRWGYWRJ.js → chunk-TEANKHUU.js} +2 -2
  141. package/dist/chunk-TJBOJUVN.js +3 -0
  142. package/dist/{chunk-XLQ3GLWZ.js → chunk-TJWVT4DO.js} +2 -2
  143. package/dist/{chunk-7NVGT435.js → chunk-TNJGTQWO.js} +2 -2
  144. package/dist/{chunk-NE6IU5ZD.js → chunk-TOTWJZIX.js} +2 -2
  145. package/dist/{chunk-PBI2LFKH.js → chunk-TPO7XC5Z.js} +2 -2
  146. package/dist/{chunk-HPJRBHVT.js → chunk-U33PMPNW.js} +2 -2
  147. package/dist/{chunk-QHRNXP3C.js → chunk-U7NUXDQO.js} +2 -2
  148. package/dist/chunk-UC2FD2PS.js +4 -0
  149. package/dist/{chunk-PIOMTC27.js → chunk-UQE4XFSA.js} +2 -2
  150. package/dist/chunk-UQYQBLJX.js +5 -0
  151. package/dist/{chunk-KWVHSKHK.js → chunk-USOAJHY7.js} +2 -2
  152. package/dist/{chunk-GCHRX4YW.js → chunk-UW6KD57C.js} +2 -2
  153. package/dist/{chunk-PTAWHLVJ.js → chunk-VGWZ4MOY.js} +2 -2
  154. package/dist/{chunk-XME3HPXZ.js → chunk-VWYGCMV5.js} +2 -2
  155. package/dist/{chunk-AKB7V7TV.js → chunk-W7YLRXZE.js} +2 -2
  156. package/dist/{chunk-SYDJMPES.js → chunk-WK2IQJPK.js} +2 -2
  157. package/dist/{chunk-RBAS5ZHI.js → chunk-WWCV4E6J.js} +2 -2
  158. package/dist/{chunk-OL6KJP3N.js → chunk-XMJ53WG4.js} +2 -2
  159. package/dist/chunk-XN3EKMLI.js +4 -0
  160. package/dist/chunk-XQAVQVIL.js +3 -0
  161. package/dist/{chunk-IJ4HMYBE.js → chunk-XQPPURLQ.js} +2 -2
  162. package/dist/{chunk-OVTS4DKB.js → chunk-YHPG3S2U.js} +2 -2
  163. package/dist/{chunk-WOQBZPIF.js → chunk-YRKP7PM7.js} +2 -2
  164. package/dist/chunk-YT4DVWUV.js +11 -0
  165. package/dist/chunk-YTJHCGYB.js +61 -0
  166. package/dist/chunk-Z35GOVEH.js +2 -0
  167. package/dist/{chunk-OLF4MA5W.js → chunk-Z6RL7XOE.js} +4 -4
  168. package/dist/{chunk-UP3BUZR5.js → chunk-ZAFGY22Q.js} +2 -2
  169. package/dist/{chunk-CO5R3UNA.js → chunk-ZB4C5TTR.js} +2 -2
  170. package/dist/{chunk-ZZXSWSN6.js → chunk-ZNH33XIB.js} +2 -2
  171. package/dist/{chunk-EMNIHCRB.js → chunk-ZQ62NNKN.js} +2 -2
  172. package/dist/cli-context-FJL2JHOE.js +3 -0
  173. package/dist/cli-context-PQNWHMCQ.js +2 -0
  174. package/dist/cli-program-UO7PZD6V.js +7 -0
  175. package/dist/cli.js +1 -1
  176. package/dist/{code-DlqpBDd0.d.ts → code-DfX3xeWy.d.ts} +1 -1
  177. package/dist/code-viewer-KIXEYQNJ.js +12 -0
  178. package/dist/code-viewer-VHLBLIUM.js +11 -0
  179. package/dist/command-descriptors-F5P2V3NW.js +335 -0
  180. package/dist/command-descriptors-YCLATF5I.js +337 -0
  181. package/dist/{config-types-BNoC96J3.d.ts → config-types-D6X5S68_.d.ts} +50 -0
  182. package/dist/{db-D7sauVFH.d.ts → db-BoG_PWYH.d.ts} +2 -2
  183. package/dist/direct-navigation-4XJTXIDT.js +2 -0
  184. package/dist/direct-navigation-J5MVYYAD.js +3 -0
  185. package/dist/{graph-evidence-BIFqyisO.d.ts → graph-evidence-D1jx1Cql.d.ts} +1 -1
  186. package/dist/{health-DJaZXg8I.d.ts → health-DkYBS5BI.d.ts} +1 -1
  187. package/dist/index.d.ts +2 -2
  188. package/dist/index.js +1 -1
  189. package/dist/invocation-command-descriptors-RWV4VAI4.js +2 -0
  190. package/dist/invocation-command-descriptors-U76PN7IY.js +3 -0
  191. package/dist/{scip-cli-B7N3haxa.d.ts → maintenance-types-CdL5eQii.d.ts} +2 -21
  192. package/dist/output-continuation-command-BL25S26S.js +3 -0
  193. package/dist/output-continuation-command-BTETTXEC.js +2 -0
  194. package/dist/postinstall.js +1 -1
  195. package/dist/project-reindex-CRJU3IFG.js +2 -0
  196. package/dist/project-reindex-TQFCOA2O.js +3 -0
  197. package/dist/queries/affected.d.ts +2 -2
  198. package/dist/queries/affected.js +1 -1
  199. package/dist/queries/anchors.d.ts +2 -2
  200. package/dist/queries/anchors.js +1 -1
  201. package/dist/queries/architecture.d.ts +2 -2
  202. package/dist/queries/architecture.js +1 -1
  203. package/dist/queries/bottlenecks.d.ts +2 -2
  204. package/dist/queries/bottlenecks.js +1 -1
  205. package/dist/queries/by-kind.d.ts +2 -2
  206. package/dist/queries/by-kind.js +1 -1
  207. package/dist/queries/call-graph.d.ts +2 -2
  208. package/dist/queries/call-graph.js +1 -1
  209. package/dist/queries/change-surface.d.ts +2 -2
  210. package/dist/queries/change-surface.js +1 -1
  211. package/dist/queries/cleanup-plan.d.ts +2 -2
  212. package/dist/queries/cleanup-plan.js +1 -1
  213. package/dist/queries/co-change.d.ts +2 -2
  214. package/dist/queries/co-change.js +1 -1
  215. package/dist/queries/code.d.ts +3 -3
  216. package/dist/queries/code.js +1 -1
  217. package/dist/queries/complexity-hotspots.d.ts +2 -2
  218. package/dist/queries/complexity-hotspots.js +1 -1
  219. package/dist/queries/complexity.d.ts +2 -2
  220. package/dist/queries/complexity.js +1 -1
  221. package/dist/queries/context.d.ts +2 -2
  222. package/dist/queries/context.js +1 -1
  223. package/dist/queries/convergence.d.ts +2 -2
  224. package/dist/queries/convergence.js +1 -1
  225. package/dist/queries/coupling.d.ts +2 -2
  226. package/dist/queries/coupling.js +1 -1
  227. package/dist/queries/cycles.d.ts +2 -2
  228. package/dist/queries/cycles.js +1 -1
  229. package/dist/queries/dataflow.d.ts +2 -2
  230. package/dist/queries/dataflow.js +1 -1
  231. package/dist/queries/dead.d.ts +2 -2
  232. package/dist/queries/dead.js +1 -1
  233. package/dist/queries/decorative-checkers.d.ts +2 -2
  234. package/dist/queries/decorative-checkers.js +1 -1
  235. package/dist/queries/deep-chains.d.ts +2 -2
  236. package/dist/queries/deep-chains.js +1 -1
  237. package/dist/queries/dependence-slice.d.ts +3 -3
  238. package/dist/queries/dependence-slice.js +1 -1
  239. package/dist/queries/dependency-depth.d.ts +2 -2
  240. package/dist/queries/dependency-depth.js +1 -1
  241. package/dist/queries/deps.d.ts +2 -2
  242. package/dist/queries/deps.js +1 -1
  243. package/dist/queries/diff-impact.d.ts +2 -2
  244. package/dist/queries/diff-impact.js +1 -1
  245. package/dist/queries/doc-drift.d.ts +2 -2
  246. package/dist/queries/doc-drift.js +1 -1
  247. package/dist/queries/drift.d.ts +2 -2
  248. package/dist/queries/drift.js +1 -1
  249. package/dist/queries/duplicate-bodies.d.ts +2 -2
  250. package/dist/queries/duplicate-bodies.js +1 -1
  251. package/dist/queries/entry-map.d.ts +2 -2
  252. package/dist/queries/entry-map.js +1 -1
  253. package/dist/queries/evidence.d.ts +3 -3
  254. package/dist/queries/evidence.js +1 -1
  255. package/dist/queries/extract-candidates.d.ts +2 -2
  256. package/dist/queries/extract-candidates.js +1 -1
  257. package/dist/queries/fan.d.ts +2 -2
  258. package/dist/queries/fan.js +1 -1
  259. package/dist/queries/files.d.ts +2 -2
  260. package/dist/queries/files.js +1 -1
  261. package/dist/queries/health.d.ts +3 -3
  262. package/dist/queries/health.js +1 -1
  263. package/dist/queries/hierarchy.d.ts +2 -2
  264. package/dist/queries/hierarchy.js +1 -1
  265. package/dist/queries/hotspots.d.ts +2 -2
  266. package/dist/queries/hotspots.js +1 -1
  267. package/dist/queries/imports.d.ts +2 -2
  268. package/dist/queries/imports.js +1 -1
  269. package/dist/queries/incomplete-migration.d.ts +2 -2
  270. package/dist/queries/incomplete-migration.js +1 -1
  271. package/dist/queries/index.d.ts +5 -5
  272. package/dist/queries/index.js +1 -1
  273. package/dist/queries/isolated.d.ts +2 -2
  274. package/dist/queries/isolated.js +1 -1
  275. package/dist/queries/locality-candidates.d.ts +2 -2
  276. package/dist/queries/locality-candidates.js +1 -1
  277. package/dist/queries/members.d.ts +2 -2
  278. package/dist/queries/members.js +1 -1
  279. package/dist/queries/methods.d.ts +2 -2
  280. package/dist/queries/methods.js +1 -1
  281. package/dist/queries/not-implemented.d.ts +2 -2
  282. package/dist/queries/not-implemented.js +1 -1
  283. package/dist/queries/outline.d.ts +2 -2
  284. package/dist/queries/outline.js +1 -1
  285. package/dist/queries/passthrough-candidates.d.ts +2 -2
  286. package/dist/queries/passthrough-candidates.js +1 -1
  287. package/dist/queries/plan-context.d.ts +2 -2
  288. package/dist/queries/plan-context.js +1 -1
  289. package/dist/queries/react-component-duplicates.d.ts +2 -2
  290. package/dist/queries/react-component-duplicates.js +1 -1
  291. package/dist/queries/react-hook-candidates.d.ts +2 -2
  292. package/dist/queries/react-hook-candidates.js +1 -1
  293. package/dist/queries/react-large-component-pressure.d.ts +2 -2
  294. package/dist/queries/react-large-component-pressure.js +1 -1
  295. package/dist/queries/recent-duplicates.d.ts +2 -2
  296. package/dist/queries/recent-duplicates.js +1 -1
  297. package/dist/queries/redundant-reexports.d.ts +2 -2
  298. package/dist/queries/redundant-reexports.js +1 -1
  299. package/dist/queries/reference-neighborhood.d.ts +2 -2
  300. package/dist/queries/reference-neighborhood.js +1 -1
  301. package/dist/queries/reference-reachability.d.ts +2 -2
  302. package/dist/queries/reference-reachability.js +1 -1
  303. package/dist/queries/refs.d.ts +2 -2
  304. package/dist/queries/refs.js +1 -1
  305. package/dist/queries/self-audit.d.ts +2 -2
  306. package/dist/queries/self-audit.js +1 -1
  307. package/dist/queries/similar-chains.d.ts +2 -2
  308. package/dist/queries/similar-chains.js +1 -1
  309. package/dist/queries/similar-files.d.ts +2 -2
  310. package/dist/queries/similar-files.js +1 -1
  311. package/dist/queries/similar-signatures.d.ts +2 -2
  312. package/dist/queries/similar-signatures.js +1 -1
  313. package/dist/queries/similar.d.ts +2 -2
  314. package/dist/queries/similar.js +1 -1
  315. package/dist/queries/slice.d.ts +2 -2
  316. package/dist/queries/slice.js +1 -1
  317. package/dist/queries/source-inspection.d.ts +4 -4
  318. package/dist/queries/source-inspection.js +1 -1
  319. package/dist/queries/source-search.d.ts +2 -2
  320. package/dist/queries/source-search.js +1 -1
  321. package/dist/queries/stale-abstractions.d.ts +2 -2
  322. package/dist/queries/stale-abstractions.js +1 -1
  323. package/dist/queries/stats.d.ts +2 -2
  324. package/dist/queries/surface.d.ts +2 -2
  325. package/dist/queries/surface.js +1 -1
  326. package/dist/queries/symbols.d.ts +2 -2
  327. package/dist/queries/symbols.js +1 -1
  328. package/dist/queries/system-map.d.ts +2 -2
  329. package/dist/queries/system-map.js +1 -1
  330. package/dist/queries/system.d.ts +2 -2
  331. package/dist/queries/system.js +1 -1
  332. package/dist/queries/test-quality.d.ts +2 -2
  333. package/dist/queries/test-quality.js +1 -1
  334. package/dist/queries/trace.d.ts +2 -2
  335. package/dist/queries/trace.js +1 -1
  336. package/dist/queries/twin-ab.d.ts +2 -2
  337. package/dist/queries/twin-ab.js +1 -1
  338. package/dist/queries/twin-drift.d.ts +2 -2
  339. package/dist/queries/twin-drift.js +1 -1
  340. package/dist/queries/unused-imports.d.ts +2 -2
  341. package/dist/queries/unused-imports.js +1 -1
  342. package/dist/queries/unused-params.d.ts +2 -2
  343. package/dist/queries/unused-params.js +1 -1
  344. package/dist/queries/value-flow.d.ts +3 -3
  345. package/dist/queries/value-flow.js +1 -1
  346. package/dist/queries/vue-component-duplicates.d.ts +2 -2
  347. package/dist/queries/vue-component-duplicates.js +1 -1
  348. package/dist/queries/vue-composable-candidates.d.ts +2 -2
  349. package/dist/queries/vue-composable-candidates.js +1 -1
  350. package/dist/queries/vue-large-view-pressure.d.ts +2 -2
  351. package/dist/queries/vue-large-view-pressure.js +1 -1
  352. package/dist/queries/wrapper-candidates.d.ts +2 -2
  353. package/dist/queries/wrapper-candidates.js +1 -1
  354. package/dist/reindex-worker.js +2 -2
  355. package/dist/reindex.d.ts +3 -5
  356. package/dist/reindex.js +72 -33
  357. package/dist/runtime.d.ts +23 -4
  358. package/dist/runtime.js +3 -3
  359. package/dist/rust-semantic-session-server.js +1 -1
  360. package/dist/rust-semantic-session-worker.js +1 -1
  361. package/dist/rust-semantic-worker.js +1 -1
  362. package/dist/sentinel-ensure-command-OSWGCFFL.js +3 -0
  363. package/dist/sentinel-ensure-command-SPW7XQLB.js +2 -0
  364. package/dist/sentinel-hook.js +39 -0
  365. package/dist/sentinel-worker.js +16 -0
  366. package/dist/typescript-mailbox-worker.js +1 -1
  367. package/dist/watch-server.js +6 -6
  368. package/docs/COMMAND_REFERENCE.md +5 -3
  369. package/docs/INDEX_GENERATIONS.md +2 -2
  370. package/docs/NPM_RELEASE.md +323 -0
  371. package/docs/schemas/npm-release-state.schema.json +4 -13
  372. package/docs/schemas/project-config.schema.json +159 -0
  373. package/package.json +10 -14
  374. package/skills/codebaseiq/SKILL.md +1 -1
  375. package/skills/concrete-plan/SKILL.md +1 -1
  376. package/ui/view/api.js +450 -0
  377. package/ui/view/app.js +394 -0
  378. package/ui/view/builder.js +323 -0
  379. package/ui/view/file-panel.js +170 -0
  380. package/ui/view/focus.js +379 -0
  381. package/ui/view/index.html +54 -0
  382. package/ui/view/map.js +424 -0
  383. package/ui/view/styles.css +1125 -0
  384. package/dist/chunk-2Q2LW5JW.js +0 -14
  385. package/dist/chunk-2X7V4HS4.js +0 -88
  386. package/dist/chunk-3IER7Q6H.js +0 -12
  387. package/dist/chunk-3JSXXYTZ.js +0 -345
  388. package/dist/chunk-476NR5B7.js +0 -2
  389. package/dist/chunk-5VKBFZZU.js +0 -3
  390. package/dist/chunk-6BQ3DSPK.js +0 -2
  391. package/dist/chunk-6CS3UQTN.js +0 -3
  392. package/dist/chunk-6OAHRI2D.js +0 -6
  393. package/dist/chunk-ADTBPVUZ.js +0 -21
  394. package/dist/chunk-BFFZDZQV.js +0 -2
  395. package/dist/chunk-BMYOV5GP.js +0 -77
  396. package/dist/chunk-C74PPYLA.js +0 -3
  397. package/dist/chunk-CWONGW6P.js +0 -3
  398. package/dist/chunk-DDZ7VHWV.js +0 -20
  399. package/dist/chunk-DR2LURYU.js +0 -3
  400. package/dist/chunk-ECQBG7PW.js +0 -564
  401. package/dist/chunk-EF2R3WNQ.js +0 -2
  402. package/dist/chunk-FM5BPL4V.js +0 -60
  403. package/dist/chunk-G6XFR4ZL.js +0 -4
  404. package/dist/chunk-GTIYTDRE.js +0 -562
  405. package/dist/chunk-HOA5YGOH.js +0 -3
  406. package/dist/chunk-KUW32IRO.js +0 -2
  407. package/dist/chunk-LTA3BRZX.js +0 -2
  408. package/dist/chunk-NAUD7LCA.js +0 -2
  409. package/dist/chunk-NCZUNH3E.js +0 -109
  410. package/dist/chunk-NNJ2KZZG.js +0 -4
  411. package/dist/chunk-NNO6A2PO.js +0 -2
  412. package/dist/chunk-OGTFJ3XD.js +0 -2
  413. package/dist/chunk-Q5ELPRKQ.js +0 -2
  414. package/dist/chunk-Q72QSKXC.js +0 -308
  415. package/dist/chunk-QCN62RTF.js +0 -3
  416. package/dist/chunk-QW7EP6WI.js +0 -21
  417. package/dist/chunk-RU65DDUP.js +0 -215
  418. package/dist/chunk-SELM5MER.js +0 -2
  419. package/dist/chunk-SMRBZ6EC.js +0 -2
  420. package/dist/chunk-SNNWPCN7.js +0 -4
  421. package/dist/chunk-TFZB6XTM.js +0 -239
  422. package/dist/chunk-UCD3H3UZ.js +0 -5
  423. package/dist/chunk-UXM43C7T.js +0 -3
  424. package/dist/chunk-VFY6Y2H6.js +0 -61
  425. package/dist/chunk-WE5RZHZ7.js +0 -5
  426. package/dist/chunk-YMGZZEW4.js +0 -2
  427. package/dist/chunk-YVCIMIOC.js +0 -12
  428. package/dist/chunk-Z54RD7VL.js +0 -3
  429. package/dist/chunk-ZKX2FRS6.js +0 -15
  430. package/dist/cli-context-3SNLDYBM.js +0 -3
  431. package/dist/cli-context-T3B7W6GG.js +0 -2
  432. package/dist/cli-program-YNOXO72B.js +0 -7
  433. package/dist/command-descriptors-6AOUKWW7.js +0 -346
  434. package/dist/command-descriptors-ZFKJSRUP.js +0 -344
  435. package/dist/direct-navigation-DP4LVMRX.js +0 -3
  436. package/dist/direct-navigation-FLUS3BT6.js +0 -2
  437. package/dist/invocation-command-descriptors-QT2JMY5J.js +0 -3
  438. package/dist/invocation-command-descriptors-YN4QJEAX.js +0 -2
  439. package/dist/output-continuation-command-2V2SL4TD.js +0 -2
  440. package/dist/output-continuation-command-65J5IP3O.js +0 -3
  441. package/dist/project-reindex-5JOKXAXT.js +0 -2
  442. package/dist/project-reindex-UQBIKO4M.js +0 -3
  443. package/docs/WINDOWS_SIDECAR_RELEASE.md +0 -424
  444. package/docs/schemas/windows-sidecar-provenance.schema.json +0 -137
  445. package/scripts/build-codebaseiq-windows.mjs +0 -197
  446. package/scripts/codebaseiq-windows-provenance.mjs +0 -364
  447. package/scripts/verify-codebaseiq-windows.mjs +0 -29
@@ -1,3 +0,0 @@
1
- import{G as W,H as $,K as R,T as J,a as S,ea as K,g as m,h as b,i as A,j as G}from"./chunk-NNJ2KZZG.js";import{createRequire as ae}from"module";import{existsSync as ce,readdirSync as le,statSync as ue}from"fs";import u from"path";import{AsyncLocalStorage as se}from"async_hooks";var oe=new se;function j(e,t){let n=C(e);if(!n||n.missing.has(t))return;let r=n.files.get(t);if(r)return r;let i=n.readBaseFile?.(t);return i&&n.files.set(t,i),i}function F(e,t){let n=C(e);if(n)return n.missing.has(t)?"missing":n.paths.includes(t)?"present":"missing"}function q(e,t){return C(e)?.fingerprints.get(t)}function P(e){return C(e)?.paths}function C(e){let t=oe.getStore();if(t)return t.projectRoot===K(e)?t:void 0}var pe=ae(import.meta.url),U=new Set([".cache",".git",".next",".nuxt",".turbo",".nx","build","coverage","dist","node_modules","tmp","vendor"]);function fe(e,t=[]){let n=u.resolve(e),r=t.flatMap(s=>de(n,s));if(r.length>0)return X(n,Q(r));let i=ge(n),o=Q(i),c=he(n,o)?[n,...o]:o,a=c.length>0?c:[n];return X(n,a)}function V(e,t,n=[]){let r;try{r=pe("ts-morph")}catch{return null}let i=u.resolve(e),o=t==="workspace"?fe(i,n):["."],c=new Set;for(let a of o){let s=a==="."?i:u.join(i,a),l=u.join(s,"tsconfig.json"),p=Pe(r.ts,i);if(!p.fileExists(l))return null;let g=r.ts.readConfigFile(l,p.readFile);if(g.error)return null;let f=r.ts.parseJsonConfigFileContent(g.config,p,s);if(f.errors.length>0)return null;for(let h of f.fileNames){let d=u.resolve(h);m(i,d)&&c.add(u.relative(i,d).split(u.sep).join("/"))}}return c}function X(e,t){return[...new Set(t.map(n=>x(e,n)))].sort((n,r)=>n.localeCompare(r))}function ge(e){let t=P(e);if(t)return t.flatMap(i=>{if(i.split("/").some(c=>U.has(c)))return[];let o=u.join(e,...i.split("/"));return Y(e,o)?[u.dirname(o)]:[]});let n=[],r=[e];for(;r.length>0;){let i=r.pop(),o;try{o=le(i,{withFileTypes:!0})}catch{continue}for(let c of o){let a=u.join(i,c.name);if(c.isDirectory()){!U.has(c.name)&&!c.name.startsWith(".")&&r.push(a);continue}c.isFile()&&Y(e,a)&&n.push(u.dirname(a))}}return n}function de(e,t){let n=t.trim();if(!n)return[];let r=u.resolve(e,n);if(!m(e,r))return[];let i=P(e);if(i){let o=x(e,r);if(i.includes(o)&&M(u.basename(r)))return[u.dirname(r)];let c=o==="."?"":`${o}/`;return i.some(a=>a.startsWith(c))?[r]:[]}try{let o=ue(r);if(o.isDirectory())return[r];if(o.isFile()&&M(u.basename(r)))return[u.dirname(r)]}catch{return[]}return[]}function Y(e,t){if(!M(u.basename(t)))return!1;let n=Z(e,t);return n?u.basename(t)==="tsconfig.json"||"include"in n||"files"in n||"references"in n:!1}function M(e){return e.startsWith("tsconfig")&&e.endsWith(".json")}function Q(e){let t=[...new Set(e.map(n=>u.resolve(n)))].sort((n,r)=>n.localeCompare(r));return t.length<=1?t:t.filter(n=>!t.some(r=>r!==n&&Fe(n,r)))}function he(e,t){if(t.length===0||t.some(r=>u.resolve(r)===e))return!1;let n=u.join(e,"tsconfig.json");return ye(e,n)&&me(e,n)}function me(e,t){let r=Z(e,t)?.include;return Array.isArray(r)?r.some(i=>typeof i=="string"&&i.trim()!==""&&!i.startsWith("!")&&(i.includes("/")||i.includes("**")||!u.extname(i))):!1}function Z(e,t){try{let n=JSON.parse(Se(e,t));return n&&typeof n=="object"&&!Array.isArray(n)?n:null}catch{return null}}function ye(e,t){let n=x(e,t),r=F(e,n);return r?r==="present":ce(t)}function Se(e,t){let n=x(e,t);if(P(e)){let i=j(e,n);if(!i)throw Object.assign(new Error(`Snapshot file ${n} is missing.`),{code:"ENOENT"});return i.content.toString("utf8")}return $(t,"TypeScript project config")}function Pe(e,t){let n=P(t);if(!n)return e.sys;let r=u.resolve(t),i=new Set(n),o=je(r,n),c=e,a=s=>{let l=u.resolve(s);return m(r,l)?x(r,l):null};return{useCaseSensitiveFileNames:e.sys.useCaseSensitiveFileNames,fileExists(s){let l=a(s);return l===null?e.sys.fileExists(s):i.has(l)},readFile(s){let l=a(s);return l===null?e.sys.readFile(s):j(r,l)?.content.toString("utf8")},readDirectory(s,l,p,g,f){let h=u.resolve(s);return m(r,h)?c.matchFiles(h,l,p,g,e.sys.useCaseSensitiveFileNames,r,f,d=>o.get(u.resolve(d))??{files:[],directories:[]},d=>d):e.sys.readDirectory(s,l,p,g,f)}}}function je(e,t){let n=new Map,r=new Map,i=o=>{n.has(o)||n.set(o,new Set),r.has(o)||r.set(o,new Set)};i(e);for(let o of t){let c=o.split("/"),a=e;for(let s=0;s<c.length-1;s+=1){let l=c[s];i(a),r.get(a).add(l),a=u.join(a,l),i(a)}n.get(a).add(c.at(-1))}return new Map([...n].map(([o,c])=>[o,{files:[...c].sort(),directories:[...r.get(o)??[]].sort()}]))}function x(e,t){let n=u.relative(e,t);return n?n.split(u.sep).join("/"):"."}function Fe(e,t){let n=u.relative(e,t);return!!n&&!n.startsWith("..")&&!u.isAbsolute(n)}import{execFileSync as Be}from"child_process";import{createHash as te}from"crypto";import{closeSync as Ne,fstatSync as ne,lstatSync as N,openSync as _e,readdirSync as De,readFileSync as He,readlinkSync as Le,realpathSync as I}from"fs";import{isAbsolute as Ae,join as _,relative as Ge,resolve as We,sep as $e}from"path";import{execFileSync as k}from"child_process";import{createHash as be}from"crypto";import{mkdirSync as xe,renameSync as ve,writeFileSync as we}from"fs";import{basename as Ce,dirname as ze,join as Ie}from"path";var Te="git-content-hashes.json",Ee=32*1024*1024,Oe=2e5,z=3e4,B={encoding:"utf8",maxBuffer:64*1024*1024,stdio:["ignore","pipe","ignore"],windowsHide:!0,timeout:z,killSignal:"SIGKILL"};function ee(e){let t,n;try{t=k("git",["-C",e,"ls-files","-s","-z","--","."],{...B,timeout:z}),n=k("git",["-C",e,"status","--porcelain=v1","-z","--untracked-files=all","--no-renames","--","."],{...B,timeout:z})}catch{return null}let r=new Map,i=[];for(let p of t.split("\0")){if(!p)continue;let g=p.indexOf(" "),f=g>0?p.slice(0,g).split(" "):[];if(f.length!==3)continue;let[h,d,w]=f,y=p.slice(g+1);if(h!=="100644"&&h!=="100755"||w!=="0"){r.delete(y);continue}r.set(y,d),Ce(y)===".gitattributes"&&i.push(`${y}:${d}`)}let o=new Set;for(let p of n.split("\0"))p.length>=4&&p[2]===" "&&o.add(p.slice(3));let c=Me(e,i),a=Ie(J(e),Te),s=ke(a,c),l=new Map;return{lookup(p){if(o.has(p))return;let g=r.get(p);if(g)return l.get(g)??s.entries[g]},seed(p,g){if(o.has(p))return;let f=r.get(p);!f||s.entries[f]||l.has(f)||l.set(f,g)},persist(){if(l.size===0)return;let p=new Set(r.values()),g={};for(let[f,h]of Object.entries(s.entries))p.has(f)&&(g[f]=h);for(let[f,h]of l)g[f]=h;if(!(Object.keys(g).length>Oe))try{xe(ze(a),{recursive:!0});let f=`${a}.${process.pid}.tmp`;we(f,JSON.stringify({version:1,salt:c,entries:g})),ve(f,a)}catch{}}}}function Me(e,t){let n="";try{n=k("git",["-C",e,"config","--get-regexp","^core\\.(autocrlf|eol|safecrlf)$"],{...B,timeout:z})}catch{}return be("sha256").update(JSON.stringify([n.trim(),t.sort()])).digest("hex")}function ke(e,t){let n={version:1,salt:t,entries:{}};try{let r=W(e,{maxBytes:Ee,inputKind:"git-content-hash-store"}),i=JSON.parse(r);if(i.version!==1||i.salt!==t||!i.entries||typeof i.entries!="object")return n;let o={};for(let[c,a]of Object.entries(i.entries))/^[0-9a-f]{40,64}$/.test(c)&&a&&typeof a.size=="number"&&Number.isInteger(a.size)&&a.size>=0&&typeof a.hash=="string"&&/^[0-9a-f]{64}$/.test(a.hash)&&(o[c]={size:a.size,hash:a.hash});return{version:1,salt:t,entries:o}}catch{return n}}var T=64*1024*1024,v=class extends Error{constructor(n,r,i,o){super(`${n} ${JSON.stringify(r)} is ${i} bytes; the safety limit is ${o} bytes`);this.inputKind=n;this.inputPath=r;this.observedBytes=i;this.limitBytes=o;this.name="InputTooLargeError"}inputKind;inputPath;observedBytes;limitBytes;code="CODEBASEIQ_INPUT_TOO_LARGE"};function Re(e){return[...new Set((e??[]).map(t=>t.trim()).filter(Boolean))].sort((t,n)=>t.localeCompare(n))}function re(e,t,n={}){let r=b(t),i=I(e),o=We(i,...r.split("/"));if(!m(i,o)||o===i)throw new S(t,"outside-project");let c=I(o);if(!m(i,c)||c===i)throw new S(t,"outside-project");let a=N(c);if(!a.isFile())throw new S(t,"not-a-file");let s={projectRoot:i,relativePath:r,absolutePath:c,size:a.size,mtimeMs:a.mtimeMs,device:a.dev,inode:a.ino},l=n.maxBytes??T;if(ie(l),s.size>l)throw new v(n.inputKind??"project file",s.relativePath,s.size,l);return s}function Je(e,t,n={}){let r=b(t),i=F(e,r);if(i){if(i==="missing")throw Object.assign(new Error(`Snapshot project file ${JSON.stringify(r)} does not exist.`),{code:"ENOENT"});let s=j(e,r);if(!s)throw new S(r,"changed-during-read");let l=n.maxBytes??T;if(ie(l),s.size>l)throw new v(n.inputKind??"project file",r,s.size,l);return Buffer.from(s.content)}let o=re(e,t,n),c=n.maxBytes??T,a=_e(o.absolutePath,"r");try{let s=ne(a);if(!s.isFile()||s.dev!==o.device||s.ino!==o.inode||s.size!==o.size)throw new S(t,"changed-during-read");if(s.size>c)throw new v(n.inputKind??"project file",o.relativePath,s.size,c);let l=He(a),p=ne(a);if(p.dev!==s.dev||p.ino!==s.ino||p.size!==s.size||l.byteLength!==s.size)throw new S(t,"changed-during-read");return l}finally{Ne(a)}}function It(e,t,n={}){return Je(e,t,n).toString("utf8")}function D(e){return typeof e=="object"&&e!==null&&"code"in e&&(e.code==="ENOENT"||e.code==="ENOTDIR")}function Tt(e,t){try{return re(e,t),!0}catch(n){if(D(n))return!1;throw n}}function ie(e){if(!Number.isSafeInteger(e)||e<0)throw new RangeError(`maxBytes must be a non-negative safe integer; received ${e}`)}function Ke(e){return(P(e)??Ve(e)??Ze(e)).filter(t=>t&&!H(t)).sort()}function qe(e,t={}){let n=(t.includePaths??[]).map(b),r=[...new Set([...Ke(e),...n])].filter(s=>!H(s)).filter(s=>!t.language||G(s,t.language,t.markerFiles)).filter(s=>!t.includePath||t.includePath(s)).sort(),i=I(e),o,c=()=>o??=ee(i),a=r.flatMap(s=>{let l=q(e,s);if(l)return[{path:s,size:l.fingerprintSize??l.size,hash:l.sha256}];let p=F(e,s);if(p==="present"){let d=j(e,s);if(d)return[{path:s,size:d.fingerprintSize??d.size,hash:d.sha256}]}let g=p===void 0?c():null,f=g?.lookup(s);if(f)return[{path:s,size:f.size,hash:f.hash}];let h=_(e,s);try{if(N(h).isSymbolicLink()){let E=I(h),O=Ge(i,E);if(O===".."||O.startsWith(`..${$e}`)||Ae(O))throw new Error("external symlink");let L=Le(h);return[{path:s,size:Buffer.byteLength(L),hash:te("sha256").update("symlink\0").update(L).digest("hex")}]}let d=te("sha256"),w=R(h,{inputKind:"project fingerprint input",maxBytes:T},E=>d.update(E)),y=d.digest("hex");return g?.seed(s,{size:w,hash:y}),[{path:s,size:w,hash:y}]}catch(d){return D(d)?[]:[{path:s,size:-1,hash:"unreadable"}]}});return o?.persist(),a}function Et(e,t,n){let r=Ye(t,n),i=[...r.typescriptProjects.filter(c=>Xe(e,c)),...r.clojureConfigPath?[r.clojureConfigPath]:[]],o=r.languages.includes("typescript")?V(e,r.typescriptProjectMode,r.typescriptProjects):null;return{...r,files:qe(e,{includePath:c=>{let a=A(c,t,i);return a==="other"?!1:a!=="source"||!Ue(c)||!o?!0:o.has(c)},includePaths:i})}}function Ue(e){return/\.(?:[cm]?[jt]sx?|vue)$/iu.test(e)}function Xe(e,t){let n;try{n=b(t)}catch{return!1}let r=F(e,n);if(r)return r==="present";try{return N(_(e,n)).isFile()}catch(i){if(D(i))return!1;throw i}}function Ye(e,t){return{version:3,languages:[...e].sort(),pnpmWorkspaces:t.typescriptProjectMode!=="workspace"&&t.pnpmWorkspaces===!0,typescriptProjectMode:t.typescriptProjectMode??"single",typescriptProjects:Re(t.typescriptProjects),clojureConfigPath:Qe(t.clojureConfigPath)}}function Qe(e){return e?.trim()||void 0}function Ve(e){try{return Be("git",["-C",e,"ls-files","-co","--exclude-standard","--","."],{encoding:"utf-8",maxBuffer:50*1024*1024,stdio:["ignore","pipe","ignore"],windowsHide:!0,timeout:3e4,killSignal:"SIGKILL"}).split(`
2
- `).filter(Boolean)}catch{return null}}function Ze(e){let t=[],n=[""];for(;n.length>0;){let r=n.pop(),i=r?_(e,r):e,o;try{o=De(i,{withFileTypes:!0})}catch{continue}for(let c of o){let a=r?`${r}/${c.name}`:c.name;if(c.isDirectory()){H(a)||n.push(a);continue}t.push(a)}}return t}function H(e){let t=e.split("/");return e==="meta.json"||t[0]===".codebaseiq"&&(t[1]==="events"||t[1]==="ledger"||t[1]==="releases"||t[1]==="suppressions")||t.some(n=>et.has(n))||e.endsWith(".db")||e.endsWith(".db-wal")||e.endsWith(".db-shm")||e.endsWith(".scip")}var et=new Set([".git","node_modules",".codebaseiq-cache",".codebaseiq-generations",".stryker-tmp","dist","build","coverage",".next",".nuxt","target"]);export{fe as a,v as b,Re as c,re as d,Je as e,It as f,D as g,Tt as h,Ke as i,qe as j,Et as k,Ye as l};
3
- //# sourceMappingURL=chunk-CWONGW6P.js.map
@@ -1,20 +0,0 @@
1
- import{m as d,r as u,t as p}from"./chunk-UCD3H3UZ.js";import{c as l}from"./chunk-BMYOV5GP.js";import{h as c}from"./chunk-NNJ2KZZG.js";import m from"better-sqlite3";var b=["busy_timeout = 5000","query_only = ON","temp_store = MEMORY","cache_size = -64000","mmap_size = 268435456"],i=class{constructor(t,e){this.connection=t;this.releaseGenerationReader=e}connection;releaseGenerationReader;active=!0;initialize(t){try{for(let e of b)this.connection.pragma(e);t(this.connection)}catch(e){try{this.close()}catch(n){throw new AggregateError([e,n],"SQLite initialization and rollback both failed.",{cause:n})}throw e}}close(){if(!this.active)return;this.active=!1;let t,e;try{this.connection.close()}catch(n){t=n}try{this.releaseGenerationReader()}catch(n){e=n}if(t!==void 0&&e!==void 0)throw new AggregateError([t,e],"SQLite connection close and generation-reader release both failed.");if(t!==void 0)throw t;if(e!==void 0)throw e}},f=["node_modules",".git","dist","build","out","coverage","target",".next",".nuxt",".cache",".turbo",".nbb",".cpcache",".shadow-cljs",".codebaseiq-cache","__pycache__",".venv","venv"],h=class{db;config;generation;pathFilter;connection;connectionOwnership;statementCache=new Map;closed=!1;constructor(t,e){this.config=t,this.pathFilter=e??null;let n=E(t),o=new i(n.db,n.release);try{o.initialize(y),this.generation=n.generation,this.connection=n.db,this.connectionOwnership=o,this.db=g(n.db)}catch(r){try{o.close()}catch(s){throw new AggregateError([r,s],"SQLite construction and rollback both failed.",{cause:s})}throw r}}isIgnored(t){return this.pathFilter?.isIgnored(t)??!1}get localSymbolPredicate(){return`(
2
- EXISTS (
3
- SELECT 1
4
- FROM defn_enclosing_ranges local_der
5
- JOIN documents local_d ON local_der.document_id = local_d.id
6
- WHERE local_der.symbol_id = gs.id
7
- ${this.pathExclusionsFor("local_d").trimStart()}
8
- )
9
- OR EXISTS (
10
- SELECT 1
11
- FROM mentions local_m
12
- JOIN chunks local_c ON local_m.chunk_id = local_c.id
13
- JOIN documents local_d ON local_c.document_id = local_d.id
14
- WHERE local_m.symbol_id = gs.id
15
- AND local_m.role = 1
16
- ${this.pathExclusionsFor("local_d").trimStart()}
17
- )
18
- )`}get pathExclusions(){return this.pathExclusionsFor("d")}get symbolNoise(){return this.symbolNoiseFor("gs")}pathExclusionsFor(...t){return t.flatMap(e=>f.flatMap(n=>[`AND ${e}.relative_path NOT LIKE '${n}/%'`,`AND ${e}.relative_path NOT LIKE '%/${n}/%'`])).join(`
19
- `)}symbolNoiseFor(t){return`AND ${t}.symbol NOT LIKE '%().(%' AND ${t}.symbol NOT LIKE '%typeLiteral%'`}all(t,...e){return this.statement(t).all(...e)}get(t,...e){return this.statement(t).get(...e)}close(){if(this.closed)return;this.closed=!0,this.statementCache.clear();let t,e;try{l(this)}catch(n){t=n}try{this.connectionOwnership.close()}catch(n){e=n}if(t!==void 0&&e!==void 0)throw new AggregateError([t,e],"Database-owned resource and SQLite connection cleanup both failed.");if(t!==void 0)throw t;if(e!==void 0)throw e}statement(t){let e=this.statementCache.get(t);return e||(e=this.connection.prepare(t),this.statementCache.set(t,e)),e}};function g(a){return Object.freeze({prepare(t){let e=a.prepare(t);if(!e.readonly||!e.reader)throw new Error("ScipDatabase.db only permits read-only statements that return rows.");return w(e)}})}function w(a){let t={get:(...e)=>a.get(...e),all:(...e)=>a.all(...e),iterate:(...e)=>a.iterate(...e),pluck(e){return e===void 0?a.pluck():a.pluck(e),t},expand(e){return e===void 0?a.expand():a.expand(e),t},raw(e){return e===void 0?a.raw():a.raw(e),t},bind(...e){return a.bind(...e),t},columns:()=>a.columns(),safeIntegers(e){return e===void 0?a.safeIntegers():a.safeIntegers(e),t}};return Object.freeze(t)}function y(a){if(!a.prepare("SELECT 1 AS present FROM sqlite_master WHERE type = 'table' AND name = 'documents'").get())return;let e=a.prepare("SELECT relative_path FROM documents").iterate();for(let n of e)c(n.relative_path)}function E(a){for(let t=0;t<4;t+=1){let e=d(a),n=e.generation,o;try{o=new m(n.databasePath,{readonly:!0,fileMustExist:!0})}catch(r){throw e.release(),r}if(n.source==="immutable")return{db:o,generation:n,release:e.release};try{let r=u(a);if(n.databaseFileIdentity===p(n.databasePath)&&r.source==="legacy"&&r.identity===n.identity&&r.databaseFileIdentity===n.databaseFileIdentity&&r.metadataRaw===n.metadataRaw)return{db:o,generation:n,release:e.release}}catch(r){throw o.close(),e.release(),r}o.close(),e.release()}throw new Error("SQLite index publication changed repeatedly while opening a coherent generation.")}export{h as a};
20
- //# sourceMappingURL=chunk-DDZ7VHWV.js.map
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env node
2
- import{f as Ee}from"./chunk-3JSXXYTZ.js";import{a as V,b as U,d as v,e as k,f as me}from"./chunk-DO6WQD2T.js";import{H as O,K as z,L as Ie,M as K,N as we,O as be,P as T,Ta as ke,U as W,Ua as We,V as Y,c as J,cb as Ce,d as ye,e as ge,m as Se,o as I,p as ve,q as Re,t as P}from"./chunk-2X7V4HS4.js";import{B as A,c as $,d as pe,e as he,h as F,i as g,q as S,v as fe,w as H,x as B}from"./chunk-SNNWPCN7.js";import{spawn as mt}from"child_process";import{existsSync as yt,rmSync as Te}from"fs";import{dirname as gt,resolve as N}from"path";import{fileURLToPath as St}from"url";import{createHash as Ke,randomUUID as Ae}from"crypto";import{existsSync as Ye,linkSync as Qe,readdirSync as Xe,rmSync as Ze}from"fs";import{basename as et,dirname as tt,join as R}from"path";var L=1,rt=10*6e4,zt=10080*6e4,Q="requests",nt="claims",it="completions",ot="staging";function Pe(e,t,r={}){let n=r.now?.()??new Date,i=pt(r.ttlMs),o=ht(r.idempotencyKey),c=o?`key-${Ke("sha256").update(o).digest("hex")}`:`request-${(r.randomId??Ae)()}`,s={version:L,requestId:c,...o?{idempotencyKey:o}:{},createdAt:n.toISOString(),deadlineAt:new Date(n.getTime()+i).toISOString(),detail:t.trim().slice(0,2048)||"stale index observed by a command"},d=ut(e,c),a=ct(e,d,s,r.onStage);if(a.published)return{disposition:"accepted",request:s,achievedDurability:a.achievedDurability,directorySync:a.directorySync};let l=X(d);if(!l)throw new Error(`Watch refresh request identity ${c} exists but is malformed.`);return{disposition:"duplicate",request:l}}function Kt(e){let t=dt(e),r=new Map,n=lt(R(e,Q),X);for(let d of D(R(e,it))){let a=at(d);if(!a){n++;continue}r.set(a.requestId,a)}let i=new Set;for(let d of D(R(e,nt))){let a=st(d);if(!a){n++;continue}i.add(a.requestId)}let o=t.filter(d=>!r.has(d.requestId)&&!i.has(d.requestId)),c=[...r.values()].filter(d=>d.outcome==="completed").length,s=[...r.values()].filter(d=>d.outcome==="expired").length;return{pending:o.length,claimed:t.filter(d=>!r.has(d.requestId)&&i.has(d.requestId)).length,completed:c,expired:s,invalid:n,...o.length>0?{oldestPendingAt:o.map(d=>d.createdAt).reduce((d,a)=>ft(d,a))}:{}}}function X(e){return Z(e,t=>{let r=t;return r.version===L&&_(r.requestId)&&(r.idempotencyKey===void 0||typeof r.idempotencyKey=="string")&&A(r.createdAt)&&A(r.deadlineAt)&&Date.parse(r.deadlineAt)>=Date.parse(r.createdAt)&&typeof r.detail=="string"&&r.detail.length>0})}function st(e){return Z(e,t=>{let r=t;return r.version===L&&_(r.requestId)&&_(r.claimId)&&A(r.claimedAt)})}function at(e){return Z(e,t=>{let r=t;return r.version===L&&_(r.requestId)&&(r.claimId===void 0||_(r.claimId))&&(r.outcome==="completed"||r.outcome==="expired")&&A(r.completedAt)})}function ct(e,t,r,n){let i=R(e,ot),o=tt(t),c=J(i),s=J(o),d=R(i,`${et(t)}.${process.pid}.${Ae()}.tmp`);try{let a=Y(d,r,{spacing:2,trailingNewline:!0});n?.("after-staged");try{Qe(d,t)}catch(p){if(p.code==="EEXIST")return{published:!1};throw p}let l=ge(c,s,a.directorySync,ye(o));return n?.("after-published"),{published:!0,achievedDurability:l==="synced"?"directory-durable":"file-flushed",directorySync:l}}finally{Ze(d,{force:!0})}}function dt(e){let t=[];for(let r of D(R(e,Q))){let n=X(r);n&&t.push(n)}return t}function lt(e,t){return D(e).filter(r=>!t(r)).length}function D(e,t=".json"){return Ye(e)?Xe(e,{withFileTypes:!0}).filter(r=>r.isFile()&&r.name.endsWith(t)).map(r=>R(e,r.name)).sort():[]}function Z(e,t){try{let r=JSON.parse(S(e,"watch refresh request record"));return t(r)?r:null}catch{return null}}function ut(e,t){return R(e,Q,`${t}.json`)}function pt(e){if(e===void 0)return rt;if(!Number.isFinite(e)||e<=0)throw new Error("Watch refresh request ttlMs must be positive.");return Math.floor(e)}function ht(e){let t=e?.trim();return t?t.slice(0,512):void 0}function _(e){return typeof e=="string"&&/^[a-z0-9][a-z0-9-]{0,127}$/i.test(e)}function ft(e,t){return Date.parse(t)<Date.parse(e)?t:e}var _e=5e3,vt=6e3,Rt=1e3,te=10,It=new Set(["capabilities","check-deps","config-validate","doctor","init","install-skills","reindex","setup","setup-agent","status","suppress","uninstall","watch"]);function fr(e){let t=e.classification;if(t.kind!=="live")return;let{state:r}=t;return r.watcher.state==="idle"&&r.lastError===void 0?r.indexGeneration:void 0}function wt(e,t=process.env){return t.CODEBASEIQ_SKIP_WATCH_SERVICE!=="1"&&!e.startsWith("__")&&!It.has(e)}function mr(e){let t=e.env??process.env;if(t.CODEBASEIQ_SKIP_WATCH_SERVICE==="1")return{kind:"skipped",reason:"environment"};if(!wt(e.commandName,t))return{kind:"skipped",reason:"excluded-command"};if(e.config.watch?.enabled!==!0)return{kind:"skipped",reason:"disabled"};try{let r=bt({projectRoot:e.projectRoot,cacheDir:e.cacheDir,cliVersion:e.cliVersion,gitContext:e.gitContext,runtime:e.runtime});return{kind:r.disposition,state:r.state}}catch(r){return{kind:"failed",message:r instanceof Error?r.message:String(r)}}}function Oe(e,t,r){let n=F(N(e));if(r&&F(r.projectRoot)===n)return{projectRoot:n,worktreeKind:"git",worktreeId:r.worktreeId,cliVersion:t};let i=pe(n);if(i.kind==="error")throw new Error(`Could not establish Git worktree identity for ${n}: ${i.message}`);return i.kind==="non-git"?{projectRoot:n,worktreeKind:"non-git",cliVersion:t}:{projectRoot:n,worktreeKind:"git",worktreeId:i.identity.worktreeId,cliVersion:t}}function yr(e){return G(e,Oe(e.projectRoot,e.cliVersion,e.gitContext))}function G(e,t){let r=e.runtime??oe,n=v(e.cacheDir),i=k(n.statePath),o=ie(n.lockPath);return{identity:t,classification:kt(i,t,r.now(),r.isProcessAlive),lock:o,lockIsLive:o!==null&&r.isProcessAlive(o.pid),paths:n}}function bt(e){let t=e.runtime??oe,r=Oe(e.projectRoot,e.cliVersion,e.gitContext),n=G(e,r),i=re("ensure",n.classification);if(i.kind==="reuse")return M(n.paths.activityPath,t),{disposition:"reused",state:i.state};if(i.kind==="refuse-replace")throw new Error(`codebaseiq watch service pid ${i.state.pid} is still alive but its heartbeat is old. Refusing automatic replacement because civil-clock age alone cannot authorize a process signal.`);if(i.kind==="replace")ne(i.state,e,t),x(n.paths,i.state.pid,t);else if(i.kind==="start"){if(n.lockIsLive){let s=xe(e,r,t,Math.min(e.startupTimeoutMs??1e3,1e3));if(s)return M(n.paths.activityPath,t),{disposition:"reused",state:s};throw new Error(`codebaseiq watch is already running for ${N(e.projectRoot)} (pid ${n.lock?.pid}; lock: ${n.paths.lockPath}) without compatible daemon state. Stop the foreground watcher before starting the service.`)}n.classification.kind==="stale"&&x(n.paths,n.classification.state.pid,t)}else throw new Error(`Unexpected ensure action: ${i.kind}`);if(n=G(e,r),i=re("ensure",n.classification),i.kind==="reuse")return M(n.paths.activityPath,t),{disposition:"reused",state:i.state};if(i.kind==="refuse-replace")throw new Error(`codebaseiq watch service pid ${i.state.pid} remains alive with an old heartbeat; automatic replacement is not authorized.`);let o=e.serverPath??St(new URL("./watch-server.js",import.meta.url));t.spawnServer(o,r.projectRoot,e.cliVersion,e.watchOverrides??{});let c=xe(e,r,t,e.startupTimeoutMs??_e);if(!c)throw new Error(`codebaseiq watch service did not become ready within ${e.startupTimeoutMs??_e}ms.`);return M(n.paths.activityPath,t),{disposition:"started",state:c}}function De(e){let t=e.runtime??oe,r=v(e.cacheDir),n=k(r.statePath),i=n?t.isProcessAlive(n.pid)?{kind:"live",state:n}:{kind:"stale",state:n,reason:"dead-process"}:{kind:"stopped"},o=re("stop",i);if(o.kind==="signal-stop")return ne(o.state,e,t),x(r,o.state.pid,t),{disposition:"stopped",pid:o.state.pid};if(o.kind==="clean-stale")return x(r,o.state.pid,t),{disposition:"stopped",pid:o.state.pid};let c=ie(r.lockPath);return o.kind==="already-stopped"&&c&&t.isProcessAlive(c.pid)?(ne(c,e,t),x(r,c.pid,t),{disposition:"stopped",pid:c.pid}):{disposition:"already-stopped"}}function Le(e,t=Date.now()){W(e,{version:1,at:new Date(t).toISOString()})}function gr(e,t,r=Date.now(),n={}){Pe(v(gt(e)).refreshRequestsPath,t,{...n,now:()=>new Date(r)}),Le(e,r)}function Sr(e,t,r={}){let n=r.pid??process.pid,i=r.isProcessAlive??g,o=()=>{},c=r.readProcessIdentity??B,s=r.now??(()=>new Date),d={...z,wallNow:()=>s().getTime(),isProcessAlive:i,readProcessIdentity:c},a=Ie(e,{kind:"watch",pid:n,processIdentity:c(n),detail:{projectRoot:N(t)},parseLegacy:j,runtime:d});if(a.kind==="contended"){let l=Me(a.observation);return{acquired:!1,lockPath:e,message:Wt(e,t,l),release:o}}return{acquired:!0,lockPath:e,message:"",release:()=>{a.lock.release()}}}function ie(e){return Me(K(e,{parseLegacy:j}))}var j=e=>{let t=Ge(e);return t?{pid:t.pid,...t.processIdentity?{processIdentity:t.processIdentity}:{}}:null};function Me(e){if(e.state==="valid"&&e.record?.kind==="watch"){let t=e.record.detail?.projectRoot;return typeof t!="string"?null:{version:1,pid:e.record.pid,...e.record.processIdentity?{processIdentity:e.record.processIdentity}:{},projectRoot:t,startedAt:e.record.startedAt}}return Ge(e.parsed)}function Ge(e){try{let t=e;if(t.version!==1||typeof t.pid!="number"||!Number.isInteger(t.pid)||t.pid<=0||typeof t.projectRoot!="string"||!me(t.startedAt))return null;let r=t.processIdentity===void 0?null:fe(t.processIdentity);return t.processIdentity!==void 0&&(!r||r.pid!==t.pid)?null:{version:1,pid:t.pid,...r?{processIdentity:r}:{},projectRoot:t.projectRoot,startedAt:t.startedAt}}catch{return null}}function kt(e,t,r,n){if(!e)return{kind:"stopped"};if(e.protocolVersion!==V)return{kind:"incompatible",state:e,reason:"protocol"};if(e.projectRoot!==t.projectRoot)return{kind:"incompatible",state:e,reason:"project"};let i=t.worktreeKind==="git"?t.worktreeId:void 0;if(e.worktreeId!==i)return{kind:"incompatible",state:e,reason:"worktree"};if(e.cliVersion!==t.cliVersion)return{kind:"incompatible",state:e,reason:"cli-version"};if(!n(e.pid))return{kind:"stale",state:e,reason:"dead-process"};let o=Date.parse(e.heartbeatAt);return r-o>U?{kind:"stale",state:e,reason:"old-heartbeat"}:{kind:"live",state:e}}function re(e,t){switch(e){case"status":return{kind:"report",classification:t};case"ensure":switch(t.kind){case"stopped":return{kind:"start"};case"stale":return t.reason==="old-heartbeat"?{kind:"refuse-replace",state:t.state,reason:"old-heartbeat"}:{kind:"start"};case"live":return{kind:"reuse",state:t.state};case"incompatible":return{kind:"replace",state:t.state};default:return ee(t)}case"stop":switch(t.kind){case"stopped":return{kind:"already-stopped"};case"stale":return t.reason==="old-heartbeat"?{kind:"signal-stop",state:t.state}:{kind:"clean-stale",state:t.state};case"live":case"incompatible":return{kind:"signal-stop",state:t.state};default:return ee(t)}default:return ee(e)}}function xe(e,t,r,n){let i=r.monotonicNow??O,o=i()+n;for(;i()<=o;){let c=G(e,t).classification;if(c.kind==="live")return c.state;r.sleep(te)}return null}function ne(e,t,r){let{pid:n}=e;if(!r.isProcessAlive(n))return;qe(e,r),r.signalProcess(n);let i=t.stopTimeoutMs??vt,o=r.monotonicNow??O,c=o()+i;for(;o()<=c;){if(!r.isProcessAlive(n))return;r.sleep(te)}if(!r.forceSignalProcess)throw new Error(`codebaseiq watch service pid ${n} did not stop within ${i}ms and forced termination is unavailable.`);qe(e,r),r.forceSignalProcess(n);let s=t.forceStopTimeoutMs??Rt,d=o()+s;for(;o()<=d;){if(!r.isProcessAlive(n))return;let a=r.readProcessIdentity(n);if(e.processIdentity&&a&&!H(e.processIdentity,a))return;r.sleep(te)}throw new Error(`codebaseiq watch service pid ${n} remained alive ${s}ms after forced termination.`)}function x(e,t,r){if(Te(e.statePath,{force:!0}),Te(e.activityPath,{force:!0}),ie(e.lockPath)?.pid===t&&!r.isProcessAlive(t)){let i={...z,wallNow:r.now,isProcessAlive:r.isProcessAlive,readProcessIdentity:r.readProcessIdentity},o=K(e.lockPath,{parseLegacy:j,runtime:i});we(e.lockPath,o,{parseLegacy:j,runtime:i})}}function Wt(e,t,r){return`error: codebaseiq watch is already running for ${N(t)}${r?` (pid ${r.pid}, started ${r.startedAt}; lock: ${e})`:` (lock: ${e})`}. Stop that watcher before starting another.`}function M(e,t){try{(t.recordActivity??Le)(e,t.now())}catch(r){let n=Ct(r);if(n!=="EPERM"&&n!=="EACCES"&&n!=="EROFS")throw r}}function Ct(e){return e.code}var oe={now:Date.now,monotonicNow:O,isProcessAlive:g,readProcessIdentity:B,spawnServer(e,t,r,n){if(!yt(e))throw new Error(`Watch service helper was not found at ${e}. Run npm run build first.`);mt(process.execPath,[e,t,r,JSON.stringify(n)],{detached:!0,stdio:"ignore",windowsHide:!0,env:{...process.env,CODEBASEIQ_SKIP_WATCH_SERVICE:"1"}}).unref()},signalProcess(e){process.kill(e,"SIGTERM")},forceSignalProcess(e){process.kill(e,"SIGKILL")},sleep(e){let t=new Int32Array(new SharedArrayBuffer(4));Atomics.wait(t,0,0,e)}};function qe(e,t){if(!e.processIdentity)throw new Error(`Refusing to signal codebaseiq watch pid ${e.pid}: its ownership record has no process identity.`);let r=t.readProcessIdentity(e.pid);if(!r)throw new Error(`Refusing to signal codebaseiq watch pid ${e.pid}: its process identity is unavailable.`);if(!H(e.processIdentity,r))throw new Error(`Refusing to signal codebaseiq watch pid ${e.pid}: its process identity does not match the ownership record.`)}function ee(e){throw new Error(`Unhandled watch service value: ${JSON.stringify(e)}`)}import{existsSync as E,lstatSync as b,readdirSync as $e,realpathSync as je,rmSync as w,statSync as Fe}from"fs";import{join as u,resolve as q,sep as He}from"path";var Et=3600*1e3,At=2*1024*1024*1024,ce=300*1e3,Pt="gc-state.json",Tt="gc.lock",_t="projects-gc-state.json",xt="projects-gc.lock",qt=1440*60*1e3;function Ot(e){let t=e.leases.filter(s=>s.managed&&!s.live&&!s.busy),r=Be(e.leases,e.locks),n={};for(let s of e.generations)r.has(s.generationId)||(n[s.generationId]=s.unreferencedAt??e.nowMs);let i=e.generations.filter(s=>!r.has(s.generationId)).sort((s,d)=>n[s.generationId]-n[d.generationId]||s.generationId.localeCompare(d.generationId)),o=new Set;for(let s of i)e.nowMs-n[s.generationId]>=e.policy.generationTtlMs&&o.add(s.generationId);let c=e.generations.filter(s=>!o.has(s.generationId)).reduce((s,d)=>s+d.size,0);for(let s of i){if(c<=e.policy.budgetBytes)break;o.has(s.generationId)||(o.add(s.generationId),c-=s.size)}for(let s of o)delete n[s];return{deleteWorktrees:t,deleteGenerations:e.generations.filter(s=>o.has(s.generationId)),deleteLocks:e.locks.filter(s=>!s.live),deleteTemporaries:e.temporaries.filter(s=>!s.live),protectedGenerationIds:[...r].sort(),unreferencedSince:n}}function Be(e,t){let r=new Set(e.filter(n=>n.managed&&(n.live||n.busy)).flatMap(n=>[n.lease.baseGenerationId,n.lease.activeGenerationId]).filter(n=>n!==void 0));for(let n of t)n.live&&r.add(n.generationId);return r}function qr(e,t,r={}){if(!Re())return{kind:"disabled"};let n=$(e);if(!n)return{kind:"unavailable"};let i=u(I(),"repositories",n.repositoryId),o=(r.now??Date.now)(),c=E(i)?Ve(e,i,n.repositoryId,t,o,r):{kind:"unavailable"};return Mt(e,n.repositoryId,t,o,r),Dt(o,r),c}function Dt(e,t){let r=u(I(),"projects"),n={examined:0,reclaimed:0};if(!E(r))return n;let i=u(r,_t),o=ze(i);if(!t.force&&o!==void 0&&e-o<ce)return n;let c=T(u(r,xt));if(!c)return n;try{for(let s of C(r)){let d=u(r,s),a;try{a=b(d)}catch{continue}if(!(!a.isDirectory()||a.isSymbolicLink())&&(n.examined+=1,!!Lt(d,e)))try{w(d,{recursive:!0,force:!0}),n.reclaimed+=1}catch{}}W(i,{version:1,lastSweepAt:new Date(e).toISOString()},{spacing:2,trailingNewline:!0})}finally{c.release()}return n}function Lt(e,t){let r=u(e,Se),n;try{let c=JSON.parse(S(r,"cache-ownership"));if(typeof c.canonicalProjectRoot!="string"||c.canonicalProjectRoot.length===0)return!1;n=c.canonicalProjectRoot}catch{return!1}if(E(n))return!1;try{if(t-b(e).mtimeMs<qt)return!1}catch{return!1}let i=k(v(e).statePath);if(i&&g(i.pid))return!1;let o=T(u(e,"cache-lifecycle.lock"));return o===null?!1:(o.release(),!0)}function Ve(e,t,r,n,i,o){let c=u(t,"gc-state.json"),s=Je(c);if(!o.force&&s&&i-Date.parse(s.lastSweepAt)<ce)return{kind:"throttled",sweptAt:s.lastSweepAt};let d=be(t,{now:()=>i});if(!d)return{kind:"busy"};try{let a=Ue(e,t,r,s?.unreferencedSince??{}),l=Ot({nowMs:i,...a,policy:{generationTtlMs:o.policy?.generationTtlMs??Et,budgetBytes:o.policy?.budgetBytes??At}}),p=0,f=0;for(let h of l.deleteWorktrees){if(!de(h.lease))continue;if(!E(h.lease.localCacheDir)){w(h.leasePath,{force:!0}),f+=1;continue}if(!jt(h.lease))continue;let ue=T(u(h.lease.localCacheDir,"cache-lifecycle.lock"));if(ue)try{if(se(h.lease,!0))continue;try{De({projectRoot:h.lease.projectRoot,cacheDir:h.lease.localCacheDir,cliVersion:n})}catch{continue}if(se(h.lease,!0))continue;w(h.lease.localCacheDir,{recursive:!0,force:!0}),w(h.leasePath,{force:!0}),f+=1}finally{ue.release()}}for(let h of l.deleteLocks)w(h.path,{force:!0});for(let h of l.deleteTemporaries)w(h.path,{recursive:!0,force:!0});for(let h of l.deleteGenerations)w(h.path,{recursive:!0,force:!0}),p+=h.size;Ee(u(t,"evidence.db"));let y={kind:"swept",sweptAt:new Date(i).toISOString(),deletedWorktrees:f,deletedGenerations:l.deleteGenerations.length,deletedBytes:p,protectedGenerations:l.protectedGenerationIds.length},m={version:1,lastSweepAt:y.sweptAt,unreferencedSince:l.unreferencedSince,lastResult:y};return W(c,m,{spacing:2,trailingNewline:!0}),y}catch(a){return{kind:"failed",error:a instanceof Error?a.message:String(a)}}finally{d.release()}}function Mt(e,t,r,n,i){let o=u(I(),"repositories");if(!E(o))return;let c=u(o,Pt),s=ze(c);if(!i.force&&s!==void 0&&n-s<ce)return;let d=T(u(o,Tt));if(d)try{for(let a of C(o)){if(a===t||!/^[a-f0-9]{24}$/.test(a))continue;let l=u(o,a),p;try{p=b(l)}catch{continue}if(!p.isDirectory()||p.isSymbolicLink())continue;let f=Nt(l)??e;Ve(f,l,a,r,n,i)}W(c,{version:1,lastSweepAt:new Date(n).toISOString()},{spacing:2,trailingNewline:!0})}finally{d.release()}}function Or(e,t,r){let n=ke(e,r.dbPath,t);if(n)return{state:"bypassed",reason:n,localCacheDir:r.cacheDir,generations:0,generationBytes:0,protectedGenerations:0,unreferencedGenerations:0,unreferencedBytes:0,temporaryGenerations:0,sharedEvidence:{exists:!1,bytes:0}};let i=$(e);if(!i)return{state:"unavailable",reason:"Git worktree identity is unavailable",localCacheDir:r.cacheDir,generations:0,generationBytes:0,protectedGenerations:0,unreferencedGenerations:0,unreferencedBytes:0,temporaryGenerations:0,sharedEvidence:{exists:!1,bytes:0}};let o=u(I(),"repositories",i.repositoryId),c=le(u(o,"worktrees",`${i.worktreeId}.json`)),s=Je(u(o,"gc-state.json")),d=Ue(e,o,i.repositoryId,s?.unreferencedSince??{}),a=Be(d.leases,d.locks),l=d.generations.filter(m=>!a.has(m.generationId)),p=d.generations.reduce((m,h)=>m+h.size,0),f=We(e,t),y=0;return f&&(y=Gt(f)),{state:"managed",repositoryId:i.repositoryId,worktreeId:i.worktreeId,localCacheDir:r.cacheDir,...c?{baseGenerationId:c.baseGenerationId,activeGenerationId:c.activeGenerationId,lastAction:c.lastAction,reason:c.lastReason,lastSeenAt:c.lastSeenAt}:{},generations:d.generations.length,generationBytes:p,protectedGenerations:d.generations.filter(m=>a.has(m.generationId)).length,unreferencedGenerations:l.length,unreferencedBytes:l.reduce((m,h)=>m+h.size,0),temporaryGenerations:d.temporaries.length,sharedEvidence:{path:f,exists:y>0,bytes:y},cleanup:s?.lastResult}}function Gt(e){return[e,`${e}-wal`,`${e}-shm`].reduce((t,r)=>{try{return t+Fe(r).size}catch{return t}},0)}function Ue(e,t,r,n){let i=new Set(he(e).map(a=>q(a.path))),o=[];for(let a of C(u(t,"worktrees"))){if(!a.endsWith(".json"))continue;let l=u(t,"worktrees",a),p=le(l);if(!p)continue;let f=q(p.projectRoot);o.push({leasePath:l,lease:p,managed:p.repositoryId===r&&de(p),live:i.has(f)||E(f),busy:se(p)})}let c=[];for(let a of C(u(t,"locks"))){let l=/^([a-f0-9]{64})\.lock$/.exec(a);if(!l)continue;let p=u(t,"locks",a),f=ae(p),y=f!==void 0&&g(f),m=l[1];c.push({generationId:m,path:p,live:y})}let s=[],d=[];for(let a of C(u(t,"generations"))){let l=/^\.tmp-(\d+)-/.exec(a);if(l){let y=u(t,"generations",a),m=Number(l[1]);try{d.push({path:y,size:Ne(y),live:Number.isSafeInteger(m)&&g(m)})}catch{}continue}if(!/^[a-f0-9]{64}$/.test(a))continue;let p=u(t,"generations",a),f;try{f=b(p)}catch{continue}!f.isDirectory()||f.isSymbolicLink()||s.push({generationId:a,path:p,size:Ne(p),...n[a]===void 0?{}:{unreferencedAt:n[a]}})}return{leases:o,generations:s,locks:c,temporaries:d}}function de(e){if(e.ownershipChecksum!==Ce(e)||P(e.localCacheDir)!==P(ve(e.projectRoot)))return!1;let t=P(u(I(),"projects"));return P(e.localCacheDir).startsWith(`${t}${He}`)}function jt(e){if(!de(e))return!1;let t=q(I()),r=q(u(t,"projects")),n=q(e.localCacheDir);try{let i=b(t),o=b(r),c=b(n);if(!i.isDirectory()||i.isSymbolicLink()||!o.isDirectory()||o.isSymbolicLink()||!c.isDirectory()||c.isSymbolicLink())return!1;let s=je(r);return je(n).startsWith(`${s}${He}`)}catch{return!1}}function Nt(e){for(let t of C(u(e,"worktrees"))){if(!t.endsWith(".json"))continue;let r=le(u(e,"worktrees",t));if(r)return r.projectRoot}}function se(e,t=!1){for(let n of t?["index.lock"]:["index.lock","cache-lifecycle.lock"]){let i=ae(u(e.localCacheDir,n));if(i!==void 0&&g(i))return!0}let r=ae(v(e.localCacheDir).lockPath);return r!==void 0&&g(r)}function le(e){try{let t=JSON.parse(S(e,"worktree cache lease"));return t.version!==1||typeof t.repositoryId!="string"||typeof t.worktreeId!="string"||typeof t.projectRoot!="string"||t.treeOid!==void 0&&typeof t.treeOid!="string"||typeof t.localCacheDir!="string"||t.baseGenerationId!==void 0&&typeof t.baseGenerationId!="string"||t.activeGenerationId!==void 0&&typeof t.activeGenerationId!="string"||typeof t.ownershipChecksum!="string"||!/^[a-f0-9]{64}$/.test(t.ownershipChecksum)||typeof t.lastAction!="string"||t.lastReason!==void 0&&typeof t.lastReason!="string"||typeof t.lastSeenAt!="string"?null:t}catch{return null}}function ae(e){try{let t=JSON.parse(S(e,"watch lock record"));return typeof t.pid=="number"&&Number.isSafeInteger(t.pid)&&t.pid>0?t.pid:void 0}catch{return}}function Je(e){try{let t=JSON.parse(S(e,"repository cache GC state"));return t.version!==1||typeof t.lastSweepAt!="string"||!Number.isFinite(Date.parse(t.lastSweepAt))||!t.unreferencedSince||typeof t.unreferencedSince!="object"||!t.lastResult?null:t}catch{return null}}function ze(e){try{let t=JSON.parse(S(e,"global repository cache GC state"));if(t.version!==1||typeof t.lastSweepAt!="string")return;let r=Date.parse(t.lastSweepAt);return Number.isFinite(r)?r:void 0}catch{return}}function C(e){try{return $e(e)}catch{return[]}}function Ne(e){let t=0,r=[e];for(;r.length>0;){let n=r.pop();for(let i of $e(n,{withFileTypes:!0})){let o=u(n,i.name);i.isDirectory()?r.push(o):i.isFile()&&(t+=Fe(o).size)}}return t}export{Kt as a,fr as b,wt as c,mr as d,yr as e,bt as f,De as g,gr as h,Sr as i,qr as j,Or as k};
3
- //# sourceMappingURL=chunk-DR2LURYU.js.map