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
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { ArchitectureReport, ArchitectureBoundarySummary, ArchitectureCoverage, ArchitecturePolicyCoverage } from './architecture.js';
|
|
2
|
+
import { G as ArchitectureConfig } from '../config-types-B9B60MiR.js';
|
|
3
|
+
import '../db-BwIVAYNB.js';
|
|
4
|
+
import 'better-sqlite3';
|
|
5
|
+
|
|
6
|
+
interface ComplexityContribution {
|
|
7
|
+
line: number;
|
|
8
|
+
column: number;
|
|
9
|
+
kind: string;
|
|
10
|
+
cyclomatic: number;
|
|
11
|
+
cognitive: number;
|
|
12
|
+
}
|
|
13
|
+
interface SourceFunction {
|
|
14
|
+
name: string;
|
|
15
|
+
file: string;
|
|
16
|
+
startLine: number;
|
|
17
|
+
endLine: number;
|
|
18
|
+
startOffset: number;
|
|
19
|
+
endOffset: number;
|
|
20
|
+
sourceHash: string;
|
|
21
|
+
bodyHash: string;
|
|
22
|
+
renamedBodyHash: string;
|
|
23
|
+
tokenCount: number;
|
|
24
|
+
cyclomatic: number;
|
|
25
|
+
cognitive: number;
|
|
26
|
+
contributions: ComplexityContribution[];
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
type ImportResolution = 'internal' | 'external' | 'builtin' | 'excluded' | 'missing' | 'ambiguous' | 'dynamic';
|
|
30
|
+
interface SourceImport {
|
|
31
|
+
file: string;
|
|
32
|
+
line: number;
|
|
33
|
+
specifier: string;
|
|
34
|
+
target?: string;
|
|
35
|
+
kind: 'value' | 'type';
|
|
36
|
+
role: 'production' | 'test';
|
|
37
|
+
syntax: 'import' | 'reexport' | 'require' | 'dynamic-import' | 'type-import';
|
|
38
|
+
resolution: ImportResolution;
|
|
39
|
+
configs: string[];
|
|
40
|
+
alternatives?: string[];
|
|
41
|
+
excludedReason?: string;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
type FunctionCoverage = {
|
|
45
|
+
status: 'unavailable';
|
|
46
|
+
reason: string;
|
|
47
|
+
} | {
|
|
48
|
+
status: 'available';
|
|
49
|
+
basis: 'istanbul-statement-start-lines';
|
|
50
|
+
coveredLines: number;
|
|
51
|
+
measuredLines: number;
|
|
52
|
+
fraction: number;
|
|
53
|
+
crap: number;
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
interface FindingSite {
|
|
57
|
+
file: string;
|
|
58
|
+
line: number;
|
|
59
|
+
name?: string;
|
|
60
|
+
}
|
|
61
|
+
interface SourceFinding {
|
|
62
|
+
id: string;
|
|
63
|
+
rule: 'complexity' | 'duplication' | 'dependency-cycle' | 'architecture' | 'crap' | 'broken-dependency' | 'responsibility';
|
|
64
|
+
evidence: 'derived' | 'candidate';
|
|
65
|
+
summary: string;
|
|
66
|
+
sites: FindingSite[];
|
|
67
|
+
score: number;
|
|
68
|
+
details: string[];
|
|
69
|
+
status?: 'introduced' | 'worsened' | 'existing' | 'resolved' | 'uncomparable';
|
|
70
|
+
}
|
|
71
|
+
interface MeasuredFunction extends SourceFunction {
|
|
72
|
+
coverage: FunctionCoverage;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
interface SourceModuleSubject {
|
|
76
|
+
id: string;
|
|
77
|
+
basis: 'declared-boundary' | 'directory';
|
|
78
|
+
files: string[];
|
|
79
|
+
consumers: string[];
|
|
80
|
+
dependencies: string[];
|
|
81
|
+
findingIds: string[];
|
|
82
|
+
primaryFindingIds: string[];
|
|
83
|
+
highestPriority: SourceFinding['rule'];
|
|
84
|
+
interpretation: string;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
type SuppressionAdjudicationResult = {
|
|
88
|
+
kind: 'accepted';
|
|
89
|
+
} | {
|
|
90
|
+
kind: 'expired' | 'invalidated' | 'escalated';
|
|
91
|
+
reasons: string[];
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
interface SourceScanOptions {
|
|
95
|
+
includeTests?: boolean;
|
|
96
|
+
includeReferences?: boolean;
|
|
97
|
+
includeGenerated?: boolean;
|
|
98
|
+
maxFiles?: number;
|
|
99
|
+
maxFileBytes?: number;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
interface SourceSuppressionDecision {
|
|
103
|
+
id?: string;
|
|
104
|
+
check?: string;
|
|
105
|
+
file?: string;
|
|
106
|
+
outcome: SuppressionAdjudicationResult['kind'] | 'unmatched';
|
|
107
|
+
reasons: string[];
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
/** Keep the source report's policy context compact; full indexed graph evidence has its own command. */
|
|
111
|
+
declare function sourceArchitectureContext(rules: ArchitectureReport): {
|
|
112
|
+
configured: boolean;
|
|
113
|
+
boundaries: ArchitectureBoundarySummary[];
|
|
114
|
+
coverage: ArchitectureCoverage;
|
|
115
|
+
policyCoverage: ArchitecturePolicyCoverage;
|
|
116
|
+
dependencyRoles: {
|
|
117
|
+
excludedTestEdges: number;
|
|
118
|
+
basis: "production-imports-including-types";
|
|
119
|
+
cycleMeaning: string;
|
|
120
|
+
} | undefined;
|
|
121
|
+
cycles: {
|
|
122
|
+
boundaries: string[];
|
|
123
|
+
origin: "contains-file-cycle" | "grouping-only" | undefined;
|
|
124
|
+
fileCycleMembers: string[] | undefined;
|
|
125
|
+
violatesPolicy: boolean;
|
|
126
|
+
}[];
|
|
127
|
+
};
|
|
128
|
+
declare function dependencyCoverage(imports: readonly SourceImport[]): {
|
|
129
|
+
resolutions: Record<ImportResolution, number>;
|
|
130
|
+
typeOnly: number;
|
|
131
|
+
test: number;
|
|
132
|
+
deferredOrCommonJs: number;
|
|
133
|
+
unresolved: SourceImport[];
|
|
134
|
+
excluded: SourceImport[];
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
interface SourceReviewOptions extends SourceScanOptions {
|
|
138
|
+
base?: string;
|
|
139
|
+
coverage?: string;
|
|
140
|
+
scope?: string;
|
|
141
|
+
architecture?: ArchitectureConfig;
|
|
142
|
+
}
|
|
143
|
+
interface FunctionChange {
|
|
144
|
+
status: 'added' | 'modified' | 'removed' | 'uncomparable';
|
|
145
|
+
before?: MeasuredFunction;
|
|
146
|
+
after?: MeasuredFunction;
|
|
147
|
+
delta?: {
|
|
148
|
+
cyclomatic: number;
|
|
149
|
+
cognitive: number;
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
interface SourceMaintenanceReport {
|
|
153
|
+
mode: 'health' | 'review';
|
|
154
|
+
base?: string;
|
|
155
|
+
current: string;
|
|
156
|
+
metricRules: string;
|
|
157
|
+
changedFiles: string[];
|
|
158
|
+
configurationChanges: string[];
|
|
159
|
+
relationshipChangedFiles: string[];
|
|
160
|
+
architecture: ReturnType<typeof sourceArchitectureContext>;
|
|
161
|
+
functions: FunctionChange[];
|
|
162
|
+
findings: SourceFinding[];
|
|
163
|
+
suppressionDecisions: SourceSuppressionDecision[];
|
|
164
|
+
blockingFindingIds: string[];
|
|
165
|
+
modules: SourceModuleSubject[];
|
|
166
|
+
affectedFiles: string[];
|
|
167
|
+
coverage: {
|
|
168
|
+
status: 'accounted' | 'incomplete';
|
|
169
|
+
analyzedFiles: number;
|
|
170
|
+
eligibleFiles: number;
|
|
171
|
+
excludedFiles: number;
|
|
172
|
+
exclusions: Record<string, number>;
|
|
173
|
+
dependencies: ReturnType<typeof dependencyCoverage>;
|
|
174
|
+
analyzedFunctions: number;
|
|
175
|
+
unresolvedImports: number;
|
|
176
|
+
testCoverage: {
|
|
177
|
+
requested: boolean;
|
|
178
|
+
available: number;
|
|
179
|
+
unavailable: number;
|
|
180
|
+
reasons: string[];
|
|
181
|
+
};
|
|
182
|
+
problems: string[];
|
|
183
|
+
limits: string[];
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
declare function sourceMaintenanceReport(projectRoot: string, opts?: SourceReviewOptions): SourceMaintenanceReport;
|
|
187
|
+
|
|
188
|
+
export { type FunctionChange, type SourceMaintenanceReport, type SourceReviewOptions, sourceMaintenanceReport };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a}from"../chunk-INLMWEUU.js";import"../chunk-YRT2WLYY.js";import"../chunk-FC2EVQRM.js";import"../chunk-ETOIKRHO.js";import"../chunk-SV2LEFVM.js";import"../chunk-HXENDJC6.js";import"../chunk-2IWUT6CJ.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-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 sourceMaintenanceReport};
|
|
2
|
+
//# sourceMappingURL=review.js.map
|
|
@@ -5,8 +5,10 @@ import '../config-types-B9B60MiR.js';
|
|
|
5
5
|
interface SimilarFileResult {
|
|
6
6
|
fileA: string;
|
|
7
7
|
fileB: string;
|
|
8
|
-
/** Jaccard similarity of
|
|
8
|
+
/** Jaccard similarity after excluding dependencies imported by >=5 files and >30% of the repository. */
|
|
9
9
|
similarity: number;
|
|
10
|
+
/** Candidate relationship based on filtered dependency sets, not behavioral equivalence. */
|
|
11
|
+
evidenceBasis: 'filtered-dependency-overlap';
|
|
10
12
|
sharedDeps: string[];
|
|
11
13
|
uniqueToA: string[];
|
|
12
14
|
uniqueToB: string[];
|
|
@@ -14,15 +16,10 @@ interface SimilarFileResult {
|
|
|
14
16
|
/**
|
|
15
17
|
* Find files with similar dependency profiles.
|
|
16
18
|
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* Evidence policy: a pair must share at least two *distinctive* deps —
|
|
22
|
-
* deps with low global fan-in. Files that overlap only on family
|
|
23
|
-
* infrastructure (the modules everyone in their directory imports) are
|
|
24
|
-
* not copy-paste variants; adapter families sharing an SDK scored 100%
|
|
25
|
-
* before this gate while differing in everything that matters.
|
|
19
|
+
* Compares observed dependency sets after removing globally common dependencies.
|
|
20
|
+
* A result identifies shared structural dependencies; it does not establish
|
|
21
|
+
* duplicated behavior, a common conceptual owner, or safe consolidation.
|
|
22
|
+
* At least two low-popularity dependencies must be shared (one when minDeps=1).
|
|
26
23
|
*/
|
|
27
24
|
declare function similarFiles(db: ScipDatabase, opts?: {
|
|
28
25
|
minSimilarity?: number;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-BMKOQJRI.js";import"../chunk-5PLMJC7Q.js";import"../chunk-NOLZOVCU.js";import"../chunk-GCKCF5FL.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 similarFiles};
|
|
2
2
|
//# sourceMappingURL=similar-files.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-EOV7RTRZ.js";import"../chunk-D254DNNQ.js";import"../chunk-4BP3UBDG.js";import"../chunk-KDDIE2DP.js";import"../chunk-BOJ5SVE2.js";import"../chunk-BGBBVSH4.js";import"../chunk-AGWFSTXC.js";import"../chunk-P5XHIJHI.js";import"../chunk-73AAKPUC.js";import"../chunk-KZBJWZJB.js";import"../chunk-KK7GPALL.js";import"../chunk-YNQCGEQE.js";import"../chunk-DA7RPPDF.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{a as similarSignatures};
|
|
2
2
|
//# sourceMappingURL=similar-signatures.js.map
|
|
@@ -183,5 +183,23 @@ declare const SAME_FILE_SIBLING_SATURATION_THRESHOLD = 5;
|
|
|
183
183
|
declare function trimSameFileSiblingSaturatedCallees(fingerprints: readonly SymbolFingerprint[]): SymbolFingerprint[];
|
|
184
184
|
declare function meaningfulCallees(callees: Iterable<string>): Set<string>;
|
|
185
185
|
declare function classifySimilarityEvidence(sharedEvidence: readonly string[], basis: NonNullable<SimilarSymbolResult['similarityBasis']>): SimilarEvidenceClassification;
|
|
186
|
+
/** Same-file siblings share at least this much of their callee vocabulary before scaffolding vocabulary stops mattering. */
|
|
187
|
+
declare const SIBLING_SIMILARITY_DIRECT_THRESHOLD = 0.5;
|
|
188
|
+
/** Cross-file pairs whose shared callees mix domain behavior with scaffolding are direct from this similarity. */
|
|
189
|
+
declare const MIXED_SIMILARITY_DIRECT_THRESHOLD = 0.6;
|
|
190
|
+
/**
|
|
191
|
+
* Scaffolding vocabulary explains why two functions in different files look
|
|
192
|
+
* alike; it cannot explain two functions in one file that share half their
|
|
193
|
+
* callees, because the file's own imports are that vocabulary. Those siblings
|
|
194
|
+
* (create/update/delete workflows, archive/restore pairs) are the classic
|
|
195
|
+
* shared-step extraction and are reported as direct. A cross-file pair whose
|
|
196
|
+
* shared evidence already carries domain behavior next to the scaffolding is
|
|
197
|
+
* direct once the overlap is large.
|
|
198
|
+
*/
|
|
199
|
+
declare function promoteSiblingSimilarity(classification: SimilarEvidenceClassification, pair: {
|
|
200
|
+
similarity: number;
|
|
201
|
+
sharedCount: number;
|
|
202
|
+
sameFile: boolean;
|
|
203
|
+
}): SimilarEvidenceClassification;
|
|
186
204
|
|
|
187
|
-
export { type CalleeFingerprintCorpusOptions, type CalleeFingerprintIndex, type CalleeFingerprintIndexOptions, type RankedSimilarResult, SAME_FILE_SIBLING_SATURATION_THRESHOLD, type SimilarActionTier, type SimilarConsolidationPlan, type SimilarEvidenceClass, type SimilarEvidenceClassification, type SimilarSymbolResult, type SimilarityFingerprintProduct, type SourceCandidateMode, type SourceFingerprint, type SourceFingerprintCandidateOptions, type SourceFingerprintIndex, type SourceFingerprintOptions, type SymbolFingerprint, buildCalleeFingerprintIndex, candidateFingerprintsForTarget, classifySimilarityEvidence, comparePair, getAllCalleeFingerprints, getCalleeFingerprintIndex, insertTopSimilarResult, meaningfulCallees, similar, similarAll, similarAllCount, similarConsolidationPlan, similarityFingerprintProduct, targetSpecificIdfWeights, trimSameFileSiblingSaturatedCallees };
|
|
205
|
+
export { type CalleeFingerprintCorpusOptions, type CalleeFingerprintIndex, type CalleeFingerprintIndexOptions, MIXED_SIMILARITY_DIRECT_THRESHOLD, type RankedSimilarResult, SAME_FILE_SIBLING_SATURATION_THRESHOLD, SIBLING_SIMILARITY_DIRECT_THRESHOLD, type SimilarActionTier, type SimilarConsolidationPlan, type SimilarEvidenceClass, type SimilarEvidenceClassification, type SimilarSymbolResult, type SimilarityFingerprintProduct, type SourceCandidateMode, type SourceFingerprint, type SourceFingerprintCandidateOptions, type SourceFingerprintIndex, type SourceFingerprintOptions, type SymbolFingerprint, buildCalleeFingerprintIndex, candidateFingerprintsForTarget, classifySimilarityEvidence, comparePair, getAllCalleeFingerprints, getCalleeFingerprintIndex, insertTopSimilarResult, meaningfulCallees, promoteSiblingSimilarity, similar, similarAll, similarAllCount, similarConsolidationPlan, similarityFingerprintProduct, targetSpecificIdfWeights, trimSameFileSiblingSaturatedCallees };
|
package/dist/queries/similar.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}from"../chunk-
|
|
1
|
+
import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s}from"../chunk-UXYXF7GV.js";import"../chunk-NOLZOVCU.js";import"../chunk-D254DNNQ.js";import"../chunk-4BP3UBDG.js";import"../chunk-KDDIE2DP.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{r as MIXED_SIMILARITY_DIRECT_THRESHOLD,m as SAME_FILE_SIBLING_SATURATION_THRESHOLD,q as SIBLING_SIMILARITY_DIRECT_THRESHOLD,k as buildCalleeFingerprintIndex,l as candidateFingerprintsForTarget,p as classifySimilarityEvidence,d as comparePair,h as getAllCalleeFingerprints,i as getCalleeFingerprintIndex,g as insertTopSimilarResult,o as meaningfulCallees,s as promoteSiblingSimilarity,a as similar,e as similarAll,f as similarAllCount,b as similarConsolidationPlan,j as similarityFingerprintProduct,c as targetSpecificIdfWeights,n as trimSameFileSiblingSaturatedCallees};
|
|
2
2
|
//# sourceMappingURL=similar.js.map
|
|
@@ -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
|