scip-query 0.20.0 → 0.21.1

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 (594) hide show
  1. package/CHANGELOG.md +81 -0
  2. package/README.md +255 -884
  3. package/dist/augment-vue-worker.js +1 -1
  4. package/dist/by-kind-XXGZGNZ6.js +2 -0
  5. package/dist/call-graph-VGY3R4L3.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-27OUNZW5.js +3 -0
  10. package/dist/chunk-2LJLEM5B.js +2 -0
  11. package/dist/chunk-3KXFB2FM.js +2 -0
  12. package/dist/chunk-3T5U2EQ2.js +2 -0
  13. package/dist/chunk-3TNRNKAT.js +2 -0
  14. package/dist/{chunk-PXY7F6Y4.js → chunk-3XQLJG7V.js} +5 -5
  15. package/dist/chunk-3XZELASU.js +2 -0
  16. package/dist/chunk-3YETOKNO.js +4 -0
  17. package/dist/chunk-47WX6UC4.js +2 -0
  18. package/dist/{chunk-7SQQWSY3.js → chunk-4HQYNZ3P.js} +2 -2
  19. package/dist/chunk-4IASLUOP.js +3 -0
  20. package/dist/{chunk-KMKTIO2G.js → chunk-4KIPF45P.js} +2 -2
  21. package/dist/chunk-4SZJF4GK.js +2 -0
  22. package/dist/chunk-4TOU7HHQ.js +2 -0
  23. package/dist/chunk-4ZCLDH6T.js +11 -0
  24. package/dist/{chunk-DQGFVPUV.js → chunk-527HV7JY.js} +3 -3
  25. package/dist/{chunk-ZTETIQ35.js → chunk-5BJPJUXF.js} +2 -2
  26. package/dist/chunk-5J3A6RBZ.js +16 -0
  27. package/dist/chunk-5KIJMEPC.js +2 -0
  28. package/dist/{chunk-JDOEX4E6.js → chunk-5QM7QT5B.js} +2 -2
  29. package/dist/chunk-5Z2H76VD.js +11 -0
  30. package/dist/chunk-63TFRBMB.js +2 -0
  31. package/dist/chunk-67FK5KGV.js +3 -0
  32. package/dist/chunk-6DO3VBLV.js +2 -0
  33. package/dist/chunk-6LS3IG2I.js +13 -0
  34. package/dist/chunk-6QN4FYQW.js +2 -0
  35. package/dist/chunk-6X4KO5A7.js +11 -0
  36. package/dist/chunk-743MEVFJ.js +8 -0
  37. package/dist/chunk-7G2WIVIX.js +2 -0
  38. package/dist/chunk-7KCZELVM.js +2 -0
  39. package/dist/chunk-7MUHSZGN.js +3 -0
  40. package/dist/chunk-7YZGSLW6.js +3 -0
  41. package/dist/chunk-7Z4GMCHM.js +117 -0
  42. package/dist/{chunk-32LVLCLN.js → chunk-AAOEROT3.js} +3 -3
  43. package/dist/chunk-AFRS7WJU.js +26 -0
  44. package/dist/chunk-ANCHW2R4.js +57 -0
  45. package/dist/{chunk-SXP2MBJH.js → chunk-AQF35NGT.js} +2 -2
  46. package/dist/chunk-ARGPDW2Y.js +6 -0
  47. package/dist/chunk-B3AREUQK.js +16 -0
  48. package/dist/chunk-BCTCADNB.js +2 -0
  49. package/dist/chunk-BM4OTGSY.js +3 -0
  50. package/dist/chunk-BMKTDJI6.js +16 -0
  51. package/dist/chunk-BOJ5SVE2.js +2 -0
  52. package/dist/{chunk-WXZLAAWK.js → chunk-BVR44XXB.js} +2 -2
  53. package/dist/{chunk-RUJURYSV.js → chunk-BYXWXLKM.js} +2 -2
  54. package/dist/chunk-BZCRHP46.js +3 -0
  55. package/dist/chunk-BZYSGZRK.js +2 -0
  56. package/dist/chunk-C52Q3JEQ.js +2 -0
  57. package/dist/chunk-C7WSQA6A.js +21 -0
  58. package/dist/{chunk-BDCC2NPY.js → chunk-CNT4ND5O.js} +2 -2
  59. package/dist/chunk-CQVDALWQ.js +2 -0
  60. package/dist/chunk-CTO3TRX7.js +2 -0
  61. package/dist/chunk-CXT3GZSQ.js +2 -0
  62. package/dist/{chunk-JVYA47YU.js → chunk-DGM2RJ3I.js} +2 -2
  63. package/dist/{chunk-7PIO7NKH.js → chunk-DK6MB565.js} +2 -2
  64. package/dist/chunk-DNPETNXT.js +2 -0
  65. package/dist/chunk-DRENNWRG.js +2 -0
  66. package/dist/chunk-DUDUIT5P.js +2 -0
  67. package/dist/chunk-DXEJ4FLZ.js +21 -0
  68. package/dist/chunk-DXYMTQZ4.js +2 -0
  69. package/dist/chunk-DZA7MQMU.js +6 -0
  70. package/dist/{chunk-ZHXX42OH.js → chunk-DZNWXJN2.js} +4 -4
  71. package/dist/{chunk-CJST5ETY.js → chunk-E6N6YTVM.js} +2 -2
  72. package/dist/chunk-E7CJ6O72.js +2 -0
  73. package/dist/chunk-EJHNTAEE.js +2 -0
  74. package/dist/chunk-EPLE5O5O.js +2 -0
  75. package/dist/chunk-F4FNK44D.js +2 -0
  76. package/dist/chunk-FCGMQETU.js +2 -0
  77. package/dist/chunk-FIO44MVK.js +3 -0
  78. package/dist/chunk-FLSVYEPL.js +2 -0
  79. package/dist/chunk-FOP7HD6H.js +3 -0
  80. package/dist/chunk-FSPENGSU.js +4 -0
  81. package/dist/chunk-FUUDUAKM.js +2 -0
  82. package/dist/chunk-FYCH2EYQ.js +2 -0
  83. package/dist/{chunk-5E4WNAVD.js → chunk-G47MFF47.js} +2 -2
  84. package/dist/chunk-G6VV7ROY.js +2 -0
  85. package/dist/chunk-GBZCVYWA.js +2 -0
  86. package/dist/chunk-GSHTVE56.js +3 -0
  87. package/dist/chunk-GTZFKDP3.js +2 -0
  88. package/dist/{chunk-2HPVVXM5.js → chunk-H2RBDP5S.js} +2 -2
  89. package/dist/chunk-H5EXS3HM.js +2 -0
  90. package/dist/chunk-HR5JYLVV.js +4 -0
  91. package/dist/chunk-HW7FASEL.js +2 -0
  92. package/dist/chunk-HYU4W353.js +10 -0
  93. package/dist/{chunk-FKSELJQF.js → chunk-I2LY3KN7.js} +2 -2
  94. package/dist/chunk-IGBQVEHE.js +2 -0
  95. package/dist/{chunk-3G66UZBH.js → chunk-IH3K5J6K.js} +2 -2
  96. package/dist/chunk-IHGK3SZ7.js +29 -0
  97. package/dist/chunk-IM23CSG5.js +2 -0
  98. package/dist/chunk-IQMGNIGY.js +2 -0
  99. package/dist/chunk-ITF3CWS5.js +2 -0
  100. package/dist/chunk-IZKJQQCQ.js +3 -0
  101. package/dist/chunk-J4HUBIVF.js +5 -0
  102. package/dist/{chunk-AZJQQKDD.js → chunk-JGMD6JGB.js} +2 -2
  103. package/dist/chunk-JLZWYDCZ.js +4 -0
  104. package/dist/chunk-JO6FK3Q5.js +2 -0
  105. package/dist/chunk-JSHDCVUM.js +81 -0
  106. package/dist/chunk-K2DZCH2K.js +2 -0
  107. package/dist/chunk-K63CAPS2.js +23 -0
  108. package/dist/chunk-KBIC6JHJ.js +2 -0
  109. package/dist/chunk-KFFQURUZ.js +2 -0
  110. package/dist/chunk-KFOYCQAJ.js +9 -0
  111. package/dist/chunk-KGKCJFWZ.js +6 -0
  112. package/dist/chunk-KK7GPALL.js +28 -0
  113. package/dist/chunk-L7WRUNKJ.js +2 -0
  114. package/dist/{chunk-W4ETQAXM.js → chunk-LFWB7TOJ.js} +2 -2
  115. package/dist/chunk-LGVTIZPV.js +61 -0
  116. package/dist/chunk-LIWIV26I.js +29 -0
  117. package/dist/chunk-LJMWILX6.js +3 -0
  118. package/dist/{chunk-BPAPWKP6.js → chunk-LXMW6ZAX.js} +8 -8
  119. package/dist/chunk-MFBVUQJZ.js +2 -0
  120. package/dist/{chunk-O64IZ6UX.js → chunk-MLTKGHD2.js} +2 -2
  121. package/dist/chunk-MLTSTKXD.js +5 -0
  122. package/dist/chunk-MR4ZKWO6.js +57 -0
  123. package/dist/{chunk-EN3O7VJA.js → chunk-MRXBLYRE.js} +2 -2
  124. package/dist/chunk-MXNGIEPU.js +3 -0
  125. package/dist/chunk-N4EFQIRX.js +20 -0
  126. package/dist/chunk-ND3BWIVN.js +7 -0
  127. package/dist/chunk-NODZYYGC.js +2 -0
  128. package/dist/chunk-NP4JFCLE.js +133 -0
  129. package/dist/chunk-NQXWWE6S.js +8 -0
  130. package/dist/chunk-NSDPPUDY.js +7 -0
  131. package/dist/chunk-NT4NVEHU.js +18 -0
  132. package/dist/chunk-O2VY47Y5.js +325 -0
  133. package/dist/chunk-O3EX5STE.js +5 -0
  134. package/dist/chunk-O4PZFAXA.js +3 -0
  135. package/dist/chunk-OA2BO4DR.js +2 -0
  136. package/dist/chunk-OFZVFIDF.js +3 -0
  137. package/dist/{chunk-PQCI4SQX.js → chunk-OG5UK2K7.js} +2 -2
  138. package/dist/chunk-OMVNRPST.js +2 -0
  139. package/dist/{chunk-7BAVHKMJ.js → chunk-OU6SDWAM.js} +9 -9
  140. package/dist/{chunk-LY4WC4AD.js → chunk-OY7PCALC.js} +2 -2
  141. package/dist/{chunk-A73XVBCR.js → chunk-P3UFF22M.js} +2 -2
  142. package/dist/chunk-PAZSBPJR.js +3 -0
  143. package/dist/chunk-PJBYDCBQ.js +38 -0
  144. package/dist/chunk-PRLU3I7G.js +79 -0
  145. package/dist/chunk-PU6XDQ2X.js +16 -0
  146. package/dist/{chunk-3CLX5EOX.js → chunk-PWEQ6CZZ.js} +2 -2
  147. package/dist/{chunk-XSRF6Q77.js → chunk-PX6QNUYF.js} +2 -2
  148. package/dist/chunk-Q4MRRB3C.js +3 -0
  149. package/dist/chunk-QGVUPYBC.js +35 -0
  150. package/dist/chunk-QH5Q6M5C.js +2 -0
  151. package/dist/chunk-QLWZUFDT.js +2 -0
  152. package/dist/chunk-QN2AI3D2.js +3 -0
  153. package/dist/{chunk-JAYYFEQY.js → chunk-QZCACNV5.js} +2 -2
  154. package/dist/chunk-RNKRYK6B.js +4 -0
  155. package/dist/chunk-RSUH7G5T.js +29 -0
  156. package/dist/chunk-RZWBTKXO.js +5 -0
  157. package/dist/chunk-SBFDPHKH.js +4 -0
  158. package/dist/{chunk-HX4GQPZP.js → chunk-SGSPCEFC.js} +3 -3
  159. package/dist/chunk-SIGVQT43.js +2 -0
  160. package/dist/chunk-SRIZDEWX.js +4 -0
  161. package/dist/chunk-SV2LEFVM.js +2 -0
  162. package/dist/chunk-T2PBOVDI.js +3 -0
  163. package/dist/chunk-TP2X2C2Y.js +3 -0
  164. package/dist/chunk-U2MNECDU.js +2 -0
  165. package/dist/chunk-U7DOYZDH.js +2 -0
  166. package/dist/chunk-UAQQR55F.js +2 -0
  167. package/dist/chunk-UBETC3Q2.js +2 -0
  168. package/dist/chunk-UEQORB2A.js +2 -0
  169. package/dist/chunk-UM56ZET4.js +38 -0
  170. package/dist/chunk-UXNXOMXJ.js +2 -0
  171. package/dist/{chunk-6SHPK5ZE.js → chunk-V6XENWOF.js} +2 -2
  172. package/dist/chunk-VJAD5WX5.js +2 -0
  173. package/dist/chunk-VRJG7N3I.js +453 -0
  174. package/dist/chunk-W7HN6V4E.js +7 -0
  175. package/dist/chunk-WCIKJ2E3.js +3 -0
  176. package/dist/chunk-WEXQYJY3.js +5 -0
  177. package/dist/chunk-WOPZX5GM.js +2 -0
  178. package/dist/chunk-WRQXLNYE.js +9 -0
  179. package/dist/{chunk-XKWKXZKW.js → chunk-WV6R37XV.js} +2 -2
  180. package/dist/{chunk-N5W4YZMK.js → chunk-WZ7V4BQV.js} +2 -2
  181. package/dist/chunk-WZRNEVYC.js +2 -0
  182. package/dist/chunk-X5MWO4DM.js +7 -0
  183. package/dist/chunk-XDAUYDFT.js +2 -0
  184. package/dist/{chunk-L7AW2QB5.js → chunk-XDOEHEET.js} +2 -2
  185. package/dist/chunk-XDQX6LDT.js +4 -0
  186. package/dist/chunk-XFRHBAIT.js +2 -0
  187. package/dist/chunk-XIPGCT3D.js +5 -0
  188. package/dist/chunk-XKM5D2XS.js +16 -0
  189. package/dist/chunk-XNF5T4T2.js +4 -0
  190. package/dist/chunk-Y2S4YNLH.js +3 -0
  191. package/dist/chunk-YA72ZUKO.js +2 -0
  192. package/dist/chunk-YBWE6J32.js +43 -0
  193. package/dist/chunk-YCXQQ3YB.js +2 -0
  194. package/dist/chunk-YDTK77JP.js +43 -0
  195. package/dist/chunk-YF25RQER.js +4 -0
  196. package/dist/chunk-YKHL4J3G.js +2 -0
  197. package/dist/chunk-YLNCTPOI.js +4 -0
  198. package/dist/chunk-YR7VRWNX.js +2 -0
  199. package/dist/chunk-YT4IQBET.js +3 -0
  200. package/dist/chunk-YUKYB54I.js +1 -0
  201. package/dist/chunk-Z2KGMIL4.js +2 -0
  202. package/dist/chunk-Z2QB75BS.js +3 -0
  203. package/dist/chunk-Z67JOKRE.js +554 -0
  204. package/dist/chunk-ZGDHC5AT.js +2 -0
  205. package/dist/chunk-ZMS4YCY7.js +2 -0
  206. package/dist/chunk-ZNW5A5VX.js +3 -0
  207. package/dist/{chunk-TFRAYKN6.js → chunk-ZP2WUVZ5.js} +2 -2
  208. package/dist/chunk-ZQUNCTEZ.js +2 -0
  209. package/dist/cli-main.js +8 -0
  210. package/dist/cli.js +1 -3
  211. package/dist/code-AXLJBZ6T.js +2 -0
  212. package/dist/code-B17qEMbt.d.ts +121 -0
  213. package/dist/code-result-json-CTZHAQXJ.js +2 -0
  214. package/dist/command-descriptors-6INSCKLW.js +342 -0
  215. package/dist/{config-types-jVM3D7MA.d.ts → config-types-B9B60MiR.d.ts} +199 -23
  216. package/dist/dataflow-AFXY423Q.js +2 -0
  217. package/dist/{db-B5PM5yNk.d.ts → db-BwIVAYNB.d.ts} +1 -1
  218. package/dist/dependence-slice-2G4X6VSJ.js +2 -0
  219. package/dist/deps-LMCAV5DO.js +2 -0
  220. package/dist/direct-navigation-2ONV22Y2.js +3 -0
  221. package/dist/entry-map-ZOC3VXO5.js +2 -0
  222. package/dist/exploration-topology-BG4v30HZ.d.ts +256 -0
  223. package/dist/file-dep-graph-Bqg3t3Px.d.ts +4 -0
  224. package/dist/file-kind-BKCVMNUf.d.ts +10 -0
  225. package/dist/files-WJQJLHMH.js +2 -0
  226. package/dist/graph-evidence-Bjyky2V4.d.ts +126 -0
  227. package/dist/graph-exploration-contract-CqDsnPQL.d.ts +7 -0
  228. package/dist/{health-Do5TKSJI.d.ts → health-CPp2Jf1Z.d.ts} +33 -34
  229. package/dist/hierarchy-ASNIHAX4.js +2 -0
  230. package/dist/imports-JICEKDKK.js +2 -0
  231. package/dist/index.d.ts +4 -31
  232. package/dist/index.js +1 -1
  233. package/dist/members-C5H2K3MS.js +2 -0
  234. package/dist/methods-KZOZHSD4.js +2 -0
  235. package/dist/next-anchor-candidates-BwMczMvX.d.ts +90 -0
  236. package/dist/output-continuation-command-NX3RH3TP.js +3 -0
  237. package/dist/output-pagination-3OFL2MJV.js +19 -0
  238. package/dist/postinstall.js +1 -1
  239. package/dist/project-reindex-A2SXUH2H.js +3 -0
  240. package/dist/queries/affected.d.ts +22 -4
  241. package/dist/queries/affected.js +1 -1
  242. package/dist/queries/anchors.d.ts +123 -0
  243. package/dist/queries/anchors.js +2 -0
  244. package/dist/queries/architecture.d.ts +3 -2
  245. package/dist/queries/architecture.js +1 -1
  246. package/dist/queries/bottlenecks.d.ts +26 -7
  247. package/dist/queries/bottlenecks.js +1 -1
  248. package/dist/queries/by-kind.d.ts +2 -2
  249. package/dist/queries/by-kind.js +1 -1
  250. package/dist/queries/call-graph.d.ts +17 -3
  251. package/dist/queries/call-graph.js +1 -1
  252. package/dist/queries/change-surface.d.ts +2 -2
  253. package/dist/queries/change-surface.js +1 -1
  254. package/dist/queries/cleanup-plan.d.ts +2 -2
  255. package/dist/queries/cleanup-plan.js +1 -1
  256. package/dist/queries/co-change.d.ts +2 -2
  257. package/dist/queries/co-change.js +1 -1
  258. package/dist/queries/code.d.ts +5 -26
  259. package/dist/queries/code.js +1 -1
  260. package/dist/queries/complexity-hotspots.d.ts +2 -2
  261. package/dist/queries/complexity-hotspots.js +1 -1
  262. package/dist/queries/complexity.d.ts +2 -2
  263. package/dist/queries/complexity.js +1 -1
  264. package/dist/queries/context.d.ts +145 -0
  265. package/dist/queries/context.js +2 -0
  266. package/dist/queries/convergence.d.ts +2 -2
  267. package/dist/queries/convergence.js +1 -1
  268. package/dist/queries/coupling.d.ts +8 -3
  269. package/dist/queries/coupling.js +1 -1
  270. package/dist/queries/cycles.d.ts +34 -7
  271. package/dist/queries/cycles.js +1 -1
  272. package/dist/queries/dataflow.d.ts +40 -14
  273. package/dist/queries/dataflow.js +1 -1
  274. package/dist/queries/dead.d.ts +2 -2
  275. package/dist/queries/dead.js +1 -1
  276. package/dist/queries/decorative-checkers.d.ts +3 -3
  277. package/dist/queries/decorative-checkers.js +1 -1
  278. package/dist/queries/deep-chains.d.ts +4 -38
  279. package/dist/queries/deep-chains.js +1 -1
  280. package/dist/queries/dependence-slice.d.ts +47 -0
  281. package/dist/queries/dependence-slice.js +2 -0
  282. package/dist/queries/dependency-depth.d.ts +49 -0
  283. package/dist/queries/dependency-depth.js +2 -0
  284. package/dist/queries/deps.d.ts +4 -2
  285. package/dist/queries/deps.js +1 -1
  286. package/dist/queries/diff-impact.d.ts +3 -3
  287. package/dist/queries/diff-impact.js +1 -1
  288. package/dist/queries/doc-drift.d.ts +4 -4
  289. package/dist/queries/doc-drift.js +1 -1
  290. package/dist/queries/drift.d.ts +2 -2
  291. package/dist/queries/drift.js +1 -1
  292. package/dist/queries/duplicate-bodies.d.ts +2 -2
  293. package/dist/queries/duplicate-bodies.js +1 -1
  294. package/dist/queries/entry-map.d.ts +121 -0
  295. package/dist/queries/entry-map.js +2 -0
  296. package/dist/queries/evidence.d.ts +70 -0
  297. package/dist/queries/evidence.js +2 -0
  298. package/dist/queries/extract-candidates.d.ts +2 -2
  299. package/dist/queries/extract-candidates.js +1 -1
  300. package/dist/queries/fan.d.ts +18 -5
  301. package/dist/queries/fan.js +1 -1
  302. package/dist/queries/files.d.ts +2 -2
  303. package/dist/queries/files.js +1 -1
  304. package/dist/queries/health.d.ts +4 -3
  305. package/dist/queries/health.js +1 -1
  306. package/dist/queries/hierarchy.d.ts +5 -3
  307. package/dist/queries/hierarchy.js +1 -1
  308. package/dist/queries/hotspots.d.ts +11 -5
  309. package/dist/queries/hotspots.js +1 -1
  310. package/dist/queries/imports.d.ts +2 -2
  311. package/dist/queries/imports.js +1 -1
  312. package/dist/queries/incomplete-migration.d.ts +4 -4
  313. package/dist/queries/incomplete-migration.js +1 -1
  314. package/dist/queries/index.d.ts +56 -136
  315. package/dist/queries/index.js +1 -1
  316. package/dist/queries/isolated.d.ts +2 -2
  317. package/dist/queries/isolated.js +1 -1
  318. package/dist/queries/locality-candidates.d.ts +2 -2
  319. package/dist/queries/locality-candidates.js +1 -1
  320. package/dist/queries/members.d.ts +2 -2
  321. package/dist/queries/members.js +1 -1
  322. package/dist/queries/methods.d.ts +2 -2
  323. package/dist/queries/methods.js +1 -1
  324. package/dist/queries/not-implemented.d.ts +3 -3
  325. package/dist/queries/not-implemented.js +1 -1
  326. package/dist/queries/outline.d.ts +2 -2
  327. package/dist/queries/outline.js +1 -1
  328. package/dist/queries/passthrough-candidates.d.ts +5 -9
  329. package/dist/queries/passthrough-candidates.js +1 -1
  330. package/dist/queries/plan-context.d.ts +27 -64
  331. package/dist/queries/plan-context.js +1 -1
  332. package/dist/queries/react-component-duplicates.d.ts +2 -2
  333. package/dist/queries/react-component-duplicates.js +1 -1
  334. package/dist/queries/react-hook-candidates.d.ts +2 -2
  335. package/dist/queries/react-hook-candidates.js +1 -1
  336. package/dist/queries/react-large-component-pressure.d.ts +2 -2
  337. package/dist/queries/react-large-component-pressure.js +1 -1
  338. package/dist/queries/recent-duplicates.d.ts +2 -2
  339. package/dist/queries/recent-duplicates.js +1 -1
  340. package/dist/queries/redundant-reexports.d.ts +2 -2
  341. package/dist/queries/redundant-reexports.js +1 -1
  342. package/dist/queries/reference-neighborhood.d.ts +4 -0
  343. package/dist/queries/reference-neighborhood.js +2 -0
  344. package/dist/queries/reference-reachability.d.ts +48 -0
  345. package/dist/queries/reference-reachability.js +2 -0
  346. package/dist/queries/refs.d.ts +2 -2
  347. package/dist/queries/refs.js +1 -1
  348. package/dist/queries/self-audit.d.ts +2 -2
  349. package/dist/queries/self-audit.js +1 -1
  350. package/dist/queries/similar-chains.d.ts +2 -2
  351. package/dist/queries/similar-chains.js +1 -1
  352. package/dist/queries/similar-files.d.ts +2 -2
  353. package/dist/queries/similar-files.js +1 -1
  354. package/dist/queries/similar-signatures.d.ts +2 -2
  355. package/dist/queries/similar-signatures.js +1 -1
  356. package/dist/queries/similar.d.ts +2 -2
  357. package/dist/queries/similar.js +1 -1
  358. package/dist/queries/slice.d.ts +3 -36
  359. package/dist/queries/slice.js +1 -1
  360. package/dist/queries/source-inspection.d.ts +209 -0
  361. package/dist/queries/source-inspection.js +2 -0
  362. package/dist/queries/source-search.d.ts +13 -0
  363. package/dist/queries/source-search.js +2 -0
  364. package/dist/queries/stale-abstractions.d.ts +2 -2
  365. package/dist/queries/stale-abstractions.js +1 -1
  366. package/dist/queries/stats.d.ts +2 -2
  367. package/dist/queries/surface.d.ts +13 -4
  368. package/dist/queries/surface.js +1 -1
  369. package/dist/queries/symbols.d.ts +2 -2
  370. package/dist/queries/symbols.js +1 -1
  371. package/dist/queries/system-map.d.ts +449 -0
  372. package/dist/queries/system-map.js +2 -0
  373. package/dist/queries/system.d.ts +5 -3
  374. package/dist/queries/system.js +1 -1
  375. package/dist/queries/test-quality.d.ts +2 -2
  376. package/dist/queries/test-quality.js +1 -1
  377. package/dist/queries/trace.d.ts +47 -3
  378. package/dist/queries/trace.js +1 -1
  379. package/dist/queries/twin-ab.d.ts +3 -3
  380. package/dist/queries/twin-ab.js +1 -1
  381. package/dist/queries/twin-drift.d.ts +3 -3
  382. package/dist/queries/twin-drift.js +1 -1
  383. package/dist/queries/unused-imports.d.ts +2 -2
  384. package/dist/queries/unused-imports.js +1 -1
  385. package/dist/queries/unused-params.d.ts +2 -2
  386. package/dist/queries/unused-params.js +1 -1
  387. package/dist/queries/value-flow.d.ts +43 -0
  388. package/dist/queries/value-flow.js +2 -0
  389. package/dist/queries/vue-component-duplicates.d.ts +2 -2
  390. package/dist/queries/vue-component-duplicates.js +1 -1
  391. package/dist/queries/vue-composable-candidates.d.ts +2 -2
  392. package/dist/queries/vue-composable-candidates.js +1 -1
  393. package/dist/queries/vue-large-view-pressure.d.ts +2 -2
  394. package/dist/queries/vue-large-view-pressure.js +1 -1
  395. package/dist/queries/wrapper-candidates.d.ts +2 -2
  396. package/dist/queries/wrapper-candidates.js +1 -1
  397. package/dist/query-service-fastpath.js +6 -0
  398. package/dist/query-service-server.js +5 -0
  399. package/dist/refs-ZOORVRQC.js +2 -0
  400. package/dist/refs-pagination-SRCUOYRD.js +2 -0
  401. package/dist/reindex-worker.js +85 -86
  402. package/dist/reindex.d.ts +64 -42
  403. package/dist/reindex.js +93 -77
  404. package/dist/repository-text-C0Q8VYdN.d.ts +19 -0
  405. package/dist/runtime.d.ts +287 -8
  406. package/dist/runtime.js +4 -3
  407. package/dist/rust-semantic-session-server.js +1 -1
  408. package/dist/rust-semantic-session-worker.js +1 -1
  409. package/dist/rust-semantic-worker.js +1 -1
  410. package/dist/{scip-cli-BnEwZRLJ.d.ts → scip-cli-H-n59izO.d.ts} +33 -2
  411. package/dist/slice-NOTBWA7S.js +2 -0
  412. package/dist/source-search-types-Dwz8KeuW.d.ts +79 -0
  413. package/dist/source-snippet-_wrcgmZc.d.ts +15 -0
  414. package/dist/stats-OOJ74B32.js +2 -0
  415. package/dist/surface-BTBCLKNA.js +2 -0
  416. package/dist/symbol-resolution-SVSMX4RN.js +2 -0
  417. package/dist/system-2EIUFP6B.js +2 -0
  418. package/dist/trace-BB2GHQPG.js +2 -0
  419. package/dist/typescript-mailbox-worker.js +1 -1
  420. package/dist/value-flow-OA7AHSUG.js +2 -0
  421. package/dist/watch-server.js +3 -2
  422. package/docs/AGENT_GUIDE.md +133 -476
  423. package/docs/AI_FAILURE_MODES.md +30 -301
  424. package/docs/API.md +1 -1
  425. package/docs/API_EVOLUTION.md +6 -0
  426. package/docs/CLI_JSON_OUTPUT.md +207 -29
  427. package/docs/COMMAND_REFERENCE.md +255 -154
  428. package/docs/CONFIGURATION_WRITE_SAFETY.md +14 -13
  429. package/docs/DETECTOR_EVIDENCE_CONTRACTS.md +84 -0
  430. package/docs/DETECTOR_GUIDE.md +46 -138
  431. package/docs/DURABILITY.md +7 -1
  432. package/docs/INDEX_GENERATIONS.md +6 -0
  433. package/docs/LOCK_PROTOCOL.md +8 -0
  434. package/docs/REINDEX_METADATA_COMPATIBILITY.md +13 -3
  435. package/docs/SECURITY_MODEL.md +39 -42
  436. package/docs/accuracy-audit-checklist.md +4 -0
  437. package/docs/accuracy-hardening-goal.md +9 -2
  438. package/docs/analyzer-inventory.md +59 -264
  439. package/docs/analyzer-validation-protocol.md +62 -170
  440. package/docs/architecture-coherence-vision.md +18 -12
  441. package/docs/locality-analyzer-design.md +1 -1
  442. package/docs/schemas/cli-json-envelope.schema.json +212 -27
  443. package/docs/schemas/cli-json-export-receipt.schema.json +25 -0
  444. package/docs/schemas/cli-output-page.schema.json +1 -1
  445. package/docs/schemas/observation-receipt.schema.json +164 -0
  446. package/docs/schemas/project-config.schema.json +37 -45
  447. package/docs/schemas/suppression-record.schema.json +1 -34
  448. package/package.json +69 -11
  449. package/skills/concrete-plan/SKILL.md +8 -0
  450. package/skills/concrete-plan/agents/openai.yaml +4 -0
  451. package/skills/scip-explore/SKILL.md +49 -61
  452. package/skills/scip-explore/agents/openai.yaml +3 -3
  453. package/skills/scip-explore/references/delegated-exploration.md +51 -0
  454. package/skills/scip-explore/references/external-evidence.md +72 -0
  455. package/skills/scip-explore/references/information-model.md +51 -0
  456. package/skills/scip-explore/scripts/capture-evidence.mjs +666 -0
  457. package/skills/scip-integrity-audit/SKILL.md +185 -0
  458. package/skills/scip-integrity-audit/agents/openai.yaml +4 -0
  459. package/skills/scip-plan/SKILL.md +67 -49
  460. package/skills/scip-plan/agents/openai.yaml +3 -3
  461. package/skills/scip-query/SKILL.md +98 -77
  462. package/skills/scip-query/agents/openai.yaml +3 -3
  463. package/skills/scip-setup/SKILL.md +10 -102
  464. package/skills/scip-setup/agents/openai.yaml +3 -3
  465. package/dist/chunk-26QA6FAI.js +0 -8
  466. package/dist/chunk-2KAZEZ6M.js +0 -2
  467. package/dist/chunk-3ORVDL3H.js +0 -2
  468. package/dist/chunk-46XGSFNI.js +0 -2
  469. package/dist/chunk-4MAK2HOY.js +0 -6
  470. package/dist/chunk-4TURLRL5.js +0 -16
  471. package/dist/chunk-4UQVNCQE.js +0 -2
  472. package/dist/chunk-55Q3WLZX.js +0 -2
  473. package/dist/chunk-5I5G2QOX.js +0 -3
  474. package/dist/chunk-6LDJQXAH.js +0 -2
  475. package/dist/chunk-6O5TICIZ.js +0 -3
  476. package/dist/chunk-7O5IKBTZ.js +0 -16
  477. package/dist/chunk-7S5E7KWT.js +0 -2
  478. package/dist/chunk-7WPLAODU.js +0 -5
  479. package/dist/chunk-AFHORGLH.js +0 -42
  480. package/dist/chunk-AIE7TFJW.js +0 -9
  481. package/dist/chunk-AQOFWNQJ.js +0 -1
  482. package/dist/chunk-B2PX5I6M.js +0 -2
  483. package/dist/chunk-B75HZHUP.js +0 -2
  484. package/dist/chunk-B7PBSLZN.js +0 -2
  485. package/dist/chunk-BBW6JFHN.js +0 -2
  486. package/dist/chunk-BNXCIFVY.js +0 -2
  487. package/dist/chunk-BS2NMXQZ.js +0 -4
  488. package/dist/chunk-C3KV2II6.js +0 -2
  489. package/dist/chunk-C43RDDP4.js +0 -20
  490. package/dist/chunk-DAFAHMNB.js +0 -42
  491. package/dist/chunk-DQLPXMH6.js +0 -8
  492. package/dist/chunk-EKZTZXHZ.js +0 -117
  493. package/dist/chunk-EW2NTSFA.js +0 -18
  494. package/dist/chunk-F3Z4OUDS.js +0 -8
  495. package/dist/chunk-FJH2NW7J.js +0 -66
  496. package/dist/chunk-FTFP6O3L.js +0 -11
  497. package/dist/chunk-FYLK2DEJ.js +0 -2
  498. package/dist/chunk-GH74ASD6.js +0 -11
  499. package/dist/chunk-GMXWZP2B.js +0 -2
  500. package/dist/chunk-GOUBFH5O.js +0 -3
  501. package/dist/chunk-HLF2TX6R.js +0 -2
  502. package/dist/chunk-HX7M4BDI.js +0 -30
  503. package/dist/chunk-HZ72SESS.js +0 -128
  504. package/dist/chunk-IB2N4FIY.js +0 -10
  505. package/dist/chunk-IZYYAFN5.js +0 -2
  506. package/dist/chunk-JFGGXWQF.js +0 -947
  507. package/dist/chunk-JN4NMBEX.js +0 -8
  508. package/dist/chunk-JW56N3KI.js +0 -4
  509. package/dist/chunk-JZ2OXNWB.js +0 -2
  510. package/dist/chunk-KFZNKUNT.js +0 -2
  511. package/dist/chunk-L5GJNV2T.js +0 -8
  512. package/dist/chunk-L7JDSCDF.js +0 -4
  513. package/dist/chunk-LU47HG23.js +0 -14
  514. package/dist/chunk-LVY7NPF7.js +0 -2
  515. package/dist/chunk-MKCDWWGV.js +0 -4
  516. package/dist/chunk-MNE7YG56.js +0 -2
  517. package/dist/chunk-MRXBEXSY.js +0 -26
  518. package/dist/chunk-MV7OWDUX.js +0 -2
  519. package/dist/chunk-NGEXCJJW.js +0 -11
  520. package/dist/chunk-NIW6JDC5.js +0 -29
  521. package/dist/chunk-PBUQFCNB.js +0 -16
  522. package/dist/chunk-POAVPHH7.js +0 -2
  523. package/dist/chunk-QZ4JVECJ.js +0 -2
  524. package/dist/chunk-RDO52JGY.js +0 -2
  525. package/dist/chunk-RJT3TUUZ.js +0 -2
  526. package/dist/chunk-RVLDN63O.js +0 -4
  527. package/dist/chunk-RXOXSKY3.js +0 -2
  528. package/dist/chunk-S7OYBOCK.js +0 -2
  529. package/dist/chunk-SMNXQT5Z.js +0 -3
  530. package/dist/chunk-SRAFT254.js +0 -2
  531. package/dist/chunk-T7YQSHPQ.js +0 -3
  532. package/dist/chunk-UJCOIXDY.js +0 -2
  533. package/dist/chunk-UJPRPGCO.js +0 -13
  534. package/dist/chunk-WCCFZ7V7.js +0 -113
  535. package/dist/chunk-WUPW3UN3.js +0 -3
  536. package/dist/chunk-X54AGLVX.js +0 -2
  537. package/dist/chunk-Y2MVPNKY.js +0 -5
  538. package/dist/chunk-YKUU5AIC.js +0 -3
  539. package/dist/chunk-YLCJLTPL.js +0 -2
  540. package/dist/chunk-YTQVETEO.js +0 -2
  541. package/dist/chunk-Z4N3MZYA.js +0 -38
  542. package/dist/chunk-ZJOOT3BG.js +0 -2
  543. package/dist/chunk-ZK26BAQL.js +0 -2
  544. package/dist/command-descriptors-DSS46KXI.js +0 -642
  545. package/dist/diff-gate-types-B0QYpDv1.d.ts +0 -11
  546. package/dist/direct-navigation-6YHV6IB5.js +0 -3
  547. package/dist/queries/diff-gate.d.ts +0 -253
  548. package/dist/queries/diff-gate.js +0 -2
  549. package/docs/COMMITTED_RECORD_COMPATIBILITY.md +0 -154
  550. package/docs/analyzer-validation-ledger.md +0 -516
  551. package/docs/schemas/outcome-event-record.schema.json +0 -95
  552. package/skills/_shared/SKILL.md +0 -101
  553. package/skills/_shared/agents/openai.yaml +0 -4
  554. package/skills/_shared/references/agent-contract-catalog.md +0 -105
  555. package/skills/_shared/references/command-catalog.md +0 -118
  556. package/skills/_shared/references/detector-precision-and-diffgate.md +0 -59
  557. package/skills/_shared/references/evidence-and-dead-code.md +0 -25
  558. package/skills/scip-audit/SKILL.md +0 -77
  559. package/skills/scip-audit/agents/openai.yaml +0 -4
  560. package/skills/scip-audit/references/claims.md +0 -98
  561. package/skills/scip-audit/references/cleanup.md +0 -100
  562. package/skills/scip-audit/references/directory.md +0 -222
  563. package/skills/scip-audit/references/frontend.md +0 -130
  564. package/skills/scip-audit/references/integrity.md +0 -154
  565. package/skills/scip-audit/references/maintainability.md +0 -162
  566. package/skills/scip-audit/references/twin-drift.md +0 -104
  567. package/skills/scip-diagnose/SKILL.md +0 -52
  568. package/skills/scip-diagnose/agents/openai.yaml +0 -4
  569. package/skills/scip-diagnose/references/debug.md +0 -117
  570. package/skills/scip-diagnose/references/probe-reachability.md +0 -77
  571. package/skills/scip-diagnose/references/root-cause.md +0 -145
  572. package/skills/scip-diagnose/references/triage.md +0 -119
  573. package/skills/scip-explore/references/diagrams.md +0 -40
  574. package/skills/scip-explore/references/language-playbook.md +0 -49
  575. package/skills/scip-improve/SKILL.md +0 -56
  576. package/skills/scip-improve/agents/openai.yaml +0 -4
  577. package/skills/scip-improve/references/cleanup-batches.md +0 -53
  578. package/skills/scip-improve/references/directory-moves.md +0 -53
  579. package/skills/scip-improve/references/doc-reconcile.md +0 -30
  580. package/skills/scip-improve/references/frontend-extraction.md +0 -39
  581. package/skills/scip-improve/references/maintainability-mechanism.md +0 -43
  582. package/skills/scip-improve/references/twin-drift.md +0 -35
  583. package/skills/scip-plan/references/api-impact.md +0 -19
  584. package/skills/scip-plan/references/conductor.md +0 -41
  585. package/skills/scip-plan/references/high-assurance.md +0 -43
  586. package/skills/scip-plan/references/hyper-optimization.md +0 -50
  587. package/skills/scip-plan/references/tla-model.md +0 -88
  588. package/skills/scip-setup/references/bootstrap-workflow.md +0 -119
  589. package/skills/scip-setup/references/language-verification.md +0 -61
  590. package/skills/scip-setup/references/lifecycle-commands.md +0 -119
  591. package/skills/scip-setup/references/per-repo-triage.md +0 -24
  592. package/skills/scip-verify/SKILL.md +0 -229
  593. package/skills/scip-verify/agents/openai.yaml +0 -4
  594. package/skills/scip-verify/references/calibrate-detectors.md +0 -170
