scip-query 0.23.0 → 0.24.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 (432) hide show
  1. package/CHANGELOG.md +244 -1
  2. package/README.md +2 -0
  3. package/dist/augment-vue-worker.js +1 -1
  4. package/dist/by-kind-H3P6BR5G.js +2 -0
  5. package/dist/call-graph-VTG2CUOQ.js +2 -0
  6. package/dist/call-graph-evidence-BociKRpF.d.ts +19 -0
  7. package/dist/chunk-2BMSSRBH.js +2 -0
  8. package/dist/{chunk-WIWY3CRX.js → chunk-2GJSD5GY.js} +2 -2
  9. package/dist/{chunk-W5OXRYGE.js → chunk-2M2LSIMY.js} +3 -3
  10. package/dist/{chunk-2LDBDR6J.js → chunk-2N6WBNDC.js} +2 -2
  11. package/dist/{chunk-HOENASQM.js → chunk-2USA3S3P.js} +2 -2
  12. package/dist/chunk-2VAHDDLM.js +133 -0
  13. package/dist/chunk-2XWIUW5Z.js +455 -0
  14. package/dist/chunk-3D4BOXW6.js +20 -0
  15. package/dist/{chunk-BBCIS4DX.js → chunk-3LO4FST5.js} +2 -2
  16. package/dist/chunk-3WTY4LP2.js +3 -0
  17. package/dist/{chunk-UXW33INU.js → chunk-3Z5AMSK6.js} +2 -2
  18. package/dist/{chunk-4ILJCCXV.js → chunk-44IETFOU.js} +2 -2
  19. package/dist/chunk-4FR6GQIT.js +2 -0
  20. package/dist/chunk-4KBTHJLP.js +2 -0
  21. package/dist/{chunk-SSK6LDPC.js → chunk-5BIKR67W.js} +2 -2
  22. package/dist/{chunk-IHGQTTVW.js → chunk-5PROPLHI.js} +2 -2
  23. package/dist/{chunk-TA3QKLLU.js → chunk-5V7EPTII.js} +2 -2
  24. package/dist/{chunk-JS4PGXMV.js → chunk-62LPZCBQ.js} +2 -2
  25. package/dist/{chunk-DBRSYFXR.js → chunk-64O2JHQA.js} +2 -2
  26. package/dist/chunk-6D4F5VWG.js +10 -0
  27. package/dist/{chunk-BHVUJOCQ.js → chunk-6ERFBC3X.js} +2 -2
  28. package/dist/{chunk-ILTDAWEF.js → chunk-6ILKOOGH.js} +2 -2
  29. package/dist/chunk-6MFXCMZC.js +2 -0
  30. package/dist/chunk-6O7FACKB.js +2 -0
  31. package/dist/{chunk-XDQMU3BT.js → chunk-6TS3KOXR.js} +2 -2
  32. package/dist/{chunk-YI2AWIHC.js → chunk-76QOU4PK.js} +2 -2
  33. package/dist/{chunk-7CYG22FH.js → chunk-7DUI77BN.js} +2 -2
  34. package/dist/{chunk-IDFEUFKS.js → chunk-7F7T6DCR.js} +2 -2
  35. package/dist/chunk-7H6VHWWJ.js +2 -0
  36. package/dist/chunk-7HXT6YLU.js +5 -0
  37. package/dist/{chunk-DIRJWYBM.js → chunk-7R4V5ES6.js} +4 -4
  38. package/dist/{chunk-SZHGTCPP.js → chunk-7RIRIADH.js} +2 -2
  39. package/dist/chunk-7ZLWLOGT.js +2 -0
  40. package/dist/{chunk-M2O5NY6W.js → chunk-A4WEAK35.js} +2 -2
  41. package/dist/chunk-AADQLOQ4.js +38 -0
  42. package/dist/{chunk-OLNV6I6U.js → chunk-AN76MGUE.js} +2 -2
  43. package/dist/chunk-ANLNLY66.js +2 -0
  44. package/dist/chunk-ATXPTSEI.js +81 -0
  45. package/dist/{chunk-YPWBKGFU.js → chunk-AX7IDVFT.js} +2 -2
  46. package/dist/chunk-B7MPDEAK.js +3 -0
  47. package/dist/chunk-BBB5FBX4.js +2 -0
  48. package/dist/{chunk-6I6L7Z62.js → chunk-BHKK5RJY.js} +2 -2
  49. package/dist/chunk-BJWFVAA5.js +2 -0
  50. package/dist/{chunk-UHFYCMZO.js → chunk-BKZYTLGE.js} +2 -2
  51. package/dist/chunk-BL6DCHQP.js +2 -0
  52. package/dist/{chunk-TEBQMNVI.js → chunk-BOW7SSQH.js} +2 -2
  53. package/dist/{chunk-OWOOWNJ5.js → chunk-C4RHHCKL.js} +2 -2
  54. package/dist/{chunk-N2ZSIIGR.js → chunk-C7C6AKAT.js} +6 -6
  55. package/dist/chunk-CD6M6LS2.js +16 -0
  56. package/dist/chunk-CFE6PSG6.js +2 -0
  57. package/dist/{chunk-6V5CNXL6.js → chunk-CFNIGQMT.js} +2 -2
  58. package/dist/{chunk-GUFSG5TX.js → chunk-CKBUBRYD.js} +2 -2
  59. package/dist/{chunk-4WNW27SX.js → chunk-CZW5MZ5B.js} +2 -2
  60. package/dist/chunk-DBBZ63ZX.js +2 -0
  61. package/dist/{chunk-HCXEQRFF.js → chunk-DBN7DMJB.js} +2 -2
  62. package/dist/{chunk-6PQNKL3G.js → chunk-DUULLZHZ.js} +2 -2
  63. package/dist/{chunk-Z4CDXYNQ.js → chunk-DV5Y5NOS.js} +2 -2
  64. package/dist/chunk-DZOIKCTM.js +3 -0
  65. package/dist/chunk-E4PKTOL3.js +2 -0
  66. package/dist/{chunk-EG2CPZMJ.js → chunk-E65ELFKU.js} +2 -2
  67. package/dist/{chunk-CNO7TOKL.js → chunk-E7QR35ST.js} +2 -2
  68. package/dist/{chunk-3D3QG236.js → chunk-EFSXAINW.js} +2 -2
  69. package/dist/{chunk-IL676XCC.js → chunk-EHVEIEQN.js} +2 -2
  70. package/dist/{chunk-BE7ZZTMC.js → chunk-EHYDXE3Z.js} +2 -2
  71. package/dist/{chunk-LXABEJX3.js → chunk-EP63Y6LD.js} +2 -2
  72. package/dist/{chunk-QU5XRYB5.js → chunk-EPX6NQN6.js} +2 -2
  73. package/dist/{chunk-FESCRNVV.js → chunk-ETC674NS.js} +2 -2
  74. package/dist/{chunk-OSSESPDX.js → chunk-F5GSBHC6.js} +2 -2
  75. package/dist/chunk-FH3DGXC6.js +2 -0
  76. package/dist/{chunk-YEN6CYC7.js → chunk-FI7VGOR4.js} +2 -2
  77. package/dist/chunk-FJF6VO2P.js +2 -0
  78. package/dist/{chunk-FRUSVINH.js → chunk-FLMTCX5R.js} +2 -2
  79. package/dist/chunk-FVFDOIM3.js +2 -0
  80. package/dist/{chunk-PJFGPYTU.js → chunk-G2HU5WRN.js} +2 -2
  81. package/dist/{chunk-FIQRSHVM.js → chunk-G4ALYS4J.js} +2 -2
  82. package/dist/{chunk-UVGEWT4Y.js → chunk-G56I7K4W.js} +2 -2
  83. package/dist/{chunk-WOIKCX6A.js → chunk-GC4DG2V5.js} +2 -2
  84. package/dist/chunk-GG45PK4S.js +4 -0
  85. package/dist/{chunk-XBGWL66K.js → chunk-GHNPACNP.js} +2 -2
  86. package/dist/{chunk-IICPE7B2.js → chunk-GINH3YQU.js} +2 -2
  87. package/dist/{chunk-HLZTEXRA.js → chunk-GTZZVLKJ.js} +2 -2
  88. package/dist/chunk-GXXW5ZHH.js +2 -0
  89. package/dist/{chunk-B5D7QPBE.js → chunk-HAXXKRTD.js} +2 -2
  90. package/dist/chunk-HEZWBAZY.js +2 -0
  91. package/dist/chunk-HMEWLMML.js +2 -0
  92. package/dist/{chunk-QUU5OBVK.js → chunk-HOBOVYPO.js} +2 -2
  93. package/dist/{chunk-XGZEP6GR.js → chunk-HRFQ6GW5.js} +2 -2
  94. package/dist/{chunk-MPQ4OTBM.js → chunk-HX4X7KG3.js} +2 -2
  95. package/dist/{chunk-FDLOBR6P.js → chunk-HYT2R7LX.js} +2 -2
  96. package/dist/chunk-IKQVBVQL.js +40 -0
  97. package/dist/chunk-J6GLBBRK.js +4 -0
  98. package/dist/{chunk-ZTI4SBFV.js → chunk-J7A4PWFX.js} +2 -2
  99. package/dist/{chunk-OSR2GEHQ.js → chunk-JCSAZ35V.js} +2 -2
  100. package/dist/{chunk-ESIQ66Z7.js → chunk-JDU2IV3A.js} +2 -2
  101. package/dist/chunk-JFMI5SGB.js +4 -0
  102. package/dist/{chunk-W6STWDQI.js → chunk-JJP37RGX.js} +2 -2
  103. package/dist/chunk-JZ2A7LDM.js +5 -0
  104. package/dist/chunk-KNLQGXVH.js +80 -0
  105. package/dist/chunk-KVQCECPR.js +2 -0
  106. package/dist/{chunk-SQXRS7BG.js → chunk-KXXORBZ2.js} +2 -2
  107. package/dist/{chunk-DIUFNHRJ.js → chunk-L5KYH6U3.js} +2 -2
  108. package/dist/chunk-L6XHYJPZ.js +21 -0
  109. package/dist/{chunk-2GRUZAQF.js → chunk-L7KTFEAV.js} +2 -2
  110. package/dist/{chunk-QBE3YX64.js → chunk-LDXHR5EL.js} +2 -2
  111. package/dist/{chunk-HEHOQQKH.js → chunk-MHGDSBFX.js} +2 -2
  112. package/dist/{chunk-PWWAJSKV.js → chunk-MLQVVDG3.js} +2 -2
  113. package/dist/chunk-MOKUWRHO.js +3 -0
  114. package/dist/{chunk-VQILFTEH.js → chunk-MPYAPMNE.js} +2 -2
  115. package/dist/{chunk-UICY4GTQ.js → chunk-MV6SPXCR.js} +2 -2
  116. package/dist/{chunk-HYO3NP5Q.js → chunk-MZPXPSUJ.js} +2 -2
  117. package/dist/{chunk-VZRNID6A.js → chunk-N55KIE46.js} +2 -2
  118. package/dist/{chunk-YF5IB2LF.js → chunk-NB4D3BNM.js} +2 -2
  119. package/dist/{chunk-VVZSBTSU.js → chunk-NGKBOT6G.js} +2 -2
  120. package/dist/{chunk-NJITK2GP.js → chunk-NJGKXKQF.js} +2 -2
  121. package/dist/chunk-NJQISBL4.js +8 -0
  122. package/dist/{chunk-T4N4P2K5.js → chunk-NJT3ZEKY.js} +2 -2
  123. package/dist/{chunk-FPYLNQPT.js → chunk-NKMKZP6A.js} +2 -2
  124. package/dist/chunk-NODFZ6ED.js +2 -0
  125. package/dist/{chunk-BRV7PIFF.js → chunk-NSM5IEVW.js} +2 -2
  126. package/dist/{chunk-3WR4E3A3.js → chunk-NTGUVNR2.js} +2 -2
  127. package/dist/{chunk-VUPHCS7Y.js → chunk-NU3KFF2O.js} +2 -2
  128. package/dist/chunk-NWLVNU66.js +557 -0
  129. package/dist/{chunk-D4N5SQ2M.js → chunk-NYKZMCRC.js} +2 -2
  130. package/dist/{chunk-VNLGKHS6.js → chunk-O6BUXZEH.js} +2 -2
  131. package/dist/chunk-ODPDP7A4.js +3 -0
  132. package/dist/{chunk-JTQVMR42.js → chunk-OHIV323X.js} +2 -2
  133. package/dist/chunk-OIAPEKMT.js +3 -0
  134. package/dist/chunk-OIOC5EHF.js +3 -0
  135. package/dist/{chunk-YBGKCQIS.js → chunk-ONPPQM4G.js} +2 -2
  136. package/dist/{chunk-64BFSI5I.js → chunk-OUHEZBYI.js} +2 -2
  137. package/dist/{chunk-L6PJPETJ.js → chunk-OVGYW7UD.js} +2 -2
  138. package/dist/{chunk-I55I7XXP.js → chunk-OYKU4B3Y.js} +2 -2
  139. package/dist/{chunk-J66VOFW6.js → chunk-POBJ6FR2.js} +2 -2
  140. package/dist/{chunk-CWFP7GM5.js → chunk-PSZPMMWN.js} +2 -2
  141. package/dist/chunk-PXTRBKRK.js +3 -0
  142. package/dist/{chunk-HKGFPJ4T.js → chunk-Q5JRIHT3.js} +2 -2
  143. package/dist/{chunk-P42EIXTA.js → chunk-Q7ATHARX.js} +2 -2
  144. package/dist/{chunk-JYR66JN5.js → chunk-Q7CSKIDM.js} +2 -2
  145. package/dist/{chunk-TRNAEQ6P.js → chunk-QBQE7ZJ5.js} +2 -2
  146. package/dist/{chunk-DULC3QFP.js → chunk-QH22UIXP.js} +2 -2
  147. package/dist/chunk-QXCKQTKR.js +60 -0
  148. package/dist/{chunk-ODDUPDP7.js → chunk-RBAD4GJ2.js} +5 -5
  149. package/dist/{chunk-IZDPJ2QI.js → chunk-RMDPFPNW.js} +2 -2
  150. package/dist/chunk-ROPJDEJZ.js +4 -0
  151. package/dist/{chunk-EKV5HX33.js → chunk-RVZC6TJE.js} +2 -2
  152. package/dist/{chunk-XFA4SSO3.js → chunk-S4QZBKSR.js} +2 -2
  153. package/dist/{chunk-D2DHWI3D.js → chunk-SCPMZ73U.js} +2 -2
  154. package/dist/{chunk-PZL5T7SU.js → chunk-SIAP5RGI.js} +2 -2
  155. package/dist/{chunk-7IWV2EG3.js → chunk-SIX4RFR3.js} +2 -2
  156. package/dist/{chunk-DYGHBZ2N.js → chunk-SKKXTABJ.js} +2 -2
  157. package/dist/{chunk-F7DY272B.js → chunk-SSRFUQBD.js} +2 -2
  158. package/dist/chunk-SYVJEEUJ.js +3 -0
  159. package/dist/{chunk-FGA2U4OR.js → chunk-T3CZAZSI.js} +2 -2
  160. package/dist/chunk-T3I6NHBH.js +2 -0
  161. package/dist/{chunk-EQHFIL6T.js → chunk-T6DWDI5E.js} +2 -2
  162. package/dist/chunk-T6HRIROJ.js +7 -0
  163. package/dist/{chunk-GSP44ENC.js → chunk-TAA7HXHE.js} +2 -2
  164. package/dist/{chunk-BQGB4HBD.js → chunk-TJ2JQYT3.js} +2 -2
  165. package/dist/{chunk-XPDPNWTQ.js → chunk-TULNMD5T.js} +19 -19
  166. package/dist/chunk-U2FPY5XA.js +3 -0
  167. package/dist/chunk-U3SXIMII.js +38 -0
  168. package/dist/{chunk-NOGJXYFO.js → chunk-U6KCHXJ4.js} +2 -2
  169. package/dist/chunk-UH3XSKS5.js +9 -0
  170. package/dist/{chunk-AFHTBORT.js → chunk-UIFUZVCC.js} +2 -2
  171. package/dist/{chunk-7BWFZPPZ.js → chunk-UXKURIVI.js} +2 -2
  172. package/dist/{chunk-2E7CX53V.js → chunk-V2RBODHL.js} +2 -2
  173. package/dist/{chunk-KLFEXGQA.js → chunk-VBKUWB6N.js} +2 -2
  174. package/dist/{chunk-WUN6KBHV.js → chunk-VBV6ALJE.js} +2 -2
  175. package/dist/{chunk-GZIUDL6G.js → chunk-VDGFWCQV.js} +2 -2
  176. package/dist/chunk-VDSDOEWF.js +2 -0
  177. package/dist/{chunk-WDNVY4E7.js → chunk-VZPWVCLN.js} +2 -2
  178. package/dist/chunk-WDSFQDPN.js +2 -0
  179. package/dist/{chunk-CIYLO6SI.js → chunk-WFA35BGR.js} +2 -2
  180. package/dist/{chunk-LMZ5PRUV.js → chunk-WLMP3OCW.js} +2 -2
  181. package/dist/{chunk-3SVF22I5.js → chunk-WSA52GOR.js} +2 -2
  182. package/dist/{chunk-VMPRET3I.js → chunk-X3YVZAKZ.js} +2 -2
  183. package/dist/{chunk-GYIZ4NXB.js → chunk-X6OGVFIT.js} +2 -2
  184. package/dist/{chunk-6HFCYNYE.js → chunk-XKXTR6ZI.js} +2 -2
  185. package/dist/{chunk-6VVV4WRR.js → chunk-Y5DFAW5W.js} +2 -2
  186. package/dist/chunk-YSYPDRD5.js +3 -0
  187. package/dist/{chunk-TQPCBMWT.js → chunk-ZFVPWH62.js} +2 -2
  188. package/dist/chunk-ZGIHTH27.js +2 -0
  189. package/dist/{chunk-OR2E3AGZ.js → chunk-ZGIQN2SX.js} +2 -2
  190. package/dist/{chunk-WNTFFKAX.js → chunk-ZHG4WAHR.js} +2 -2
  191. package/dist/{chunk-DTZCKZEU.js → chunk-ZKB2XUEN.js} +2 -2
  192. package/dist/chunk-ZLMXIQLC.js +21 -0
  193. package/dist/chunk-ZMCQIHI4.js +2 -0
  194. package/dist/cli-main.js +2 -2
  195. package/dist/code-TAVIKWJI.js +2 -0
  196. package/dist/code-result-json-5FEFQCAQ.js +2 -0
  197. package/dist/{command-descriptors-P34VABY5.js → command-descriptors-7BKH53Y3.js} +124 -124
  198. package/dist/dataflow-GFBTVDH3.js +2 -0
  199. package/dist/dependence-slice-GWGQCODG.js +2 -0
  200. package/dist/deps-4QHVDPYA.js +2 -0
  201. package/dist/direct-navigation-4UBC6HNW.js +3 -0
  202. package/dist/entry-map-QCTF4RVY.js +2 -0
  203. package/dist/files-M2UBF5HJ.js +2 -0
  204. package/dist/frontend-profile-roles-D7eCum8P.d.ts +10 -0
  205. package/dist/{health-CPp2Jf1Z.d.ts → health-BI2a9WPy.d.ts} +60 -2
  206. package/dist/hierarchy-2UIHRLW4.js +2 -0
  207. package/dist/imports-WIE3YZOB.js +2 -0
  208. package/dist/index.d.ts +1 -1
  209. package/dist/index.js +1 -1
  210. package/dist/members-YKD636DA.js +2 -0
  211. package/dist/methods-VDF4IMYG.js +2 -0
  212. package/dist/output-continuation-command-4UMDOOLO.js +3 -0
  213. package/dist/output-pagination-2GME6OPY.js +19 -0
  214. package/dist/postinstall.js +1 -1
  215. package/dist/project-reindex-XEQTRCV5.js +3 -0
  216. package/dist/queries/affected.js +1 -1
  217. package/dist/queries/anchors.d.ts +1 -1
  218. package/dist/queries/anchors.js +1 -1
  219. package/dist/queries/architecture.js +1 -1
  220. package/dist/queries/bottlenecks.js +1 -1
  221. package/dist/queries/by-kind.js +1 -1
  222. package/dist/queries/call-graph.d.ts +2 -0
  223. package/dist/queries/call-graph.js +1 -1
  224. package/dist/queries/change-surface.js +1 -1
  225. package/dist/queries/cleanup-plan.js +1 -1
  226. package/dist/queries/co-change.d.ts +20 -2
  227. package/dist/queries/co-change.js +1 -1
  228. package/dist/queries/code.js +1 -1
  229. package/dist/queries/complexity-hotspots.js +1 -1
  230. package/dist/queries/complexity.js +1 -1
  231. package/dist/queries/context.js +1 -1
  232. package/dist/queries/convergence.js +1 -1
  233. package/dist/queries/coupling.js +1 -1
  234. package/dist/queries/cycles.js +1 -1
  235. package/dist/queries/dataflow.js +1 -1
  236. package/dist/queries/dead.d.ts +2 -0
  237. package/dist/queries/dead.js +1 -1
  238. package/dist/queries/decorative-checkers.js +1 -1
  239. package/dist/queries/deep-chains.js +1 -1
  240. package/dist/queries/dependence-slice.js +1 -1
  241. package/dist/queries/dependency-depth.js +1 -1
  242. package/dist/queries/deps.js +1 -1
  243. package/dist/queries/diff-impact.js +1 -1
  244. package/dist/queries/doc-drift.js +1 -1
  245. package/dist/queries/drift.js +1 -1
  246. package/dist/queries/duplicate-bodies.d.ts +28 -1
  247. package/dist/queries/duplicate-bodies.js +1 -1
  248. package/dist/queries/entry-map.d.ts +1 -1
  249. package/dist/queries/entry-map.js +1 -1
  250. package/dist/queries/evidence.js +1 -1
  251. package/dist/queries/extract-candidates.d.ts +50 -23
  252. package/dist/queries/extract-candidates.js +1 -1
  253. package/dist/queries/fan.js +1 -1
  254. package/dist/queries/files.js +1 -1
  255. package/dist/queries/health.d.ts +1 -1
  256. package/dist/queries/health.js +1 -1
  257. package/dist/queries/hierarchy.js +1 -1
  258. package/dist/queries/hotspots.js +1 -1
  259. package/dist/queries/imports.js +1 -1
  260. package/dist/queries/incomplete-migration.js +1 -1
  261. package/dist/queries/index.d.ts +4 -3
  262. package/dist/queries/index.js +1 -1
  263. package/dist/queries/isolated.js +1 -1
  264. package/dist/queries/locality-candidates.js +1 -1
  265. package/dist/queries/members.js +1 -1
  266. package/dist/queries/methods.js +1 -1
  267. package/dist/queries/not-implemented.js +1 -1
  268. package/dist/queries/outline.js +1 -1
  269. package/dist/queries/passthrough-candidates.d.ts +9 -1
  270. package/dist/queries/passthrough-candidates.js +1 -1
  271. package/dist/queries/plan-context.js +1 -1
  272. package/dist/queries/react-component-duplicates.d.ts +19 -3
  273. package/dist/queries/react-component-duplicates.js +1 -1
  274. package/dist/queries/react-hook-candidates.d.ts +22 -3
  275. package/dist/queries/react-hook-candidates.js +1 -1
  276. package/dist/queries/react-large-component-pressure.d.ts +17 -3
  277. package/dist/queries/react-large-component-pressure.js +1 -1
  278. package/dist/queries/recent-duplicates.js +1 -1
  279. package/dist/queries/redundant-reexports.js +1 -1
  280. package/dist/queries/reference-neighborhood.js +1 -1
  281. package/dist/queries/reference-reachability.js +1 -1
  282. package/dist/queries/refs.js +1 -1
  283. package/dist/queries/self-audit.d.ts +7 -1
  284. package/dist/queries/self-audit.js +1 -1
  285. package/dist/queries/similar-chains.js +1 -1
  286. package/dist/queries/similar-files.js +1 -1
  287. package/dist/queries/similar-signatures.js +1 -1
  288. package/dist/queries/similar.js +1 -1
  289. package/dist/queries/slice.js +1 -1
  290. package/dist/queries/source-inspection.js +1 -1
  291. package/dist/queries/source-search.js +1 -1
  292. package/dist/queries/stale-abstractions.js +1 -1
  293. package/dist/queries/surface.js +1 -1
  294. package/dist/queries/symbols.js +1 -1
  295. package/dist/queries/system-map.d.ts +1 -1
  296. package/dist/queries/system-map.js +1 -1
  297. package/dist/queries/system.js +1 -1
  298. package/dist/queries/test-quality.js +1 -1
  299. package/dist/queries/trace.js +1 -1
  300. package/dist/queries/twin-ab.js +1 -1
  301. package/dist/queries/twin-drift.d.ts +22 -6
  302. package/dist/queries/twin-drift.js +1 -1
  303. package/dist/queries/unused-imports.js +1 -1
  304. package/dist/queries/unused-params.js +1 -1
  305. package/dist/queries/value-flow.js +1 -1
  306. package/dist/queries/vue-component-duplicates.js +1 -1
  307. package/dist/queries/vue-composable-candidates.js +1 -1
  308. package/dist/queries/vue-large-view-pressure.js +1 -1
  309. package/dist/queries/wrapper-candidates.d.ts +16 -1
  310. package/dist/queries/wrapper-candidates.js +1 -1
  311. package/dist/query-service-fastpath.js +5 -5
  312. package/dist/query-service-server.js +2 -2
  313. package/dist/refs-JNK5CLM7.js +2 -0
  314. package/dist/refs-pagination-6BLRYGMV.js +2 -0
  315. package/dist/reindex-worker.js +10 -10
  316. package/dist/reindex.js +18 -18
  317. package/dist/runtime.js +4 -4
  318. package/dist/rust-semantic-session-server.js +1 -1
  319. package/dist/rust-semantic-session-worker.js +1 -1
  320. package/dist/rust-semantic-worker.js +1 -1
  321. package/dist/slice-PHPVNCWX.js +2 -0
  322. package/dist/surface-MQX5MPIV.js +2 -0
  323. package/dist/{symbol-resolution-WD5EU5JE.js → symbol-resolution-DBLVXLBC.js} +2 -2
  324. package/dist/system-JOPKV4OG.js +2 -0
  325. package/dist/trace-I2P2YFH4.js +2 -0
  326. package/dist/typescript-mailbox-worker.js +1 -1
  327. package/dist/value-flow-JJVMF7NP.js +2 -0
  328. package/dist/watch-server.js +3 -3
  329. package/docs/COMMAND_REFERENCE.md +2 -2
  330. package/docs/DETECTOR_GUIDE.md +51 -12
  331. package/docs/accuracy-audit-checklist.md +36 -13
  332. package/docs/locality-analyzer-design.md +9 -9
  333. package/package.json +2 -2
  334. package/skills/conductor/SKILL.md +110 -0
  335. package/skills/conductor/agents/openai.yaml +4 -0
  336. package/skills/principal-maintainability-review/SKILL.md +273 -0
  337. package/skills/principal-maintainability-review/agents/openai.yaml +4 -0
  338. package/skills/scip-calibrate/SKILL.md +102 -0
  339. package/skills/scip-calibrate/agents/openai.yaml +4 -0
  340. package/skills/scip-claim-audit/SKILL.md +113 -0
  341. package/skills/scip-claim-audit/agents/openai.yaml +4 -0
  342. package/skills/scip-probe-reachability/SKILL.md +93 -0
  343. package/skills/scip-probe-reachability/agents/openai.yaml +4 -0
  344. package/skills/scip-root-cause/SKILL.md +160 -0
  345. package/skills/scip-root-cause/agents/openai.yaml +4 -0
  346. package/skills/scip-system-compression/SKILL.md +252 -0
  347. package/skills/scip-system-compression/agents/openai.yaml +4 -0
  348. package/skills/scip-system-compression/references/compression-atlas.md +116 -0
  349. package/skills/scip-system-compression/references/compression-patterns.md +87 -0
  350. package/skills/scip-twin-drift/SKILL.md +109 -0
  351. package/skills/scip-twin-drift/agents/openai.yaml +4 -0
  352. package/dist/by-kind-XI2CSWEY.js +0 -2
  353. package/dist/call-graph-UONR6JR5.js +0 -2
  354. package/dist/call-graph-evidence-lZa2dwQA.d.ts +0 -11
  355. package/dist/chunk-2R3V3PSD.js +0 -4
  356. package/dist/chunk-2WC2OEDO.js +0 -4
  357. package/dist/chunk-3FHOF22C.js +0 -21
  358. package/dist/chunk-3JKSW6LJ.js +0 -2
  359. package/dist/chunk-3L2ZBPEX.js +0 -133
  360. package/dist/chunk-3PJABJSU.js +0 -2
  361. package/dist/chunk-4FTZ4P5G.js +0 -2
  362. package/dist/chunk-4UX2F3JX.js +0 -2
  363. package/dist/chunk-5ENOG4VP.js +0 -61
  364. package/dist/chunk-66DVSJQG.js +0 -455
  365. package/dist/chunk-AVRYW5OZ.js +0 -2
  366. package/dist/chunk-BDUVI7TO.js +0 -3
  367. package/dist/chunk-CEEZJXEF.js +0 -2
  368. package/dist/chunk-CJZXN4NU.js +0 -2
  369. package/dist/chunk-COF23M5F.js +0 -2
  370. package/dist/chunk-DHUIOLDT.js +0 -2
  371. package/dist/chunk-DRENNWRG.js +0 -2
  372. package/dist/chunk-E5R6AQ73.js +0 -40
  373. package/dist/chunk-E73UNJTF.js +0 -38
  374. package/dist/chunk-EVFUMY4R.js +0 -3
  375. package/dist/chunk-FBN2FGXG.js +0 -2
  376. package/dist/chunk-FFRKR4EQ.js +0 -2
  377. package/dist/chunk-GAS2LJMP.js +0 -3
  378. package/dist/chunk-HVF5VBG6.js +0 -2
  379. package/dist/chunk-JGKUET5J.js +0 -3
  380. package/dist/chunk-JWTGMPIT.js +0 -80
  381. package/dist/chunk-KFOYCQAJ.js +0 -9
  382. package/dist/chunk-KYSDI3GE.js +0 -5
  383. package/dist/chunk-LDVT66YM.js +0 -2
  384. package/dist/chunk-LQRQN2XA.js +0 -2
  385. package/dist/chunk-MNV5FSBW.js +0 -3
  386. package/dist/chunk-MV3CDXPI.js +0 -38
  387. package/dist/chunk-N5B2NILC.js +0 -5
  388. package/dist/chunk-NOYBFVJA.js +0 -554
  389. package/dist/chunk-NWQXSFFU.js +0 -3
  390. package/dist/chunk-OLIWTZI3.js +0 -3
  391. package/dist/chunk-PP7KNN7L.js +0 -2
  392. package/dist/chunk-PU7T5QYQ.js +0 -2
  393. package/dist/chunk-QGVTFRY2.js +0 -7
  394. package/dist/chunk-QOJONDS7.js +0 -2
  395. package/dist/chunk-RBLQNW26.js +0 -20
  396. package/dist/chunk-RTQ7NEKG.js +0 -81
  397. package/dist/chunk-TPFHAQ2G.js +0 -2
  398. package/dist/chunk-TQZV7KV4.js +0 -2
  399. package/dist/chunk-TY7CRN3Z.js +0 -2
  400. package/dist/chunk-W7CXK74K.js +0 -2
  401. package/dist/chunk-WB3WYIRE.js +0 -4
  402. package/dist/chunk-WK46TNUM.js +0 -3
  403. package/dist/chunk-WYCTJDVR.js +0 -2
  404. package/dist/chunk-XRYABF57.js +0 -8
  405. package/dist/chunk-YPWHBBIS.js +0 -2
  406. package/dist/chunk-YSH6U3L4.js +0 -3
  407. package/dist/chunk-YU5DZUZI.js +0 -10
  408. package/dist/chunk-YWO5DDRC.js +0 -16
  409. package/dist/chunk-ZF5KHH7C.js +0 -2
  410. package/dist/chunk-ZOHS7AQV.js +0 -21
  411. package/dist/code-MI6F2TTU.js +0 -2
  412. package/dist/code-result-json-FXALY4HE.js +0 -2
  413. package/dist/dataflow-4KEMJPC6.js +0 -2
  414. package/dist/dependence-slice-R7FPWD5M.js +0 -2
  415. package/dist/deps-7EMQUYUT.js +0 -2
  416. package/dist/direct-navigation-6YO234F2.js +0 -3
  417. package/dist/entry-map-KOOLR26E.js +0 -2
  418. package/dist/files-OPIPJIGZ.js +0 -2
  419. package/dist/hierarchy-QPD2CAER.js +0 -2
  420. package/dist/imports-M6HUXRXC.js +0 -2
  421. package/dist/members-I5MEFOCT.js +0 -2
  422. package/dist/methods-5JYGGHXA.js +0 -2
  423. package/dist/output-continuation-command-UPQAAKBP.js +0 -3
  424. package/dist/output-pagination-3OFL2MJV.js +0 -19
  425. package/dist/project-reindex-UKKQ5PLS.js +0 -3
  426. package/dist/refs-PSU4JZZW.js +0 -2
  427. package/dist/refs-pagination-JG6CJMRC.js +0 -2
  428. package/dist/slice-HYRATV64.js +0 -2
  429. package/dist/surface-VTGDYWF5.js +0 -2
  430. package/dist/system-LRQNFOR2.js +0 -2
  431. package/dist/trace-F4B6OLL4.js +0 -2
  432. package/dist/value-flow-VRPZY72V.js +0 -2
