scip-query 0.23.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 +491 -2
- package/README.md +111 -122
- 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-CUtj8V2I.d.ts +19 -0
- 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-EG2CPZMJ.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-6I6L7Z62.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-ILTDAWEF.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-JTQVMR42.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-WIWY3CRX.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-M2O5NY6W.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-XBGWL66K.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-T3I6NHBH.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-VF5JZICY.js +2 -0
- 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-X6RMKHJQ.js +81 -0
- package/dist/{chunk-4ILJCCXV.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-GAS2LJMP.js → chunk-ZLADLUE6.js} +3 -3
- package/dist/chunk-ZO4YXUT6.js +4 -0
- package/dist/{chunk-HYO3NP5Q.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/frontend-profile-roles-D7eCum8P.d.ts +10 -0
- package/dist/{health-CPp2Jf1Z.d.ts → health-BtfmNrfa.d.ts} +58 -74
- 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 +3 -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.d.ts +20 -2
- 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.d.ts +2 -0
- 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 +29 -2
- 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 +17 -65
- 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.d.ts +9 -1
- package/dist/queries/passthrough-candidates.js +1 -1
- package/dist/queries/react-component-duplicates.d.ts +19 -3
- package/dist/queries/react-component-duplicates.js +1 -1
- package/dist/queries/react-hook-candidates.d.ts +22 -3
- package/dist/queries/react-hook-candidates.js +1 -1
- package/dist/queries/react-large-component-pressure.d.ts +17 -3
- 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 +23 -7
- 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 +55 -12
- 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 +70 -13
- package/docs/analyzer-inventory.md +2 -2
- package/docs/locality-analyzer-design.md +9 -9
- 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-XI2CSWEY.js +0 -2
- package/dist/call-graph-UONR6JR5.js +0 -2
- package/dist/call-graph-evidence-lZa2dwQA.d.ts +0 -11
- package/dist/chunk-26CT72HM.js +0 -2
- package/dist/chunk-2E7CX53V.js +0 -2
- package/dist/chunk-2GRUZAQF.js +0 -43
- package/dist/chunk-2LDBDR6J.js +0 -29
- package/dist/chunk-2OOY75BW.js +0 -2
- package/dist/chunk-2R3V3PSD.js +0 -4
- package/dist/chunk-2WC2OEDO.js +0 -4
- package/dist/chunk-35NLDRZC.js +0 -2
- package/dist/chunk-3AF4TUFK.js +0 -3
- package/dist/chunk-3D3QG236.js +0 -2
- package/dist/chunk-3FHOF22C.js +0 -21
- package/dist/chunk-3JKSW6LJ.js +0 -2
- package/dist/chunk-3L2ZBPEX.js +0 -133
- package/dist/chunk-3PJABJSU.js +0 -2
- package/dist/chunk-3SVF22I5.js +0 -2
- package/dist/chunk-3WR4E3A3.js +0 -3
- package/dist/chunk-4FTZ4P5G.js +0 -2
- package/dist/chunk-4UX2F3JX.js +0 -2
- package/dist/chunk-4WNW27SX.js +0 -2
- package/dist/chunk-5ENOG4VP.js +0 -61
- package/dist/chunk-64BFSI5I.js +0 -2
- package/dist/chunk-66DVSJQG.js +0 -455
- package/dist/chunk-6HFCYNYE.js +0 -9
- package/dist/chunk-6PQNKL3G.js +0 -3
- package/dist/chunk-6V5CNXL6.js +0 -2
- package/dist/chunk-6VVV4WRR.js +0 -4
- package/dist/chunk-7BWFZPPZ.js +0 -2
- package/dist/chunk-7CYG22FH.js +0 -2
- package/dist/chunk-7F45LJKI.js +0 -2
- package/dist/chunk-7IWV2EG3.js +0 -3
- package/dist/chunk-7KCZELVM.js +0 -2
- package/dist/chunk-AFHTBORT.js +0 -2
- package/dist/chunk-AVRYW5OZ.js +0 -2
- package/dist/chunk-B3X6KU75.js +0 -2
- package/dist/chunk-B5D7QPBE.js +0 -4
- package/dist/chunk-BBCIS4DX.js +0 -16
- package/dist/chunk-BDUVI7TO.js +0 -3
- package/dist/chunk-BE7ZZTMC.js +0 -2
- package/dist/chunk-BHVUJOCQ.js +0 -3
- package/dist/chunk-BJT7LSPK.js +0 -3
- package/dist/chunk-BKVWUP7Y.js +0 -2
- package/dist/chunk-BQGB4HBD.js +0 -2
- package/dist/chunk-BRV7PIFF.js +0 -2
- package/dist/chunk-CEEZJXEF.js +0 -2
- package/dist/chunk-CIYLO6SI.js +0 -7
- package/dist/chunk-CJZXN4NU.js +0 -2
- package/dist/chunk-CNO7TOKL.js +0 -2
- package/dist/chunk-COF23M5F.js +0 -2
- package/dist/chunk-CWFP7GM5.js +0 -2
- package/dist/chunk-D2DHWI3D.js +0 -2
- package/dist/chunk-D4N5SQ2M.js +0 -4
- package/dist/chunk-DBRSYFXR.js +0 -2
- package/dist/chunk-DHUIOLDT.js +0 -2
- package/dist/chunk-DIRJWYBM.js +0 -6
- package/dist/chunk-DIUFNHRJ.js +0 -35
- package/dist/chunk-DRENNWRG.js +0 -2
- package/dist/chunk-DTZCKZEU.js +0 -4
- package/dist/chunk-DULC3QFP.js +0 -5
- package/dist/chunk-DYGHBZ2N.js +0 -16
- package/dist/chunk-E5R6AQ73.js +0 -40
- package/dist/chunk-E73UNJTF.js +0 -38
- package/dist/chunk-EKV5HX33.js +0 -2
- package/dist/chunk-EQHFIL6T.js +0 -3
- package/dist/chunk-ESIQ66Z7.js +0 -2
- package/dist/chunk-EVFUMY4R.js +0 -3
- package/dist/chunk-F7DY272B.js +0 -2
- package/dist/chunk-FBN2FGXG.js +0 -2
- package/dist/chunk-FDLOBR6P.js +0 -4
- package/dist/chunk-FESCRNVV.js +0 -5
- package/dist/chunk-FFRKR4EQ.js +0 -2
- package/dist/chunk-FGA2U4OR.js +0 -8
- package/dist/chunk-FIQRSHVM.js +0 -2
- package/dist/chunk-FPYLNQPT.js +0 -2
- package/dist/chunk-FRUSVINH.js +0 -2
- package/dist/chunk-GSP44ENC.js +0 -2
- package/dist/chunk-GUFSG5TX.js +0 -2
- package/dist/chunk-GYIZ4NXB.js +0 -2
- package/dist/chunk-GZIUDL6G.js +0 -2
- package/dist/chunk-H5EXS3HM.js +0 -2
- package/dist/chunk-HCXEQRFF.js +0 -18
- package/dist/chunk-HEHOQQKH.js +0 -2
- package/dist/chunk-HKGFPJ4T.js +0 -4
- package/dist/chunk-HLZTEXRA.js +0 -2
- package/dist/chunk-HOENASQM.js +0 -3
- package/dist/chunk-HVF5VBG6.js +0 -2
- package/dist/chunk-I55I7XXP.js +0 -2
- package/dist/chunk-IDFEUFKS.js +0 -2
- package/dist/chunk-IHGQTTVW.js +0 -2
- package/dist/chunk-IICPE7B2.js +0 -20
- package/dist/chunk-IL676XCC.js +0 -18
- package/dist/chunk-IW5XQG5G.js +0 -2
- package/dist/chunk-IZDPJ2QI.js +0 -2
- package/dist/chunk-J66VOFW6.js +0 -5
- package/dist/chunk-JFMEXGFE.js +0 -2
- package/dist/chunk-JGKUET5J.js +0 -3
- package/dist/chunk-JS4PGXMV.js +0 -3
- package/dist/chunk-JWTGMPIT.js +0 -80
- package/dist/chunk-JYR66JN5.js +0 -5
- package/dist/chunk-KFOYCQAJ.js +0 -9
- package/dist/chunk-KLFEXGQA.js +0 -2
- package/dist/chunk-KMVGRIO2.js +0 -2
- package/dist/chunk-KYSDI3GE.js +0 -5
- package/dist/chunk-L6PJPETJ.js +0 -29
- package/dist/chunk-LDVT66YM.js +0 -2
- package/dist/chunk-LEECKFCJ.js +0 -2
- package/dist/chunk-LMZ5PRUV.js +0 -2
- package/dist/chunk-LQRQN2XA.js +0 -2
- package/dist/chunk-LXABEJX3.js +0 -2
- package/dist/chunk-MNV5FSBW.js +0 -3
- package/dist/chunk-MPQ4OTBM.js +0 -2
- package/dist/chunk-MTDBHTSF.js +0 -2
- package/dist/chunk-MV3CDXPI.js +0 -38
- package/dist/chunk-MWN53KRN.js +0 -60
- package/dist/chunk-MXNGIEPU.js +0 -3
- package/dist/chunk-N2ZSIIGR.js +0 -117
- package/dist/chunk-N5B2NILC.js +0 -5
- package/dist/chunk-NJITK2GP.js +0 -2
- package/dist/chunk-NOGJXYFO.js +0 -2
- package/dist/chunk-NOYBFVJA.js +0 -554
- package/dist/chunk-NWQXSFFU.js +0 -3
- package/dist/chunk-ODDUPDP7.js +0 -13
- package/dist/chunk-OLIWTZI3.js +0 -3
- package/dist/chunk-OLNV6I6U.js +0 -2
- package/dist/chunk-OR2E3AGZ.js +0 -2
- package/dist/chunk-OSR2GEHQ.js +0 -2
- package/dist/chunk-OSSESPDX.js +0 -3
- package/dist/chunk-OWOOWNJ5.js +0 -7
- package/dist/chunk-P42EIXTA.js +0 -2
- package/dist/chunk-PJFGPYTU.js +0 -2
- package/dist/chunk-PP7KNN7L.js +0 -2
- package/dist/chunk-PU7T5QYQ.js +0 -2
- package/dist/chunk-PWWAJSKV.js +0 -74
- package/dist/chunk-PZL5T7SU.js +0 -73
- package/dist/chunk-QBE3YX64.js +0 -23
- package/dist/chunk-QGVTFRY2.js +0 -7
- package/dist/chunk-QOJONDS7.js +0 -2
- package/dist/chunk-QU5XRYB5.js +0 -4
- package/dist/chunk-QUU5OBVK.js +0 -11
- package/dist/chunk-RBLQNW26.js +0 -20
- package/dist/chunk-RTQ7NEKG.js +0 -81
- package/dist/chunk-SQXRS7BG.js +0 -4
- package/dist/chunk-SSK6LDPC.js +0 -2
- package/dist/chunk-SZHGTCPP.js +0 -7
- package/dist/chunk-T4N4P2K5.js +0 -16
- package/dist/chunk-TA3QKLLU.js +0 -2
- package/dist/chunk-TEBQMNVI.js +0 -43
- package/dist/chunk-TPFHAQ2G.js +0 -2
- package/dist/chunk-TQPCBMWT.js +0 -5
- package/dist/chunk-TQZV7KV4.js +0 -2
- package/dist/chunk-TRNAEQ6P.js +0 -3
- package/dist/chunk-TY7CRN3Z.js +0 -2
- package/dist/chunk-UHFYCMZO.js +0 -35
- package/dist/chunk-UICY4GTQ.js +0 -7
- package/dist/chunk-UVGEWT4Y.js +0 -26
- package/dist/chunk-UXW33INU.js +0 -29
- package/dist/chunk-VMPRET3I.js +0 -5
- package/dist/chunk-VNLGKHS6.js +0 -6
- package/dist/chunk-VQILFTEH.js +0 -2
- package/dist/chunk-VUPHCS7Y.js +0 -57
- package/dist/chunk-VVZSBTSU.js +0 -23
- package/dist/chunk-VZRNID6A.js +0 -2
- package/dist/chunk-W5OXRYGE.js +0 -7
- package/dist/chunk-W6STWDQI.js +0 -57
- package/dist/chunk-W7CXK74K.js +0 -2
- package/dist/chunk-WB3WYIRE.js +0 -4
- package/dist/chunk-WDNVY4E7.js +0 -20
- package/dist/chunk-WK46TNUM.js +0 -3
- package/dist/chunk-WNTFFKAX.js +0 -12
- package/dist/chunk-WOIKCX6A.js +0 -2
- package/dist/chunk-WUN6KBHV.js +0 -2
- package/dist/chunk-WYCTJDVR.js +0 -2
- package/dist/chunk-WYPL7GF7.js +0 -2
- package/dist/chunk-XDAUYDFT.js +0 -2
- package/dist/chunk-XDQMU3BT.js +0 -2
- package/dist/chunk-XFA4SSO3.js +0 -3
- package/dist/chunk-XGZEP6GR.js +0 -8
- package/dist/chunk-XPDPNWTQ.js +0 -368
- package/dist/chunk-XRYABF57.js +0 -8
- package/dist/chunk-YBGKCQIS.js +0 -2
- package/dist/chunk-YEN6CYC7.js +0 -16
- package/dist/chunk-YF5IB2LF.js +0 -2
- package/dist/chunk-YI2AWIHC.js +0 -3
- package/dist/chunk-YPWBKGFU.js +0 -2
- package/dist/chunk-YPWHBBIS.js +0 -2
- package/dist/chunk-YSH6U3L4.js +0 -3
- package/dist/chunk-YU5DZUZI.js +0 -10
- package/dist/chunk-YWO5DDRC.js +0 -16
- package/dist/chunk-Z4CDXYNQ.js +0 -2
- package/dist/chunk-ZF5KHH7C.js +0 -2
- package/dist/chunk-ZOHS7AQV.js +0 -21
- package/dist/chunk-ZTI4SBFV.js +0 -3
- package/dist/code-MI6F2TTU.js +0 -2
- package/dist/code-result-json-FXALY4HE.js +0 -2
- package/dist/command-descriptors-P34VABY5.js +0 -343
- package/dist/dataflow-4KEMJPC6.js +0 -2
- package/dist/dependence-slice-R7FPWD5M.js +0 -2
- package/dist/deps-7EMQUYUT.js +0 -2
- package/dist/direct-navigation-6YO234F2.js +0 -3
- package/dist/entry-map-KOOLR26E.js +0 -2
- package/dist/files-OPIPJIGZ.js +0 -2
- package/dist/graph-evidence-Bjyky2V4.d.ts +0 -126
- package/dist/hierarchy-QPD2CAER.js +0 -2
- package/dist/imports-M6HUXRXC.js +0 -2
- package/dist/members-I5MEFOCT.js +0 -2
- package/dist/methods-5JYGGHXA.js +0 -2
- package/dist/next-anchor-candidates-BwMczMvX.d.ts +0 -90
- package/dist/output-continuation-command-UPQAAKBP.js +0 -3
- package/dist/output-pagination-3OFL2MJV.js +0 -19
- package/dist/project-reindex-UKKQ5PLS.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 -52
- 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 -63
- 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 -34
- package/dist/queries/wrapper-candidates.js +0 -2
- package/dist/refs-PSU4JZZW.js +0 -2
- package/dist/refs-pagination-JG6CJMRC.js +0 -2
- package/dist/slice-HYRATV64.js +0 -2
- package/dist/source-snippet-_wrcgmZc.d.ts +0 -15
- package/dist/stats-OOJ74B32.js +0 -2
- package/dist/surface-VTGDYWF5.js +0 -2
- package/dist/symbol-resolution-WD5EU5JE.js +0 -2
- package/dist/system-LRQNFOR2.js +0 -2
- package/dist/trace-F4B6OLL4.js +0 -2
- package/dist/value-flow-VRPZY72V.js +0 -2
- package/skills/concrete-plan/SKILL.md +0 -8
- package/skills/concrete-plan/agents/openai.yaml +0 -4
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
import * as TypeScript from 'typescript';
|
|
2
|
+
import { I as IndexedDefinition } from '../symbol-types-BIQwfoAx.js';
|
|
3
|
+
import { S as ScipDatabase } from '../db-BwIVAYNB.js';
|
|
4
|
+
import 'better-sqlite3';
|
|
5
|
+
import '../config-types-B9B60MiR.js';
|
|
6
|
+
|
|
7
|
+
interface CandidatePipelineCounters {
|
|
8
|
+
pipeline: string | undefined;
|
|
9
|
+
loadedCandidates: number;
|
|
10
|
+
filteredCandidates: number;
|
|
11
|
+
scannedCandidates: number;
|
|
12
|
+
evaluatedCandidates: number;
|
|
13
|
+
matchedResults: number;
|
|
14
|
+
emittedResults: number;
|
|
15
|
+
scanLimitApplied: boolean;
|
|
16
|
+
resultLimitApplied: boolean;
|
|
17
|
+
}
|
|
18
|
+
interface CandidateScanProgress {
|
|
19
|
+
evaluated: number;
|
|
20
|
+
scanned: number;
|
|
21
|
+
matched: number;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/** What a function hands to the outside world: a value, a field of a returned object, an effect, a write, or an exit. */
|
|
25
|
+
type SliceCohesionOutputKind = 'return' | 'return-property' | 'effect-call' | 'mutation' | 'throw';
|
|
26
|
+
/**
|
|
27
|
+
* One control-flow unit of the body. `jump` and `declaration` units are
|
|
28
|
+
* placed but not counted: they carry no analyzable data flow.
|
|
29
|
+
*/
|
|
30
|
+
type SliceCohesionUnitKind = 'statement' | 'predicate' | 'return' | 'throw' | 'jump' | 'declaration';
|
|
31
|
+
/** `signal` when the split is backed by a complete local model and a narrow extraction; `support` when a reviewer must confirm it. */
|
|
32
|
+
type SliceCohesionActionTier = 'signal' | 'support';
|
|
33
|
+
/**
|
|
34
|
+
* What kind of body was sliced. A React component or hook is bound by hook
|
|
35
|
+
* rules, and an orchestration root sequences independent operations by
|
|
36
|
+
* design, so each is read differently from a plain calculation.
|
|
37
|
+
*/
|
|
38
|
+
type SliceCohesionArchetype = 'calculation' | 'react-component' | 'react-hook' | 'orchestration';
|
|
39
|
+
/**
|
|
40
|
+
* What an extracted cluster would be: a pure calculation, an operation that
|
|
41
|
+
* computes a result while awaiting or affecting the outside, a custom hook,
|
|
42
|
+
* or a sequence of effects.
|
|
43
|
+
*/
|
|
44
|
+
type SliceCohesionClusterKind = 'calculation' | 'operation' | 'hook' | 'effects';
|
|
45
|
+
/** The largest qualifying cluster stays in place; the others are the extractions; the rest are below threshold. */
|
|
46
|
+
type SliceCohesionClusterRole = 'remainder' | 'extraction' | 'below-threshold';
|
|
47
|
+
interface SliceCohesionUnit {
|
|
48
|
+
index: number;
|
|
49
|
+
kind: SliceCohesionUnitKind;
|
|
50
|
+
startLine: number;
|
|
51
|
+
endLine: number;
|
|
52
|
+
label: string;
|
|
53
|
+
}
|
|
54
|
+
interface SliceCohesionOutput {
|
|
55
|
+
id: string;
|
|
56
|
+
kind: SliceCohesionOutputKind;
|
|
57
|
+
label: string;
|
|
58
|
+
/** Zero-based line of the first unit producing the output. */
|
|
59
|
+
line: number;
|
|
60
|
+
/** Counted units that produce this output; a function's return value merges every non-guard return statement. */
|
|
61
|
+
units: number[];
|
|
62
|
+
/** True when the output carries no computed value: an exit whose slice is only itself. */
|
|
63
|
+
guard: boolean;
|
|
64
|
+
/** True for a React hook call such as `useEffect`: a lifecycle effect rather than a plain call. */
|
|
65
|
+
hook: boolean;
|
|
66
|
+
/** Size of the computation slice: counted units reached backward through data edges and non-guard control edges. */
|
|
67
|
+
sliceSize: number;
|
|
68
|
+
/** Size of the full slice: counted units reached through data edges and every control edge, guards included. */
|
|
69
|
+
fullSliceSize: number;
|
|
70
|
+
/** The computation slice itself; present when the candidate was requested in detail. */
|
|
71
|
+
slice?: number[];
|
|
72
|
+
/** The full slice itself; present when the candidate was requested in detail. */
|
|
73
|
+
fullSlice?: number[];
|
|
74
|
+
}
|
|
75
|
+
interface SliceCohesionLineRange {
|
|
76
|
+
startLine: number;
|
|
77
|
+
endLine: number;
|
|
78
|
+
}
|
|
79
|
+
interface SliceCohesionCluster {
|
|
80
|
+
outputs: string[];
|
|
81
|
+
/** Counted units exclusive to this cluster after shared setup is removed. */
|
|
82
|
+
units: number[];
|
|
83
|
+
/** Zero-based line ranges covering the cluster's units. */
|
|
84
|
+
lineRanges: SliceCohesionLineRange[];
|
|
85
|
+
/**
|
|
86
|
+
* The parameters an extraction would take: function parameters, `this`,
|
|
87
|
+
* shared-setup bindings, and locals of an enclosing function the cluster
|
|
88
|
+
* reads. Imports, module-level names, globals, and JSX tags stay imports.
|
|
89
|
+
*/
|
|
90
|
+
inputs: string[];
|
|
91
|
+
kind: SliceCohesionClusterKind;
|
|
92
|
+
role: SliceCohesionClusterRole;
|
|
93
|
+
/** Whether `inputs` is within the signal bound; the remainder never needs an interface. */
|
|
94
|
+
narrow: boolean;
|
|
95
|
+
/** Hook calls the cluster contains, for hook-candidate wording. */
|
|
96
|
+
hooks: string[];
|
|
97
|
+
/** True when every output in the cluster is a throw: validation, not a computation. */
|
|
98
|
+
guardOnly: boolean;
|
|
99
|
+
}
|
|
100
|
+
interface SliceCohesionMetrics {
|
|
101
|
+
/** Share of counted statements in every value output's computation slice (Ott and Thuss tightness). */
|
|
102
|
+
tightness: number;
|
|
103
|
+
/** Tightness over full slices, guards included. */
|
|
104
|
+
fullTightness: number;
|
|
105
|
+
/** Mean computation-slice size as a share of counted statements (Ott and Thuss coverage). */
|
|
106
|
+
sliceShare: number;
|
|
107
|
+
fullSliceShare: number;
|
|
108
|
+
/** Mean share of each computation slice that lies in the intersection of all of them (overlap). */
|
|
109
|
+
overlap: number;
|
|
110
|
+
/** Statements in every full slice. */
|
|
111
|
+
superglue: number;
|
|
112
|
+
/** Statements in two or more full slices. */
|
|
113
|
+
glue: number;
|
|
114
|
+
}
|
|
115
|
+
interface SliceCohesionCoverage {
|
|
116
|
+
/** `partial` only when a gap can drop dependencies; conservative approximations keep `complete`. */
|
|
117
|
+
status: 'complete' | 'partial';
|
|
118
|
+
/**
|
|
119
|
+
* What `complete` covers: the function-local flow model. Runtime order,
|
|
120
|
+
* callee behavior, and framework scheduling are outside it.
|
|
121
|
+
*/
|
|
122
|
+
model: 'function-local-flow';
|
|
123
|
+
basis: 'typescript-local-flow-backward-slices';
|
|
124
|
+
unsupported: string[];
|
|
125
|
+
/** Flow edges used whose strength is candidate rather than exact. */
|
|
126
|
+
candidateEdges: number;
|
|
127
|
+
/** Candidate edges are treated as dependencies, so they can merge clusters but never separate them. */
|
|
128
|
+
candidateEdgeEffect: 'merge-only';
|
|
129
|
+
}
|
|
130
|
+
interface SliceCohesionCandidate {
|
|
131
|
+
symbol: string;
|
|
132
|
+
shortName: string;
|
|
133
|
+
relativePath: string;
|
|
134
|
+
startLine: number;
|
|
135
|
+
endLine: number;
|
|
136
|
+
loc: number;
|
|
137
|
+
archetype: SliceCohesionArchetype;
|
|
138
|
+
/** True under a scripts, tools, bin, or migrations directory: operational code that legitimately sequences steps. */
|
|
139
|
+
operational: boolean;
|
|
140
|
+
/** Every body unit; present when the candidate was requested in detail. */
|
|
141
|
+
units?: SliceCohesionUnit[];
|
|
142
|
+
/** Units that carry data flow: statements, predicates, returns, and throws. */
|
|
143
|
+
statementCount: number;
|
|
144
|
+
outputs: SliceCohesionOutput[];
|
|
145
|
+
metrics: SliceCohesionMetrics;
|
|
146
|
+
/** Independent computations, largest first. */
|
|
147
|
+
clusters: SliceCohesionCluster[];
|
|
148
|
+
/** Value outputs that depend on shared setup only; they belong to whichever function keeps the setup. */
|
|
149
|
+
preambleOnlyOutputs: string[];
|
|
150
|
+
/** Counted units derived only from inputs and read by several outputs. */
|
|
151
|
+
preamble: number[];
|
|
152
|
+
/** Counted units no output depends on. */
|
|
153
|
+
orphans: number[];
|
|
154
|
+
/** Statements in the extraction clusters: what could leave the function while the largest computation stays. */
|
|
155
|
+
separableStatements: number;
|
|
156
|
+
splitCandidate: boolean;
|
|
157
|
+
actionTier: SliceCohesionActionTier;
|
|
158
|
+
tierReason: string;
|
|
159
|
+
evidenceReasons: string[];
|
|
160
|
+
recommendation: string;
|
|
161
|
+
coverage: SliceCohesionCoverage;
|
|
162
|
+
}
|
|
163
|
+
interface SourceFileCache {
|
|
164
|
+
files: Map<string, TypeScript.SourceFile | null>;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Measure functional cohesion from backward slices.
|
|
168
|
+
*
|
|
169
|
+
* For each thing a function hands to the outside world (its return value,
|
|
170
|
+
* each property of a returned object, an effect call, a write to state it
|
|
171
|
+
* does not own, a throw) the analysis takes the backward slice over the
|
|
172
|
+
* local definition-use and control-dependence graph. Outputs whose slices
|
|
173
|
+
* share statements belong to one computation; outputs whose slices are
|
|
174
|
+
* disjoint are separate local computations that happen to live in one
|
|
175
|
+
* body. Statements derived only from the inputs and read by several
|
|
176
|
+
* outputs are shared setup, not glue. The partition is the finding: the
|
|
177
|
+
* largest computation stays in place and every other qualifying cluster is
|
|
178
|
+
* an extraction with its parameters already named.
|
|
179
|
+
*/
|
|
180
|
+
declare function sliceCohesion(db: ScipDatabase, opts?: {
|
|
181
|
+
scope?: string;
|
|
182
|
+
symbol?: string;
|
|
183
|
+
minLoc?: number;
|
|
184
|
+
minStatements?: number;
|
|
185
|
+
minClusterUnits?: number;
|
|
186
|
+
limit?: number;
|
|
187
|
+
scanLimit?: number;
|
|
188
|
+
/** Include every unit and slice in each candidate; defaults to true for a targeted symbol. */
|
|
189
|
+
detail?: boolean;
|
|
190
|
+
onProgress?: (progress: CandidateScanProgress) => void;
|
|
191
|
+
/** Receives the scan counters, so a caller can report how much of the repository the result covers. */
|
|
192
|
+
onProfile?: (counters: CandidatePipelineCounters) => void;
|
|
193
|
+
}): SliceCohesionCandidate[];
|
|
194
|
+
/**
|
|
195
|
+
* Slice one callable. Null when the file is not TypeScript-like, the
|
|
196
|
+
* compiler is unavailable, no function-like body sits inside the
|
|
197
|
+
* definition range, or the flow analysis reports no support at all.
|
|
198
|
+
*/
|
|
199
|
+
declare function sliceCohesionForDefinition(db: ScipDatabase, definition: IndexedDefinition, opts?: {
|
|
200
|
+
minStatements?: number;
|
|
201
|
+
minClusterUnits?: number;
|
|
202
|
+
detail?: boolean;
|
|
203
|
+
}, cache?: SourceFileCache): SliceCohesionCandidate | null;
|
|
204
|
+
|
|
205
|
+
export { type SliceCohesionActionTier, type SliceCohesionArchetype, type SliceCohesionCandidate, type SliceCohesionCluster, type SliceCohesionClusterKind, type SliceCohesionClusterRole, type SliceCohesionCoverage, type SliceCohesionLineRange, type SliceCohesionMetrics, type SliceCohesionOutput, type SliceCohesionOutputKind, type SliceCohesionUnit, type SliceCohesionUnitKind, sliceCohesion, sliceCohesionForDefinition };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a,b}from"../chunk-BUTWYEPH.js";import"../chunk-NOWINRRN.js";import"../chunk-N2WN6I3L.js";import"../chunk-BOJ5SVE2.js";import"../chunk-6LSEIIF7.js";import"../chunk-BGBBVSH4.js";import"../chunk-36SGVCGX.js";import"../chunk-AGWFSTXC.js";import"../chunk-P5XHIJHI.js";import"../chunk-73AAKPUC.js";import"../chunk-KZBJWZJB.js";import"../chunk-4WTUBQ36.js";import"../chunk-NZAXKGRL.js";import"../chunk-KK7GPALL.js";import"../chunk-YNQCGEQE.js";import"../chunk-FMRN2TRL.js";import"../chunk-DA7RPPDF.js";import"../chunk-4WCUBZU3.js";import"../chunk-E3FDPXZK.js";import"../chunk-DHEQMPLW.js";import"../chunk-KHWRRPV4.js";import"../chunk-72AD6ZRR.js";import"../chunk-YUKYB54I.js";import"../chunk-GCKCF5FL.js";import"../chunk-DVFP6PZI.js";import"../chunk-5D2LVK7O.js";import"../chunk-7WTPQ4NX.js";import"../chunk-FVULPZDF.js";import"../chunk-D3FDISIC.js";import"../chunk-A2IIGFMJ.js";import"../chunk-PH52RA7D.js";import"../chunk-GVWX5T43.js";import"../chunk-T6DK3ZP7.js";import"../chunk-5TNQJUR2.js";export{a as sliceCohesion,b as sliceCohesionForDefinition};
|
|
2
|
+
//# sourceMappingURL=slice-cohesion.js.map
|
|
@@ -1,209 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
import
|
|
6
|
-
export { a as BindingDefinitionEvidence } from '../code-B17qEMbt.js';
|
|
7
|
-
import { g as SourceSearchTextCoverage } from '../source-search-types-Dwz8KeuW.js';
|
|
8
|
-
import { a as SourceUnitSnippet } from '../source-snippet-_wrcgmZc.js';
|
|
1
|
+
import '../db-BwIVAYNB.js';
|
|
2
|
+
export { B as BehaviorSignal, a as BehaviorSkeleton, S as SourceInspectionChannelCoverage, f as SourceInspectionContinuation, g as SourceInspectionEvidenceBudgets, h as SourceInspectionEvidenceChannel, i as SourceInspectionLocation, j as SourceInspectionOmissionAnchor, k as SourceInspectionOmissionGroup, l as SourceInspectionOptions, m as SourceInspectionPacketCoverage, n as SourceInspectionPathUnit, o as SourceInspectionResult, p as SourceInspectionRuntimeFact, q as SourceInspectionSearch, r as SourceInspectionSearchScope, s as SourceInspectionSlice, t as SourceInspectionSourceUnit, u as SourceInspectionStoppingStatus, v as SourceInspectionStoppingSummary, w as SourceInspectionUnit, x as SourceInspectionUnitRole, y as SourceInspectionView, z as inspectSource } from '../source-inspection-91U9zdO3.js';
|
|
3
|
+
import '../exploration-topology-CSgEyAz-.js';
|
|
4
|
+
export { B as BindingClosure, a as BindingDefinitionEvidence } from '../code-BNyrCF3_.js';
|
|
5
|
+
import '../source-search-types-DWGYNg8M.js';
|
|
9
6
|
import 'better-sqlite3';
|
|
10
7
|
import '../config-types-B9B60MiR.js';
|
|
11
8
|
import '../symbol-types-BIQwfoAx.js';
|
|
12
9
|
import './deps.js';
|
|
13
|
-
import '
|
|
10
|
+
import '../trace-BMjw3prn.js';
|
|
14
11
|
import '../repository-text-C0Q8VYdN.js';
|
|
15
12
|
import './outline.js';
|
|
16
13
|
import '../file-kind-BKCVMNUf.js';
|
|
17
|
-
|
|
18
|
-
type SourceInspectionEvidenceChannel = 'search' | 'exact-source' | 'definition' | 'caller' | 'callee' | 'production-reference' | 'test-reference' | 'dependency' | 'consumer';
|
|
19
|
-
type SourceInspectionEvidenceBudgets = Partial<Record<SourceInspectionEvidenceChannel, number>>;
|
|
20
|
-
interface SourceInspectionChannelCoverage {
|
|
21
|
-
candidateUnits: number;
|
|
22
|
-
returnedUnits: number;
|
|
23
|
-
omittedUnits: number;
|
|
24
|
-
maxUnits: number;
|
|
25
|
-
}
|
|
26
|
-
type SourceInspectionUnitRole = 'search' | 'location' | 'definition' | 'reference' | 'caller' | 'callee' | 'dependency' | 'consumer';
|
|
27
|
-
type SourceInspectionView = 'source' | 'behavior';
|
|
28
|
-
|
|
29
|
-
interface SourceInspectionSlice extends SourceUnitSnippet {
|
|
30
|
-
reasons: string[];
|
|
31
|
-
focusLines: number[];
|
|
32
|
-
ownerSymbol: string | null;
|
|
33
|
-
ownerShort: string | null;
|
|
34
|
-
}
|
|
35
|
-
interface SourceInspectionSourceUnit extends SourceInspectionSlice {
|
|
36
|
-
kind: 'source';
|
|
37
|
-
id: string;
|
|
38
|
-
roles: SourceInspectionUnitRole[];
|
|
39
|
-
symbols: string[];
|
|
40
|
-
omittedCharacters: number;
|
|
41
|
-
behavior?: BehaviorSkeleton;
|
|
42
|
-
runtimeFacts?: SourceInspectionRuntimeFact[];
|
|
43
|
-
/** @deprecated Inspect omits whole ranked units rather than clipping source within a returned unit. */
|
|
44
|
-
exactFollowup?: string;
|
|
45
|
-
}
|
|
46
|
-
/** A compact, source-recoverable projection of one mechanically grounded runtime operation. */
|
|
47
|
-
interface SourceInspectionRuntimeFact {
|
|
48
|
-
observationId: string;
|
|
49
|
-
protocol: string;
|
|
50
|
-
action: string;
|
|
51
|
-
role: string;
|
|
52
|
-
strength: BoundaryEvidenceStrength;
|
|
53
|
-
resolution: BoundaryResolutionState;
|
|
54
|
-
line: number;
|
|
55
|
-
endLine: number;
|
|
56
|
-
keyParts: Array<{
|
|
57
|
-
name: string;
|
|
58
|
-
value: string;
|
|
59
|
-
evidence: string;
|
|
60
|
-
}>;
|
|
61
|
-
derivation: {
|
|
62
|
-
kind: string;
|
|
63
|
-
rule: string;
|
|
64
|
-
sourceSpans: number;
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
|
-
interface SourceInspectionPathUnit {
|
|
68
|
-
kind: 'path';
|
|
69
|
-
id: string;
|
|
70
|
-
roles: Array<'dependency' | 'consumer'>;
|
|
71
|
-
relativePath: string;
|
|
72
|
-
relationship: string;
|
|
73
|
-
reasons: string[];
|
|
74
|
-
symbols: string[];
|
|
75
|
-
exactFollowup: string;
|
|
76
|
-
}
|
|
77
|
-
/** One independently useful source excerpt or unresolved file relationship in the shared packet. */
|
|
78
|
-
type SourceInspectionUnit = SourceInspectionSourceUnit | SourceInspectionPathUnit;
|
|
79
|
-
/** @deprecated Inspect no longer emits semantic packet continuations. */
|
|
80
|
-
interface SourceInspectionContinuation {
|
|
81
|
-
cursor: string;
|
|
82
|
-
command: string;
|
|
83
|
-
indexGeneration: string;
|
|
84
|
-
}
|
|
85
|
-
interface SourceInspectionSearch {
|
|
86
|
-
pattern: string;
|
|
87
|
-
matchingLines: number;
|
|
88
|
-
returnedMatches: number;
|
|
89
|
-
omittedMatches: number;
|
|
90
|
-
matchingFiles?: number;
|
|
91
|
-
returnedFiles?: number;
|
|
92
|
-
omittedFiles?: number;
|
|
93
|
-
candidateUnits?: number;
|
|
94
|
-
selectedUnits?: number;
|
|
95
|
-
omittedUnits?: number;
|
|
96
|
-
scopeHints?: SourceInspectionSearchScope[];
|
|
97
|
-
omittedScopeHints?: number;
|
|
98
|
-
textCoverage?: SourceSearchTextCoverage;
|
|
99
|
-
exactFollowup?: string;
|
|
100
|
-
}
|
|
101
|
-
interface SourceInspectionSearchScope {
|
|
102
|
-
scope: string;
|
|
103
|
-
matchingLines: number;
|
|
104
|
-
returnedMatches: number;
|
|
105
|
-
exactFollowup: string;
|
|
106
|
-
}
|
|
107
|
-
interface SourceInspectionLocation {
|
|
108
|
-
target: string;
|
|
109
|
-
matched: boolean;
|
|
110
|
-
}
|
|
111
|
-
interface SourceInspectionPacketCoverage {
|
|
112
|
-
mode: 'bounded' | 'complete';
|
|
113
|
-
candidateUnits: number;
|
|
114
|
-
returnedUnits: number;
|
|
115
|
-
omittedUnits: number;
|
|
116
|
-
omittedByRole: Partial<Record<SourceInspectionUnitRole, number>>;
|
|
117
|
-
exactSelectorsComplete: boolean;
|
|
118
|
-
maxUnits: number;
|
|
119
|
-
maxCharacters: number;
|
|
120
|
-
channels?: Record<SourceInspectionEvidenceChannel, SourceInspectionChannelCoverage>;
|
|
121
|
-
expansionCommand?: string;
|
|
122
|
-
}
|
|
123
|
-
interface SourceInspectionOmissionAnchor {
|
|
124
|
-
relativePath: string;
|
|
125
|
-
line: number;
|
|
126
|
-
ownerShort: string | null;
|
|
127
|
-
roles: SourceInspectionUnitRole[];
|
|
128
|
-
behaviorSignals: BehaviorSignal[];
|
|
129
|
-
}
|
|
130
|
-
interface SourceInspectionOmissionGroup {
|
|
131
|
-
id: string;
|
|
132
|
-
scope: string;
|
|
133
|
-
channel?: SourceInspectionEvidenceChannel;
|
|
134
|
-
roles: SourceInspectionUnitRole[];
|
|
135
|
-
behaviorSignals: BehaviorSignal[];
|
|
136
|
-
candidateUnits: number;
|
|
137
|
-
sourceCharacters: number;
|
|
138
|
-
anchors: SourceInspectionOmissionAnchor[];
|
|
139
|
-
drillCommand: string;
|
|
140
|
-
}
|
|
141
|
-
type SourceInspectionStoppingStatus = 'stop-ready' | 'relevance-check-required' | 'exact-evidence-withheld';
|
|
142
|
-
interface SourceInspectionStoppingSummary {
|
|
143
|
-
/** Query-scoped completion; it never claims that the user's task is finished. */
|
|
144
|
-
queryStatus?: ExplorationCompletionStatus;
|
|
145
|
-
/** @deprecated Use queryStatus. Retained for one compatibility window. */
|
|
146
|
-
status: SourceInspectionStoppingStatus;
|
|
147
|
-
openEvidence: number;
|
|
148
|
-
guidance: string;
|
|
149
|
-
drillCommands: string[];
|
|
150
|
-
}
|
|
151
|
-
interface SourceInspectionResult {
|
|
152
|
-
searches: SourceInspectionSearch[];
|
|
153
|
-
evidence: EvidenceResult[];
|
|
154
|
-
locations: SourceInspectionLocation[];
|
|
155
|
-
/** @deprecated Prefer units, which includes every evidence role in one deduplicated packet. */
|
|
156
|
-
slices: SourceInspectionSlice[];
|
|
157
|
-
/** @deprecated Prefer candidateUnits. */
|
|
158
|
-
candidateSlices: number;
|
|
159
|
-
/** @deprecated Prefer omittedUnits. */
|
|
160
|
-
omittedSlices: number;
|
|
161
|
-
/** @deprecated Prefer packetCoverage.maxUnits. */
|
|
162
|
-
maxSlices: number;
|
|
163
|
-
maxTotalLines: number;
|
|
164
|
-
units?: SourceInspectionUnit[];
|
|
165
|
-
candidateUnits?: number;
|
|
166
|
-
omittedUnits?: number;
|
|
167
|
-
maxUnits?: number;
|
|
168
|
-
maxCharacters?: number;
|
|
169
|
-
returnedLines?: number;
|
|
170
|
-
returnedCharacters?: number;
|
|
171
|
-
returnedViewCharacters?: number;
|
|
172
|
-
view?: SourceInspectionView;
|
|
173
|
-
omissionGroups?: SourceInspectionOmissionGroup[];
|
|
174
|
-
packetCoverage?: SourceInspectionPacketCoverage;
|
|
175
|
-
stoppingSummary?: SourceInspectionStoppingSummary;
|
|
176
|
-
/** Exact downstream call targets outside the materialized behavior constructs. */
|
|
177
|
-
causalFrontier?: SystemMapNextAnchorPacket;
|
|
178
|
-
bindingClosure?: BindingClosure;
|
|
179
|
-
/** @deprecated Inspect no longer emits semantic packet continuations. */
|
|
180
|
-
continuation?: SourceInspectionContinuation | null;
|
|
181
|
-
}
|
|
182
|
-
interface SourceInspectionOptions {
|
|
183
|
-
searches?: readonly string[];
|
|
184
|
-
symbols?: readonly string[];
|
|
185
|
-
locations?: readonly string[];
|
|
186
|
-
scope?: string;
|
|
187
|
-
context?: number;
|
|
188
|
-
searchLimit?: number;
|
|
189
|
-
maxUnits?: number;
|
|
190
|
-
full?: boolean;
|
|
191
|
-
view?: SourceInspectionView;
|
|
192
|
-
/** @deprecated Inspect returns complete syntax units. */
|
|
193
|
-
unitLines?: number;
|
|
194
|
-
/** @deprecated Inspect no longer applies a packet line budget. */
|
|
195
|
-
totalLines?: number;
|
|
196
|
-
/** @deprecated Inspect no longer applies a packet unit budget. */
|
|
197
|
-
sliceLimit?: number;
|
|
198
|
-
/** Displayed-evidence character ceiling; source view may surface one whole oversized unit for CLI refusal. */
|
|
199
|
-
maxCharacters?: number;
|
|
200
|
-
evidence?: EvidenceOptions;
|
|
201
|
-
/** Independent unit ceilings; omitted channel evidence remains recoverable in coverage and omission groups. */
|
|
202
|
-
evidenceBudgets?: SourceInspectionEvidenceBudgets;
|
|
203
|
-
/** @deprecated Inspect no longer accepts semantic packet cursors. */
|
|
204
|
-
cursor?: string;
|
|
205
|
-
}
|
|
206
|
-
/** Build one ranked, deduplicated semantic packet from several known source questions. */
|
|
207
|
-
declare function inspectSource(db: ScipDatabase, opts: SourceInspectionOptions): SourceInspectionResult;
|
|
208
|
-
|
|
209
|
-
export { BehaviorSignal, BehaviorSkeleton, BindingClosure, type SourceInspectionChannelCoverage, type SourceInspectionContinuation, type SourceInspectionEvidenceBudgets, type SourceInspectionEvidenceChannel, type SourceInspectionLocation, type SourceInspectionOmissionAnchor, type SourceInspectionOmissionGroup, type SourceInspectionOptions, type SourceInspectionPacketCoverage, type SourceInspectionPathUnit, type SourceInspectionResult, type SourceInspectionRuntimeFact, type SourceInspectionSearch, type SourceInspectionSearchScope, type SourceInspectionSlice, type SourceInspectionSourceUnit, type SourceInspectionStoppingStatus, type SourceInspectionStoppingSummary, type SourceInspectionUnit, type SourceInspectionUnitRole, type SourceInspectionView, inspectSource };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-AC566WBP.js";import"../chunk-F56GCXXS.js";import"../chunk-55UQAMZO.js";import"../chunk-D3NX5XIE.js";import"../chunk-VTY3VK6E.js";import"../chunk-ZR4HBC2H.js";import"../chunk-F4LUHJTF.js";import"../chunk-ZIBYCYKK.js";import"../chunk-DIO3FUSG.js";import"../chunk-MOQQBQRD.js";import"../chunk-YGVRMGYN.js";import"../chunk-GMVSHUKZ.js";import"../chunk-AOSIYPTA.js";import"../chunk-F2V2LPET.js";import"../chunk-NLOQOBXI.js";import"../chunk-PKN354TH.js";import"../chunk-BOJ5SVE2.js";import"../chunk-6LSEIIF7.js";import"../chunk-BGBBVSH4.js";import"../chunk-36SGVCGX.js";import"../chunk-AGWFSTXC.js";import"../chunk-P5XHIJHI.js";import"../chunk-73AAKPUC.js";import"../chunk-KZBJWZJB.js";import"../chunk-4WTUBQ36.js";import"../chunk-NZAXKGRL.js";import"../chunk-KK7GPALL.js";import"../chunk-YNQCGEQE.js";import"../chunk-FMRN2TRL.js";import"../chunk-DA7RPPDF.js";import"../chunk-4WCUBZU3.js";import"../chunk-E3FDPXZK.js";import"../chunk-DHEQMPLW.js";import"../chunk-KHWRRPV4.js";import"../chunk-72AD6ZRR.js";import"../chunk-YUKYB54I.js";import"../chunk-GCKCF5FL.js";import"../chunk-DVFP6PZI.js";import"../chunk-5D2LVK7O.js";import"../chunk-7WTPQ4NX.js";import"../chunk-FVULPZDF.js";import"../chunk-D3FDISIC.js";import"../chunk-A2IIGFMJ.js";import"../chunk-PH52RA7D.js";import"../chunk-GVWX5T43.js";import"../chunk-T6DK3ZP7.js";import"../chunk-5TNQJUR2.js";export{a as inspectSource};
|
|
2
2
|
//# sourceMappingURL=source-inspection.js.map
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { S as ScipDatabase } from '../db-BwIVAYNB.js';
|
|
2
|
-
import { d as SourceSearchOptions, e as SourceSearchResult } from '../source-search-types-
|
|
3
|
-
export { S as SourceSearchFileCoverage, a as SourceSearchIdentity, b as SourceSearchIdentityCoverage, c as SourceSearchMatch, f as SourceSearchScopeHint, g as SourceSearchTextCoverage } from '../source-search-types-
|
|
2
|
+
import { d as SourceSearchOptions, e as SourceSearchResult } from '../source-search-types-DWGYNg8M.js';
|
|
3
|
+
export { S as SourceSearchFileCoverage, a as SourceSearchIdentity, b as SourceSearchIdentityCoverage, c as SourceSearchMatch, f as SourceSearchScopeHint, g as SourceSearchTextCoverage } from '../source-search-types-DWGYNg8M.js';
|
|
4
4
|
export { S as SourceObservationFreshness, a as SourceSemanticFreshnessState } from '../repository-text-C0Q8VYdN.js';
|
|
5
5
|
import 'better-sqlite3';
|
|
6
6
|
import '../config-types-B9B60MiR.js';
|
|
7
7
|
import '../file-kind-BKCVMNUf.js';
|
|
8
|
-
import '../source-snippet-_wrcgmZc.js';
|
|
9
8
|
|
|
10
9
|
/** Search the source of indexed documents and retain line and symbol ownership. */
|
|
11
10
|
declare function searchSource(db: ScipDatabase, pattern: string, opts?: SourceSearchOptions): SourceSearchResult;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-4BHGBMNO.js";import"../chunk-F56GCXXS.js";import"../chunk-YGVRMGYN.js";import"../chunk-YNQCGEQE.js";import"../chunk-E3FDPXZK.js";import"../chunk-DHEQMPLW.js";import"../chunk-YUKYB54I.js";import"../chunk-5D2LVK7O.js";import"../chunk-7WTPQ4NX.js";import"../chunk-FVULPZDF.js";import"../chunk-D3FDISIC.js";import"../chunk-A2IIGFMJ.js";import"../chunk-PH52RA7D.js";import"../chunk-GVWX5T43.js";import"../chunk-T6DK3ZP7.js";import"../chunk-5TNQJUR2.js";export{a as searchSource};
|
|
2
2
|
//# sourceMappingURL=source-search.js.map
|
package/dist/queries/stats.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ interface StatsResult {
|
|
|
8
8
|
definitions: number;
|
|
9
9
|
references: number;
|
|
10
10
|
indexSizeBytes: number;
|
|
11
|
+
/** Database file modification time; legacy name, not evidence of source freshness. */
|
|
11
12
|
lastBuilt: Date | null;
|
|
12
13
|
}
|
|
13
14
|
declare function stats(db: ScipDatabase): StatsResult;
|
package/dist/queries/stats.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-42EOW5VI.js";export{a as stats};
|
|
2
2
|
//# sourceMappingURL=stats.js.map
|
package/dist/queries/surface.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a,b}from"../chunk-
|
|
1
|
+
import{a,b}from"../chunk-JFXSGAEB.js";import"../chunk-AOSIYPTA.js";import"../chunk-6LSEIIF7.js";import"../chunk-BGBBVSH4.js";import"../chunk-36SGVCGX.js";import"../chunk-AGWFSTXC.js";import"../chunk-P5XHIJHI.js";import"../chunk-73AAKPUC.js";import"../chunk-KZBJWZJB.js";import"../chunk-4WTUBQ36.js";import"../chunk-NZAXKGRL.js";import"../chunk-KK7GPALL.js";import"../chunk-YNQCGEQE.js";import"../chunk-FMRN2TRL.js";import"../chunk-DA7RPPDF.js";import"../chunk-4WCUBZU3.js";import"../chunk-E3FDPXZK.js";import"../chunk-DHEQMPLW.js";import"../chunk-KHWRRPV4.js";import"../chunk-72AD6ZRR.js";import"../chunk-YUKYB54I.js";import"../chunk-GCKCF5FL.js";import"../chunk-DVFP6PZI.js";import"../chunk-5D2LVK7O.js";import"../chunk-7WTPQ4NX.js";import"../chunk-FVULPZDF.js";import"../chunk-D3FDISIC.js";import"../chunk-A2IIGFMJ.js";import"../chunk-PH52RA7D.js";import"../chunk-GVWX5T43.js";import"../chunk-T6DK3ZP7.js";import"../chunk-5TNQJUR2.js";export{b as consumerSurface,a as surface};
|
|
2
2
|
//# sourceMappingURL=surface.js.map
|
package/dist/queries/symbols.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-N3ORQT7L.js";import"../chunk-AOSIYPTA.js";import"../chunk-FMRN2TRL.js";import"../chunk-5D2LVK7O.js";import"../chunk-7WTPQ4NX.js";import"../chunk-FVULPZDF.js";import"../chunk-D3FDISIC.js";import"../chunk-A2IIGFMJ.js";import"../chunk-PH52RA7D.js";import"../chunk-GVWX5T43.js";import"../chunk-T6DK3ZP7.js";import"../chunk-5TNQJUR2.js";export{a as symbols};
|
|
2
2
|
//# sourceMappingURL=symbols.js.map
|
package/dist/queries/system.d.ts
CHANGED
|
@@ -5,13 +5,15 @@ import '../config-types-B9B60MiR.js';
|
|
|
5
5
|
|
|
6
6
|
interface SystemResult {
|
|
7
7
|
files: string[];
|
|
8
|
-
symbols: SymbolResult
|
|
8
|
+
symbols: Array<SymbolResult & {
|
|
9
|
+
relativePath: string;
|
|
10
|
+
}>;
|
|
9
11
|
dependsOn: string[];
|
|
10
12
|
dependedOnBy: string[];
|
|
11
13
|
}
|
|
12
14
|
/** Full system map for a module path: files, symbols, deps in/out.
|
|
13
15
|
*
|
|
14
|
-
*
|
|
16
|
+
* Symbol ranges come from getDefinitionsForFile so they are
|
|
15
17
|
* source-corrected and match `scip symbols` output.
|
|
16
18
|
*/
|
|
17
19
|
declare function system(db: ScipDatabase, modulePattern: string): SystemResult;
|
package/dist/queries/system.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a,b}from"../chunk-
|
|
1
|
+
import{a,b}from"../chunk-CFN45HFP.js";import"../chunk-AOSIYPTA.js";import"../chunk-FMRN2TRL.js";import"../chunk-GCKCF5FL.js";import"../chunk-5D2LVK7O.js";import"../chunk-7WTPQ4NX.js";import"../chunk-FVULPZDF.js";import"../chunk-D3FDISIC.js";import"../chunk-A2IIGFMJ.js";import"../chunk-PH52RA7D.js";import"../chunk-GVWX5T43.js";import"../chunk-T6DK3ZP7.js";import"../chunk-5TNQJUR2.js";export{b as moduleMap,a as system};
|
|
2
2
|
//# sourceMappingURL=system.js.map
|
|
@@ -8,7 +8,7 @@ import '../config-types-B9B60MiR.js';
|
|
|
8
8
|
* source-facts layer (raw source text + `classifyFile`'s test-file
|
|
9
9
|
* classification), never the graph. Three independently reportable
|
|
10
10
|
* sub-checks:
|
|
11
|
-
* - assertion-free: `it`/`test` bodies
|
|
11
|
+
* - assertion-free: `it`/`test` bodies without recognized assertion syntax (not a reachability proof).
|
|
12
12
|
* - skipped: `it.skip`/`describe.skip`/`xit`/`.todo` inventory with
|
|
13
13
|
* git-blame age on the skip line.
|
|
14
14
|
* - mock-echo: a test asserting the same literal it stubbed into a mock.
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-3IVFU4FD.js";import"../chunk-KDDIE2DP.js";import"../chunk-BOJ5SVE2.js";import"../chunk-BGBBVSH4.js";import"../chunk-P5XHIJHI.js";import"../chunk-4WCUBZU3.js";import"../chunk-E3FDPXZK.js";import"../chunk-DHEQMPLW.js";import"../chunk-YUKYB54I.js";import"../chunk-GCKCF5FL.js";import"../chunk-5D2LVK7O.js";import"../chunk-7WTPQ4NX.js";import"../chunk-FVULPZDF.js";import"../chunk-D3FDISIC.js";import"../chunk-A2IIGFMJ.js";import"../chunk-PH52RA7D.js";import"../chunk-GVWX5T43.js";import"../chunk-T6DK3ZP7.js";import"../chunk-5TNQJUR2.js";export{a as testQuality};
|
|
2
2
|
//# sourceMappingURL=test-quality.js.map
|
|
@@ -12,7 +12,7 @@ import '../config-types-B9B60MiR.js';
|
|
|
12
12
|
* - similar requires callee-set overlap (any names).
|
|
13
13
|
* - similar-signatures requires the same type shape (any names).
|
|
14
14
|
*
|
|
15
|
-
* This
|
|
15
|
+
* This is a candidate search by names and source tokens; shared conceptual ownership requires review:
|
|
16
16
|
* React/Vue helper families with drifted thresholds, escapeRegex vs
|
|
17
17
|
* escapeRegExp, etc.
|
|
18
18
|
*/
|
|
@@ -54,6 +54,12 @@ interface TwinDriftRecord {
|
|
|
54
54
|
* `isDelegatePair`/`buildDelegationChecker` for that.
|
|
55
55
|
*/
|
|
56
56
|
isThinForwarder: boolean;
|
|
57
|
+
/**
|
|
58
|
+
* For a thin forwarder, the leaf name of the one call its body makes; a
|
|
59
|
+
* forwarder whose target has a different name than its own is a stub over
|
|
60
|
+
* another concept (an HTTP client, an adapter), not a twin of it.
|
|
61
|
+
*/
|
|
62
|
+
forwardTargetLeaf?: string | null;
|
|
57
63
|
}
|
|
58
64
|
declare function twinDrift(db: ScipDatabase, opts?: {
|
|
59
65
|
scope?: string;
|
|
@@ -85,11 +91,12 @@ declare function groupTwins(records: readonly TwinDriftRecord[], opts?: {
|
|
|
85
91
|
minSimilarity?: number;
|
|
86
92
|
/**
|
|
87
93
|
* Injected so this stays a pure/DB-free function for `groupTwins`'s unit
|
|
88
|
-
* tests: `isDelegatePair(from, to, clusterMembers)` answers "
|
|
89
|
-
*
|
|
90
|
-
*
|
|
91
|
-
*
|
|
92
|
-
*
|
|
94
|
+
* tests: `isDelegatePair(from, to, clusterMembers)` answers "does `from`
|
|
95
|
+
* call `to` (directly, or by chaining through same-leaf-name thin
|
|
96
|
+
* forwarders found in `clusterMembers`)?" A member that calls its
|
|
97
|
+
* same-name counterpart is a layer over it, not a parallel
|
|
98
|
+
* implementation. `allTwinGroups` wires the real, source/import-backed
|
|
99
|
+
* implementation via `buildDelegationChecker`.
|
|
93
100
|
*/
|
|
94
101
|
isDelegatePair?: (from: TwinDriftRecord, to: TwinDriftRecord, clusterMembers: readonly TwinDriftRecord[]) => boolean;
|
|
95
102
|
}): TwinGroup[];
|
|
@@ -107,6 +114,15 @@ declare function groupTwins(records: readonly TwinDriftRecord[], opts?: {
|
|
|
107
114
|
* statement-count/control-flow/call-shape check.
|
|
108
115
|
*/
|
|
109
116
|
declare function isThinForwarderBody(rawSnippet: string): boolean;
|
|
117
|
+
/**
|
|
118
|
+
* Stricter than `isThinForwarderBody`: exactly one statement, that statement
|
|
119
|
+
* is one call (optionally returned or awaited), and its arguments are plain
|
|
120
|
+
* values — identifiers, member paths, literals, `??`/`||` defaults, spreads.
|
|
121
|
+
* A preparatory statement, a callback, a nested call, or an array/object
|
|
122
|
+
* literal the body builds makes the callable a helper rather than the
|
|
123
|
+
* "inline this into its only consumer" shape the wrapper claim describes.
|
|
124
|
+
*/
|
|
125
|
+
declare function isSingleForwardingCallBody(rawSnippet: string): boolean;
|
|
110
126
|
/**
|
|
111
127
|
* Split a statement block on top-level `;` (ignoring `;` nested inside
|
|
112
128
|
* `()`/`[]`/`{}`). Exported so other detectors that need a body's top-level
|
|
@@ -116,4 +132,4 @@ declare function isThinForwarderBody(rawSnippet: string): boolean;
|
|
|
116
132
|
*/
|
|
117
133
|
declare function splitTopLevelStatements(body: string): string[];
|
|
118
134
|
|
|
119
|
-
export { type TwinDriftRecord, type TwinGroup, type TwinMember, type TwinRelationship, allTwinGroups, groupTwins, isThinForwarderBody, splitTopLevelStatements, twinDrift };
|
|
135
|
+
export { type TwinDriftRecord, type TwinGroup, type TwinMember, type TwinRelationship, allTwinGroups, groupTwins, isSingleForwardingCallBody, isThinForwarderBody, splitTopLevelStatements, twinDrift };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a,b,c,d,e}from"../chunk-
|
|
1
|
+
import{a,b,c,d,e,f}from"../chunk-NEIWRNAZ.js";import"../chunk-D254DNNQ.js";import"../chunk-4BP3UBDG.js";import"../chunk-KDDIE2DP.js";import"../chunk-BOJ5SVE2.js";import"../chunk-BGBBVSH4.js";import"../chunk-P5XHIJHI.js";import"../chunk-YNQCGEQE.js";import"../chunk-4WCUBZU3.js";import"../chunk-E3FDPXZK.js";import"../chunk-DHEQMPLW.js";import"../chunk-72AD6ZRR.js";import"../chunk-YUKYB54I.js";import"../chunk-GCKCF5FL.js";import"../chunk-DVFP6PZI.js";import"../chunk-5D2LVK7O.js";import"../chunk-7WTPQ4NX.js";import"../chunk-FVULPZDF.js";import"../chunk-D3FDISIC.js";import"../chunk-A2IIGFMJ.js";import"../chunk-PH52RA7D.js";import"../chunk-GVWX5T43.js";import"../chunk-T6DK3ZP7.js";import"../chunk-5TNQJUR2.js";export{b as allTwinGroups,c as groupTwins,e as isSingleForwardingCallBody,d as isThinForwarderBody,f as splitTopLevelStatements,a as twinDrift};
|
|
2
2
|
//# sourceMappingURL=twin-drift.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a,b,c}from"../chunk-
|
|
1
|
+
import{a,b,c}from"../chunk-LMO6PK3V.js";import"../chunk-AOSIYPTA.js";import"../chunk-AGWFSTXC.js";import"../chunk-P5XHIJHI.js";import"../chunk-73AAKPUC.js";import"../chunk-KZBJWZJB.js";import"../chunk-KK7GPALL.js";import"../chunk-FMRN2TRL.js";import"../chunk-DA7RPPDF.js";import"../chunk-GCKCF5FL.js";import"../chunk-5D2LVK7O.js";import"../chunk-7WTPQ4NX.js";import"../chunk-FVULPZDF.js";import"../chunk-D3FDISIC.js";import"../chunk-A2IIGFMJ.js";import"../chunk-PH52RA7D.js";import"../chunk-GVWX5T43.js";import"../chunk-T6DK3ZP7.js";import"../chunk-5TNQJUR2.js";export{b as importedBy,a as imports,c as unusedImports};
|
|
2
2
|
//# sourceMappingURL=unused-imports.js.map
|
|
@@ -12,21 +12,9 @@ interface UnusedParamsFinding {
|
|
|
12
12
|
/** Trailing parameters never referenced in the body, in declaration order. */
|
|
13
13
|
unusedTrailing: string[];
|
|
14
14
|
}
|
|
15
|
-
/**
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* Deliberately conservative, TS/JS only:
|
|
20
|
-
* - TRAILING runs only — removing a trailing parameter is type-safe under
|
|
21
|
-
* TypeScript's function variance; removing a mid-list one breaks the
|
|
22
|
-
* positional contract. (Rust is excluded: call sites break, and rustc
|
|
23
|
-
* already warns there.)
|
|
24
|
-
* - `_`-prefixed names are declared-intentional and skipped.
|
|
25
|
-
* - Functions with pattern/rest parameters are skipped entirely.
|
|
26
|
-
* - One-line bodies are skipped (line-granular usage can't tell a use from
|
|
27
|
-
* the declaration itself).
|
|
28
|
-
* - Externally-live (package surface / entryRoots) symbols are skipped —
|
|
29
|
-
* their signatures are API.
|
|
15
|
+
/** Trailing simple parameters with no same-binding read. Defaults, rest parameters,
|
|
16
|
+
* parameter properties, dynamic eval/arguments, and rooted contracts are excluded.
|
|
17
|
+
* Findings are review candidates: changing a signature can affect callers and arity.
|
|
30
18
|
*/
|
|
31
19
|
declare function unusedParams(db: ScipDatabase, opts?: {
|
|
32
20
|
scope?: string;
|