ostia 0.2.1 → 0.2.3

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/chunk-h6579788.js DELETED
@@ -1,21 +0,0 @@
1
- // @bun
2
- import{D,k,y,x,e,n,p,F,i,a,E,o,S,t,u,P,d,f,g,W}from"./chunk-9dqf5cxf.js";function wn(s){return s.startsWith("file://")?s.slice(7):s}function ke(s,h,m){let T=s.nodes,U=T.length,B=new Map,I=[],A=new Map,_=new Int32Array(U);for(let q=0;q<U;q++){let Q=T[q],Z=Q.callFrame,ie=wn(Z.url),se=B.get(Z.functionName);if(se===void 0)se=new Map,B.set(Z.functionName,se);let ce=se.get(ie);if(ce===void 0)ce=I.length,se.set(ie,ce),I.push({key:e("fr",Z.functionName,ie),name:Z.functionName,url:ie||void 0,line:Z.lineNumber>=0?Z.lineNumber:void 0,col:Z.columnNumber>=0?Z.columnNumber:void 0});_[q]=ce,A.set(Q.id,q)}let O=Array(U);for(let q=0;q<U;q++){let Q=T[q];O[q]={id:Q.id,frameIx:_[A.get(Q.id)],children:Q.children??[]}}let j=new Float64Array(U),Y=new Float64Array(U),{samples:L,timeDeltas:K}=s;for(let q=0;q<L.length;q++){let Q=A.get(L[q]);if(Q===void 0)continue;j[Q]+=K[q]??0,Y[Q]+=1}let X=new Int32Array(U).fill(-1);for(let q=0;q<U;q++){let Q=T[q].children;if(!Q)continue;for(let Z of Q){let ie=A.get(Z);if(ie!==void 0)X[ie]=q}}let H=[],te=[];for(let q=U-1;q>=0;q--)if(X[q]===-1)te.push(q);while(te.length>0){let q=te.pop();H.push(q);let Q=T[q].children;if(!Q)continue;for(let Z of Q){let ie=A.get(Z);if(ie!==void 0&&X[ie]===q)te.push(ie)}}let re=new Float64Array(U);for(let q=H.length-1;q>=0;q--){let Q=H[q];re[Q]+=j[Q];let Z=X[Q];if(Z>=0)re[Z]+=re[Q]}let oe=Array(I.length),ne=[];for(let q=0;q<U;q++){let Q=O[q].frameIx,Z=oe[Q];if(Z)Z.selfUs+=j[q],Z.totalUs+=re[q],Z.samples+=Y[q];else{let ie={frameIx:Q,selfUs:j[q],totalUs:re[q],samples:Y[q]};oe[Q]=ie,ne.push(ie)}}return{origin:h,samplingIntervalUs:m,frames:I,nodes:O,totals:ne.sort((q,Q)=>Q.selfUs-q.selfUs),samples:{nodeIds:s.samples,timeDeltasUs:s.timeDeltas}}}function xn(s,h,m,T){let U=["--cpu-prof","--cpu-prof-dir",h,"--cpu-prof-name",m,"--cpu-prof-interval",String(T)],B=s[0];if(B==="bun"||B?.endsWith("/bun"))return[B,...U,...s.slice(1)];return s}async function Fe(s){let h=`${s.artifactDir}/${s.fileName}`,m=s.argv[0],T=m==="bun"||m?.endsWith("/bun"),U=xn(s.argv,s.artifactDir,s.fileName,s.intervalUs),B=T?s.env:{...process.env,...s.env,BUN_OPTIONS:`--cpu-prof --cpu-prof-dir ${s.artifactDir} --cpu-prof-name ${s.fileName} --cpu-prof-interval ${s.intervalUs}`},I=Bun.nanoseconds(),_=await Bun.spawn(U,{cwd:s.cwd,env:B,stdout:"ignore",stderr:"ignore",stdin:"ignore"}).exited,O=Bun.nanoseconds()-I,j=Bun.file(h);if(!await j.exists())return{diagnosticWallNs:O,exitCode:_,warnings:[{code:"artifact-missing",message:`Expected a .cpuprofile at ${h} after exit ${_}, found nothing. The workload's argv[0] must be a \`bun\` binary for CPU capture.`,data:{artifactPath:h,argv:s.argv}}]};let Y=await j.json(),L=ke(Y,"cpu-prof",s.intervalUs),K=Y.samples.length===0?[{code:"empty-profile",message:"CPU capture produced zero samples."}]:[];return{diagnosticWallNs:O,exitCode:_,artifactPath:h,cpu:L,warnings:K}}function We(s,h="heap-prof"){let{node_fields:m,node_types:T}=s.snapshot.meta,U=m.indexOf("type"),B=m.indexOf("self_size"),I=m.length,A=T[0];if(U===-1||B===-1||!Array.isArray(A))return{origin:h,typeCounts:[],objectCount:s.snapshot.node_count};let _=A.length,O=Array(_),j=new Map,Y=[],L=0,K=s.nodes,X=K.length;for(let ne=0;ne<X;ne+=I){let q=K[ne+U],Q=K[ne+B]??0;L+=Q;let Z;if(q>=0&&q<_){if(Z=O[q],Z===void 0)Z={type:A[q],count:0,bytes:0},O[q]=Z,Y.push(Z)}else{let ie=`unknown(${q})`;if(Z=j.get(ie),Z===void 0)Z={type:ie,count:0,bytes:0},j.set(ie,Z),Y.push(Z)}Z.count++,Z.bytes+=Q}let H=Y.sort((ne,q)=>q.count-ne.count),te=H.slice(0,20),re=H.slice(20),oe=te.map(({type:ne,count:q,bytes:Q})=>({type:ne,count:q,retainedBytes:Q}));if(re.length>0){let ne=0,q=0;for(let Q of re)ne+=Q.count,q+=Q.bytes;oe.push({type:"other",count:ne,retainedBytes:q})}return{origin:h,heapSizeBytes:L,objectCount:s.snapshot.node_count,typeCounts:oe}}function Pn(s,h,m){let T=["--heap-prof","--heap-prof-dir",h,"--heap-prof-name",m],U=s[0];if(U==="bun"||U?.endsWith("/bun"))return[U,...T,...s.slice(1)];return s}async function Ue(s){let h=`${s.artifactDir}/${s.fileName}`,m=s.argv[0],T=m==="bun"||m?.endsWith("/bun"),U=Pn(s.argv,s.artifactDir,s.fileName),B=T?s.env:{...process.env,...s.env,BUN_OPTIONS:`--heap-prof --heap-prof-dir ${s.artifactDir} --heap-prof-name ${s.fileName}`},I=Bun.nanoseconds(),_=await Bun.spawn(U,{cwd:s.cwd,env:B,stdout:"ignore",stderr:"ignore",stdin:"ignore"}).exited,O=Bun.nanoseconds()-I,j=Bun.file(h);if(!await j.exists())return{diagnosticWallNs:O,exitCode:_,warnings:[{code:"artifact-missing",message:`Expected a heap snapshot at ${h} after exit ${_}, found nothing. The workload's argv[0] must be a \`bun\` binary for heap capture.`,data:{artifactPath:h,argv:s.argv}}]};let Y=await j.json(),L=We(Y,"heap-prof");return{diagnosticWallNs:O,exitCode:_,artifactPath:h,heap:L,warnings:[]}}import{Session as kn}from"inspector/promises";var $n=1000;async function Oe(s,h={}){let m=h.intervalUs??$n,T=new kn;T.connect();let U=Bun.nanoseconds();try{await T.post("Profiler.enable"),await T.post("Profiler.setSamplingInterval",{interval:m}),await T.post("Profiler.start");let B=await s(),{profile:I}=await T.post("Profiler.stop"),A=Bun.nanoseconds()-U,_=ke(I,"inspector",m);return{result:B,cpu:_,diagnosticWallNs:A}}finally{T.disconnect()}}var Rn=10,Mn=3000000000,vn=3;function Ie(s){let h=s.warmup??vn,m=s.samples,T=s.minSamples??Rn,U=m??T,B=m!==void 0?0:s.budgetMs!==void 0?s.budgetMs*1e6:Mn,I=s.timeSource!==void 0,A=[],_=0,O=0;function j(){if(m!==void 0)return O>=m;return O>=U&&_>=B}async function Y(L,K){if(s.prepare)await k(s.prepare,{phase:L,index:K},{cwd:s.cwd,env:s.env});return D(s)}return{async warmup(){for(let L=0;L<h;L++)await Y("warmup",L)},async step(){if(j())return!1;let L=await Y("timing",O);return A.push({i:O,wallNs:L.wallNs,exitCode:L.exitCode,userNs:L.userNs,systemNs:L.systemNs,maxRssBytes:L.maxRssBytes,...L.reportedNs!==void 0&&{reportedNs:L.reportedNs}}),_+=L.wallNs,O++,!0},done:j,result(){let L=A.map((H)=>I?H.reportedNs??H.wallNs:H.wallNs),K=u(L),X=P(K,A.map((H)=>H.exitCode),I?"reported":"subprocess");return{trials:A,timing:K,warnings:X}}}}async function w(s){let h=Ie(s);await h.warmup();while(await h.step());return h.result()}var Be=new URL("./runner.ts",import.meta.url).pathname,Tn="node_modules/.cache/ostia";function v(){return Math.max(1,navigator.hardwareConcurrency||1)}async function R(s,h){let m=new Set;for(let T of s){let U=new Bun.Glob(T);for await(let B of U.scan({cwd:h,absolute:!1}))m.add(B)}return[...m].sort()}function Cn(s){if(s===void 0)return;return s==="auto"?v():s}async function N(s,h,m=process.cwd()){return{suites:s.suites.length>0?s.suites:h?.suites?await R(h.suites,m):[],budgetMs:s.budgetMs??h?.budgetMs,samples:s.samples??h?.samples,minSamples:s.minSamples??h?.minSamples,jobs:s.jobs??Cn(h?.jobs),gc:s.gc||(h?.gc??!1),cpu:s.cpu||(h?.cpu??!1),alloc:s.alloc||(h?.alloc??!1),filter:s.filter??h?.filter,isolate:s.isolate||(h?.isolate??!1),preload:s.preload.length>0?s.preload:h?.preload??[],bunFlags:s.bunFlags,outDir:s.outDir??h?.outDir,noiseCheck:s.noiseCheck,cwd:m}}async function c(s){let m=`${s.outDir??Tn}/bench-tmp`,T=s.cwd??process.cwd(),U=Math.max(1,Math.floor(s.jobs??1)),B={budgetMs:s.budgetMs,samples:s.samples,minSamples:s.minSamples,gc:s.gc,cpu:s.cpu,alloc:s.alloc,noiseCheck:s.noiseCheck},I=s.suites.map((j)=>j.startsWith("/")?j:`${T}/${j}`),A=(s.preload??[]).map((j)=>j.startsWith("/")?j:`${T}/${j}`),_=s.bunFlags??[],O=async(j,Y)=>{let L=new Set,K=0,X,H=async()=>{while(X===void 0&&K<j.length){let te=K++;try{let re=Bun.spawn(j[te],{cwd:T,stdout:"inherit",stderr:"inherit",stdin:"ignore"});L.add(re);let oe=await re.exited;if(L.delete(re),oe!==0)throw Error(`Bench suite failed: ${Y(te)} (runner exited ${oe})`)}catch(re){X??=re instanceof Error?re:Error(String(re));for(let oe of L)oe.kill()}}};if(await Promise.all(Array.from({length:Math.min(U,j.length)},H)),X)throw X};try{let j=I.map((Q)=>`${m}/${e("bench-plan",Q)}.json`),Y=I.map((Q)=>`${m}/${e("bench-primary",Q)}.json`),L=I.map((Q,Z)=>["bun",..._,Be,Q,Y[Z],JSON.stringify({...B,filter:s.filter,isolate:s.isolate,preload:A,planPath:j[Z]})]);await O(L,(Q)=>s.suites[Q]);let K=await Promise.all(j.map(async(Q)=>{let{tasks:Z}=await Bun.file(Q).json();return Z})),X=await Promise.all(Y.map(t)),H=[];for(let Q=0;Q<K.length;Q++)for(let Z of K[Q])if(Z.isolate)H.push({suiteIndex:Q,taskIds:[Z.id]});let te=H.map((Q,Z)=>`${m}/${e("bench-item",I[Q.suiteIndex],Z)}.json`),re=H.map((Q,Z)=>["bun",..._,Be,I[Q.suiteIndex],te[Z],JSON.stringify({...B,taskIds:Q.taskIds,preload:A,markIsolated:!0})]);await O(re,(Q)=>s.suites[H[Q].suiteIndex]);let oe=await Promise.all(te.map(t)),ne=[],q=[];for(let Q=0;Q<K.length;Q++){let Z=X[Q],ie=new Map;for(let ee of Z.measurements){let ae=ie.get(ee.workloadId)??[];ae.push(ee),ie.set(ee.workloadId,ae)}let se=0,ce=new Map;H.forEach((ee,ae)=>{if(ee.suiteIndex===Q)ce.set(ee.taskIds[0],oe[ae])});for(let ee of K[Q])if(ee.isolate){let ae=ce.get(ee.id),de=ae.workloads[0];ne.push(de);for(let ge of ae.measurements)if(ge.workloadId===de.id)q.push(ge)}else{let ae=Z.workloads[se];ne.push(ae),se++;for(let de of ie.get(ae.id)??[])q.push(de)}}return n(ne,q,X[0]?.environment)}finally{await Bun.spawn(["rm","-rf",m]).exited}}function J(s,h,m=8){if(m<=1)throw RangeError(`range: multiplier must be > 1, got ${m}`);if(s<=0)throw RangeError(`range: start must be > 0, got ${s}`);let T=[];for(let U=s;U<=h;U*=m)T.push(U);if(!T.includes(h))T.push(h);return T}function V(s,h){let m=Object.keys(s),T=(U,B)=>{if(U===m.length){W(B,()=>h(B));return}let I=m[U];for(let A of s[I])T(U+1,{...B,[I]:A})};T(0,{})}function In(s){let h=s>>>0;return()=>{h=h+1831565813|0;let m=Math.imul(h^h>>>15,1|h);return m=m+Math.imul(m^m>>>7,61|m)^m,((m^m>>>14)>>>0)/4294967296}}var $e=2000,Dn=2000;function _e(s){let h=s.length,m=h>>1;return h%2===0?(s[m-1]+s[m])/2:s[m]}function Ee(s,h){let m=s.length;if(m===1)return s[0];let T=h*(m-1),U=Math.floor(T),B=Math.ceil(T);if(U===B)return s[U];let I=T-U;return s[U]*(1-I)+s[B]*I}function Ae(s,h,m){if(s.length<=m)return s;let T=[...s];for(let U=0;U<m;U++){let B=U+Math.floor(h()*(T.length-U)),I=T[U];T[U]=T[B],T[B]=I}return T.slice(0,m)}function je(s,h){let m=s.length,T=new Float64Array(m);for(let U=0;U<m;U++)T[U]=s[Math.floor(h()*m)];return T.sort(),_e(T)}function Le(s,h,m={}){let T=m.seed??(Date.now()^Math.imul(s.length,2654435761))>>>0,U=In(T),B=m.iterations??Dn,I=s.length>$e||h.length>$e,A=Ae(s,U,$e),_=Ae(h,U,$e),O=new Float64Array(A);O.sort();let j=_e(O),Y=new Float64Array(B);for(let L=0;L<B;L++){let K=je(A,U),X=je(_,U);Y[L]=j===0?X-K===0?0:1/0:(X-K)/j*100}return Y.sort(),{ci95:[Ee(Y,0.025),Ee(Y,0.975)],seed:T,data:{subsampled:I,iterations:B}}}function Sn(s){let h=s<0?-1:1,m=Math.abs(s),T=0.254829592,U=-0.284496736,B=1.421413741,I=-1.453152027,A=1.061405429,_=0.3275911,O=1/(1+0.3275911*m),j=1-((((1.061405429*O+-1.453152027)*O+1.421413741)*O+-0.284496736)*O+0.254829592)*O*Math.exp(-m*m);return h*j}function Nn(s){return 0.5*(1+Sn(s/Math.SQRT2))}function He(s,h){let m=s.length,T=h.length,U=m+T,B=[...s.map((H)=>({v:H,group:0})),...h.map((H)=>({v:H,group:1}))].sort((H,te)=>H.v-te.v),I=new Float64Array(U),A=0,_=0;while(_<U){let H=_;while(H+1<U&&B[H+1].v===B[_].v)H++;let te=(_+H)/2+1;for(let oe=_;oe<=H;oe++)I[oe]=te;let re=H-_+1;if(re>1)A+=re**3-re;_=H+1}let O=0;for(let H=0;H<U;H++)if(B[H].group===0)O+=I[H];let j=O-m*(m+1)/2,Y=m*T/2,L=Math.sqrt(m*T*(U+1-A/(U*(U-1)))/12),K=L===0?0:(j-Y)/L,X=Math.min(1,Math.max(0,2*(1-Nn(Math.abs(K)))));return{u:j,z:K,pValue:X}}var l={timingPct:5,frameSelfPct:10,heapTypePct:10,minFrameSelfUs:1000,alpha:0.01,bootstrapIterations:2000},De=5;function Re(s,h){if(s===0)return h===0?0:1/0;return(h-s)/s*100}function he(s,h,m){return s.measurements.find((T)=>T.workloadId===h&&T.phase===m)}function b(s,h,m=l){let T=new Set(h.workloads.map((B)=>B.id)),U=[];for(let B of s.workloads){if(!T.has(B.id))continue;let I=M(s,h,B.id,m);if(I)U.push(I)}return U}function M(s,h,m,T=l){let U=he(s,m,"timing"),B=he(h,m,"timing"),I=he(s,m,"cpu"),A=he(h,m,"cpu"),_=he(s,m,"heap"),O=he(h,m,"heap"),j=h.workloads.find((ne)=>ne.id===m),Y=U?.id??I?.id??_?.id,L=B?.id??A?.id??O?.id??j?.id;if(!Y||!L)return;let K=!1,X=[],H=Math.max(T.timingPct,s.environment?.noise.floorPct??0,h.environment?.noise.floorPct??0),te;if(U?.timing&&j?.skipped&&!B?.timing)te={medianDeltaPct:0,meanDeltaPct:0,effectPct:0,verdict:"unchanged"},X.push({code:"skipped",message:"Candidate has no timing measurement for this workload (task.skip()); treated as unchanged.",data:{workloadId:m}});else if(U?.timing&&B?.timing){let ne=U.timing.samples,q=B.timing.samples,Q=Re(U.timing.median,B.timing.median),Z=Re(U.timing.mean,B.timing.mean);if(ne.length<De||q.length<De){let ie=Q>H?"regressed":Q<-H?"improved":"unchanged";if(ie==="regressed")K=!0;te={medianDeltaPct:Q,meanDeltaPct:Z,effectPct:Q,verdict:ie},X.push({code:"thin-comparison",message:`Only ${ne.length} baseline / ${q.length} candidate sample(s); falling back to a point-estimate threshold instead of a bootstrap CI and Mann-Whitney test (needs ${De}+ per side).`,data:{baseSamples:ne.length,candSamples:q.length}})}else{let ie=Le(ne,q,{iterations:T.bootstrapIterations}),se=He(ne,q),ce=ie.ci95[0]>H&&se.pValue<T.alpha?"regressed":ie.ci95[1]<-H&&se.pValue<T.alpha?"improved":"unchanged";if(ce==="regressed")K=!0;te={medianDeltaPct:Q,meanDeltaPct:Z,effectPct:Q,ci95:ie.ci95,pValue:se.pValue,seed:ie.seed,verdict:ce}}}let re;if(I?.cpu&&A?.cpu){let ne=new Map(I.cpu.totals.map((se)=>[I.cpu.frames[se.frameIx].key,se])),q=new Map(A.cpu.totals.map((se)=>[A.cpu.frames[se.frameIx].key,se])),Q=new Map(I.cpu.frames.map((se)=>[se.key,se.name])),Z=new Map(A.cpu.frames.map((se)=>[se.key,se.name]));re=[...new Set([...ne.keys(),...q.keys()])].map((se)=>{let ce=ne.get(se)?.selfUs??0,ee=q.get(se)?.selfUs??0;return{frameKey:se,name:Z.get(se)??Q.get(se)??se,baseSelfUs:ce,candSelfUs:ee,deltaPct:Re(ce,ee)}}).sort((se,ce)=>Math.abs(ce.deltaPct)-Math.abs(se.deltaPct));for(let se of re)if((se.baseSelfUs>=T.minFrameSelfUs||se.candSelfUs>=T.minFrameSelfUs)&&se.deltaPct>T.frameSelfPct)K=!0}let oe;if(_?.heap&&O?.heap){let ne=new Map(_.heap.typeCounts.map((Z)=>[Z.type,Z])),q=new Map(O.heap.typeCounts.map((Z)=>[Z.type,Z]));oe=[...new Set([...ne.keys(),...q.keys()])].map((Z)=>{let ie=ne.get(Z),se=q.get(Z);return{type:Z,baseCount:ie?.count??0,candCount:se?.count??0,baseBytes:ie?.retainedBytes,candBytes:se?.retainedBytes,deltaPct:Re(ie?.count??0,se?.count??0)}}).sort((Z,ie)=>Math.abs(ie.deltaPct)-Math.abs(Z.deltaPct));for(let Z of oe)if(Z.deltaPct>T.heapTypePct)K=!0}return{id:e("cmp",Y,L),baselineMeasurementId:Y,candidateMeasurementId:L,timing:te,...X.length>0&&{warnings:X},frames:re,heapTypes:oe,thresholds:{...T,effectiveTimingPct:H},verdict:K?"fail":"pass"}}function fe(s,h){if(h){let m=s.measurements.find((T)=>T.id===h);return m?.cpu?[m]:[]}return s.measurements.filter((m)=>m.phase==="cpu"&&m.cpu)}function be(s){let h=s.nodes,m=h.length,T=Fn(s),U=new Int32Array(m).fill(-1);for(let _=0;_<m;_++)for(let O of h[_].children){let j=T(O);if(j!==-1)U[j]=_}let B=[];for(let _=0;_<m;_++)if(U[_]===-1)B.push(_);let I=[],A=[];for(let _=B.length-1;_>=0;_--)A.push(B[_]);while(A.length>0){let _=A.pop();I.push(_);for(let O of h[_].children){let j=T(O);if(j!==-1&&U[j]===_)A.push(j)}}return{count:m,indexOf:T,parentIx:U,roots:B,order:I}}function Fn(s){let h=s.nodes,m=h.length,T=1/0,U=-1/0,B=!0;for(let A=0;A<m;A++){let _=h[A].id;if(!Number.isInteger(_)){B=!1;break}if(_<T)T=_;if(_>U)U=_}if(B&&m>0&&U-T<m*4+64){let A=U-T+1,_=new Int32Array(A).fill(-1);for(let O=0;O<m;O++)_[h[O].id-T]=O;return(O)=>{let j=O-T;return j>=0&&j<A?_[j]:-1}}let I=new Map;for(let A=0;A<m;A++)I.set(h[A].id,A);return(A)=>I.get(A)??-1}function Ve(s,h){let{count:m,indexOf:T,parentIx:U,order:B}=h,I=new Float64Array(m),A=new Float64Array(m),_=s.samples?.nodeIds??[],O=s.samples?.timeDeltasUs??[];for(let Y=0;Y<_.length;Y++){let L=T(_[Y]);if(L===-1)continue;I[L]+=O[Y]??0,A[L]+=1}let j=new Float64Array(m);for(let Y=B.length-1;Y>=0;Y--){let L=B[Y];j[L]+=I[L];let K=U[L];if(K>=0)j[K]+=j[L]}return{selfUs:I,totalUs:j,samples:A}}var ze={name:"collapsed",async render(s,h={}){return{files:fe(s,h.measurementId).map((U)=>{let B=U.cpu,{nodes:I,frames:A}=B,_=be(B),O=Array(_.count);for(let X of _.order){let H=A[I[X].frameIx].name||"(anonymous)",te=_.parentIx[X];O[X]=te===-1?H:`${O[te]};${H}`}let j=new Float64Array(_.count),Y=[],L=B.samples?.nodeIds??[];for(let X=0;X<L.length;X++){let H=_.indexOf(L[X]);if(H===-1)continue;if(j[H]++===0)Y.push(H)}let K=Array(Y.length);for(let X=0;X<Y.length;X++){let H=Y[X];K[X]=`${O[H]} ${j[H]}`}return{path:`${U.id}.collapsed.txt`,content:K.join(`
3
- `)+(K.length>0?`
4
- `:"")}})}}};var Ke={name:"cpuprofile",async render(s,h={}){let m=fe(s,h.measurementId),T=[],U=[];for(let B of m){if(B.cpu?.origin!=="cpu-prof"&&B.cpu?.origin!=="inspector"){U.push(`${B.id} (origin ${B.cpu?.origin??"unknown"} has no .cpuprofile artifact to pass through)`);continue}let I=B.artifacts.find((_)=>_.kind==="cpuprofile");if(!I){U.push(`${B.id} (no cpuprofile artifact recorded on this run)`);continue}let A=Bun.file(I.path);if(!await A.exists()){U.push(`${B.id} (artifact missing on disk: ${I.path})`);continue}T.push({path:`${B.id}.cpuprofile`,content:await A.text()})}if(T.length===0&&U.length>0)return{text:`No .cpuprofile artifacts available:
5
- ${U.map((B)=>` - ${B}`).join(`
6
- `)}
7
- `};return{files:T}}};var Ge={name:"json",async render(s){return{text:S(s)}}};var Je={name:"jsonl",async render(s){let{measurements:h,...m}=s;return{text:`${[x(m),...h.map((U)=>x(U))].join(`
8
- `)}
9
- `}}};var Wn={ns:1,\u{b5}s:1000,ms:1e6,s:1e9};function xe(s){let h=Math.abs(s);if(h>=1e9)return"s";if(h>=1e6)return"ms";if(h>=1000)return"\xB5s";return"ns"}function Un(s){let h=Math.floor(Math.log10(Math.max(Math.abs(s),1)))+1;return Math.max(1,3-h)}function me(s,h=xe(s)){let m=s/Wn[h];return`${m.toFixed(Un(m))} ${h}`}function Me(s){return`${s.cpuModel} \xB7 ${s.cores} cores \xB7 load ${s.loadAvg1.toFixed(1)} \xB7 noise floor ${s.noise.floorPct.toFixed(1)}%`}function Ye(s){return(s/1e6).toFixed(3)}function Pe(s){return s?.label??s?.command?.join(" ")??s?.entry?.task??s?.id??"unknown"}function qe(s){if(!s?.params)return"";return` (${Object.entries(s.params).map(([m,T])=>`${m}=${T}`).join(", ")})`}function On(s){let h;for(let m of s){let T=m?.params?Object.keys(m.params):void 0;if(T?.length!==2)return;if(h===void 0)h=T;else if(T.length!==h.length||T.some((U,B)=>U!==h[B]))return}return h}var Qe=10,Xe=10,Ze={name:"markdown",async render(s){let h=new Map(s.workloads.map((I)=>[I.id,I])),m=[];m.push("# Profile Report","");let T=s.git?` \xB7 ${s.git.sha} (${s.git.branch}${s.git.dirty?", dirty":""})`:"";if(m.push(`Bun ${s.bunVersion} \xB7 ostia ${s.toolVersion} \xB7 ${s.platform.os}/${s.platform.arch} \xB7 ${s.createdAt}${T}`,""),s.environment)m.push(Me(s.environment),"");let U=s.measurements.filter((I)=>I.phase==="timing"&&I.timing!==void 0),B=s.workloads.filter((I)=>I.skipped&&!U.some((A)=>A.workloadId===I.id));if(U.length>0||B.length>0){m.push("## Timing","");let I=new Map,A=[];for(let j of U){let Y=h.get(j.workloadId)?.entry?.group;if(Y===void 0){A.push(j);continue}let L=I.get(Y);if(L)L.push(j);else I.set(Y,[j])}let _=new Map;for(let[j,Y]of I){let L=On(Y.map((K)=>h.get(K.workloadId)));if(L)_.set(j,{keys:L,runs:Y});else A.push(...Y)}if(A.length>0||B.length>0){m.push("| Task | Median | Spread (p75\u2026p99) | Mean \xB1 SD | Range | MAD |","|---|---|---|---|---|---|");for(let j of A){let Y=h.get(j.workloadId),L=Pe(Y)+qe(Y),K=j.timing,X=xe(K.median),H=K.p75??K.median,te=K.p99??K.max,re=K.mad!==void 0?me(K.mad,X):"-";m.push(`| ${L} | ${me(K.median,X)} | ${me(H,X)}\u2026${me(te,X)} | ${me(K.mean,X)} \xB1 ${me(K.stddev,X)} | ${me(K.min,X)}\u2026${me(K.max,X)} | ${re} |`)}for(let j of B){let Y=Pe(j)+qe(j);m.push(`| ${Y} | - skipped | - | - | - | - |`)}m.push("")}for(let[j,{keys:Y,runs:L}]of _){let[K,X]=Y,H=[],te=[],re=new Map;for(let oe of L){let ne=h.get(oe.workloadId).params,q=ne[K],Q=ne[X];if(!H.includes(q))H.push(q);if(!te.includes(Q))te.push(Q);re.set(`${q}\x00${Q}`,oe)}m.push(`### ${j} (${K} \xD7 ${X})`,""),m.push(`| ${K} \\ ${X} | ${te.join(" | ")} |`,`|---|${te.map(()=>"---").join("|")}|`);for(let oe of H){let ne=te.map((q)=>{let Q=re.get(`${oe}\x00${q}`);return Q?me(Q.timing.median):"-"});m.push(`| ${oe} | ${ne.join(" | ")} |`)}m.push("")}let O=U.filter((j)=>j.warnings.length>0);if(O.length>0){m.push("### Warnings","");for(let j of O){let Y=Pe(h.get(j.workloadId));for(let L of j.warnings)m.push(`- **${Y}**: ${L.message} (\`${L.code}\`)`)}m.push("")}}for(let I of s.measurements){if(I.phase!=="cpu"&&I.phase!=="heap")continue;let A=Pe(h.get(I.workloadId));if(I.phase==="cpu"){if(m.push(`## CPU capture - ${A}`,""),m.push(`instrumented, diagnostic wall ${Ye(I.diagnosticWallNs??0)}ms`,""),I.cpu){m.push(`origin: \`${I.cpu.origin}\`, interval: ${I.cpu.samplingIntervalUs}\xB5s`,""),m.push("| Self % | Self (ms) | Total (ms) | Frame |","|---|---|---|---|");let _=I.cpu.totals.reduce((O,j)=>O+j.selfUs,0)||1;for(let O of I.cpu.totals.slice(0,Qe)){let j=I.cpu.frames[O.frameIx],Y=(O.selfUs/_*100).toFixed(1);m.push(`| ${Y}% | ${(O.selfUs/1000).toFixed(2)} | ${(O.totalUs/1000).toFixed(2)} | ${j?.name||"(anonymous)"} |`)}if(m.push(""),I.jit){let O=I.jit.tiers;m.push(`JIT tiers: LLInt ${O.llint} \xB7 Baseline ${O.baseline} \xB7 DFG ${O.dfg} \xB7 FTL ${O.ftl}`,"")}}}else if(m.push(`## Heap snapshot - ${A}`,""),m.push(`instrumented, diagnostic wall ${Ye(I.diagnosticWallNs??0)}ms`,""),I.heap){m.push(`${I.heap.objectCount??"?"} objects, ${((I.heap.heapSizeBytes??0)/1e6).toFixed(2)}MB`,""),m.push("| Count | Type |","|---|---|");for(let _ of I.heap.typeCounts.slice(0,Xe))m.push(`| ${_.count} | ${_.type} |`);m.push("")}for(let _ of I.artifacts)m.push(`- artifact: \`${_.path}\``);for(let _ of I.warnings)m.push(`- ! ${_.message} (\`${_.code}\`)`);if(I.artifacts.length>0||I.warnings.length>0)m.push("")}if(s.comparisons&&s.comparisons.length>0){m.push("## Comparisons","");for(let I of s.comparisons){let A=s.measurements.find((O)=>O.id===I.candidateMeasurementId),_=Pe(A?h.get(A.workloadId):h.get(I.candidateMeasurementId));if(m.push(`### ${I.verdict==="pass"?"\u2713":"\u2717"} ${_}`,""),I.timing){let O=I.timing.medianDeltaPct>0?"+":"";m.push(`- timing: ${O}${I.timing.medianDeltaPct.toFixed(1)}% median (**${I.timing.verdict}**)`)}for(let O of I.frames?.slice(0,Qe)??[]){if(Math.abs(O.deltaPct)<0.5)continue;let j=O.deltaPct>0?"+":"";m.push(`- frame \`${O.name}\`: ${j}${O.deltaPct.toFixed(1)}% self-time (${(O.baseSelfUs/1000).toFixed(2)}ms \u2192 ${(O.candSelfUs/1000).toFixed(2)}ms)`)}for(let O of I.heapTypes?.slice(0,Xe)??[]){if(Math.abs(O.deltaPct)<0.5)continue;let j=O.deltaPct>0?"+":"";m.push(`- heap \`${O.type}\`: ${j}${O.deltaPct.toFixed(1)}% count (${O.baseCount} \u2192 ${O.candCount})`)}m.push("")}}return{text:m.join(`
10
- `)}}};var Bn=15;function Se(s){return`n${s}`}function En(s,h,m){return`${(s||"(anonymous)").replace(/"/g,"'")} (self ${(h/1000).toFixed(2)}ms, total ${(m/1000).toFixed(2)}ms)`}function An(s,h,m,T){let U=[];if(T<=0)return U;for(let B=0;B<h;B++){if(B===m)continue;let I=s[B];if(U.length===T&&I<=s[U[T-1]])continue;let A=U.length;while(A>0&&s[U[A-1]]<I)A--;if(U.splice(A,0,B),U.length>T)U.pop()}return U}var en={name:"mermaid",async render(s,h={}){let m=h.topN??Bn;return{files:fe(s,h.measurementId).map((B)=>{let I=B.cpu,{nodes:A,frames:_}=I,O=be(I),{selfUs:j,totalUs:Y}=Ve(I,O),{parentIx:L}=O,K=O.roots[0]??-1,X=An(j,O.count,K,m),H=new Set(K!==-1?[K]:[]),te=[];for(let oe of X){te.length=0;for(let ne=oe;ne!==-1;ne=L[ne])te.push(ne);for(let ne=te.length-1;ne>=0;ne--)H.add(te[ne])}let re=["graph TD"];for(let oe of H){let ne=A[oe].id;re.push(` ${Se(ne)}["${En(_[A[oe].frameIx].name,j[oe],Y[oe])}"]`)}for(let oe of H){let ne=L[oe];if(ne!==-1&&H.has(ne))re.push(` ${Se(A[ne].id)} --> ${Se(A[oe].id)}`)}return{path:`${B.id}.mermaid.md`,content:`${re.join(`
11
- `)}
12
- `}})}}};function nn(s){if(!s?.entry)return;if(s.entry.group!==void 0)return s.entry.group;let h=s.entry.task,m=h.lastIndexOf("/");return m===-1?void 0:h.slice(0,m)}function ve(s){let h=Math.min(...s.map((U)=>U.run.timing.median)),m=new Map;for(let U of s){let B=nn(U.workload);if(B===void 0)continue;let I=m.get(B);if(I)I.push(U);else m.set(B,[U])}let T=new Map;for(let U of s){let B=nn(U.workload);if(B===void 0){T.set(U,h);continue}let I=m.get(B)??[U],A=I.find((_)=>_.workload?.baseline);T.set(U,A?A.run.timing.median:Math.min(...I.map((_)=>_.run.timing.median)))}return T}function ue(s){return Number.isFinite(s)?Number(s.toPrecision(6)):s}function jn(s,h){return s?.entry?.task??s?.label??s?.command?.join(" ")??h.workloadId}function _n(s,h){let m={task:s.entry?.task??s.label??s.id,skipped:!0,warnings:[]};if(s.entry?.group!==void 0)m.group=s.entry.group;if(s.description!==void 0)m.description=s.description;if(s.groupDescription!==void 0)m.groupDescription=s.groupDescription;if(s.params!==void 0)m.params=s.params;if(h?.timing)m.delta={medianPct:ue(h.timing.medianDeltaPct),meanPct:ue(h.timing.meanDeltaPct),verdict:h.timing.verdict,pass:h.verdict==="pass"};return m}function Ln(s){let h=new Map(s.workloads.map((O)=>[O.id,O])),m=s.measurements.filter((O)=>O.phase==="timing"&&O.timing!==void 0).map((O)=>({run:O,workload:h.get(O.workloadId)})),T=m.length>1?ve(m):void 0,U=new Map((s.comparisons??[]).map((O)=>[O.candidateMeasurementId,O])),B=new Set(m.map((O)=>O.run.workloadId)),I=new Map;for(let O of s.measurements){if(O.phase!=="cpu"||O.warnings.length===0)continue;let j=I.get(O.workloadId)??[];I.set(O.workloadId,[...j,...O.warnings])}let A=s.workloads.filter((O)=>O.skipped&&!B.has(O.id)).map((O)=>_n(O,U.get(O.id)));return[...m.map((O)=>{let{run:j,workload:Y}=O,L=j.timing,K={task:jn(Y,j),unit:"ns",samples:L.samples.length,mean:ue(L.mean),median:ue(L.median),stddev:ue(L.stddev),stddevPct:ue(L.mean===0?0:L.stddev/L.mean*100),min:ue(L.min),max:ue(L.max),warnings:[...j.warnings,...I.get(j.workloadId)??[]].map((H)=>H.data?{code:H.code,data:H.data}:{code:H.code})};if(L.p75!==void 0)K.p75=ue(L.p75);if(L.p99!==void 0)K.p99=ue(L.p99);if(L.mad!==void 0)K.mad=ue(L.mad);if(Y?.entry?.group!==void 0)K.group=Y.entry.group;if(Y?.description!==void 0)K.description=Y.description;if(Y?.groupDescription!==void 0)K.groupDescription=Y.groupDescription;if(Y?.params!==void 0)K.params=Y.params;if(T)K.relative=ue(L.median/(T.get(O)??L.median));if(Y?.baseline)K.baseline=!0;let X=U.get(j.id);if(X?.timing){if(K.delta={medianPct:ue(X.timing.medianDeltaPct),meanPct:ue(X.timing.meanDeltaPct),verdict:X.timing.verdict,pass:X.verdict==="pass"},X.timing.ci95)K.delta.ci95=[ue(X.timing.ci95[0]),ue(X.timing.ci95[1])];if(X.timing.pValue!==void 0)K.delta.pValue=ue(X.timing.pValue)}return K}),...A]}var tn={name:"minimal",async render(s){let h=Ln(s).map((m)=>JSON.stringify(m));return{text:h.length>0?`${h.join(`
13
- `)}
14
- `:""}}};var Hn="https://www.speedscope.app/file-format-schema.json";function rn(s){return s?.label??s?.command?.join(" ")??s?.entry?.task??"profile"}var sn={name:"speedscope",async render(s,h={}){let m=fe(s,h.measurementId),T=new Map(s.workloads.map((B)=>[B.id,B]));return{files:m.map((B)=>{let I=B.cpu,{nodes:A}=I,_=be(I),O=I.samples?.nodeIds??[],j=I.samples?.timeDeltasUs??[],Y=Array(_.count);for(let H of _.order){let te=_.parentIx[H],re=A[H].frameIx;Y[H]=te===-1?[re]:[...Y[te],re]}let L=Array(O.length);for(let H=0;H<O.length;H++){let te=_.indexOf(O[H]);L[H]=te===-1?[]:Y[te]}let K=0;for(let H=0;H<j.length;H++)K+=j[H];let X={$schema:Hn,exporter:"ostia",name:rn(T.get(B.workloadId)),activeProfileIndex:0,shared:{frames:I.frames.map((H)=>({name:H.name||"(anonymous)",file:H.url,line:H.line!==void 0?H.line+1:void 0}))},profiles:[{type:"sampled",name:rn(T.get(B.workloadId)),unit:"microseconds",startValue:0,endValue:K,samples:L,weights:j}]};return{path:`${B.id}.speedscope.json`,content:`${JSON.stringify(X,null,2)}
15
- `}})}}};function Vn(s){return(s/1e6).toFixed(3)}function zn(s){if(s<1024)return`${s.toFixed(0)}B`;if(s<1048576)return`${(s/1024).toFixed(2)}KB`;return`${(s/1048576).toFixed(2)}MB`}function Te(s){return s.label??s.command?.join(" ")??s.entry?.task??s.id}function Kn(s){if(!s?.entry)return;if(s.entry.group!==void 0)return s.entry.group;let h=s.entry.task,m=h.lastIndexOf("/");return m===-1?void 0:h.slice(0,m)}var an={name:"table",async render(s){let h=s.measurements.filter((ee)=>ee.phase==="timing"&&ee.timing!==void 0),m=new Map(s.workloads.map((ee)=>[ee.id,ee])),T=s.environment?[Me(s.environment),""]:[],U=s.workloads.filter((ee)=>ee.skipped&&!h.some((ae)=>ae.workloadId===ee.id));if(h.length===0&&U.length===0){let ee=on(s,m);return{text:ee.length>0?`${[...T,...ee].join(`
16
- `)}
17
- `:`(no timing runs)
18
- `}}let B=new Map(h.map((ee)=>[ee.workloadId,ee])),I=[];for(let ee of s.workloads){let ae=B.get(ee.id);if(ae)I.push({kind:"measured",run:ae,workload:ee,label:Te(ee)});else if(ee.skipped)I.push({kind:"skipped",workload:ee,label:Te(ee)})}let A=I.filter((ee)=>ee.kind==="measured"),_=new Map(s.measurements.filter((ee)=>ee.phase==="memstats"&&ee.memory?.bytesPerOp!==void 0).map((ee)=>[ee.workloadId,ee.memory.bytesPerOp])),O=_.size>0,j=A.length>1,Y=ve(A),L=new Map,K=new Map,X;for(let ee of I){let ae=Kn(ee.workload);if(ae!==X){if(ae!==void 0)K.set(ee,ae);X=ae}L.set(ee,ae!==void 0?" ":"")}let H=Math.max(4,...I.map((ee)=>L.get(ee).length+ee.label.length)),te=10,re=18,oe=18,ne=10,q=[...T],Q=O?` ${"Alloc/op".padEnd(ne)}`:"",Z=`${"Task".padEnd(H)} ${"Median".padEnd(te)} ${"Spread".padEnd(re)} ${"Range".padEnd(oe)}${Q}${j?" Relative":""}`;q.push(Z),q.push("-".repeat(Z.length));let ie=[];for(let ee of I){let ae=K.get(ee);if(ae!==void 0)q.push(`${ae}:`);let de=L.get(ee);if(ee.kind==="skipped"){q.push(`${(de+ee.label).padEnd(H)} - skipped`);continue}let{run:ge,label:ln,workload:Ce}=ee,pe=ge.timing,ye=xe(pe.median),dn=pe.p75??pe.median,fn=pe.p99??pe.max,gn=me(pe.median,ye),hn=`${me(dn,ye)}\u2026${me(fn,ye)}`,bn=`${me(pe.min,ye)}\u2026${me(pe.max,ye)}`,we=`${(de+ln).padEnd(H)} ${gn.padEnd(te)} ${hn.padEnd(re)} ${bn.padEnd(oe)}`;if(O){let le=Ce?_.get(Ce.id):void 0,yn=le!==void 0?zn(le):"";we+=` ${yn.padEnd(ne)}`}if(j){let le=pe.median/(Y.get(ee)??pe.median);if(le===1)we+=Ce?.baseline?" 1.00\xD7 (baseline)":" 1.00\xD7";else if(le>1)we+=` ${le.toFixed(2)}\xD7 slower`;else we+=` ${(1/le).toFixed(2)}\xD7 faster`}if(q.push(we),ge.warnings.length>0)q.push(`${" ".repeat(de.length)} ! ${ge.warnings.map((le)=>le.code).join(", ")}`),ie.push(ee)}if(ie.length>0){q.push(""),q.push("Warnings:");for(let ee of ie)for(let ae of ee.run.warnings)q.push(` ${ee.label}: ${ae.message}`)}let se=Jn(s,m);if(se.length>0)q.push(""),q.push(...se);let ce=on(s,m);if(ce.length>0)q.push(""),q.push(...ce);return{text:`${q.map((ee)=>ee.trimEnd()).join(`
19
- `)}
20
- `}}};function Gn(s,h,m){let T=s.measurements.find((B)=>B.id===m),U=T?h.get(T.workloadId):h.get(m);return U?Te(U):m}function on(s,h){if(!s.comparisons||s.comparisons.length===0)return[];let m=[];for(let T of s.comparisons){let U=Gn(s,h,T.candidateMeasurementId),B=T.verdict==="pass"?"\u2713":"\u2717";if(m.push(`${B} ${U}`),T.timing){let I=(A)=>`${A>=0?"+":""}${A.toFixed(1)}%`;if(T.timing.ci95&&T.timing.pValue!==void 0){let A=T.timing.pValue<0.001?"p<0.001":`p=${T.timing.pValue.toFixed(3)}`;m.push(` timing: ${I(T.timing.medianDeltaPct)} median, 95% CI [${I(T.timing.ci95[0])}, ${I(T.timing.ci95[1])}], ${A} (${T.timing.verdict})`)}else m.push(` timing: ${I(T.timing.medianDeltaPct)} median (${T.timing.verdict})`)}if(T.frames)for(let I of T.frames.slice(0,cn)){if(Math.abs(I.deltaPct)<0.5)continue;let A=I.deltaPct>0?"+":"";m.push(` frame ${I.name}: ${A}${I.deltaPct.toFixed(1)}% self-time (${(I.baseSelfUs/1000).toFixed(2)}ms -> ${(I.candSelfUs/1000).toFixed(2)}ms)`)}if(T.heapTypes)for(let I of T.heapTypes.slice(0,un)){if(Math.abs(I.deltaPct)<0.5)continue;let A=I.deltaPct>0?"+":"";m.push(` heap ${I.type}: ${A}${I.deltaPct.toFixed(1)}% count (${I.baseCount} -> ${I.candCount})`)}}return m}var cn=5,un=5;function Jn(s,h){let m=[];for(let T of s.measurements){if(T.phase!=="cpu"&&T.phase!=="heap")continue;let U=h.get(T.workloadId),B=U?Te(U):T.workloadId;if(T.phase==="cpu")if(T.cpu){m.push(`CPU capture - ${B} (instrumented, ${T.cpu.samplingIntervalUs}\xB5s interval, diagnostic wall ${Vn(T.diagnosticWallNs??0)}ms)`);let I=T.cpu.totals.reduce((A,_)=>A+_.selfUs,0)||1;for(let A of T.cpu.totals.slice(0,cn)){let _=T.cpu.frames[A.frameIx],O=(A.selfUs/I*100).toFixed(1);m.push(` ${O.padStart(5)}% ${(A.selfUs/1000).toFixed(2).padStart(8)}ms self ${_?.name??"?"}`)}}else m.push(`CPU capture - ${B} (instrumented, no evidence captured)`);else if(T.heap){let I=((T.heap.heapSizeBytes??0)/1e6).toFixed(2);m.push(`Heap snapshot - ${B} (instrumented, ${T.heap.objectCount??"?"} objects, ${I}MB)`);for(let A of T.heap.typeCounts.slice(0,un))m.push(` ${String(A.count).padStart(6)} ${A.type}`)}else m.push(`Heap snapshot - ${B} (instrumented, no evidence captured)`);for(let I of T.artifacts)m.push(` artifact: ${I.path}`);for(let I of T.warnings)m.push(` ! ${I.message}`)}return m}var r={table:an,json:Ge,markdown:Ze,jsonl:Je,minimal:tn,collapsed:ze,mermaid:en,speedscope:sn,cpuprofile:Ke};function G(s){return s}var Yn="node_modules/.cache/ostia",Ne=1000;async function C(s){let h=o({samples:s.samples??null,budgetMs:s.budgetMs??null,minSamples:s.minSamples??null,warmup:s.warmup??null,cpu:s.cpu??!1,heap:s.heap??!1,cpuIntervalUs:s.cpuIntervalUs??Ne}),T=`${s.outDir??Yn}/artifacts`,U=s.noiseCheck===!1?void 0:f(),B=U?g(U):void 0,I=[],A=[],_=s.commands.map((Y)=>{let L=typeof Y==="string"||Array.isArray(Y)?{command:Y}:Y,K=Array.isArray(L.command)?L.command:y(L.command),X=L.prepare??s.prepare,H=L.timeSource??s.timeSource,te=p(K,L.label??(Array.isArray(L.command)?void 0:L.command),{prepare:X,timeSource:H});return{argv:K,workload:te,prepare:X,timeSource:H}}),O=(s.interleave??!0)&&_.length>1,j=(Y)=>({argv:Y.argv,cwd:s.cwd,env:s.env,samples:s.samples,budgetMs:s.budgetMs,minSamples:s.minSamples,warmup:s.warmup,prepare:Y.prepare,timeSource:Y.timeSource});if(O){let Y=_.map((K)=>Ie(j(K)));for(let K of Y)await K.warmup();let L=!0;while(L){L=!1;for(let K of Y)if(await K.step())L=!0}for(let K=0;K<_.length;K++){let{argv:X,workload:H,prepare:te}=_[K];I.push(H);let re=Y[K].result(),oe=i({workload:H,configFingerprint:h,trials:re.trials,timing:re.timing,warnings:B&&A.length===0?[...re.warnings,B]:re.warnings,interleaved:!0});A.push(oe),A.push(...await mn(H,X,oe.id,h,s,T,te))}return n(I,A,U)}for(let Y of _){let{argv:L,workload:K,prepare:X}=Y;I.push(K);let H=await w(j(Y)),te=i({workload:K,configFingerprint:h,trials:H.trials,timing:H.timing,warnings:B&&A.length===0?[...H.warnings,B]:H.warnings});A.push(te),A.push(...await mn(K,L,te.id,h,s,T,X))}return n(I,A,U)}async function mn(s,h,m,T,U,B,I){let A=[],_=async(O)=>{if(I)await k(I,{phase:O,index:0},{cwd:U.cwd,env:U.env})};if(U.cpu){await _("cpu");let O=`${m}-cpu.cpuprofile`,j=await Fe({argv:h,cwd:U.cwd,env:U.env,artifactDir:B,fileName:O,intervalUs:U.cpuIntervalUs??Ne});A.push(await pn({workload:s,phase:"cpu",configFingerprint:T,diagnosticWallNs:j.diagnosticWallNs,exitCode:j.exitCode,cpu:j.cpu,artifactPath:j.artifactPath,artifactKind:"cpuprofile",warnings:j.warnings}))}if(U.heap){await _("heap");let O=`${m}-heap.heapsnapshot`,j=await Ue({argv:h,cwd:U.cwd,env:U.env,artifactDir:B,fileName:O});A.push(await pn({workload:s,phase:"heap",configFingerprint:T,diagnosticWallNs:j.diagnosticWallNs,exitCode:j.exitCode,heap:j.heap,artifactPath:j.artifactPath,artifactKind:"heapsnapshot",warnings:j.warnings}))}return A}async function pn(s){let h=`${s.workload.id}-${s.phase}-${s.configFingerprint}`,m=s.artifactPath?[await E(h,s.artifactKind,s.artifactPath)]:[];return a({workload:s.workload,phase:s.phase,configFingerprint:s.configFingerprint,diagnosticWallNs:s.diagnosticWallNs,exitCode:s.exitCode,cpu:s.cpu,heap:s.heap,warnings:s.warnings,artifacts:m})}async function z(s,h={}){let m=F(s),T=o({intervalUs:h.intervalUs??Ne,origin:h.origin??"inspector"}),U=(O)=>O.samples?.nodeIds.length===0?[{code:"empty-profile",message:"In-process capture produced zero samples."}]:[];if(h.origin==="jsc"){let{result:O,cpu:j,jit:Y,diagnosticWallNs:L}=await d(s,h),K=a({workload:m,phase:"cpu",configFingerprint:T,diagnosticWallNs:L,cpu:j,jit:Y,warnings:U(j),artifacts:[]});return{result:O,measurement:K,document:n([m],[K])}}let{result:B,cpu:I,diagnosticWallNs:A}=await Oe(s,h),_=a({workload:m,phase:"cpu",configFingerprint:T,diagnosticWallNs:A,cpu:I,warnings:U(I),artifacts:[]});return{result:B,measurement:_,document:n([m],[_])}}
21
- export{v,R,N,c,l,b,M,w,J,V,r,G,C,z};