scip-query 0.15.0 → 0.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (321) hide show
  1. package/CHANGELOG.md +41 -1
  2. package/README.md +148 -66
  3. package/dist/augment-vue-worker.js +1 -1
  4. package/dist/chunk-2EU6WVR3.js +3 -0
  5. package/dist/chunk-2HFXPIBT.js +2 -0
  6. package/dist/chunk-2LGPMYS2.js +35 -0
  7. package/dist/chunk-2Y7YX54K.js +16 -0
  8. package/dist/chunk-363TZ64I.js +2 -0
  9. package/dist/chunk-3I34FZ6R.js +2 -0
  10. package/dist/chunk-3LAKH6BV.js +2 -0
  11. package/dist/chunk-3M2UCPFS.js +3 -0
  12. package/dist/chunk-3OPIMH42.js +2 -0
  13. package/dist/{chunk-QZOAOLLZ.js → chunk-3YAZH3JU.js} +2 -2
  14. package/dist/chunk-5P26M63Y.js +2 -0
  15. package/dist/{chunk-72FR7KEZ.js → chunk-5TVNLPUM.js} +14 -12
  16. package/dist/chunk-5UKDCXVC.js +5 -0
  17. package/dist/{chunk-R7U2I55B.js → chunk-5XDNFOAH.js} +2 -2
  18. package/dist/chunk-62Y3PC27.js +4 -0
  19. package/dist/chunk-6DNE65QS.js +40 -0
  20. package/dist/{chunk-N2OTJWC2.js → chunk-6EVORGCB.js} +2 -2
  21. package/dist/chunk-6GZ7LM7S.js +2 -0
  22. package/dist/chunk-753JWTUH.js +3 -0
  23. package/dist/chunk-7II7NFRV.js +4 -0
  24. package/dist/{chunk-M7EEHYSU.js → chunk-7RAS466A.js} +2 -2
  25. package/dist/chunk-A46JTKTM.js +5 -0
  26. package/dist/{chunk-2XRXEIRK.js → chunk-AAMZRDJT.js} +2 -2
  27. package/dist/chunk-AMPN2VMF.js +3 -0
  28. package/dist/{chunk-6XA4LDHY.js → chunk-B3X6KU75.js} +2 -2
  29. package/dist/chunk-BFWVHD2P.js +16 -0
  30. package/dist/chunk-BVHP2B4D.js +61 -0
  31. package/dist/{chunk-BUNDZ6K2.js → chunk-BVUA3GZC.js} +2 -2
  32. package/dist/{chunk-EDSD3VJK.js → chunk-CKIAEVGM.js} +2 -2
  33. package/dist/chunk-CM4EZLW4.js +2 -0
  34. package/dist/chunk-CS3FXTUC.js +2 -0
  35. package/dist/chunk-CVBS2FD4.js +2 -0
  36. package/dist/chunk-D5OXYOJP.js +7 -0
  37. package/dist/chunk-DA34GNNO.js +29 -0
  38. package/dist/chunk-DKK2H4D7.js +7 -0
  39. package/dist/chunk-EBSSCVR4.js +5 -0
  40. package/dist/{chunk-OXTM2RX3.js → chunk-EVCSXWER.js} +2 -2
  41. package/dist/chunk-FFIYGYQR.js +67 -0
  42. package/dist/chunk-G4KQ7S74.js +20 -0
  43. package/dist/{chunk-44P4SJFN.js → chunk-GWWYLYD3.js} +2 -2
  44. package/dist/chunk-HGUNWXJX.js +2 -0
  45. package/dist/chunk-HLRWOFXC.js +9 -0
  46. package/dist/{chunk-YQKECTPV.js → chunk-IRIM3SUR.js} +2 -2
  47. package/dist/chunk-JHK2DMUQ.js +4 -0
  48. package/dist/chunk-JQ2PCFZW.js +3 -0
  49. package/dist/chunk-JRFCWCOD.js +16 -0
  50. package/dist/chunk-JXAJDINF.js +2 -0
  51. package/dist/chunk-K32ZOW3P.js +2 -0
  52. package/dist/{chunk-3H5OSDF7.js → chunk-KI4WPR7Q.js} +2 -2
  53. package/dist/{chunk-43GKP6LI.js → chunk-KP2DJY7D.js} +2 -2
  54. package/dist/{chunk-YTVKPJXW.js → chunk-L27UIF3E.js} +2 -2
  55. package/dist/chunk-LT6AHYVY.js +18 -0
  56. package/dist/chunk-MCNWCJYL.js +11 -0
  57. package/dist/{chunk-K6UI6EBZ.js → chunk-MZB3DTHW.js} +2 -2
  58. package/dist/chunk-NLRWGGPY.js +8 -0
  59. package/dist/chunk-NLVKD45E.js +13 -0
  60. package/dist/chunk-OO6S4ECV.js +112 -0
  61. package/dist/{chunk-QYOPMTZ6.js → chunk-OYGKBDAD.js} +2 -2
  62. package/dist/chunk-P5QZILZ4.js +2 -0
  63. package/dist/chunk-P5XHIJHI.js +2 -0
  64. package/dist/chunk-PCCMMI2M.js +3 -0
  65. package/dist/{chunk-2TPCIPYA.js → chunk-Q65QYKU7.js} +2 -2
  66. package/dist/{chunk-K7SPOJHZ.js → chunk-QB7NRST4.js} +2 -2
  67. package/dist/{chunk-7JZRFDCU.js → chunk-QSNG3NHQ.js} +2 -2
  68. package/dist/chunk-QVZSWLLZ.js +2 -0
  69. package/dist/chunk-RLB7FZKR.js +10 -0
  70. package/dist/{chunk-KYB7FPXT.js → chunk-RPMT6MTX.js} +2 -2
  71. package/dist/chunk-RQWNF2RM.js +2 -0
  72. package/dist/chunk-RYFIRFYJ.js +4 -0
  73. package/dist/{chunk-QARYU7R3.js → chunk-S2FZILCF.js} +2 -2
  74. package/dist/{chunk-HV27H2V2.js → chunk-S3IXCXW2.js} +2 -2
  75. package/dist/{chunk-TYCZ7S4I.js → chunk-S5MTSES5.js} +2 -2
  76. package/dist/chunk-S5RZQA6V.js +2 -0
  77. package/dist/{chunk-PEHDARNC.js → chunk-SEEJPIWG.js} +2 -2
  78. package/dist/chunk-SOCS3467.js +2 -0
  79. package/dist/chunk-U6BJVXWQ.js +2 -0
  80. package/dist/chunk-UO4IADXJ.js +38 -0
  81. package/dist/{chunk-ZEO4CXQR.js → chunk-VLSI5MYU.js} +2 -2
  82. package/dist/chunk-VSQRU3AP.js +2 -0
  83. package/dist/chunk-VYQY75NA.js +2 -0
  84. package/dist/{chunk-NOKUZU56.js → chunk-VZCR3VQY.js} +2 -2
  85. package/dist/chunk-W3ZVRLCH.js +2 -0
  86. package/dist/chunk-WA64GKWB.js +20 -0
  87. package/dist/chunk-WFRZGMWJ.js +71 -0
  88. package/dist/chunk-WN6XEYVX.js +2 -0
  89. package/dist/chunk-XAEU4ROB.js +101 -0
  90. package/dist/chunk-XBPAJASV.js +2 -0
  91. package/dist/{chunk-GY3HAWUA.js → chunk-XC6PUFNN.js} +2 -2
  92. package/dist/chunk-Y42DMR6F.js +6 -0
  93. package/dist/chunk-YCVYOV4A.js +7 -0
  94. package/dist/{chunk-WPZPB42I.js → chunk-YD37KSEK.js} +2 -2
  95. package/dist/{chunk-V5W7H7V4.js → chunk-YFEJIYWH.js} +2 -2
  96. package/dist/chunk-YSUD2S7T.js +3 -0
  97. package/dist/{chunk-KJCDEDQW.js → chunk-ZEKBAMCN.js} +2 -2
  98. package/dist/chunk-ZHGUZKJL.js +2 -0
  99. package/dist/cli.js +586 -312
  100. package/dist/{config-types-aCgyLrvE.d.ts → config-types-SVkUIufk.d.ts} +8 -2
  101. package/dist/{db-DwCdT3rv.d.ts → db-CS0TuVH6.d.ts} +1 -1
  102. package/dist/{git-history-Dao3_Pu9.d.ts → git-history-ChNHbfZQ.d.ts} +2 -1
  103. package/dist/{health-nJUidasZ.d.ts → health-Btal3mQi.d.ts} +4 -4
  104. package/dist/index.d.ts +7 -5
  105. package/dist/index.js +1 -19
  106. package/dist/queries/affected.d.ts +2 -2
  107. package/dist/queries/affected.js +1 -1
  108. package/dist/queries/bottlenecks.d.ts +8 -2
  109. package/dist/queries/bottlenecks.js +1 -1
  110. package/dist/queries/by-kind.d.ts +2 -2
  111. package/dist/queries/by-kind.js +1 -1
  112. package/dist/queries/call-graph.d.ts +2 -2
  113. package/dist/queries/call-graph.js +1 -1
  114. package/dist/queries/change-surface.d.ts +2 -2
  115. package/dist/queries/change-surface.js +1 -1
  116. package/dist/queries/cleanup-plan.d.ts +2 -2
  117. package/dist/queries/cleanup-plan.js +1 -1
  118. package/dist/queries/co-change.d.ts +4 -3
  119. package/dist/queries/co-change.js +1 -1
  120. package/dist/queries/code.d.ts +2 -2
  121. package/dist/queries/code.js +1 -1
  122. package/dist/queries/complexity-hotspots.d.ts +3 -3
  123. package/dist/queries/complexity-hotspots.js +1 -1
  124. package/dist/queries/complexity.d.ts +5 -4
  125. package/dist/queries/complexity.js +1 -1
  126. package/dist/queries/convergence.d.ts +2 -2
  127. package/dist/queries/convergence.js +1 -1
  128. package/dist/queries/coupling.d.ts +2 -2
  129. package/dist/queries/coupling.js +1 -1
  130. package/dist/queries/cycles.d.ts +2 -2
  131. package/dist/queries/cycles.js +1 -1
  132. package/dist/queries/dataflow.d.ts +2 -2
  133. package/dist/queries/dataflow.js +1 -1
  134. package/dist/queries/dead.d.ts +12 -3
  135. package/dist/queries/dead.js +1 -1
  136. package/dist/queries/decorative-checkers.d.ts +2 -2
  137. package/dist/queries/decorative-checkers.js +1 -1
  138. package/dist/queries/deep-chains.d.ts +8 -3
  139. package/dist/queries/deep-chains.js +1 -1
  140. package/dist/queries/deps.d.ts +2 -2
  141. package/dist/queries/deps.js +1 -1
  142. package/dist/queries/diff-gate.d.ts +5 -4
  143. package/dist/queries/diff-gate.js +1 -1
  144. package/dist/queries/diff-impact.d.ts +3 -3
  145. package/dist/queries/diff-impact.js +1 -1
  146. package/dist/queries/doc-drift.d.ts +4 -2
  147. package/dist/queries/doc-drift.js +1 -1
  148. package/dist/queries/drift.d.ts +2 -2
  149. package/dist/queries/drift.js +1 -1
  150. package/dist/queries/duplicate-bodies.d.ts +3 -3
  151. package/dist/queries/duplicate-bodies.js +1 -1
  152. package/dist/queries/extract-candidates.d.ts +2 -2
  153. package/dist/queries/extract-candidates.js +1 -1
  154. package/dist/queries/fan.d.ts +11 -5
  155. package/dist/queries/fan.js +1 -1
  156. package/dist/queries/files.d.ts +2 -2
  157. package/dist/queries/health.d.ts +3 -3
  158. package/dist/queries/health.js +1 -1
  159. package/dist/queries/hierarchy.d.ts +2 -2
  160. package/dist/queries/hierarchy.js +1 -1
  161. package/dist/queries/hotspots.d.ts +2 -2
  162. package/dist/queries/hotspots.js +1 -1
  163. package/dist/queries/imports.d.ts +2 -2
  164. package/dist/queries/imports.js +1 -1
  165. package/dist/queries/incomplete-migration.d.ts +3 -3
  166. package/dist/queries/incomplete-migration.js +1 -1
  167. package/dist/queries/index.d.ts +5 -5
  168. package/dist/queries/index.js +1 -1
  169. package/dist/queries/isolated.d.ts +2 -2
  170. package/dist/queries/isolated.js +1 -1
  171. package/dist/queries/locality-candidates.d.ts +2 -2
  172. package/dist/queries/locality-candidates.js +1 -1
  173. package/dist/queries/members.d.ts +2 -2
  174. package/dist/queries/members.js +1 -1
  175. package/dist/queries/methods.d.ts +2 -2
  176. package/dist/queries/methods.js +1 -1
  177. package/dist/queries/not-implemented.d.ts +2 -2
  178. package/dist/queries/not-implemented.js +1 -1
  179. package/dist/queries/outline.d.ts +2 -2
  180. package/dist/queries/outline.js +1 -1
  181. package/dist/queries/passthrough-candidates.d.ts +3 -3
  182. package/dist/queries/passthrough-candidates.js +1 -1
  183. package/dist/queries/plan-context.d.ts +4 -4
  184. package/dist/queries/plan-context.js +1 -1
  185. package/dist/queries/react-component-duplicates.d.ts +4 -2
  186. package/dist/queries/react-component-duplicates.js +1 -1
  187. package/dist/queries/react-hook-candidates.d.ts +4 -2
  188. package/dist/queries/react-hook-candidates.js +1 -1
  189. package/dist/queries/react-large-component-pressure.d.ts +2 -2
  190. package/dist/queries/react-large-component-pressure.js +1 -1
  191. package/dist/queries/recent-duplicates.d.ts +4 -2
  192. package/dist/queries/recent-duplicates.js +1 -1
  193. package/dist/queries/redundant-reexports.d.ts +2 -2
  194. package/dist/queries/redundant-reexports.js +1 -1
  195. package/dist/queries/refs.d.ts +2 -2
  196. package/dist/queries/refs.js +1 -1
  197. package/dist/queries/self-audit.d.ts +2 -2
  198. package/dist/queries/self-audit.js +1 -1
  199. package/dist/queries/similar-chains.d.ts +2 -2
  200. package/dist/queries/similar-chains.js +1 -1
  201. package/dist/queries/similar-files.d.ts +2 -2
  202. package/dist/queries/similar-files.js +1 -1
  203. package/dist/queries/similar-signatures.d.ts +2 -2
  204. package/dist/queries/similar-signatures.js +1 -1
  205. package/dist/queries/similar.d.ts +2 -2
  206. package/dist/queries/similar.js +1 -1
  207. package/dist/queries/slice.d.ts +2 -2
  208. package/dist/queries/slice.js +1 -1
  209. package/dist/queries/stale-abstractions.d.ts +2 -2
  210. package/dist/queries/stale-abstractions.js +1 -1
  211. package/dist/queries/stats.d.ts +2 -2
  212. package/dist/queries/surface.d.ts +2 -2
  213. package/dist/queries/surface.js +1 -1
  214. package/dist/queries/symbols.d.ts +2 -2
  215. package/dist/queries/symbols.js +1 -1
  216. package/dist/queries/system.d.ts +2 -2
  217. package/dist/queries/system.js +1 -1
  218. package/dist/queries/test-quality.d.ts +2 -2
  219. package/dist/queries/test-quality.js +1 -1
  220. package/dist/queries/trace.d.ts +2 -2
  221. package/dist/queries/trace.js +1 -1
  222. package/dist/queries/twin-ab.d.ts +2 -2
  223. package/dist/queries/twin-ab.js +1 -1
  224. package/dist/queries/twin-drift.d.ts +2 -2
  225. package/dist/queries/twin-drift.js +1 -1
  226. package/dist/queries/unused-imports.d.ts +2 -2
  227. package/dist/queries/unused-imports.js +1 -1
  228. package/dist/queries/unused-params.d.ts +2 -2
  229. package/dist/queries/unused-params.js +1 -1
  230. package/dist/queries/vue-component-duplicates.d.ts +4 -2
  231. package/dist/queries/vue-component-duplicates.js +1 -1
  232. package/dist/queries/vue-composable-candidates.d.ts +4 -2
  233. package/dist/queries/vue-composable-candidates.js +1 -1
  234. package/dist/queries/vue-large-view-pressure.d.ts +2 -2
  235. package/dist/queries/vue-large-view-pressure.js +1 -1
  236. package/dist/queries/wrapper-candidates.d.ts +2 -2
  237. package/dist/queries/wrapper-candidates.js +1 -1
  238. package/dist/reindex-worker.js +256 -12
  239. package/dist/reindex.d.ts +29 -3
  240. package/dist/reindex.js +251 -22
  241. package/dist/runtime.d.ts +8 -4
  242. package/dist/runtime.js +2 -2
  243. package/dist/rust-semantic-session-server.js +2 -0
  244. package/dist/rust-semantic-session-worker.js +2 -0
  245. package/dist/rust-semantic-worker.js +2 -0
  246. package/dist/{scip-cli-DeAbuJ2b.d.ts → scip-cli-BKL-26TZ.d.ts} +2 -2
  247. package/dist/{symbol-types-DaoeXKUt.d.ts → symbol-types-BgWU6lhL.d.ts} +2 -0
  248. package/dist/watch-server.js +42 -0
  249. package/docs/AGENT_GUIDE.md +110 -34
  250. package/docs/AI_FAILURE_MODES.md +8 -3
  251. package/docs/COMMAND_REFERENCE.md +10 -6
  252. package/docs/REGEX_POLICY.md +3 -1
  253. package/docs/accuracy-audit-checklist.md +300 -0
  254. package/docs/accuracy-hardening-goal.md +493 -54
  255. package/docs/analyzer-inventory.md +31 -23
  256. package/docs/analyzer-validation-ledger.md +51 -21
  257. package/package.json +2 -1
  258. package/scripts/build-scip-windows.mjs +7 -7
  259. package/skills/_shared/SKILL.md +20 -19
  260. package/skills/scip-calibrate/SKILL.md +4 -2
  261. package/skills/scip-hyper-optimization/SKILL.md +5 -1
  262. package/skills/scip-query/SKILL.md +1 -1
  263. package/skills/scip-setup/SKILL.md +104 -4
  264. package/skills/scip-verify/SKILL.md +20 -14
  265. package/dist/chunk-27HMTUJE.js +0 -3
  266. package/dist/chunk-27XEGMCT.js +0 -7
  267. package/dist/chunk-3AMWF6V5.js +0 -3
  268. package/dist/chunk-4SCMYKD6.js +0 -2
  269. package/dist/chunk-5AAAEZ2Z.js +0 -2
  270. package/dist/chunk-5JRMZMLM.js +0 -2
  271. package/dist/chunk-5VY3RIEI.js +0 -38
  272. package/dist/chunk-6JUAGXR4.js +0 -4
  273. package/dist/chunk-6KDOYKCB.js +0 -40
  274. package/dist/chunk-6KMTPNZL.js +0 -3
  275. package/dist/chunk-7COVQPQQ.js +0 -9
  276. package/dist/chunk-7S5E7KWT.js +0 -2
  277. package/dist/chunk-7TVFPOD7.js +0 -102
  278. package/dist/chunk-A6KSEIRN.js +0 -61
  279. package/dist/chunk-AAMURYOK.js +0 -4
  280. package/dist/chunk-BP7S6V3M.js +0 -20
  281. package/dist/chunk-BRBF3E5X.js +0 -35
  282. package/dist/chunk-BZXE3HO4.js +0 -6
  283. package/dist/chunk-CXQQOXSI.js +0 -10
  284. package/dist/chunk-EVZSAR3S.js +0 -2
  285. package/dist/chunk-GMOEX7EV.js +0 -2
  286. package/dist/chunk-GNG622H3.js +0 -3
  287. package/dist/chunk-GUDKRIGW.js +0 -7
  288. package/dist/chunk-GULVO6NF.js +0 -43
  289. package/dist/chunk-HZZQKNVE.js +0 -2
  290. package/dist/chunk-I4R3SNMR.js +0 -2
  291. package/dist/chunk-IMQFJ53K.js +0 -2
  292. package/dist/chunk-ISLWJ4PY.js +0 -10
  293. package/dist/chunk-IUSSGHJO.js +0 -2
  294. package/dist/chunk-J5WVNZ6O.js +0 -2
  295. package/dist/chunk-JJUX2OAP.js +0 -2
  296. package/dist/chunk-JZBGTSAB.js +0 -13
  297. package/dist/chunk-K5N5RNGM.js +0 -2
  298. package/dist/chunk-KSJ544IV.js +0 -5
  299. package/dist/chunk-LY7NMOBW.js +0 -2
  300. package/dist/chunk-N23FT4EZ.js +0 -2
  301. package/dist/chunk-NCVFKOLB.js +0 -2
  302. package/dist/chunk-PESEPWZO.js +0 -2
  303. package/dist/chunk-PMY4UFGV.js +0 -2
  304. package/dist/chunk-Q7PWDXL5.js +0 -5
  305. package/dist/chunk-QVGFVRKD.js +0 -2
  306. package/dist/chunk-R5336VHZ.js +0 -2
  307. package/dist/chunk-RLB6SG25.js +0 -2
  308. package/dist/chunk-SFDVBARK.js +0 -2
  309. package/dist/chunk-TG7QSYCJ.js +0 -2
  310. package/dist/chunk-UHPWZCYQ.js +0 -3
  311. package/dist/chunk-URSSPS5H.js +0 -2
  312. package/dist/chunk-WIBFXSYB.js +0 -6
  313. package/dist/chunk-WMO2VZZK.js +0 -3
  314. package/dist/chunk-WS3Z6W3M.js +0 -65
  315. package/dist/chunk-X3DTIEMU.js +0 -18
  316. package/dist/chunk-X5C43YVI.js +0 -2
  317. package/dist/chunk-X7CHWTZ2.js +0 -72
  318. package/dist/chunk-XDESMVOL.js +0 -4
  319. package/dist/chunk-XZBLZHXL.js +0 -16
  320. package/dist/chunk-YBGC7HTY.js +0 -3
  321. package/dist/chunk-ZMGBWSFZ.js +0 -2
