scip-query 0.17.1 → 0.18.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 +24 -0
- package/README.md +2 -1
- package/dist/chunk-2GX3TNOW.js +38 -0
- package/dist/{chunk-Y4BBVPRK.js → chunk-35TZERMO.js} +2 -2
- package/dist/{chunk-PPAT3XUL.js → chunk-43QUXX3E.js} +2 -2
- package/dist/{chunk-O27267B6.js → chunk-45XOH33S.js} +2 -2
- package/dist/{chunk-SQJ72PQW.js → chunk-4MFMTEJ4.js} +5 -5
- package/dist/chunk-4XTPZ5CR.js +9 -0
- package/dist/chunk-6JSTKSZH.js +3 -0
- package/dist/{chunk-75H6GOND.js → chunk-7ROLM67J.js} +2 -2
- package/dist/{chunk-35DURZXI.js → chunk-ABDXTPCT.js} +2 -2
- package/dist/{chunk-HYRSGWFX.js → chunk-AV54WZUK.js} +2 -2
- package/dist/chunk-AWYKDRYV.js +2 -0
- package/dist/{chunk-O56VBJKB.js → chunk-BAMVG4WQ.js} +2 -2
- package/dist/{chunk-RPPV6Y4K.js → chunk-BECOMXAL.js} +2 -2
- package/dist/{chunk-W3HSUCRG.js → chunk-BJJHBKEC.js} +2 -2
- package/dist/{chunk-IZLWLO4X.js → chunk-D5F3IQYP.js} +2 -2
- package/dist/{chunk-2TM23JYJ.js → chunk-DDGO34I2.js} +2 -2
- package/dist/{chunk-G4IUQW27.js → chunk-DUKRAHV2.js} +2 -2
- package/dist/{chunk-MBDBNQBW.js → chunk-EJ65IVPV.js} +2 -2
- package/dist/{chunk-MON5XXTG.js → chunk-EMEXMHOP.js} +2 -2
- package/dist/{chunk-JYBP5ZIR.js → chunk-FMD46HAG.js} +2 -2
- package/dist/{chunk-WENI5ZDR.js → chunk-GTANVH72.js} +2 -2
- package/dist/{chunk-FZXN37RN.js → chunk-GWCW25ON.js} +2 -2
- package/dist/chunk-GWNE2WJN.js +3 -0
- package/dist/{chunk-CSMPXDYE.js → chunk-H4JNB7RT.js} +2 -2
- package/dist/{chunk-WGDIA2TU.js → chunk-HOZ3IXZ5.js} +2 -2
- package/dist/{chunk-OP5JXGDV.js → chunk-IG6X65MG.js} +2 -2
- package/dist/{chunk-KZ2LZBQT.js → chunk-IKMOYFUM.js} +2 -2
- package/dist/{chunk-HGO3D2JD.js → chunk-J7IMQRCU.js} +2 -2
- package/dist/{chunk-5N5ZC566.js → chunk-K65T4TJS.js} +2 -2
- package/dist/{chunk-BTYDBDX5.js → chunk-L2RE5P3X.js} +2 -2
- package/dist/{chunk-2DUWNJKE.js → chunk-L2TSLMPT.js} +2 -2
- package/dist/{chunk-OC7XDK62.js → chunk-LADYDOS5.js} +2 -2
- package/dist/{chunk-Y5BOEWAE.js → chunk-LL5NQB5V.js} +2 -2
- package/dist/{chunk-QYBCGCY5.js → chunk-MN54AGZ3.js} +2 -2
- package/dist/chunk-MNRKD3WP.js +18 -0
- package/dist/chunk-MPBN5DO4.js +2 -0
- package/dist/{chunk-IKAJI4SI.js → chunk-NQBMGFFD.js} +2 -2
- package/dist/{chunk-LG33DNTZ.js → chunk-NX2YAXVQ.js} +2 -2
- package/dist/{chunk-VDHEX6YO.js → chunk-O5A7BTMA.js} +2 -2
- package/dist/{chunk-OBPR6E5Z.js → chunk-O5Y3ISO3.js} +2 -2
- package/dist/{chunk-WT34AUWL.js → chunk-ODH4FT3P.js} +2 -2
- package/dist/{chunk-U3JW5AYG.js → chunk-OINSINYW.js} +2 -2
- package/dist/{chunk-FY6RCFDH.js → chunk-OM6JHEW3.js} +2 -2
- package/dist/{chunk-DQYG5JHT.js → chunk-OQFPCIXO.js} +2 -2
- package/dist/{chunk-BW4VDICR.js → chunk-OSBLECSI.js} +2 -2
- package/dist/{chunk-5QSMW5IO.js → chunk-OTTHMUMV.js} +2 -2
- package/dist/{chunk-W2I4QAW7.js → chunk-OUXPJ4H5.js} +2 -2
- package/dist/{chunk-BBTVIIOI.js → chunk-OWXNDSG3.js} +2 -2
- package/dist/{chunk-CKRVVBM6.js → chunk-P4L5QQT5.js} +2 -2
- package/dist/{chunk-E5HPTSRD.js → chunk-POGZSZPX.js} +2 -2
- package/dist/{chunk-V7MX6YUF.js → chunk-PV3GKBO5.js} +2 -2
- package/dist/{chunk-KWMRY4RN.js → chunk-PZV2PGBR.js} +3 -3
- package/dist/{chunk-KWQKWY6M.js → chunk-Q4UM4JJP.js} +2 -2
- package/dist/{chunk-7H37Z4UO.js → chunk-QPF7CS5W.js} +2 -2
- package/dist/chunk-R4VPIS4D.js +10 -0
- package/dist/{chunk-623AZLTE.js → chunk-RDX6WWHN.js} +2 -2
- package/dist/{chunk-HJYHSTCP.js → chunk-S43DIBME.js} +2 -2
- package/dist/chunk-SALRDXWM.js +121 -0
- package/dist/{chunk-PA2MQKXD.js → chunk-SUYCF4SX.js} +2 -2
- package/dist/{chunk-SSH2NPYS.js → chunk-SW7LKHRU.js} +2 -2
- package/dist/{chunk-HZVG4KID.js → chunk-SWJEREML.js} +2 -2
- package/dist/{chunk-TR7C5HOC.js → chunk-T4P27T6S.js} +2 -2
- package/dist/chunk-VQWDZ34M.js +928 -0
- package/dist/chunk-VXDMXZKC.js +5 -0
- package/dist/chunk-W3557RPL.js +3 -0
- package/dist/chunk-W3SKYOTF.js +2 -0
- package/dist/{chunk-UKUISUS6.js → chunk-XEEQX5X3.js} +2 -2
- package/dist/{chunk-7Z5UT44B.js → chunk-YMFHC5J2.js} +2 -2
- package/dist/cli.js +3 -1528
- package/dist/command-descriptors-AQWWJNTT.js +599 -0
- package/dist/direct-navigation-K3CTVVBU.js +3 -0
- package/dist/index.js +1 -1
- package/dist/postinstall.js +1 -1
- package/dist/queries/affected.js +1 -1
- package/dist/queries/bottlenecks.js +1 -1
- package/dist/queries/call-graph.js +1 -1
- package/dist/queries/change-surface.js +1 -1
- package/dist/queries/cleanup-plan.js +1 -1
- package/dist/queries/co-change.d.ts +2 -0
- package/dist/queries/co-change.js +1 -1
- package/dist/queries/code.js +1 -1
- package/dist/queries/complexity-hotspots.js +1 -1
- package/dist/queries/complexity.js +1 -1
- package/dist/queries/convergence.js +1 -1
- package/dist/queries/coupling.js +1 -1
- package/dist/queries/dataflow.js +1 -1
- package/dist/queries/dead.js +1 -1
- package/dist/queries/decorative-checkers.js +1 -1
- package/dist/queries/deps.js +1 -1
- package/dist/queries/diff-gate.js +1 -1
- package/dist/queries/diff-impact.js +1 -1
- package/dist/queries/doc-drift.js +1 -1
- package/dist/queries/drift.js +1 -1
- package/dist/queries/duplicate-bodies.js +1 -1
- package/dist/queries/extract-candidates.js +1 -1
- package/dist/queries/fan.js +1 -1
- package/dist/queries/health.js +1 -1
- package/dist/queries/hierarchy.js +1 -1
- package/dist/queries/hotspots.js +1 -1
- package/dist/queries/imports.js +1 -1
- package/dist/queries/incomplete-migration.js +1 -1
- package/dist/queries/index.js +1 -1
- package/dist/queries/isolated.js +1 -1
- package/dist/queries/locality-candidates.js +1 -1
- package/dist/queries/members.js +1 -1
- package/dist/queries/methods.js +1 -1
- package/dist/queries/not-implemented.js +1 -1
- package/dist/queries/outline.js +1 -1
- package/dist/queries/passthrough-candidates.js +1 -1
- package/dist/queries/plan-context.d.ts +2 -0
- package/dist/queries/plan-context.js +1 -1
- package/dist/queries/recent-duplicates.js +1 -1
- package/dist/queries/redundant-reexports.js +1 -1
- package/dist/queries/refs.js +1 -1
- package/dist/queries/self-audit.js +1 -1
- package/dist/queries/similar-signatures.js +1 -1
- package/dist/queries/similar.js +1 -1
- package/dist/queries/slice.js +1 -1
- package/dist/queries/stale-abstractions.js +1 -1
- package/dist/queries/surface.js +1 -1
- package/dist/queries/symbols.js +1 -1
- package/dist/queries/system.js +1 -1
- package/dist/queries/test-quality.js +1 -1
- package/dist/queries/trace.js +1 -1
- package/dist/queries/twin-ab.js +1 -1
- package/dist/queries/twin-drift.js +1 -1
- package/dist/queries/unused-imports.js +1 -1
- package/dist/queries/unused-params.js +1 -1
- package/dist/queries/wrapper-candidates.js +1 -1
- package/dist/reindex-worker.js +24 -24
- package/dist/reindex.js +36 -36
- package/dist/runtime.js +1 -1
- package/dist/watch-server.js +4 -4
- package/docs/COMMAND_REFERENCE.md +4 -1
- package/package.json +1 -1
- package/skills/_shared/SKILL.md +1 -1
- package/skills/scip-api-impact/SKILL.md +5 -1
- package/skills/scip-claim-audit/SKILL.md +1 -0
- package/skills/scip-cleanup-audit/SKILL.md +4 -0
- package/skills/scip-concrete-plan/SKILL.md +129 -48
- package/skills/scip-debug/SKILL.md +6 -1
- package/skills/scip-explore/SKILL.md +2 -1
- package/skills/scip-integrity-audit/SKILL.md +17 -0
- package/skills/scip-maintainability/SKILL.md +6 -1
- package/skills/scip-query/SKILL.md +3 -0
- package/skills/scip-root-cause/SKILL.md +150 -0
- package/skills/scip-root-cause/agents/openai.yaml +4 -0
- package/skills/scip-tla-model-system/SKILL.md +7 -9
- package/skills/scip-verify/SKILL.md +19 -2
- package/dist/chunk-2HCWAL42.js +0 -3
- package/dist/chunk-3YEBIYXL.js +0 -38
- package/dist/chunk-6TJERPN3.js +0 -2
- package/dist/chunk-E7BTIEAY.js +0 -2
- package/dist/chunk-EUMETOTD.js +0 -21
- package/dist/chunk-GRHA5NGF.js +0 -2
- package/dist/chunk-IHD2CHMX.js +0 -10
- package/dist/chunk-TFWDJDGO.js +0 -2
- package/dist/chunk-U267E6YN.js +0 -120
- package/dist/chunk-X566NT42.js +0 -9
|
@@ -44,6 +44,7 @@ Use this shortlist first. Open [`../_shared/SKILL.md`](../_shared/SKILL.md) only
|
|
|
44
44
|
3. Run every postcheck that matches the actual edit, not only the check you expected to need.
|
|
45
45
|
4. If `.scipquery.json` or suppressions changed, run `scip-query config-validate`.
|
|
46
46
|
5. Prefer fixing findings. Suppress only intentional design, compatibility shims, framework entry points, or accepted false positives with a specific reason.
|
|
47
|
+
6. A PASS ends scrutiny, so it must survive refutation first: construct the cheapest checks that could still break this diff and run them before claiming PASS. A FAIL needs no refutation — report it with the evidence.
|
|
47
48
|
|
|
48
49
|
## Flow
|
|
49
50
|
|
|
@@ -115,12 +116,24 @@ scip-query self-audit
|
|
|
115
116
|
|
|
116
117
|
This step is complete only when changed documentation and config surfaces are checked or explicitly out of scope.
|
|
117
118
|
|
|
119
|
+
### 6. Refute the PASS
|
|
120
|
+
|
|
121
|
+
A PASS is the verdict nobody re-checks — attack it before making it. Construct at least two refutation attempts and run the cheapest check that would expose each. Prefer executed probes (run the consumer's test, invoke the command, feed the edge input) over argued ones. Pick attacks that fit the diff:
|
|
122
|
+
|
|
123
|
+
- an unexercised consumer: a caller in `diff-impact` output whose tests did not run — run them, or trace the contract it depends on;
|
|
124
|
+
- an unexercised input: an edge the changed code newly handles or newly rejects — execute it;
|
|
125
|
+
- the intent gap: one case the stated goal implies that the diff does not visibly cover — find where it is handled or show it missing.
|
|
126
|
+
|
|
127
|
+
Record every attempt; an attempt that breaks the diff converts the verdict to FAIL with a finding, and the attempt stays in the record either way.
|
|
128
|
+
|
|
129
|
+
This step is complete only when every refutation attempt has an executed result.
|
|
130
|
+
|
|
118
131
|
## Report
|
|
119
132
|
|
|
120
133
|
End with:
|
|
121
134
|
|
|
122
135
|
```markdown
|
|
123
|
-
Verification: PASS/FAIL
|
|
136
|
+
Verification: PASS/FAIL — <n> postchecks, <m> refutation attempts, <k> broke
|
|
124
137
|
|
|
125
138
|
Environment:
|
|
126
139
|
|
|
@@ -144,11 +157,15 @@ Health/docs/config:
|
|
|
144
157
|
|
|
145
158
|
- <commands and results>
|
|
146
159
|
|
|
160
|
+
Refutation attempts:
|
|
161
|
+
|
|
162
|
+
- R1: <attack> → survived (evidence) | broke (finding)
|
|
163
|
+
|
|
147
164
|
Remaining risk:
|
|
148
165
|
|
|
149
166
|
- <accepted findings, unavailable capabilities, or checks not run>
|
|
150
167
|
```
|
|
151
168
|
|
|
152
|
-
Do not claim ready-to-ship unless freshness is `fresh` after the final edit
|
|
169
|
+
Do not claim ready-to-ship unless freshness is `fresh` after the final edit, diff-gate is passed or fully explained, and the PASS survived every refutation attempt.
|
|
153
170
|
|
|
154
171
|
- `dead`/`new-dead` correctly resolve `import type` consumers, tsconfig `paths` aliases, pnpm/npm/yarn workspace cross-package imports, and Vue `<script setup>` composables. The one residual gap is a same-named symbol reached only through a re-exporting barrel file in a workspace package; that shape self-labels `unconfirmed (cross-package ambiguous-name resolution gap)` in the finding — treat only that label as unconfirmed until `refs` agrees. See the Detector Reliability section in `../_shared/SKILL.md`.
|
package/dist/chunk-2HCWAL42.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{A as C,c as M,d as L,e as Q,g as I,h as E,i as K,n as y,o as d,r as b}from"./chunk-7XP7ZRSI.js";function se(e,n){return O(e,n).match}function O(e,n){let t=z(e,n.trim()).filter(r=>!e.isIgnored(r.relative_path));if(t.length>0)return S(e,t);let o=G(e,n);if(o&&!e.isIgnored(o.relative_path))return S(e,[o]);let i=W(e,n);return i.length>0?S(e,i):X(e,n)}function W(e,n){let t=N(n),o=x(t);if(!o)return[];let i=`%${o.path}%`,r=o.leaf;return j(e,i,r,t)}function j(e,n,t,o){let i=b([],[...q(e,n,t),...T(e,n,t)]).filter(r=>!e.isIgnored(r.relative_path)).filter(r=>f(r,o)>1);return i.sort((r,a)=>f(a,o)-f(r,o)||r.end_line-r.start_line-(a.end_line-a.start_line)||r.start_line-a.start_line||r.symbol.localeCompare(a.symbol)),i}function q(e,n,t){return y(e,{where:"d.relative_path LIKE ? AND (gs.display_name = ? OR gs.symbol LIKE ?)",params:[n,t,`%/${t}.%`]})}function T(e,n,t){return d(e,{where:"d.relative_path LIKE ? AND (gs.display_name = ? OR gs.symbol LIKE ?)",params:[n,t,`%/${t}.%`]})}function X(e,n){let t=N(n),o=P(n),i=V(e,o),r=ee(i,n,t).filter(s=>!e.isIgnored(s.relative_path));if(r.length>0)return S(e,r);let a=[];for(let s of i){if(e.isIgnored(s.relative_path))continue;let c=Y(s,n,t,o);c<=0||a.push({row:s,score:c})}return a.sort((s,c)=>c.score-s.score||s.row.end_line-s.row.start_line-(c.row.end_line-c.row.start_line)||s.row.relative_path.localeCompare(c.row.relative_path)||s.row.symbol.localeCompare(c.row.symbol)),S(e,a.map(s=>s.row))}function S(e,n){let t=n.map(i=>C(e,i)),o=t[0]??null;return{match:o,candidates:o?Z(t,o):[],total:t.length}}function Z(e,n){let t=new Set([`${n.symbolId}:${n.relativePath}:${n.startLine}`]),o=[];for(let i of e){let r=`${i.symbolId}:${i.relativePath}:${i.startLine}`;if(!t.has(r)&&(t.add(r),o.push({symbol:i.symbol,shortName:L(i.symbol),relativePath:i.relativePath,startLine:i.startLine}),o.length>=5))break}return o}function G(e,n){let t=n.match(/^(.+):(\d+)-(\d+)$/);if(!t)return;let[,o,i,r]=t,a=Math.max(0,parseInt(i,10)-1),s=Math.max(a,parseInt(r,10)-1);return H(e,o,a,s)??J(e,o,a,s)}function H(e,n,t,o){return y(e,{where:"d.relative_path LIKE ? AND der.start_line <= ? AND der.end_line >= ?",params:[`%${n}%`,t,o],orderBy:"(der.end_line - der.start_line) ASC",limit:1})[0]}function J(e,n,t,o){return d(e,{where:"d.relative_path LIKE ? AND c.start_line <= ? AND c.end_line >= ?",params:[`%${n}%`,t,o],orderBy:"(MAX(c.end_line) - MIN(c.start_line)) ASC",limit:1})[0]}function le(e,n){let t=z(e,n).find(o=>!e.isIgnored(o.relative_path));return t?C(e,t):null}function z(e,n){let t=y(e,{where:"gs.symbol = ?",params:[n],orderBy:"d.relative_path, der.start_line"}),o=t.length>0?[]:d(e,{where:"gs.symbol = ?",params:[n],orderBy:"d.relative_path, start_line"});return b(t,o)}function ce(e,n){if("symbol"in n&&"relativePath"in n)return n;let t=U(e,n.symbolId)[0];return t?C(e,t):null}function U(e,n){let t=y(e,{where:"gs.id = ?",params:[n],orderBy:"der.start_line, der.end_line"}),o=d(e,{where:"gs.id = ?",params:[n],orderBy:"start_line, end_line"});return b(t,o)}function V(e,n){let t=n.map(()=>"(gs.symbol LIKE ? OR d.relative_path LIKE ? OR COALESCE(gs.display_name, '') LIKE ?)"),o=n.flatMap(s=>{let c=`%${s}%`;return[c,c,c]}),i=t.join(`
|
|
2
|
-
AND `),r=y(e,{where:i,params:o,limit:200}),a=d(e,{where:i,params:o,limit:200});return b(r,a)}function Y(e,n,t,o){let i=n.trim(),r=t,a=r.replace(/\(\)$/,""),s=n.toLowerCase(),c=t.toLowerCase(),h=c.replace(/\(\)$/,""),k=e.symbol,v=L(e.symbol),g=Q(e.symbol),A=e.display_name??"",w=e.symbol.toLowerCase(),m=v.toLowerCase(),u=g.toLowerCase(),D=A.toLowerCase(),p=e.relative_path.toLowerCase(),F=/[/:.]/.test(t),$=x(t),_=$?.leaf.toLowerCase(),l=0;return(k===i||k===r)&&(l+=1150),(v===i||v===r)&&(l+=1100),A===a&&(l+=1180),g===a&&(l+=1160),(`${g}()`===i||`${g}()`===r)&&(l+=955),(w===s||w===c)&&(l+=1e3),(m===s||m===c)&&(l+=950),(p===s||p===c)&&(l+=925),(p.endsWith(`/${c}`)||p.endsWith(`/${s}`))&&(l+=875),D===h&&(l+=850),u===h&&(l+=825),(`${u}()`===s||`${u}()`===c)&&(l+=820),(m.endsWith(`:${c}`)||m.endsWith(`:${h}`)||m.endsWith(`:${h}()`))&&(l+=800),w.includes(c)&&(l+=120),m.includes(c)&&(l+=140),p.includes(c)&&(l+=140),D.includes(c)&&(l+=110),o.every(B=>{let R=B.toLowerCase();return w.includes(R)||m.includes(R)||p.includes(R)||D.includes(R)})&&(l+=100+o.length*15),$&&p.includes($.path.toLowerCase())&&(l+=360,_&&(u===_||`${u}()`===_||`${u}()`==`${_}()`)&&(l+=700),I(e.symbol)&&(l+=180)),E(e.symbol)&&u===h&&(l+=60),!F&&K(e.symbol)&&(l-=160),l-=Math.min(50,Math.max(0,e.end_line-e.start_line)),l}function x(e){let n=e.trim().replace(/\\/g,"/"),t=n.lastIndexOf("/");if(t<=0||t===n.length-1)return null;let o=n.slice(t+1).replace(/\(\)$/,"");return!o||o.includes(".")?null:{path:n.slice(0,t),leaf:o}}function N(e){return e.trim().replace(/\(\)$/,"").replace(/\(.*$/,"")}function P(e){let n=N(e),t=n.split(/[^A-Za-z0-9_]+/).map(o=>o.trim()).filter(o=>o.length>0);return t.length>0?[...new Set(t)]:[n]}function ee(e,n,t){let o=n.trim(),i=e.filter(r=>{let a=L(r.symbol),s=(r.display_name??"").trim();return r.symbol===o||a===o||a===t||s===o||s===t||`${s}()`===o||f(r,t)>1||r.relative_path===o});return i.length===0?[]:(i.sort((r,a)=>f(a,t)-f(r,t)||r.end_line-r.start_line-(a.end_line-a.start_line)||r.relative_path.localeCompare(a.relative_path)||r.symbol.localeCompare(a.symbol)),i)}function f(e,n){let t=x(n);if(!t)return 0;let o=e.relative_path.toLowerCase(),i=Q(e.symbol).toLowerCase(),r=t.path.toLowerCase(),a=t.leaf.toLowerCase();return o.includes(r)?i!==a?1:I(e.symbol)?M(e.symbol)===null?5:4:M(e.symbol)===null?3:2:0}export{se as a,O as b,le as c,ce as d};
|
|
3
|
-
//# sourceMappingURL=chunk-2HCWAL42.js.map
|
package/dist/chunk-3YEBIYXL.js
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import{b as ae,c as O,d as T,e as H,k as pe,l as be}from"./chunk-FY6RCFDH.js";import{d as le,e as me,f as $,g as de,i as ue,l as fe}from"./chunk-KWMRY4RN.js";import{D as ce,n as re,x as j}from"./chunk-SQJ72PQW.js";import{a as ne}from"./chunk-QEIGJJBC.js";import{d as ye,e as ge}from"./chunk-MTDBHTSF.js";import{e as P,g as te,s as oe,t as F,y as ie,z as se}from"./chunk-7XP7ZRSI.js";import{k as E,m as X,p as ee}from"./chunk-JLZUM476.js";import{B as w,c as Z}from"./chunk-TLTLJ4SW.js";import{a as Y}from"./chunk-64MNV6AB.js";import{c as V,d as z,g as B,h as x,j as Q,l as K,q,s as D,y as N}from"./chunk-M2TRDR25.js";function Mn(e,n,t={}){let o=Ce(e,[n],{additive:t.additive,semantic:t.semantic}),s=t.callableOnly?(o.get(n.symbolId)??[]).filter(a=>te(a.symbol)||a.source==="ast-callsite"):o.get(n.symbolId)??[];return typeof t.limit=="number"?s.slice(0,t.limit):s}function Se(e,n,t={}){let o=De(e)?ke(e,n,{semantic:t.semantic!==!1}):we(e).get(n.symbolId)??[];return typeof t.limit=="number"?o.slice(0,t.limit):o}var Le=z("caller-rows",{clearGroups:["whole-project"]}),_e=2e4;function De(e){return(e.get("SELECT COUNT(*) AS count FROM global_symbols")?.count??0)>_e}function we(e){return Le.get(e,()=>{let n=F(e),t=Ce(e,n),o=new Map;for(let i of n)o.set(i.symbol,i.symbolId);let s=new Map,a=new Map;for(let i of n){let l=t.get(i.symbolId);if(!(!l||l.length===0))for(let m of l){let c=o.get(m.symbol);if(c===void 0||c===i.symbolId)continue;let d=s.get(c);d||(d=[],s.set(c,d),a.set(c,new Set));let b=`${i.symbol}|${i.relativePath}`;a.get(c).has(b)||(a.get(c).add(b),d.push({symbol:i.symbol,file:i.relativePath,source:"caller-map-inversion"}))}}return s})}function ke(e,n,t){let o=[],s=new Set,a=l=>{if(l.symbol===n.symbol)return;let m=`${l.symbol}|${l.file}`;s.has(m)||(s.add(m),o.push(l))};for(let l of be(e,n))l.file!==n.relativePath&&a({symbol:l.enclosingSymbol??l.file,file:l.file,source:"resolved-reference"});let i=t.semantic?Ee(e,n):null;if(i)for(let l of ue(e,i)){if(l.file===n.relativePath||e.isIgnored(l.file))continue;let m=se(oe(e,l.file),l.line);a({symbol:m?.symbol??l.file,file:l.file,source:"semantic-reference"})}return o}function Ee(e,n){let t=ye().join(", "),o=ge().join(", ");return e.get(`SELECT
|
|
2
|
-
d.id AS documentId,
|
|
3
|
-
gs.id AS symbolId,
|
|
4
|
-
gs.symbol,
|
|
5
|
-
d.relative_path AS relativePath,
|
|
6
|
-
COALESCE(der.start_line, c.start_line) AS startLine,
|
|
7
|
-
COALESCE(der.end_line, c.end_line) AS endLine,
|
|
8
|
-
COALESCE(gs.display_name, '') AS leaf,
|
|
9
|
-
NULL AS parentTypeName,
|
|
10
|
-
CASE WHEN gs.kind IN (${t}) OR gs.symbol LIKE '%().' THEN 1 ELSE 0 END AS isFunctionLike,
|
|
11
|
-
CASE WHEN gs.kind IN (${o}) THEN 1 ELSE 0 END AS isTypeLike,
|
|
12
|
-
gs.kind AS kind,
|
|
13
|
-
gs.documentation AS documentation,
|
|
14
|
-
gs.enclosing_symbol AS enclosingSymbol
|
|
15
|
-
FROM global_symbols gs
|
|
16
|
-
LEFT JOIN defn_enclosing_ranges der ON der.symbol_id = gs.id
|
|
17
|
-
LEFT JOIN chunks c ON c.document_id = der.document_id
|
|
18
|
-
JOIN documents d ON d.id = COALESCE(der.document_id, c.document_id)
|
|
19
|
-
WHERE gs.id = ?
|
|
20
|
-
LIMIT 1`,n.symbolId)??null}function Ce(e,n,t={}){if(n.length===0)return new Map;let o=t.additive??!1,s=[],a=[];for(let d of n)w(d.relativePath)&&E(e,d.relativePath)!==null?s.push(d):a.push(d);let i=new Map,l=new Map,m=d=>{for(let[b,L]of d){let r=i.get(b);r||(r=[],i.set(b,r));let y=l.get(b);y||(y=new Set,l.set(b,y));for(let M of L){let S=`${M.symbol}|${M.chunkId}`;y.has(S)||(y.add(S),r.push(M))}}};s.length>0&&m(Oe(e,s)),t.semantic!==!1&&m(Be(ve(e,n)));let c=o?n:a;return c.length>0&&m($e(e,c)),i}function ve(e,n){let t=q(),o=new Map,s=de(e,n),a=[],i=[],l=0,m=0,c=0,d=0,b=0,L=0,r=0;for(let{definition:f,callees:u}of s.hits)b+=1,u.length>0&&(L+=1,r+=u.length,o.set(f.symbolId,u));let y=Ae(e,s.hits);if(y.entries.length>0&&D("semantic.callees.prefetch-cache-write",()=>K(e,y.entries),()=>({entries:y.entries.length,sourceMissing:y.sourceMissing,skippedUnsupportedLanguage:y.skippedUnsupportedLanguage})),D("semantic.callees.cache-scan",()=>{for(let[f,u]of me(s.misses)){if(!j(f)){t&&(l+=u.length);continue}let g=N(e,f);if(!g){t&&(m+=u.length),i.push(...u);continue}let k=x(e,f,g),R=Me(e,f);if(!R){i.push(...u);continue}let G=Q(e,f,k,R);for(let p of u){let h=G.get(p.symbol)??null;if(h!==null){let I=Ne(h);if(I){t&&(c+=1),I.length>0&&o.set(p.symbolId,I);continue}t&&(d+=1)}a.push({def:p,contentHash:k,depsDigest:R})}}},()=>({definitions:n.length,skippedUnsupportedLanguage:l,sourceMissing:m,cacheHits:c,parseFailures:d,misses:a.length,unkeyed:i.length,inMemoryHits:b,inMemoryRows:L,inMemoryCalleeCount:r,resultRows:o.size})),a.length===0&&i.length===0)return o;let M=[...i,...a.map(f=>f.def)],S=0,v=D("semantic.callees.compute-misses",()=>{let f=fe(e,M);return S=f.size,f},()=>({definitions:M.length,misses:a.length,unkeyed:i.length,rows:S}));for(let[f,u]of v)o.set(f,u);let C=a.filter(f=>$(e).capability("semantic-callees",f.def.relativePath).available).map(f=>({relativePath:f.def.relativePath,symbol:f.def.symbol,contentHash:f.contentHash,depsDigest:f.depsDigest,payload:JSON.stringify(v.get(f.def.symbolId)??[])}));return C.length>0?D("semantic.callees.cache-write",()=>K(e,C),()=>({entries:C.length})):D("semantic.callees.cache-write-skip",()=>{},()=>({reason:"provider-unavailable",misses:a.length})),o}function Ae(e,n){let t=[],o=new Map,s=0,a=0;for(let{definition:i,callees:l}of n){if(!j(i.relativePath)){a+=1;continue}if(!o.has(i.relativePath)){let c=N(e,i.relativePath),d=c?Me(e,i.relativePath):null;o.set(i.relativePath,c&&d?{contentHash:x(e,i.relativePath,c),depsDigest:d}:null)}let m=o.get(i.relativePath);if(!m){s+=1;continue}t.push({relativePath:i.relativePath,symbol:i.symbol,contentHash:m.contentHash,depsDigest:m.depsDigest,payload:JSON.stringify(l)})}return{entries:t,sourceMissing:s,skippedUnsupportedLanguage:a}}var xe="typescript-callees-v1";function Me(e,n){let t=j(n);if(t==="typescript")return ce(e,n,xe)?.key??null;let o=Fe(e,n);return t==="rust"?B(JSON.stringify({kind:"semantic-callees",language:t,engine:re(e.config.projectRoot),positionMapping:"nearby-leaf-v1",depsDigest:o})):o}function Ne(e){try{return JSON.parse(e)}catch{return null}}var Pe=V("semantic-deps-digest",{clearGroups:["whole-project","source-file"]});function Fe(e,n){return Pe.get(e,n,()=>{let o=[...ne(e).get(n)??[]].sort().map(s=>`${s}:${x(e,s,N(e,s))}`);return B(o.join("|"))})}function Oe(e,n){let t=new Map,o=Te(n,t),s=H(e);for(let[a,i]of o){let l=E(e,a);if(!l)continue;let m=ie(i);for(let c of l){let d=m.get(c.line);if(!d)continue;let b=He(e,a,s,c);b&&b.symbol!==d.symbol&&t.get(d.symbolId).push({symbol:b.symbol,file:b.file,chunkId:c.line,source:"ast-callsite"})}}return t}function Te(e,n){let t=new Map;for(let o of e){let s=t.get(o.relativePath);s?s.push(o):t.set(o.relativePath,[o]),n.set(o.symbolId,[])}for(let o of t.values())o.sort((s,a)=>s.endLine-s.startLine-(a.endLine-a.startLine));return t}function He(e,n,t,o){let s=O(n,t.get(o.calleeLeaf)??[]);if(s.length===0)return null;let a=je(e,n,s,o.calleeQualifier);return a||T(e,n,s,o.memberAccess)}function je(e,n,t,o){if(!o||w(n)!=="clojure")return null;let a=ee(e,n).filter(i=>i.kind==="namespace"&&i.localName===o&&i.sourcePath).map(i=>i.sourcePath);for(let i of a){let l=t.find(m=>Z(i,m.file));if(l)return l}return t.find(i=>/`([^`]+)`\//.exec(i.symbol)?.[1]===o)??null}function $e(e,n){if(n.length===0)return new Map;let o=J(n.map(r=>r.documentId)).flatMap(r=>e.all(`SELECT c.document_id, c.id AS chunk_id, c.start_line, c.end_line, m.symbol_id
|
|
21
|
-
FROM mentions m
|
|
22
|
-
JOIN chunks c ON m.chunk_id = c.id
|
|
23
|
-
WHERE m.role != 1
|
|
24
|
-
AND c.document_id IN (${r.map(()=>"?").join(",")})`,...r)),s=new Map;for(let r of o)s.has(r.document_id)||s.set(r.document_id,[]),s.get(r.document_id).push(r);let i=J(o.map(r=>r.symbol_id)).flatMap(r=>e.all(`SELECT gs.id AS symbol_id, gs.symbol,
|
|
25
|
-
COALESCE(der.document_id, def_chunk.document_id) AS document_id
|
|
26
|
-
FROM global_symbols gs
|
|
27
|
-
LEFT JOIN defn_enclosing_ranges der ON der.symbol_id = gs.id
|
|
28
|
-
LEFT JOIN (
|
|
29
|
-
SELECT m.symbol_id, MIN(c.document_id) AS document_id
|
|
30
|
-
FROM mentions m
|
|
31
|
-
JOIN chunks c ON m.chunk_id = c.id
|
|
32
|
-
WHERE m.role = 1
|
|
33
|
-
AND m.symbol_id IN (${r.map(()=>"?").join(",")})
|
|
34
|
-
GROUP BY m.symbol_id
|
|
35
|
-
) def_chunk ON def_chunk.symbol_id = gs.id
|
|
36
|
-
WHERE gs.id IN (${r.map(()=>"?").join(",")})`,...r,...r)),l=J([...n.map(r=>r.documentId),...i.flatMap(r=>r.document_id===null?[]:[r.document_id])]),m=new Map(l.flatMap(r=>e.all(`SELECT id, relative_path FROM documents
|
|
37
|
-
WHERE id IN (${r.map(()=>"?").join(",")})`,...r).map(y=>[y.id,y.relative_path]))),c=new Map;for(let r of i)c.has(r.symbol_id)||c.set(r.symbol_id,{symbol:r.symbol,file:r.document_id!==null?m.get(r.document_id)??"":""});let d=new Map,b=m,L=Ge(n);for(let[r,y]of L){let S=[...s.get(r)??[]].sort((u,g)=>u.start_line-g.start_line||u.end_line-g.end_line),v=[...y].sort((u,g)=>u.startLine-g.startLine||u.endLine-g.endLine),C=new Set,f=0;for(let u of v){for(;f<S.length&&S[f].start_line<=u.endLine;)C.add(S[f]),f+=1;for(let p of C)p.end_line<u.startLine&&C.delete(p);let g=new Set,k=[],R=null,G=()=>{if(R)return R;let p=b.get(u.documentId)??"",h=new Set;if(p){let I=ae(e,p),A=Math.max(0,u.startLine),W=Math.min(I.length-1,u.endLine);for(let _=A;_<=W;_+=1)for(let Ie of I[_])h.add(Ie)}return R=h,h};for(let p of C){if(p.symbol_id===u.symbolId)continue;let h=c.get(p.symbol_id);if(!h)continue;if(!(p.start_line>=u.startLine&&p.end_line<=u.endLine)){if(!(p.start_line<=u.endLine&&p.end_line>=u.startLine))continue;let _=P(h.symbol);if(!_||!G().has(_))continue}let A=`${h.symbol}|${p.chunk_id}`;g.has(A)||(g.add(A),k.push({...h,chunkId:p.chunk_id,source:"scip-chunk"}))}d.set(u.symbolId,k)}}return d}var he=500;function J(e){let n=[...new Set(e)],t=[];for(let o=0;o<n.length;o+=he)t.push(n.slice(o,o+he));return t}function Ge(e){let n=new Map;for(let t of e){let o=n.get(t.documentId);o?o.push(t):n.set(t.documentId,[t])}return n}function Be(e){let n=new Map;for(let[t,o]of e){let s=[];for(let a of o)s.push({symbol:a.symbol,file:a.file,chunkId:-1,source:"semantic-callee"});n.set(t,s)}return n}function Re(e,n,t={}){let o=new Map;if(n&&n.length===0)return o;let s=Y(e,{includeIgnored:!1}),a=H(e),i=n??F(e),l=new Set(i.map(c=>c.symbolId)),m=Qe(i);if(Ke(e,o,s,a,l,m),Je(e,o,i,l),ze(e,o,s,a,l,m),t.semantic!==!1){let c=$(e);Ze(o,c.callerMap(Ye(i)))}return o}function Ke(e,n,t,o,s,a){for(let i of t){if(!w(i))continue;let l=E(e,i);if(l)for(let m of l){if(a&&!a.has(m.calleeLeaf))continue;let c=O(i,o.get(m.calleeLeaf)??[]);if(!c||c.length===0)continue;let d=T(e,i,c,m.memberAccess);d&&s.has(d.symbolId)&&d.file!==i&&U(n,d.symbolId,i)}}}function Je(e,n,t,o){let s=We(t);for(let a of Ue(e,o))e.isIgnored(a.relative_path)||Ve(a,s.get(a.symbol_id))||U(n,a.symbol_id,a.relative_path)}function Ue(e,n){return le(e,n?[...n]:void 0)}function We(e){let n=new Map;for(let t of e)n.set(t.symbolId,{docId:t.documentId,startLine:t.startLine,endLine:t.endLine});return n}function Ve(e,n){return!!n&&n.docId===e.document_id&&e.chunk_start>=n.startLine&&e.chunk_end<=n.endLine}function ze(e,n,t,o,s,a){for(let i of t){if(w(i)!=="rust")continue;let l=X(e,i,{includeRustAttributeNames:!0});if(l.length!==0)for(let{name:m}of l){if(a&&!a.has(m))continue;let c=o.get(m);if(c)for(let d of c)s.has(d.symbolId)&&d.file!==i&&U(n,d.symbolId,i)}}}function U(e,n,t){let o=e.get(n);o||(o=new Set,e.set(n,o)),o.add(t)}function Qe(e){let n=new Set;for(let t of e){let o="leaf"in t&&typeof t.leaf=="string"?t.leaf:"symbol"in t&&typeof t.symbol=="string"?P(t.symbol):"";o&&n.add(o)}return n.size>0?n:null}function Ye(e){return e.filter(n=>"relativePath"in n&&"symbol"in n&&"leaf"in n)}function Ze(e,n){for(let[t,o]of n){let s=e.get(t);s||(s=new Set,e.set(t,s));for(let a of o)s.add(a)}}function Pn(e,n,t={}){return Se(e,n,t)}function qe(e,n,t={}){return Re(e,n,t)}function Xe(e,n,t={}){return pe(e,n,t)}function Fn(e,n,t={}){let o=qe(e,n,{semantic:t.semantic});return t.sourceFallback===!1?o:en(o,Xe(e,n))}function en(e,n){let t=new Map;for(let[o,s]of e)t.set(o,new Set(s));for(let[o,s]of n){let a=t.get(o)??new Set;for(let i of s)a.add(i);t.set(o,a)}return t}export{Mn as a,Ce as b,Pn as c,qe as d,Xe as e,Fn as f,en as g};
|
|
38
|
-
//# sourceMappingURL=chunk-3YEBIYXL.js.map
|
package/dist/chunk-6TJERPN3.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as v}from"./chunk-FZXN37RN.js";import{a as j}from"./chunk-75H6GOND.js";import{a as w}from"./chunk-623AZLTE.js";import{a as p}from"./chunk-KWQKWY6M.js";import{a as H}from"./chunk-H4T2AST4.js";import{a as T}from"./chunk-G4IUQW27.js";import{a as P,b as A}from"./chunk-PA2MQKXD.js";import{b as D}from"./chunk-GRHA5NGF.js";import{a as S}from"./chunk-X566NT42.js";import{a as I}from"./chunk-PPAT3XUL.js";import{a as G}from"./chunk-IHD2CHMX.js";import{a as k}from"./chunk-IKAJI4SI.js";import{a as F}from"./chunk-MBDBNQBW.js";function X(t,e,n={}){let o=n.impactDepth??3,r=n.sliceDepth??3,l=n.semantic,s=!z(e),a=s?w(t,e,{semantic:l}):{definitions:[],referencedBy:[]},m=s?k(t,e,{semantic:l}):null,f=s?I(t,e,{semantic:l}):null,h=s?T(t,e,{semantic:l}):null,y=s?p(t,e,{direction:"backward",maxDepth:r,semantic:l}):null,R=s?p(t,e,{direction:"forward",maxDepth:r,semantic:l}):null,d=s?G(t,e,{maxDepth:o,scope:n.scope}):[],i=F(t,e,{semantic:l}),C=P(t,e),g=A(t,e),u=j(t,e),x=v(t,e),c={symbol:a.definitions.length>0||a.referencedBy.length>0||m!==null||f!==null||h!==null||y!==null||R!==null||d.length>0,file:i!==null||C.length>0||g.length>0,module:u.files.length>0||u.symbols.length>0||x.length>0},b=[];!c.symbol&&!c.file&&!c.module&&b.push("No symbol, file, or module matched target.");let B=i?.file??a.definitions[0]?.relativePath??null;return{target:e,matched:c,history:O(t,B),trace:a,callGraph:m,complexity:f,dataflow:h,backwardSlice:y,forwardSlice:R,affected:d,changeSurface:i,deps:C,rdeps:g,system:u,surface:x,warnings:b}}function O(t,e){let n={available:!1,file:e,churn:null,coChangePartners:[],suppressionsInFile:0};if(!e)return n;let o=S(t).fileChurn();if(!o)return n;let r=D(t,e,{limit:5});return{available:!0,file:e,churn:o.get(e)??{changes:0,fixChanges:0,lastChangedAt:0},coChangePartners:r.findings.map(l=>({file:l.fileA===e?l.fileB:l.fileA,together:l.together,confidence:l.confidence,subjectContext:l.subjectContext})),suppressionsInFile:H(t).byFile.get(e)??0}}function z(t){return t.includes("/")||t.includes("\\")||/\.[A-Za-z0-9]+(?::\d+(?:-\d+)?)?$/.test(t)}export{X as a};
|
|
2
|
-
//# sourceMappingURL=chunk-6TJERPN3.js.map
|
package/dist/chunk-E7BTIEAY.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{execFileSync as y}from"child_process";import{platform as G}from"os";var h=G()==="win32";function S(t){let e=h?"where":"which";try{return y(e,[t],{stdio:"pipe"}),!0}catch{return!1}}import{spawnSync as R}from"child_process";import{createHash as x}from"crypto";import{existsSync as b,lstatSync as w,realpathSync as v}from"fs";import{dirname as I,isAbsolute as E,join as W,resolve as d}from"path";var a={run(t,e){let r=l(t,e);return r.kind==="success"?r.output:void 0},runResult:l};function $(t,e=a){let r=C(t,e);if(r.kind!=="worktree")return;let o=r.identity,n=o.projectRoot,i=e.run(n,["rev-parse","--git-common-dir"])?.trim();if(!i)return;let s=u(p(n,i)),m=c(e.run(n,["rev-parse","--verify","HEAD"])),k=c(e.run(n,["rev-parse","--verify","HEAD^{tree}"])),f=e.run(n,["status","--porcelain=v1","-z","--untracked-files=all"]);if(f!==void 0)return{...o,commonDir:s,repositoryId:g("repository",s),headCommit:m,treeOid:k,clean:f.length===0}}function C(t,e=a){let r=e.runResult(t,["rev-parse","--show-toplevel"]);if(r.kind==="not-repository")return{kind:"non-git"};if(r.kind==="error")return r;let o=r.output.trim();if(!o)return{kind:"error",message:"Git returned an empty worktree root."};let n=u(o),i=e.run(n,["rev-parse","--absolute-git-dir"])?.trim();if(!i)return{kind:"error",message:"Git did not return an absolute worktree directory."};let s=u(p(n,i));return{kind:"worktree",identity:{projectRoot:n,gitDir:s,worktreeId:g("worktree",`${n}\0${s}`)}}}function H(t,e,r=a){return c(r.run(t,e))}function p(t,e){return E(e)?e:d(t,e)}function u(t){try{return v(t)}catch{return d(t)}}function g(t,e){return x("sha256").update(`${t}\0${e}`).digest("hex").slice(0,24)}function c(t){return t?.trim()||void 0}function l(t,e){let r=R("git",["-C",t,...e],{encoding:"utf-8",env:{...process.env,LC_ALL:"C"},maxBuffer:52428800,stdio:["ignore","pipe","pipe"]});if(r.status===0)return{kind:"success",output:r.stdout.trimEnd()};let n=(typeof r.stderr=="string"?r.stderr.trim():"")||r.error?.message||`git exited with status ${r.status??"unknown"}`,i=r.error?.code;return(/not a git repository/i.test(n)||i==="ENOENT"&&b(d(t)))&&!D(t)?{kind:"not-repository"}:{kind:"error",message:n}}function D(t){if(process.env.GIT_DIR||process.env.GIT_COMMON_DIR)return!0;let e=d(t);for(;;){try{return w(W(e,".git")),!0}catch(o){let n=o.code;if(n!=="ENOENT"&&n!=="ENOTDIR")return!0}let r=I(e);if(r===e)return!1;e=r}}export{S as a,$ as b,H as c,p as d,u as e};
|
|
2
|
-
//# sourceMappingURL=chunk-E7BTIEAY.js.map
|
package/dist/chunk-EUMETOTD.js
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import{a as B}from"./chunk-WXVGNFAO.js";import{a as _}from"./chunk-BTYDBDX5.js";import{e as N}from"./chunk-3YEBIYXL.js";import{j as M}from"./chunk-KWMRY4RN.js";import{d as R,g as y,i as F}from"./chunk-7XP7ZRSI.js";import{E as w}from"./chunk-TLTLJ4SW.js";import{execFileSync as g}from"child_process";import{existsSync as q,readFileSync as H}from"fs";import{basename as v}from"path";var J="Unable to compute git diff.";function Be(e,n={}){let i=n.plan??Z(e,n);return i.note?j(i.note,i.changedFileLines):i.changedFiles.length===0?V(i.changedFileLines):Y(i.changedFiles,[G(e,i.changedFiles,i.changedFiles,i.changedRanges)])}function Z(e,n={}){let{base:i="HEAD"}=n;try{let t=K(e.config.projectRoot,i),r=oe(e,t),o=se(e,Q(e.config.projectRoot,i));return{changedFileLines:t,changedFiles:r,changedRanges:o,renamedFiles:ne(e.config.projectRoot,i,r),note:t.length===0?"No changed files found.":void 0}}catch{return{changedFileLines:[],changedFiles:[],changedRanges:[],renamedFiles:[],note:J}}}function G(e,n,i,t=[]){let r=new _(e),o=new Set(i),s=B(t),a=[],l=new Map,d=n.flatMap(u=>r.definitionsForFile(u)).filter(Le),f=d.filter(u=>ce(u,s)),c=le(e,d,f,s),m=me([...f,...c.definitions]).sort((u,h)=>u.relativePath.localeCompare(h.relativePath)||u.startLine-h.startLine),p=m.map(u=>u.symbolId),C=ye(e,p),z=be(e,p,i),I=m.filter(u=>(C.get(u.symbolId)??0)===0),x=T(()=>M(e,I)),W=I.filter(u=>(x.get(u.symbolId)?.size??0)===0),U=T(()=>N(e,W));for(let u of m)he(e,u,o,a,l,x.get(u.symbolId)??new Set,U.get(u.symbolId)??new Set,C.get(u.symbolId)??0,z.get(u.symbolId)??new Set);return{changedSymbols:a,consumerEntries:[...l.entries()].map(([u,h])=>({file:u,symbols:[...h].sort()})),attributionNotes:c.notes}}function Y(e,n){let i=new Map,t=n.flatMap(s=>s.changedSymbols),r=n.flatMap(s=>s.attributionNotes??[]);for(let s of n)for(let a of s.consumerEntries){let l=i.get(a.file);l||(l=new Set,i.set(a.file,l));for(let d of a.symbols)l.add(d)}let o=Se(i);return{changedFiles:[...e],changedSymbols:t,affectedConsumers:o,attributionNotes:r,summary:{totalChangedFiles:e.length,totalChangedSymbols:t.length,totalAffectedFiles:o.length}}}function j(e,n=[]){return{changedFiles:n,changedSymbols:[],affectedConsumers:[],attributionNotes:[],summary:{totalChangedFiles:n.length,totalChangedSymbols:0,totalAffectedFiles:0,note:e}}}function V(e){return{changedFiles:e,changedSymbols:[],affectedConsumers:[],attributionNotes:[],summary:{totalChangedFiles:e.length,totalChangedSymbols:0,totalAffectedFiles:0,note:"Changed files are not present in the current SCIP index."}}}function K(e,n){let i=g("git",["diff","--name-only",n],{encoding:"utf-8",cwd:e,timeout:3e4,maxBuffer:67108864}),t=g("git",["diff","--name-only","--cached",n],{encoding:"utf-8",cwd:e,timeout:3e4,maxBuffer:64*1024*1024}),r=g("git",["ls-files","--others","--exclude-standard"],{encoding:"utf-8",cwd:e,timeout:3e4,maxBuffer:64*1024*1024});return[...new Set([i,t,r].flatMap(o=>o.split(`
|
|
2
|
-
`)).map(o=>o.trim()).filter(o=>o.length>0))]}function Q(e,n){let i=g("git",["diff","--unified=0",n],{encoding:"utf-8",cwd:e,timeout:3e4,maxBuffer:67108864}),t=g("git",["diff","--unified=0","--cached",n],{encoding:"utf-8",cwd:e,timeout:3e4,maxBuffer:64*1024*1024});return O([...E(i),...E(t)])}function L(e,n,i){try{return g("git",["show",`${n}:./${i}`],{encoding:"utf-8",cwd:e,timeout:1e4,stdio:["ignore","pipe","ignore"]})}catch{return null}}function ve(e,n,i=[]){let t=X(e,n,i);return r=>(t.has(r)||t.set(r,L(e,n,r)),t.get(r)??null)}function Ae(e,n=e.changedFiles){let i=new Map(e.renamedFiles.map(t=>[t.to,t.from]));return[...new Set(n.map(t=>i.get(t)??t))]}function X(e,n,i){let t=[...new Set(i)],r=new Map;if(t.length===0)return r;try{let o=t.map(a=>`${n}:./${a}
|
|
3
|
-
`).join(""),s=g("git",["cat-file","--batch"],{cwd:e,input:o,maxBuffer:256*1024*1024,timeout:1e4,stdio:["pipe","pipe","ignore"]});return ee(s,t)}catch{for(let o of t)r.set(o,L(e,n,o));return r}}function ee(e,n){let i=new Map,t=0;for(let r of n){let o=e.indexOf(10,t);if(o<0)throw new Error("git cat-file batch output ended before object header");let s=e.subarray(t,o).toString("utf-8");if(t=o+1,s.endsWith(" missing")){i.set(r,null);continue}let a=/^[0-9a-f]+ ([^ ]+) (\d+)$/.exec(s);if(!a)throw new Error(`unexpected git cat-file batch header: ${s}`);let[,l,d]=a,f=Number(d);if(!Number.isFinite(f)||f<0)throw new Error(`unexpected git cat-file batch size: ${s}`);if(t+f>e.length)throw new Error("git cat-file batch output ended before blob payload");let c=e.subarray(t,t+f);i.set(r,l==="blob"?c.toString("utf-8"):null),t+=f,e[t]===10&&(t+=1)}return i}function ne(e,n,i){if(i.length===0)return[];let t=new Map,r=new Set;for(let s of ie(e,n))i.includes(s.to)&&(t.set(s.to,s),r.add(s.from));let o=te(e,n);if(o.length===0)return[...t.values()].sort((s,a)=>s.to.localeCompare(a.to));for(let s of i){if(t.has(s)||!q(`${e}/${s}`))continue;let a=o.filter(f=>!r.has(f)).filter(f=>v(f)===v(s));if(a.length===0)continue;let l=H(`${e}/${s}`,"utf-8"),d=a.map(f=>({from:f,to:s,similarity:re(L(e,n,f)??"",l)})).sort((f,c)=>c.similarity-f.similarity)[0];d&&d.similarity>=.45&&(t.set(s,d),r.add(d.from))}return[...t.values()].sort((s,a)=>s.to.localeCompare(a.to))}function te(e,n){let i=g("git",["diff","--name-only","--diff-filter=D",n],{encoding:"utf-8",cwd:e,timeout:3e4,maxBuffer:67108864}),t=g("git",["diff","--name-only","--diff-filter=D","--cached",n],{encoding:"utf-8",cwd:e,timeout:3e4,maxBuffer:64*1024*1024});return[...new Set([...P(i),...P(t)])]}function ie(e,n){let i=g("git",["diff","--name-status","--find-renames",n],{encoding:"utf-8",cwd:e,timeout:3e4,maxBuffer:67108864}),t=g("git",["diff","--name-status","--find-renames","--cached",n],{encoding:"utf-8",cwd:e,timeout:3e4,maxBuffer:64*1024*1024});return[...i.split(`
|
|
4
|
-
`),...t.split(`
|
|
5
|
-
`)].map(r=>r.trim()).filter(r=>r.startsWith("R")).map(r=>r.split(" ")).filter(r=>r.length>=3).map(([r,o,s])=>({from:o,to:s,similarity:Number(r.slice(1))/100}))}function re(e,n){let i=new Set(A(e)),t=new Set(A(n));if(i.size===0&&t.size===0)return 1;if(i.size===0||t.size===0)return 0;let r=0;for(let o of i)t.has(o)&&(r+=1);return 2*r/(i.size+t.size)}function A(e){return e.match(/[A-Za-z_$][\w$]*|[{}()[\].,]/g)??[]}function P(e){return e.split(`
|
|
6
|
-
`).map(n=>n.trim()).filter(n=>n.length>0)}function oe(e,n){let i=$(e),t=[];for(let r of n){let o=i(r);o&&!e.isIgnored(o)&&t.push(o)}return t}function se(e,n){let i=$(e),t=[];for(let r of n){let o=i(r.file);o&&!e.isIgnored(o)&&t.push({...r,file:o})}return O(t)}function $(e){let n=e.all(`SELECT relative_path FROM documents
|
|
7
|
-
ORDER BY id`).map(t=>t.relative_path),i=new Map(n.map(t=>[t,t]));return t=>{let r=t.replace(/\\/g,"/"),o=i.get(r);return o||(n.find(s=>s.endsWith(r))??null)}}function E(e){let n=[],i=null;for(let t of e.split(`
|
|
8
|
-
`)){if(t.startsWith("+++ ")){i=ae(t.slice(4).trim());continue}if(!i||!t.startsWith("@@ "))continue;let r=/@@ -\d+(?:,\d+)? \+(\d+)(?:,(\d+))? @@/.exec(t);if(!r)continue;let o=Math.max(0,Number(r[1])-1),s=r[2]===void 0?1:Number(r[2]);n.push({file:i,startLine:o,endLine:Math.max(o,o+Math.max(s,1)-1)})}return n}function ae(e){return e==="/dev/null"?null:e.startsWith("a/")||e.startsWith("b/")?e.slice(2):e}function O(e){let n=new Set,i=[];for(let t of e){let r=`${t.file}:${t.startLine}:${t.endLine}`;n.has(r)||(n.add(r),i.push(t))}return i}function ce(e,n){let i=n.get(e.relativePath);return!i||i.length===0?!0:i.some(t=>D(e.startLine,e.endLine,t.startLine,t.endLine))}function fe(e,n,i){let t=new Map,r=[],o=k(e),s=ge(i);for(let a of n){let l=o.get(a.file)??[];if(l.some(c=>D(c.startLine,c.endLine,a.startLine,a.endLine)))continue;let d=s.get(a.file)??[],f=pe(d,a);if(f){let c=l.find(m=>m.startLine>=f.startLine&&m.startLine<=f.endLine);if(c){t.set(c.symbolId,c),r.push(b(a,"ast-widened"));continue}}if(d.length===0){let c=[...l].filter(m=>m.startLine<=a.startLine).sort((m,p)=>p.startLine-m.startLine||m.endLine-p.endLine)[0];if(c){t.set(c.symbolId,c),r.push(b(a,"nearest-preceding"));continue}}r.push(b(a,"unattributed"))}return{definitions:[...t.values()],notes:r}}function le(e,n,i,t){let r=k(i),o=[],s=[],a=[...new Set(n.map(l=>l.relativePath))];for(let l of a){let d=t.get(l)??[];if(d.length===0)continue;let f=r.get(l)??[];for(let c of d)f.some(m=>D(m.startLine,m.endLine,c.startLine,c.endLine))||o.push(c);o.some(c=>c.file===l)&&s.push(...de(e,l))}return fe(n,o,s)}function de(e,n){let i=w(e,n);return i?i.rootNode.namedChildren.filter(ue).map(t=>({file:n,startLine:t.startPosition.row,endLine:t.endPosition.row})).filter(t=>t.endLine>=t.startLine):[]}function ue(e){return e.endPosition.row<e.startPosition.row?!1:!new Set(["import_statement","comment"]).has(e.type)}function me(e){let n=new Map;for(let i of e)n.set(i.symbolId,i);return[...n.values()]}function k(e){let n=new Map;for(let i of e){let t=n.get(i.relativePath)??[];t.push(i),n.set(i.relativePath,t)}return n}function ge(e){let n=new Map;for(let i of e){let t=n.get(i.file)??[];t.push(i),n.set(i.file,t)}return n}function pe(e,n){return e.filter(i=>i.startLine<=n.startLine&&i.endLine>=n.endLine).sort((i,t)=>i.endLine-i.startLine-(t.endLine-t.startLine))[0]}function b(e,n){return{file:e.file,startLine:e.startLine,endLine:e.endLine,method:n}}function D(e,n,i,t){return e<=t&&i<=n}function he(e,n,i,t,r,o,s,a,l){let d=Math.max(a,o.size,s.size);if(!De(n,d))return;let f=R(n.symbol);t.push({symbol:n.symbol,shortName:f,file:n.relativePath,startLine:n.startLine,endLine:n.endLine,fanIn:d});for(let c of l)S(e,i,r,c,f);for(let c of o)S(e,i,r,c,f);for(let c of s)S(e,i,r,c,f)}function T(e){try{return e()}catch(n){return console.error(`warning: diff-impact enrichment scan failed, continuing without it: ${n instanceof Error?n.message:n}`),new Map}}function ye(e,n){if(n.length===0)return new Map;let i=e.all(`SELECT m.symbol_id, COUNT(DISTINCT c.document_id) AS fan_in
|
|
9
|
-
FROM mentions m
|
|
10
|
-
JOIN chunks c ON m.chunk_id = c.id
|
|
11
|
-
WHERE m.symbol_id IN (${n.map(()=>"?").join(",")})
|
|
12
|
-
AND m.role != 1
|
|
13
|
-
GROUP BY m.symbol_id`,...n);return new Map(i.map(t=>[t.symbol_id,t.fan_in]))}function be(e,n,i){if(n.length===0||i.length===0)return new Map;let t=e.all(`SELECT DISTINCT m.symbol_id, ref_d.relative_path
|
|
14
|
-
FROM mentions m
|
|
15
|
-
JOIN chunks c ON m.chunk_id = c.id
|
|
16
|
-
JOIN documents ref_d ON c.document_id = ref_d.id
|
|
17
|
-
WHERE m.symbol_id IN (${n.map(()=>"?").join(",")})
|
|
18
|
-
AND m.role != 1
|
|
19
|
-
AND ref_d.relative_path NOT IN (${i.map(()=>"?").join(",")})
|
|
20
|
-
${e.pathExclusionsFor("ref_d")}`,...n,...i),r=new Map;for(let o of t){let s=r.get(o.symbol_id);s||(s=new Set,r.set(o.symbol_id,s)),s.add(o.relative_path)}return r}function S(e,n,i,t,r){if(e.isIgnored(t)||n.has(t))return;let o=i.get(t);o||(o=new Set,i.set(t,o)),o.add(r)}function Se(e){return[...e.entries()].map(([n,i])=>({file:n,consumedSymbols:i.size})).sort((n,i)=>i.consumedSymbols-n.consumedSymbols)}function Le(e){return!(F(e.symbol)||e.parentTypeName!==null&&!y(e.symbol))}function De(e,n){return y(e.symbol)||e.isTypeLike?!0:e.parentTypeName===null&&n>0}export{J as a,Be as b,Z as c,G as d,Y as e,L as f,ve as g,Ae as h,X as i,fe as j};
|
|
21
|
-
//# sourceMappingURL=chunk-EUMETOTD.js.map
|
package/dist/chunk-GRHA5NGF.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as y}from"./chunk-X566NT42.js";import{b as u}from"./chunk-5CJ6AQN7.js";import{a as p}from"./chunk-QEIGJJBC.js";import{existsSync as v}from"fs";import{join as w}from"path";function ne(e){return b.test(e)}var b=/(?:^|\/)(?:package-lock\.json|pnpm-lock\.yaml|yarn\.lock|Cargo\.lock|uv\.lock|poetry\.lock|Pipfile\.lock|bun\.lockb?|\.SRCINFO|CHANGELOG(?:\.[a-z]+)?|.*\.(?:map|tsbuildinfo))$|(?:^|\/)(?:dist|build|out|node_modules|docs\/plans)\//i;function se(e,t,n={}){let{minTogether:s=4,minConfidence:o=.6,limit:r=30,maxFilesPerCommit:l=20}=n,g=y(e,{historyMode:n.historyMode}),a=g.commitHistory(),c=t!==void 0,d=g.coChangePairs({minTogether:c?Math.min(s,2):s,minConfidence:c?0:o,maxFilesPerCommit:l});if(!a||!d)return{available:!1,commitsAnalyzed:0,findings:[]};let f=typeof n.scanLimit=="number"?d.slice(0,n.scanLimit):d,E=p(e),R=k(e),j=F(e,E,R),L=n.includeLinked===!0||c,m=[];for(let i of f){if(b.test(i.fileA)||b.test(i.fileB)||!x(e,i.fileA)||!x(e,i.fileB)||c&&!i.fileA.includes(t)&&!i.fileB.includes(t)||!c&&(u(i.fileA)==="test"||u(i.fileB)==="test"||D(i.fileA,i.fileB)||N(i.fileA,i.fileB)))continue;let h=j(i.fileA,i.fileB);if(!L&&h)continue;let C=$(i.fileA,i.fileB),S=_(i,C,h);if(m.push({...i,structurallyLinked:h,partnerClass:C.partnerClass,partnerClassReasons:C.reasons,...S?{declaredCouplingSuggestion:S}:{}}),m.length>=r)break}return{available:!0,commitsAnalyzed:a.commits.length,findings:m}}function x(e,t){return v(w(e.config.projectRoot,t))}function $(e,t){let n=T(e),s=T(t),o=[],r=a=>{o.includes(a)||o.push(a)},l=(a,c)=>n.tags.has(a)&&s.tags.has(c)||n.tags.has(c)&&s.tags.has(a);if(l("doc","code"))return r("one side is documentation and the other is executable source"),{partnerClass:"doc-code",reasons:o};if(n.tags.has("test")||s.tags.has("test"))return r("one side is classified as a test file"),{partnerClass:"test-code",reasons:o};if(l("schema","script"))return r("schema or contract file changes with a script or generated-code path"),{partnerClass:"schema-script",reasons:o};if(l("model","view"))return r("model or state path changes with a view or component path"),{partnerClass:"model-view",reasons:o};if(l("config","code"))return r("configuration file changes with executable source"),{partnerClass:"config-code",reasons:o};let g=U(n.tokens,s.tokens).filter(a=>!J.has(a));return A(e,t)||g.length>=2?(r(A(e,t)?"both files live in the same directory":`files share feature tokens: ${g.slice(0,4).join(", ")}`),{partnerClass:"same-feature",reasons:o}):(r("no specific relationship pattern matched"),{partnerClass:"unknown",reasons:o})}function _(e,t,n){if(n||e.together<4||e.confidence<.75||e.commitScope==="broad-sweep"||e.recency==="stale"||!Z.has(t.partnerClass))return;let s=[e.fileA,e.fileB].sort();return{name:`co-change ${t.partnerClass}: ${V(s)}`,files:s,reason:`${t.partnerClass} pair changed together ${e.together}x with ${Math.round(e.confidence*100)}% confidence; declare it if future edits should require both sides.`}}function F(e,t=p(e),n=k(e)){return(s,o)=>B(t,n,s,o)}var I=/(?:^|\/)(?:locales|i18n)\//i;function P(e){return I.test(e)}function N(e,t){return P(e)&&P(t)?!0:O(e,t)}function O(e,t){if(!e.endsWith(".json")||!t.endsWith(".json"))return!1;let n=e.lastIndexOf("/"),s=t.lastIndexOf("/");if(n<0||s<0)return!1;let o=e.slice(0,n),r=t.slice(0,s);if(o===r)return!1;let l=e.slice(n+1),g=t.slice(s+1);if(l!==g)return!1;let a=o.lastIndexOf("/"),c=r.lastIndexOf("/"),d=a>=0?o.slice(0,a):"",f=c>=0?r.slice(0,c):"";return d===f}function D(e,t){let n=e.lastIndexOf("/"),s=t.lastIndexOf("/");if(e.slice(0,n)!==t.slice(0,s))return!1;let o=e.slice(n+1).split(".")[0],r=t.slice(s+1).split(".")[0];return o!==""&&o===r}function k(e){return(e.config.declaredCouplings??[]).filter(t=>Array.isArray(t.files)&&t.files.length>=2).map(t=>new Set(t.files))}function B(e,t,n,s){return e.get(n)?.has(s)===!0||e.get(s)?.has(n)===!0?!0:t.some(o=>o.has(n)&&o.has(s))}var M=/(?:^|\/)(?:readme|docs?|guides?|adr|architecture|design)(?:\/|$)|\.(?:md|mdx|rst|adoc|txt)$/i,z=/(?:^|\/)(?:\.[a-z0-9-]+rc|config|configs|settings|\.github)(?:\/|$)|(?:^|\/)(?:package\.json|tsconfig(?:\.[^.]+)?\.json|vite\.config\.[cm]?[jt]s|rollup\.config\.[cm]?[jt]s|eslint\.config\.[cm]?[jt]s)$|\.(?:json|ya?ml|toml|ini|env)$/i,G=/(?:^|\/)(?:schemas?|contracts?|migrations?|models?|types?)(?:\/|$)|(?:^|\/)[^/]*(?:schema|contract|migration|model|types?)[^/]*|(?:\.schema)?\.(?:graphql|gql|proto|prisma)$/i,H=/(?:^|\/)(?:scripts?|bin|tools?|tasks?|generators?|codegen|migrations?|seeds?)(?:\/|$)|(?:^|\/)[^/]*(?:generate|codegen|migrate|seed|script)[^/]*\.[cm]?[jt]s$/i,q=/(?:^|\/)(?:models?|entities|domain|state|stores?|reducers?)(?:\/|$)|(?:^|\/)[^/]*(?:model|entity|state|store|reducer|viewmodel)[^/]*\.[^.]+$/i,W=/(?:^|\/)(?:views?|pages?|components?|screens?|routes?|templates?)(?:\/|$)|(?:^|\/)[^/]*(?:view|page|component|screen|template)[^/]*\.[^.]+$|\.(?:vue|svelte|tsx|jsx)$/i,Z=new Set(["doc-code","config-code","schema-script","model-view","test-code"]),J=new Set(["src","lib","app","apps","packages","frontend","backend","examples","python","typescript","javascript","test","tests","spec","index","main","utils","util","types","type","config","docs","doc","package","requirements","ts","tsx","js","jsx","mjs","cjs","vue","py","md","mdx","json","yaml","yml","toml","txt"]);function T(e){let t=e.replace(/\\/g,"/"),n=new Set;return M.test(t)&&n.add("doc"),z.test(t)&&n.add("config"),G.test(t)&&n.add("schema"),H.test(t)&&n.add("script"),q.test(t)&&n.add("model"),W.test(t)&&n.add("view"),u(t)==="test"&&n.add("test"),!n.has("doc")&&!n.has("config")&&n.add("code"),{tags:n,tokens:K(t)}}function A(e,t){let n=e.lastIndexOf("/"),s=t.lastIndexOf("/"),o=n>=0?e.slice(0,n):"",r=s>=0?t.slice(0,s):"";return o!==""&&o===r}function K(e){return e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").split(/[^A-Za-z0-9]+/).map(t=>t.toLowerCase()).filter(t=>t.length>=2)}function U(e,t){let n=new Set(t);return[...new Set(e.filter(s=>n.has(s)))].sort()}function V(e){return e.map(t=>t.split("/").pop()?.replace(/\.[^.]+$/,"")||t).join(" + ")}export{ne as a,se as b,$ as c,_ as d,F as e};
|
|
2
|
-
//# sourceMappingURL=chunk-GRHA5NGF.js.map
|
package/dist/chunk-IHD2CHMX.js
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import{c as M}from"./chunk-3YEBIYXL.js";import{a as I,c as N}from"./chunk-2HCWAL42.js";import{d as b,f as p,s as g,z as S}from"./chunk-7XP7ZRSI.js";import{B as h}from"./chunk-TLTLJ4SW.js";function $(o,s,i={}){let{maxDepth:c=5,scope:a}=i,l=I(o,s);if(!l)return[];let u=[],f=new Set([l.symbolId]),m=new Set,t=[l];for(let e=1;e<=c&&t.length!==0;e++){let r=[];for(let y of t)for(let n of D(o,y,a)){let d=`${n.file}|${n.shortName}`;if(n.symbolId!==null){if(f.has(n.symbolId))continue;f.add(n.symbolId)}else if(m.has(d))continue;m.add(d),u.push({symbol:n.symbol,shortName:n.shortName,file:n.file,depth:e}),n.symbolId!==null&&n.symbolMatch&&r.push(n.symbolMatch)}t=r}return u.sort((e,r)=>e.depth-r.depth||e.file.localeCompare(r.file)),u}function D(o,s,i){let c=M(o,s,{limit:500}).filter(t=>!o.isIgnored(t.file)).filter(t=>!i||t.file.includes(i)),a=new Set(c.map(t=>t.file)),l=[];for(let t of _(o,s,i)){if(a.has(t))continue;let e=g(o,t),r=e.length>0?S(e,e[0].startLine):null;l.push({symbol:r?.symbol??t,file:t})}let u=[...c,...l],f=[],m=new Set;for(let t of u){let e=N(o,t.symbol);if(!e){let y=`${t.file}|${t.symbol}`;if(m.has(y))continue;m.add(y),f.push({symbolId:null,symbol:t.symbol,shortName:b(t.symbol),file:t.file,symbolMatch:null});continue}if(e.symbolId===s.symbolId||o.isIgnored(e.relativePath)||!w(e))continue;let r=`${e.symbolId}|${e.relativePath}`;m.has(r)||(m.add(r),f.push({symbolId:e.symbolId,symbol:e.symbol,shortName:b(e.symbol),file:e.relativePath,symbolMatch:e}))}return f}function _(o,s,i){let c=i?"AND consumer_d.relative_path LIKE ?":"",a=[s.symbolId,s.documentId];return i&&a.push(`%${i}%`),new Set(o.all(`SELECT DISTINCT consumer_d.relative_path
|
|
2
|
-
FROM mentions m
|
|
3
|
-
JOIN chunks c ON m.chunk_id = c.id
|
|
4
|
-
JOIN documents consumer_d ON consumer_d.id = c.document_id
|
|
5
|
-
WHERE m.symbol_id = ?
|
|
6
|
-
AND m.role != 1
|
|
7
|
-
AND c.document_id != ?
|
|
8
|
-
${o.pathExclusionsFor("consumer_d")}
|
|
9
|
-
${c}`,...a).map(l=>l.relative_path).filter(l=>!o.isIgnored(l)))}function w(o){if(o.symbol.startsWith("scip-clojure ")||h(o.relativePath)==="clojure")return!0;let s=p(o.symbol);return s==="method"||s==="type"||o.symbol.endsWith("().")}export{$ as a};
|
|
10
|
-
//# sourceMappingURL=chunk-IHD2CHMX.js.map
|
package/dist/chunk-TFWDJDGO.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{execFileSync as t}from"child_process";import{platform as l}from"os";var c=l()==="win32";function n(e){let r=c?"where":"which";try{return t(r,[e],{stdio:"pipe"}),!0}catch{return!1}}import{execFileSync as o}from"child_process";import{createRequire as a}from"module";import{existsSync as p}from"fs";import{platform as s,arch as u}from"os";var g="https://github.com/sourcegraph/scip",f="SCIP_QUERY_SCIP_BIN";function m(e){if(e.isOnPath("scip"))return{source:"path",path:"scip"};let r=e.env[f];if(r&&e.fileExists(r))return{source:"env",path:r};if(e.platform==="win32"){let i=e.resolveSidecar(e.arch);if(i&&e.fileExists(i))return{source:"sidecar",path:i}}return null}function d(e){let r=a(import.meta.url);for(let i of e==="arm64"?["arm64","x64"]:[e])try{return r.resolve(`scip-query-scip-windows/scip-win32-${i}.exe`)}catch{}return null}function P(e=process.env){return m({platform:s(),arch:u(),env:e,isOnPath:n,fileExists:p,resolveSidecar:d})?.path??null}function B(e){if(s()==="darwin"&&n("brew")){e("Installing scip CLI via Homebrew...");try{if(o("brew",["install","sourcegraph/scip/scip"],{stdio:"inherit",timeout:3e5,env:process.env}),n("scip"))return e("Successfully installed scip CLI via Homebrew"),!0}catch(r){let i=r instanceof Error?r.message:String(r);e(`Homebrew install failed: ${i}`)}}if(n("go")){e("Installing scip CLI via go install...");try{if(o("go",["install","github.com/sourcegraph/scip/cmd/scip@latest"],{stdio:"inherit",timeout:3e5,env:process.env}),n("scip"))return e("Successfully installed scip CLI via go install"),!0}catch(r){let i=r instanceof Error?r.message:String(r);e(`go install failed: ${i}`)}}return e("Could not auto-install scip CLI."),e(`Install manually from: ${g}/releases`),!1}export{n as a,P as b,B as c};
|
|
2
|
-
//# sourceMappingURL=chunk-TFWDJDGO.js.map
|