@@ -0,0 +1,19 @@
1
+ type SourceSemanticFreshnessState = 'aligned' | 'stale' | 'unavailable';
2
+ /**
3
+ * Freshness of one source observation. Exact text is read from the current
4
+ * worktree; semantic alignment compares those bytes with the indexed input
5
+ * fingerprint when the file has compiler facts.
6
+ */
7
+ interface SourceObservationFreshness {
8
+ exactText: {
9
+ state: 'current';
10
+ basis: 'working-tree-read';
11
+ sha256: string;
12
+ };
13
+ semantic: {
14
+ state: SourceSemanticFreshnessState;
15
+ basis: 'indexed-input-fingerprint' | 'no-compiler-document' | 'fingerprint-unavailable';
16
+ };
17
+ }
18
+
19
+ export type { SourceObservationFreshness as S, SourceSemanticFreshnessState as a };
package/dist/runtime.d.ts CHANGED
@@ -1,8 +1,19 @@
1
- import { P as ProjectConfig, a as SupportedLanguage, T as TypeScriptProjectMode } from './config-types-jVM3D7MA.js';
2
- export { O as OBSERVATION_RECEIPT_SCHEMA_VERSION, b as ObservationAuthorityKind, c as ObservationReceipt, d as ObservationReceiptComparison, e as compareObservationReceipts, i as isObservationReceipt } from './config-types-jVM3D7MA.js';
1
+ import { P as ProjectConfig, W as WatchConfig, b as WatchResourceBudgetConfig, a as SupportedLanguage, T as TypeScriptProjectMode, D as DerivedObservationStateAuthority, O as ObservationSourceKind, c as ObservationReceipt } from './config-types-B9B60MiR.js';
2
+ export { d as DecodedObservationReceipt, L as LEGACY_OBSERVATION_RECEIPT_SCHEMA_VERSION, e as OBSERVATION_IDENTITY_CANONICALIZATION_VERSION, f as OBSERVATION_IDENTITY_HASH_ALGORITHM, g as OBSERVATION_IDENTITY_SCHEMA_VERSION, h as OBSERVATION_RECEIPT_SCHEMA_VERSION, i as OBSERVATION_STATE_AUTHORITY_POLICY_VERSION, j as ObservationAuthorityKind, k as ObservationComparedFact, l as ObservationComparisonReason, m as ObservationIdentity, n as ObservationReceiptComparison, o as ObservationReceiptV1, p as ObservationReceiptV2, q as ObservationRelationshipJudgment, r as ObservationRelationshipState, s as ObservationSourceFact, t as ObservationStabilityProof, u as ObservationStabilityProofKind, v as ObservationStateAuthority, R as RelevantInputIdentity, w as RelevantInputRelationshipJudgment, x as compareObservationReceipts, y as createObservationIdentity, z as decodeObservationReceipt, A as deriveObservationStateAuthority, B as isObservationReceipt, C as observationReceiptGenerationIdentity, E as observationReceiptStabilityLabel, F as observationReceiptWorkspaceIdentity } from './config-types-B9B60MiR.js';
3
3
  import { watch } from 'chokidar';
