scip-query 0.17.2 → 0.19.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 (300) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/README.md +3 -1
  3. package/dist/augment-vue-worker.js +1 -1
  4. package/dist/{chunk-ATC4MEVA.js → chunk-2FAJTZSX.js} +2 -2
  5. package/dist/{chunk-W7FNZKX5.js → chunk-2ZNZSNVW.js} +2 -2
  6. package/dist/chunk-35NLDRZC.js +2 -0
  7. package/dist/{chunk-PQD7P6WB.js → chunk-3KQOIXLO.js} +2 -2
  8. package/dist/{chunk-VCRMI56V.js → chunk-3OSRXJKK.js} +2 -2
  9. package/dist/chunk-42QYU6FD.js +3 -0
  10. package/dist/{chunk-BEGHYHOQ.js → chunk-4ZCNFENR.js} +2 -2
  11. package/dist/{chunk-O7NA5FCA.js → chunk-4ZHJAHLE.js} +2 -2
  12. package/dist/chunk-547VY366.js +18 -0
  13. package/dist/{chunk-NX2YAXVQ.js → chunk-54UYBTZW.js} +2 -2
  14. package/dist/{chunk-7ROLM67J.js → chunk-6DHPQS72.js} +2 -2
  15. package/dist/chunk-6SHX42QQ.js +6 -0
  16. package/dist/{chunk-FVLZB54V.js → chunk-7EI4MU5A.js} +2 -2
  17. package/dist/{chunk-J7IMQRCU.js → chunk-7FG5M53V.js} +2 -2
  18. package/dist/chunk-A45K6VUK.js +2 -0
  19. package/dist/{chunk-SXDXR5FH.js → chunk-AEDB4WXE.js} +2 -2
  20. package/dist/{chunk-O5A7BTMA.js → chunk-AERYQJ52.js} +2 -2
  21. package/dist/chunk-AM2LGOEX.js +3 -0
  22. package/dist/{chunk-P6FOIU7O.js → chunk-AWSRND4W.js} +2 -2
  23. package/dist/{chunk-5GAUXLOE.js → chunk-BOXAKNN6.js} +2 -2
  24. package/dist/{chunk-IKMOYFUM.js → chunk-BYPVNKJT.js} +2 -2
  25. package/dist/chunk-DQIJMKNE.js +3 -0
  26. package/dist/{chunk-K65T4TJS.js → chunk-DV6B262O.js} +2 -2
  27. package/dist/chunk-DWN7QDTV.js +26 -0
  28. package/dist/{chunk-G6DDSHMD.js → chunk-EZGT3NJX.js} +2 -2
  29. package/dist/{chunk-MFIA6EIT.js → chunk-EZHARAL4.js} +2 -2
  30. package/dist/chunk-F334Z5UA.js +38 -0
  31. package/dist/{chunk-2A7LUMZP.js → chunk-F5L7WEZF.js} +2 -2
  32. package/dist/{chunk-5CJ6AQN7.js → chunk-FLIF3JWA.js} +2 -2
  33. package/dist/chunk-FMC3BI4I.js +2 -0
  34. package/dist/{chunk-YMFHC5J2.js → chunk-G6QQCX45.js} +2 -2
  35. package/dist/{chunk-Q4GKL4CC.js → chunk-G6RQVDTI.js} +2 -2
  36. package/dist/chunk-GBB2RUDN.js +927 -0
  37. package/dist/{chunk-LL5NQB5V.js → chunk-GJ3FR5WG.js} +2 -2
  38. package/dist/chunk-GMZYT44R.js +5 -0
  39. package/dist/{chunk-OQFPCIXO.js → chunk-GNJHHPZE.js} +2 -2
  40. package/dist/chunk-HOXI4F5I.js +4 -0
  41. package/dist/{chunk-4QBRVI7D.js → chunk-IWK562KR.js} +2 -2
  42. package/dist/chunk-IXORBCMR.js +120 -0
  43. package/dist/chunk-J3U47L4Q.js +2 -0
  44. package/dist/{chunk-K4XL4HOK.js → chunk-J65FQLDL.js} +2 -2
  45. package/dist/{chunk-45QWQSWS.js → chunk-J6BR4MD6.js} +2 -2
  46. package/dist/{chunk-J7WYG63U.js → chunk-JFGUBZWE.js} +2 -2
  47. package/dist/{chunk-BPMBOZAN.js → chunk-KD6TPIXM.js} +2 -2
  48. package/dist/{chunk-3M2UCPFS.js → chunk-KHE7J5ZN.js} +1 -1
  49. package/dist/{chunk-IG6X65MG.js → chunk-KWBA6FDD.js} +2 -2
  50. package/dist/{chunk-KA7RMBVU.js → chunk-LJD7V7UO.js} +2 -2
  51. package/dist/{chunk-ROMKXEUM.js → chunk-MDDF67O2.js} +2 -2
  52. package/dist/{chunk-S22ICAWV.js → chunk-MFBXBLHA.js} +2 -2
  53. package/dist/{chunk-A2GX3PYV.js → chunk-MTFHE7ZO.js} +2 -2
  54. package/dist/chunk-NEG77KKH.js +4 -0
  55. package/dist/{chunk-WA64GKWB.js → chunk-NH7WNNQC.js} +3 -3
  56. package/dist/{chunk-K3UVTL3J.js → chunk-OGHGTD6Z.js} +2 -2
  57. package/dist/chunk-OYYZLJVT.js +2 -0
  58. package/dist/{chunk-DJI446FQ.js → chunk-PAZFJMXB.js} +2 -2
  59. package/dist/{chunk-U244OVE6.js → chunk-PBADFBRR.js} +2 -2
  60. package/dist/{chunk-UWR52GNZ.js → chunk-PKAPOFF5.js} +2 -2
  61. package/dist/{chunk-APCXCRED.js → chunk-PXJIEMND.js} +2 -2
  62. package/dist/{chunk-NJD4C5G5.js → chunk-QB5WSOTY.js} +2 -2
  63. package/dist/{chunk-AY44MGWS.js → chunk-QHOUNTDZ.js} +2 -2
  64. package/dist/chunk-QN67MWDU.js +2 -0
  65. package/dist/{chunk-JLZUM476.js → chunk-QNMOZ3CJ.js} +2 -2
  66. package/dist/{chunk-AWYKDRYV.js → chunk-RIGY5DDE.js} +2 -2
  67. package/dist/chunk-RJLU7IMR.js +10 -0
  68. package/dist/{chunk-N3JH45WR.js → chunk-S65OEY2G.js} +2 -2
  69. package/dist/chunk-SATRCB5O.js +20 -0
  70. package/dist/chunk-T5CSWYAZ.js +2 -0
  71. package/dist/{chunk-H4T2AST4.js → chunk-TC3X33N6.js} +2 -2
  72. package/dist/{chunk-3CJXFMR5.js → chunk-TCVRJ56J.js} +2 -2
  73. package/dist/{chunk-7XP7ZRSI.js → chunk-TDGCALH6.js} +2 -2
  74. package/dist/chunk-TDZXQAH7.js +2 -0
  75. package/dist/{chunk-SUYCF4SX.js → chunk-TOYQTO44.js} +2 -2
  76. package/dist/chunk-UJL3N6TC.js +5 -0
  77. package/dist/chunk-UVMME4FI.js +16 -0
  78. package/dist/{chunk-6JSTKSZH.js → chunk-UXOVHGT6.js} +2 -2
  79. package/dist/chunk-VV5WJLRO.js +67 -0
  80. package/dist/{chunk-4H7T7FIM.js → chunk-WT7TOU2C.js} +2 -2
  81. package/dist/{chunk-4FLF7BHJ.js → chunk-X36LKKVG.js} +2 -2
  82. package/dist/{chunk-C7MBQSIC.js → chunk-X3OOU7CF.js} +2 -2
  83. package/dist/chunk-X65VYV2S.js +2 -0
  84. package/dist/chunk-XBN5VO53.js +2 -0
  85. package/dist/{chunk-TLTLJ4SW.js → chunk-XDSB47KO.js} +2 -2
  86. package/dist/{chunk-4L4X66GE.js → chunk-XDVT7QPG.js} +2 -2
  87. package/dist/chunk-XESK6725.js +2 -0
  88. package/dist/{chunk-OQFA2SUQ.js → chunk-XPYXEEDO.js} +2 -2
  89. package/dist/{chunk-T4P27T6S.js → chunk-XTSVYYAL.js} +2 -2
  90. package/dist/{chunk-27YDE22N.js → chunk-YBAC3RON.js} +2 -2
  91. package/dist/{chunk-2DBY4MO7.js → chunk-YHYTDWFT.js} +2 -2
  92. package/dist/chunk-YYR7ADNB.js +2 -0
  93. package/dist/chunk-ZL5Y23AJ.js +3 -0
  94. package/dist/{chunk-CMLHZWRS.js → chunk-ZNSLF5AC.js} +2 -2
  95. package/dist/chunk-ZXWFN7CK.js +2 -0
  96. package/dist/cli.js +2 -2
  97. package/dist/{command-descriptors-7UUURHWT.js → command-descriptors-SWFWGIFK.js} +173 -167
  98. package/dist/{config-types-70s7NxKB.d.ts → config-types-BA3xLCfG.d.ts} +28 -1
  99. package/dist/{db-BBmJ0v3b.d.ts → db-CzA-9_rL.d.ts} +6 -18
  100. package/dist/direct-navigation-RKMPBXMI.js +3 -0
  101. package/dist/{health-CWpFL_6z.d.ts → health-DYy13GAe.d.ts} +3 -1
  102. package/dist/index.d.ts +23 -41
  103. package/dist/index.js +1 -1
  104. package/dist/postinstall.js +1 -1
  105. package/dist/queries/affected.d.ts +2 -2
  106. package/dist/queries/affected.js +1 -1
  107. package/dist/queries/architecture.d.ts +83 -0
  108. package/dist/queries/architecture.js +2 -0
  109. package/dist/queries/bottlenecks.d.ts +2 -2
  110. package/dist/queries/bottlenecks.js +1 -1
  111. package/dist/queries/by-kind.d.ts +2 -2
  112. package/dist/queries/by-kind.js +1 -1
  113. package/dist/queries/call-graph.d.ts +2 -2
  114. package/dist/queries/call-graph.js +1 -1
  115. package/dist/queries/change-surface.d.ts +2 -2
  116. package/dist/queries/change-surface.js +1 -1
  117. package/dist/queries/cleanup-plan.d.ts +2 -2
  118. package/dist/queries/cleanup-plan.js +1 -1
  119. package/dist/queries/co-change.d.ts +2 -2
  120. package/dist/queries/co-change.js +1 -1
  121. package/dist/queries/code.d.ts +2 -2
  122. package/dist/queries/code.js +1 -1
  123. package/dist/queries/complexity-hotspots.d.ts +2 -2
  124. package/dist/queries/complexity-hotspots.js +1 -1
  125. package/dist/queries/complexity.d.ts +2 -2
  126. package/dist/queries/complexity.js +1 -1
  127. package/dist/queries/convergence.d.ts +2 -2
  128. package/dist/queries/convergence.js +1 -1
  129. package/dist/queries/coupling.d.ts +2 -2
  130. package/dist/queries/coupling.js +1 -1
  131. package/dist/queries/cycles.d.ts +2 -2
  132. package/dist/queries/cycles.js +1 -1
  133. package/dist/queries/dataflow.d.ts +2 -2
  134. package/dist/queries/dataflow.js +1 -1
  135. package/dist/queries/dead.d.ts +2 -2
  136. package/dist/queries/dead.js +1 -1
  137. package/dist/queries/decorative-checkers.d.ts +2 -2
  138. package/dist/queries/decorative-checkers.js +1 -1
  139. package/dist/queries/deep-chains.d.ts +2 -2
  140. package/dist/queries/deep-chains.js +1 -1
  141. package/dist/queries/deps.d.ts +2 -2
  142. package/dist/queries/deps.js +1 -1
  143. package/dist/queries/diff-gate.d.ts +5 -3
  144. package/dist/queries/diff-gate.js +1 -1
  145. package/dist/queries/diff-impact.d.ts +2 -2
  146. package/dist/queries/diff-impact.js +1 -1
  147. package/dist/queries/doc-drift.d.ts +2 -2
  148. package/dist/queries/doc-drift.js +1 -1
  149. package/dist/queries/drift.d.ts +27 -10
  150. package/dist/queries/drift.js +1 -1
  151. package/dist/queries/duplicate-bodies.d.ts +2 -2
  152. package/dist/queries/duplicate-bodies.js +1 -1
  153. package/dist/queries/extract-candidates.d.ts +2 -2
  154. package/dist/queries/extract-candidates.js +1 -1
  155. package/dist/queries/fan.d.ts +2 -2
  156. package/dist/queries/fan.js +1 -1
  157. package/dist/queries/files.d.ts +2 -2
  158. package/dist/queries/health.d.ts +3 -3
  159. package/dist/queries/health.js +1 -1
  160. package/dist/queries/hierarchy.d.ts +2 -2
  161. package/dist/queries/hierarchy.js +1 -1
  162. package/dist/queries/hotspots.d.ts +2 -2
  163. package/dist/queries/hotspots.js +1 -1
  164. package/dist/queries/imports.d.ts +2 -2
  165. package/dist/queries/imports.js +1 -1
  166. package/dist/queries/incomplete-migration.d.ts +2 -2
  167. package/dist/queries/incomplete-migration.js +1 -1
  168. package/dist/queries/index.d.ts +5 -4
  169. package/dist/queries/index.js +1 -1
  170. package/dist/queries/isolated.d.ts +2 -2
  171. package/dist/queries/isolated.js +1 -1
  172. package/dist/queries/locality-candidates.d.ts +2 -2
  173. package/dist/queries/locality-candidates.js +1 -1
  174. package/dist/queries/members.d.ts +2 -2
  175. package/dist/queries/members.js +1 -1
  176. package/dist/queries/methods.d.ts +2 -2
  177. package/dist/queries/methods.js +1 -1
  178. package/dist/queries/not-implemented.d.ts +2 -2
  179. package/dist/queries/not-implemented.js +1 -1
  180. package/dist/queries/outline.d.ts +2 -2
  181. package/dist/queries/outline.js +1 -1
  182. package/dist/queries/passthrough-candidates.d.ts +2 -2
  183. package/dist/queries/passthrough-candidates.js +1 -1
  184. package/dist/queries/plan-context.d.ts +2 -2
  185. package/dist/queries/plan-context.js +1 -1
  186. package/dist/queries/react-component-duplicates.d.ts +2 -2
  187. package/dist/queries/react-component-duplicates.js +1 -1
  188. package/dist/queries/react-hook-candidates.d.ts +2 -2
  189. package/dist/queries/react-hook-candidates.js +1 -1
  190. package/dist/queries/react-large-component-pressure.d.ts +2 -2
  191. package/dist/queries/react-large-component-pressure.js +1 -1
  192. package/dist/queries/recent-duplicates.d.ts +2 -2
  193. package/dist/queries/recent-duplicates.js +1 -1
  194. package/dist/queries/redundant-reexports.d.ts +2 -2
  195. package/dist/queries/redundant-reexports.js +1 -1
  196. package/dist/queries/refs.d.ts +2 -2
  197. package/dist/queries/refs.js +1 -1
  198. package/dist/queries/self-audit.d.ts +2 -2
  199. package/dist/queries/self-audit.js +1 -1
  200. package/dist/queries/similar-chains.d.ts +2 -2
  201. package/dist/queries/similar-chains.js +1 -1
  202. package/dist/queries/similar-files.d.ts +2 -2
  203. package/dist/queries/similar-files.js +1 -1
  204. package/dist/queries/similar-signatures.d.ts +2 -2
  205. package/dist/queries/similar-signatures.js +1 -1
  206. package/dist/queries/similar.d.ts +2 -2
  207. package/dist/queries/similar.js +1 -1
  208. package/dist/queries/slice.d.ts +2 -2
  209. package/dist/queries/slice.js +1 -1
  210. package/dist/queries/stale-abstractions.d.ts +2 -2
  211. package/dist/queries/stale-abstractions.js +1 -1
  212. package/dist/queries/stats.d.ts +2 -2
  213. package/dist/queries/surface.d.ts +2 -2
  214. package/dist/queries/surface.js +1 -1
  215. package/dist/queries/symbols.d.ts +2 -2
  216. package/dist/queries/symbols.js +1 -1
  217. package/dist/queries/system.d.ts +2 -2
  218. package/dist/queries/system.js +1 -1
  219. package/dist/queries/test-quality.d.ts +2 -2
  220. package/dist/queries/test-quality.js +1 -1
  221. package/dist/queries/trace.d.ts +2 -2
  222. package/dist/queries/trace.js +1 -1
  223. package/dist/queries/twin-ab.d.ts +2 -2
  224. package/dist/queries/twin-ab.js +1 -1
  225. package/dist/queries/twin-drift.d.ts +2 -2
  226. package/dist/queries/twin-drift.js +1 -1
  227. package/dist/queries/unused-imports.d.ts +2 -2
  228. package/dist/queries/unused-imports.js +1 -1
  229. package/dist/queries/unused-params.d.ts +2 -2
  230. package/dist/queries/unused-params.js +1 -1
  231. package/dist/queries/vue-component-duplicates.d.ts +2 -2
  232. package/dist/queries/vue-component-duplicates.js +1 -1
  233. package/dist/queries/vue-composable-candidates.d.ts +2 -2
  234. package/dist/queries/vue-composable-candidates.js +1 -1
  235. package/dist/queries/vue-large-view-pressure.d.ts +2 -2
  236. package/dist/queries/vue-large-view-pressure.js +1 -1
  237. package/dist/queries/wrapper-candidates.d.ts +2 -2
  238. package/dist/queries/wrapper-candidates.js +1 -1
  239. package/dist/reindex-worker.js +24 -24
  240. package/dist/reindex.d.ts +12 -10
  241. package/dist/reindex.js +38 -38
  242. package/dist/runtime.d.ts +10 -9
  243. package/dist/runtime.js +2 -1
  244. package/dist/rust-semantic-session-server.js +1 -1
  245. package/dist/{scip-cli-CoMzb7Zu.d.ts → scip-cli-1bVKJgXi.d.ts} +1 -1
  246. package/dist/watch-server.js +7 -6
  247. package/docs/AI_FAILURE_MODES.md +1 -0
  248. package/docs/COMMAND_REFERENCE.md +4 -3
  249. package/docs/DETECTOR_GUIDE.md +5 -3
  250. package/docs/analyzer-inventory.md +16 -6
  251. package/docs/analyzer-validation-ledger.md +12 -1
  252. package/docs/architecture-coherence-vision.md +219 -0
  253. package/package.json +5 -1
  254. package/skills/_shared/SKILL.md +5 -4
  255. package/skills/scip-api-impact/SKILL.md +5 -1
  256. package/skills/scip-claim-audit/SKILL.md +1 -0
  257. package/skills/scip-cleanup-audit/SKILL.md +4 -0
  258. package/skills/scip-concrete-plan/SKILL.md +129 -48
  259. package/skills/scip-conductor/SKILL.md +1 -1
  260. package/skills/scip-debug/SKILL.md +6 -1
  261. package/skills/scip-directory-architecture/SKILL.md +116 -2
  262. package/skills/scip-explore/SKILL.md +2 -1
  263. package/skills/scip-integrity-audit/SKILL.md +17 -0
  264. package/skills/scip-maintainability/SKILL.md +9 -4
  265. package/skills/scip-query/SKILL.md +4 -1
  266. package/skills/scip-root-cause/SKILL.md +150 -0
  267. package/skills/scip-root-cause/agents/openai.yaml +4 -0
  268. package/skills/scip-tla-model-system/SKILL.md +7 -9
  269. package/skills/scip-twin-drift/SKILL.md +1 -1
  270. package/skills/scip-verify/SKILL.md +20 -3
  271. package/dist/chunk-6AITNECC.js +0 -928
  272. package/dist/chunk-7LERNHDG.js +0 -5
  273. package/dist/chunk-7VR5TNOI.js +0 -2
  274. package/dist/chunk-CHJ3QROR.js +0 -2
  275. package/dist/chunk-CVWX24IY.js +0 -2
  276. package/dist/chunk-ELLPMCWA.js +0 -3
  277. package/dist/chunk-IS7DZ7TB.js +0 -2
  278. package/dist/chunk-K53GNKY3.js +0 -2
  279. package/dist/chunk-KJOKTZUE.js +0 -2
  280. package/dist/chunk-KSD6IWF4.js +0 -38
  281. package/dist/chunk-LEKXKHIQ.js +0 -5
  282. package/dist/chunk-LFPQFRCX.js +0 -26
  283. package/dist/chunk-MBVHEPHQ.js +0 -16
  284. package/dist/chunk-NJTIAQY7.js +0 -3
  285. package/dist/chunk-OINSINYW.js +0 -2
  286. package/dist/chunk-QEIGJJBC.js +0 -20
  287. package/dist/chunk-RUQE7DZT.js +0 -2
  288. package/dist/chunk-RUV4KHWA.js +0 -2
  289. package/dist/chunk-SALRDXWM.js +0 -121
  290. package/dist/chunk-SMBIGBGN.js +0 -67
  291. package/dist/chunk-SON6DQNK.js +0 -7
  292. package/dist/chunk-SSGACGAD.js +0 -3
  293. package/dist/chunk-TFWDJDGO.js +0 -2
  294. package/dist/chunk-U4G4UYLB.js +0 -2
  295. package/dist/chunk-WD3PAQJT.js +0 -10
  296. package/dist/chunk-XLJORP6N.js +0 -4
  297. package/dist/chunk-XTF6ELXT.js +0 -3
  298. package/dist/chunk-YYYERNQL.js +0 -18
  299. package/dist/chunk-Z4MCFCGX.js +0 -3
  300. package/dist/direct-navigation-CVCFER5G.js +0 -3