@@ -0,0 +1,300 @@
1
+ # Command Accuracy Audit Checklist
2
+
3
+ Date: 2026-07-10
4
+ Status: Complete; see the 2026-07-11 closure certificate
5
+
6
+ ## Purpose
7
+
8
+ This checklist tracks whether each public command tells the truth about the
9
+ repositories it analyzes. An accuracy audit is a repeatable comparison between
10
+ a command's output and independently inspectable source, compiler, index, Git,
11
+ or runtime facts. What distinguishes it from a smoke test is that a successful
12
+ exit is not evidence of a correct answer.
13
+
14
+ Audit the underlying analyzer once, then give aliases and workflow wrappers a
15
+ separate parity test. Record results independently by language and framework;
16
+ an unsupported analysis is `not analyzed`, never a successful zero.
17
+
18
+ ## Evidence Gate Template
19
+
20
+ A finding-producing analyzer is complete only when it has all of the following.
21
+ These are audit criteria, not independently completable task boxes; each
22
+ command's dated certificate records whether the criteria were met or why the
23
+ verdict remains qualified, insufficient, or unsupported.
24
+
25
+ - a written truth rule;
26
+ - a pinned, read-only corpus with at least three repositories;
27
+ - uncapped baseline candidate counts;
28
+ - deterministic samples classified from cited source;
29
+ - named false-positive archetypes;
30
+ - at least one known-positive recall case;
31
+ - regression tests for every fixed archetype;
32
+ - a fresh replay after hardening; and
33
+ - a recorded certification state: certified, qualified, experimental,
34
+ unsupported, or insufficient evidence.
35
+
36
+ The certification thresholds and publication rules live in
37
+ [`accuracy-hardening-goal.md`](./accuracy-hardening-goal.md).
38
+ Program closure and the private-shadow decision live in
39
+ [`2026-07-11-accuracy-program-closure.md`](./validation/2026-07-11-accuracy-program-closure.md).
40
+
41
+ ## Certification Matrix
42
+
43
+ Legend: `certified`, `qualified`, `experimental`, `insufficient`, `unsupported`,
44
+ `pending`, or `parity`.
45
+
46
+ | Analyzer or command | TypeScript | Rust | Python | Audit kind | Notes |
47
+ | -------------------------------- | ------------ | ------------ | ------------ | -------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
48
+ | `dead` | certified | insufficient | insufficient | finding certification | Python lacks semantic/checker completeness; traceroot retained 2 source-backed candidates and Flask had 0. |
49
+ | `unused-imports` | certified | qualified | qualified | finding certification | Python literal `__all__` exports are honored; dynamic import completeness is not claimed. |
50
+ | `unused-params` | insufficient | unsupported | unsupported | finding certification | 5/5 valid, but all rows came from one repository. |
51
+ | `cycles` | insufficient | qualified | insufficient | graph-fact certification | Python source/index path is supported, but the corpus supplied no natural positive or exhaustive oracle. |
52
+ | `duplicate-bodies` | certified | qualified | insufficient | measurement certification | Python normalized-body equality is supported but had no natural positive population. |
53
+ | `complexity` | certified | qualified | qualified | measurement certification | Python source-derived branch counts are measurements, not runtime-behavior verdicts. |
54
+ | `isolated` | insufficient | insufficient | insufficient | finding certification | Python has supported zeros but lacks a natural positive and semantic completeness. |
55
+ | `redundant-reexports` | certified | insufficient | unsupported | finding certification | The barrel/export model does not analyze Python module exports. |
56
+ | `not-implemented` | insufficient | unsupported | unsupported | finding certification | Placeholder syntax and reachability are JavaScript/TypeScript-specific. |
57
+ | `decorative-checkers` | insufficient | unsupported | unsupported | finding certification | Callable/failure syntax is JavaScript/TypeScript-specific. |
58
+ | `test-quality` | insufficient | unsupported | unsupported | finding certification | The source scan is restricted to JavaScript/TypeScript extensions. |
59
+ | `recent-duplicates` | insufficient | qualified | insufficient | history relationship | Python completed with no natural relationship population. |
60
+ | `similar` | certified | qualified | insufficient | relationship certification | Python completed with no natural shared-callee population. |
61
+ | `similar-files` | certified | qualified | insufficient | relationship certification | Python completed with no natural distinctive-overlap population. |
62
+ | `similar-chains` | qualified | qualified | qualified | bounded relationship | Traceroot returned 1,994 relationships within the internal candidate frame. |
63
+ | `similar-signatures` | certified | qualified | qualified | measurement certification | 11 traceroot and 2 Flask signature-shape relationships were source-valid. |
64
+ | `twin-drift` | qualified | qualified | insufficient | relationship certification | Python convention dunders are excluded; the replay then had no natural positive population. |
65
+ | `co-change` | certified | qualified | qualified | history relationship | Python pairs are exact Git-history facts; design coupling remains contextual. |
66
+ | `doc-drift` | certified | qualified | qualified | history relationship | Python citation/change-order facts are supported; priority remains contextual. |
67
+ | `drift` | qualified | insufficient | qualified | subtype relationship | Python dependency edges are factual; inferred layer policy remains a signal. |
68
+ | `wrapper-candidates` | certified | qualified | qualified | relationship certification | Python disclosed two single-caller relationships; decorator/runtime boundaries require review. |
69
+ | `passthrough-candidates` | certified | qualified | insufficient | relationship certification | Python completed with no natural positive population. |
70
+ | `stale-abstractions` | certified | qualified | insufficient | relationship certification | Two live Pydantic families were fixed; semantic/framework completeness is unavailable. |
71
+ | `extract-candidates` | certified | qualified | insufficient | measurement certification | Python completed with no natural positive population. |
72
+ | `locality-candidates` | certified | qualified | qualified | relationship certification | 39 Python ownership/destination relationships were disclosed; movement remains contextual. |
73
+ | `coupling` | certified | qualified | qualified | graph-fact certification | 108 Python shared-indexed-symbol relationships were reproduced. |
74
+ | `bottlenecks` | certified | qualified | qualified | graph-fact certification | Three disclosed Python centrality facts are supported; utility remains contextual. |
75
+ | `deep-chains` | certified | qualified | qualified | graph-fact certification | 15 condensed Python dependency paths were reproduced. |
76
+ | `complexity-hotspots` | certified | qualified | qualified | measurement certification | 310 Python composite source/index measurements are supported, not defect verdicts. |
77
+ | `hotspots` | certified | qualified | qualified | graph-fact certification | 219 Python indexed reference-count rows were reproduced. |
78
+ | `fan-in` | certified | qualified | qualified | graph-fact certification | 58 exact Python indexed-symbol counts do not claim runtime reachability. |
79
+ | `fan-out` | certified | qualified | qualified | graph-fact certification | 36 Python indexed external-symbol counts were reproduced. |
80
+ | `react-component-duplicates` | certified | unsupported | unsupported | framework relationship | 48/48 structural relationships valid across three React repositories; extraction remains contextual. |
81
+ | `react-hook-candidates` | certified | unsupported | unsupported | framework relationship | 48/48 behavior relationships valid across three React repositories; hook extraction remains contextual. |
82
+ | `react-large-component-pressure` | certified | unsupported | unsupported | framework measurement | 48/48 pressure rows valid after dominant-axis and route-context hardening. |
83
+ | `vue-component-duplicates` | certified | unsupported | unsupported | framework relationship | 41/41 structural relationships valid across four Vue repositories; recommendation utility remains contextual. |
84
+ | `vue-composable-candidates` | certified | unsupported | unsupported | framework relationship | 48/48 behavior relationships valid across three repositories with findings. |
85
+ | `vue-large-view-pressure` | certified | unsupported | unsupported | framework measurement | 64/64 pressure rows valid across four Vue repositories. |
86
+ | `augment-vue` | qualified | unsupported | unsupported | reference completeness | 841 exact-oracle component mentions across three repositories; broader local/property identity is withheld and unsupported. |
87
+
88
+ ### TypeScript factual detector slice
89
+
90
+ These boxes mean the detector was run uncapped on the pinned corpus, reviewed,
91
+ hardened where evidence proved a defect, replayed, and assigned an honest
92
+ state. A checked box does not upgrade an `insufficient` state to `certified`.
93
+
94
+ - [x] `unused-imports` — certified
95
+ - [x] `unused-params` — insufficient population evidence
96
+ - [x] `cycles` — insufficient population evidence
97
+ - [x] `duplicate-bodies` — certified
98
+ - [x] `complexity` — certified
99
+ - [x] `isolated` — insufficient population evidence
100
+ - [x] `redundant-reexports` — certified
101
+ - [x] `not-implemented` — supported zero; insufficient population evidence
102
+ - [x] `decorative-checkers` — supported zero; insufficient population evidence
103
+ - [x] `test-quality` — insufficient subtype and repository breadth
104
+
105
+ ### Rust detector slice
106
+
107
+ The Rust renewal used three pinned repositories for the broad detector replay
108
+ and retains the prior six-repository `dead` expansion. Checked boxes mean the
109
+ row has an explicit applicability boundary and verdict, not that it is
110
+ publication-certified.
111
+
112
+ - [x] Factual detectors — qualified, insufficient, or unsupported as recorded
113
+ - [x] Similarity/history detectors — trait and convention false positives hardened
114
+ - [x] Architecture detectors — relationship facts separated from removal advice
115
+ - [x] Graph-risk detectors — indexed facts qualified against macro/whole-program limits
116
+ - [x] Rust applicability — trait, impl, derive, macro, generated, surface,
117
+ target, feature, test, binary, and ABI boundaries recorded
118
+ - [x] Untouched holdout — Vega retained 62 ordinary recent-duplicate relationships
119
+
120
+ Certificate:
121
+ [`2026-07-11-rust-detector-certification.md`](./validation/2026-07-11-rust-detector-certification.md).
122
+
123
+ ### Python detector slice
124
+
125
+ The Python audit pinned an indexer/syntax corpus, a FastAPI/Pydantic/Celery
126
+ production corpus, and a small Flask holdout. Checked boxes mean capability and
127
+ verdict are explicit; they do not imply semantic completeness.
128
+
129
+ - [x] Pinned three repositories with distinct evidence roles
130
+ - [x] Separated index, source, semantic-provider, framework, and checker capability
131
+ - [x] Hardened dunder, model-liveness, and `__all__` false-positive families
132
+ - [x] Marked TS/JS-only analyzers unsupported rather than clean
133
+ - [x] Replayed the Flask holdout and retained ordinary relationships
134
+
135
+ Certificate:
136
+ [`2026-07-11-python-detector-certification.md`](./validation/2026-07-11-python-detector-certification.md).
137
+
138
+ ## Similarity and Duplication
139
+
140
+ TypeScript general similarity certification is complete. Execution plan and
141
+ certificate:
142
+ [`2026-07-10-typescript-similarity-detector-certification.md`](./plans/2026-07-10-typescript-similarity-detector-certification.md).
143
+ [`2026-07-10-typescript-similarity-detectors.md`](./validation/2026-07-10-typescript-similarity-detectors.md).
144
+
145
+ - [x] `recent-duplicates` — insufficient population evidence
146
+ - [x] `similar` — certified relationship
147
+ - [x] `similar-files` — certified relationship
148
+ - [x] `similar-chains` — qualified within a bounded candidate frame
149
+ - [x] `similar-signatures` — certified relationship
150
+ - [x] `twin-drift` — qualified; 37/40 valid
151
+ - [x] `react-component-duplicates` — certified relationship
152
+ - [x] `vue-component-duplicates` — certified relationship
153
+ - [x] `convergence` alias parity with `similar --plan`
154
+ - [x] `twin-ab` — certified generated-scaffold correctness for importable named
155
+ TypeScript callables; private-callable support is outside the current
156
+ contract
157
+
158
+ For each analyzer, verify the measured similarity independently from whether
159
+ consolidation would improve the code.
160
+
161
+ ## Architecture and Refactoring Signals
162
+
163
+ - [x] `wrapper-candidates` — certified production single-caller relationship
164
+ - [x] `passthrough-candidates` — certified literal-forwarding relationship
165
+ - [x] `stale-abstractions` — certified relationship
166
+ - [x] `extract-candidates` — certified measurement; extraction remains contextual
167
+ - [x] `locality-candidates` — certified relationship; movement remains contextual
168
+ - [x] `drift` — qualified; subtype breadth incomplete
169
+ - [x] `co-change` — certified relationship
170
+ - [x] `doc-drift` — certified relationship
171
+ - [x] `coupling` — certified graph fact
172
+ - [x] `bottlenecks` — certified disclosed graph fact; utility remains contextual
173
+ - [x] `deep-chains` — certified condensed-component path
174
+ - [x] `complexity-hotspots` — certified measurement
175
+ - [x] `hotspots` — certified graph fact
176
+ - [x] `fan-in` — certified exact-symbol graph fact
177
+ - [x] `fan-out` — certified graph fact
178
+
179
+ These audits must label the measured relationship separately from the proposed
180
+ action. A real relationship can still be an unhelpful recommendation.
181
+
182
+ ## React and Vue Signals
183
+
184
+ - [x] `react-component-duplicates` — 48/48, certified relationship
185
+ - [x] `react-hook-candidates` — 48/48, certified relationship
186
+ - [x] `react-large-component-pressure` — 48/48, certified measurement
187
+ - [x] `vue-component-duplicates` — 41/41, certified relationship
188
+ - [x] `vue-composable-candidates` — 48/48, certified relationship
189
+ - [x] `vue-large-view-pressure` — 64/64, certified measurement
190
+ - [x] `augment-vue` — qualified exact cross-file component identity across
191
+ three repositories; broader local/property identity unsupported
192
+
193
+ Use framework-specific repositories and record framework applicability rather
194
+ than treating absent framework evidence as a clean result.
195
+
196
+ Framework certificate:
197
+ [`2026-07-11-react-vue-detectors.md`](./validation/2026-07-11-react-vue-detectors.md).
198
+ The six detector measurements are certified; their sampled refactoring advice
199
+ was not independently actionable without local design context.
200
+
201
+ ## Diff, Cleanup, and Health Workflows
202
+
203
+ - [x] `incomplete-migration` — qualified
204
+ - [x] `cleanup-plan` — qualified; inherits liveness limits
205
+ - [x] `cleanup-apply` — qualified; bounded by detected checker capability
206
+ - [x] `diff-gate` — qualified aggregation
207
+ - [x] `echo` — qualified
208
+ - [x] `incomplete-migration` — qualified
209
+ - [x] `co-change-partner` — qualified
210
+ - [x] `twin-partner` — qualified
211
+ - [x] `coverage-contract` — certified exact comparison
212
+ - [x] `doc-reference` — qualified citation/change fact
213
+ - [x] `unused-params` — insufficient underlying population
214
+ - [x] `new-dead` — qualified candidate with unconfirmed tier
215
+ - [x] `baseline` — qualified exact set difference
216
+ - [x] `health` — experimental composite; private shadow only
217
+ - [x] `self-audit` — qualified; partial oracles withhold precision
218
+ - [x] `effectiveness` — qualified ledger-transition facts
219
+ - [x] `affected` — qualified indexed closure
220
+ - [x] `change-surface` — qualified indexed consumer counts
221
+ - [x] `diff-impact` — qualified hunk attribution and indexed impact
222
+ - [x] `plan-context` — qualified aggregation parity
223
+
224
+ Composite commands reuse certified detector rows, then receive an aggregation,
225
+ scope, suppression, and status-propagation audit. They do not inherit trust
226
+ merely because one input detector is certified.
227
+
228
+ Certificate:
229
+ [`2026-07-11-composite-workflow-certification.md`](./validation/2026-07-11-composite-workflow-certification.md).
230
+
231
+ ## Navigation and Graph Answers
232
+
233
+ - [x] `files` — certified indexed-path match
234
+ - [x] `methods` — qualified direct lexical methods
235
+ - [x] `refs` — qualified resolved/source reference sites
236
+ - [x] `trace` — qualified definition plus reference parity
237
+ - [x] `deps` — qualified indexed/source file edges
238
+ - [x] `rdeps` — qualified inverse file edges
239
+ - [x] `system` — qualified module aggregation
240
+ - [x] `surface` — qualified indexed consumer surface
241
+ - [x] `imports` — qualified binding/path evidence
242
+ - [x] `imported-by` — qualified resolved importers
243
+ - [x] `outline` — qualified lexical tree and ranges
244
+ - [x] `members` — qualified direct lexical children
245
+ - [x] `by-kind` — qualified stored/inferred kinds
246
+ - [x] `kind-counts` — certified indexed aggregation
247
+ - [x] `hierarchy` — qualified lexical ancestry, not type inheritance
248
+ - [x] `code` — qualified bounded definition source
249
+ - [x] `dataflow` — qualified reference flow, not value flow
250
+ - [x] `slice` — qualified bounded reference closure
251
+ - [x] `call-graph` — qualified callable-owned call edges
252
+ - [x] `stats` — certified generation-local database counts
253
+
254
+ These commands need exact-answer comparisons against compiler, source, or
255
+ hand-established graph oracles, including aliases, overloads, re-exports,
256
+ traits, implementations, inheritance, generated files, and cross-language
257
+ boundaries.
258
+
259
+ Certificate:
260
+ [`2026-07-11-navigation-graph-certification.md`](./validation/2026-07-11-navigation-graph-certification.md).
261
+
262
+ ## Indexing and Operations
263
+
264
+ - [x] `reindex` — certified atomic generation publication
265
+ - [x] `augment-sources` — qualified registered source-fact augmentation
266
+ - [x] `watch` — certified per-project lifecycle and refresh serialization
267
+ - [x] `status` — certified observable artifact/service snapshot
268
+ - [x] `work-audit` — qualified exact arithmetic over instrumented work
269
+ - [x] `bench` — certified environment-local measurement and cache restore
270
+ - [x] `capabilities` — qualified runtime/tool capability disclosure
271
+ - [x] `capability-matrix` — alias result parity
272
+ - [x] `doctor` — qualified aggregate operational diagnosis
273
+ - [x] `check-deps` — qualified point-in-time dependency probe
274
+ - [x] `config-validate` — certified deterministic validation
275
+ - [x] `suppress` — certified repository-record persistence
276
+ - [x] `init` — certified non-destructive config creation
277
+ - [x] `setup` — qualified composite setup orchestration
278
+ - [x] `setup-agent` — certified owned managed-block lifecycle
279
+ - [x] `setup-hooks` — certified checkout-local hook lifecycle
280
+ - [x] `setup-ci` — certified owned workflow generation
281
+ - [x] `uninstall` — certified ownership-aware removal
282
+ - [x] `install-skills` — certified owned symlink lifecycle
283
+ - [x] `tla` — qualified mapped model/checker workflow
284
+
285
+ Operational audits exercise cold and incremental indexes, additions, edits,
286
+ deletions, renames, branch switches, stale caches, interrupted publication,
287
+ concurrent invocations, daemon sleep/wake, idempotent setup, and clean removal.
288
+
289
+ Certificate:
290
+ [`2026-07-11-indexing-operations-certification.md`](./validation/2026-07-11-indexing-operations-certification.md).
291
+
292
+ ## Campaign Order
293
+
294
+ 1. Finish the TypeScript factual detector matrix above.
295
+ 2. Certify TypeScript similarity and history-derived analyzers.
296
+ 3. Certify TypeScript architectural and framework signals.
297
+ 4. Repeat supported detector campaigns for Rust.
298
+ 5. Build and certify Python semantic and framework coverage.
299
+ 6. Audit composite workflows and public evidence views.
300
+ 7. Complete navigation and operational reliability matrices.