4
- import { R as RefreshTrigger, W as WatcherStatus } from './scip-cli-BnEwZRLJ.js';
5
- export { g as getScipVersion, i as isScipInstalled, p as printScipInstallInstructions } from './scip-cli-BnEwZRLJ.js';
4
+ import { R as RefreshTrigger, P as ProjectInputChangeJournal, W as WatcherStatus } from './scip-cli-H-n59izO.js';
5
+ export { g as getScipVersion, i as isScipInstalled, p as printScipInstallInstructions } from './scip-cli-H-n59izO.js';
6
+
7
+ /**
8
+ * One operating-system process instance. A PID alone names a reusable slot;
9
+ * the start token distinguishes successive processes that occupy that slot.
10
+ */
11
+ interface ProcessIdentity {
12
+ version: 1;
13
+ pid: number;
14
+ platform: NodeJS.Platform;
15
+ startToken: string;
16
+ }
6
17
 
7
18
  declare function resolveIndexStoragePaths(projectRoot: string, config?: ProjectConfig): {
8
19
  cacheDir: string;
@@ -11,6 +22,10 @@ declare function resolveIndexStoragePaths(projectRoot: string, config?: ProjectC
11
22
  metaPath: string;
12
23
  };
13
24
 
25
+ type ResolvedWatchConfig = Omit<Required<WatchConfig>, 'resourceBudget'> & {
26
+ resourceBudget: Required<WatchResourceBudgetConfig>;
27
+ };
28
+
14
29
  /**
15
30
  * Load project config from .scipquery.json in the project root.
16
31
  * Returns defaults for anything not specified.
@@ -22,20 +37,55 @@ declare function loadProjectConfig(projectRoot: string): ProjectConfig;
22
37
  */
23
38
  declare function initProjectConfig(projectRoot: string, languages: string[]): string;
24
39
 
40
+ interface GitReader {
41
+ run(projectRoot: string, args: readonly string[]): string | undefined;
42
+ runResult(projectRoot: string, args: readonly string[]): GitCommandResult;
43
+ }
44
+ type GitCommandResult = {
45
+ kind: 'success';
46
+ output: string;
47
+ } | {
48
+ kind: 'not-repository';
49
+ } | {
50
+ kind: 'error';
51
+ message: string;
52
+ };
53
+
54
+ type ReindexActivityBudgetDecision = {
55
+ state: 'allowed';
56
+ rebuilt: number;
57
+ estimatedWriteBytes: number;
58
+ } | {
59
+ state: 'paused';
60
+ reason: 'rebuild-count' | 'estimated-write-bytes' | 'activity-evidence';
61
+ until: number;
62
+ rebuilt: number;
63
+ estimatedWriteBytes: number;
64
+ detail: string;
65
+ };
66
+
25
67
  interface WatcherOptions {
26
68
  projectRoot: string;
27
69
  config: ProjectConfig;
28
70
  languages?: SupportedLanguage[];
29
71
  reindexRunner?: ReindexRunner;
30
72
  subscriptionFactory?: WatchSubscriptionFactory;
73
+ budgetInspector?: WatchBudgetInspector;
74
+ gitReader?: GitReader;
75
+ outputDb?: string;
31
76
  clock?: WatchClock;
32
77
  stopTimeoutMs?: number;
33
78
  onStatus?: (status: WatcherStatus) => void;
34
- onReindexComplete?: (durationMs: number, trigger: RefreshTrigger) => boolean | void;
79
+ onReindexComplete?: (durationMs: number, trigger: RefreshTrigger, context?: ReindexCompletionContext) => boolean | void;
35
80
  onReindexError?: (error: Error, trigger: RefreshTrigger) => void;
36
81
  onRefreshSuppressed?: (trigger: RefreshTrigger) => void;
37
82
  onError?: (error: Error) => void;
38
83
  }
84
+ interface ReindexCompletionContext {
85
+ /** True when a filesystem or refresh event arrived after this run began. */
86
+ pendingChanges: boolean;
87
+ }
88
+ type WatchBudgetInspector = (outputDb: string, config: ResolvedWatchConfig['resourceBudget'], now: Date) => ReindexActivityBudgetDecision;
39
89
  interface ReindexRunRequest {
40
90
  projectRoot: string;
41
91
  config: ProjectConfig;
@@ -46,6 +96,10 @@ interface ReindexRunRequest {
46
96
  clojureConfigPath?: string;
47
97
  indexerConcurrency?: number;
48
98
  trigger: RefreshTrigger;
99
+ /** Exact watcher changes since the immutable generation named by the journal. */
100
+ changeJournal?: ProjectInputChangeJournal;
101
+ /** When false, skip full language indexers and keep the previous shard. Default true. */
102
+ allowExpensiveRebuild?: boolean;
49
103
  }
50
104
  interface ReindexWorkerLaunch {
51
105
  workerPath: string;
@@ -109,7 +163,7 @@ interface WatchClock {
109
163
  * Design:
110
164
  * - Debounce: waits for a configurable quiet period after the last file change
111
165
  * - Single-flight: only one reindex runs at a time, never queued
112
- * - Dirty flag: changes during reindex schedule ONE follow-up
166
+ * - Dirty flag: changes during reindex cancel stale work and schedule ONE follow-up
113
167
  * - Cooldown: minimum interval between reindex completions
114
168
  * - Atomic publish: the reindexer writes temp artifacts, then promotes them
115
169
  */
@@ -117,6 +171,7 @@ declare class Watcher {
117
171
  private projectRoot;
118
172
  private config;
119
173
  private watchConfig;
174
+ private outputDb;
120
175
  private languages?;
121
176
  private pnpmWorkspaces;
122
177
  private typescriptProjectMode?;
@@ -130,6 +185,7 @@ declare class Watcher {
130
185
  private onError;
131
186
  private reindexRunner;
132
187
  private subscriptionFactory;
188
+ private budgetInspector;
133
189
  private clock;
134
190
  private activeOperation;
135
191
  private stopPromise;
@@ -137,15 +193,24 @@ declare class Watcher {
137
193
  private status;
138
194
  private debounceTimer;
139
195
  private cooldownTimer;
196
+ private budgetTimer;
140
197
  private dirty;
141
198
  private changedFiles;
142
199
  private pendingTrigger;
200
+ private pendingChanges;
201
+ private pendingChangesComplete;
202
+ private pendingChangesIncompleteReason;
143
203
  private reindexInFlight;
144
204
  private lastReindexEnd;
145
205
  private fsWatchers;
146
206
  private sourcePollingFallbackStarted;
147
207
  private gitPollTimer;
148
208
  private lastGitState;
209
+ /** When unset, idle Git polls read HEAD/index from the filesystem instead of spawning git. */
210
+ private preferFilesystemGitState;
211
+ private watchGitLayout;
212
+ /** Project-relative cache directory; ignored so reindex artifacts do not wake the watcher. */
213
+ private localCacheWatchPath;
149
214
  private gitignoreFilter;
150
215
  private extraIgnore;
151
216
  private stopped;
@@ -167,16 +232,25 @@ declare class Watcher {
167
232
  private triggerReindex;
168
233
  private finishStop;
169
234
  private wallNow;
235
+ private inspectBudget;
170
236
  private reindexRequest;
171
237
  private setStatus;
238
+ private recordPendingChange;
239
+ private markPendingChangesIncomplete;
240
+ private consumePendingChangeJournal;
241
+ private restorePendingChangeJournal;
242
+ private resetPendingChanges;
172
243
  private clearDebounceTimer;
173
244
  private clearCooldownTimer;
245
+ private clearBudgetTimer;
174
246
  private startGitStatePolling;
175
247
  private pollGitState;
176
248
  private readGitState;
249
+ private readFilesystemGitState;
250
+ private readGitStateFromGit;
177
251
  private clearGitPollTimer;
178
252
  }
179
- declare function resolveReindexWorkerLaunch(request: ReindexRunRequest): ReindexWorkerLaunch;
253
+ declare function resolveReindexWorkerLaunch(request: ReindexRunRequest, resolveParentIdentity?: (pid: number) => ProcessIdentity | null): ReindexWorkerLaunch;
180
254
  declare function createReindexRunner(options?: ReindexRunnerOptions): ReindexRunner;
181
255
 
182
256
  interface InstallSkillsResult {
@@ -193,15 +267,215 @@ interface InstallSkillsResult {
193
267
  */
194
268
  declare function installSkills(opts?: {
195
269
  quiet?: boolean;
270
+ homeDir?: string;
196
271
  }): InstallSkillsResult;
197
272
 
273
+ /**
274
+ * What one parsed command invocation does to or learns about the world.
275
+ *
276
+ * A command name is not sufficient: one command can preview in one mode and
277
+ * mutate in another. The selected role follows the invocation's observable
278
+ * effect, not the subsystem that implements it.
279
+ */
280
+ declare const COMMAND_OPERATION_ROLES: readonly ["repository-observation", "repository-preview", "mutation", "composite", "environment-observation", "tool-information"];
281
+ type CommandOperationRole = (typeof COMMAND_OPERATION_ROLES)[number];
282
+ type CommandOperationRuleCondition = {
283
+ kind: 'argument';
284
+ index: number;
285
+ equals: string | number | boolean;
286
+ } | {
287
+ kind: 'option';
288
+ name: string;
289
+ equals: string | number | boolean;
290
+ } | {
291
+ kind: 'option-present';
292
+ name: string;
293
+ };
294
+ interface CommandOperationRule {
295
+ when: CommandOperationRuleCondition;
296
+ role: CommandOperationRole;
297
+ }
298
+ /**
299
+ * Declarative rather than executable so descriptors, docs, validation, and
300
+ * runtime selection all inspect one finite contract.
301
+ */
302
+ interface CommandOperationSelector {
303
+ defaultRole: CommandOperationRole;
304
+ rules?: readonly CommandOperationRule[];
305
+ }
306
+ interface CommandOperationInvocation {
307
+ args: readonly unknown[];
308
+ options: Readonly<Record<string, unknown>>;
309
+ }
310
+ declare function commandOperation(defaultRole: CommandOperationRole, rules?: readonly CommandOperationRule[]): CommandOperationSelector;
311
+ declare function resolveCommandOperationRole(selector: CommandOperationSelector, invocation: CommandOperationInvocation): CommandOperationRole;
312
+ declare function commandOperationRoles(selector: CommandOperationSelector): CommandOperationRole[];
313
+ declare function isCommandOperationRole(value: unknown): value is CommandOperationRole;
314
+ declare function operationObservesRepository(role: CommandOperationRole): boolean;
315
+
316
+ declare const CLAIM_QUALIFICATION_SCHEMA_VERSION: 1;
317
+ declare const CLAIM_ACTION_POLICY_VERSION: 1;
318
+ declare const CLAIM_ORIGINS: readonly ["compiler-graph", "semantic-analysis", "repository-source", "change-history", "runtime-measurement", "heuristic", "mixed", "unknown"];
319
+ type ClaimOrigin = (typeof CLAIM_ORIGINS)[number];
320
+ declare const CLAIM_COVERAGE_STATES: readonly ["complete", "partial", "unknown"];
321
+ type ClaimCoverageState = (typeof CLAIM_COVERAGE_STATES)[number];
322
+ declare const PRODUCER_VALIDATION_STATUSES: readonly ["validated", "failed", "not-evaluated", "not-applicable"];
323
+ type ProducerValidationStatus = (typeof PRODUCER_VALIDATION_STATUSES)[number];
324
+ declare const CLAIM_ACTION_PERMISSIONS: readonly ["observe", "advise", "require-adjudication", "block", "not-established"];
325
+ type ClaimActionPermission = (typeof CLAIM_ACTION_PERMISSIONS)[number];
326
+ /**
327
+ * A producer validation reports how one evidence-producing method performed
328
+ * against a named, versioned corpus. A successful status without that
329
+ * referent would be an assertion about the producer rather than checkable
330
+ * validation evidence.
331
+ */
332
+ type ProducerValidation = {
333
+ status: 'validated' | 'failed';
334
+ certification: {
335
+ id: string;
336
+ version: number;
337
+ corpus: string;
338
+ };
339
+ } | {
340
+ status: 'not-evaluated' | 'not-applicable';
341
+ certification?: never;
342
+ };
343
+ /**
344
+ * One result family is a stable set of result values that share an evidence
345
+ * origin. A fixed binding applies one origin to the selected family. A
346
+ * result-field binding maps the producer's existing per-row provenance field
347
+ * into the public origin vocabulary without copying or flattening the rows.
348
+ */
349
+ type ClaimFamilyOriginBinding = {
350
+ kind: 'fixed';
351
+ origin: Exclude<ClaimOrigin, 'mixed'>;
352
+ } | {
353
+ kind: 'result-field';
354
+ field: string;
355
+ values: Readonly<Record<string, Exclude<ClaimOrigin, 'mixed'>>>;
356
+ };
357
+ interface ClaimFamilyContract {
358
+ id: string;
359
+ /** Repository-relative JSON path rooted at the command-owned result. */
360
+ selector: string;
361
+ origin: ClaimFamilyOriginBinding;
362
+ }
363
+ /**
364
+ * The descriptor-owned facts about a command's evidence producer. These facts
365
+ * identify production and input sources; they do not grant state authority or
366
+ * repository-policy permission.
367
+ */
368
+ interface CommandClaimContract {
369
+ origin: ClaimOrigin;
370
+ observedSources: readonly ObservationSourceKind[];
371
+ producerValidation: ProducerValidation;
372
+ families?: readonly ClaimFamilyContract[];
373
+ }
374
+ interface ClaimCoverage {
375
+ state: ClaimCoverageState;
376
+ returned: number;
377
+ totalKnown: boolean;
378
+ total?: number;
379
+ omitted?: number;
380
+ }
381
+ interface RepositoryPolicyAction {
382
+ policyId: string;
383
+ policyVersion: typeof CLAIM_ACTION_POLICY_VERSION;
384
+ permission: ClaimActionPermission;
385
+ reasons: readonly string[];
386
+ }
387
+ /**
388
+ * A claim qualification is a set of independent facts that determine what one
389
+ * command result can support. Its real referents are the result's production
390
+ * method, enumeration extent, producer validation, observed repository state,
391
+ * and policy-permitted response. Keeping them independent is what prevents a
392
+ * strong fact in one dimension from silently strengthening another.
393
+ */
394
+ interface ClaimQualificationV1 {
395
+ schemaVersion: typeof CLAIM_QUALIFICATION_SCHEMA_VERSION;
396
+ origin: ClaimOrigin;
397
+ coverage: ClaimCoverage;
398
+ producerValidation: ProducerValidation;
399
+ stateAuthority: DerivedObservationStateAuthority;
400
+ repositoryPolicy: RepositoryPolicyAction;
401
+ families?: readonly ClaimFamilyContract[];
402
+ }
403
+ interface ClaimCoverageInput {
404
+ complete: boolean | null;
405
+ totalKnown: boolean;
406
+ returned: number;
407
+ total?: number;
408
+ omitted?: number;
409
+ }
410
+ interface DeriveClaimQualificationInput {
411
+ contract: CommandClaimContract;
412
+ receipt: ObservationReceipt;
413
+ coverage?: ClaimCoverageInput;
414
+ repositoryPolicy?: RepositoryPolicyAction;
415
+ }
416
+ declare const DEFAULT_REPOSITORY_POLICY_ACTION: RepositoryPolicyAction;
417
+ declare function deriveClaimQualification(input: DeriveClaimQualificationInput): ClaimQualificationV1;
418
+ declare function deriveClaimCoverage(coverage: ClaimCoverageInput | undefined): ClaimCoverage;
419
+ interface ClaimQualificationRequirements {
420
+ origins?: readonly ClaimOrigin[];
421
+ coverage?: readonly ClaimCoverageState[];
422
+ producerValidation?: readonly ProducerValidationStatus[];
423
+ stateAuthority?: readonly DerivedObservationStateAuthority['authority'][];
424
+ actionPermission?: readonly ClaimActionPermission[];
425
+ }
426
+ type ClaimQualificationPredicate = 'origin' | 'coverage' | 'producer-validation' | 'state-authority' | 'action-permission';
427
+ interface ClaimQualificationPredicateResult {
428
+ predicate: ClaimQualificationPredicate;
429
+ satisfied: boolean;
430
+ required: readonly string[];
431
+ actual: string;
432
+ }
433
+ interface ClaimQualificationEvaluation {
434
+ satisfied: boolean;
435
+ predicates: readonly ClaimQualificationPredicateResult[];
436
+ }
437
+ /**
438
+ * Evaluate only predicates named by the consumer. This is the consumer-side
439
+ * contract: an omitted requirement grants nothing and a satisfied predicate
440
+ * cannot compensate for an unsatisfied one.
441
+ */
442
+ declare function evaluateClaimQualification(qualification: ClaimQualificationV1, requirements: ClaimQualificationRequirements): ClaimQualificationEvaluation;
443
+ declare function isClaimQualificationV1(value: unknown): value is ClaimQualificationV1;
444
+
198
445
  declare const CLI_JSON_ENVELOPE_KIND: "scip-query-result";
199
446
  declare const LEGACY_CLI_JSON_ENVELOPE_SCHEMA_VERSION: 0;
200
447
  declare const CURRENT_CLI_JSON_ENVELOPE_SCHEMA_VERSION: 1;
448
+ declare const CLI_EVIDENCE_CONTEXT_SCHEMA_VERSION: 1;
449
+ declare const CLI_ANALYSIS_MANIFEST_SCHEMA_VERSION: 1;
201
450
  interface CliJsonProducer {
202
451
  name: 'scip-query';
203
452
  version: string;
204
453
  }
454
+ /**
455
+ * How one CLI result was produced and how much of the possible answer the
456
+ * invocation examined. These fields remain separate from the receipt because
457
+ * changing an analysis budget does not change which repository state was
458
+ * observed.
459
+ */
460
+ interface CliAnalysisManifestV1 {
461
+ schemaVersion: typeof CLI_ANALYSIS_MANIFEST_SCHEMA_VERSION;
462
+ evidence?: 'graph-fact' | 'heuristic' | 'mixed';
463
+ analysisBudget?: unknown;
464
+ coverage?: unknown;
465
+ claimQualification?: ClaimQualificationV1;
466
+ }
467
+ /**
468
+ * The self-contained evidence carried by one repository-observation result.
469
+ * A version-1 receipt supplies local provenance; it does not by itself claim
470
+ * the fixed-snapshot and content relationships required for final completion.
471
+ */
472
+ interface CliEvidenceContextV1 {
473
+ schemaVersion: typeof CLI_EVIDENCE_CONTEXT_SCHEMA_VERSION;
474
+ /** Optional only so evidence contexts written before operation roles remain readable. */
475
+ operationRole?: CommandOperationRole;
476
+ receipt: ObservationReceipt;
477
+ analysisManifest: CliAnalysisManifestV1;
478
+ }
205
479
  /**
206
480
  * One public machine-readable CLI response. The envelope is the stable
207
481
  * transport contract; `result` remains the command-owned payload whose schema
@@ -212,14 +486,19 @@ interface CliJsonEnvelopeV1<Result = unknown> {
212
486
  schemaVersion: typeof CURRENT_CLI_JSON_ENVELOPE_SCHEMA_VERSION;
213
487
  producer: CliJsonProducer;
214
488
  command: string;
489
+ /** Optional only for additive compatibility with envelopes written before this field existed. */
490
+ operationRole?: CommandOperationRole;
215
491
  resultSchemaVersion: number;
216
492
  evidence?: 'graph-fact' | 'heuristic' | 'mixed';
217
493
  analysisBudget?: unknown;
218
494
  args: readonly unknown[];
219
495
  options: Readonly<Record<string, unknown>>;
220
496
  result: Result;
497
+ /** Present only when `result` is the bounded command-owned agent projection. */
498
+ resultProjection?: 'agent';
221
499
  coverage?: unknown;
222
500
  agentResult?: unknown;
501
+ evidenceContext?: CliEvidenceContextV1;
223
502
  }
224
503
  interface LegacyCliJsonEnvelope<Result = unknown> {
225
504
  command: string;
@@ -272,4 +551,4 @@ declare function requireCompatibleCliJsonEnvelope<Result = unknown>(input: unkno
272
551
  */
273
552
  declare function supportedCliResultSchemaVersions(command: string): readonly number[];
274
553
 
275
- export { CLI_JSON_ENVELOPE_KIND, CURRENT_CLI_JSON_ENVELOPE_SCHEMA_VERSION, type CliJsonEnvelopeV1, type CliJsonProducer, type CompatibleCliJsonEnvelope, type DecodedCliJsonEnvelope, LEGACY_CLI_JSON_ENVELOPE_SCHEMA_VERSION, type LegacyCliJsonEnvelope, type ReindexCancellationResult, type ReindexDiagnostics, type ReindexOperation, type ReindexRunRequest, type ReindexRunner, type ReindexRunnerOptions, type ReindexWorkerLaunch, type WatchClock, type WatchSubscription, type WatchSubscriptionFactory, type WatchSubscriptionOptions, Watcher, type WatcherOptions, type WatcherStopResult, createReindexRunner, decodeCliJsonEnvelope, initProjectConfig, installSkills, loadProjectConfig, requireCompatibleCliJsonEnvelope, resolveIndexStoragePaths, resolveReindexWorkerLaunch, supportedCliResultSchemaVersions };
554
+ export { CLAIM_ACTION_PERMISSIONS, CLAIM_ACTION_POLICY_VERSION, CLAIM_COVERAGE_STATES, CLAIM_ORIGINS, CLAIM_QUALIFICATION_SCHEMA_VERSION, CLI_ANALYSIS_MANIFEST_SCHEMA_VERSION, CLI_EVIDENCE_CONTEXT_SCHEMA_VERSION, CLI_JSON_ENVELOPE_KIND, COMMAND_OPERATION_ROLES, CURRENT_CLI_JSON_ENVELOPE_SCHEMA_VERSION, type ClaimActionPermission, type ClaimCoverage, type ClaimCoverageInput, type ClaimCoverageState, type ClaimFamilyContract, type ClaimFamilyOriginBinding, type ClaimOrigin, type ClaimQualificationEvaluation, type ClaimQualificationPredicate, type ClaimQualificationPredicateResult, type ClaimQualificationRequirements, type ClaimQualificationV1, type CliAnalysisManifestV1, type CliEvidenceContextV1, type CliJsonEnvelopeV1, type CliJsonProducer, type CommandClaimContract, type CommandOperationInvocation, type CommandOperationRole, type CommandOperationRule, type CommandOperationRuleCondition, type CommandOperationSelector, type CompatibleCliJsonEnvelope, DEFAULT_REPOSITORY_POLICY_ACTION, type DecodedCliJsonEnvelope, type DeriveClaimQualificationInput, DerivedObservationStateAuthority, LEGACY_CLI_JSON_ENVELOPE_SCHEMA_VERSION, type LegacyCliJsonEnvelope, ObservationReceipt, ObservationSourceKind, PRODUCER_VALIDATION_STATUSES, type ProducerValidation, type ProducerValidationStatus, type ReindexCancellationResult, type ReindexCompletionContext, type ReindexDiagnostics, type ReindexOperation, type ReindexRunRequest, type ReindexRunner, type ReindexRunnerOptions, type ReindexWorkerLaunch, type RepositoryPolicyAction, type WatchClock, type WatchSubscription, type WatchSubscriptionFactory, type WatchSubscriptionOptions, Watcher, type WatcherOptions, type WatcherStopResult, commandOperation, commandOperationRoles, createReindexRunner, decodeCliJsonEnvelope, deriveClaimCoverage, deriveClaimQualification, evaluateClaimQualification, initProjectConfig, installSkills, isClaimQualificationV1, isCommandOperationRole, loadProjectConfig, operationObservesRepository, requireCompatibleCliJsonEnvelope, resolveCommandOperationRole, resolveIndexStoragePaths, resolveReindexWorkerLaunch, supportedCliResultSchemaVersions };