@@ -69,6 +69,8 @@ interface ScipQueryConfig {
69
69
  declaredCouplings?: DeclaredCouplingConfig[];
70
70
  /** Optional analyzer configuration. */
71
71
  locality?: LocalityConfig;
72
+ /** Project-owned architectural boundaries and dependency rules. */
73
+ architecture?: ArchitectureConfig;
72
74
  /** Enumeration-rot contracts: a declared key set that must track a ground-truth source. */
73
75
  coverageContracts?: CoverageContractConfig[];
74
76
  /** Documentation policy (snapshot-doc exemptions, ...). */
@@ -97,6 +99,8 @@ interface ProjectConfig {
97
99
  declaredCouplings?: DeclaredCouplingConfig[];
98
100
  /** Optional locality analyzer configuration. */
99
101
  locality?: LocalityConfig;
102
+ /** Project-owned architectural boundaries and dependency rules. */
103
+ architecture?: ArchitectureConfig;
100
104
  /** Enumeration-rot contracts: a declared key set that must track a ground-truth source. */
101
105
  coverageContracts?: CoverageContractConfig[];
102
106
  /** Documentation policy (snapshot-doc exemptions, ...). */
@@ -139,6 +143,29 @@ interface LocalityConfig {
139
143
  /** Folder names that should be treated as architectural ownership boundaries. */
140
144
  architecturalBoundarySegments?: string[];
141
145
  }
146
+ interface ArchitectureBoundaryConfig {
147
+ /** Stable name used by dependency rules and reports. */
148
+ name: string;
149
+ /** Project-relative exact paths or trailing /* and /** patterns owned by this boundary. */
150
+ paths: string[];
151
+ }
152
+ interface ArchitectureConfig {
153
+ /** Named code groups whose files serve one stable responsibility. */
154
+ boundaries: ArchitectureBoundaryConfig[];
155
+ /**
156
+ * Closed outgoing dependency rows. When a boundary has a row, cross-boundary
157
+ * targets omitted from that row are forbidden. A missing row remains
158
+ * descriptive and makes no allow/deny claim.
159
+ */
160
+ allowedDependencies?: Record<string, string[]>;
161
+ /**
162
+ * Require every configured boundary to have a closed outgoing dependency
163
+ * row. This prevents an omitted row from silently weakening enforcement.
164
+ */
165
+ requireCompletePolicy?: boolean;
166
+ /** Treat every multi-boundary dependency cycle as a declared violation. */
167
+ requireAcyclic?: boolean;
168
+ }
142
169
  interface DocsConfig {
143
170
  /**
144
171
  * Glob patterns (see src/analysis/glob-match.ts for supported syntax) for
@@ -223,4 +250,4 @@ interface IndexerOverrides {
223
250
  configPath?: string;
224
251
  }
225
252
 
226
- export type { FindingSuppression as F, IndexerConfig as I, ProjectConfig as P, ScipQueryConfig as S, TypeScriptProjectMode as T, SupportedLanguage as a };
253
+ export type { ArchitectureConfig as A, FindingSuppression as F, IndexerConfig as I, ProjectConfig as P, ScipQueryConfig as S, TypeScriptProjectMode as T, SupportedLanguage as a };
@@ -1,22 +1,10 @@
1
1
  import Database from 'better-sqlite3';
2
- import { S as ScipQueryConfig } from './config-types-70s7NxKB.js';
2
+ import { S as ScipQueryConfig } from './config-types-BA3xLCfG.js';
3
3
 
4
- /**
5
- * Builds a gitignore-based path filter from .gitignore files found
6
- * in the project directory tree. This replaces hardcoded path exclusions
7
- * like "node_modules/", "dist/", "target/", "__pycache__/" — instead,
8
- * we respect whatever the project already ignores.
9
- *
10
- * Falls back to sensible defaults if no .gitignore is found.
11
- */
12
- declare function createGitignoreFilter(projectRoot: string): PathFilter;
13
- interface PathFilter {
14
- /** Returns true if this path should be excluded from results */
15
- isIgnored: (relativePath: string) => boolean;
16
- /** Filter an array of paths, keeping only non-ignored ones */
17
- filter: (paths: string[]) => string[];
4
+ /** The path-exclusion capability storage consumes from project source policy. */
5
+ interface PathExclusionPolicy {
6
+ isIgnored(relativePath: string): boolean;
18
7
  }
19
-
20
8
  /**
21
9
  * Thin wrapper around better-sqlite3 with a pre-configured connection
22
10
  * and helper methods for the SCIP SQLite schema.
@@ -36,7 +24,7 @@ declare class ScipDatabase {
36
24
  readonly config: ScipQueryConfig;
37
25
  private pathFilter;
38
26
  private statementCache;
39
- constructor(config: ScipQueryConfig, pathFilter?: PathFilter);
27
+ constructor(config: ScipQueryConfig, pathFilter?: PathExclusionPolicy);
40
28
  /** Check if a path should be excluded based on .gitignore rules */
41
29
  isIgnored(relativePath: string): boolean;
42
30
  /**
@@ -68,4 +56,4 @@ declare class ScipDatabase {
68
56
  private statement;
69
57
  }
70
58
 
71
- export { ScipDatabase as S, createGitignoreFilter as c };
59
+ export { ScipDatabase as S };
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ import{n as a}from"./chunk-MTFHE7ZO.js";import"./chunk-GBB2RUDN.js";export{a as directNavigationQueryCommandDescriptors};
3
+ //# sourceMappingURL=direct-navigation-RKMPBXMI.js.map
@@ -1,4 +1,4 @@
1
- import { S as ScipDatabase } from './db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from './db-CzA-9_rL.js';
2
2
  import { stats } from './queries/stats.js';
3
3
 
4
4
  /**
@@ -27,6 +27,8 @@ interface StaleSummary extends CountLocSummary {
27
27
  interface DriftSummary {
28
28
  count: number;
29
29
  unusedImports: number;
30
+ architectureViolations: number;
31
+ /** @deprecated Use `architectureViolations`. */
30
32
  layerViolations: number;
31
33
  direct: number;
32
34
  signal: number;
package/dist/index.d.ts CHANGED
@@ -1,7 +1,6 @@
1
- import { S as ScipDatabase } from './db-BBmJ0v3b.js';
2
- export { c as createGitignoreFilter } from './db-BBmJ0v3b.js';
3
- import { S as SymbolMatch, I as IndexedDefinition, a as ScipSymbol, b as ScipLocalSymbol } from './symbol-types-BgWU6lhL.js';
4
- export { S as ScipQueryConfig } from './config-types-70s7NxKB.js';
1
+ import { S as ScipDatabase } from './db-CzA-9_rL.js';
2
+ import { I as IndexedDefinition, S as SymbolMatch, a as ScipSymbol, b as ScipLocalSymbol } from './symbol-types-BgWU6lhL.js';
3
+ export { S as ScipQueryConfig } from './config-types-BA3xLCfG.js';
5
4
  import 'better-sqlite3';
6
5
 
7
6
  /**
@@ -32,40 +31,7 @@ interface CalleeRow {
32
31
  chunkId: number;
33
32
  source: CalleeEvidenceSource;
34
33
  }
35
- /**
36
- * Bulk callee map: for each definition in the list, find every symbol it
37
- * actually calls.
38
- *
39
- * For files with tree-sitter support (Rust, TS/JS, Python), we use AST
40
- * call_expression / new_expression nodes — every callsite is exact, every
41
- * attribution is to the precise enclosing function.
42
- *
43
- * For files without AST support (Java, JVM, Ruby, .NET, Dart, PHP, C/C++),
44
- * we fall back to chunk-level SCIP mentions.
45
- *
46
- * `opts.additive`:
47
- * - false (default, "call-strict"): AST is the ground truth for AST files;
48
- * chunk attribution is NOT unioned in. Use for callee fingerprints,
49
- * extract/passthrough analysis, callGraph — anywhere you need exact
50
- * "what does this function call" without false positives from chunk
51
- * attribution placing a mention in the wrong enclosing function.
52
- * - true ("union with chunks"): merges both paths. Use for liveness
53
- * checks (isolated, "has any callee at all") where ambiguous-leaf
54
- * callees that AST resolution skips would otherwise produce false
55
- * positives.
56
- */
57
- declare function buildCalleeMap(db: ScipDatabase, definitions: ReadonlyArray<SymbolMatch>, opts?: {
58
- additive?: boolean;
59
- semantic?: boolean;
60
- }): Map<number, CalleeRow[]>;
61
-
62
- declare function buildFileDepGraph(db: ScipDatabase, scope?: string, opts?: {
63
- scipEdges?: 'all-references' | 'imports-only';
64
- }): Map<string, Set<string>>;
65
34
 
66
- declare function crossFileCallerEvidenceMap(db: ScipDatabase, definitions?: ReadonlyArray<SymbolMatch>, opts?: {
67
- semantic?: boolean;
68
- }): Map<number, Set<string>>;
69
35
  declare function sourceFallbackCallerEvidenceMap(db: ScipDatabase, definitions: ReadonlyArray<IndexedDefinition>, opts?: {
70
36
  skipPath?: (relativePath: string) => boolean;
71
37
  }): Map<number, Set<string>>;
@@ -169,10 +135,10 @@ declare class ProjectIndex {
169
135
  calleeMap(definitions: ReadonlyArray<SymbolMatch>, opts?: {
170
136
  additive?: boolean;
171
137
  semantic?: boolean;
172
- }): ReturnType<typeof buildCalleeMap>;
138
+ }): Map<number, CalleeRow[]>;
173
139
  crossFileCallerMap(definitions?: ReadonlyArray<SymbolMatch>, opts?: {
174
140
  semantic?: boolean;
175
- }): ReturnType<typeof crossFileCallerEvidenceMap>;
141
+ }): Map<number, Set<string>>;
176
142
  sourceFallbackCallerFiles(definitions: ReadonlyArray<IndexedDefinition>, opts?: {
177
143
  skipPath?: (relativePath: string) => boolean;
178
144
  }): ReturnType<typeof sourceFallbackCallerEvidenceMap>;
@@ -185,7 +151,7 @@ declare class ProjectIndex {
185
151
  additive?: boolean;
186
152
  semantic?: boolean;
187
153
  }): Set<number>;