@@ -0,0 +1,87 @@
1
+ # Compression Patterns
2
+
3
+ Use this reference after the first evidence pass, when generating possible simplification models. These are prompts for thought, not templates to impose.
4
+
5
+ ## Atlas-First Compression
6
+
7
+ Use when the user wants to think ahead across a whole repository, module family, command surface, query family, or subsystem before editing. The real referents are source files, symbols, command handlers, query modules, docs, tests, generated artifacts, and previously discovered opportunities that could interact. The deeper pattern is that discovery and ordering must be completed before implementation, so local opportunities are not rediscovered as new work after each edit.
8
+
9
+ Typical compression: build a compression atlas with an opportunity ledger and deferred register, cluster by root cause, order clusters by enabling power, enrich steps, sense-check overlap and value, then execute the unblocked clusters in dependency order even when the right cleanup is large.
10
+
11
+ Reject when the scope is a single isolated bug or one clearly bounded refactor where a full atlas would add planning overhead without reducing rework risk.
12
+
13
+ ## Metadata-Rendered Surface
14
+
15
+ Use when command help, docs, examples, tests, and runtime behavior all describe the same external surface. The real referents are command registrations, option definitions, usage text, README sections, snapshots, and smoke tests. The deeper pattern is that hand-maintained text should become a rendered view of executable metadata.
16
+
17
+ Typical compression: introduce a command descriptor or schema that owns name, arguments, options, examples, analysis function, and renderer hooks; generate help/docs/tests from it where practical.
18
+
19
+ Reject when docs intentionally teach concepts that cannot be derived from command metadata.
20
+
21
+ ## Pipeline
22
+
23
+ Use when many flows repeatedly parse input, load state, run analysis, transform results, render output, and handle errors. The real referents are command actions, scripts, batch jobs, worker handlers, and tests that assert their outputs. The deeper pattern is one lifecycle with different stages plugged in.
24
+
25
+ Typical compression: make the lifecycle explicit, keep stage functions small, and move policy decisions into named stage inputs instead of scattered inline code.
26
+
27
+ Reject when the flows have materially different ordering, resource lifetime, or error semantics.
28
+
29
+ ## Registry or Descriptor Table
30
+
31
+ Use when many branches select behavior by name, language, kind, command, file type, or analysis phase. The real referents are switch statements, if chains, command builders, language dispatch, test matrices, and documentation tables. The deeper pattern is a finite set of cases with shared fields and per-case functions.
32
+
33
+ Typical compression: replace scattered branches with a typed table of descriptors and one executor that consumes the table.
34
+
35
+ Reject when the table becomes a bag of unrelated optional fields.
36
+
37
+ ## Execution Algebra
38
+
39
+ Use when a descriptor table centralizes names and metadata but leaves many handlers repeating the same lifecycle. The real referents are command handlers, API handlers, worker phases, query calls, renderers, option decoders, budget checks, and hidden commands. The deeper pattern is that each unit is an instance of one of a few execution shapes.
40
+
41
+ Typical compression: define typed command shapes such as pure query, heuristic query, project readiness, lifecycle side effect, and isolated worker. Each shape owns its required setup order, allowed variant points, result renderer, and error behavior. Descriptors choose a shape instead of pointing at a bespoke handler whenever possible.
42
+
43
+ Reject when shape variants require many unrelated escape hatches, or when lifecycle order differs enough that a custom handler is clearer.
44
+
45
+ ## Shared Policy Object
46
+
47
+ Use when separate modules answer the same rule question differently, such as "what is live?", "what is public?", "what is ignored?", "what counts as a test?", or "which edge is real?" The real referents are repeated predicates, SQL fragments, filters, option defaults, and tests that encode the same domain boundary. The deeper pattern is one policy that multiple analyses should import.
48
+
49
+ Typical compression: name the policy in domain language, centralize it in a narrow module, and make each caller pass only the context it actually owns.
50
+
51
+ Reject when the apparent rule is only similar because the words are similar; user-visible behavior may require separate policies.
52
+
53
+ ## Query Algebra
54
+
55
+ Use when query modules repeatedly build the same graph, candidate set, scoring pass, or summary rows before applying different final filters. The real referents are SQL fragments, graph builders, row mappers, symbol classifiers, candidate gates, and report summaries. The deeper pattern is a small vocabulary of query operations that can be composed.
56
+
57
+ Typical compression: factor the repeated operation as a named data transformation with explicit inputs and outputs; keep command-specific ranking and rendering outside it.
58
+
59
+ Reject when a generalized operation hides expensive work or makes precision/confidence rules less visible.
60
+
61
+ ## Adapter-Core Split
62
+
63
+ Use when UI, CLI, API, or worker code owns business logic while pure modules merely support it. The real referents are command actions, HTTP handlers, worker messages, renderers, and pure query functions. The deeper pattern is that adapters translate boundaries while the core owns analysis.
64
+
65
+ Typical compression: move behavior into pure functions with typed results; make adapters responsible only for input parsing, resource setup, output formatting, and exit behavior.
66
+
67
+ Reject when moving logic would destabilize a public surface without reducing duplicated policy.
68
+
69
+ ## Compatibility Shell
70
+
71
+ Use when old APIs, scripts, command names, or file paths remain only to preserve callers after the real implementation moved. The real referents are wrappers, aliases, barrels, deprecated modules, and release notes. The deeper pattern is a temporary shell around a new center.
72
+
73
+ Typical compression: keep the shell thin, document the compatibility boundary, and delete it when references prove it is no longer used.
74
+
75
+ Reject when the wrapper adds meaningful validation, translation, or lifecycle management.
76
+
77
+ ## Anti-Patterns
78
+
79
+ Helper cemetery: a refactor extracts many tiny helpers but leaves the original concepts scattered.
80
+
81
+ Parameter swamp: one generic function gains many flags because the grouped cases are not actually the same kind of thing.
82
+
83
+ False center: a new module becomes a dependency hub without owning a coherent policy or workflow.
84
+
85
+ Name-level unification: code is grouped because names sound similar, while call graphs, data flow, or user-visible behavior show different roles.
86
+
87
+ Premature deletion: code is removed because it looks conceptually redundant before references, entry points, and tests prove it is unused or replaceable.
@@ -0,0 +1,109 @@
1
+ ---
2
+ name: scip-twin-drift
3
+ description: Find and resolve twin drift with scip-query. Use for same-name or near-name functions across files with diverged bodies, drifted policy thresholds, one-sided fixes, or consolidating a duplicated concept into one canonical helper.
4
+ metadata:
5
+ commands:
6
+ - template: 'scip-query twin-drift -s <scope> --json'
7
+ when: 'Enumerate same-name or near-name callable groups whose bodies partially overlap.'
8
+ - template: 'scip-query duplicate-bodies -s <scope>'
9
+ when: 'Separate exact clones, which belong to this detector, from drifted twins.'
10
+ - template: 'scip-query code <selector>'
11
+ when: 'Read every member of a divergent group to classify the divergence.'
12
+ - template: 'scip-query refs <symbol>'
13
+ when: 'Pick the canonical twin by consumer count.'
14
+ - template: 'scip-query diff-impact'
15
+ when: 'After consolidating, map the changed symbols and every downstream consumer.'
16
+ ---
17
+
18
+ # scip-twin-drift
19
+
20
+ <!-- BEGIN GENERATED SKILL COMMANDS -->
21
+ ## Command and question manual
22
+
23
+ | Command syntax | Question it answers |
24
+ | --- | --- |
25
+ | `scip-query twin-drift -s <scope> --json` | Enumerate same-name or near-name callable groups whose bodies partially overlap. |
26
+ | `scip-query duplicate-bodies -s <scope>` | Separate exact clones, which belong to this detector, from drifted twins. |
27
+ | `scip-query code <selector>` | Read every member of a divergent group to classify the divergence. |
28
+ | `scip-query refs <symbol>` | Pick the canonical twin by consumer count. |
29
+ | `scip-query diff-impact` | After consolidating, map the changed symbols and every downstream consumer. |
30
+
31
+ These commands are controls, not a checklist. Use every capability needed by the task, but make each query answer a distinct question. There is no required sequence or query limit. Run a command's `--help` when you need a flag not shown in its template.
32
+ <!-- END GENERATED SKILL COMMANDS -->
33
+
34
+ Use this skill when the same concept exists in more than one place under the same or a near-name (case-insensitive, or edit-distance at most 2 for names of 8 or more characters) and the bodies have silently diverged. A twin drift group is a same-leaf-name family of callables spanning at least two files whose normalized-token bodies are neither identical (that is the job of `duplicate-bodies`) nor unrelated (a homonym like `render` or `parse`) but partially overlapping. That overlap is the signature of a concept that was copied once and then edited independently in only some of its copies.
35
+
36
+ ## Rules
37
+
38
+ 1. `IDENTICAL` groups defer to `duplicate-bodies`; do not re-report them here.
39
+ 2. Homonyms (similarity below `--min-similarity`, default 0.3) are noise unless `--include-homonyms` was requested; do not chase them.
40
+ 3. Every `DIVERGENT` group in scope gets a classification before this skill reports done.
41
+ 4. Prefer consolidation to one exported helper over leaving parallel copies. When consolidation is unsafe or premature, record the intent gap explicitly in a comment or a suppression with a reason rather than silently accepting drift.
42
+ 5. If your own diff introduces a new twin, you just reproduced the defect class this skill exists to catch. Fix or explicitly accept it before finishing.
43
+
44
+ ## Workflow
45
+
46
+ ### 1. Run the detector
47
+
48
+ ```bash
49
+ scip-query twin-drift -s <scope> --json
50
+ scip-query duplicate-bodies -s <scope>
51
+ ```
52
+
53
+ Scope with `-s <path>` when the review is bounded to a module. Record group count, member count, and the maximum divergence per group.
54
+
55
+ This step is complete only when every group in scope is enumerated with its relationship (`divergent` versus suppressed homonym).
56
+
57
+ ### 2. Classify each DIVERGENT group
58
+
59
+ For each group, read every member with `scip-query code <symbol-or-file:range>` and use the group's first divergent tokens as a starting point for where the bodies diverge. Classify the group as one of:
60
+
61
+ - **Intentional variation**: the copies differ because the domains genuinely differ, for example a React-specific versus Vue-specific structural comparator that must branch on framework-specific overlap checks. Essential variation stays; record why.
62
+ - **Drifted policy**: the copies encode what should be one policy (a threshold, a normalization rule, an edge-case guard) that only some copies received when it last changed. This is a bug: pick the correct value and propagate it, or extract the policy into one named function or constant.
63
+ - **One-sided fix**: one copy was bugfixed or hardened and its twins were not. This is also a bug: apply the same fix to every member, or consolidate.
64
+
65
+ This step is complete only when every DIVERGENT group in scope has one of these three labels with a one-line reason.
66
+
67
+ ### 3. Pick the canonical twin and act
68
+
69
+ For groups getting consolidated, pick the canonical member by consumer count:
70
+
71
+ ```bash
72
+ scip-query refs <symbol-in-file-A>
73
+ scip-query refs <symbol-in-file-B>
74
+ ```
75
+
76
+ Prefer the member with the most consumers, or the one in the more general or shared location when counts tie. Extract or move the canonical body to one exported helper; update the other members to call it, or delete them if they were pure duplication with different names for the caller's convenience. Preserve any classified-essential variation as a parameter or a thin caller-side branch, not as a second copy of the whole body.
77
+
78
+ For groups marked intentional variation, do not force consolidation. Record the reason in a comment near one of the members so the next `twin-drift` run and the next reader both see it was considered.
79
+
80
+ This step is complete only when every DIVERGENT group is either consolidated (with the old copies gone or forwarding) or has a recorded reason it stays separate.
81
+
82
+ ### 4. Verify
83
+
84
+ Rerun the detector to confirm consolidated groups no longer appear as DIVERGENT, run the repository's own tests and typecheck for the touched files, then:
85
+
86
+ ```bash
87
+ scip-query diff-impact
88
+ ```
89
+
90
+ Read every downstream consumer it lists. A consumer that depended on the deleted twin's behavior, not the canonical one's, is a regression this skill must catch before finishing.
91
+
92
+ This step is complete only when `twin-drift` shows no unclassified `DIVERGENT` groups in scope and every consumer named by `diff-impact` has been checked.
93
+
94
+ ## Report
95
+
96
+ ```markdown
97
+ Scope:
98
+ Groups found: N (M divergent, K suppressed homonyms)
99
+
100
+ Divergent groups:
101
+
102
+ - <leaf name> (<files>): classification: intentional variation | drifted policy | one-sided fix
103
+ - action: consolidated into <canonical file:symbol> | reason kept separate
104
+
105
+ Verification:
106
+
107
+ - `scip-query twin-drift -s <scope> --json`: <result>
108
+ - `scip-query diff-impact`: <consumers checked>
109
+ ```
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: 'SCIP Twin Drift'
3
+ short_description: 'Find and resolve same-name twins that have silently diverged'
4
+ default_prompt: 'Use $scip-twin-drift to find same-name or near-name functions that have diverged across files, classify each divergence as intentional variation, drifted policy, or one-sided fix, and consolidate or record the intent gap.'
@@ -1,2 +0,0 @@
1
- import{a,b}from"./chunk-VVZSBTSU.js";import"./chunk-MTDBHTSF.js";import"./chunk-3L2ZBPEX.js";import"./chunk-YXPUP5G2.js";import"./chunk-DRENNWRG.js";import"./chunk-RTQ7NEKG.js";import"./chunk-GUFSG5TX.js";import"./chunk-IW5XQG5G.js";import"./chunk-H5EXS3HM.js";import"./chunk-HGFDYOVB.js";import"./chunk-KYSDI3GE.js";import"./chunk-7F45LJKI.js";export{a as byKind,b as kindCounts};
2
- //# sourceMappingURL=by-kind-XI2CSWEY.js.map
@@ -1,2 +0,0 @@
1
- import{a}from"./chunk-YPWHBBIS.js";import"./chunk-7KCZELVM.js";import"./chunk-BGBBVSH4.js";import"./chunk-MV3CDXPI.js";import"./chunk-MTDBHTSF.js";import"./chunk-WYCTJDVR.js";import"./chunk-CEEZJXEF.js";import"./chunk-OSR2GEHQ.js";import"./chunk-YEN6CYC7.js";import"./chunk-WRQXLNYE.js";import"./chunk-2GRUZAQF.js";import"./chunk-HOENASQM.js";import"./chunk-BJT7LSPK.js";import"./chunk-SSK6LDPC.js";import"./chunk-4WNW27SX.js";import"./chunk-F4FNK44D.js";import"./chunk-GAS2LJMP.js";import"./chunk-WK46TNUM.js";import"./chunk-TQZV7KV4.js";import"./chunk-3L2ZBPEX.js";import"./chunk-YXPUP5G2.js";import"./chunk-DRENNWRG.js";import"./chunk-BE7ZZTMC.js";import"./chunk-2OOY75BW.js";import"./chunk-NOGJXYFO.js";import"./chunk-RTQ7NEKG.js";import"./chunk-GUFSG5TX.js";import"./chunk-IW5XQG5G.js";import"./chunk-FGA2U4OR.js";import"./chunk-B3PYOSCX.js";import"./chunk-H5EXS3HM.js";import"./chunk-HGFDYOVB.js";import"./chunk-JFMEXGFE.js";import"./chunk-KYSDI3GE.js";import"./chunk-7F45LJKI.js";export{a as callGraph};
2
- //# sourceMappingURL=call-graph-UONR6JR5.js.map
@@ -1,11 +0,0 @@
1
- type CalleeEvidenceSource = 'ast-callsite' | 'semantic-callee' | 'scip-chunk';
2
- interface CalleeRow {
3
- symbol: string;
4
- file: string;
5
- chunkId: number;
6
- source: CalleeEvidenceSource;
7
- /** Zero-based source line of the call expression when retained by the evidence source. */
8
- callsiteLine?: number;
9
- }
10
-
11
- export type { CalleeRow as C, CalleeEvidenceSource as a };
@@ -1,4 +0,0 @@
1
- import{b as y}from"./chunk-M2O5NY6W.js";import{a as v}from"./chunk-W7CXK74K.js";import{p as S}from"./chunk-DYGHBZ2N.js";import{a as b}from"./chunk-OSSESPDX.js";import{d as u,e as f,h as m,p,q as g}from"./chunk-N2ZSIIGR.js";import{h as d}from"./chunk-FESCRNVV.js";function q(e,t,i={}){let n=T(e,t,i);return{definitions:n.definitions,referencedBy:n.referencedBy.map(r=>({relativePath:r.relativePath,line:r.line,enclosingSymbol:r.enclosingSymbol,enclosingShort:r.enclosingShort}))}}function T(e,t,i={}){let n=R(e,t,i);return{definitions:n.definitions,referencedBy:n.referencedBy}}function R(e,t,i={}){let n=b(e,t);if(!n)return{definitions:[],referencedBy:[],referenceEvidence:[],claimSupport:null};let r=e.get("SELECT display_name, documentation FROM global_symbols WHERE id = ?",n.symbolId),c=g(r?.documentation??null),o=e.isIgnored(n.relativePath)?[]:[{relativePath:n.relativePath,startLine:n.startLine,endLine:n.endLine,signature:K(c,r?.display_name??null,n.symbol),source:B(e,n.relativePath,n.startLine,n.endLine)}],h=i.referenceContext??2,s=S(e,n,{semantic:i.semantic,semanticEvidence:v}).map(l=>{let a=y(e,l.file,l.line,h,f(n.symbol));return{relativePath:l.file,line:l.line,enclosingSymbol:l.enclosingSymbol,enclosingShort:l.enclosingSymbol?u(l.enclosingSymbol):"(top-level)",provenance:l.provenance,sourceStartLine:a?.startLine??null,sourceEndLine:a?.endLine??null,source:a?.source??null,sourceKind:a?.kind??"unavailable"}}),E=s.map(x);return{definitions:o,referencedBy:E,referenceEvidence:s.map(l=>({relativePath:l.relativePath,line:l.line,provenance:l.provenance,sourceKind:l.sourceKind})),claimSupport:P(s)}}function x(e){return{relativePath:e.relativePath,line:e.line,enclosingSymbol:e.enclosingSymbol,enclosingShort:e.enclosingShort,sourceStartLine:e.sourceStartLine,sourceEndLine:e.sourceEndLine,source:e.source}}function P(e){let t="resolved source-attributed or SCIP-indexed references to this exact symbol",i=["Dynamic dispatch, reflection, generated calls, and unindexed source are outside this scope."],n=e.filter(c=>c.sourceKind!=="complete-call-expression"&&c.sourceKind!=="non-call-reference"),r="direct, statically visible call expressions among the resolved reference sites";return{referenceAbsence:{status:"eligible",scope:t,limitations:i},callsitePredicates:n.length===0?{status:"eligible",scope:r,limitations:i}:{status:"ineligible",scope:r,reason:`${n.length} reference site(s) lack one unambiguous complete call expression.`,followup:L(n)}}}function L(e){let t=[...new Set(e.map(i=>`${i.relativePath}:${i.line+1}`))];return t.length===0||t.length>24?null:`scip-query inspect ${t.map(i=>`--at ${C(i)}`).join(" ")} --view behavior`}function C(e){return`'${e.replaceAll("'","'\\''")}'`}function B(e,t,i,n){let r=d(e,t);if(!r)return null;let o=r.split(`
2
- `).slice(i,n+1).join(`
3
- `).trimEnd();return o.length>0?o:null}function K(e,t,i){let n=p(e);if(n&&!A(n))return n;let r=(t??"").trim();return r?m(i)&&!r.endsWith("()")?`${r}()`:r:u(i)}function A(e){return e.startsWith("undefined")||e.includes("|")||e.includes("```")}export{q as a,T as b,R as c};
4
- //# sourceMappingURL=chunk-2R3V3PSD.js.map
@@ -1,4 +0,0 @@
1
- import{a as L}from"./chunk-BGBBVSH4.js";import{d as ke}from"./chunk-MV3CDXPI.js";import{a as T}from"./chunk-WYCTJDVR.js";import{b}from"./chunk-FRUSVINH.js";import{b as ge,d as be,e as Se,f as ye,g as he,h as Re,i as G,j as xe,m as K}from"./chunk-YEN6CYC7.js";import{a as me}from"./chunk-WRQXLNYE.js";import{b as F}from"./chunk-2GRUZAQF.js";import{c as oe}from"./chunk-BJT7LSPK.js";import{G as se,H as P,J as ae,N as ce,T as E,U as fe,V as de,W as pe,X as B,i as ne,l as re,m as I,p as R,q as ie}from"./chunk-3L2ZBPEX.js";import{a as h}from"./chunk-YXPUP5G2.js";import{d as k,f as V,g as $,i as le,j as ue}from"./chunk-DRENNWRG.js";import{a as Pe}from"./chunk-DHEQMPLW.js";import{d as m}from"./chunk-IW5XQG5G.js";import{e as z}from"./chunk-HGFDYOVB.js";import{$ as ee,_ as w,aa as te,o as x}from"./chunk-KYSDI3GE.js";import{existsSync as A,readdirSync as Me}from"fs";import{join as D}from"path";var tt={files:new Set,pathPrefixes:[]};var X=/^(?:dist|build|lib|out|output|esm|cjs|umd)\//,nt=/\.(?:d\.ts|d\.mts|d\.cts|ts|tsx|mts|cts|js|jsx|mjs|cjs)$/,De=[".ts",".tsx",".mts",".cts",".js",".jsx",".mjs",".cjs"],rt=new Set([".git",".next",".turbo","build","coverage","dist","node_modules","out"]),it=4,st=m("package-surface",{clearGroups:["whole-project"]}),mn=m("package-operational-surface",{clearGroups:["whole-project"]});function ve(t){return st.get(t,()=>ot(t.config.projectRoot))}function q(t,e){let n=ve(t);return n.files.has(e)?!0:n.pathPrefixes.some(r=>e.startsWith(r))}function Ce(t,e){return ve(t).files.has(e)}function ot(t){let e=new Set,n=[];for(let{manifest:r,packageRoot:i}of at(t))for(let s of ct(r))lt(t,i,s,e,n);return e.size===0&&n.length===0?tt:{files:e,pathPrefixes:n}}function at(t){let e=[],n=Ie(t,"");return n&&e.push({manifest:n,packageRoot:""}),we(t,"",e,0),e}function we(t,e,n,r){if(r>=it)return;let i=D(t,e);if(A(i))for(let s of Me(i,{withFileTypes:!0})){if(!s.isDirectory()||rt.has(s.name))continue;let o=e?`${e}/${s.name}`:s.name,a=Ie(t,o);a&&n.push({manifest:a,packageRoot:o}),we(t,o,n,r+1)}}function Ie(t,e){let n;try{n=w(t,D(e,"package.json"),{maxBytes:8*1024*1024,inputKind:"package manifest"})}catch(r){if(!ee(r))throw r;return null}try{let r=JSON.parse(n);return r&&typeof r=="object"?r:null}catch{return null}}function ct(t){let e=[];for(let r of["main","module","types","browser"])typeof t[r]=="string"&&e.push(t[r]);let n=t.bin;if(typeof n=="string")e.push(n);else if(n&&typeof n=="object")for(let r of Object.values(n))typeof r=="string"&&e.push(r);return Fe(t.exports,e),e}function Fe(t,e){if(typeof t=="string"){e.push(t);return}if(!(!t||typeof t!="object"))for(let n of Object.values(t))Fe(n,e)}function lt(t,e,n,r,i){let s=n.replace(/\\/g,"/").replace(/^\.\//,"");if(s===""||s.startsWith(".."))return;let o=s.indexOf("*");if(o>=0){let l=s.slice(0,o);for(let u of Ee(l))u!==""&&i.push(S(e,u));return}let a=s.replace(nt,"");for(let l of Ee(a)){l===a&&l===s&&r.add(S(e,s));for(let u of De)ut(t,r,e,l+u)}r.add(S(e,s))}function Ee(t){let e=[t];return X.test(t)&&(e.push(t.replace(X,"src/")),e.push(t.replace(X,""))),e}function ut(t,e,n,r){let i=S(n,r);if(e.add(i),!r.startsWith("src/")||A(D(t,i)))return;let s=De.find(c=>r.endsWith(c));if(!s)return;let o=r.slice(0,-s.length);ft(t,e,n,o,s);let a=o.lastIndexOf("/");if(a<=4)return;let l=o.slice(0,a),u=o.slice(a+1);for(let c of Le(t,n,l,`${u}${s}`))e.add(c)}function ft(t,e,n,r,i){let s=S(n,`${r}/index${i}`);A(D(t,s))&&e.add(s)}function Le(t,e,n,r){let i=D(t,e,n);if(!A(i))return[];let s=[];for(let o of Me(i,{withFileTypes:!0})){let a=`${n}/${o.name}`;o.isDirectory()?s.push(...Le(t,e,a,r)):o.isFile()&&o.name===r&&s.push(S(e,a))}return s}function S(t,e){return t?`${t}/${e}`:e}import{existsSync as U,readdirSync as dt}from"fs";import{dirname as pt,join as W}from"path";var mt={rootFiles:new Set,sourcePrefixes:[]},gt=new Set([".git",".scipquery","node_modules","target"]),bt=6,St=m("rust-library-surface",{clearGroups:["whole-project"]});function Te(t,e,n){if(!n.endsWith(".rs")||!Rt(yt(t),n))return!1;let r=E(t,n).find(i=>i.symbol===e);return r?xt(re(t,n)[r.startLine]??""):!1}function yt(t){return St.get(t,()=>ht(t.config.projectRoot))}function ht(t){let e=new Set,n=new Set;for(let r of Pt(t)){let i=w(t,W(r,"Cargo.toml"),{maxBytes:8388608,inputKind:"Cargo manifest"}),s=kt(i),o=S(r,"src/lib.rs"),a=s?S(r,s):!Et(i)&&te(t,o)?o:null;if(!a)continue;e.add(a);let l=pt(a).replaceAll("\\","/");n.add(l==="."?"":`${l}/`)}return e.size===0?mt:{rootFiles:e,sourcePrefixes:[...n].sort()}}function Rt(t,e){return e.endsWith(".rs")?t.rootFiles.has(e)?!0:Mt(e)?!1:t.sourcePrefixes.some(n=>e.startsWith(n)):!1}function xt(t){return/^\s*pub\s+(?!\()/.test(t)}function Pt(t){if(!U(t))return[];let e=[];return Ae(t,"",e,0),e}function Ae(t,e,n,r){let i=W(t,e);if(U(i)&&(U(W(i,"Cargo.toml"))&&n.push(e),!(r>=bt)))for(let s of dt(i,{withFileTypes:!0})){if(!s.isDirectory()||gt.has(s.name))continue;let o=e?`${e}/${s.name}`:s.name;Ae(t,o,n,r+1)}}function kt(t){let e=!1;for(let n of t.split(`
2
- `)){let r=n.replace(/\s+#.*$/,"").trim(),i=/^\[([^\]]+)\]$/.exec(r);if(i){e=i[1]==="lib";continue}if(!e)continue;let s=/^path\s*=\s*["']([^"']+)["']/.exec(r)?.[1];if(s)return s.replaceAll("\\","/").replace(/^\.\//,"")}return null}function Et(t){let e=!1;for(let n of t.split(`
3
- `)){let r=n.replace(/\s+#.*$/,"").trim(),i=/^\[([^\]]+)\]$/.exec(r);if(i){e=i[1]==="package";continue}if(e&&/^autolib\s*=\s*false\b/.test(r))return!0}return!1}function Mt(t){return/(?:^|\/)src\/main\.rs$/.test(t)||/(?:^|\/)src\/bin\//.test(t)||/(?:^|\/)(?:examples|tests|benches)\//.test(t)}function Dt(t){return vt.get(t,()=>{let n=h(t,{includeIgnored:!1}).filter(o=>{let a=b(o);return a==="entry"||a==="worker"});if(n.length===0)return new Set;let r=F(t),i=new Set,s=new Set;for(;n.length>0;){let o=n.shift();if(!i.has(o)){i.add(o),b(o)==="barrel"&&s.add(o);for(let a of r.get(o)??[])i.has(a)||n.push(a)}}return s})}var vt=m("live-barrels",{clearGroups:["whole-project"]});function Ct(t,e){return Dt(t).has(x(e))}function Ne(t,e){let n=x(e),r=b(e);return r==="entry"||r==="worker"||Ut(n)||Ct(t,n)}function wt(t,e,n){let r=x(n),i=[];q(t,r)&&i.push("package-surface-file"),Lt(t,e,r)&&i.push("transitive-package-surface"),Te(t,e,r)&&i.push("rust-public-library"),qt(e,r)&&i.push("framework-entrypoint");let s=t.config.entryRoots;return s&&(s.files?.some(o=>x(o)===r)&&i.push("configured-file"),s.pathPrefixes?.some(o=>r.startsWith(x(o)))&&i.push("configured-path-prefix"),s.qualifiedVars?.some(o=>Ht(e,o))&&i.push("configured-qualified-var"),s.symbolPatterns?.some(o=>{try{return Pe(o,"entryRoots.symbolPatterns entry").test(e)}catch{return!1}})&&i.push("configured-symbol-pattern")),i}function je(t,e,n){return wt(t,e,n).length>0}var It=m("package-surface-reachability",{clearGroups:["whole-project"]}),Ft=m("explicit-package-surface-reachability",{clearGroups:["whole-project"]});function Lt(t,e,n){let r=Tt(t).get(n);return r===void 0?!1:r===null||r.has(k(e))}function _n(t,e,n){let r=At(t).get(n);return r===void 0?!1:r===null||r.has(k(e))}function Tt(t){return It.get(t,()=>Oe(t,e=>q(t,e)))}function At(t){return Ft.get(t,()=>Oe(t,e=>Ce(t,e)))}function Oe(t,e){let n=new Map,r=[];for(let i of h(t,{includeIgnored:!1}))e(i)&&(n.set(i,null),r.push(i));for(;r.length>0;){let i=r.shift(),s=n.get(i);if(s!==void 0)for(let o of ae(t,i)){if(!o.sourcePath||t.isIgnored(o.sourcePath))continue;let a=_t(s,o);a!==void 0&&Nt(n,o.sourcePath,a)&&r.push(o.sourcePath)}}return n}function _t(t,e){if(t===null)return e.kind==="named"?new Set(e.names):null;if(e.kind==="star")return new Set(t);if(e.kind==="star-as")return e.names.some(r=>t.has(r))?null:void 0;let n=e.names.filter(r=>t.has(r));return n.length>0?new Set(n):void 0}function Nt(t,e,n){if(!t.has(e))return t.set(e,n),!0;let r=t.get(e);if(r===void 0)return!1;if(r===null||n===null)return r===null?!1:(t.set(e,null),!0);let i=!1;for(let s of n)r.has(s)||(r.add(s),i=!0);return i}var Ve=new Set(["GET","POST","PUT","PATCH","DELETE","HEAD","OPTIONS"]),jt=new Set(["default","generateMetadata","generateStaticParams"]),Ot=new Set(["default","getStaticProps","getServerSideProps","getStaticPaths","config"]),Vt=new Set(["default","middleware","config"]),$t=new Set(["register","onRequestError"]),Bt=new Set(["onRouterTransitionStart"]),Gt=new Set(["default","loader","action","clientLoader","clientAction","headers","links","meta","shouldRevalidate","ErrorBoundary","HydrateFallback"]),Kt=new Set(["load","actions","entries",...Ve]),Xt=new Set(["default"]);function qt(t,e){let n=k(t);return n===""?!1:$e(e)?Ve.has(n):Be(e)?jt.has(n):Ge(e)?Ot.has(n):Ke(e)?Vt.has(n):Xe(e)?$t.has(n):qe(e)?Bt.has(n):Ue(e)?Gt.has(n):We(e)?Kt.has(n):Wt(e)?Xt.has(n):!1}function Ut(t){return $e(t)||Be(t)||Ge(t)||Ke(t)||Xe(t)||qe(t)||Ue(t)||We(t)}function $e(t){return/(?:^|\/)app(?:\/[^/]+)*\/route\.(?:ts|tsx|js|jsx|mjs|cjs)$/.test(t)}function Be(t){return/(?:^|\/)app(?:\/[^/]+)*\/(?:page|layout|template|loading|error|not-found|global-error|head|default)\.(?:ts|tsx|js|jsx|mjs|cjs)$/.test(t)}function Ge(t){return/(?:^|\/)pages\/.+\.(?:ts|tsx|js|jsx|mjs|cjs)$/.test(t)}function Ke(t){return H(t,"(?:middleware|proxy)\\.(?:ts|js|mts|mjs)")}function Xe(t){return H(t,"instrumentation\\.(?:ts|js|mts|mjs)")}function qe(t){return H(t,"instrumentation-client\\.(?:ts|js|mts|mjs)")}function H(t,e){return new RegExp(`^(?:src/)?${e}$`).test(t)||new RegExp(`(?:^|/)src/${e}$`).test(t)||new RegExp(`(?:^|/)(?:apps|services|packages)/[^/]+/(?:src/)?${e}$`).test(t)}function Ue(t){return/(?:^|\/)app\/routes\/.+\.(?:ts|tsx|js|jsx|mjs|cjs)$/.test(t)}function We(t){return/(?:^|\/)src\/routes\/(?:.*\/)?\+(?:page|page\.server|layout|layout\.server|server)\.(?:ts|js)$/.test(t)}function Wt(t){return/(?:^|\/)src\/(?:pages|views|routes)\/.+\.(?:ts|tsx|js|jsx|vue)$/.test(t)}function Ht(t,e){let n=e.lastIndexOf("/");if(n<0)return!1;let r=e.slice(0,n),i=e.slice(n+1);return t.includes(_e(r)+"/")&&t.includes(_e(i)+".")}function _e(t){return/^[A-Za-z0-9_$+-]+$/.test(t)?t:"`"+t.replace(/`/g,"``")+"`"}function Y(t,e,n={}){let r=new Map;if(e&&e.length===0)return r;let i=h(t,{includeIgnored:!1}),s=ye(t),o=e??fe(t),a=new Set(o.map(u=>u.symbolId)),l=tn(o);return Yt(t,r,i,s,a,l),Zt(t,r,o,a),en(t,r,i,s,a,l),n.semantic!==!1&&n.semanticEvidence&&rn(r,n.semanticEvidence.callerMap(t,nn(o))),r}function Yt(t,e,n,r,i,s){for(let o of n){if(!R(o))continue;let a=se(t,o);if(a)for(let l of a){if(s&&!s.has(l.calleeLeaf))continue;let u=be(o,r.get(l.calleeLeaf)??[]);if(!u||u.length===0)continue;let c=Se(t,o,u,l.memberAccess,l.calleeQualifier);c&&i.has(c.symbolId)&&c.file!==o&&Z(e,c.symbolId,o)}}}function Zt(t,e,n,r){let i=Qt(n);for(let s of Jt(t,r))t.isIgnored(s.relative_path)||zt(s,i.get(s.symbol_id))||Z(e,s.symbol_id,s.relative_path)}function Jt(t,e){return me(t,e?[...e]:void 0)}function Qt(t){let e=new Map;for(let n of t)e.set(n.symbolId,{docId:n.documentId,startLine:n.startLine,endLine:n.endLine});return e}function zt(t,e){return!!e&&e.docId===t.document_id&&t.chunk_start>=e.startLine&&t.chunk_end<=e.endLine}function en(t,e,n,r,i,s){for(let o of n){if(R(o)!=="rust")continue;let a=P(t,o,{includeRustAttributeNames:!0});if(a.length!==0)for(let{name:l}of a){if(s&&!s.has(l))continue;let u=r.get(l);if(u)for(let c of u)i.has(c.symbolId)&&c.file!==o&&Z(e,c.symbolId,o)}}}function Z(t,e,n){let r=t.get(e);r||(r=new Set,t.set(e,r)),r.add(n)}function tn(t){let e=new Set;for(let n of t){let r="leaf"in n&&typeof n.leaf=="string"?n.leaf:"symbol"in n&&typeof n.symbol=="string"?k(n.symbol):"";r&&e.add(r)}return e.size>0?e:null}function nn(t){return t.filter(e=>"relativePath"in e&&"symbol"in e&&"leaf"in e)}function rn(t,e){for(let[n,r]of e){let i=t.get(n);i||(i=new Set,t.set(n,i));for(let s of r)i.add(s)}}var sn=m("cross-file-caller-files",{clearGroups:["whole-project","source-file"]}),on=m("source-fallback-caller-files",{clearGroups:["whole-project","source-file"]});function He(t,e,n){let r=e.filter(s=>!t.has(s.symbolId));if(r.length>0){let s=n(r);for(let o of r)t.set(o.symbolId,s.get(o.symbolId)??new Set)}let i=new Map;for(let s of e){let o=t.get(s.symbolId);o&&o.size>0&&i.set(s.symbolId,new Set(o))}return i}function J(t,e,n={}){if(e===void 0)return Y(t,e,n);let r=He(sn.get(t,()=>new Map),e,i=>Y(t,i,{semantic:!1}));return n.semantic===!1||!n.semanticEvidence?r:Ze(r,n.semanticEvidence.callerMap(t,e.filter(i=>"relativePath"in i&&"symbol"in i&&"leaf"in i)))}function Q(t,e,n={}){return n.skipPath?K(t,e,n):He(on.get(t,()=>new Map),e,r=>K(t,r))}function Ye(t,e,n={}){let r=J(t,e,{semantic:n.semantic,semanticEvidence:n.semanticEvidence});return n.sourceFallback===!1?r:Ze(r,Q(t,e))}function Ze(t,e){let n=new Map;for(let[r,i]of t)n.set(r,new Set(i));for(let[r,i]of e){let s=n.get(r)??new Set;for(let o of i)s.add(o);n.set(r,s)}return n}function Je(t,e,n){let r=e.identifierResolution==="strict"?G:xe,i=e.candidateNames?he(e.candidateNames):null,s=0,o=0,a=0,l=0,u="";for(let c of e.paths)if(s+=1,u=c,!(!R(c)&&!(e.includeVueSfc&&ie(c)))&&!t.isIgnored(c)&&!e.skipPath?.(c))try{if(i&&!Re(ne(t,c),i))continue;o+=1;let v=(d,g,j,M)=>{if(e.candidateNames&&!e.candidateNames.has(d))return;a+=1;let C=e.resolveTargets?e.resolveTargets({sourceFile:c,name:d,kind:g,defaultTargets:M}):M();for(let O of C)l+=1,n({sourceFile:c,name:d,target:O,occurrences:j,kind:g})},N=ge(t,c);for(let[d,g]of N)v(d,"identifier",g.length,()=>r(t,c,d));for(let d of P(t,c,{includeCrossLanguageDispatchNames:e.includeCrossLanguageDispatchNames,includeRustAttributeNames:e.includeRustAttributeNames})){let g=d.kind==="cross-language-dispatch"?()=>G(t,c,d.name):()=>r(t,c,d.name);v(d.name,d.kind,d.occurrences,g)}}finally{e.afterPath?.(c),s%10===0&&z("source-reference-scan.progress",()=>{},()=>({scannedPaths:s,currentPath:u,candidateMatchedPaths:o,visitedNames:a,visitedHits:l}))}}function Qe(t,e={}){let{scope:n,files:r,minLoc:i=1,maxLoc:s=Number.POSITIVE_INFINITY,excludeSymbol:o,excludeEntrySurfaces:a=!1,excludeTypesFiles:l=!1,excludeRootedSymbols:u=!1,requireFunctionLikeSymbol:c=!1,requireCallableSymbol:_=!1,excludeRustTraitImplMembers:v=!1,includeSuppressed:N=!1,sortByLocDesc:d=!1}=e,g=[],j=an(t,{scope:n,files:r,requireFunctionLikeSymbol:c,requireCallableSymbol:_}),M=new Map,C=new Map,O=f=>{let p=M.get(f);if(p!==void 0)return p;let y=Ne(t,f);return M.set(f,y),y},et=f=>{let p=C.get(f);if(p!==void 0)return p;let y=b(f);return C.set(f,y),y};for(let f of j){let p=f.relativePath;if(t.isIgnored(p)||a&&O(p)||!cn(f,{requireFunctionLikeSymbol:c,requireCallableSymbol:_})||o!==void 0&&f.symbol===o)continue;let y=L(f);y<i||y>s||l&&ln(p)||u&&je(t,f.symbol,p)||v&&le(f.symbol)||et(p)!=="test"&&(ue(f.symbol)||!N&&I(t,p,f.startLine)||g.push(f))}return d?g.sort((f,p)=>L(p)-L(f)):g}function an(t,e){return e.files!==void 0?[...new Set(e.files.map(r=>r.replace(/\\/g,"/")))].sort().filter(r=>!e.scope||r.includes(e.scope)).flatMap(r=>E(t,r)):e.requireCallableSymbol?B(t,{scope:e.scope,symbolMatches:V,sqlPrefilter:"callable"}):e.requireFunctionLikeSymbol?B(t,{scope:e.scope,symbolMatches:$,sqlPrefilter:"function-like"}):pe(t,e.scope)}function cn(t,e){return e.requireCallableSymbol?V(t.symbol):e.requireFunctionLikeSymbol?$(t.symbol):t.isFunctionLike}function ln(t){return(t.split("/").pop()??"").includes("types")}var ze=class{constructor(e){this.db=e}db;scopedDefinitions(e){return de(this.db,e)}definitionsForFile(e){return E(this.db,e)}productionCallableDefinitions(e={}){return Qe(this.db,e)}calleeMap(e,n={}){return ke(this.db,e,{...n,semanticEvidence:T})}crossFileCallerMap(e,n={}){return J(this.db,e,{...n,semanticEvidence:T})}sourceFallbackCallerFiles(e,n={}){return Q(this.db,e,n)}callerFileMap(e,n={}){return Ye(this.db,e,{...n,semanticEvidence:T})}frameworkReferencedSymbolIds(e){let n=new Map;for(let i of e){if(!i.leaf)continue;let s=n.get(i.leaf)??[];s.push(i.symbolId),n.set(i.leaf,s)}let r=new Set;for(let i of h(this.db,{includeIgnored:!1}))if(R(i)==="rust")for(let{name:s}of P(this.db,i,{includeRustAttributeNames:!0}))for(let o of n.get(s)??[])r.add(o);return r}symbolsWithNonSelfCallees(e,n={}){if(e.length===0)return new Set;let r=new Map(e.map(s=>[s.symbolId,s.symbol])),i=this.calleeMap(e,n);return new Set([...i.entries()].filter(([s,o])=>{let a=r.get(s);return o.some(l=>l.symbol!==a)}).map(([s])=>s))}fileDependencyGraph(e){return F(this.db,e)}fileKind(e){return b(e)}hasSuppressionComment(e){return I(this.db,e.relativePath,e.startLine)}sourceFiles(){return oe(this.db)}scanSourceReferences(e,n){Je(this.db,e,n)}callableSignature(e){let n=ce(this.db).forFile(e.relativePath,{facts:!0}).facts?.callables.find(r=>r.startLine===e.startLine&&r.endLine===e.endLine);return n?{paramCount:n.paramCount}:null}};export{Ne as a,wt as b,_n as c,Qe as d,ze as e};
4
- //# sourceMappingURL=chunk-2WC2OEDO.js.map