scip-query 0.20.0 → 0.21.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +81 -0
- package/README.md +255 -884
- package/dist/augment-vue-worker.js +1 -1
- package/dist/by-kind-XXGZGNZ6.js +2 -0
- package/dist/call-graph-VGY3R4L3.js +2 -0
- package/dist/call-graph-evidence-lZa2dwQA.d.ts +11 -0
- package/dist/change-analysis-types-CCtoCHbC.d.ts +9 -0
- package/dist/chunk-26CT72HM.js +2 -0
- package/dist/chunk-27OUNZW5.js +3 -0
- package/dist/chunk-2LJLEM5B.js +2 -0
- package/dist/chunk-3KXFB2FM.js +2 -0
- package/dist/chunk-3T5U2EQ2.js +2 -0
- package/dist/chunk-3TNRNKAT.js +2 -0
- package/dist/{chunk-PXY7F6Y4.js → chunk-3XQLJG7V.js} +5 -5
- package/dist/chunk-3XZELASU.js +2 -0
- package/dist/chunk-3YETOKNO.js +4 -0
- package/dist/chunk-47WX6UC4.js +2 -0
- package/dist/{chunk-7SQQWSY3.js → chunk-4HQYNZ3P.js} +2 -2
- package/dist/chunk-4IASLUOP.js +3 -0
- package/dist/{chunk-KMKTIO2G.js → chunk-4KIPF45P.js} +2 -2
- package/dist/chunk-4SZJF4GK.js +2 -0
- package/dist/chunk-4TOU7HHQ.js +2 -0
- package/dist/chunk-4ZCLDH6T.js +11 -0
- package/dist/{chunk-DQGFVPUV.js → chunk-527HV7JY.js} +3 -3
- package/dist/{chunk-ZTETIQ35.js → chunk-5BJPJUXF.js} +2 -2
- package/dist/chunk-5J3A6RBZ.js +16 -0
- package/dist/chunk-5KIJMEPC.js +2 -0
- package/dist/{chunk-JDOEX4E6.js → chunk-5QM7QT5B.js} +2 -2
- package/dist/chunk-5Z2H76VD.js +11 -0
- package/dist/chunk-63TFRBMB.js +2 -0
- package/dist/chunk-67FK5KGV.js +3 -0
- package/dist/chunk-6DO3VBLV.js +2 -0
- package/dist/chunk-6LS3IG2I.js +13 -0
- package/dist/chunk-6QN4FYQW.js +2 -0
- package/dist/chunk-6X4KO5A7.js +11 -0
- package/dist/chunk-743MEVFJ.js +8 -0
- package/dist/chunk-7G2WIVIX.js +2 -0
- package/dist/chunk-7KCZELVM.js +2 -0
- package/dist/chunk-7MUHSZGN.js +3 -0
- package/dist/chunk-7YZGSLW6.js +3 -0
- package/dist/chunk-7Z4GMCHM.js +117 -0
- package/dist/{chunk-32LVLCLN.js → chunk-AAOEROT3.js} +3 -3
- package/dist/chunk-AFRS7WJU.js +26 -0
- package/dist/chunk-ANCHW2R4.js +57 -0
- package/dist/{chunk-SXP2MBJH.js → chunk-AQF35NGT.js} +2 -2
- package/dist/chunk-ARGPDW2Y.js +6 -0
- package/dist/chunk-B3AREUQK.js +16 -0
- package/dist/chunk-BCTCADNB.js +2 -0
- package/dist/chunk-BM4OTGSY.js +3 -0
- package/dist/chunk-BMKTDJI6.js +16 -0
- package/dist/chunk-BOJ5SVE2.js +2 -0
- package/dist/{chunk-WXZLAAWK.js → chunk-BVR44XXB.js} +2 -2
- package/dist/{chunk-RUJURYSV.js → chunk-BYXWXLKM.js} +2 -2
- package/dist/chunk-BZCRHP46.js +3 -0
- package/dist/chunk-BZYSGZRK.js +2 -0
- package/dist/chunk-C52Q3JEQ.js +2 -0
- package/dist/chunk-C7WSQA6A.js +21 -0
- package/dist/{chunk-BDCC2NPY.js → chunk-CNT4ND5O.js} +2 -2
- package/dist/chunk-CQVDALWQ.js +2 -0
- package/dist/chunk-CTO3TRX7.js +2 -0
- package/dist/chunk-CXT3GZSQ.js +2 -0
- package/dist/{chunk-JVYA47YU.js → chunk-DGM2RJ3I.js} +2 -2
- package/dist/{chunk-7PIO7NKH.js → chunk-DK6MB565.js} +2 -2
- package/dist/chunk-DNPETNXT.js +2 -0
- package/dist/chunk-DRENNWRG.js +2 -0
- package/dist/chunk-DUDUIT5P.js +2 -0
- package/dist/chunk-DXEJ4FLZ.js +21 -0
- package/dist/chunk-DXYMTQZ4.js +2 -0
- package/dist/chunk-DZA7MQMU.js +6 -0
- package/dist/{chunk-ZHXX42OH.js → chunk-DZNWXJN2.js} +4 -4
- package/dist/{chunk-CJST5ETY.js → chunk-E6N6YTVM.js} +2 -2
- package/dist/chunk-E7CJ6O72.js +2 -0
- package/dist/chunk-EJHNTAEE.js +2 -0
- package/dist/chunk-EPLE5O5O.js +2 -0
- package/dist/chunk-F4FNK44D.js +2 -0
- package/dist/chunk-FCGMQETU.js +2 -0
- package/dist/chunk-FIO44MVK.js +3 -0
- package/dist/chunk-FLSVYEPL.js +2 -0
- package/dist/chunk-FOP7HD6H.js +3 -0
- package/dist/chunk-FSPENGSU.js +4 -0
- package/dist/chunk-FUUDUAKM.js +2 -0
- package/dist/chunk-FYCH2EYQ.js +2 -0
- package/dist/{chunk-5E4WNAVD.js → chunk-G47MFF47.js} +2 -2
- package/dist/chunk-G6VV7ROY.js +2 -0
- package/dist/chunk-GBZCVYWA.js +2 -0
- package/dist/chunk-GSHTVE56.js +3 -0
- package/dist/chunk-GTZFKDP3.js +2 -0
- package/dist/{chunk-2HPVVXM5.js → chunk-H2RBDP5S.js} +2 -2
- package/dist/chunk-H5EXS3HM.js +2 -0
- package/dist/chunk-HR5JYLVV.js +4 -0
- package/dist/chunk-HW7FASEL.js +2 -0
- package/dist/chunk-HYU4W353.js +10 -0
- package/dist/{chunk-FKSELJQF.js → chunk-I2LY3KN7.js} +2 -2
- package/dist/chunk-IGBQVEHE.js +2 -0
- package/dist/{chunk-3G66UZBH.js → chunk-IH3K5J6K.js} +2 -2
- package/dist/chunk-IHGK3SZ7.js +29 -0
- package/dist/chunk-IM23CSG5.js +2 -0
- package/dist/chunk-IQMGNIGY.js +2 -0
- package/dist/chunk-ITF3CWS5.js +2 -0
- package/dist/chunk-IZKJQQCQ.js +3 -0
- package/dist/chunk-J4HUBIVF.js +5 -0
- package/dist/{chunk-AZJQQKDD.js → chunk-JGMD6JGB.js} +2 -2
- package/dist/chunk-JLZWYDCZ.js +4 -0
- package/dist/chunk-JO6FK3Q5.js +2 -0
- package/dist/chunk-JSHDCVUM.js +81 -0
- package/dist/chunk-K2DZCH2K.js +2 -0
- package/dist/chunk-K63CAPS2.js +23 -0
- package/dist/chunk-KBIC6JHJ.js +2 -0
- package/dist/chunk-KFFQURUZ.js +2 -0
- package/dist/chunk-KFOYCQAJ.js +9 -0
- package/dist/chunk-KGKCJFWZ.js +6 -0
- package/dist/chunk-KK7GPALL.js +28 -0
- package/dist/chunk-L7WRUNKJ.js +2 -0
- package/dist/{chunk-W4ETQAXM.js → chunk-LFWB7TOJ.js} +2 -2
- package/dist/chunk-LGVTIZPV.js +61 -0
- package/dist/chunk-LIWIV26I.js +29 -0
- package/dist/chunk-LJMWILX6.js +3 -0
- package/dist/{chunk-BPAPWKP6.js → chunk-LXMW6ZAX.js} +8 -8
- package/dist/chunk-MFBVUQJZ.js +2 -0
- package/dist/{chunk-O64IZ6UX.js → chunk-MLTKGHD2.js} +2 -2
- package/dist/chunk-MLTSTKXD.js +5 -0
- package/dist/chunk-MR4ZKWO6.js +57 -0
- package/dist/{chunk-EN3O7VJA.js → chunk-MRXBLYRE.js} +2 -2
- package/dist/chunk-MXNGIEPU.js +3 -0
- package/dist/chunk-N4EFQIRX.js +20 -0
- package/dist/chunk-ND3BWIVN.js +7 -0
- package/dist/chunk-NODZYYGC.js +2 -0
- package/dist/chunk-NP4JFCLE.js +133 -0
- package/dist/chunk-NQXWWE6S.js +8 -0
- package/dist/chunk-NSDPPUDY.js +7 -0
- package/dist/chunk-NT4NVEHU.js +18 -0
- package/dist/chunk-O2VY47Y5.js +325 -0
- package/dist/chunk-O3EX5STE.js +5 -0
- package/dist/chunk-O4PZFAXA.js +3 -0
- package/dist/chunk-OA2BO4DR.js +2 -0
- package/dist/chunk-OFZVFIDF.js +3 -0
- package/dist/{chunk-PQCI4SQX.js → chunk-OG5UK2K7.js} +2 -2
- package/dist/chunk-OMVNRPST.js +2 -0
- package/dist/{chunk-7BAVHKMJ.js → chunk-OU6SDWAM.js} +9 -9
- package/dist/{chunk-LY4WC4AD.js → chunk-OY7PCALC.js} +2 -2
- package/dist/{chunk-A73XVBCR.js → chunk-P3UFF22M.js} +2 -2
- package/dist/chunk-PAZSBPJR.js +3 -0
- package/dist/chunk-PJBYDCBQ.js +38 -0
- package/dist/chunk-PRLU3I7G.js +79 -0
- package/dist/chunk-PU6XDQ2X.js +16 -0
- package/dist/{chunk-3CLX5EOX.js → chunk-PWEQ6CZZ.js} +2 -2
- package/dist/{chunk-XSRF6Q77.js → chunk-PX6QNUYF.js} +2 -2
- package/dist/chunk-Q4MRRB3C.js +3 -0
- package/dist/chunk-QGVUPYBC.js +35 -0
- package/dist/chunk-QH5Q6M5C.js +2 -0
- package/dist/chunk-QLWZUFDT.js +2 -0
- package/dist/chunk-QN2AI3D2.js +3 -0
- package/dist/{chunk-JAYYFEQY.js → chunk-QZCACNV5.js} +2 -2
- package/dist/chunk-RNKRYK6B.js +4 -0
- package/dist/chunk-RSUH7G5T.js +29 -0
- package/dist/chunk-RZWBTKXO.js +5 -0
- package/dist/chunk-SBFDPHKH.js +4 -0
- package/dist/{chunk-HX4GQPZP.js → chunk-SGSPCEFC.js} +3 -3
- package/dist/chunk-SIGVQT43.js +2 -0
- package/dist/chunk-SRIZDEWX.js +4 -0
- package/dist/chunk-SV2LEFVM.js +2 -0
- package/dist/chunk-T2PBOVDI.js +3 -0
- package/dist/chunk-TP2X2C2Y.js +3 -0
- package/dist/chunk-U2MNECDU.js +2 -0
- package/dist/chunk-U7DOYZDH.js +2 -0
- package/dist/chunk-UAQQR55F.js +2 -0
- package/dist/chunk-UBETC3Q2.js +2 -0
- package/dist/chunk-UEQORB2A.js +2 -0
- package/dist/chunk-UM56ZET4.js +38 -0
- package/dist/chunk-UXNXOMXJ.js +2 -0
- package/dist/{chunk-6SHPK5ZE.js → chunk-V6XENWOF.js} +2 -2
- package/dist/chunk-VJAD5WX5.js +2 -0
- package/dist/chunk-VRJG7N3I.js +453 -0
- package/dist/chunk-W7HN6V4E.js +7 -0
- package/dist/chunk-WCIKJ2E3.js +3 -0
- package/dist/chunk-WEXQYJY3.js +5 -0
- package/dist/chunk-WOPZX5GM.js +2 -0
- package/dist/chunk-WRQXLNYE.js +9 -0
- package/dist/{chunk-XKWKXZKW.js → chunk-WV6R37XV.js} +2 -2
- package/dist/{chunk-N5W4YZMK.js → chunk-WZ7V4BQV.js} +2 -2
- package/dist/chunk-WZRNEVYC.js +2 -0
- package/dist/chunk-X5MWO4DM.js +7 -0
- package/dist/chunk-XDAUYDFT.js +2 -0
- package/dist/{chunk-L7AW2QB5.js → chunk-XDOEHEET.js} +2 -2
- package/dist/chunk-XDQX6LDT.js +4 -0
- package/dist/chunk-XFRHBAIT.js +2 -0
- package/dist/chunk-XIPGCT3D.js +5 -0
- package/dist/chunk-XKM5D2XS.js +16 -0
- package/dist/chunk-XNF5T4T2.js +4 -0
- package/dist/chunk-Y2S4YNLH.js +3 -0
- package/dist/chunk-YA72ZUKO.js +2 -0
- package/dist/chunk-YBWE6J32.js +43 -0
- package/dist/chunk-YCXQQ3YB.js +2 -0
- package/dist/chunk-YDTK77JP.js +43 -0
- package/dist/chunk-YF25RQER.js +4 -0
- package/dist/chunk-YKHL4J3G.js +2 -0
- package/dist/chunk-YLNCTPOI.js +4 -0
- package/dist/chunk-YR7VRWNX.js +2 -0
- package/dist/chunk-YT4IQBET.js +3 -0
- package/dist/chunk-YUKYB54I.js +1 -0
- package/dist/chunk-Z2KGMIL4.js +2 -0
- package/dist/chunk-Z2QB75BS.js +3 -0
- package/dist/chunk-Z67JOKRE.js +554 -0
- package/dist/chunk-ZGDHC5AT.js +2 -0
- package/dist/chunk-ZMS4YCY7.js +2 -0
- package/dist/chunk-ZNW5A5VX.js +3 -0
- package/dist/{chunk-TFRAYKN6.js → chunk-ZP2WUVZ5.js} +2 -2
- package/dist/chunk-ZQUNCTEZ.js +2 -0
- package/dist/cli-main.js +8 -0
- package/dist/cli.js +1 -3
- package/dist/code-AXLJBZ6T.js +2 -0
- package/dist/code-B17qEMbt.d.ts +121 -0
- package/dist/code-result-json-CTZHAQXJ.js +2 -0
- package/dist/command-descriptors-6INSCKLW.js +342 -0
- package/dist/{config-types-jVM3D7MA.d.ts → config-types-B9B60MiR.d.ts} +199 -23
- package/dist/dataflow-AFXY423Q.js +2 -0
- package/dist/{db-B5PM5yNk.d.ts → db-BwIVAYNB.d.ts} +1 -1
- package/dist/dependence-slice-2G4X6VSJ.js +2 -0
- package/dist/deps-LMCAV5DO.js +2 -0
- package/dist/direct-navigation-2ONV22Y2.js +3 -0
- package/dist/entry-map-ZOC3VXO5.js +2 -0
- package/dist/exploration-topology-BG4v30HZ.d.ts +256 -0
- package/dist/file-dep-graph-Bqg3t3Px.d.ts +4 -0
- package/dist/file-kind-BKCVMNUf.d.ts +10 -0
- package/dist/files-WJQJLHMH.js +2 -0
- package/dist/graph-evidence-Bjyky2V4.d.ts +126 -0
- package/dist/graph-exploration-contract-CqDsnPQL.d.ts +7 -0
- package/dist/{health-Do5TKSJI.d.ts → health-CPp2Jf1Z.d.ts} +33 -34
- package/dist/hierarchy-ASNIHAX4.js +2 -0
- package/dist/imports-JICEKDKK.js +2 -0
- package/dist/index.d.ts +4 -31
- package/dist/index.js +1 -1
- package/dist/members-C5H2K3MS.js +2 -0
- package/dist/methods-KZOZHSD4.js +2 -0
- package/dist/next-anchor-candidates-BwMczMvX.d.ts +90 -0
- package/dist/output-continuation-command-NX3RH3TP.js +3 -0
- package/dist/output-pagination-3OFL2MJV.js +19 -0
- package/dist/postinstall.js +1 -1
- package/dist/project-reindex-A2SXUH2H.js +3 -0
- package/dist/queries/affected.d.ts +22 -4
- package/dist/queries/affected.js +1 -1
- package/dist/queries/anchors.d.ts +123 -0
- package/dist/queries/anchors.js +2 -0
- package/dist/queries/architecture.d.ts +3 -2
- package/dist/queries/architecture.js +1 -1
- package/dist/queries/bottlenecks.d.ts +26 -7
- package/dist/queries/bottlenecks.js +1 -1
- package/dist/queries/by-kind.d.ts +2 -2
- package/dist/queries/by-kind.js +1 -1
- package/dist/queries/call-graph.d.ts +17 -3
- package/dist/queries/call-graph.js +1 -1
- package/dist/queries/change-surface.d.ts +2 -2
- package/dist/queries/change-surface.js +1 -1
- package/dist/queries/cleanup-plan.d.ts +2 -2
- package/dist/queries/cleanup-plan.js +1 -1
- package/dist/queries/co-change.d.ts +2 -2
- package/dist/queries/co-change.js +1 -1
- package/dist/queries/code.d.ts +5 -26
- package/dist/queries/code.js +1 -1
- package/dist/queries/complexity-hotspots.d.ts +2 -2
- package/dist/queries/complexity-hotspots.js +1 -1
- package/dist/queries/complexity.d.ts +2 -2
- package/dist/queries/complexity.js +1 -1
- package/dist/queries/context.d.ts +145 -0
- package/dist/queries/context.js +2 -0
- package/dist/queries/convergence.d.ts +2 -2
- package/dist/queries/convergence.js +1 -1
- package/dist/queries/coupling.d.ts +8 -3
- package/dist/queries/coupling.js +1 -1
- package/dist/queries/cycles.d.ts +34 -7
- package/dist/queries/cycles.js +1 -1
- package/dist/queries/dataflow.d.ts +40 -14
- package/dist/queries/dataflow.js +1 -1
- package/dist/queries/dead.d.ts +2 -2
- package/dist/queries/dead.js +1 -1
- package/dist/queries/decorative-checkers.d.ts +3 -3
- package/dist/queries/decorative-checkers.js +1 -1
- package/dist/queries/deep-chains.d.ts +4 -38
- package/dist/queries/deep-chains.js +1 -1
- package/dist/queries/dependence-slice.d.ts +47 -0
- package/dist/queries/dependence-slice.js +2 -0
- package/dist/queries/dependency-depth.d.ts +49 -0
- package/dist/queries/dependency-depth.js +2 -0
- package/dist/queries/deps.d.ts +4 -2
- package/dist/queries/deps.js +1 -1
- package/dist/queries/diff-impact.d.ts +3 -3
- package/dist/queries/diff-impact.js +1 -1
- package/dist/queries/doc-drift.d.ts +4 -4
- package/dist/queries/doc-drift.js +1 -1
- package/dist/queries/drift.d.ts +2 -2
- package/dist/queries/drift.js +1 -1
- package/dist/queries/duplicate-bodies.d.ts +2 -2
- package/dist/queries/duplicate-bodies.js +1 -1
- package/dist/queries/entry-map.d.ts +121 -0
- package/dist/queries/entry-map.js +2 -0
- package/dist/queries/evidence.d.ts +70 -0
- package/dist/queries/evidence.js +2 -0
- package/dist/queries/extract-candidates.d.ts +2 -2
- package/dist/queries/extract-candidates.js +1 -1
- package/dist/queries/fan.d.ts +18 -5
- package/dist/queries/fan.js +1 -1
- package/dist/queries/files.d.ts +2 -2
- package/dist/queries/files.js +1 -1
- package/dist/queries/health.d.ts +4 -3
- package/dist/queries/health.js +1 -1
- package/dist/queries/hierarchy.d.ts +5 -3
- package/dist/queries/hierarchy.js +1 -1
- package/dist/queries/hotspots.d.ts +11 -5
- package/dist/queries/hotspots.js +1 -1
- package/dist/queries/imports.d.ts +2 -2
- package/dist/queries/imports.js +1 -1
- package/dist/queries/incomplete-migration.d.ts +4 -4
- package/dist/queries/incomplete-migration.js +1 -1
- package/dist/queries/index.d.ts +56 -136
- package/dist/queries/index.js +1 -1
- package/dist/queries/isolated.d.ts +2 -2
- package/dist/queries/isolated.js +1 -1
- package/dist/queries/locality-candidates.d.ts +2 -2
- package/dist/queries/locality-candidates.js +1 -1
- package/dist/queries/members.d.ts +2 -2
- package/dist/queries/members.js +1 -1
- package/dist/queries/methods.d.ts +2 -2
- package/dist/queries/methods.js +1 -1
- package/dist/queries/not-implemented.d.ts +3 -3
- package/dist/queries/not-implemented.js +1 -1
- package/dist/queries/outline.d.ts +2 -2
- package/dist/queries/outline.js +1 -1
- package/dist/queries/passthrough-candidates.d.ts +5 -9
- package/dist/queries/passthrough-candidates.js +1 -1
- package/dist/queries/plan-context.d.ts +27 -64
- package/dist/queries/plan-context.js +1 -1
- package/dist/queries/react-component-duplicates.d.ts +2 -2
- package/dist/queries/react-component-duplicates.js +1 -1
- package/dist/queries/react-hook-candidates.d.ts +2 -2
- package/dist/queries/react-hook-candidates.js +1 -1
- package/dist/queries/react-large-component-pressure.d.ts +2 -2
- package/dist/queries/react-large-component-pressure.js +1 -1
- package/dist/queries/recent-duplicates.d.ts +2 -2
- package/dist/queries/recent-duplicates.js +1 -1
- package/dist/queries/redundant-reexports.d.ts +2 -2
- package/dist/queries/redundant-reexports.js +1 -1
- package/dist/queries/reference-neighborhood.d.ts +4 -0
- package/dist/queries/reference-neighborhood.js +2 -0
- package/dist/queries/reference-reachability.d.ts +48 -0
- package/dist/queries/reference-reachability.js +2 -0
- package/dist/queries/refs.d.ts +2 -2
- package/dist/queries/refs.js +1 -1
- package/dist/queries/self-audit.d.ts +2 -2
- package/dist/queries/self-audit.js +1 -1
- package/dist/queries/similar-chains.d.ts +2 -2
- package/dist/queries/similar-chains.js +1 -1
- package/dist/queries/similar-files.d.ts +2 -2
- package/dist/queries/similar-files.js +1 -1
- package/dist/queries/similar-signatures.d.ts +2 -2
- package/dist/queries/similar-signatures.js +1 -1
- package/dist/queries/similar.d.ts +2 -2
- package/dist/queries/similar.js +1 -1
- package/dist/queries/slice.d.ts +3 -36
- package/dist/queries/slice.js +1 -1
- package/dist/queries/source-inspection.d.ts +209 -0
- package/dist/queries/source-inspection.js +2 -0
- package/dist/queries/source-search.d.ts +13 -0
- package/dist/queries/source-search.js +2 -0
- package/dist/queries/stale-abstractions.d.ts +2 -2
- package/dist/queries/stale-abstractions.js +1 -1
- package/dist/queries/stats.d.ts +2 -2
- package/dist/queries/surface.d.ts +13 -4
- package/dist/queries/surface.js +1 -1
- package/dist/queries/symbols.d.ts +2 -2
- package/dist/queries/symbols.js +1 -1
- package/dist/queries/system-map.d.ts +449 -0
- package/dist/queries/system-map.js +2 -0
- package/dist/queries/system.d.ts +5 -3
- package/dist/queries/system.js +1 -1
- package/dist/queries/test-quality.d.ts +2 -2
- package/dist/queries/test-quality.js +1 -1
- package/dist/queries/trace.d.ts +47 -3
- package/dist/queries/trace.js +1 -1
- package/dist/queries/twin-ab.d.ts +3 -3
- package/dist/queries/twin-ab.js +1 -1
- package/dist/queries/twin-drift.d.ts +3 -3
- package/dist/queries/twin-drift.js +1 -1
- package/dist/queries/unused-imports.d.ts +2 -2
- package/dist/queries/unused-imports.js +1 -1
- package/dist/queries/unused-params.d.ts +2 -2
- package/dist/queries/unused-params.js +1 -1
- package/dist/queries/value-flow.d.ts +43 -0
- package/dist/queries/value-flow.js +2 -0
- package/dist/queries/vue-component-duplicates.d.ts +2 -2
- package/dist/queries/vue-component-duplicates.js +1 -1
- package/dist/queries/vue-composable-candidates.d.ts +2 -2
- package/dist/queries/vue-composable-candidates.js +1 -1
- package/dist/queries/vue-large-view-pressure.d.ts +2 -2
- package/dist/queries/vue-large-view-pressure.js +1 -1
- package/dist/queries/wrapper-candidates.d.ts +2 -2
- package/dist/queries/wrapper-candidates.js +1 -1
- package/dist/query-service-fastpath.js +6 -0
- package/dist/query-service-server.js +5 -0
- package/dist/refs-ZOORVRQC.js +2 -0
- package/dist/refs-pagination-SRCUOYRD.js +2 -0
- package/dist/reindex-worker.js +85 -86
- package/dist/reindex.d.ts +64 -42
- package/dist/reindex.js +93 -77
- package/dist/repository-text-C0Q8VYdN.d.ts +19 -0
- package/dist/runtime.d.ts +287 -8
- package/dist/runtime.js +4 -3
- package/dist/rust-semantic-session-server.js +1 -1
- package/dist/rust-semantic-session-worker.js +1 -1
- package/dist/rust-semantic-worker.js +1 -1
- package/dist/{scip-cli-BnEwZRLJ.d.ts → scip-cli-H-n59izO.d.ts} +33 -2
- package/dist/slice-NOTBWA7S.js +2 -0
- package/dist/source-search-types-Dwz8KeuW.d.ts +79 -0
- package/dist/source-snippet-_wrcgmZc.d.ts +15 -0
- package/dist/stats-OOJ74B32.js +2 -0
- package/dist/surface-BTBCLKNA.js +2 -0
- package/dist/symbol-resolution-SVSMX4RN.js +2 -0
- package/dist/system-2EIUFP6B.js +2 -0
- package/dist/trace-BB2GHQPG.js +2 -0
- package/dist/typescript-mailbox-worker.js +1 -1
- package/dist/value-flow-OA7AHSUG.js +2 -0
- package/dist/watch-server.js +3 -2
- package/docs/AGENT_GUIDE.md +133 -476
- package/docs/AI_FAILURE_MODES.md +30 -301
- package/docs/API.md +1 -1
- package/docs/API_EVOLUTION.md +6 -0
- package/docs/CLI_JSON_OUTPUT.md +207 -29
- package/docs/COMMAND_REFERENCE.md +255 -154
- package/docs/CONFIGURATION_WRITE_SAFETY.md +14 -13
- package/docs/DETECTOR_EVIDENCE_CONTRACTS.md +84 -0
- package/docs/DETECTOR_GUIDE.md +46 -138
- package/docs/DURABILITY.md +7 -1
- package/docs/INDEX_GENERATIONS.md +6 -0
- package/docs/LOCK_PROTOCOL.md +8 -0
- package/docs/REINDEX_METADATA_COMPATIBILITY.md +13 -3
- package/docs/SECURITY_MODEL.md +39 -42
- package/docs/accuracy-audit-checklist.md +4 -0
- package/docs/accuracy-hardening-goal.md +9 -2
- package/docs/analyzer-inventory.md +59 -264
- package/docs/analyzer-validation-protocol.md +62 -170
- package/docs/architecture-coherence-vision.md +18 -12
- package/docs/locality-analyzer-design.md +1 -1
- package/docs/schemas/cli-json-envelope.schema.json +212 -27
- package/docs/schemas/cli-json-export-receipt.schema.json +25 -0
- package/docs/schemas/cli-output-page.schema.json +1 -1
- package/docs/schemas/observation-receipt.schema.json +164 -0
- package/docs/schemas/project-config.schema.json +37 -45
- package/docs/schemas/suppression-record.schema.json +1 -34
- package/package.json +69 -11
- package/skills/concrete-plan/SKILL.md +8 -0
- package/skills/concrete-plan/agents/openai.yaml +4 -0
- package/skills/scip-explore/SKILL.md +49 -61
- package/skills/scip-explore/agents/openai.yaml +3 -3
- package/skills/scip-explore/references/delegated-exploration.md +51 -0
- package/skills/scip-explore/references/external-evidence.md +72 -0
- package/skills/scip-explore/references/information-model.md +51 -0
- package/skills/scip-explore/scripts/capture-evidence.mjs +666 -0
- package/skills/scip-integrity-audit/SKILL.md +185 -0
- package/skills/scip-integrity-audit/agents/openai.yaml +4 -0
- package/skills/scip-plan/SKILL.md +67 -49
- package/skills/scip-plan/agents/openai.yaml +3 -3
- package/skills/scip-query/SKILL.md +98 -77
- package/skills/scip-query/agents/openai.yaml +3 -3
- package/skills/scip-setup/SKILL.md +10 -102
- package/skills/scip-setup/agents/openai.yaml +3 -3
- package/dist/chunk-26QA6FAI.js +0 -8
- package/dist/chunk-2KAZEZ6M.js +0 -2
- package/dist/chunk-3ORVDL3H.js +0 -2
- package/dist/chunk-46XGSFNI.js +0 -2
- package/dist/chunk-4MAK2HOY.js +0 -6
- package/dist/chunk-4TURLRL5.js +0 -16
- package/dist/chunk-4UQVNCQE.js +0 -2
- package/dist/chunk-55Q3WLZX.js +0 -2
- package/dist/chunk-5I5G2QOX.js +0 -3
- package/dist/chunk-6LDJQXAH.js +0 -2
- package/dist/chunk-6O5TICIZ.js +0 -3
- package/dist/chunk-7O5IKBTZ.js +0 -16
- package/dist/chunk-7S5E7KWT.js +0 -2
- package/dist/chunk-7WPLAODU.js +0 -5
- package/dist/chunk-AFHORGLH.js +0 -42
- package/dist/chunk-AIE7TFJW.js +0 -9
- package/dist/chunk-AQOFWNQJ.js +0 -1
- package/dist/chunk-B2PX5I6M.js +0 -2
- package/dist/chunk-B75HZHUP.js +0 -2
- package/dist/chunk-B7PBSLZN.js +0 -2
- package/dist/chunk-BBW6JFHN.js +0 -2
- package/dist/chunk-BNXCIFVY.js +0 -2
- package/dist/chunk-BS2NMXQZ.js +0 -4
- package/dist/chunk-C3KV2II6.js +0 -2
- package/dist/chunk-C43RDDP4.js +0 -20
- package/dist/chunk-DAFAHMNB.js +0 -42
- package/dist/chunk-DQLPXMH6.js +0 -8
- package/dist/chunk-EKZTZXHZ.js +0 -117
- package/dist/chunk-EW2NTSFA.js +0 -18
- package/dist/chunk-F3Z4OUDS.js +0 -8
- package/dist/chunk-FJH2NW7J.js +0 -66
- package/dist/chunk-FTFP6O3L.js +0 -11
- package/dist/chunk-FYLK2DEJ.js +0 -2
- package/dist/chunk-GH74ASD6.js +0 -11
- package/dist/chunk-GMXWZP2B.js +0 -2
- package/dist/chunk-GOUBFH5O.js +0 -3
- package/dist/chunk-HLF2TX6R.js +0 -2
- package/dist/chunk-HX7M4BDI.js +0 -30
- package/dist/chunk-HZ72SESS.js +0 -128
- package/dist/chunk-IB2N4FIY.js +0 -10
- package/dist/chunk-IZYYAFN5.js +0 -2
- package/dist/chunk-JFGGXWQF.js +0 -947
- package/dist/chunk-JN4NMBEX.js +0 -8
- package/dist/chunk-JW56N3KI.js +0 -4
- package/dist/chunk-JZ2OXNWB.js +0 -2
- package/dist/chunk-KFZNKUNT.js +0 -2
- package/dist/chunk-L5GJNV2T.js +0 -8
- package/dist/chunk-L7JDSCDF.js +0 -4
- package/dist/chunk-LU47HG23.js +0 -14
- package/dist/chunk-LVY7NPF7.js +0 -2
- package/dist/chunk-MKCDWWGV.js +0 -4
- package/dist/chunk-MNE7YG56.js +0 -2
- package/dist/chunk-MRXBEXSY.js +0 -26
- package/dist/chunk-MV7OWDUX.js +0 -2
- package/dist/chunk-NGEXCJJW.js +0 -11
- package/dist/chunk-NIW6JDC5.js +0 -29
- package/dist/chunk-PBUQFCNB.js +0 -16
- package/dist/chunk-POAVPHH7.js +0 -2
- package/dist/chunk-QZ4JVECJ.js +0 -2
- package/dist/chunk-RDO52JGY.js +0 -2
- package/dist/chunk-RJT3TUUZ.js +0 -2
- package/dist/chunk-RVLDN63O.js +0 -4
- package/dist/chunk-RXOXSKY3.js +0 -2
- package/dist/chunk-S7OYBOCK.js +0 -2
- package/dist/chunk-SMNXQT5Z.js +0 -3
- package/dist/chunk-SRAFT254.js +0 -2
- package/dist/chunk-T7YQSHPQ.js +0 -3
- package/dist/chunk-UJCOIXDY.js +0 -2
- package/dist/chunk-UJPRPGCO.js +0 -13
- package/dist/chunk-WCCFZ7V7.js +0 -113
- package/dist/chunk-WUPW3UN3.js +0 -3
- package/dist/chunk-X54AGLVX.js +0 -2
- package/dist/chunk-Y2MVPNKY.js +0 -5
- package/dist/chunk-YKUU5AIC.js +0 -3
- package/dist/chunk-YLCJLTPL.js +0 -2
- package/dist/chunk-YTQVETEO.js +0 -2
- package/dist/chunk-Z4N3MZYA.js +0 -38
- package/dist/chunk-ZJOOT3BG.js +0 -2
- package/dist/chunk-ZK26BAQL.js +0 -2
- package/dist/command-descriptors-DSS46KXI.js +0 -642
- package/dist/diff-gate-types-B0QYpDv1.d.ts +0 -11
- package/dist/direct-navigation-6YHV6IB5.js +0 -3
- package/dist/queries/diff-gate.d.ts +0 -253
- package/dist/queries/diff-gate.js +0 -2
- package/docs/COMMITTED_RECORD_COMPATIBILITY.md +0 -154
- package/docs/analyzer-validation-ledger.md +0 -516
- package/docs/schemas/outcome-event-record.schema.json +0 -95
- package/skills/_shared/SKILL.md +0 -101
- package/skills/_shared/agents/openai.yaml +0 -4
- package/skills/_shared/references/agent-contract-catalog.md +0 -105
- package/skills/_shared/references/command-catalog.md +0 -118
- package/skills/_shared/references/detector-precision-and-diffgate.md +0 -59
- package/skills/_shared/references/evidence-and-dead-code.md +0 -25
- package/skills/scip-audit/SKILL.md +0 -77
- package/skills/scip-audit/agents/openai.yaml +0 -4
- package/skills/scip-audit/references/claims.md +0 -98
- package/skills/scip-audit/references/cleanup.md +0 -100
- package/skills/scip-audit/references/directory.md +0 -222
- package/skills/scip-audit/references/frontend.md +0 -130
- package/skills/scip-audit/references/integrity.md +0 -154
- package/skills/scip-audit/references/maintainability.md +0 -162
- package/skills/scip-audit/references/twin-drift.md +0 -104
- package/skills/scip-diagnose/SKILL.md +0 -52
- package/skills/scip-diagnose/agents/openai.yaml +0 -4
- package/skills/scip-diagnose/references/debug.md +0 -117
- package/skills/scip-diagnose/references/probe-reachability.md +0 -77
- package/skills/scip-diagnose/references/root-cause.md +0 -145
- package/skills/scip-diagnose/references/triage.md +0 -119
- package/skills/scip-explore/references/diagrams.md +0 -40
- package/skills/scip-explore/references/language-playbook.md +0 -49
- package/skills/scip-improve/SKILL.md +0 -56
- package/skills/scip-improve/agents/openai.yaml +0 -4
- package/skills/scip-improve/references/cleanup-batches.md +0 -53
- package/skills/scip-improve/references/directory-moves.md +0 -53
- package/skills/scip-improve/references/doc-reconcile.md +0 -30
- package/skills/scip-improve/references/frontend-extraction.md +0 -39
- package/skills/scip-improve/references/maintainability-mechanism.md +0 -43
- package/skills/scip-improve/references/twin-drift.md +0 -35
- package/skills/scip-plan/references/api-impact.md +0 -19
- package/skills/scip-plan/references/conductor.md +0 -41
- package/skills/scip-plan/references/high-assurance.md +0 -43
- package/skills/scip-plan/references/hyper-optimization.md +0 -50
- package/skills/scip-plan/references/tla-model.md +0 -88
- package/skills/scip-setup/references/bootstrap-workflow.md +0 -119
- package/skills/scip-setup/references/language-verification.md +0 -61
- package/skills/scip-setup/references/lifecycle-commands.md +0 -119
- package/skills/scip-setup/references/per-repo-triage.md +0 -24
- package/skills/scip-verify/SKILL.md +0 -229
- package/skills/scip-verify/agents/openai.yaml +0 -4
- package/skills/scip-verify/references/calibrate-detectors.md +0 -170
|
@@ -1,283 +1,78 @@
|
|
|
1
|
-
# Analyzer
|
|
1
|
+
# Analyzer inventory
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
This inventory describes the current analysis product. Historical validation
|
|
4
|
+
records may name commands that no longer exist; use this file and the generated
|
|
5
|
+
[command reference](COMMAND_REFERENCE.md) for the live surface.
|
|
4
6
|
|
|
5
|
-
|
|
7
|
+
An analyzer is a program that derives repository facts or maintenance leads
|
|
8
|
+
from indexed code, source text, configuration, or version history. A direct
|
|
9
|
+
finding identifies a local condition that normally has a concrete repair. A
|
|
10
|
+
signal identifies evidence that needs inspection before a repair can be chosen.
|
|
11
|
+
Support analysis maps code without claiming that the mapped code is defective.
|
|
6
12
|
|
|
7
|
-
|
|
13
|
+
## Support analysis
|
|
8
14
|
|
|
9
|
-
|
|
15
|
+
- `context` gathers one target's definitions, references, callers, callees,
|
|
16
|
+
dataflow, slices, affected consumers, change risk, dependencies, public
|
|
17
|
+
surface, complexity, history, suppressions, and possible reuse sites.
|
|
18
|
+
- Navigation commands such as `code`, `refs`, `call-graph`, `dataflow`, `slice`,
|
|
19
|
+
`deps`, `rdeps`, `system`, and `surface` answer narrower questions.
|
|
20
|
+
- `diff-impact` maps the current change to affected symbols, tests, consumers,
|
|
21
|
+
and risk. It does not approve or reject the change.
|
|
22
|
+
- `architecture` checks declared boundaries and dependency rules.
|
|
10
23
|
|
|
11
|
-
|
|
12
|
-
- `docs/analyzer-validation-ledger.md` tracks the remaining validation work, run batches, and completion state.
|
|
13
|
-
- `docs/locality-analyzer-design.md` designs the missing code-organization analyzer for extraction placement and shared-folder locality.
|
|
24
|
+
## General cleanup analyzers
|
|
14
25
|
|
|
15
|
-
|
|
26
|
+
These commands report direct findings or bounded maintenance leads:
|
|
16
27
|
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
28
|
+
- dead code and unused inputs: `dead`, `unused-imports`, `unused-params`,
|
|
29
|
+
`stale-abstractions`;
|
|
30
|
+
- duplication and drift: `similar`, `similar-files`, `similar-signatures`,
|
|
31
|
+
`similar-chains`, `duplicate-bodies`, `recent-duplicates`, `twin-drift`;
|
|
32
|
+
- unnecessary indirection: `wrapper-candidates`, `passthrough-candidates`,
|
|
33
|
+
`decorative-checkers`, `not-implemented`;
|
|
34
|
+
- extraction and locality: `extract-candidates`, `locality-candidates`,
|
|
35
|
+
`complexity-hotspots`;
|
|
36
|
+
- migration and documentation: `incomplete-migration`, `doc-drift`,
|
|
37
|
+
`redundant-reexports`;
|
|
38
|
+
- history and coordination: `co-change`, `change-surface`.
|
|
20
39
|
|
|
21
|
-
##
|
|
40
|
+
## React analyzers
|
|
22
41
|
|
|
23
|
-
|
|
42
|
+
- `react-component-duplicates`
|
|
43
|
+
- `react-hook-candidates`
|
|
44
|
+
- `react-large-component-pressure`
|
|
24
45
|
|
|
25
|
-
|
|
46
|
+
## Vue analyzers
|
|
26
47
|
|
|
27
|
-
-
|
|
28
|
-
-
|
|
29
|
-
-
|
|
48
|
+
- `vue-component-duplicates`
|
|
49
|
+
- `vue-composable-candidates`
|
|
50
|
+
- `vue-large-view-pressure`
|
|
30
51
|
|
|
31
|
-
|
|
52
|
+
Vue indexing and source augmentation remain first-class parts of the product.
|
|
53
|
+
React and Vue findings are also represented in `health`.
|
|
32
54
|
|
|
33
|
-
|
|
55
|
+
## Repository health
|
|
34
56
|
|
|
35
|
-
|
|
57
|
+
`health` combines general, React, and Vue detector families into one review
|
|
58
|
+
report. It is a maintenance scan, not a completion authority. Its score and
|
|
59
|
+
actions help choose cleanup work; they do not prove that an arbitrary coding
|
|
60
|
+
task is complete.
|
|
36
61
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
| `cleanup-plan` | `dead --only-dead` seed plus conservative cascade references | Standalone, not direct health phase | Direct repair | Strongest deletion analyzer. It computes ordered batches and can be compiler-verified from the command layer. |
|
|
41
|
-
| `isolated` | Production callables with no callers and no non-self callees | Risk, graph findings | Direct repair | Strong dead-leaf signal. It is stricter than `dead` and usually means remove or wire up. |
|
|
42
|
-
| `cycles` | File dependency graph, with module-hierarchy/test/barrel/entry cycle classification | Risk | Direct repair for `real`; support/noise for `module-hierarchy` | Good split already exists. Real cycles normally need architectural repair. Module-hierarchy cycles should not score. |
|
|
43
|
-
| `similar` / `similarAll` | Callable callee fingerprints, IDF weighting, source-token fallback | Hygiene | Contextual signal | Similarity is a reuse lead, not proof of duplicate semantics. Needs naming, behavior, signatures, and product intent before action. Shared evidence is now labeled as domain, access/query, framework/generic, mixed, or neutral structural overlap. |
|
|
44
|
-
| `recent-duplicates` | `similarAll`, React/Vue duplicate analyzers, git file-age orientation | Standalone cleanup | Direct repair for `echo`; contextual for `twin` | Directionality makes this much stronger than plain similarity. A recent echo usually should reuse/delete. Twins still need choice of owner. |
|
|
45
|
-
| `react-component-duplicates` | JSX structure tokens from React profiles | Hygiene | Contextual signal | Good UI reuse lead. Needs product semantics and design-system judgment before extracting. |
|
|
46
|
-
| `react-hook-candidates` | Shared React hook/state/effect/request/handler tokens, evidence class, action tier, and recommendation | Hygiene, with `scoreCount` discount | Contextual signal for domain or mixed behavior; support for generic workflow/shared abstraction rows | Better than raw similarity because behavior tokens are named. The output now separates generic UI workflow and existing shared abstractions from domain behavior, but extraction still needs product judgment. |
|
|
47
|
-
| `react-large-component-pressure` | Component LOC, file LOC, JSX token count, behavior token count, pressure kind, context, recommendation kind | Hygiene | Direct repair pressure with review direction | Large component pressure usually implies splitting. It now distinguishes JSX, behavior, file, and route/page pressure, but still does not choose the destination directory for extracted code. |
|
|
48
|
-
| `vue-component-duplicates` | Vue template structure tokens | Hygiene | Contextual signal | Same reuse caveat as React component duplicates. |
|
|
49
|
-
| `vue-composable-candidates` | Vue composable/store/reactivity/lifecycle/request/function/template tokens, evidence class, action tier, and recommendation | Hygiene, with `scoreCount` discount | Contextual signal for domain or mixed behavior; support for generic workflow/shared abstraction rows | Good extraction lead when domain behavior is present. Generic workflow scaffolding remains visible as support, and extraction still needs domain and locality judgment. |
|
|
50
|
-
| `vue-large-view-pressure` | SFC total/template/script/style/external-script line counts, pressure kind, context, recommendation kind | Hygiene | Direct repair pressure with review direction | Usually implies splitting a large view. It now distinguishes template, script, style, external-script, and route/page pressure, but still needs companion directory-locality guidance. |
|
|
51
|
-
| `extract-candidates` | Large callable callee clusters, co-occurrence isolation, extraction kind, action tier, and recommendation | Hygiene | Contextual signal | It finds possible extraction seams, not proof of a new abstraction. The output now distinguishes workflow orchestration from broad/cohesive helper clusters and keeps every row as signal. |
|
|
52
|
-
| `wrapper-candidates` | Small production callables with one real external caller, caller fan-in, and boundary-token evidence | Hygiene | Contextual signal, sometimes direct | Single-caller wrappers can be needless indirection, but may also be names, domain/lifecycle boundaries, test seams, or API shaping. Boundary evidence discounts those without hiding them. |
|
|
53
|
-
| `passthrough-candidates` | Small production callables with exactly one callee, literal pass-through body, runtime-boundary evidence, public-facade evidence, action tier, recommendation, and score count | Hygiene, with `scoreCount` discount | Direct when no boundary or public-facade evidence is present; contextual signal when either exists | Body-shape gate is real. Boundary evidence distinguishes adapter, provider, public, capability, transport, lifecycle, access-policy, and facade-shaped forwarders; public-facade evidence separately identifies package-public or rooted exported passthroughs. |
|
|
54
|
-
| `stale-abstractions` | Type-like definitions, real consumers, barrel consumers, transitive reachability, definer usage, confidence, staleness kind, action tier, and recommendation | Hygiene | Direct for unused abstractions; contextual signal for one-consumer ownership rows | `0 consumers` is direct repair. `1 consumer` is contextual, including high-confidence misplaced types, because the repair may be move, inline, keep, or document as public contract. |
|
|
55
|
-
| `drift` | File dep graph, symbol ref graph, semantic/source import usage, project-owned architecture report, sibling patterns, action tier, policy basis, recommendation | Hygiene | Split by kind | `unused-import` and grouped `architecture-violation` rows are direct repair. `pattern-deviation` rows are contextual signals and remain excluded from health scoring. Undeclared boundary edges, reciprocity, and connected groups appear only in architecture context. |
|
|
56
|
-
| `complexity-hotspots` | Production callable LOC, fan-in, fan-out, callee count | Risk | Direct repair pressure | Complexity pressure usually means refactor, but the current score is structural, not cyclomatic. It should be separate from branch-count complexity. |
|
|
57
|
-
| `co-change` / hidden coupling | Git co-change pairs, dependency edges, declared couplings, file noise filters, partner-class labels, declared-coupling suggestions, commit scope, recency context, commit-subject context, and score-weighted count | Risk, weighted by history strength | Contextual signal | Strong evidence that coordination may be missing, but not proof that extraction or unification is correct. Partner classes, history context, subject context, and score weighting now separate contract-like focused current pairs from broad, stale, or unlabeled history before suggesting declared coupling. |
|
|
58
|
-
| Suppression inventory | `scip-query: ignore-*` comments in source, plus structured `.scipquery.json` suppressions | Evidence quality axis | Meta signal | Useful precision feedback. High suppressions should reduce trust or weight for that detector family. Structured file-scoped suppressions now validate path freshness. |
|
|
62
|
+
`health --write-baseline` records the current finding identities.
|
|
63
|
+
`health --baseline` reports findings that are new relative to that baseline.
|
|
64
|
+
This is an optional repository ratchet, not a required agent ceremony.
|
|
59
65
|
|
|
60
|
-
##
|
|
66
|
+
## Suppressions
|
|
61
67
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
| `co-change-partner` | Historical partner changed without the other side in current diff, with co-change partner class, commit scope, recency, commit-subject context, and optional declared-coupling suggestion | Contextual signal | Good sync warning, but sometimes the coupling no longer holds or should be intentionally broken. Partner classes, history context, and subject context make doc/code, config/code, schema/script, model/view, test/code, broad-sweep, stale, docs-labeled, fix-labeled, and issue-ref cases easier to review. |
|
|
67
|
-
| `doc-reference` | Living docs citing changed files, excluding import-only source changes, with citation kind and Markdown-local cited-claim context | Split by citation evidence | Behavioral/current doc claims are direct doc-review evidence. Configuration examples and intentional records are support-tier checks unless the cited target changed meaning. |
|
|
68
|
-
| `unused-params` | Trailing unused params in changed files | Direct repair | Conservative enough to be a high-confidence local fix. |
|
|
69
|
-
| `new-dead` | Changed production symbols with zero consumers, excluding entry/root/test/framework-discovered cases | Direct repair | Either wire it up, remove it, or mark it as an externally live root before it lands. |
|
|
70
|
-
| `baseline` | New health finding identity versus committed baseline, when the caller explicitly asks diff-gate to run the full baseline ratchet | Direct gate | It does not explain the smell itself, but correctly blocks regression until fixed or accepted. It is opt-in for diff-gate because the baseline comparison is repo-wide rather than diff-sized. |
|
|
68
|
+
Structured suppression files record reviewed findings under
|
|
69
|
+
`.scipquery/suppressions/`. They are loaded with project analysis, counted in
|
|
70
|
+
health and context, and validated by `config-validate`. Inline
|
|
71
|
+
`scip-query: ignore-*` comments remain visible to the suppression inventory.
|
|
71
72
|
|
|
72
|
-
##
|
|
73
|
+
## Evidence limits
|
|
73
74
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
| `redundant-reexports` | Barrel exports, JS/TS re-export statements, SCIP/source fallback consumers, direct importers, package-surface evidence | Direct for private barrels; signal for package-public barrels | Strong when the candidate barrel is private and both barrel and direct consumers are zero. Package-public barrels stay visible as signal because external consumers may import through them. |
|
|
79
|
-
| `similar-files` | File dependency-profile Jaccard with infrastructure and distinctive-dep gates | Contextual signal | Good for copy-paste family discovery, not direct extraction proof. |
|
|
80
|
-
| `similar-chains` | Dependency chain generation, infrastructure filtering, edit distance | Contextual signal | Finds duplicated pipelines, but pipeline ownership and abstraction shape require design judgment. |
|
|
81
|
-
| `similar-signatures` | Semantic/documented/source normalized function signatures | Contextual signal | Same type shape is only a weak lead. Useful for search, not scoring unless combined with behavior evidence. |
|
|
82
|
-
| `convergence` | Two symbols' shared and unique callees | Support/contextual signal | It explains a possible consolidation strategy; it should not score by itself. |
|
|
83
|
-
| `locality-candidates` | Candidate symbol/file path, directory ancestry, consumer files, consumer coverage, nearest common owner, boundary markers, and counterevidence | Contextual signal | Guides placement and ownership review for extracted or shared code. It is deliberately report-only and should not force moves or affect health score without repair-outcome evidence. |
|
|
84
|
-
| `doc-drift` | Living docs, path citations, cited-claim contexts, doc-code co-change, doc intent, action tier, code churn after doc update, broken references | Split by evidence | Broken references are direct repair. Path-cited stale subjects now expose citation context. Co-change-only staleness is signal for current guidance and support for historical notes. |
|
|
85
|
-
|
|
86
|
-
## Graph, Risk, and Planning Analyzers
|
|
87
|
-
|
|
88
|
-
| Analyzer | Evidence examined | Recommended role | Evaluation |
|
|
89
|
-
| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
90
|
-
| `affected` | Transitive symbol impact from a changed symbol | Support analysis | Blast-radius map, not smell. |
|
|
91
|
-
| `change-surface` | Definitions in a file plus external consumer counts | Support/risk analysis | Pre-change risk briefing. Useful for planning and score context, not a repair. |
|
|
92
|
-
| `plan-context` | Trace, references, call graph, dataflow, deps/rdeps, surface, affected, change-surface, complexity, history | Support analysis | Composite planning bundle. It should not contribute smell score directly. |
|
|
93
|
-
| `bottlenecks` | Callable fan-in times fan-out, risk kind, action tier, evidence reasons, recommendation | Contextual signal | Good risk hotspot, not automatic refactor. Output now states `signal` and frames central code as coordination risk rather than repair proof. |
|
|
94
|
-
| `hotspots` | Most referenced symbols | Support/contextual signal | Identifies choke points. Not a smell alone. |
|
|
95
|
-
| `fan-in` / `fan-out` | Reference counts into symbols or out of files | Support analysis | Raw graph metrics. |
|
|
96
|
-
| `coupling` | Shared symbols between two files or top coupled pairs, coupling kind, action tier, evidence reasons, recommendation | Contextual signal | May reveal boundary problems, but shared symbols can be intended. Output now makes the coordination-pressure interpretation explicit. |
|
|
97
|
-
| `architecture` | Project-owned boundary paths and dependency rules applied to resolved import and re-export edges, with mapping coverage, policy-row coverage, edge breadth, reciprocity, and SCCs | Split by evidence | Forbidden edges, required-but-missing policy rows, cycles under `requireAcyclic`, and boundaries hiding an internal sub-directory cycle under `requireResolvedBoundaries` are direct policy findings. Unmapped files, reciprocity, and advisory cycles remain report-only signals. |
|
|
98
|
-
| `deep-chains` | Longest dependency chains after SCC condensation, suffix de-duplication, chain kind, action tier, evidence reasons, recommendation | Contextual signal | Long chains imply propagation risk, but action depends on layers and ownership. Strict suffix duplicates are now removed from top results. |
|
|
99
|
-
| `complexity` | Branch count, cyclomatic estimate, callee count, fan-in, fan-out for one symbol | Direct repair pressure | This is closer to the user-specified "cyclomatic complexity" analyzer than `complexity-hotspots`. Should score strongly when branches/cyclomatic exceed thresholds. |
|
|
100
|
-
| `self-audit` | Cheap evidence paths checked against TypeScript compiler oracle | Meta analysis | Measures analyzer accuracy. Should guide trust/weight, not code health directly. |
|
|
101
|
-
|
|
102
|
-
## Navigation and Evidence Providers
|
|
103
|
-
|
|
104
|
-
These commands analyze the index, but they are not finding detectors and should not affect health score directly: `stats`, `files`, `methods`, `refs`, `trace`, `deps`, `rdeps`, `system`, `surface`, `imports`, `imported-by`, `outline`, `members`, `by-kind`, `kind-counts`, `hierarchy`, `call-graph`, `code`, `dataflow`, and `slice`.
|
|
105
|
-
|
|
106
|
-
They are essential because other analyzers and agents use them to ground claims. Their defining characteristic is retrieval or explanation, not smell detection.
|
|
107
|
-
|
|
108
|
-
`tla` is a formal-model verification command: it checks a TLA+ module, an explicit model-to-TypeScript mapping contract, and compiler-indexed code evidence in one on-demand run. Its defining role is to make model/code discrepancies reviewable before a user or agent treats the TLA+ model as an accurate description of the implementation.
|
|
109
|
-
|
|
110
|
-
The support-analysis accuracy review confirmed that `refs`, `affected`, `change-surface`, `plan-context`, `imports`, `deps`, `rdeps`, `fan-in`, `fan-out`, `hotspots`, `status`, and `self-audit` return useful source-grounded evidence for a TypeScript target. It also fixed diagnostic parity so `status` and `doctor` use the same root-aware config validation as `config-validate`.
|
|
111
|
-
|
|
112
|
-
The cross-language boundary review confirmed that Rust projects have graph-backed indexing, source fallback, cleanup detector output, git/diff support, and compiler cleanup verification when `rust-analyzer` and `cargo check` are available. It also confirmed that TypeScript semantic self-audit is explicitly unavailable on Rust and that React/Vue analyzers return stack-specific empty results rather than Rust findings.
|
|
113
|
-
|
|
114
|
-
`cleanup-apply` is not an analyzer. It is an action command that applies a `cleanup-plan` batch, so it should be validated through the `cleanup-plan --verify` path and normal project checks.
|
|
115
|
-
|
|
116
|
-
## Overlap and Duplication Review
|
|
117
|
-
|
|
118
|
-
The codebase already avoids some duplicate analysis by sharing kernels:
|
|
119
|
-
|
|
120
|
-
- `runCandidateAnalysis` gives candidate-style analyzers one lifecycle for scan limits, preparation, evaluation, ordering, and result caps.
|
|
121
|
-
- `rankedPairwiseProfileResults` gives React, Vue, file-profile, and pairwise similarity analyzers a shared pair-ranking shape.
|
|
122
|
-
- `HEALTH_DETECTOR_PROFILES` keeps health and baseline detector options aligned.
|
|
123
|
-
|
|
124
|
-
The remaining conceptual overlap is mostly healthy, but needs product labels:
|
|
125
|
-
|
|
126
|
-
| Overlap family | Members | Same analysis or distinct? | Recommendation |
|
|
127
|
-
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
|
128
|
-
| Deletability | `dead`, `isolated`, `cleanup-plan`, `redundant-reexports`, `new-dead` | Distinct evidence scopes over the same core question: can this be removed or must it be wired? | Model as one "deletability" action family with subtypes and confidence. |
|
|
129
|
-
| Similarity and reuse | `similar`, `similar-files`, `similar-chains`, `similar-signatures`, `convergence`, React/Vue duplicates, `recent-duplicates`, `echo` | Distinct evidence bases. The risk is UX confusion, not implementation duplication. | Keep separate, but expose basis, action tier, and root-cause groups where pairwise rows repeat. |
|
|
130
|
-
| Extraction pressure | `extract-candidates`, React/Vue behavior candidates, large component/view pressure, `incomplete-migration` | Different stages: discover seam, detect duplicated behavior, detect excessive size, catch unfinished migration. | Score unfinished migrations higher than discovery leads. |
|
|
131
|
-
| Indirection | `wrapper-candidates`, `passthrough-candidates`, `stale-abstractions` | Related but not the same: single caller, literal forwarding, low-consumer types. | Passthrough and wrapper rows now split by boundary evidence; stale should split by confidence. |
|
|
132
|
-
| Architecture/history drift | `architecture`, `drift`, `doc-drift`, `co-change`, `co-change-partner`, `doc-reference` | Same broad problem of things moving out of sync, but sources differ. | Explicit architecture rules are direct; co-change remains signal; doc-reference strength depends on citation kind. |
|
|
133
|
-
| Graph risk | `architecture`, `fan-in`, `fan-out`, `hotspots`, `bottlenecks`, `coupling`, `deep-chains`, `change-surface`, `affected` | Mostly layered views of graph pressure. | Treat inferred graph shape as support/context; declared forbidden edges and acyclicity violations are direct policy disagreements. |
|
|
134
|
-
|
|
135
|
-
## Score Model Implications
|
|
136
|
-
|
|
137
|
-
The current report has `riskScore`, `hygieneScore`, evidence labels, `scoreCount`, pressure penalties, validation lift, and suppression inventory. That is close, but it does not encode action implication directly.
|
|
138
|
-
|
|
139
|
-
Recommended model:
|
|
140
|
-
|
|
141
|
-
1. Add an action tier to each finding category: `direct`, `signal`, or `support`.
|
|
142
|
-
2. Keep evidence quality separate: `graph-fact`, `semantic`, `heuristic`, `change-graph`, `baseline`.
|
|
143
|
-
3. Score direct findings with heavier base penalties because they usually imply a local repair.
|
|
144
|
-
4. Score signal findings with lighter base penalties and stronger pressure penalties when signals accumulate.
|
|
145
|
-
5. Add a "signal backlog pressure" multiplier when direct findings are near zero but contextual signals remain high. This captures the user's point: a repo with no obvious smells but many unresolved architectural signals is not actually clean.
|
|
146
|
-
6. Let suppression history and `self-audit` validation adjust detector trust. A detector with many suppressions or low validation lift should score less until recalibrated.
|
|
147
|
-
|
|
148
|
-
Suggested initial tier map:
|
|
149
|
-
|
|
150
|
-
- Direct: `cleanup-plan`, `dead-code`, `isolated`, `real cycles`, `unused-params`, `new-dead`, `incomplete-migration`, behavioral/current `doc-reference` claims, broken `doc-drift` references, `redundant-reexports` with zero consumers, direct passthrough rows with no boundary or public-facade role, `unused-import` drift, declared `architecture-violation` drift, high branch/cyclomatic `complexity`, large React/Vue pressure.
|
|
151
|
-
- Signal: `co-change`, `co-change-partner`, ordinary `similar`, `similar-files`, `similar-chains`, `similar-signatures`, `convergence`, `extract-candidates`, `locality-candidates`, `wrapper-candidates`, `passthrough-candidates` with boundary or public-facade roles, single-consumer `stale-abstractions`, React/Vue duplicate or behavior candidates, bottlenecks, hotspots, coupling, deep chains, undeclared/reciprocal/connected architecture context, pattern drift, doc staleness from churn.
|
|
152
|
-
- Support: navigation commands, `affected`, `change-surface`, `plan-context`, `stats`, `self-audit`, suppression inventory, baseline comparison mechanics, configuration-example and intentional-record `doc-reference` rows.
|
|
153
|
-
|
|
154
|
-
## Directory Locality Analyzer
|
|
155
|
-
|
|
156
|
-
`locality-candidates` now evaluates extraction locality after a large component/view or helper extraction. The referents are directories, feature folders, local shared folders, global shared folders, import distances, consumer sets, and abstraction ownership. The analyzer classifies where an extracted unit may belong by comparing actual consumers and directory boundaries.
|
|
157
|
-
|
|
158
|
-
Command shape:
|
|
159
|
-
|
|
160
|
-
- `scip-query locality-candidates [symbol-or-file]`
|
|
161
|
-
- Inputs: extracted or candidate symbol/file, consumer files, nearest common ancestor, feature/domain folders, existing shared folders, import path depth, package/workspace boundaries, and whether consumers cross feature boundaries.
|
|
162
|
-
- Outputs: recommended locality level such as same file, sibling folder, feature-local shared folder, app-level shared folder, package-level shared module, or no extraction.
|
|
163
|
-
- Action tier: contextual signal. It guides placement; it should not force moves without architecture judgment.
|
|
164
|
-
|
|
165
|
-
This should pair with `react-large-component-pressure`, `vue-large-view-pressure`, `extract-candidates`, and `incomplete-migration` so agents do not reduce size scores by dumping extracted pieces into flat local directories.
|
|
166
|
-
|
|
167
|
-
## 2026-06-23 Citation Refresh
|
|
168
|
-
|
|
169
|
-
The maintainability-register completion slice rechecked the command and diff-gate guide references above. `src/runtime/commands/query-command-specs.ts` still owns the public query order, now also exporting `orderedQueryCommandDescriptors` so CLI registration can derive from that order. `src/queries/impact/diff-gate.ts` still owns `DIFF_GATE_CHECKS`; the slice only centralized finding emission through a local recorder and did not change the listed check family.
|
|
170
|
-
|
|
171
|
-
## 2026-06-28 Diff-Gate Echo Follow-Up
|
|
172
|
-
|
|
173
|
-
The diff-gate implementation still owns `DIFF_GATE_CHECKS` and the default
|
|
174
|
-
diff-scoped check family in `src/queries/impact/diff-gate.ts`. The
|
|
175
|
-
hyper-optimization follow-up only adds a callable-symbol prefilter before the
|
|
176
|
-
echo check invokes similarity, so the command surface and check inventory
|
|
177
|
-
described above are unchanged.
|
|
178
|
-
|
|
179
|
-
## 2026-06-28 Health Drift Performance Follow-Up
|
|
180
|
-
|
|
181
|
-
The `src/queries/health/health.ts` citation remains accurate. The
|
|
182
|
-
hyper-optimization follow-up only skips advisory drift `pattern-deviation` rows
|
|
183
|
-
for health and baseline paths that already hide those rows; health scoring,
|
|
184
|
-
phase inventory, and public `drift` output are unchanged.
|
|
185
|
-
|
|
186
|
-
## 2026-06-28 Diff-Gate Co-Change Follow-Up
|
|
187
|
-
|
|
188
|
-
The `src/queries/impact/diff-gate.ts` citation remains accurate. Diff-gate
|
|
189
|
-
still owns `DIFF_GATE_CHECKS`; the co-change partner check now compares against
|
|
190
|
-
the raw git changed-path set so changed docs and config files count as present
|
|
191
|
-
even when they are not indexed code files.
|
|
192
|
-
|
|
193
|
-
## 2026-06-28 Focused Co-Change History Follow-Up
|
|
194
|
-
|
|
195
|
-
The `src/queries/impact/diff-gate.ts` citation remains accurate after the
|
|
196
|
-
focused co-change history optimization. Diff-gate still owns the check list and
|
|
197
|
-
co-change partner gate; the latest change only narrows the git-history read for
|
|
198
|
-
that gate to commits in the bounded analysis window that touched changed files.
|
|
199
|
-
|
|
200
|
-
## 2026-06-30 Git Evidence Product Follow-Up
|
|
201
|
-
|
|
202
|
-
The `src/queries/health/health.ts` and `src/queries/impact/diff-gate.ts`
|
|
203
|
-
citations remain accurate after the Git evidence product migration. Health
|
|
204
|
-
still owns the composite phase inventory, and diff-gate still owns
|
|
205
|
-
`DIFF_GATE_CHECKS`; both now obtain Git history facts through
|
|
206
|
-
`gitEvidenceProduct()` instead of direct helper reads.
|
|
207
|
-
|
|
208
|
-
## 2026-06-30 Health Cleanup Follow-Up
|
|
209
|
-
|
|
210
|
-
The `src/queries/public-query-entries.ts` reference remains the public query
|
|
211
|
-
manifest reference. Private query-helper coverage is now asserted as a
|
|
212
|
-
CLI-contract test fixture in `tests/runtime/cli-contract.test.ts`, so the
|
|
213
|
-
production manifest only exports the public entries and source paths used by
|
|
214
|
-
packaging.
|
|
215
|
-
|
|
216
|
-
2026-07-01 round-2 remediation note: the `src/queries/health/health.ts`
|
|
217
|
-
guide reference remains current after the health output gained explicit
|
|
218
|
-
validation-basis and source-facts disclosure fields. The analyzer inventory
|
|
219
|
-
still points readers at the health command implementation that owns score
|
|
220
|
-
phases, suppressions, and validation reporting.
|
|
221
|
-
|
|
222
|
-
## 2026-07-01 Remediation Plan 3 Follow-Up
|
|
223
|
-
|
|
224
|
-
The `src/queries/impact/diff-gate.ts` and `src/queries/health/health.ts`
|
|
225
|
-
citations remain accurate after remediation plan 3 (detection primitives).
|
|
226
|
-
`DIFF_GATE_CHECKS` gained `twin-partner` (advisory — a same-(near-)name twin
|
|
227
|
-
left behind by a one-sided edit) and `coverage-contract` (enumeration-rot:
|
|
228
|
-
a configured `coverageContracts` key set drifted from its ground-truth
|
|
229
|
-
source). `HEALTH_PHASES` gained `coverage-contracts`. Both files still own
|
|
230
|
-
their respective canonical lists; only the list contents grew.
|
|
231
|
-
|
|
232
|
-
## 2026-07-02 Queued Enhancements Follow-Up
|
|
233
|
-
|
|
234
|
-
The `src/queries/health/health.ts`, `src/queries/public-query-entries.ts`,
|
|
235
|
-
and `src/runtime/commands/query-command-specs.ts` citations remain accurate
|
|
236
|
-
after the queued-enhancements batch (Q1/Q4). `HEALTH_PHASES` gained
|
|
237
|
-
`twin-drift` (divergent/identical same-name twin groups as a hygiene
|
|
238
|
-
dimension), and the public command surface gained `twin-ab` (behavioral A/B
|
|
239
|
-
scaffold generator for scip-integrity-audit drill 5) in `queryCommandOrder`
|
|
240
|
-
and `PUBLIC_QUERY_ENTRIES`. All three files still own their respective
|
|
241
|
-
canonical lists; only the list contents grew.
|
|
242
|
-
|
|
243
|
-
## 2026-07-03 Integrity Detectors
|
|
244
|
-
|
|
245
|
-
The public command surface gained three integrity detectors (calibrated
|
|
246
|
-
against Vega_2.0 and Stable_Management before wiring — see
|
|
247
|
-
`docs/validation/2026-07-03-integrity-detector-calibration.md`):
|
|
248
|
-
`not-implemented` (placeholder stubs reachable from production entry
|
|
249
|
-
surfaces; mechanizes scip-integrity-audit drill 3's fallback autopsy),
|
|
250
|
-
`decorative-checkers` (checker-named callables with no reachable failure
|
|
251
|
-
exit; mechanizes drill 1), and `test-quality` (assertion-free tests,
|
|
252
|
-
aged skips, mock-echo). All three are standalone commands only — none are
|
|
253
|
-
wired into `HEALTH_PHASES` or `DIFF_GATE_CHECKS` per the calibration's
|
|
254
|
-
wiring decisions (test-quality's health eligibility is ledgered as a
|
|
255
|
-
followup). Registration files (`queryCommandOrder`,
|
|
256
|
-
`PUBLIC_QUERY_ENTRIES`, `query-command-specs.ts`) still own their
|
|
257
|
-
canonical lists; only the list contents grew.
|
|
258
|
-
|
|
259
|
-
## 2026-07-08 Rust Semantic Parity Follow-Up
|
|
260
|
-
|
|
261
|
-
The `src/queries/health/health.ts` citation remains accurate after the Rust
|
|
262
|
-
semantic parity slice. Health still owns the composite phase inventory and
|
|
263
|
-
score model, and it now threads semantic enrichment through the health budget:
|
|
264
|
-
full/default health enables semantic facts, while bounded large-index health
|
|
265
|
-
can explicitly disable them.
|
|
266
|
-
|
|
267
|
-
## 2026-07-23 Architecture Coherence Follow-Up
|
|
268
|
-
|
|
269
|
-
The public query manifest and command-order references remain canonical after
|
|
270
|
-
the graph family gained `architecture`. The command applies project-owned
|
|
271
|
-
boundary paths and dependency rows to import-only file edges, retaining edge
|
|
272
|
-
breadth and representative files. It is report-only in this slice: inferred
|
|
273
|
-
reciprocity and strongly connected groups do not affect health or diff-gate,
|
|
274
|
-
and an unconfigured repository receives no implicit source-layer policy.
|
|
275
|
-
|
|
276
|
-
## 2026-07-26 Diff-Gate Progress Follow-Up
|
|
277
|
-
|
|
278
|
-
The `src/queries/impact/diff-gate.ts` citation remains accurate after bounded
|
|
279
|
-
progress reporting was added. `DIFF_GATE_CHECKS` is still the canonical public
|
|
280
|
-
check list and `diffGate()` still owns check execution; the check-name type and
|
|
281
|
-
process-local observer contract now live in `queries/internal`, while the
|
|
282
|
-
impact query emits start and completion notifications around each executed
|
|
283
|
-
check.
|
|
75
|
+
Each command reports or documents its coverage as complete, bounded, sampled,
|
|
76
|
+
or unknown. A complete transport only means that every rendered character was
|
|
77
|
+
retrieved. It does not turn bounded analysis into an exhaustive repository
|
|
78
|
+
claim.
|