188
- fileDependencyGraph(scope?: string): ReturnType<typeof buildFileDepGraph>;
154
+ fileDependencyGraph(scope?: string): Map<string, Set<string>>;
189
155
  fileKind(relativePath: string): ReturnType<typeof classifyFile>;
190
156
  hasSuppressionComment(definition: Pick<IndexedDefinition, 'relativePath' | 'startLine'>): boolean;
191
157
  sourceFiles(): string[];
@@ -195,6 +161,22 @@ declare class ProjectIndex {
195
161
  } | null;
196
162
  }
197
163
 
164
+ /**
165
+ * Builds a gitignore-based path filter from .gitignore files found
166
+ * in the project directory tree. This replaces hardcoded path exclusions
167
+ * like "node_modules/", "dist/", "target/", "__pycache__/" — instead,
168
+ * we respect whatever the project already ignores.
169
+ *
170
+ * Falls back to sensible defaults if no .gitignore is found.
171
+ */
172
+ declare function createGitignoreFilter(projectRoot: string): PathFilter;
173
+ interface PathFilter {
174
+ /** Returns true if this path should be excluded from results */
175
+ isIgnored: (relativePath: string) => boolean;
176
+ /** Filter an array of paths, keeping only non-ignored ones */
177
+ filter: (paths: string[]) => string[];
178
+ }
179
+
198
180
  /**
199
181
  * Parse a SCIP symbol string into its structured components.
200
182
  * Works for any SCIP-indexed language (TypeScript, Java, Rust, Python, etc.)
@@ -221,4 +203,4 @@ declare function shortenSymbol(raw: string): string;
221
203
  */
