scip-query 0.17.0 → 0.17.2
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 +23 -0
- package/README.md +19 -0
- package/dist/{chunk-ZMD4O5UP.js → chunk-2A7LUMZP.js} +2 -2
- package/dist/{chunk-VCOAUTSI.js → chunk-4H7T7FIM.js} +2 -2
- package/dist/{chunk-LC57FSPX.js → chunk-4QBRVI7D.js} +2 -2
- package/dist/chunk-4XTPZ5CR.js +9 -0
- package/dist/chunk-6AITNECC.js +928 -0
- package/dist/chunk-6JSTKSZH.js +3 -0
- package/dist/{chunk-A4KRWTXD.js → chunk-7LERNHDG.js} +2 -2
- package/dist/{chunk-75H6GOND.js → chunk-7ROLM67J.js} +2 -2
- package/dist/{chunk-EPDV3SQD.js → chunk-7VR5TNOI.js} +2 -2
- package/dist/chunk-A2GX3PYV.js +5 -0
- package/dist/{chunk-KYUYAWKA.js → chunk-APCXCRED.js} +2 -2
- package/dist/{chunk-H4SMB657.js → chunk-ATC4MEVA.js} +2 -2
- package/dist/chunk-AWYKDRYV.js +2 -0
- package/dist/{chunk-PYOZHG6A.js → chunk-AY44MGWS.js} +2 -2
- package/dist/{chunk-7MT6UM4D.js → chunk-BEGHYHOQ.js} +2 -2
- package/dist/{chunk-JJAH2VLD.js → chunk-BPMBOZAN.js} +2 -2
- package/dist/{chunk-3EBDPBBU.js → chunk-C7MBQSIC.js} +2 -2
- package/dist/{chunk-KAOWSWEX.js → chunk-CHJ3QROR.js} +2 -2
- package/dist/{chunk-VT2KFEPG.js → chunk-CVWX24IY.js} +2 -2
- package/dist/chunk-DJI446FQ.js +18 -0
- package/dist/{chunk-6G3GQWTK.js → chunk-ELLPMCWA.js} +2 -2
- package/dist/{chunk-42YU6TEB.js → chunk-FVLZB54V.js} +2 -2
- package/dist/{chunk-VPVAQRHM.js → chunk-G6DDSHMD.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-Y3DG4J6A.js → chunk-IS7DZ7TB.js} +2 -2
- package/dist/{chunk-HGO3D2JD.js → chunk-J7IMQRCU.js} +2 -2
- package/dist/{chunk-J4HK7PQS.js → chunk-K4XL4HOK.js} +2 -2
- package/dist/{chunk-5ODF4JGH.js → chunk-K53GNKY3.js} +2 -2
- package/dist/{chunk-5N5ZC566.js → chunk-K65T4TJS.js} +2 -2
- package/dist/{chunk-YD7GGLGE.js → chunk-KA7RMBVU.js} +2 -2
- package/dist/{chunk-7CHIAMKS.js → chunk-KJOKTZUE.js} +2 -2
- package/dist/chunk-KSD6IWF4.js +38 -0
- package/dist/{chunk-OQRMCT2N.js → chunk-LEKXKHIQ.js} +5 -5
- package/dist/{chunk-KTZACYL6.js → chunk-LFPQFRCX.js} +2 -2
- package/dist/{chunk-Y5BOEWAE.js → chunk-LL5NQB5V.js} +2 -2
- package/dist/{chunk-MVFNACWB.js → chunk-MBVHEPHQ.js} +2 -2
- package/dist/{chunk-KO2TFDIP.js → chunk-MFIA6EIT.js} +2 -2
- package/dist/{chunk-PVXSHZLW.js → chunk-N3JH45WR.js} +2 -2
- package/dist/{chunk-QNCVN5EH.js → chunk-NJD4C5G5.js} +3 -3
- package/dist/{chunk-JUADXGUH.js → chunk-NJTIAQY7.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-JYBF5CPE.js → chunk-O7NA5FCA.js} +2 -2
- package/dist/{chunk-U3JW5AYG.js → chunk-OINSINYW.js} +2 -2
- package/dist/{chunk-JVTMRIKU.js → chunk-OQFA2SUQ.js} +2 -2
- package/dist/{chunk-DQYG5JHT.js → chunk-OQFPCIXO.js} +2 -2
- package/dist/{chunk-ABRWGVC6.js → chunk-P6FOIU7O.js} +2 -2
- package/dist/{chunk-NJBARXRO.js → chunk-PQD7P6WB.js} +2 -2
- package/dist/{chunk-OP5RO2CF.js → chunk-Q4GKL4CC.js} +2 -2
- package/dist/{chunk-TL2IXVGH.js → chunk-ROMKXEUM.js} +2 -2
- package/dist/{chunk-CYDOV3AQ.js → chunk-RUV4KHWA.js} +2 -2
- package/dist/{chunk-34RCSYMZ.js → chunk-S22ICAWV.js} +2 -2
- package/dist/chunk-SALRDXWM.js +121 -0
- package/dist/chunk-SON6DQNK.js +7 -0
- package/dist/{chunk-SREWDA7Q.js → chunk-SSGACGAD.js} +2 -2
- package/dist/{chunk-PA2MQKXD.js → chunk-SUYCF4SX.js} +2 -2
- package/dist/chunk-SXDXR5FH.js +2 -0
- package/dist/{chunk-TR7C5HOC.js → chunk-T4P27T6S.js} +2 -2
- package/dist/{chunk-BBBZB5WY.js → chunk-U4G4UYLB.js} +2 -2
- package/dist/{chunk-IK2NG76R.js → chunk-W7FNZKX5.js} +2 -2
- package/dist/chunk-WD3PAQJT.js +10 -0
- package/dist/{chunk-AQ34B63A.js → chunk-XLJORP6N.js} +2 -2
- package/dist/chunk-XTF6ELXT.js +3 -0
- package/dist/{chunk-7Z5UT44B.js → chunk-YMFHC5J2.js} +2 -2
- package/dist/{chunk-WH65EY7U.js → chunk-YYYERNQL.js} +2 -2
- package/dist/chunk-Z4MCFCGX.js +3 -0
- package/dist/cli.js +3 -1528
- package/dist/command-descriptors-7UUURHWT.js +599 -0
- package/dist/direct-navigation-CVCFER5G.js +3 -0
- package/dist/index.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 +22 -22
- package/dist/reindex.js +36 -36
- package/dist/runtime.d.ts +2 -0
- package/dist/runtime.js +1 -1
- package/dist/watch-server.js +4 -4
- package/docs/COMMAND_REFERENCE.md +3 -0
- package/package.json +2 -1
- package/skills/scip-tla-model-system/SKILL.md +10 -8
- package/dist/chunk-2HCWAL42.js +0 -3
- package/dist/chunk-GRHA5NGF.js +0 -2
- package/dist/chunk-HV4N3UBV.js +0 -10
- package/dist/chunk-KLFCCRI7.js +0 -21
- package/dist/chunk-L7UITWFE.js +0 -120
- package/dist/chunk-QVZSWLLZ.js +0 -2
- package/dist/chunk-RSZ4KX4B.js +0 -7
- package/dist/chunk-RZEVUYMG.js +0 -2
- package/dist/chunk-TCOWAGR2.js +0 -38
- package/dist/chunk-X566NT42.js +0 -9
package/dist/chunk-TCOWAGR2.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-MVFNACWB.js";import{d as le,e as me,f as $,g as de,i as ue,l as fe}from"./chunk-QNCVN5EH.js";import{D as ce,n as re,x as j}from"./chunk-OQRMCT2N.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-TCOWAGR2.js.map
|
package/dist/chunk-X566NT42.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import{a as _}from"./chunk-P5XHIJHI.js";import{d as P,v as M,x as v}from"./chunk-M2TRDR25.js";import{execFileSync as U}from"child_process";var j=2e3,S=50,J=64,Y=8,V=3,W=2160*60*60,X=/\b(?:fix(?:es|ed)?|bug|regression|hotfix)\b/i,Z=3,Q=/#\d+|\b[A-Z][A-Z0-9]+-\d+\b/g,q=/^([a-z][a-z0-9-]+)(?:\([^)]+\))?!?:/i;function ee(e){let t=P(e,{clearGroups:["whole-project"]});return(n,i)=>{let r=H(n.config.projectRoot);if(!r)return null;let o=t.has(n)?t.get(n,()=>({head:"",value:null})):null;return o&&o.head===r?o.value:(t.invalidate(n),t.get(n,()=>({head:r,value:i(n.config.projectRoot,r)})).value)}}function F(e){let t=P(e,{clearGroups:["whole-project"]});return(n,i,r)=>{let o=H(n.config.projectRoot);if(!o)return null;let a=t.has(n)?t.get(n,()=>({head:"",values:new Map})):null;(!a||a.head!==o)&&t.invalidate(n);let c=t.get(n,()=>({head:o,values:new Map}));if(c.values.has(i))return c.values.get(i)??null;let u=r(n.config.projectRoot,o);return c.values.set(i,u),u}}var te=F("git-commit-history");function ne(e,t={}){let n=t.historyMode??"bounded";return{capability:i=>ie(e,i),commitHistory:()=>x(e,n),fileChurn:()=>se(e,n),changeAmplification:()=>ae(e,n),trackedFiles:()=>le(e),fileAddRecords:()=>me(e,n),coChangePairs:(i={})=>be(e,i,n),coChangePairsForFiles:(i,r={})=>L(e,i,r,n),directionalCoChangePairsForFiles:(i,r={})=>ye(e,i,r,n)}}function x(e,t="bounded"){return te(e,y(t),(n,i)=>re(n,i,t))}function ie(e,t){let n=H(e.config.projectRoot);return n?{slot:t,available:!0,head:n}:{slot:t,available:!1,head:null,reason:"git history is unavailable for this project"}}function H(e){try{return C(e,["rev-parse","HEAD"]).trim()||null}catch{return null}}function C(e,t){return U("git",["-C",e,...t],{encoding:"utf-8",maxBuffer:64*1024*1024,stdio:["ignore","pipe","ignore"]})}function re(e,t,n){let i;try{i=C(e,["log","--no-merges","--name-only",...R(n),"--pretty=format:%x01%H%x00%ct%x00%s"])}catch{return null}return{head:t,...w(i,S)}}function oe(e){return X.test(e.subject)}function se(e,t){let n=x(e,t);if(!n)return null;let i=new Map;for(let r of n.commits){let o=oe(r);for(let a of r.files){let c=i.get(a)??{changes:0,fixChanges:0,lastChangedAt:0};c.changes+=1,o&&(c.fixChanges+=1),r.timestamp>c.lastChangedAt&&(c.lastChangedAt=r.timestamp),i.set(a,c)}}return i}function ae(e,t){let n=x(e,t);if(!n||n.commits.length===0)return null;let i=n.commits.map(r=>r.files.length).filter(r=>r>0).sort((r,o)=>r-o);return i.length===0?null:{medianFilesPerCommit:D(i,.5),p90FilesPerCommit:D(i,.9),commitsAnalyzed:i.length}}function D(e,t){let n=Math.min(e.length-1,Math.floor(e.length*t));return e[n]}var ce=ee("git-tracked-files");function le(e){return ce(e,t=>{try{let n=C(t,["ls-files"]);return new Set(n.split(`
|
|
2
|
-
`).map(i=>i.trim()).filter(i=>i!==""))}catch{return null}})}var ue=F("git-file-adds"),O="__git__/file-adds",k=M({kind:"git-file-adds",invalidation:v("git-file-adds"),serialize:ge,deserialize:fe});function _e(e){return ne(e).fileAddRecords()}function me(e,t){let n=y(t);return ue(e,n,(i,r)=>de(e,i,r,t))}function de(e,t,n,i){let r=k.read(e,I(i),n);if(r)return r;let o=he(t,i);return o&&k.write(e,I(i),n,o),o}function ge(e){return JSON.stringify([...e.entries()])}function fe(e){if(!e)return null;try{let t=JSON.parse(e);if(!Array.isArray(t))return null;let n=new Map;for(let i of t){if(!Array.isArray(i)||i.length!==2||typeof i[0]!="string")return null;let r=i[1];if(!r||typeof r.commitsAgo!="number"||!Number.isFinite(r.commitsAgo)||typeof r.addedAt!="number"||!Number.isFinite(r.addedAt))return null;n.set(i[0],{commitsAgo:r.commitsAgo,addedAt:r.addedAt})}return n}catch{return null}}function he(e,t){let n;try{n=C(e,["log","--no-merges","--find-renames","--name-status",...R(t),"--pretty=format:%x01%H%x00%ct%x00%s"])}catch{return null}let i=new Map,r=new Map,o=-1;for(let a of n.split("")){if(a.trim()==="")continue;o+=1;let c=a.indexOf(`
|
|
3
|
-
`),u=c>=0?a.slice(0,c):a,[,m]=u.split("\0"),h=Number(m)||0;if(!(c<0))for(let l of a.slice(c+1).split(`
|
|
4
|
-
`)){let s=pe(l);if(!s)continue;if(s.status==="R"&&s.from&&s.to){let p=r.get(s.to)??new Set([s.to]);r.set(s.from,p);continue}if(s.status!=="A"||!s.to)continue;let d={commitsAgo:o,addedAt:h};i.set(s.to,d);for(let p of r.get(s.to)??[])i.set(p,d)}}return i}function pe(e){let t=e.trim().split(" "),n=t[0]??"";if(!n)return null;let i=n[0]??"";if(i==="R"){let o=t[1],a=t[2];return o&&a?{status:i,from:o,to:a}:null}let r=t[1];return r?{status:i,to:r}:null}var z=F("git-co-change-pairs"),Ce=F("git-directional-co-change-pairs");function be(e,t,n){let i=`all\0${y(n)}\0${T(t)}`,r=z(e,i,()=>{let o=x(e,n);return o?G(o,t):null});return r&&[...r]}function L(e,t,n,i){if(t.size===0)return[];let r=`files\0${y(i)}\0${N(t)}\0${T(n)}`,o=z(e,r,()=>{let a=x(e,i);return a?G(a,n,t):null});return o&&[...o]}function ye(e,t,n,i){if(t.size===0)return[];let r=n.maxFilesPerCommit??S;if(t.size>J)return L(e,t,n,i);let o=`directional\0${y(i)}\0${N(t)}\0${T({...n,maxFilesPerCommit:r})}`,a=Ce(e,o,(c,u)=>{let m=Ae(c,u,t,r,i);return m?G(m,n,t):null});return a&&[...a]}function T(e){let t=e.minTogether??4,n=e.minConfidence??.6,i=e.maxFilesPerCommit??S;return`${t}\0${n}\0${i}`}function N(e){return[...e].sort().join("\0")}function G(e,t,n){let{minTogether:i=4,minConfidence:r=.6,maxFilesPerCommit:o=S}=t,a=new Map,c=new Map,u=e.newestAnalyzedAt??0;for(let l of e.commits){let s=[...new Set(l.files)].sort();if(s.length>o)continue;e.newestAnalyzedAt===void 0&&l.timestamp>u&&(u=l.timestamp);let d=Fe(s),p=n===void 0||s.some(g=>n.has(g));for(let g of s)a.set(g,(a.get(g)??0)+1);if(p)for(let g=0;g<s.length;g++)for(let b=g+1;b<s.length;b++){if(n&&!n.has(s[g])&&!n.has(s[b]))continue;let A=`${s[g]}\0${s[b]}`,f=c.get(A)??{together:0,focusedTogether:0,broadTogether:0,lastTogetherAt:0,timestamps:[],subjects:[]};f.together+=1,d?f.broadTogether+=1:f.focusedTogether+=1,l.timestamp>f.lastTogetherAt&&(f.lastTogetherAt=l.timestamp),f.timestamps.push(l.timestamp),f.subjects.push(l.subject),c.set(A,f)}}let m=[],h=u-W;for(let[l,s]of c){let d=s.together;if(d<i)continue;let[p,g]=l.split("\0"),b=a.get(p)??d,A=a.get(g)??d,f=Math.max(d/b,d/A);if(f<r)continue;let $=s.broadTogether/d,E=s.timestamps.filter(K=>K>=h).length;m.push({fileA:p,fileB:g,together:d,confidence:f,changesA:b,changesB:A,focusedTogether:s.focusedTogether,broadTogether:s.broadTogether,broadCommitRatio:$,lastTogetherAt:s.lastTogetherAt,recentTogether:E,commitScope:Pe(s.broadTogether,d),recency:E>0?"recent":"stale",subjectContext:He(s.subjects)})}return m.sort((l,s)=>s.together-l.together||s.confidence-l.confidence||l.fileA.localeCompare(s.fileA)),m}function Ae(e,t,n,i,r){let o;try{o=xe(e,r)}catch{return null}if(o.length===0)return{head:t,commits:[],skippedBulkCommits:0,newestAnalyzedAt:0};let a;try{a=C(e,["log","--no-merges","--format=%H",...R(r),"--",...[...n].sort()])}catch{return null}let c=new Set(o.map(s=>s.hash)),u=a.split(`
|
|
5
|
-
`).map(s=>s.trim()).filter(s=>s!==""&&c.has(s)),m=Se(e,o,i);if(u.length===0)return{head:t,commits:[],skippedBulkCommits:0,newestAnalyzedAt:m};let h;try{h=C(e,["show","--no-walk=unsorted","--name-only","--pretty=format:%x01%H%x00%ct%x00%s",...u])}catch{return null}let l=w(h,i);return{head:t,...l,newestAnalyzedAt:m}}function xe(e,t){return C(e,["log","--no-merges","--format=%H%x00%ct",...R(t)]).split(`
|
|
6
|
-
`).map(i=>i.trim()).filter(i=>i!=="").map(i=>{let[r,o]=i.split("\0");return{hash:r??"",timestamp:Number(o)||0}}).filter(i=>i.hash!=="")}function R(e){return e==="full"?[]:["-n",String(B())]}function B(){return _(process.env.SCIP_QUERY_GIT_HISTORY_MAX_COMMITS)??j}function y(e){return e==="full"?"full":`bounded:${B()}`}function I(e){let t=y(e);return t===`bounded:${j}`?O:`${O}:${t}`}function Se(e,t,n){for(let r=0;r<t.length;r+=20){let o=t.slice(r,r+20),a;try{a=C(e,["show","--no-walk=unsorted","--name-only","--pretty=format:%x01%H%x00%ct%x00%s",...o.map(u=>u.hash)])}catch{return t[0]?.timestamp??0}let c=w(a,n);if(c.commits.length>0)return c.commits[0].timestamp}return 0}function w(e,t){let n=[],i=0;for(let r of e.split("")){if(r.trim()==="")continue;let o=r.indexOf(`
|
|
7
|
-
`),a=o>=0?r.slice(0,o):r,[c,u,m]=a.split("\0");if(!c||!u)continue;let h=o>=0?r.slice(o+1).split(`
|
|
8
|
-
`).map(l=>l.trim()).filter(l=>l!==""):[];if(h.length>t){i+=1;continue}n.push({hash:c,timestamp:Number(u)||0,subject:m??"",files:h})}return{commits:n,skippedBulkCommits:i}}function Fe(e){return e.length>=Y?!0:Re(e).size>=V}function Re(e){let t=new Set;for(let n of e){let i=n.indexOf("/");t.add(i>=0?n.slice(0,i):".")}return t}function Pe(e,t){return e===0?"focused":e/t>=.5?"broad-sweep":"mixed"}function He(e){let t=new Set,n=[],i=[];for(let r of e){!i.includes(r)&&i.length<Z&&i.push(r);for(let o of Te(r))t.add(o);for(let o of r.match(Q)??[])n.includes(o)||n.push(o)}return{subjectLabels:[...t].sort(),issueRefs:n,sampleSubjects:i,externalIssueLabelStatus:"unavailable"}}function Te(e){let t=new Set,n=q.exec(e)?.[1]?.toLowerCase();return n&&t.add(Ge(n)),/\b(?:feat|feature)\b/i.test(e)&&t.add("feature"),/\b(?:fix(?:es|ed)?|bug|regression|hotfix)\b/i.test(e)&&t.add("fix"),/\b(?:docs?|documentation|guide|readme)\b/i.test(e)&&t.add("docs"),/\brefactor(?:ing|ed)?\b/i.test(e)&&t.add("refactor"),/\btests?\b/i.test(e)&&t.add("test"),/\b(?:release|version|v\d+\.\d+)\b/i.test(e)&&t.add("release"),/\bchore\b/i.test(e)&&t.add("chore"),/\bbuild\b/i.test(e)&&t.add("build"),/\bci\b/i.test(e)&&t.add("ci"),/\bperf(?:ormance)?\b/i.test(e)&&t.add("perf"),[...t]}function Ge(e){return e==="feat"?"feature":e}export{ne as a,C as b,_e as c};
|
|
9
|
-
//# sourceMappingURL=chunk-X566NT42.js.map
|