scip-query 0.20.0 → 0.21.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +81 -0
- package/README.md +255 -884
- package/dist/augment-vue-worker.js +1 -1
- package/dist/by-kind-XXGZGNZ6.js +2 -0
- package/dist/call-graph-VGY3R4L3.js +2 -0
- package/dist/call-graph-evidence-lZa2dwQA.d.ts +11 -0
- package/dist/change-analysis-types-CCtoCHbC.d.ts +9 -0
- package/dist/chunk-26CT72HM.js +2 -0
- package/dist/chunk-27OUNZW5.js +3 -0
- package/dist/chunk-2LJLEM5B.js +2 -0
- package/dist/chunk-3KXFB2FM.js +2 -0
- package/dist/chunk-3T5U2EQ2.js +2 -0
- package/dist/chunk-3TNRNKAT.js +2 -0
- package/dist/{chunk-PXY7F6Y4.js → chunk-3XQLJG7V.js} +5 -5
- package/dist/chunk-3XZELASU.js +2 -0
- package/dist/chunk-3YETOKNO.js +4 -0
- package/dist/chunk-47WX6UC4.js +2 -0
- package/dist/{chunk-7SQQWSY3.js → chunk-4HQYNZ3P.js} +2 -2
- package/dist/chunk-4IASLUOP.js +3 -0
- package/dist/{chunk-KMKTIO2G.js → chunk-4KIPF45P.js} +2 -2
- package/dist/chunk-4SZJF4GK.js +2 -0
- package/dist/chunk-4TOU7HHQ.js +2 -0
- package/dist/chunk-4ZCLDH6T.js +11 -0
- package/dist/{chunk-DQGFVPUV.js → chunk-527HV7JY.js} +3 -3
- package/dist/{chunk-ZTETIQ35.js → chunk-5BJPJUXF.js} +2 -2
- package/dist/chunk-5J3A6RBZ.js +16 -0
- package/dist/chunk-5KIJMEPC.js +2 -0
- package/dist/{chunk-JDOEX4E6.js → chunk-5QM7QT5B.js} +2 -2
- package/dist/chunk-5Z2H76VD.js +11 -0
- package/dist/chunk-63TFRBMB.js +2 -0
- package/dist/chunk-67FK5KGV.js +3 -0
- package/dist/chunk-6DO3VBLV.js +2 -0
- package/dist/chunk-6LS3IG2I.js +13 -0
- package/dist/chunk-6QN4FYQW.js +2 -0
- package/dist/chunk-6X4KO5A7.js +11 -0
- package/dist/chunk-743MEVFJ.js +8 -0
- package/dist/chunk-7G2WIVIX.js +2 -0
- package/dist/chunk-7KCZELVM.js +2 -0
- package/dist/chunk-7MUHSZGN.js +3 -0
- package/dist/chunk-7YZGSLW6.js +3 -0
- package/dist/chunk-7Z4GMCHM.js +117 -0
- package/dist/{chunk-32LVLCLN.js → chunk-AAOEROT3.js} +3 -3
- package/dist/chunk-AFRS7WJU.js +26 -0
- package/dist/chunk-ANCHW2R4.js +57 -0
- package/dist/{chunk-SXP2MBJH.js → chunk-AQF35NGT.js} +2 -2
- package/dist/chunk-ARGPDW2Y.js +6 -0
- package/dist/chunk-B3AREUQK.js +16 -0
- package/dist/chunk-BCTCADNB.js +2 -0
- package/dist/chunk-BM4OTGSY.js +3 -0
- package/dist/chunk-BMKTDJI6.js +16 -0
- package/dist/chunk-BOJ5SVE2.js +2 -0
- package/dist/{chunk-WXZLAAWK.js → chunk-BVR44XXB.js} +2 -2
- package/dist/{chunk-RUJURYSV.js → chunk-BYXWXLKM.js} +2 -2
- package/dist/chunk-BZCRHP46.js +3 -0
- package/dist/chunk-BZYSGZRK.js +2 -0
- package/dist/chunk-C52Q3JEQ.js +2 -0
- package/dist/chunk-C7WSQA6A.js +21 -0
- package/dist/{chunk-BDCC2NPY.js → chunk-CNT4ND5O.js} +2 -2
- package/dist/chunk-CQVDALWQ.js +2 -0
- package/dist/chunk-CTO3TRX7.js +2 -0
- package/dist/chunk-CXT3GZSQ.js +2 -0
- package/dist/{chunk-JVYA47YU.js → chunk-DGM2RJ3I.js} +2 -2
- package/dist/{chunk-7PIO7NKH.js → chunk-DK6MB565.js} +2 -2
- package/dist/chunk-DNPETNXT.js +2 -0
- package/dist/chunk-DRENNWRG.js +2 -0
- package/dist/chunk-DUDUIT5P.js +2 -0
- package/dist/chunk-DXEJ4FLZ.js +21 -0
- package/dist/chunk-DXYMTQZ4.js +2 -0
- package/dist/chunk-DZA7MQMU.js +6 -0
- package/dist/{chunk-ZHXX42OH.js → chunk-DZNWXJN2.js} +4 -4
- package/dist/{chunk-CJST5ETY.js → chunk-E6N6YTVM.js} +2 -2
- package/dist/chunk-E7CJ6O72.js +2 -0
- package/dist/chunk-EJHNTAEE.js +2 -0
- package/dist/chunk-EPLE5O5O.js +2 -0
- package/dist/chunk-F4FNK44D.js +2 -0
- package/dist/chunk-FCGMQETU.js +2 -0
- package/dist/chunk-FIO44MVK.js +3 -0
- package/dist/chunk-FLSVYEPL.js +2 -0
- package/dist/chunk-FOP7HD6H.js +3 -0
- package/dist/chunk-FSPENGSU.js +4 -0
- package/dist/chunk-FUUDUAKM.js +2 -0
- package/dist/chunk-FYCH2EYQ.js +2 -0
- package/dist/{chunk-5E4WNAVD.js → chunk-G47MFF47.js} +2 -2
- package/dist/chunk-G6VV7ROY.js +2 -0
- package/dist/chunk-GBZCVYWA.js +2 -0
- package/dist/chunk-GSHTVE56.js +3 -0
- package/dist/chunk-GTZFKDP3.js +2 -0
- package/dist/{chunk-2HPVVXM5.js → chunk-H2RBDP5S.js} +2 -2
- package/dist/chunk-H5EXS3HM.js +2 -0
- package/dist/chunk-HR5JYLVV.js +4 -0
- package/dist/chunk-HW7FASEL.js +2 -0
- package/dist/chunk-HYU4W353.js +10 -0
- package/dist/{chunk-FKSELJQF.js → chunk-I2LY3KN7.js} +2 -2
- package/dist/chunk-IGBQVEHE.js +2 -0
- package/dist/{chunk-3G66UZBH.js → chunk-IH3K5J6K.js} +2 -2
- package/dist/chunk-IHGK3SZ7.js +29 -0
- package/dist/chunk-IM23CSG5.js +2 -0
- package/dist/chunk-IQMGNIGY.js +2 -0
- package/dist/chunk-ITF3CWS5.js +2 -0
- package/dist/chunk-IZKJQQCQ.js +3 -0
- package/dist/chunk-J4HUBIVF.js +5 -0
- package/dist/{chunk-AZJQQKDD.js → chunk-JGMD6JGB.js} +2 -2
- package/dist/chunk-JLZWYDCZ.js +4 -0
- package/dist/chunk-JO6FK3Q5.js +2 -0
- package/dist/chunk-JSHDCVUM.js +81 -0
- package/dist/chunk-K2DZCH2K.js +2 -0
- package/dist/chunk-K63CAPS2.js +23 -0
- package/dist/chunk-KBIC6JHJ.js +2 -0
- package/dist/chunk-KFFQURUZ.js +2 -0
- package/dist/chunk-KFOYCQAJ.js +9 -0
- package/dist/chunk-KGKCJFWZ.js +6 -0
- package/dist/chunk-KK7GPALL.js +28 -0
- package/dist/chunk-L7WRUNKJ.js +2 -0
- package/dist/{chunk-W4ETQAXM.js → chunk-LFWB7TOJ.js} +2 -2
- package/dist/chunk-LGVTIZPV.js +61 -0
- package/dist/chunk-LIWIV26I.js +29 -0
- package/dist/chunk-LJMWILX6.js +3 -0
- package/dist/{chunk-BPAPWKP6.js → chunk-LXMW6ZAX.js} +8 -8
- package/dist/chunk-MFBVUQJZ.js +2 -0
- package/dist/{chunk-O64IZ6UX.js → chunk-MLTKGHD2.js} +2 -2
- package/dist/chunk-MLTSTKXD.js +5 -0
- package/dist/chunk-MR4ZKWO6.js +57 -0
- package/dist/{chunk-EN3O7VJA.js → chunk-MRXBLYRE.js} +2 -2
- package/dist/chunk-MXNGIEPU.js +3 -0
- package/dist/chunk-N4EFQIRX.js +20 -0
- package/dist/chunk-ND3BWIVN.js +7 -0
- package/dist/chunk-NODZYYGC.js +2 -0
- package/dist/chunk-NP4JFCLE.js +133 -0
- package/dist/chunk-NQXWWE6S.js +8 -0
- package/dist/chunk-NSDPPUDY.js +7 -0
- package/dist/chunk-NT4NVEHU.js +18 -0
- package/dist/chunk-O2VY47Y5.js +325 -0
- package/dist/chunk-O3EX5STE.js +5 -0
- package/dist/chunk-O4PZFAXA.js +3 -0
- package/dist/chunk-OA2BO4DR.js +2 -0
- package/dist/chunk-OFZVFIDF.js +3 -0
- package/dist/{chunk-PQCI4SQX.js → chunk-OG5UK2K7.js} +2 -2
- package/dist/chunk-OMVNRPST.js +2 -0
- package/dist/{chunk-7BAVHKMJ.js → chunk-OU6SDWAM.js} +9 -9
- package/dist/{chunk-LY4WC4AD.js → chunk-OY7PCALC.js} +2 -2
- package/dist/{chunk-A73XVBCR.js → chunk-P3UFF22M.js} +2 -2
- package/dist/chunk-PAZSBPJR.js +3 -0
- package/dist/chunk-PJBYDCBQ.js +38 -0
- package/dist/chunk-PRLU3I7G.js +79 -0
- package/dist/chunk-PU6XDQ2X.js +16 -0
- package/dist/{chunk-3CLX5EOX.js → chunk-PWEQ6CZZ.js} +2 -2
- package/dist/{chunk-XSRF6Q77.js → chunk-PX6QNUYF.js} +2 -2
- package/dist/chunk-Q4MRRB3C.js +3 -0
- package/dist/chunk-QGVUPYBC.js +35 -0
- package/dist/chunk-QH5Q6M5C.js +2 -0
- package/dist/chunk-QLWZUFDT.js +2 -0
- package/dist/chunk-QN2AI3D2.js +3 -0
- package/dist/{chunk-JAYYFEQY.js → chunk-QZCACNV5.js} +2 -2
- package/dist/chunk-RNKRYK6B.js +4 -0
- package/dist/chunk-RSUH7G5T.js +29 -0
- package/dist/chunk-RZWBTKXO.js +5 -0
- package/dist/chunk-SBFDPHKH.js +4 -0
- package/dist/{chunk-HX4GQPZP.js → chunk-SGSPCEFC.js} +3 -3
- package/dist/chunk-SIGVQT43.js +2 -0
- package/dist/chunk-SRIZDEWX.js +4 -0
- package/dist/chunk-SV2LEFVM.js +2 -0
- package/dist/chunk-T2PBOVDI.js +3 -0
- package/dist/chunk-TP2X2C2Y.js +3 -0
- package/dist/chunk-U2MNECDU.js +2 -0
- package/dist/chunk-U7DOYZDH.js +2 -0
- package/dist/chunk-UAQQR55F.js +2 -0
- package/dist/chunk-UBETC3Q2.js +2 -0
- package/dist/chunk-UEQORB2A.js +2 -0
- package/dist/chunk-UM56ZET4.js +38 -0
- package/dist/chunk-UXNXOMXJ.js +2 -0
- package/dist/{chunk-6SHPK5ZE.js → chunk-V6XENWOF.js} +2 -2
- package/dist/chunk-VJAD5WX5.js +2 -0
- package/dist/chunk-VRJG7N3I.js +453 -0
- package/dist/chunk-W7HN6V4E.js +7 -0
- package/dist/chunk-WCIKJ2E3.js +3 -0
- package/dist/chunk-WEXQYJY3.js +5 -0
- package/dist/chunk-WOPZX5GM.js +2 -0
- package/dist/chunk-WRQXLNYE.js +9 -0
- package/dist/{chunk-XKWKXZKW.js → chunk-WV6R37XV.js} +2 -2
- package/dist/{chunk-N5W4YZMK.js → chunk-WZ7V4BQV.js} +2 -2
- package/dist/chunk-WZRNEVYC.js +2 -0
- package/dist/chunk-X5MWO4DM.js +7 -0
- package/dist/chunk-XDAUYDFT.js +2 -0
- package/dist/{chunk-L7AW2QB5.js → chunk-XDOEHEET.js} +2 -2
- package/dist/chunk-XDQX6LDT.js +4 -0
- package/dist/chunk-XFRHBAIT.js +2 -0
- package/dist/chunk-XIPGCT3D.js +5 -0
- package/dist/chunk-XKM5D2XS.js +16 -0
- package/dist/chunk-XNF5T4T2.js +4 -0
- package/dist/chunk-Y2S4YNLH.js +3 -0
- package/dist/chunk-YA72ZUKO.js +2 -0
- package/dist/chunk-YBWE6J32.js +43 -0
- package/dist/chunk-YCXQQ3YB.js +2 -0
- package/dist/chunk-YDTK77JP.js +43 -0
- package/dist/chunk-YF25RQER.js +4 -0
- package/dist/chunk-YKHL4J3G.js +2 -0
- package/dist/chunk-YLNCTPOI.js +4 -0
- package/dist/chunk-YR7VRWNX.js +2 -0
- package/dist/chunk-YT4IQBET.js +3 -0
- package/dist/chunk-YUKYB54I.js +1 -0
- package/dist/chunk-Z2KGMIL4.js +2 -0
- package/dist/chunk-Z2QB75BS.js +3 -0
- package/dist/chunk-Z67JOKRE.js +554 -0
- package/dist/chunk-ZGDHC5AT.js +2 -0
- package/dist/chunk-ZMS4YCY7.js +2 -0
- package/dist/chunk-ZNW5A5VX.js +3 -0
- package/dist/{chunk-TFRAYKN6.js → chunk-ZP2WUVZ5.js} +2 -2
- package/dist/chunk-ZQUNCTEZ.js +2 -0
- package/dist/cli-main.js +8 -0
- package/dist/cli.js +1 -3
- package/dist/code-AXLJBZ6T.js +2 -0
- package/dist/code-B17qEMbt.d.ts +121 -0
- package/dist/code-result-json-CTZHAQXJ.js +2 -0
- package/dist/command-descriptors-6INSCKLW.js +342 -0
- package/dist/{config-types-jVM3D7MA.d.ts → config-types-B9B60MiR.d.ts} +199 -23
- package/dist/dataflow-AFXY423Q.js +2 -0
- package/dist/{db-B5PM5yNk.d.ts → db-BwIVAYNB.d.ts} +1 -1
- package/dist/dependence-slice-2G4X6VSJ.js +2 -0
- package/dist/deps-LMCAV5DO.js +2 -0
- package/dist/direct-navigation-2ONV22Y2.js +3 -0
- package/dist/entry-map-ZOC3VXO5.js +2 -0
- package/dist/exploration-topology-BG4v30HZ.d.ts +256 -0
- package/dist/file-dep-graph-Bqg3t3Px.d.ts +4 -0
- package/dist/file-kind-BKCVMNUf.d.ts +10 -0
- package/dist/files-WJQJLHMH.js +2 -0
- package/dist/graph-evidence-Bjyky2V4.d.ts +126 -0
- package/dist/graph-exploration-contract-CqDsnPQL.d.ts +7 -0
- package/dist/{health-Do5TKSJI.d.ts → health-CPp2Jf1Z.d.ts} +33 -34
- package/dist/hierarchy-ASNIHAX4.js +2 -0
- package/dist/imports-JICEKDKK.js +2 -0
- package/dist/index.d.ts +4 -31
- package/dist/index.js +1 -1
- package/dist/members-C5H2K3MS.js +2 -0
- package/dist/methods-KZOZHSD4.js +2 -0
- package/dist/next-anchor-candidates-BwMczMvX.d.ts +90 -0
- package/dist/output-continuation-command-NX3RH3TP.js +3 -0
- package/dist/output-pagination-3OFL2MJV.js +19 -0
- package/dist/postinstall.js +1 -1
- package/dist/project-reindex-A2SXUH2H.js +3 -0
- package/dist/queries/affected.d.ts +22 -4
- package/dist/queries/affected.js +1 -1
- package/dist/queries/anchors.d.ts +123 -0
- package/dist/queries/anchors.js +2 -0
- package/dist/queries/architecture.d.ts +3 -2
- package/dist/queries/architecture.js +1 -1
- package/dist/queries/bottlenecks.d.ts +26 -7
- package/dist/queries/bottlenecks.js +1 -1
- package/dist/queries/by-kind.d.ts +2 -2
- package/dist/queries/by-kind.js +1 -1
- package/dist/queries/call-graph.d.ts +17 -3
- package/dist/queries/call-graph.js +1 -1
- package/dist/queries/change-surface.d.ts +2 -2
- package/dist/queries/change-surface.js +1 -1
- package/dist/queries/cleanup-plan.d.ts +2 -2
- package/dist/queries/cleanup-plan.js +1 -1
- package/dist/queries/co-change.d.ts +2 -2
- package/dist/queries/co-change.js +1 -1
- package/dist/queries/code.d.ts +5 -26
- package/dist/queries/code.js +1 -1
- package/dist/queries/complexity-hotspots.d.ts +2 -2
- package/dist/queries/complexity-hotspots.js +1 -1
- package/dist/queries/complexity.d.ts +2 -2
- package/dist/queries/complexity.js +1 -1
- package/dist/queries/context.d.ts +145 -0
- package/dist/queries/context.js +2 -0
- package/dist/queries/convergence.d.ts +2 -2
- package/dist/queries/convergence.js +1 -1
- package/dist/queries/coupling.d.ts +8 -3
- package/dist/queries/coupling.js +1 -1
- package/dist/queries/cycles.d.ts +34 -7
- package/dist/queries/cycles.js +1 -1
- package/dist/queries/dataflow.d.ts +40 -14
- package/dist/queries/dataflow.js +1 -1
- package/dist/queries/dead.d.ts +2 -2
- package/dist/queries/dead.js +1 -1
- package/dist/queries/decorative-checkers.d.ts +3 -3
- package/dist/queries/decorative-checkers.js +1 -1
- package/dist/queries/deep-chains.d.ts +4 -38
- package/dist/queries/deep-chains.js +1 -1
- package/dist/queries/dependence-slice.d.ts +47 -0
- package/dist/queries/dependence-slice.js +2 -0
- package/dist/queries/dependency-depth.d.ts +49 -0
- package/dist/queries/dependency-depth.js +2 -0
- package/dist/queries/deps.d.ts +4 -2
- package/dist/queries/deps.js +1 -1
- package/dist/queries/diff-impact.d.ts +3 -3
- package/dist/queries/diff-impact.js +1 -1
- package/dist/queries/doc-drift.d.ts +4 -4
- package/dist/queries/doc-drift.js +1 -1
- package/dist/queries/drift.d.ts +2 -2
- package/dist/queries/drift.js +1 -1
- package/dist/queries/duplicate-bodies.d.ts +2 -2
- package/dist/queries/duplicate-bodies.js +1 -1
- package/dist/queries/entry-map.d.ts +121 -0
- package/dist/queries/entry-map.js +2 -0
- package/dist/queries/evidence.d.ts +70 -0
- package/dist/queries/evidence.js +2 -0
- package/dist/queries/extract-candidates.d.ts +2 -2
- package/dist/queries/extract-candidates.js +1 -1
- package/dist/queries/fan.d.ts +18 -5
- package/dist/queries/fan.js +1 -1
- package/dist/queries/files.d.ts +2 -2
- package/dist/queries/files.js +1 -1
- package/dist/queries/health.d.ts +4 -3
- package/dist/queries/health.js +1 -1
- package/dist/queries/hierarchy.d.ts +5 -3
- package/dist/queries/hierarchy.js +1 -1
- package/dist/queries/hotspots.d.ts +11 -5
- package/dist/queries/hotspots.js +1 -1
- package/dist/queries/imports.d.ts +2 -2
- package/dist/queries/imports.js +1 -1
- package/dist/queries/incomplete-migration.d.ts +4 -4
- package/dist/queries/incomplete-migration.js +1 -1
- package/dist/queries/index.d.ts +56 -136
- package/dist/queries/index.js +1 -1
- package/dist/queries/isolated.d.ts +2 -2
- package/dist/queries/isolated.js +1 -1
- package/dist/queries/locality-candidates.d.ts +2 -2
- package/dist/queries/locality-candidates.js +1 -1
- package/dist/queries/members.d.ts +2 -2
- package/dist/queries/members.js +1 -1
- package/dist/queries/methods.d.ts +2 -2
- package/dist/queries/methods.js +1 -1
- package/dist/queries/not-implemented.d.ts +3 -3
- package/dist/queries/not-implemented.js +1 -1
- package/dist/queries/outline.d.ts +2 -2
- package/dist/queries/outline.js +1 -1
- package/dist/queries/passthrough-candidates.d.ts +5 -9
- package/dist/queries/passthrough-candidates.js +1 -1
- package/dist/queries/plan-context.d.ts +27 -64
- package/dist/queries/plan-context.js +1 -1
- package/dist/queries/react-component-duplicates.d.ts +2 -2
- package/dist/queries/react-component-duplicates.js +1 -1
- package/dist/queries/react-hook-candidates.d.ts +2 -2
- package/dist/queries/react-hook-candidates.js +1 -1
- package/dist/queries/react-large-component-pressure.d.ts +2 -2
- package/dist/queries/react-large-component-pressure.js +1 -1
- package/dist/queries/recent-duplicates.d.ts +2 -2
- package/dist/queries/recent-duplicates.js +1 -1
- package/dist/queries/redundant-reexports.d.ts +2 -2
- package/dist/queries/redundant-reexports.js +1 -1
- package/dist/queries/reference-neighborhood.d.ts +4 -0
- package/dist/queries/reference-neighborhood.js +2 -0
- package/dist/queries/reference-reachability.d.ts +48 -0
- package/dist/queries/reference-reachability.js +2 -0
- package/dist/queries/refs.d.ts +2 -2
- package/dist/queries/refs.js +1 -1
- package/dist/queries/self-audit.d.ts +2 -2
- package/dist/queries/self-audit.js +1 -1
- package/dist/queries/similar-chains.d.ts +2 -2
- package/dist/queries/similar-chains.js +1 -1
- package/dist/queries/similar-files.d.ts +2 -2
- package/dist/queries/similar-files.js +1 -1
- package/dist/queries/similar-signatures.d.ts +2 -2
- package/dist/queries/similar-signatures.js +1 -1
- package/dist/queries/similar.d.ts +2 -2
- package/dist/queries/similar.js +1 -1
- package/dist/queries/slice.d.ts +3 -36
- package/dist/queries/slice.js +1 -1
- package/dist/queries/source-inspection.d.ts +209 -0
- package/dist/queries/source-inspection.js +2 -0
- package/dist/queries/source-search.d.ts +13 -0
- package/dist/queries/source-search.js +2 -0
- package/dist/queries/stale-abstractions.d.ts +2 -2
- package/dist/queries/stale-abstractions.js +1 -1
- package/dist/queries/stats.d.ts +2 -2
- package/dist/queries/surface.d.ts +13 -4
- package/dist/queries/surface.js +1 -1
- package/dist/queries/symbols.d.ts +2 -2
- package/dist/queries/symbols.js +1 -1
- package/dist/queries/system-map.d.ts +449 -0
- package/dist/queries/system-map.js +2 -0
- package/dist/queries/system.d.ts +5 -3
- package/dist/queries/system.js +1 -1
- package/dist/queries/test-quality.d.ts +2 -2
- package/dist/queries/test-quality.js +1 -1
- package/dist/queries/trace.d.ts +47 -3
- package/dist/queries/trace.js +1 -1
- package/dist/queries/twin-ab.d.ts +3 -3
- package/dist/queries/twin-ab.js +1 -1
- package/dist/queries/twin-drift.d.ts +3 -3
- package/dist/queries/twin-drift.js +1 -1
- package/dist/queries/unused-imports.d.ts +2 -2
- package/dist/queries/unused-imports.js +1 -1
- package/dist/queries/unused-params.d.ts +2 -2
- package/dist/queries/unused-params.js +1 -1
- package/dist/queries/value-flow.d.ts +43 -0
- package/dist/queries/value-flow.js +2 -0
- package/dist/queries/vue-component-duplicates.d.ts +2 -2
- package/dist/queries/vue-component-duplicates.js +1 -1
- package/dist/queries/vue-composable-candidates.d.ts +2 -2
- package/dist/queries/vue-composable-candidates.js +1 -1
- package/dist/queries/vue-large-view-pressure.d.ts +2 -2
- package/dist/queries/vue-large-view-pressure.js +1 -1
- package/dist/queries/wrapper-candidates.d.ts +2 -2
- package/dist/queries/wrapper-candidates.js +1 -1
- package/dist/query-service-fastpath.js +6 -0
- package/dist/query-service-server.js +5 -0
- package/dist/refs-ZOORVRQC.js +2 -0
- package/dist/refs-pagination-SRCUOYRD.js +2 -0
- package/dist/reindex-worker.js +85 -86
- package/dist/reindex.d.ts +64 -42
- package/dist/reindex.js +93 -77
- package/dist/repository-text-C0Q8VYdN.d.ts +19 -0
- package/dist/runtime.d.ts +287 -8
- package/dist/runtime.js +4 -3
- package/dist/rust-semantic-session-server.js +1 -1
- package/dist/rust-semantic-session-worker.js +1 -1
- package/dist/rust-semantic-worker.js +1 -1
- package/dist/{scip-cli-BnEwZRLJ.d.ts → scip-cli-H-n59izO.d.ts} +33 -2
- package/dist/slice-NOTBWA7S.js +2 -0
- package/dist/source-search-types-Dwz8KeuW.d.ts +79 -0
- package/dist/source-snippet-_wrcgmZc.d.ts +15 -0
- package/dist/stats-OOJ74B32.js +2 -0
- package/dist/surface-BTBCLKNA.js +2 -0
- package/dist/symbol-resolution-SVSMX4RN.js +2 -0
- package/dist/system-2EIUFP6B.js +2 -0
- package/dist/trace-BB2GHQPG.js +2 -0
- package/dist/typescript-mailbox-worker.js +1 -1
- package/dist/value-flow-OA7AHSUG.js +2 -0
- package/dist/watch-server.js +3 -2
- package/docs/AGENT_GUIDE.md +133 -476
- package/docs/AI_FAILURE_MODES.md +30 -301
- package/docs/API.md +1 -1
- package/docs/API_EVOLUTION.md +6 -0
- package/docs/CLI_JSON_OUTPUT.md +207 -29
- package/docs/COMMAND_REFERENCE.md +255 -154
- package/docs/CONFIGURATION_WRITE_SAFETY.md +14 -13
- package/docs/DETECTOR_EVIDENCE_CONTRACTS.md +84 -0
- package/docs/DETECTOR_GUIDE.md +46 -138
- package/docs/DURABILITY.md +7 -1
- package/docs/INDEX_GENERATIONS.md +6 -0
- package/docs/LOCK_PROTOCOL.md +8 -0
- package/docs/REINDEX_METADATA_COMPATIBILITY.md +13 -3
- package/docs/SECURITY_MODEL.md +39 -42
- package/docs/accuracy-audit-checklist.md +4 -0
- package/docs/accuracy-hardening-goal.md +9 -2
- package/docs/analyzer-inventory.md +59 -264
- package/docs/analyzer-validation-protocol.md +62 -170
- package/docs/architecture-coherence-vision.md +18 -12
- package/docs/locality-analyzer-design.md +1 -1
- package/docs/schemas/cli-json-envelope.schema.json +212 -27
- package/docs/schemas/cli-json-export-receipt.schema.json +25 -0
- package/docs/schemas/cli-output-page.schema.json +1 -1
- package/docs/schemas/observation-receipt.schema.json +164 -0
- package/docs/schemas/project-config.schema.json +37 -45
- package/docs/schemas/suppression-record.schema.json +1 -34
- package/package.json +69 -11
- package/skills/concrete-plan/SKILL.md +8 -0
- package/skills/concrete-plan/agents/openai.yaml +4 -0
- package/skills/scip-explore/SKILL.md +49 -61
- package/skills/scip-explore/agents/openai.yaml +3 -3
- package/skills/scip-explore/references/delegated-exploration.md +51 -0
- package/skills/scip-explore/references/external-evidence.md +72 -0
- package/skills/scip-explore/references/information-model.md +51 -0
- package/skills/scip-explore/scripts/capture-evidence.mjs +666 -0
- package/skills/scip-integrity-audit/SKILL.md +185 -0
- package/skills/scip-integrity-audit/agents/openai.yaml +4 -0
- package/skills/scip-plan/SKILL.md +67 -49
- package/skills/scip-plan/agents/openai.yaml +3 -3
- package/skills/scip-query/SKILL.md +98 -77
- package/skills/scip-query/agents/openai.yaml +3 -3
- package/skills/scip-setup/SKILL.md +10 -102
- package/skills/scip-setup/agents/openai.yaml +3 -3
- package/dist/chunk-26QA6FAI.js +0 -8
- package/dist/chunk-2KAZEZ6M.js +0 -2
- package/dist/chunk-3ORVDL3H.js +0 -2
- package/dist/chunk-46XGSFNI.js +0 -2
- package/dist/chunk-4MAK2HOY.js +0 -6
- package/dist/chunk-4TURLRL5.js +0 -16
- package/dist/chunk-4UQVNCQE.js +0 -2
- package/dist/chunk-55Q3WLZX.js +0 -2
- package/dist/chunk-5I5G2QOX.js +0 -3
- package/dist/chunk-6LDJQXAH.js +0 -2
- package/dist/chunk-6O5TICIZ.js +0 -3
- package/dist/chunk-7O5IKBTZ.js +0 -16
- package/dist/chunk-7S5E7KWT.js +0 -2
- package/dist/chunk-7WPLAODU.js +0 -5
- package/dist/chunk-AFHORGLH.js +0 -42
- package/dist/chunk-AIE7TFJW.js +0 -9
- package/dist/chunk-AQOFWNQJ.js +0 -1
- package/dist/chunk-B2PX5I6M.js +0 -2
- package/dist/chunk-B75HZHUP.js +0 -2
- package/dist/chunk-B7PBSLZN.js +0 -2
- package/dist/chunk-BBW6JFHN.js +0 -2
- package/dist/chunk-BNXCIFVY.js +0 -2
- package/dist/chunk-BS2NMXQZ.js +0 -4
- package/dist/chunk-C3KV2II6.js +0 -2
- package/dist/chunk-C43RDDP4.js +0 -20
- package/dist/chunk-DAFAHMNB.js +0 -42
- package/dist/chunk-DQLPXMH6.js +0 -8
- package/dist/chunk-EKZTZXHZ.js +0 -117
- package/dist/chunk-EW2NTSFA.js +0 -18
- package/dist/chunk-F3Z4OUDS.js +0 -8
- package/dist/chunk-FJH2NW7J.js +0 -66
- package/dist/chunk-FTFP6O3L.js +0 -11
- package/dist/chunk-FYLK2DEJ.js +0 -2
- package/dist/chunk-GH74ASD6.js +0 -11
- package/dist/chunk-GMXWZP2B.js +0 -2
- package/dist/chunk-GOUBFH5O.js +0 -3
- package/dist/chunk-HLF2TX6R.js +0 -2
- package/dist/chunk-HX7M4BDI.js +0 -30
- package/dist/chunk-HZ72SESS.js +0 -128
- package/dist/chunk-IB2N4FIY.js +0 -10
- package/dist/chunk-IZYYAFN5.js +0 -2
- package/dist/chunk-JFGGXWQF.js +0 -947
- package/dist/chunk-JN4NMBEX.js +0 -8
- package/dist/chunk-JW56N3KI.js +0 -4
- package/dist/chunk-JZ2OXNWB.js +0 -2
- package/dist/chunk-KFZNKUNT.js +0 -2
- package/dist/chunk-L5GJNV2T.js +0 -8
- package/dist/chunk-L7JDSCDF.js +0 -4
- package/dist/chunk-LU47HG23.js +0 -14
- package/dist/chunk-LVY7NPF7.js +0 -2
- package/dist/chunk-MKCDWWGV.js +0 -4
- package/dist/chunk-MNE7YG56.js +0 -2
- package/dist/chunk-MRXBEXSY.js +0 -26
- package/dist/chunk-MV7OWDUX.js +0 -2
- package/dist/chunk-NGEXCJJW.js +0 -11
- package/dist/chunk-NIW6JDC5.js +0 -29
- package/dist/chunk-PBUQFCNB.js +0 -16
- package/dist/chunk-POAVPHH7.js +0 -2
- package/dist/chunk-QZ4JVECJ.js +0 -2
- package/dist/chunk-RDO52JGY.js +0 -2
- package/dist/chunk-RJT3TUUZ.js +0 -2
- package/dist/chunk-RVLDN63O.js +0 -4
- package/dist/chunk-RXOXSKY3.js +0 -2
- package/dist/chunk-S7OYBOCK.js +0 -2
- package/dist/chunk-SMNXQT5Z.js +0 -3
- package/dist/chunk-SRAFT254.js +0 -2
- package/dist/chunk-T7YQSHPQ.js +0 -3
- package/dist/chunk-UJCOIXDY.js +0 -2
- package/dist/chunk-UJPRPGCO.js +0 -13
- package/dist/chunk-WCCFZ7V7.js +0 -113
- package/dist/chunk-WUPW3UN3.js +0 -3
- package/dist/chunk-X54AGLVX.js +0 -2
- package/dist/chunk-Y2MVPNKY.js +0 -5
- package/dist/chunk-YKUU5AIC.js +0 -3
- package/dist/chunk-YLCJLTPL.js +0 -2
- package/dist/chunk-YTQVETEO.js +0 -2
- package/dist/chunk-Z4N3MZYA.js +0 -38
- package/dist/chunk-ZJOOT3BG.js +0 -2
- package/dist/chunk-ZK26BAQL.js +0 -2
- package/dist/command-descriptors-DSS46KXI.js +0 -642
- package/dist/diff-gate-types-B0QYpDv1.d.ts +0 -11
- package/dist/direct-navigation-6YHV6IB5.js +0 -3
- package/dist/queries/diff-gate.d.ts +0 -253
- package/dist/queries/diff-gate.js +0 -2
- package/docs/COMMITTED_RECORD_COMPATIBILITY.md +0 -154
- package/docs/analyzer-validation-ledger.md +0 -516
- package/docs/schemas/outcome-event-record.schema.json +0 -95
- package/skills/_shared/SKILL.md +0 -101
- package/skills/_shared/agents/openai.yaml +0 -4
- package/skills/_shared/references/agent-contract-catalog.md +0 -105
- package/skills/_shared/references/command-catalog.md +0 -118
- package/skills/_shared/references/detector-precision-and-diffgate.md +0 -59
- package/skills/_shared/references/evidence-and-dead-code.md +0 -25
- package/skills/scip-audit/SKILL.md +0 -77
- package/skills/scip-audit/agents/openai.yaml +0 -4
- package/skills/scip-audit/references/claims.md +0 -98
- package/skills/scip-audit/references/cleanup.md +0 -100
- package/skills/scip-audit/references/directory.md +0 -222
- package/skills/scip-audit/references/frontend.md +0 -130
- package/skills/scip-audit/references/integrity.md +0 -154
- package/skills/scip-audit/references/maintainability.md +0 -162
- package/skills/scip-audit/references/twin-drift.md +0 -104
- package/skills/scip-diagnose/SKILL.md +0 -52
- package/skills/scip-diagnose/agents/openai.yaml +0 -4
- package/skills/scip-diagnose/references/debug.md +0 -117
- package/skills/scip-diagnose/references/probe-reachability.md +0 -77
- package/skills/scip-diagnose/references/root-cause.md +0 -145
- package/skills/scip-diagnose/references/triage.md +0 -119
- package/skills/scip-explore/references/diagrams.md +0 -40
- package/skills/scip-explore/references/language-playbook.md +0 -49
- package/skills/scip-improve/SKILL.md +0 -56
- package/skills/scip-improve/agents/openai.yaml +0 -4
- package/skills/scip-improve/references/cleanup-batches.md +0 -53
- package/skills/scip-improve/references/directory-moves.md +0 -53
- package/skills/scip-improve/references/doc-reconcile.md +0 -30
- package/skills/scip-improve/references/frontend-extraction.md +0 -39
- package/skills/scip-improve/references/maintainability-mechanism.md +0 -43
- package/skills/scip-improve/references/twin-drift.md +0 -35
- package/skills/scip-plan/references/api-impact.md +0 -19
- package/skills/scip-plan/references/conductor.md +0 -41
- package/skills/scip-plan/references/high-assurance.md +0 -43
- package/skills/scip-plan/references/hyper-optimization.md +0 -50
- package/skills/scip-plan/references/tla-model.md +0 -88
- package/skills/scip-setup/references/bootstrap-workflow.md +0 -119
- package/skills/scip-setup/references/language-verification.md +0 -61
- package/skills/scip-setup/references/lifecycle-commands.md +0 -119
- package/skills/scip-setup/references/per-repo-triage.md +0 -24
- package/skills/scip-verify/SKILL.md +0 -229
- package/skills/scip-verify/agents/openai.yaml +0 -4
- package/skills/scip-verify/references/calibrate-detectors.md +0 -170
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: scip-integrity-audit
|
|
3
|
+
description: Audit whether implementations are real with scip-query. Use for suspected faked or half-implemented features, decorative checkers or verifiers that never fail, dead code paths hidden behind graceful fallbacks, metrics that may be lying, or a "does any of this actually work" interrogation of a system.
|
|
4
|
+
metadata:
|
|
5
|
+
commands:
|
|
6
|
+
- template: 'scip-query search <text>'
|
|
7
|
+
when: 'Locate a status word, checker name, adapter, fallback, or metric producer.'
|
|
8
|
+
- template: 'scip-query outline <file>'
|
|
9
|
+
when: 'Inventory the callables in a known file before choosing a drill target.'
|
|
10
|
+
- template: 'scip-query evidence --symbol <symbol> --edge <family> --direction <direction> --depth <n> --max-edges <n>'
|
|
11
|
+
when: 'Project callers, callees, or dataflow around a checker, adapter, fallback, or metric.'
|
|
12
|
+
- template: 'scip-query inspect --at <file:line> --view behavior'
|
|
13
|
+
when: 'Read connected behavior for a named remaining gap after graph evidence.'
|
|
14
|
+
- template: 'scip-query code <selector>'
|
|
15
|
+
when: 'Read exact implementation syntax only when the body itself can change the verdict.'
|
|
16
|
+
- template: 'scip-query decorative-checkers -s <scope> --json'
|
|
17
|
+
when: 'Shortlist validate/verify/check/assert/is/has callables with no reachable failure exit.'
|
|
18
|
+
- template: 'scip-query not-implemented -s <scope> --json'
|
|
19
|
+
when: 'Shortlist reachable placeholder stubs that a real caller can actually reach.'
|
|
20
|
+
- template: 'scip-query test-quality -s <scope> --json'
|
|
21
|
+
when: 'Check regression artifacts and tests for assertion-free bodies, skip rot, and mock-echo.'
|
|
22
|
+
- template: 'scip-query twin-drift -s <scope> --json'
|
|
23
|
+
when: 'Find same-name or near-name twins whose bodies have silently diverged.'
|
|
24
|
+
- template: 'scip-query twin-ab <symbolA> <symbolB>'
|
|
25
|
+
when: 'Scaffold a table-driven comparison of two same-concept twins on a shared input.'
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
# scip-integrity-audit
|
|
29
|
+
|
|
30
|
+
<!-- BEGIN GENERATED SKILL COMMANDS -->
|
|
31
|
+
## Command and question manual
|
|
32
|
+
|
|
33
|
+
| Command syntax | Question it answers |
|
|
34
|
+
| --- | --- |
|
|
35
|
+
| `scip-query search <text>` | Locate a status word, checker name, adapter, fallback, or metric producer. |
|
|
36
|
+
| `scip-query outline <file>` | Inventory the callables in a known file before choosing a drill target. |
|
|
37
|
+
| `scip-query evidence --symbol <symbol> --edge <family> --direction <direction> --depth <n> --max-edges <n>` | Project callers, callees, or dataflow around a checker, adapter, fallback, or metric. |
|
|
38
|
+
| `scip-query inspect --at <file:line> --view behavior` | Read connected behavior for a named remaining gap after graph evidence. |
|
|
39
|
+
| `scip-query code <selector>` | Read exact implementation syntax only when the body itself can change the verdict. |
|
|
40
|
+
| `scip-query decorative-checkers -s <scope> --json` | Shortlist validate/verify/check/assert/is/has callables with no reachable failure exit. |
|
|
41
|
+
| `scip-query not-implemented -s <scope> --json` | Shortlist reachable placeholder stubs that a real caller can actually reach. |
|
|
42
|
+
| `scip-query test-quality -s <scope> --json` | Check regression artifacts and tests for assertion-free bodies, skip rot, and mock-echo. |
|
|
43
|
+
| `scip-query twin-drift -s <scope> --json` | Find same-name or near-name twins whose bodies have silently diverged. |
|
|
44
|
+
| `scip-query twin-ab <symbolA> <symbolB>` | Scaffold a table-driven comparison of two same-concept twins on a shared input. |
|
|
45
|
+
|
|
46
|
+
These commands are controls, not a checklist. Use every capability needed by the task, but make each query answer a distinct question. There is no required sequence or query limit. Run a command's `--help` when you need a flag not shown in its template.
|
|
47
|
+
<!-- END GENERATED SKILL COMMANDS -->
|
|
48
|
+
|
|
49
|
+
Use this skill to interrogate whether a system's claims are backed by real
|
|
50
|
+
implementations. Structural review asks "is this well organized?"; this skill
|
|
51
|
+
asks **"is this real?"** — it hunts decorative checkers, adapters written
|
|
52
|
+
against imagined data, features that have silently never run, and numbers
|
|
53
|
+
nobody ever recomputed.
|
|
54
|
+
|
|
55
|
+
Use `$scip-query` locators and evidence projections to inventory producers.
|
|
56
|
+
`health --full` does not run the integrity detectors; call
|
|
57
|
+
`decorative-checkers`, `not-implemented`, `test-quality`, and `twin-drift`
|
|
58
|
+
directly.
|
|
59
|
+
|
|
60
|
+
## The Stance
|
|
61
|
+
|
|
62
|
+
A green result you have never seen fail is unverified. Every status word,
|
|
63
|
+
banner, and metric is testimony from the code, not evidence about the code —
|
|
64
|
+
cross-examine the producer before believing it. The most dangerous code is
|
|
65
|
+
not broken code; it is code that reports success without doing the work.
|
|
66
|
+
|
|
67
|
+
## Drills
|
|
68
|
+
|
|
69
|
+
Run all five over the chosen scope. Each has a checkable exit.
|
|
70
|
+
|
|
71
|
+
### 1. Falsify every checker
|
|
72
|
+
|
|
73
|
+
Inventory everything in scope that accepts/rejects, passes/fails, or
|
|
74
|
+
validates (checkers, gates, verifiers, validators — find producers with
|
|
75
|
+
`search` on the status words in output, then `evidence` execution incoming
|
|
76
|
+
and outgoing). For each one, construct an input that MUST fail — a wrong
|
|
77
|
+
binding, a corrupt file, an impossible value — and run it. A checker that
|
|
78
|
+
passes its should-fail input is decorative: file it as a defect, not a note.
|
|
79
|
+
Before filing, attempt the defense: an accusation triggers a rewrite, so
|
|
80
|
+
search for the failure exit the drill may have missed — a config-gated
|
|
81
|
+
branch, an async rejection, one-hop delegation (the calibration's known
|
|
82
|
+
noise archetypes). File the defect with the executed should-fail input
|
|
83
|
+
attached and the defense attempt noted; a defense that succeeds clears the
|
|
84
|
+
checker and stays in the record as its witness.
|
|
85
|
+
Complete only when every checker in scope has been witnessed rejecting a
|
|
86
|
+
constructed should-fail input, or is listed with a reason it cannot be.
|
|
87
|
+
|
|
88
|
+
Mechanized by: `scip-query decorative-checkers` finds `validate*`/`verify*`/
|
|
89
|
+
`check*`/`assert*`/`is*`/`has*` callables with no reachable failure exit
|
|
90
|
+
anywhere in their body (calibrated 2026-07-03 against two external repos —
|
|
91
|
+
standalone-only; noise archetypes past one-hop delegation in
|
|
92
|
+
`docs/validation/2026-07-03-integrity-detector-calibration.md`). Run it first
|
|
93
|
+
to shortlist candidates before hand-constructing should-fail inputs.
|
|
94
|
+
|
|
95
|
+
### 2. Diff every adapter against captured reality
|
|
96
|
+
|
|
97
|
+
For each parser/adapter of an external format (tool output, XML/JSON
|
|
98
|
+
schemas, protocol messages): obtain ONE real sample from the actual source
|
|
99
|
+
and diff it against the code's assumptions and the tests' fixtures. Ask of
|
|
100
|
+
every fixture: was this generated from reality, or imagined? A parser and a
|
|
101
|
+
hand-written fixture can validate each other's shared hallucination
|
|
102
|
+
indefinitely.
|
|
103
|
+
Complete only when every adapter has been checked against at least one
|
|
104
|
+
captured-real sample.
|
|
105
|
+
|
|
106
|
+
### 3. Autopsy every fallback
|
|
107
|
+
|
|
108
|
+
Graceful degradation is where dead features hide: a primary path that has
|
|
109
|
+
never worked looks identical to a healthy fallback. For every catch block,
|
|
110
|
+
`?? fallback`, and degraded mode in scope: produce an execution witness that
|
|
111
|
+
the PRIMARY path runs (a test, a probe, a log). Use `evidence` execution and
|
|
112
|
+
`inspect --view behavior` for branch reachability. A fallback that always
|
|
113
|
+
fires means the feature above it is dead — date of death: birth.
|
|
114
|
+
Complete only when every fallback's primary path has a witness or a filed
|
|
115
|
+
defect.
|
|
116
|
+
|
|
117
|
+
Mechanized by: `scip-query not-implemented` finds reachable placeholder
|
|
118
|
+
stubs (`throw new Error('not implemented')`, TODO-comment + return-default,
|
|
119
|
+
empty bodies) that a real caller, entry surface, or package-surface export
|
|
120
|
+
can actually reach — the graph fact that separates "primary path never
|
|
121
|
+
built" from `dead`'s "primary path built but unreferenced." Standalone-only
|
|
122
|
+
(calibrated 2026-07-03; 0 live findings on two external repos post-fix, see
|
|
123
|
+
the calibration report) — treat a clean run as "nothing this shape found,"
|
|
124
|
+
not as "every fallback's primary path is proven live."
|
|
125
|
+
|
|
126
|
+
### 4. Hand-compute every metric twice
|
|
127
|
+
|
|
128
|
+
For each number the system reports (scores, counts, estimates): pick two
|
|
129
|
+
concrete instances, compute the expected value by hand from first
|
|
130
|
+
principles, and compare. Off-by-a-factor errors (double counting, inflated
|
|
131
|
+
estimates) survive for years because nobody ever recomputes one sample.
|
|
132
|
+
Complete only when every reported metric has two hand-verified samples.
|
|
133
|
+
|
|
134
|
+
### 5. Cross-examine same-concept twins
|
|
135
|
+
|
|
136
|
+
Where one concept is computed in more than one place, feed both the same
|
|
137
|
+
input and require the same answer. `twin-drift` finds the same-name cases
|
|
138
|
+
mechanically; for same-concept-different-name pairs, project consumers with
|
|
139
|
+
`evidence` execution incoming and compare implementations with `code`. Once
|
|
140
|
+
a pair is identified, `scip-query twin-ab <symbolA> <symbolB>` scaffolds a
|
|
141
|
+
table-driven vitest file that imports both and asserts equal output —
|
|
142
|
+
fill in the input table and run it. Disagreement between twins means at
|
|
143
|
+
least one is wrong — determine which before consolidating.
|
|
144
|
+
Complete only when every discovered twin pair has been compared on a shared
|
|
145
|
+
input.
|
|
146
|
+
|
|
147
|
+
## Severity
|
|
148
|
+
|
|
149
|
+
Rank findings by what the failure does to a user who trusted the output:
|
|
150
|
+
a decorative checker or false "verified" banner outranks everything; a
|
|
151
|
+
dead-but-fallbacked feature outranks a wrong metric; a wrong metric outranks
|
|
152
|
+
structural mess. Structural findings are real, but they are not lies — do
|
|
153
|
+
not fold them into the integrity verdict.
|
|
154
|
+
|
|
155
|
+
## Reporting
|
|
156
|
+
|
|
157
|
+
File each finding with: the claim as displayed, the producer (file:line),
|
|
158
|
+
the drill that exposed it, the should-fail input or real sample used, and
|
|
159
|
+
the fix. The audit is complete only when every drill's exit criterion is
|
|
160
|
+
met for the scope, and every defect found has a regression artifact — a
|
|
161
|
+
test, fixture, or model that fails on the pre-fix behavior.
|
|
162
|
+
|
|
163
|
+
End with a derived verdict, not an impression:
|
|
164
|
+
|
|
165
|
+
```markdown
|
|
166
|
+
Integrity: <scope> — <c> checkers witnessed failing, <a> adapters diffed
|
|
167
|
+
against reality, <f> fallback primaries witnessed live, <m> metrics
|
|
168
|
+
recomputed, <t> twins compared; <d> defects filed, <u> unverifiable (reasons)
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
A suspect scope that produces zero defects is itself a claim: state what
|
|
172
|
+
made the suspicion wrong, or rerun the drill that should have caught it.
|
|
173
|
+
|
|
174
|
+
A regression artifact that doesn't actually assert anything, or asserts the
|
|
175
|
+
same literal it stubbed into its own mock, is a fake witness — the same
|
|
176
|
+
"reports success without doing the work" failure mode this skill hunts in
|
|
177
|
+
production code, just relocated to the test suite. Run `scip-query
|
|
178
|
+
test-quality -s <scope>` over the audit's own regression artifacts (and,
|
|
179
|
+
periodically, over the suite at large) to catch this: assertion-free test
|
|
180
|
+
bodies, a skipped-test ledger with git-blame age (a skip with no fix date
|
|
181
|
+
attached is a claim nobody is checking), and mock-echo (a test that only
|
|
182
|
+
proves its own stub). Standalone-only, mixed precision by sub-check
|
|
183
|
+
(calibrated 2026-07-03): assertion-free and skipped are high-precision;
|
|
184
|
+
mock-echo is intentionally low-precision (syntactic same-literal matching,
|
|
185
|
+
not dataflow) — treat its output as a reviewed candidate list, not a verdict.
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: 'scip integrity audit'
|
|
3
|
+
short_description: 'Interrogate whether implementations are real: falsify checkers, diff adapters against reality, autopsy fallbacks.'
|
|
4
|
+
default_prompt: 'Run the scip-integrity-audit drills over this codebase and report every decorative checker, dead-behind-fallback feature, and lying metric.'
|
|
@@ -1,68 +1,86 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: scip-plan
|
|
3
|
-
description:
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
3
|
+
description: Write a concise, code-grounded implementation plan for a non-trivial feature, fix, refactor, migration, or retirement. Use scip-query as the primary repository exploration surface and cite exact owners, relationships, behavior, and consumers.
|
|
4
|
+
metadata:
|
|
5
|
+
commands:
|
|
6
|
+
- template: 'scip-query search <text>'
|
|
7
|
+
when: 'Locate exact repository text, a runtime key, or a compiler symbol; use `scip-query search -- <text>` when the literal starts with a dash.'
|
|
8
|
+
- template: 'scip-query outline <file>'
|
|
9
|
+
when: 'Locate compiler-owned constructs in a known file.'
|
|
10
|
+
- template: 'scip-query entrypoints <text>'
|
|
11
|
+
when: 'Locate an external callable root when its entry surface is known.'
|
|
12
|
+
- template: 'scip-query evidence --symbol <symbol> --edge <family> --direction <direction> --depth <n> --max-edges <n>'
|
|
13
|
+
when: 'Project explicitly selected typed relationships from one exact root.'
|
|
14
|
+
- template: 'scip-query inspect --at <file:line> --view behavior'
|
|
15
|
+
when: 'Read connected behavior for a named implementation gap.'
|
|
16
|
+
- template: 'scip-query code <selector>'
|
|
17
|
+
when: 'Read exact source only when syntax itself can change the decision.'
|
|
18
|
+
- template: 'scip-query diff-impact'
|
|
19
|
+
when: 'Map changed symbols and downstream consumers after an edit.'
|
|
20
|
+
- template: 'scip-query architecture'
|
|
21
|
+
when: 'Validate declared structural boundaries.'
|
|
22
|
+
- template: 'scip-query health --full'
|
|
23
|
+
when: 'Run configured cleanup and quality detectors.'
|
|
11
24
|
---
|
|
12
25
|
|
|
13
|
-
#
|
|
26
|
+
# SCIP Plan
|
|
14
27
|
|
|
15
|
-
|
|
16
|
-
## Commands for this skill
|
|
17
|
-
|
|
18
|
-
| Command | Purpose | Returns | Coverage | When |
|
|
19
|
-
| --- | --- | --- | --- | --- |
|
|
20
|
-
| `scip-query plan-context <target>` | Pre-edit planning context for a symbol, file, or module | definitions and references; callers and callees; dataflow producers and consumers; backward and forward slices; affected symbols; change-surface risk; dependencies and reverse dependencies; module files and exports; external surface use; complexity; churn; co-change partners; active suppressions | `bounded` | Anchor the current flow, consumers, reuse options, and change risks. |
|
|
21
|
-
| `scip-query refs <symbol>` | Find all files referencing a symbol | referencing file paths; reference line numbers grouped by file | `bounded` | Complete or narrow the direct consumer set for a planned symbol change. |
|
|
22
|
-
| `scip-query affected <symbol>` | Transitive closure of symbols that could break if this symbol changes | affected symbol identities, files, and traversal depths | `bounded` | Measure transitive impact when the change is not consumer-local. |
|
|
28
|
+
Write a plan that another coding agent can execute without rediscovering the relevant system.
|
|
23
29
|
|
|
24
|
-
|
|
30
|
+
<!-- BEGIN GENERATED SKILL COMMANDS -->
|
|
31
|
+
## Command and question manual
|
|
32
|
+
|
|
33
|
+
| Command syntax | Question it answers |
|
|
34
|
+
| --- | --- |
|
|
35
|
+
| `scip-query search <text>` | Locate exact repository text, a runtime key, or a compiler symbol; use \`scip-query search -- <text>\` when the literal starts with a dash. |
|
|
36
|
+
| `scip-query outline <file>` | Locate compiler-owned constructs in a known file. |
|
|
37
|
+
| `scip-query entrypoints <text>` | Locate an external callable root when its entry surface is known. |
|
|
38
|
+
| `scip-query evidence --symbol <symbol> --edge <family> --direction <direction> --depth <n> --max-edges <n>` | Project explicitly selected typed relationships from one exact root. |
|
|
39
|
+
| `scip-query inspect --at <file:line> --view behavior` | Read connected behavior for a named implementation gap. |
|
|
40
|
+
| `scip-query code <selector>` | Read exact source only when syntax itself can change the decision. |
|
|
41
|
+
| `scip-query diff-impact` | Map changed symbols and downstream consumers after an edit. |
|
|
42
|
+
| `scip-query architecture` | Validate declared structural boundaries. |
|
|
43
|
+
| `scip-query health --full` | Run configured cleanup and quality detectors. |
|
|
44
|
+
|
|
45
|
+
These commands are controls, not a checklist. Use every capability needed by the task, but make each query answer a distinct question. There is no required sequence or query limit. Run a command's `--help` when you need a flag not shown in its template.
|
|
25
46
|
<!-- END GENERATED SKILL COMMANDS -->
|
|
26
47
|
|
|
27
|
-
|
|
48
|
+
<!-- BEGIN GENERATED EXPLORATION MANUAL -->
|
|
49
|
+
### Choose a relationship deliberately
|
|
28
50
|
|
|
29
|
-
|
|
51
|
+
| Question | Evidence family | Direction |
|
|
52
|
+
|---|---|---|
|
|
53
|
+
| Who can call or reach this? | `execution` | `incoming` |
|
|
54
|
+
| What can this call or reach? | `execution` | `outgoing` |
|
|
55
|
+
| Where can this value come from? | `dataflow` | `incoming` |
|
|
56
|
+
| Where can this value go? | `dataflow` | `outgoing` |
|
|
57
|
+
| Which producer and consumer rendezvous? | `runtime` | `both` |
|
|
58
|
+
| What resource is observed or changed? | `state` | `both` |
|
|
59
|
+
| What occurs before or after this? | `temporal` | `both` |
|
|
60
|
+
| What interface constrains this? | `contract` | `both` |
|
|
61
|
+
| Are these observations the same entity? | `identity` | `both` |
|
|
62
|
+
| What contains or owns this? | `ownership` | `both` |
|
|
63
|
+
| What does this statically rely on? | `dependencies` | `outgoing` |
|
|
30
64
|
|
|
31
|
-
|
|
65
|
+
Use exact evidence as an observed fact only within its coverage. Derived evidence is deterministically computed; candidate evidence is a lead; mixed evidence must retain its constituent strengths; unknown evidence cannot support a stronger claim. Missing output is not evidence of absence.
|
|
32
66
|
|
|
33
|
-
|
|
67
|
+
The controls above are complete for ordinary exploration. Run `scip-query capabilities --matrix` only when a named claim depends on uncertain provider support; do not run it for routine orientation.
|
|
68
|
+
<!-- END GENERATED EXPLORATION MANUAL -->
|
|
34
69
|
|
|
35
|
-
|
|
36
|
-
|---|---|
|
|
37
|
-
| One non-trivial change, refactor, migration, or bug fix | Ordinary-mode scenario below |
|
|
38
|
-
| The change touches a security boundary, money, a destructive/irreversible op, a persistent-data migration, shared-state concurrency, a broad public API, or an unrollback-able rollout — or the user asks for the rigorous version | `references/high-assurance.md` |
|
|
39
|
-
| You're about to edit a public export, route, schema, CLI command, config field, generated artifact, or documented behavior, and need to know what breaks | `references/api-impact.md` |
|
|
40
|
-
| You're running a multi-phase program: writing an executable plan, delegating steps, reviewing a subagent's work mid-flight, or carrying a change end to end | `references/conductor.md` |
|
|
41
|
-
| You need something faster and must prove the speedup with measurements | `references/hyper-optimization.md` |
|
|
42
|
-
| You need a TLA+ model of a risky protocol, before or after implementation | `references/tla-model.md` |
|
|
70
|
+
scip-query is a repository exploration surface: an indexed code reader that joins exact current text to compiler-owned identities and typed relationships. Use it as the primary exploration surface for tracked repository text. Treat its commands as controls, not a checklist. Use every capability needed by the change, but make each query answer a distinct repository question. There is no mandatory sequence, required anchor phase, or query-count limit.
|
|
43
71
|
|
|
44
|
-
|
|
72
|
+
Before planning, understand the relevant initiating surfaces, behavior owners, decisions, data transformations, effects, consumers, existing reuse opportunities, and structural constraints. Use one discriminating locator and reuse its results as graph roots; do not repeat generic synonym searches after usable candidates exist. When several implementations match, compare their entry surfaces, incoming execution, ownership, callers, or runtime connections before selecting one. Locator results are graph roots, not relevance rankings. Read coverage and recovery before making complete-set or absence claims. Use native tools only for edits, checks, binary content, or a specific unsupported gap reported by scip-query.
|
|
45
73
|
|
|
46
|
-
|
|
74
|
+
Do not write a plan for one obvious local edit. Write one when correctness depends on several owners or files, downstream consumers, a migration or retirement, reuse of existing behavior, architecture rules, or several coherent implementation slices. Put it in `docs/plans/YYYY-MM-DD-<name>.md` only when it must survive a context reset.
|
|
47
75
|
|
|
48
|
-
|
|
76
|
+
## Plan shape
|
|
49
77
|
|
|
50
|
-
|
|
78
|
+
State the observable outcome in one or two sentences. Explain the current behavior with exact symbol and file/line references. Then use this table:
|
|
51
79
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
- **Current Flow** — the affected path from entry point to observable effect, in prose, with evidence behind each claim; if current behavior can't be described end to end, the change isn't ready to make.
|
|
56
|
-
- **Affected Consumers** — who calls/imports/reads the changed code and what breaks if the contract shifts; state explicitly whether the list is complete or bounded — a capped list presented as complete is worse than one flagged as bounded.
|
|
57
|
-
- **Reuse Decision** — for every new helper/wrapper/type/parameter/flag/component/hook/module, name what it could have extended instead and why extension loses. New parallel code with no reuse decision is the single most common defect this skill exists to prevent.
|
|
58
|
-
- **Slices** — ordered implementation steps, each naming its files/symbols, the behavior change, and the validation (a test, command, or specific manual check) that proves it. A slice with no validation is a wish.
|
|
59
|
-
- **Risks and Unknowns** — what could go wrong, what couldn't be established, and any rollout constraint; keep unknowns explicit rather than rounding them to assumptions.
|
|
60
|
-
|
|
61
|
-
The plan is done only when: the entry-to-effect path is described and evidenced, every affected consumer is assigned to a slice or explicitly out of scope, every new unit has a reuse decision, every slice has validation, and unknowns are written down rather than resolved by guessing. Then implement in the smallest coherent slice and run `scip-verify` when the change lands.
|
|
62
|
-
|
|
63
|
-
## Owned command quick-reference
|
|
80
|
+
| Step | Code reference | Change | Preserve or retire | Verify |
|
|
81
|
+
| --- | --- | --- | --- | --- |
|
|
82
|
+
| Coherent implementation slice | Exact symbol and file/line | Concrete edit and why it belongs here | Existing behavior to keep or residue to remove | Check that fails when the outcome is absent |
|
|
64
83
|
|
|
65
|
-
|
|
66
|
-
`tla`, `tla scaffold`, `tla verify`, `tla instrument`, `tla trace-check`, `tla fetch-tools` → model scaffolding and conformance, see `references/tla-model.md`.
|
|
84
|
+
Order the rows so each leaves the repository in a valid state. Include the relevant entry point, behavior owner, downstream consumers, reuse candidates, architecture constraints, migration or cleanup, and validation. Label design choices as choices. Include an open-uncertainty section only when an unresolved repository fact can change the implementation, and name the exact scip-query command that would answer it.
|
|
67
85
|
|
|
68
|
-
|
|
86
|
+
The plan is ready when another agent can implement it without a broad repository rediscovery pass.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
interface:
|
|
2
|
-
display_name:
|
|
3
|
-
short_description:
|
|
4
|
-
default_prompt:
|
|
2
|
+
display_name: 'SCIP Plan'
|
|
3
|
+
short_description: 'Write concise repository-grounded implementation plans'
|
|
4
|
+
default_prompt: 'Use $scip-plan to explore the relevant system with scip-query and write a concise implementation plan grounded in exact symbol and file/line references.'
|
|
@@ -1,82 +1,103 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: scip-query
|
|
3
|
-
description: Use FIRST for codebase work
|
|
3
|
+
description: Use FIRST for codebase work when compiler-resolved identity, runtime boundaries, callers, dependencies, consumers, architecture, change impact, or cleanup relationships can affect the answer. It exposes exact referents, explicit typed-graph projections, and source evidence; it does not infer task relevance. Pair it with scip-explore when the task is to understand a repository system end to end.
|
|
4
|
+
metadata:
|
|
5
|
+
commands:
|
|
6
|
+
- template: 'scip-query watch --daemon'
|
|
7
|
+
when: 'When the user explicitly asks to use scip-query, make sure the background watcher for the exact target worktree is running before the first exploration command.'
|
|
8
|
+
- template: 'scip-query watch --status'
|
|
9
|
+
when: 'Check whether the watcher for the current worktree is running, refreshing, idle, or failed.'
|
|
10
|
+
- template: 'scip-query watch --stop'
|
|
11
|
+
when: 'Stop the watcher owned by the current worktree when the user asks to turn it off.'
|
|
12
|
+
- template: 'scip-query search <text>'
|
|
13
|
+
when: 'Locate exact repository text, a runtime key, or a compiler symbol; use `scip-query search -- <text>` when the literal starts with a dash.'
|
|
14
|
+
- template: 'scip-query outline <file>'
|
|
15
|
+
when: 'Locate compiler-owned constructs in a known file.'
|
|
16
|
+
- template: 'scip-query entrypoints <text>'
|
|
17
|
+
when: 'Locate an external callable root when its entry surface is known.'
|
|
18
|
+
- template: 'scip-query evidence --symbol <symbol> --edge <family> --direction <direction> --depth <n> --max-edges <n>'
|
|
19
|
+
when: 'Project explicitly selected typed relationships from one exact root.'
|
|
20
|
+
- template: 'scip-query inspect --at <file:line> --view behavior'
|
|
21
|
+
when: 'Read connected behavior for a named implementation gap.'
|
|
22
|
+
- template: 'scip-query code <selector>'
|
|
23
|
+
when: 'Read exact source only when syntax itself can change the decision.'
|
|
24
|
+
- template: 'scip-query diff-impact'
|
|
25
|
+
when: 'Map changed symbols and downstream consumers after an edit.'
|
|
26
|
+
- template: 'scip-query architecture'
|
|
27
|
+
when: 'Validate declared structural boundaries.'
|
|
28
|
+
- template: 'scip-query health --full'
|
|
29
|
+
when: 'Run configured cleanup and quality detectors.'
|
|
4
30
|
---
|
|
5
31
|
|
|
6
|
-
#
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
diagnosis, read-only auditing, implementation, setup, or verification. The
|
|
13
|
-
router does not perform that workflow itself.
|
|
14
|
-
|
|
15
|
-
Load `../_shared/SKILL.md` only after the owning workflow's shortlist proves
|
|
16
|
-
insufficient. The shared reference contains the complete command vocabulary,
|
|
17
|
-
coverage rules, and evidence contract; loading it before a route is selected
|
|
18
|
-
adds choices without adding direction.
|
|
19
|
-
|
|
20
|
-
Run commands normally for agent reading: the human renderer preserves
|
|
21
|
-
hierarchy, whitespace, and line numbers without transport metadata. Select
|
|
22
|
-
`--json` only when a program will parse the response; add `--result-only` when
|
|
23
|
-
that program needs only the command result rather than the stable public
|
|
24
|
-
envelope. Do not select `--compact` or `--output-page-size` for readability.
|
|
25
|
-
Follow an emitted continuation command only when the command itself says the
|
|
26
|
-
output is incomplete. The final transport-complete footer means every rendered
|
|
27
|
-
character was retrieved; inspect command coverage separately before claiming
|
|
28
|
-
the logical result is exhaustive.
|
|
29
|
-
|
|
30
|
-
## Routes
|
|
31
|
-
|
|
32
|
-
| The request starts from… | Owning skill | Completion criterion |
|
|
33
|
-
| --- | --- | --- |
|
|
34
|
-
| Existing code that must be understood, traced, or diagrammed | `scip-explore` | Entry points, flow, dependencies, consumers, and remaining uncertainty are evidenced. |
|
|
35
|
-
| A proposed feature, refactor, migration, API change, performance campaign, TLA+ model, or multi-phase program | `scip-plan` | Current flow, affected consumers, reuse decisions, ordered slices, validation, and risks are explicit. |
|
|
36
|
-
| A failure, regression, recurring bug family, raw issue, or parser/AST reachability question | `scip-diagnose` | The observed failure is connected to a cause, rivals are rejected, and the smallest fix packet is defined. |
|
|
37
|
-
| A question about whether problems exist, without permission to edit | `scip-audit` | The scoped items are classified and ranked with evidence; no code or docs are changed. |
|
|
38
|
-
| Confirmed cleanup, drift, maintainability, frontend, directory, twin, or documentation findings that should be fixed | `scip-improve` | One coherent finding slice is changed and passes its routed postchecks. |
|
|
39
|
-
| First adoption, broken setup, missing capabilities, skill installation, hooks, CI, or uninstall | `scip-setup` | The workspace is ready, or every unavailable capability has an explicit blocker. |
|
|
40
|
-
| A finished diff that must be challenged before commit or release | `scip-verify` | Workspace, impact, applicable postchecks, gate findings, and refutation attempts are all accounted for. |
|
|
41
|
-
|
|
42
|
-
## Disambiguation
|
|
43
|
-
|
|
44
|
-
- Existing behavior with no symptom routes to `scip-explore`; a contradiction
|
|
45
|
-
or failure routes to `scip-diagnose`.
|
|
46
|
-
- Finding and classifying problems without edits routes to `scip-audit`;
|
|
47
|
-
changing already-confirmed findings routes to `scip-improve`.
|
|
48
|
-
- Prospective work routes to `scip-plan`; a concrete finished diff routes to
|
|
49
|
-
`scip-verify`.
|
|
50
|
-
- Setup wins whenever the index or a required capability is missing, stale,
|
|
51
|
-
invalid, or not yet installed.
|
|
52
|
-
- A request may cross workflows in sequence. Keep one owner at a time:
|
|
53
|
-
diagnose before planning a fix, audit before improving, plan before a
|
|
54
|
-
non-trivial implementation, and verify after every implemented slice.
|
|
55
|
-
|
|
56
|
-
## Default non-trivial change loop
|
|
57
|
-
|
|
58
|
-
1. Invoke `scip-plan`, anchored by
|
|
59
|
-
`scip-query plan-context <target>`.
|
|
60
|
-
2. Implement the smallest coherent planned slice.
|
|
61
|
-
3. Invoke `scip-verify`; do not declare completion until it passes or every
|
|
62
|
-
remaining finding has a specific evidence-backed disposition.
|
|
63
|
-
|
|
64
|
-
Routing is complete only when exactly one owner is selected for the current
|
|
65
|
-
phase, or the request is small enough that no compiler-resolved relationship
|
|
66
|
-
claim is needed.
|
|
67
|
-
|
|
68
|
-
<!-- BEGIN GENERATED ROUTER COMMAND PREVIEW -->
|
|
69
|
-
## Command Preview
|
|
70
|
-
|
|
71
|
-
Top commands per routed skill, generated from each skill's own `commands:` frontmatter.
|
|
72
|
-
|
|
73
|
-
| Skill | Top commands |
|
|
32
|
+
# scip-query
|
|
33
|
+
|
|
34
|
+
<!-- BEGIN GENERATED SKILL COMMANDS -->
|
|
35
|
+
## Command and question manual
|
|
36
|
+
|
|
37
|
+
| Command syntax | Question it answers |
|
|
74
38
|
| --- | --- |
|
|
75
|
-
| `scip-
|
|
76
|
-
| `scip-
|
|
77
|
-
| `scip-
|
|
78
|
-
| `scip-
|
|
79
|
-
| `scip-
|
|
80
|
-
| `scip-
|
|
81
|
-
| `scip-
|
|
82
|
-
|
|
39
|
+
| `scip-query watch --daemon` | When the user explicitly asks to use scip-query, make sure the background watcher for the exact target worktree is running before the first exploration command. |
|
|
40
|
+
| `scip-query watch --status` | Check whether the watcher for the current worktree is running, refreshing, idle, or failed. |
|
|
41
|
+
| `scip-query watch --stop` | Stop the watcher owned by the current worktree when the user asks to turn it off. |
|
|
42
|
+
| `scip-query search <text>` | Locate exact repository text, a runtime key, or a compiler symbol; use \`scip-query search -- <text>\` when the literal starts with a dash. |
|
|
43
|
+
| `scip-query outline <file>` | Locate compiler-owned constructs in a known file. |
|
|
44
|
+
| `scip-query entrypoints <text>` | Locate an external callable root when its entry surface is known. |
|
|
45
|
+
| `scip-query evidence --symbol <symbol> --edge <family> --direction <direction> --depth <n> --max-edges <n>` | Project explicitly selected typed relationships from one exact root. |
|
|
46
|
+
| `scip-query inspect --at <file:line> --view behavior` | Read connected behavior for a named implementation gap. |
|
|
47
|
+
| `scip-query code <selector>` | Read exact source only when syntax itself can change the decision. |
|
|
48
|
+
| `scip-query diff-impact` | Map changed symbols and downstream consumers after an edit. |
|
|
49
|
+
| `scip-query architecture` | Validate declared structural boundaries. |
|
|
50
|
+
| `scip-query health --full` | Run configured cleanup and quality detectors. |
|
|
51
|
+
|
|
52
|
+
These commands are controls, not a checklist. Use every capability needed by the task, but make each query answer a distinct question. There is no required sequence or query limit. Run a command's `--help` when you need a flag not shown in its template.
|
|
53
|
+
<!-- END GENERATED SKILL COMMANDS -->
|
|
54
|
+
|
|
55
|
+
## Watcher lifecycle
|
|
56
|
+
|
|
57
|
+
The scip-query watcher is a project-scoped background refresh service: one process owned by one worktree that observes that worktree's configured compiler inputs and keeps its index current after relevant changes. It is not a global service, and starting it in one worktree must not start watchers for sibling worktrees.
|
|
58
|
+
|
|
59
|
+
When the user explicitly names scip-query, invokes `$scip-query`, or asks the agent to use it, run `scip-query watch --daemon` from the exact target project root before the first exploration command. Treat both a newly started watcher and an already-running watcher as success; reuse the existing process instead of starting another. This automatic start applies only to an explicit request to use scip-query. Merely opening a repository or shell must not start it.
|
|
60
|
+
|
|
61
|
+
Use the normal command without `CHOKIDAR_USEPOLLING` or another forced polling override. If startup fails, report the exact failure; do not silently start a watcher in another worktree, force polling, or substitute an unbounded full rebuild.
|
|
62
|
+
|
|
63
|
+
Run `scip-query watch --status` from the same project root to inspect the watcher. Run `scip-query watch --stop` from that root when the user asks to stop it. The stop command targets only that worktree's watcher; do not stop watchers owned by other worktrees unless the user names them.
|
|
64
|
+
|
|
65
|
+
<!-- BEGIN GENERATED EXPLORATION MANUAL -->
|
|
66
|
+
### Choose a relationship deliberately
|
|
67
|
+
|
|
68
|
+
| Question | Evidence family | Direction |
|
|
69
|
+
|---|---|---|
|
|
70
|
+
| Who can call or reach this? | `execution` | `incoming` |
|
|
71
|
+
| What can this call or reach? | `execution` | `outgoing` |
|
|
72
|
+
| Where can this value come from? | `dataflow` | `incoming` |
|
|
73
|
+
| Where can this value go? | `dataflow` | `outgoing` |
|
|
74
|
+
| Which producer and consumer rendezvous? | `runtime` | `both` |
|
|
75
|
+
| What resource is observed or changed? | `state` | `both` |
|
|
76
|
+
| What occurs before or after this? | `temporal` | `both` |
|
|
77
|
+
| What interface constrains this? | `contract` | `both` |
|
|
78
|
+
| Are these observations the same entity? | `identity` | `both` |
|
|
79
|
+
| What contains or owns this? | `ownership` | `both` |
|
|
80
|
+
| What does this statically rely on? | `dependencies` | `outgoing` |
|
|
81
|
+
|
|
82
|
+
Use exact evidence as an observed fact only within its coverage. Derived evidence is deterministically computed; candidate evidence is a lead; mixed evidence must retain its constituent strengths; unknown evidence cannot support a stronger claim. Missing output is not evidence of absence.
|
|
83
|
+
|
|
84
|
+
The controls above are complete for ordinary exploration. Run `scip-query capabilities --matrix` only when a named claim depends on uncertain provider support; do not run it for routine orientation.
|
|
85
|
+
<!-- END GENERATED EXPLORATION MANUAL -->
|
|
86
|
+
|
|
87
|
+
scip-query is a repository exploration surface: an indexed code reader that joins exact current text to compiler-owned identities and typed relationships. Native text and file tools expose matches and slices; scip-query additionally exposes how code units call, carry data, cross runtime boundaries, observe or change state, occur in order, satisfy contracts, share identity, contain one another, and depend on one another. It performs the control you select; it does not infer task relevance or decide what the user meant.
|
|
88
|
+
|
|
89
|
+
For end-to-end system understanding, load `$scip-explore` alongside this skill. `scip-explore` owns the material-fact model, evidence integration, answer audit, and stopping judgment; this skill remains the calibrated sensing and source-reading surface.
|
|
90
|
+
|
|
91
|
+
Use scip-query as the primary exploration surface for tracked repository text. Treat its commands as controls, not a checklist. Use every capability needed by the task, but make each query answer a distinct repository question. There is no mandatory sequence, required anchor phase, or query-count limit. Thoroughness means understanding the relevant system end to end, not exhausting the repository.
|
|
92
|
+
|
|
93
|
+
Use one discriminating exact `search`, `outline`, or `entrypoints` locator, then reuse every returned symbol or `file:line` as an `evidence` root. Do not repeat generic synonym searches after usable candidates exist. Locator ordering does not establish relevance. When several implementations match the same vocabulary, do not select one by path, naming, apparent recency, or result order. Compare their entry surfaces, incoming execution, ownership, callers, or runtime connections; if the repository does not establish one as authoritative, explain the alternatives and their scopes.
|
|
94
|
+
|
|
95
|
+
An evidence projection accepts repeated `--symbol`, `--at`, or `--search` roots and repeated `--edge <family>` flags; always choose `--direction incoming|outgoing|both`, `--depth <n>`, and `--max-edges <n>` explicitly. Use `--subtype <subtype>` to narrow a family, `--connecting` when the selected roots themselves must be connected, and `--inventory-only` when counts alone can choose the next bounded projection.
|
|
96
|
+
|
|
97
|
+
Read each command's request, observed facts, evidence calibration, coverage, and recovery together. Exact observations are facts only within their reported coverage. Derived observations are deterministic computations. Candidate observations require confirmation. Missing or bounded output is not evidence of absence.
|
|
98
|
+
|
|
99
|
+
An emitted `Continue exactly:` command is a cursor: a next-page read from one immutable rendered result. It is required transport, not optional evidence expansion. Run the emitted command unchanged and repeat until no continuation remains before interpreting that command's complete result. Do not rerun the original query or alter cursor flags. Continuation reads saved output without repository preparation, reindexing, or watcher startup. Printed recovery and expansion commands are different: run those only when their omitted evidence matters.
|
|
100
|
+
|
|
101
|
+
Prefer human output for agent reading. If a model-facing consumer genuinely needs JSON, add `--json --agent-output`; add `--result-only` only when the common envelope is unnecessary, and drain every emitted cursor before interpreting the result. Never send raw `--json` output through a model-facing terminal or tool. When a program needs the exhaustive machine payload, use `--json --json-output <path>` and inspect that file programmatically instead of injecting its complete contents into model context.
|
|
102
|
+
|
|
103
|
+
`inspect --view behavior` returns connected behavior for named units; `code` returns exact source. Treat source rendered by either command as already read. Batch independent roots and source gaps when practical. Use native tools only for edits, checks, binary content, or a specific unsupported gap reported by scip-query. After edits, use `diff-impact` when downstream consumers matter, `architecture` for declared boundaries, and `health` for configured quality or cleanup detectors.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
interface:
|
|
2
|
-
display_name: "SCIP Query
|
|
3
|
-
short_description: "
|
|
4
|
-
default_prompt: "Use $scip-query
|
|
2
|
+
display_name: "SCIP Query"
|
|
3
|
+
short_description: "Explore code through exact identities and relationships"
|
|
4
|
+
default_prompt: "Use $scip-query as the primary repository exploration surface. Treat commands as controls rather than a checklist, reuse locator results as graph roots, distinguish competing implementations by their entry surfaces and callers, and use exact identities, relationships, behavior, source, coverage, and recovery to understand the requested system accurately."
|