222
204
  declare function leafName(raw: string): string;
223
205
 
224
- export { ProjectIndex, ScipDatabase, leafName, parseSymbol, shortenSymbol };
206
+ export { ProjectIndex, ScipDatabase, createGitignoreFilter, leafName, parseSymbol, shortenSymbol };
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import{a as e}from"./chunk-WA64GKWB.js";import{a as m}from"./chunk-YZXV3CU3.js";import{a as p}from"./chunk-RUV4KHWA.js";import"./chunk-5CJ6AQN7.js";import"./chunk-BGBBVSH4.js";import"./chunk-KSD6IWF4.js";import"./chunk-MBVHEPHQ.js";import"./chunk-NJD4C5G5.js";import"./chunk-6JSTKSZH.js";import"./chunk-LEKXKHIQ.js";import"./chunk-P5XHIJHI.js";import"./chunk-QEIGJJBC.js";import"./chunk-Z4MCFCGX.js";import"./chunk-MTDBHTSF.js";import{b as o,d as r,e as t}from"./chunk-7XP7ZRSI.js";import"./chunk-JLZUM476.js";import"./chunk-TLTLJ4SW.js";import"./chunk-64MNV6AB.js";import"./chunk-M2TRDR25.js";export{p as ProjectIndex,e as ScipDatabase,m as createGitignoreFilter,t as leafName,o as parseSymbol,r as shortenSymbol};
1
+ import{a as e}from"./chunk-NH7WNNQC.js";import{a as m}from"./chunk-YZXV3CU3.js";import{a as p}from"./chunk-ZXWFN7CK.js";import"./chunk-FLIF3JWA.js";import"./chunk-BGBBVSH4.js";import"./chunk-F334Z5UA.js";import"./chunk-UVMME4FI.js";import"./chunk-QB5WSOTY.js";import"./chunk-UXOVHGT6.js";import"./chunk-GMZYT44R.js";import"./chunk-P5XHIJHI.js";import"./chunk-ZL5Y23AJ.js";import"./chunk-SATRCB5O.js";import"./chunk-MTDBHTSF.js";import{b as o,d as r,e as t}from"./chunk-TDGCALH6.js";import"./chunk-QNMOZ3CJ.js";import"./chunk-XDSB47KO.js";import"./chunk-M2TRDR25.js";import"./chunk-64MNV6AB.js";export{p as ProjectIndex,e as ScipDatabase,m as createGitignoreFilter,t as leafName,o as parseSymbol,r as shortenSymbol};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import"./chunk-TFWDJDGO.js";import{existsSync as e,mkdirSync as n,symlinkSync as o,readlinkSync as r,unlinkSync as l,readdirSync as c}from"fs";import{join as p,dirname as u,resolve as d,relative as k,isAbsolute as g}from"path";import{homedir as f,platform as s}from"os";import{fileURLToPath as h}from"url";var S=s()==="win32";function i(){console.log("scip-query installed -- run 'scip-query setup' in a repo to enable skills, hooks, and the index.")}i();
2
+ import"./chunk-XBN5VO53.js";import{existsSync as e,mkdirSync as n,symlinkSync as o,readlinkSync as r,unlinkSync as l,readdirSync as c}from"fs";import{join as p,dirname as u,resolve as d,relative as k,isAbsolute as g}from"path";import{homedir as f,platform as s}from"os";import{fileURLToPath as h}from"url";var S=s()==="win32";function i(){console.log("scip-query installed -- run 'scip-query setup' in a repo to enable skills, hooks, and the index.")}i();
3
3
  //# sourceMappingURL=postinstall.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-70s7NxKB.js';
