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,11 +0,0 @@
|
|
|
1
|
-
type DiffGateActionTier = 'direct' | 'signal' | 'support';
|
|
2
|
-
type DiffGateCheck = 'echo' | 'incomplete-migration' | 'co-change-partner' | 'twin-partner' | 'coverage-contract' | 'architecture' | 'doc-reference' | 'unused-params' | 'new-dead' | 'baseline';
|
|
3
|
-
type DocCitationKind = 'behavioral-claim' | 'configuration-example' | 'guide-reference' | 'intentional-record';
|
|
4
|
-
/** A contiguous changed line span within one file, as parsed from a diff. */
|
|
5
|
-
interface ChangedLineRange {
|
|
6
|
-
file: string;
|
|
7
|
-
startLine: number;
|
|
8
|
-
endLine: number;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export type { ChangedLineRange as C, DiffGateCheck as D, DiffGateActionTier as a, DocCitationKind as b };
|
|
@@ -1,253 +0,0 @@
|
|
|
1
|
-
import { S as ScipDatabase } from '../db-B5PM5yNk.js';
|
|
2
|
-
import { C as CoChangeCommitScope, a as CoChangeRecency, b as CoChangeSubjectContext, G as GitHistoryMode } from '../git-history-ChNHbfZQ.js';
|
|
3
|
-
import { CoChangePartnerClass, DeclaredCouplingSuggestion } from './co-change.js';
|
|
4
|
-
import { AttributionNote, DiffImpactEvidenceTierStatus, DiffImpactPlan, BaseContentReader, BaseContentGitRuntime } from './diff-impact.js';
|
|
5
|
-
import { D as DiffGateCheck, a as DiffGateActionTier, b as DocCitationKind } from '../diff-gate-types-B0QYpDv1.js';
|
|
6
|
-
import { F as FindingSuppression } from '../config-types-jVM3D7MA.js';
|
|
7
|
-
import 'better-sqlite3';
|
|
8
|
-
import '../symbol-types-BIQwfoAx.js';
|
|
9
|
-
|
|
10
|
-
type RecordCompatibilityState = 'legacy' | 'current' | 'unsupported-older' | 'unsupported-future' | 'malformed';
|
|
11
|
-
interface RecordCompatibilityIssue {
|
|
12
|
-
path: string;
|
|
13
|
-
state: Exclude<RecordCompatibilityState, 'legacy' | 'current'>;
|
|
14
|
-
reason: string;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Exact accounting for a set of persisted record candidates. A partial read
|
|
18
|
-
* may still return accepted records, but it cannot represent that subset as a
|
|
19
|
-
* complete repository history.
|
|
20
|
-
*/
|
|
21
|
-
interface RecordCompatibilitySummary {
|
|
22
|
-
complete: boolean;
|
|
23
|
-
total: number;
|
|
24
|
-
accepted: number;
|
|
25
|
-
legacy: number;
|
|
26
|
-
current: number;
|
|
27
|
-
unsupportedOlder: number;
|
|
28
|
-
unsupportedFuture: number;
|
|
29
|
-
malformed: number;
|
|
30
|
-
omitted: number;
|
|
31
|
-
issues: RecordCompatibilityIssue[];
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/** Canonical check list — the CLI validates `--skip` values against this. */
|
|
35
|
-
declare const DIFF_GATE_CHECKS: readonly DiffGateCheck[];
|
|
36
|
-
type DiffGateEvidence = 'graph-fact' | 'semantic' | 'heuristic' | 'change-graph' | 'baseline';
|
|
37
|
-
type DiffGateSeverity = 'info' | 'warning' | 'error';
|
|
38
|
-
|
|
39
|
-
interface DiffGateFinding {
|
|
40
|
-
id: string;
|
|
41
|
-
check: DiffGateCheck;
|
|
42
|
-
severity: DiffGateSeverity;
|
|
43
|
-
evidence: DiffGateEvidence;
|
|
44
|
-
/** Actionability tier for reviewers and automation. */
|
|
45
|
-
actionTier?: DiffGateActionTier;
|
|
46
|
-
/** Stable grouping key for multiple evidence rows behind one review item. */
|
|
47
|
-
groupKey?: string;
|
|
48
|
-
confidence?: number;
|
|
49
|
-
file?: string;
|
|
50
|
-
startLine?: number;
|
|
51
|
-
endLine?: number;
|
|
52
|
-
symbol?: string;
|
|
53
|
-
relatedFiles?: string[];
|
|
54
|
-
/**
|
|
55
|
-
* Advisory findings surface useful signal but must never be the sole
|
|
56
|
-
* cause of a nonzero diff-gate exit code (see `blockingFindings`). Used
|
|
57
|
-
* by twin-partner until calibration (remediation plan phase 21) says the
|
|
58
|
-
* check's precision earns a hard gate; also used by doc-reference (21.2)
|
|
59
|
-
* for bare file-mention citations — see `runDocReferenceCheck`.
|
|
60
|
-
*/
|
|
61
|
-
advisory?: boolean;
|
|
62
|
-
/** Underlying analyzer family when one gate finding wraps another analyzer. */
|
|
63
|
-
sourceAnalyzer?: string;
|
|
64
|
-
/** Stable root-cause grouping key inside the source analyzer. */
|
|
65
|
-
rootCauseKey?: string;
|
|
66
|
-
/** Relationship label for co-change partner findings. */
|
|
67
|
-
partnerClass?: CoChangePartnerClass;
|
|
68
|
-
partnerClassReasons?: string[];
|
|
69
|
-
declaredCouplingSuggestion?: DeclaredCouplingSuggestion;
|
|
70
|
-
commitScope?: CoChangeCommitScope;
|
|
71
|
-
recency?: CoChangeRecency;
|
|
72
|
-
focusedTogether?: number;
|
|
73
|
-
broadTogether?: number;
|
|
74
|
-
broadCommitRatio?: number;
|
|
75
|
-
lastTogetherAt?: number;
|
|
76
|
-
recentTogether?: number;
|
|
77
|
-
subjectContext?: CoChangeSubjectContext;
|
|
78
|
-
/** Why a doc cites changed code, when check is doc-reference. */
|
|
79
|
-
citationKind?: DocCitationKind;
|
|
80
|
-
citationKindReasons?: string[];
|
|
81
|
-
/** Bounded nearby doc text that contains the changed-file citation. */
|
|
82
|
-
citedClaims?: string[];
|
|
83
|
-
/**
|
|
84
|
-
* Set only on a hub-file-cascade-damped doc-reference finding (21.2's
|
|
85
|
-
* successor damping step — see `clusterDocReferenceCitations`): total
|
|
86
|
-
* distinct docs citing the same hub file in this diff, before damping.
|
|
87
|
-
*/
|
|
88
|
-
citationCount?: number;
|
|
89
|
-
/** Up to `DOC_REFERENCE_HUB_FILE_EXEMPLAR_LIMIT` sample citations shown for a damped hub-file finding. */
|
|
90
|
-
citationExemplars?: Array<{
|
|
91
|
-
doc: string;
|
|
92
|
-
citedClaims: string[];
|
|
93
|
-
}>;
|
|
94
|
-
/**
|
|
95
|
-
* Docs counted in `citationCount` but not individually reported —
|
|
96
|
-
* disclosed explicitly rather than silently dropped (still counted, just
|
|
97
|
-
* not each surfaced as its own finding).
|
|
98
|
-
*/
|
|
99
|
-
suppressedCount?: number;
|
|
100
|
-
/**
|
|
101
|
-
* The per-doc finding ids a hub-file cluster replaced, kept for JSON
|
|
102
|
-
* addressability only. Deliberately NOT `legacySuppressionIds`: suppression
|
|
103
|
-
* matching honors that field, and a cluster carries N member ids — reusing
|
|
104
|
-
* it would let one pre-clustering per-doc suppression silently suppress the
|
|
105
|
-
* entire cluster (one acknowledged citation hiding eleven unacknowledged
|
|
106
|
-
* ones). To suppress the cluster, target the cluster's own `id`.
|
|
107
|
-
*/
|
|
108
|
-
memberFindingIds?: string[];
|
|
109
|
-
message: string;
|
|
110
|
-
why: string[];
|
|
111
|
-
/** Concrete remediation an agent can act on without human triage. */
|
|
112
|
-
remediation: string;
|
|
113
|
-
suppressionHint?: string;
|
|
114
|
-
legacySuppressionIds?: string[];
|
|
115
|
-
}
|
|
116
|
-
interface DiffGateRootCauseGroup {
|
|
117
|
-
groupKey: string;
|
|
118
|
-
check: DiffGateCheck;
|
|
119
|
-
severity: DiffGateSeverity;
|
|
120
|
-
actionTier?: DiffGateActionTier;
|
|
121
|
-
sourceAnalyzer?: string;
|
|
122
|
-
rootCauseKey?: string;
|
|
123
|
-
count: number;
|
|
124
|
-
findingIds: string[];
|
|
125
|
-
files: string[];
|
|
126
|
-
relatedFiles: string[];
|
|
127
|
-
message: string;
|
|
128
|
-
remediation: string;
|
|
129
|
-
}
|
|
130
|
-
interface DiffGateResult {
|
|
131
|
-
base: string;
|
|
132
|
-
changedFiles: string[];
|
|
133
|
-
changedSymbols: number;
|
|
134
|
-
checksRun: DiffGateCheck[];
|
|
135
|
-
/** Checks that could not run (no git history, no baseline file, ...). */
|
|
136
|
-
skipped: Array<{
|
|
137
|
-
check: DiffGateCheck;
|
|
138
|
-
reason: string;
|
|
139
|
-
}>;
|
|
140
|
-
/** Findings accepted by structured .scipquery.json suppressions. */
|
|
141
|
-
suppressed: Array<{
|
|
142
|
-
finding: DiffGateFinding;
|
|
143
|
-
suppression: FindingSuppression;
|
|
144
|
-
}>;
|
|
145
|
-
/** Model-proposed decisions that could not enter the narrow automatic lane. */
|
|
146
|
-
policyEscalations?: Array<{
|
|
147
|
-
findingId: string;
|
|
148
|
-
check: DiffGateCheck;
|
|
149
|
-
suppressionId?: string;
|
|
150
|
-
reasons: string[];
|
|
151
|
-
}>;
|
|
152
|
-
/** Machine-visible distinction between a clean gate and an automatically adjudicated gate. */
|
|
153
|
-
outcome?: 'pass' | 'pass-with-suppressions' | 'findings';
|
|
154
|
-
suppressionSummary?: {
|
|
155
|
-
automaticSuppressionCount: number;
|
|
156
|
-
policyEscalationCount: number;
|
|
157
|
-
expiredCount: number;
|
|
158
|
-
invalidatedCount: number;
|
|
159
|
-
legacyUnadjudicatedCount: number;
|
|
160
|
-
};
|
|
161
|
-
findings: DiffGateFinding[];
|
|
162
|
-
attributionNotes: AttributionNote[];
|
|
163
|
-
evidenceTiers: DiffImpactEvidenceTierStatus[];
|
|
164
|
-
/** Root-cause review items derived from unsuppressed findings. */
|
|
165
|
-
rootCauseGroups?: DiffGateRootCauseGroup[];
|
|
166
|
-
/** Coverage of committed policy records consulted by this result. */
|
|
167
|
-
recordCompatibility?: {
|
|
168
|
-
suppressions: RecordCompatibilitySummary;
|
|
169
|
-
};
|
|
170
|
-
note?: string;
|
|
171
|
-
}
|
|
172
|
-
/**
|
|
173
|
-
* Slop prevention at the moment of creation: every detector, scoped to what
|
|
174
|
-
* THIS diff introduces. O(diff), no LLM calls, exit-code friendly — the
|
|
175
|
-
* leading-indicator companion to the repo-wide ratchet.
|
|
176
|
-
*
|
|
177
|
-
* Checks:
|
|
178
|
-
* - echo: a symbol this diff touched closely resembles
|
|
179
|
-
* established code elsewhere — likely re-implementation.
|
|
180
|
-
* - incomplete-migration: a helper added in this diff was wired into some
|
|
181
|
-
* sites, but similar un-migrated sites remain elsewhere
|
|
182
|
-
* — the extraction stopped partway.
|
|
183
|
-
* - co-change-partner: a changed file's strong historical partner is NOT in
|
|
184
|
-
* the diff — the change-graph contract says they move
|
|
185
|
-
* together (auto-derived sync enforcement).
|
|
186
|
-
* - twin-partner: (advisory, never fails the gate alone) a changed
|
|
187
|
-
* symbol has a same-(near-)name twin elsewhere that
|
|
188
|
-
* was identical or already-divergent and is NOT in
|
|
189
|
-
* the diff — a one-sided fix candidate.
|
|
190
|
-
* - coverage-contract: a configured `coverageContracts` entry drifted —
|
|
191
|
-
* its declared key set no longer matches its
|
|
192
|
-
* ground-truth source (enumeration rot).
|
|
193
|
-
* - architecture: a project-owned boundary rule now has a violation
|
|
194
|
-
* absent from the committed health baseline.
|
|
195
|
-
* - doc-reference: a doc cites a changed file but isn't updated in the
|
|
196
|
-
* diff — the drift starts here.
|
|
197
|
-
* - unused-params: changed files now contain trailing parameters no body
|
|
198
|
-
* uses — speculative generality landing fresh.
|
|
199
|
-
* - new-dead: changed symbols with zero indexed consumers — possibly
|
|
200
|
-
* a half-wired feature.
|
|
201
|
-
* - baseline: optional full health-baseline ratchet.
|
|
202
|
-
*/
|
|
203
|
-
declare function diffGate(db: ScipDatabase, opts?: {
|
|
204
|
-
base?: string;
|
|
205
|
-
minTogether?: number;
|
|
206
|
-
minConfidence?: number;
|
|
207
|
-
maxEchoChecks?: number;
|
|
208
|
-
maxHelpers?: number;
|
|
209
|
-
minSimilarity?: number;
|
|
210
|
-
includeBaseline?: boolean;
|
|
211
|
-
scanLimit?: number;
|
|
212
|
-
semantic?: boolean;
|
|
213
|
-
historyMode?: GitHistoryMode;
|
|
214
|
-
skip?: readonly DiffGateCheck[];
|
|
215
|
-
baseContentRuntime?: BaseContentGitRuntime;
|
|
216
|
-
}): DiffGateResult;
|
|
217
|
-
/**
|
|
218
|
-
* Findings that count toward the pass/fail decision. Advisory findings
|
|
219
|
-
* (currently: twin-partner) still print and are still suppressible, but a
|
|
220
|
-
* diff with only advisory findings must exit 0 — see the `advisory` field
|
|
221
|
-
* doc comment on `DiffGateFinding`.
|
|
222
|
-
*/
|
|
223
|
-
/**
|
|
224
|
-
* True when the gate could not run at all (git diff unavailable — e.g. a
|
|
225
|
-
* diff larger than the exec buffer, a bad --base ref, or git missing) and
|
|
226
|
-
* therefore ran zero checks. Consumers MUST fail closed on this: a gate
|
|
227
|
-
* that silently passes because it could not look is not a gate.
|
|
228
|
-
* Discovered on the 2026-07-01 Vega calibration run (8,099-file commit).
|
|
229
|
-
*/
|
|
230
|
-
declare function diffGateFailedClosed(result: DiffGateResult): boolean;
|
|
231
|
-
declare function diffGateFailureReason(result: DiffGateResult): string | undefined;
|
|
232
|
-
declare function blockingFindings(findings: readonly DiffGateFinding[]): DiffGateFinding[];
|
|
233
|
-
interface SymbolPreexistenceCheckerOptions {
|
|
234
|
-
projectRoot: string;
|
|
235
|
-
base: string;
|
|
236
|
-
diffPlan: DiffImpactPlan;
|
|
237
|
-
baseContentAt?: BaseContentReader;
|
|
238
|
-
}
|
|
239
|
-
declare function symbolPreexistenceChecker(options: SymbolPreexistenceCheckerOptions): (changedSymbol: {
|
|
240
|
-
symbol: string;
|
|
241
|
-
file: string;
|
|
242
|
-
}) => boolean;
|
|
243
|
-
/**
|
|
244
|
-
* @deprecated Use
|
|
245
|
-
* `symbolPreexistenceChecker({ projectRoot, base, diffPlan, baseContentAt })`
|
|
246
|
-
* so the project root and Git revision cannot be transposed.
|
|
247
|
-
*/
|
|
248
|
-
declare function symbolPreexistenceChecker(projectRoot: string, base: string, diffPlan: DiffImpactPlan, baseContentAt?: BaseContentReader): (changedSymbol: {
|
|
249
|
-
symbol: string;
|
|
250
|
-
file: string;
|
|
251
|
-
}) => boolean;
|
|
252
|
-
|
|
253
|
-
export { DIFF_GATE_CHECKS, DiffGateActionTier, DiffGateCheck, type DiffGateEvidence, type DiffGateFinding, type DiffGateResult, type DiffGateRootCauseGroup, type DiffGateSeverity, DocCitationKind, type SymbolPreexistenceCheckerOptions, blockingFindings, diffGate, diffGateFailedClosed, diffGateFailureReason, symbolPreexistenceChecker };
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{e as a,f as b,g as c,h as d,i as e,j as f}from"../chunk-RJT3TUUZ.js";import"../chunk-FKSELJQF.js";import"../chunk-KMKTIO2G.js";import"../chunk-PXY7F6Y4.js";import"../chunk-YLCJLTPL.js";import"../chunk-HX4GQPZP.js";import"../chunk-MKCDWWGV.js";import"../chunk-6YTSKJJ3.js";import"../chunk-6O5TICIZ.js";import"../chunk-N5W4YZMK.js";import"../chunk-EN3O7VJA.js";import"../chunk-MV7OWDUX.js";import"../chunk-EW2NTSFA.js";import"../chunk-7SQQWSY3.js";import"../chunk-FYLK2DEJ.js";import"../chunk-B2PX5I6M.js";import"../chunk-JVYA47YU.js";import"../chunk-ZHXX42OH.js";import"../chunk-QOKYJ33H.js";import"../chunk-GOUBFH5O.js";import"../chunk-6SHPK5ZE.js";import"../chunk-ZK26BAQL.js";import"../chunk-RUJURYSV.js";import"../chunk-ZTETIQ35.js";import"../chunk-Y2MVPNKY.js";import"../chunk-KMVGRIO2.js";import"../chunk-RXOXSKY3.js";import"../chunk-YTQVETEO.js";import"../chunk-QZ4JVECJ.js";import"../chunk-35NLDRZC.js";import"../chunk-UJCOIXDY.js";import"../chunk-26QA6FAI.js";import"../chunk-AQOFWNQJ.js";import"../chunk-DHEQMPLW.js";import"../chunk-B75HZHUP.js";import"../chunk-BGBBVSH4.js";import"../chunk-Z4N3MZYA.js";import"../chunk-7O5IKBTZ.js";import"../chunk-HX7M4BDI.js";import"../chunk-P5XHIJHI.js";import"../chunk-T7YQSHPQ.js";import"../chunk-7WPLAODU.js";import"../chunk-BS2NMXQZ.js";import"../chunk-C43RDDP4.js";import"../chunk-MTDBHTSF.js";import"../chunk-EKZTZXHZ.js";import"../chunk-UJPRPGCO.js";import"../chunk-GH74ASD6.js";import"../chunk-WCCFZ7V7.js";import"../chunk-NGEXCJJW.js";import"../chunk-7S5E7KWT.js";import"../chunk-2KAZEZ6M.js";import"../chunk-C3KV2II6.js";export{a as DIFF_GATE_CHECKS,e as blockingFindings,b as diffGate,c as diffGateFailedClosed,d as diffGateFailureReason,f as symbolPreexistenceChecker};
|
|
2
|
-
//# sourceMappingURL=diff-gate.js.map
|
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
# Committed record compatibility
|
|
2
|
-
|
|
3
|
-
scip-query stores two kinds of team-shared records in Git:
|
|
4
|
-
|
|
5
|
-
- `.scipquery/suppressions/*.json` contains accepted detector-policy
|
|
6
|
-
decisions.
|
|
7
|
-
- `.scipquery/events/*.json` contains immutable finding-transition
|
|
8
|
-
observations used by `effectiveness` and cross-HEAD repair verification.
|
|
9
|
-
|
|
10
|
-
A committed record is a repository-owned JSON fact or policy whose value
|
|
11
|
-
comes from surviving clones and branches. Unlike a local cache row, it cannot
|
|
12
|
-
be silently dropped and rebuilt when a reader does not understand it.
|
|
13
|
-
|
|
14
|
-
## Compatibility states
|
|
15
|
-
|
|
16
|
-
Every JSON candidate is classified exactly once:
|
|
17
|
-
|
|
18
|
-
| State | Meaning | Included in conclusions? |
|
|
19
|
-
| -------------------- | ----------------------------------------------------------------- | ------------------------ |
|
|
20
|
-
| `legacy` | A supported unversioned record from an earlier scip-query release | Yes |
|
|
21
|
-
| `current` | A record matching the current discriminator and schema | Yes |
|
|
22
|
-
| `unsupported-older` | A versioned record older than the supported overlap window | No |
|
|
23
|
-
| `unsupported-future` | A record written by a newer incompatible schema | No |
|
|
24
|
-
| `malformed` | Invalid JSON, fields, discriminator, metadata, or stable identity | No |
|
|
25
|
-
|
|
26
|
-
`complete` is true only when every candidate is `legacy` or `current`.
|
|
27
|
-
Readers return accepted records together with `total`, `accepted`, `omitted`,
|
|
28
|
-
the per-state counts, and path-specific issues. A subset may still support a
|
|
29
|
-
conservative result, but it must not be represented as complete.
|
|
30
|
-
|
|
31
|
-
## Current suppression records
|
|
32
|
-
|
|
33
|
-
New records conform to
|
|
34
|
-
[`schemas/suppression-record.schema.json`](schemas/suppression-record.schema.json).
|
|
35
|
-
They carry:
|
|
36
|
-
|
|
37
|
-
- `kind: "scip-query-suppression"`;
|
|
38
|
-
- `schemaVersion: 2`;
|
|
39
|
-
- the stable `suppressionIdentity`;
|
|
40
|
-
- producer name/version and creation/update timestamps;
|
|
41
|
-
- the exact suppression target and explanatory reason;
|
|
42
|
-
- a controlled adjudication reason code;
|
|
43
|
-
- inspectable counterevidence, including content hashes for file referents;
|
|
44
|
-
- the policy version, decision provenance, and invalidation conditions.
|
|
45
|
-
|
|
46
|
-
Current readers accept v1 and unversioned records as legacy policy so history
|
|
47
|
-
is not lost. Legacy records do not have enough mechanically checkable evidence
|
|
48
|
-
to authorize automatic acceptance: matching findings remain visible as policy
|
|
49
|
-
escalations until the record is explicitly replaced with a v2 decision.
|
|
50
|
-
Earlier readers classify v2 as unsupported-future and therefore fail closed
|
|
51
|
-
instead of silently treating the new evidence fields as optional. The filename
|
|
52
|
-
remains the conflict domain: different suppression identities merge as
|
|
53
|
-
different paths, while policy changes to one identity require revision-aware
|
|
54
|
-
replacement.
|
|
55
|
-
|
|
56
|
-
If a legacy, future, malformed, expired, or content-invalidated suppression
|
|
57
|
-
cannot pass current policy, it cannot waive a finding. `diff-gate` keeps the
|
|
58
|
-
matching finding unsuppressed and reports incomplete coverage or the exact
|
|
59
|
-
policy-escalation reason in JSON, human output, and Stop-hook feedback. A
|
|
60
|
-
successful gate that did accept one or more v2 decisions reports
|
|
61
|
-
`pass-with-suppressions`, preserving the difference between an ordinary clean
|
|
62
|
-
pass and an adjudicated exception.
|
|
63
|
-
|
|
64
|
-
## Current outcome-event records
|
|
65
|
-
|
|
66
|
-
New records conform to
|
|
67
|
-
[`schemas/outcome-event-record.schema.json`](schemas/outcome-event-record.schema.json).
|
|
68
|
-
They retain all semantic event fields at the root and add:
|
|
69
|
-
|
|
70
|
-
- `kind: "scip-query-outcome-event"`;
|
|
71
|
-
- `schemaVersion: 1`;
|
|
72
|
-
- `eventIdentity`, the JSON tuple of check, finding ID, transition, and
|
|
73
|
-
observed commit;
|
|
74
|
-
- producer name/version;
|
|
75
|
-
- `gateRunId`, the logical diff-gate observation shared by retries;
|
|
76
|
-
- observer kind and whether its authority is repository-writable or protected
|
|
77
|
-
externally;
|
|
78
|
-
- the index/worktree observation receipt;
|
|
79
|
-
- the adjudication policy version on suppressed transitions.
|
|
80
|
-
|
|
81
|
-
Keeping semantic fields at the root lets the immediately prior permissive
|
|
82
|
-
reader consume new records. Current readers accept both these v1 records and
|
|
83
|
-
the existing unversioned event files.
|
|
84
|
-
|
|
85
|
-
The immutable filename is still a timestamp plus a hash of the complete
|
|
86
|
-
record bytes. Deduplication does not use that path or producer metadata; it
|
|
87
|
-
uses the semantic `eventIdentity`. If legacy and current records describe the
|
|
88
|
-
same fact, comparable-base proof wins first, then protected/provenance-bearing
|
|
89
|
-
evidence, and then the earliest timestamp.
|
|
90
|
-
|
|
91
|
-
Observer kind says who originated the record: `local-agent`, `local-human`,
|
|
92
|
-
or `protected-ci`. Observer authority says what conclusion the record can
|
|
93
|
-
support. Both local kinds remain `repository-writable`, because the observer
|
|
94
|
-
can edit the same event and suppression files being measured.
|
|
95
|
-
`protected-external` is accepted only with `protected-ci` records produced by
|
|
96
|
-
a separately controlled evaluator and a gate-run attestation delivered
|
|
97
|
-
outside the writable event directory; a record field cannot attest itself
|
|
98
|
-
and ordinary CLI environment settings cannot mint that authority.
|
|
99
|
-
|
|
100
|
-
## Partial history is conservative
|
|
101
|
-
|
|
102
|
-
`effectiveness --json` includes
|
|
103
|
-
`recordCompatibility.outcomeEvents`. Human output prints the same incomplete
|
|
104
|
-
coverage counts before any metrics. Metrics use only accepted records and are
|
|
105
|
-
therefore explicitly partial when `complete` is false.
|
|
106
|
-
|
|
107
|
-
`effectiveness` calls the ordinary local ratio
|
|
108
|
-
`resolutionVsSuppressionRate`. It publishes `precision` only when every event
|
|
109
|
-
in the evaluated population claims protected external authority and its
|
|
110
|
-
gate-run ID appears in a separately supplied attestation set. Mixed,
|
|
111
|
-
unattested, repository-writable, and legacy populations remain telemetry and
|
|
112
|
-
carry a null precision field. Provenance gaps, unattested authority claims,
|
|
113
|
-
mixed authority, missing gate-run identity, and anomalous suppression rates
|
|
114
|
-
produce bounded sample reports, not a mandatory per-suppression human queue.
|
|
115
|
-
Git preserves history that is present; deleting an event file cannot be
|
|
116
|
-
detected from the remaining directory, so the command never describes
|
|
117
|
-
repository-local totals as an independent grade.
|
|
118
|
-
|
|
119
|
-
Cross-HEAD repair verification needs complete committed history to establish
|
|
120
|
-
the prior lifecycle anchor. If any event candidate is incompatible, scip-query
|
|
121
|
-
retains every missing local-ledger finding and defers resolution. An omitted
|
|
122
|
-
record can therefore delay a verified fix, but it cannot manufacture one.
|
|
123
|
-
|
|
124
|
-
## Legacy JSONL migration
|
|
125
|
-
|
|
126
|
-
`.scipquery/ledger/events.jsonl` remains readable during the overlap window.
|
|
127
|
-
On the next event append:
|
|
128
|
-
|
|
129
|
-
1. every non-empty line is classified;
|
|
130
|
-
2. compatible lines are copied to independent current event files;
|
|
131
|
-
3. new observations are appended normally;
|
|
132
|
-
4. the legacy ledger and its `merge=union` attribute are removed only if
|
|
133
|
-
every line was compatible.
|
|
134
|
-
|
|
135
|
-
If even one line is unsupported or malformed, the original ledger stays
|
|
136
|
-
byte-for-byte present and the append reports a warning. Repeating the append
|
|
137
|
-
is safe: exclusive content-addressed event creation makes already-copied rows
|
|
138
|
-
idempotent. Upgrade scip-query or repair the named malformed line before
|
|
139
|
-
removing the legacy ledger.
|
|
140
|
-
|
|
141
|
-
## Merge and rollback rules
|
|
142
|
-
|
|
143
|
-
- Commit suppression and event files with the code or documentation change
|
|
144
|
-
that produced them.
|
|
145
|
-
- Do not rewrite all legacy files just to make compatibility counters
|
|
146
|
-
“current.” Read overlap is the migration mechanism.
|
|
147
|
-
- Resolve a same-suppression-path conflict by reviewing both policy decisions;
|
|
148
|
-
never choose a side mechanically.
|
|
149
|
-
- Independent event files should normally keep both sides of a merge.
|
|
150
|
-
- Do not delete an unsupported record to make a warning disappear. Use a
|
|
151
|
-
reader that supports it, or deliberately migrate it with verified tooling.
|
|
152
|
-
- Rolling back remains fail-closed: older readers reject v2 suppressions as
|
|
153
|
-
unsupported-future, so they cannot accidentally waive a finding using a
|
|
154
|
-
policy they do not understand.
|