scip-query 0.24.0 → 0.26.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 +247 -1
- package/README.md +111 -124
- package/dist/augment-vue-worker.js +1 -1
- package/dist/by-kind-PRVFAGTQ.js +2 -0
- package/dist/call-graph-DVPAQV2F.js +2 -0
- package/dist/{call-graph-evidence-BociKRpF.d.ts → call-graph-evidence-CUtj8V2I.d.ts} +1 -1
- package/dist/chunk-2FSBGL5P.js +2 -0
- package/dist/chunk-2HLAFUCY.js +2 -0
- package/dist/chunk-2IWUT6CJ.js +3 -0
- package/dist/chunk-2KNN7GTQ.js +2 -0
- package/dist/chunk-2LHXRE2B.js +8 -0
- package/dist/{chunk-E65ELFKU.js → chunk-2YXE77TJ.js} +2 -2
- package/dist/chunk-36SGVCGX.js +2 -0
- package/dist/chunk-3ABBFPTP.js +2 -0
- package/dist/chunk-3IVFU4FD.js +3 -0
- package/dist/chunk-3JIQS44J.js +7 -0
- package/dist/chunk-3ZRB6DNK.js +7 -0
- package/dist/{chunk-6YTSKJJ3.js → chunk-42EOW5VI.js} +1 -1
- package/dist/{chunk-BHKK5RJY.js → chunk-4BHGBMNO.js} +2 -2
- package/dist/chunk-4BP3UBDG.js +2 -0
- package/dist/chunk-4D6RO7G4.js +2 -0
- package/dist/chunk-4FEWQ6RH.js +2 -0
- package/dist/chunk-4IGEOBG7.js +2 -0
- package/dist/chunk-4QZXBUKC.js +2 -0
- package/dist/chunk-4WBDEVX2.js +4 -0
- package/dist/chunk-4WCUBZU3.js +8 -0
- package/dist/chunk-4WTUBQ36.js +40 -0
- package/dist/chunk-4XQ4O6IM.js +3 -0
- package/dist/chunk-55UQAMZO.js +4 -0
- package/dist/chunk-5D2LVK7O.js +125 -0
- package/dist/chunk-5IYJ56TT.js +2 -0
- package/dist/chunk-5PLMJC7Q.js +2 -0
- package/dist/chunk-5TNQJUR2.js +5 -0
- package/dist/chunk-62BDNPMI.js +2 -0
- package/dist/chunk-64DZ5TXR.js +7 -0
- package/dist/chunk-65245JCM.js +2 -0
- package/dist/chunk-6FFVZZL4.js +2 -0
- package/dist/chunk-6KO5JHAR.js +2 -0
- package/dist/chunk-6LRXOOSX.js +2 -0
- package/dist/chunk-6LSEIIF7.js +2 -0
- package/dist/chunk-6YMNWD3H.js +6 -0
- package/dist/chunk-72AD6ZRR.js +5 -0
- package/dist/chunk-73AAKPUC.js +4 -0
- package/dist/chunk-76CZ77DF.js +2 -0
- package/dist/chunk-7VPEEAAG.js +2 -0
- package/dist/chunk-7WTPQ4NX.js +14 -0
- package/dist/chunk-7Y5T6XDP.js +2 -0
- package/dist/chunk-A2IIGFMJ.js +5 -0
- package/dist/chunk-AB5KCTEV.js +2 -0
- package/dist/chunk-AC566WBP.js +6 -0
- package/dist/chunk-AGWFSTXC.js +3 -0
- package/dist/chunk-AOSIYPTA.js +2 -0
- package/dist/chunk-AUVEWPIF.js +2 -0
- package/dist/chunk-B56T42J3.js +25 -0
- package/dist/chunk-BIQEF5NE.js +2 -0
- package/dist/chunk-BL6XJKTA.js +3 -0
- package/dist/chunk-BMKOQJRI.js +2 -0
- package/dist/chunk-BOZ4EXBB.js +3 -0
- package/dist/chunk-BUTWYEPH.js +2 -0
- package/dist/chunk-BZB4QPIP.js +2 -0
- package/dist/{chunk-6ILKOOGH.js → chunk-CE357GEE.js} +4 -4
- package/dist/chunk-CFN45HFP.js +2 -0
- package/dist/chunk-CFYMZFXT.js +368 -0
- package/dist/chunk-CN5EH7O3.js +2 -0
- package/dist/chunk-D254DNNQ.js +4 -0
- package/dist/chunk-D3FDISIC.js +2 -0
- package/dist/chunk-D3NX5XIE.js +3 -0
- package/dist/chunk-DA7RPPDF.js +3 -0
- package/dist/chunk-DDMC3FON.js +3 -0
- package/dist/chunk-DIO3FUSG.js +2 -0
- package/dist/chunk-DJ2NNSUK.js +3 -0
- package/dist/chunk-DKYQIM3C.js +18 -0
- package/dist/{chunk-OHIV323X.js → chunk-DOOEL2IV.js} +2 -2
- package/dist/chunk-DVFP6PZI.js +2 -0
- package/dist/chunk-E3FDPXZK.js +2 -0
- package/dist/chunk-E7YNJLCB.js +2 -0
- package/dist/chunk-EFGW5JPH.js +2 -0
- package/dist/chunk-EJVTR244.js +13 -0
- package/dist/chunk-EOV7RTRZ.js +2 -0
- package/dist/chunk-ETOIKRHO.js +2 -0
- package/dist/chunk-EYK3ZAO2.js +3 -0
- package/dist/chunk-F2V2LPET.js +52 -0
- package/dist/chunk-F4LUHJTF.js +2 -0
- package/dist/chunk-F4PUT6IT.js +2 -0
- package/dist/chunk-F56GCXXS.js +5 -0
- package/dist/chunk-FC2EVQRM.js +2 -0
- package/dist/chunk-FL7NBMHP.js +3 -0
- package/dist/chunk-FMRN2TRL.js +3 -0
- package/dist/chunk-FVULPZDF.js +20 -0
- package/dist/chunk-GCKCF5FL.js +43 -0
- package/dist/chunk-GH2PYF46.js +2 -0
- package/dist/chunk-GHJAGXIP.js +2 -0
- package/dist/{chunk-2GJSD5GY.js → chunk-GMVSHUKZ.js} +2 -2
- package/dist/chunk-GS6KDO4R.js +2 -0
- package/dist/chunk-GUUBXNN7.js +2 -0
- package/dist/chunk-GVWX5T43.js +80 -0
- package/dist/chunk-GZKFETP5.js +2 -0
- package/dist/chunk-H4EQHO6J.js +9 -0
- package/dist/chunk-H73WY2RM.js +2 -0
- package/dist/chunk-H75GSPRV.js +60 -0
- package/dist/chunk-HDR3AHSV.js +61 -0
- package/dist/chunk-HQBSL74Y.js +2 -0
- package/dist/chunk-HRRFKWPZ.js +2 -0
- package/dist/chunk-HXENDJC6.js +2 -0
- package/dist/chunk-IIBAZNSW.js +21 -0
- package/dist/chunk-INLMWEUU.js +12 -0
- package/dist/chunk-IWQPAF4F.js +2 -0
- package/dist/chunk-IZJ6YUKP.js +35 -0
- package/dist/chunk-J2TMAIN5.js +60 -0
- package/dist/chunk-J5FJMODQ.js +142 -0
- package/dist/chunk-J7HZPIO3.js +2 -0
- package/dist/chunk-JEVRKFRL.js +2 -0
- package/dist/chunk-JFXSGAEB.js +30 -0
- package/dist/chunk-JVRTHGFS.js +3 -0
- package/dist/chunk-JYWEX7RR.js +360 -0
- package/dist/chunk-K3YL22N6.js +2 -0
- package/dist/chunk-K4CN7GXK.js +12 -0
- package/dist/chunk-K5TBVXU4.js +30 -0
- package/dist/chunk-KDDIE2DP.js +9 -0
- package/dist/chunk-KHWRRPV4.js +2 -0
- package/dist/chunk-KI6NBKDY.js +14 -0
- package/dist/chunk-KU3QRSTH.js +2 -0
- package/dist/chunk-KZBJWZJB.js +2 -0
- package/dist/chunk-L7GFM3NP.js +3 -0
- package/dist/chunk-LMO6PK3V.js +35 -0
- package/dist/chunk-LN4YXJJU.js +2 -0
- package/dist/chunk-LOVIZBJ4.js +43 -0
- package/dist/chunk-LPCRK4A2.js +11 -0
- package/dist/chunk-MMHZKBFA.js +2 -0
- package/dist/{chunk-A4WEAK35.js → chunk-MOQQBQRD.js} +2 -2
- package/dist/chunk-N2WN6I3L.js +2 -0
- package/dist/chunk-N3ORQT7L.js +2 -0
- package/dist/chunk-NAZ3RAIW.js +2 -0
- package/dist/chunk-NDUNO5JQ.js +2 -0
- package/dist/chunk-NEIWRNAZ.js +4 -0
- package/dist/chunk-NJJMVD65.js +2 -0
- package/dist/chunk-NLOQOBXI.js +20 -0
- package/dist/chunk-NOLZOVCU.js +2 -0
- package/dist/chunk-NOWINRRN.js +2 -0
- package/dist/chunk-NZAXKGRL.js +16 -0
- package/dist/chunk-O2C4UILI.js +2 -0
- package/dist/chunk-O3RHA6ZT.js +3 -0
- package/dist/chunk-O4UZSPPI.js +3 -0
- package/dist/chunk-OGFV2BUX.js +2 -0
- package/dist/chunk-OZCJXZK6.js +499 -0
- package/dist/chunk-P6ODM7BY.js +2 -0
- package/dist/{chunk-GHNPACNP.js → chunk-PAVGPRHJ.js} +2 -2
- package/dist/chunk-PH52RA7D.js +2 -0
- package/dist/chunk-PKN354TH.js +3 -0
- package/dist/chunk-PWOASWEG.js +11 -0
- package/dist/chunk-QIWXRW72.js +2 -0
- package/dist/chunk-QJRMOK5N.js +2 -0
- package/dist/{chunk-YXPUP5G2.js → chunk-QOIXNWQR.js} +2 -2
- package/dist/chunk-QXEUDXBT.js +3 -0
- package/dist/chunk-QYUVVBMR.js +6 -0
- package/dist/chunk-QZ7KQZRN.js +2 -0
- package/dist/chunk-R6LQBUDH.js +2 -0
- package/dist/chunk-RBS42E55.js +20 -0
- package/dist/chunk-RSJKPCFX.js +26 -0
- package/dist/chunk-S6CZA3MV.js +2 -0
- package/dist/chunk-STMVAHJP.js +2 -0
- package/dist/chunk-SYVPTTVW.js +2 -0
- package/dist/chunk-T6DK3ZP7.js +2 -0
- package/dist/chunk-TKD34PHN.js +4 -0
- package/dist/chunk-TNNQFH7W.js +2 -0
- package/dist/chunk-TNV7SSUF.js +2 -0
- package/dist/chunk-TO7ZR3EH.js +8 -0
- package/dist/chunk-TOU3CHK4.js +2 -0
- package/dist/chunk-TRBI4UKT.js +2 -0
- package/dist/chunk-TZCVNCAN.js +4 -0
- package/dist/chunk-U4LZA5LL.js +3 -0
- package/dist/chunk-U5RIG3JP.js +3 -0
- package/dist/chunk-UP5KXN2I.js +2 -0
- package/dist/chunk-UQFR3NDH.js +5 -0
- package/dist/chunk-UXYXF7GV.js +2 -0
- package/dist/chunk-VB3GOKOS.js +2 -0
- package/dist/{chunk-4FR6GQIT.js → chunk-VF5JZICY.js} +2 -2
- package/dist/chunk-VTY3VK6E.js +2 -0
- package/dist/chunk-VX2O4RIS.js +2 -0
- package/dist/chunk-WKPV2TDZ.js +2 -0
- package/dist/chunk-WOFQ5DTB.js +2 -0
- package/dist/chunk-WS4C6TCK.js +2 -0
- package/dist/chunk-WXU3DGPU.js +2 -0
- package/dist/{chunk-ATXPTSEI.js → chunk-X6RMKHJQ.js} +7 -7
- package/dist/{chunk-44IETFOU.js → chunk-XHMN6ZX7.js} +2 -2
- package/dist/chunk-XHTVFLWW.js +2 -0
- package/dist/chunk-XKIDJCIK.js +2 -0
- package/dist/chunk-XTYTYZPT.js +2 -0
- package/dist/chunk-Y2JHHTTA.js +2 -0
- package/dist/chunk-YGVRMGYN.js +4 -0
- package/dist/chunk-YNQCGEQE.js +2 -0
- package/dist/chunk-YOQVEXVE.js +14 -0
- package/dist/chunk-YRT2WLYY.js +2 -0
- package/dist/chunk-YTAP5Y2G.js +2 -0
- package/dist/chunk-YTYWI7VB.js +2 -0
- package/dist/chunk-YULZRALL.js +2 -0
- package/dist/chunk-Z33WQG4Q.js +2 -0
- package/dist/chunk-ZGTYGDMF.js +16 -0
- package/dist/chunk-ZHMRSZFD.js +43 -0
- package/dist/chunk-ZHSP366W.js +10 -0
- package/dist/chunk-ZIBYCYKK.js +7 -0
- package/dist/chunk-ZLADLUE6.js +3 -0
- package/dist/chunk-ZO4YXUT6.js +4 -0
- package/dist/{chunk-MZPXPSUJ.js → chunk-ZR4HBC2H.js} +2 -2
- package/dist/cli-main.js +6 -6
- package/dist/cli.js +1 -1
- package/dist/{code-B17qEMbt.d.ts → code-BNyrCF3_.d.ts} +3 -2
- package/dist/code-IL5WH3NZ.js +2 -0
- package/dist/code-result-json-ANTBEDFP.js +4 -0
- package/dist/command-descriptors-HEEMDHTU.js +222 -0
- package/dist/deps-EOWFC6FD.js +2 -0
- package/dist/direct-navigation-Y5B6OSIQ.js +3 -0
- package/dist/{exploration-topology-BG4v30HZ.d.ts → exploration-topology-CSgEyAz-.d.ts} +3 -1
- package/dist/files-K4AI3JUM.js +2 -0
- package/dist/{health-BI2a9WPy.d.ts → health-BtfmNrfa.d.ts} +5 -79
- package/dist/hierarchy-6W5NDIFI.js +2 -0
- package/dist/imports-WH365QY4.js +2 -0
- package/dist/index.d.ts +13 -1
- package/dist/index.js +1 -1
- package/dist/members-K3PHMF5S.js +2 -0
- package/dist/methods-E7KVMBX4.js +2 -0
- package/dist/output-continuation-command-BJSY67SN.js +3 -0
- package/dist/output-pagination-UZJ5ACIX.js +24 -0
- package/dist/postinstall.js +1 -1
- package/dist/project-reindex-EP24WT4X.js +3 -0
- package/dist/queries/affected.js +1 -1
- package/dist/queries/architecture.d.ts +15 -4
- package/dist/queries/architecture.js +1 -1
- package/dist/queries/bottlenecks.js +1 -1
- package/dist/queries/by-kind.js +1 -1
- package/dist/queries/call-graph.d.ts +1 -1
- package/dist/queries/call-graph.js +1 -1
- package/dist/queries/change-surface.d.ts +1 -0
- package/dist/queries/change-surface.js +1 -1
- package/dist/queries/cleanup-plan.d.ts +3 -3
- package/dist/queries/cleanup-plan.js +1 -1
- package/dist/queries/co-change.js +1 -1
- package/dist/queries/code.d.ts +1 -1
- package/dist/queries/code.js +1 -1
- package/dist/queries/complexity.d.ts +6 -3
- package/dist/queries/complexity.js +1 -1
- package/dist/queries/context.d.ts +1 -7
- package/dist/queries/context.js +1 -1
- package/dist/queries/coupling.js +1 -1
- package/dist/queries/cycles.js +1 -1
- package/dist/queries/dead.js +1 -1
- package/dist/queries/decorative-checkers.js +1 -1
- package/dist/queries/dependence-slice.d.ts +46 -22
- package/dist/queries/dependence-slice.js +1 -1
- package/dist/queries/dependency-depth.d.ts +1 -7
- package/dist/queries/dependency-depth.js +1 -1
- package/dist/queries/deps.js +1 -1
- package/dist/queries/diff-impact.d.ts +3 -1
- package/dist/queries/diff-impact.js +1 -1
- package/dist/queries/doc-drift.js +1 -1
- package/dist/queries/drift.d.ts +1 -1
- package/dist/queries/drift.js +1 -1
- package/dist/queries/duplicate-bodies.d.ts +1 -1
- package/dist/queries/duplicate-bodies.js +1 -1
- package/dist/queries/entry-map.d.ts +2 -4
- package/dist/queries/entry-map.js +1 -1
- package/dist/queries/evidence.d.ts +121 -61
- package/dist/queries/evidence.js +1 -1
- package/dist/queries/fan.js +1 -1
- package/dist/queries/files.js +1 -1
- package/dist/queries/health.d.ts +1 -1
- package/dist/queries/health.js +1 -1
- package/dist/queries/hierarchy.d.ts +2 -2
- package/dist/queries/hierarchy.js +1 -1
- package/dist/queries/hotspots.d.ts +1 -1
- package/dist/queries/hotspots.js +1 -1
- package/dist/queries/imports.d.ts +1 -0
- package/dist/queries/imports.js +1 -1
- package/dist/queries/incomplete-migration.d.ts +3 -3
- package/dist/queries/incomplete-migration.js +1 -1
- package/dist/queries/index.d.ts +15 -64
- package/dist/queries/index.js +1 -1
- package/dist/queries/locality-candidates.d.ts +4 -4
- 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.js +1 -1
- package/dist/queries/not-implemented.d.ts +2 -6
- package/dist/queries/not-implemented.js +1 -1
- package/dist/queries/outline.js +1 -1
- package/dist/queries/passthrough-candidates.js +1 -1
- package/dist/queries/react-component-duplicates.js +1 -1
- package/dist/queries/react-hook-candidates.js +1 -1
- package/dist/queries/react-large-component-pressure.js +1 -1
- package/dist/queries/recent-duplicates.js +1 -1
- package/dist/queries/redundant-reexports.d.ts +4 -14
- package/dist/queries/redundant-reexports.js +1 -1
- package/dist/queries/refs.d.ts +4 -1
- package/dist/queries/refs.js +1 -1
- package/dist/queries/review.d.ts +188 -0
- package/dist/queries/review.js +2 -0
- package/dist/queries/similar-files.d.ts +7 -10
- package/dist/queries/similar-files.js +1 -1
- package/dist/queries/similar-signatures.js +1 -1
- package/dist/queries/similar.d.ts +19 -1
- package/dist/queries/similar.js +1 -1
- package/dist/queries/slice-cohesion.d.ts +205 -0
- package/dist/queries/slice-cohesion.js +2 -0
- package/dist/queries/source-inspection.d.ts +6 -202
- package/dist/queries/source-inspection.js +1 -1
- package/dist/queries/source-search.d.ts +2 -3
- package/dist/queries/source-search.js +1 -1
- package/dist/queries/stats.d.ts +1 -0
- package/dist/queries/stats.js +1 -1
- package/dist/queries/surface.js +1 -1
- package/dist/queries/symbols.js +1 -1
- package/dist/queries/system.d.ts +4 -2
- package/dist/queries/system.js +1 -1
- package/dist/queries/test-quality.d.ts +1 -1
- package/dist/queries/test-quality.js +1 -1
- package/dist/queries/twin-drift.d.ts +1 -1
- package/dist/queries/twin-drift.js +1 -1
- package/dist/queries/unused-imports.js +1 -1
- package/dist/queries/unused-params.d.ts +3 -15
- package/dist/queries/unused-params.js +1 -1
- package/dist/queries/vue-component-duplicates.js +1 -1
- package/dist/queries/vue-composable-candidates.js +1 -1
- package/dist/queries/vue-large-view-pressure.js +1 -1
- package/dist/query-service-fastpath.js +5 -5
- package/dist/query-service-server.js +4 -4
- package/dist/refs-CCBJG7WK.js +2 -0
- package/dist/refs-pagination-DRNLVU4S.js +2 -0
- package/dist/reindex-worker.js +79 -29
- package/dist/reindex.js +45 -45
- package/dist/repository-cache-worker.js +2 -0
- package/dist/runtime.d.ts +8 -8
- package/dist/runtime.js +3 -4
- 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/service-queries-2WAJI7R6.js +6 -0
- package/dist/source-inspection-91U9zdO3.d.ts +341 -0
- package/dist/{source-search-types-Dwz8KeuW.d.ts → source-search-types-DWGYNg8M.d.ts} +15 -2
- package/dist/stats-G7DIV6VU.js +2 -0
- package/dist/surface-IO55UALI.js +2 -0
- package/dist/system-ZBMSHJXU.js +2 -0
- package/dist/{queries/trace.d.ts → trace-BMjw3prn.d.ts} +1 -18
- package/dist/typescript-indexer.js +2 -0
- package/dist/typescript-mailbox-worker.js +1 -1
- package/dist/watch-server.js +3 -3
- package/docs/AGENT_GUIDE.md +19 -128
- package/docs/CLI_JSON_OUTPUT.md +21 -17
- package/docs/COMMAND_REFERENCE.md +34 -49
- package/docs/CURRENT_COMMANDS.md +123 -0
- package/docs/DETECTOR_EVIDENCE_CONTRACTS.md +0 -40
- package/docs/DETECTOR_GUIDE.md +27 -23
- package/docs/PRODUCT_VISION.md +135 -0
- package/docs/PROPERTY_TESTING.md +73 -0
- package/docs/REVIEW.md +76 -0
- package/docs/SKILLS.md +51 -0
- package/docs/WINDOWS_SIDECAR_RELEASE.md +12 -3
- package/docs/accuracy-audit-checklist.md +34 -0
- package/docs/analyzer-inventory.md +2 -2
- package/package.json +18 -80
- package/scripts/evidence-product-contract.mjs +7 -3
- package/scripts/record-review-coverage.mjs +118 -0
- package/scripts/scip-windows-provenance.mjs +29 -19
- package/skills/scip-architecture-review/SKILL.md +57 -0
- package/skills/scip-architecture-review/agents/openai.yaml +4 -0
- package/skills/scip-architecture-review/references/design-checks.md +17 -0
- package/skills/scip-explore/SKILL.md +15 -59
- package/skills/scip-explore/agents/openai.yaml +3 -3
- package/skills/scip-explore/references/external-evidence.md +2 -2
- package/skills/scip-explore/references/information-model.md +26 -29
- package/skills/scip-explore/scripts/capture-evidence.mjs +68 -34
- package/skills/scip-integrity-audit/SKILL.md +53 -181
- package/skills/scip-integrity-audit/agents/openai.yaml +3 -3
- package/skills/scip-integrity-audit/references/integrity-probes.md +27 -0
- package/skills/scip-plan/SKILL.md +39 -65
- package/skills/scip-plan/agents/openai.yaml +2 -2
- package/skills/scip-query/SKILL.md +28 -81
- package/skills/scip-query/agents/openai.yaml +2 -2
- package/skills/scip-query/references/command-guide.md +169 -0
- package/skills/scip-setup/SKILL.md +4 -2
- package/skills/scip-setup/agents/openai.yaml +3 -3
- package/dist/by-kind-H3P6BR5G.js +0 -2
- package/dist/call-graph-VTG2CUOQ.js +0 -2
- package/dist/chunk-26CT72HM.js +0 -2
- package/dist/chunk-2BMSSRBH.js +0 -2
- package/dist/chunk-2M2LSIMY.js +0 -7
- package/dist/chunk-2N6WBNDC.js +0 -29
- package/dist/chunk-2OOY75BW.js +0 -2
- package/dist/chunk-2USA3S3P.js +0 -3
- package/dist/chunk-2VAHDDLM.js +0 -133
- package/dist/chunk-2XWIUW5Z.js +0 -455
- package/dist/chunk-35NLDRZC.js +0 -2
- package/dist/chunk-3AF4TUFK.js +0 -3
- package/dist/chunk-3D4BOXW6.js +0 -20
- package/dist/chunk-3LO4FST5.js +0 -16
- package/dist/chunk-3WTY4LP2.js +0 -3
- package/dist/chunk-3Z5AMSK6.js +0 -29
- package/dist/chunk-4KBTHJLP.js +0 -2
- package/dist/chunk-5BIKR67W.js +0 -2
- package/dist/chunk-5PROPLHI.js +0 -2
- package/dist/chunk-5V7EPTII.js +0 -2
- package/dist/chunk-62LPZCBQ.js +0 -3
- package/dist/chunk-64O2JHQA.js +0 -2
- package/dist/chunk-6D4F5VWG.js +0 -10
- package/dist/chunk-6ERFBC3X.js +0 -3
- package/dist/chunk-6MFXCMZC.js +0 -2
- package/dist/chunk-6O7FACKB.js +0 -2
- package/dist/chunk-6TS3KOXR.js +0 -2
- package/dist/chunk-76QOU4PK.js +0 -3
- package/dist/chunk-7DUI77BN.js +0 -2
- package/dist/chunk-7F45LJKI.js +0 -2
- package/dist/chunk-7F7T6DCR.js +0 -2
- package/dist/chunk-7H6VHWWJ.js +0 -2
- package/dist/chunk-7HXT6YLU.js +0 -5
- package/dist/chunk-7KCZELVM.js +0 -2
- package/dist/chunk-7R4V5ES6.js +0 -6
- package/dist/chunk-7RIRIADH.js +0 -7
- package/dist/chunk-7ZLWLOGT.js +0 -2
- package/dist/chunk-AADQLOQ4.js +0 -38
- package/dist/chunk-AN76MGUE.js +0 -2
- package/dist/chunk-ANLNLY66.js +0 -2
- package/dist/chunk-AX7IDVFT.js +0 -2
- package/dist/chunk-B3X6KU75.js +0 -2
- package/dist/chunk-B7MPDEAK.js +0 -3
- package/dist/chunk-BBB5FBX4.js +0 -2
- package/dist/chunk-BJT7LSPK.js +0 -3
- package/dist/chunk-BJWFVAA5.js +0 -2
- package/dist/chunk-BKVWUP7Y.js +0 -2
- package/dist/chunk-BKZYTLGE.js +0 -35
- package/dist/chunk-BL6DCHQP.js +0 -2
- package/dist/chunk-BOW7SSQH.js +0 -43
- package/dist/chunk-C4RHHCKL.js +0 -7
- package/dist/chunk-C7C6AKAT.js +0 -117
- package/dist/chunk-CD6M6LS2.js +0 -16
- package/dist/chunk-CFE6PSG6.js +0 -2
- package/dist/chunk-CFNIGQMT.js +0 -2
- package/dist/chunk-CKBUBRYD.js +0 -2
- package/dist/chunk-CZW5MZ5B.js +0 -2
- package/dist/chunk-DBBZ63ZX.js +0 -2
- package/dist/chunk-DBN7DMJB.js +0 -18
- package/dist/chunk-DUULLZHZ.js +0 -3
- package/dist/chunk-DV5Y5NOS.js +0 -2
- package/dist/chunk-DZOIKCTM.js +0 -3
- package/dist/chunk-E4PKTOL3.js +0 -2
- package/dist/chunk-E7QR35ST.js +0 -2
- package/dist/chunk-EFSXAINW.js +0 -2
- package/dist/chunk-EHVEIEQN.js +0 -18
- package/dist/chunk-EHYDXE3Z.js +0 -2
- package/dist/chunk-EP63Y6LD.js +0 -2
- package/dist/chunk-EPX6NQN6.js +0 -4
- package/dist/chunk-ETC674NS.js +0 -5
- package/dist/chunk-F5GSBHC6.js +0 -3
- package/dist/chunk-FH3DGXC6.js +0 -2
- package/dist/chunk-FI7VGOR4.js +0 -16
- package/dist/chunk-FJF6VO2P.js +0 -2
- package/dist/chunk-FLMTCX5R.js +0 -2
- package/dist/chunk-FVFDOIM3.js +0 -2
- package/dist/chunk-G2HU5WRN.js +0 -2
- package/dist/chunk-G4ALYS4J.js +0 -2
- package/dist/chunk-G56I7K4W.js +0 -26
- package/dist/chunk-GC4DG2V5.js +0 -2
- package/dist/chunk-GG45PK4S.js +0 -4
- package/dist/chunk-GINH3YQU.js +0 -20
- package/dist/chunk-GTZZVLKJ.js +0 -2
- package/dist/chunk-GXXW5ZHH.js +0 -2
- package/dist/chunk-H5EXS3HM.js +0 -2
- package/dist/chunk-HAXXKRTD.js +0 -4
- package/dist/chunk-HEZWBAZY.js +0 -2
- package/dist/chunk-HMEWLMML.js +0 -2
- package/dist/chunk-HOBOVYPO.js +0 -11
- package/dist/chunk-HRFQ6GW5.js +0 -8
- package/dist/chunk-HX4X7KG3.js +0 -2
- package/dist/chunk-HYT2R7LX.js +0 -4
- package/dist/chunk-IKQVBVQL.js +0 -40
- package/dist/chunk-IW5XQG5G.js +0 -2
- package/dist/chunk-J6GLBBRK.js +0 -4
- package/dist/chunk-J7A4PWFX.js +0 -3
- package/dist/chunk-JCSAZ35V.js +0 -2
- package/dist/chunk-JDU2IV3A.js +0 -2
- package/dist/chunk-JFMEXGFE.js +0 -2
- package/dist/chunk-JFMI5SGB.js +0 -4
- package/dist/chunk-JJP37RGX.js +0 -57
- package/dist/chunk-JZ2A7LDM.js +0 -5
- package/dist/chunk-KMVGRIO2.js +0 -2
- package/dist/chunk-KNLQGXVH.js +0 -80
- package/dist/chunk-KVQCECPR.js +0 -2
- package/dist/chunk-KXXORBZ2.js +0 -4
- package/dist/chunk-L5KYH6U3.js +0 -35
- package/dist/chunk-L6XHYJPZ.js +0 -21
- package/dist/chunk-L7KTFEAV.js +0 -43
- package/dist/chunk-LDXHR5EL.js +0 -23
- package/dist/chunk-LEECKFCJ.js +0 -2
- package/dist/chunk-MHGDSBFX.js +0 -2
- package/dist/chunk-MLQVVDG3.js +0 -74
- package/dist/chunk-MOKUWRHO.js +0 -3
- package/dist/chunk-MPYAPMNE.js +0 -2
- package/dist/chunk-MTDBHTSF.js +0 -2
- package/dist/chunk-MV6SPXCR.js +0 -7
- package/dist/chunk-MWN53KRN.js +0 -60
- package/dist/chunk-MXNGIEPU.js +0 -3
- package/dist/chunk-N55KIE46.js +0 -2
- package/dist/chunk-NB4D3BNM.js +0 -2
- package/dist/chunk-NGKBOT6G.js +0 -23
- package/dist/chunk-NJGKXKQF.js +0 -2
- package/dist/chunk-NJQISBL4.js +0 -8
- package/dist/chunk-NJT3ZEKY.js +0 -16
- package/dist/chunk-NKMKZP6A.js +0 -2
- package/dist/chunk-NODFZ6ED.js +0 -2
- package/dist/chunk-NSM5IEVW.js +0 -2
- package/dist/chunk-NTGUVNR2.js +0 -3
- package/dist/chunk-NU3KFF2O.js +0 -57
- package/dist/chunk-NWLVNU66.js +0 -557
- package/dist/chunk-NYKZMCRC.js +0 -4
- package/dist/chunk-O6BUXZEH.js +0 -6
- package/dist/chunk-ODPDP7A4.js +0 -3
- package/dist/chunk-OIAPEKMT.js +0 -3
- package/dist/chunk-OIOC5EHF.js +0 -3
- package/dist/chunk-ONPPQM4G.js +0 -2
- package/dist/chunk-OUHEZBYI.js +0 -2
- package/dist/chunk-OVGYW7UD.js +0 -29
- package/dist/chunk-OYKU4B3Y.js +0 -2
- package/dist/chunk-POBJ6FR2.js +0 -5
- package/dist/chunk-PSZPMMWN.js +0 -2
- package/dist/chunk-PXTRBKRK.js +0 -3
- package/dist/chunk-Q5JRIHT3.js +0 -4
- package/dist/chunk-Q7ATHARX.js +0 -2
- package/dist/chunk-Q7CSKIDM.js +0 -5
- package/dist/chunk-QBQE7ZJ5.js +0 -3
- package/dist/chunk-QH22UIXP.js +0 -5
- package/dist/chunk-QXCKQTKR.js +0 -60
- package/dist/chunk-RBAD4GJ2.js +0 -13
- package/dist/chunk-RMDPFPNW.js +0 -2
- package/dist/chunk-ROPJDEJZ.js +0 -4
- package/dist/chunk-RVZC6TJE.js +0 -2
- package/dist/chunk-S4QZBKSR.js +0 -3
- package/dist/chunk-SCPMZ73U.js +0 -2
- package/dist/chunk-SIAP5RGI.js +0 -73
- package/dist/chunk-SIX4RFR3.js +0 -3
- package/dist/chunk-SKKXTABJ.js +0 -16
- package/dist/chunk-SSRFUQBD.js +0 -2
- package/dist/chunk-SYVJEEUJ.js +0 -3
- package/dist/chunk-T3CZAZSI.js +0 -8
- package/dist/chunk-T6DWDI5E.js +0 -3
- package/dist/chunk-T6HRIROJ.js +0 -7
- package/dist/chunk-TAA7HXHE.js +0 -2
- package/dist/chunk-TJ2JQYT3.js +0 -2
- package/dist/chunk-TULNMD5T.js +0 -368
- package/dist/chunk-U2FPY5XA.js +0 -3
- package/dist/chunk-U3SXIMII.js +0 -38
- package/dist/chunk-U6KCHXJ4.js +0 -2
- package/dist/chunk-UH3XSKS5.js +0 -9
- package/dist/chunk-UIFUZVCC.js +0 -2
- package/dist/chunk-UXKURIVI.js +0 -2
- package/dist/chunk-V2RBODHL.js +0 -2
- package/dist/chunk-VBKUWB6N.js +0 -2
- package/dist/chunk-VBV6ALJE.js +0 -2
- package/dist/chunk-VDGFWCQV.js +0 -2
- package/dist/chunk-VDSDOEWF.js +0 -2
- package/dist/chunk-VZPWVCLN.js +0 -20
- package/dist/chunk-WDSFQDPN.js +0 -2
- package/dist/chunk-WFA35BGR.js +0 -7
- package/dist/chunk-WLMP3OCW.js +0 -2
- package/dist/chunk-WSA52GOR.js +0 -2
- package/dist/chunk-WYPL7GF7.js +0 -2
- package/dist/chunk-X3YVZAKZ.js +0 -5
- package/dist/chunk-X6OGVFIT.js +0 -2
- package/dist/chunk-XDAUYDFT.js +0 -2
- package/dist/chunk-XKXTR6ZI.js +0 -9
- package/dist/chunk-Y5DFAW5W.js +0 -4
- package/dist/chunk-YSYPDRD5.js +0 -3
- package/dist/chunk-ZFVPWH62.js +0 -5
- package/dist/chunk-ZGIHTH27.js +0 -2
- package/dist/chunk-ZGIQN2SX.js +0 -2
- package/dist/chunk-ZHG4WAHR.js +0 -12
- package/dist/chunk-ZKB2XUEN.js +0 -4
- package/dist/chunk-ZLMXIQLC.js +0 -21
- package/dist/chunk-ZMCQIHI4.js +0 -2
- package/dist/code-TAVIKWJI.js +0 -2
- package/dist/code-result-json-5FEFQCAQ.js +0 -2
- package/dist/command-descriptors-7BKH53Y3.js +0 -343
- package/dist/dataflow-GFBTVDH3.js +0 -2
- package/dist/dependence-slice-GWGQCODG.js +0 -2
- package/dist/deps-4QHVDPYA.js +0 -2
- package/dist/direct-navigation-4UBC6HNW.js +0 -3
- package/dist/entry-map-QCTF4RVY.js +0 -2
- package/dist/files-M2UBF5HJ.js +0 -2
- package/dist/graph-evidence-Bjyky2V4.d.ts +0 -126
- package/dist/hierarchy-2UIHRLW4.js +0 -2
- package/dist/imports-WIE3YZOB.js +0 -2
- package/dist/members-YKD636DA.js +0 -2
- package/dist/methods-VDF4IMYG.js +0 -2
- package/dist/next-anchor-candidates-BwMczMvX.d.ts +0 -90
- package/dist/output-continuation-command-4UMDOOLO.js +0 -3
- package/dist/output-pagination-2GME6OPY.js +0 -19
- package/dist/project-reindex-XEQTRCV5.js +0 -3
- package/dist/queries/anchors.d.ts +0 -123
- package/dist/queries/anchors.js +0 -2
- package/dist/queries/complexity-hotspots.d.ts +0 -40
- package/dist/queries/complexity-hotspots.js +0 -2
- package/dist/queries/convergence.d.ts +0 -33
- package/dist/queries/convergence.js +0 -2
- package/dist/queries/dataflow.d.ts +0 -77
- package/dist/queries/dataflow.js +0 -2
- package/dist/queries/deep-chains.d.ts +0 -5
- package/dist/queries/deep-chains.js +0 -2
- package/dist/queries/extract-candidates.d.ts +0 -79
- package/dist/queries/extract-candidates.js +0 -2
- package/dist/queries/isolated.d.ts +0 -24
- package/dist/queries/isolated.js +0 -2
- package/dist/queries/plan-context.d.ts +0 -33
- package/dist/queries/plan-context.js +0 -2
- package/dist/queries/reference-neighborhood.d.ts +0 -4
- package/dist/queries/reference-neighborhood.js +0 -2
- package/dist/queries/reference-reachability.d.ts +0 -48
- package/dist/queries/reference-reachability.js +0 -2
- package/dist/queries/self-audit.d.ts +0 -69
- package/dist/queries/self-audit.js +0 -2
- package/dist/queries/similar-chains.d.ts +0 -48
- package/dist/queries/similar-chains.js +0 -2
- package/dist/queries/slice.d.ts +0 -4
- package/dist/queries/slice.js +0 -2
- package/dist/queries/stale-abstractions.d.ts +0 -72
- package/dist/queries/stale-abstractions.js +0 -2
- package/dist/queries/system-map.d.ts +0 -449
- package/dist/queries/system-map.js +0 -2
- package/dist/queries/trace.js +0 -2
- package/dist/queries/twin-ab.d.ts +0 -66
- package/dist/queries/twin-ab.js +0 -2
- package/dist/queries/value-flow.d.ts +0 -43
- package/dist/queries/value-flow.js +0 -2
- package/dist/queries/wrapper-candidates.d.ts +0 -49
- package/dist/queries/wrapper-candidates.js +0 -2
- package/dist/refs-JNK5CLM7.js +0 -2
- package/dist/refs-pagination-6BLRYGMV.js +0 -2
- package/dist/slice-PHPVNCWX.js +0 -2
- package/dist/source-snippet-_wrcgmZc.d.ts +0 -15
- package/dist/stats-OOJ74B32.js +0 -2
- package/dist/surface-MQX5MPIV.js +0 -2
- package/dist/symbol-resolution-DBLVXLBC.js +0 -2
- package/dist/system-JOPKV4OG.js +0 -2
- package/dist/trace-I2P2YFH4.js +0 -2
- package/dist/value-flow-JJVMF7NP.js +0 -2
- package/skills/concrete-plan/SKILL.md +0 -8
- package/skills/concrete-plan/agents/openai.yaml +0 -4
- package/skills/conductor/SKILL.md +0 -110
- package/skills/conductor/agents/openai.yaml +0 -4
- package/skills/principal-maintainability-review/SKILL.md +0 -273
- package/skills/principal-maintainability-review/agents/openai.yaml +0 -4
- package/skills/scip-calibrate/SKILL.md +0 -102
- package/skills/scip-calibrate/agents/openai.yaml +0 -4
- package/skills/scip-claim-audit/SKILL.md +0 -113
- package/skills/scip-claim-audit/agents/openai.yaml +0 -4
- package/skills/scip-probe-reachability/SKILL.md +0 -93
- package/skills/scip-probe-reachability/agents/openai.yaml +0 -4
- package/skills/scip-root-cause/SKILL.md +0 -160
- package/skills/scip-root-cause/agents/openai.yaml +0 -4
- package/skills/scip-system-compression/SKILL.md +0 -252
- package/skills/scip-system-compression/agents/openai.yaml +0 -4
- package/skills/scip-system-compression/references/compression-atlas.md +0 -116
- package/skills/scip-system-compression/references/compression-patterns.md +0 -87
- package/skills/scip-twin-drift/SKILL.md +0 -109
- package/skills/scip-twin-drift/agents/openai.yaml +0 -4
package/CHANGELOG.md
CHANGED
|
@@ -2,7 +2,253 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to `scip-query` are documented here. This file starts at 0.11.0; everything below covers behavior changes made since the 0.10.12 release.
|
|
4
4
|
|
|
5
|
-
## [
|
|
5
|
+
## [0.26.0] - 2026-09-11
|
|
6
|
+
|
|
7
|
+
### Agent workflows and quality review
|
|
8
|
+
|
|
9
|
+
- `review --base <ref>` evaluates changed, new, and untracked TS/JS functions
|
|
10
|
+
for complexity and duplication. Coverage-backed risk analysis requires
|
|
11
|
+
coverage matched to the reviewed source.
|
|
12
|
+
- `system --source [module]` supplies current module files, exports, imports,
|
|
13
|
+
consumers, policy, and findings without first building an index. `health`
|
|
14
|
+
reports concrete source findings instead of an aggregate health score.
|
|
15
|
+
- Consolidated agent guidance into six workflows: `scip-query`, `scip-explore`,
|
|
16
|
+
`scip-plan`, `scip-architecture-review`, `scip-integrity-audit`, and
|
|
17
|
+
`scip-setup`. Planning requires documenting the existing end-to-end flow,
|
|
18
|
+
comparable features, shared owners, and reuse choices before implementation.
|
|
19
|
+
Use ordinary file tools for source reading and scip-query for relationships,
|
|
20
|
+
architecture, quality findings, and change impact.
|
|
21
|
+
|
|
22
|
+
### Output and migration notes
|
|
23
|
+
|
|
24
|
+
- Oversized human output now saves the complete result to a temporary file
|
|
25
|
+
and prints a preview and file location. Automatic continuation prompts and
|
|
26
|
+
routine metadata footers are removed. Explicit pagination and the internal
|
|
27
|
+
`continue` command remain available. Use `--json --json-output <path>` for
|
|
28
|
+
programmatic filtering; human output is not a stable parsing interface.
|
|
29
|
+
- Source and graph additions are opt-in: for example, `inspect --bindings`
|
|
30
|
+
requests binding details and `evidence --detail` requests detailed edges.
|
|
31
|
+
- Removed overlapping CLI commands: `trace`, `reference-neighborhood`,
|
|
32
|
+
`value-flow`, `reference-reachability`, `isolated`, `similar-chains`,
|
|
33
|
+
`extract-candidates`, `wrapper-candidates`, `stale-abstractions`,
|
|
34
|
+
`complexity-hotspots`, and `self-audit`. Use `evidence` for explicit typed
|
|
35
|
+
relationships, `refs` for reference sites, `dead` for unused-code candidates,
|
|
36
|
+
`dependence-slice` / `slice-cohesion` for local flow questions, and
|
|
37
|
+
`health` / `review` / `complexity` for quality findings. See
|
|
38
|
+
[the current command inventory](docs/CURRENT_COMMANDS.md) for scope and
|
|
39
|
+
[the command reference](docs/COMMAND_REFERENCE.md) for arguments.
|
|
40
|
+
- Removed obsolete JavaScript package subpaths under `scip-query/queries/`:
|
|
41
|
+
`anchors`, `complexity-hotspots`, `convergence`, `dataflow`, `deep-chains`,
|
|
42
|
+
`system-map`, `extract-candidates`, `isolated`, `plan-context`,
|
|
43
|
+
`reference-neighborhood`, `reference-reachability`, `self-audit`,
|
|
44
|
+
`similar-chains`, `slice`, `stale-abstractions`, `trace`, `twin-ab`,
|
|
45
|
+
`value-flow`, and `wrapper-candidates`. Update imports to supported query
|
|
46
|
+
entries; replacements are not necessarily signature-compatible.
|
|
47
|
+
|
|
48
|
+
### TypeScript accuracy and incremental indexing
|
|
49
|
+
|
|
50
|
+
- Corrected compiler identity and source binding handling across index
|
|
51
|
+
partitions, anonymous/default exports, mutable bindings, and nested value
|
|
52
|
+
reads. Graph results retain the distinction between established edges,
|
|
53
|
+
derived observations, and candidates that require confirmation.
|
|
54
|
+
- Strengthened stale-input detection, source dependency tracking, cache
|
|
55
|
+
invalidation, failed-publication recovery, and incremental compiler-state
|
|
56
|
+
recovery. Failed compiler work does not publish a partially replaced index.
|
|
57
|
+
- Preserved watcher ownership through cleanup failures and made unavailable
|
|
58
|
+
incremental-service recovery explicit. Configured rebuild policy and
|
|
59
|
+
disabled watchers remain respected.
|
|
60
|
+
- Added reproducible property-based tests and state-transition coverage for
|
|
61
|
+
indexing, caches, query inputs, and publication recovery, alongside
|
|
62
|
+
independent known-answer graph tests. These tests do not establish complete
|
|
63
|
+
TypeScript or runtime coverage.
|
|
64
|
+
|
|
65
|
+
### Indexing performance
|
|
66
|
+
|
|
67
|
+
- Reuse verified compiler documents and runtime analysis after incremental
|
|
68
|
+
edits; avoid repeated reference preparation and runtime mount parsing.
|
|
69
|
+
- Share parsed TypeScript sources across bounded compiler batches and reuse
|
|
70
|
+
focused source facts during graph analysis.
|
|
71
|
+
- On the recorded LaunchPoint backend snapshot, the final compiler-batch
|
|
72
|
+
change reduced a cold index from 192.9 to 167.4 seconds and compiler work
|
|
73
|
+
from 119.7 to 95.1 seconds. All 9,485 compiler documents and recorded
|
|
74
|
+
runtime facts matched the preceding build. Peak process-tree memory rose
|
|
75
|
+
from 11.8 to 12.5 GiB; the one-minute cold-index target remains unmet.
|
|
76
|
+
Results are workload-specific, not a universal latency or memory guarantee.
|
|
77
|
+
- The Windows sidecar remains pinned to `scip-query-scip-windows@0.13.1`.
|
|
78
|
+
Node.js 22 or later is still required.
|
|
79
|
+
|
|
80
|
+
### Release checks
|
|
81
|
+
|
|
82
|
+
- Build before the complete test suite so CLI contracts exercise the artifact
|
|
83
|
+
that will be packed. Use the compiled CLI in the source-reading contract
|
|
84
|
+
suites and share Node's compilation cache between release test subprocesses,
|
|
85
|
+
with temporary-cache cleanup and explicit cache/coverage controls preserved.
|
|
86
|
+
- Reduce temporary SQLite journal churn in generated read-proof tests while
|
|
87
|
+
retaining the separate reader, every edit checkpoint, and existing timeouts.
|
|
88
|
+
Keep the two-worker test limit and all release checks.
|
|
89
|
+
|
|
90
|
+
## [0.25.0]
|
|
91
|
+
|
|
92
|
+
### Slice-based cohesion
|
|
93
|
+
|
|
94
|
+
- New `slice-cohesion [symbol]` command. For every value a TypeScript
|
|
95
|
+
function hands out (its return value, each property of a returned object
|
|
96
|
+
literal, an effect call, a write to a parameter or field, a throw) it
|
|
97
|
+
takes the backward slice over the compiler-owned local flow graph and
|
|
98
|
+
partitions the body by which outputs share statements. Outputs whose
|
|
99
|
+
slices never meet are separate local computations; the largest cluster
|
|
100
|
+
stays in place and every other qualifying cluster is reported as an
|
|
101
|
+
extraction with its line ranges, the outputs it produces, and the
|
|
102
|
+
parameters it would take. Exit-only guards (including branches that only
|
|
103
|
+
log before leaving), shared setup derived only from inputs, and writes
|
|
104
|
+
that reach a parameter through an alias (`bucket = map.get(k)`,
|
|
105
|
+
`map.set(k, bucket)`) are modeled so that one-computation functions stay
|
|
106
|
+
whole.
|
|
107
|
+
- The model keeps failure handling with the operation it protects: every
|
|
108
|
+
statement in a `catch` or `finally` block depends on the try block it
|
|
109
|
+
handles. A function's return value is one output no matter how many
|
|
110
|
+
return statements produce it, and the same field on several returned
|
|
111
|
+
object literals is one output, so alternate returns and guard clauses
|
|
112
|
+
are not seams.
|
|
113
|
+
- React bodies are modeled by state ownership. A tuple state hook
|
|
114
|
+
(`const [x, setX] = useState()`) makes `setX(...)` a write to `x` when it
|
|
115
|
+
runs at render time or inside an effect callback (directly, through
|
|
116
|
+
promise continuations and timers, or through a `useCallback` closure the
|
|
117
|
+
effect calls), so later reads of `x` depend on it. Event handlers declared
|
|
118
|
+
and passed away write nothing until invoked. Candidates carry an
|
|
119
|
+
archetype (`calculation`, `react-component`, `react-hook`,
|
|
120
|
+
`orchestration`), clusters carry a kind (`calculation`, `hook`,
|
|
121
|
+
`effects`) and a role (`remainder`, `extraction`, `below-threshold`), and
|
|
122
|
+
the recommendation names a pure calculation, custom hook, or effect
|
|
123
|
+
sequence candidate rather than a generic function split.
|
|
124
|
+
- Guards are structural: a then-branch that only prepares or reports an exit
|
|
125
|
+
(calls, local bindings, then a return or throw whose value is not computed
|
|
126
|
+
in the branch or an enclosing loop) is an exit, so `return empty` after a
|
|
127
|
+
shared constant, a log line before `return null`, and `return
|
|
128
|
+
suppress(params)` do not form clusters. Every unit also depends on the
|
|
129
|
+
predicates that syntactically enclose it, so a strategy branch inside a
|
|
130
|
+
`try` shares its branch with the fallback that follows. Shared setup is
|
|
131
|
+
judged against the partition: a unit read by outputs of one cluster only
|
|
132
|
+
returns to that cluster. Clusters that compute a result while awaiting or
|
|
133
|
+
producing effects are `operation` candidates, not pure calculations.
|
|
134
|
+
- A keep-whole verdict explains what joins the outputs (statements feeding
|
|
135
|
+
every output, statements feeding several, chaining through predicates or
|
|
136
|
+
state writes, or setup-only reads) instead of a bare shared count, and
|
|
137
|
+
bodies whose only extractions are effect sequences rank after
|
|
138
|
+
calculations, operations, and hooks with an advisory note that
|
|
139
|
+
orchestration may be intentional.
|
|
140
|
+
- Extraction interfaces count only what would become a parameter:
|
|
141
|
+
function parameters, `this`, shared-setup bindings, and locals of an
|
|
142
|
+
enclosing function. Imports, module-level names, globals, and JSX tags
|
|
143
|
+
stay what they are. The `signal` tier requires a complete local model
|
|
144
|
+
and at least one extraction within five parameters; the remainder never
|
|
145
|
+
needs an interface. Orchestration roots (bodies whose value outputs are
|
|
146
|
+
all calls) and code under scripts, tools, bin, or migration directories
|
|
147
|
+
are reported at support tier and ranked last.
|
|
148
|
+
- Coverage names its scope: `coverage.model` is `function-local-flow`,
|
|
149
|
+
`coverage.candidateEdgeEffect` records that candidate flow edges were
|
|
150
|
+
treated as dependencies and can only merge clusters, and a partial model
|
|
151
|
+
turns the recommendation into an inspection request. The JSON envelope
|
|
152
|
+
reports one row per finding, a targeted symbol reports complete
|
|
153
|
+
coverage, a scan without a cap reports complete coverage, and a capped
|
|
154
|
+
scan reports what it omitted. Scan results omit per-unit listings and
|
|
155
|
+
slice arrays (a targeted symbol keeps them), `--scan-limit <n>` bounds
|
|
156
|
+
the analysis work independently of `-n`, help states that `--full` and
|
|
157
|
+
`--limit` cannot be combined, and long scans report progress on stderr.
|
|
158
|
+
- Performance: the analyzer builds one in-memory compiler program per file
|
|
159
|
+
and previously re-parsed the standard library, re-resolved every import
|
|
160
|
+
and `@types` package, and looked for `@typescript/lib-*` replacements on
|
|
161
|
+
each of them. Library and `@types` declaration files are now parsed once
|
|
162
|
+
per process, imports resolve only when an `@types` package can back
|
|
163
|
+
them, lib replacement lookup is off, property accesses are keyed by
|
|
164
|
+
their receiver and member name instead of an inferred property symbol,
|
|
165
|
+
reaching definitions and postdominators run as bit-set worklists in
|
|
166
|
+
reverse postorder, and a scan evaluates a file's callables together so
|
|
167
|
+
its flow graph and parse are shared. On a 7,900-file Next.js repository
|
|
168
|
+
the `.tsx`-scoped scan went from 177 s to 8 s and the unbounded scan from
|
|
169
|
+
more than 30 minutes to 33 s.
|
|
170
|
+
|
|
171
|
+
### Local flow models try, catch, and finally
|
|
172
|
+
|
|
173
|
+
- The TypeScript local flow CFG now builds try, catch, and finally regions
|
|
174
|
+
instead of treating a try statement as one opaque node that invalidated
|
|
175
|
+
every reaching definition. Any node inside a try block may raise, so the
|
|
176
|
+
state before each of them flows to the catch entry; a `throw` inside the
|
|
177
|
+
block lands in the catch; the catch binding is a definition; normal
|
|
178
|
+
completion of either block continues through the finally block. A finally
|
|
179
|
+
block after a return, break, or continue inside its try or catch is the
|
|
180
|
+
one remaining disclosed gap. Control dependence is derived from predicate
|
|
181
|
+
nodes only, so raise edges do not become spurious branches.
|
|
182
|
+
|
|
183
|
+
### Local flow covers destructuring, element writes, and loop variables
|
|
184
|
+
|
|
185
|
+
- The TypeScript local definition-use analysis now binds every leaf of an
|
|
186
|
+
object or array pattern in parameters and declarations, feeds pattern
|
|
187
|
+
defaults into the definition, records `container[index] = value` as a
|
|
188
|
+
partial definition that does not kill earlier definitions of the
|
|
189
|
+
container, draws a `for...of` or `for...in` variable from its iterable,
|
|
190
|
+
and resolves a shorthand property (`{ value }`) to the local binding
|
|
191
|
+
rather than the property it creates. Previously a destructuring statement
|
|
192
|
+
or element write invalidated every reaching definition after it, which
|
|
193
|
+
truncated `dependence-slice`, `value-flow`, and every consumer of the flow
|
|
194
|
+
graph.
|
|
195
|
+
|
|
196
|
+
## [0.24.1]
|
|
197
|
+
|
|
198
|
+
### Solution-style tsconfigs and a live type checker
|
|
199
|
+
|
|
200
|
+
- A repository whose root `tsconfig.json` only references other projects
|
|
201
|
+
(`files: []` plus `references`) crashed every compiler-backed command in
|
|
202
|
+
0.24.0 (`Cannot read properties of undefined (reading 'flags')`): the
|
|
203
|
+
root's empty program received each file as an ad hoc addition and the
|
|
204
|
+
provider kept using a checker from the program before the addition. The
|
|
205
|
+
root is now replaced by the projects it references, and the provider reads
|
|
206
|
+
the current program's checker on every use.
|
|
207
|
+
- A function whose return type holds an object type literal
|
|
208
|
+
(`): Promise<{ url: string }> {`) had its body read from the wrong brace;
|
|
209
|
+
thin-forwarder, wrapper, twin, and duplicate-body checks now skip type and
|
|
210
|
+
value literals when locating a body.
|
|
211
|
+
|
|
212
|
+
### Health counts cycles on the import graph
|
|
213
|
+
|
|
214
|
+
- The health report's circular-dependency axis counts real cycles on the
|
|
215
|
+
import graph, where a cycle is a runtime dependency a reader can break.
|
|
216
|
+
A component that cycles only through type or symbol references (the
|
|
217
|
+
`cycles` command's default basis) is disclosed as a policy exclusion with
|
|
218
|
+
its file count instead of being scored. On Launchpoint this turns one
|
|
219
|
+
725-file symbol-reference component into a disclosure and no counted
|
|
220
|
+
cycle.
|
|
221
|
+
|
|
222
|
+
### Detector calibration on a third and fourth repository
|
|
223
|
+
|
|
224
|
+
Label sets for SuplierScout (Express + React, solution-style tsconfig) and
|
|
225
|
+
Stable_Management (workspace monorepo, five tsconfigs) under
|
|
226
|
+
`docs/validation/labels/`. Only the rules those labels measured as an
|
|
227
|
+
improvement shipped.
|
|
228
|
+
|
|
229
|
+
- `similar`: two functions in one file sharing four or more callees at
|
|
230
|
+
similarity 0.5 or more are direct findings whatever the vocabulary class
|
|
231
|
+
(create/update/delete workflows, archive/restore pairs), because the file's
|
|
232
|
+
own imports are the scaffolding vocabulary. A cross-file pair whose shared
|
|
233
|
+
evidence mixes domain behavior with scaffolding is direct from similarity
|
|
234
|
+
0.6. Precision holds at 1.0 on Launchpoint (recall 0.43 to 0.71) and on
|
|
235
|
+
Stable_Management (recall 0.33 to 0.92); no labeled false row is promoted
|
|
236
|
+
on any of the four repositories.
|
|
237
|
+
- `co-change`: a `<Name>.script.ts` companion is a single-file component's
|
|
238
|
+
script block, so a view script changing with its model is model-view
|
|
239
|
+
coupling rather than a schema-with-script sweep. Stable_Management recall
|
|
240
|
+
0.82 to 1.0 at precision 1.0.
|
|
241
|
+
- `extract-candidates`: a selected region that is one statement (an awaited
|
|
242
|
+
call with callback arguments, a resource or form declaration, a nested
|
|
243
|
+
function) is support tier, because extracting it would only wrap that
|
|
244
|
+
statement. SuplierScout precision 0.9 to 1.0 with recall unchanged; Vega
|
|
245
|
+
unchanged.
|
|
246
|
+
- `extract-candidates`: every tier reason now names the line range it was
|
|
247
|
+
decided on. The reason said "the largest region" while describing the most
|
|
248
|
+
actionable region, which is often a different one.
|
|
249
|
+
- `passthrough-candidates`: a body whose parameter carries a default value
|
|
250
|
+
reshapes its input and is not a literal passthrough (source-facts payload
|
|
251
|
+
version 10).
|
|
6
252
|
|
|
7
253
|
## [0.24.0]
|
|
8
254
|
|
package/README.md
CHANGED
|
@@ -1,31 +1,31 @@
|
|
|
1
1
|
# scip-query
|
|
2
2
|
|
|
3
|
-
scip-query
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
3
|
+
For the normal **explore → plan → implement → review** workflow, use `scip-query system --source` for a module inventory, `scip-query health` for cleanup candidates, and `scip-query review --base HEAD` after edits. These inspect current TS/JS source without an index. See [agent workflows and module evidence](docs/SKILLS.md), [review and coverage](docs/REVIEW.md), and the [product vision](docs/PRODUCT_VISION.md).
|
|
4
|
+
|
|
5
|
+
scip-query helps coding agents inspect code relationships and review changes.
|
|
6
|
+
It uses compiler-produced symbol identities to distinguish definitions that happen
|
|
7
|
+
to share a name, then attaches source locations and coverage to the relationships
|
|
8
|
+
it reports.
|
|
9
|
+
|
|
10
|
+
The core workflow is to locate the code, inspect the relationships relevant to a
|
|
11
|
+
change, make the change, and check its consumers and declared architectural rules.
|
|
12
|
+
The tool supplies evidence; design decisions still require understanding the
|
|
13
|
+
project's responsibilities and verifying behavior with tests.
|
|
14
|
+
|
|
15
|
+
| Question | Evidence to use |
|
|
16
|
+
| --- | --- |
|
|
17
|
+
| Which definition does this reference mean? | Search, outline, references, exact source |
|
|
18
|
+
| What can call this, or be called by it? | Execution relationships |
|
|
19
|
+
| Where does a value come from? | Value transfers and function-local dependence slices |
|
|
20
|
+
| What state or external boundary does this operation touch? | State and runtime relationships, with provider limits |
|
|
21
|
+
| Which dependencies are permitted? | Explicit architecture rules |
|
|
22
|
+
| What might my edit affect? | Changed symbols and downstream consumers from diff-impact |
|
|
23
|
+
| Which code warrants review? | Individual health findings, exclusions, and analysis coverage |
|
|
24
|
+
|
|
25
|
+
Containment identifies where a symbol is declared. Domain ownership identifies
|
|
26
|
+
which module is responsible for enforcing a rule or controlling a resource;
|
|
27
|
+
containment alone cannot establish that responsibility. Neither a dependency count
|
|
28
|
+
nor a detector finding establishes architectural quality.
|
|
29
29
|
|
|
30
30
|
## Install
|
|
31
31
|
|
|
@@ -49,7 +49,7 @@ allow-scripts=... --location=user` command npm prints; `--allow-scripts` is
|
|
|
49
49
|
rejected inside a project directory by design.
|
|
50
50
|
|
|
51
51
|
Setup detects supported languages, installs or checks their indexers, builds
|
|
52
|
-
the local index, installs the
|
|
52
|
+
the local index, installs the six agent workflows, and writes concise agent guidance.
|
|
53
53
|
When the repository declares valid architecture rules, setup also installs one
|
|
54
54
|
checkout-local Stop hook that checks those rules after indexed source changes.
|
|
55
55
|
It does not install a completion gate, pre-commit gate, or CI enforcement.
|
|
@@ -63,81 +63,36 @@ scip-query capabilities
|
|
|
63
63
|
|
|
64
64
|
## The normal workflow
|
|
65
65
|
|
|
66
|
-
Use
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
those facts. scip-query resolves identity, typed edges, evidence strength, provider
|
|
72
|
-
support, and bounded coverage; it does not decide which facts matter to the task.
|
|
66
|
+
Use ordinary file search and source reads for implementation details. Use
|
|
67
|
+
scip-query to inspect relationships, discover reuse opportunities, evaluate
|
|
68
|
+
module dependencies and review actual changes. For a substantial change, map
|
|
69
|
+
the existing central path and comparable features before choosing an extension
|
|
70
|
+
point; document what will be reused and which consumers are affected.
|
|
73
71
|
|
|
74
72
|
```bash
|
|
75
|
-
scip-query
|
|
76
|
-
scip-query evidence
|
|
77
|
-
--symbol 'appendWorkSessionStreamEvents' \
|
|
78
|
-
--edge execution \
|
|
79
|
-
--edge runtime \
|
|
80
|
-
--direction both \
|
|
81
|
-
--depth 2 \
|
|
82
|
-
--max-edges 32
|
|
73
|
+
scip-query system --source
|
|
74
|
+
scip-query evidence --at src/service.ts:42 --edge execution --direction incoming --depth 1 --max-edges 30
|
|
83
75
|
```
|
|
84
76
|
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
would exceed the active output budget, `code` emits no partial source and
|
|
105
|
-
prints exact complete-packet splits; narrow to the exact units still needed
|
|
106
|
-
before deciding whether every split remains necessary.
|
|
107
|
-
|
|
108
|
-
Start an unknown path with `search`; batch related text, symbol, and file-line
|
|
109
|
-
anchors with `inspect`; use `evidence` when one symbol and its real uses are the
|
|
110
|
-
center of the question. For tracked nonbinary repository content, keep
|
|
111
|
-
exploration on scip-query. Native tools are for applying edits, running checks,
|
|
112
|
-
binary content, or a specific unsupported gap that scip-query has explicitly
|
|
113
|
-
reported.
|
|
114
|
-
|
|
115
|
-
```bash
|
|
116
|
-
scip-query search work_session_stream_events
|
|
117
|
-
scip-query inspect --search sessionStreamEvents --search work_session_stream_events --view behavior
|
|
118
|
-
scip-query evidence appendWorkSessionStreamEvents --include definition,references,callers,callees
|
|
119
|
-
```
|
|
120
|
-
|
|
121
|
-
`inspect --view behavior` returns the cheapest faithful syntax-derived view of
|
|
122
|
-
each complete source unit. Compact units stay raw. Larger units become
|
|
123
|
-
hierarchical outlines only when that representation is materially smaller;
|
|
124
|
-
every source statement is represented, and unsupported or
|
|
125
|
-
compression-sensitive statements are copied verbatim. Coverage reports the
|
|
126
|
-
represented, copied, and omitted counts. Exact source can be requested for any
|
|
127
|
-
unit whose complete implementation matters. `inspect --symbol` includes definitions,
|
|
128
|
-
references, callers, callees, dependencies, and consumers by default.
|
|
129
|
-
|
|
130
|
-
Search, location, and relationship evidence is deduplicated into one ranked
|
|
131
|
-
packet. Exact locations and definitions rank first; later units must add new
|
|
132
|
-
file, role, scope, symbol, or behavior coverage. A default packet materializes
|
|
133
|
-
at most 12 matching lines per text selector, then applies a soft ceiling of 48
|
|
134
|
-
units or 60,000 displayed-evidence characters without clipping a returned
|
|
135
|
-
syntax unit. Its omission ledger groups everything withheld by scope and role,
|
|
136
|
-
reports what each group contains, and gives an exact command for drilling into
|
|
137
|
-
that group. Drill into several relevant groups together; use `--full` only when
|
|
138
|
-
all omitted evidence can change the decision. Large rendered output from other
|
|
139
|
-
commands can still use the universal byte-transport continuation printed by
|
|
140
|
-
every command.
|
|
77
|
+
The module inventory shows groups and dependencies; selecting a printed group
|
|
78
|
+
reveals its files, exports and import sites. The evidence command answers a
|
|
79
|
+
chosen relationship question. Use incoming/outgoing execution for callers and
|
|
80
|
+
callees, dataflow for values, runtime for handoffs and dependencies for imports.
|
|
81
|
+
Candidate edges require confirmation. Missing or bounded evidence cannot
|
|
82
|
+
establish absence. `evidence --detail` adds inventory and provider explanations
|
|
83
|
+
when their limitations matter.
|
|
84
|
+
|
|
85
|
+
`search`, `outline`, `entrypoints`, `code` and `inspect` remain optional tools
|
|
86
|
+
for compiler identity, nesting, external roots or grouped source reads. `code`
|
|
87
|
+
accepts exact symbols, file ranges or file paths; `--members all` selects a
|
|
88
|
+
complete file and `--local-calls` adds same-file callees of a selected range.
|
|
89
|
+
`inspect --view behavior` can provide a statement-accounted view of a selected
|
|
90
|
+
construct. Both source commands add external literal values only with
|
|
91
|
+
`--bindings`. Their machine results retain detailed evidence.
|
|
92
|
+
|
|
93
|
+
Load the relevant [workflow skill](docs/SKILLS.md), batch useful questions and
|
|
94
|
+
stop when the facts needed for the change are settled. There is no requirement
|
|
95
|
+
to exhaust the command catalogue, unrelated relationships or saved output.
|
|
141
96
|
|
|
142
97
|
Before a nonlocal change:
|
|
143
98
|
|
|
@@ -146,7 +101,7 @@ scip-query context RetryPolicy
|
|
|
146
101
|
```
|
|
147
102
|
|
|
148
103
|
`context` returns a bounded evidence packet for a symbol, file, or module. It
|
|
149
|
-
combines definitions, references,
|
|
104
|
+
combines definitions, references, call neighborhoods, dependencies, consumers,
|
|
150
105
|
change risk, history, suppressions, and possible reuse sites. A bounded packet
|
|
151
106
|
is a deliberately limited result: it is useful for a decision but does not
|
|
152
107
|
claim to contain every possible relationship.
|
|
@@ -221,7 +176,6 @@ scip-query incomplete-migration --full
|
|
|
221
176
|
scip-query doc-drift --full
|
|
222
177
|
scip-query unused-params --full
|
|
223
178
|
scip-query dead --full
|
|
224
|
-
scip-query isolated --full
|
|
225
179
|
scip-query cycles --full
|
|
226
180
|
scip-query co-change --full
|
|
227
181
|
```
|
|
@@ -244,14 +198,12 @@ still pass.
|
|
|
244
198
|
|
|
245
199
|
## Focused graph queries
|
|
246
200
|
|
|
247
|
-
|
|
248
|
-
focused query when one unresolved relationship can change the decision:
|
|
201
|
+
Choose a focused query when one unresolved relationship can change the decision:
|
|
249
202
|
|
|
250
203
|
```bash
|
|
251
204
|
scip-query refs SomeSymbol --full
|
|
252
|
-
scip-query trace SomeSymbol
|
|
253
205
|
scip-query call-graph SomeSymbol
|
|
254
|
-
scip-query
|
|
206
|
+
scip-query evidence --symbol SomeSymbol --edge dataflow --direction both --depth 2 --max-edges 48
|
|
255
207
|
scip-query affected SomeSymbol --full
|
|
256
208
|
scip-query system src/payments
|
|
257
209
|
scip-query surface src/payments
|
|
@@ -262,6 +214,43 @@ scip-query rdeps src/payments/service.ts
|
|
|
262
214
|
Do not repeat an unchanged query after context compaction. Re-run when source,
|
|
263
215
|
the index generation, the command input, or the required coverage changed.
|
|
264
216
|
|
|
217
|
+
## Value flow and slicing
|
|
218
|
+
|
|
219
|
+
A value transfer connects a particular value-producing occurrence to an occurrence
|
|
220
|
+
that receives it. `evidence --edge dataflow` reports supported static transfer relationships,
|
|
221
|
+
including argument-to-parameter and consumed return-value relationships. Each
|
|
222
|
+
edge distinguishes confirmed evidence from candidates and reports provider limits.
|
|
223
|
+
|
|
224
|
+
A backward slice identifies the source occurrences that can affect a chosen
|
|
225
|
+
variable occurrence through assignments, value use, or conditions governing
|
|
226
|
+
execution. A forward slice follows those dependencies toward affected occurrences.
|
|
227
|
+
`dependence-slice` computes these within one TypeScript or JavaScript callable:
|
|
228
|
+
|
|
229
|
+
```bash
|
|
230
|
+
scip-query dependence-slice src/payments/service.ts:42 --variable total
|
|
231
|
+
scip-query dependence-slice src/payments/service.ts:42 --variable total --column 10
|
|
232
|
+
scip-query dependence-slice src/payments/service.ts:12 --variable amount --forward
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
Lines and columns in command arguments are one-based. Ambiguous occurrences are
|
|
236
|
+
listed for refinement. The default traverses the local graph to completion;
|
|
237
|
+
`--depth` limits hops and `--max-edges` bounds rendered edges. Coverage distinguishes
|
|
238
|
+
output bounds from an incomplete analysis. Calls into other functions, general heap
|
|
239
|
+
aliasing (different references to the same stored object), closure invocation order,
|
|
240
|
+
and unsupported exception behavior require separate evidence. This is a dependency
|
|
241
|
+
slice, not a proof that extracting its statements into a function preserves behavior.
|
|
242
|
+
|
|
243
|
+
`slice-cohesion` compares slices for a function's different outputs to suggest
|
|
244
|
+
possible separations. Its suggestions require source confirmation and tests; partial
|
|
245
|
+
models cannot earn an extraction signal. Health reports retain the individual
|
|
246
|
+
findings and coverage without aggregate quality grades.
|
|
247
|
+
|
|
248
|
+
## Optional skills
|
|
249
|
+
|
|
250
|
+
Setup and `install-skills` install `scip-query` and `scip-explore` by default.
|
|
251
|
+
Use `scip-query install-skills --all` to install the shipped specialist workflows.
|
|
252
|
+
Existing specialist installations and user-owned skill directories are preserved.
|
|
253
|
+
|
|
265
254
|
## Suppressions
|
|
266
255
|
|
|
267
256
|
A suppression is a versioned repository record that says one detector finding
|
|
@@ -289,28 +278,26 @@ line numbers readable. Programmatic consumers can use:
|
|
|
289
278
|
scip-query context RetryPolicy --json --result-only
|
|
290
279
|
```
|
|
291
280
|
|
|
292
|
-
Search
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
batched drilldowns for selected owners. `search --full` expands every source
|
|
296
|
-
window and is not needed to establish complete text-match coverage.
|
|
297
|
-
|
|
298
|
-
Cross-command evidence citations are off by default. With an explicit
|
|
299
|
-
`SCIP_QUERY_SESSION`, a complete source unit, a byte-identical exact subset of a
|
|
300
|
-
prior exact source read, or a graph unit/edge may be replaced by a visible
|
|
301
|
-
receipt from the same index generation. Preview coverage never suppresses an
|
|
302
|
-
exact unit. Changed bytes, changed graph content, a new generation, or
|
|
303
|
-
`--reemit` force full evidence.
|
|
281
|
+
Search displays selected matching windows once, with exact locations, optional
|
|
282
|
+
compiler owners and an honest total. Use `--scope` to narrow or `--full` to
|
|
283
|
+
expand all matching windows. The JSON result retains identity metadata.
|
|
304
284
|
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
285
|
+
Oversized ordinary human output is saved to a private temporary file, with a
|
|
286
|
+
short preview and absolute path. Read or filter the file selectively using
|
|
287
|
+
normal tools; no automatic `continue` call is required. Saved previews expire
|
|
288
|
+
after one hour or can be reclaimed earlier under storage pressure. Redirect
|
|
289
|
+
stdout to your own file for durable output:
|
|
308
290
|
|
|
309
|
-
|
|
291
|
+
```bash
|
|
292
|
+
scip-query health --full > report.txt
|
|
293
|
+
scip-query health --json --json-output report.json
|
|
294
|
+
```
|
|
310
295
|
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
296
|
+
Small results, regular-file redirects and machine JSON contracts are preserved.
|
|
297
|
+
Explicit pagination remains a compatibility option. Cross-command evidence
|
|
298
|
+
receipts remain opt-in through `SCIP_QUERY_SESSION`; `--reemit` forces full
|
|
299
|
+
evidence. Material omissions and unsupported/stale evidence remain visible,
|
|
300
|
+
without routine successful coverage footers. See [output modes](docs/CLI_JSON_OUTPUT.md).
|
|
314
301
|
|
|
315
302
|
## Configuration
|
|
316
303
|
|
|
@@ -339,8 +326,8 @@ and focused use of the React, Vue, and general cleanup detectors.
|
|
|
339
326
|
```bash
|
|
340
327
|
npm install
|
|
341
328
|
npm run typecheck
|
|
342
|
-
npm test
|
|
343
329
|
npm run build
|
|
330
|
+
npm test
|
|
344
331
|
```
|
|
345
332
|
|
|
346
333
|
The React and Vue detector suites are part of the normal test surface and must
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{d as t}from"./chunk-
|
|
1
|
+
import{d as t}from"./chunk-YOQVEXVE.js";import"./chunk-O2C4UILI.js";import"./chunk-WXU3DGPU.js";import"./chunk-YUKYB54I.js";import"./chunk-H75GSPRV.js";import"./chunk-QOIXNWQR.js";import"./chunk-GZKFETP5.js";import"./chunk-YULZRALL.js";import"./chunk-TKD34PHN.js";import"./chunk-2HLAFUCY.js";import"./chunk-U5RIG3JP.js";import"./chunk-62BDNPMI.js";import{writeFileSync as s}from"fs";import{workerData as o}from"worker_threads";var r=o;try{let e=t({projectRoot:r.projectRoot,dbPath:r.dbPath,tsconfig:r.tsconfig,vueFiles:r.vueFiles,tasks:r.tasks});s(r.resultPath,JSON.stringify({version:1,runId:r.runId,workerId:r.workerId,taskIds:r.taskIds,ok:!0,result:e}))}catch(e){s(r.resultPath,JSON.stringify({version:1,runId:r.runId,workerId:r.workerId,taskIds:r.taskIds,ok:!1,error:e instanceof Error?e.message:String(e)}))}
|
|
2
2
|
//# sourceMappingURL=augment-vue-worker.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a,b}from"./chunk-QJRMOK5N.js";import"./chunk-DVFP6PZI.js";import"./chunk-J5FJMODQ.js";import"./chunk-WOFQ5DTB.js";import"./chunk-PH52RA7D.js";import"./chunk-7Y5T6XDP.js";import"./chunk-X6RMKHJQ.js";import"./chunk-JEVRKFRL.js";import"./chunk-QOIXNWQR.js";import"./chunk-GZKFETP5.js";import"./chunk-HRRFKWPZ.js";import"./chunk-YULZRALL.js";import"./chunk-HGFDYOVB.js";import"./chunk-TKD34PHN.js";import"./chunk-2HLAFUCY.js";import"./chunk-U5RIG3JP.js";import"./chunk-62BDNPMI.js";export{a as byKind,b as kindCounts};
|
|
2
|
+
//# sourceMappingURL=by-kind-PRVFAGTQ.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a}from"./chunk-VB3GOKOS.js";import"./chunk-BGBBVSH4.js";import"./chunk-7VPEEAAG.js";import"./chunk-S6CZA3MV.js";import"./chunk-65245JCM.js";import"./chunk-NJJMVD65.js";import"./chunk-ZHMRSZFD.js";import"./chunk-ZGTYGDMF.js";import"./chunk-WRQXLNYE.js";import"./chunk-DVFP6PZI.js";import"./chunk-QIWXRW72.js";import"./chunk-LOVIZBJ4.js";import"./chunk-QXEUDXBT.js";import"./chunk-O2C4UILI.js";import"./chunk-WXU3DGPU.js";import"./chunk-YUKYB54I.js";import"./chunk-TRBI4UKT.js";import"./chunk-WKPV2TDZ.js";import"./chunk-F4FNK44D.js";import"./chunk-ZLADLUE6.js";import"./chunk-6FFVZZL4.js";import"./chunk-4XQ4O6IM.js";import"./chunk-BZB4QPIP.js";import"./chunk-CN5EH7O3.js";import"./chunk-T3I6NHBH.js";import"./chunk-J5FJMODQ.js";import"./chunk-WOFQ5DTB.js";import"./chunk-PH52RA7D.js";import"./chunk-7Y5T6XDP.js";import"./chunk-X6RMKHJQ.js";import"./chunk-JEVRKFRL.js";import"./chunk-QOIXNWQR.js";import"./chunk-GZKFETP5.js";import"./chunk-3JIQS44J.js";import"./chunk-O4UZSPPI.js";import"./chunk-B3PYOSCX.js";import"./chunk-HRRFKWPZ.js";import"./chunk-YULZRALL.js";import"./chunk-HGFDYOVB.js";import"./chunk-QZ7KQZRN.js";import"./chunk-TKD34PHN.js";import"./chunk-2HLAFUCY.js";import"./chunk-U5RIG3JP.js";import"./chunk-62BDNPMI.js";export{a as callGraph};
|
|
2
|
+
//# sourceMappingURL=call-graph-DVPAQV2F.js.map
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* is a leaf-name resolution over imports and local receivers; the other two
|
|
5
5
|
* are the on-demand compiler and chunk co-occurrence paths.
|
|
6
6
|
*/
|
|
7
|
-
type CalleeEvidenceSource = 'scip-occurrence' | 'ast-callsite' | 'semantic-callee' | 'scip-chunk';
|
|
7
|
+
type CalleeEvidenceSource = 'scip-occurrence' | 'scip-declaration' | 'ast-callsite' | 'semantic-callee' | 'scip-chunk';
|
|
8
8
|
interface CalleeRow {
|
|
9
9
|
symbol: string;
|
|
10
10
|
file: string;
|