3
+ import '../config-types-BA3xLCfG.js';
4
4
 
5
5
  interface AffectedResult {
6
6
  symbol: string;
@@ -1,2 +1,2 @@
1
- import{a}from"../chunk-WD3PAQJT.js";import"../chunk-KSD6IWF4.js";import"../chunk-MBVHEPHQ.js";import"../chunk-NJD4C5G5.js";import"../chunk-6JSTKSZH.js";import"../chunk-LEKXKHIQ.js";import"../chunk-P5XHIJHI.js";import"../chunk-QEIGJJBC.js";import"../chunk-Z4MCFCGX.js";import"../chunk-MTDBHTSF.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{a as affected};
1
+ import{a}from"../chunk-RJLU7IMR.js";import"../chunk-F334Z5UA.js";import"../chunk-UVMME4FI.js";import"../chunk-QB5WSOTY.js";import"../chunk-UXOVHGT6.js";import"../chunk-GMZYT44R.js";import"../chunk-P5XHIJHI.js";import"../chunk-ZL5Y23AJ.js";import"../chunk-SATRCB5O.js";import"../chunk-MTDBHTSF.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{a as affected};
2
2
  //# sourceMappingURL=affected.js.map
@@ -0,0 +1,83 @@
1
+ import { A as ArchitectureConfig } from '../config-types-BA3xLCfG.js';
2
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
3
+ import 'better-sqlite3';
4
+
5
+ type ArchitecturePolicyStatus = 'allowed' | 'forbidden' | 'undeclared';
6
+ interface ArchitectureFileEdge {
7
+ fromFile: string;
8
+ toFile: string;
9
+ }
10
+ interface ArchitectureBoundaryEdge {
11
+ from: string;
12
+ to: string;
13
+ policyStatus: ArchitecturePolicyStatus;
14
+ fileEdgeCount: number;
15
+ importerCount: number;
16
+ importedFileCount: number;
17
+ examples: ArchitectureFileEdge[];
18
+ }
19
+ interface ArchitectureBoundarySummary {
20
+ name: string;
21
+ paths: string[];
22
+ fileCount: number;
23
+ dependencyPolicyDeclared: boolean;
24
+ }
25
+ interface ArchitectureAmbiguousFile {
26
+ file: string;
27
+ boundaries: string[];
28
+ }
29
+ interface ArchitectureReciprocalPair {
30
+ boundaries: [string, string];
31
+ forward: ArchitectureBoundaryEdge;
32
+ reverse: ArchitectureBoundaryEdge;
33
+ }
34
+ interface ArchitectureCycle {
35
+ boundaries: string[];
36
+ internalEdges: ArchitectureBoundaryEdge[];
37
+ /** Least-broad internal edge(s), useful as inspection points rather than automatic repairs. */
38
+ narrowestEdges: ArchitectureBoundaryEdge[];
39
+ violatesPolicy: boolean;
40
+ }
41
+ interface ArchitectureCoverage {
42
+ totalFiles: number;
43
+ mappedFiles: number;
44
+ unmappedFiles: string[];
45
+ ambiguousFiles: ArchitectureAmbiguousFile[];
46
+ }
47
+ interface ArchitecturePolicyCoverage {
48
+ declaredRows: number;
49
+ totalBoundaries: number;
50
+ missingRows: string[];
51
+ requiresCompletePolicy: boolean;
52
+ }
53
+ interface ArchitectureReport {
54
+ configured: boolean;
55
+ boundaries: ArchitectureBoundarySummary[];
56
+ edges: ArchitectureBoundaryEdge[];
57
+ forbiddenEdges: ArchitectureBoundaryEdge[];
58
+ reciprocalPairs: ArchitectureReciprocalPair[];
59
+ cycles: ArchitectureCycle[];
60
+ coverage: ArchitectureCoverage;
61
+ policyCoverage: ArchitecturePolicyCoverage;
62
+ }
63
+ declare const ARCHITECTURE_BASELINE_PREFIX = "architecture:";
64
+ /**
65
+ * Evaluate a file dependency graph against project-owned architectural
66
+ * boundaries. This pure seam deliberately separates graph facts from the
67
+ * repository-specific judgment recorded in ArchitectureConfig.
68
+ */
69
+ declare function analyzeArchitectureGraph(fileGraph: ReadonlyMap<string, ReadonlySet<string>>, indexedFiles: readonly string[], config?: ArchitectureConfig): ArchitectureReport;
70
+ /** Build and analyze the current project's import dependency graph. */
71
+ declare function architecture(db: ScipDatabase, opts?: {
72
+ scope?: string;
73
+ }): ArchitectureReport;
74
+ /**
75
+ * Produce responsibility-level identities for explicit architecture failures.
76
+ * File examples are intentionally excluded so ordinary refactors do not churn
77
+ * the ratchet while the same boundary relationship remains.
78
+ */
79
+ declare function architectureFindingIdentities(report: ArchitectureReport): string[];
80
+ /** True when configuration contains at least one closed rule worth enforcing. */
81
+ declare function hasEnforceableArchitecturePolicy(config?: ArchitectureConfig): boolean;
82
+
83
+ export { ARCHITECTURE_BASELINE_PREFIX, type ArchitectureAmbiguousFile, type ArchitectureBoundaryEdge, type ArchitectureBoundarySummary, type ArchitectureCoverage, type ArchitectureCycle, type ArchitectureFileEdge, type ArchitecturePolicyCoverage, type ArchitecturePolicyStatus, type ArchitectureReciprocalPair, type ArchitectureReport, analyzeArchitectureGraph, architecture, architectureFindingIdentities, hasEnforceableArchitecturePolicy };
@@ -0,0 +1,2 @@
1
+ import{a,b,c,d,e}from"../chunk-J3U47L4Q.js";import"../chunk-QZ4JVECJ.js";import"../chunk-35NLDRZC.js";import"../chunk-SATRCB5O.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{a as ARCHITECTURE_BASELINE_PREFIX,b as analyzeArchitectureGraph,c as architecture,d as architectureFindingIdentities,e as hasEnforceableArchitecturePolicy};
2
+ //# sourceMappingURL=architecture.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-70s7NxKB.js';
3
+ import '../config-types-BA3xLCfG.js';
4
4
 
5
5
  interface BottleneckResult {
6
6
  symbol: string;
@@ -1,2 +1,2 @@
1
- import{a}from"../chunk-K53GNKY3.js";import"../chunk-B75HZHUP.js";import"../chunk-RUV4KHWA.js";import"../chunk-5CJ6AQN7.js";import"../chunk-BGBBVSH4.js";import"../chunk-KSD6IWF4.js";import"../chunk-MBVHEPHQ.js";import"../chunk-NJD4C5G5.js";import"../chunk-6JSTKSZH.js";import"../chunk-LEKXKHIQ.js";import"../chunk-P5XHIJHI.js";import"../chunk-QEIGJJBC.js";import"../chunk-Z4MCFCGX.js";import"../chunk-MTDBHTSF.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{a as bottlenecks};
1
+ import{a}from"../chunk-YYR7ADNB.js";import"../chunk-ZXWFN7CK.js";import"../chunk-FLIF3JWA.js";import"../chunk-B75HZHUP.js";import"../chunk-BGBBVSH4.js";import"../chunk-F334Z5UA.js";import"../chunk-UVMME4FI.js";import"../chunk-QB5WSOTY.js";import"../chunk-UXOVHGT6.js";import"../chunk-GMZYT44R.js";import"../chunk-P5XHIJHI.js";import"../chunk-ZL5Y23AJ.js";import"../chunk-SATRCB5O.js";import"../chunk-MTDBHTSF.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{a as bottlenecks};
2
2
  //# sourceMappingURL=bottlenecks.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-70s7NxKB.js';
3
+ import '../config-types-BA3xLCfG.js';
4
4
 
5
5
  interface ByKindResult {
6
6
  symbol: string;
@@ -1,2 +1,2 @@
1
- import{a,b}from"../chunk-VCRMI56V.js";import"../chunk-MTDBHTSF.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{a as byKind,b as kindCounts};
1
+ import{a,b}from"../chunk-3OSRXJKK.js";import"../chunk-MTDBHTSF.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{a as byKind,b as kindCounts};
2
2
  //# sourceMappingURL=by-kind.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-70s7NxKB.js';
3
+ import '../config-types-BA3xLCfG.js';
4
4
 
5
5
  interface CallGraphResult {
6
6
  symbol: string;
@@ -1,2 +1,2 @@
1
- import{a}from"../chunk-KJOKTZUE.js";import"../chunk-B75HZHUP.js";import"../chunk-BGBBVSH4.js";import"../chunk-KSD6IWF4.js";import"../chunk-MBVHEPHQ.js";import"../chunk-NJD4C5G5.js";import"../chunk-6JSTKSZH.js";import"../chunk-LEKXKHIQ.js";import"../chunk-P5XHIJHI.js";import"../chunk-QEIGJJBC.js";import"../chunk-Z4MCFCGX.js";import"../chunk-MTDBHTSF.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{a as callGraph};
1
+ import{a}from"../chunk-A45K6VUK.js";import"../chunk-B75HZHUP.js";import"../chunk-BGBBVSH4.js";import"../chunk-F334Z5UA.js";import"../chunk-UVMME4FI.js";import"../chunk-QB5WSOTY.js";import"../chunk-UXOVHGT6.js";import"../chunk-GMZYT44R.js";import"../chunk-P5XHIJHI.js";import"../chunk-ZL5Y23AJ.js";import"../chunk-SATRCB5O.js";import"../chunk-MTDBHTSF.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{a as callGraph};
2
2
  //# sourceMappingURL=call-graph.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-70s7NxKB.js';
3
+ import '../config-types-BA3xLCfG.js';
4
4
 
5
5
  interface ChangeSurfaceEntry {
6
6
  symbol: string;
@@ -1,2 +1,2 @@
1
- import{a}from"../chunk-W7FNZKX5.js";import"../chunk-K65T4TJS.js";import"../chunk-RUV4KHWA.js";import"../chunk-5CJ6AQN7.js";import"../chunk-BGBBVSH4.js";import"../chunk-KSD6IWF4.js";import"../chunk-MBVHEPHQ.js";import"../chunk-NJD4C5G5.js";import"../chunk-6JSTKSZH.js";import"../chunk-LEKXKHIQ.js";import"../chunk-P5XHIJHI.js";import"../chunk-QEIGJJBC.js";import"../chunk-Z4MCFCGX.js";import"../chunk-MTDBHTSF.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{a as changeSurface};
1
+ import{a}from"../chunk-2ZNZSNVW.js";import"../chunk-DV6B262O.js";import"../chunk-ZXWFN7CK.js";import"../chunk-FLIF3JWA.js";import"../chunk-BGBBVSH4.js";import"../chunk-F334Z5UA.js";import"../chunk-UVMME4FI.js";import"../chunk-QB5WSOTY.js";import"../chunk-UXOVHGT6.js";import"../chunk-GMZYT44R.js";import"../chunk-P5XHIJHI.js";import"../chunk-ZL5Y23AJ.js";import"../chunk-SATRCB5O.js";import"../chunk-MTDBHTSF.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{a as changeSurface};
2
2
  //# sourceMappingURL=change-surface.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-70s7NxKB.js';
3
+ import '../config-types-BA3xLCfG.js';
4
4
 
5
5
  interface CleanupPlanEntry {
6
6
  symbol: string;
@@ -1,2 +1,2 @@
1
- import{a,b}from"../chunk-OQFA2SUQ.js";import"../chunk-NJTIAQY7.js";import"../chunk-UWR52GNZ.js";import"../chunk-B75HZHUP.js";import"../chunk-RUV4KHWA.js";import"../chunk-5CJ6AQN7.js";import"../chunk-BGBBVSH4.js";import"../chunk-KSD6IWF4.js";import"../chunk-MBVHEPHQ.js";import"../chunk-NJD4C5G5.js";import"../chunk-6JSTKSZH.js";import"../chunk-LEKXKHIQ.js";import"../chunk-P5XHIJHI.js";import"../chunk-QEIGJJBC.js";import"../chunk-Z4MCFCGX.js";import"../chunk-MTDBHTSF.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{b as RemovedRangeIndex,a as cleanupPlan};
1
+ import{a,b}from"../chunk-XPYXEEDO.js";import"../chunk-AM2LGOEX.js";import"../chunk-PKAPOFF5.js";import"../chunk-ZXWFN7CK.js";import"../chunk-FLIF3JWA.js";import"../chunk-B75HZHUP.js";import"../chunk-BGBBVSH4.js";import"../chunk-F334Z5UA.js";import"../chunk-UVMME4FI.js";import"../chunk-QB5WSOTY.js";import"../chunk-UXOVHGT6.js";import"../chunk-GMZYT44R.js";import"../chunk-P5XHIJHI.js";import"../chunk-ZL5Y23AJ.js";import"../chunk-SATRCB5O.js";import"../chunk-MTDBHTSF.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{b as RemovedRangeIndex,a as cleanupPlan};
2
2
  //# sourceMappingURL=cleanup-plan.js.map
@@ -1,7 +1,7 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import { C as CoChangeCommitScope, a as CoChangeRecency, b as CoChangeSubjectContext, G as GitHistoryMode } from '../git-history-ChNHbfZQ.js';
3
3
  import 'better-sqlite3';
4
- import '../config-types-70s7NxKB.js';
4
+ import '../config-types-BA3xLCfG.js';
5
5
 
6
6
  type CoChangePartnerClass = 'doc-code' | 'config-code' | 'schema-script' | 'model-view' | 'test-code' | 'same-feature' | 'unknown';
7
7
  interface CoChangePartnerClassification {
@@ -1,2 +1,2 @@
1
- import{a,b,c,d,e}from"../chunk-AWYKDRYV.js";import"../chunk-4XTPZ5CR.js";import"../chunk-5CJ6AQN7.js";import"../chunk-P5XHIJHI.js";import"../chunk-QEIGJJBC.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{c as classifyCoChangePartner,b as coChange,e as coChangeStructuralLinkChecker,d as declaredCouplingSuggestionForPair,a as isCoChangeNoiseFile};
1
+ import{a,b,c,d,e}from"../chunk-RIGY5DDE.js";import"../chunk-4XTPZ5CR.js";import"../chunk-FLIF3JWA.js";import"../chunk-P5XHIJHI.js";import"../chunk-SATRCB5O.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{c as classifyCoChangePartner,b as coChange,e as coChangeStructuralLinkChecker,d as declaredCouplingSuggestionForPair,a as isCoChangeNoiseFile};
2
2
  //# sourceMappingURL=co-change.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-70s7NxKB.js';
3
+ import '../config-types-BA3xLCfG.js';
4
4
 
5
5
  interface CodeResult {
6
6
  symbol: string;
@@ -1,2 +1,2 @@
1
- import{a}from"../chunk-OQFPCIXO.js";import"../chunk-K65T4TJS.js";import"../chunk-6JSTKSZH.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{a as code};
1
+ import{a}from"../chunk-GNJHHPZE.js";import"../chunk-DV6B262O.js";import"../chunk-UXOVHGT6.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{a as code};
2
2
  //# sourceMappingURL=code.js.map
@@ -1,7 +1,7 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import { BranchEstimateBasis } from './complexity.js';
3
3
  import 'better-sqlite3';
4
- import '../config-types-70s7NxKB.js';
4
+ import '../config-types-BA3xLCfG.js';
5
5
  import '../symbol-types-BgWU6lhL.js';
6
6
 
7
7
  interface ComplexityHotspot {
@@ -1,2 +1,2 @@
1
- import{a}from"../chunk-G6DDSHMD.js";import"../chunk-BGUYAA3Q.js";import"../chunk-P6FOIU7O.js";import"../chunk-B75HZHUP.js";import"../chunk-RUV4KHWA.js";import"../chunk-5CJ6AQN7.js";import"../chunk-BGBBVSH4.js";import"../chunk-KSD6IWF4.js";import"../chunk-MBVHEPHQ.js";import"../chunk-NJD4C5G5.js";import"../chunk-6JSTKSZH.js";import"../chunk-LEKXKHIQ.js";import"../chunk-P5XHIJHI.js";import"../chunk-QEIGJJBC.js";import"../chunk-Z4MCFCGX.js";import"../chunk-MTDBHTSF.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{a as complexityHotspots};
1
+ import{a}from"../chunk-EZGT3NJX.js";import"../chunk-BGUYAA3Q.js";import"../chunk-AWSRND4W.js";import"../chunk-ZXWFN7CK.js";import"../chunk-FLIF3JWA.js";import"../chunk-B75HZHUP.js";import"../chunk-BGBBVSH4.js";import"../chunk-F334Z5UA.js";import"../chunk-UVMME4FI.js";import"../chunk-QB5WSOTY.js";import"../chunk-UXOVHGT6.js";import"../chunk-GMZYT44R.js";import"../chunk-P5XHIJHI.js";import"../chunk-ZL5Y23AJ.js";import"../chunk-SATRCB5O.js";import"../chunk-MTDBHTSF.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{a as complexityHotspots};
2
2
  //# sourceMappingURL=complexity-hotspots.js.map
@@ -1,7 +1,7 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import { S as SymbolMatch } from '../symbol-types-BgWU6lhL.js';
3
3
  import 'better-sqlite3';
4
- import '../config-types-70s7NxKB.js';
4
+ import '../config-types-BA3xLCfG.js';
5
5
 
6
6
  interface SyntaxNode {
7
7
  type: string;
@@ -1,2 +1,2 @@
1
- import{a,b,c,d}from"../chunk-P6FOIU7O.js";import"../chunk-RUV4KHWA.js";import"../chunk-5CJ6AQN7.js";import"../chunk-BGBBVSH4.js";import"../chunk-KSD6IWF4.js";import"../chunk-MBVHEPHQ.js";import"../chunk-NJD4C5G5.js";import"../chunk-6JSTKSZH.js";import"../chunk-LEKXKHIQ.js";import"../chunk-P5XHIJHI.js";import"../chunk-QEIGJJBC.js";import"../chunk-Z4MCFCGX.js";import"../chunk-MTDBHTSF.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{b as branchEstimateForDefinition,c as branchEstimatesForDefinitions,a as complexity,d as countBranchesFromAst};
1
+ import{a,b,c,d}from"../chunk-AWSRND4W.js";import"../chunk-ZXWFN7CK.js";import"../chunk-FLIF3JWA.js";import"../chunk-BGBBVSH4.js";import"../chunk-F334Z5UA.js";import"../chunk-UVMME4FI.js";import"../chunk-QB5WSOTY.js";import"../chunk-UXOVHGT6.js";import"../chunk-GMZYT44R.js";import"../chunk-P5XHIJHI.js";import"../chunk-ZL5Y23AJ.js";import"../chunk-SATRCB5O.js";import"../chunk-MTDBHTSF.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{b as branchEstimateForDefinition,c as branchEstimatesForDefinitions,a as complexity,d as countBranchesFromAst};
2
2
  //# sourceMappingURL=complexity.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-70s7NxKB.js';
3
+ import '../config-types-BA3xLCfG.js';
4
4
 
5
5
  interface ConvergenceResult {
6
6
  symbolA: {
@@ -1,2 +1,2 @@
1
- import{a}from"../chunk-Q4GKL4CC.js";import"../chunk-7LERNHDG.js";import"../chunk-KMVGRIO2.js";import"../chunk-B75HZHUP.js";import"../chunk-RUV4KHWA.js";import"../chunk-5CJ6AQN7.js";import"../chunk-BGBBVSH4.js";import"../chunk-KSD6IWF4.js";import"../chunk-MBVHEPHQ.js";import"../chunk-NJD4C5G5.js";import"../chunk-6JSTKSZH.js";import"../chunk-LEKXKHIQ.js";import"../chunk-P5XHIJHI.js";import"../chunk-QEIGJJBC.js";import"../chunk-Z4MCFCGX.js";import"../chunk-MTDBHTSF.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{a as convergence};
1
+ import{a}from"../chunk-G6RQVDTI.js";import"../chunk-UJL3N6TC.js";import"../chunk-KMVGRIO2.js";import"../chunk-ZXWFN7CK.js";import"../chunk-FLIF3JWA.js";import"../chunk-B75HZHUP.js";import"../chunk-BGBBVSH4.js";import"../chunk-F334Z5UA.js";import"../chunk-UVMME4FI.js";import"../chunk-QB5WSOTY.js";import"../chunk-UXOVHGT6.js";import"../chunk-GMZYT44R.js";import"../chunk-P5XHIJHI.js";import"../chunk-ZL5Y23AJ.js";import"../chunk-SATRCB5O.js";import"../chunk-MTDBHTSF.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{a as convergence};
2
2
  //# sourceMappingURL=convergence.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-70s7NxKB.js';
3
+ import '../config-types-BA3xLCfG.js';
4
4
 
5
5
  interface CouplingResult {
6
6
  file1: string;
@@ -1,2 +1,2 @@
1
- import{a,b}from"../chunk-NX2YAXVQ.js";import"../chunk-K65T4TJS.js";import"../chunk-6JSTKSZH.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{a as coupling,b as topCoupling};
1
+ import{a,b}from"../chunk-54UYBTZW.js";import"../chunk-DV6B262O.js";import"../chunk-UXOVHGT6.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{a as coupling,b as topCoupling};
2
2
  //# sourceMappingURL=coupling.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-70s7NxKB.js';
3
+ import '../config-types-BA3xLCfG.js';
4
4
 
5
5
  interface CycleResult {
6
6
  /** Files forming a cycle, in order */
@@ -1,2 +1,2 @@
1
- import{a,b}from"../chunk-27YDE22N.js";import"../chunk-5CJ6AQN7.js";import"../chunk-QEIGJJBC.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{b as cycleSummary,a as cycles};
1
+ import{a,b}from"../chunk-YBAC3RON.js";import"../chunk-FLIF3JWA.js";import"../chunk-SATRCB5O.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{b as cycleSummary,a as cycles};
2
2
  //# sourceMappingURL=cycles.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-70s7NxKB.js';
3
+ import '../config-types-BA3xLCfG.js';
4
4
 
5
5
  interface DataflowResult {
6
6
  symbol: string;
@@ -1,2 +1,2 @@
1
- import{a}from"../chunk-IS7DZ7TB.js";import"../chunk-B75HZHUP.js";import"../chunk-BGBBVSH4.js";import"../chunk-KSD6IWF4.js";import"../chunk-MBVHEPHQ.js";import"../chunk-NJD4C5G5.js";import"../chunk-6JSTKSZH.js";import"../chunk-LEKXKHIQ.js";import"../chunk-P5XHIJHI.js";import"../chunk-QEIGJJBC.js";import"../chunk-Z4MCFCGX.js";import"../chunk-MTDBHTSF.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{a as dataflow};
1
+ import{a}from"../chunk-FMC3BI4I.js";import"../chunk-B75HZHUP.js";import"../chunk-BGBBVSH4.js";import"../chunk-F334Z5UA.js";import"../chunk-UVMME4FI.js";import"../chunk-QB5WSOTY.js";import"../chunk-UXOVHGT6.js";import"../chunk-GMZYT44R.js";import"../chunk-P5XHIJHI.js";import"../chunk-ZL5Y23AJ.js";import"../chunk-SATRCB5O.js";import"../chunk-MTDBHTSF.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{a as dataflow};
2
2
  //# sourceMappingURL=dataflow.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-70s7NxKB.js';
3
+ import '../config-types-BA3xLCfG.js';
4
4
 
5
5
  interface DeadOptions {
6
6
  scope?: string;
@@ -1,2 +1,2 @@
1
- import{b as a}from"../chunk-NJTIAQY7.js";import"../chunk-UWR52GNZ.js";import"../chunk-B75HZHUP.js";import"../chunk-RUV4KHWA.js";import"../chunk-5CJ6AQN7.js";import"../chunk-BGBBVSH4.js";import"../chunk-KSD6IWF4.js";import"../chunk-MBVHEPHQ.js";import"../chunk-NJD4C5G5.js";import"../chunk-6JSTKSZH.js";import"../chunk-LEKXKHIQ.js";import"../chunk-P5XHIJHI.js";import"../chunk-QEIGJJBC.js";import"../chunk-Z4MCFCGX.js";import"../chunk-MTDBHTSF.js";import"../chunk-7XP7ZRSI.js";import"../chunk-JLZUM476.js";import"../chunk-TLTLJ4SW.js";import"../chunk-64MNV6AB.js";import"../chunk-M2TRDR25.js";export{a as dead};
1
+ import{b as a}from"../chunk-AM2LGOEX.js";import"../chunk-PKAPOFF5.js";import"../chunk-ZXWFN7CK.js";import"../chunk-FLIF3JWA.js";import"../chunk-B75HZHUP.js";import"../chunk-BGBBVSH4.js";import"../chunk-F334Z5UA.js";import"../chunk-UVMME4FI.js";import"../chunk-QB5WSOTY.js";import"../chunk-UXOVHGT6.js";import"../chunk-GMZYT44R.js";import"../chunk-P5XHIJHI.js";import"../chunk-ZL5Y23AJ.js";import"../chunk-SATRCB5O.js";import"../chunk-MTDBHTSF.js";import"../chunk-TDGCALH6.js";import"../chunk-QNMOZ3CJ.js";import"../chunk-XDSB47KO.js";import"../chunk-M2TRDR25.js";import"../chunk-64MNV6AB.js";export{a as dead};
2
2
  //# sourceMappingURL=dead.js.map
@@ -1,6 +1,6 @@
1
- import { S as ScipDatabase } from '../db-BBmJ0v3b.js';
1
+ import { S as ScipDatabase } from '../db-CzA-9_rL.js';
2
2
  import 'better-sqlite3';
3
- import '../config-types-70s7NxKB.js';
3
+ import '../config-types-BA3xLCfG.js';
4
4
 
5
5
  /**
6
6
  * decorative-checkers (D2): mechanizes scip-integrity-audit drill 1 for a