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,2 @@
|
|
|
1
|
+
import{c as p}from"./chunk-T3I6NHBH.js";var h=[".ts",".tsx",".mts",".cts",".js",".jsx",".mjs",".cjs"];function N(r){let n=r.toLowerCase();return h.some(e=>n.endsWith(e))}import{realpathSync as M}from"fs";import{createRequire as x}from"module";import{dirname as g,resolve as y}from"path";var S=x(import.meta.url),u,d;function j(){if(u!==void 0)return u;try{u=S("ts-morph")}catch{u=null}return u}function z(){if(d)return d;let r=j();if(!r)return"ts-morph:unavailable";let n="unknown";try{n=S("ts-morph/package.json").version??"unknown"}catch{}return d=`ts-morph:${n}:typescript:${r.ts.version}`,d}function A(r,n,e={}){return C(r,n).map(t=>v(r,t,e))}var P=3;function C(r,n){let e=[],t=new Set,o=(s,i)=>{let c=y(s);if(t.has(c))return;t.add(c);let a=i<P?T(r,c):[];if(a.length===0){e.push(c);return}for(let l of a)o(l,i+1)};for(let s of n)o(s,0);return e}function T(r,n){try{let e=r.ts,t=e.readConfigFile(n,e.sys.readFile);if(t.error||!t.config)return[];let o=e.parseJsonConfigFileContent(t.config,e.sys,g(n),void 0,n);return o.fileNames.length>0||!o.projectReferences?.length?[]:o.projectReferences.map(s=>e.resolveProjectReferencePath(s)).filter(s=>e.sys.fileExists(s))}catch{return[]}}function v(r,n,e){let t=null,o,s,i=()=>(o===void 0&&(o=E(r,n)),o),c=()=>{if(s===void 0){let a=e.fileBudget??p(),l=i();s=(l===null?0:Math.ceil(l.size/2))>a*I?"file-closure":"project"}return s};return{tsconfigPath:n,get project(){return t??=new r.Project({tsConfigFilePath:n,skipFileDependencyResolution:!0,...c()==="file-closure"?{skipAddingFilesFromTsConfig:!0}:{}}),t},get loaded(){return t!==null},get fileNames(){return i()},get scope(){return c()}}}var I=1.35,q="TypeScript project-wide semantics are unavailable: a compiler project is file-scoped because its tsconfig lists more files than the worker heap can hold.";function J(r){return r.some(n=>n.scope==="file-closure")}function E(r,n){try{let e=r.ts,t=e.readConfigFile(n,e.sys.readFile);if(t.error||!t.config)return null;let o=e.parseJsonConfigFileContent(t.config,e.sys,g(n),void 0,n),s=new Set;for(let i of o.fileNames){let c=y(i);s.add(c);try{s.add(M(c))}catch{}}return s}catch{return null}}function K(r,n,e){return{language:"typescript",availability:()=>({available:!1,reason:r,tsconfigPath:n,tsconfigPaths:e}),importUsage:()=>[],referencesFor:()=>[],calleesFor:()=>[],signatureFor:()=>null}}function G(r,n){let e=w(r);for(let t of n.values())e.add(t);return e.finish()}function w(r){let n=new Map(r.map(t=>[t.symbol,t])),e=new Map(r.map(t=>[t.symbolId,[]]));return{add(t){for(let o of t){let s=n.get(o.targetSymbol);s&&e.get(s.symbolId).push(o.location)}},finish(){for(let[t,o]of e)e.set(t,$(o));return e}}}function H(r,n,e){let t=F(r,n),o=F(r,e),s=[...t].filter(f=>!o.has(f)).sort(),i=[...o].filter(f=>!t.has(f)).sort(),c=R(r,n),a=R(r,e),l=[...c].filter(f=>!a.has(f)).sort(),m=[...a].filter(f=>!c.has(f)).sort();return{passed:s.length===0&&i.length===0,expectedCount:t.size,actualCount:o.size,missing:s,extra:i,callerFiles:{passed:l.length===0&&m.length===0,expectedCount:c.size,actualCount:a.size,missing:l,extra:m}}}function R(r,n){let e=new Set;for(let t of r)for(let o of n.get(t.symbolId)??[])o.file!==t.relativePath&&e.add(`${t.symbol}\0${o.file}`);return e}function V(r,n,e){let t=new Set(e),o=new Map(e.map(s=>[s,[]]));for(let s of r)for(let i of n.get(s.symbolId)??[])t.has(i.file)&&o.get(i.file).push({targetSymbol:s.symbol,location:i});for(let[s,i]of o)o.set(s,B(i));return o}function F(r,n){let e=new Set;for(let t of r)for(let o of n.get(t.symbolId)??[])e.add(`${t.symbol}\0${o.file}\0${o.line}\0${o.column}`);return e}function $(r){let n=new Map;for(let e of r)n.set(`${e.file}\0${e.line}\0${e.column}`,e);return[...n.values()].sort(b)}function B(r){let n=new Map;for(let e of r){let{location:t}=e;n.set(`${e.targetSymbol}\0${t.file}\0${t.line}\0${t.column}`,e)}return[...n.values()].sort((e,t)=>e.targetSymbol.localeCompare(t.targetSymbol)||b(e.location,t.location))}function b(r,n){return r.file.localeCompare(n.file)||r.line-n.line||r.column-n.column}export{h as a,N as b,j as c,z as d,A as e,q as f,J as g,K as h,G as i,w as j,H as k,V as l};
|
|
2
|
+
//# sourceMappingURL=chunk-CN5EH7O3.js.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{b as E}from"./chunk-4BP3UBDG.js";import{c as y}from"./chunk-KDDIE2DP.js";import{b as L}from"./chunk-BOJ5SVE2.js";import{a as m}from"./chunk-BGBBVSH4.js";import{b as x}from"./chunk-YNQCGEQE.js";import{i as D}from"./chunk-4WCUBZU3.js";import{c as B}from"./chunk-E3FDPXZK.js";import{d as f}from"./chunk-72AD6ZRR.js";import{d as h,e as d,y as b}from"./chunk-5D2LVK7O.js";import{g}from"./chunk-A2IIGFMJ.js";import{createHash as O}from"crypto";var S=new WeakMap,z=3;function ot(e,t={}){return R(e,t).groups}function R(e,t={}){let{scope:n,maxLoc:o=15,minLoc:i=z,limit:r,scanLimit:s}=t,a=y(e),c=C(e,{scope:n,maxLoc:o,scanLimit:s}).map(p=>A(e,p,a,i)).filter(p=>p!==null),{groups:u,exclusions:l}=T(e,M(c));return{groups:r?u.slice(0,r):u,exclusions:l}}var I=/^(?:GET|POST|PUT|PATCH|DELETE|OPTIONS|HEAD|default|loader|action|load|actions)$/;function T(e,t){let n=new Map,o=(r,s)=>{let a=n.get(r);a?a.count+=1:n.set(r,{reason:r,detail:s,count:1})},i=[];for(let r of t){let s=[];for(let a of r.functions){let c=W(e,a);if(c){o(c.reason,c.detail);continue}s.push(a)}s.length<2||new Set(s.map(a=>a.file)).size<2||i.push({hash:r.hash,canonical:s[0],functions:s})}return{groups:i,exclusions:[...n.values()].sort((r,s)=>r.reason.localeCompare(s.reason))}}function W(e,t){let n=d(t.symbol);return n.startsWith("<")&&n.endsWith(">")?{reason:"synthetic-members",detail:"duplicate constructors and other compiler-named members every class carries"}:B(t.file)==="test"?{reason:"test-file-members",detail:"duplicate bodies in test files (fixture reuse, not product duplication)"}:I.test(n)&&D(t.file)?{reason:"framework-route-exports",detail:"duplicate route-file verb exports whose identical glue the framework convention dictates"}:E(e,t.file)?{reason:"ui-kit-members",detail:"duplicate bodies in vendored UI-kit directories generated from one template"}:null}function it(e,t,n={}){let{scope:o,maxLoc:i=15,minLoc:r=z,scanLimit:s}=n,a=y(e),c=C(e,{scope:o,maxLoc:i,scanLimit:s}).map(l=>A(e,l,a,r)).filter(l=>l!==null),u=c.find(l=>l.symbol===t);return u?c.filter(l=>l.symbol!==u.symbol&&l.normalizedBody===u.normalizedBody&&l.file!==u.file).sort(w).map(({normalizedBody:l,...p})=>p):[]}function G(e){let t=f("duplicate.ts",e);return t.errors.length===0&&t.functions[0]?t.functions[0].bodyHash:k(e).trim()}function M(e){let t=new Map;for(let o of e){if(o.normalizedBody.length<8)continue;let i=$(o.normalizedBody),r=t.get(i)??[];r.push(o),t.set(i,r)}let n=[];for(let[o,i]of t){let r=new Set(i.map(a=>a.file));if(i.length<2||r.size<2)continue;let s=[...i].sort(w).map(({normalizedBody:a,...c})=>c);n.push({hash:o,canonical:s[0],functions:s})}return n.sort((o,i)=>{let r=i.functions.length-o.functions.length;if(r!==0)return r;let s=v(i)-v(o);return s!==0?s:o.canonical.file.localeCompare(i.canonical.file)}),n}function C(e,t){let n=b(e,{scope:t.scope}).filter(o=>o.isFunctionLike&&!e.isIgnored(o.relativePath)).filter(o=>!g(e,o.relativePath,o.startLine,"similar")).filter(o=>m(o)<=t.maxLoc);return n.sort((o,i)=>m(i)-m(o)||o.relativePath.localeCompare(i.relativePath)),L(n,t.scanLimit)}function A(e,t,n,o){let i=F(e,t);if(!i||j(i)<o)return null;let r=_(e,t);return r?{symbol:t.symbol,shortName:h(t.symbol),file:t.relativePath,startLine:t.startLine,endLine:t.endLine,loc:m(t),ageCommits:n?.get(t.relativePath)?.commitsAgo??null,normalizedBody:r}:null}function _(e,t){let n=F(e,t);return n&&G(n)||null}function F(e,t){let n=x(e,t.relativePath);if(!n||n.freshness.semantic.state==="stale")return null;if(/\.[cm]?[jt]sx?$/i.test(t.relativePath)){let o=S.get(e);o||(o=new Map,S.set(e,o));let i=o.get(t.relativePath);(!i||i.text!==n.text)&&(i={text:n.text,functions:f(t.relativePath,n.text).functions},o.set(t.relativePath,i));let r=d(t.symbol),s=r==="<constructor>"?"constructor":r,a=i.functions.filter(c=>(c.name===s||c.name.endsWith(`.${s}`))&&c.startLine-1>=t.startLine&&c.endLine-1<=t.endLine);return a.length!==1?null:n.text.slice(a[0].startOffset,a[0].endOffset)}return n.text.split(`
|
|
2
|
+
`).slice(t.startLine,t.endLine+1).join(`
|
|
3
|
+
`)}function k(e){let t=0;for(let n=0;n<e.length;n+=1){let o=e[n],i=H(e,n,t);if(i!==null)return i;"([{".includes(o)?t+=1:")]}".includes(o)&&(t=Math.max(0,t-1))}return e}function H(e,t,n){if(n!==0)return null;let o=e[t];if(o==="{"&&!U(e,t))return P(e,t);if(o==="="&&e[t+1]===">"){let i=e.slice(t+2).trimStart();return i.startsWith("{")?P(i,0):i.replace(/;+\s*$/,"")}return null}var N=new Set([":","<","|","&",",","(","="]);function U(e,t){let n=t-1;for(;n>=0&&/\s/.test(e[n]);)n-=1;return n>=0&&N.has(e[n])}function P(e,t){let n=e.lastIndexOf("}");return n>t?e.slice(t+1,n):e}function j(e){return k(e).split(/\r?\n/).map(n=>n.trim()).filter(n=>n.length>0).length}function $(e){return O("sha256").update(e).digest("hex").slice(0,16)}function w(e,t){let n=e.ageCommits??-1;return(t.ageCommits??-1)-n||e.file.localeCompare(t.file)||e.startLine-t.startLine}function v(e){return e.functions.reduce((t,n)=>t+n.loc,0)}export{ot as a,R as b,it as c,G as d,M as e,_ as f,F as g,k as h};
|
|
4
|
+
//# sourceMappingURL=chunk-D254DNNQ.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{e as E,f as T,g as R,h as j,i as O,j as x,k as F,q as y,r as v,t as m}from"./chunk-GVWX5T43.js";function B(e){return typeof e=="object"&&e!==null}function N(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")?e:null}import{createHash as S}from"crypto";import{serialize as w,deserialize as H}from"v8";import{types as P}from"util";var I=`node-v8:${process.versions.node}:${process.versions.v8}`,V=2e4,D=16*1024*1024,p=null,k=class{constructor(t,r){this.owner=t;this.parent=r}owner;parent;complete=!0;bytes=0;statements=new Map;reads=new Map;record(t,r,n,s){if(!this.complete)return;let i=this.statements.get(t);i===void 0&&(i=this.statements.size,this.statements.set(t,i),this.bytes+=t.length*2);let d=`${i}:${r}:${n}`,a=this.reads.get(d);if(a){a.digest!==s&&(this.complete=!1);return}if(this.bytes+=d.length*2+128,this.reads.size>=V||this.bytes>D){this.complete=!1;return}this.reads.set(d,{statement:i,method:r,parameters:n,digest:s})}proof(){return this.complete?{version:1,encoding:I,statements:[...this.statements.keys()],reads:[...this.reads.values()]}:void 0}};function U(e,t){let r=new k(e,p);p=r;try{let n=t();return P.isPromise(n)&&u(),{result:n,proof:r.proof()}}catch(n){throw u(),n}finally{p=r.parent}}function u(){for(let e=p;e;e=e.parent)e.complete=!1}function h(e){for(let t=p;t;t=t.parent)if(t.owner===e)return!0;return!1}function X(e,t){if(!p)return t();let r=A(e),n;try{n=t()}catch(s){throw u(),s}return r!==void 0&&K(e,r,n),n}function A(e){try{if(e.supported&&b(e.parameters))return w(e.parameters).toString("base64")}catch{}u()}function K({owner:e,sql:t,method:r,parameters:n},s,i){try{if(w(n).toString("base64")!==s){u();return}let d=M(i);for(let a=p;a;a=a.parent)a.owner===e?a.record(t,r,s,d):a.complete=!1}catch{u()}}function G(e,t){let r=new Map;try{return C(t)?t.reads.every(n=>{let s=r.get(n.statement);s||(s=e.prepare(t.statements[n.statement]),r.set(n.statement,s));let i=H(Buffer.from(n.parameters,"base64"));return!Array.isArray(i)||!b(i)?!1:M(s[n.method](...i))===n.digest}):!1}catch{return!1}}function C(e){return!e||e.version!==1||e.encoding!==I||!Array.isArray(e.statements)||!Array.isArray(e.reads)||e.reads.length>V||!e.statements.every(t=>typeof t=="string")||JSON.stringify(e).length*2>D?!1:e.reads.every(t=>t&&Number.isSafeInteger(t.statement)&&t.statement>=0&&t.statement<e.statements.length&&(t.method==="get"||t.method==="all")&&typeof t.parameters=="string"&&typeof t.digest=="string")}function b(e,t=0){return e==null||["string","number","bigint"].includes(typeof e)?!0:typeof e!="object"||P.isProxy(e)||t>3?!1:ArrayBuffer.isView(e)?Buffer.isBuffer(e)&&!P.isSharedArrayBuffer(e.buffer):$(e)?Reflect.ownKeys(e).every(r=>{if(typeof r!="string")return!1;let n=Object.getOwnPropertyDescriptor(e,r);return"value"in n&&b(n.value,t+1)}):!1}function $(e){let t=Object.getPrototypeOf(e);return Array.isArray(e)||t===Object.prototype||t===null}function M(e){return S("sha256").update(w(e)).digest("hex")}var z=[o("source-facts",{dependsOn:["content-hash","tool-version"],keyParts:["kind","relativePath","contentHash","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/source/source-facts.ts"}),o("file-definitions",{dependsOn:["content-hash","project-fingerprint","indexed-language-set","tool-version"],keyParts:["kind","relativePath","contentHash","projectFingerprint","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/symbols/definition-catalog.ts"}),o("definition-exclusions",{dependsOn:["content-hash","tool-version"],keyParts:["kind","relativePath","contentHash","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/analysis/framework-patterns.ts"}),o("doc-path-tokens",{dependsOn:["content-hash","tool-version"],keyParts:["kind","relativePath","contentHash","payloadVersion"],stalenessTest:"tests/storage/evidence-products.test.ts",owner:"tests/storage/evidence-cache.test.ts"}),o("doc-path-evidence",{dependsOn:["content-hash","git-history","git-head","tool-version"],keyParts:["kind","relativePath","contentHash","trackedFiles","historyWindow","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/queries/cleanup/doc-drift.ts"}),o("source-imports",{dependsOn:["content-hash","import-resolution-fingerprint","config","tool-version"],keyParts:["kind","relativePath","contentHash","importResolutionFingerprint","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/language-parsers/index.ts"}),o("source-reexports",{dependsOn:["content-hash","import-resolution-fingerprint","config","tool-version"],keyParts:["kind","relativePath","contentHash","importResolutionFingerprint","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/language-parsers/index.ts"}),o("source-fingerprints",{dependsOn:["content-hash","project-fingerprint","indexed-language-set","tool-version"],keyParts:["kind","relativePath","contentHash","projectFingerprint","payloadVersion"],stalenessTest:"tests/symbols/definition-catalog.test.ts",owner:"src/queries/cleanup/similar.ts"}),o("consumer-file-usage",{dependsOn:["content-hash","project-fingerprint","indexed-language-set","tool-version"],keyParts:["kind","relativePath","contentHash","projectFingerprint","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/queries/internal/consumer-evidence.ts"}),o("react-component-behavior-profiles",{dependsOn:["content-hash","tool-version"],keyParts:["kind","relativePath","contentHash","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/source/react-profile.ts"}),o("git-file-adds",{dependsOn:["git-head","git-history","tool-version"],keyParts:["kind","cacheKey","head","historyWindow","payloadVersion"],stalenessTest:"tests/storage/evidence-cache.test.ts",owner:"src/analysis/git-history.ts"}),o("typescript-reference-fragments",{dependsOn:["content-hash","transitive-deps-digest","config","tool-version"],keyParts:["kind","relativePath","semanticIdentity","payloadVersion"],stalenessTest:"tests/semantic/typescript/typescript-reference-fragments.test.ts",owner:"src/semantic/typescript/reference-fragment-shadow.ts"}),o("typescript-import-usage",{dependsOn:["content-hash","transitive-deps-digest","config","tool-version"],keyParts:["kind","relativePath","semanticIdentity","payloadVersion"],stalenessTest:"tests/semantic/typescript/typescript-semantic-provider.test.ts",owner:"src/semantic/shared-primitives.ts"}),o("typescript-signatures",{dependsOn:["content-hash","transitive-deps-digest","config","tool-version"],keyParts:["kind","relativePath","semanticIdentity","payloadVersion"],stalenessTest:"tests/semantic/typescript/typescript-semantic-provider.test.ts",owner:"src/semantic/shared-primitives.ts"}),o("runtime-boundary-http-roles",{dependsOn:["content-hash","tool-version"],keyParts:["kind","relativePath","contentHash","payloadVersion"],stalenessTest:"tests/analysis/runtime-boundaries.test.ts",owner:"src/analysis/runtime-boundaries/http-summaries.ts"}),o("runtime-boundary-mount-imports",{dependsOn:["content-hash","tool-version"],keyParts:["kind","relativePath","contentHash","payloadVersion"],stalenessTest:"tests/analysis/runtime-boundary-accuracy.test.ts",owner:"src/analysis/runtime-boundaries/http-mounts.ts"}),o("runtime-boundary-source-hashes",{dependsOn:["content-hash","tool-version"],keyParts:["kind","relativePath","contentHash","payloadVersion"],stalenessTest:"tests/analysis/runtime-boundaries.test.ts",owner:"src/analysis/runtime-boundaries/graph.ts"}),o("runtime-boundary-direct-extraction",{dependsOn:["content-hash","direct-deps-digest","tool-version"],keyParts:["kind","relativePath","contentHash","payloadVersion"],stalenessTest:"tests/analysis/runtime-boundaries.test.ts",owner:"src/analysis/runtime-boundaries/graph.ts"}),g("file-dependency-graph",{dependsOn:["project-fingerprint","indexed-language-set","import-resolution-fingerprint","tool-version"],keyParts:["kind","scope","projectFingerprint","payloadVersion"],stalenessTest:"tests/symbols/file-dep-graph.test.ts",owner:"src/symbols/graph/file-dep-graph.ts"}),g("semantic-import-usage",{dependsOn:["project-fingerprint","indexed-language-set","import-resolution-fingerprint","tool-version"],keyParts:["kind","relativePath","projectFingerprint","language","semanticEngine","payloadVersion"],stalenessTest:"tests/semantic/rust/rust-semantic-cache-gate.test.ts",owner:"src/semantic/shared-primitives.ts"}),g("semantic-signatures",{dependsOn:["project-fingerprint","indexed-language-set","tool-version"],keyParts:["kind","relativePath","symbol","projectFingerprint","language","semanticEngine","payloadVersion"],stalenessTest:"tests/semantic/rust/rust-semantic-cache-gate.test.ts",owner:"src/semantic/shared-primitives.ts"}),g("health-semantic-prewarm",{dependsOn:["project-fingerprint","indexed-language-set","tool-version"],keyParts:["kind","scope","cliVersion","projectFingerprint","payloadVersion"],stalenessTest:"tests/runtime/cli-support.test.ts",owner:"src/runtime/cli-support.ts"}),g("typescript-hierarchy-targets",{dependsOn:["project-fingerprint","indexed-language-set","tool-version"],keyParts:["kind","definitionSet","projectFingerprint","payloadVersion"],stalenessTest:"tests/semantic/typescript/typescript-semantic-provider.test.ts",owner:"src/semantic/typescript/ts-morph-provider.ts"})];function ne(e){let t=new Map,r=e.invalidation.dependsOn.every(n=>n==="content-hash"||n==="tool-version");return{kind:e.kind,read(n,s,i){if(!r&&h(n.db))return null;let d=!1,a=0,c;if(y()){let l=E(n);if(l){let f=`${l}\0${s}\0${i}`;c=t.get(f),c||(c=v(["evidence-product-file-read-v1",e.kind,l,s,i]),t.set(f,c))}}return m("evidence-product.file.read",()=>{let l=T(n,e.kind,s,i);if(l===null)return null;a=l.length;try{let f=e.deserialize(l);return d=f!==null,f}catch{return null}},()=>({...c?{workIdentity:c,workOutcome:"computed"}:{},scope:"file",kind:e.kind,available:!0,hit:d,payloadBytes:a}))},has(n,s,i){return!r&&h(n.db)?!1:R(n,e.kind,s,i)},write(n,s,i,d){j(n,e.kind,s,i,e.serialize(d))},writeBatch(n,s){O(n,s.map(i=>({kind:e.kind,relativePath:i.relativePath,contentHash:i.contentHash,payload:e.serialize(i.value)})))}}}function re(e){let t=new Map;return{kind:e.kind,read(r,n,s){if(h(r.db))return null;let i=!1,d=0,a;if(y()){let c=`${s}\0${n}`;a=t.get(c),a||(a=v(["evidence-product-project-read-v1",e.kind,s,n]),t.set(c,a))}return m("evidence-product.project.read",()=>{let c=x(r,e.kind,n,s);if(c===null)return null;d=c.length;try{let l=e.deserialize(c);return i=l!==null,l}catch{return null}},()=>({...a?{workIdentity:a,workOutcome:"computed"}:{},scope:"project",kind:e.kind,available:!0,hit:i,payloadBytes:d}))},write(r,n,s,i){F(r,e.kind,n,s,e.serialize(i))}}}function se(e){let t=z.find(r=>r.kind===e);if(!t)throw new Error(`missing evidence product manifest entry for ${e}`);return t.invalidation}function o(e,t){return{scope:"file",kind:e,invalidation:{scope:"file",...t}}}function g(e,t){return{scope:"project",kind:e,invalidation:{scope:"project",...t}}}export{U as a,u as b,X as c,G as d,B as e,N as f,ne as g,re as h,se as i};
|
|
2
|
+
//# sourceMappingURL=chunk-D3FDISIC.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{a as he}from"./chunk-VTY3VK6E.js";import{f as te}from"./chunk-YGVRMGYN.js";import{j as be}from"./chunk-F2V2LPET.js";import{e as _}from"./chunk-BOJ5SVE2.js";import{b as pe}from"./chunk-6LSEIIF7.js";import{C as ne,e as J,r as ee}from"./chunk-4WTUBQ36.js";import{d as K,e as ge,f as Z,n as Y}from"./chunk-NZAXKGRL.js";import{c as me,x as R}from"./chunk-5D2LVK7O.js";import{g as H,k as I,o as X,s as k}from"./chunk-7WTPQ4NX.js";import{C as j,E as U,O as w}from"./chunk-FVULPZDF.js";import{a as fe,d as B}from"./chunk-A2IIGFMJ.js";import{d as O}from"./chunk-5TNQJUR2.js";var ye=new WeakMap,Ce=new WeakMap,ve=new WeakMap,Se=new WeakMap,Le=new WeakMap;function dt(e,n){let t=Ce.get(e);t||(t=new Map,Ce.set(e,t));let r=t.get(n);if(r)return r;let a=w(e,n)?.rootNode;if(!a)return t.set(n,[]),[];let o=new Set;M(a,s=>{if(s.type!=="call_expression")return;let d=s.childForFieldName("function")??s.namedChild(0),f=/^([A-Za-z_$][\w$]*(?:\.Service)?)\.of$/u.exec(d?.text.replace(/\s+/gu,"")??"");f&&o.add(f[1])});let i=k(e,n).filter(s=>!!s.sourcePath),l=new Set;for(let s of o)Be(e,n,i,s,l);let c=ie([...l]).sort();return t.set(n,c),c}function Be(e,n,t,r,a){let o=/^([A-Za-z_$][\w$]*)\.Service$/u.exec(r);if(o){for(let i of t)i.localName===o[1]&&a.add(i.sourcePath);return}if(r==="Service"){R(e,n).some(i=>i.leaf==="Service")&&a.add(n);for(let i of t)(i.localName??i.importedName)==="Service"&&a.add(i.sourcePath)}}function Ne(e,n,t={}){let a=X(e,n)?.filter(s=>!t.ranges||t.ranges.some(d=>s.line>=d.startLine&&s.line<=d.endLine));if(!a)return{targets:[],unresolvedCallsites:0};let o=_e(e,n),i=Z(e),l=[],c=0;for(let s of a){if(!s.memberAccess)continue;let d=K(n,i.get(s.calleeLeaf)??[]);if(t.excludeIndexedTargets!==!1&&ge(e,n,d,!0,s.calleeQualifier))continue;let f=De(o,s);f.length===0&&(c+=1);for(let u of f)l.push(u)}return{targets:l,unresolvedCallsites:c}}function _e(e,n){let t=k(e,n).filter(l=>!!l.sourcePath),r=hn(fe(e,n)??""),a=w(e,n)?.rootNode??null,o=a?je(a):Ae();return{db:e,sourceFile:n,sourceImports:t,sourceAliases:r,serviceReceivers:o,callablesByFile:new Map}}function De(e,n){let{db:t,sourceFile:r,sourceImports:a,serviceReceivers:o}=e,i=pn(t,r,n,a);if(i)return[i];let l=Oe(t,r,n,a,Ge(o,n.calleeQualifier,n.line));if(l.length>0)return l;let c=Qe(t,r,n);return c.length>0?c:ze(e,n)}function ze(e,n){let{db:t,sourceFile:r,sourceImports:a,sourceAliases:o,callablesByFile:i}=e,l=n.calleeQualifier,c=l?o.get(l)??l:null,d=(c?ie(a.filter(u=>(u.localName??u.importedName)===c).map(u=>u.sourcePath)):[]).flatMap(u=>{let m=i.get(u);return m||(m=I(t,u)??[],i.set(u,m)),m.filter(p=>p.name===n.calleeLeaf).map(p=>({file:u,callable:p}))});if(d.length!==1)return[];let f=d[0];return[{calleeLeaf:n.calleeLeaf,line:n.line,sourceFile:r,targetFile:f.file,targetStartLine:f.callable.startLine,targetEndLine:f.callable.endLine,resolution:"direct-import-receiver",strength:"candidate"}]}function Oe(e,n,t,r,a){let o=t.calleeQualifier;if(!o||!/^[A-Za-z_$][\w$]*$/u.test(o))return[];if(a.size!==1)return[];let i=[...a][0],l=ie(r.filter(d=>d.localName===i||d.importedName===i).map(d=>d.sourcePath));if(l.length!==1)return[];let c=l[0],s=Je(e,c,t.calleeLeaf);return s.map(d=>({calleeLeaf:d.name,line:t.line,sourceFile:n,targetFile:d.file,targetStartLine:d.startLine,targetEndLine:d.endLine,serviceFile:c,resolutionAlternativeCount:s.length,resolution:"imported-service-object-member",strength:"candidate"}))}function Ae(){return{declarations:new Map,callbacks:[]}}function je(e){let n=Ae();return M(e,t=>{if(t.type==="variable_declarator"){Ke(t,n);return}Ze(t,n)}),n}function Ke(e,n){let t=e.childForFieldName("name")??e.namedChild(0),r=e.childForFieldName("value")??e.namedChild(1);if(t?.type!=="identifier"||!r)return;let a=new Set;if(M(r,o=>{if(o.type!=="member_expression")return;let i=o.childForFieldName("object")??o.namedChild(0),l=o.childForFieldName("property")??o.namedChild(1);i?.type==="identifier"&&l?.text==="Service"&&a.add(i.text)}),a.size===1){let o=n.declarations.get(t.text)??[];o.push({line:e.startPosition.row,alias:[...a][0]}),n.declarations.set(t.text,o)}}function Ze(e,n){if(!["arrow_function","function_expression","generator_function"].includes(e.type))return;let t=e.childForFieldName("parameters")??e.childForFieldName("parameter");if(!t)return;let r=qe(e);if(r===null)return;let a=new Set;M(t,o=>{o.type==="identifier"&&a.add(o.text)}),a.size!==0&&n.callbacks.push({startLine:e.startPosition.row,endLine:e.endPosition.row,receivers:a,alias:r})}function qe(e){let n=e.parent;for(;n&&n.type!=="call_expression";)n=n.parent;if(!n)return null;let t=n.childForFieldName("function")??n.namedChild(0),r=/^([A-Za-z_$][\w$]*)\.Service\.use$/u.exec(t?.text??"");return r?r[1]:null}function Ge(e,n,t){if(!n||!/^[A-Za-z_$][\w$]*$/u.test(n))return new Set;let r=new Set((e.declarations.get(n)??[]).filter(a=>a.line<=t).map(a=>a.alias));for(let a of e.callbacks)a.startLine<=t&&a.endLine>=t&&a.receivers.has(n)&&r.add(a.alias);return r}function Qe(e,n,t){let r=Ve(e,n,t);if(!r)return[];let a=Se.get(e);a||(a=new Map,Se.set(e,a));let o=`${r.symbol}\0${t.calleeLeaf}`,i=a.get(o);if(!i){let l=[];for(let c of Y(e,r))l.push(...We(e,r.leaf,c.file,c.line,t.calleeLeaf));i=l.filter((c,s,d)=>d.findIndex(f=>f.file===c.file&&f.startLine===c.startLine&&f.endLine===c.endLine&&f.name===c.name)===s),a.set(o,i)}return i.map(l=>({calleeLeaf:l.name,line:t.line,sourceFile:n,targetFile:l.file,targetStartLine:l.startLine,targetEndLine:l.endLine,resolutionAlternativeCount:i.length,resolution:"factory-callback-member",strength:i.length===1?"exact":"candidate"}))}function Ve(e,n,t){let r=t.calleeQualifier;if(!r||!/^[A-Za-z_$][\w$]*$/u.test(r))return null;let a=w(e,n)?.rootNode;if(!a)return null;let o=He(e,n,a,t.line,t.calleeLeaf,r),i=o?Ye(o,r):null;if(!i||!Xe(i))return null;let l=(I(e,n)??[]).filter(s=>s.startLine<=i.startPosition.row&&s.endLine>=i.endPosition.row).sort((s,d)=>s.endLine-s.startLine-(d.endLine-d.startLine))[0];if(!l)return null;let c=R(e,n).filter(s=>s.isFunctionLike&&s.leaf===l.name);return c.length!==1?null:c[0]}function We(e,n,t,r,a){let o=w(e,t)?.rootNode;if(!o)return[];let i=j(o,"call_expression").filter(s=>s.startPosition.row>r||s.endPosition.row<r?!1:(s.childForFieldName("function")??s.namedChild(0))?.text.replace(/\s+/gu,"").replace(/<[^<>]*>$/u,"").match(/[A-Za-z_$][\w$]*$/u)?.[0]===n);if(i.length!==1)return[];let c=i[0].childForFieldName("arguments")?.namedChildren.find(s=>E(s).type==="object");return c?E(c).namedChildren.flatMap(s=>Ue(e,t,a,s)):[]}function Ue(e,n,t,r){if(r.type==="shorthand_property_identifier"&&r.text===t)return q(e,n,t,r,r);if(r.type!=="pair")return[];let a=r.childForFieldName("key")??r.namedChild(0),o=r.childForFieldName("value")??r.namedChild(1);return G(a?.text)!==t||!o?[]:q(e,n,t,o,r)}function He(e,n,t,r,a,o){let i=ve.get(e);i||(i=new Map,ve.set(e,i));let l=i.get(n);return l||(l=Cn(t),i.set(n,l)),l.get(`${r}\0${o}\0${a}`)??null}function Xe(e){return e.descendantsOfType("return_statement").some(n=>{let t=n.childForFieldName("argument")??n.namedChild(0);return!!(t&&E(t).type==="object")})}function Ye(e,n){let t=e.parent;for(;t;){if(/(?:function|method|lambda)/u.test(t.type)||t.type==="arrow_function"){let r=t.childForFieldName("parameters")??t.childForFieldName("parameter"),a=!1;if(r&&M(r,o=>{o.type==="identifier"&&o.text===n&&(a=!0)}),a)return t}t=t.parent}return null}function q(e,n,t,r,a){if(r.type==="identifier")return(I(e,n)??[]).filter(c=>c.name===r.text).map(c=>({...c,file:n}));let o=re(e,n,r.text);if(o.length>0)return o;if(!ae(r))return[];let l=(I(e,n)??[]).filter(c=>c.startLine>=a.startPosition.row&&c.endLine<=a.endPosition.row&&(c.name===t||c.name.startsWith("source@"))).sort((c,s)=>c.endLine-c.startLine-(s.endLine-s.startLine))[0];return[l?{...l,file:n}:{name:t,file:n,startLine:a.startPosition.row,endLine:a.endPosition.row}]}function Je(e,n,t){let r=Le.get(e);r||(r=new Map,Le.set(e,r));let a=`${n}\0${t}`,o=r.get(a);if(o)return o;let i=tn(e,n).flatMap(l=>en(e,l,n,t));return r.set(a,i),i}function en(e,n,t,r){let a=w(e,n)?.rootNode,o=I(e,n)??[];if(!a)return[];let i=rn(e,n,t);if(i.size===0)return[];let l=new Set,c=[],s=[],d=[];return M(a,u=>{if(nn(u,i)){if(u.type==="pair"){let{key:m,value:p}=Nn(u);if(G(m?.text)!==r||!p)return;p.type==="identifier"?l.add(p.text):ae(p)?c.push({name:r,startLine:u.startPosition.row,endLine:u.endPosition.row}):yn(e,n,p,u,d,s);return}u.type==="shorthand_property_identifier"&&u.text===r&&l.add(r)}}),[...o.filter(u=>l.has(u.name)).map(u=>({...u,file:n})),...c.map(u=>({...u,file:n})),...s.map(u=>({...u,file:n})),...d].filter((u,m,p)=>p.findIndex(L=>L.file===u.file&&L.name===u.name&&L.startLine===u.startLine&&L.endLine===u.endLine)===m)}function nn(e,n){let t=e,r=null;for(;t;){if(t.type==="object"&&(r=t),t.type==="call_expression"){if(!r)return!1;let a=t.childForFieldName("function")??t.namedChild(0);return a?n.has(a.text.replace(/\.of$/u,""))&&a.text.endsWith(".of"):!1}t=t.parent}return!1}function tn(e,n){let t=ye.get(e);t||(t=new Map,ye.set(e,t));let r=t.get(n);if(r)return r;let a=new Set([n]),o=R(e,n).filter(l=>l.leaf==="Service"&&l.isTypeLike);for(let l of o)for(let c of Y(e,l))a.add(c.file);let i=[...a].sort();return t.set(n,i),i}function rn(e,n,t){let r=new Set;O(n,t)&&r.add("Service");for(let a of k(e,n))!a.sourcePath||!O(a.sourcePath,t)||vn(a,r);return r}function re(e,n,t){let r=Re(e,n,t);if(!r)return[];let{factory:a,memberName:o}=r,i=w(e,a.relativePath)?.rootNode;if(!i)return[];let l=U(i,a.startLine,a.endLine);if(!l)return[];let c=[];for(let s of l.descendantsOfType("return_statement")){let d=s.childForFieldName("argument")??s.namedChild(0);if(!d)continue;let f=E(d);if(f.type==="object")for(let u of f.namedChildren)for(let m of an(e,a.relativePath,o,u))c.push(m)}return c.filter((s,d,f)=>f.findIndex(u=>u.file===s.file&&u.name===s.name&&u.startLine===s.startLine&&u.endLine===s.endLine)===d)}function xe(e,n,t){return(I(e,n)??[]).filter(r=>r.name===t).map(r=>({...r,file:n}))}function an(e,n,t,r){if(r.type==="shorthand_property_identifier"&&r.text===t)return xe(e,n,t);if(r.type!=="pair")return[];let a=r.childForFieldName("key")??r.namedChild(0),o=r.childForFieldName("value")??r.namedChild(1);return G(a?.text)!==t||!o?[]:o.type==="identifier"?xe(e,n,o.text):ae(o)?[{name:t,startLine:r.startPosition.row,endLine:r.endPosition.row,file:n}]:[]}function on(e,n,t){let r=Re(e,n,t);if(!r)return[];let{factory:a,factoryCall:o}=r,i=w(e,a.relativePath)?.rootNode;if(!i)return[];let l=U(i,a.startLine,a.endLine);if(!l)return[];let c=ln(l);if(c.size===0)return[];let s=re(e,n,t);if(s.length===0)return[];let d=sn(e,a,s,c);return d.size===0?[]:cn(e,n,o,d)}function Re(e,n,t){let r=/^([A-Za-z_$][\w$]*)\.([A-Za-z_$][\w$]*)$/u.exec(t.replace(/\s+/gu,""));if(!r)return null;let a=w(e,n)?.rootNode;if(!a)return null;let o=dn(a,r[1]),i=o?un(o):null,l=i?.childForFieldName("function")??i?.namedChild(0),c=l?fn(e,n,l.text):[];return c.length!==1||!i?null:{factory:c[0],factoryCall:i,memberName:r[2]}}function ln(e){let n=new Set,t=e.childForFieldName("parameters")??e.childForFieldName("parameter");return t&&M(t,r=>{r.type==="identifier"&&n.add(r.text)}),n}function sn(e,n,t,r){let a=(I(e,n.relativePath)??[]).filter(s=>s.startLine>=n.startLine&&s.endLine<=n.endLine),o=(X(e,n.relativePath)??[]).filter(s=>s.line>=n.startLine&&s.line<=n.endLine),i=new Set,l=t.map(s=>({name:s.name,startLine:s.startLine,endLine:s.endLine})),c=new Set;for(;l.length>0&&c.size<32;){let s=l.shift(),d=`${s.name}\0${s.startLine}\0${s.endLine}`;if(!c.has(d)){c.add(d);for(let f of o.filter(u=>u.line>=s.startLine&&u.line<=s.endLine))Sn(f,r,i,a,l)}}return i}function cn(e,n,t,r){let o=t.childForFieldName("arguments")?.namedChildren.find(l=>E(l).type==="object");if(!o)return[];let i=[];for(let l of E(o).namedChildren){if(l.type==="shorthand_property_identifier"&&r.has(l.text)){i.push(...q(e,n,l.text,l,l));continue}i.push(...Ln(e,n,l,r))}return i.filter((l,c,s)=>s.findIndex(d=>d.file===l.file&&d.name===l.name&&d.startLine===l.startLine&&d.endLine===l.endLine)===c)}function dn(e,n){for(let t of j(e,"variable_declarator"))if((t.childForFieldName("name")??t.namedChild(0))?.text===n)return t.childForFieldName("value")??t.namedChild(1);return null}function un(e){return e.type==="call_expression"?e:e.descendantsOfType("call_expression")[0]??null}function fn(e,n,t){let r=t.replace(/\s+/gu,"").replace(/<[^<>]*>$/u,""),a=/^([A-Za-z_$][\w$]*)\.([A-Za-z_$][\w$]*)$/u.exec(r);if(a)return mn(e,n,a[1],a[2]);if(!/^[A-Za-z_$][\w$]*$/u.test(r))return[];let o=R(e,n).filter(d=>d.leaf===r&&d.isFunctionLike);if(o.length>0)return o;let i=(I(e,n)??[]).filter(d=>d.name===r).map(d=>({...d,relativePath:n}));if(i.length>0)return i;let l=k(e,n).filter(d=>d.localName===r&&d.sourcePath&&d.kind!=="namespace");if(l.length!==1||!l[0].sourcePath)return[];let c=l[0].sourcePath,s=l[0].importedName==="default"?r:l[0].importedName;return we(e,c,s)}function mn(e,n,t,r){let a=k(e,n).filter(o=>o.localName===t&&o.sourcePath);return a.length!==1||!a[0].sourcePath?[]:we(e,a[0].sourcePath,r)}function we(e,n,t){let r=J(e,n,t).filter(a=>a.isFunctionLike);return r.length>0?r:(I(e,n)??[]).filter(a=>a.name===t).map(a=>({...a,relativePath:n}))}function ae(e){return["arrow_function","function_expression","generator_function"].includes(e.type)||e.descendantsOfType(["arrow_function","function_expression","generator_function"]).length>0}function gn(e){let n=e.parent;for(;n;){if(n.type==="variable_declarator"){let t=n.childForFieldName("name")??n.namedChild(0);if(t?.type==="identifier")return{name:t.text,startLine:n.startPosition.row,endLine:n.endPosition.row}}n=n.parent}return null}function G(e){return e?e.replace(/^(?:['"])(.*)(?:['"])$/u,"$1"):null}function pn(e,n,t,r){let a=/^this\.([A-Za-z_$][\w$]*)$/u.exec(t.calleeQualifier??"");if(!a)return null;let o=w(e,n)?.rootNode;if(!o)return null;let i=bn(o,t.line);if(!i)return null;let l=new Set;if(M(i,m=>{if(m.type!=="assignment_expression")return;let p=m.childForFieldName("left")??m.namedChild(0),L=m.childForFieldName("right")??m.namedChild(m.namedChildCount-1);if(p?.text.replace(/\s+/gu,"")!==`this.${a[1]}`||!L)return;let x=E(L);if(x.type!=="new_expression")return;let T=(x.childForFieldName("constructor")??x.namedChild(0))?.text.match(/[A-Za-z_$][\w$]*$/u)?.[0];T&&l.add(T)}),l.size!==1)return null;let c=[...l][0],s=r.filter(m=>m.localName===c);if(s.length!==1)return null;let d=xn(e,s[0],c),f=R(e,s[0].sourcePath).filter(m=>m.isFunctionLike&&m.leaf===t.calleeLeaf&&me(m.symbol)===d);if(f.length!==1)return null;let u=f[0];return{calleeLeaf:t.calleeLeaf,line:t.line,sourceFile:n,targetFile:u.relativePath,targetStartLine:u.startLine,targetEndLine:u.endLine,targetSymbol:u.symbol,resolution:"constructed-member-receiver",strength:"exact"}}function bn(e,n){let t=[];return M(e,r=>{["class","class_declaration","class_definition"].includes(r.type)&&r.startPosition.row<=n&&r.endPosition.row>=n&&t.push(r)}),t.sort((r,a)=>r.endPosition.row-r.startPosition.row-(a.endPosition.row-a.startPosition.row))[0]??null}function E(e){let n=e;for(;["parenthesized_expression","as_expression","type_assertion","satisfies_expression"].includes(n.type)&&n.namedChildCount===1;)n=n.namedChild(0);return n}function M(e,n){n(e);for(let t of e.namedChildren)M(t,n)}function hn(e){let n=new Map,t=/\b(?:const|let|var)\s+([A-Za-z_$][\w$]*)\s*=\s*([A-Za-z_$][\w$]*)\s*;/gu;for(let r of e.matchAll(t)){let a=r[1],o=r[2];a&&o&&n.set(a,o)}return n}function ie(e){let n=[];for(let t of e)n.some(r=>O(r,t))||n.push(t);return n}function yn(e,n,t,r,a,o){let i=on(e,n,t.text),l=re(e,n,t.text);if(i.length>0)a.push(...i);else if(l.length>0)a.push(...l);else{let c=gn(r);c&&o.push(c)}}function Cn(e){let n=new Map;for(let t of j(e,"call_expression")){let r=t.childForFieldName("function")??t.namedChild(0),a=/^([A-Za-z_$][\w$]*)\.([A-Za-z_$][\w$]*)$/u.exec(r?.text.replace(/\s+/gu,"")??"");if(a)for(let o=t.startPosition.row;o<=t.endPosition.row;o+=1){let i=`${o}\0${a[1]}\0${a[2]}`,l=n.get(i);(!l||t.endIndex-t.startIndex<l.endIndex-l.startIndex)&&n.set(i,t)}}return n}function vn(e,n){if(e.kind==="namespace"&&e.localName){n.add(`${e.localName}.Service`);return}(e.importedName==="default"?e.localName:e.importedName)==="Service"?n.add(e.localName??e.importedName):e.localName&&e.importedName!=="default"&&n.add(`${e.localName}.Service`)}function Sn(e,n,t,r,a){if(e.memberAccess&&e.calleeQualifier&&n.has(e.calleeQualifier)){t.add(e.calleeLeaf);return}if(e.memberAccess)return;let o=r.filter(i=>i.name===e.calleeLeaf);o.length===1&&a.push(o[0])}function Ln(e,n,t,r){if(t.type!=="pair")return[];let a=t.childForFieldName("key")??t.namedChild(0),o=t.childForFieldName("value")??t.namedChild(1),i=G(a?.text);return!i||!r.has(i)||!o?[]:q(e,n,i,o,t)}function xn(e,n,t){let r=n.importedName==="default"?t:n.importedName,a=n.importedName==="default"?J(e,n.sourcePath,t):[];return a.length===1?a[0].leaf:r}function Nn(e){let n=e.childForFieldName("key")??e.namedChild(0),t=e.childForFieldName("value")??e.namedChild(1);return{key:n,value:t}}var Te=6;function Ee(e,n,t){return`${e}\0${n}\0${t??n}`}function At(e,n,t,r={}){let a=r.limit??Te;if(!Number.isSafeInteger(a)||a<=0)throw new RangeError(`next-anchor limit must be a positive safe integer; received ${a}`);let o=r.sourceAllowed??(()=>!0),i=new Map(n.nodes.map(b=>[b.id,b])),l=new Set(t.steps.map(b=>b.nodeId)),c=new Set(t.steps.flatMap(b=>{let y=oe(i.get(b.nodeId));return y?[y]:[]})),s=new Set;Hn(t,c,s);let d=b=>b.symbol!==null&&c.has(b.symbol)||s.has(Ee(b.file,b.line,b.endLine)),f=new Map(t.steps.flatMap(b=>{if(!b.location)return[];let y=oe(i.get(b.nodeId));if(!y)return[];let A=R(e,b.location.file).find(h=>h.symbol===y);return A?[[b.id,A]]:[]})),u=new pe(e).calleeMap([...f.values()],{additive:!1,semantic:!0}),m=[],p=new Set,L=new Set,x=0,N=0,T=0,z=0,g=0,C=0,v=0,S=0;for(let b of t.steps){if(!b.location||!b.behavior)continue;let y=An(b,{db:e,topology:n,nodeById:i,returnedNodeIds:l,sourceAllowed:o,alternativeAlreadyReturned:d});m.push(...y.candidates),C+=y.upstreamCandidates,S+=y.runtimeCandidates,v+=y.resultCandidates;let A=Mn(b,{db:e,topology:n,nodeById:i,returnedNodeIds:l,sourceAllowed:o,alternativeAlreadyReturned:d},p);m.push(...A);let h=Tn(b,{db:e,topology:n,nodeById:i,returnedNodeIds:l,sourceAllowed:o,alternativeAlreadyReturned:d},{evidencedCallsiteKeys:p,consideredCandidateKeys:L,calleeMap:u,stepDefinition:f.get(b.id)});m.push(...h.candidates),x+=h.scannedBehaviorSteps,N+=h.visibleCallsites,T+=h.identityCandidateCallsites,z+=h.ambiguousCallsites,g+=h.unresolvedCallsites}return ke(e,m,t.steps,a,{scannedBehaviorSteps:x,visibleCallsites:N,graphEvidencedCallsites:p.size,identityCandidateCallsites:T,ambiguousCallsites:z,unresolvedCallsites:g,upstreamCandidates:C,resultCandidates:v,runtimeCandidates:S},r.selectionTerms)}function An(e,n){let t=[],r=0,a=0,o=0;if(!e.location||!e.behavior)return{candidates:t,upstreamCandidates:r,resultCandidates:a,runtimeCandidates:o};let i=n.topology.edges.filter(c=>["call","runtime-boundary"].includes(c.kind)&&(c.fromNodeId===e.nodeId||c.toNodeId===e.nodeId)&&c.disposition!=="excluded"&&c.disposition!=="unsupported");for(let c of i){let s=wn(e,n,c);s&&(t.push(s),s.anchor.direction==="upstream"&&(r+=1),c.kind==="runtime-boundary"&&(o+=1))}let l=n.topology.edges.filter(c=>c.kind==="reference"&&c.fromNodeId===e.nodeId&&c.disposition!=="excluded"&&c.disposition!=="unsupported"&&!n.returnedNodeIds.has(c.toNodeId));for(let c of l){let s=In(e,n,c,e.location,e.behavior);s&&(t.push(s),s.anchor.causalRole==="result-callback"&&(a+=1))}return{candidates:t,upstreamCandidates:r,resultCandidates:a,runtimeCandidates:o}}function Rn(e,n){return e.kind==="runtime-boundary"?n?"runtime-producer":"runtime-consumer":n?"caller":"callee"}function Pe(e,n){return!!(n?.location&&e.sourceAllowed(n.location.file))}function wn(e,n,t){let r=t.toNodeId===e.nodeId,a=r?t.fromNodeId:t.toNodeId;if(n.returnedNodeIds.has(a))return;let o=n.nodeById.get(a);if(!Pe(n,o))return;let i=t.kind==="call"?ce(n.db,o):se(o);if(!i||n.alternativeAlreadyReturned(i))return;let l=de(t,o.location.file)??o.location,c=r?"upstream":"downstream",s=Rn(t,r),d=ue(t.evidence),f=D(o),u=()=>{let m=B(n.db,l.file)[l.line]?.trim();return{file:l.file,line:l.line,endLine:l.endLine??l.line,text:m||`${o.label} \u2192 ${e.label}`,signals:["call"],calleeLeaf:f}};return{anchor:{id:P(e.id,l.line,o.id),status:d,source:"graph-relation",direction:c,causalRole:s,relationKind:t.kind,fromStepId:e.id,fromLabel:e.label,callsite:u(),alternatives:[i],alternativeCount:1,evidence:t.evidence}}}function In(e,n,t,r,a){let o=n.nodeById.get(t.toNodeId);if(!Pe(n,o))return;let i=ce(n.db,o);if(!i||n.alternativeAlreadyReturned(i))return;let l=D(o),c=de(t,r.file)?.line,s=a.lines.find(u=>(c===void 0||c>=u.line&&c<=u.endLine)&&u.text.includes(l));if(!s)return;let d=$e(s.signals),f=ue(t.evidence);return{anchor:{id:P(e.id,s.line,o.id),status:f,source:"graph-relation",direction:"downstream",causalRole:d,relationKind:"reference",fromStepId:e.id,fromLabel:e.label,callsite:{file:r.file,line:s.line,endLine:s.endLine,text:s.text,signals:s.signals,calleeLeaf:l},alternatives:[i],alternativeCount:1,evidence:t.evidence}}}function Mn(e,n,t){let r=[];if(!e.location)return r;let a=ee(n.db,e.location.file,e.location.line,e.location.endLine??e.location.line),o=B(n.db,e.location.file),i=te(n.db,e.location.file,e.location.line,e.location.endLine??e.location.line);for(let l of a.targets){if(!n.sourceAllowed(l.definition.relativePath))continue;let c=F(e.location.file,l.sourceLine,l.calleeLeaf);if(t.has(c))continue;t.add(c);let s=le(i.get(l.sourceLine)),d={symbol:l.definition.symbol,label:l.definition.leaf,file:l.definition.relativePath,line:l.definition.startLine,endLine:l.definition.endLine};n.alternativeAlreadyReturned(d)||r.push({anchor:{id:P(e.id,l.sourceLine,l.definition.symbol),status:"exact",source:"graph-call",direction:"downstream",causalRole:"callee",relationKind:"call",fromStepId:e.id,fromLabel:e.label,callsite:{file:e.location.file,line:l.sourceLine,endLine:l.sourceLine,text:o[l.sourceLine]?.trim()||`${l.calleeLeaf}()`,signals:s,calleeLeaf:l.calleeLeaf},alternatives:[d],alternativeCount:1,evidence:[{method:"scip-occurrence-callsite",strength:l.implementationStatus==="unresolved"?"candidate":"exact",identity:l.definition.symbol,location:{file:e.location.file,line:l.sourceLine}}]}})}return r}function Tn(e,n,t){let r={candidates:[],scannedBehaviorSteps:0,visibleCallsites:0,identityCandidateCallsites:0,ambiguousCallsites:0,unresolvedCallsites:0};if(!e.location||!e.behavior)return r;let a=e.behavior.lines.filter(g=>g.signals.includes("call"));if(a.length===0)return r;let o=e.location.file,i=[],l=0,c=0,s=0,d=(H(n.db,o)?.callSites??[]).filter(g=>a.some(C=>g.line>=C.line&&g.line<=C.endLine)),f=n.topology.edges.filter(g=>g.kind==="call"&&g.fromNodeId===e.nodeId&&g.disposition!=="excluded"&&g.disposition!=="unsupported"),u=En(f,n.nodeById),m=Gn(n.db,t.stepDefinition?t.calleeMap.get(t.stepDefinition.symbolId)??[]:[]),p=Qn(m),L=(g,C,v)=>{let S=Vn(d,a,g,C,v);if(!S)return null;let b=Q(a,S.line,g);if(!b)return null;let y=F(o,S.line,g);return t.evidencedCallsiteKeys.has(y)?null:(t.evidencedCallsiteKeys.add(y),{callsite:S,materialLine:b})},x=(g,C,v,S,b,y)=>{let{callsite:A,materialLine:h}=C;i.push({anchor:{id:P(e.id,A.line,v),status:S,source:"graph-call",direction:"downstream",causalRole:"callee",relationKind:"call",fromStepId:e.id,fromLabel:e.label,callsite:{file:o,line:h.line,endLine:h.endLine,text:h.text,signals:h.signals,calleeLeaf:g},alternatives:[b],alternativeCount:1,evidence:y}})},N=()=>{for(let g of m){if(!n.sourceAllowed(g.alternative.file)||n.alternativeAlreadyReturned(g.alternative))continue;let C=_(g.alternative.label),v=L(C,g.row.callsiteLine,p.get(C)===1);if(!v)continue;let{callsite:S}=v,b=ne(g.row.source);x(C,v,g.alternative.symbol??g.alternative.file,b,g.alternative,[{method:g.row.source,strength:b,identity:g.row.symbol,location:{file:o,line:S.line}}])}},T=()=>{for(let g of f){if(n.returnedNodeIds.has(g.toNodeId))continue;let C=n.nodeById.get(g.toNodeId);if(!C?.location||!n.sourceAllowed(C.location.file))continue;let v=D(C),S=g.evidence.find(h=>{let $=h.location;return $!==null&&$.file===e.location?.file&&$.line>=0})?.location?.line,b=L(v,S,u.get(v)===1);if(!b)continue;let y=se(C);if(!y||n.alternativeAlreadyReturned(y))continue;let A=ue(g.evidence);x(v,b,C.id,A,y,g.evidence)}},z=()=>{for(let g of d){let C=F(o,g.line,g.calleeLeaf);if(t.evidencedCallsiteKeys.has(C))continue;let v=Q(a,g.line,g.calleeLeaf);if(!v)continue;let S=K(o,Z(n.db).get(g.calleeLeaf)??[]).flatMap(h=>R(n.db,h.file).filter($=>$.symbol===h.symbol&&$.isFunctionLike)).filter(h=>n.sourceAllowed(h.relativePath)&&!n.alternativeAlreadyReturned({symbol:h.symbol,label:h.leaf,file:h.relativePath,line:h.startLine,endLine:h.endLine})),b=W(S.map(h=>({symbol:h.symbol,label:h.leaf??g.calleeLeaf,file:h.relativePath,line:h.startLine,endLine:h.endLine})));if(b.length===0){s+=1;continue}let y=`${e.id}\0${g.line}\0${g.calleeLeaf}`;if(t.consideredCandidateKeys.has(y))continue;t.consideredCandidateKeys.add(y);let A=b.length>1;A?c+=1:l+=1,i.push({anchor:{id:P(e.id,g.line,g.calleeLeaf),status:A?"ambiguous":"candidate",source:"leaf-identity-candidate",direction:"downstream",causalRole:"callee",relationKind:"call",fromStepId:e.id,fromLabel:e.label,callsite:{file:o,line:v.line,endLine:v.endLine,text:v.text,signals:v.signals,calleeLeaf:g.calleeLeaf},alternatives:b.slice(0,3),alternativeCount:b.length,evidence:[]}})}};return N(),T(),z(),{candidates:i,scannedBehaviorSteps:1,visibleCallsites:d.length,identityCandidateCallsites:l,ambiguousCallsites:c,unresolvedCallsites:s}}function En(e,n){let t=new Map;for(let r of e){let a=n.get(r.toNodeId);if(!a)continue;let o=D(a);t.set(o,(t.get(o)??0)+1)}return t}function Rt(e,n,t){let r=new Map(n.nodes.map(a=>[a.id,a]));for(let a of t.steps)!a.behavior||!a.location||Pn(e,n,r,a,a.behavior,a.location)}function Pn(e,n,t,r,a,o){for(let i of n.edges){if(!$n(i,r.nodeId))continue;let l=t.get(i.toNodeId);if(!l?.location||!ce(e,l))continue;let c=D(l),s=de(i,o.file)?.line,d=a.lines.find(f=>(s===void 0||s>=f.line&&s<=f.endLine)&&f.text.includes(c));!d||$e(d.signals)!=="result-callback"||i.semantics?.some(({family:f,subtype:u})=>f==="control"&&u==="result-callback")||(i.semantics=[...i.semantics??[],{family:"control",subtype:"result-callback",attributes:{evidenceRole:"result-producing-callable-reference"}}])}}function $n(e,n){return e.kind==="reference"&&e.fromNodeId===n&&e.disposition!=="excluded"&&e.disposition!=="unsupported"}function $e(e){return e.includes("call")&&e.some(n=>["return","mutation","shape","spread","binding"].includes(n))?"result-callback":"callable-reference"}function wt(e,n,t={}){let r=t.limit??Te;if(!Number.isSafeInteger(r)||r<=0)throw new RangeError(`next-anchor limit must be a positive safe integer; received ${r}`);let a=t.sourceAllowed??(()=>!0),o=[],i=n.map((m,p)=>({id:m.id,nodeId:m.id,order:p,role:"anchor",kind:"source-construct",label:m.label,location:{file:m.file,line:m.startLine,endLine:m.endLine},behavior:null})),l=n.map(m=>({file:m.file,startLine:m.startLine,endLine:m.endLine})),c=0,s=0,d=0,f=0,u=0;for(let m of n){let p=kn(e,m,a,l,o);c+=p.visibleCallsites,s+=p.graphEvidencedCallsites,u+=p.unresolvedCallsites}return ke(e,o,i,r,{scannedBehaviorSteps:n.length,visibleCallsites:c,graphEvidencedCallsites:s,identityCandidateCallsites:d,ambiguousCallsites:f,unresolvedCallsites:u,upstreamCandidates:0,resultCandidates:0,runtimeCandidates:0})}function kn(e,n,t,r,a){let o=0,i=B(e,n.file),c=(H(e,n.file)?.callSites??[]).filter(N=>N.line>=n.startLine&&N.line<=n.endLine),s=c.length,d=te(e,n.file,n.startLine,n.endLine),f=ee(e,n.file,n.startLine,n.endLine),u=new Set,m={seed:n,sourceLines:i,callsites:c,signalsByLine:d,sourceAllowed:t,materializedRanges:r};Fn(m,f.targets,u,a);let p=f.resolvedCallsites,L=Ne(e,n.file,{ranges:[{startLine:n.startLine,endLine:n.endLine}]}),x=Bn(n,c,L.targets);_n(m,x,u,a),p+=x.size;for(let N of c){let T=F(n.file,N.line,N.calleeLeaf);u.has(T)||(o+=1)}return{visibleCallsites:s,graphEvidencedCallsites:p,unresolvedCallsites:o}}function Fn(e,n,t,r){let{seed:a,sourceLines:o,signalsByLine:i,sourceAllowed:l,materializedRanges:c}=e;for(let s of n){if(!l(s.definition.relativePath)||c.some(m=>m.file===s.definition.relativePath&&m.startLine<=s.definition.startLine&&m.endLine>=s.definition.endLine))continue;let d=F(a.file,s.sourceLine,s.calleeLeaf);t.add(d);let f=le(i.get(s.sourceLine)),u={symbol:s.definition.symbol,label:s.definition.leaf,file:s.definition.relativePath,line:s.definition.startLine,endLine:s.definition.endLine};r.push({anchor:{id:P(a.id,s.sourceLine,s.definition.symbol),status:"exact",source:"graph-call",direction:"downstream",causalRole:"callee",relationKind:"call",fromStepId:a.id,fromLabel:a.label,callsite:{file:a.file,line:s.sourceLine,endLine:s.sourceLine,text:o[s.sourceLine]?.trim()||`${s.calleeLeaf}()`,signals:f,calleeLeaf:s.calleeLeaf},alternatives:[u],alternativeCount:1,evidence:[{method:"scip-occurrence-callsite",strength:s.implementationStatus==="unresolved"?"candidate":"exact",identity:s.definition.symbol,location:{file:a.file,line:s.sourceLine}}]}})}}function Bn(e,n,t){let r=new Map;for(let a of t){let o=n.find(c=>c.line===a.line)?.calleeLeaf??a.calleeLeaf,i=F(e.file,a.line,o),l=r.get(i)??[];l.push(a),r.set(i,l)}return r}function _n(e,n,t,r){let{sourceAllowed:a,materializedRanges:o}=e;for(let[i,l]of n){if(t.has(i))continue;t.add(i);let c=l.filter(s=>a(s.targetFile)&&!o.some(d=>d.file===s.targetFile&&d.startLine<=s.targetStartLine&&d.endLine>=s.targetEndLine));c.length!==0&&r.push(Dn(e,c))}}function Dn(e,n){let{seed:t,sourceLines:r,callsites:a,signalsByLine:o}=e,i=n[0],l=a.find(f=>f.line===i.line)?.calleeLeaf??i.calleeLeaf,c=le(o.get(i.line)),s=W(n.map(f=>({symbol:f.targetSymbol??null,label:f.calleeLeaf,file:f.targetFile,line:f.targetStartLine,endLine:f.targetEndLine}))),d=zn(n);return{anchor:{id:P(t.id,i.line,s.map(f=>`${f.file}:${f.line}`).join("|")),status:s.length>1?"ambiguous":d,source:"graph-call",direction:"downstream",causalRole:"callee",relationKind:"call",fromStepId:t.id,fromLabel:t.label,callsite:{file:t.file,line:i.line,endLine:i.line,text:r[i.line]?.trim()||`${i.calleeLeaf}()`,signals:c,calleeLeaf:l},alternatives:s.slice(0,3),alternativeCount:s.length,evidence:n.map(f=>On(f,t.file,i.line,d))}}}function zn(e){return e.some(n=>(n.resolutionAlternativeCount??0)>1)?"candidate":e.every(n=>n.strength==="exact")?"exact":"derived"}function On(e,n,t,r){return{method:jn(e.resolution),strength:r,identity:e.targetSymbol??`${e.targetFile}:${e.targetStartLine}-${e.targetEndLine}`,location:{file:n,line:t}}}function jn(e){switch(e){case"constructed-member-receiver":return"ast-constructed-member-callsite";case"factory-callback-member":return"ast-factory-callback-callsite";case"imported-service-object-member":return"ast-service-member-callsite";default:return"ast-import-member-callsite"}}function ke(e,n,t,r,a,o=[]){let i=Wn(n).sort(Fe),l=i.filter(p=>qn(e,p)).slice(0,r),c=new Set(l.map(p=>p.anchor.id)),s=i.filter(p=>!c.has(p.anchor.id)),d=l.map(p=>p.anchor),f=s.map(p=>p.anchor),u=W(d.flatMap(p=>p.alternativeCount===1?p.alternatives:[])),m=W(f.flatMap(p=>p.alternativeCount===1?p.alternatives:[]));return{anchors:d,withheldAnchors:f,candidateAnchors:i.length,omittedAnchors:Math.max(0,i.length-d.length),...a,inspectCommand:u.length===0?null:`scip-query inspect ${u.map(Me).join(" ")} --view behavior`,remainingInspectCommands:be(m,8).map(p=>`scip-query inspect ${p.map(Me).join(" ")} --view behavior`)}}function Fe(e,n){return Kn(e,n)||Zn(e,n)}function Kn(e,n){return V(e.anchor.status)-V(n.anchor.status)||(e.anchor.direction??"").localeCompare(n.anchor.direction??"")||(e.anchor.relationKind??"").localeCompare(n.anchor.relationKind??"")||(e.anchor.causalRole??"").localeCompare(n.anchor.causalRole??"")}function Zn(e,n){let t=e.anchor.alternatives[0],r=n.anchor.alternatives[0];return e.anchor.fromStepId.localeCompare(n.anchor.fromStepId)||e.anchor.callsite.file.localeCompare(n.anchor.callsite.file)||e.anchor.callsite.line-n.anchor.callsite.line||(t?.file??"").localeCompare(r?.file??"")||(t?.line??0)-(r?.line??0)||e.anchor.id.localeCompare(n.anchor.id)}function qn(e,n){if(n.anchor.alternativeCount!==1)return!0;let t=n.anchor.alternatives[0],r=t.endLine??t.line;return B(e,t.file).slice(t.line,r+1).join(`
|
|
2
|
+
`).length<=2e4}function le(e){return e?.includes("call")?[...e]:["call",...e??[]]}function Gn(e,n){let t=new Map;for(let r of n){let a=R(e,r.file).find(l=>l.symbol===r.symbol&&l.isFunctionLike);if(!a)continue;let o={symbol:a.symbol,label:a.leaf,file:a.relativePath,line:a.startLine,endLine:a.endLine},i=t.get(a.symbol);!i||Ie(r.source)>Ie(i.row.source)?t.set(a.symbol,{row:{...r,...r.callsiteLine===void 0&&i?.row.callsiteLine!==void 0?{callsiteLine:i.row.callsiteLine}:{}},alternative:o}):i.row.callsiteLine===void 0&&r.callsiteLine!==void 0&&t.set(a.symbol,{...i,row:{...i.row,callsiteLine:r.callsiteLine}})}return[...t.values()]}function Qn(e){let n=new Map;for(let t of e){let r=_(t.alternative.label);n.set(r,(n.get(r)??0)+1)}return n}function Ie(e){return ne(e)==="exact"?2:1}function Q(e,n,t){return e.find(r=>n>=r.line&&n<=r.endLine&&r.text.includes(t))??e.find(r=>n>=r.line&&n<=r.endLine)??null}function Vn(e,n,t,r,a){if(r!==void 0)return e.find(i=>i.line===r&&i.calleeLeaf===t&&Q(n,i.line,t)!==null)??null;let o=e.filter(i=>i.calleeLeaf===t&&Q(n,i.line,i.calleeLeaf)!==null);return a&&o.length===1?o[0]:null}function D(e){let n=e.attributes.leaf;if(typeof n=="string"&&n.length>0)return _(n);let t=e.label.slice(e.label.lastIndexOf(":")+1);return _(t)}function oe(e){if(e?.kind!=="symbol"||!e.id.startsWith("symbol:"))return null;try{return decodeURIComponent(e.id.slice(7))}catch{return null}}function se(e){return e.location?{symbol:oe(e),label:e.label,file:e.location.file,line:e.location.line,endLine:e.location.endLine??null}:null}function ce(e,n){let t=se(n);return t?.symbol&&R(e,t.file).some(a=>a.symbol===t.symbol&&a.isFunctionLike)?t:null}function de(e,n){return e.evidence.find(t=>t.location?.file===n)?.location??e.evidence.find(t=>t.location!==null)?.location??null}function ue(e){let n={exact:5,derived:4,mixed:3,candidate:2,unknown:1};return e.reduce((t,r)=>n[r.strength]>n[t]?r.strength:t,"unknown")}function Wn(e){let n=new Map;for(let t of e){let a=t.anchor.alternatives[0]?.symbol??`${t.anchor.callsite.file}:${t.anchor.callsite.line}:${t.anchor.callsite.calleeLeaf}`,o=n.get(a);(!o||Un(t,o)<0)&&n.set(a,t)}return[...n.values()]}function Un(e,n){return V(e.anchor.status)-V(n.anchor.status)||e.anchor.alternativeCount-n.anchor.alternativeCount||Fe(e,n)}function V(e){return{exact:0,derived:1,mixed:2,candidate:3,unknown:4,ambiguous:5}[e]}function W(e){let n=new Map;for(let t of e)n.set(t.symbol??`${t.file}:${t.line}`,t);return[...n.values()].sort((t,r)=>t.file.localeCompare(r.file)||t.line-r.line||t.label.localeCompare(r.label))}function Me(e){return`--at ${he(`${e.file}:${e.line+1}`)}`}function F(e,n,t){return`${e}\0${n}\0${t}`}function P(e,n,t){return["next-anchor",e,String(n),t].map(encodeURIComponent).join(":")}function Hn(e,n,t){for(let r of e.steps)for(let a of r.behavior?.supportingDeclarations??[])n.add(a.symbol),t.add(Ee(a.file,a.line,a.endLine))}export{dt as a,Ne as b,At as c,Rt as d,wt as e};
|
|
3
|
+
//# sourceMappingURL=chunk-D3NX5XIE.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{A as g,C as h,D as d,E as c,F as m,x as T}from"./chunk-5TNQJUR2.js";var G=new Set(["aix","android","darwin","freebsd","haiku","linux","openbsd","sunos","win32","cygwin","netbsd"]);function j(e){if(!e||typeof e!="object"||Array.isArray(e))return null;let t=e;return t.version!==1||!Y(t)||typeof t.platform!="string"||!G.has(t.platform)||typeof t.startToken!="string"||t.startToken.trim()===""?null:{version:1,pid:t.pid,platform:t.platform,startToken:t.startToken}}function f(e,t){return e.version===t.version&&e.pid===t.pid&&e.platform===t.platform&&e.startToken===t.startToken}function Y(e){return typeof e.pid=="number"&&Number.isSafeInteger(e.pid)&&e.pid>0}import{execFileSync as q}from"child_process";import{platform as z}from"os";var H=1e3,R=16*1024,P;function F(e,t=I){if(!Number.isSafeInteger(e)||e<=0)return null;let r=e===process.pid&&t===I;if(r&&P)return{...P};try{let n=X(e,t);if(!n)return null;let i={version:1,pid:e,platform:t.platform,startToken:n};return r&&(P=i),{...i}}catch{return null}}function X(e,t){if(t.platform==="linux"||t.platform==="android")return V(t.readFile(`/proc/${e}/stat`));if(t.platform==="win32"){let r=`([DateTimeOffset](Get-Process -Id ${e} -ErrorAction Stop).StartTime).ToUnixTimeMilliseconds()`;return x(t.run("powershell.exe",["-NoProfile","-NonInteractive","-Command",r]))}return t.platform==="darwin"||t.platform==="freebsd"||t.platform==="openbsd"||t.platform==="netbsd"?x(t.run("ps",["-p",String(e),"-o","lstart="])):null}function V(e){let t=e.lastIndexOf(")");if(t<0)return null;let n=e.slice(t+1).trim().split(/\s+/)[19];return n&&/^\d+$/.test(n)?n:null}function x(e){let t=e.trim();return t===""?null:t}var I={platform:z(),readFile(e){return T(e,{maxBytes:R,inputKind:"process identity pseudo-file"})},run(e,t){return q(e,[...t],{encoding:"utf8",timeout:H,maxBuffer:R,env:{...process.env,LC_ALL:"C",LANG:"C"},stdio:["ignore","pipe","ignore"]})}};function Me(e){try{return process.kill(e,0),!0}catch(t){return typeof t=="object"&&t!==null&&"code"in t&&t.code==="EPERM"}}function Ne(){return performance.now()}import{randomUUID as ne}from"crypto";import{closeSync as ie,existsSync as oe,fsyncSync as se,linkSync as ae,mkdirSync as ue,openSync as le,renameSync as ce,unlinkSync as de,writeSync as me}from"fs";import{dirname as A}from"path";import{chmodSync as Q,constants as Z,copyFileSync as ee}from"fs";import{dirname as te}from"path";var D=Object.freeze({...h,copyFile:(e,t)=>ee(e,t,Z.COPYFILE_FICLONE),chmodFile:(e,t)=>Q(e,t)});function re(e,t,r={}){let n=r.runtime??D,i=te(t),s=d(i,n);n.copyFile(e,t),r.mode!==void 0&&n.chmodFile(t,r.mode);let o=n.openFile(t,"r");try{n.syncFile(o)}finally{n.closeFile(o)}return m(s,c(i,n))}var E=Object.freeze({platform:process.platform,randomToken:()=>ne(),pathExists:e=>oe(e),makeDirectory:e=>ue(e,{recursive:!0}),openFile:(e,t,r)=>le(e,t,r),writeFile:(e,t,r,n)=>me(e,t,r,n),syncFile:e=>se(e),closeFile:e=>ie(e),renameFile:(e,t)=>ce(e,t),linkFile:(e,t)=>ae(e,t),removeFile:e=>de(e)});function w(e,t,r={}){let n=r.durability??"visibility",i=r.runtime??E,s=A(e),o=n==="durable"?d(s,i):(i.makeDirectory(s),"not-requested"),u=`${e}.tmp-${i.randomToken()}`,p=typeof t=="string"?Buffer.from(t):t,a,l=!1;try{a=i.openFile(u,"wx",r.mode??384),l=!0,g(a,p,i,"atomic file"),n==="durable"&&i.syncFile(a),i.closeFile(a),a=void 0,i.renameFile(u,e),l=!1;let b=n==="durable"?m(o,c(s,i)):"not-requested";return O(n,b)}finally{v(i,a,u,l)}}function je(e,t,r={}){let n=r.durability??"visibility",i=r.runtime??E;if(!i.linkFile)throw new Error("Exclusive atomic file publication requires hard-link support.");let s=A(e),o=n==="durable"?d(s,i):(i.makeDirectory(s),"not-requested"),u=`${e}.tmp-${i.randomToken()}`,p=typeof t=="string"?Buffer.from(t):t,a,l=!1;try{a=i.openFile(u,"wx",r.mode??384),l=!0,g(a,p,i,"exclusive atomic file"),n==="durable"&&i.syncFile(a),i.closeFile(a),a=void 0,i.linkFile(u,e);let b=n==="durable"?c(s,i):"not-requested";i.removeFile(u),l=!1;let $=n==="durable"?m(o,b,c(s,i)):"not-requested";return O(n,$)}finally{v(i,a,u,l)}}function O(e,t){return{requestedDurability:e,achievedDurability:e==="visibility"?"visibility":t==="synced"?"directory-durable":"file-flushed",directorySync:t}}function v(e,t,r,n){if(t!==void 0)try{e.closeFile(t)}catch{}if(n)try{e.removeFile(r)}catch{}}function Xe(e,t,r={}){w(e,M(t,r),{durability:"visibility",runtime:r.runtime})}function Ve(e,t,r={}){return w(e,M(t,r),{durability:"durable",runtime:r.runtime})}function M(e,t){let r=JSON.stringify(e,null,t.spacing);return t.trailingNewline?`${r}
|
|
2
|
+
`:r}import{execFileSync as k,spawnSync as et}from"child_process";import{platform as pe}from"os";import{resolve as fe}from"path";var N=pe()==="win32";function nt(e){let t=N?"where":"which";try{return k(t,[e],{stdio:"pipe",timeout:1e4,killSignal:"SIGKILL"}),!0}catch{return!1}}var ye=/\.(?:c|m)?js$/i,be=/\.(?:exe|com)$/i;function it(e,t){return ye.test(e)?{binary:process.execPath,args:[e,...t]}:{binary:e,args:[...t]}}function ge(e,t){return k(e,t,{stdio:["ignore","pipe","ignore"],encoding:"utf8",timeout:1e4,killSignal:"SIGKILL"})}function ot(e,t={}){let r=t.isWindows??N,n=t.lookup??ge,i;try{i=n(r?"where":"which",[e])}catch{return null}let s=i.split(/\r?\n/).map(o=>o.trim()).filter(Boolean);if(!r){let o=s[0];return o?fe(o):null}return s.find(o=>be.test(o))??null}import{execFileSync as L}from"child_process";import{platform as Pe}from"os";var C=1e3,B=2*1024*1024,we=25;function ct(e,t,r=K){let n=r.readIdentity(e),i=new Map;return n&&i.set(e,n),{rootPid:e,rootIdentity:n,ownsProcessGroup:t,knownMembers:i}}async function dt(e,t,r=K){if(!e.rootIdentity)return Se(e,t,r);let n=W(e,r);if(n==="mismatch")return{reaped:!1,reason:"identity-mismatch",detail:`Process ${e.rootPid} no longer has the identity owned by this runner.`};if(n==="exited"&&!J(e,r))return{reaped:!0,reason:"terminated"};if(r.platform==="win32")return Te(e,t,r);let i=_(e,"SIGTERM",r);if(await y(e,t.gracefulMs,r))return{reaped:!0,reason:"terminated"};let o=_(e,"SIGKILL",r);return await y(e,t.forceMs,r)?{reaped:!0,reason:"terminated"}:o?{reaped:!1,reason:o.reason,detail:o.detail}:i?{reaped:!1,reason:i.reason,detail:i.detail}:{reaped:!1,reason:"deadline",detail:`Process tree ${e.rootPid} did not exit before its termination deadline.`}}async function Se(e,t,r){let n=await y(e,t.gracefulMs+t.forceMs,r);return{reaped:n,reason:n?"terminated":"identity-unavailable",detail:n?void 0:`Could not establish the birth identity of process ${e.rootPid}.`}}async function Te(e,t,r){try{r.terminateWindowsTree(e.rootPid)}catch(i){let s=await y(e,t.forceMs,r);return{reaped:s,reason:s?"terminated":"signal-failed",detail:s?void 0:S(i)}}let n=await y(e,t.forceMs,r);return{reaped:n,reason:n?"terminated":"deadline"}}function W(e,t){let r=t.readIdentity(e.rootPid);if(!r)return"exited";if(!e.rootIdentity||!f(e.rootIdentity,r))return"mismatch";e.knownMembers.set(e.rootPid,r);for(let n of t.listDescendantPids(e.rootPid)){let i=t.readIdentity(n);i&&e.knownMembers.set(n,i)}return"owned"}function _(e,t,r){let n=W(e,r);if(n==="mismatch")return{reason:"identity-mismatch",detail:`Process ${e.rootPid} changed identity before ${t}.`};if(n==="owned"&&e.ownsProcessGroup)try{return r.signal(-e.rootPid,t),null}catch(i){if(!U(i))return{reason:"signal-failed",detail:S(i)}}return xe(e,t,r)}async function y(e,t,r){let n=r.now()+t;for(;J(e,r);){if(r.now()>=n)return!1;await r.sleep(Math.min(we,Math.max(1,n-r.now())))}return!0}function J(e,t){if(!e.rootIdentity&&t.isProcessAlive(e.rootPid))return!0;for(let r of e.knownMembers.values()){let n=t.readIdentity(r.pid);if(n&&f(r,n))return!0}return!!(e.ownsProcessGroup&&t.isProcessGroupAlive(e.rootPid))}function he(e){let t=Re(!1),r=new Map;for(let o of t.split(/\r?\n/)){let u=/^\s*(\d+)\s+(\d+)\s*$/.exec(o);if(!u)continue;let p=Number(u[1]),a=Number(u[2]),l=r.get(a)??[];l.push(p),r.set(a,l)}let n=[],i=[...r.get(e)??[]],s=new Set;for(;i.length>0;){let o=i.pop();s.has(o)||(s.add(o),n.push(o),i.push(...r.get(o)??[]))}return n}function Re(e){return L("ps",["-axo",e?"pid=,ppid=,rss=":"pid=,ppid="],{encoding:"utf8",timeout:C,maxBuffer:B,env:{...process.env,LC_ALL:"C",LANG:"C"},stdio:["ignore","pipe","ignore"]})}function U(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="ESRCH"}function S(e){return e instanceof Error?e.message:String(e)}var K={platform:Pe(),now:Date.now,readIdentity:F,isProcessAlive(e){try{return process.kill(e,0),!0}catch(t){return typeof t=="object"&&t!==null&&"code"in t&&t.code==="EPERM"}},isProcessGroupAlive(e){if(this.platform==="win32")return!1;try{return process.kill(-e,0),!0}catch(t){return typeof t=="object"&&t!==null&&"code"in t&&t.code==="EPERM"}},listDescendantPids(e){if(this.platform==="win32")return[];try{return he(e)}catch{return[]}},signal(e,t){process.kill(e,t)},terminateWindowsTree(e){L("taskkill.exe",["/PID",String(e),"/T","/F"],{timeout:C,maxBuffer:B,stdio:"ignore",windowsHide:!0})},async sleep(e){await new Promise(t=>setTimeout(t,e))}};function xe(e,t,r){let n=null;for(let i of e.knownMembers.values()){let s=r.readIdentity(i.pid);if(!(!s||!f(i,s)))try{r.signal(i.pid,t)}catch(o){!U(o)&&n===null&&(n=S(o))}}return n===null?null:{reason:"signal-failed",detail:n}}var Ie={"manual-cli":!0,setup:!0,"watch-source":!0,"watch-startup":!0,"watch-demand":!0,"watch-git-head":!0,"watch-git-index":!0,"watch-git-state":!0,unknown:!0};function pt(e){return typeof e=="string"&&Object.hasOwn(Ie,e)}export{j as a,f as b,F as c,Me as d,Ne as e,re as f,w as g,je as h,Xe as i,Ve as j,nt as k,it as l,ot as m,ct as n,dt as o,pt as p};
|
|
3
|
+
//# sourceMappingURL=chunk-DA7RPPDF.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{a as p}from"./chunk-QXEUDXBT.js";import{Y as g}from"./chunk-J5FJMODQ.js";import{a as c,c as l,l as h}from"./chunk-YULZRALL.js";function f(t,n){let i=p(t,n);if(!i)return[];let o=t.get(`SELECT symbol, enclosing_symbol FROM global_symbols
|
|
2
|
+
WHERE id = ? LIMIT 1`,i.symbolId);if(!o)return[];let r=[{symbol:o.symbol,shortName:l(o.symbol),depth:0}],e=o.enclosing_symbol,y=1,b=new Set([o.symbol]);for(;e&&!b.has(e);){b.add(e);let s=t.get("SELECT symbol, enclosing_symbol FROM global_symbols WHERE symbol = ?",e);if(!s)break;r.push({symbol:s.symbol,shortName:l(s.symbol),depth:y}),e=s.enclosing_symbol,y++}if(r.length>1)return r;let a=c(o.symbol);if("kind"in a||a.descriptors.length<=1)return r;let d=g(t,i.relativePath).filter(s=>o.symbol.startsWith(s.symbol)&&h(s.symbol,o.symbol)).sort((s,m)=>m.symbol.length-s.symbol.length);return[...r,...d.map((s,m)=>({symbol:s.symbol,shortName:l(s.symbol),depth:m+1}))]}function _(t,n){return f(t,n)}export{f as a,_ as b};
|
|
3
|
+
//# sourceMappingURL=chunk-DDMC3FON.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{c as y}from"./chunk-AOSIYPTA.js";import{b}from"./chunk-YNQCGEQE.js";import{D as O,o as N}from"./chunk-5D2LVK7O.js";import{a as p,c as g}from"./chunk-A2IIGFMJ.js";function E(t,a){let o=y(t,a);if(!o)return[];if(b(t,o)?.freshness.semantic.state==="stale")throw new Error(`Compiler ownership is stale for ${o}. Reindex or read the current file with code.`);let e=O(t,[o],{sort:!0});if(e.length===0)return[];let s=Math.max(0,g(p(t,o)).length-1),n=e.map(i=>({symbol:i.symbol,shortName:i.shortName,startLine:i.startLine,endLine:Math.min(i.endLine,s),signature:i.signature,children:[]})),c=new Map;for(let i of n)c.set(i.symbol,i);let f=[],u=new Map;for(let i=0;i<e.length;i++){let d=e[i],l=n[i];if(d.enclosingSymbol&&c.has(d.enclosingSymbol)){let h=c.get(d.enclosingSymbol);h.children.push(l),u.set(l,h);continue}let m=L(l,n);m?(m.children.push(l),u.set(l,m)):f.push(l)}return w(o,n,u),f}function L(t,a){let o=null,r=1/0;for(let e of a)if(e!==t&&e.startLine<=t.startLine&&e.endLine>=t.endLine){if(e.startLine===t.startLine&&e.endLine===t.endLine&&!N(e.symbol,t.symbol))continue;let n=e.endLine-e.startLine;n<r&&(r=n,o=e)}return o}function w(t,a,o){let r=new Set;for(let e of a){let s=new Set,n=e;for(;n&&!r.has(n);){if(s.has(n))throw new Error(`Cyclic compiler ownership in ${t}. Reindex before using this outline.`);s.add(n),n=o.get(n)}for(let c of s)r.add(c)}}export{E as a};
|
|
2
|
+
//# sourceMappingURL=chunk-DIO3FUSG.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{a as b}from"./chunk-3TNRNKAT.js";import{a as I}from"./chunk-GMVSHUKZ.js";import{b as C}from"./chunk-6LSEIIF7.js";import{a as F}from"./chunk-36SGVCGX.js";import{A as M,C as S}from"./chunk-4WTUBQ36.js";import{b as R}from"./chunk-FMRN2TRL.js";import{e as v,f as h}from"./chunk-4WCUBZU3.js";import{d as u}from"./chunk-5D2LVK7O.js";function re(e,n={}){let t=new C(e).productionCallableDefinitions({scope:n.scope,requireCallableSymbol:!0,includeSuppressed:!0}),r=w(e,t),l=n.search?.trim().toLocaleLowerCase();return t.map(a=>N(e,a,r.get(a.symbolId)??[])).filter(a=>a!==null).map(a=>a.result).filter(a=>!l||B(a).includes(l)).sort($)}function ie(e,n,o={}){let t=R(e,n);if(!t.match)return{kind:"missing",query:n};if(t.total>1)return{kind:"ambiguous",query:n,total:t.total,candidates:[{symbol:t.match.symbol,shortName:u(t.match.symbol),relativePath:t.match.relativePath,startLine:t.match.startLine},...t.candidates]};let r=new C(e),l=r.definitionsForFile(t.match.relativePath).find(s=>s.symbol===t.match.symbol);if(!l?.isFunctionLike)return{kind:"not-entry",query:n,symbol:t.match.symbol,shortName:u(t.match.symbol),file:t.match.relativePath,reason:"The resolved symbol is not a callable definition."};let a=w(e,[l]),y=N(e,l,a.get(l.symbolId)??[]);if(!y)return{kind:"not-entry",query:n,symbol:l.symbol,shortName:u(l.symbol),file:l.relativePath,reason:"The callable is neither an external root nor an uncalled callable on a detected entry surface."};let m=T(e,r,l),i=new Set(o.expand??[]),c=O(m,i),d=new Set(c.regions.filter(s=>s.expanded).map(s=>s.id)),g=[...i].filter(s=>!d.has(s)).sort();return{kind:"matched",query:n,entry:y.result,regions:c.regions,regionEdges:c.regionEdges,unmatchedExpansions:g,coverage:{completeWithinSelectedStaticEvidence:!0,candidateReachabilityIncluded:m.edges.some(s=>s.evidenceStrength==="candidate"),dynamicDispatchRepresented:!1,symbolCount:m.symbols.length,symbolEdgeCount:m.edges.length,exactSymbolEdgeCount:m.edges.filter(s=>s.evidenceStrength==="exact").length,candidateSymbolEdgeCount:m.edges.filter(s=>s.evidenceStrength==="candidate").length,regionCount:c.regions.length,regionEdgeCount:c.regionEdges.length,externalCallCount:m.externalCalls.length}}}function w(e,n){let o=n.filter(t=>k(e,t.relativePath)||h(e,t.symbol,t.relativePath).length>0);return M(e,o,{semantic:!1,semanticEvidence:F})}function N(e,n,o){let t=j(e,n),r=t.length>0,l=k(e,n.relativePath)&&o.length===0;if(!r&&!l)return null;let a=[...t];return l&&a.push("entry-surface-without-indexed-caller"),{definition:n,result:{symbol:n.symbol,shortName:u(n.symbol),file:n.relativePath,startLine:n.startLine,endLine:n.endLine,documentation:n.documentation,confidence:t.some(y=>y!=="package-public-export")?"root":"candidate",evidence:a,observedCallerCount:o.length}}}function k(e,n){return v(e,n)||/(?:^|\/)entry\.(?:ts|tsx|js|jsx|mjs|cjs)$/.test(n)}function j(e,n){let o=h(e,n.symbol,n.relativePath),t=[];return P(o,["package-surface-file","transitive-package-surface"])&&I(e,n)&&t.push("package-public-export"),o.includes("rust-public-library")&&t.push("rust-public-library"),o.includes("framework-entrypoint")&&t.push("framework-dispatched-export"),P(o,["configured-file","configured-path-prefix","configured-qualified-var","configured-symbol-pattern"])&&t.push("configured-entry-root"),t}function P(e,n){return n.some(o=>e.includes(o))}function B(e){return[e.symbol,e.shortName,e.file,e.documentation??"",...e.evidence].join(`
|
|
2
|
+
`).toLocaleLowerCase()}function $(e,n){return D(e.confidence)-D(n.confidence)||e.file.localeCompare(n.file)||e.startLine-n.startLine||e.symbol.localeCompare(n.symbol)}function D(e){return e==="root"?0:1}function T(e,n,o){let t=new Map([[o.symbol,0]]),r=new Map,l=new Map([[o.symbol,o]]),a=new Map,y=new Map,m=[o];for(;m.length>0;){let i=n.calleeMap(m,{additive:!1,semantic:!1}),c=[];for(let d of m){let g=t.get(d.symbol)??0;r.set(d.symbol,L(d,g));for(let s of i.get(d.symbolId)??[]){let f=G(n,s,l);if(!f){let p=q(d,s);y.set(A(p),p);continue}U(d,f,s,g,t,r,a,c)}}m=c}return{symbols:[...r.values()].sort(H),edges:[...a.values()].sort(J),externalCalls:[...y.values()].sort(Q)}}function G(e,n,o){let t=o.get(n.symbol);if(t)return t;let r=e.definitionsForFile(n.file).find(l=>l.symbol===n.symbol)??null;return r&&o.set(r.symbol,r),r}function L(e,n){return{symbol:e.symbol,shortName:u(e.symbol),file:e.relativePath,depth:n}}function K(e,n,o){return{fromSymbol:e.symbol,fromShortName:u(e.symbol),fromFile:e.relativePath,toSymbol:n.symbol,toShortName:u(n.symbol),toFile:n.relativePath,source:o.source,evidenceStrength:S(o.source)}}function q(e,n){return{fromSymbol:e.symbol,fromShortName:u(e.symbol),fromFile:e.relativePath,toSymbol:n.symbol,toShortName:u(n.symbol),reportedFile:n.file,source:n.source,evidenceStrength:S(n.source)}}function O(e,n){let o=b(e.symbols,i=>i.file),t=b(e.edges.filter(i=>i.fromFile===i.toFile),i=>i.fromFile),r=b(e.externalCalls,i=>i.fromFile),l=W(e.edges.filter(i=>i.fromFile!==i.toFile)),a=b(l,i=>i.toRegionId),y=b(l,i=>i.fromRegionId);return{regions:[...o.entries()].map(([i,c])=>{let d=x(i),g=n.has(d),s=t.get(i)??[],f=r.get(i)??[];return{id:d,file:i,minDepth:Math.min(...c.map(p=>p.depth)),symbolCount:c.length,internalEdgeCount:s.length,externalCallCount:f.length,incomingRegionIds:E((a.get(d)??[]).map(p=>p.fromRegionId)),outgoingRegionIds:E((y.get(d)??[]).map(p=>p.toRegionId)),expanded:g,symbols:g?c:[],internalEdges:g?s:[],externalCalls:g?f:[]}}).sort((i,c)=>i.minDepth-c.minDepth||i.file.localeCompare(c.file)),regionEdges:l}}function W(e){let n=new Map;for(let o of e){let t=`${o.fromFile}\0${o.toFile}`,r=n.get(t)??[];r.push(o),n.set(t,r)}return[...n.values()].map(o=>{let t=o[0];return{fromRegionId:x(t.fromFile),fromFile:t.fromFile,toRegionId:x(t.toFile),toFile:t.toFile,callCount:o.length,exactCallCount:o.filter(r=>r.evidenceStrength==="exact").length,candidateCallCount:o.filter(r=>r.evidenceStrength==="candidate").length,fromSymbols:E(o.map(r=>r.fromShortName)),toSymbols:E(o.map(r=>r.toShortName)),evidence:E(o.map(r=>r.source))}}).sort((o,t)=>o.fromFile.localeCompare(t.fromFile)||o.toFile.localeCompare(t.toFile))}function x(e){return`file:${e}`}function E(e){return[...new Set(e)].sort()}function z(e){return`${e.fromSymbol}\0${e.toSymbol}`}function A(e){return`${e.fromSymbol}\0${e.toSymbol}`}function H(e,n){return e.depth-n.depth||e.file.localeCompare(n.file)||e.symbol.localeCompare(n.symbol)}function J(e,n){return e.fromFile.localeCompare(n.fromFile)||e.fromSymbol.localeCompare(n.fromSymbol)||e.toSymbol.localeCompare(n.toSymbol)}function Q(e,n){return e.fromFile.localeCompare(n.fromFile)||e.fromSymbol.localeCompare(n.fromSymbol)||e.toSymbol.localeCompare(n.toSymbol)}function U(e,n,o,t,r,l,a,y){let m=t+1,i=r.get(n.symbol);(i===void 0||m<i)&&r.set(n.symbol,m),l.set(n.symbol,L(n,Math.min(m,i??m)));let c=K(e,n,o);a.set(z(c),c),i===void 0&&y.push(n)}export{re as a,ie as b};
|
|
3
|
+
//# sourceMappingURL=chunk-DJ2NNSUK.js.map
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import{g as S}from"./chunk-ETOIKRHO.js";import{b as m}from"./chunk-6LSEIIF7.js";import{g as y}from"./chunk-AGWFSTXC.js";import{c as h}from"./chunk-E3FDPXZK.js";import{s as f}from"./chunk-7WTPQ4NX.js";import{a as g}from"./chunk-FVULPZDF.js";import d from"path";function G(e,t){let{scope:i,minDeviation:r=5,limit:n=50}=t??{},o=t?.semantic!==!1,s=t?.includePatternDeviations===!0,a=new m(e).fileDependencyGraph(i),u=S(e,{scope:i}),l=I([...D(e,a,{scope:i,semantic:o}),...R(u.forbiddenEdges),...s?E(a,r):[]]);return t?.includeArchitecture===!0&&(l.architecture=u),n<=0||l.results.length<=n?l:{...l,results:l.results.slice(0,n),totalResults:l.results.length}}function D(e,t,i){let r=$(e,i.scope),n=[],o=new Set;j(e,t,i,r,n,o),o.size>0&&M(e,r,{paths:[...o]});let s=[];for(let{file:c,dep:a}of n)(r.get(c)??new Set).has(a)||s.push({file:c,kind:"unused-import",description:`Depends on ${a} but references none of its symbols`,dep:a,actionTier:"direct",evidenceReasons:[`dependency edge exists from ${c} to ${a}`,"no semantic, source, type-only, side-effect, or Vue-template usage survived the conservative skip gates"],recommendation:"Review unused bindings; preserve module-initialization side effects and verify the change with project checks."});return s}function v(e,t,i,r){return O(e,t,i)||N(e,t,i)||A(i)||T(e,t,i)||P(i)?!0:r.semantic&&C(e,t,i)}function R(e){return e.flatMap(t=>{let i=t.examples[0];return i?[{file:i.fromFile,kind:"architecture-violation",description:`${t.from} depends on forbidden boundary ${t.to} through ${t.fileEdgeCount} file edge(s)`,dep:i.toFile,detail:`${t.from} may not depend on ${t.to}`,actionTier:"direct",policyBasis:"explicit",architecture:{fromBoundary:t.from,toBoundary:t.to,fileEdgeCount:t.fileEdgeCount,importerCount:t.importerCount,importedFileCount:t.importedFileCount,examples:t.examples},evidenceReasons:[`configured dependency row for ${t.from} does not allow ${t.to}`,`${t.fileEdgeCount} file edge(s) connect ${t.importerCount} importer(s) to ${t.importedFileCount} imported file(s)`,...t.examples.map(r=>`${r.fromFile} imports ${r.toFile}`)],recommendation:"Move the dependency behind an allowed boundary, reverse the dependency through an owned interface, or deliberately update the project architecture rule."}]:[]})}function E(e,t){let i=[];for(let[r,n]of k(e)){let o=n.filter(c=>!p(c));if(o.length<t)continue;let s=_(e,o);x(e,r,o,s,i)}return i}function x(e,t,i,r,n){for(let o of i)for(let s of e.get(o)??[])p(s)||(r.get(s)??0)===1&&d.dirname(s)!==t&&d.dirname(s)!==d.dirname(t)&&n.push({file:o,kind:"pattern-deviation",description:`Only file in ${t}/ that depends on ${s}`,dep:s,actionTier:"signal",evidenceReasons:[`${i.length} sibling file(s) in ${t}/ were compared`,`${o} is the only non-skipped sibling depending on ${s}`],recommendation:"Review sibling ownership before changing this import; unique dependency shape can be intentional specialization."})}function I(e){let t=e.filter(i=>i.kind==="architecture-violation").length;return{results:e,unusedImports:e.filter(i=>i.kind==="unused-import").length,architectureViolations:t,layerViolations:t,patternDeviations:e.filter(i=>i.kind==="pattern-deviation").length}}function k(e){let t=new Map;for(let i of e.keys()){let r=d.dirname(i),n=t.get(r);n||(n=[],t.set(r,n)),n.push(i)}return t}function _(e,t){let i=new Map;for(let r of t)for(let n of e.get(r)??[])p(n)||i.set(n,(i.get(n)??0)+1);return i}function $(e,t){let i=new Map;return F(e,i,t),i}function F(e,t,i){for(let r of w(e,i))b(e,t,r.from_file,r.to_file)}function w(e,t){let i=t?"AND d1.relative_path LIKE ?":"",r=t?[`%${t}%`]:[];return e.all(`SELECT DISTINCT d1.relative_path AS from_file, d2.relative_path AS to_file
|
|
2
|
+
FROM mentions m
|
|
3
|
+
JOIN chunks c ON m.chunk_id = c.id
|
|
4
|
+
JOIN documents d1 ON c.document_id = d1.id
|
|
5
|
+
JOIN global_symbols gs ON m.symbol_id = gs.id
|
|
6
|
+
JOIN (
|
|
7
|
+
SELECT m2.symbol_id, c2.document_id
|
|
8
|
+
FROM mentions m2
|
|
9
|
+
JOIN chunks c2 ON m2.chunk_id = c2.id
|
|
10
|
+
WHERE m2.role = 1
|
|
11
|
+
GROUP BY m2.symbol_id
|
|
12
|
+
) sym_def ON sym_def.symbol_id = gs.id
|
|
13
|
+
JOIN documents d2 ON sym_def.document_id = d2.id
|
|
14
|
+
WHERE d1.id != d2.id
|
|
15
|
+
AND m.role = 0
|
|
16
|
+
${e.pathExclusionsFor("d1","d2")}
|
|
17
|
+
${i}`,...r)}function M(e,t,i={}){new m(e).scanSourceReferences({paths:i.paths??g(e,{includeIgnored:!1}),includeRustAttributeNames:!0,identifierResolution:"permissive"},n=>{n.target.relativePath!==n.sourceFile&&(n.occurrences<=1&&f(e,n.sourceFile).some(o=>o.sourcePath===n.target.relativePath&&!o.used&&(o.localName===n.name||o.importedName===n.name))||e.isIgnored(n.target.relativePath)||b(e,t,n.sourceFile,n.target.relativePath))})}function b(e,t,i,r){if(e.isIgnored(i)||e.isIgnored(r))return;let n=t.get(i);n||(n=new Set,t.set(i,n)),n.add(r)}function A(e){return e.includes("types")||e.endsWith(".d.ts")}function C(e,t,i){return y(e,t).filter(n=>n.sourcePath===i).some(n=>n.isUsed)}function O(e,t,i){return f(e,t).filter(n=>n.sourcePath===i).some(n=>n.used)}function N(e,t,i){let r=f(e,t).filter(n=>n.sourcePath===i);return r.length>0&&r.every(n=>n.isTypeOnly===!0)}function P(e){return e.endsWith(".vue")}function T(e,t,i){let r=f(e,t).filter(n=>n.sourcePath===i);return r.length===0?!1:r.every(n=>n.kind==="side-effect"||n.kind==="namespace"&&n.usedMembers.length===0&&!n.used)}function p(e){let t=h(e);return!!(t==="entry"||t==="barrel"||t==="test"||t==="worker"||B(d.basename(e)))}function B(e){return!!(e==="index.ts"||e==="index.js"||e==="cli.ts"||e==="main.ts"||e==="main.rs"||e.includes("worker.")||e.includes("postinstall.")||e==="health.ts"||e==="health.js")}function j(e,t,i,r,n,o){for(let[s,c]of t){if(p(s))continue;let a=r.get(s)??new Set;for(let u of c)p(u)||a.has(u)||v(e,s,u,i)||(n.push({file:s,dep:u}),o.add(s))}}export{G as a};
|
|
18
|
+
//# sourceMappingURL=chunk-DKYQIM3C.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{d}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{d}from"./chunk-2KNN7GTQ.js";import{$ as p}from"./chunk-FVULPZDF.js";function y(t,e={}){let{minTotalLines:i=800,minTemplateLines:n=300,minScriptLines:r=300,minStyleLines:u=500,limit:o=20,scope:a,scanLimit:l,filePattern:m}=e;return p(t).vueProfiles({scope:a,scanLimit:l}).filter(s=>!m||s.file.includes(m)).map(s=>L(s,{minTotalLines:i,minTemplateLines:n,minScriptLines:r,minStyleLines:u})).filter(s=>s!==null).sort((s,c)=>c.totalLines-s.totalLines||s.file.localeCompare(c.file)).slice(0,o)}function L(t,e){let i=d(t,b(e),"total"),{reasons:n}=i;if(n.length===0)return null;let r=i.dominantPressure,u=i.pressureKinds.includes("total")?[...new Set([...i.pressureKinds,r])]:i.pressureKinds,o=g(t.file),a=x(r,o),l=t.totalLines+t.delegatedComposableLines;return{file:t.file,totalLines:l,sfcLines:t.sfcLines,templateLines:t.templateLines,scriptLines:t.scriptLines,styleLines:t.styleLines,externalScriptLines:t.externalScriptLines,externalScriptPaths:t.externalScriptPaths,customBlockLines:t.customBlockLines,delegatedComposableLines:t.delegatedComposableLines,delegatedComposablePaths:t.delegatedComposablePaths,dominantPressure:r,pressureKinds:u,contextKind:o,recommendationKind:a,recommendation:f(a,o),reasons:n,loc:l}}function b(t){return[{axis:"total",value:e=>e.totalLines+e.delegatedComposableLines,qualifies:(e,i)=>i>=t.minTotalLines,reason:(e,i)=>e.delegatedComposableLines>0?`${i} total line(s) (${e.totalLines} component + ${e.delegatedComposableLines} delegated composable line(s) across ${e.delegatedComposablePaths.length} file(s))`:`${i} total component line(s)`,dominantEligible:!1},{axis:"template",value:e=>e.templateLines,qualifies:(e,i)=>i>=t.minTemplateLines,reason:(e,i)=>`${i} template line(s)`},{axis:"script",value:e=>e.scriptLines-e.externalScriptLines,qualifies:e=>e.scriptLines>=t.minScriptLines,reason:e=>`${e.scriptLines} script line(s)`},{axis:"style",value:e=>e.styleLines,qualifies:(e,i)=>i>=t.minStyleLines,reason:(e,i)=>`${i} style line(s)`},{axis:"external-script",value:e=>e.externalScriptLines,qualifies:(e,i)=>i>=t.minScriptLines},{axis:"custom-block",value:e=>e.customBlockLines,qualifies:()=>!1}]}function g(t){return t.toLowerCase().split(/[^a-z0-9]+/).filter(Boolean).some(n=>w.has(n))||/(?:view|page|route)\.vue$/i.test(t)||/(?:^|\/)(views|pages|routes)\//i.test(t)?"route-page":"component"}function x(t,e){return t==="style"?"style-decomposition":t==="template"?"template-decomposition":t==="external-script"?"external-script-boundary":t==="custom-block"?"custom-block-review":e==="route-page"?"route-page-decomposition":t==="script"?"script-behavior-extraction":"total-size-review"}function f(t,e){switch(t){case"template-decomposition":return e==="route-page"?"Split route template sections into named panels before extracting script behavior.":"Split repeated template sections into named presentational components.";case"script-behavior-extraction":return"Extract independent script behavior into composables, controllers, or feature modules.";case"style-decomposition":return"Review UI/style decomposition; move repeated styling to component or style primitives, not composables.";case"external-script-boundary":return"Review the external script boundary and split controller/composable modules by workflow.";case"custom-block-review":return"Review custom block ownership before splitting template or script code.";case"route-page-decomposition":return"Split route/page orchestration from reusable panels and feature controllers.";case"total-size-review":return"Review the largest block first, then split by the dominant reason to change."}}var w=new Set(["landing","page","pages","route","routes","view","views"]);export{y as a};
|
|
2
|
+
//# sourceMappingURL=chunk-DOOEL2IV.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{SymbolInformation_Kind as t}from"@c4312/scip";var r=new Map(Object.entries(t).filter(([e,n])=>Number.isInteger(Number(e))&&typeof n=="string").map(([e,n])=>[Number(e),n])),i=new Map([...r.entries()].map(([e,n])=>[n.toLowerCase(),e]));function s(e){return r.get(e)??"Unknown"}function u(){return[t.Function,t.Method,t.Macro,t.Constructor,t.Getter,t.Setter,t.StaticMethod,t.SingletonMethod,t.AbstractMethod,t.ProtocolMethod,t.TraitMethod]}function a(){return[t.Class,t.Interface,t.Struct,t.Trait,t.Type,t.TypeAlias,t.Enum,t.Union,t.Protocol]}export{r as a,i as b,s as c,u as d,a as e};
|
|
2
|
+
//# sourceMappingURL=chunk-DVFP6PZI.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{c as r}from"./chunk-5TNQJUR2.js";function l(t){return/(^|\/)(node_modules|dist|build|coverage|\.git|\.scipquery|\.next|\.nuxt|\.turbo|\.cache)(\/|$)/.test(t)}function p(t){switch(t){case"entry":case"source":case"worker":return 0;case"barrel":return 1;case"test":return 2}}function f(t){let e=r(t);return i(e)?"test":u(e)?"worker":o(e)?"entry":c(e)?"barrel":"source"}var n=[/(?:^|\/)(?:e2e|cypress|playwright)\//i,/\.(?:test|spec)\.[a-z0-9]+$/i,/(?:^|\/)(?:_)?test_[^/]+$/i,/(?:^|\/)spec_[^/]+$/i,/(?:^|\/)[^/]+_test\.[a-z0-9]+$/i,/(?:^|\/)[^/]+_tests\.rs$/i,/(?:^|\/)tests\.rs$/i,/(?:^|\/)[^/]+_spec\.[a-z0-9]+$/i,/(?:^|\/)__tests__\//i,/(?:^|\/)test\//i,/(?:^|\/)tests\//i,/(?:^|\/)__fixtures__\//i,/(?:^|\/)__mocks__\//i,/(?:^|\/)test-support\//i,/(?:^|\/)test-utils\//i,/(?:^|\/)testing\//i];function i(t){return n.some(e=>e.test(t))}function u(t){return/(?:^|\/)[^/]*worker\.(?:ts|tsx|js|mjs|cjs|rs|py|go)$/.test(t)}var a=new Set(["cli.ts","cli.js","postinstall.ts","postinstall.js","main.ts","main.js","main.rs","main.go","main.py","build.rs","lib.rs"]);function o(t){let e=t.split("/"),s=e[e.length-1]??t;return a.has(s)||/\bsrc\/bin\/[^/]+\.rs$/.test(t)||/(?:^|\/)examples\/[^/]+\.rs$/.test(t)||/(?:^|\/)tests\/[^/]+\.rs$/.test(t)||/(?:^|\/)benches\/[^/]+\.rs$/.test(t)?!0:s==="index.ts"||s==="index.js"?/(?:^|\/)(?:apps|services)\/[^/]+\/src\/index\.(?:ts|js)$/.test(t)?!0:e.length<=2:!1}function c(t){return t==="index.ts"||t==="index.js"||t.endsWith("/index.ts")||t.endsWith("/index.js")||t.endsWith("/mod.rs")||t.endsWith("/__init__.py")}export{l as a,p as b,f as c};
|
|
2
|
+
//# sourceMappingURL=chunk-E3FDPXZK.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{i as I}from"./chunk-AGWFSTXC.js";import{a as p,e as g}from"./chunk-5D2LVK7O.js";import{A as v}from"./chunk-FVULPZDF.js";import{g as E,i as x}from"./chunk-D3FDISIC.js";import{d as D,e as F,q as _,t as y}from"./chunk-GVWX5T43.js";import{Ca as b}from"./chunk-5TNQJUR2.js";import{spawnSync as O}from"child_process";import{createHash as k}from"crypto";import{existsSync as P}from"fs";import{dirname as L,join as U}from"path";import{fileURLToPath as T}from"url";var M=b("definition-consumer-file-usage",{clearGroups:["whole-project","source-file"]}),R=E({kind:"consumer-file-usage",invalidation:x("consumer-file-usage"),serialize:Z,deserialize:ee});function Ae(e,n){return{forDefinitions(i,r){return j(e,n,i,r)}}}function Oe(e){let n=new Map;for(let[i,r]of e)n.set(i,new Set(r.files.map(t=>t.file)));return n}function j(e,n,i,r){let t=w(i.length),s=_()?F(e):null,o=s?B(i,r,s):void 0,a=o?{workIdentity:o,workOutcome:"computed"}:{};return y("consumer-evidence.product",()=>{let l=y("consumer-evidence.provenance",()=>V(e,n,i,r),()=>({...a,definitions:i.length,semantic:r.semantic,sourceFallback:r.sourceFallback!==!1})),u=new Map;t={...t,...l.counters};let c=Y(i,l.sources);return y("consumer-evidence.classify",()=>{let f=z(e,i,l.sources,c);for(let d of i){let m=f.get(d.symbolId)??K();t.realFiles+=m.partition.realConsumers.length,t.reexportOnlyFiles+=m.partition.barrelConsumers,t.importOnlyFiles+=m.partition.importOnlyConsumers,u.set(d.symbolId,{definition:d,files:m.files,...m.partition})}},()=>({...a,...c,realFiles:t.realFiles,reexportOnlyFiles:t.reexportOnlyFiles,importOnlyFiles:t.importOnlyFiles})),u},()=>({...a,...t}))}function B(e,n,i){let r=k("sha256").update("consumer-evidence-v1\0").update(i).update("\0").update(n.semantic?"semantic\0":"indexed\0").update(n.sourceFallback===!1?"no-source-fallback":"source-fallback");for(let t of e.map(s=>s.symbol).sort())r.update("\0").update(t);return r.digest("hex").slice(0,24)}function w(e){return{definitions:e,indexedFiles:0,semanticFiles:0,fallbackFiles:0,totalFiles:0,realFiles:0,reexportOnlyFiles:0,importOnlyFiles:0}}function V(e,n,i,r){let t=w(i.length),s=new Map;return S(s,t,"indexed",n.crossFileCallerMap(i,{semantic:!1})),r.semantic&&S(s,t,"semantic",I(e,i)),r.sourceFallback!==!1&&S(s,t,"source-fallback",n.sourceFallbackCallerFiles(i)),t.totalFiles=[...s.values()].reduce((o,a)=>o+a.size,0),{sources:s,counters:t}}function Y(e,n){return{definitions:e.length,consumerFiles:[...n.values()].reduce((i,r)=>i+r.size,0),nativeAttempted:!1,nativeUsed:!1,nativeReason:"not-attempted"}}function S(e,n,i,r){let t=0;for(let[s,o]of r){let a=e.get(s);a||(a=new Map,e.set(s,a));for(let l of o){t++;let u=a.get(l)??new Set;u.add(i),a.set(l,u)}}i==="indexed"?n.indexedFiles+=t:i==="semantic"?n.semanticFiles+=t:n.fallbackFiles+=t}function z(e,n,i,r){let t=le(e,n,i,r);return t||q(e,n,i)}function q(e,n,i){let r=new Map;for(let t of n){let s=i.get(t.symbolId)??new Map;r.set(t.symbolId,H(e,t,[...s.keys()],s))}return r}function H(e,n,i,r=new Map){let t=[],s=0,o=0,a=g(n.symbol),l=[];for(let u of i){let c;ne(e,u,n.relativePath,a)?(s++,c="reexport-only"):$(e,u,a)?(o++,c="import-only"):(t.push(u),c="real"),l.push({file:u,sources:[...r.get(u)??[]],classification:c})}return{partition:{realConsumers:t,barrelConsumers:s,importOnlyConsumers:o},files:l}}function K(){return{partition:{realConsumers:[],barrelConsumers:0,importOnlyConsumers:0},files:[]}}function $(e,n,i){if(!i)return!1;let r=v(n);if(!r)return!1;let t=M.get(e,n,()=>h(e,n,r));return t.importedLeaves.has(i)&&!t.usedLeaves.has(i)}function h(e,n,i){let r=p(e).forFile(n,{text:!0}).text;if(!r)return X();let t=D(e,n,r),s=R.read(e,n,t);if(s)return s;let o=G(p(e).forFile(n,{ast:!0}).ast,i);return R.write(e,n,t,o),o}var J=new Set(["identifier","type_identifier","property_identifier","field_identifier"]);function G(e,n){let i=new Set,r=new Set;if(!e)return{importedLeaves:i,usedLeaves:r};let t=Q(n),s=e.walk(),o=0,a=!1;for(;!a;){let l=s.nodeType,u=t.has(l);if(u&&(o+=1),J.has(l)&&(o>0?i:r).add(s.nodeText),s.gotoFirstChild())continue;u&&(o-=1);let c=W(s,t,o);o=c.importDepth,a=c.done}return{importedLeaves:i,usedLeaves:r}}function Q(e){return e==="rust"?new Set(["use_declaration"]):e==="python"?new Set(["import_statement","import_from_statement"]):new Set(["import_statement"])}function W(e,n,i){for(;;){if(e.gotoNextSibling())return{importDepth:i,done:!1};if(!e.gotoParent())return{importDepth:i,done:!0};n.has(e.nodeType)&&(i-=1)}}function X(){return{importedLeaves:new Set,usedLeaves:new Set}}function Z(e){return JSON.stringify({importedLeaves:[...e.importedLeaves],usedLeaves:[...e.usedLeaves]})}function ee(e){try{let n=JSON.parse(e);return!Array.isArray(n.importedLeaves)||!Array.isArray(n.usedLeaves)?null:{importedLeaves:new Set(n.importedLeaves.filter(i=>typeof i=="string")),usedLeaves:new Set(n.usedLeaves.filter(i=>typeof i=="string"))}}catch{return null}}function ne(e,n,i,r){if(!r)return!1;let t=p(e).forFile(n,{lines:!0,reexports:!0}),s=t.lines??[];if(s.length===0)return!1;let o=t.reexports??[];return A(s,o,r)}function A(e,n,i){if(e.length===0||n.length===0)return!1;let r=i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),t=new RegExp(`\\b${r}\\b`),s=0;for(let o=0;o<e.length;o++){if(!t.test(e[o]??""))continue;if(s++,!n.find(l=>l.startLine<=o&&o<=l.endLine))return!1}return s>0}var ie="SCIP_QUERY_NATIVE_CONSUMER_CLASSIFY",te="SCIP_QUERY_NATIVE_KERNELS_BIN",re="SCIP_QUERY_NATIVE_CONSUMER_CLASSIFY_MIN_FILES",N=1e3,se=5e3,oe=64*1024*1024,C;function ae(e){let n=process.env[ie]?.toLowerCase();if(n!=="1"&&n!=="true")return e.nativeReason=n==="0"||n==="false"?"disabled":"opt-in-required",null;if(e.consumerFiles<ve())return e.nativeReason="below-threshold",null;let i=ge();return i||(e.nativeReason="binary-missing",null)}function le(e,n,i,r){let t=ae(r);if(!t)return null;r.nativeAttempted=!0;let s=ue(e,n,i),o=O(t,["consumer-classify"],{input:JSON.stringify(s),encoding:"utf8",timeout:se,maxBuffer:oe});if(o.status!==0||o.error)return r.nativeReason=o.error?`spawn-error:${o.error.message}`:`exit-${o.status??"null"}`,null;try{let a=JSON.parse(o.stdout),l=fe(a,n);return l?(r.nativeUsed=!0,r.nativeReason="used",l):(r.nativeReason="invalid-response",null)}catch{return r.nativeReason="invalid-json",null}}function ue(e,n,i){let r=new Map,t=[];for(let a of n){let l=g(a.symbol),c=[...(i.get(a.symbolId)??new Map).entries()].map(([f,d])=>{let m=r.get(f)??new Set;return l&&m.add(l),r.set(f,m),{file:f,sources:[...d]}});t.push({symbol_id:a.symbolId,leaf:l,consumer_files:c})}let s={},o={};for(let[a,l]of r){let u=v(a);if(u){let f=M.get(e,a,()=>h(e,a,u));s[a]={imported_leaves:[...f.importedLeaves],used_leaves:[...f.usedLeaves]}}let c=ce(e,a,l);c.length>0&&(o[a]=c)}return{definitions:t,file_usages:s,reexport_only_leaves:o}}function ce(e,n,i){if(i.size===0)return[];let r=p(e).forFile(n,{lines:!0,reexports:!0}),t=r.lines??[],s=r.reexports??[];return t.length===0||s.length===0?[]:[...i].filter(o=>A(t,s,o))}function fe(e,n){if(!Array.isArray(e.entries)||e.entries.length!==n.length)return null;let i=new Set(n.map(t=>t.symbolId)),r=new Map;for(let t of e.entries){let s=me(t);if(!s||!i.has(s.symbol_id))return null;r.set(s.symbol_id,{partition:{realConsumers:s.real_consumers,barrelConsumers:s.barrel_consumers,importOnlyConsumers:s.import_only_consumers},files:s.files})}for(let t of i)if(!r.has(t))return null;return r}function me(e){if(!de(e))return null;let n=e,i=[];for(let r of n.files){let t=pe(r);if(!t)return null;i.push(t)}return{symbol_id:n.symbol_id,real_consumers:n.real_consumers,barrel_consumers:n.barrel_consumers,import_only_consumers:n.import_only_consumers,files:i}}function de(e){if(!e||typeof e!="object")return!1;let n=e;return typeof n.symbol_id!="number"||!Array.isArray(n.real_consumers)||typeof n.barrel_consumers!="number"||typeof n.import_only_consumers!="number"||!Array.isArray(n.files)?!1:n.real_consumers.every(i=>typeof i=="string")}function pe(e){if(!e||typeof e!="object")return null;let n=e;return typeof n.file!="string"||!Array.isArray(n.sources)||!n.sources.every(ye)||!Ce(n.classification)?null:{file:n.file,sources:n.sources,classification:n.classification}}function ye(e){return e==="indexed"||e==="semantic"||e==="source-fallback"}function Ce(e){return e==="real"||e==="reexport-only"||e==="import-only"}function ve(){let e=process.env[re];if(!e)return N;let n=Number(e);return Number.isFinite(n)&&n>=0?n:N}function ge(){if(C!==void 0)return C;let e=process.env[te],n=process.platform==="win32"?"scip-query-kernels.exe":"scip-query-kernels";return C=[...e?[e]:[],...Se().map(r=>U(r,"target","release",n))].find(r=>P(r))??null,C}function Se(){let e=new Set,n=L(T(import.meta.url));for(let i=0;i<5;i++)e.add(n),n=L(n);return[...e]}export{Ae as a,Oe as b};
|
|
2
|
+
//# sourceMappingURL=chunk-E7YNJLCB.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as S}from"./chunk-MMHZKBFA.js";import{a as R}from"./chunk-AUVEWPIF.js";import{a as D}from"./chunk-NAZ3RAIW.js";import{a as F}from"./chunk-5IYJ56TT.js";import{e as g}from"./chunk-UXYXF7GV.js";import{a as y}from"./chunk-KDDIE2DP.js";import{l as p}from"./chunk-5D2LVK7O.js";import{_ as f}from"./chunk-FVULPZDF.js";var E=.7,C=.62,v=.45;function X(i,t={}){let{windowCommits:e=100,limit:n=30,scope:a,scanLimit:c}=t,s=y(i,{historyMode:t.historyMode}).fileAddRecords();if(!s)return{available:!1,windowCommits:e,findings:[]};if(n<=0)return{available:!0,windowCommits:e,findings:[]};let l=H(s,e);if(l.size===0)return{available:!0,windowCommits:e,findings:[]};let d=L(i,{limit:n,minSimilarity:t.minSimilarity,scanLimit:c,scope:a,semantic:t.semantic,focusFiles:l}).map(o=>K(o,s,e)).filter(o=>o!==null);d.sort((o,r)=>(o.kind===r.kind?0:o.kind==="echo"?-1:1)||r.similarity-o.similarity||o.echoFile.localeCompare(r.echoFile)||o.echoSymbol.localeCompare(r.echoSymbol)||o.domain.localeCompare(r.domain));let m=d.slice(0,n).map(N);return{available:!0,windowCommits:e,findings:m,rootCauseGroups:G(m)}}function L(i,t){let e=q(t.limit),n=[...I(i,{scope:t.scope,minSimilarity:t.minSimilarity??E,limit:e,scanLimit:t.scanLimit,semantic:t.semantic,focusFiles:t.focusFiles})],a=f(i,{scope:t.scope});return a.react&&n.push(...w(i,{scope:t.scope,minSimilarity:t.minSimilarity??C,limit:e,scanLimit:t.scanLimit,focusFiles:t.focusFiles}),...x(i,{scope:t.scope,minSimilarity:t.minSimilarity??v,limit:e,scanLimit:t.scanLimit,focusFiles:t.focusFiles})),a.vue&&n.push(...P(i,{scope:t.scope,minSimilarity:t.minSimilarity??C,limit:e,scanLimit:t.scanLimit,focusFiles:t.focusFiles}),...M(i,{scope:t.scope,minSimilarity:t.minSimilarity??v,limit:e,scanLimit:t.scanLimit,focusFiles:t.focusFiles})),n}function I(i,t){return g(i,{scope:t.scope,minSimilarity:t.minSimilarity,limit:t.limit,crossFileOnly:!0,scanLimit:t.scanLimit,semantic:t.semantic,focusFiles:t.focusFiles}).filter(e=>!p(e.symbolA)&&!p(e.symbolB)).map(e=>({domain:"callable",basis:e.similarityBasis??"callees",symbolA:e.shortNameA,fileA:e.fileA,symbolB:e.shortNameB,fileB:e.fileB,similarity:e.similarity,sharedEvidence:e.sharedCallees,sharedCallees:e.sharedCallees}))}function w(i,t){return b(i,t,{query:D,domain:"react-component",basis:"jsx-structure",symbolA:e=>e.componentA,symbolB:e=>e.componentB,evidenceBuckets:e=>[["component",e.sharedComponents],["tag",e.sharedNativeTags],["prop",e.sharedProps],["event",e.sharedEvents],["binding",e.sharedBindings]]})}function b(i,t,e){return e.query(i,t).filter(n=>n.fileA!==n.fileB).filter(n=>e.acceptPair?.(n)??!0).map(n=>({domain:e.domain,basis:e.basis,symbolA:e.symbolA(n),fileA:n.fileA,symbolB:e.symbolB(n),fileB:n.fileB,similarity:n.similarity,sharedEvidence:j(...e.evidenceBuckets(n)),sharedCallees:[]}))}function x(i,t){return b(i,t,{query:F,domain:"react-hook",basis:"react-behavior",symbolA:e=>e.componentA,symbolB:e=>e.componentB,acceptPair:O,evidenceBuckets:e=>[["hook",e.sharedHooks],["react-hook",e.sharedReactHooks],["effect",e.sharedEffects],["state",e.sharedState],["request",e.sharedRequests],["handler",e.sharedHandlers],["action",e.sharedHandlerVerbs]]})}var T=new Set(["useCallback","useEffect","useLayoutEffect","useMemo","useMutation","useQueries","useQuery","useQueryClient","useReducer","useRef","useState"]);function O(i){return i.sharedHooks.some(t=>!T.has(t))||i.sharedState.length>0||i.sharedHandlers.length>0||i.sharedHandlerVerbs.length>=2}function P(i,t){return b(i,t,{query:R,domain:"vue-component",basis:"vue-template",symbolA:e=>u(e.fileA),symbolB:e=>u(e.fileB),evidenceBuckets:e=>[["component",e.sharedComponents],["prop",e.sharedProps],["event",e.sharedEvents],["directive",e.sharedDirectives],["slot",e.sharedSlots],["identifier",e.sharedIdentifiers]]})}function M(i,t){return b(i,t,{query:S,domain:"vue-composable",basis:"vue-behavior",symbolA:e=>u(e.fileA),symbolB:e=>u(e.fileB),evidenceBuckets:e=>[["composable",e.sharedComposables],["store",e.sharedStores],["reactivity",e.sharedReactivity],["lifecycle",e.sharedLifecycle],["request",e.sharedRequests],["function",e.sharedFunctions],["action",e.sharedFunctionVerbs],["binding",e.sharedBindings],["template-event",e.sharedTemplateEvents]]})}function H(i,t){let e=new Set;for(let[n,a]of i)a.commitsAgo<=t&&e.add(n);return e}function A(i,t){return i.get(t)?.commitsAgo??null}function B(i,t){return i!==null&&i<=t}function K(i,t,e){let n=A(t,i.fileA),a=A(t,i.fileB),c=B(n,e),s=B(a,e);if(!c&&!s)return null;let l=c&&s,h=l?(n??0)<=(a??0):c,d={symbol:i.symbolA,file:i.fileA,age:n},m={symbol:i.symbolB,file:i.fileB,age:a},[o,r]=h?[d,m]:[m,d];return{kind:l?"twin":"echo",domain:i.domain,basis:i.basis,echoSymbol:o.symbol,echoFile:o.file,echoAgeCommits:o.age??0,establishedSymbol:r.symbol,establishedFile:r.file,establishedAgeCommits:r.age,similarity:i.similarity,sharedEvidence:i.sharedEvidence,sharedCallees:i.sharedCallees}}function N(i){let t=k(i);return{...i,rootCauseKey:t,groupKey:`recent-duplicate:${t}`}}function k(i){if(i.kind==="echo")return["echo",i.domain,i.basis,i.establishedFile,i.establishedSymbol].join(":");let t=i.sharedEvidence.slice().sort().join("|"),e=[i.echoSymbol,i.establishedSymbol].sort().join("|");return["twin",i.domain,i.basis,t||e].join(":")}function G(i){let t=new Map;for(let[e,n]of i.entries()){let a=n.rootCauseKey??k(n),c=n.groupKey??`recent-duplicate:${a}`,s=t.get(c);s||(s={groupKey:c,rootCauseKey:a,kind:n.kind,domain:n.domain,basis:n.basis,count:0,maxSimilarity:n.similarity,findingIndexes:[],echoFiles:new Set,establishedFile:n.kind==="echo"?n.establishedFile:void 0,establishedSymbol:n.kind==="echo"?n.establishedSymbol:void 0,relatedFiles:new Set,sharedEvidence:new Set,recommendation:_(n)},t.set(c,s)),s.count+=1,s.maxSimilarity=Math.max(s.maxSimilarity,n.similarity),s.findingIndexes.push(e),s.echoFiles.add(n.echoFile),s.relatedFiles.add(n.echoFile),s.relatedFiles.add(n.establishedFile);for(let l of n.sharedEvidence)s.sharedEvidence.add(l)}return[...t.values()].map(e=>({...e,echoFiles:[...e.echoFiles].sort(),relatedFiles:[...e.relatedFiles].sort(),sharedEvidence:[...e.sharedEvidence].sort().slice(0,16)})).sort((e,n)=>n.count-e.count||n.maxSimilarity-e.maxSimilarity||e.groupKey.localeCompare(n.groupKey))}function _(i){return i.kind==="echo"?"Review the established side once; confirm behavior, contracts, and ownership before consolidating these candidates.":"Compare these recently added files; confirm shared behavior and ownership before considering consolidation."}function q(i){return Number.isFinite(i)?i*5:Number.POSITIVE_INFINITY}function j(...i){let t=[],e=new Set;for(let[n,a]of i)for(let c of a){let s=`${n}:${c}`;e.has(s)||(e.add(s),t.push(s))}return t}function u(i){return(i.split("/").pop()??i).replace(/\.[^.]+$/,"")}export{X as a};
|
|
2
|
+
//# sourceMappingURL=chunk-EFGW5JPH.js.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import{B as se,E as x,a as h,b as ne,i as N,j as oe,u as T,v as re,x as F,y as ie,z as p}from"./chunk-EYK3ZAO2.js";import{Kb as f,Lb as Z,Mb as g,Ob as v,bc as ee,d as M,dc as te,l as Y,m as Q,r as R,s as j,wb as X}from"./chunk-JYWEX7RR.js";import{Dc as z,ad as A,bd as b,cc as U,dd as E,wd as q,xc as $,xd as W,zd as H}from"./chunk-OZCJXZK6.js";var lt={context:2,limit:6},O={context:0,members:"exported"};function ae(e,t=Number.MIN_SAFE_INTEGER){if(!/^[+-]?\d+$/u.test(e))return null;let n=Number(e);return Number.isSafeInteger(n)&&n>=t?n:null}function le(e,t,n){if(!Number.isSafeInteger(n.limit)||n.limit<=0)throw new Error("Reference page limit must be a positive safe integer.");let o=A(e,t);if(!o)return{rows:[],hasMore:!1,producer:n.producer??"source-keyset",semanticEnrichment:!1};if(n.producer==="complete-only"||n.semantic===!0)return B(e,t,n);let s=q(e,o);if(!s)return B(e,t,n);let i=de(e,o);return Oe(e,o,s,i,n)??B(e,t,n,i)}function Oe(e,t,n,o,r){let s=Ie(e,o),i=[],a=r.producer==="source-keyset";for(let c of s){if(r.after&&c<r.after.relativePath)continue;r.instrumentation?.fileScanned?.(c);let l=W(e,n,c);l.length>0&&(a=!0);let d=new Set(l);o?.relativePath===c&&d.add(o.line);for(let m of Le(e,t.symbol,c,d,o,r.after))if(i.push(m),r.instrumentation?.rowAccepted?.(m),a&&i.length>r.limit)return ce(i,r.limit)}if(a)return ce(i,r.limit)}function*Le(e,t,n,o,r,s){for(let i of[...o].sort((a,c)=>a-c)){let a=r?.relativePath===n&&r.line===i?r:j(e,t,n,i);s&&y(a,s)<=0||(yield a)}}function y(e,t){return(e.relativePath<t.relativePath?-1:e.relativePath>t.relativePath?1:0)||e.line-t.line}function ce(e,t){return{rows:e.slice(0,t),hasMore:e.length>t,producer:"source-keyset",semanticEnrichment:!1}}function B(e,t,n,o){let r=n.semantic===!0?R(e,t,{semantic:n.semantic}):ke(e,t,o),s=De(r).filter(i=>!n.after||y(i,n.after)>0);for(let i of s.slice(0,n.limit+1))n.instrumentation?.rowAccepted?.(i);return{rows:s.slice(0,n.limit),hasMore:s.length>n.limit,producer:"complete-only",semanticEnrichment:n.semantic===!0}}function ke(e,t,n){let o=A(e,t);if(!o)return[];let r=n===void 0?de(e,o):n,s=H(e,o).map(i=>j(e,o.symbol,i.file,i.line));return r?[r,...s]:s}function de(e,t){return!z(t.symbol)&&!e.isIgnored(t.relativePath)?{relativePath:t.relativePath,line:t.startLine,evidence:"indexed-definition"}:null}function Ie(e,t){let n=U(e);return!t||n.includes(t.relativePath)?n:[...n,t.relativePath].sort((o,r)=>o<r?-1:o>r?1:0)}function De(e){let t=new Map;for(let n of e)t.set(`${n.relativePath}\0${n.line}`,n);return[...t.values()].sort(y)}import{InvalidArgumentError as S}from"commander";var xt=X,Me=/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?$/u,St=(e=>G(e,"an integer")),ue=(e=>{let t=G(e,"a non-negative integer");if(t<0)throw new S(`Expected a non-negative integer, got "${e}".`);return t}),me=(e=>{let t=G(e,"a positive integer");if(t<1)throw new S(`Expected a positive integer, got "${e}".`);return t}),Pt=(e=>{if(!Me.test(e))throw new S(`Expected a number, got "${e}".`);let t=Number(e);if(!Number.isFinite(t))throw new S(`Expected a finite number, got "${e}".`);return t});function G(e,t){let n=ae(e);if(n===null)throw new S(`Expected ${t}, got "${e}".`);return n}function u(e,t,n,...o){return o.length>0?{flags:e,description:t,parser:n,defaultValue:o[0]}:{flags:e,description:t,parser:n}}function Ae(){return u("--json","Output as JSON for programmatic consumption")}function je(){return u("--compact","Emit minified one-line JSON (use with --json)")}function Te(){return u("--result-only","Emit only the command-owned result (use with --json)")}function fe(e=[]){return L(e)}function L(e=[]){let t=[Ae(),Te(),je()],n=new Set(t.map(o=>o.flags));return[...e.filter(o=>!n.has(o.flags)),...t]}function P(e,t=[]){return{category:e,examples:t}}function wt(e,t){return{origin:"mixed",observedSources:e,producerValidation:{status:"not-evaluated"},families:t}}function $t(e,t){return{origin:e,observedSources:t,producerValidation:{status:"not-evaluated"}}}function Et(e,t,n){return{id:e,selector:t,origin:{kind:"fixed",origin:n}}}function Nt(e,t,n,o){return{id:e,selector:t,origin:{kind:"result-field",field:n,values:o}}}function w(e,t,n,o,r,s,i){return{answers:typeof e=="string"?[e]:e,returns:typeof t=="string"?[t]:t,inputs:n,coverage:o,operation:s,semantic:i,...r?{scope:r}:{}}}function Ot(e,t,n,o,r,s=h){let i=typeof e=="string"?[e]:e,a=typeof t=="string"?[t]:t;return w(i,a,n,o,r,s,K(i.join(" "),a.join("; "),["This command establishes only its declared result units and evidence contract."],void 0,{outputCost:o==="complete"?"bounded":"variable"}))}function pe(e,t,n,o,r,s=h){let i=typeof e=="string"?[e]:e,a=typeof t=="string"?[t]:t;return w(i,a,n,o,r,s,Fe(a.join("; "),["This command does not establish repository graph relationships unless its result says so explicitly."]))}function ge(e,t,n={ranking:"identity-only"}){return{kind:"locator",locates:e,nonClaims:t,outputCost:"small",frontierClosure:["evidence","inspect","code"],...n}}function Lt(e){return{kind:"graph-projection",outputCost:"bounded",frontierClosure:["inspect","code"],...e}}function he(e,t,n,o={}){return{kind:"source-read",reads:e,nonClaims:t,outputCost:"potentially-large",frontierClosure:[],...n?{compatibility:n}:{},...o}}function K(e,t,n,o,r={}){return{kind:"analysis",analysis:e,resultMeaning:t,nonClaims:n,outputCost:"bounded",frontierClosure:["inspect","code"],...o?{compatibility:o}:{},...r}}function Fe(e,t,n,o={}){return{kind:"maintenance",effect:e,nonClaims:t,outputCost:"variable",frontierClosure:[],...n?{compatibility:n}:{},...o}}function J(e){return Buffer.from(JSON.stringify(e),"utf8").toString("base64url")}function k(e){return e.generation.identity}function V(e){return"after"in e?J({version:2,...e}):J({version:1,...e})}function ye(e,t){let n=Ve(e);if(!Be(n)&&!Ge(n))throw new Error("Invalid result cursor. Run the command again without --cursor.");return _e(n,t),n}function Be(e){if(!e||typeof e!="object")return!1;let t=e;return t.version===1&&typeof t.command=="string"&&typeof t.target=="string"&&Number.isSafeInteger(t.offset)&&(t.offset??-1)>=0&&typeof t.indexGeneration=="string"&&t.indexGeneration.length>0}function Ge(e){if(!e||typeof e!="object")return!1;let t=e,n=t.after;return t.version===2&&typeof t.command=="string"&&typeof t.target=="string"&&Ke(n)&&Je(t)}function Ke(e){return!!e&&typeof e.relativePath=="string"&&e.relativePath.length>0&&Number.isSafeInteger(e.line)&&(e.line??-1)>=0}function Je(e){return(e.producer==="source-keyset"||e.producer==="complete-only")&&typeof e.semanticEnrichment=="boolean"&&typeof e.indexGeneration=="string"&&e.indexGeneration.length>0}function Ve(e){try{return JSON.parse(Buffer.from(e,"base64url").toString("utf8"))}catch{throw new Error("Invalid result cursor. Run the command again without --cursor.")}}function _e(e,t){if(e.command!==t.command||e.target!==t.target)throw new Error("This cursor belongs to a different command or target. Run again without --cursor.");if(e.indexGeneration!==t.indexGeneration)throw new Error("The index changed after this cursor was issued. Run again without --cursor.")}function I(e,t){let n=b(e,t);return n.match?{matched:!0,resolved:{symbol:n.match.symbol,shortName:$(n.match.symbol),relativePath:n.match.relativePath},otherMatches:n.candidates.map(o=>({shortName:o.shortName,relativePath:o.relativePath,startLine:o.startLine})),totalMatches:n.total}:{matched:!1,suggestions:E(e,t,5)}}function D(e,t,n,o){return{...I(e,t),[o]:n}}function Ce(e){let t=e.entries[0];return e.requested===1&&t?.status==="matched"&&t.kind==="source"&&(!t.rangeCoverage||t.rangeCoverage.referencedDefinitions===0)&&t.results.length===1?t.results[0]:null}function be(e,t,n){if(!n)return I(e,t);let o={file:n.relativePath,symbol:n.shortName,language:n.language??"unknown",range:{startLine:C(n.startLine),endLine:C(n.endLine)},...n.freshness?{freshness:n.freshness}:{},lines:n.source.split(`
|
|
3
|
+
`).map((i,a)=>({line:C(n.startLine+a),text:i}))},r=I(e,t),s=r.totalMatches??0;return!r.matched||!r.resolved||s<=1?o:{...o,resolution:{selected:r.resolved,alternatives:r.otherMatches??[],totalMatches:s}}}function Re(e){return{requested:e.requested,matched:e.matched,ambiguous:e.ambiguous,missing:e.missing,entries:e.entries.map(t=>({selector:t.selector,status:t.status,kind:t.kind,totalCandidates:t.totalCandidates,sources:t.results.map(n=>({file:n.relativePath,symbol:n.shortName,language:n.language??"unknown",range:{startLine:C(n.startLine),endLine:C(n.endLine)},...n.freshness?{freshness:n.freshness}:{},lines:n.source.split(`
|
|
4
|
+
`).map((o,r)=>({line:C(n.startLine+r),text:o}))})),definitions:t.definitions,...t.fileCoverage?{fileCoverage:t.fileCoverage}:{},...t.rangeCoverage?{rangeCoverage:t.rangeCoverage}:{},candidates:t.candidates,omittedCandidates:t.omittedCandidates,suggestions:t.suggestions,...t.reason?{reason:t.reason}:{}})),literalValues:e.bindingClosure.inline}}function C(e){return e+1}function ve(e,t){let n=b(e,t),o=Ue(n);for(let r of o)console.log(r)}function xe(e,t,n="No results found for resolved symbol."){return b(e,t).match?n:_(t,E(e,t,5))}function _(e,t){let n=`No definition matched '${e}'.`;return t.length>0?`${n} Suggestions: ${t.join(", ")}`:n}function Ue(e){if(!e.match||e.total<=1)return[];let t=e.match,n=Math.max(0,e.total-1),o=[`Resolved: ${$(t.symbol)} (${t.relativePath}) -- ${n} other definition(s) share this name; qualify as <dir/leaf> to target another.`],r=e.candidates.slice(0,3);return r.length>0&&o.push(`Alternates: ${r.map(s=>`${s.shortName} (${s.relativePath}:${f(s.startLine)})`).join("; ")}`),o.push(""),o}var ze=N(({db:e,args:t,opts:n})=>{let o=T(t,0),r=p(n,"signatures"),s=Y(e,o);if(p(n,"json")){x("outline",t,n,s);return}if(s.length===0){console.log(`No indexed symbols found for ${JSON.stringify(o)}; current source may still contain code.`);return}console.log(o);function i(a,c){for(let l of a){let d=" ".repeat(c),m=r&&l.signature?` - ${Se(l.signature)}`:"";console.log(`${d}${Z(l.startLine,l.endLine)} ${l.shortName}${m}`),i(l.children,c+1)}}i(s,0)});function Se(e){return e.length>120?`${e.slice(0,117)}...`:e}var qe=oe("refs",({db:e,args:t,opts:n,budget:o})=>{let r=T(t,0),s=F(n,"cursor"),i=ie(n,"limit"),a=k(e),c=s?ye(s,{command:"refs",target:r,indexGeneration:a}):void 0,l=!c&&i===void 0,d=l?We(e,r,o.semantic):c?.version===1?He(e,r,c.offset,i??50,o.semantic):Ye(e,r,{limit:i??50,cursor:c,semantic:c?.semanticEnrichment??p(n,"full"),indexGeneration:a}),{rows:m,coverage:Ee}=d;if(p(n,"json")){let Ne={...D(e,r,m,"references"),pagination:d.pagination};x("refs",t,n,Ne,{analysisBudget:o.analysisBudget,coverage:Ee});return}return ct(e,r,d,l)});function We(e,t,n){let o=R(e,t,{semantic:n}).sort(y);return{rows:o,coverage:{complete:!0,totalKnown:!0,returned:o.length,total:o.length,omitted:0},pagination:{cursorVersion:2,producer:"complete-only",semanticEnrichment:n}}}function He(e,t,n,o,r){let s=R(e,t,{semantic:r}).sort(y);if(n>s.length)throw new Error("This cursor points past the current result set. Run again without --cursor.");let i=s.slice(n,n+o),a=n+i.length,c=i[i.length-1],l=n===0&&i.length===s.length,d=a<s.length&&c?{cursor:V({command:"refs",target:t,after:c,producer:"complete-only",semanticEnrichment:r,indexGeneration:k(e)}),indexGeneration:k(e)}:void 0;return{rows:i,continuation:d,coverage:l?{complete:!0,totalKnown:!0,returned:i.length,total:i.length,omitted:0}:{complete:!1,totalKnown:!0,returned:i.length,total:s.length,omitted:s.length-i.length,...d?{continuation:d}:{}},pagination:{cursorVersion:2,producer:"complete-only",semanticEnrichment:r}}}function Ye(e,t,n){let o=le(e,t,{limit:n.limit,after:n.cursor?.after,producer:n.cursor?.producer,semantic:n.semantic}),r=o.rows[o.rows.length-1],s=o.hasMore&&r?{cursor:V({command:"refs",target:t,after:r,producer:o.producer,semanticEnrichment:o.semanticEnrichment,indexGeneration:n.indexGeneration}),indexGeneration:n.indexGeneration}:void 0,i=!n.cursor&&!o.hasMore;return{rows:o.rows,continuation:s,coverage:i?{complete:!0,totalKnown:!0,returned:o.rows.length,total:o.rows.length,omitted:0}:{complete:!1,totalKnown:!1,returned:o.rows.length,...s?{continuation:s}:{}},pagination:{cursorVersion:2,producer:o.producer,semanticEnrichment:o.semanticEnrichment}}}var Qe=N(({db:e,args:t,opts:n})=>{let o=re(t,0),r=se(n,"context",0),s=Ze(n),i=Q(e,o,{context:r,members:s,localCalls:p(n,"localCalls")}),a=Ce(i);if(p(n,"json")){if(a){let m=o[0];x("code",o,n,D(e,m,a,"code"),{resultOnly:be(e,m,a)});return}x("code",o,n,i,{coverage:{complete:!0,totalKnown:!0,returned:i.entries.length,total:i.requested,omitted:0},resultOnly:Re(i)});return}let c=p(n,"bindings"),l=a?it(a,c?i.bindingClosure:void 0,!0):et(i,!0,c);if(a){process.stdout.write(l);return}let d=i.entries[0];if(i.requested===1&&d?.status==="missing")return v.empty(_(d.selector,d.suggestions));process.stdout.write(l)}),Xe=N(({opts:e})=>{let t=p(e,"reset"),n=te(t);if(!n.enabled){v.empty(n.reason??"Exploration-session deduplication is unavailable.");return}console.log(t?"Exploration-session ledger reset; subsequent exploration will emit evidence again.":`Exploration session: ${n.uniqueLines.toLocaleString()} unique source line(s) and ${n.evidenceItems.toLocaleString()} graph evidence item(s) delivered across ${n.emissions.toLocaleString()} emission(s).`),!t&&n.rows.length>0&&console.log(n.rows.join(`
|
|
5
|
+
`))});function Ze(e){let t=F(e,"members")??O.members;if(t==="exported"||t==="all")return t;throw new RangeError(`--members must be "exported" or "all", got "${t}".`)}function et(e,t=!1,n=!1){let o=[];return tt(o,e,t),nt(o,e),n&&$e(o,e.bindingClosure),Pe(o,e.entries.flatMap(r=>r.results)),`${o.join(`
|
|
6
|
+
`)}
|
|
7
|
+
`}function tt(e,t,n){let o=new Set;for(let r of t.entries)for(let s of r.results){let i=`${s.relativePath}:${s.startLine}:${s.endLine}`;if(o.has(i)){e.push("",` ${r.selector}: source already included at ${g(s.relativePath,s.startLine,s.endLine)}.`);continue}o.add(i),(t.requested>1||r.status==="ambiguous")&&e.push("",` selector ${r.selector}`),we(e,s,n)}}function nt(e,t){let n=t.entries.filter(i=>(i.fileCoverage?.omittedDefinitions??0)>0);if(n.length>0){e.push("","Omitted file definitions");for(let i of n)st(e,i)}let o=t.entries.filter(i=>(i.rangeCoverage?.omittedDefinitions??0)>0);if(o.length>0){e.push("","Omitted referenced definitions");for(let i of o)rt(e,i)}let r=t.entries.filter(i=>i.status==="ambiguous");if(r.length>0){e.push("","Ambiguous selectors");for(let i of r)at(e,i)}let s=t.entries.filter(i=>i.status==="missing");if(s.length>0){e.push("","Missing selectors");for(let i of s)ot(e,i)}}function ot(e,t){let n=t.suggestions.length>0?` Suggestions: ${t.suggestions.join(", ")}`:"";e.push(` ${t.selector}: ${t.reason==="definition-source-unreadable"?"definition source unreadable.":"no definition matched."}${n}`)}function rt(e,t){let n=t.rangeCoverage;if(n&&(e.push(` ${t.selector} \u2014 requested lines returned plus ${n.returnedBodies} same-file callable body(ies), covering ${n.returnedDefinitions}/${n.referencedDefinitions} statically attributed same-file definition(s).`,` basis: ${n.basis}; dynamic calls and references outside the requested lines are not claimed`),n.omittedLedger.length!==0)){e.push(" OMITTED REFERENCED DEFINITIONS");for(let o of n.omittedLedger)e.push(` ${g(o.relativePath,o.startLine,o.endLine)} ${o.shortName}`)}}function it(e,t,n=!1){let o=[];return we(o,e,n),$e(o,t),Pe(o,[e]),`${o.join(`
|
|
8
|
+
`)}
|
|
9
|
+
`}function Pe(e,t){let n=t.flatMap(r=>r.freshness?[r.freshness]:[]);if(n.length===0)return;let o={aligned:n.filter(r=>r.semantic.state==="aligned").length,stale:n.filter(r=>r.semantic.state==="stale").length,unavailable:n.filter(r=>r.semantic.state==="unavailable").length};(o.stale||o.unavailable)&&e.push(`Index identity: ${o.stale} stale, ${o.unavailable} unavailable; source text is current.`)}function we(e,t,n){if(n){e.push(ee({relativePath:t.relativePath,startLine:t.startLine,source:t.source,sessionPolicy:"exact-unit",ownerSymbol:t.shortName,headerSuffix:` ${t.shortName} [${t.language??"unknown"}]`,indent:"",sourceIndent:" ",showFocusMarker:!1,lineNumberWidth:4,blankAfterHeader:!0}));return}e.push(`${g(t.relativePath,t.startLine,t.endLine)} ${t.shortName} [${t.language??"unknown"}]`,"");let o=t.source.split(`
|
|
10
|
+
`);for(let r=0;r<o.length;r++)e.push(` ${String(f(t.startLine+r)).padStart(4)} ${o[r]}`)}function st(e,t){let n=t.fileCoverage;if(!n||(e.push(` ${t.selector} \u2014 ${n.returnedBodies} source body(ies) cover ${n.returnedDefinitions}/${n.totalDefinitions} indexed definition(s); ${n.omittedDefinitions} omitted definition(s) disclosed below.`,` basis: ${n.basis}; members=${n.members}`),n.omittedLedger.length===0))return;e.push(" OMITTED FILE-LOCAL DEFINITIONS");for(let r of n.omittedLedger){let s=r.signature?` \u2014 ${Se(r.signature)}`:"",i=r.nestedDefinitions>0?` (+${r.nestedDefinitions} nested definition(s))`:"";e.push(` ${" ".repeat(r.depth)}${g(r.relativePath,r.startLine,r.endLine)} ${r.shortName}${s}${i}`)}let o=n.omittedLedger.filter(r=>r.depth===0);for(let r=0;r<o.length;r+=24){let s=o.slice(r,r+24);e.push(` Read omitted units together: scip-query code ${s.map(i=>M(`${i.relativePath}:${f(i.startLine)}-${f(i.endLine)}`)).join(" ")}`)}}function at(e,t){e.push(` ${t.selector} \u2014 ${t.totalCandidates} candidate(s); ${t.results.length>0?"all candidate bodies returned above":"no body selected"}.`);for(let n of t.candidates)e.push(` ${g(n.relativePath,n.startLine,n.endLine)} ${n.shortName}`);t.omittedCandidates>0&&e.push(` ... ${t.omittedCandidates} additional candidate identity(ies).`),t.candidates.length>0&&e.push(` Read shown candidates together: scip-query code ${t.candidates.map(n=>M(`${n.relativePath}:${f(n.startLine)}-${f(n.endLine)}`)).join(" ")}`)}function $e(e,t){if(!(!t||t.inline.length===0)){e.push("","LITERAL VALUES");for(let n of t.inline)e.push(` inline ${n.name} @ ${g(n.relativePath,n.startLine,n.endLine)}`),e.push(` ${n.source??""}`)}}var on=[{id:"session",command:"session",description:"Show evidence already delivered in this agent exploration session",options:[u("--reset","Clear this agent exploration-session ledger")],agent:pe("Which indexed source ranges and graph facts have already been delivered in this exploration session?","prior command ordinals, exact source ranges, and content-bound graph receipts",[],"complete","repository",ne("repository-observation",[{when:{kind:"option",name:"reset",equals:!0},role:"mutation"}])),renderShape:"custom",docs:P("Navigation"),handler:Xe},{id:"refs",command:"refs <symbol>",description:"Find all files referencing a symbol",options:fe([u("--full","Run unbounded semantic analysis on large indexes"),u("-n, --limit <n>","Maximum reference sites to return",me),u("--cursor <cursor>","Continue a prior bounded result (implies --limit 50 when omitted)")]),budget:"semantic",agent:{operation:h,answers:["Which files reference this symbol?","Is this symbol used anywhere, or only defined?"],returns:["referencing file paths","reference line numbers grouped by file"],inputs:["symbol"],coverage:"bounded",semantic:K("Locate compiler-bound references and explicitly marked source/chunk candidates for one symbol identity.","Referencing file paths and reference line numbers grouped by file.",["Source/chunk candidates require confirmation; non-callable symbols include their definition site. Reference sites do not establish runtime execution or complete absence of uses."]),contrasts:[{command:"imported-by",distinction:"imported-by lists files importing the symbol; refs covers every reference site, imported or not."},{command:"affected",distinction:"refs lists observed locations; affected follows indexed dependency paths and does not prove that a consumer will break."}]},renderShape:"grouped-by-file",docs:P("Navigation",["scip-query refs login"]),handler:qe},{id:"outline",command:"outline <file>",description:"Tree view of symbols in a file, with line ranges",agent:{...w("What symbols and nesting exist in this file?","symbol names, nesting, and line ranges",["file"],"complete",void 0,h,ge(["file","symbol","construct"],["File ownership and nesting do not establish execution or task relevance."],{ranking:"identity-only",manualInput:"One exact current project file path.",evidenceCeiling:"Exact compiler-owned constructs and ranges when the file is indexed; no invented semantic overlay."})),contrasts:[{command:"search",distinction:"outline enumerates constructs in one known file; search locates exact text across current project text."},{command:"code",distinction:"outline returns identities and ranges; code materializes exact source for selected identities."}]},options:L([u("--signatures","Show trimmed symbol signatures")]),renderShape:"custom",docs:P("Navigation"),handler:ze},{id:"code",command:"code <selectors...>",description:"Read exact definitions, line ranges, or file export surfaces",agent:{...w("What exact source defines these symbols, ranges, or file surfaces?","per-selector resolution, complete definition source, exact ranges, optional same-file call closure, file export surfaces, and omitted-local ledgers",[["symbol","file"]],"complete",void 0,h,he(["construct","exact-source"],["Source materialization does not establish callers, runtime reachability, or task relevance by itself."],void 0,{manualInput:"One or more exact symbols, file:line ranges, or file paths.",evidenceCeiling:"Exact current source bytes for every resolved selector, with omitted file-local constructs disclosed."})),resultUnits:{kind:"field",field:"code"},contrasts:[{command:"inspect",distinction:"code materializes complete exact source; inspect batches bounded behavior or source gaps."},{command:"outline",distinction:"code reads selected implementations; outline enumerates file structure without reading every body."}]},options:L([u("-C, --context <n>","Extra lines of context above/below",ue,O.context),u("--bindings","Also display referenced literal values outside the requested source"),u("--local-calls","Also read statically attributed same-file callees of a selected line range"),u("--members <exported|all>","For file selectors, return the exported surface or the complete file",void 0,O.members)]),renderShape:"custom",docs:P("Navigation",["scip-query code parseRequest handleRequest","scip-query code src/api.ts src/web.ts"]),handler:Qe}];function ct(e,t,n,o){let{rows:r,continuation:s,coverage:i}=n;if(r.length===0)return v.empty(xe(e,t,"No references found."));if(ve(e,t),v.groupedByFile(r,a=>` line ${f(a.line)} [${a.evidence??"source-or-chunk-candidate"}]`),n.pagination.producer==="complete-only"&&!o&&console.error(`
|
|
11
|
+
This evidence provider required complete analysis; --limit bounded the returned rows, not analysis work.`),s){let a=i.totalKnown?`${i.omitted} omitted; `:"More references are available; ";console.log(`
|
|
12
|
+
${a}continue with --cursor ${s.cursor}`)}}export{lt as a,xt as b,St as c,ue as d,me as e,Pt as f,u as g,je as h,fe as i,L as j,P as k,wt as l,$t as m,Et as n,Nt as o,w as p,Ot as q,pe as r,ge as s,Lt as t,he as u,K as v,I as w,D as x,ve as y,xe as z,on as A};
|
|
13
|
+
//# sourceMappingURL=chunk-EJVTR244.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{f as $}from"./chunk-D254DNNQ.js";import{b as I}from"./chunk-BOJ5SVE2.js";import{a as l}from"./chunk-BGBBVSH4.js";import{m as D}from"./chunk-AGWFSTXC.js";import{d as L}from"./chunk-DVFP6PZI.js";import{d as S,l as b,s as h,t as y,y as x}from"./chunk-5D2LVK7O.js";import{a as f,e as d}from"./chunk-7WTPQ4NX.js";import{a as g}from"./chunk-A2IIGFMJ.js";var B=new Set(L());function re(e,n={}){let{scope:i,minLoc:t=1,limit:r,scanLimit:a,maxShapeFrequency:o=12}=n,s=n.semantic!==!1,c=R(e,k(e,{scope:i,minLoc:t,scanLimit:a}),{semantic:s,maxShapeFrequency:o}),u=E(c);return r?u.slice(0,r):u}function k(e,n){let i=x(e,{scope:n.scope}).filter(t=>M(t)&&!e.isIgnored(t.relativePath)).filter(t=>l(t)>=n.minLoc);return typeof n.scanLimit=="number"&&n.scanLimit>0&&i.sort((t,r)=>l(r)-l(t)||t.relativePath.localeCompare(r.relativePath)),I(i,n.scanLimit)}function M(e){return!e.isFunctionLike||b(e.symbol)?!1:e.kind===null||B.has(e.kind)}function R(e,n,i){let t=H(e,n,i),r=new Map;for(let o of t)r.set(o.signature,(r.get(o.signature)??0)+1);let a=new Map;for(let o of t){let s=z(o.fn.loc),c=(r.get(o.signature)??0)>i.maxShapeFrequency,u=c?$(e,o.definition):null;if(c&&!u)continue;let m=c?`${o.signature}\0body\0${u}`:`${o.signature}\0band\0${s}`,p=a.get(m)??{signature:o.signature,locBand:s,exactBody:c,functions:[]};p.functions.push(o.fn),a.set(m,p)}return[...a.values()]}function q(e){return{symbol:e.symbol,shortName:S(e.symbol),file:e.relativePath,startLine:e.startLine,endLine:e.endLine,loc:l(e)}}function E(e){let n=[];for(let i of e)i.functions.length>=2&&n.push(i);return n.sort((i,t)=>{let r=t.functions.length-i.functions.length;if(r!==0)return r;let a=i.functions.reduce((s,c)=>s+c.loc,0);return t.functions.reduce((s,c)=>s+c.loc,0)-a}),n}function z(e){return e<=5?"<=5":e<=20?"6-20":">20"}function G(e,n,i){if(i.semantic){let a=D(e,n);if(a)return a}let t=P(n.documentation),r=t?C(t):null;return r||N(w(e,n.relativePath,n.startLine,n.endLine,n.leaf),n.leaf)}function P(e){return h(y(e))}function w(e,n,i,t,r){let a=g(e,n);if(!a)return null;let o=a.split(/\r?\n/),s=j(o,i,t,r);for(let c of s){let u=U(o,c);if(u!==null)return u}return null}function A(e){let n=e.replace(/\s+/g," ").trim();return!n.includes("(")||d(n)>0?!1:/[;{]$/.test(n)||/\)\s*(?::\s*[^={]+)?\s*(?:=>|=|throws\b|where\b|$)/i.test(n)||/\)\s*As\s+.+$/i.test(n)}function C(e){if(!e||!e.trim())return null;let n=e.replace(/^```\w*\s*/,"").replace(/\s*```$/,"").replace(/^\(method\)\s*/,"").replace(/^\(property\)\s*/,"").replace(/^\(function\)\s*/,"").replace(/^\(class\)\s*/,"").replace(/^\(interface\)\s*/,"").replace(/^\(enum\)\s*/,"").replace(/^\(type alias\)\s*/,"").replace(/^\(const\)\s*/,"").replace(/^\(var\)\s*/,"").trim(),i=n.indexOf("(");return i===-1||(n=n.slice(i),n=v(n),n.length<3)?null:n}function N(e,n){if(!e||!e.trim())return null;let i=e.trim(),t=i.indexOf("(");if(t===-1)return null;let r=i.slice(0,t),o=new RegExp(`\\b${f(n)}\\b`,"i").exec(r);o&&typeof o.index=="number"&&(r=r.slice(0,o.index)),r=r.replace(/\b(public|private|protected|internal|final|static|abstract|sealed|virtual|override|async|suspend|inline|constexpr|consteval|constinit|const|pub|fn|function|def|sub|friend|shared|readonly|new|open|partial|export)\b/gi," ").replace(/\s+/g," ").trim();let s=K(i.slice(t)).replace(/\)\s*=\s*[\s\S]*$/,")").replace(/\s+throws\s+[^={]+$/i,"").replace(/\s+where\s+.+$/i,"").trim();if(!s.startsWith("("))return null;let c=v(`${r?`${r} `:""}${s}`);return c.length>=3?c:null}function T(e,n){return e.quote?(e.escaping?e.escaping=!1:n==="\\"?e.escaping=!0:n===e.quote&&(e.quote=null),!0):['"',"'","`"].includes(n)?(e.quote=n,!0):!1}var O={"(":["paren",1],")":["paren",-1],"[":["bracket",1],"]":["bracket",-1],"<":["angle",1],">":["angle",-1],"{":["brace",1],"}":["brace",-1]};function _(e,n,i){let{paren:t,bracket:r,angle:a,brace:o}=i.depths;return t!==0||r!==0||a!==0?!1:e[n]==="{"?!0:e[n]==="="&&e[n+1]===">"&&o===0}function K(e){let n={depths:{paren:0,brace:0,bracket:0,angle:0},quote:null,escaping:!1};for(let i=0;i<e.length;i+=1){let t=e[i];if(T(n,t))continue;if(_(e,i,n))return e.slice(0,i);let r=O[t];if(r){let[a,o]=r;n.depths[a]=Math.max(0,n.depths[a]+o)}}return e}function j(e,n,i,t){let r=f(t),a=new RegExp(`\\b${r}\\b\\s*\\(`,"i"),o=new RegExp(`\\bdef\\s+${r}\\b`,"i"),s=[],c=new Set,u=Math.max(0,Math.min(n,e.length-1)),m=Math.max(u,Math.min(e.length-1,Math.max(i,n+4)));return F(e,u,m,a,o,c,s),F(e,0,e.length-1,a,o,c,s),s}function v(e){return e.replace(/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|`(?:\\.|[^`\\])*`|\s+/g,n=>/^\s/.test(n)?"":n)}function H(e,n,i){let t=[];for(let r of n){let a=G(e,r,i);a&&t.push({signature:a,definition:r,fn:q(r)})}return t}function U(e,n){let i=Math.min(e.length-1,Math.max(n,n+4)),t="";for(let r=n;r<=i;r+=1){let a=e[r]?.trim();if(a&&(t=t?`${t} ${a}`:a,A(t)))return t}return t&&t.includes("(")?t:null}function F(e,n,i,t,r,a,o){for(let s=n;s<=i;s+=1){let c=e[s]??"";(t.test(c)||r.test(c))&&!a.has(s)&&(a.add(s),o.push(s))}}export{re as a};
|
|
2
|
+
//# sourceMappingURL=chunk-EOV7RTRZ.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as A}from"./chunk-SV2LEFVM.js";import{a as R}from"./chunk-HXENDJC6.js";import{a as G,d as J}from"./chunk-2IWUT6CJ.js";import{a as H,c as x}from"./chunk-E3FDPXZK.js";import{a as N}from"./chunk-KHWRRPV4.js";import{e as W}from"./chunk-72AD6ZRR.js";import{b as L}from"./chunk-GCKCF5FL.js";import{x as z}from"./chunk-5D2LVK7O.js";import{s as $}from"./chunk-7WTPQ4NX.js";import{a as V}from"./chunk-FVULPZDF.js";import{a as U}from"./chunk-T6DK3ZP7.js";import{Y as v,qa as P,ta as O}from"./chunk-5TNQJUR2.js";import{readdirSync as pe}from"fs";import{join as _}from"path";function fe(e){return X(e).replace(/\/\*\*?$/,"")}function K(e,r){let t=X(r),n=fe(t),o=t.endsWith("/**"),a=[],i=(s,c)=>{let u;try{u=pe(s,{withFileTypes:!0})}catch{return}for(let l of u){if(l.name.startsWith("."))continue;let g=c?`${c}/${l.name}`:l.name;A(t,g)&&a.push(g),o&&l.isDirectory()&&i(_(s,l.name),g)}};return i(_(e,n),n),a.sort()}function X(e){return e.replace(/\\/g,"/").replace(/^\.\//,"").replace(/\/+$/,"")}var me=/\.(test|spec)\.(ts|tsx|js|jsx|mts|cts)$/,Q=new Map;function Y(e,r,t,n){if(!r?.testPaths?.length)return[];let o=ye(r),a=[];for(let i of be(e,r.testPaths)){let s=Ce(e,i,n),c=s?t(s):null;c&&he(e,i,c,t,o,a)}return Ae(a)}function he(e,r,t,n,o,a){for(let i of $(e,r)){let s=i.sourcePath;if(!s)continue;let c=n(s);c&&c!==t&&(o.get(t)?.has(c)||a.push({testFile:r,ownerBoundary:t,importedFile:s,importedBoundary:c,reason:"outside-owner-policy"}))}}function ye(e){let r=e.allowedDependencies??{},t=e.boundaries.map(i=>i.name),n=new Map,o=(i,s)=>{for(let c of r[i]??[])s.has(c)||(s.add(c),o(c,s))};for(let i of t){let s=new Set;o(i,s),n.set(i,s)}let a=new Map;for(let i of t){let s=new Set(n.get(i));for(let c of t)c!==i&&n.get(c)?.has(i)&&s.add(c);a.set(i,s)}return a}function be(e,r){let t=`${e.config.projectRoot}\0${r.join("\0")}`,n=Q.get(t);if(n)return n;let o=new Set;for(let i of r)for(let s of K(e.config.projectRoot,i))me.test(s)&&o.add(s);let a=[...o].sort();return Q.set(t,a),a}function Ce(e,r,t){let n=r.replace(/^tests\//,"src/").replace(/\.(test|spec)\.(\w+)$/,".$2");if(n!==r&&t(n))return n;let o=r.split("/").pop().replace(/\.(test|spec)\.(\w+)$/,".$2"),a=$(e,r).map(i=>i.sourcePath).filter(i=>!!i&&t(i)&&i.split("/").pop()===o);return a.length===1?a[0]:null}function Ae(e){let r=new Map;for(let t of e){let n=`${t.testFile}\0${t.importedBoundary}`;r.has(n)||r.set(n,t)}return[...r.values()].sort((t,n)=>t.testFile.localeCompare(n.testFile)||t.importedBoundary.localeCompare(n.importedBoundary))}function j(e,r){let t=(e?.boundaries??[]).filter(n=>n.paths.some(o=>A(o,r)));return t.length===1?t[0].name:null}import w from"path";import{isBuiltin as Fe}from"module";import{ts as te}from"@ts-morph/common";import C from"path";import{ts as S}from"@ts-morph/common";var Se={allowJs:!0,moduleResolution:S.ModuleResolutionKind.Node10};function Z(e,r,t){let n=new Set(e),o=new Map,a=[],i=p=>{if(o.has(p))return o.get(p);if(!(!p.endsWith(".json")||!n.has(p)))try{let h=t(p);return h!==void 0&&o.set(p,h),h}catch(h){a.push(`${p}: configuration unavailable: ${h instanceof Error?h.message:String(h)}`);return}},s=v(S,e,i),c=we(r),u=xe(n,c,s,a),l=new Set,g=Re(n,c,i,a,l);for(let p of e)(p==="package.json"||p.endsWith("/package.json"))&&i(p);n.has(".scipquery.json")&&i(".scipquery.json");let m=v(S,e,p=>o.get(p));return{inputs:o,inventory:n,configs:u,packages:g,host:Be(m,g),problems:a,architecture:Me(o.get(".scipquery.json"),a),resolutionCaches:new Map,fileConfigs:new Map,ambiguousPackages:l}}function we(e){let r=new Set(["."]);for(let t of e){let n=C.posix.dirname(t);for(;!r.has(n);)r.add(n),n=C.posix.dirname(n)}return r}function xe(e,r,t,n){let o=[...r].flatMap(s=>["tsconfig.json","jsconfig.json"].map(u=>C.posix.join(s,u)).filter(u=>e.has(u)).slice(0,1)),a=new Set,i=[];for(let s=0;s<o.length;s++){let c=o[s];if(a.has(c))continue;a.add(c);let u=Ee(c,t,n);if(!u)continue;let l="/"+c;i.push({file:c,directory:C.posix.dirname(l),files:new Set(u.fileNames),options:u.options});for(let g of u.projectReferences??[]){let m=g.path.endsWith(".json")?g.path:C.posix.join(g.path,"tsconfig.json");o.push(m.replace(/^\//,""))}}return i}function Ee(e,r,t){let n="/"+e,o=S.readConfigFile(n,r.readFile);if(o.error){t.push(`${e}: ${S.flattenDiagnosticMessageText(o.error.messageText," ")}`);return}let a=S.parseJsonConfigFileContent(o.config,r,C.posix.dirname(n),void 0,n);for(let i of a.errors)i.code!==18003&&i.code!==18002&&t.push(`${e}: ${S.flattenDiagnosticMessageText(i.messageText," ")}`);return a}function Re(e,r,t,n,o){let a=new Map;for(let i of r){let s=C.posix.join(i,"package.json");if(e.has(s))try{let c=JSON.parse(t(s)??"{}");if(!U(c)||typeof c.name!="string"||o.has(c.name))continue;let u=a.get(c.name);if(u&&u!==i){n.push(`${s}: repository package name ${c.name} is also declared in ${u}.`),o.add(c.name),a.delete(c.name);continue}a.set(c.name,i)}catch{n.push(`${s}: malformed package metadata.`)}}return a}function Be(e,r){let t=n=>{let o="/node_modules/",a=n.lastIndexOf(o);if(a<0)return n;let i=n.slice(a+o.length),s=B(i),c=r.get(s);return c===void 0?n:C.posix.join("/",c,i.slice(s.length))};return{...e,fileExists:n=>e.fileExists(t(n)),readFile:n=>e.readFile(t(n)),directoryExists:n=>n.endsWith("/node_modules")||e.directoryExists?.(t(n))===!0,realpath:t}}function B(e){return e.startsWith("@")?e.split("/").slice(0,2).join("/"):e.split("/")[0]}function I(e,r){let t=e.fileConfigs.get(r);if(t)return t;let n="/"+r,o=e.configs.filter(c=>c.files.has(n)),a=o.length?o:e.configs.filter(c=>n.startsWith(c.directory.replace(/\/$/,"")+"/")),i=Math.max(...a.map(c=>c.directory.length)),s=a.length?a.filter(c=>c.directory.length===i):[{file:"",directory:"/",files:new Set,options:Se}];return e.fileConfigs.set(r,s),s}function ee(e,r,t){return t.startsWith(".")||t.startsWith("/")||t.startsWith("#")||e.packages.has(B(t))?!0:I(e,r).some(n=>Object.keys(n.options.paths??{}).some(o=>{let[a,i]=o.split("*");return i===void 0?t===o:t.startsWith(a)&&t.endsWith(i)}))}function Me(e,r){if(e===void 0)return;let t=J(e);if(t.kind==="malformed"||t.kind==="unsupported"){r.push(`.scipquery.json: ${t.kind==="malformed"?t.reason:"unsupported schema version"}`);return}let n=[];if(G(t.config,n),n.some(o=>o.level==="error")){r.push(...n.map(o=>`.scipquery.json ${o.path}: ${o.message}`));return}return t.config.architecture}function ve(e,r,t,n){let o=[],a=I(t,e.fileName);for(let i of N(e,n)){let{literal:s,...c}=i,u=s?Pe(t,r,e.fileName,i.specifier,a):{resolution:"dynamic"};o.push({...c,file:e.fileName,role:x(e.fileName)==="test"?"test":"production",configs:a.map(l=>l.file).filter(Boolean),...u})}return o}function Pe(e,r,t,n,o){if(Fe(n))return{resolution:"builtin"};let a=$e(e,t,n);if(a)return{resolution:"excluded",target:a};if(e.ambiguousPackages.has(B(n)))return{resolution:"ambiguous",alternatives:[]};let i=o.map(u=>{let l=e.resolutionCaches.get(u.file);return l||(l=te.createModuleResolutionCache("/",g=>g,{allowJs:!0,...u.options}),e.resolutionCaches.set(u.file,l)),te.resolveModuleName(n,"/"+t,{allowJs:!0,...u.options},e.host,l).resolvedModule?.resolvedFileName}),s=[...new Set(i.filter(u=>u!==void 0).map(u=>w.posix.normalize(e.host.realpath?.(u)??u).replace(/^\//,"")))];if(s.length>1||s.length===1&&i.some(u=>!u))return{resolution:"ambiguous",alternatives:s};let c=s[0];return c?{resolution:r.has(c)?"internal":"excluded",target:c}:je(e,t,n)}function $e(e,r,t){if(!t.startsWith("."))return;let n=w.posix.normalize(w.posix.join(w.posix.dirname(r),t));return e.inventory.has(n)&&!/\.[cm]?[jt]sx?$/.test(n)?n:void 0}function je(e,r,t){let n=w.posix.normalize(w.posix.join(w.posix.dirname(r),t));return t.startsWith(".")&&H(n)?{resolution:"excluded",excludedReason:`Requested managed output ${n}; build/install existence is not established by the source inventory.`}:{resolution:ee(e,r,t)?"missing":"external"}}function ne(e,r,t){let n={imports:[],unavailable:[]},o=Ie(e,r,n);if(o.size===0)return n;let a=Z(O(e),[...o.keys()],i=>P(e,i));for(let[i,s]of o){if(t&&!i.includes(t))continue;let c=W(i,s),u=[...a.problems,...c.errors];u.length?n.unavailable.push({file:i,reason:u.join("; ")}):n.imports.push(...ve(c.sourceFile,o,a,c.checker))}return n}function Ie(e,r,t){let n=new Map;for(let o of r.filter(a=>/\.[cm]?[jt]sx?$/.test(a)))try{n.set(o,P(e,o))}catch(a){t.unavailable.push({file:o,reason:`current source unavailable: ${a instanceof Error?a.message:String(a)}`})}return n}var y="architecture:";function ke(e,r,t,n={}){let o=n.scope?{scope:n.scope,limitations:["A file-filtered projection cannot establish repository-wide cycle freedom, size compliance or unused allowances. Rerun architecture without --scope for full policy evaluation."]}:{},a=e,i=ie(e,r),s=Ze(e,t);e=s.graph;let c={excludedTestEdges:s.excludedTestEdges,basis:"production-imports-including-types",cycleMeaning:"Boundary cycles concern declared groups. File cycle members, when present, concern observed imports including types and deferred imports; neither establishes a runtime initialization failure."};if(!t||t.boundaries.length===0)return{configured:!1,dependencyRoles:c,boundaries:[],edges:[],forbiddenEdges:[],reciprocalPairs:[],cycles:[],coarseBoundaries:[],staleAllowances:[],boundaryLimits:[],fragileEdges:[],testBoundaryViolations:[],coverage:{...o,totalFiles:i.length,mappedFiles:0,unmappedFiles:i,ambiguousFiles:[]},policyCoverage:{declaredRows:0,totalBoundaries:0,missingRows:[],requiresCompletePolicy:!1,requiresCompleteCoverage:!1,requiresMinimalPolicy:!1}};let{resolved:u,filesByBoundary:l,unmappedFiles:g,ambiguousFiles:m}=Te(i,t),p=re(e,u,t),h=new Map([...a].map(([d,f])=>[d,new Set([...f].filter(F=>!e.get(d)?.has(F)))])),M=re(h,u,t),b=p,se=new Map(b.map(d=>[E(d.from,d.to),d])),k=new Map(t.boundaries.map(d=>[d.name,new Set]));for(let d of b)k.get(d.from).add(d.to);let ae=qe(b,se),ce=R(e).components.filter(d=>d.length>1&&new Set(d.map(f=>u.get(f)).filter(Boolean)).size>1),{components:ue}=R(k),le=ue.filter(d=>d.length>1).map(d=>{let f=We(d,b,t.requireAcyclic===!0),F=new Set(d),D=ce.filter(de=>de.every(ge=>F.has(u.get(ge)??""))).flat();return{...f,origin:D.length>0?"contains-file-cycle":"grouping-only",fileCycleMembers:[...new Set(D)].sort()}}).sort((d,f)=>f.boundaries.length-d.boundaries.length||d.boundaries.join("/").localeCompare(f.boundaries.join("/"))),T=t.allowedDependencies??{},q=t.boundaries.map(d=>d.name).filter(d=>!Object.hasOwn(T,d)).sort();return{configured:!0,dependencyRoles:c,testEdges:M,testForbiddenEdges:M.filter(d=>d.policyStatus==="forbidden"),boundaries:t.boundaries.map(d=>({name:d.name,paths:[...d.paths],fileCount:l.get(d.name).size,dependencyPolicyDeclared:Object.hasOwn(T,d.name)})).sort((d,f)=>d.name.localeCompare(f.name)),edges:p,forbiddenEdges:b.filter(d=>d.policyStatus==="forbidden"),reciprocalPairs:ae,cycles:le,staleAllowances:n.scope?[]:_e(t,[...b,...M],l),boundaryLimits:Ke(t,b,l),fragileEdges:b.filter(d=>d.fragile),testBoundaryViolations:n.testBoundaryViolations??[],coarseBoundaries:Ne(e,l,n.isModuleHierarchyFile,t.requireResolvedBoundaries===!0,d=>t.boundaries.find(f=>f.name===d)?.subUnits??"directory"),coverage:{...o,totalFiles:i.length,mappedFiles:u.size,unmappedFiles:g,ambiguousFiles:m},policyCoverage:{declaredRows:t.boundaries.length-q.length,totalBoundaries:t.boundaries.length,missingRows:q,requiresCompletePolicy:t.requireCompletePolicy===!0,requiresCompleteCoverage:t.requireCompleteCoverage===!0,requiresMinimalPolicy:t.requireMinimalPolicy===!0}}}function Te(e,r){let t=new Map,n=new Map(r.boundaries.map(i=>[i.name,new Set])),o=[],a=[];for(let i of e){let s=r.boundaries.filter(c=>c.paths.some(u=>A(u,i))).map(c=>c.name).sort();if(s.length===0)o.push(i);else if(s.length>1)a.push({file:i,boundaries:s});else{let c=s[0];t.set(i,c),n.get(c).add(i)}}return{resolved:t,filesByBoundary:n,unmappedFiles:o,ambiguousFiles:a}}function qe(e,r){let t=[];for(let n of e){if(n.from>=n.to)continue;let o=r.get(E(n.to,n.from));o&&t.push({boundaries:[n.from,n.to],forward:n,reverse:o})}return t}function Tt(e,r={}){let t=V(e,{includeIgnored:!1}),{graph:n,unresolved:o}=De(e,t,r.scope),a=t.filter(c=>!r.scope||c.includes(r.scope)),i=new Set(a),s=ke(n,a,e.config.architecture,{scope:r.scope,isModuleHierarchyFile:c=>Oe(e,c),testBoundaryViolations:Y(e,e.config.architecture,c=>j(e.config.architecture,c),c=>i.has(c))});return s.coverage.limitations=[...s.coverage.limitations??[],"This graph covers indexed documents and observed import/re-export relationships, supplemented by compiler-resolved current TS/JS imports (including literal dynamic imports, import types and unshadowed CommonJS). Unindexed files, nonliteral imports and unsupported relationships cannot establish repository-wide absence; allowances from boundaries without observed source files are not classified as unused."],Ue(s,o,e.config.architecture),s}function De(e,r,t){let n=L(e,t,{scipEdges:"imports-only",sourceEdges:"imports-and-reexports"}),o=new Map([...n].map(([s,c])=>[s,new Set(c)])),a=ne(e.config.projectRoot,r,t),i=a.unavailable;for(let s of a.imports){if(["internal","external","builtin"].includes(s.resolution)||i.push({file:s.file,reason:`${s.line}: ${s.specifier} (${s.resolution})`}),s.resolution!=="internal"||!s.target)continue;let c=o.get(s.file)??new Set;c.add(s.target),o.set(s.file,c)}return{graph:o,unresolved:i}}function Ue(e,r,t){if(r.length===0)return;let n=new Set(r.map(o=>j(t,o.file)));e.staleAllowances=e.staleAllowances.filter(o=>!n.has(o.from)),e.coverage.limitations??=[],e.coverage.limitations.push("Unused-allowance claims are withheld for owners with unavailable or unresolved current TS/JS imports:",...r.map(o=>`${o.file}: ${o.reason}`))}function Oe(e,r){let t=x(r);return t==="test"||t==="entry"?!0:t!=="barrel"?!1:z(e,r).length===0}function qt(e){let r=[...e.forbiddenEdges,...e.testForbiddenEdges??[]].map(t=>`${y}forbidden-edge:${encodeURIComponent(t.from)}:${encodeURIComponent(t.to)}`);r.push(...Ve(e));for(let t of e.testBoundaryViolations)r.push(`${y}test-boundary:${encodeURIComponent(t.testFile)}:${encodeURIComponent(t.importedBoundary)}`);for(let t of e.boundaryLimits)r.push(`${y}boundary-limit:${t.kind}:${encodeURIComponent(t.boundary)}`);r.push(...Le(e.coarseBoundaries));for(let t of e.cycles)t.violatesPolicy&&r.push(`${y}cycle:${t.boundaries.map(n=>encodeURIComponent(n)).sort().join("|")}`);return[...new Set(r)].sort()}function Ve(e){let r=[];if(e.policyCoverage.requiresCompletePolicy)for(let t of e.policyCoverage.missingRows)r.push(`${y}missing-policy-row:${encodeURIComponent(t)}`);if(e.policyCoverage.requiresCompleteCoverage){for(let t of e.coverage.unmappedFiles)r.push(`${y}unmapped-file:${encodeURIComponent(t)}`);for(let t of e.coverage.ambiguousFiles)r.push(`${y}ambiguous-file:${encodeURIComponent(t.file)}:${t.boundaries.map(n=>encodeURIComponent(n)).sort().join("|")}`)}if(e.policyCoverage.requiresMinimalPolicy)for(let t of e.staleAllowances)r.push(`${y}stale-allowance:${encodeURIComponent(t.from)}:${encodeURIComponent(t.to)}`);return r}function Le(e){let r=[],t=new Map;for(let n of e)n.violatesPolicy&&t.set(n.boundary,(t.get(n.boundary)??0)+1);for(let[n,o]of t){let a=`${y}coarse-boundary:${encodeURIComponent(n)}`;r.push(a);for(let i=2;i<=o;i+=1)r.push(`${a}:component:${i}`)}return r}function Dt(e){return!!e&&(Object.keys(e.allowedDependencies??{}).length>0||et(e)||e.maxBoundaryFanOut!==void 0||e.maxBoundaryFiles!==void 0||e.boundaries.some(r=>r.maxFiles!==void 0)||(e.testPaths?.length??0)>0)}function ie(e,r){let t=new Set(r);for(let[n,o]of e){t.add(n);for(let a of o)t.add(a)}return[...t].sort()}function ze(e,r){let t=[...e.fileEdges].sort((n,o)=>n.fromFile.localeCompare(o.fromFile)||n.toFile.localeCompare(o.toFile));return{from:e.from,to:e.to,policyStatus:He(r,e.from,e.to),fileEdgeCount:t.length,importerCount:e.importers.size,importedFileCount:e.importedFiles.size,examples:t.slice(0,5),fragile:t.length===1}}function He(e,r,t){return!e.allowedDependencies||!Object.hasOwn(e.allowedDependencies,r)?"undeclared":e.allowedDependencies[r].includes(t)?"allowed":"forbidden"}function We(e,r,t){let n=[...e].sort(),o=new Set(n),a=r.filter(s=>o.has(s.from)&&o.has(s.to)),i=Math.min(...a.map(s=>s.fileEdgeCount));return{boundaries:n,internalEdges:a,narrowestEdges:a.filter(s=>s.fileEdgeCount===i),violatesPolicy:t}}function Ne(e,r,t=Xe,n=!1,o=()=>"directory"){let a=[];for(let[i,s]of r){let c=o(i)==="file"?m=>m:Qe,u=[...s].filter(m=>!t(m));if(u.length<2)continue;let{edges:l,subGraph:g}=Ge(e,u,c);for(let m of Je(i,n,l,g))a.push(m)}return a.sort((i,s)=>s.subUnits.length-i.subUnits.length||i.boundary.localeCompare(s.boundary))}function Ge(e,r,t){let n=new Set(r),o=new Map,a=new Map;for(let i of r)a.set(t(i),new Set);for(let i of r)for(let s of e.get(i)??[]){if(!n.has(s))continue;let c=t(i),u=t(s);if(c===u)continue;let l=E(c,u),g=o.get(l);g||(g={from:c,to:u,fileEdges:[]},o.set(l,g)),g.fileEdges.push({fromFile:i,toFile:s}),a.get(c).add(u)}return{edges:o,subGraph:a}}function Je(e,r,t,n){let o=[],{components:a}=R(n);for(let i of a){if(i.length<2)continue;let s=new Set(i),c=[...t.values()].filter(l=>s.has(l.from)&&s.has(l.to)).map(l=>({from:l.from,to:l.to,fileEdgeCount:l.fileEdges.length,examples:l.fileEdges.slice(0,5)})).sort((l,g)=>l.from.localeCompare(g.from)||l.to.localeCompare(g.to)),u=Math.min(...c.map(l=>l.fileEdgeCount));o.push({boundary:e,violatesPolicy:r,subUnits:[...i].sort(),internalEdges:c,narrowestEdges:c.filter(l=>l.fileEdgeCount===u)})}return o}function _e(e,r,t){let n=new Set(r.map(s=>E(s.from,s.to))),o=e.allowedDependencies??{},a=new Set(e.boundaries.map(s=>s.name)),i=[];for(let[s,c]of Object.entries(o))if(t.get(s)?.size)for(let u of c)!a.has(u)||n.has(E(s,u))||i.push({from:s,to:u});return i.sort((s,c)=>s.from.localeCompare(c.from)||s.to.localeCompare(c.to))}function Ke(e,r,t){let n=[],o=new Map;for(let a of r)o.set(a.from,(o.get(a.from)??0)+1);for(let a of e.boundaries){oe(n,a.name,"fan-out",o.get(a.name)??0,e.maxBoundaryFanOut);let i=a.maxFiles??e.maxBoundaryFiles;oe(n,a.name,"files",t.get(a.name)?.size??0,i)}return n.sort((a,i)=>a.boundary.localeCompare(i.boundary)||a.kind.localeCompare(i.kind))}function Xe(e){let r=x(e);return r==="test"||r==="entry"}function Qe(e){let r=e.lastIndexOf("/");return r===-1?".":e.slice(0,r)}function E(e,r){return`${e}\0${r}`}function Ye(e,r){return e.from.localeCompare(r.from)||e.to.localeCompare(r.to)}function Ze(e,r){let t=new Set(ie(e,[]).filter(a=>x(a)==="test"||/(^|\/)(fixtures|benchmarks)(\/|$)/.test(a)||(r?.testPaths??[]).some(i=>A(i,a)))),n=new Map,o=0;for(let[a,i]of e){let s=new Set;for(let c of i)t.has(a)||t.has(c)?o++:s.add(c);n.set(a,s)}return{graph:n,excludedTestEdges:o}}function re(e,r,t){let n=new Map;for(let[o,a]of e){let i=r.get(o);if(i)for(let s of a){let c=r.get(s);if(!c||i===c)continue;let u=E(i,c),l=n.get(u);l||(l={from:i,to:c,fileEdges:[],importers:new Set,importedFiles:new Set},n.set(u,l)),l.fileEdges.push({fromFile:o,toFile:s}),l.importers.add(o),l.importedFiles.add(s)}}return[...n.values()].map(o=>ze(o,t)).sort(Ye)}function et(e){return e.requireCompletePolicy===!0||e.requireCompleteCoverage===!0||e.requireAcyclic===!0||e.requireResolvedBoundaries===!0||e.requireMinimalPolicy===!0}function oe(e,r,t,n,o){o!==void 0&&n>o&&e.push({boundary:r,kind:t,observed:n,limit:o})}export{j as a,K as b,Z as c,ve as d,y as e,ke as f,Tt as g,qt as h,Dt as i,Ne as j};
|
|
2
|
+
//# sourceMappingURL=chunk-ETOIKRHO.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import{$b as y,Fb as g,Hb as E,Na as b,Ob as s,Sb as h,Tb as S,nb as x,ub as w}from"./chunk-JYWEX7RR.js";import{Aa as O,_ as v}from"./chunk-OZCJXZK6.js";var be={defaultRole:"repository-observation"};function xe(e,n=[]){return{defaultRole:e,...n.length>0?{rules:n}:{}}}function I(e,n){for(let t of e.rules??[]){if(t.when.kind==="option-present"){let r=n.options[t.when.name];if(r!==void 0&&r!==!1)return t.role;continue}if((t.when.kind==="argument"?n.args[t.when.index]:n.options[t.when.name])===t.when.equals)return t.role}return e.defaultRole}function we(e){return[...new Set([e.defaultRole,...(e.rules??[]).map(n=>n.role)])]}function V(e){return e==="repository-observation"||e==="repository-preview"||e==="composite"}import{AsyncLocalStorage as z}from"async_hooks";var q=1,F=1;var $={policyId:"scip-query:unresolved-repository-policy",policyVersion:F,permission:"not-established",reasons:["No repository action policy was supplied for this claim."]};function k(e){return{schemaVersion:q,origin:e.contract.origin,coverage:W(e.coverage),producerValidation:e.contract.producerValidation,stateAuthority:b(e.receipt,e.receipt),repositoryPolicy:e.repositoryPolicy??$,...e.contract.families?{families:e.contract.families}:{}}}function W(e){return e?e.complete===!0?{state:"complete",returned:e.returned,totalKnown:!0,total:e.total??e.returned,omitted:0}:e.totalKnown?{state:"partial",returned:e.returned,totalKnown:!0,...e.total===void 0?{}:{total:e.total},...e.omitted===void 0?{}:{omitted:e.omitted}}:{state:"unknown",returned:e.returned,totalKnown:!1}:{state:"unknown",returned:0,totalKnown:!1}}var G="scip-query-result";var Y=1,X=1,A=1,N=1;function _(e){let n=e.resultSchemaVersion??X;if(!O(n))throw new Error("CLI result schema version must be a positive safe integer.");let{producerVersion:t,...o}=e;return{kind:G,schemaVersion:Y,producer:{name:"scip-query",version:t},resultSchemaVersion:n,...o}}function L(e,n){return JSON.stringify(e,null,n?0:2)}var M=Symbol("option-value-source"),P=new Map,T=new Map,D=new Map,B=new z;function je(e,n){return B.run(e,n)}function He(e){P=new Map(e)}function Qe(e){T=new Map(e)}function Ke(e){D=new Map(e)}function m(e){return(...n)=>{let{args:t,opts:o}=H(n);w(r=>{y(r.generation.identity),e({db:r,args:t,opts:o})})}}function R(e,n){return m(t=>{let o=S(t.db,e,d(t.opts,"full"),{quiet:d(t.opts,"json")});n({...t,budget:o})})}function Ue(e){return m(n=>c(n,e,{kind:"list"}))}function qe(e){return m(n=>c(n,e,{kind:"table",headers:e.headers,dashWidths:e.dashWidths}))}function Fe(e){return m(n=>c(n,e,{kind:"grouped",key:e.key}))}function Z(e){return m(n=>C(n,e))}function $e(e){return Z({commandName:e.commandName,query:e.query,emptyMessage:e.emptyMessage,heuristicLabel:e.heuristicLabel,before:e.before,render:(n,t)=>s.sectionedReport(e.sections(n,t)),toJson:e.toJson,coverage:e.coverage,agentResult:e.agentResult,after:e.after})}function We(e,n,t){return(...o)=>{let{args:r,opts:i}=H(o),a=n({args:r,opts:i});if(!a)return t(...o);y(a.generationIdentity);let u={args:r,opts:i,observationReceipt:a.observationReceipt};C(u,{commandName:e.commandName,query:()=>a.result,emptyMessage:e.emptyMessage,heuristicLabel:e.heuristicLabel,before:e.before,render:(p,l)=>s.sectionedReport(e.sections(p,l)),toJson:e.toJson,coverage:e.coverage,agentResult:e.agentResult,after:e.after})}}function ee(e,n){return R(e,t=>C(t,{...n,commandName:n.commandName??e}))}function Ge(e,n){return ee(e,{commandName:n.commandName??e,query:n.query,emptyMessage:n.emptyMessage,heuristicLabel:n.heuristicLabel,before:n.before,render:(t,o)=>s.sectionedReport(n.sections(t,o)),toJson:n.toJson,coverage:n.coverage,agentResult:n.agentResult,after:n.after})}function Ye(e,n){return R(e,t=>c(t,{...n,commandName:e},{kind:"list"}))}function Xe(e,n){return R(e,t=>c(t,{...n,commandName:e},{kind:"table",headers:n.headers,dashWidths:n.dashWidths}))}function ze(e,n){return String(e[n])}function Ze(e,n){let t=e[n];return typeof t=="string"?[t]:Array.isArray(t)&&t.every(o=>typeof o=="string")?t:[]}function en(e,n){let t=e[n];return typeof t=="string"?t:void 0}function nn(e,n){let t=e[n];return typeof t=="string"?t:void 0}function j(e,n){let t=e[n];return typeof t=="number"?t:void 0}function d(e,n){return!!e[n]}function tn(e,n){let t=e[n];return Array.isArray(t)&&t.every(o=>typeof o=="string")?t:[]}function on(e,n,t){return j(e,n)??t}function rn(e,n,t){let o=j(e,n),r=o!==void 0&&ne(e,n)!=="default";if(d(e,"full")){if(r)throw new Error("--full cannot be combined with --limit. Use --full for all findings, or --limit N for a capped report.");return Number.MAX_SAFE_INTEGER}return o??t}function ne(e,n){return e[M]?.(n)}function c(e,n,t){C(e,{commandName:n.commandName,query:n.query,emptyMessage:(o,r)=>o.length===0&&n.emptyMessage?n.emptyMessage(r):void 0,heuristicLabel:n.heuristicLabel,render:(o,r)=>{t.kind==="list"?s.list(o,i=>n.format(i,r)):t.kind==="table"?s.table(t.headers,o.map(i=>n.format(i,r)),t.dashWidths):s.groupedByFile(o,i=>n.format(i,r),t.key?i=>t.key(i,r):void 0)},toJson:n.toJson,coverage:n.coverage,agentResult:n.agentResult,before:n.before,after:n.after})}function C(e,n){let t=n.query(e);if(d(e.opts,"json")){if(!n.commandName)throw new Error("JSON output requires a command name so its result contract can be identified.");se(n.commandName,e.args,e.opts,n.toJson?n.toJson(t,e):t,{analysisBudget:te(e),coverage:n.coverage?.(t,e),agentResult:n.agentResult?.(t,e),observationReceipt:e.observationReceipt});return}let o=n.emptyMessage?.(t,e);if(o){s.empty(o);return}n.heuristicLabel&&h(n.heuristicLabel),n.before?.(t,e),n.render(t,e),n.after?.(t,e)}function te(e){return e.budget?.analysisBudget}function oe(e,n,t,o){let r=n?I(n.operation,{args:t,options:o}):void 0,i=B.getStore();if(i!==void 0&&r!==void 0&&i!==r)throw new Error(`Command ${e} changed operation role during execution: selected ${i}, rendered ${r}.`);return i??r}function re(e,n,t){let o=ye(n),r=t.coverage??Ce(e,n,t.analysisBudget),i=r&&o&&!r.resolution?{...r,resolution:o}:r;return i&&ue(i),i}function ie(e,n,t){return t&&n.agentResult!==void 0?n.agentResult:Object.hasOwn(n,"resultOnly")?n.resultOnly:e}function ae(e,n,t){return{...e?{operationRole:e}:{},...n?{evidence:n}:{},...t?{analysisBudget:t}:{}}}function se(e,n,t,o,r={}){let i=P.get(e),a=T.get(e),u=D.get(e),p=oe(e,a,n,t),l=re(a,o,r),f=d(t,"agentOutput"),Q=f&&r.agentResult!==void 0?r.agentResult:o;if(d(t,"resultOnly")){let U=ie(o,r,f);g(JSON.stringify(U,null,d(t,"compact")?0:2));return}let K=_({producerVersion:v,command:e,...ae(p,i,r.analysisBudget),args:Re(n),options:t,result:Q,...f?{resultProjection:"agent"}:{},...l?{coverage:l}:{},...r.agentResult!==void 0&&!f?{agentResult:r.agentResult}:{},...de(p,i,r.analysisBudget,l,u,r.observationReceipt),...r.resultSchemaVersion===void 0?{}:{resultSchemaVersion:r.resultSchemaVersion}});g(L(K,d(t,"compact")))}function de(e,n,t,o,r,i){if(!e||!V(e))return{};let a=x(),u=Oe(i,a,r);return u?{evidenceContext:{schemaVersion:A,operationRole:e,receipt:u,analysisManifest:{schemaVersion:N,...n?{evidence:n}:{},...t?{analysisBudget:t}:{},...o?{coverage:o}:{},...r?{claimQualification:k({contract:r,receipt:u,...o?{coverage:o}:{}})}:{}}}}:{}}function ue(e){if(!Number.isSafeInteger(e.returned)||e.returned<0)throw new Error("Invocation coverage returned count must be a non-negative safe integer.");if(e.complete!==!0&&e.complete!==!1&&e.complete!==null)throw new Error("Invocation coverage complete must be true, false, or null.");e.complete===!0?le(e):e.totalKnown?me(e):ce(e),pe(e.continuation),e.resolution&&fe(e.resolution)}function le(e){if(!e.totalKnown)throw new Error("Complete invocation coverage must know its total.");if(!Number.isSafeInteger(e.total)||e.total!==e.returned)throw new Error("Complete invocation coverage total must equal returned.");if(e.omitted!==0)throw new Error("Complete invocation coverage cannot omit results.");if(e.omittedIdentities!==void 0)throw new Error("Complete invocation coverage cannot name omitted identities.");if(e.continuation!==void 0)throw new Error("Complete invocation coverage cannot provide a continuation.")}function me(e){if(e.complete!==!1)throw new Error("Known incomplete invocation coverage must set complete to false.");if(!Number.isSafeInteger(e.total)||e.total<e.returned)throw new Error("Known invocation coverage total must be a safe integer at least as large as returned.");let n=e.total-e.returned;if(e.omitted!==n)throw new Error("Known invocation coverage omitted count must equal total minus returned.");if(n===0)throw new Error("Known incomplete invocation coverage must omit at least one result.");if(e.omittedIdentities&&e.omittedIdentities.length!==n)throw new Error("Omitted identity count must equal the disclosed omitted count.")}function ce(e){if(e.total!==void 0||e.omitted!==void 0)throw new Error("Unknown invocation coverage cannot claim a total or omitted count.");if(e.omittedIdentities!==void 0)throw new Error("Unknown invocation coverage cannot claim omitted identities.")}function pe(e){if(e&&(e.cursor.length===0||e.indexGeneration.length===0))throw new Error("Invocation coverage continuation requires a cursor and index generation.")}function fe(e){if(!Number.isSafeInteger(e.totalCandidates)||e.totalCandidates<0)throw new Error("Invocation resolution candidate count must be a non-negative safe integer.");if(e.state==="exact"&&e.totalCandidates!==1)throw new Error("Exact invocation resolution must name exactly one candidate.");if(e.state==="missing"&&e.totalCandidates!==0)throw new Error("Missing invocation resolution cannot name candidates.");if(e.state==="ambiguous"&&e.totalCandidates<2)throw new Error("Ambiguous invocation resolution must name at least two candidates.")}function Ce(e,n,t){if(!e)return;let o=ge(e,n);return e.coverage==="complete"?{complete:!0,totalKnown:!0,returned:o,total:o,omitted:0}:e.coverage==="sampled"?{complete:!1,totalKnown:!1,returned:o}:e.coverage==="bounded"&&t?{complete:!1,totalKnown:!1,returned:o}:{complete:null,totalKnown:!1,returned:o}}function ge(e,n){let t=e.resultUnits??{kind:"report"};if(t.kind==="rows")return Array.isArray(n)?n.length:0;if(t.kind==="field"){if(!n||typeof n!="object")return 0;let o=n[t.field];return Array.isArray(o)?o.length:J(o)}return J(n)}function ye(e){if(!e||typeof e!="object"||Array.isArray(e))return;let n=e;if(n.matched===!1)return{state:"missing",totalCandidates:0};if(n.matched!==!0||!Number.isSafeInteger(n.totalMatches))return;let t=n.totalMatches;return t<=0?{state:"missing",totalCandidates:0}:t===1?{state:"exact",totalCandidates:t}:{state:"ambiguous",totalCandidates:t}}function Re(e){return e.filter(n=>typeof n=="string"||typeof n=="number"||typeof n=="boolean")}function H(e){if(e.length===0)return{args:[],opts:{}};let n=e[e.length-1];return{args:e.slice(0,-1),opts:ve(n)}}function ve(e){if(!e||typeof e!="object")return{};let n=e,t=typeof n.optsWithGlobals=="function"?n.optsWithGlobals.bind(n):typeof n.opts=="function"?n.opts.bind(n):null;if(t){let o=t();return!o||typeof o!="object"?{}:(typeof n.getOptionValueSource=="function"&&Object.defineProperty(o,M,{value:r=>n.getOptionValueSource(r),enumerable:!1}),o)}return e}function J(e){return e==null?0:1}function Oe(e,n,t){return e??(n?E({projectRoot:n.config.projectRoot,db:n,...t?{observedSourceKinds:t.observedSources}:{}}):void 0)}export{be as a,xe as b,I as c,we as d,je as e,He as f,Qe as g,Ke as h,m as i,R as j,Ue as k,qe as l,Fe as m,Z as n,$e as o,We as p,ee as q,Ge as r,Ye as s,Xe as t,ze as u,Ze as v,en as w,nn as x,j as y,d as z,tn as A,on as B,rn as C,ne as D,se as E,H as F,ve as G};
|
|
3
|
+
//# sourceMappingURL=chunk-EYK3ZAO2.js.map
|