scip-query 0.20.0 → 0.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +69 -0
- package/README.md +255 -884
- package/dist/augment-vue-worker.js +1 -1
- package/dist/by-kind-CI3O6PQG.js +2 -0
- package/dist/call-graph-6QTUTXH7.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-7PIO7NKH.js → chunk-2COFMIVK.js} +2 -2
- package/dist/chunk-2H4IAJHO.js +2 -0
- package/dist/chunk-2I3RSUWX.js +16 -0
- package/dist/chunk-2RP27XLR.js +2 -0
- package/dist/chunk-2ZBMOQGG.js +3 -0
- package/dist/{chunk-HX4GQPZP.js → chunk-32A42O5B.js} +3 -3
- package/dist/chunk-35ELD3RM.js +2 -0
- package/dist/chunk-35IW3P4H.js +2 -0
- package/dist/{chunk-DQGFVPUV.js → chunk-3653GTR7.js} +3 -3
- package/dist/chunk-3EX7DNBC.js +2 -0
- package/dist/chunk-3FQ3KMCD.js +2 -0
- package/dist/{chunk-5E4WNAVD.js → chunk-3PII3JI5.js} +2 -2
- package/dist/chunk-3TNRNKAT.js +2 -0
- package/dist/chunk-3VLJ2DCA.js +2 -0
- package/dist/{chunk-XSRF6Q77.js → chunk-46JLFIGA.js} +2 -2
- package/dist/chunk-4DCKBY6T.js +5 -0
- package/dist/chunk-4EXFZP6H.js +2 -0
- package/dist/chunk-4IIMPWMR.js +29 -0
- package/dist/chunk-4ILHWBYF.js +2 -0
- package/dist/chunk-4N6QSEMZ.js +10 -0
- package/dist/chunk-4OE2JO6I.js +2 -0
- package/dist/{chunk-7BAVHKMJ.js → chunk-4S4DF62J.js} +9 -9
- package/dist/chunk-4UUCUASK.js +554 -0
- package/dist/chunk-5236NQV3.js +2 -0
- package/dist/chunk-54EOGFBR.js +2 -0
- package/dist/{chunk-LY4WC4AD.js → chunk-5H7IWVXJ.js} +2 -2
- package/dist/chunk-5IZTXSOL.js +117 -0
- package/dist/{chunk-AZJQQKDD.js → chunk-5SE323LF.js} +2 -2
- package/dist/chunk-5ZJH6DDE.js +2 -0
- package/dist/chunk-63MBA7EG.js +3 -0
- package/dist/chunk-6BJ7SOY7.js +2 -0
- package/dist/chunk-6GJAP4OE.js +2 -0
- package/dist/chunk-6IEVHGWG.js +26 -0
- package/dist/chunk-6SWA6B24.js +7 -0
- package/dist/chunk-6T7H2AFY.js +3 -0
- package/dist/chunk-73Z33VFI.js +4 -0
- package/dist/chunk-7COHFNJK.js +38 -0
- package/dist/chunk-7HU2IJ2T.js +3 -0
- package/dist/chunk-7IOAZRVL.js +60 -0
- package/dist/chunk-7KCZELVM.js +2 -0
- package/dist/chunk-7PPYXENX.js +2 -0
- package/dist/chunk-7TWP3MCP.js +2 -0
- package/dist/chunk-AA7K3XLM.js +21 -0
- package/dist/chunk-AJVMVE7X.js +7 -0
- package/dist/chunk-ANWGXPPN.js +4 -0
- package/dist/chunk-APLKXICZ.js +3 -0
- package/dist/{chunk-JDOEX4E6.js → chunk-AQDWTCDC.js} +2 -2
- package/dist/chunk-AUP6YI5M.js +2 -0
- package/dist/chunk-B7ECWJAZ.js +2 -0
- package/dist/{chunk-ZHXX42OH.js → chunk-BATIVRU2.js} +4 -4
- package/dist/chunk-BBEDPVPB.js +4 -0
- package/dist/chunk-BBWPOMGU.js +2 -0
- package/dist/chunk-BD6CV7PN.js +2 -0
- package/dist/{chunk-XKWKXZKW.js → chunk-BHE44MHT.js} +2 -2
- package/dist/chunk-BOJ5SVE2.js +2 -0
- package/dist/chunk-BZYSGZRK.js +2 -0
- package/dist/chunk-CA5RE6H7.js +2 -0
- package/dist/chunk-CKDOY6JA.js +2 -0
- package/dist/chunk-CN2WGM7D.js +2 -0
- package/dist/chunk-COTMS5KM.js +3 -0
- package/dist/chunk-CSDDOUA4.js +3 -0
- package/dist/chunk-CT5SI2I4.js +2 -0
- package/dist/chunk-D5EKVZPI.js +2 -0
- package/dist/{chunk-FKSELJQF.js → chunk-D5W4UZY5.js} +2 -2
- package/dist/{chunk-RUJURYSV.js → chunk-DEUGHURX.js} +2 -2
- package/dist/chunk-DHKBIOXF.js +7 -0
- package/dist/chunk-DMQ7ZKJG.js +81 -0
- package/dist/chunk-DMUGTKMD.js +2 -0
- package/dist/chunk-DOPCR5BY.js +2 -0
- package/dist/chunk-DRENNWRG.js +2 -0
- package/dist/chunk-E4EJBGDZ.js +2 -0
- package/dist/chunk-E7BJXRNV.js +2 -0
- package/dist/chunk-EA4SH4U5.js +5 -0
- package/dist/{chunk-L7AW2QB5.js → chunk-EKZRF57O.js} +2 -2
- package/dist/chunk-ELNRLMC5.js +29 -0
- package/dist/chunk-F4FNK44D.js +2 -0
- package/dist/chunk-F7WQ337U.js +308 -0
- package/dist/chunk-FEQIQ26E.js +2 -0
- package/dist/chunk-FGB567HK.js +23 -0
- package/dist/chunk-FHV7NMFU.js +29 -0
- package/dist/chunk-FN6EJM6Q.js +2 -0
- package/dist/chunk-FTSQNONX.js +2 -0
- package/dist/chunk-FUG6RPYY.js +6 -0
- package/dist/chunk-G2F6T5BV.js +2 -0
- package/dist/chunk-G6OGPXJW.js +9 -0
- package/dist/chunk-GFLTPNWV.js +3 -0
- package/dist/chunk-GTDP2SKQ.js +2 -0
- package/dist/chunk-H46QMB7E.js +2 -0
- package/dist/chunk-H5EXS3HM.js +2 -0
- package/dist/chunk-HEOMG7IM.js +8 -0
- package/dist/chunk-HG5YI7PV.js +2 -0
- package/dist/{chunk-7SQQWSY3.js → chunk-HGKEAP7F.js} +2 -2
- package/dist/chunk-HUZNZ3H2.js +2 -0
- package/dist/chunk-HWLCBKFE.js +2 -0
- package/dist/chunk-I3U2FN2T.js +13 -0
- package/dist/{chunk-JAYYFEQY.js → chunk-I7PFL5P3.js} +2 -2
- package/dist/{chunk-2HPVVXM5.js → chunk-ICHBVITH.js} +2 -2
- package/dist/chunk-ICUQONOG.js +38 -0
- package/dist/chunk-IDPLC3FI.js +5 -0
- package/dist/{chunk-A73XVBCR.js → chunk-IGKKTHJR.js} +2 -2
- package/dist/chunk-IOKWFRFQ.js +4 -0
- package/dist/chunk-IPAL6DP2.js +3 -0
- package/dist/chunk-IUJ3ZFEE.js +7 -0
- package/dist/chunk-IXJ26KJJ.js +16 -0
- package/dist/chunk-IYV2YBHM.js +2 -0
- package/dist/chunk-JVZNWJBH.js +2 -0
- package/dist/chunk-K5MZYZV7.js +3 -0
- package/dist/{chunk-3G66UZBH.js → chunk-KFK7GF5C.js} +2 -2
- package/dist/chunk-KTRGJLY7.js +18 -0
- package/dist/chunk-KW6B5OL4.js +2 -0
- package/dist/chunk-KWARB5FZ.js +2 -0
- package/dist/chunk-LHTT5C3Z.js +2 -0
- package/dist/chunk-LPGDO2XA.js +3 -0
- package/dist/chunk-LXLD46LH.js +21 -0
- package/dist/chunk-MEI3PTUK.js +2 -0
- package/dist/chunk-MJNV7OCG.js +5 -0
- package/dist/chunk-MO226P4Q.js +4 -0
- package/dist/{chunk-3CLX5EOX.js → chunk-MOBF2GH6.js} +2 -2
- package/dist/chunk-MXNGIEPU.js +3 -0
- package/dist/chunk-MYUKI5VN.js +4 -0
- package/dist/{chunk-TFRAYKN6.js → chunk-N5C65OFK.js} +2 -2
- package/dist/{chunk-PXY7F6Y4.js → chunk-O2RM7E7L.js} +5 -5
- package/dist/chunk-OFUBXBYX.js +3 -0
- package/dist/chunk-OFY4HTMI.js +2 -0
- package/dist/chunk-OIRWZIYL.js +38 -0
- package/dist/chunk-OIVZ7PW6.js +438 -0
- package/dist/chunk-ORBKAUCH.js +4 -0
- package/dist/chunk-OUB4J26T.js +2 -0
- package/dist/chunk-OVPS2ILI.js +20 -0
- package/dist/chunk-PHSPBQM6.js +5 -0
- package/dist/{chunk-JVYA47YU.js → chunk-PIZY2GX6.js} +2 -2
- package/dist/chunk-PNISDVYC.js +3 -0
- package/dist/chunk-PQOL42AW.js +2 -0
- package/dist/chunk-PUVZNFVY.js +11 -0
- package/dist/chunk-PZEI2TVL.js +4 -0
- package/dist/{chunk-ZK26BAQL.js → chunk-Q2J2VZZT.js} +2 -2
- package/dist/chunk-Q7HB7BFJ.js +2 -0
- package/dist/{chunk-ZTETIQ35.js → chunk-QBANU5BQ.js} +2 -2
- package/dist/chunk-QD7IFBCR.js +10 -0
- package/dist/chunk-QDCCHMVZ.js +2 -0
- package/dist/chunk-QLQBZOJH.js +3 -0
- package/dist/{chunk-PQCI4SQX.js → chunk-QXR5QPSF.js} +2 -2
- package/dist/chunk-R2MOKIVO.js +2 -0
- package/dist/{chunk-EN3O7VJA.js → chunk-RFWAUHVW.js} +2 -2
- package/dist/chunk-RGCJ4646.js +16 -0
- package/dist/{chunk-BPAPWKP6.js → chunk-S3RTPPLQ.js} +8 -8
- package/dist/chunk-S73HBCGI.js +11 -0
- package/dist/chunk-SDPA5DKN.js +210 -0
- package/dist/chunk-SEUJVWT2.js +3 -0
- package/dist/chunk-SF7X6QNW.js +2 -0
- package/dist/chunk-SKUMCCC5.js +2 -0
- package/dist/chunk-SSSJO4RG.js +2 -0
- package/dist/chunk-SWFAFA4G.js +49 -0
- package/dist/chunk-SYUNTKO2.js +2 -0
- package/dist/chunk-T6FRID7Y.js +3 -0
- package/dist/chunk-TGWNNMPF.js +3 -0
- package/dist/chunk-TM5XEDDR.js +4 -0
- package/dist/chunk-TNOHGHZQ.js +2 -0
- package/dist/chunk-U2GPTA5U.js +3 -0
- package/dist/{chunk-SXP2MBJH.js → chunk-U7DR7MJD.js} +2 -2
- package/dist/chunk-U7LRSQG6.js +3 -0
- package/dist/chunk-UL4VJUMD.js +2 -0
- package/dist/chunk-UNORWZIJ.js +16 -0
- package/dist/chunk-UQ7XPRWU.js +2 -0
- package/dist/{chunk-6SHPK5ZE.js → chunk-URMZLV2N.js} +2 -2
- package/dist/chunk-URTX2BEA.js +6 -0
- package/dist/chunk-UZFCZ7SJ.js +2 -0
- package/dist/{chunk-KMKTIO2G.js → chunk-V7LQZTTZ.js} +2 -2
- package/dist/chunk-VETXXOYU.js +3 -0
- package/dist/chunk-VGRUM7JI.js +3 -0
- package/dist/{chunk-WXZLAAWK.js → chunk-VNKYRJKN.js} +2 -2
- package/dist/chunk-VWLIOEEF.js +11 -0
- package/dist/chunk-WB6LGCFB.js +6 -0
- package/dist/{chunk-W4ETQAXM.js → chunk-WK4FD4PG.js} +2 -2
- package/dist/{chunk-O64IZ6UX.js → chunk-WKPZCQLI.js} +2 -2
- package/dist/chunk-WSG3DK5H.js +2 -0
- package/dist/chunk-WULAPQUD.js +38 -0
- package/dist/chunk-WZQFY5S7.js +4 -0
- package/dist/chunk-X434XZAI.js +2 -0
- package/dist/chunk-X7PJJYKX.js +29 -0
- package/dist/chunk-XDAUYDFT.js +2 -0
- package/dist/chunk-XITQLISP.js +2 -0
- package/dist/chunk-XRXCANFQ.js +4 -0
- package/dist/chunk-XVDMJMES.js +3 -0
- package/dist/chunk-XXJ7WL3F.js +35 -0
- package/dist/chunk-Y4XQ7LES.js +9 -0
- package/dist/chunk-YIEFEPG6.js +16 -0
- package/dist/chunk-YRVERHJR.js +49 -0
- package/dist/{chunk-CJST5ETY.js → chunk-YUFWLWIC.js} +2 -2
- package/dist/chunk-YUKYB54I.js +1 -0
- package/dist/chunk-Z3GCK3PD.js +3 -0
- package/dist/chunk-ZBNL3QCY.js +4 -0
- package/dist/chunk-ZD3Z54IW.js +2 -0
- package/dist/chunk-ZDVDSDFG.js +4 -0
- package/dist/{chunk-32LVLCLN.js → chunk-ZHSARYVS.js} +3 -3
- package/dist/{chunk-BDCC2NPY.js → chunk-ZW44MCJM.js} +2 -2
- package/dist/{chunk-N5W4YZMK.js → chunk-ZYREOING.js} +2 -2
- package/dist/cli-main.js +8 -0
- package/dist/cli.js +1 -3
- package/dist/code-CczEvHui.d.ts +121 -0
- package/dist/code-EQL6ZBLH.js +2 -0
- package/dist/code-result-json-6E4J6LGZ.js +2 -0
- package/dist/command-descriptors-QH3G2OVD.js +346 -0
- package/dist/{config-types-jVM3D7MA.d.ts → config-types-Cm-VSEBb.d.ts} +189 -23
- package/dist/dataflow-2BLMUZBP.js +2 -0
- package/dist/{db-B5PM5yNk.d.ts → db-LKJXAlNS.d.ts} +1 -1
- package/dist/dependence-slice-MGAJDZXB.js +2 -0
- package/dist/deps-GQMUYVKW.js +2 -0
- package/dist/direct-navigation-6RUJKLAV.js +3 -0
- package/dist/entry-map-V2NQP5JU.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-VM53I4IU.js +2 -0
- package/dist/graph-evidence-CbUPCSKV.d.ts +126 -0
- package/dist/graph-exploration-contract-CqDsnPQL.d.ts +7 -0
- package/dist/{health-Do5TKSJI.d.ts → health-Wl5G_LRt.d.ts} +33 -34
- package/dist/hierarchy-D553WRSZ.js +2 -0
- package/dist/imports-DOZAJWLW.js +2 -0
- package/dist/index.d.ts +4 -31
- package/dist/index.js +1 -1
- package/dist/members-HE67475K.js +2 -0
- package/dist/methods-K5JK4PPH.js +2 -0
- package/dist/next-anchor-candidates-BwMczMvX.d.ts +90 -0
- package/dist/output-continuation-command-LKBUTNRL.js +3 -0
- package/dist/output-pagination-VAWOGX4R.js +19 -0
- package/dist/postinstall.js +1 -1
- package/dist/project-reindex-4ARU6QCM.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-NBHKL4UQ.js +2 -0
- package/dist/refs-pagination-BBVTIHMH.js +2 -0
- package/dist/reindex-worker.js +27 -45
- package/dist/reindex.d.ts +62 -42
- package/dist/reindex.js +32 -33
- package/dist/repository-text-C0Q8VYdN.d.ts +19 -0
- package/dist/runtime.d.ts +286 -7
- 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-CppzF5MK.d.ts} +33 -2
- package/dist/slice-U6S6LBSB.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-C7SS5CDQ.js +2 -0
- package/dist/symbol-resolution-3FVEKDTJ.js +2 -0
- package/dist/system-6K2NOO5C.js +2 -0
- package/dist/trace-II5K2TMH.js +2 -0
- package/dist/typescript-mailbox-worker.js +1 -1
- package/dist/value-flow-MKFUUE5B.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 +27 -45
- package/docs/schemas/suppression-record.schema.json +1 -34
- package/package.json +65 -8
- package/skills/concrete-plan/SKILL.md +8 -0
- package/skills/concrete-plan/agents/openai.yaml +4 -0
- package/skills/scip-explore/SKILL.md +3 -85
- package/skills/scip-explore/agents/openai.yaml +3 -3
- 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 +77 -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/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,4 +1,10 @@
|
|
|
1
|
-
# Command
|
|
1
|
+
# Command reference
|
|
2
|
+
|
|
3
|
+
This syntax catalog is generated from the CLI command descriptors. Locate an
|
|
4
|
+
exact root with `search`, `outline`, or `entrypoints`; project explicitly chosen
|
|
5
|
+
relationships with `evidence`; then read behavior or source only for a named
|
|
6
|
+
remaining gap. Compatibility views are listed but are not part of that canonical
|
|
7
|
+
workflow.
|
|
2
8
|
|
|
3
9
|
<!-- BEGIN GENERATED COMMAND REFERENCE -->
|
|
4
10
|
|
|
@@ -7,187 +13,282 @@ This syntax summary is generated from the CLI command descriptors. Keep workflow
|
|
|
7
13
|
Commands with `--json` share three structured modes: plain `--json` emits the stable public envelope, `--json --result-only` emits only the command payload, and `--json --compact` minifies either form for a program. Agents should prefer ordinary human output. See [CLI output modes](CLI_JSON_OUTPUT.md).
|
|
8
14
|
|
|
9
15
|
Every command accepts `--output-page-size <characters>` and `--output-cursor <cursor>`. Run normally without choosing a page size: oversized human output stays readable text and prints one exact continuation command; oversized JSON prints the exact command that opts into versioned JSON page envelopes.
|
|
16
|
+
Cross-command evidence citations are off by default. With an explicit `SCIP_QUERY_SESSION`, a complete source unit, a byte-identical exact subset of a prior exact source read, or a graph unit/edge may be replaced by a visible receipt from the same index generation. Preview coverage never suppresses an exact unit; changed bytes, changed graph content, a new generation, or global `--reemit` force full evidence.
|
|
17
|
+
|
|
18
|
+
### Exploration control manual
|
|
19
|
+
|
|
20
|
+
The operator chooses the material question and deliberately selects a control. These contracts describe observations; they do not infer task relevance.
|
|
21
|
+
|
|
22
|
+
| Stage | Control | Question answered | Required input | Returned fact | Evidence ceiling | Does not establish | Cost | Contrast | Close a gap with |
|
|
23
|
+
|---|---|---|---|---|---|---|---|---|---|
|
|
24
|
+
| locate | `search <exact-text>` | Where does this exact text occur in current project text, and which aligned compiler symbol owns each line? | One exact text literal or deliberately bounded regular expression; insert \`--\` before a literal that starts with a dash. | exact cardinality, bounded identities and source, and scope commands that recover withheld matches | Exact current-text cardinality and locations within reported text coverage; compiler ownership only where aligned. | Structural source ranking orders exact matches but does not establish task relevance. A literal co-occurrence does not establish a graph relationship. | `small` | outline: search locates exact text across files; outline enumerates compiler-owned constructs in one known file. | `evidence`, `inspect`, `code` |
|
|
25
|
+
| locate | `outline <file>` | What symbols and nesting exist in this file? | One exact current project file path. | symbol names, nesting, and line ranges | Exact compiler-owned constructs and ranges when the file is indexed; no invented semantic overlay. | File ownership and nesting do not establish execution or task relevance. | `small` | search: outline enumerates constructs in one known file; search locates exact text across current project text. code: outline returns identities and ranges; code materializes exact source for selected identities. | `evidence`, `inspect`, `code` |
|
|
26
|
+
| locate | `entrypoints [text]` | Which detected external roots or entry-surface candidates match this text? | Optional exact text to filter candidates; otherwise the current indexed repository. | entry symbols with files, confidence, evidence, and indexed caller counts | Source/compiler-grounded entry evidence and indexed caller counts; exported-only candidates remain candidates. | A package-public export or zero indexed callers is an entry candidate, not proof of runtime ingress. Entry classification does not establish that the callable executes. | `bounded` | entry-map: entrypoints locates possible external roots; entry-map traverses static calls from one selected root. search: entrypoints classifies callable roots; search only locates exact text and ownership. | `evidence`, `inspect`, `code` |
|
|
27
|
+
| project | `evidence` | Which exact execution, runtime, data, state, temporal, contract, identity, ownership, or dependency relationships surround these referents? Which related source must be read only when graph evidence leaves a named implementation gap? | One or more exact symbol, file:line, or literal roots plus explicit family, direction, depth, and output bound. | batched exact selectors and typed graph relationships; compact endpoints with exact locations and follow-up commands; coverage and recoverable omissions; exact source-recovery command when source was requested with a graph projection; explicit ambiguity failure with exact rerun commands | Typed edges only to each registered provider ceiling within the explicitly selected projection and reported coverage. | The projection does not infer which relationships are relevant to the user task. Reference, dependency, data, state, temporal, contract, and identity edges do not become execution claims. | `bounded` | refs: refs enumerates direct reference sites; evidence traverses explicitly selected typed relationships. call-graph: call-graph specializes in static calls; evidence can combine execution with other selected families. value-flow: value-flow specializes in proved transfers; evidence projects bounded dataflow alongside other families. dependence-slice: dependence-slice computes a program-dependence slice; evidence performs bounded graph projection. | `inspect`, `code` |
|
|
28
|
+
| read | `inspect` | Which related source units across several known text, symbol, or location anchors should be read together? | One or more exact text, symbol, or file:line selectors naming the unresolved behavior. | one ranked, deduplicated semantic packet plus exact selector cardinality and explicit expansion coverage | Complete current source for every materialized syntax unit; bounded selector and packet coverage remain explicit. | A source packet does not choose which implementation details are relevant to the user task. A reference mention does not establish executable reachability. | `potentially-large` | code: inspect batches bounded behavior or source gaps; code materializes complete exact source. evidence: inspect reads implementation units; evidence projects typed relationships without source. | - |
|
|
29
|
+
| read | `code <selectors...>` | What exact source defines these symbols, ranges, or file surfaces? | One or more exact symbols, file:line ranges, or file paths. | per-selector resolution, complete definition source, exact ranges with statically attributed same-file call closure, file export surfaces, omitted-local ledgers, and line ranges | Exact current source bytes for every resolved selector, with omitted file-local constructs disclosed. | Source materialization does not establish callers, runtime reachability, or task relevance by itself. | `potentially-large` | inspect: code materializes complete exact source; inspect batches bounded behavior or source gaps. outline: code reads selected implementations; outline enumerates file structure without reading every body. | - |
|
|
30
|
+
|
|
31
|
+
### Relationship question manual
|
|
32
|
+
|
|
33
|
+
| Material question | Family | Direction | Establishes | Reported strengths | Provider ceilings | Does not establish |
|
|
34
|
+
|---|---|---|---|---|---|---|
|
|
35
|
+
| Who can call or reach this? | `execution` | `incoming` | Static may-call reachability between resolved program constructs. | `exact`, `derived`, `candidate`, `mixed` | `partial` | A may-call edge does not prove that a runtime invocation occurred. |
|
|
36
|
+
| What can this call or reach? | `execution` | `outgoing` | Static may-call reachability between resolved program constructs. | `exact`, `derived`, `candidate`, `mixed` | `partial` | A may-call edge does not prove that a runtime invocation occurred. |
|
|
37
|
+
| Where can this value come from? | `dataflow` | `incoming` | A value, definition, argument, parameter, return, or statically resolved value may flow to another construct. | `exact`, `derived`, `mixed`, `candidate` | `partial`, `candidate` | Current partial providers do not establish general interprocedural definition-use coverage. |
|
|
38
|
+
| Where can this value go? | `dataflow` | `outgoing` | A value, definition, argument, parameter, return, or statically resolved value may flow to another construct. | `exact`, `derived`, `mixed`, `candidate` | `partial`, `candidate` | Current partial providers do not establish general interprocedural definition-use coverage. |
|
|
39
|
+
| Which producer and consumer rendezvous? | `runtime` | `both` | A source-grounded handoff between producer and consumer participants through a runtime mechanism. | `exact`, `derived`, `candidate`, `mixed` | `partial` | An unresolved or candidate join does not prove a runtime handoff. |
|
|
40
|
+
| What resource is observed or changed? | `state` | `both` | A construct reads, writes, creates, deletes, or otherwise changes an identified state resource. | `exact` | `partial` | A state edge does not prove transactionality, durability, or exclusive ownership unless qualified. |
|
|
41
|
+
| What occurs before or after this? | `temporal` | `both` | One observed construct is locally ordered before or after another under the reported source evidence. | `exact`, `derived`, `mixed` | `partial` | Source order does not imply cross-process happens-before or durability. |
|
|
42
|
+
| What interface constrains this? | `contract` | `both` | A program construct implements, constrains, or is typed by an identified contract. | `exact`, `derived`, `mixed` | `exact` | Contract identity does not prove runtime invocation or conformance outside reported checks. |
|
|
43
|
+
| Are these observations the same entity? | `identity` | `both` | Two observations refer to the same compiler-owned or source-owned program entity. | `exact`, `derived`, `mixed` | `exact` | Shared identity does not establish execution or value transfer. |
|
|
44
|
+
| What contains or owns this? | `ownership` | `both` | A source construct, symbol, runtime observation, or state resource is contained or owned by another program entity. | `exact`, `derived`, `mixed` | `exact` | Structural ownership does not establish lifetime, singleton scope, or runtime execution unless qualified. |
|
|
45
|
+
| What does this statically rely on? | `dependencies` | `outgoing` | A file, module, or symbol statically relies on another indexed entity. | `exact`, `derived`, `mixed` | `partial` | A dependency edge does not establish that the depended-on code executes. |
|
|
46
|
+
|
|
47
|
+
### Evidence strength legend
|
|
48
|
+
|
|
49
|
+
| Strength | Meaning |
|
|
50
|
+
|---|---|
|
|
51
|
+
| `exact` | Direct compiler or source evidence establishes this relationship within the provider's reported coverage. |
|
|
52
|
+
| `derived` | A deterministic analysis computed this relationship from reported input facts; it was not directly observed. |
|
|
53
|
+
| `candidate` | Ambiguous or heuristic evidence identifies a lead that requires exact graph or source confirmation. |
|
|
54
|
+
| `mixed` | The relationship combines evidence of different strengths; its constituent methods and strengths remain disclosed. |
|
|
55
|
+
| `unknown` | The relationship has no calibrated evidence strength and cannot support a stronger claim than its raw observation. |
|
|
56
|
+
|
|
57
|
+
### Agent operation catalogue
|
|
58
|
+
|
|
59
|
+
| Operation | Commands |
|
|
60
|
+
|---|---|
|
|
61
|
+
| Locate exact roots | `search <exact-text>`, `outline <file>`, `fan-in [symbol]`, `entrypoints [text]` |
|
|
62
|
+
| Project typed relationships | `evidence`, `entry-map <entry>` |
|
|
63
|
+
| Read selected behavior/source | `inspect`, `code <selectors...>` |
|
|
64
|
+
| Analyze declared result units | `stats`, `files <pattern>`, `methods <className>`, `refs <symbol>`, `trace <symbol>`, `deps <file>`, `rdeps <file>`, `system <module>`, `surface <module>`, `dead [scope]`, `hotspots`, `imports <file>`, `imported-by <symbol>`, `unused-imports <file>`, `members <symbol>`, `fan-out [file]`, `coupling [file1] [file2]`, `cycles`, `architecture`, `bottlenecks`, `isolated`, `by-kind <kind>`, `kind-counts`, `dependency-depth`, `hierarchy <symbol>`, `call-graph <symbol>`, `similar [symbol] [other]`, `similar-files [file]`, `react-component-duplicates [file]`, `react-hook-candidates [file]`, `react-large-component-pressure [file]`, `vue-component-duplicates [file]`, `vue-composable-candidates [file]`, `vue-large-view-pressure [file]`, `similar-chains`, `extract-candidates`, `locality-candidates [symbol-or-file]`, `affected <symbol>`, `change-surface <file>`, `cleanup-plan`, `co-change [file]`, `recent-duplicates`, `doc-drift [doc]`, `unused-params`, `incomplete-migration`, `context <target>`, `drift [module]`, `wrapper-candidates`, `passthrough-candidates`, `stale-abstractions`, `complexity-hotspots`, `self-audit`, `complexity <symbol>`, `reference-neighborhood <symbol>`, `value-flow <symbol>`, `dependence-slice <symbol-or-location>`, `reference-reachability <symbol>`, `redundant-reexports`, `duplicate-bodies`, `twin-drift`, `twin-ab <symbolA> <symbolB>`, `not-implemented`, `decorative-checkers`, `test-quality`, `similar-signatures`, `diff-impact`, `check-deps`, `capabilities`, `config-validate`, `doctor`, `status` |
|
|
65
|
+
| Maintain repository/tool state | `reindex`, `augment-sources`, `augment-vue`, `session`, `tla <operation> [spec]`, `health`, `install-skills`, `init`, `suppress <id>`, `setup`, `setup-agent`, `uninstall`, `watch` |
|
|
66
|
+
|
|
67
|
+
### Typed relationship meanings
|
|
68
|
+
|
|
69
|
+
| Family | Establishes | Does not establish | Providers |
|
|
70
|
+
|---|---|---|---|
|
|
71
|
+
| `execution` | Static may-call reachability between resolved program constructs. | A may-call edge does not prove that a runtime invocation occurred. | SCIP/compiler identity and source ownership, parser-proved intraprocedural control dependence, TypeScript compiler identities, control-flow graph, and reaching definitions |
|
|
72
|
+
| `runtime` | A source-grounded handoff between producer and consumer participants through a runtime mechanism. | An unresolved or candidate join does not prove a runtime handoff. | source-grounded runtime-boundary joins |
|
|
73
|
+
| `dataflow` | A value, definition, argument, parameter, return, or statically resolved value may flow to another construct. | Current partial providers do not establish general interprocedural definition-use coverage. | source-grounded runtime-boundary joins, compiler callsites and bounded static value evaluation, TypeScript compiler identities, control-flow graph, and reaching definitions, parser-proved local state and temporal facts |
|
|
74
|
+
| `state` | A construct reads, writes, creates, deletes, or otherwise changes an identified state resource. | A state edge does not prove transactionality, durability, or exclusive ownership unless qualified. | parser-proved local state and temporal facts |
|
|
75
|
+
| `temporal` | One observed construct is locally ordered before or after another under the reported source evidence. | Source order does not imply cross-process happens-before or durability. | source-grounded runtime-boundary joins, parser-proved local state and temporal facts |
|
|
76
|
+
| `contract` | A program construct implements, constrains, or is typed by an identified contract. | Contract identity does not prove runtime invocation or conformance outside reported checks. | SCIP/compiler identity and source ownership |
|
|
77
|
+
| `identity` | Two observations refer to the same compiler-owned or source-owned program entity. | Shared identity does not establish execution or value transfer. | SCIP/compiler identity and source ownership |
|
|
78
|
+
| `ownership` | A source construct, symbol, runtime observation, or state resource is contained or owned by another program entity. | Structural ownership does not establish lifetime, singleton scope, or runtime execution unless qualified. | SCIP/compiler identity and source ownership |
|
|
79
|
+
| `dependencies` | A file, module, or symbol statically relies on another indexed entity. | A dependency edge does not establish that the depended-on code executes. | SCIP/compiler identity and source ownership |
|
|
80
|
+
|
|
81
|
+
### Typed relationship providers
|
|
82
|
+
|
|
83
|
+
| Provider | Family / subtype | Directions | Support ceiling | Establishes | Does not establish |
|
|
84
|
+
|---|---|---|---|---|---|
|
|
85
|
+
| `indexed-program-identity` | `execution/call` | `incoming`, `outgoing`, `both` | `partial` | The source construct may call the resolved target. | Static may-call reachability does not prove that an invocation occurred at runtime. |
|
|
86
|
+
| `indexed-program-identity` | `execution/result-callback` | `incoming`, `outgoing`, `both` | `partial` | The referenced callable can produce the result consumed by this path. | A callback relationship does not prove invocation order or runtime selection. |
|
|
87
|
+
| `indexed-program-identity` | `contract/uses-contract-symbol` | `incoming`, `outgoing`, `both` | `exact` | The source construct refers to the identified contract symbol. | Contract identity does not prove runtime invocation or behavioral conformance. |
|
|
88
|
+
| `indexed-program-identity` | `identity/references` | `incoming`, `outgoing`, `both` | `exact` | The occurrence resolves to the identified compiler-owned symbol. | A reference does not establish execution or value transfer. |
|
|
89
|
+
| `indexed-program-identity` | `ownership/contains` | `incoming`, `outgoing`, `both` | `exact` | The owner contains the identified program construct. | Structural containment does not establish runtime lifetime or sharing scope. |
|
|
90
|
+
| `indexed-program-identity` | `ownership/contains-*` | `incoming`, `outgoing`, `both` | `exact` | The owner contains the identified program construct. | Structural containment does not establish runtime lifetime or sharing scope. |
|
|
91
|
+
| `indexed-program-identity` | `ownership/owns-*` | `incoming`, `outgoing`, `both` | `exact` | The owner owns the identified source or runtime observation. | Observation ownership does not establish singleton lifetime or exclusive ownership. |
|
|
92
|
+
| `indexed-program-identity` | `dependencies/imports` | `incoming`, `outgoing`, `both` | `partial` | The source file or module statically imports the indexed target. | An import does not establish that imported code executes. |
|
|
93
|
+
| `indexed-program-identity` | `dependencies/imports-external` | `incoming`, `outgoing`, `both` | `partial` | The source region statically imports an external package. | An external import does not establish which package behavior executes. |
|
|
94
|
+
| `runtime-boundary-join` | `runtime/runtime-handoff` | `incoming`, `outgoing`, `both` | `partial` | A producer and consumer share a source-grounded runtime rendezvous. | A candidate or unresolved join does not prove a runtime handoff. |
|
|
95
|
+
| `runtime-boundary-join` | `runtime/discriminator-dispatch` | `incoming`, `outgoing`, `both` | `partial` | A serialized discriminator selects the reported consumer. | The dispatch edge does not prove delivery, retry, or successful handling. |
|
|
96
|
+
| `runtime-boundary-join` | `dataflow/serialized-discriminator-transfer` | `incoming`, `outgoing`, `both` | `partial` | The producer serializes the discriminator consumed by dispatch. | This edge does not establish the flow of every payload field. |
|
|
97
|
+
| `runtime-boundary-join` | `temporal/enqueue-before-consume` | `incoming`, `outgoing`, `both` | `partial` | The reported enqueue precedes a possible consume through the queue. | Queue order does not establish delivery time, uniqueness, retry count, or durability. |
|
|
98
|
+
| `parser-control-dependence` | `execution/predicate-consequence` | `incoming`, `outgoing`, `both` | `partial` | The outcome is control-dependent on the reported predicate or handler. | Local control dependence does not establish that the containing function executes. |
|
|
99
|
+
| `parser-control-dependence` | `execution/predicate-alternative` | `incoming`, `outgoing`, `both` | `partial` | The outcome is control-dependent on the reported predicate or handler. | Local control dependence does not establish that the containing function executes. |
|
|
100
|
+
| `parser-control-dependence` | `execution/predicate-fallthrough` | `incoming`, `outgoing`, `both` | `partial` | The outcome is control-dependent on the reported predicate or handler. | Local control dependence does not establish that the containing function executes. |
|
|
101
|
+
| `parser-control-dependence` | `execution/predicate-case` | `incoming`, `outgoing`, `both` | `partial` | The outcome is control-dependent on the reported predicate or handler. | Local control dependence does not establish that the containing function executes. |
|
|
102
|
+
| `parser-control-dependence` | `execution/predicate-default` | `incoming`, `outgoing`, `both` | `partial` | The outcome is control-dependent on the reported predicate or handler. | Local control dependence does not establish that the containing function executes. |
|
|
103
|
+
| `parser-control-dependence` | `execution/predicate-return` | `incoming`, `outgoing`, `both` | `partial` | The outcome is control-dependent on the reported predicate or handler. | Local control dependence does not establish that the containing function executes. |
|
|
104
|
+
| `parser-control-dependence` | `execution/predicate-throw` | `incoming`, `outgoing`, `both` | `partial` | The outcome is control-dependent on the reported predicate or handler. | Local control dependence does not establish that the containing function executes. |
|
|
105
|
+
| `parser-control-dependence` | `execution/loop-iteration` | `incoming`, `outgoing`, `both` | `partial` | The outcome is control-dependent on the reported predicate or handler. | Local control dependence does not establish that the containing function executes. |
|
|
106
|
+
| `parser-control-dependence` | `execution/loop-exit` | `incoming`, `outgoing`, `both` | `partial` | The outcome is control-dependent on the reported predicate or handler. | Local control dependence does not establish that the containing function executes. |
|
|
107
|
+
| `parser-control-dependence` | `execution/exception-handler` | `incoming`, `outgoing`, `both` | `partial` | The outcome is control-dependent on the reported predicate or handler. | Local control dependence does not establish that the containing function executes. |
|
|
108
|
+
| `parser-control-dependence` | `execution/finally-cleanup` | `incoming`, `outgoing`, `both` | `partial` | The outcome is control-dependent on the reported predicate or handler. | Local control dependence does not establish that the containing function executes. |
|
|
109
|
+
| `parser-control-dependence` | `execution/handler-return` | `incoming`, `outgoing`, `both` | `partial` | The outcome is control-dependent on the reported predicate or handler. | Local control dependence does not establish that the containing function executes. |
|
|
110
|
+
| `parser-control-dependence` | `execution/handler-throw` | `incoming`, `outgoing`, `both` | `partial` | The outcome is control-dependent on the reported predicate or handler. | Local control dependence does not establish that the containing function executes. |
|
|
111
|
+
| `parser-control-dependence` | `execution/returns` | `incoming`, `outgoing`, `both` | `partial` | The selected construct contains the reported return terminal. | A local return terminal does not establish that the containing callable executes. |
|
|
112
|
+
| `parser-control-dependence` | `execution/throws` | `incoming`, `outgoing`, `both` | `partial` | The selected construct contains the reported throw terminal. | A local throw terminal does not establish propagation, handling, or callable execution. |
|
|
113
|
+
| `bounded-static-value-flow` | `dataflow/argument-to-parameter` | `incoming`, `outgoing`, `both` | `partial` | The reported value may reach the target through the evidenced callsite transfer. | This provider does not establish general local definition-use, alias, field, or heap flow. |
|
|
114
|
+
| `bounded-static-value-flow` | `dataflow/constant-to-parameter` | `incoming`, `outgoing`, `both` | `partial` | The reported value may reach the target through the evidenced callsite transfer. | This provider does not establish general local definition-use, alias, field, or heap flow. |
|
|
115
|
+
| `bounded-static-value-flow` | `dataflow/property-to-parameter` | `incoming`, `outgoing`, `both` | `partial` | The reported value may reach the target through the evidenced callsite transfer. | This provider does not establish general local definition-use, alias, field, or heap flow. |
|
|
116
|
+
| `bounded-static-value-flow` | `dataflow/return-to-parameter` | `incoming`, `outgoing`, `both` | `partial` | The reported value may reach the target through the evidenced callsite transfer. | This provider does not establish general local definition-use, alias, field, or heap flow. |
|
|
117
|
+
| `bounded-static-value-flow` | `dataflow/return-to-call-result` | `incoming`, `outgoing`, `both` | `partial` | The reported value may reach the target through the evidenced callsite transfer. | This provider does not establish general local definition-use, alias, field, or heap flow. |
|
|
118
|
+
| `typescript-local-dependence` | `dataflow/definition-to-use` | `incoming`, `outgoing`, `both` | `partial` | The definition reaches the reported read on a feasible local control-flow path. | Local reaching definitions do not establish heap aliasing, exceptional flow, or the runtime order of closure invocation. |
|
|
119
|
+
| `typescript-local-dependence` | `dataflow/value-to-definition` | `incoming`, `outgoing`, `both` | `partial` | The reported right-hand-side read supplies the assigned local definition. | A local assignment edge does not establish field or heap points-to flow. |
|
|
120
|
+
| `typescript-local-dependence` | `dataflow/closure-capture` | `incoming`, `outgoing`, `both` | `candidate` | The nested callable reads the reported binding from an enclosing callable. | Closure capture does not establish whether or when the nested callable executes. |
|
|
121
|
+
| `typescript-local-dependence` | `dataflow/field-definition-to-use` | `incoming`, `outgoing`, `both` | `partial` | The reported same-owner field definition can reach the field read. | Field-name identity does not establish whole-program heap aliasing or cross-instance flow. |
|
|
122
|
+
| `typescript-local-dependence` | `execution/control-dependence` | `incoming`, `outgoing`, `both` | `partial` | Execution of the reported statement depends on the outcome of the predicate. | Intraprocedural control dependence does not establish that the containing callable executes. |
|
|
123
|
+
| `parser-state-temporal` | `dataflow/captured-value-to-state` | `incoming`, `outgoing`, `both` | `partial` | The reported source value is assigned into the identified state resource. | The edge does not establish alias, heap, or later read flow. |
|
|
124
|
+
| `parser-state-temporal` | `dataflow/constant-to-state` | `incoming`, `outgoing`, `both` | `partial` | The reported source value is assigned into the identified state resource. | The edge does not establish alias, heap, or later read flow. |
|
|
125
|
+
| `parser-state-temporal` | `dataflow/expression-to-state` | `incoming`, `outgoing`, `both` | `partial` | The reported source value is assigned into the identified state resource. | The edge does not establish alias, heap, or later read flow. |
|
|
126
|
+
| `parser-state-temporal` | `dataflow/property-to-state` | `incoming`, `outgoing`, `both` | `partial` | The reported source value is assigned into the identified state resource. | The edge does not establish alias, heap, or later read flow. |
|
|
127
|
+
| `parser-state-temporal` | `dataflow/return-to-state` | `incoming`, `outgoing`, `both` | `partial` | The reported source value is assigned into the identified state resource. | The edge does not establish alias, heap, or later read flow. |
|
|
128
|
+
| `parser-state-temporal` | `dataflow/value-to-state` | `incoming`, `outgoing`, `both` | `partial` | The reported source value is assigned into the identified state resource. | The edge does not establish alias, heap, or later read flow. |
|
|
129
|
+
| `parser-state-temporal` | `state/writes-resource` | `incoming`, `outgoing`, `both` | `partial` | The reported construct performs the named operation on the identified resource. | A state operation does not establish transactionality, durability, or exclusive ownership. |
|
|
130
|
+
| `parser-state-temporal` | `state/deletes-resource` | `incoming`, `outgoing`, `both` | `partial` | The reported construct performs the named operation on the identified resource. | A state operation does not establish transactionality, durability, or exclusive ownership. |
|
|
131
|
+
| `parser-state-temporal` | `state/reads-resource` | `incoming`, `outgoing`, `both` | `partial` | The reported construct performs the named operation on the identified resource. | A state operation does not establish transactionality, durability, or exclusive ownership. |
|
|
132
|
+
| `parser-state-temporal` | `state/enqueues-resource` | `incoming`, `outgoing`, `both` | `partial` | The reported construct performs the named operation on the identified resource. | A state operation does not establish transactionality, durability, or exclusive ownership. |
|
|
133
|
+
| `parser-state-temporal` | `state/consumes-resource` | `incoming`, `outgoing`, `both` | `partial` | The reported construct performs the named operation on the identified resource. | A state operation does not establish transactionality, durability, or exclusive ownership. |
|
|
134
|
+
| `parser-state-temporal` | `temporal/await-completion-before` | `incoming`, `outgoing`, `both` | `partial` | The reported source constructs have the named local ordering relationship. | Local source order does not establish cross-process happens-before or durable completion. |
|
|
135
|
+
| `parser-state-temporal` | `temporal/awaits-completion` | `incoming`, `outgoing`, `both` | `partial` | The reported source constructs have the named local ordering relationship. | Local source order does not establish cross-process happens-before or durable completion. |
|
|
136
|
+
| `parser-state-temporal` | `temporal/inside-lock-scope` | `incoming`, `outgoing`, `both` | `partial` | The reported source constructs have the named local ordering relationship. | Local source order does not establish cross-process happens-before or durable completion. |
|
|
137
|
+
| `parser-state-temporal` | `temporal/lexical-successor` | `incoming`, `outgoing`, `both` | `partial` | The reported source constructs have the named local ordering relationship. | Local source order does not establish cross-process happens-before or durable completion. |
|
|
138
|
+
|
|
139
|
+
### Explicitly unavailable relationship analyses
|
|
140
|
+
|
|
141
|
+
An unavailable frontier is a relationship class for which no registered analyzer can provide complete evidence. Its absence from a graph is therefore not evidence that the relationship does not exist.
|
|
142
|
+
|
|
143
|
+
| Frontier | Families | Unavailable capability | Consequence | Recover selected paths with |
|
|
144
|
+
|---|---|---|---|---|
|
|
145
|
+
| `general-interprocedural-value-flow` | `dataflow` | Whole-program definition-use flow through arbitrary calls and returns is unavailable. | Missing dataflow edges cannot establish that a value never crosses an unmodeled call. | `value-flow`, `dependence-slice`, `inspect`, `code` |
|
|
146
|
+
| `heap-aliasing` | `dataflow`, `state` | Heap points-to and cross-instance alias analysis are unavailable. | Missing field or state edges cannot establish that two references never reach the same object. | `value-flow`, `dependence-slice`, `inspect`, `code` |
|
|
147
|
+
| `exceptional-flow` | `execution`, `dataflow`, `temporal` | Interprocedural exception propagation and finally completion flow are unavailable. | Normal-path reachability and ordering do not establish behavior after a throw or rejection. | `dependence-slice`, `inspect`, `code` |
|
|
148
|
+
| `reflection` | `execution`, `runtime`, `identity`, `dependencies` | Reflective lookup, dynamic loading, and name-computed invocation are unavailable without exact evidence. | Missing static edges cannot establish that a construct is unreachable through reflection. | `search`, `inspect`, `code` |
|
|
149
|
+
| `generated-dispatch` | `execution`, `runtime`, `identity` | Dispatch tables or names created only by generated or unavailable source are unavailable. | Missing dispatch edges cannot establish that no generated consumer exists. | `search`, `inspect`, `code` |
|
|
150
|
+
| `unsupported-framework-adapters` | `runtime`, `dataflow`, `state`, `temporal` | Framework runtime crossings without a registered source adapter are unavailable. | Missing boundary edges cannot establish that no producer, consumer, state effect, or ordering exists. | `search`, `inspect`, `code` |
|
|
10
151
|
|
|
11
152
|
### Indexing
|
|
12
153
|
|
|
13
|
-
| Command | Description | Options |
|
|
14
|
-
|
|
15
|
-
| `reindex` | Index the codebase and convert to SQLite | `-l, --language <lang>`<br>`--pnpm-workspaces`<br>`--force`<br>`--allow-partial`<br>`--trust-project-tools`<br>`--install-missing`<br>`--indexer-concurrency <n>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
16
|
-
| `augment-sources` | Add source files skipped by upstream SCIP indexers to the SQLite documents table | - |
|
|
17
|
-
| `augment-vue` | Add compiler-resolved Vue SFC references to the SQLite index using Volar | `--project <tsconfig>` |
|
|
154
|
+
| Command | Description | Cost | Closes disclosed gaps with | Options |
|
|
155
|
+
|---|---|---|---|---|
|
|
156
|
+
| `reindex` | Index the codebase and convert to SQLite | variable | - | `-l, --language <lang>`<br>`--pnpm-workspaces`<br>`--force`<br>`--allow-partial`<br>`--trust-project-tools`<br>`--install-missing`<br>`--indexer-concurrency <n>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
157
|
+
| `augment-sources` | Add source files skipped by upstream SCIP indexers to the SQLite documents table | variable | - | - |
|
|
158
|
+
| `augment-vue` | Add compiler-resolved Vue SFC references to the SQLite index using Volar | variable | - | `--project <tsconfig>` |
|
|
18
159
|
|
|
19
160
|
### Core
|
|
20
161
|
|
|
21
|
-
| Command | Description | Options |
|
|
22
|
-
|
|
23
|
-
| `stats` | Show index statistics | `--json`<br>`--result-only`<br>`--compact` |
|
|
162
|
+
| Command | Description | Cost | Closes disclosed gaps with | Options |
|
|
163
|
+
|---|---|---|---|---|
|
|
164
|
+
| `stats` | Show index statistics | bounded | `inspect`, `code` | `--json`<br>`--result-only`<br>`--compact` |
|
|
24
165
|
|
|
25
166
|
### Navigation
|
|
26
167
|
|
|
27
|
-
| Command | Description | Options |
|
|
28
|
-
|
|
29
|
-
| `files <pattern>` | Find files matching a pattern | `--json`<br>`--result-only`<br>`--compact` |
|
|
30
|
-
| `
|
|
31
|
-
| `
|
|
32
|
-
| `
|
|
33
|
-
| `
|
|
34
|
-
| `
|
|
35
|
-
| `
|
|
36
|
-
| `
|
|
37
|
-
| `
|
|
38
|
-
| `
|
|
39
|
-
| `
|
|
40
|
-
| `
|
|
41
|
-
| `
|
|
42
|
-
| `
|
|
43
|
-
| `
|
|
44
|
-
| `
|
|
45
|
-
| `
|
|
46
|
-
| `
|
|
168
|
+
| Command | Description | Cost | Closes disclosed gaps with | Options |
|
|
169
|
+
|---|---|---|---|---|
|
|
170
|
+
| `files <pattern>` | Find current project files matching a path pattern | bounded | `inspect`, `code` | `--json`<br>`--result-only`<br>`--compact` |
|
|
171
|
+
| `session` | Show evidence already delivered in this agent exploration session | variable | - | `--reset` |
|
|
172
|
+
| `inspect` | Batch related searches, symbols, and source locations into one deduplicated source packet | potentially-large | - | `--search <text>`<br>`--symbol <symbol>`<br>`--at <file:line>`<br>`-s, --scope <path>`<br>`-C, --context <n>`<br>`-n, --limit <n>`<br>`--max-units <n>`<br>`--max-characters <n>`<br>`--view <view>`<br>`--allow-large-source`<br>`--allow-large-behavior`<br>`--unit-lines <n>`<br>`--total-lines <n>`<br>`--include <part>`<br>`--evidence-budget <channel=n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
173
|
+
| `search <exact-text>` | Count current project text matches and preview a bounded, recoverable identity and source manifest | small | `evidence`, `inspect`, `code` | `-s, --scope <path>`<br>`-C, --context <n>`<br>`-n, --limit <n>`<br>`--full`<br>`--regexp`<br>`-i, --ignore-case`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
174
|
+
| `methods <className>` | List methods of one exactly resolved class; ambiguity and missing targets fail explicitly | bounded | `inspect`, `code` | `--json`<br>`--result-only`<br>`--compact` |
|
|
175
|
+
| `refs <symbol>` | Find all files referencing a symbol | bounded | `inspect`, `code` | `--full`<br>`-n, --limit <n>`<br>`--cursor <cursor>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
176
|
+
| `trace <symbol>` | Trace a symbol: definition + all references | bounded | `inspect`, `code` | `--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
177
|
+
| `evidence` | Traverse selected typed relationships around exact referents; recover source separately when needed | bounded | `inspect`, `code` | `--symbol <symbol>`<br>`--at <file:line>`<br>`--search <literal>`<br>`--view <view>`<br>`--edge <family>`<br>`--direction <direction>`<br>`--subtype <subtype>`<br>`--connecting`<br>`--inventory-only`<br>`--fold <id>`<br>`--depth <n>`<br>`--max-edges <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
178
|
+
| `deps <file>` | Files this file depends on (internal) | bounded | `inspect`, `code` | `--json`<br>`--result-only`<br>`--compact` |
|
|
179
|
+
| `rdeps <file>` | Files that depend on this file/module | bounded | `inspect`, `code` | `--json`<br>`--result-only`<br>`--compact` |
|
|
180
|
+
| `system <module>` | One-hop module summary: matched files, documented symbols, and file reference dependencies | bounded | `inspect`, `code` | `--json`<br>`--result-only`<br>`--compact` |
|
|
181
|
+
| `surface <module>` | What symbols consumers actually use from this module | bounded | `inspect`, `code` | `--json`<br>`--result-only`<br>`--compact` |
|
|
182
|
+
| `imports <file>` | What symbols does this file import? | variable | `inspect`, `code` | `--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
183
|
+
| `imported-by <symbol>` | Which files import this symbol? | bounded | `inspect`, `code` | `--json`<br>`--result-only`<br>`--compact` |
|
|
184
|
+
| `outline <file>` | Tree view of symbols in a file, with line ranges | small | `evidence`, `inspect`, `code` | `--signatures`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
185
|
+
| `members <symbol>` | All children of a symbol (methods, fields, nested types) | bounded | `inspect`, `code` | `--json`<br>`--result-only`<br>`--compact` |
|
|
186
|
+
| `by-kind <kind>` | Find symbols by SCIP kind (class, interface, enum, function, etc.) | variable | `inspect`, `code` | `-s, --scope <path>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
187
|
+
| `kind-counts` | Histogram of symbol kinds in the codebase | bounded | `inspect`, `code` | `-s, --scope <path>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
188
|
+
| `hierarchy <symbol>` | Show a symbol's ancestry chain (method → class → module) | bounded | `inspect`, `code` | `--json`<br>`--result-only`<br>`--compact` |
|
|
189
|
+
| `code <selectors...>` | Read exact definitions, ranges with local call closure, or file export surfaces | potentially-large | - | `-C, --context <n>`<br>`--members <exported|all>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
190
|
+
| `reference-neighborhood <symbol>` | Show definition/reference sites and incoming/outgoing static calls without value-flow claims | variable | `inspect`, `code` | `--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
191
|
+
| `value-flow <symbol>` | Show only proved argument/parameter and bounded static-value transfers around a symbol | variable | `inspect`, `code` | `--depth <n>`<br>`--max-edges <n>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
192
|
+
| `dependence-slice <symbol-or-location>` | Directional slice over proved data/control dependencies with explicit supporting call edges | variable | `inspect`, `code` | `--forward`<br>`--depth <n>`<br>`--max-edges <n>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
193
|
+
| `reference-reachability <symbol>` | Traverse legacy callee or reference-owner reachability without calling it a program slice | variable | `inspect`, `code` | `--forward`<br>`--depth <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
47
194
|
|
|
48
195
|
### Cleanup
|
|
49
196
|
|
|
50
|
-
| Command | Description | Options |
|
|
51
|
-
|
|
52
|
-
| `dead [scope]` | Find repository-dead code, file-internal symbols, and implicit-usage signals | `--min-loc <n>`<br>`--include-tests`<br>`--skip-barrels`<br>`--include-members`<br>`--only-dead`<br>`--only-internal`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
53
|
-
| `unused-imports <file>` | Find imports not referenced in the same file | `--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
54
|
-
| `isolated` | Find completely orphaned symbols (no references at all) | `-s, --scope <path>`<br>`--min-loc <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
55
|
-
| `similar [symbol] [other]` | Find heuristic function similarity candidates from callee fingerprints | `--min-similarity <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--min-callees <n>`<br>`--cross-file-only`<br>`--plan`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
56
|
-
| `similar-files [file]` | Find heuristic similar-file candidates from dependency profiles | `--min-similarity <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--min-deps <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
57
|
-
| `react-component-duplicates [file]` | Find heuristic duplicated React component structure candidates from JSX tags, props, events, and bindings | `--min-similarity <n>`<br>`--min-tokens <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
58
|
-
| `react-hook-candidates [file]` | Find heuristic React hook extraction candidates from shared state, effects, requests, and handlers | `--min-similarity <n>`<br>`--min-shared-behaviors <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
59
|
-
| `react-large-component-pressure [file]` | Find heuristic large React component pressure candidates from component lines, JSX structure, and hook behavior | `--min-component-lines <n>`<br>`--min-file-lines <n>`<br>`--min-jsx-tokens <n>`<br>`--min-behavior-tokens <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
60
|
-
| `vue-component-duplicates [file]` | Find heuristic duplicated Vue component structure candidates from template tags, bindings, slots, and directives | `--min-similarity <n>`<br>`--min-tokens <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
61
|
-
| `vue-composable-candidates [file]` | Find heuristic Vue composable extraction candidates from shared state, effects, requests, and template bindings | `--min-similarity <n>`<br>`--min-shared-behaviors <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
62
|
-
| `vue-large-view-pressure [file]` | Find heuristic large Vue view pressure candidates from template, script, style, and external script line counts | `--min-total-lines <n>`<br>`--min-template-lines <n>`<br>`--min-script-lines <n>`<br>`--min-style-lines <n>`<br>`--review-thresholds`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
63
|
-
| `similar-chains` | Find heuristic similar-chain candidates from dependency flows | `--min-similarity <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--min-length <n>`<br>`--max-length <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
64
|
-
| `extract-candidates` | Find heuristic extraction candidates from isolated callee clusters | `-s, --scope <path>`<br>`--min-loc <n>`<br>`--min-callees <n>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
65
|
-
| `locality-candidates [symbol-or-file]` | Find directory-locality and ancestry candidates from consumer ownership | `-s, --scope <path>`<br>`--min-consumers <n>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
66
|
-
| `cleanup-plan` | Ordered, batched deletion plan: graph-fact dead code plus the cascade candidates it unlocks | `-s, --scope <path>`<br>`--min-loc <n>`<br>`--max-depth <n>`<br>`--verify`<br>`--patch`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
67
|
-
| `
|
|
68
|
-
| `
|
|
69
|
-
| `
|
|
70
|
-
| `
|
|
71
|
-
| `
|
|
72
|
-
| `
|
|
73
|
-
| `
|
|
74
|
-
| `
|
|
75
|
-
| `
|
|
76
|
-
| `
|
|
77
|
-
| `
|
|
78
|
-
| `
|
|
79
|
-
| `
|
|
80
|
-
| `
|
|
81
|
-
| `
|
|
82
|
-
| `
|
|
83
|
-
| `test-quality` | Test-quality candidates: assertion-free it/test bodies, a skipped-test ledger with git-blame age, and mock-echo tests that assert the same literal they stubbed into a mock | `-s, --scope <path>`<br>`-n, --limit <n>`<br>`--rot-days <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
84
|
-
| `similar-signatures` | Find functions with near-identical type signatures (same shape) | `-s, --scope <path>`<br>`--min-loc <n>`<br>`--max-shape-frequency <n>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
197
|
+
| Command | Description | Cost | Closes disclosed gaps with | Options |
|
|
198
|
+
|---|---|---|---|---|
|
|
199
|
+
| `dead [scope]` | Find repository-dead code, file-internal symbols, and implicit-usage signals | variable | `inspect`, `code` | `--min-loc <n>`<br>`--include-tests`<br>`--skip-barrels`<br>`--include-members`<br>`--only-dead`<br>`--only-internal`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
200
|
+
| `unused-imports <file>` | Find imports not referenced in the same file | variable | `inspect`, `code` | `--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
201
|
+
| `isolated` | Find completely orphaned symbols (no references at all) | variable | `inspect`, `code` | `-s, --scope <path>`<br>`--min-loc <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
202
|
+
| `similar [symbol] [other]` | Find heuristic function similarity candidates from callee fingerprints | variable | `inspect`, `code` | `--min-similarity <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--min-callees <n>`<br>`--cross-file-only`<br>`--plan`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
203
|
+
| `similar-files [file]` | Find heuristic similar-file candidates from dependency profiles | variable | `inspect`, `code` | `--min-similarity <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--min-deps <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
204
|
+
| `react-component-duplicates [file]` | Find heuristic duplicated React component structure candidates from JSX tags, props, events, and bindings | variable | `inspect`, `code` | `--min-similarity <n>`<br>`--min-tokens <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
205
|
+
| `react-hook-candidates [file]` | Find heuristic React hook extraction candidates from shared state, effects, requests, and handlers | variable | `inspect`, `code` | `--min-similarity <n>`<br>`--min-shared-behaviors <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
206
|
+
| `react-large-component-pressure [file]` | Find heuristic large React component pressure candidates from component lines, JSX structure, and hook behavior | variable | `inspect`, `code` | `--min-component-lines <n>`<br>`--min-file-lines <n>`<br>`--min-jsx-tokens <n>`<br>`--min-behavior-tokens <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
207
|
+
| `vue-component-duplicates [file]` | Find heuristic duplicated Vue component structure candidates from template tags, bindings, slots, and directives | variable | `inspect`, `code` | `--min-similarity <n>`<br>`--min-tokens <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
208
|
+
| `vue-composable-candidates [file]` | Find heuristic Vue composable extraction candidates from shared state, effects, requests, and template bindings | variable | `inspect`, `code` | `--min-similarity <n>`<br>`--min-shared-behaviors <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
209
|
+
| `vue-large-view-pressure [file]` | Find heuristic large Vue view pressure candidates from template, script, style, and external script line counts | variable | `inspect`, `code` | `--min-total-lines <n>`<br>`--min-template-lines <n>`<br>`--min-script-lines <n>`<br>`--min-style-lines <n>`<br>`--review-thresholds`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
210
|
+
| `similar-chains` | Find heuristic similar-chain candidates from dependency flows | variable | `inspect`, `code` | `--min-similarity <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--min-length <n>`<br>`--max-length <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
211
|
+
| `extract-candidates` | Find heuristic extraction candidates from isolated callee clusters | variable | `inspect`, `code` | `-s, --scope <path>`<br>`--min-loc <n>`<br>`--min-callees <n>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
212
|
+
| `locality-candidates [symbol-or-file]` | Find directory-locality and ancestry candidates from consumer ownership | variable | `inspect`, `code` | `-s, --scope <path>`<br>`--min-consumers <n>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
213
|
+
| `cleanup-plan` | Ordered, batched deletion plan: graph-fact dead code plus the cascade candidates it unlocks | variable | `inspect`, `code` | `-s, --scope <path>`<br>`--min-loc <n>`<br>`--max-depth <n>`<br>`--verify`<br>`--patch`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
214
|
+
| `recent-duplicates` | Directional duplicate candidates: recent code that re-implements established callable, React, or Vue code | variable | `inspect`, `code` | `--window <n>`<br>`--min-similarity <n>`<br>`-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
215
|
+
| `doc-drift [doc]` | Stale-doc candidates: code the doc references or co-changed with kept changing after the doc stopped | variable | `inspect`, `code` | `-n, --limit <n>`<br>`--min-coupling <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
216
|
+
| `unused-params` | Speculative-generality candidates: trailing parameters no body ever uses (TS/JS) | variable | `inspect`, `code` | `-s, --scope <path>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
217
|
+
| `drift [module]` | Detect drift candidates: unused imports and declared architecture violations; pass --architecture for boundary context | variable | `inspect`, `code` | `--min-deviation <n>`<br>`--patterns`<br>`--architecture`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
218
|
+
| `wrapper-candidates` | Find heuristic wrapper candidates only called by one consumer (high false-positive rate on codebases with intentional layering/ambient types — treat as exploration, not findings) | variable | `inspect`, `code` | `-s, --scope <path>`<br>`--max-loc <n>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
219
|
+
| `passthrough-candidates` | Find heuristic passthrough candidates that forward to one callee | variable | `inspect`, `code` | `-s, --scope <path>`<br>`--max-loc <n>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
220
|
+
| `stale-abstractions` | Find heuristic stale abstraction candidates with 0-1 consumers (high false-positive rate on codebases with intentional layering/ambient types — treat as exploration, not findings) | variable | `inspect`, `code` | `-s, --scope <path>`<br>`--min-loc <n>`<br>`-n, --limit <n>`<br>`--include-low-confidence`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
221
|
+
| `complexity-hotspots` | Find heuristic complexity hotspot candidates from LOC x fan-in x fan-out | variable | `inspect`, `code` | `-s, --scope <path>`<br>`--min-loc <n>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
222
|
+
| `redundant-reexports` | Find barrel re-exports that nobody imports through | variable | `inspect`, `code` | `-s, --scope <path>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
223
|
+
| `duplicate-bodies` | Find exact duplicate small-body candidates across files | variable | `inspect`, `code` | `-s, --scope <path>`<br>`--max-loc <n>`<br>`--min-loc <n>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
224
|
+
| `twin-drift` | Twin drift candidates: same-name (or near-name) functions across files with diverged bodies | variable | `inspect`, `code` | `-s, --scope <path>`<br>`--min-similarity <n>`<br>`--include-homonyms`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
225
|
+
| `twin-ab <symbolA> <symbolB>` | Generate a behavioral A/B scaffold comparing two same-concept twins (cleanup integrity scenario) — a ready-to-fill vitest file, not an auto-executor | bounded | `inspect`, `code` | `--out <path>`<br>`--force`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
226
|
+
| `not-implemented` | Reachable placeholder stub candidates (throw-stub, TODO+return-default, empty body) — production callers can actually reach these; an unreachable stub is dead's job, not this one's | variable | `inspect`, `code` | `-s, --scope <path>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
227
|
+
| `decorative-checkers` | Decorative checker candidates: validate*/verify*/check*/assert*/is*/has* callables with no reachable failure exit anywhere in their body | variable | `inspect`, `code` | `-s, --scope <path>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
228
|
+
| `test-quality` | Test-quality candidates: assertion-free it/test bodies, a skipped-test ledger with git-blame age, and mock-echo tests that assert the same literal they stubbed into a mock | variable | `inspect`, `code` | `-s, --scope <path>`<br>`-n, --limit <n>`<br>`--rot-days <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
229
|
+
| `similar-signatures` | Find functions with near-identical type signatures (same shape) | variable | `inspect`, `code` | `-s, --scope <path>`<br>`--min-loc <n>`<br>`--max-shape-frequency <n>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
85
230
|
|
|
86
231
|
### Graph
|
|
87
232
|
|
|
88
|
-
| Command | Description | Options |
|
|
89
|
-
|
|
90
|
-
| `hotspots` |
|
|
91
|
-
| `fan-in [symbol]` | Count files referencing an exact symbol; top JSON rows include exact symbol identity | `-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
92
|
-
| `fan-out [file]` | How many external symbols a file uses (or top fan-out across codebase) | `-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
93
|
-
| `coupling [file1] [file2]` |
|
|
94
|
-
| `cycles` |
|
|
95
|
-
| `architecture` | Evaluate project-owned architectural boundaries and dependency rules | `-s, --scope <path>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
96
|
-
| `bottlenecks` |
|
|
97
|
-
| `
|
|
98
|
-
| `
|
|
233
|
+
| Command | Description | Cost | Closes disclosed gaps with | Options |
|
|
234
|
+
|---|---|---|---|---|
|
|
235
|
+
| `hotspots` | Rank symbols by cross-file reference count; a reference metric, not runtime contention | variable | `inspect`, `code` | `-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
236
|
+
| `fan-in [symbol]` | Count files referencing an exact symbol; top JSON rows include exact symbol identity | small | `evidence`, `inspect`, `code` | `-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
237
|
+
| `fan-out [file]` | How many external symbols a file uses (or top fan-out across codebase) | variable | `inspect`, `code` | `-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
238
|
+
| `coupling [file1] [file2]` | Count shared-symbol coupling between two files, or rank file pairs by that metric | variable | `inspect`, `code` | `-n, --limit <n>`<br>`-s, --scope <path>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
239
|
+
| `cycles` | Find every cyclic file-dependency component and show one deterministic witness for each | bounded | `inspect`, `code` | `-s, --scope <path>`<br>`--imports-only`<br>`--max-depth <n>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
240
|
+
| `architecture` | Evaluate project-owned architectural boundaries and dependency rules | bounded | `inspect`, `code` | `-s, --scope <path>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
241
|
+
| `bottlenecks` | Rank coordination hubs by incoming evidence files × outgoing cross-file callable targets | variable | `inspect`, `code` | `-n, --limit <n>`<br>`-s, --scope <path>`<br>`--min-fan-in <n>`<br>`--min-fan-out <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
242
|
+
| `dependency-depth` | Find longest paths through the SCC-condensed file dependency graph | variable | `inspect`, `code` | `-n, --limit <n>`<br>`-s, --scope <path>`<br>`--min-depth <n>`<br>`--imports-only`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
243
|
+
| `entrypoints [text]` | Find callables where control may enter from outside the indexed call graph | bounded | `evidence`, `inspect`, `code` | `-s, --scope <path>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
244
|
+
| `entry-map <entry>` | Map the complete indexed call graph from one detected entry point, collapsed by file | bounded | `inspect`, `code` | `--expand <region-id>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
245
|
+
| `call-graph <symbol>` | Show static may-call edges with exact/candidate evidence and explicit blind spots | variable | `inspect`, `code` | `--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
99
246
|
|
|
100
247
|
### Impact
|
|
101
248
|
|
|
102
|
-
| Command | Description | Options |
|
|
103
|
-
|
|
104
|
-
| `affected <symbol>` |
|
|
105
|
-
| `change-surface <file>` | Pre-change briefing: consumers, published API, operational roots, and explained change risk | `--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
106
|
-
| `co-change [file]` | Files that change together in git history without a dependency edge — hidden coupling candidates | `--min-together <n>`<br>`-n, --limit <n>`<br>`--all`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
107
|
-
| `
|
|
108
|
-
| `
|
|
109
|
-
| `diff-impact` | Compute changed symbols and downstream consumers from current git diff | `--base <ref>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
249
|
+
| Command | Description | Cost | Closes disclosed gaps with | Options |
|
|
250
|
+
|---|---|---|---|---|
|
|
251
|
+
| `affected <symbol>` | Conservative reverse caller/reference closure of symbols that may be impacted by a change | variable | `inspect`, `code` | `--full`<br>`--max-depth <n>`<br>`-s, --scope <path>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
252
|
+
| `change-surface <file>` | Pre-change briefing: consumers, published API, operational roots, and explained change risk | variable | `inspect`, `code` | `--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
253
|
+
| `co-change [file]` | Files that change together in git history without a dependency edge — hidden coupling candidates | variable | `inspect`, `code` | `--min-together <n>`<br>`-n, --limit <n>`<br>`--all`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
254
|
+
| `incomplete-migration` | Partially-completed extraction candidates: new helpers in the diff wired into some sites while similar un-migrated sites remain | variable | `inspect`, `code` | `--base <ref>`<br>`--min-containment <n>`<br>`--max-helpers <n>`<br>`-n, --limit <n>`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
255
|
+
| `diff-impact` | Map changed symbols and downstream consumers from the current git diff | variable | `inspect`, `code` | `--base <ref>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
110
256
|
|
|
111
257
|
### Formal Models
|
|
112
258
|
|
|
113
|
-
| Command | Description | Options |
|
|
114
|
-
|
|
115
|
-
| `tla <operation> [spec]` | TLA+ model workflow: verify a model and mapping contract, scaffold a draft model from indexed code, generate a trace recorder, or check a recorded trace against the next-state relation | `--map <file>`<br>`--config <file>`<br>`--checker <mode>`<br>`--tla-tools <jar>`<br>`--apalache <binary>`<br>`--length <n>`<br>`--timeout-ms <n>`<br>`--trace <file>`<br>`--next <operator>`<br>`--coverage`<br>`--allow-unknown`<br>`--out <path>`<br>`--module-name <name>`<br>`--force`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
259
|
+
| Command | Description | Cost | Closes disclosed gaps with | Options |
|
|
260
|
+
|---|---|---|---|---|
|
|
261
|
+
| `tla <operation> [spec]` | TLA+ model workflow: verify a model and mapping contract, scaffold a draft model from indexed code, generate a trace recorder, or check a recorded trace against the next-state relation | variable | - | `--map <file>`<br>`--config <file>`<br>`--checker <mode>`<br>`--tla-tools <jar>`<br>`--apalache <binary>`<br>`--length <n>`<br>`--timeout-ms <n>`<br>`--trace <file>`<br>`--next <operator>`<br>`--coverage`<br>`--allow-unknown`<br>`--out <path>`<br>`--module-name <name>`<br>`--force`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
116
262
|
|
|
117
|
-
###
|
|
263
|
+
### Exploration
|
|
118
264
|
|
|
119
|
-
| Command | Description | Options |
|
|
120
|
-
|
|
121
|
-
| `
|
|
265
|
+
| Command | Description | Cost | Closes disclosed gaps with | Options |
|
|
266
|
+
|---|---|---|---|---|
|
|
267
|
+
| `context <target>` | Compiler-backed context for a symbol, file, or module | bounded | `inspect`, `code` | `--impact-depth <n>`<br>`--slice-depth <n>`<br>`-s, --scope <path>`<br>`-n, --limit <n>`<br>`--detail`<br>`--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
122
268
|
|
|
123
269
|
### Health
|
|
124
270
|
|
|
125
|
-
| Command | Description | Options |
|
|
126
|
-
|
|
127
|
-
| `self-audit` | Score cheap evidence paths against the best available semantic/source oracle on sampled symbols | `--samples <n>`<br>`-s, --scope <path>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
128
|
-
| `
|
|
129
|
-
| `
|
|
271
|
+
| Command | Description | Cost | Closes disclosed gaps with | Options |
|
|
272
|
+
|---|---|---|---|---|
|
|
273
|
+
| `self-audit` | Score cheap evidence paths against the best available semantic/source oracle on sampled symbols | variable | `inspect`, `code` | `--samples <n>`<br>`-s, --scope <path>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
274
|
+
| `complexity <symbol>` | Per-symbol complexity: branches, cyclomatic estimate, fan-in/out, callees | variable | `inspect`, `code` | `--full`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
275
|
+
| `health` | Composite repository health report with React, Vue, and general cleanup findings | variable | - | `-s, --scope <path>`<br>`--full`<br>`--baseline`<br>`--write-baseline`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
130
276
|
|
|
131
277
|
### Maintenance
|
|
132
278
|
|
|
133
|
-
| Command | Description | Options |
|
|
134
|
-
|
|
135
|
-
| `
|
|
136
|
-
| `
|
|
137
|
-
| `
|
|
138
|
-
| `
|
|
139
|
-
| `
|
|
140
|
-
| `
|
|
141
|
-
| `
|
|
142
|
-
| `
|
|
143
|
-
| `
|
|
144
|
-
| `
|
|
145
|
-
| `
|
|
146
|
-
| `
|
|
147
|
-
| `setup` | Bootstrap this project: enable automatic indexing, install agent skills, refresh the index, verify capabilities, and report health | `--guided`<br>`--yes`<br>`--git-hook`<br>`--no-hooks`<br>`--no-skills`<br>`--no-parsers`<br>`--install-missing`<br>`--no-health`<br>`--dossier-dir <path>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
148
|
-
| `setup-agent` | Seed agent guidance for this project: AGENTS.md/CLAUDE.md block pointing agents at the scip-query skills and diff gate, plus an optional git pre-commit backstop | `--git-hook` |
|
|
149
|
-
| `setup-ci` | Write a GitHub Actions workflow that runs scip-query reindex and diff-gate on pull requests | `--force`<br>`--dry-run` |
|
|
150
|
-
| `uninstall` | Remove selected scip-query-owned integrations; real removal requires exactly one of --global or --project | `--global`<br>`--project`<br>`--dry-run`<br>`--verbose`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
151
|
-
| `watch` | Watch in the foreground or manage the per-project background refresh service | `--daemon`<br>`--status`<br>`--stop`<br>`--debounce <ms>`<br>`--cooldown <ms>`<br>`--git-poll <ms>`<br>`--idle-timeout <ms>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
152
|
-
| `status` | Show index status for this project | `--capabilities`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
279
|
+
| Command | Description | Cost | Closes disclosed gaps with | Options |
|
|
280
|
+
|---|---|---|---|---|
|
|
281
|
+
| `install-skills` | Install skills (scip-query, scip-plan, scip-setup, scip-integrity-audit) into Claude Code, Codex, and shared agent roots | variable | - | - |
|
|
282
|
+
| `check-deps` | Check whether scip-query and the detected language indexers are runnable | bounded | `inspect`, `code` | - |
|
|
283
|
+
| `capabilities` | Report which mapping and analysis capabilities are available in this project | bounded | `inspect`, `code` | `--matrix`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
284
|
+
| `init` | Create a .scipquery.json configuration file for this project | variable | - | - |
|
|
285
|
+
| `config-validate` | Validate .scipquery.json, structured suppressions, architecture, and coupling groups | bounded | `inspect`, `code` | `--json`<br>`--result-only`<br>`--compact` |
|
|
286
|
+
| `suppress <id>` | Record an accepted finding under .scipquery/suppressions with a required reason | variable | - | `--reason <text>`<br>`--reason-code <code>`<br>`--evidence <kind:referent>`<br>`--check <check>`<br>`--file <path>`<br>`--expires-at <iso>`<br>`--replace <revision>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
287
|
+
| `doctor` | Diagnose configuration, index freshness, dependencies, and project capabilities | bounded | `inspect`, `code` | `--json`<br>`--result-only`<br>`--compact` |
|
|
288
|
+
| `setup` | Install skills, write agent guidance, refresh the index, and report readiness | variable | - | `--guided`<br>`--yes`<br>`--no-skills`<br>`--no-parsers`<br>`--install-missing`<br>`--health`<br>`--dossier-dir <path>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
289
|
+
| `setup-agent` | Write concise scip-query mapping and cleanup guidance to AGENTS.md and CLAUDE.md | variable | - | - |
|
|
290
|
+
| `uninstall` | Remove selected scip-query-owned skills or project guidance | variable | - | `--global`<br>`--project`<br>`--dry-run`<br>`--verbose`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
291
|
+
| `watch` | Watch in the foreground or manage the project refresh service | variable | - | `--daemon`<br>`--status`<br>`--stop`<br>`--prune`<br>`--debounce <ms>`<br>`--cooldown <ms>`<br>`--git-poll <ms>`<br>`--idle-timeout <ms>`<br>`--json`<br>`--result-only`<br>`--compact` |
|
|
292
|
+
| `status` | Show index status for this project | bounded | `inspect`, `code` | `--json`<br>`--result-only`<br>`--compact` |
|
|
153
293
|
|
|
154
294
|
<!-- END GENERATED COMMAND REFERENCE -->
|
|
155
|
-
|
|
156
|
-
## `analysisBudget` disclosure contract
|
|
157
|
-
|
|
158
|
-
On a large index (`stats.symbols >= 25,000` or `stats.documents >= 2,500`), commands built on the
|
|
159
|
-
shared `budgetedDbCommand`/`budgetedListCommand`/`budgetedTableCommand`/`budgetedReportCommand`/
|
|
160
|
-
`budgetedGroupedByFileCommand`/`budgetedSectionedReportCommand` helpers (`src/runtime/commands/
|
|
161
|
-
command-execution.ts`) automatically cap their candidate scan and disable semantic (ts-morph)
|
|
162
|
-
enrichment, and — unless `--full` is passed — disclose the cap two ways: a stderr notice in human
|
|
163
|
-
mode, and an `analysisBudget: { scanLimit, semanticEnrichment, reason }` key at the top level of
|
|
164
|
-
the `--json` envelope (`printJsonEnvelope`, same file). This is a general-purpose seam, not
|
|
165
|
-
diff-gate-specific: as of this writing it already covers `dead`, `unused-imports`, `isolated`,
|
|
166
|
-
`extract-candidates`, `locality-candidates`, `similar`, `similar-signatures`, `drift`,
|
|
167
|
-
`convergence`, `duplicate-bodies`, `twin-drift`, `cleanup-plan`, `cleanup-apply`,
|
|
168
|
-
`recent-duplicates`, `unused-params`, `complexity-hotspots`, `complexity`, `bottlenecks`,
|
|
169
|
-
`imports`, `refs`, `dataflow`, `slice`, `plan-context`, `change-surface`, `incomplete-migration`,
|
|
170
|
-
`co-change`, `diff-gate`, and the React/Vue battery commands.
|
|
171
|
-
|
|
172
|
-
Commands stay on the plain (unbudgeted) `dbCommand`/`listCommand`/`tableCommand`/`reportCommand`
|
|
173
|
-
family — and so never emit `analysisBudget` — when their cost model has no candidate-count or
|
|
174
|
-
semantic-enrichment knob for the budget to honestly describe: single-symbol/single-file lookups
|
|
175
|
-
(`code`, `outline`, `fan-in`, `fan-out`, `coupling`, `twin-ab`), or whole-graph structural queries
|
|
176
|
-
with their own independent bound (`cycles`, `deep-chains`). Adding the `analysisBudget` key to one of those
|
|
177
|
-
without also making the underlying query respect `scanLimit`/`semantic` would disclose a cap that
|
|
178
|
-
isn't real — forbidden by the same "no silent/false disclosure" rule this contract exists to
|
|
179
|
-
enforce (see `docs/plans/2026-07-02-followups.md` items 6 and 9).
|
|
180
|
-
|
|
181
|
-
Followup #6 closed the one confirmed gap in an otherwise-wired battery command: `co-change`
|
|
182
|
-
(`src/runtime/query-commands/impact.ts`) used the plain `dbCommand` and never disclosed a budget,
|
|
183
|
-
even though its per-pair classification loop in `queries.coChange`
|
|
184
|
-
(`src/queries/cleanup/co-change.ts`) does real filesystem/graph work whose cost scales with
|
|
185
|
-
candidate-pair count on a large repository. It now flows through `budgetedDbCommand` and
|
|
186
|
-
`coChange` accepts a `scanLimit` option that truncates the (already priority-sorted) candidate
|
|
187
|
-
pairs before classification, so the disclosed budget is truthful rather than cosmetic.
|
|
188
|
-
Composite planning also passes its already-resolved invocation HEAD through `coChange`'s
|
|
189
|
-
internal options, keeping history reads on one Git snapshot without another `rev-parse`
|
|
190
|
-
subprocess; standalone command behavior is unchanged.
|
|
191
|
-
The setup-scope follow-up rechecked this implementation citation; extracting
|
|
192
|
-
shared hook outcome recording changed imports in the same runtime module but
|
|
193
|
-
did not change the `co-change` budget boundary described here.
|