@fungi.computer/grove 0.5.0 → 0.5.1
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/dist/assets/{anthropic-messages-B10kEhdr.js → anthropic-messages-BTv37DKo.js} +3 -3
- package/dist/assets/{azure-openai-responses-BfXWvSIh.js → azure-openai-responses-CLI5CTea.js} +1 -1
- package/dist/assets/burger-BrMTWnA6.js +1 -0
- package/dist/assets/cat-Ce0yvAsw.js +1 -0
- package/dist/assets/{compat-CbK3PtOb.js → compat-BQZx9Jx3.js} +2 -2
- package/dist/assets/{extension-hook-DLTz1137.js → extension-hook-UDdYbDsl.js} +118 -118
- package/dist/assets/extensions-DF9U5f_Z.js +1 -0
- package/dist/assets/{google-generative-ai-Fu8V-yz7.js → google-generative-ai-_8qHW2IX.js} +1 -1
- package/dist/assets/{google-shared-wlIfh6j_.js → google-shared-BjptlrJn.js} +1 -1
- package/dist/assets/{google-vertex-BgvHA6C2.js → google-vertex-C6JPlmUK.js} +1 -1
- package/dist/assets/{index-cUekAmc6.js → index-DM8ziIjn.js} +15 -15
- package/dist/assets/{mistral-conversations-BrU-wxK0.js → mistral-conversations-C_XYmgUS.js} +1 -1
- package/dist/assets/{mushroom-D6oZV5NT.js → mushroom-BTxbn3Sf.js} +1 -1
- package/dist/assets/{node.browser-Baqa49m1.js → node.browser-Bc9i4viB.js} +1 -1
- package/dist/assets/{openai-codex-responses-i1IzQiR2.js → openai-codex-responses-C0Thlbgz.js} +1 -1
- package/dist/assets/{openai-completions-DuCQ84Dy.js → openai-completions-CJJn6-l3.js} +1 -1
- package/dist/assets/{openai-responses-Vdmgof2r.js → openai-responses-BuHYr0Ip.js} +1 -1
- package/dist/assets/{openai-responses-shared-BgYppAGR.js → openai-responses-shared-px8hA25N.js} +1 -1
- package/dist/assets/parakeet-conversation-gakMmXhW.js +4 -0
- package/dist/assets/{renderer-bYZ9SYm9.js → renderer-69rvqVnj.js} +1 -1
- package/dist/assets/runtime-core-CHfIZEOV.js +40 -0
- package/dist/assets/{transform-messages-BycyMXl0.js → transform-messages-zEOZxc_F.js} +1 -1
- package/dist/index.html +2 -2
- package/package.json +9 -9
- package/dist/assets/burger-qdnxdNXn.js +0 -1
- package/dist/assets/cat-B_uav_x5.js +0 -1
- package/dist/assets/extensions-IZr7giz2.js +0 -1
- package/dist/assets/parakeet-conversation-Bnw6qiL2.js +0 -4
- package/dist/assets/runtime-core-CUZBVLjw.js +0 -40
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/compat-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/compat-BQZx9Jx3.js","assets/preload-helper-DY31Aviq.js","assets/index-DM8ziIjn.js","assets/rolldown-runtime-hePW80VL.js","assets/Effect-TOXKEWei.js","assets/document-aOA3zT2S.js","assets/base-face-CD4oLBv-.js","assets/index-DRqG5MfY.css","assets/provider-env-CcCbsTJq.js","assets/diagnostics-CxvqSC4Q.js","assets/models-BM_0GHMS.js","assets/json-parse-M7s0500m.js","assets/openai-codex-responses-C0Thlbgz.js","assets/headers-FK4rgixo.js","assets/transform-messages-zEOZxc_F.js","assets/runtime-core-CHfIZEOV.js","assets/extensions-DF9U5f_Z.js","assets/error-body-pkrba6pf.js","assets/openai-prompt-cache-DXo9f3w5.js","assets/openai-responses-shared-px8hA25N.js","assets/sanitize-unicode-DmIE6hZJ.js","assets/hash-yQufAZII.js","assets/abort-signals-joV34wzR.js"])))=>i.map(i=>d[i]);
|
|
2
2
|
import{$ as e,$i as t,$n as n,$r as r,$t as i,A as a,Ai as o,An as s,Ar as c,At as l,B as u,Br as d,Bt as f,C as p,Ci as m,Cr as ee,Ct as te,D as ne,Di as re,Dn as ie,Dr as ae,Dt as oe,E as se,Ei as ce,En as le,Er as ue,Et as de,Fr as fe,Ft as pe,G as me,Gi as he,Gr as h,Gt as ge,H as _e,Hi as ve,Hn as ye,Hr as be,Ht as xe,I as Se,In as Ce,Ir as we,It as Te,J as Ee,Ji as De,Jr as Oe,Jt as ke,K as Ae,Ki as je,Kn as Me,Kr as Ne,Kt as Pe,L as Fe,Ln as Ie,Lr as Le,Lt as Re,M as ze,Mr as Be,Mt as Ve,N as He,Nn as Ue,Nr as We,Nt as Ge,O as Ke,Oi as qe,On as Je,Or as Ye,Ot as Xe,P as Ze,Pn as Qe,Pr as $e,Pt as et,Qi as tt,Qn as nt,Qr as rt,Qt as it,R as at,Rn as ot,Rr as st,Rt as ct,S as lt,Si as ut,Sr as dt,St as ft,T as pt,Ti as mt,Tn as ht,Tr as gt,Tt as _t,U as vt,Un as yt,Ur as bt,Ut as xt,V as St,Vn as Ct,Vr as wt,Vt as Tt,W as Et,Wa as Dt,Wi as Ot,Wn as kt,Wt as At,X as jt,Xa as Mt,Xi as Nt,Xr as Pt,Xt as Ft,Y as It,Yr as Lt,Yt as Rt,Z as zt,Zn as Bt,Zr as Vt,Zt as Ht,_ as Ut,_a as Wt,_i as Gt,_n as Kt,_r as qt,_t as Jt,a as g,aa as _,ai as Yt,an as Xt,at as Zt,b as Qt,bi as $t,bn as en,br as tn,bt as nn,c as rn,ca as an,ci as on,cn as sn,cr as cn,ct as ln,d as un,di as dn,dn as fn,dr as pn,dt as v,ea as mn,en as hn,er as gn,et as _n,f as vn,fa as yn,fi as bn,fn as xn,fr as Sn,ft as Cn,g as y,gi as wn,gn as Tn,gt as En,h as Dn,ha as On,hi as kn,hn as An,hr as jn,i as Mn,ia as Nn,ii as Pn,in as Fn,ir as In,it as Ln,j as b,jn as Rn,jr as zn,jt as Bn,k as Vn,ki as Hn,kn as Un,kr as Wn,kt as Gn,l as Kn,la as qn,li as Jn,ln as Yn,lr as Xn,lt as Zn,m as Qn,ma as x,mi as $n,mn as er,mr as tr,mt as nr,ni as rr,nn as ir,nt as ar,o as or,oa as sr,oi as cr,on as lr,or as ur,ot as dr,p as fr,pa as pr,pi as mr,pn as hr,pr as gr,pt as S,q as _r,qa as vr,qi as yr,qn as br,qt as xr,r as Sr,ra as Cr,ri as wr,rn as Tr,rr as Er,rt as Dr,s as Or,sa as kr,si as Ar,sn as jr,t as Mr,ta as Nr,ti as Pr,tn as Fr,tr as Ir,tt as Lr,u as Rr,ua as zr,ui as Br,un as Vr,ur as Hr,ut as Ur,v as Wr,va as Gr,vi as Kr,vn as qr,vt as Jr,w as Yr,wr as Xr,wt as Zr,x as Qr,xi as $r,xr as ei,xt as ti,y as C,yi as ni,yn as ri,yr as ii,yt as ai,z as oi,zr as si,zt as ci}from"./Effect-TOXKEWei.js";import{l as li,t as ui}from"./preload-helper-DY31Aviq.js";var di=e=>e>0?Math.floor(e):0,fi=e=>Math.max(1,di(e)),pi=e=>{let t=e[Symbol.iterator]().next();if(t.done)throw Error(`headUnsafe: empty iterable`);return t.value},mi=`~effect/BigDecimal`,hi={[mi]:mi,[Yt](){let e=Ci(this);return Pr(Pn(String(e.value)),wr(e.scale))},[r](e){return gi(e)&&Oi(this,e)===0},toString(){return`BigDecimal(${Ai(this)})`},toJSON(){return{_id:`BigDecimal`,value:String(this.value),scale:this.scale}},[si](){return this.toJSON()},pipe(){return o(this,arguments)}},gi=e=>cr(e,mi),_i=(e,t)=>{if(!Number.isSafeInteger(t))throw RangeError(`Scale must be a safe integer, got ${t}`);let n=Object.create(hi);return n.value=e,n.scale=t,n},vi=(e,t)=>{let n=_i(e,t);return n.normalized=n,n},yi=BigInt(0),bi=BigInt(1),xi=BigInt(10),Si=vi(yi,0),Ci=e=>{if(e.normalized===void 0){if(e.value===yi)e.normalized=Si;else{let t=`${e.value}`,n=t.length;for(;t[n-1]===`0`;)n--;e.normalized=vi(BigInt(t.slice(0,n)),e.scale-(t.length-n))}}return e.normalized},wi=100,Ti=[bi],Ei=(e,t)=>e===t?0:e<t?-1:1,Di=(e,t)=>{let n=`${e.value<yi?-e.value:e.value}`,r=`${t.value<yi?-t.value:t.value}`,i=BigInt(n.length-r.length)-BigInt(e.scale)+BigInt(t.scale);if(i!==yi)return i<yi?-1:1;let a=Math.max(n.length,r.length);return pn(n.padEnd(a,`0`),r.padEnd(a,`0`))},Oi=(e,t)=>{if(e.scale===t.scale)return Ei(e.value,t.value);let n=ki(e),r=ki(t);if(n!==r)return n<r?-1:1;if(n===0)return 0;let i=e.scale-t.scale,a=Math.abs(i);if(a>wi)return n===-1?Di(t,e):Di(e,t);let o=Ti[a]??=xi**BigInt(a);return i>0?Ei(e.value,t.value*o):Ei(e.value*o,t.value)},ki=e=>e.value===yi?0:e.value<yi?-1:1,Ai=e=>{let t=Ci(e);if(Math.abs(t.scale)>=16)return ji(t);let n=t.value<yi,r=`${n?-t.value:t.value}`,i=t.scale>0?r.padStart(t.scale+1,`0`):r.padEnd(r.length-t.scale,`0`),a=i.length-t.scale,o=t.scale>0?`${i.slice(0,a)}.${i.slice(a)}`:i;return n?`-${o}`:o},ji=e=>{if(Mi(e))return`0e+0`;let t=Ci(e),n=`${t.value}`,r=t.value<yi?2:1,i=n.slice(0,r),a=n.slice(r),o=a.length-t.scale;return`${i}${a===``?``:`.${a}`}e${o>=0?`+`:``}${o}`},Mi=e=>e.value===yi,Ni=tn,Pi=`~effect/encoding/EncodingError`,Fi=class extends Ni(`EncodingError`){[Pi]=Pi},Ii=We,Li=Xr,Ri=ee,zi=dt,Bi=it,Vi=l,Hi=Ve,Ui=ke,Wi=Rt,Gi=xr,Ki=Bn,qi=zn,Ji=gt,Yi=_t;le()(`effect/Cause/StackTrace`),le()(`effect/Cause/InterruptorStackTrace`);var Xi=c,Zi=Wn,Qi=Ye,$i=ae,ea=Tt,ta=ci,na=ct,ra=f,ia=Te,aa={"~effect/Deferred":{_A:mt,_E:mt},pipe(){return o(this,arguments)}},oa=function(){this.resumes=void 0,this.effect=void 0};oa.prototype=aa;var sa=()=>new oa,ca=()=>Kt(()=>sa()),la=e=>Xe(t=>e.effect?t(e.effect):(e.resumes??=[],e.resumes.push(t),Kt(()=>{let n=e.resumes;if(n===void 0)return;let r=n.indexOf(t);r>=0&&n.splice(r,1)}))),ua=m(2,(e,t)=>Kt(()=>pa(e,t))),da=m(2,(e,t)=>ua(e,Ye(t))),fa=m(2,(e,t)=>ua(e,c(t))),pa=(e,t)=>{if(e.effect)return!1;if(e.effect=t,e.resumes){let n=e.resumes;e.resumes=void 0;for(let e=0;e<n.length;e++)n[e](t)}return!0},ma=hr,ha=fn,ga=xn,_a=Fn,va=jr,ya=lr,ba=Yn,xa=Vr,Sa=sn,Ca=et,wa=`~effect/DateTime`,Ta=`~effect/DateTime/TimeZone`,Ea={[wa]:wa,pipe(){return o(this,arguments)},[si](){return this.toString()},toJSON(){return La(this).toJSON()}},Da={...Ea,_tag:`Utc`,[Yt](){return wr(this.epochMilliseconds)},[r](e){return ka(e)&&e._tag===`Utc`&&this.epochMilliseconds===e.epochMilliseconds},toString(){return`DateTime.Utc(${La(this).toJSON()})`}};({...Ea});var Oa={[Ta]:Ta,[si](){return this.toString()}};({...Oa}),{...Oa};var ka=e=>cr(e,wa),Aa=e=>e._tag===`Utc`,ja=e=>{let t=Object.create(Da);return t.epochMilliseconds=e,Object.defineProperty(t,"partsUtc",{value:void 0,enumerable:!1,writable:!0}),t},Ma=e=>{let t=e.getTime();if(Number.isNaN(t))throw new Yi(`Invalid date`);return ja(t)},Na=e=>{if(ka(e))return e;if(e instanceof Date)return Ma(e);if(typeof e==`object`){if(`epochMilliseconds`in e)return Ma(new Date(e.epochMilliseconds));let t=new Date(0);return Ra(t,e),Ma(t)}return typeof e==`string`&&!Pa(e)?Ma(new Date(e+`Z`)):Ma(new Date(e))},Pa=e=>/Z|GMT|[+-]\d{2}$|[+-]\d{2}:?\d{2}$|\]$/.test(e),Fa=Ir(Na),Ia=e=>ja(e.epochMilliseconds),La=e=>new Date(e.epochMilliseconds),Ra=(e,t)=>{if((t.year!==void 0||t.month!==void 0||t.day!==void 0)&&e.setUTCFullYear(t.year??e.getUTCFullYear(),t.month===void 0?e.getUTCMonth():t.month-1,t.day??e.getUTCDate()),t.weekDay!==void 0){let n=t.weekDay-e.getUTCDay();e.setUTCDate(e.getUTCDate()+n)}t.hour!==void 0&&e.setUTCHours(t.hour),t.minute!==void 0&&e.setUTCMinutes(t.minute),t.second!==void 0&&e.setUTCSeconds(t.second),t.millisecond!==void 0&&e.setUTCMilliseconds(t.millisecond)},za=e=>La(e).toISOString();globalThis.Number;var Ba=m(2,(e,t)=>{if(!globalThis.Number.isFinite(e)||!globalThis.Number.isFinite(t)||t===0)return NaN;if(globalThis.Number.isInteger(e)&&globalThis.Number.isInteger(t))return e%t;let[n,r]=Va(e),[i,a]=Va(t),o=Math.min(r,a),s=n*BigInt(10)**BigInt(r-o)%(i*BigInt(10)**BigInt(a-o));if(s===BigInt(0))return e<0||Object.is(e,-0)?-0:0;let c=globalThis.Number(`${s}e${o}`);return c===0?Math.sign(e)*globalThis.Number.MIN_VALUE:c});function Va(e){if(globalThis.Number.isInteger(e))return[BigInt(e),0];let t=Math.abs(e).toExponential(),n=t.indexOf(`e`),r=t.slice(0,n).replace(`.`,``);return[BigInt(r)*(e<0?-BigInt(1):BigInt(1)),globalThis.Number(t.slice(n+1))-r.length+1]}globalThis.String;var Ha=e=>e.trim(),Ua=m(2,(e,t)=>Gn(e,qa,e=>t(e))),Wa=e=>e.reasons.some(Ga),Ga=e=>e._tag===`Fail`&&qi(e.error),Ka=e=>{let t,n=!1;for(let r of e.reasons)Ga(r)?t??=r.error:r._tag!==`Interrupt`&&(n=!0);return t===void 0?ot(e):n?ot(Li(e.reasons.filter(e=>!Ga(e)))):Me(t)},qa=e=>{let t=Ka(e);return Ct(t)?t:Me(t.success.value)},Ja=e=>{let t=Ka(e);return Ct(t)?Zi(t.failure):Xi(t.success.value)},Ya=ht(`effect/Metric/CurrentMetricAttributes`,{defaultValue:()=>({})}),Xa=ht(`effect/Metric/MetricRegistry`,{defaultValue:()=>new Map}),Za=`~effect/Metric`,Qa=class{[Za]=Za;#e;#t=``;id;description;attributes;constructor(e,t,n){this.id=e,this.description=t,this.attributes=n}valueUnsafe(e){return this.hook(e).get(e)}modifyUnsafe(e,t){return this.hook(t).modify(e,t)}updateUnsafe(e,t){return this.hook(t).update(e,t)}hook(e){let t=Un(e,Ya);t!==this.#e&&(this.#e=t,this.#t=ao(this,so(this.attributes,t)));let n=Un(e,Xa),r=n.get(this.#t);return ni(r)&&(r={id:this.id,type:this.type,description:this.description,attributes:Object.keys(t).length>0?so(this.attributes,t):this.attributes,hooks:this.createHooks()},n.set(this.#t,r)),r.hooks}pipe(){return o(this,arguments)}},$a=BigInt(0),eo=class extends Qa{type=`Counter`;#e;#t;constructor(e,t){super(e,t?.description,co(t?.attributes)),this.#e=t?.bigint??!1,this.#t=t?.incremental??!1}createHooks(){let e=this.#e?$a:0,t=this.#t?this.#e?e=>e>=$a:e=>e>=0:e=>!0;return oo(()=>({count:e,incremental:this.#t}),n=>{t(n)&&(e+=n)})}},to=class extends Qa{type;metric;valueUnsafe;updateUnsafe;modifyUnsafe;constructor(e,t,n,r){super(e.id,e.description,e.attributes),this.metric=e,this.valueUnsafe=t,this.updateUnsafe=n,this.modifyUnsafe=r,this.type=e.type}createHooks(){return this.metric.createHooks()}},no=(e,t)=>new eo(e,t),ro=m(2,(e,t)=>Ge(n=>Kt(()=>e.updateUnsafe(t,n)))),io=m(2,(e,t)=>{let n=lo(t);return new to(e,t=>e.valueUnsafe(n(t)),(t,r)=>e.updateUnsafe(t,n(r)),(t,r)=>e.modifyUnsafe(t,n(r)))});function ao(e,t){let n=Object.entries(t).sort((e,t)=>e[0]<t[0]?-1:+(e[0]>t[0]));return JSON.stringify([e.type,e.id,e.description,n])}function oo(e,t,n){return{get:e,update:t,modify:n??t}}function so(e,t){return{...co(e),...co(t)}}function co(e){return bn(e)&&Array.isArray(e)?e.reduce((e,[t,n])=>(h(e,t,n),e),{}):e}function lo(e){let t,n={};return r=>{let i=Un(r,Ya);return i!==t&&(t=i,n=so(i,e)),ie(r,Ya,n)}}var uo=ka,fo=Aa,po=Na,mo=Fa,ho=Ia;le()(`effect/DateTime/CurrentTimeZone`);var go=za,_o=e=>yo(typeof e==`string`?bo.encode(e):e),vo=e=>{let t=xo(e),n=t.length;if(n%4!=0)return ot(new Fi({kind:`Decode`,module:`Base64`,input:t,message:`Length must be a multiple of 4, but is ${n}`}));let r=t.indexOf(`=`);if(r!==-1&&(r<n-2||r===n-2&&t[n-1]!==`=`))return ot(new Fi({kind:`Decode`,module:`Base64`,input:t,message:`Found a '=' character, but it is not at the end`}));try{let e=t.endsWith(`==`)?2:+!!t.endsWith(`=`),r=new Uint8Array(n/4*3-e);for(let e=0,i=0;e<n;e+=4,i+=3){let n=wo(t.charCodeAt(e))<<18|wo(t.charCodeAt(e+1))<<12|wo(t.charCodeAt(e+2))<<6|wo(t.charCodeAt(e+3));r[i]=n>>16,r[i+1]=n>>8&255,r[i+2]=n&255}return Me(r)}catch(e){return ot(new Fi({kind:`Decode`,module:`Base64`,input:t,message:e instanceof Error?e.message:`Invalid input`}))}},yo=e=>{let t=e.length,n=``,r;for(r=2;r<t;r+=3)n+=So[e[r-2]>>2],n+=So[(e[r-2]&3)<<4|e[r-1]>>4],n+=So[(e[r-1]&15)<<2|e[r]>>6],n+=So[e[r]&63];return r===t+1&&(n+=So[e[r-2]>>2],n+=So[(e[r-2]&3)<<4],n+=`==`),r===t&&(n+=So[e[r-2]>>2],n+=So[(e[r-2]&3)<<4|e[r-1]>>4],n+=So[(e[r-1]&15)<<2],n+=`=`),n},bo=new TextEncoder,xo=e=>e.replace(/[\n\r]/g,``),So=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,Co=new Uint8Array(123).fill(255);for(let e=0;e<64;e++)Co[So.charCodeAt(e)]=e;Co[61]=0;var wo=e=>{if(e>=Co.length||Co[e]===255)throw TypeError(`Invalid character ${String.fromCharCode(e)}`);return Co[e]};Ni(`CookiesError`),{...st},{...st};var To=new WeakMap,Eo=`~effect/Redacted`,Do=e=>cr(e,Eo),Oo=(e,t)=>{let n=Object.create(ko);return t?.label&&(n.label=t.label),To.set(n,e),n},ko={[Eo]:{_A:e=>e},label:void 0,...ii,toJSON(){return this.toString()},toString(){return`<redacted${Gt(this.label)?`:`+this.label:``}>`},[Yt](){return rr(To.get(this))},[r](e){return Do(e)&&Pt(To.get(this),To.get(e))}};({...ii});function Ao(e){return e.checks?e.checks[e.checks.length-1].annotations:e.annotations}function jo(e){return t=>Ao(t)?.[e]}var Mo=`~structural`,No=`~identifier`,Po=`~sentinels`,Fo=`~constructor`,Io=[`title`,`description`,`default`,`examples`,`readOnly`,`writeOnly`,`format`,`contentEncoding`,`contentMediaType`,`contentSchema`],Lo=jo(`identifier`),Ro=jo(No),zo=jo(`title`),Bo=jo(`description`),Vo=ce(e=>{let t=Ao(e)?.identifier;return typeof t==`string`?t:e.getExpected(Vo)}),Ho=new Set([Po,Mo,`representation`,`arbitraryConstraint`,`toJsonSchema`,`toCode`,`toEquivalence`,`toFormatter`,`toCodec`,`toCodecJson`,`toCodecStringTree`,`toCodecIso`,`toCodecArbitrary`]),w=Symbol(),Uo=Xi,Wo=Uo(w),Go=Uo(w),Ko=e=>e===w?In():ur(e),qo=e=>e._tag===`None`?Wo:Uo(e.value),Jo=`~effect/SchemaIssue/Issue`;function Yo(e){return cr(e,Jo)&&e[Jo]===Jo}function Xo(e){return Object.hasOwn(e,`input`)}var Zo=class{[Jo]=Jo;constructor(e,t){t?.reportInput===!0&&e!==w&&(this.input=e)}},Qo=class extends Zo{_tag=`Filter`;filter;issue;constructor(e,t,n,r){super(n,r),this.filter=e,this.issue=t}},$o=class extends Zo{_tag=`Encoding`;ast;issue;constructor(e,t,n,r){super(n,r),this.ast=e,this.issue=t}},es=class extends Zo{_tag=`Pointer`;path;issue;constructor(e,t){super(),this.path=e,this.issue=t}},ts=class extends Zo{_tag=`MissingKey`;annotations;constructor(e){super(),this.annotations=e}},ns=class extends Zo{_tag=`UnexpectedKey`;ast;constructor(e,t,n){super(t,n),this.ast=e}},rs=class extends Zo{_tag=`Composite`;ast;issues;constructor(e,t,n,r){super(n,r),this.ast=e,this.issues=t}},is=class extends Zo{_tag=`InvalidType`;ast;constructor(e,t,n){super(t,n),this.ast=e}},as=class extends Zo{_tag=`InvalidValue`;annotations;constructor(e,t,n){super(t,n),this.annotations=e}},os=class extends Zo{_tag=`Forbidden`;annotations;constructor(e,t,n){super(t,n),this.annotations=e}},ss=class extends Zo{_tag=`AnyOf`;ast;issues;constructor(e,t,n,r){super(n,r),this.ast=e,this.issues=t}},cs=class extends Zo{_tag=`OneOf`;ast;successes;constructor(e,t,n,r){super(n,r),this.ast=e,this.successes=t}};function ls(e,t,n){if(Yo(e))return e;if(typeof e==`string`)return new as({message:e},t,n);let r=typeof e.issue==`string`?new as({message:e.issue},t,n):e.issue;return new es(e.path,r)}function us(e,t,n){if(e!==void 0)return typeof e==`boolean`?e?void 0:new as(void 0,t,n):ls(e,t,n)}function ds(e,t,n,r){return Array.isArray(t)?Qe(t)?t.length===1?ls(t[0],n,r):new rs(e,Ce(t,e=>ls(e,n,r)),n,r):void 0:us(t,n,r)}var fs=e=>{let t=Cs(e);if(t!==void 0)return t;switch(e._tag){case`InvalidType`:return _s(Vo(e.ast),e);case`InvalidValue`:{let t=gs(e);if(t!==void 0)return _s(t,e);let n=hs(e);return n===void 0?`Expected a valid value`:`Invalid data ${n}`}case`MissingKey`:return`Missing key`;case`UnexpectedKey`:{let t=hs(e);return t===void 0?`Expected no excess property`:`Unexpected key with value ${t}`}case`Forbidden`:return`Forbidden operation`;case`OneOf`:{let t=hs(e);return t===void 0?`Expected exactly one member to match`:`Expected exactly one member to match the input ${t}`}}},ps=e=>Cs(e.issue)??Cs(e);function ms(e){return t=>({issues:vs(t,[],e?.leafHook??fs,e?.checkHook??ps)})}function hs(e){return Xo(e)?d(e.input):void 0}function gs(e){let t=e.annotations?.expected;return typeof t==`string`?t:void 0}function _s(e,t){let n=hs(t);return n===void 0?`Expected ${e}`:`Expected ${e}, got ${n}`}function vs(e,t,n,r){switch(e._tag){case`Filter`:{let i=r(e);if(i!==void 0)return[{path:t,message:i}];if(e.issue._tag!==`InvalidValue`)return vs(e.issue,t,n,r);let a=gs(e.issue);return[{path:t,message:a===void 0?_s(ys(e.filter),e):_s(a,e.issue)}]}case`Encoding`:return vs(e.issue,t,n,r);case`Pointer`:return vs(e.issue,[...t,...e.path],n,r);case`Composite`:return e.issues.flatMap(e=>vs(e,t,n,r));case`AnyOf`:return e.issues.length===0?[{path:t,message:Cs(e)??_s(Vo(e.ast),e)}]:e.issues.flatMap(e=>vs(e,t,n,r));default:return[{path:t,message:n(e)}]}}function ys(e){let t=e.annotations?.expected;if(typeof t==`string`)return t;switch(e._tag){case`Filter`:return`<filter>`;case`FilterGroup`:return e.checks.map(e=>ys(e)).join(` & `)}}function bs(){return e=>Ss(e,``)}var xs=bs();function Ss(e,t){let n;switch(e._tag){case`Filter`:{let r=ps(e);if(r!==void 0)n=r;else{if(e.issue._tag!==`InvalidValue`)return Ss(e.issue,t);let r=gs(e.issue);n=r===void 0?_s(ys(e.filter),e):_s(r,e.issue)}break}case`Encoding`:return Ss(e.issue,t);case`Pointer`:return Ss(e.issue,t+be(e.path));case`Composite`:case`AnyOf`:if(e._tag===`Composite`||e.issues.length>0)return e.issues.map(e=>Ss(e,t)).join(`
|
|
3
3
|
`);n=Cs(e)??_s(Vo(e.ast),e);break;default:n=fs(e)}return t?`${n}\n at ${t}`:n}function Cs(e){if(e._tag===`Pointer`)return;if(e._tag===`Encoding`)return Cs(e.issue);let t=(e._tag===`Filter`?e.filter.annotations:`annotations`in e?e.annotations:e.ast.annotations)?.[e._tag===`MissingKey`?`messageMissingKey`:e._tag===`UnexpectedKey`?`messageUnexpectedKey`:`message`];if(typeof t==`string`)return t}function ws(e){let t;for(let n of e.reasons){if(!Ii(n)||!Yo(n.error))return;t??=n.error}return t}function Ts(e,t){let n=ws(e);if(n===void 0)throw Error(t,{cause:e});return n}var Es=e=>_o(e).replace(/=/g,``).replace(/\+/g,`-`).replace(/\//g,`_`),Ds=e=>{let t=e.replace(/[\n\r]/g,``),n=t.length;if(n%4==1)return ot(new Fi({module:`Base64Url`,kind:`Decode`,input:t,message:`Length should be a multiple of 4, but is ${n}`}));if(!/^[-_A-Z0-9]*?={0,2}$/i.test(t))return ot(new Fi({module:`Base64Url`,kind:`Decode`,input:t,message:`Invalid input`}));let r=n%4==2?`${t}==`:n%4==3?`${t}=`:t;return r=r.replace(/-/g,`+`).replace(/_/g,`/`),vo(r)},Os=e=>Object.assign(Object.create(Hn),e);function ks(e){return Rs((t,n)=>y(e(t,n)))}function As(e){return ks((t,n)=>{let r={message:e(t)};return gn(t)?new os(r,t.value,n):new os(r)})}var js=As(()=>`Encoding is not supported`),Ms=Os({_tag:`Passthrough`});function Ns(){return Ms}function Ps(){return Ms}function Fs(e){return Os({_tag:`Transform`,transform:e})}function Is(e){return Os({_tag:`TransformEffect`,transform:e})}function Ls(e){return Os({_tag:`TransformOptional`,transform:e})}function Rs(e){return Os({_tag:`TransformOptionalEffect`,transform:e})}function zs(){return Ls(()=>In())}function Bs(e){return Rs(t=>{let n=br(t,bn);return gn(n)?v(n):Fe(e,ur)})}function Vs(){return Fs(globalThis.String)}function Hs(){return Fs(globalThis.Number)}function Us(){return Fs(globalThis.BigInt)}function Ws(){return Fs(e=>new globalThis.Date(e))}function Gs(){return Fs(Ha)}function Ks(e){return Is((t,n)=>ai({try:()=>JSON.parse(t,e?.reviver),catch:()=>new as({expected:`a valid JSON string`},t,n)}))}function qs(e){return Is((t,n)=>ai({try:()=>{let n=JSON.stringify(t,e?.replacer,e?.space);if(n===void 0)throw TypeError(`Value cannot be represented as JSON`);return n},catch:()=>new as({expected:`a JSON-serializable value`},t,n)}))}function Js(){return Fs(_o)}function Ys(){return Is((e,t)=>oi(a(vo(e)),()=>new as({expected:`a valid Base64 string`},e,t)))}var Xs=class extends qe{_tag=`Middleware`;decode;encode;constructor(e,t){super(),this.decode=e,this.encode=t}flip(){return new Xs(this.encode,this.decode)}},Zs=`~effect/SchemaTransformation/Transformation`,Qs=class extends qe{[Zs]=Zs;_tag=`Transformation`;decode;encode;constructor(e,t){super(),this.decode=e,this.encode=t}flip(){return new Qs(this.encode,this.decode)}};function $s(e){return cr(e,Zs)&&e[Zs]===Zs}var ec=e=>$s(e)?e:new Qs(e.decode,e.encode);function tc(e){return new Qs(Is(e.decode),Is(e.encode))}function nc(){return new Qs(Gs(),Ns())}var rc=new Qs(Ns(),Ns());function ic(){return rc}var ac=new Qs(Hs(),Vs()),oc=new Qs(Us(),Vs()),sc=new Qs(Ws(),Fs(wt)),cc=new Qs(Ys(),Js());function lc(e){return new Qs(Ks(e??{}),qs(e))}function uc(e){return t=>t._tag===e}var dc=uc(`Declaration`),fc=uc(`Null`),pc=uc(`Undefined`),mc=uc(`Never`),hc=uc(`String`),gc=uc(`Number`),_c=uc(`Boolean`),vc=uc(`Literal`),yc=uc(`UniqueSymbol`),bc=uc(`Arrays`),xc=uc(`Objects`),Sc=uc(`Union`),Cc=uc(`Suspend`),wc=class{to;transformation;constructor(e,t){this.to=e,this.transformation=t}},Tc={},Ec=class{isOptional;isMutable;constructorDefault;annotations;constructor(e,t,n=void 0,r=void 0){this.isOptional=e,this.isMutable=t,this.constructorDefault=n,this.annotations=r}},Dc=`~effect/Schema`,Oc=class{[Dc]=Dc;annotations;checks;encoding;context;constructor(e=void 0,t=void 0,n=void 0,r=void 0){this.annotations=e,this.checks=t,this.encoding=n,this.context=r}toString(){return`<${this._tag}>`}},kc=class extends Oc{_tag=`Declaration`;typeParameters;run;encodingChecks;encodingRun;constructor(e,t,n,r,i,a,o,s){super(n,r,i,a),this.typeParameters=e,this.run=t,this.encodingChecks=o,this.encodingRun=s}getParser(){let e;return(t,n)=>t===w?Wo:(e??=this.run(this.typeParameters))(t,this,n)}_rebuild(e,t,n,r,i){let a=nu(this.typeParameters,e);return a===this.typeParameters&&t===this.checks&&n===this.encodingChecks&&r===this.run&&i===this.encodingRun?this:new kc(a,r,this.annotations,t,void 0,this.context,n,i)}recur(e){return this._rebuild(e,this.checks,this.encodingChecks,this.run,this.encodingRun)}flip(e){return this._rebuild(e,this.encodingChecks,this.checks,this.encodingRun??this.run,this.run)}getExpected(){let e=this.annotations?.expected;return typeof e==`string`?e:`<Declaration>`}},Ac=new class extends Oc{_tag=`Null`;getParser(){return Cu(this,null)}getExpected(){return`null`}},jc=class extends Oc{_tag=`Undefined`;getParser(){return Cu(this,void 0)}toCodecJson(){return Wl(this,[Mc])}getExpected(){return`undefined`}},Mc=new wc(Ac,new Qs(Fs(()=>void 0),Fs(()=>null))),Nc=new jc,Pc=new class extends Oc{_tag=`Never`;getParser(){return wu(this,Br)}getExpected(){return`never`}},Fc=new class extends Oc{_tag=`Unknown`;getParser(){return wu(this,$t)}getExpected(){return`unknown`}},Ic=class extends Oc{_tag=`Literal`;literal;constructor(e,t,n,r,i){if(super(t,n,r,i),typeof e==`number`&&!globalThis.Number.isFinite(e))throw Error(`A numeric literal must be finite, got ${d(e)}`);this.literal=e}getParser(){return Cu(this,this.literal)}matchPart(e,t){return e===globalThis.String(this.literal)?this.literal:void 0}toCodecJson(){return typeof this.literal==`bigint`?Lc(this):this}toCodecStringTree(){return typeof this.literal==`string`?this:Lc(this)}getExpected(){return typeof this.literal==`string`?JSON.stringify(this.literal):globalThis.String(this.literal)}};function Lc(e){let t=globalThis.String(e.literal);return Wl(e,[new wc(new Ic(t),new Qs(Fs(()=>e.literal),Fs(()=>t)))])}var Rc=new class extends Oc{_tag=`String`;getParser(){return wu(this,Gt)}matchPart(e,t){let n=this.checks;return n&&!t.disableChecks&&Bu(n,e,void 0,this,t)?void 0:e}getExpected(){return`string`}},zc=class extends Oc{_tag=`Number`;getParser(){return wu(this,mr)}matchKey(e,t){return this._match(ku,e,t)}matchPart(e,t){return this._match(Ou,e,t)}_match(e,t,n){if(!e.test(t))return;let r=globalThis.Number(t);return n.disableChecks||!this.checks?r:Bu(this.checks,r,void 0,this,n)?void 0:r}toCodecJson(){return this.checks&&(Bc(this.checks,`effect/schema/isFinite`)||Bc(this.checks,`effect/schema/isInt`))?this:Wl(this,[zl])}toCodecStringTree(){return this.toCodecJson()===this?Wl(this,[Mu]):Wl(this,[Nu])}getExpected(){return`number`}};function Bc(e,t){return e.some(e=>e.annotations?.representation?.id===t||e._tag===`FilterGroup`&&Bc(e.checks,t))}var Vc=new zc,Hc=new class extends Oc{_tag=`Boolean`;getParser(){return wu(this,on)}getExpected(){return`boolean`}},Uc=new class extends Oc{_tag=`Symbol`;getParser(){return wu(this,Kr)}matchKey(e,t){return t.disableChecks||!this.checks?e:Bu(this.checks,e,void 0,this,t)?void 0:e}toCodecStringTree(){return Wl(this,[Ru])}getExpected(){return`symbol`}},Wc=new class extends Oc{_tag=`BigInt`;getParser(){return wu(this,Ar)}matchPart(e,t){if(!Pu.test(e))return;let n=globalThis.BigInt(e);return t.disableChecks||!this.checks?n:Bu(this.checks,n,void 0,this,t)?void 0:n}toCodecStringTree(){return Wl(this,[Iu])}getExpected(){return`bigint`}},Gc=class extends Oc{_tag=`Arrays`;isMutable;elements;rest;encodingChecks;constructor(e,t,n,r,i,a,o,s){super(r,i,a,o),this.isMutable=e,this.elements=t,this.rest=n,this.encodingChecks=s;let c=!1;for(let e=0;e<t.length;e++)if(pu(t[e]))c=!0;else if(c)throw Error(`A required element cannot follow an optional element. ts(1257)`);if(c&&n.length>1)throw Error(`A required element cannot follow an optional element. ts(1257)`);for(let e=1;e<n.length;e++)if(pu(n[e]))throw Error(`An optional element cannot follow a rest element. ts(1266)`)}getParser(e,t=e){let n=this,r,i,a=n.elements.length,o=Math.max(0,n.rest.length-1);function s(e,t){return t<a?r[t]:t>=e?i[t-e+1]:i[0]}let c=e=>{let{input:t,len:r,options:i}=e;if(n.rest.length===0&&r>a)for(let o=a;o<r;o++){let r=new ns(n,t[o],i),a=new es([o],r);if(i.errors===`all`)e.issues?e.issues.push(a):e.issues=[a];else return y(new rs(n,[a],t,i))}return e.issues?y(new rs(n,e.issues,t,i)):Uo(e.output)},l=(e,t)=>{let r=e.length,i={ast:n,getParser:s,input:e,len:r,tailThreshold:Math.max(a,r-o),output:new globalThis.Array(r),issues:void 0,options:t},u=n.rest.length===0?a:Math.max(r,a+o),d=t.concurrency===void 0?1:Xt(t.concurrency),f=d===1?Jc(i,e,0,u):Yc(i,e,{concurrency:d,end:u});if(!f)return c(i);if(pe(f))return Qt(f,()=>c(i));let p=!0;return Cn(()=>p?(p=!1,C(f,()=>c(i))):l(e,t))};return(e,a)=>{if(e===w)return Wo;try{return Array.isArray(e)?(r||(r=n.elements.map(e=>({ast:e,parser:t(e)})),i=n.rest.map(e=>({ast:e,parser:t(e)}))),l(e,a)):y(new is(n,e,a))}catch(e){return fr(e)}}}_rebuild(e,t,n){let r=nu(this.elements,e),i=nu(this.rest,e);return r===this.elements&&i===this.rest&&t===this.checks&&n===this.encodingChecks?this:new Gc(this.isMutable,r,i,this.annotations,t,void 0,this.context,n)}recur(e){return this._rebuild(e,this.checks,this.encodingChecks)}flip(e){return this._rebuild(e,this.encodingChecks,this.checks)}getExpected(){return`array`}};function Kc(e,t,n,r){if(n._tag===`Failure`)return Xc(e,e.ast,r,n);let i=n===Go?t:n[ei];if(i!==w)e.output[r]=i;else{let t=e.getParser(e.tailThreshold,r);if(pu(t.ast))return;let n=new es([r],new ts(t.ast.context?.annotations));if(e.options.errors===`all`)e.issues?e.issues.push(n):e.issues=[n];else return Qi(new rs(e.ast,[n],e.input,e.options))}}var qc={onItem(e,t,n){let r=n<e.len?t:w;return e.getParser(e.tailThreshold,n).parser(r,e.options)},step:Kc},Jc=hn()(qc),Yc=i()(qc),Xc=(e,t,n,r)=>{if(r.cause.reasons.length===0)return r;let i=ws(r.cause);if(i===void 0)return Zi(Vi(r.cause,r=>new rs(t,[new es([n],r)],e.input,e.options)));let a=new es([n],i);if(e.options.errors===`all`)e.issues?e.issues.push(a):e.issues=[a];else return Qi(new rs(t,[a],e.input,e.options))},Zc=`[+-]?\\d*\\.?\\d+(?:[Ee][+-]?\\d+)?`;function Qc(e,t,n=Tc){let r,i;function a(t){switch(t._tag){case`String`:case`TemplateLiteral`:return(r??=Object.keys(e)).filter(e=>t.matchPart(e,n)!==void 0);case`Number`:return(r??=Object.keys(e)).filter(e=>t.matchKey(e,n)!==void 0);case`Symbol`:return(i??=Object.getOwnPropertySymbols(e)).filter(r=>Object.prototype.propertyIsEnumerable.call(e,r)&&t.matchKey(r,n)!==void 0);case`Union`:return[...new Set(t.types.flatMap(a))];default:return[]}}return a(Tu(yu(t)))}var $c=class{name;type;constructor(e,t){this.name=e,this.type=t}};function el(e){switch(e._tag){case`String`:case`Number`:case`Symbol`:case`TemplateLiteral`:return!0;case`Union`:return e.types.every(el);default:return!1}}function tl(e){let t=Kl(e);switch(t._tag){case`String`:case`Number`:case`Symbol`:case`TemplateLiteral`:return!0;case`Union`:return t.types.every(tl);default:return!1}}function nl(e){return el(e)&&tl(e)}var rl=class{parameter;type;constructor(e,t){if(!nl(e))throw Error(`Invalid index signature parameter ${e._tag}`);if(this.parameter=e,this.type=t,pu(t)&&!Su(t))throw Error("Cannot use `Schema.optionalKey` with index signatures, use `Schema.optional` instead.")}},il=class extends Oc{_tag=`Objects`;propertySignatures;indexSignatures;encodingChecks;constructor(e,t,n,r,i,a,o){super(n,r,i,a),this.propertySignatures=e,this.indexSignatures=t,this.encodingChecks=o}getParser(e,t=e){let n=this,r=n.propertySignatures.length,a=n.indexSignatures.length;if(!r&&!a)return wu(n,dn);let o,s,c=()=>(o||(o=n.propertySignatures.map(e=>({parser:t(e.type),name:e.name,type:e.type})),s=a?n.indexSignatures.map(n=>({is:n,parserKey:e(Tu(n.parameter)),parserValue:t(n.type)})):void 0),o),l=()=>{let e=new Set(n.propertySignatures.map(e=>typeof e.name==`number`?globalThis.String(e.name):e.name)),t=(t,i,a,o,s)=>{if(s._tag===`Failure`)return Xc(t,n,i,s)??ea;let c=s===Go?o:s[ei];if(a!==w&&c!==w){if(r&&(e.has(i)||e.has(typeof a==`number`?globalThis.String(a):a)))return ea;h(t.out,a,c)}return ea},l=(e,r,i,a)=>{if(!a){let t=i.parserKey(r,e.options);if(!pe(t))return C(Dn(t),t=>l(e,r,i,t));a=t}if(a._tag===`Failure`)return Xc(e,n,r,a)??ea;let o=a===Go?r:a[ei],s=e.input[r],c=i.parserValue(s,e.options);return pe(c)?t(e,r,o,s,c):C(Dn(c),n=>t(e,r,o,s,n))},u=(e,n,r)=>{let i=e.input[n],a=r.parserValue(i,e.options);return pe(a)?t(e,n,n,i,a):C(Dn(a),r=>t(e,n,n,i,r))},d=a?i()({onItem:(e,[t,n])=>n.is.parameter===Rc?u(e,t,n):l(e,t,n),step:(e,t,n)=>n._tag===`Failure`?n:void 0}):void 0;return p(function*(t,i){if(t===w)return w;if(!(typeof t==`object`&&t&&!Array.isArray(t)))return yield*y(new is(n,t,i));c();let f=t,p={},m={ast:n,input:f,out:p,issues:void 0,options:i},ee=i.errors===`all`,te=i.onExcessProperty===`error`,ne=i.concurrency===void 0?1:Xt(i.concurrency),re=a&&te?n.indexSignatures.map(e=>Qc(f,e.parameter,i)):void 0;if(te){let r=re?new Set(e):e;if(re)for(let e of re)for(let t of e)r.add(t);let a=Reflect.ownKeys(f);for(let e=0;e<a.length;e++){let o=a[e];if(!r.has(o)&&Object.prototype.propertyIsEnumerable.call(f,o)){let e=new ns(n,f[o],i),r=new es([o],e);if(ee){m.issues?m.issues.push(r):m.issues=[r];continue}return yield*y(new rs(n,[r],t,i))}}}if(r){let e=ne===1?sl(m,o):cl(m,o,{concurrency:ne});e&&(yield*e)}if(a&&ne===1)for(let e=0;e<a;e++){let t=s[e],n=t.is.parameter===Rc?u:l,r=re?.[e]??(t.is.parameter===Rc?Object.keys(f):Qc(f,t.is.parameter,i));for(let e=0;e<r.length;e++){let i=n(m,r[e],t);if(!pe(i))yield*i;else if(i._tag===`Failure`)return yield*i}}else if(d){let e=Rn();for(let t=0;t<a;t++){let n=s[t],r=re?.[t]??(n.is.parameter===Rc?Object.keys(f):Qc(f,n.is.parameter,i));for(let t=0;t<r.length;t++)e.push([r[t],n])}let t=d(m,e,{concurrency:ne});t&&(yield*t)}return m.issues?yield*y(new rs(n,m.issues,t,i)):p})};if(a)return l();let u,d=(e,t,n)=>{let r=o[t];return C(Dn(n),n=>{let i=al(e,r,n);if(i)return i;let a=()=>Uo(e.out),s=sl(e,o.slice(t+1));return s?Qt(s,a):a()})};return(e,t)=>{if(e===w)return Wo;if(t.errors===`all`||t.onExcessProperty!==void 0||t.concurrency!==void 0&&Xt(t.concurrency)!==1)return(u??=l())(e,t);if(!(typeof e==`object`&&e&&!Array.isArray(e)))return y(new is(n,e,t));let r=c(),i=e,a={},o={ast:n,input:i,out:a,issues:void 0,options:t};try{for(let e=0;e<r.length;e++){let n=r[e],s=n.name,c=xl(i,s),l=c?i[s]:w,u=n.parser(l,t);if(!pe(u))return d(o,e,u);if(u===Go){c&&h(a,s,l);continue}let f=al(o,n,u);if(f)return f}}catch(e){return fr(e)}return Uo(a)}}_rebuild(e,t,n,r){let i=nu(this.propertySignatures,t=>{let n=e(t.type);return n===t.type?t:new $c(t.name,n)}),a=nu(this.indexSignatures,n=>{let r=t(n.parameter),i=e(n.type);return r===n.parameter&&i===n.type?n:new rl(r,i)});return i===this.propertySignatures&&a===this.indexSignatures&&n===this.checks&&r===this.encodingChecks?this:new il(i,a,this.annotations,n,void 0,this.context,r)}flip(e){return this._rebuild(e,e,this.encodingChecks,this.checks)}recur(e,t=e){return this._rebuild(e,t,this.checks,this.encodingChecks)}getExpected(){return this.propertySignatures.length===0&&this.indexSignatures.length===0?`object | array`:`object`}};function al(e,t,n){if(n._tag===`Failure`)return Xc(e,e.ast,t.name,n);if(n===Go)return;let r=n[ei];if(r!==w){h(e.out,t.name,r);return}if(delete e.out[t.name],!pu(t.type)){let n=new es([t.name],new ts(t.type.context?.annotations));if(e.options.errors===`all`){e.issues?e.issues.push(n):e.issues=[n];return}return Qi(new rs(e.ast,[n],e.input,e.options))}}var ol={onItem(e,t){if(!xl(e.input,t.name))return t.parser(w,e.options);let n=e.input[t.name];return h(e.out,t.name,n),t.parser(n,e.options)},step:al},sl=hn()(ol),cl=i()(ol);function ll(e,t){return e?t?[...e,...t]:e:t}function ul(e,t,n){return new il(Reflect.ownKeys(e).map(t=>new $c(t,e[t].ast)),[],n,t)}function dl(e){return e.ast}function fl(e,t=void 0){return new Gc(!1,e.map(e=>e.ast),[],void 0,t)}function pl(e,t,n){return new Cl(e.map(dl),t,void 0,n)}function ml(e){if(e.encoding)throw Error(`mutable does not support encodings`);return new Gc(!0,e.elements,e.rest,e.annotations,e.checks,void 0,e.context,e.encodingChecks)}var hl=re(e=>{for(;;){if(Cc(e))return Fc;let t=e.encoding;if(!t)return e.recur?.(hl,mt)??e;if(t.some(e=>e.transformation._tag===`Middleware`&&e.transformation.decode!==mt))return Fc;e=t[t.length-1].to}});function gl(e){switch(e._tag){case`Null`:return[`null`];case`Undefined`:return[`undefined`];case`String`:case`TemplateLiteral`:return[`string`];case`Number`:return[`number`];case`Boolean`:return[`boolean`];case`Symbol`:case`UniqueSymbol`:return[`symbol`];case`BigInt`:return[`bigint`];case`Arrays`:return[`array`];case`ObjectKeyword`:return[`object`,`array`,`function`];case`Objects`:return e.propertySignatures.length||e.indexSignatures.length?[`object`]:[`string`,`number`,`boolean`,`symbol`,`bigint`,`object`,`array`,`function`];case`Enum`:return Array.from(new Set(e.enums.map(([,e])=>typeof e)));case`Literal`:return[typeof e.literal];case`Union`:return Array.from(new Set(e.types.flatMap(gl)));default:return[`null`,`undefined`,`string`,`number`,`boolean`,`symbol`,`bigint`,`object`,`array`,`function`]}}function _l(e){switch(e._tag){default:return[];case`Declaration`:{let t=e.annotations?.[Po];return Array.isArray(t)?t:[]}case`Objects`:return e.propertySignatures.flatMap(e=>{let t=e.type;if(!pu(t)){if(vc(t))return[{key:e.name,literal:t.literal}];if(yc(t))return[{key:e.name,literal:t.symbol}]}return[]});case`Arrays`:return e.elements.flatMap((e,t)=>{if(!pu(e)){if(vc(e))return[{key:t,literal:e.literal}];if(yc(e))return[{key:t,literal:e.symbol}]}return[]});case`Union`:{if(e.types.length===0)return[];let t=e.types.map(e=>_l(hl(e)));return t[0].filter(e=>t.every(t=>t.some(t=>t.key===e.key&&t.literal===e.literal)))}case`Suspend`:return _l(e.thunk())}}var vl=new WeakMap,yl=Object.freeze([]),bl=e=>e===null?`null`:Array.isArray(e)?`array`:typeof e,xl=(e,t)=>t===`__proto__`?Object.hasOwn(e,t):t in e;function Sl(e){let t=vl.get(e);if(t)return t;let n,r=0,i,a,o=!0,s=[];for(let t=0;t<e.length;t++){let c=e[t],l=hl(c);if(mc(l))continue;if(vc(l)||yc(l)){a??=new Map;let e=vc(l)?l.literal:l.symbol;s[t]=e;let n=a.get(e);n||a.set(e,n=[]),n.push(t)}else o=!1;let u=_l(l);if(u.length){n??=new Map,r++;for(let{key:e,literal:r}of u){let i=n.get(e);i||n.set(e,i=[new Map,new Set]),i[1].add(t);let a=i[0].get(r);a||i[0].set(r,a=new Set),a.add(t)}}else{i??={};let e=gl(l);for(let n of e)(i[n]??=[]).push(t)}}let c={},l=e=>c[e]??=Object.freeze(i?.[e]??yl);if(o&&a)a.forEach(Object.freeze),t=e=>a.get(e)??yl;else if(n?.size===1&&!i){let[r,[i]]=n.entries().next().value,a=new Map;for(let[e,t]of i)a.set(e,Object.freeze(Array.from(t)));let o=Object.freeze(e.map((e,t)=>t));t=(e,t)=>{if(kn(e)){let n=xl(e,r)?e[r]:void 0;if(n!==void 0)return a.get(n)??yl;if(t)return o}return yl}}else if(n){let e;for(let t of n)(!e||t[1][0].size>e[1][0].size)&&t[1][1].size===r&&(e=t);t=(t,r)=>{let a=bl(t);if(!kn(t))return l(a);let o=new Set(i?.[a]),s;if(e){let[n,[i]]=e,c=xl(t,n),u=c?t[n]:void 0;if(c&&(!r||u!==void 0)){let e=i.get(u);if(!e)return l(a);for(let t of e)o.add(t);s=n}}if(s===void 0)for(let[e,[i,a]]of n){let n=xl(t,e),s=n?t[e]:void 0;if(n&&(!r||s!==void 0)){let e=i.get(s);if(e)for(let t of e)o.add(t)}else if(r)for(let e of a)o.add(e)}for(let[e,[i,a]]of n){if(e===s)continue;let n=xl(t,e),c=n?t[e]:void 0;if(n&&(!r||c!==void 0)){let e=i.get(c);for(let t of o)a.has(t)&&!e?.has(t)&&o.delete(t)}}return Array.from(o).sort((e,t)=>e-t)}}else t=e=>{let t=l(bl(e));return a?t.filter(t=>s[t]===void 0||s[t]===e):t};return vl.set(e,t),t}var Cl=class extends Oc{_tag=`Union`;types;options;encodingChecks;constructor(e,t,n,r,i,a,o){super(n,r,i,a),this.types=e,this.options=t,this.encodingChecks=o}getParser(e,t){let n=this,r=t!==void 0,i=[],a=t=>i[t]??=e(n.types[t]),o;return(e,t)=>{if(e===w)return Wo;let i=(o??=Sl(n.types))(e,r);if(i.length===0)return y(new ss(n,[],e,t));if(i.length===1){let r=a(i[0])(e,t);return r._tag===`Success`?r:pe(r)?wl(n,r.cause,e,t):Tl(n,r,e,t)}return El(n,a,i,e,t)}}_rebuild(e,t,n){let r=nu(this.types,e);return r===this.types&&t===this.checks&&n===this.encodingChecks?this:new Cl(r,this.options,this.annotations,t,void 0,this.context,n)}recur(e){return this._rebuild(e,this.checks,this.encodingChecks)}flip(e){return this._rebuild(e,this.encodingChecks,this.checks)}matchPart(e,t){for(let n of this.types){let r=n.matchPart(e,t);if(r!==void 0)return r}}getExpected(e){let t=this.annotations?.expected;if(typeof t==`string`)return t;if(this.types.length===0)return`never`;let n=this.types.map(t=>{let n=yu(t);switch(n._tag){case`Arrays`:{let t=n.elements.filter(vc);if(t.length>0)return`${Al(n.isMutable)}[ ${t.map(t=>e(t)+jl(t.context?.isOptional)).join(`, `)}, ... ]`;break}case`Objects`:{let t=n.propertySignatures.filter(e=>vc(e.type));if(t.length>0)return`{ ${t.map(t=>`${Al(t.type.context?.isMutable)}${bt(t.name)}${jl(t.type.context?.isOptional)}: ${e(t.type)}`).join(`, `)}, ... }`;break}}return e(n)});return Array.from(new Set(n)).join(` | `)}};function wl(e,t,n,r){let i=ws(t);return i?Qi(new ss(e,[i],n,r)):Zi(t)}function Tl(e,t,n,r){return Rr(t,t=>wl(e,t,n,r))}function El(e,t,n,r,i){let a={ast:e,parser:t,input:r,out:void 0,successes:e.options?.mode===`oneOf`?[]:void 0,issues:void 0,options:i},o=Ol(a,n);if(!o)return a.out?a.out:y(new ss(e,a.issues??[],r,i));if(pe(o))return Dl(o,a);let s=!0;return Cn(()=>s?(s=!1,Dl(o,a)):El(e,t,n,r,i))}function Dl(e,t){return Qt(e,e=>t.out===Go?v(t.input):t.out?t.out:y(new ss(t.ast,t.issues??[],t.input,t.options)))}var Ol=hn()({onItem(e,t){return e.parser(t)(e.input,e.options)},step(e,t,n){if(n._tag===`Failure`){let t=ws(n.cause);if(t===void 0)return n;e.issues?e.issues.push(t):e.issues=[t]}else{if(e.out&&e.successes)return e.successes.push(e.ast.types[t]),Qi(new cs(e.ast,e.successes,e.input,e.options));if(e.out=n,e.successes)e.successes.push(e.ast.types[t]);else return ea}}}),kl=new Cl([new Ic(`Infinity`),new Ic(`-Infinity`),new Ic(`NaN`)]);function Al(e){return e?``:`readonly `}function jl(e){return e?`?`:``}var Ml=class extends Oc{_tag=`Suspend`;thunk;constructor(e,t,n,r,i){if(n)throw Error(`Cannot add checks to Suspend`);super(t,void 0,r,i);let a;this.thunk=()=>a??=e()}getParser(e){let t;return(n,r)=>(t??=e(this.thunk()))(n,r)}recur(e){return new Ml(()=>e(this.thunk()),this.annotations,void 0,void 0,this.context)}getExpected(e){return e(this.thunk())}},Nl=class extends qe{_tag=`Filter`;run;annotations;aborted;constructor(e,t=void 0,n=!1){super(),this.run=e,this.annotations=t,this.aborted=n}annotate(e){return new Nl(this.run,{...this.annotations,...e},this.aborted)}abort(){return new Nl(this.run,this.annotations,!0)}and(e,t){return new Pl([this,e],t)}},Pl=class extends qe{_tag=`FilterGroup`;checks;annotations;constructor(e,t=void 0){super(),this.checks=e,this.annotations=t}annotate(e){return new Pl(this.checks,{...this.annotations,...e})}and(e,t){return new Pl([this,e],t)}};function Fl(e,t,n=!1){return new Nl((t,n,r)=>ds(n,e(t,n,r),t,r),t,n)}function Il(e,t){return new Nl((t,n,r)=>e(t)?void 0:new as(void 0,t,r),t,!0)}function Ll(e){return Fl(e=>globalThis.Number.isFinite(e),{expected:`a finite number`,representation:{id:`effect/schema/isFinite`,payload:null},toJsonSchema:()=>({type:`number`}),toCode:()=>({runtime:`Schema.isFinite()`}),arbitraryConstraint:{number:`finite`},...e})}var Rl=Yl(Vc,[Ll()]),zl=new wc(new Cl([Rl,kl]),new Qs(Hs(),Fs(e=>globalThis.Number.isFinite(e)?e:globalThis.String(e))));function Bl(e,t){let n=new globalThis.RegExp(e),r={source:n.source,flags:n.flags};return Fl(e=>(n.lastIndex=0,n.test(e)),{expected:`a string matching the RegExp ${r.source}`,representation:{id:`effect/schema/isPattern`,payload:r},toJsonSchema:()=>[{},!0],arbitraryConstraint:{patterns:[r]},...t})}var Vl=new WeakMap;function Hl(e,t){let n=Object.assign(Object.create(Object.getPrototypeOf(e)),e,t);return Reflect.ownKeys(t).every(e=>e===`context`||e===`encoding`)&&Vl.set(n,Ul(e)),n}function Ul(e){let t=Vl.get(e);if(t!==void 0)return t;if(e.encoding===void 0)return e;let n=Object.assign(Object.create(Object.getPrototypeOf(e)),e,{encoding:void 0});return Vl.set(e,n),n}function Wl(e,t){return e.encoding===t?e:Hl(e,{encoding:t})}function Gl(e,t){if(e.context===t)return e;let n=Ul(e);return n.context===t&&n.encoding===e.encoding?n:Hl(e,{context:t})}function Kl(e){return e.encoding?Kl(e.encoding[e.encoding.length-1].to):e}function ql(e,t){if(e.checks){let n=e.checks[e.checks.length-1];return Jl(e,s(e.checks.slice(0,-1),n.annotate(t)))}return Hl(e,{annotations:{...e.annotations,...t}})}function Jl(e,t){if(e._tag===`Suspend`&&t)throw Error(`Cannot add checks to Suspend`);return e.checks===t?e:Hl(e,{checks:t})}function Yl(e,t){return Jl(e,ll(e.checks,t))}function Xl(e,t){let n=t(e.to);return n===e.to?e:new wc(n,e.transformation)}function Zl(e,t){let n=e,r=n[n.length-1],i=Xl(r,t);return i===r?e:s(e.slice(0,e.length-1),i)}function Ql(e){return t=>t.encoding?Wl(t,Zl(t.encoding,e)):t}function $l(e,t){return Ql(e=>Gl(e,t))(e)}function eu(e,t){function n(r){if(r.encoding){let e=r.encoding[r.encoding.length-1];return t?.stopAt?.(e)?r:Wl(r,Zl(r.encoding,n))}return e(r)}return re(n)}function tu(e,t,n){let r=new wc(e,t);return Wl(n,n.encoding?[...n.encoding,r]:[r])}function nu(e,t){let n;for(let r=0;r<e.length;r++){let i=e[r],a=t(i);if(n)n[r]=a;else if(a!==i){n=Array(e.length);for(let t=0;t<r;t++)n[t]=e[t];n[r]=a}}return n??e}function ru(e,t){return Gl(e,e.context?new Ec(e.context.isOptional,e.context.isMutable,e.context.constructorDefault,{...e.context.annotations,...t}):new Ec(!1,!1,void 0,t))}var iu=re(e=>au(Gl(e,e.context?e.context.isOptional===!1?new Ec(!0,e.context.isMutable,e.context.constructorDefault,e.context.annotations):e.context:new Ec(!0,!1)))),au=Ql(iu),ou=ce(e=>iu(new Cl([e,Nc]))),su=re(e=>cu(Gl(e,e.context?e.context.isMutable===!1?new Ec(e.context.isOptional,!0,e.context.constructorDefault,e.context.annotations):e.context:new Ec(!1,!0)))),cu=Ql(su);function lu(e,t){return Gl(e,e.context?new Ec(e.context.isOptional,e.context.isMutable,t,e.context.annotations):new Ec(!1,!1,t))}function uu(e,t,n){return tu(e,n,t)}function du(e){let t=[],n=[];function r(e){switch(e._tag){case`Literal`:wn(e.literal)&&!t.includes(e.literal)&&t.push(e.literal);return;case`UniqueSymbol`:t.includes(e.symbol)||t.push(e.symbol);return;case`Never`:return;case`Union`:for(let t=0;t<e.types.length;t++)r(e.types[t]);return;default:n.push(e)}}return r(e),{literals:t,parameters:n}}function fu(e,t){let{literals:n,parameters:r}=du(e);return new il(n.map(e=>new $c(e,t)),r.map(e=>new rl(e,t)))}function pu(e){return e.context?.isOptional??!1}function mu(e){return e.context?.isMutable??!1}function hu(e){return e.annotations?.[`~structural`]===!0||e._tag===`FilterGroup`&&e.checks.every(hu)}function gu(e){function t(e){return hu(e)?[e]:e._tag===`FilterGroup`?e.checks.flatMap(t):[]}let n=e.flatMap(t);return Ue(n)?n:void 0}function _u(e){let t=!0;function n(e){return t=t&&!e.encoding&&!Cc(e),t&&`recur`in e&&e.recur(n),e}return`recur`in e&&e.recur(n),t}var vu=re(e=>{let t=Ul(e);if(t!==e){let n=vu(t);return n===t&&e.encoding===void 0?e:Gl(n,e.context)}let n=`recur`in e?e.recur(vu):e;if(`encodingChecks`in n&&n.encodingChecks){let t=_u(e)?n.encodingChecks:bc(n)||xc(n)||dc(n)&&n.typeParameters.length>0?gu(n.encodingChecks):void 0;return Hl(n,{encodingChecks:void 0,checks:ll(n.checks,t)})}return n}),yu=re(e=>vu(xu(e)));function bu(e,t){let n=t,r=n.length,i=n[r-1],a=[new wc(xu(Wl(e,void 0)),n[0].transformation.flip())];for(let e=1;e<r;e++)a.unshift(new wc(xu(n[e-1].to),n[e].transformation.flip()));let o=xu(i.to);return o.encoding?Wl(o,[...o.encoding,...a]):Wl(o,a)}var xu=ce(e=>{if(e.encoding)return bu(e,e.encoding);let t=Ul(e);if(t!==e){let n=xu(t);return n===t?e:Gl(n,e.context)}return`flip`in e?e.flip(xu):`recur`in e?e.recur(xu):e});function Su(e){switch(e._tag){case`Undefined`:return!0;case`Union`:return e.types.some(Su);default:return!1}}function Cu(e,t){let n=t===0?Go:Uo(t);return(r,i)=>r===w?Wo:r===t?n:y(new is(e,r,i))}function wu(e,t){return(n,r)=>n===w?Wo:t(n)?Go:y(new is(e,n,r))}var Tu=eu(e=>{switch(e._tag){default:return e;case`Number`:return e.toCodecStringTree();case`Union`:return e.recur(Tu)}}),Eu=eu(e=>{switch(e._tag){default:return e;case`Symbol`:case`UniqueSymbol`:return e.toCodecStringTree();case`Union`:return e.recur(Eu)}}),Du=`[\\s\\S]*?`,Ou=new globalThis.RegExp(`^${Zc}$`),ku=new globalThis.RegExp(`^(?:${Zc}|Infinity|-Infinity|NaN)$`);function Au(e){return Bl(Ou,{expected:`a string representing a finite number`,representation:{id:`effect/schema/isStringFinite`,payload:null},toJsonSchema:()=>({pattern:Ou.source}),...e})}var ju=Yl(Rc,[Au()]),Mu=new wc(ju,ac),Nu=new wc(new Cl([ju,kl]),ac),Pu=new globalThis.RegExp(`^-?\\d+$`);function Fu(e){return Bl(Pu,{expected:`a string representing a bigint`,representation:{id:`effect/schema/isStringBigInt`,payload:null},toJsonSchema:()=>({pattern:Pu.source}),...e})}var Iu=new wc(Yl(Rc,[Fu({expected:`a string representing a bigint`})]),oc),Lu=new globalThis.RegExp(`^Symbol\\(([\\s\\S]*)\\)$`),Ru=new wc(Yl(Rc,[zu()]),new Qs(Fs(e=>globalThis.Symbol.for(Lu.exec(e)[1])),Is((e,t)=>globalThis.Symbol.keyFor(e)===void 0?y(new os({message:`cannot serialize to string, Symbol is not registered`},e,t)):v(globalThis.String(e)))));function zu(e){return Bl(Lu,{expected:`a string representing a symbol`,representation:{id:`effect/schema/isStringSymbol`,payload:null},toJsonSchema:()=>({pattern:Lu.source}),...e})}function Bu(e,t,n,r,i){for(let a=0;a<e.length;a++){let o=e[a];if(o._tag===`FilterGroup`){if(n=Bu(o.checks,t,n,r,i),n&&(i.errors!==`all`||n[n.length-1].filter.aborted))return n}else{let e=o.run(t,r,i);if(e){let r=new Qo(o,e,t,i);if(n?n.push(r):n=[r],i.errors!==`all`||o.aborted)return n}}}return n}function Vu(e){if(!dc(e))return;let t=e.annotations?.[Fo];return Jn(t)?t(e.typeParameters):void 0}var Hu=Ao,Uu=zo,Wu=Bo;function Gu(e){return e===null||typeof e==`string`||typeof e==`boolean`||typeof e==`number`&&globalThis.Number.isFinite(e)}function Ku(e){return e===void 0||typeof e==`string`}function qu(e,t){let n=new WeakMap,r=[];outer:for(;;){if(typeof e!=`object`||!e){if(!t(e))return!1}else{let t=e,i=n.get(t);if(i===!1)return!1;if(i===void 0){let e=Array.isArray(t);if(!e){let e=Object.getPrototypeOf(t);if(e!==null&&e!==Object.prototype&&Object.getPrototypeOf(e)!==null)return!1}n.set(t,!1),r.push({value:t,keys:e?t.length:Object.keys(t),index:0})}}for(;r.length>0;){let t=r[r.length-1],i=t.keys;if(typeof i==`number`){if(t.index<i){e=t.value[t.index++];continue outer}}else if(t.index<i.length){e=t.value[i[t.index++]];continue outer}n.set(t.value,!0),r.pop()}return!0}}function Ju(e){return qu(e,Gu)}var Yu=new kc([],()=>(e,t,n)=>Ju(e)?Go:y(new is(t,e,n)),{representation:{id:`effect/schema/Json`,payload:null},expected:`JSON value`,toCodecJson:()=>void 0,toCodecStringTree:()=>$u}),Xu=new wc(Yu,ic()),Zu=new wc(new Cl([new Gc(!1,[],[Yu]),new il([],[new rl(Rc,Yu)])]),ic());function Qu(e){return qu(e,Ku)}var $u=new wc(new kc([],()=>(e,t,n)=>Qu(e)?Go:y(new is(t,e,n)),{expected:`StringTree`,toCodecStringTree:()=>void 0}),ic()),ed=(e,t,n)=>e===Go?n(t):Qt(e,n);function td(e){if(e._tag===`Middleware`)return(t,n,r)=>nd(t===Go?e.decode(Uo(Ko(n)),r):e.decode(Fe(t,Ko),r));let t=e.decode;switch(t._tag){case`Passthrough`:return(e,t)=>e===Go?Uo(t):e;case`Transform`:{let e=e=>e===w?Wo:Uo(t.transform(e));return(t,n)=>ed(t,n,e)}case`TransformOptional`:{let e=e=>qo(t.transform(Ko(e)));return(t,n)=>ed(t,n,e)}case`TransformEffect`:return(e,n,r)=>ed(e,n,e=>e===w?Wo:t.transform(e,r));case`TransformOptionalEffect`:return(e,n,r)=>ed(e,n,e=>nd(t.transform(Ko(e),r)))}}var nd=e=>Qt(e,qo),rd=(e,t,n,r)=>Rr(r,r=>Wr(()=>Vi(r,r=>new $o(e,r,t,n))));function id(e,t){let n=td(e.link.transformation),r;return(i,a)=>{if(i===w)return Wo;if(e.isConstructed(i))return Go;let o=(r??=t(e.link.to))(i,a);return n(o,i,a)}}function ad(e,t){let n=e.context.constructorDefault;return(r,i)=>{if(r!==w&&r!==void 0)return t(r,i);let a=n;if(pe(a)&&a._tag===`Success`){let e=t(a[ei],i);return e===Go?a:e}return Qt(rd(e,r,i,a),e=>{let n=t(e,i);return n===Go?Uo(e):n})}}function od(e,t){let n=t(e);return e.context?.constructorDefault===void 0?n:ad(e,n)}function sd(e,t,n,r,i){if(e._tag===`Declaration`)for(let n of e.typeParameters)t(n);let a=n?Vu(e):void 0,o=a?id(a,t):r??e.getParser(t,n),s=e.checks,c=e.encoding,l=c?.map(e=>td(e.transformation)),u=e.encodingChecks;if(!c&&!s&&!u)return o;let d,f=(t,n)=>{let r=o(t,n);if(u&&!n.disableChecks){if(pe(r)){if(r._tag===`Success`){let i=r===Go?t:r[ei];if(t!==w&&i!==w){let i=Bu(u,t,void 0,e,n);i&&(r=y(new rs(e,i,t,n)))}}}else r=C(r,r=>{if(t!==w&&r!==w){let r=Bu(u,t,void 0,e,n);if(r)return y(new rs(e,r,t,n))}return v(r)})}if(s&&!n.disableChecks){if(pe(r)){if(r._tag===`Success`){let i=r===Go?t:r[ei];if(i===w)return r;let a=Bu(s,i,void 0,e,n);a&&(r=y(new rs(e,a,i,n)))}}else r=C(r,t=>{if(t!==w){let r=Bu(s,t,void 0,e,n);if(r)return y(new rs(e,r,t,n))}return v(t)})}return r},p=i===void 0?f:i(f);return c?(n,r)=>{let i=d??=c.map(e=>t(e.to)),a=n,o=i[i.length-1](n,r);for(let e=c.length-1;e>=0;e--)if(o=l[e](o,a,r),e!==0){let t=i[e-1];o._tag===`Success`?(a=o[ei],o=t(a,r)):o=Qt(o,e=>{let n=t(e,r);return n===Go?Uo(e):n})}if(o._tag===`Success`){let e=o[ei],t=p(e,r);return t===Go?o:t}return o=rd(e,n,r,o),Qt(o,e=>{let t=p(e,r);return t===Go?Uo(e):t})}:p}var cd=Symbol(),ld=new WeakMap,ud=e=>md(e).parser,dd=e=>md(e).makeEffect,fd=e=>od(e,dd),pd=class{ast;constructor(e){this.ast=e}get decodeEffect(){return this.cachedDecodeEffect??=sd(this.ast,ud)}get parser(){return this.decodeEffect}get makeEffect(){return this.cachedMakeEffect??=sd(this.ast,dd,fd)}};function md(e){let t=ld.get(e);if(t!==void 0)return t;let n=new pd(e);return ld.set(e,n),n}function hd(e){let t=e.ast,n;return(e,r)=>(n??=Md(zd,vu(t)))(e,r?.disableChecks?r?.parseOptions?{...r.parseOptions,disableChecks:!0}:{disableChecks:!0}:r?.parseOptions)}function gd(e){let t=hd(e);return(e,n)=>{let r=dr(t(e,n));return ta(r)?ur(r.value):(Ts(r.cause,`Option adapter can only return none for schema issues`),In())}}function _d(e){return Ld(vu(e.ast))}function vd(e){return bd(e.ast)}function yd(e){{let t=Nd(Ad(e));return e=>{let n=t(e,Tc);return ta(n)?!0:(Ts(n.cause,`Type guard adapter can only return false for schema issues`),!1)}}}function bd(e){let t=vu(e),n=e=>(n=yd(t),n(e));return e=>n(e)}function xd(e,t){let n=Ad(e.ast);return t===void 0?n:(e,r)=>n(e,Od(t,r))}function Sd(e,t){return Nd(xd(e,t))}function Cd(e,t){return Pd(xd(e,t))}function wd(e,t){return Fd(xd(e,t))}function Td(e,t){let n=Ad(xu(e.ast));return t===void 0?n:(e,r)=>n(e,Od(t,r))}function Ed(e,t){return Nd(Td(e,t))}function Dd(e,t){return Fd(Td(e,t))}var Od=(e,t)=>t?{...e,...t}:e,kd=e=>e===w?y(new as):v(e);function Ad(e){return Md(Rd,e)}function jd(e,t){return e===Go?v(t):pe(e)?e[ei]===w?kd(w):e:Qt(e,kd)}function Md(e,t){let n;return(r,i)=>{let a=(n??=e(t))(r,i??Tc);return a===Go?v(r):pe(a)?a[ei]===w?kd(w):a:Qt(a,kd)}}function Nd(e){return(t,n)=>dr(e(t,n))}function Pd(e){let t=Nd(e);return(e,n)=>{let r=t(e,n);return ta(r)?ur(r.value):(Ts(r.cause,`Option adapter can only return none for schema issues`),In())}}function Fd(e){let t=Nd(e);return(e,n)=>{let r=t(e,n);return ta(r)?Me(r.value):ot(Ts(r.cause,`Result adapter can only return schema issues`))}}function Id(e,t){let n=dr(e);if(ta(n))return n.value;let r=Ts(n.cause,t);throw Error(`Schema validation failed`,{cause:r})}function Ld(e){let t,n;return(r,i)=>{t??=md(e);let a=i?.disableChecks?i.parseOptions?{...i.parseOptions,disableChecks:!0}:{disableChecks:!0}:i?.parseOptions??Tc,o=t.make;if(o!==void 0&&r!==w){let e;try{e=o(r,a)}catch(e){throw Ts(zi(e),`Constructor adapter can only throw schema issues`),e}if(e!==cd&&e!==w)return e}return Id(jd((n??=t.makeEffect)(r,a),r),`Constructor adapter can only throw schema issues`)}}var Rd=e=>md(e).parser,zd=e=>md(e).makeEffect,Bd=`~effect/Schema/Schema`,Vd=Symbol(),Hd={[Bd]:Bd,get make(){let e=_d(this);return Object.defineProperty(this,"make",{value:e,enumerable:!0}),e},get makeEffect(){let e=hd(this);return Object.defineProperty(this,"makeEffect",{value:e,enumerable:!0}),e},get makeOption(){let e=gd(this);return Object.defineProperty(this,"makeOption",{value:e,enumerable:!0}),e},pipe(){return o(this,arguments)},annotate(e){return this.rebuild(ql(this.ast,e))},annotateKey(e){return this.rebuild(ru(this.ast,e))},check(...e){return this.rebuild(Yl(this.ast,e))},rebuild(e){return Ud(e,this[Vd])}};function Ud(e,t){function n(){}let r=Object.setPrototypeOf(n,Hd);return t&&(Object.hasOwn(t,`name`)||Object.hasOwn(t,`length`)||Object.hasOwn(t,`__proto__`))?Object.defineProperties(r,Object.getOwnPropertyDescriptors({...t})):Object.assign(r,t),r[Vd]=t,r.ast=e,r}function Wd(e){return e.replace(/~/g,`~0`).replace(/\//g,`~1`)}function Gd(e){return e.replace(/~1/g,`/`).replace(/~0/g,`~`)}function Kd(e){return encodeURI(Wd(e)).replace(/#/g,`%23`)}function qd(e){if(e.length===0||e===`#`)return``;if(!e.startsWith(`#`))return;let t=e.slice(1);try{if(encodeURI(t).replace(/%25/g,`%`).replace(/#/g,`%23`)!==t)return;let e=decodeURIComponent(t);return e.startsWith(`/`)&&!/~(?:[^01]|$)/.test(e)?e:void 0}catch{return}}function Jd(e){let t=qd(e);return t===void 0?void 0:t.length===0?[]:t.slice(1).split(`/`).map(Gd)}function Yd(e){return e.reduce((e,t)=>`${e}/${Kd(t)}`,`#`)}var Xd=`http://json-schema.org/draft-07/schema#`;function Zd(e,t){return e===t||e===(t.endsWith(`#`)?t.slice(0,-1):`${t}#`)}function Qd(e){return{dialect:`draft-07`,...df(e,Cf)}}function $d(e,t){return n(e,!1,!0);function n(e,r,i=!1){if(!$n(e))return e;let a=r||!i&&uf(e.$id),o={};for(let t of Object.keys(e)){let r=e[t],i=r;switch(t){case`$defs`:case`properties`:case`patternProperties`:case`dependentSchemas`:i=nf(r,e=>n(e,a))??r;break;case`allOf`:case`anyOf`:case`oneOf`:case`prefixItems`:i=Array.isArray(r)?r.map(e=>n(e,a)):r;break;case`not`:case`additionalProperties`:case`propertyNames`:case`unevaluatedProperties`:case`items`:case`contains`:case`unevaluatedItems`:case`if`:case`then`:case`else`:case`contentSchema`:i=n(r,a)}h(o,t,i)}return t(o,a),o}}function ef(e,t){return $d(e,e=>{tf(e,t)})}function tf(e,t){typeof e.$ref==`string`&&h(e,`$ref`,t(e.$ref,`$ref`)),typeof e.$dynamicRef==`string`&&h(e,`$dynamicRef`,t(e.$dynamicRef,`$dynamicRef`))}function nf(e,t){if(!$n(e))return;let n={};for(let r of Object.keys(e))h(n,r,t(e[r],r));return n}function rf(e,t,n){let r=new Map,i=[],a=af;function o(e,n=[],r=[]){return n.length===0&&t?.trackIds&&(a=sf($n(e)?u(e):void 0,af)??af),l(e,n,r,{sourceRoot:[],targetRoot:[],uri:a})}function s(){for(let[e,t,n]of i){let i=t,a=of(t,n);if(a!==void 0){let e=Jd(a.hash);if(a.hash=``,e!==void 0){let n=r.get(lf(a.href,e));n!==void 0&&(i=cf(t,n))}}h(e,`$ref`,i)}}let c=n(o);return s(),c;function l(n,r,a,o){if(typeof n==`boolean`)return d(r,a,o),t?.booleanAdapter?.(n)??n;if(!$n(n))return n;let s=o,c=u(n);if(r.length>0&&t?.trackIds&&uf(c)){let e=sf(c,o.uri);e!==void 0&&(s={parent:o,sourceRoot:r,targetRoot:a,uri:e})}d(r,a,s);let f=s.uri;return e(n,{isDocumentRoot:r.length===0,schema(e,t,n=t){return l(e,[...r,t],[...a,n],s)},schemaAt(e,t,n){return l(e,[...r,...t],[...a,...n],s)},schemaArray(e,t,n=t){return Array.isArray(e)?e.map((e,i)=>l(e,[...r,t,String(i)],[...a,n,String(i)],s)):e},schemaMap(e,t,n=t){return $n(e)?nf(e,(e,i)=>l(e,[...r,t,i],[...a,n,i],s)):e},reference(e,t){typeof t==`string`?i.push([e,t,f]):h(e,`$ref`,t)}})}function u(e){return t?.ignoreRefSiblings===!0&&typeof e.$ref==`string`?void 0:e.$id}function d(e,t,n){n.parent!==void 0&&d(e,t,n.parent),r.set(lf(n.uri,e.slice(n.sourceRoot.length)),t.slice(n.targetRoot.length))}}var af=`https://effect.invalid/.json-schema/`;function of(e,t){return URL.canParse(e,t)?new URL(e,t):void 0}function sf(e,t){if(typeof e!=`string`)return;let n=of(e,t);if(n!==void 0)return n.hash=``,n.href}function cf(e,t){let n=e.indexOf(`#`);return n===-1&&t.length===0?e:`${n===-1?e:e.slice(0,n)}${Yd(t)}`}function lf(e,t){return`${e}\u0000${JSON.stringify(t)}`}function uf(e){return typeof e==`string`&&e.length>0&&e[0]!==`#`}function df(e,t,n){return rf(t,{...n,trackIds:!0},t=>({schema:t(e.schema),definitions:nf(e.definitions,(e,n)=>t(e,[`$defs`,n],[`definitions`,n]))}))}var ff=new Set([`properties`,`patternProperties`]),pf=new Set([`allOf`,`anyOf`,`oneOf`]),mf=new Set([`not`,`additionalProperties`,`propertyNames`,`contains`,`if`,`then`,`else`,`contentSchema`]);function hf(e,t,n,r,i,a=ff){let o;if(a.has(t))o=r.schemaMap(n,t);else if(pf.has(t))o=r.schemaArray(n,t);else if(i.has(t))o=r.schema(n,t);else return!1;return h(e,t,o),!0}var gf=[`$anchor`,`$defs`,`$dynamicAnchor`,`$dynamicRef`,`$vocabulary`,`contentSchema`,`dependentRequired`,`dependentSchemas`,`maxContains`,`minContains`,`prefixItems`,`unevaluatedItems`,`unevaluatedProperties`];[...gf],[...gf];var _f=/^[A-Za-z_][-A-Za-z0-9._]*$/,vf=/^[A-Za-z][-A-Za-z0-9._:]*$/;function yf(e,t,n){throw Error(`Cannot convert JSON Schema keyword "${e}" to ${t}: ${n}`)}function bf(e,t,n,r){for(let i of t)Object.hasOwn(e,i)&&yf(i,n,`it is not active in ${r} but would become active in the target`)}var xf=[`additionalItems`,`definitions`,`dependencies`];function Sf(e,t,n,r,i){n.isDocumentRoot?h(e,`$schema`,Zd(t,`https://json-schema.org/draft/2020-12/schema`)?r:t):Zd(t,`https://json-schema.org/draft/2020-12/schema`)||yf(`$schema`,i,`an embedded resource cannot declare a different dialect`)}function Cf(e,t){bf(e,xf,`Draft-07`,`Draft 2020-12`);let n={},r,i,a;for(let o of Object.keys(e)){let s=e[o];if(!hf(n,o,s,t,mf))switch(o){case`$ref`:r=s;break;case`$schema`:Sf(n,s,t,Xd,`Draft-07`);break;case`$id`:case`$anchor`:break;case`$defs`:h(n,`definitions`,t.schemaMap(s,o,`definitions`));break;case`prefixItems`:i=s;break;case`items`:a=s;break;case`dependentRequired`:case`dependentSchemas`:case`minContains`:case`maxContains`:break;case`$dynamicRef`:case`$dynamicAnchor`:case`$vocabulary`:case`unevaluatedProperties`:case`unevaluatedItems`:yf(o,`Draft-07`,`the target dialect has no equivalent`);case`required`:if(Array.isArray(s)&&s.length===0)break;h(n,o,s);break;default:h(n,o,s)}}if(wf(n,i,a,t),Object.hasOwn(e,`contains`)){let t=e.minContains,r=e.maxContains;(t!==void 0&&t!==1||r!==void 0)&&yf(`minContains/maxContains`,`Draft-07`,`contains cardinality cannot be represented`),Object.hasOwn(e,`minContains`)&&h(n,`minContains`,t)}else Object.hasOwn(e,`minContains`)&&h(n,`minContains`,e.minContains),Object.hasOwn(e,`maxContains`)&&h(n,`maxContains`,e.maxContains);return Ef(e,n,t,`draft-07`),Of(e,n,`$id`,`Draft-07`),Tf(n,r,t),n}function wf(e,t,n,r){if(t===void 0){n!==void 0&&h(e,`items`,r.schema(n,`items`));return}h(e,`items`,r.schemaArray(t,`prefixItems`,`items`)),n!==void 0&&h(e,`additionalItems`,r.schema(n,`items`,`additionalItems`))}function Tf(e,t,n){if(t!==void 0){if(typeof t==`string`&&Object.keys(e).length>0){let r={};n.reference(r,t),Df(e,r)}else n.reference(e,t)}}function Ef(e,t,n,r){let i=$n(e.dependentRequired)?e.dependentRequired:void 0,a=$n(e.dependentSchemas)?e.dependentSchemas:void 0;if(i===void 0&&a===void 0)return;let o={},s=new Set([...Object.keys(i??{}),...Object.keys(a??{})]);for(let e of s){let t=i?.[e],s=a?.[e],c=r===`draft-04`&&Array.isArray(t)&&t.length===0;s===void 0?c||h(o,e,t):t===void 0||c?h(o,e,n.schemaAt(s,[`dependentSchemas`,e],[`dependencies`,e])):h(o,e,{allOf:[n.schemaAt(s,[`dependentSchemas`,e],[`dependencies`,e,`allOf`,`0`]),{required:t}]})}Object.keys(o).length>0&&h(t,`dependencies`,o)}function Df(e,t){Array.isArray(e.allOf)?e.allOf.push(t):h(e,`allOf`,[t])}function Of(e,t,n,r){let i=e.$id,a=e.$anchor;if(a===void 0){i!==void 0&&h(t,n,i);return}(typeof a!=`string`||!_f.test(a))&&yf(`$anchor`,r,`the anchor is not valid`),vf.test(a)||yf(`$anchor`,r,`the anchor cannot be represented as a plain-name fragment identifier`),i===void 0?h(t,n,`#${a}`):yf(`$anchor`,r,`it cannot be combined with the schema $id`)}function kf(e){return Ud(Af(e.ast),{schema:e})}var Af=eu(e=>{let t=Ff(e,Af),n=e.context;return t===e||n===void 0?t:$l(t,jf(n))});function jf(e){return e.constructorDefault===void 0?e:new Ec(e.isOptional,e.isMutable,void 0,e.annotations)}function Mf(e){if(e.propertySignatures.some(e=>typeof e.name!=`string`))throw new globalThis.Error(`Objects property names must be strings`,{cause:e})}function Nf(e){return t=>{let n=[...t].sort((t,n)=>e(yu(t))-e(yu(n)));return n.some((e,n)=>e!==t[n])?n:t}}var Pf=Nf(e=>{switch(e._tag){case`BigInt`:case`Symbol`:case`UniqueSymbol`:return 0;default:return 1}});function Ff(e,t){switch(e._tag){case`Declaration`:{let n=e.annotations?.toCodecJson??e.annotations?.toCodec;if(!Jn(n))return Wl(e,[Xu]);let r=n(e.typeParameters.map(e=>Ud(yu(e))));return r===void 0?e:Wl(e,[Xl(r,t)])}case`Unknown`:return Wl(e,[Xu]);case`ObjectKeyword`:return Wl(e,[Zu]);case`Undefined`:case`Void`:case`Literal`:case`Number`:return e.toCodecJson();case`UniqueSymbol`:case`Symbol`:case`BigInt`:return e.toCodecStringTree();case`Objects`:return Mf(e),e.recur(t,Eu);case`Union`:{let n=Pf(e.types);return n===e.types?e.recur(t):new Cl(n,e.options,e.annotations,e.checks,e.encoding,e.context,e.encodingChecks).recur(t)}case`Arrays`:case`Suspend`:return e.recur(t)}return e}globalThis.RegExp;var If=e=>e.replace(/[/\\^$*+?.()|[\]{}]/g,`\\$&`);function Lf(e,t){return t.length>0&&(e+=`\n at ${be(t)}`),Error(e)}function Rf(e){return`#/$defs/${Kd(e)}`}var zf=new Set([...Ho,No,...Io]);function Bf(e,t){if(e===void 0)return;let n={},r=e.title;typeof r==`string`&&(n.title=r);let i=e.description,a=e.expected;typeof i==`string`?n.description=i:t?.generateDescriptions===!0&&typeof a==`string`&&(n.description=a);let o=e.default;Ju(o)&&(n.default=o);let s=e.examples;Array.isArray(s)&&Ju(s)&&(n.examples=s);let c=e.readOnly;typeof c==`boolean`&&(n.readOnly=c);let l=e.writeOnly;typeof l==`boolean`&&(n.writeOnly=l);let u=e.format;typeof u==`string`&&(n.format=u);let d=e.contentEncoding;typeof d==`string`&&(n.contentEncoding=d);let f=e.contentMediaType;typeof f==`string`&&(n.contentMediaType=f);let p=e.contentSchema;if(Ju(p)&&(n.contentSchema=p),t?.includeAnnotationKey!==void 0)for(let[r,i]of Object.entries(e))zf.has(r)||!t.includeAnnotationKey(r)||Ju(i)&&h(n,r,i);return Object.keys(n).length===0?void 0:n}function Vf(e){let t=e.type===`number`||e.type===`integer`?e.type:void 0,n=e;if(t!==void 0&&(n={...e},delete n.type),Array.isArray(n.allOf)){let e=[],r=!1;for(let i of n.allOf){let n=Vf(i);n.type!==void 0&&(r=!0,(t===void 0||n.type===`integer`)&&(t=n.type)),Object.keys(n.schema).length>0&&e.push(n.schema)}if(r){let{allOf:t,...r}=n;n=e.length===0?r:{...r,allOf:e}}}return{type:t,schema:n}}function Hf(e){if(!Array.isArray(e.anyOf)||e.anyOf.length!==2||e.anyOf[0]?.type!==`number`)return!1;let t=e.anyOf[1];return t?.type===`string`&&Array.isArray(t.enum)&&t.enum.length===3&&t.enum.includes(`NaN`)&&t.enum.includes(`Infinity`)&&t.enum.includes(`-Infinity`)}var Uf=`|type|format|pattern|multipleOf|minimum|maximum|exclusiveMinimum|exclusiveMaximum|minLength|maxLength|minItems|maxItems|uniqueItems|minProperties|maxProperties|propertyNames|`;function Wf(e,t){return Object.keys(e).every(e=>t.includes(`|${e}|`))}function Gf(e,t){return typeof e.$ref!=`string`&&t.every(t=>!Object.hasOwn(e,t))}var Kf=`|title|description|default|examples|readOnly|writeOnly|`,qf=Uf+Kf;function Jf(e,t,n){if(Object.keys(e).length===0)return t;let r=Object.keys(t);if(r.length===0)return e;let i=e.type===`number`||e.type===`integer`?e.type:void 0,a=Hf(e);if(i!==void 0||a){let r=Vf(t);if(r.type!==void 0){let t=i===`integer`||r.type===`integer`?`integer`:`number`,o={...e,type:t};a&&delete o.anyOf;let s=Object.keys(r.schema);return s.length===0?o:Wf(r.schema,Kf)&&Gf(o,s)?{...o,...r.schema}:Jf(o,r.schema,n)}}if(n&&Gf(e,r))return{...e,...t};let o=Array.isArray(t.allOf)&&r.length===1?t.allOf:[t];return Array.isArray(e.allOf)?{...e,allOf:[...e.allOf,...o]}:typeof e.$ref==`string`?{allOf:[e,...o]}:{...e,allOf:o}}function Yf(e,t=new Set){return typeof e==`boolean`?e:t.has(e)?!0:(t.add(e),e.every(e=>Yf(e,t)))}function Xf(e){return Array.isArray(e)}function Zf(e,t,n,r){let i=new Map,a=new Map,o=new WeakMap,s=new Map,c=new Map,l=Object.keys(n);for(let e of l)m(e,[`references`,e]);let u=Ce(e,(e,n)=>re(e,t[n],[]));for(let[e,t]of s.values())if(!Yf(e))for(let e of t)Array.isArray(e.oneOf)&&(e.anyOf=e.oneOf,delete e.oneOf);for(let e of l){let t=n[e],r=te(t);if(r===void 0)continue;let o=i.get(e)[0],s=c.get(r),l=s?.find(e=>Pt(i.get(e)[0],o));l===void 0?s===void 0?c.set(r,[e]):s.push(e):a.set(e,l)}let d=Ce(u,ee),f={};for(let e of l)a.has(e)||h(f,e,ee(i.get(e)[0]));return{dialect:`draft-2020-12`,schemas:d,definitions:f};function p(e){return Array.isArray(e.oneOf)&&s.get(e.oneOf)?.[1].push(e),e}function m(e,t){if(!Object.hasOwn(n,e))throw Lf(`Invalid reference ${e}`,[...t,`$ref`]);let r=i.get(e);if(r!==void 0)return r;let a=[{},[]];return i.set(e,a),a[0]=re(n[e],[`references`,e],a[1]),a}function ee(e){return ef(e,e=>{let t=qd(e);if(t===void 0){if(/^#(?:\/|%2f)/i.test(e))throw Error(`Invalid JSON Pointer URI fragment ${JSON.stringify(e)}`);return e}if(!t.startsWith(`/$defs/`))return e;let n=t.indexOf(`/`,7),r=a.get(Gd(t.slice(7,n<0?void 0:n)));return r===void 0?e:e.replace(/^#(?:\/|%2f).*?(?:\/|%2f).*?(?=\/|%2f|$)/i,Rf(r))})}function te(e){if(e._tag===`Reference`)return;let t=e.checks.length===0?e.annotations:e.checks[e.checks.length-1].annotations;return typeof t?.identifier!=`string`&&typeof t?.[`~identifier`]==`string`?t[No]:void 0}function ne(e,t,n,i){let a=e.annotations,o=a?.toJsonSchema;if(o!==void 0){let s=o({type:t,schemas:e.representation?.schemas?.map((e,t)=>re(e,[...n,`representation`,`schemas`,t],i))??[]}),c=Xf(s);c&&i.push(!1);let l=c?s[0]:s,u=Bf(a,r),d=u===void 0?l:{...l,...u},f=u===void 0?Uf:qf;return[d,e._tag===`Filter`&&Wf(d,f)&&(u===void 0||Wf(u,Kf))?!0:void 0]}if(e._tag===`Filter`){i.push(!1);return}let s=e.checks.flatMap((e,r)=>{let a=ne(e,t,[...n,`checks`,r],i);return a===void 0?[]:[a[0]]});if(s.length===0)return;let c=Bf(a,r),l={allOf:s};return[c===void 0?l:{...l,...c}]}function re(e,t,n){if(e._tag===`Reference`)return n.push(m(e.$ref,t)[1]),{$ref:Rf(e.$ref)};let i=o.get(e);if(i!==void 0)return n.push(i[1]),i[0];let a=[];n.push(a);let s=ie(e,t,a),c=Bf(e.annotations,r);c!==void 0&&(s={...s,...c});for(let n=0;n<e.checks.length;n++){let r=typeof s.type==`string`&&Qf(s.type)?s.type:void 0,i=ne(e.checks[n],r,[...t,`checks`,n],a);i!==void 0&&(s=Jf(s,...i))}return o.set(e,[s,a]),p(s)}function ie(e,t,n){switch(e._tag){case`Any`:case`Unknown`:return{};case`ObjectKeyword`:return{anyOf:[{type:`object`},{type:`array`}]};case`Void`:case`Undefined`:case`Null`:return{type:`null`};case`BigInt`:return{type:`string`,allOf:[{pattern:`^-?\\d+$`}]};case`Symbol`:return{type:`string`,allOf:[{pattern:`^Symbol\\(([\\s\\S]*)\\)$`}]};case`UniqueSymbol`:return globalThis.Symbol.keyFor(e.symbol)===void 0?{not:{}}:{type:`string`,enum:[globalThis.String(e.symbol)]};case`Declaration`:return n.push(!1),{};case`Suspend`:return re(e.thunk,[...t,`thunk`],n);case`Never`:return{not:{}};case`String`:return{type:`string`};case`Number`:return{anyOf:[{type:`number`},{type:`string`,enum:[`NaN`,`Infinity`,`-Infinity`]}]};case`Boolean`:return{type:`boolean`};case`Literal`:{let t=e.literal;return typeof t==`bigint`?{type:`string`,enum:[globalThis.String(t)]}:{type:typeof t,enum:[t]}}case`Enum`:{let n=e.enums.map(([e,n],r)=>{if(typeof n==`number`&&!globalThis.Number.isFinite(n))throw Lf(`Invalid numeric enum value ${globalThis.String(n)}`,[...t,`enums`,r,1]);return{type:typeof n,enum:[n],title:e}});return n.length===0?{not:{}}:{anyOf:n}}case`TemplateLiteral`:return{type:`string`,pattern:`^${e.parts.map(ep).join(``)}$`};case`Arrays`:{if(e.rest.length>1)throw Lf(`Invalid schema representation document`,[...t,`rest`]);let i={type:`array`},a=e.elements.length,o=e.elements.map((e,i)=>{e.isOptional&&a--;let o=re(e.type,[...t,`elements`,i,`type`],n),s=Bf(e.annotations,r);return s===void 0?o:p(Jf(o,s))});if(o.length>0?(i.prefixItems=o,i.maxItems=e.elements.length,a>0&&(i.minItems=a)):i.items=!1,e.rest.length===1){delete i.maxItems;let r=re(e.rest[0],[...t,`rest`,0],n);Object.keys(r).length>0?i.items=r:delete i.items}return i}case`Objects`:{if(e.propertySignatures.length===0&&e.indexSignatures.length===0)return{not:{type:`null`}};let i={type:`object`},a={},o=[];for(let i=0;i<e.propertySignatures.length;i++){let s=e.propertySignatures[i];if(typeof s.name!=`string`)throw Lf(`Invalid schema representation document`,[...t,`propertySignatures`,i,`name`]);let c=s.name,l=re(s.type,[...t,`propertySignatures`,i,`type`],n),u=Bf(s.annotations,r);h(a,c,u===void 0?l:p(Jf(l,u))),s.isOptional||o.push(c)}e.propertySignatures.length>0&&(i.properties=a),o.length>0&&(i.required=o);let s={},c=[],l=[],u=!1;for(let r=0;r<e.indexSignatures.length;r++){let i=e.indexSignatures[r],a=re(i.type,[...t,`indexSignatures`,r,`type`],n);Pt(a,{not:{}})&&(a=!1),l.push(a);let o=ae(i.parameter,[...t,`indexSignatures`,r,`parameter`],new Set);if(o===void 0){u=!0,n.push(!1);continue}if(o.length===0)c.push(a);else for(let e of o){let t=s[e];h(s,e,t===void 0?a:t===!1||a===!1?!1:p(Jf(t,a)))}}let d=Object.keys(s).length>0;if(d&&(i.patternProperties=s),u&&r?.onExcessProperty===`error`){let r=[];e.propertySignatures.length>0&&r.push({enum:Object.keys(a)});for(let i=0;i<e.indexSignatures.length;i++)r.push(re(e.indexSignatures[i].parameter,[...t,`indexSignatures`,i,`parameter`],n));i.propertyNames=r.length===1?r[0]:{anyOf:r},i.additionalProperties=l.length===1?l[0]:{anyOf:l},c.length>0&&(i.allOf=c.map(e=>({type:`object`,additionalProperties:e})))}else c.length===0?i.additionalProperties=u||r?.onExcessProperty!==`error`:c.length===1&&e.propertySignatures.length===0&&!d?i.additionalProperties=c[0]:c.length>0&&(i.allOf=c.map(e=>({type:`object`,additionalProperties:e})));return typeof i.additionalProperties==`object`&&i.additionalProperties!==null&&Object.keys(i.additionalProperties).length===0&&delete i.additionalProperties,i}case`Union`:{let r=[],i=e.types.map((e,n)=>re(e,[...t,`types`,n],r));if(n.push(r),i.length===0)return{not:{}};let a=e.options?.mode??`anyOf`;if(a===`anyOf`&&i.length>1){let e=$f(i);if(e!==void 0)return e}return a===`oneOf`&&s.set(i,[r,[]]),{[a]:i}}}}function ae(e,t,r){switch(e._tag){case`Reference`:{if(!Object.hasOwn(n,e.$ref))throw Lf(`Invalid reference ${e.$ref}`,[...t,`$ref`]);if(m(e.$ref,t),r.has(e.$ref))return;let i=new Set(r).add(e.$ref);return ae(n[e.$ref],[`references`,e.$ref],i)}case`String`:{if(e.checks.length===0)return[];if(e.checks.length!==1||e.checks[0]._tag!==`Filter`||e.checks[0].annotations?.toJsonSchema===void 0)return;let n=[],r=re(e,t,n);return Yf(n)&&r.type===`string`&&typeof r.pattern==`string`&&Wf(r,`|type|pattern|title|description|default|examples|readOnly|writeOnly|`)?[r.pattern]:void 0}case`TemplateLiteral`:return e.checks.length===0?[`^${e.parts.map(ep).join(``)}$`]:void 0;case`Union`:{if(e.types.length===0||e.checks.length>0||e.options?.mode===`oneOf`)return;let n=[];for(let i=0;i<e.types.length;i++){let a=ae(e.types[i],[...t,`types`,i],r);if(a===void 0)return;if(a.length===0)return[];n.push(...a)}return n}default:throw Lf(`Invalid schema representation document`,t)}}}function Qf(e){return e===`string`||e===`number`||e===`boolean`||e===`array`||e===`object`||e===`null`||e===`integer`}function $f(e){let t,n=[];for(let r of e){if(Object.keys(r).length!==2||r.type===void 0||!Array.isArray(r.enum)||r.enum.length===0)return;if(t===void 0)t=r.type;else if(r.type!==t)return;for(let e of r.enum){if(n.includes(e))return;n.push(e)}}return{type:t,enum:n}}function ep(e){switch(e._tag){case`Literal`:return If(globalThis.String(e.literal));case`String`:return Du;case`Number`:return Zc;case`TemplateLiteral`:return e.parts.map(ep).join(``);case`Union`:return`(?:${e.types.map(ep).join(`|`)})`;default:throw Lf(`Invalid schema representation document`,[])}}function tp(e,t){let n=Zf([e.representation],[[`representation`]],e.references,t);return{dialect:n.dialect,schema:n.schemas[0],definitions:n.definitions}}var np=({identifier:e})=>e;function rp(e){return e===void 0?void 0:{annotations:e}}function ip(e,t){let{references:n,representations:r}=ap([e],t);return{representation:r[0],references:n}}function ap(e,t){let n={},r=new Map,i=new Set,a=new Map,o=new Set;for(let t of e)f(t);let s=t?.referencePolicy??np;for(let e of a.values())for(let t of e.values()){let e=s({ast:t.ast,occurrences:t.occurrences,identifier:t.identifier});e===void 0?t.isRecursive&&(t.reference=c(`${t.ast._tag}_`,t,``)):t.reference=c(e,t,e===t.identifier||!e.endsWith(`_`)?`_`:``)}return{representations:Ce(e,e=>m(e)),references:n};function c(e,t,n=`_`){let i=e,a=0;for(;r.has(i);){if(r.get(i)===t)return i;i=`${e}${n}${++a}`}return r.set(i,t),i}function l(e,t,n){let r=t.fallback;return r===void 0?n===t.identifier?e:ql(e,{identifier:n}):Ro(e)===r?e:ql(e,{[No]:r})}function u(e,t){if(!Object.hasOwn(n,e)&&!i.has(e)){i.add(e);let r=ee(t);i.delete(e),h(n,e,r)}return{_tag:`Reference`,$ref:e}}function d(e){let t=Kl(e),n=Ul(t),r=Lo(t),i=r===void 0?(t===e?void 0:Lo(e))??Ro(t):void 0;i!==void 0&&(r=`${i}Encoded`);let o=a.get(n);o===void 0&&(o=new Map,a.set(n,o));let s=o.get(r);return s===void 0&&(s={ast:n,identifier:r,fallback:i,occurrences:0,isRecursive:!1,reference:void 0},o.set(r,s)),s}function f(e){let t=d(e),n=t.ast;if(t.occurrences++,o.has(t)){t.isRecursive=!0;return}if(!(t.occurrences>1)){switch(o.add(t),p(n.checks),n._tag){case`Declaration`:case`Arrays`:case`Objects`:case`Union`:n.recur(e=>(f(e),e));break;case`TemplateLiteral`:n.parts.forEach(f);break;case`Suspend`:f(n.thunk())}o.delete(t)}}function p(e){e?.forEach(e=>{e.annotations?.representation?.schemas?.forEach(e=>f(vu(e))),e._tag===`FilterGroup`&&p(e.checks)})}function m(e){let t=d(e),n=t.ast,r=t.reference;return r===void 0?ee(n):u(r,t.identifier===void 0?n:l(n,t,r))}function ee(e){let t=te(e.checks);switch(e._tag){case`Declaration`:return{_tag:`Declaration`,typeParameters:e.typeParameters.map(e=>m(e)),checks:t,...re(e.annotations)};case`Null`:case`Undefined`:case`Void`:case`Never`:case`Unknown`:case`Any`:case`String`:case`Boolean`:case`Number`:case`BigInt`:case`Symbol`:case`ObjectKeyword`:return{_tag:e._tag,checks:t,...rp(e.annotations)};case`Literal`:return{_tag:`Literal`,literal:e.literal,checks:t,...rp(e.annotations)};case`UniqueSymbol`:return{_tag:`UniqueSymbol`,symbol:e.symbol,checks:t,...rp(e.annotations)};case`Enum`:return{_tag:`Enum`,enums:e.enums,checks:t,...rp(e.annotations)};case`TemplateLiteral`:return{_tag:`TemplateLiteral`,parts:e.parts.map(e=>m(e)),checks:t,...rp(e.annotations)};case`Arrays`:return{_tag:`Arrays`,elements:e.elements.map(e=>{let t=Kl(e),n=t.context?.annotations;return{isOptional:pu(t),type:m(e),...rp(n)}}),rest:e.rest.map(e=>m(e)),checks:t,...rp(e.annotations)};case`Objects`:return{_tag:`Objects`,propertySignatures:e.propertySignatures.map(e=>{let t=Kl(e.type),n=t.context?.annotations;return{name:e.name,type:m(e.type),isOptional:pu(t),isMutable:mu(t),...rp(n)}}),indexSignatures:e.indexSignatures.map(e=>({parameter:m(e.parameter),type:m(e.type)})),checks:t,...rp(e.annotations)};case`Union`:return{_tag:`Union`,types:e.types.map(e=>m(e)),...e.options===void 0?{}:{options:e.options},checks:t,...rp(e.annotations)};case`Suspend`:return{_tag:`Suspend`,checks:[],thunk:m(e.thunk()),...rp(e.annotations)}}}function te(e){return e?.map(ne)??[]}function ne(e){switch(e._tag){case`Filter`:return{_tag:`Filter`,aborted:e.aborted,...ie(e.annotations)};case`FilterGroup`:return{_tag:`FilterGroup`,checks:Ce(e.checks,ne),...ie(e.annotations)}}}function re(e){if(e===void 0)return;let{representation:t,...n}=e;return{...t===void 0?void 0:{representation:t},...Object.keys(n).length===0?void 0:{annotations:n}}}function ie(e){if(e===void 0)return;let{representation:t,...n}=e,r=t===void 0?void 0:t.schemas===void 0?t:{...t,schemas:t.schemas.map(e=>m(vu(e)))};return{...r===void 0?void 0:{representation:r},...Object.keys(n).length===0?void 0:{annotations:n}}}}function op(e){return ta(e)?e.value:{issues:[{message:Ki(e.cause)}]}}function sp(e,t){let n=xd(e),r={errors:`all`,...t?.parseOptions},i=ms(t),a=e=>{let t=new en(`sync`),a=Lr(u(n(e,r),{onFailure:i,onSuccess:e=>({value:e})}),{scheduler:t});a.currentDispatcher?.flush();let o=a.pollUnsafe();return o?op(o):new Promise(e=>{a.addObserver(t=>{e(op(t))})})};if(Object.hasOwn(e,`~standard`)){let t=e;return`validate`in t[`~standard`]||Object.assign(t[`~standard`],{validate:a}),t}return Object.assign(e,{"~standard":{version:1,vendor:`effect`,validate:a}})}function cp(e){return tp(ip(Af(e)))}function lp(e,t){let n=cp(e);if(t===`draft-2020-12`){let e=n.schema;return Object.keys(n.definitions).length>0&&(e.$defs=n.definitions),e}if(t===`draft-07`){let e=Qd(n),t=e.schema;return Object.keys(e.definitions).length>0&&(t.definitions=e.definitions),t}throw new globalThis.Error(`Unsupported target: ${t}`)}function up(e){let t={input(t){return lp(e.ast,t.target)},output(t){return lp(vu(e.ast),t.target)}};if(Object.hasOwn(e,`~standard`)){let n=e;return`jsonSchema`in n[`~standard`]||Object.assign(n[`~standard`],{jsonSchema:t}),n}return Object.assign(e,{"~standard":{version:1,vendor:`effect`,jsonSchema:t}})}var dp=ce(e=>fp(e));function fp(e){let t=Ao(e)?.toEquivalence;if(t)return t(dc(e)?e.typeParameters.map(fp):[]);switch(e._tag){case`Never`:return Lt();case`Declaration`:return pp(e);case`Null`:case`Undefined`:case`Void`:case`Unknown`:case`Any`:case`String`:case`Number`:case`Boolean`:case`BigInt`:case`Symbol`:case`Literal`:case`UniqueSymbol`:case`ObjectKeyword`:case`Enum`:case`TemplateLiteral`:return Pt;case`Arrays`:{let t=e.elements.map(fp),n=e.rest.map(fp),[r,...i]=n,a=i.length;return Oe((o,s)=>{if(!Array.isArray(o)||!Array.isArray(s))return!1;let c=o.length;if(c!==s.length)return!1;let l=0;for(;l<Math.min(c,e.elements.length);l++)if(!t[l](o[l],s[l]))return!1;if(n.length>0){for(;l<c-a;l++)if(!r(o[l],s[l]))return!1;for(let e=0;e<a;e++)if(!i[e](o[l+e],s[l+e]))return!1}return!0})}case`Objects`:{if(e.propertySignatures.length===0&&e.indexSignatures.length===0)return Pt;let t=e.propertySignatures.map(e=>fp(e.type)),n=e.indexSignatures.map(e=>fp(e.type));return Oe((r,i)=>{if(!$n(r)||!$n(i))return!1;for(let n=0;n<t.length;n++){let a=e.propertySignatures[n],o=a.name,s=Object.hasOwn(r,o),c=Object.hasOwn(i,o);if(pu(a.type)&&s!==c||s&&c&&!t[n](r[o],i[o]))return!1}for(let t=0;t<n.length;t++){let a=e.indexSignatures[t],o=Qc(r,a.parameter),s=Qc(i,a.parameter);if(o.length!==s.length)return!1;for(let e=0;e<o.length;e++){let a=o[e];if(!Object.hasOwn(i,a)||!n[t](r[a],i[a]))return!1}}return!0})}case`Union`:{let t=vu(e).types,n=Sl(t),r=t.map((t,n)=>[bd(t),fp(e.types[n])]);return Oe((e,t)=>{let i=n(e,!1);for(let n=0;n<i.length;n++){let[a,o]=r[i[n]];if(a(e)&&a(t))return o(e,t)}return!1})}case`Suspend`:{let t;return Oe((n,r)=>(t??=dp(e.thunk()))(n,r))}}}function pp(e){let t=e.annotations?.representation;if(t===void 0)return Pt;switch(t.id){case`effect/schema/Option`:{let[t]=mp(e);return(e,n)=>e._tag===n._tag&&(e._tag===`None`||t(e.value,n.value))}case`effect/schema/Result`:{let[t,n]=mp(e);return(e,r)=>e._tag===r._tag&&(e._tag===`Success`?t(e.success,r.success):n(e.failure,r.failure))}case`effect/schema/CauseReason`:{let[t,n]=mp(e);return hp(t,n)}case`effect/schema/Cause`:{let[t,n]=mp(e);return gp(t,n)}case`effect/schema/Exit`:{let[t,n,r]=mp(e),i=gp(n,r);return(e,n)=>e._tag===n._tag&&(e._tag===`Success`?t(e.value,n.value):i(e.cause,n.cause))}case`effect/schema/ReadonlyMap`:{let[t,n]=mp(e);return Vt(t,n)}case`effect/schema/ReadonlySet`:return rt(mp(e)[0]);case`effect/schema/RegExp`:return(e,t)=>e.source===t.source&&e.flags===t.flags;case`effect/schema/URL`:return(e,t)=>e.toString()===t.toString();default:return Pt}}function mp(e){return e.typeParameters.map(fp)}function hp(e,t){return(n,r)=>{if(n._tag!==r._tag)return!1;switch(n._tag){case`Fail`:return e(n.error,r.error);case`Die`:return t(n.defect,r.defect);case`Interrupt`:return n.fiberId===r.fiberId}}}function gp(e,t){let n=Ne(hp(e,t));return(e,t)=>n(e.reasons,t.reasons)}var _p=m(2,(e,t)=>({...e,...t})),vp=e=>e,yp=`~effect/Schema/SchemaError`;function bp(e){return cr(e,`~effect/Schema/SchemaError`)&&e[`~effect/Schema/SchemaError`]===`~effect/Schema/SchemaError`}var xp=Bd;function Sp(){return(e,t,n)=>D(new kc(e.map(dl),e=>t(e.map(e=>D(e))),n))}function Cp(e,t){return Sp()([],()=>(t,n,r)=>e(t)?v(t):y(new is(n,t,r)),t)}var wp=class extends Ni(`SchemaError`){[yp]=yp;constructor(e){let t=we();Le(0);try{super({issue:e})}finally{Le(t)}}get message(){return xs(this.issue)}toString(){return`SchemaError(${this.message})`}};function Tp(e){return bp(e)}function Ep(e){return pe(e)?Dp(e):Rr(e,e=>Wr(()=>Vi(e,e=>new wp(e))))}function Dp(e){return ta(e)?e:Zi(Vi(e.cause,e=>new wp(e)))}function Op(e,t){let n;for(let r of e.reasons){if(!Ii(r)||!Tp(r.error))throw new globalThis.Error(t,{cause:e});n??=r.error}if(n===void 0)throw new globalThis.Error(t,{cause:e});return n}function kp(e){let t=dr(e);if(ta(t))return t.value;throw Op(t.cause,`Sync adapter can only throw schema errors`)}function Ap(e,t){return sp(e,t)}function jp(e){return up(e)}var Mp=vd;function Np(e,t){let n=xd(e,t);return(e,t)=>Ep(n(e,t))}function Pp(e,t){let n=Sd(e,t);return(e,t)=>Dp(n(e,t))}var Fp=Cd;function T(e,t){let n=wd(e,t);return(e,t)=>kt(n(e,t),e=>new wp(e))}var Ip=T;function E(e,t){let n=Np(e,t);return(e,t)=>kp(n(e,t))}var Lp=E;function Rp(e,t){let n=Td(e,t);return(e,t)=>Ep(n(e,t))}function zp(e,t){let n=Ed(e,t);return(e,t)=>Dp(n(e,t))}function Bp(e,t){let n=Dd(e,t);return(e,t)=>kt(n(e,t),e=>new wp(e))}var Vp=Bp;function Hp(e,t){let n=Rp(e,t);return(e,t)=>kp(n(e,t))}var Up=Hp,D=Ud;function Wp(e){return cr(e,xp)&&e[xp]===xp}var O=vp(e=>D(iu(e.ast),{schema:e})),k=vp(e=>{let t=cm(e);return D(ou(e.ast),{schema:t})}),Gp=vp(e=>D(su(e.ast),{schema:e})),Kp=vp(e=>D(vu(e.ast),{schema:e})),qp=vp(e=>D(yu(e.ast),{schema:e}));function A(e){let t=D(new Ic(e),{literal:e,transform(n){return t.pipe(fm(A(n),{decode:Fs(()=>n),encode:Fs(()=>e)}))}});return t}var Jp=D(Pc),Yp=D(Fc),Xp=D(Ac),Zp=D(Nc),j=D(Rc),M=D(Vc),Qp=D(Hc),$p=D(Uc),em=D(Wc);function tm(e,t){return D(e,{fields:t,mapFields(e,t){let n=e(this.fields);return tm(ul(n,t?.unsafePreserveChecks?this.ast.checks:void 0),n)}})}function N(e){return tm(ul(e,void 0),e)}function nm(e,t){return D(fu(e.ast,t.ast),{key:e,value:t})}function rm(e,t){return D(e,{elements:t,mapElements(e,t){let n=e(this.elements);return rm(fl(n,t?.unsafePreserveChecks?this.ast.checks:void 0),n)}})}function im(e){return rm(fl(e),e)}var P=vp(e=>D(new Gc(!1,[],[e.ast]),{value:e})),am=vp(e=>D(new Gc(!1,[e.ast],[e.ast]),{value:e})),om=vp(e=>D(ml(e.ast),{schema:e}));function sm(e,t){return D(e,{members:t,mapMembers(e,t){let n=e(this.members);return sm(pl(n,this.ast.options,t?.unsafePreserveChecks?this.ast.checks:void 0),n)}})}function F(e,t){return sm(pl(e,t,void 0),e)}function I(e){let t=e.map(A);return D(pl(t,void 0,void 0),{literals:e,members:t,mapMembers(e){return F(e(this.members))},pick(e){return I(e)},transform(e){return F(t.map((t,n)=>t.transform(e[n])))}})}var L=vp(e=>F([e,Xp])),cm=vp(e=>F([e,Zp]));function lm(e){return D(new Ml(()=>e().ast))}function R(...e){return t=>t.check(...e)}function um(e,t){return n=>D(Yl(n.ast,[Il(e,t)]),{schema:n})}function dm(e){return t=>D(t.ast,{schema:t,identifier:e})}function fm(e,t){return n=>D(uu(n.ast,e.ast,t?ec(t):ic()),{from:n,to:e})}function pm(){return(e,t)=>xm()(e,{decode:t,encode:js})}function mm(e,t){return n=>t?fm(n,t)(e):fm(n)(e)}function hm(e){return t=>D(lu(t.ast,e),{schema:t})}function gm(e){return Rr(e,e=>Wr(()=>Vi(e,e=>e.issue)))}function _m(e,t){let n=t?.encodingStrategy===`omit`?zs():Ns();return t=>k(qp(t)).pipe(fm(t,{decode:Bs(gm(e)),encode:n}))}function vm(e,t){return n=>Kp(n).pipe(_m(e,t),mm(k(n)))}function ym(e){return A(e).pipe(hm(v(e)))}function bm(e,t){return Cp(t=>t instanceof e,t)}function xm(){return(e,t)=>new wc(e.ast,ec(t))}var z=Fl,Sm=`^\\S[\\s\\S]*\\S$|^\\S$|^$`;function Cm(e){let t=new globalThis.RegExp(Sm);return z(e=>e.trim()===e,{expected:`a string with no leading or trailing whitespace`,representation:{id:`effect/schema/isTrimmed`,payload:null},toJsonSchema:()=>({pattern:t.source}),toCode:()=>({runtime:`Schema.isTrimmed()`}),arbitraryConstraint:{patterns:[{source:Sm,flags:``}]},...e})}function wm(e,t){let n=e.source,r=e.flags,i=/^[dg]*uy?$/.test(r),a=r===``?`new RegExp(${d(n)})`:`new RegExp(${d(n)}, ${d(r)})`;return Bl(e,{toJsonSchema:()=>i?{pattern:r.endsWith(`y`)?`^(?:${n})`:n}:[{},!0],toCode:()=>({runtime:`Schema.isPattern(${a})`}),...t})}var Tm=e=>e?new globalThis.RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$/;function Em(e,t){let n=Tm(e);return wm(n,{expected:e?`a UUID v${e}`:`a UUID`,representation:{id:`effect/schema/isUUID`,payload:{version:e??null}},toJsonSchema:()=>({pattern:n.source,format:`uuid`}),toCode:()=>({runtime:e===void 0?`Schema.isUUID()`:`Schema.isUUID(${e})`}),...t})}function Dm(e){let t=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/;return wm(t,{expected:`a base64 encoded string`,representation:{id:`effect/schema/isBase64`,payload:null},toJsonSchema:()=>({pattern:t.source}),toCode:()=>({runtime:`Schema.isBase64()`}),...e})}function Om(e,t,n){if(e.length===0)return t.length===0?{}:[{},!0];let r={pattern:new globalThis.RegExp(n).source};return e===t?r:[r,!0]}function km(e,t){let n=JSON.stringify(e),r=new globalThis.RegExp(`^${If(e)}`),i=e.replace(/[\uD800-\uDBFF]$/,``);return z(t=>t.startsWith(e),{expected:`a string starting with ${n}`,representation:{id:`effect/schema/isStartingWith`,payload:{startsWith:e}},toJsonSchema:()=>Om(i,e,`^${If(i)}`),toCode:()=>({runtime:`Schema.isStartingWith(${d(e)})`}),arbitraryConstraint:{patterns:[{source:r.source,flags:r.flags}]},...t})}function Am(e,t){let n=JSON.stringify(e),r=new globalThis.RegExp(`${If(e)}$`),i=e.replace(/^[\uDC00-\uDFFF]/,``);return z(t=>t.endsWith(e),{expected:`a string ending with ${n}`,representation:{id:`effect/schema/isEndingWith`,payload:{endsWith:e}},toJsonSchema:()=>Om(i,e,`${If(i)}$`),toCode:()=>({runtime:`Schema.isEndingWith(${d(e)})`}),arbitraryConstraint:{patterns:[{source:r.source,flags:r.flags}]},...t})}function jm(e,t){let n=JSON.stringify(e),r=new globalThis.RegExp(If(e)),i=e.replace(/^[\uDC00-\uDFFF]|[\uD800-\uDBFF]$/g,``);return z(t=>t.includes(e),{expected:`a string including ${n}`,representation:{id:`effect/schema/isIncluding`,payload:{includes:e}},toJsonSchema:()=>Om(i,e,If(i)),toCode:()=>({runtime:`Schema.isIncluding(${d(e)})`}),arbitraryConstraint:{patterns:[{source:r.source,flags:r.flags}]},...t})}var Mm=D(Rl),Nm=Ll;function Pm(e){let t=Sn(e.order),n=e.formatter??d;return(r,i)=>z(e=>t(e,r),{expected:`a value greater than ${n(r)}`,arbitraryConstraint:{order:e.order,minimum:r,exclusiveMinimum:!0},...e.annotate?.(r),...i})}function Fm(e){let t=gr(e.order),n=e.formatter??d;return(r,i)=>z(e=>t(e,r),{expected:`a value greater than or equal to ${n(r)}`,arbitraryConstraint:{order:e.order,minimum:r},...e.annotate?.(r),...i})}function Im(e){let t=tr(e.order),n=e.formatter??d;return(r,i)=>z(e=>t(e,r),{expected:`a value less than ${n(r)}`,arbitraryConstraint:{order:e.order,maximum:r,exclusiveMaximum:!0},...e.annotate?.(r),...i})}function Lm(e){let t=jn(e.order),n=e.formatter??d;return(r,i)=>z(e=>t(e,r),{expected:`a value less than or equal to ${n(r)}`,arbitraryConstraint:{order:e.order,maximum:r},...e.annotate?.(r),...i})}function Rm(e){let t=gr(e.order),n=Sn(e.order),r=jn(e.order),i=tr(e.order),a=e.formatter??d;return(o,s)=>{let c=o.exclusiveMinimum?n:t,l=o.exclusiveMaximum?i:r;return z(e=>c(e,o.minimum)&&l(e,o.maximum),{expected:`a value between ${a(o.minimum)}${o.exclusiveMinimum?` (excluded)`:``} and ${a(o.maximum)}${o.exclusiveMaximum?` (excluded)`:``}`,arbitraryConstraint:{order:e.order,minimum:o.minimum,maximum:o.maximum,...o.exclusiveMinimum&&{exclusiveMinimum:!0},...o.exclusiveMaximum&&{exclusiveMaximum:!0}},...e.annotate?.(o),...s})}}function zm(e){if(!globalThis.Number.isFinite(e))throw new globalThis.RangeError(`Expected a finite number, got ${d(e)}`);return e}var Bm=Pm({order:Hr,annotate:e=>({representation:{id:`effect/schema/isGreaterThan`,payload:{exclusiveMinimum:zm(e)}},toJsonSchema:()=>({exclusiveMinimum:e}),toCode:()=>({runtime:`Schema.isGreaterThan(${d(e)})`})})}),B=Fm({order:Hr,annotate:e=>({representation:{id:`effect/schema/isGreaterThanOrEqualTo`,payload:{minimum:zm(e)}},toJsonSchema:()=>({minimum:e}),toCode:()=>({runtime:`Schema.isGreaterThanOrEqualTo(${d(e)})`})})}),Vm=Im({order:Hr,annotate:e=>({representation:{id:`effect/schema/isLessThan`,payload:{exclusiveMaximum:zm(e)}},toJsonSchema:()=>({exclusiveMaximum:e}),toCode:()=>({runtime:`Schema.isLessThan(${d(e)})`})})}),Hm=Lm({order:Hr,annotate:e=>({representation:{id:`effect/schema/isLessThanOrEqualTo`,payload:{maximum:zm(e)}},toJsonSchema:()=>({maximum:e}),toCode:()=>({runtime:`Schema.isLessThanOrEqualTo(${d(e)})`})})}),Um=Rm({order:Hr,annotate:e=>{let t=e.exclusiveMinimum?!0:void 0,n=e.exclusiveMaximum?!0:void 0;return{representation:{id:`effect/schema/isBetween`,payload:{minimum:zm(e.minimum),maximum:zm(e.maximum),...t&&{exclusiveMinimum:t},...n&&{exclusiveMaximum:n}}},toJsonSchema:()=>({[t?`exclusiveMinimum`:`minimum`]:e.minimum,[n?`exclusiveMaximum`:`maximum`]:e.maximum}),toCode:()=>({runtime:`Schema.isBetween({ minimum: ${d(e.minimum)}, maximum: ${d(e.maximum)}, exclusiveMinimum: ${d(t)}, exclusiveMaximum: ${d(n)} })`})}}});function Wm(e,t){if(!globalThis.Number.isFinite(e)||e===0)throw new globalThis.RangeError(`Expected a finite non-zero number, got ${globalThis.String(e)}`);return e=globalThis.Math.abs(e),z(t=>Ba(t,e)===0,{expected:`a value that is a multiple of ${e}`,representation:{id:`effect/schema/isMultipleOf`,payload:{divisor:e}},toJsonSchema:()=>({multipleOf:e}),toCode:()=>({runtime:`Schema.isMultipleOf(${d(e)})`}),...t})}function Gm(e){return z(e=>globalThis.Number.isSafeInteger(e),{expected:`an integer`,representation:{id:`effect/schema/isInt`,payload:null},toJsonSchema:()=>[{type:`integer`},!0],toCode:()=>({runtime:`Schema.isInt()`}),arbitraryConstraint:{number:`integer`},...e})}var V=M.check(Gm()),Km=V.check(B(0));function qm(e){if(globalThis.Number.isNaN(e.getTime()))throw new globalThis.RangeError(`Expected a valid Date, got ${d(e)}`);return e.toISOString()}function Jm(e){return`new Date(${d(e.getTime())})`}var Ym=Pm({order:Xn,annotate:e=>({representation:{id:`effect/schema/isGreaterThanDate`,payload:{exclusiveMinimum:qm(e)}},toJsonSchema:()=>[{},!0],toCode:()=>({runtime:`Schema.isGreaterThanDate(${Jm(e)})`})})}),Xm=Fm({order:Xn,annotate:e=>({representation:{id:`effect/schema/isGreaterThanOrEqualToDate`,payload:{minimum:qm(e)}},toJsonSchema:()=>[{},!0],toCode:()=>({runtime:`Schema.isGreaterThanOrEqualToDate(${Jm(e)})`})})}),Zm=Im({order:Xn,annotate:e=>({representation:{id:`effect/schema/isLessThanDate`,payload:{exclusiveMaximum:qm(e)}},toJsonSchema:()=>[{},!0],toCode:()=>({runtime:`Schema.isLessThanDate(${Jm(e)})`})})}),Qm=Lm({order:Xn,annotate:e=>({representation:{id:`effect/schema/isLessThanOrEqualToDate`,payload:{maximum:qm(e)}},toJsonSchema:()=>[{},!0],toCode:()=>({runtime:`Schema.isLessThanOrEqualToDate(${Jm(e)})`})})}),$m=Rm({order:Xn,annotate:e=>{let t=e.exclusiveMinimum?!0:void 0,n=e.exclusiveMaximum?!0:void 0;return{representation:{id:`effect/schema/isBetweenDate`,payload:{minimum:qm(e.minimum),maximum:qm(e.maximum),...t&&{exclusiveMinimum:t},...n&&{exclusiveMaximum:n}}},toJsonSchema:()=>[{},!0],toCode:()=>({runtime:`Schema.isBetweenDate({ minimum: ${Jm(e.minimum)}, maximum: ${Jm(e.maximum)}, exclusiveMinimum: ${d(t)}, exclusiveMaximum: ${d(n)} })`})}}}),eh=Pm({order:cn,annotate:e=>({representation:{id:`effect/schema/isGreaterThanBigInt`,payload:{exclusiveMinimum:e.toString(10)}},toJsonSchema:()=>[{},!0],toCode:()=>({runtime:`Schema.isGreaterThanBigInt(${d(e)})`})})}),th=Fm({order:cn,annotate:e=>({representation:{id:`effect/schema/isGreaterThanOrEqualToBigInt`,payload:{minimum:e.toString(10)}},toJsonSchema:()=>[{},!0],toCode:()=>({runtime:`Schema.isGreaterThanOrEqualToBigInt(${d(e)})`})})}),nh=Im({order:cn,annotate:e=>({representation:{id:`effect/schema/isLessThanBigInt`,payload:{exclusiveMaximum:e.toString(10)}},toJsonSchema:()=>[{},!0],toCode:()=>({runtime:`Schema.isLessThanBigInt(${d(e)})`})})}),rh=Lm({order:cn,annotate:e=>({representation:{id:`effect/schema/isLessThanOrEqualToBigInt`,payload:{maximum:e.toString(10)}},toJsonSchema:()=>[{},!0],toCode:()=>({runtime:`Schema.isLessThanOrEqualToBigInt(${d(e)})`})})}),ih=Rm({order:cn,annotate:e=>{let t=e.exclusiveMinimum?!0:void 0,n=e.exclusiveMaximum?!0:void 0;return{representation:{id:`effect/schema/isBetweenBigInt`,payload:{minimum:e.minimum.toString(10),maximum:e.maximum.toString(10),...t&&{exclusiveMinimum:t},...n&&{exclusiveMaximum:n}}},toJsonSchema:()=>[{},!0],toCode:()=>({runtime:`Schema.isBetweenBigInt({ minimum: ${d(e.minimum)}, maximum: ${d(e.maximum)}, exclusiveMinimum: ${d(t)}, exclusiveMaximum: ${d(n)} })`})}}});function ah(e,t){return e=ph(e),oh(e,Math.ceil(e/2),t)}function oh(e,t,n){return z(t=>t.length>=e,{expected:`a value with a length of at least ${e}`,representation:{id:`effect/schema/isMinLength`,payload:{minLength:e}},toJsonSchema:({type:n})=>n===`string`?e<=1?{minLength:t}:[{minLength:t},!0]:n===`array`?{minItems:e}:n===void 0?[{minLength:t,minItems:e},!0]:[{},!0],toCode:()=>({runtime:`Schema.isMinLength(${e})`}),[Mo]:!0,arbitraryConstraint:{minLength:e},...n})}function sh(e){return oh(1,1,e)}function H(e,t){return e=ph(e),z(t=>t.length<=e,{expected:`a value with a length of at most ${e}`,representation:{id:`effect/schema/isMaxLength`,payload:{maxLength:e}},toJsonSchema:({type:t})=>t===`string`?e===0?{maxLength:e}:[{maxLength:e},!0]:t===`array`?{maxItems:e}:t===void 0?[{maxLength:e,maxItems:e},!0]:[{},!0],toCode:()=>({runtime:`Schema.isMaxLength(${e})`}),[Mo]:!0,arbitraryConstraint:{maxLength:e},...t})}function ch(e,t,n){return e=ph(e),t=ph(t),z(n=>n.length>=e&&n.length<=t,{expected:e===t?`a value with a length of ${e}`:`a value with a length between ${e} and ${t}`,representation:{id:`effect/schema/isBetweenLength`,payload:{minimum:e,maximum:t}},toJsonSchema:({type:n})=>n===`string`?t===0||Math.ceil(e/2)>t?{minLength:Math.ceil(e/2),maxLength:t}:[{minLength:Math.ceil(e/2),maxLength:t},!0]:n===`array`?{minItems:e,maxItems:t}:n===void 0?[{minLength:Math.ceil(e/2),maxLength:t,minItems:e,maxItems:t},!0]:[{},!0],toCode:()=>({runtime:`Schema.isBetweenLength(${e}, ${t})`}),[Mo]:!0,arbitraryConstraint:{minLength:e,maxLength:t},...n})}function lh(e,t){return e=ph(e),z(t=>fh(t,e)>=e,{expected:`a string with at least ${e} code points`,representation:{id:`effect/schema/isMinCodePoints`,payload:{minCodePoints:e}},toJsonSchema:()=>({minLength:e}),toCode:()=>({runtime:`Schema.isMinCodePoints(${e})`}),arbitraryConstraint:{minCodePoints:e},...t})}function uh(e,t){return e=ph(e),z(t=>fh(t,e+1)<=e,{expected:`a string with at most ${e} code points`,representation:{id:`effect/schema/isMaxCodePoints`,payload:{maxCodePoints:e}},toJsonSchema:()=>({maxLength:e}),toCode:()=>({runtime:`Schema.isMaxCodePoints(${e})`}),arbitraryConstraint:{maxCodePoints:e},...t})}function dh(e,t,n){return e=ph(e),t=ph(t),z(n=>{let r=fh(n,t+1);return r>=e&&r<=t},{expected:e===t?`a string with ${e} code points`:`a string with between ${e} and ${t} code points`,representation:{id:`effect/schema/isBetweenCodePoints`,payload:{minimum:e,maximum:t}},toJsonSchema:()=>({allOf:[{minLength:e},{maxLength:t}]}),toCode:()=>({runtime:`Schema.isBetweenCodePoints(${e}, ${t})`}),arbitraryConstraint:{minCodePoints:e,maxCodePoints:t},...n})}function fh(e,t){if(t===0)return 0;let n=0;for(let r of e)if(++n>=t)break;return n}function ph(e){if(!globalThis.Number.isFinite(e))throw new globalThis.RangeError(`Expected a finite number, got ${e}`);return Math.max(0,Math.floor(e))}function mh(e,t){return e=ph(e),z(t=>t.size>=e,{expected:`a value with a size of at least ${e}`,representation:{id:`effect/schema/isMinSize`,payload:{minSize:e}},toJsonSchema:()=>[{},!0],toCode:()=>({runtime:`Schema.isMinSize(${e})`}),[Mo]:!0,arbitraryConstraint:{minSize:e},...t})}function hh(e,t){return e=ph(e),z(t=>t.size<=e,{expected:`a value with a size of at most ${e}`,representation:{id:`effect/schema/isMaxSize`,payload:{maxSize:e}},toJsonSchema:()=>[{},!0],toCode:()=>({runtime:`Schema.isMaxSize(${e})`}),[Mo]:!0,arbitraryConstraint:{maxSize:e},...t})}function gh(e,t,n){return e=ph(e),t=ph(t),z(n=>n.size>=e&&n.size<=t,{expected:e===t?`a value with a size of ${e}`:`a value with a size between ${e} and ${t}`,representation:{id:`effect/schema/isBetweenSize`,payload:{minimum:e,maximum:t}},toJsonSchema:()=>[{},!0],toCode:()=>({runtime:`Schema.isBetweenSize(${e}, ${t})`}),[Mo]:!0,arbitraryConstraint:{minSize:e,maxSize:t},...n})}function _h(e,t){return e=ph(e),z(t=>Reflect.ownKeys(t).length>=e,{expected:`a value with at least ${e===1?`1 entry`:`${e} entries`}`,representation:{id:`effect/schema/isMinProperties`,payload:{minProperties:e}},toJsonSchema:({type:t})=>t===`object`?{minProperties:e}:[{minProperties:e},!0],toCode:()=>({runtime:`Schema.isMinProperties(${e})`}),[Mo]:!0,arbitraryConstraint:{minProperties:e},...t})}function vh(e,t){return e=ph(e),z(t=>Reflect.ownKeys(t).length<=e,{expected:`a value with at most ${e===1?`1 entry`:`${e} entries`}`,representation:{id:`effect/schema/isMaxProperties`,payload:{maxProperties:e}},toJsonSchema:({type:t})=>t===`object`?{maxProperties:e}:[{maxProperties:e},!0],toCode:()=>({runtime:`Schema.isMaxProperties(${e})`}),[Mo]:!0,arbitraryConstraint:{maxProperties:e},...t})}function yh(e,t,n){return e=ph(e),t=ph(t),z(n=>Reflect.ownKeys(n).length>=e&&Reflect.ownKeys(n).length<=t,{expected:e===t?`a value with exactly ${e===1?`1 entry`:`${e} entries`}`:`a value with between ${e} and ${t} entries`,representation:{id:`effect/schema/isBetweenProperties`,payload:{minimum:e,maximum:t}},toJsonSchema:({type:n})=>n===`object`?{minProperties:e,maxProperties:t}:[{minProperties:e,maxProperties:t},!0],toCode:()=>({runtime:`Schema.isBetweenProperties(${e}, ${t})`}),[Mo]:!0,arbitraryConstraint:{minProperties:e,maxProperties:t},...n})}var bh=j.check(sh());globalThis.RegExp,globalThis.URL;var xh=j.annotate({expected:`a string that will be decoded as a Date`}),Sh=Cp(e=>e instanceof globalThis.Date&&!globalThis.Number.isNaN(e.getTime()),{representation:{id:`effect/schema/Date`,payload:null},toCode:()=>({runtime:`Schema.Date`,Type:`globalThis.Date`}),expected:`a valid Date`,toCodecJson:()=>xm()(xh,sc)}),Ch=j.annotate({expected:`a string that will be decoded as JSON`,contentMediaType:`application/json`});function U(e,t){return Ch.pipe(fm(e,lc(t)))}globalThis.File,globalThis.FormData,globalThis.URLSearchParams;var wh=j.annotate({expected:`a string that will be decoded as a number`}).pipe(fm(M,ac)),Th=j.check(Cm()),Eh=j.annotate({expected:`a string that will be decoded as a trimmed string`}).pipe(fm(Th,nc())),Dh=j.annotate({expected:`a base64 encoded string that will be decoded as Uint8Array`,format:`byte`,contentEncoding:`base64`}),Oh=bm(globalThis.Uint8Array,{representation:{id:`effect/schema/Uint8Array`,payload:null},toCode:()=>({runtime:`Schema.Uint8Array`,Type:`globalThis.Uint8Array`}),expected:`Uint8Array`,toCodecJson:()=>xm()(Dh,cc)}),kh=tc({decode:(e,t)=>Er(mo(e),{onNone:()=>y(new as({expected:`a valid UTC DateTime string`},e,t)),onSome:e=>v(ho(e))}),encode:e=>v(go(e))}),Ah=-864e13,jh=864e13;function Mh(e,t,n){let r=Math.max(t,e?.minimum===void 0?t:e.minimum.epochMilliseconds+ +(e.exclusiveMinimum===!0)),i=Math.min(n,e?.maximum===void 0?n:e.maximum.epochMilliseconds-+(e.exclusiveMaximum===!0));return r<=i?[r,i]:[t,n]}function Nh(e,t){return V.check(Um({minimum:e,maximum:t}))}var Ph=Cp(e=>uo(e)&&fo(e),{representation:{id:`effect/schema/DateTimeUtc`,payload:null},toCode:()=>({runtime:`Schema.DateTimeUtc`,Type:`DateTime.Utc`,importDeclarations:[`import * as DateTime from "effect/DateTime"`]}),expected:`DateTime.Utc`,toCodecArbitrary:({constraint:e})=>{let[t,n]=Mh(e,Ah,jh);return pm()(Nh(t,n),Fs(po))},toCodecJson:()=>xm()(j,kh),toFormatter:()=>e=>e.toString()}),Fh=j.annotate({expected:`a string that will be decoded as a DateTime.Utc`}).pipe(fm(Ph,kh));function Ih(e){return dp(e.ast)}function Lh(e,t){return ip(e.ast,t)}function Rh(e,t){return tp(ip(Af(e.ast),t),t)}var zh=kf,Bh=D(ql(Yu,{toCode:()=>({runtime:`Schema.Json`,Type:`Schema.Json`})})),Vh=nm(j,Bh),Hh=_(()=>pr({id:x().min(1).max(256),name:x().min(1).max(128),kind:sr(`agent`).optional()})),Uh=_(()=>x().min(1).max(256)),Wh=_(()=>pr({agentId:Uh,sessionId:Uh,commandId:Uh,outcome:Ot([`completed`,`failed`,`interrupted`,`cancelled`,`outcome_unknown`]),diagnostic:x().min(1).max(200).optional(),waitingOnYou:Nt(pr({itemId:Uh,kind:x().min(1).max(64),summary:x().min(1).max(200)})).min(1).max(8).optional()})),Gh=pr({author:Hh.optional(),sourceRequestId:Uh.optional(),delegation:pr({ancestors:Nt(Uh).max(8),maxDepth:qn().int().min(1).max(8),steer:sr(!0).optional(),goal:Wt([x().min(1).max(4e3),sr(!1)]).optional(),reply:Wh.optional()}).optional()});function Kh(e){let t=Gh.safeParse(e);return t.success?t.data.author:void 0}var qh=e=>crypto.getRandomValues(new Uint8Array(e)),Jh=(e,t,n)=>{let r=256-256%e.length;if(r===256){let r=e.length-1;return(i=t)=>{if(!i)return``;let a=``;for(;;){let t=n(i),o=i;for(;o--;)if(a+=e[t[o]&r],a.length>=i)return a}}}let i=Math.ceil(409.6*t/r);return(a=t)=>{if(!a)return``;let o=``;for(;;){let t=n(i),s=i;for(;s--;)if(t[s]<r&&(o+=e[t[s]%e.length],o.length>=a))return o}}},Yh=(e,t=21)=>Jh(e,t|0,qh),Xh=`abcdefghijklmnopqrstuvwxyz0123456789`;function Zh(e=21){if(e===1/0||e===-1/0)throw RangeError(`nanoid length must be finite`);return Yh(Xh,e)()}var Qh=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,$h=/^[a-z][a-z0-9]*(?:_[a-z][a-z0-9]*)*$/,eg=x().min(1).max(64).regex(Qh),tg=x().min(1).max(64).regex(Qh),ng=x().min(1).max(32).regex($h),rg=zr({prefix:ng}),ig=zr({family:eg,version:sr(1),kinds:yn(tg,rg)}).superRefine((e,t)=>{let n=Object.entries(e.kinds);if(n.length<1||n.length>64){t.addIssue({code:`custom`,message:`Identifier families must declare between one and 64 kinds`});return}let r=new Set;for(let[,e]of n){if(r.has(e.prefix)){t.addIssue({code:`custom`,message:`Identifier kind prefixes must be distinct`});return}r.add(e.prefix)}}),ag=x(),og=/^[a-z0-9]+$/,sg=new TextEncoder;function cg(e){return e===32||e>=9&&e<=13}function lg(e){let t=0,n=e.length;for(;t<n&&cg(e.charCodeAt(t));)t+=1;for(;n>t&&cg(e.charCodeAt(n-1));)--n;return e.slice(t,n).replace(/[A-Z]/g,e=>String.fromCharCode(e.charCodeAt(0)+32))}function ug(e){let t=`${e.prefix}_`;function n(e){if(!e.startsWith(t))return!1;let n=e.slice(t.length);return n.length===21&&og.test(n)}let r=_(()=>mn(e=>{let t=ag.safeParse(e);return t.success&&n(t.data)}));function i(i){let a,o=i,s=sg.encode(o).byteLength,c=r.safeParse(o),l=o.startsWith(t)?o.slice(t.length):void 0;if(s<3||s>96)a=`bounds`;else if(l!==void 0&&Array.from(l).length!==21)a=`bounds`;else if(c.success)return{ok:!0,value:c.data};else a=n(lg(o))?`non_canonical`:`grammar`;return{ok:!1,error:{code:`invalid_id`,family:e.family,kind:e.kind,version:1,reason:a}}}let a=_(()=>ag.transform((e,t)=>{let n=i(e);return n.ok?n.value:(t.addIssue({code:`custom`,message:n.error.reason}),Mt)}));function o(){let n;try{n=Zh(21)}catch{throw e.entropyUnavailable()}return r.parse(`${t}${n}`)}return{family:e.family,kind:e.kind,version:1,generate:o,schema:a,parse:i,is:e=>i(e).ok}}var dg=yn(x(),zr({family:x(),kind:x(),version:sr(1),generate:he(),schema:je(ve),parse:he(),is:he()})),fg=class extends Error{name=`CairnDefinitionError`;code=`invalid_definition`;constructor(){super(`Cairn identifier family definition is invalid`)}},pg=class extends Error{name=`CairnGenerationError`;code=`entropy_unavailable`;family;kind;version=1;constructor(e){super(`Cairn entropy source is unavailable`),this.family=e.family,this.kind=e.kind}};function mg(e){let t;try{t=ig.safeParse(e)}catch{throw new fg}if(!t.success)throw new fg;let n=t.data,r={};for(let[t,i]of Object.entries(n.kinds)){let a=i.prefix;r[t]=ug({family:e.family,kind:t,prefix:a,entropyUnavailable:()=>new pg({family:n.family,kind:t})})}let i=mn(e=>{let t=dg.safeParse(e);if(!t.success)return!1;let r=Object.entries(t.data);return r.length===Object.keys(n.kinds).length&&r.every(([e,t])=>Object.hasOwn(n.kinds,e)&&t.kind===e&&t.family===n.family)}).safeParse(r);if(!i.success)throw new fg;return i.data}var hg=Symbol.for(`effect/MutableList/Empty`),gg=()=>({head:void 0,tail:void 0,length:0}),_g=e=>{let t=e.head;t.offset>=1024&&t===e.tail&&t.mutable&&(t.array.length-t.offset)*8<=t.offset&&(e.head=e.tail={array:t.array.slice(t.offset),mutable:!0,offset:0,next:void 0})},vg=()=>({array:[],mutable:!0,offset:0,next:void 0}),yg=(e,t)=>{e.tail?e.tail.mutable||(e.tail.next=vg(),e.tail=e.tail.next):e.head=e.tail=vg(),e.tail.array.push(t),e.length++},bg=e=>{e.head=e.tail=void 0,e.length=0},xg=(e,t)=>{if(t=di(t),t<=0||!e.head)return[];if(t=Math.min(t,e.length),t===e.length&&e.head?.offset===0&&!e.head.next){let t=e.head.array;return bg(e),t}let n=Array(t),r=0,i=e.head;for(;i;){for(;i.offset<i.array.length;)if(n[r++]=i.array[i.offset],i.mutable&&(i.array[i.offset]=void 0),i.offset++,r===t)return e.head=i.offset===i.array.length&&i.next?i.next:i,e.length-=t,e.length===0?bg(e):_g(e),n;i=i.next}return bg(e),n},Sg=e=>{if(!e.head)return hg;let t=e.head.array[e.head.offset];return e.head.mutable&&(e.head.array[e.head.offset]=void 0),e.head.offset++,e.length--,e.head.offset===e.head.array.length?e.head.next?e.head=e.head.next:bg(e):_g(e),t},Cg=`~effect/Queue`,wg=`~effect/Queue/Enqueue`,Tg=`~effect/Queue/Dequeue`,Eg={_A:mt,_E:mt},Dg={[Cg]:Eg,[wg]:Eg,[Tg]:Eg,...ii,toJSON(){return{_id:`effect/Queue`,state:this.state._tag,size:Hg(this)}}},Og=e=>fe(t=>{let n=Object.create(Dg);return n.dispatcher=t.currentDispatcher,n.capacity=e?.capacity??1/0,n.strategy=e?.strategy??`suspend`,n.messages=gg(),n.scheduleRunning=!1,n.state={_tag:`Open`,takers:new Set,offers:new Set,awaiters:new Set},er(n)}),kg=e=>Og({capacity:e}),Ag=m(2,(e,t)=>Tn(()=>jg(e,t)?Wg:e.state._tag===`Open`&&e.strategy===`suspend`?$g(e,t):Ug)),jg=(e,t)=>e.state._tag===`Open`?e.messages.length>=e.capacity?e.strategy===`sliding`?(Sg(e.messages),yg(e.messages,t),!0):e.capacity<=0&&e.state.takers.size>0&&(yg(e.messages,t),qg(e),!0):(yg(e.messages,t),Jg(e),!0):!1,Mg=m(2,(e,t)=>Ng(e,ee(t))),Ng=m(2,(e,t)=>Kt(()=>Pg(e,t))),Pg=(e,t)=>{if(e.state._tag!==`Open`)return!1;let n=Wn(t),r=xe(n,Gg);return e.state.offers.size===0&&e.messages.length===0?(i_(e,r),!0):(e.state={...e.state,_tag:`Closing`,exit:r},Jg(e),!0)},Fg=e=>Pg(e,ee(qt())),Ig=e=>Kt(()=>Lg(e)),Lg=e=>{if(e.state._tag===`Done`)return!1;bg(e.messages);let t=e.state.offers;i_(e,e.state._tag===`Open`?Kg:e.state.exit);for(let e of t)t_(e);return!0},Rg=e=>zg(e,1,1/0),zg=m(3,(e,t,n)=>(t=di(t),n=di(n),Xg(()=>Yg(e,t,n)??de(Qg(e,()=>Zg(e,t)),zg(e,t,n))))),Bg=e=>Xg(()=>Vg(e)??de(Qg(e,()=>Zg(e,1)),Bg(e))),Vg=e=>{if(e.state._tag===`Done`)return e.state.exit;if(e.messages.length>0){let t=Sg(e.messages);return r_(e),c(t)}if(e.capacity<=0&&e.state.offers.size>0){let t=n_(e.state.offers);return r_(e),c(t)}},Hg=e=>e.state._tag===`Done`?0:e.messages.length,Ug=c(!1),Wg=c(!0),Gg=Ye(qt()),Kg=Re(),qg=e=>{if(e.state._tag!==`Done`&&e.state.takers.size!==0){for(let t of e.state.takers)if(t.ready()&&(e.state.takers.delete(t),t.resume(Tt),e.messages.length===0))break}},Jg=e=>{e.scheduleRunning||e.state._tag===`Done`||e.state.takers.size===0||(e.scheduleRunning=!0,e.dispatcher.scheduleTask(()=>{e.scheduleRunning=!1,qg(e)},0))},Yg=(e,t,n)=>{if(e.state._tag===`Done`)return e.state.exit;if(n<=0||t<=0)return c([]);if(!Zg(e,t))return;let r=e.messages.length>0?xg(e.messages,n):[n_(e.state.offers)];return r_(e),c(r)},Xg=$e({op:`QueueTake`,[ue](e){let t=this[ei]();return Be(t)?t[ue](e):t}}),Zg=(e,t)=>e.messages.length>=(e.state._tag===`Closing`?1:Math.min(t,e.capacity||1))||e.capacity<=0&&e.state._tag!==`Done`&&e.state.offers.size>0,Qg=(e,t)=>Xe(n=>{if(e.state._tag===`Done`)return n(e.state.exit);if(t())return n(Tt);let r={ready:t,resume:n};return e.state.takers.add(r),Kt(()=>{e.state._tag!==`Done`&&e.state.takers.delete(r)})}),$g=(e,t)=>Xe(n=>jg(e,t)?n(Wg):e_(e,{_tag:`Single`,message:t,resume:n})),e_=(e,t)=>{if(e.state._tag!==`Open`)return t_(t);let n=e.state.offers;return n.add(t),Kt(()=>{e.state._tag!==`Done`&&(n.delete(t),e.state._tag===`Closing`&&n.size===0&&e.messages.length===0&&i_(e,e.state.exit))})},t_=e=>e._tag===`Single`?e.resume(Ug):e.resume(c(e.remaining.slice(e.offset))),n_=e=>{let t=e.values().next().value;if(t._tag===`Single`)return e.delete(t),t.resume(Wg),t.message;let n=t.remaining[t.offset++];return t.offset===t.remaining.length&&(e.delete(t),t.resume(c([]))),n},r_=e=>{if(e.state._tag===`Done`)return Wa(e.state.exit.cause);if(e.state.offers.size===0)return e.state._tag===`Closing`&&e.messages.length===0&&(i_(e,e.state.exit),Wa(e.state.exit.cause));for(let t of e.state.offers){let n=e.capacity-e.messages.length;if(n<=0)break;if(t._tag===`Single`)yg(e.messages,t.message),e.state.offers.delete(t),t.resume(Wg);else{for(;t.offset<t.remaining.length;t.offset++){if(n===0)return!1;yg(e.messages,t.remaining[t.offset]),n--}e.state.offers.delete(t),t.resume(c([]))}let r=e.state;if(r._tag===`Done`)return Wa(r.exit.cause)}return!1},i_=(e,t)=>{if(e.state._tag===`Done`)return;let n=e.state;e.state={_tag:`Done`,exit:t};for(let e of n.takers)e.resume(t);n.takers.clear();for(let e of n.awaiters)e(t);n.awaiters.clear()},a_=xt,o_=ge,s_=At,c_=Pe,l_=ir,u_=Fr,d_=e=>new p_(e),f_=(e,t,n)=>Xe(r=>{if(e.free>=t)return r(n);let i=()=>{e.free<t||(e.waiters.delete(i),r(n))};return e.waiters.add(i),Kt(()=>{e.waiters.delete(i)})}),p_=class{waiters=new Set;taken=0;permits;constructor(e){this.permits=e}get free(){return this.permits-this.taken}take(e){let t=Tn(()=>this.free<e?f_(this,e,t):(this.taken+=e,er(e)));return t}takeIfAvailable(e){return Tn(()=>this.free<e?er(!1):(this.taken+=e,er(!0)))}releaseUnsafe(e,t){return this.taken-=t,this.waiters.size>0&&e.currentDispatcher.scheduleTask(()=>{for(let e of this.waiters){if(this.free<=0)break;e()}},0),this.free}resize(e){return fe(t=>(this.permits=e,this.free<0||this.releaseUnsafe(t,0),ri))}release(e){return fe(t=>er(this.releaseUnsafe(t,e)))}get releaseAll(){return fe(e=>er(this.releaseUnsafe(e,this.taken)))}withPermits(e){return t=>qr(n=>{let r=Tn(()=>{if(this.free<e){let t=f_(this,e,ri);return Ft(n(t),()=>r)}return this.taken+=e,Tr(n(t),()=>{this.releaseUnsafe(Ht(),e)},!0)});return r})}withPermit=this.withPermits(1);withPermitsIfAvailable(e){return t=>qr(n=>this.free<e?An:(this.taken+=e,Tr(n(oe(t)),()=>{this.releaseUnsafe(Ht(),e)},!0)))}},m_=e=>Kt(()=>new p_(e)),h_=`~effect/Channel`,g_=e=>cr(e,h_),__={[h_]:{_Env:mt,_InErr:mt,_InElem:mt,_OutErr:mt,_OutElem:mt},pipe(){return o(this,arguments)}},v_=e=>{let t=Object.create(__);return t.transform=(t,n)=>Rr(e(t,n),e=>v(Ut(e))),t},y_=(e,t)=>v_((n,r)=>C(S_(e)(n,r),e=>t(e,r))),b_=e=>v_((t,n)=>e),x_=e=>v_(lt(function*(t,n){let r=xa(n),i=e=>Sa(r,Ja(e)),a=yield*me(e(t,n,r),i);return me(a,i)})),S_=e=>e.transform,C_=4096,w_=(e,t,n)=>Og({capacity:n?.bufferSize,strategy:n?.strategy}).pipe(nr(t=>ya(e,Ig(t))),nr(n=>_a(t(n),e).pipe(Rr(e=>Ng(n,e)),Ke(e)))),T_=(e,t)=>v_((n,r)=>Se(w_(r,e,t),Rg)),E_=e=>v_((t,n)=>Cn(()=>S_(e())(t,n))),D_=e=>b_(S(()=>{let t=e();return Cn(()=>{let e=t.next();return e.done?Ji(e.value):v(e.value)})})),O_=(e,t=C_)=>{let n=fi(t);return b_(S(()=>{let t=e(),r=In();return Cn(()=>{if(r._tag===`Some`)return Ji(r.value);let e=[];for(;e.length<n;){let n=t.next();if(n.done){if(e.length===0)return Ji(n.value);r=ur(n.value);break}e.push(n.value)}return v(e)})}))},k_=(e,t=C_)=>O_(()=>e[Symbol.iterator](),t),A_=e=>N_(v(e)),j_=b_(v(Ji())),M_=e=>b_(Ut(e)),N_=e=>b_(S(()=>{let t=!1;return Cn(()=>t?Ji():(t=!0,e))})),P_=e=>b_(v(Rg(e))),F_=m(2,(e,t)=>y_(e,e=>S(()=>{let n=0;return Se(e,e=>t(e,n++))}))),I_=e=>e===void 0||e!==`unbounded`&&e<=1,L_=m(e=>g_(e[0]),(e,t,n)=>I_(n?.concurrency)?R_(e,t):z_(e,t,n)),R_=(e,t)=>v_((n,r)=>{let i=0;return Se(S_(e)(n,r),C(e=>t(e,i++)))}),z_=(e,t,n)=>x_(lt(function*(r,i,a){let o=0,s=yield*S_(e)(r,i),c=n.concurrency===`unbounded`?2**53-1:n.concurrency,l=yield*kg(0);yield*ya(a,Ig(l));let u=ar(yield*vn()),d=c_(a);if(n.unordered){let e=d_(c),n=ut(e.release(1)),r=St({onFailure:e=>C(Ng(l,e),n),onSuccess:e=>C(Ag(l,e),n)});yield*e.take(1).pipe(C(()=>s),C(e=>{let n=o++;return d(u(r(Cn(()=>t(e,n))))),ft}),pt({disableYield:!0}),Rr(t=>e.withPermits(c-1)(Ng(l,t))),Ke(a))}else{let e=yield*kg(c-2);yield*ya(a,Ig(e)),yield*Bg(e).pipe(Qr,C(e=>Ag(l,e)),pt({disableYield:!0}),Rr(e=>Ng(l,e)),Ke(a));let n,r=e=>{e._tag!==`Success`&&(n=e.cause,Pg(l,e.cause))};yield*s.pipe(C(i=>{if(n)return Ut(n);let a=o++,s=u(Cn(()=>t(i,a)));return d(s),s.addObserver(r),Ag(e,o_(s))}),pt({disableYield:!0}),Rr(t=>Ag(e,Zi(t)).pipe(g(Ng(e,t)))),Ke(a))}return Bg(l)})),B_=m(e=>g_(e[0]),(e,t,n)=>I_(n?.concurrency)?V_(e,t):H_(e,t,n)),V_=(e,t)=>v_((n,r)=>Se(S_(e)(n,r),e=>{let i,a,o=C(e,e=>(a??=xa(r),Qt(S_(t(e))(n,a),e=>(i=s(e),i)))),s=Ua(e=>{if(i=void 0,a.state._tag===`Empty`)return o;let t=Sa(a,ea);return a=void 0,C(t,()=>o)});return Cn(()=>i??o)})),H_=(e,t,n)=>e.pipe(F_(t),Y_(n)),U_=e=>B_(e,mt),W_=e=>y_(e,e=>{let t,n=0,r=Cn(function r(){if(t===void 0)return C(e,e=>{switch(e.length){case 0:return r();case 1:return v(e[0]);default:return t=e,v(e[n++])}});let i=t[n++];return n>=t.length&&(t=void 0,n=0),v(i)});return v(r)}),G_=m(2,(e,t)=>y_(e,e=>v(C(e,function n(r){let i=[];for(let e=0;e<r.length;e++)t(r[e])&&i.push(r[e]);return Qe(i)?v(i):C(e,n)})))),K_=m(2,(e,t)=>v_((n,r)=>{let i=xa(r);return Se(S_(e)(n,i),e=>{let a=e.pipe(Rr(e=>{if(Wa(e))return Ut(e);let o=i;return i=xa(r),Sa(o,Zi(e)).pipe(g(S_(t(e))(n,i)),C(e=>(a=e,e)))}));return Cn(()=>a)})})),q_=m(3,(e,t,n)=>K_(e,e=>{let r=t(e);return Ct(r)?M_(r.failure):n(r.success,e)})),J_=m(2,(e,t)=>q_(e,Ui,e=>t(e))),Y_=m(2,(t,{bufferSize:n=16,concurrency:r,switch:i=!1})=>x_(lt(function*(a,o,s){let c=r===`unbounded`?2**53-1:Math.max(1,r),l=i?void 0:d_(c),u=yield*u_(!0),d=new Set,f=yield*kg(n);yield*ya(s,Ig(f));let p=yield*S_(t)(a,o);return yield*b(function*(){for(;;){let t;l&&(d.size<c?yield*l.take(1):(t=yield*se(p),yield*e(l.take(1),g(o_(t),Et))));let n=t===void 0?yield*p:yield*o_(t),r=xa(s),i=yield*S_(n)(a,r);for(;d.size>=c;){let e=pi(d);d.delete(e),d.size===0&&(yield*u.open),yield*s_(e)}let o=yield*i.pipe(nr(()=>Zr),C(e=>Ag(f,e)),pt({disableYield:!0}),me(lt(function*(e){let t=Ja(e),n=yield*Dn(Sa(r,t));if(!d.has(o))return;let i=ia([t,n]);na(i)&&(yield*Ng(f,i.cause)),d.delete(o),l&&(yield*l.release(1)),d.size===0&&(yield*u.open)})),se);u.closeUnsafe(),d.add(o)}}).pipe(Rr(e=>{let t=Ka(e);return ye(t)?u.whenOpen(Ng(f,e)):Ng(f,e)}),Ke(s)),Bg(f)}))),X_=m(e=>g_(e[0])&&g_(e[1]),(e,t,n)=>x_(lt(function*(r,i,a){let o=n?.haltStrategy??`both`,s=yield*kg(0);yield*ya(a,Ig(s));let c=0;function l(e,t){if(c++,!Wa(t))return Ng(s,t);switch(o){case`both`:return c===2?Ng(s,t):ft;case`left`:case`right`:return e===o?Ng(s,t):ft;case`either`:return Ng(s,t)}}let u=(e,t,n)=>S_(t)(r,n).pipe(C(e=>e.pipe(C(e=>Ag(s,e)),pt)),me(t=>_r(Ja(t),e=>Sa(n,e)).pipe(St({onFailure:t=>l(e,t),onSuccess:()=>l(e,t)}))),Ke(a));return yield*u(`left`,e,xa(a)),yield*u(`right`,t,xa(a)),Bg(s)}))),Z_=e=>v_((t,n)=>{let r;return v(Cn(()=>r||e.pipe(_a(n),C(e=>S_(e)(t,n)),C(e=>r=e))))}),Q_=m(2,(e,t)=>X_(e,b_(v(C(t,Ji))),{haltStrategy:`either`})),$_=m(2,(e,t)=>x_((n,r,i)=>va(i,t).pipe(g(S_(e)(n,r))))),ev=m(2,(e,t)=>$_(e,e=>t)),tv=(e,t,n)=>Cn(()=>{let r=ga(),i=S_(e)(Ji(),r);return Ua(C(i,t),n||v).pipe(Ae(e=>Sa(r,e)))}),nv=m(2,(e,t)=>tv(e,e=>pt(C(e,t),{disableYield:!0}))),rv=lt(function*(e){let t=d_(1),n=yield*vn(),r=Un(n,ma);return(yield*S_(e)(Ji(),r)).pipe(zt(n),t.withPermits(1))},Rr(e=>v(Ut(e)))),iv=(e,t)=>S_(e)(Ji(),t),av=`~effect/Stream`,ov={_R:mt,_E:mt,_A:mt},sv=function(e){this.channel=e};sv.prototype={[av]:ov,pipe(){return o(this,arguments)}};var cv=e=>new sv(e),lv=`~effect/Sink`,uv={_A:mt,_In:mt,_L:mt,_E:mt,_R:mt},dv={[lv]:uv,pipe(){return o(this,arguments)}},fv=e=>{let t=Object.create(dv);return t.transform=e,t},pv=((e,t,n)=>fv(r=>{let i=e(),a;return t(i)?r.pipe(C(e=>{for(let r=0;r<e.length;r++)if(i=n(i,e[r]),!t(i))return r+1<e.length&&(a=e.slice(r+1)),Ji();return ft}),pt({disableYield:!0}),Ua(()=>v([i,a]))):v([i])}))(In,nt,(e,t)=>ur(t)),mv=()=>pv,hv=`~effect/Stream`,gv=e=>cr(e,hv),_v=cv,vv=e=>_v(N_(Se(e,Ie))),yv=e=>_v(b_(e)),bv=(e,t)=>_v(v_((n,r)=>C(iv(e.channel,r),e=>t(e,r)))),xv=e=>e.channel,Sv=(e,t)=>_v(T_(e,t)),Cv=_v(j_),wv=e=>_v(A_(Ie(e))),Tv=e=>_v(E_(()=>e().channel)),Ev=e=>_v(M_(e)),Dv=(e,t)=>Array.isArray(e)&&t?.chunkSize===void 0?Ov(e):_v(k_(e,t?.chunkSize)),Ov=e=>Qe(e)?_v(A_(e)):Cv,kv=e=>_v(P_(e)),Av=(e,t)=>yv(S(()=>{let n=e,r=!1;return Cn(function e(){return r?Ji():C(t(n),([t,i])=>(nt(i)?r=!0:n=i.value,Qe(t)?v(t):e()))})})),jv=e=>_v(Z_(Se(e,xv))),Mv=m(2,(e,t)=>Tv(()=>{let n=0;return _v(F_(e.channel,Ce(e=>t(e,n++))))})),Nv=m(e=>gv(e[0]),(e,t,n)=>e.channel.pipe(W_,L_(t,n),F_(Ie),_v)),Pv=e=>e.pipe(Mv(Me),Uv(e=>wv(ot(e)))),Fv=m(e=>gv(e[0]),(e,t,n)=>e.channel.pipe(W_,B_(e=>t(e).channel,n),_v)),Iv=m(2,(e,t)=>{let n=_v(U_(D_(()=>Rv(e,t))));return Lv.set(n,[e,t]),n}),Lv=new WeakMap;function*Rv(e,t){let n=[t,e];for(;n.length>0;){let e=n.pop(),t=Lv.get(e);t===void 0?yield e.channel:n.push(t[1],t[0])}}var zv=m(e=>gv(e[0])&&gv(e[1]),(e,t,n)=>_v(X_(xv(e),xv(t),n))),Bv=m(2,(e,t)=>_v(G_(xv(e),t))),Vv=m(2,lt(function*(e,t){let n,r=yield*rv(e.channel),i=Rr(r,e=>(n=e,Ut(e))),[a,o]=yield*Zn(e=>t.transform(i,e)),s=n?Cv:yv(v(r));return o&&(s=Iv(Ov(o),s)),[a,s]})),Hv=m(2,(e,t)=>e.channel.pipe(K_(e=>t(e).channel),_v)),Uv=m(2,(e,t)=>_v(J_(e.channel,e=>t(e).channel))),Wv=m(e=>gv(e[0]),(e,t,n)=>bv(e,(e,r)=>S(()=>{let r=0,i=!1;return C(Cn(()=>i?Ji():e),e=>{let a=e.findIndex(e=>t(e,r++));if(a>=0){i=!0;let t=e.slice(0,n?.excludeLast?a:a+1);return Qe(t)?v(t):Ji()}return v(e)})}))),Gv=m(2,(e,t)=>_v(Q_(e.channel,t))),Kv=m(2,(e,t)=>_v(ev(e.channel,t))),qv=m(2,(e,t)=>nv(e.channel,e=>{let n=0;return te({while:()=>n<e.length,body:()=>t(e[n++]),step:$r})})),Jv=m(2,(e,t)=>({[Symbol.asyncIterator](){let n=Ln(t),r=ar(t),i=ga(),a,o,s,c,l=e=>{if(c)return c;let t=s;return c=n(Or(g(t?s_(t):ft,Sa(i,e)),{done:!0,value:void 0})),c},u=async e=>{try{await l(e)}catch(e){await n(Ze(`Suppressed error while closing Stream async iterator`,e))}};return{async next(){if(c)return c;if(o){let e=o.next();if(!e.done)return e;o=void 0}let t=r(a??C(iv(e.channel,i),e=>(a=e,e)));s=t;let d=await n(a_(t));if(s===t&&(s=void 0),ta(d))return o=d.value[Symbol.iterator](),o.next();if(Wa(d.cause))return l(ea);if(c&&Bi(d.cause))return c;throw await u(d),Hi(d.cause)},return(){return l(ea)},async throw(e){throw await u($i(e)),e}}}})),Yv=e=>Jv(e,Je()),Xv=bh.check(H(256)),Zv=V.check(B(0)),Qv=N({agentId:Xv,sessionId:Xv,name:Xv}),$v=N({id:Xv,kind:bh.check(H(64)),summary:bh.check(H(200)),since:Zv,expiresAt:k(Zv),inbox:k(A(!1)),waitingOn:k(Qv)}),ey=$v.mapFields(e=>({...e,extensionId:Xv})),ty=4096,ny=P(ey).check(H(64)),ry=j.pipe(R(ah(1)),R(H(256))),iy=N({providerId:ry,modelId:ry,reasoning:k(I([`minimal`,`low`,`medium`,`high`,`xhigh`,`max`]))}),ay=E(L(iy)),oy=E(U(L(iy))),sy=I([`contract`,`extensions`,`instructions`,`model`,`runtime`,`store`,`tools`]),cy=I([`closed`,`conflict`,`incompatible`,`invalid`,`rejected`,`unavailable`,`state_reset_required`,`storage_pressure`,`archived`]),ly=j.pipe(R(ah(1)),R(H(256))),uy=N({_tag:A(`ShiitakeError`),boundary:sy,cause:cy,message:j,requestId:O(ly)}),W=class extends Error{boundary;requestId;_tag=`ShiitakeError`;cause;underlying;constructor(e,t,n,r,i){super(n),this.boundary=e,this.requestId=r,this.name=`ShiitakeError`,this.cause=t,this.underlying=i}},dy=new TextEncoder;function fy(e){return j.check(ah(1),H(e),z(t=>dy.encode(t).byteLength<=e))}var py=/\p{Cs}/u,my=fy(256).check(z(e=>!py.test(e))),hy=fy(262144),gy=N({type:A(`image`),data:j.check(ah(1),H(1048576),Dm()),mimeType:j.check(z(e=>[`image/png`,`image/jpeg`,`image/gif`,`image/webp`].includes(e)))}),_y=P(gy).check(ah(1),H(8)),vy=I([`steer`,`followUp`]),yy=my,by=T(N({commandId:my,timeoutMs:V.check(B(0),Hm(3e4))}),{onExcessProperty:`error`});T(N({commandId:my,timeoutMs:wh.check(Gm(),Um({minimum:0,maximum:3e4}))}),{onExcessProperty:`error`});var xy=T(fy(512)),Sy=N({requestId:my}),Cy=N({delivery:vy,requestId:my,type:A(`prompt`),text:j.check(H(262144),z(e=>dy.encode(e).byteLength<=262144)),images:O(_y)}).check(z(e=>(e.text.length>0||(e.images?.length??0)>0)&&dy.encode(e.text).byteLength+(e.images??[]).reduce((e,t)=>e+t.data.length,0)<=1048576)),wy=N({type:A(`abort`)}),Ty=N({commandId:my,onlyIfPending:k(Qp),type:A(`cancel`)}),Ey=N({type:A(`operator`),requestId:my,author:I([`operator`,`party`]),text:hy}),Dy=N({type:A(`branch`),entryId:my}),Oy=N({type:A(`fork`),entryId:my}),ky=j.check(ah(1),H(4096)),Ay=N({type:A(`compact`),requestId:my,instructions:O(ky)}),jy=F([Cy,Ay]),My=j.check(z(e=>e.length>0&&e.trim()===e&&!/\p{Cc}/u.test(e)&&Array.from(e).length<=120)),Ny=F([Cy,wy,Ty,Dy,Oy,Ey,Ay,N({type:A(`title`),title:L(My)})]),Py=N({command:Ny}),Fy=N({includeSandboxFailures:k(Qp),limit:k(V.check(Um({minimum:1,maximum:200}))),before:k(fy(512))}),Iy=N({includeSandboxFailures:k(A(`true`)),limit:k(wh.check(Gm(),Um({minimum:1,maximum:200}))),before:k(fy(512))}),Ly=N({includeSandboxFailures:k(Qp),after:k(j)}),Ry=N({includeSandboxFailures:k(A(`true`)),mode:k(A(`subscribe`)),after:k(j),limit:k(wh.check(Gm(),Um({minimum:1,maximum:200})))}),zy={onExcessProperty:`error`},By=T(yy,zy),Vy=T(Sy,zy),Hy=T(jy,zy);T(my);var Uy=T(Ny,zy);T(Py,zy);var Wy=T(F([Fy,Zp]),zy);T(Iy,zy);var Gy=T(Ly,zy);T(Ry,zy);function Ky(e){let t=By(e);if(t._tag===`Failure`)throw new W(`contract`,`invalid`,`Session id is invalid`);return t.success}function qy(e){let t=xy(e);if(t._tag===`Failure`)throw new W(`contract`,`invalid`,`Session cursor is invalid`);return t.success}function Jy(e){let t=Vy(e);if(t._tag===`Failure`)throw new W(`contract`,`invalid`,`Session creation request is invalid`);return t.success.requestId}function Yy(e){let t=Wy(e);if(t._tag===`Failure`)throw new W(`contract`,`invalid`,`Read options are invalid`);let n=t.success??{},r={limit:n.limit??200};return n.before!==void 0&&(r={...r,before:n.before}),n.includeSandboxFailures!==void 0&&(r={...r,includeSandboxFailures:n.includeSandboxFailures}),Object.freeze(r)}function Xy(e){let t=Gy(e);if(t._tag===`Failure`)throw new W(`contract`,`invalid`,`Subscribe options are invalid`);let n={};return t.success.after!==void 0&&(n={...n,after:t.success.after}),t.success.includeSandboxFailures!==void 0&&(n={...n,includeSandboxFailures:t.success.includeSandboxFailures}),Object.freeze(n)}function Zy(e,t){if(Ct(e))throw new W(`contract`,`invalid`,t);return e.success}var Qy=Nn();function $y(e){return e!==null&&!Array.isArray(e)&&typeof e==`object`}function eb(e,t){if(e===t)return 0;let n=Math.min(e.length,t.length);for(let r=0;r<n;r+=1){let n=e.charCodeAt(r)-t.charCodeAt(r);if(n!==0)return n}return e.length-t.length}function tb(e){return e.replace(/([a-z])([A-Z])/g,`$1 $2`).replace(/([A-Z]+)([A-Z][a-z])/g,`$1 $2`).replace(/[_./:-]/g,` `).toLowerCase().trim()}function nb(e){return e.split(/[^a-zA-Z0-9]+/).filter(e=>e.length>0)}var rb=new Set([`the`,`a`,`an`,`for`,`to`,`of`,`that`,`this`,`with`,`in`,`on`]);function ib(e){return rb.has(e)}function ab(e){let t=[],n=n=>{n!==e&&n.length>=3&&!t.includes(n)&&t.push(n)};return e.endsWith(`ing`)&&e.length>4&&n(e.slice(0,-3)),e.endsWith(`ed`)&&e.length>3&&n(e.slice(0,-2)),e.endsWith(`ation`)&&e.length>6&&n(`${e.slice(0,-3)}e`),e.endsWith(`ies`)&&e.length>4&&(n(e.slice(0,-3)),n(`${e.slice(0,-3)}y`)),e.endsWith(`es`)&&e.length>3&&n(e.slice(0,-2)),e.endsWith(`s`)&&!e.endsWith(`ss`)&&e.length>3&&n(e.slice(0,-1)),t}function ob(e){let t=8997,n=33826,r=40164,i=52210;for(let a=0;a<e.length;a+=1){let o=t^e.charCodeAt(a),s=o*435,c=n*435+(s>>>16),l=r*435+(c>>>16)+(o<<8),u=i*435+(l>>>16)+(n<<8);t=s&65535,n=c&65535,r=l&65535,i=u&65535}return i.toString(16).padStart(4,`0`)+r.toString(16).padStart(4,`0`)+n.toString(16).padStart(4,`0`)+t.toString(16).padStart(4,`0`)}function sb(e){return e.slice(e.indexOf(`.`)+1)}function cb(e){return e.slice(0,e.indexOf(`.`))}var lb=/^[A-Za-z][A-Za-z0-9_]*(?:\.[A-Za-z][A-Za-z0-9_]*)+$/,ub=1e3,db=221;function fb(e,t){if(t>16)return t;if(Array.isArray(e)){let n=t;for(let r of e)n=Math.max(n,fb(r,t+1));return n}if(!$y(e))return t;let n=t;for(let r of Object.values(e))n=Math.max(n,fb(r,t+1));return n}var pb=_(()=>yn(x(),Nn()).superRefine((e,t)=>{Object.keys(e).length>100&&t.addIssue({code:`custom`,message:`Sample exceeds the entry bound`}),JSON.stringify(e).length>4e3&&t.addIssue({code:`custom`,message:`Sample exceeds the byte bound`}),fb(e,0)>16&&t.addIssue({code:`custom`,message:`Sample exceeds the depth bound`})})),mb=_(()=>zr({query:x().max(200),maxResults:qn().int().min(1).max(50).default(50)})),hb=_(()=>zr({path:x().max(160),detail:Ot([`index`,`full`]).default(`full`),methods:Nt(x().max(80)).max(50).optional()})),gb=zr({cursor:x().max(400).optional(),limit:qn().int().min(1).max(50).default(50),namespace:x().min(1).max(160).regex(/^[A-Za-z][A-Za-z0-9_]*(?:\.[A-Za-z][A-Za-z0-9_]*)*$/).optional()}),_b=_(()=>zr({path:x().max(160),capabilityNotes:x().max(500).optional()})),vb=zr({path:x().max(160),description:x().max(1e3).optional(),score:qn().min(0).max(db),matchReason:x().max(500).optional(),sample:pb.optional(),capabilityNotes:x().max(500).optional(),peers:Nt(_b).max(1e3).optional()}),yb=_(()=>zr({results:Nt(vb).max(50),total:qn().int().min(0).max(ub),truncated:t(),topScore:qn().min(0).max(db),margin:qn().min(0).max(db),catalogStamp:x().length(16).regex(/^[0-9a-f]{16}$/)})),bb=zr({results:Nt(vb).max(50),total:qn().int().min(0).max(ub),nextCursor:x().max(400).nullable(),catalogStamp:x().length(16).regex(/^[0-9a-f]{16}$/)}),xb=_(()=>zr({path:x().max(160),description:x().max(1e3).optional(),types:x().max(2e4),inputSchema:Nn().refine(e=>JSON.stringify(e).length<=2e4&&fb(e,0)<=16,`Input schema exceeds the description bounds`).optional(),kind:Ot([`module`,`operation`]),usage:x().max(300).optional()}));_(()=>zr({code:Ot([`empty_query`,`empty_catalog`,`unknown_target`,`duplicate_operation`,`invalid_input`]),message:x().max(1e3)}));var Sb=_(()=>zr({"~standard":zr({jsonSchema:zr({input:je(Function),output:je(Function)})})})),Cb=_(()=>mn(e=>Sb.safeParse(e).success,`Expected a Standard JSON Schema`)),wb=_(()=>zr({path:x().min(3).max(160).regex(lb),description:x().max(1e3).optional(),input:Cb,output:Cb.optional(),capabilityNotes:x().max(500).optional(),instructions:x().max(1e3).optional()})),Tb=_(()=>zr({revision:x().min(1).max(160),operations:Nt(wb).max(ub)})),Eb=class extends Error{code;failure;constructor(e,t,n){let r=t.slice(0,1e3);super(r,n),this.name=`ForageError`,this.code=e,this.failure={code:e,message:r}}},Db=Wt([kr({$ref:x().optional(),$defs:yn(x(),Gr()).optional(),definitions:yn(x(),Gr()).optional(),const:Gr().optional(),enum:Nt(Gr()).optional(),oneOf:Nt(Gr()).optional(),anyOf:Nt(Gr()).optional(),allOf:Nt(Gr()).optional(),type:Wt([x(),Nt(x())]).optional(),properties:yn(x(),Gr()).optional(),additionalProperties:Gr().optional(),required:Nt(x()).optional(),prefixItems:Nt(Gr()).optional(),items:Gr().optional(),examples:Nt(Gr()).optional(),default:Gr().optional()}),t()]),Ob=new WeakMap;function kb(e,t){let n=Ob.get(e),r=n?.[t];if(r!==void 0)return r;let i;try{i=e[`~standard`].jsonSchema[t]({target:`draft-2020-12`})}catch{throw new Eb(`invalid_input`,`Schema cannot be projected to JSON Schema`)}Mb(i);let a={raw:i};return n===void 0&&(n={},Ob.set(e,n)),n[t]=a,a}function Ab(e,t){return kb(e,t).raw}function jb(e,t){let n=kb(e,t);try{return n.text??=JSON.stringify(n.raw),n.text}catch{throw new Eb(`invalid_input`,`Schema cannot be projected to JSON Schema`)}}function Mb(e){let t=Db.safeParse(e);if(!t.success)throw new Eb(`invalid_input`,`Schema cannot be projected to JSON Schema`);return t.data}var Nb=256,Pb=/^#\/(?:\$defs|definitions)\/([^/]+)$/u;function Fb(e,t,n){let r=Pb.exec(e)?.[1];if(r===void 0||n.expanding.has(r))return`unknown`;let i=n.definitions[r];if(i===void 0)return`unknown`;if(n.budget.expansions+=1,n.budget.expansions>Nb)throw new Eb(`invalid_input`,`Schema references expand more than ${String(Nb)} times; flatten its shared definitions`);return Lb(Mb(i),t,{definitions:n.definitions,expanding:new Set([...n.expanding,r]),budget:n.budget})}function Ib(e,t){if(e===!0||e===!1)return!1;if(e.$ref!==void 0){let n=Pb.exec(e.$ref)?.[1],r=n===void 0||t.expanding.has(n)?void 0:t.definitions[n];return n!==void 0&&r!==void 0&&Ib(Mb(r),{definitions:t.definitions,expanding:new Set([...t.expanding,n]),budget:t.budget})}return e.const===void 0?e.enum!==void 0&&e.enum.length>1||e.oneOf!==void 0&&e.oneOf.length>1||e.anyOf!==void 0&&e.anyOf.length>1:!1}function Lb(e,t,n){if(t>12||e===!0||e===!1)return`unknown`;let r=n??{definitions:{...e.definitions,...e.$defs},expanding:new Set,budget:{expansions:0}};if(e.$ref)return Fb(e.$ref,t,r);if(e.const!==void 0)return JSON.stringify(e.const);if(e.enum)return e.enum.map(e=>JSON.stringify(e)).join(` | `);if(e.oneOf)return e.oneOf.map(e=>Lb(Mb(e),t+1,r)).join(` | `);if(e.anyOf)return e.anyOf.map(e=>Lb(Mb(e),t+1,r)).join(` | `);if(e.allOf)return e.allOf.map(e=>{let n=Mb(e),i=Lb(n,t+1,r);return Ib(n,r)?`(${i})`:i}).join(` & `);if(e.type===`object`||e.properties){let n=Object.entries(e.properties??{}).sort(([e],[t])=>eb(e,t));if(n.length===0){let n=e.additionalProperties;return n===!1?`Record<string, never>`:n&&n!==!0?`Record<string, ${Lb(Mb(n),t+1,r)}>`:`Record<string, unknown>`}let i=new Set(e.required??[]);return`{
|
|
4
4
|
${n.map(([e,n])=>{let a=Lb(Mb(n),t+1,r),o=i.has(e)?``:`?`,s=/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(e)?e:JSON.stringify(e);return`${` `.repeat(t+1)}${s}${o}: ${a};`}).join(`
|
|
@@ -15,10 +15,10 @@ Defaulting to 2020, but this will stop working in the future.`)),t.ecmaVersion=1
|
|
|
15
15
|
`;break;default:e+=String.fromCharCode(n)}this.options.locations&&(++this.curLine,this.lineStart=this.pos),t=this.pos}else++this.pos}},Q.readInvalidTemplateToken=function(){for(;this.pos<this.input.length;this.pos++)switch(this.input[this.pos]){case`\\`:++this.pos;break;case`$`:if(this.input[this.pos+1]!==`{`)break;case"`":return this.finishToken(J.invalidTemplate,this.input.slice(this.start,this.pos));case`\r`:this.input[this.pos+1]===`
|
|
16
16
|
`&&++this.pos;case`
|
|
17
17
|
`:case`\u2028`:case`\u2029`:++this.curLine,this.lineStart=this.pos+1}this.raise(this.start,`Unterminated template`)},Q.readEscapedChar=function(e){var t=this.input.charCodeAt(++this.pos);switch(++this.pos,t){case 110:return`
|
|
18
|
-
`;case 114:return`\r`;case 120:return String.fromCharCode(this.readHexChar(2));case 117:return RS(this.readCodePoint());case 116:return` `;case 98:return`\b`;case 118:return`\v`;case 102:return`\f`;case 13:this.input.charCodeAt(this.pos)===10&&++this.pos;case 10:return this.options.locations&&(this.lineStart=this.pos,++this.curLine),``;case 56:case 57:if(this.strict&&this.invalidStringToken(this.pos-1,`Invalid escape sequence`),e){var n=this.pos-1;this.invalidStringToken(n,`Invalid escape sequence in template string`)}default:if(t>=48&&t<=55){var r=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],i=parseInt(r,8);return i>255&&(r=r.slice(0,-1),i=parseInt(r,8)),this.pos+=r.length-1,t=this.input.charCodeAt(this.pos),(r!==`0`||t===56||t===57)&&(this.strict||e)&&this.invalidStringToken(this.pos-1-r.length,e?`Octal literal in template string`:`Octal literal in strict mode`),String.fromCharCode(i)}return DS(t)?(this.options.locations&&(this.lineStart=this.pos,++this.curLine),``):String.fromCharCode(t)}},Q.readHexChar=function(e){var t=this.pos,n=this.readInt(16,e);return n===null&&this.invalidStringToken(t,`Bad character escape sequence`),n},Q.readWord1=function(){this.containsEsc=!1;for(var e=``,t=!0,n=this.pos,r=this.options.ecmaVersion>=6;this.pos<this.input.length;){var i=this.fullCharCodeAtPos();if(bS(i,r))this.pos+=i<=65535?1:2;else if(i===92){this.containsEsc=!0,e+=this.input.slice(n,this.pos);var a=this.pos;this.input.charCodeAt(++this.pos)!==117&&this.invalidStringToken(this.pos,`Expecting Unicode escape sequence \\uXXXX`),++this.pos;var o=this.readCodePoint();(t?yS:bS)(o,r)||this.invalidStringToken(a,`Invalid Unicode escape`),e+=RS(o),n=this.pos}else break;t=!1}return e+this.input.slice(n,this.pos)},Q.readWord=function(){var e=this.readWord1(),t=J.name;return this.keywords.test(e)&&(t=wS[e]),this.finishToken(t,e)},fC.acorn={Parser:fC,version:`8.18.0`,defaultOptions:US,Position:BS,SourceLocation:VS,getLineInfo:HS,Node:FC,TokenType:K,tokTypes:J,keywordTypes:wS,TokContext:EC,tokContexts:DC,isIdentifierChar:bS,isIdentifierStart:yS,Token:Ew,isNewLine:DS,lineBreak:TS,lineBreakG:ES,nonASCIIwhitespace:kS};function Aw(e,t){return fC.parse(e,t)}_(()=>Nr(`ok`,[pr({ok:sr(!0),value:Gr()}),pr({ok:sr(!1),error:pr({kind:sr(`guest_threw`),name:x().max(80),message:x().max(512),transportMessage:x().max(512).optional()})})]));var jw=_(()=>x().regex(/^[A-Za-z][A-Za-z0-9_]*$/u)),Mw=jw.refine(e=>{if(e===`env`)return!1;try{return Aw(`let ${e};`,{ecmaVersion:`latest`,sourceType:`module`}),!0}catch(e){if(!(e instanceof SyntaxError))throw e;return!1}},`Invalid sandbox transport alias`);_(()=>yn(Mw,Nt(jw).min(1))),_(()=>yn(Mw,Nt(x().regex(/^[A-Za-z][A-Za-z0-9_]*(?:\.[A-Za-z][A-Za-z0-9_]*)*$/u))));var Nw=I([`read`,`write`]),Pw=Qp,Fw=N({access:k(Nw),confirm:k(Pw)}),Iw=I([`none`,`read`,`write`]),Lw=T(Fw),Rw=T(Iw);function zw(e){let t=Lw({access:e.access,confirm:e.confirm});if(Ct(t))throw new G(`Access labels must be access: "read" | "write" and confirm: boolean`);return{access:t.success.access??`write`,confirm:t.success.confirm??!1}}function Bw(e,t){let n=`${t.module}.${t.operation}`;switch(e){case`not-granted`:return`${n} is not granted to this Agent.`;case`read-only`:return`${n} changes something, and this Agent has read-only access to ${t.module}.`;case`confirmation-unavailable`:return`${n} needs a person's approval, and no one can be asked here.`;case`declined`:return`${n} was not approved.`}}function Vw(e,t){return Object.freeze({refused:!0,module:t.module,operation:t.operation,reason:e,message:Bw(e,t)})}function Hw(e,t,n){let r=e.sessionGrants?.(t),i=r!==void 0&&Object.hasOwn(r,n)?r:e.grants;if(i===void 0||!Object.hasOwn(i,n))return e.required?.includes(n)===!0?`none`:e.defaultGrant??`write`;let a=Rw(i[n]);return ye(a)?a.success:`none`}async function Uw(e,t,n,r,i){let a=await Ww(e,t,n,r,i);return a!==void 0&&e.onRefused?.(a,t),a}async function Ww(e,t,n,r,i){await e.beforeCall?.(i),i.throwIfAborted();let a=Gw(e,t,n);if(a!==void 0)return a;if(!(!n.confirm&&(e.confirmWrites!==!0||n.access===`read`)))return e.confirm===void 0?Vw(`confirmation-unavailable`,n):await e.confirm({module:n.module,operation:n.operation,access:n.access,sessionId:t.sessionId,input:r},i)?(await e.beforeCall?.(i),i.throwIfAborted(),Gw(e,t,n)):Vw(`declined`,n)}function Gw(e,t,n){let r=Hw(e,t,n.module);if(r===`none`)return Vw(`not-granted`,n);if(r===`read`&&n.access!==`read`)return Vw(`read-only`,n)}function Kw(e,t,n){let r={module:e.module,operation:e.descriptor.name,...zw(e)};return{...e,prepare:i=>Jr({try:e=>Uw(t,n,r,i.arguments,e),catch:()=>({message:`Access check failed`})}).pipe(C(t=>t===void 0?e.prepare(i):v({execute:()=>wv({type:`result`,result:{content:[{type:`text`,text:JSON.stringify(t)}],isError:!1}})})))}}var qw=ms();async function Jw(e){let t=await Dr(e);if(ta(t))return{value:t.value};let n=Ui(t.cause);if(Ct(n))throw Hi(t.cause);return{issues:qw(n.success.issue).issues}}function Yw(e){let t=zh(e),n=jp(t)[`~standard`].jsonSchema,r=Np(t),i=Rp(t);return Object.freeze({description:{"~standard":{jsonSchema:{input:n.input,output:n.input}}},decode:e=>Jw(r(e)),encode:e=>Jw(i(e))})}function Xw(e){let t=async t=>e[`~standard`].validate(t);return Object.freeze({description:e,decode:t,encode:t})}function Zw(e){return Wp(e)?Yw(e):Xw(e)}var Qw=Symbol(`mycelium.operation`),$w=Symbol(`mycelium.module`),eT=new WeakMap,tT=new WeakMap;function nT(e){let t=Object.freeze({[Qw]:!0}),n=Zw(e.input),r=e.output===void 0?void 0:Zw(e.output),i={replay:e.replay??`unsafe`,...zw(e),input:n.description,invoke:async(t,i)=>{let a=await n.decode(t);if(a.issues!==void 0)throw new Nx(a.issues);let o=await e.execute(a.value,i);if(r===void 0)return o;let s=await r.encode(o);if(s.issues!==void 0)throw new Hx({reason:`Capability output failed its declared schema`,rawCause:new Px(s.issues)});return s.value}};e.description!==void 0&&(i.description=e.description),r!==void 0&&(i.output=r.description);let a=Object.freeze(i);return eT.set(t,a),t}function rT(e){let t=Nt(jw).safeParse(e.namespace??[]);if(!t.success)throw new G(`Invalid module namespace`);let n=Object.freeze({[$w]:!0}),r={id:e.id,grantKey:e.id,name:e.name??e.id,namespace:Object.freeze(t.data),operations:Object.freeze({...e.operations})};e.description!==void 0&&(r.description=e.description);let i=Object.freeze(r);return tT.set(n,i),n}function iT(e){return tT.has(e)}function aT(e){return eT.get(e)}function oT(e){return tT.get(e)}function sT(e,t,n){let r=oT(e);if(r===void 0)throw new G(`Unknown module registration`);let i={};for(let[e,a]of Object.entries(r.operations)){let r=n===``?e:`${n}.${e}`;if(iT(a)){let n=oT(a);if(n===void 0)throw new G(`Unknown child module registration`);i[e]=sT(a,t,[r,...n.namespace].join(`.`));continue}let o=aT(a);if(o===void 0)throw new G(`Unknown operation registration: ${e}`);let s=Object.freeze({[Qw]:!0});eT.set(s,Object.freeze({...o,invoke:async(e,n)=>{let i=await t({operation:r,context:n});return i.kind===`refuse`?i.value:await o.invoke(e,n)}})),i[e]=s}return cT(rT(r.description===void 0?{id:r.id,name:r.name,namespace:r.namespace,operations:i}:{id:r.id,name:r.name,namespace:r.namespace,description:r.description,operations:i}),r.grantKey)}function cT(e,t){let n=oT(e);if(n===void 0)throw new G(`Unknown module registration`);let r=Object.freeze({[$w]:!0});return tT.set(r,Object.freeze({...n,grantKey:t})),r}function lT(e,t){if(t.length===0||t.length>160)throw new G(`Grant key must be non-empty and bounded`);return cT(e,t)}function uT(e,t){return sT(e,t,``)}function dT(e,t){return e<t?-1:+(e>t)}function fT(e){return e instanceof Error?e.message:`Capability declarations could not be compiled`}var pT=160;function mT(e){if(e.length===0||e.length>pT)throw new G(`Module id must be non-empty and bounded`)}function hT(e){if(!e.split(`.`).every(e=>jw.safeParse(e).success))throw new G(`Operation key must be a path segment or a dotted relative path`)}function gT(e){let t=e.replace(/[^A-Za-z0-9_]/g,`_`);return/^[A-Za-z]/.test(t)?t:`module_${t}`}function _T(e){let t=gT(e);return Mw.safeParse(t).success?t:`module_${t}`}function vT(e,t){let n=new Set([`forage`,`env`]),r=new Map;for(let i of e){let e=t===`logical`?i.namespace:[],a=t===`logical`?gT(i.name):_T(i.name),o=t=>[...e,t].join(`.`),s=a,c=2;for(;n.has(o(s));)s=`${a}_${String(c)}`,c+=1;n.add(o(s)),r.set(i.id,s)}return r}var yT=14695981039346656037n,bT=1099511628211n,xT=18446744073709551615n;function ST(e,t){let n=e,r=BigInt(t.length);for(let e=0;e<8;e+=1)n=(n^r&255n)*bT&xT,r>>=8n;for(let e=0;e<t.length;e+=1){let r=t.charCodeAt(e);n=(n^BigInt(r&255))*bT&xT,n=(n^BigInt(r>>>8&255))*bT&xT}return n}function CT(e,t,n){let r=ST(yT,e),i=[...t.entries()].sort(([e],[t])=>dT(e,t));for(let[e,t]of i)r=ST(r,e),r=ST(r,t);let a=[...n].sort((e,t)=>dT(e.id,t.id));for(let e of a)r=ST(r,e.id),r=ST(r,e.version);return`installed-${r.toString(16).padStart(16,`0`)}`}function wT(){return[Ex,Tx,Dx]}function TT(e,t,n,r,i,a=[]){return Object.entries(t.operations).flatMap(([t,o])=>{if(hT(t),iT(o)){let s=oT(o);if(s===void 0)throw new G(`Unknown child module registration`);return TT(e,s,n,[...r,t,...s.namespace],s.description??i,[...a,t,...s.namespace])}let s=aT(o);if(s===void 0)throw new G(`Unknown operation registration: ${[...r,t].join(`.`)}`);return[Object.freeze({grantKey:e,path:[...r,t].join(`.`),namespace:n,name:[...a,t].join(`.`),moduleDescription:i,operation:s})]})}function ET(e,t=[]){let n=e.map(e=>{let t=oT(e);if(t===void 0)throw new G(`Unknown module registration`);return mT(t.id),t}).sort((e,t)=>dT(e.id,t.id)),r=new Set;for(let e of n){if(r.has(e.id))throw new G(`Duplicate module id: ${e.id}`);r.add(e.id)}let i=vT(n,`transport`),a=vT(n,`logical`),o=Object.freeze(Object.fromEntries(n.map(e=>{let t=i.get(e.id);if(t===void 0)throw new G(`Missing module alias: ${e.id}`);let n=a.get(e.id);if(n===void 0)throw new G(`Missing logical alias: ${e.id}`);return[t,Object.freeze([...e.namespace,n])]}))),s=n.flatMap(e=>{let t=i.get(e.id);if(t===void 0)throw new G(`Missing module alias: ${e.id}`);let n=o[t];if(n===void 0)throw new G(`Missing namespace path: ${e.id}`);return TT(e.grantKey,e,t,n,e.description)}).sort((e,t)=>dT(e.path,t.path)),c=new Set(s.map(e=>e.path));if(c.size!==s.length)throw new G(`Duplicate operation path`);for(let e of wT()){if(c.has(e.path))throw new G(`Reserved intrinsic path: ${e.path}`);c.add(e.path)}for(let e of c){let t=e.split(`.`);for(let n=1;n<t.length;n+=1)if(c.has(t.slice(0,n).join(`.`)))throw new G(`Operation conflicts with namespace: ${e}`)}let l;try{l=xx({revision:`prepared-content-stamp`,operations:[...s.map(({path:e,moduleDescription:t,operation:n})=>{let r={path:e,input:n.input};return n.description!==void 0&&(r.description=n.description),n.output!==void 0&&(r.output=n.output),t!==void 0&&(r.instructions=t),r}),...wT()]})}catch(e){throw new G(fT(e))}let u=CT(l.stamp(),i,t),d=Object.freeze({revision:u,search:l.search,describe:l.describe,list:l.list,stamp:l.stamp}),f=Object.freeze(Object.fromEntries([...i.entries()].map(([e,t])=>[t,e])));return Object.freeze({revision:u,catalog:d,operations:Object.freeze(s),moduleAliases:f,namespacePaths:o})}function DT(){return null}var OT=Nn(),kT=_(()=>Wt([yr(),x(),t(),qn()])),AT=_(()=>yn(x(),Gr())),jT=_(()=>oS.extend({timeoutMs:qn().int().min(1).max(9e5).optional(),abortGraceMs:qn().int().min(1).max(3e4).optional()}).optional()),MT=64,NT=262144,PT=new TextEncoder,FT=e=>{e(v(void 0))};function IT(e){let t=jT.safeParse(e);if(!t.success)throw new G(`Execution policy is invalid`);let n=t.data?.timeoutMs??18e4;return Object.freeze({timeoutMs:n,abortGraceMs:t.data?.abortGraceMs??5e3,...sS({sandboxCapacity:t.data?.sandboxCapacity,admissionWaitMs:t.data?.admissionWaitMs??n},(t.data?.sandboxCapacity,void 0))})}function LT(e){return b(function*(){let t=yield*m_(e);return Object.freeze({createGroup:()=>{let e=0,n=new Set,r=Kn(t=>e===0?(t(v(void 0)),S(()=>void 0)):(n.add(t),S(()=>n.delete(t))));return Object.freeze({start:r=>ti(i=>S(()=>{e+=1}).pipe(g(ne(i(t.withPermits(1)(r)).pipe(Qn(S(()=>{if(--e,e===0){let e=[...n];n.clear(),e.forEach(FT)}}))))))),awaitIdle:r})}})})}function RT(e,t=0){if(t>MT)throw Error(`JSON value exceeds the nesting bound`);let n=kT.safeParse(e);if(n.success)return n.data;if(Array.isArray(e))return e.map(e=>RT(e,t+1));let r=AT.safeParse(e);if(!r.success)throw r.error;return Object.fromEntries(Object.entries(r.data).filter(([,e])=>e!==void 0).map(([e,n])=>[e,RT(n,t+1)]))}function zT(e){return OT.parse(RT(e))}function BT(e){let t=JSON.stringify(zT(e)),n=PT.encode(t).byteLength;if(n>NT)throw new Ux({size:n});return Object.freeze({text:t})}function VT(e,t){return Object.freeze(Object.fromEntries(Object.entries(e).map(([e,n])=>[e,Object.freeze(Object.fromEntries(Object.entries(n).map(([n,r])=>[n,async i=>{t();try{return zT(await r(i))}catch(t){throw Zx(t)?t:t instanceof Eb?new Gx({namespace:e,operation:n,cause:{kind:`Forage`,message:t.message},rawCause:t}):t instanceof Nx?new Gx({namespace:e,operation:n,cause:{kind:`InvalidInput`,message:`Invalid operation input: ${Dt({issues:t.issues})}; use forage.describe`},rawCause:t}):t}}])))])))}function HT(e){return Kn(t=>{let n=t.bind(void 0,ft);return e.aborted?n():e.addEventListener(`abort`,n,{once:!0}),S(e.removeEventListener.bind(e,`abort`,n))})}function UT(e,t){if(e===void 0)return()=>void 0;let n=t.bind(void 0);return e.aborted?(n(),()=>void 0):(e.addEventListener(`abort`,n,{once:!0}),e.removeEventListener.bind(e,`abort`,n))}function WT(e,t,n){return e===`deadline_exceeded`?new Lx({limitMs:t,elapsedMs:n??0}):new zx({by:`caller`})}function GT(e){return Ca.pipe(Se(t=>t-e))}function KT(t){return Ca.pipe(C(n=>Cn(()=>{let r=t.executionId,i=new AbortController,a=n,o={kind:`waiting`},s,c=e=>{s===void 0&&o.kind!==`refused`&&(s=e,i.abort())},l=e=>{let n=new Rx({capacity:t.policy.capacity,waitedMs:Math.max(0,e-a)});return o={kind:`refused`,failure:n},n},u=()=>{if(i.signal.aborted)throw WT(s,t.policy.timeoutMs)},d=UT(t.callerSignal,()=>{c(`cancelled`)}),f=n+t.policy.timeoutMs,p={executionId:r,deadlineAt:f,signal:i.signal,images:t.images};t.toolCallId!==void 0&&Object.assign(p,{toolCallId:t.toolCallId}),t.output!==void 0&&Object.assign(p,{output:t.output});let m=Object.freeze(p),ee=Cn(()=>Ca.pipe(C(e=>o.kind===`refused`?y(o.failure):(e>=f&&c(`deadline_exceeded`),i.signal.aborted?GT(n).pipe(C(e=>y(WT(s,t.policy.timeoutMs,e)))):e>=a+t.policy.waitMs?y(l(e)):(o={kind:`admitted`},t.sandbox.execute(Object.freeze({executionId:r,code:t.code,timeoutMs:t.policy.timeoutMs,bindings:VT(t.createBindings(m),u),modules:t.modules,namespacePaths:t.namespacePaths,sessionId:t.sessionId}),i.signal).pipe(Rr(e=>Bi(e)?Ut(e):y(Qx(Hi(e)))))))))),te=e=>s_(e).pipe(Jt({duration:t.policy.abortGraceMs,orElse:()=>y(s===`deadline_exceeded`?new Lx({limitMs:t.policy.timeoutMs,elapsedMs:t.policy.timeoutMs,acknowledged:!1}):new zx({by:`caller`,acknowledged:!1}))})),ne,re=!1,ie=e=>(re=!0,GT(n).pipe(C(n=>{let i=Qx(e),a=i instanceof Lx?new Lx({limitMs:i.limitMs,elapsedMs:n,acknowledged:i.acknowledged}):i,o=qx(a,r),s=yn(x(),Nn()).parse(eS(a));s.ref=r;let c={kind:`sandbox_failure`,ref:r,executionId:r,adapter:t.sandbox.adapter??`effect`,buildSha:t.sandbox.buildSha??DT(),tag:o._tag,fields:s,healthAlert:o._tag===`Unknown`},l=Cn(()=>t.sandbox.onFailure?.(c)??ft);return Ze(`sandbox_failure`,c).pipe(or({executionId:r,ref:r,adapter:c.adapter,tag:c.tag,buildSha:c.buildSha}),g(o._tag===`Unknown`?ro(io(no(`sandbox_unknown`),{adapter:c.adapter}),1).pipe(g(Ze(`sandbox_health_alert`).pipe(or({ref:r,adapter:c.adapter})))):ft),g(l.pipe(Rr(e=>Ze(`sandbox_failure_record_failed`,e)))),Or(o))})));return b(function*(){if(i.signal.aborted){let e=yield*GT(n);return yield*y(WT(s,t.policy.timeoutMs,e))}a=yield*Ca,ne=yield*t.backingWork.start(ee);let r=yield*Ca,u=Ur(Math.max(0,a+t.policy.waitMs-r)).pipe(g(Ca),C(e=>o.kind===`admitted`?Et:o.kind===`refused`?v({kind:`busy`,failure:o.failure}):i.signal.aborted?v({kind:`cancelled`}):e>=f?(c(`deadline_exceeded`),v({kind:`deadline`})):v({kind:`busy`,failure:l(e)}))),d=yield*e(a_(ne).pipe(Se(e=>Object.freeze({kind:`settled`,exit:e}))),e(Ur(Math.max(0,f-r)).pipe(g(S(()=>(c(`deadline_exceeded`),Object.freeze({kind:`deadline`}))))),e(HT(i.signal).pipe(Or(Object.freeze({kind:`cancelled`}))),u))),p=o.kind===`refused`?o.failure:d.kind===`busy`?d.failure:void 0;if(p!==void 0)return yield*te(ne).pipe(g(y(p)));if(d.kind===`settled`)return yield*_e(d.exit,{onFailure:e=>s===void 0?Ut(e):GT(n).pipe(C(e=>y(WT(s,t.policy.timeoutMs,e)))),onSuccess:e=>ai({try:()=>BT(e),catch:t=>Zx(t)?t:new Wx({kind:$x(e),rawCause:t})})});d.kind===`deadline`&&c(`deadline_exceeded`);let m=yield*GT(n);return yield*te(ne).pipe(g(y(WT(s,t.policy.timeoutMs,m))))}).pipe(Ee(()=>(c(`cancelled`),(ne===void 0?ft:s_(ne).pipe(En(t.policy.abortGraceMs),rn)).pipe(g(Cn(()=>re?ft:ie(new zx({by:`operator`})).pipe(rn))))))).pipe(un(e=>ie(e).pipe(C(y))),Qn(S(d)))})))}var qT=lm(()=>F([Zp,Xp,Qp,M,j,Oh,bm(AbortSignal),P(qT),JT])),JT=nm(j,qT);function YT(e){return E(JT)(e)}var XT=nm(j,Bh),ZT=E(N({samplingParams:O(XT),samplingParamsByThinkingLevel:O(N({off:O(XT),minimal:O(XT),low:O(XT),medium:O(XT),high:O(XT),xhigh:O(XT),max:O(XT)}))}));function QT(e){return{...e,...ZT(e)}}function $T(e){if(e===void 0)return;let{onPayload:t,onProviderStreamEvent:n,onResponse:r,...i}=e,a={...i};return t!==void 0&&(a.onPayload=(e,n)=>t(YT(e),QT(n))),n!==void 0&&(a.onProviderStreamEvent=(e,t)=>n(YT(e),QT(t))),r!==void 0&&(a.onResponse=(e,t)=>r(e,QT(t))),a}var eE=async(e,t,n)=>{let{streamSimple:r}=await ui(async()=>{let{streamSimple:e}=await import(`./compat-CbK3PtOb.js`);return{streamSimple:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return r(e,li(t),$T(n))},tE=N({error:N({code:k(j),type:k(j)})});Fp(N({type:A(`response.failed`),response:tE})),Fp(U(tE)),E(bm(Uint8Array)),Fp(wh.check(Um({minimum:0,maximum:60}))),Fp(wh.check(Gm(),Um({minimum:0,maximum:864e10}))),Fp(I([`five_hour`,`seven_day`,`seven_day_opus`,`seven_day_sonnet`])),Fp(A(`rejected`)),Fp(A(`0`)),Fp(Fh),Fp(N({type:A(`error`),error:N({type:A(`overloaded_error`)})}));var nE=[/prompt (?:is )?too long/i,/prompt exceeds max length/i,/request_too_large/i,/input is too long for requested model/i,/exceeds the context window/i,/exceeds (?:the )?(?:model'?s )?maximum context length(?: of [\d,]+ tokens?|\s*\([\d,]+\))/i,/input token count.*exceeds the maximum/i,/maximum prompt length is \d+/i,/reduce the length of the messages/i,/maximum context length is \d+ tokens/i,/exceeds (?:the )?maximum allowed input length of [\d,]+ tokens?/i,/input \(\d+ tokens\) is longer than the model'?s context length \(\d+ tokens\)/i,/exceeds the limit of \d+/i,/exceeds the available context size/i,/greater than the context length/i,/context window exceeds limit/i,/exceeded model token limit/i,/too large for model with \d+ maximum context length/i,/prompt has [\d,]+ tokens?, but the configured context size is [\d,]+ tokens?/i,/model_context_window_exceeded/i,/prompt too long; exceeded (?:max )?context length/i,/range of input length should be/i,/context[_ ]length[_ ]exceeded/i,/too many tokens/i,/token limit exceeded/i],rE=/^4(?:00|13)\s*(?:status code)?\s*\(no body\)/i,iE=[/^(Throttling error|Service unavailable):/i,/rate limit/i,/too many requests/i];function aE(e,t){return!!(e.stopReason===`error`&&e.errorMessage&&!iE.some(t=>t.test(e.errorMessage))&&(nE.some(t=>t.test(e.errorMessage))||e.provider===`cerebras`&&rE.test(e.errorMessage))||t&&e.stopReason===`stop`&&e.usage.input+e.usage.cacheRead>t||t&&e.stopReason===`length`&&e.usage.output===0&&e.usage.input+e.usage.cacheRead>=t*.99)}function oE(e,t){return e.stopReason===`length`&&t>0&&e.usage.output<t}function sE(e){return new RegExp(e.join(`|`),`i`)}var cE=sE([`GoUsageLimitError`,`FreeUsageLimitError`,`Monthly usage limit reached`,`available balance`,`insufficient_quota`,`out of budget`,`quota exceeded`,`billing`,`subscription_sharing_usage_limit_exceeded`]),lE=sE(`overloaded,server_busy,servers are currently busy,currently experiencing high demand,model is at capacity,rate.?limit,too many requests,429,500,502,503,504,520,524,service.?(?:is.?)?(?:temporarily.?)?unavailable,server.?error,internal.?error,provider.?returned.?(?:an.?)?error,exceeded request buffer limit while retrying upstream,unable to forward upstream,network.?error,connection.?error,connection.?refused,connection.?lost,other side closed,fetch failed,getaddrinfo,ENOTFOUND,EAI_AGAIN,upstream.?connect,reset before headers,socket hang up,socket connection was closed,timed? out,timeout,terminated,websocket.?closed,websocket.?error,ended without,stream ended before message_stop,stream ended before a terminal response event,http2 request did not get a response,pending stream has been canceled,retry delay,you can retry your request,try your request again,please retry your request,ResourceExhausted,subscription_sharing_usage_unavailable,subscription_sharing_user_unavailable`.split(`,`)),uE=6e4;function dE(e,t){let n=e.baseDelayMs*2**Math.max(0,t-1);return Math.min(Number.isSafeInteger(n)?n:2**53-1,e.maxAgentDelayMs??6e4)}var fE=class extends Error{constructor(){super(`Aborted`)}};function pE(e,t){return new Promise((n,r)=>{if(t?.aborted){r(new fE);return}let i=setTimeout(n,e);t?.addEventListener(`abort`,()=>{clearTimeout(i),r(new fE)},{once:!0})})}async function mE(e,t,n,r){let i=t?.enabled?t.maxRetries:0,a=0,o;for(;;){let s=await e();if(s.stopReason===`aborted`)return o&&await r?.onRetryFinished?.(!1,o.attempt),s;if(s.stopReason!==`error`)return o&&await r?.onRetryFinished?.(!0,o.attempt),s;if(a>=i||!hE(s))return o&&await r?.onRetryFinished?.(!1,o.attempt,s.errorMessage),s;a++,o={attempt:a,errorMessage:s.errorMessage||`Unknown error`};let c=dE(t,a);await r?.onRetryScheduled?.(a,i,c,o.errorMessage);try{await pE(c,n)}catch(e){if(await r?.onRetryFinished?.(!1,a,o.errorMessage),e instanceof fE){let{errorMessage:e,...t}=s;return{...t,stopReason:`aborted`}}throw e}await r?.onRetryAttemptStart?.()}}function hE(e){if(e.stopReason!==`error`||!e.errorMessage)return!1;let t=e.errorMessage;return!cE.test(t)&&lE.test(t)}var gE={assign:0,create:0,clone:0,discard:0,update:0};function _E(e){return yE(e,null)}function vE(e){return yE(typeof e,`object`)&&!_E(e)}function yE(e,t){return e===t}function bE(e){return yE(e,`__proto__`)||yE(e,`constructor`)||yE(e,`prototype`)}function xE(e,t){return bE(t)?Object.prototype.hasOwnProperty.call(e,t):t in e}function SE(e){return Object.getOwnPropertyNames(e)}var CE={immutableTypes:!1,maxErrors:8,maxInstantiationCount:128,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0};function wE(){return CE}function TE(e){return wE().immutableTypes?Object.freeze(e):e}function EE(e,t){for(let n of Object.keys(t))Object.defineProperty(e,n,{configurable:!0,writable:!0,enumerable:!1,value:t[n]});return e}function DE(e,t){return{...e,...t}}function OE(e,t,n={}){gE.create+=1;let r=DE(t,n);return TE(wE().enumerableKind?DE(r,e):EE(r,e))}function kE(e){return vE(e)}function AE(e){return kE(e)&&xE(e,`~optional`)}function jE(e){return SE(e).filter(t=>!AE(e[t]))}function ME(e,t={}){let n=jE(e);return OE({"~kind":`Object`},{type:`object`,...n.length>0?{required:n}:{},properties:e},t)}var NE;(function(e){e[e.Array=0]=`Array`,e[e.BigInt=1]=`BigInt`,e[e.Boolean=2]=`Boolean`,e[e.Date=3]=`Date`,e[e.Constructor=4]=`Constructor`,e[e.Function=5]=`Function`,e[e.Null=6]=`Null`,e[e.Number=7]=`Number`,e[e.Object=8]=`Object`,e[e.RegExp=9]=`RegExp`,e[e.String=10]=`String`,e[e.Symbol=11]=`Symbol`,e[e.TypeArray=12]=`TypeArray`,e[e.Undefined=13]=`Undefined`})(NE||={}),Array.from({length:256}).map((e,t)=>BigInt(t));var PE=new Float64Array(1);new DataView(PE.buffer),new Uint8Array(PE.buffer),new TextEncoder;var FE=`-?(?:0|[1-9][0-9]*)`,IE=`-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?`;function LE(e){return OE({"~kind":`String`},{type:`string`},e)}var RE=`^${FE}$`;`${IE}`;function zE(e,t){return Array.from({length:t-e+1},(t,n)=>String.fromCharCode(e+n))}var BE=[...zE(97,122),...zE(65,90)],VE=[`0`,...zE(49,57)];[...VE],[...BE,...VE],[...VE],new RegExp(RE);var HE={enabled:!0,maxRetries:3,baseDelayMs:2e3,maxAgentDelayMs:6e4},UE={firstEventMs:6e4,idleMs:12e4,attemptMs:6e5,outputBytes:2097152},WE=1e3,GE=Symbol(`Mule model limit`);function KE(e,t){return aE(e,t)}var qE=(e,t,n)=>({_tag:`MuleError`,phase:e,message:t,cause:n}),JE=(e,t)=>({kind:e,value:`mule_${e}_${Zh()}`,parent:t}),YE=()=>ft;function XE(e,t){let n={role:`toolResult`,toolCallId:e.id,toolName:e.name,content:t.content,isError:t.isError,timestamp:Date.now()};return t.usage!==void 0&&(n.usage=t.usage),n}var ZE=(e,t)=>({content:[{type:`text`,text:e}],isError:!0,terminate:t});function QE(e,t){return e.find(e=>e.descriptor.name===t.name)}function $E(e,t,n,r){return r({type:`tool_execution_end`,run:t,turn:n,toolCall:e.identity,call:e.call,result:e.result})}function eD(e,t,n,r,i){let a=JE(`tool_call`,r);return b(function*(){if(yield*i({type:`tool_execution_start`,replay:e?.replay??`unsafe`,run:n,turn:r,toolCall:a,call:t}),e===void 0){let e=ZE(`Tool "${t.name}" not found`),o={call:t,identity:a,result:e};return yield*$E(o,n,r,i),{kind:`finalized`,value:o}}let o=yield*_n(e.prepare(t));if(Ct(o)){let e=ZE(o.failure.message,o.failure.terminate),s={call:t,identity:a,result:e};return yield*$E(s,n,r,i),{kind:`finalized`,value:s}}return{kind:`prepared`,call:t,identity:a,tool:o.success}})}function tD(e,t,n,r){return b(function*(){let i,a;yield*qv(Pv(e.tool.execute()),o=>Ct(o)?(a=o.failure,ft):i===void 0?o.success.type===`result`?(i=o.success.result,ft):r({type:`tool_execution_update`,run:t,turn:n,toolCall:e.identity,call:e.call,result:o.success.result}):ft);let o=a===void 0?i??ZE(`Tool "${e.call.name}" returned no result`):ZE(a.message),s={call:e.call,identity:e.identity,result:o};return yield*$E(s,t,n,r),s})}function nD(e,t,n,r){let i=XE(e.call,e.result),a=JE(`tool_result`,e.identity);return b(function*(){return yield*r({type:`message_start`,run:t,turn:n,message:a,value:i}),yield*r({type:`message_end`,run:t,turn:n,message:a,value:i,data:e.result.data}),i})}function rD(e,t,n,r,i){let a=t.tools??[],o=t.toolExecution===`sequential`||e.some(e=>QE(a,e)?.executionMode===`sequential`);return b(function*(){let t=e=>e.kind===`finalized`?v(e.value):tD(e,n,r,i),s=o?yield*Yr(e,e=>C(eD(QE(a,e),e,n,r,i),t)):yield*b(function*(){let o=yield*Yr(e,e=>eD(QE(a,e),e,n,r,i));return yield*Mn(o.map(t),{concurrency:`unbounded`})});return{messages:yield*Yr(s,e=>nD(e,n,r,i)),terminate:s.length>0&&s.every(e=>e.result.terminate===!0)}})}var iD=e=>ZE(`Tool call "${e.name}" was not executed: the response hit the output token limit, so its arguments may be truncated. Re-issue the tool call with complete arguments.`);function aD(e,t,n,r){return b(function*(){let i=yield*Yr(e,e=>b(function*(){let i=JE(`tool_call`,n),a={call:e,identity:i,result:iD(e)};return yield*r({type:`tool_execution_start`,replay:`unsafe`,run:t,turn:n,toolCall:i,call:e}),yield*$E(a,t,n,r),a}));return yield*Yr(i,e=>nD(e,t,n,r))})}function oD(e,t){return Jr({try:n=>{let r=()=>{t.abort(n.reason)};return n.aborted?r():n.addEventListener(`abort`,r,{once:!0}),Promise.resolve(e.next()).finally(()=>{n.removeEventListener(`abort`,r)})},catch:e=>qE(`model`,`Pi model stream failed`,e)})}function sD(e,t,n){return e.pipe(Jt({duration:t,orElse:()=>y(qE(`model`,n(),GE))}))}function cD(e,t,n,r,i,a){let o=JE(`message`,r),s,c={started:!1,terminal:void 0};return ln(b(function*(){let l=e.modelStreamLimits,u=Math.min(l?.firstEventMs??UE.firstEventMs,UE.firstEventMs),d=Math.min(l?.attemptMs??UE.attemptMs,UE.attemptMs),f=Math.min(l?.outputBytes??UE.outputBytes,UE.outputBytes);if([u,d,f,e.modelStreamIdleTimeoutMs??1].some(e=>!Number.isSafeInteger(e)||e<=0))return yield*y(qE(`model`,`Model stream limits must be positive safe integers`));let p=Date.now(),m=p,ee=0,te=0,ne=new TextEncoder,re=!1,ie=e=>qE(`model`,`Model ${e} after ${String(Date.now()-p)} ms (max provider gap ${String(Math.max(ee,Date.now()-m))} ms, streamed ${String(te)} bytes)`,GE),ae=t=>{let n=Date.now()-p,r=d-n,i=Math.min(re?UE.idleMs:u,e.modelStreamIdleTimeoutMs??UE.idleMs)-(Date.now()-m),a=r<=i?`attempt timed out`:re?`stream timed out (silence)`:`first event timed out`;return sD(t,Math.max(0,Math.min(r,i)),()=>ie(a).message)},oe=new AbortController;yield*Sr(()=>S(()=>{oe.abort(`Mule model scope closed`)}));let se=(e.resolveApiKey===void 0?void 0:yield*e.resolveApiKey(e.model.provider))??e.streamOptions?.apiKey,ce={...e.streamOptions,maxRetries:0,signal:oe.signal};se!==void 0&&(ce.apiKey=se);let le=e.prepareSystemPrompt===void 0?e.systemPrompt:yield*e.prepareSystemPrompt();e.prepareSystemPrompt!==void 0&&(yield*i({type:`model_prompt`,run:n,turn:r,attempt:a,systemPrompt:le}));let ue={systemPrompt:le,messages:t},de=(e.tools??[]).map(e=>e.descriptor);de.length>0&&(ue.tools=de);let fe=yield*ae(Jr({try:async()=>(e.stream??eE)(e.model,li(ue),ce),catch:e=>qE(`model`,`Pi model stream could not start`,e)})),pe=yield*Mr(S(()=>fe[Symbol.asyncIterator]()),e=>Jr({try:()=>(oe.abort(`Mule model stream closed`),new Promise(t=>{let n=setTimeout(t,WE);Promise.resolve(e.return?.()).then(()=>{clearTimeout(n),t()},()=>{clearTimeout(n),t()})})),catch:e=>qE(`model`,`Pi model stream failed`,e)}).pipe(ze)),me=e=>{let a=Date.now();if(ee=Math.max(ee,a-m),m=a,re=!0,(e.type===`text_delta`||e.type===`thinking_delta`||e.type===`toolcall_delta`)&&(te+=ne.encode(e.delta).byteLength,te>f))return y(ie(`output limit exceeded`));switch(`partial`in e&&(s=e.partial),e.type){case`start`:return t.push(e.partial),c.started=!0,i({type:`message_start`,run:n,turn:r,message:o,value:e.partial});case`text_start`:case`text_delta`:case`text_end`:case`thinking_start`:case`thinking_delta`:case`thinking_end`:case`toolcall_start`:case`toolcall_delta`:case`toolcall_end`:return c.started&&(t[t.length-1]=e.partial),i({type:`message_update`,run:n,turn:r,message:o,value:e.partial,event:e});case`done`:return c.terminal=e.message,ft;case`error`:return c.terminal=e.error,ft}},he=()=>ae(oD(pe,oe)),h=yield*he();for(;!h.done;)yield*me(h.value),h=yield*he();let ge=c.terminal??(yield*ae(Jr({try:()=>fe.result(),catch:e=>qE(`model`,`Pi model stream did not settle`,e)})));return c.started?t[t.length-1]=ge:(t.push(ge),yield*i({type:`message_start`,run:n,turn:r,message:o,value:ge})),yield*i({type:`message_end`,run:n,turn:r,message:o,value:ge}),{identity:o,message:ge}}).pipe(un(l=>{if(l.cause!==GE)return y(l);let u={role:`assistant`,content:s?.content??[],api:e.model.api,provider:e.model.provider,model:e.model.id,usage:s?.usage??{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:`error`,timestamp:Date.now(),errorMessage:e.retry?.enabled&&a>e.retry.maxRetries?`The model failed ${String(a)} times on this conversation: ${l.message}`:l.message};return b(function*(){return c.started?t[t.length-1]=u:(t.push(u),yield*i({type:`message_start`,run:n,turn:r,message:o,value:u})),yield*i({type:`message_end`,run:n,turn:r,message:o,value:u}),{identity:o,message:u,limitReached:!0}})})))}function lD(e,t,n,r,i){return b(function*(){let a=e.retry===void 0?void 0:{...e.retry};if(a?.enabled&&[a.maxRetries,a.baseDelayMs,a.maxAgentDelayMs??6e4].some(e=>!Number.isSafeInteger(e)||e<0))return yield*y(qE(`model`,`Retry policy requires non-negative safe-integer counts and delays`));let o,s=0,c=0,l=!1,u,d=t=>e.onRetry===void 0?ft:e.onRetry(t),f=(e,t)=>b(function*(){l=!0,yield*d(t===void 0?{type:`retry_finished`,run:n,turn:r,attempt:c,success:e}:{type:`retry_finished`,run:n,turn:r,attempt:c,success:e,finalError:t})});return yield*b(function*(){for(;;){if(o!==void 0){let e=t.indexOf(o.message);e!==-1&&t.splice(e,1)}o=yield*cD(e,t,n,r,i,++s);let l=o.message;if(l.stopReason!==`error`||a===void 0||!a.enabled||c>=a.maxRetries)return c>0&&(yield*f(l.stopReason!==`error`&&l.stopReason!==`aborted`,l.stopReason===`error`?l.errorMessage:void 0)),o;if(!(yield*ai({try:()=>o?.limitReached===!0||e.retryable(l),catch:e=>qE(`model`,`Typed model retry decision failed`,e)})))return c>0&&(yield*f(!1,l.errorMessage)),o;c++,u=l.errorMessage??`Unknown error`;let p=yield*ai({try:()=>e.retryAfterMs?.(l),catch:e=>qE(`model`,`Model retry delay observation failed`,e)}),m=Math.max(dE(a,c),p!==void 0&&Number.isSafeInteger(p)&&p>=0&&p<=6e4?p:0),ee=Math.min(1e3,m/4,Math.max(0,6e4-m)),te=m+Math.floor(Math.random()*ee);yield*d({type:`retry_scheduled`,run:n,turn:r,attempt:c,maxAttempts:a.maxRetries,delayMs:te,errorMessage:u}),yield*Ur(te),yield*d({type:`retry_attempt_started`,run:n,turn:r,attempt:c})}}).pipe(Ee(()=>c===0||l?ft:f(!1,u)))})}var uD=e=>e.stopReason===`aborted`?`cancelled`:e.stopReason===`error`?`failed`:`completed`;function dD(e,t,n,r,i,a){return Yr(e,e=>b(function*(){let o=JE(`message`,i);t.push(e),n.push(e),yield*a({type:`message_start`,run:r,turn:i,message:o,value:e}),yield*a({type:`message_end`,run:r,turn:i,message:o,value:e})})).pipe(rn)}function fD(e,t,n,r,i,a,o){return b(function*(){yield*o({type:`turn_start`,run:r,turn:i}),yield*dD(a,t,n,r,i,o);let s=yield*lD(e,t,r,i,o),c=uD(s.message)!==`completed`,l=s.message.content.filter(e=>e.type===`toolCall`),u=l.length===0||c?{messages:[],terminate:!1}:s.message.stopReason===`length`?{messages:yield*aD(l,r,i,o),terminate:!1}:yield*rD(l,e,r,i,o);t.push(...u.messages),n.push(s.message,...u.messages),yield*o({type:`turn_end`,run:r,turn:i,message:s.message,toolResults:u.messages});let d={message:s.message,toolResults:u.messages,terminate:u.terminate};return s.limitReached&&s.message.errorMessage!==void 0?{...d,modelLimitReason:s.message.errorMessage}:d})}function pD(e,t,n,r,i,a){let o=JE(`turn`,i);return b(function*(){if(uD(t.message)!==`completed`)return{message:t.message,toolResults:[],terminate:!0};let s=yield*Yr(t.tools,n=>b(function*(){if(n.state===`completed`&&n.message!==void 0)return{message:n.message,terminate:n.result.terminate===!0,recorded:!0};let r=QE(e.tools??[],n.call),s;if(t.message.stopReason!==`length`&&(n.state===`pending`||n.state===`started`&&n.replay===`safe`&&r?.replay===`safe`)){let e=yield*eD(r,n.call,i,o,a);s=e.kind===`finalized`?e.value:yield*tD(e,i,o,a)}else s={call:n.call,identity:JE(`tool_call`,o),result:n.state===`completed`?n.result:n.state===`pending`&&t.message.stopReason===`length`?iD(n.call):ZE(`Interrupted by a restart; it may or may not have completed; check before retrying.`)},yield*a({type:`tool_execution_start`,replay:`unsafe`,run:i,turn:o,toolCall:s.identity,call:s.call}),yield*$E(s,i,o,a);return{message:yield*nD(s,i,o,a),terminate:s.result.terminate===!0,recorded:!1}})),c=s.filter(({recorded:e})=>!e).map(({message:e})=>e);return n.push(...c),r.push(...c),{message:t.message,toolResults:s.map(({message:e})=>e),terminate:s.length>0&&s.every(({terminate:e})=>e)}})}function mD(e,t,n,r){return b(function*(){if(e.shouldStopAfterTurn!==void 0&&(yield*e.shouldStopAfterTurn({message:t.message,toolResults:t.toolResults,context:n,newMessages:r})))return{continue:!1,pending:[]};let i=e.getSteeringMessages===void 0?[]:[...yield*e.getSteeringMessages()];if(t.message.content.some(e=>e.type===`toolCall`)&&!t.terminate||i.length>0)return{continue:!0,pending:i};let a=e.getFollowUpMessages===void 0?[]:[...yield*e.getFollowUpMessages()];return{continue:a.length>0,pending:a}})}function hD(e,t,n,r,i,a,o){return b(function*(){yield*a({type:`run_end`,run:e,terminal:t,outcome:i});let s={status:i,run:e,terminal:t,message:n,messages:r};return o===void 0?s:{...s,modelLimitReason:o}})}function gD(e,t=YE){return b(function*(){let n=yield*m_(1),r={started:!1,ended:!1},i=e=>Cn(()=>(e.type===`run_end`&&(r.ended=!0),n.withPermits(1)(t(e)))).pipe(nr(()=>S(()=>{e.type===`run_start`&&(r.started=!0)}))),a=JE(`run`),o=JE(`terminal`,a);return yield*vD(e,i,a,o).pipe(Ae(e=>{let t=_D(e);return!r.started||r.ended||t===void 0?ft:i({type:`run_end`,run:a,terminal:o,outcome:t}).pipe(ze)}))})}function _D(e){if(ta(e))return;if(Bi(e.cause))return`cancelled`;let t=Wi(e.cause);if(!(gn(t)&&t.value.phase===`listener`))return`failed`}function vD(e,t,n,r){return b(function*(){let i=[...e.messages],a=[],o=e.getSteeringMessages===void 0?[]:[...yield*e.getSteeringMessages()],s,c;if(yield*t({type:`run_start`,run:n}),e.resume!==void 0){let s=yield*pD(e,e.resume,i,a,n,t),c=uD(s.message),l=c===`completed`?yield*mD(e,s,i,a):{continue:!1,pending:[]};if(!l.continue&&o.length===0)return yield*hD(n,r,s.message,a,c,t);o.push(...l.pending)}do{let l=yield*fD(e,i,a,n,JE(`turn`,n),o,t);s=l.message;let u=uD(l.message);if(u!==`completed`)return yield*hD(n,r,l.message,a,u,t,l.modelLimitReason);if(e.prepareNextTurn!==void 0&&!l.terminate&&l.message.content.some(e=>e.type===`toolCall`)){let t=yield*e.prepareNextTurn({message:l.message,toolResults:l.toolResults,context:i,newMessages:a});t!==void 0&&i.splice(0,i.length,...t)}let d=yield*mD(e,l,i,a);o=[...d.pending],c=d.continue}while(c);return yield*hD(n,r,s,a,`completed`,t)})}var yD={run:gD},bD=class{#e=new Map;#t;constructor(e=8){this.#t=e}push(e,t){let n=this.#e.get(e)??[];if(n.length>=this.#t)throw new Gx({namespace:`execute`,operation:`images`,cause:{kind:`Unavailable`,message:`Image collector cap reached for this execution (max ${String(this.#t)} images). Process images one at a time or write them to files.`}});let r=`img_${String(n.length)}`;return n.push(Object.freeze({...t})),this.#e.set(e,n),r}drain(e){let t=this.#e.get(e);return t===void 0?[]:(this.#e.delete(e),t)}dispose(e){this.#e.delete(e)}},xD=8192,SD=xD*4,CD=new TextEncoder,wD=()=>new TextDecoder(`utf-8`,{ignoreBOM:!0,fatal:!1}),TD=class e{wake;#e={stdout:{decoder:wD(),pending:new Uint8Array},stderr:{decoder:wD(),pending:new Uint8Array}};#t=wD();#n=Array.from({length:xD},()=>void 0);#r=0;#i=0;#a=0;#o=0;#s=0;#c=0;#l=!1;#u=!1;constructor(e){this.wake=e}static make(){return Og({capacity:1,strategy:`dropping`}).pipe(Se(t=>new e(t)))}write(e,t){if(this.#u||t.length===0)return;let n=this.#e[e];this.#c+=t.length;for(let e=0;e<t.length;e+=SD){let r=t.subarray(e,e+SD),i=n.decoder.decode(r,{stream:!0}),a=new Uint8Array(n.pending.length+r.length);a.set(n.pending),a.set(r,n.pending.length);let o=this.#f(a);n.pending=a.slice(a.length-o),this.#h(i,a.length-o,a)}this.#l=!0,jg(this.wake,void 0)}#d(e,t){let n=this.#t.decode(e.subarray(0,t),{stream:!0});return this.#t.decode(),n}#f(e){for(let t=1;t<=Math.min(3,e.length);t++){let n=e.subarray(e.length-t);if(this.#d(n,n.length).length===0)return t}return 0}#p(){let e=this.#n[this.#r];if(e===void 0)throw Error(`Missing output ring entry`);this.#n[this.#r]=void 0,this.#r=(this.#r+1)%xD,this.#i--,this.#a-=e.textBytes,this.#o-=e.newlines,this.#s+=e.rawBytes}#m(e,t,n){let r=e.raw;if(r===null){this.#p();return}let i=e=>{let i=this.#d(r,e);return CD.encode(i).length>=t&&i.split(`
|
|
18
|
+
`;case 114:return`\r`;case 120:return String.fromCharCode(this.readHexChar(2));case 117:return RS(this.readCodePoint());case 116:return` `;case 98:return`\b`;case 118:return`\v`;case 102:return`\f`;case 13:this.input.charCodeAt(this.pos)===10&&++this.pos;case 10:return this.options.locations&&(this.lineStart=this.pos,++this.curLine),``;case 56:case 57:if(this.strict&&this.invalidStringToken(this.pos-1,`Invalid escape sequence`),e){var n=this.pos-1;this.invalidStringToken(n,`Invalid escape sequence in template string`)}default:if(t>=48&&t<=55){var r=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],i=parseInt(r,8);return i>255&&(r=r.slice(0,-1),i=parseInt(r,8)),this.pos+=r.length-1,t=this.input.charCodeAt(this.pos),(r!==`0`||t===56||t===57)&&(this.strict||e)&&this.invalidStringToken(this.pos-1-r.length,e?`Octal literal in template string`:`Octal literal in strict mode`),String.fromCharCode(i)}return DS(t)?(this.options.locations&&(this.lineStart=this.pos,++this.curLine),``):String.fromCharCode(t)}},Q.readHexChar=function(e){var t=this.pos,n=this.readInt(16,e);return n===null&&this.invalidStringToken(t,`Bad character escape sequence`),n},Q.readWord1=function(){this.containsEsc=!1;for(var e=``,t=!0,n=this.pos,r=this.options.ecmaVersion>=6;this.pos<this.input.length;){var i=this.fullCharCodeAtPos();if(bS(i,r))this.pos+=i<=65535?1:2;else if(i===92){this.containsEsc=!0,e+=this.input.slice(n,this.pos);var a=this.pos;this.input.charCodeAt(++this.pos)!==117&&this.invalidStringToken(this.pos,`Expecting Unicode escape sequence \\uXXXX`),++this.pos;var o=this.readCodePoint();(t?yS:bS)(o,r)||this.invalidStringToken(a,`Invalid Unicode escape`),e+=RS(o),n=this.pos}else break;t=!1}return e+this.input.slice(n,this.pos)},Q.readWord=function(){var e=this.readWord1(),t=J.name;return this.keywords.test(e)&&(t=wS[e]),this.finishToken(t,e)},fC.acorn={Parser:fC,version:`8.18.0`,defaultOptions:US,Position:BS,SourceLocation:VS,getLineInfo:HS,Node:FC,TokenType:K,tokTypes:J,keywordTypes:wS,TokContext:EC,tokContexts:DC,isIdentifierChar:bS,isIdentifierStart:yS,Token:Ew,isNewLine:DS,lineBreak:TS,lineBreakG:ES,nonASCIIwhitespace:kS};function Aw(e,t){return fC.parse(e,t)}_(()=>Nr(`ok`,[pr({ok:sr(!0),value:Gr()}),pr({ok:sr(!1),error:pr({kind:sr(`guest_threw`),name:x().max(80),message:x().max(512),transportMessage:x().max(512).optional()})})]));var jw=_(()=>x().regex(/^[A-Za-z][A-Za-z0-9_]*$/u)),Mw=jw.refine(e=>{if(e===`env`)return!1;try{return Aw(`let ${e};`,{ecmaVersion:`latest`,sourceType:`module`}),!0}catch(e){if(!(e instanceof SyntaxError))throw e;return!1}},`Invalid sandbox transport alias`);_(()=>yn(Mw,Nt(jw).min(1))),_(()=>yn(Mw,Nt(x().regex(/^[A-Za-z][A-Za-z0-9_]*(?:\.[A-Za-z][A-Za-z0-9_]*)*$/u))));var Nw=I([`read`,`write`]),Pw=Qp,Fw=N({access:k(Nw),confirm:k(Pw)}),Iw=I([`none`,`read`,`write`]),Lw=T(Fw),Rw=T(Iw);function zw(e){let t=Lw({access:e.access,confirm:e.confirm});if(Ct(t))throw new G(`Access labels must be access: "read" | "write" and confirm: boolean`);return{access:t.success.access??`write`,confirm:t.success.confirm??!1}}function Bw(e,t){let n=`${t.module}.${t.operation}`;switch(e){case`not-granted`:return`${n} is not granted to this Agent.`;case`read-only`:return`${n} changes something, and this Agent has read-only access to ${t.module}.`;case`confirmation-unavailable`:return`${n} needs a person's approval, and no one can be asked here.`;case`declined`:return`${n} was not approved.`}}function Vw(e,t){return Object.freeze({refused:!0,module:t.module,operation:t.operation,reason:e,message:Bw(e,t)})}function Hw(e,t,n){let r=e.sessionGrants?.(t),i=r!==void 0&&Object.hasOwn(r,n)?r:e.grants;if(i===void 0||!Object.hasOwn(i,n))return e.required?.includes(n)===!0?`none`:e.defaultGrant??`write`;let a=Rw(i[n]);return ye(a)?a.success:`none`}async function Uw(e,t,n,r,i){let a=await Ww(e,t,n,r,i);return a!==void 0&&e.onRefused?.(a,t),a}async function Ww(e,t,n,r,i){await e.beforeCall?.(i),i.throwIfAborted();let a=Gw(e,t,n);if(a!==void 0)return a;if(!(!n.confirm&&(e.confirmWrites!==!0||n.access===`read`)))return e.confirm===void 0?Vw(`confirmation-unavailable`,n):await e.confirm({module:n.module,operation:n.operation,access:n.access,sessionId:t.sessionId,input:r},i)?(await e.beforeCall?.(i),i.throwIfAborted(),Gw(e,t,n)):Vw(`declined`,n)}function Gw(e,t,n){let r=Hw(e,t,n.module);if(r===`none`)return Vw(`not-granted`,n);if(r===`read`&&n.access!==`read`)return Vw(`read-only`,n)}function Kw(e,t,n){let r={module:e.module,operation:e.descriptor.name,...zw(e)};return{...e,prepare:i=>Jr({try:e=>Uw(t,n,r,i.arguments,e),catch:()=>({message:`Access check failed`})}).pipe(C(t=>t===void 0?e.prepare(i):v({execute:()=>wv({type:`result`,result:{content:[{type:`text`,text:JSON.stringify(t)}],isError:!1}})})))}}var qw=ms();async function Jw(e){let t=await Dr(e);if(ta(t))return{value:t.value};let n=Ui(t.cause);if(Ct(n))throw Hi(t.cause);return{issues:qw(n.success.issue).issues}}function Yw(e){let t=zh(e),n=jp(t)[`~standard`].jsonSchema,r=Np(t),i=Rp(t);return Object.freeze({description:{"~standard":{jsonSchema:{input:n.input,output:n.input}}},decode:e=>Jw(r(e)),encode:e=>Jw(i(e))})}function Xw(e){let t=async t=>e[`~standard`].validate(t);return Object.freeze({description:e,decode:t,encode:t})}function Zw(e){return Wp(e)?Yw(e):Xw(e)}var Qw=Symbol(`mycelium.operation`),$w=Symbol(`mycelium.module`),eT=new WeakMap,tT=new WeakMap;function nT(e){let t=Object.freeze({[Qw]:!0}),n=Zw(e.input),r=e.output===void 0?void 0:Zw(e.output),i={replay:e.replay??`unsafe`,...zw(e),input:n.description,invoke:async(t,i)=>{let a=await n.decode(t);if(a.issues!==void 0)throw new Nx(a.issues);let o=await e.execute(a.value,i);if(r===void 0)return o;let s=await r.encode(o);if(s.issues!==void 0)throw new Hx({reason:`Capability output failed its declared schema`,rawCause:new Px(s.issues)});return s.value}};e.description!==void 0&&(i.description=e.description),r!==void 0&&(i.output=r.description);let a=Object.freeze(i);return eT.set(t,a),t}function rT(e){let t=Nt(jw).safeParse(e.namespace??[]);if(!t.success)throw new G(`Invalid module namespace`);let n=Object.freeze({[$w]:!0}),r={id:e.id,grantKey:e.id,name:e.name??e.id,namespace:Object.freeze(t.data),operations:Object.freeze({...e.operations})};e.description!==void 0&&(r.description=e.description);let i=Object.freeze(r);return tT.set(n,i),n}function iT(e){return tT.has(e)}function aT(e){return eT.get(e)}function oT(e){return tT.get(e)}function sT(e,t,n){let r=oT(e);if(r===void 0)throw new G(`Unknown module registration`);let i={};for(let[e,a]of Object.entries(r.operations)){let r=n===``?e:`${n}.${e}`;if(iT(a)){let n=oT(a);if(n===void 0)throw new G(`Unknown child module registration`);i[e]=sT(a,t,[r,...n.namespace].join(`.`));continue}let o=aT(a);if(o===void 0)throw new G(`Unknown operation registration: ${e}`);let s=Object.freeze({[Qw]:!0});eT.set(s,Object.freeze({...o,invoke:async(e,n)=>{let i=await t({operation:r,context:n});return i.kind===`refuse`?i.value:await o.invoke(e,n)}})),i[e]=s}return cT(rT(r.description===void 0?{id:r.id,name:r.name,namespace:r.namespace,operations:i}:{id:r.id,name:r.name,namespace:r.namespace,description:r.description,operations:i}),r.grantKey)}function cT(e,t){let n=oT(e);if(n===void 0)throw new G(`Unknown module registration`);let r=Object.freeze({[$w]:!0});return tT.set(r,Object.freeze({...n,grantKey:t})),r}function lT(e,t){if(t.length===0||t.length>160)throw new G(`Grant key must be non-empty and bounded`);return cT(e,t)}function uT(e,t){return sT(e,t,``)}function dT(e,t){return e<t?-1:+(e>t)}function fT(e){return e instanceof Error?e.message:`Capability declarations could not be compiled`}var pT=160;function mT(e){if(e.length===0||e.length>pT)throw new G(`Module id must be non-empty and bounded`)}function hT(e){if(!e.split(`.`).every(e=>jw.safeParse(e).success))throw new G(`Operation key must be a path segment or a dotted relative path`)}function gT(e){let t=e.replace(/[^A-Za-z0-9_]/g,`_`);return/^[A-Za-z]/.test(t)?t:`module_${t}`}function _T(e){let t=gT(e);return Mw.safeParse(t).success?t:`module_${t}`}function vT(e,t){let n=new Set([`forage`,`env`]),r=new Map;for(let i of e){let e=t===`logical`?i.namespace:[],a=t===`logical`?gT(i.name):_T(i.name),o=t=>[...e,t].join(`.`),s=a,c=2;for(;n.has(o(s));)s=`${a}_${String(c)}`,c+=1;n.add(o(s)),r.set(i.id,s)}return r}var yT=14695981039346656037n,bT=1099511628211n,xT=18446744073709551615n;function ST(e,t){let n=e,r=BigInt(t.length);for(let e=0;e<8;e+=1)n=(n^r&255n)*bT&xT,r>>=8n;for(let e=0;e<t.length;e+=1){let r=t.charCodeAt(e);n=(n^BigInt(r&255))*bT&xT,n=(n^BigInt(r>>>8&255))*bT&xT}return n}function CT(e,t,n){let r=ST(yT,e),i=[...t.entries()].sort(([e],[t])=>dT(e,t));for(let[e,t]of i)r=ST(r,e),r=ST(r,t);let a=[...n].sort((e,t)=>dT(e.id,t.id));for(let e of a)r=ST(r,e.id),r=ST(r,e.version);return`installed-${r.toString(16).padStart(16,`0`)}`}function wT(){return[Ex,Tx,Dx]}function TT(e,t,n,r,i,a=[]){return Object.entries(t.operations).flatMap(([t,o])=>{if(hT(t),iT(o)){let s=oT(o);if(s===void 0)throw new G(`Unknown child module registration`);return TT(e,s,n,[...r,t,...s.namespace],s.description??i,[...a,t,...s.namespace])}let s=aT(o);if(s===void 0)throw new G(`Unknown operation registration: ${[...r,t].join(`.`)}`);return[Object.freeze({grantKey:e,path:[...r,t].join(`.`),namespace:n,name:[...a,t].join(`.`),moduleDescription:i,operation:s})]})}function ET(e,t=[]){let n=e.map(e=>{let t=oT(e);if(t===void 0)throw new G(`Unknown module registration`);return mT(t.id),t}).sort((e,t)=>dT(e.id,t.id)),r=new Set;for(let e of n){if(r.has(e.id))throw new G(`Duplicate module id: ${e.id}`);r.add(e.id)}let i=vT(n,`transport`),a=vT(n,`logical`),o=Object.freeze(Object.fromEntries(n.map(e=>{let t=i.get(e.id);if(t===void 0)throw new G(`Missing module alias: ${e.id}`);let n=a.get(e.id);if(n===void 0)throw new G(`Missing logical alias: ${e.id}`);return[t,Object.freeze([...e.namespace,n])]}))),s=n.flatMap(e=>{let t=i.get(e.id);if(t===void 0)throw new G(`Missing module alias: ${e.id}`);let n=o[t];if(n===void 0)throw new G(`Missing namespace path: ${e.id}`);return TT(e.grantKey,e,t,n,e.description)}).sort((e,t)=>dT(e.path,t.path)),c=new Set(s.map(e=>e.path));if(c.size!==s.length)throw new G(`Duplicate operation path`);for(let e of wT()){if(c.has(e.path))throw new G(`Reserved intrinsic path: ${e.path}`);c.add(e.path)}for(let e of c){let t=e.split(`.`);for(let n=1;n<t.length;n+=1)if(c.has(t.slice(0,n).join(`.`)))throw new G(`Operation conflicts with namespace: ${e}`)}let l;try{l=xx({revision:`prepared-content-stamp`,operations:[...s.map(({path:e,moduleDescription:t,operation:n})=>{let r={path:e,input:n.input};return n.description!==void 0&&(r.description=n.description),n.output!==void 0&&(r.output=n.output),t!==void 0&&(r.instructions=t),r}),...wT()]})}catch(e){throw new G(fT(e))}let u=CT(l.stamp(),i,t),d=Object.freeze({revision:u,search:l.search,describe:l.describe,list:l.list,stamp:l.stamp}),f=Object.freeze(Object.fromEntries([...i.entries()].map(([e,t])=>[t,e])));return Object.freeze({revision:u,catalog:d,operations:Object.freeze(s),moduleAliases:f,namespacePaths:o})}function DT(){return null}var OT=Nn(),kT=_(()=>Wt([yr(),x(),t(),qn()])),AT=_(()=>yn(x(),Gr())),jT=_(()=>oS.extend({timeoutMs:qn().int().min(1).max(9e5).optional(),abortGraceMs:qn().int().min(1).max(3e4).optional()}).optional()),MT=64,NT=262144,PT=new TextEncoder,FT=e=>{e(v(void 0))};function IT(e){let t=jT.safeParse(e);if(!t.success)throw new G(`Execution policy is invalid`);let n=t.data?.timeoutMs??18e4;return Object.freeze({timeoutMs:n,abortGraceMs:t.data?.abortGraceMs??5e3,...sS({sandboxCapacity:t.data?.sandboxCapacity,admissionWaitMs:t.data?.admissionWaitMs??n},(t.data?.sandboxCapacity,void 0))})}function LT(e){return b(function*(){let t=yield*m_(e);return Object.freeze({createGroup:()=>{let e=0,n=new Set,r=Kn(t=>e===0?(t(v(void 0)),S(()=>void 0)):(n.add(t),S(()=>n.delete(t))));return Object.freeze({start:r=>ti(i=>S(()=>{e+=1}).pipe(g(ne(i(t.withPermits(1)(r)).pipe(Qn(S(()=>{if(--e,e===0){let e=[...n];n.clear(),e.forEach(FT)}}))))))),awaitIdle:r})}})})}function RT(e,t=0){if(t>MT)throw Error(`JSON value exceeds the nesting bound`);let n=kT.safeParse(e);if(n.success)return n.data;if(Array.isArray(e))return e.map(e=>RT(e,t+1));let r=AT.safeParse(e);if(!r.success)throw r.error;return Object.fromEntries(Object.entries(r.data).filter(([,e])=>e!==void 0).map(([e,n])=>[e,RT(n,t+1)]))}function zT(e){return OT.parse(RT(e))}function BT(e){let t=JSON.stringify(zT(e)),n=PT.encode(t).byteLength;if(n>NT)throw new Ux({size:n});return Object.freeze({text:t})}function VT(e,t){return Object.freeze(Object.fromEntries(Object.entries(e).map(([e,n])=>[e,Object.freeze(Object.fromEntries(Object.entries(n).map(([n,r])=>[n,async i=>{t();try{return zT(await r(i))}catch(t){throw Zx(t)?t:t instanceof Eb?new Gx({namespace:e,operation:n,cause:{kind:`Forage`,message:t.message},rawCause:t}):t instanceof Nx?new Gx({namespace:e,operation:n,cause:{kind:`InvalidInput`,message:`Invalid operation input: ${Dt({issues:t.issues})}; use forage.describe`},rawCause:t}):t}}])))])))}function HT(e){return Kn(t=>{let n=t.bind(void 0,ft);return e.aborted?n():e.addEventListener(`abort`,n,{once:!0}),S(e.removeEventListener.bind(e,`abort`,n))})}function UT(e,t){if(e===void 0)return()=>void 0;let n=t.bind(void 0);return e.aborted?(n(),()=>void 0):(e.addEventListener(`abort`,n,{once:!0}),e.removeEventListener.bind(e,`abort`,n))}function WT(e,t,n){return e===`deadline_exceeded`?new Lx({limitMs:t,elapsedMs:n??0}):new zx({by:`caller`})}function GT(e){return Ca.pipe(Se(t=>t-e))}function KT(t){return Ca.pipe(C(n=>Cn(()=>{let r=t.executionId,i=new AbortController,a=n,o={kind:`waiting`},s,c=e=>{s===void 0&&o.kind!==`refused`&&(s=e,i.abort())},l=e=>{let n=new Rx({capacity:t.policy.capacity,waitedMs:Math.max(0,e-a)});return o={kind:`refused`,failure:n},n},u=()=>{if(i.signal.aborted)throw WT(s,t.policy.timeoutMs)},d=UT(t.callerSignal,()=>{c(`cancelled`)}),f=n+t.policy.timeoutMs,p={executionId:r,deadlineAt:f,signal:i.signal,images:t.images};t.toolCallId!==void 0&&Object.assign(p,{toolCallId:t.toolCallId}),t.output!==void 0&&Object.assign(p,{output:t.output});let m=Object.freeze(p),ee=Cn(()=>Ca.pipe(C(e=>o.kind===`refused`?y(o.failure):(e>=f&&c(`deadline_exceeded`),i.signal.aborted?GT(n).pipe(C(e=>y(WT(s,t.policy.timeoutMs,e)))):e>=a+t.policy.waitMs?y(l(e)):(o={kind:`admitted`},t.sandbox.execute(Object.freeze({executionId:r,code:t.code,timeoutMs:t.policy.timeoutMs,bindings:VT(t.createBindings(m),u),modules:t.modules,namespacePaths:t.namespacePaths,sessionId:t.sessionId}),i.signal).pipe(Rr(e=>Bi(e)?Ut(e):y(Qx(Hi(e)))))))))),te=e=>s_(e).pipe(Jt({duration:t.policy.abortGraceMs,orElse:()=>y(s===`deadline_exceeded`?new Lx({limitMs:t.policy.timeoutMs,elapsedMs:t.policy.timeoutMs,acknowledged:!1}):new zx({by:`caller`,acknowledged:!1}))})),ne,re=!1,ie=e=>(re=!0,GT(n).pipe(C(n=>{let i=Qx(e),a=i instanceof Lx?new Lx({limitMs:i.limitMs,elapsedMs:n,acknowledged:i.acknowledged}):i,o=qx(a,r),s=yn(x(),Nn()).parse(eS(a));s.ref=r;let c={kind:`sandbox_failure`,ref:r,executionId:r,adapter:t.sandbox.adapter??`effect`,buildSha:t.sandbox.buildSha??DT(),tag:o._tag,fields:s,healthAlert:o._tag===`Unknown`},l=Cn(()=>t.sandbox.onFailure?.(c)??ft);return Ze(`sandbox_failure`,c).pipe(or({executionId:r,ref:r,adapter:c.adapter,tag:c.tag,buildSha:c.buildSha}),g(o._tag===`Unknown`?ro(io(no(`sandbox_unknown`),{adapter:c.adapter}),1).pipe(g(Ze(`sandbox_health_alert`).pipe(or({ref:r,adapter:c.adapter})))):ft),g(l.pipe(Rr(e=>Ze(`sandbox_failure_record_failed`,e)))),Or(o))})));return b(function*(){if(i.signal.aborted){let e=yield*GT(n);return yield*y(WT(s,t.policy.timeoutMs,e))}a=yield*Ca,ne=yield*t.backingWork.start(ee);let r=yield*Ca,u=Ur(Math.max(0,a+t.policy.waitMs-r)).pipe(g(Ca),C(e=>o.kind===`admitted`?Et:o.kind===`refused`?v({kind:`busy`,failure:o.failure}):i.signal.aborted?v({kind:`cancelled`}):e>=f?(c(`deadline_exceeded`),v({kind:`deadline`})):v({kind:`busy`,failure:l(e)}))),d=yield*e(a_(ne).pipe(Se(e=>Object.freeze({kind:`settled`,exit:e}))),e(Ur(Math.max(0,f-r)).pipe(g(S(()=>(c(`deadline_exceeded`),Object.freeze({kind:`deadline`}))))),e(HT(i.signal).pipe(Or(Object.freeze({kind:`cancelled`}))),u))),p=o.kind===`refused`?o.failure:d.kind===`busy`?d.failure:void 0;if(p!==void 0)return yield*te(ne).pipe(g(y(p)));if(d.kind===`settled`)return yield*_e(d.exit,{onFailure:e=>s===void 0?Ut(e):GT(n).pipe(C(e=>y(WT(s,t.policy.timeoutMs,e)))),onSuccess:e=>ai({try:()=>BT(e),catch:t=>Zx(t)?t:new Wx({kind:$x(e),rawCause:t})})});d.kind===`deadline`&&c(`deadline_exceeded`);let m=yield*GT(n);return yield*te(ne).pipe(g(y(WT(s,t.policy.timeoutMs,m))))}).pipe(Ee(()=>(c(`cancelled`),(ne===void 0?ft:s_(ne).pipe(En(t.policy.abortGraceMs),rn)).pipe(g(Cn(()=>re?ft:ie(new zx({by:`operator`})).pipe(rn))))))).pipe(un(e=>ie(e).pipe(C(y))),Qn(S(d)))})))}var qT=lm(()=>F([Zp,Xp,Qp,M,j,Oh,bm(AbortSignal),P(qT),JT])),JT=nm(j,qT);function YT(e){return E(JT)(e)}var XT=nm(j,Bh),ZT=E(N({samplingParams:O(XT),samplingParamsByThinkingLevel:O(N({off:O(XT),minimal:O(XT),low:O(XT),medium:O(XT),high:O(XT),xhigh:O(XT),max:O(XT)}))}));function QT(e){return{...e,...ZT(e)}}function $T(e){if(e===void 0)return;let{onPayload:t,onProviderStreamEvent:n,onResponse:r,...i}=e,a={...i};return t!==void 0&&(a.onPayload=(e,n)=>t(YT(e),QT(n))),n!==void 0&&(a.onProviderStreamEvent=(e,t)=>n(YT(e),QT(t))),r!==void 0&&(a.onResponse=(e,t)=>r(e,QT(t))),a}var eE=async(e,t,n)=>{let{streamSimple:r}=await ui(async()=>{let{streamSimple:e}=await import(`./compat-BQZx9Jx3.js`);return{streamSimple:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return r(e,li(t),$T(n))},tE=N({error:N({code:k(j),type:k(j)})});Fp(N({type:A(`response.failed`),response:tE})),Fp(U(tE)),E(bm(Uint8Array)),Fp(wh.check(Um({minimum:0,maximum:60}))),Fp(wh.check(Gm(),Um({minimum:0,maximum:864e10}))),Fp(I([`five_hour`,`seven_day`,`seven_day_opus`,`seven_day_sonnet`])),Fp(A(`rejected`)),Fp(A(`0`)),Fp(Fh),Fp(N({type:A(`error`),error:N({type:A(`overloaded_error`)})}));var nE=[/prompt (?:is )?too long/i,/prompt exceeds max length/i,/request_too_large/i,/input is too long for requested model/i,/exceeds the context window/i,/exceeds (?:the )?(?:model'?s )?maximum context length(?: of [\d,]+ tokens?|\s*\([\d,]+\))/i,/input token count.*exceeds the maximum/i,/maximum prompt length is \d+/i,/reduce the length of the messages/i,/maximum context length is \d+ tokens/i,/exceeds (?:the )?maximum allowed input length of [\d,]+ tokens?/i,/input \(\d+ tokens\) is longer than the model'?s context length \(\d+ tokens\)/i,/exceeds the limit of \d+/i,/exceeds the available context size/i,/greater than the context length/i,/context window exceeds limit/i,/exceeded model token limit/i,/too large for model with \d+ maximum context length/i,/prompt has [\d,]+ tokens?, but the configured context size is [\d,]+ tokens?/i,/model_context_window_exceeded/i,/prompt too long; exceeded (?:max )?context length/i,/range of input length should be/i,/context[_ ]length[_ ]exceeded/i,/too many tokens/i,/token limit exceeded/i],rE=/^4(?:00|13)\s*(?:status code)?\s*\(no body\)/i,iE=[/^(Throttling error|Service unavailable):/i,/rate limit/i,/too many requests/i];function aE(e,t){return!!(e.stopReason===`error`&&e.errorMessage&&!iE.some(t=>t.test(e.errorMessage))&&(nE.some(t=>t.test(e.errorMessage))||e.provider===`cerebras`&&rE.test(e.errorMessage))||t&&e.stopReason===`stop`&&e.usage.input+e.usage.cacheRead>t||t&&e.stopReason===`length`&&e.usage.output===0&&e.usage.input+e.usage.cacheRead>=t*.99)}function oE(e,t){return e.stopReason===`length`&&t>0&&e.usage.output<t}function sE(e){return new RegExp(e.join(`|`),`i`)}var cE=sE([`GoUsageLimitError`,`FreeUsageLimitError`,`Monthly usage limit reached`,`available balance`,`insufficient_quota`,`out of budget`,`quota exceeded`,`billing`,`subscription_sharing_usage_limit_exceeded`]),lE=sE(`overloaded,server_busy,servers are currently busy,currently experiencing high demand,model is at capacity,rate.?limit,too many requests,429,500,502,503,504,520,524,service.?(?:is.?)?(?:temporarily.?)?unavailable,server.?error,internal.?error,provider.?returned.?(?:an.?)?error,exceeded request buffer limit while retrying upstream,unable to forward upstream,network.?error,connection.?error,connection.?refused,connection.?lost,other side closed,fetch failed,getaddrinfo,ENOTFOUND,EAI_AGAIN,upstream.?connect,reset before headers,socket hang up,socket connection was closed,timed? out,timeout,terminated,websocket.?closed,websocket.?error,ended without,stream ended before message_stop,stream ended before a terminal response event,http2 request did not get a response,pending stream has been canceled,retry delay,you can retry your request,try your request again,please retry your request,ResourceExhausted,subscription_sharing_usage_unavailable,subscription_sharing_user_unavailable`.split(`,`)),uE=6e4;function dE(e,t){let n=e.baseDelayMs*2**Math.max(0,t-1);return Math.min(Number.isSafeInteger(n)?n:2**53-1,e.maxAgentDelayMs??6e4)}var fE=class extends Error{constructor(){super(`Aborted`)}};function pE(e,t){return new Promise((n,r)=>{if(t?.aborted){r(new fE);return}let i=setTimeout(n,e);t?.addEventListener(`abort`,()=>{clearTimeout(i),r(new fE)},{once:!0})})}async function mE(e,t,n,r){let i=t?.enabled?t.maxRetries:0,a=0,o;for(;;){let s=await e();if(s.stopReason===`aborted`)return o&&await r?.onRetryFinished?.(!1,o.attempt),s;if(s.stopReason!==`error`)return o&&await r?.onRetryFinished?.(!0,o.attempt),s;if(a>=i||!hE(s))return o&&await r?.onRetryFinished?.(!1,o.attempt,s.errorMessage),s;a++,o={attempt:a,errorMessage:s.errorMessage||`Unknown error`};let c=dE(t,a);await r?.onRetryScheduled?.(a,i,c,o.errorMessage);try{await pE(c,n)}catch(e){if(await r?.onRetryFinished?.(!1,a,o.errorMessage),e instanceof fE){let{errorMessage:e,...t}=s;return{...t,stopReason:`aborted`}}throw e}await r?.onRetryAttemptStart?.()}}function hE(e){if(e.stopReason!==`error`||!e.errorMessage)return!1;let t=e.errorMessage;return!cE.test(t)&&lE.test(t)}var gE={assign:0,create:0,clone:0,discard:0,update:0};function _E(e){return yE(e,null)}function vE(e){return yE(typeof e,`object`)&&!_E(e)}function yE(e,t){return e===t}function bE(e){return yE(e,`__proto__`)||yE(e,`constructor`)||yE(e,`prototype`)}function xE(e,t){return bE(t)?Object.prototype.hasOwnProperty.call(e,t):t in e}function SE(e){return Object.getOwnPropertyNames(e)}var CE={immutableTypes:!1,maxErrors:8,maxInstantiationCount:128,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0};function wE(){return CE}function TE(e){return wE().immutableTypes?Object.freeze(e):e}function EE(e,t){for(let n of Object.keys(t))Object.defineProperty(e,n,{configurable:!0,writable:!0,enumerable:!1,value:t[n]});return e}function DE(e,t){return{...e,...t}}function OE(e,t,n={}){gE.create+=1;let r=DE(t,n);return TE(wE().enumerableKind?DE(r,e):EE(r,e))}function kE(e){return vE(e)}function AE(e){return kE(e)&&xE(e,`~optional`)}function jE(e){return SE(e).filter(t=>!AE(e[t]))}function ME(e,t={}){let n=jE(e);return OE({"~kind":`Object`},{type:`object`,...n.length>0?{required:n}:{},properties:e},t)}var NE;(function(e){e[e.Array=0]=`Array`,e[e.BigInt=1]=`BigInt`,e[e.Boolean=2]=`Boolean`,e[e.Date=3]=`Date`,e[e.Constructor=4]=`Constructor`,e[e.Function=5]=`Function`,e[e.Null=6]=`Null`,e[e.Number=7]=`Number`,e[e.Object=8]=`Object`,e[e.RegExp=9]=`RegExp`,e[e.String=10]=`String`,e[e.Symbol=11]=`Symbol`,e[e.TypeArray=12]=`TypeArray`,e[e.Undefined=13]=`Undefined`})(NE||={}),Array.from({length:256}).map((e,t)=>BigInt(t));var PE=new Float64Array(1);new DataView(PE.buffer),new Uint8Array(PE.buffer),new TextEncoder;var FE=`-?(?:0|[1-9][0-9]*)`,IE=`-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?`;function LE(e){return OE({"~kind":`String`},{type:`string`},e)}var RE=`^${FE}$`;`${IE}`;function zE(e,t){return Array.from({length:t-e+1},(t,n)=>String.fromCharCode(e+n))}var BE=[...zE(97,122),...zE(65,90)],VE=[`0`,...zE(49,57)];[...VE],[...BE,...VE],[...VE],new RegExp(RE);var HE={enabled:!0,maxRetries:3,baseDelayMs:2e3,maxAgentDelayMs:6e4},UE={firstEventMs:6e4,idleMs:12e4,attemptMs:6e5,outputBytes:2097152},WE=1e3,GE=Symbol(`Mule model limit`);function KE(e,t){return aE(e,t)}var qE=(e,t,n)=>({_tag:`MuleError`,phase:e,message:t,cause:n}),JE=(e,t)=>({kind:e,value:`mule_${e}_${Zh()}`,parent:t}),YE=()=>ft;function XE(e,t){let n={role:`toolResult`,toolCallId:e.id,toolName:e.name,content:t.content,isError:t.isError,timestamp:Date.now()};return t.usage!==void 0&&(n.usage=t.usage),n}var ZE=(e,t)=>({content:[{type:`text`,text:e}],isError:!0,terminate:t});function QE(e,t){return e.find(e=>e.descriptor.name===t.name)}function $E(e,t,n,r){return r({type:`tool_execution_end`,run:t,turn:n,toolCall:e.identity,call:e.call,result:e.result})}function eD(e,t,n,r,i){let a=JE(`tool_call`,r);return b(function*(){if(yield*i({type:`tool_execution_start`,replay:e?.replay??`unsafe`,run:n,turn:r,toolCall:a,call:t}),e===void 0){let e=ZE(`Tool "${t.name}" not found`),o={call:t,identity:a,result:e};return yield*$E(o,n,r,i),{kind:`finalized`,value:o}}let o=yield*_n(e.prepare(t));if(Ct(o)){let e=ZE(o.failure.message,o.failure.terminate),s={call:t,identity:a,result:e};return yield*$E(s,n,r,i),{kind:`finalized`,value:s}}return{kind:`prepared`,call:t,identity:a,tool:o.success}})}function tD(e,t,n,r){return b(function*(){let i,a;yield*qv(Pv(e.tool.execute()),o=>Ct(o)?(a=o.failure,ft):i===void 0?o.success.type===`result`?(i=o.success.result,ft):r({type:`tool_execution_update`,run:t,turn:n,toolCall:e.identity,call:e.call,result:o.success.result}):ft);let o=a===void 0?i??ZE(`Tool "${e.call.name}" returned no result`):ZE(a.message),s={call:e.call,identity:e.identity,result:o};return yield*$E(s,t,n,r),s})}function nD(e,t,n,r){let i=XE(e.call,e.result),a=JE(`tool_result`,e.identity);return b(function*(){return yield*r({type:`message_start`,run:t,turn:n,message:a,value:i}),yield*r({type:`message_end`,run:t,turn:n,message:a,value:i,data:e.result.data}),i})}function rD(e,t,n,r,i){let a=t.tools??[],o=t.toolExecution===`sequential`||e.some(e=>QE(a,e)?.executionMode===`sequential`);return b(function*(){let t=e=>e.kind===`finalized`?v(e.value):tD(e,n,r,i),s=o?yield*Yr(e,e=>C(eD(QE(a,e),e,n,r,i),t)):yield*b(function*(){let o=yield*Yr(e,e=>eD(QE(a,e),e,n,r,i));return yield*Mn(o.map(t),{concurrency:`unbounded`})});return{messages:yield*Yr(s,e=>nD(e,n,r,i)),terminate:s.length>0&&s.every(e=>e.result.terminate===!0)}})}var iD=e=>ZE(`Tool call "${e.name}" was not executed: the response hit the output token limit, so its arguments may be truncated. Re-issue the tool call with complete arguments.`);function aD(e,t,n,r){return b(function*(){let i=yield*Yr(e,e=>b(function*(){let i=JE(`tool_call`,n),a={call:e,identity:i,result:iD(e)};return yield*r({type:`tool_execution_start`,replay:`unsafe`,run:t,turn:n,toolCall:i,call:e}),yield*$E(a,t,n,r),a}));return yield*Yr(i,e=>nD(e,t,n,r))})}function oD(e,t){return Jr({try:n=>{let r=()=>{t.abort(n.reason)};return n.aborted?r():n.addEventListener(`abort`,r,{once:!0}),Promise.resolve(e.next()).finally(()=>{n.removeEventListener(`abort`,r)})},catch:e=>qE(`model`,`Pi model stream failed`,e)})}function sD(e,t,n){return e.pipe(Jt({duration:t,orElse:()=>y(qE(`model`,n(),GE))}))}function cD(e,t,n,r,i,a){let o=JE(`message`,r),s,c={started:!1,terminal:void 0};return ln(b(function*(){let l=e.modelStreamLimits,u=Math.min(l?.firstEventMs??UE.firstEventMs,UE.firstEventMs),d=Math.min(l?.attemptMs??UE.attemptMs,UE.attemptMs),f=Math.min(l?.outputBytes??UE.outputBytes,UE.outputBytes);if([u,d,f,e.modelStreamIdleTimeoutMs??1].some(e=>!Number.isSafeInteger(e)||e<=0))return yield*y(qE(`model`,`Model stream limits must be positive safe integers`));let p=Date.now(),m=p,ee=0,te=0,ne=new TextEncoder,re=!1,ie=e=>qE(`model`,`Model ${e} after ${String(Date.now()-p)} ms (max provider gap ${String(Math.max(ee,Date.now()-m))} ms, streamed ${String(te)} bytes)`,GE),ae=t=>{let n=Date.now()-p,r=d-n,i=Math.min(re?UE.idleMs:u,e.modelStreamIdleTimeoutMs??UE.idleMs)-(Date.now()-m),a=r<=i?`attempt timed out`:re?`stream timed out (silence)`:`first event timed out`;return sD(t,Math.max(0,Math.min(r,i)),()=>ie(a).message)},oe=new AbortController;yield*Sr(()=>S(()=>{oe.abort(`Mule model scope closed`)}));let se=(e.resolveApiKey===void 0?void 0:yield*e.resolveApiKey(e.model.provider))??e.streamOptions?.apiKey,ce={...e.streamOptions,maxRetries:0,signal:oe.signal};se!==void 0&&(ce.apiKey=se);let le=e.prepareSystemPrompt===void 0?e.systemPrompt:yield*e.prepareSystemPrompt();e.prepareSystemPrompt!==void 0&&(yield*i({type:`model_prompt`,run:n,turn:r,attempt:a,systemPrompt:le}));let ue={systemPrompt:le,messages:t},de=(e.tools??[]).map(e=>e.descriptor);de.length>0&&(ue.tools=de);let fe=yield*ae(Jr({try:async()=>(e.stream??eE)(e.model,li(ue),ce),catch:e=>qE(`model`,`Pi model stream could not start`,e)})),pe=yield*Mr(S(()=>fe[Symbol.asyncIterator]()),e=>Jr({try:()=>(oe.abort(`Mule model stream closed`),new Promise(t=>{let n=setTimeout(t,WE);Promise.resolve(e.return?.()).then(()=>{clearTimeout(n),t()},()=>{clearTimeout(n),t()})})),catch:e=>qE(`model`,`Pi model stream failed`,e)}).pipe(ze)),me=e=>{let a=Date.now();if(ee=Math.max(ee,a-m),m=a,re=!0,(e.type===`text_delta`||e.type===`thinking_delta`||e.type===`toolcall_delta`)&&(te+=ne.encode(e.delta).byteLength,te>f))return y(ie(`output limit exceeded`));switch(`partial`in e&&(s=e.partial),e.type){case`start`:return t.push(e.partial),c.started=!0,i({type:`message_start`,run:n,turn:r,message:o,value:e.partial});case`text_start`:case`text_delta`:case`text_end`:case`thinking_start`:case`thinking_delta`:case`thinking_end`:case`toolcall_start`:case`toolcall_delta`:case`toolcall_end`:return c.started&&(t[t.length-1]=e.partial),i({type:`message_update`,run:n,turn:r,message:o,value:e.partial,event:e});case`done`:return c.terminal=e.message,ft;case`error`:return c.terminal=e.error,ft}},he=()=>ae(oD(pe,oe)),h=yield*he();for(;!h.done;)yield*me(h.value),h=yield*he();let ge=c.terminal??(yield*ae(Jr({try:()=>fe.result(),catch:e=>qE(`model`,`Pi model stream did not settle`,e)})));return c.started?t[t.length-1]=ge:(t.push(ge),yield*i({type:`message_start`,run:n,turn:r,message:o,value:ge})),yield*i({type:`message_end`,run:n,turn:r,message:o,value:ge}),{identity:o,message:ge}}).pipe(un(l=>{if(l.cause!==GE)return y(l);let u={role:`assistant`,content:s?.content??[],api:e.model.api,provider:e.model.provider,model:e.model.id,usage:s?.usage??{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:`error`,timestamp:Date.now(),errorMessage:e.retry?.enabled&&a>e.retry.maxRetries?`The model failed ${String(a)} times on this conversation: ${l.message}`:l.message};return b(function*(){return c.started?t[t.length-1]=u:(t.push(u),yield*i({type:`message_start`,run:n,turn:r,message:o,value:u})),yield*i({type:`message_end`,run:n,turn:r,message:o,value:u}),{identity:o,message:u,limitReached:!0}})})))}function lD(e,t,n,r,i){return b(function*(){let a=e.retry===void 0?void 0:{...e.retry};if(a?.enabled&&[a.maxRetries,a.baseDelayMs,a.maxAgentDelayMs??6e4].some(e=>!Number.isSafeInteger(e)||e<0))return yield*y(qE(`model`,`Retry policy requires non-negative safe-integer counts and delays`));let o,s=0,c=0,l=!1,u,d=t=>e.onRetry===void 0?ft:e.onRetry(t),f=(e,t)=>b(function*(){l=!0,yield*d(t===void 0?{type:`retry_finished`,run:n,turn:r,attempt:c,success:e}:{type:`retry_finished`,run:n,turn:r,attempt:c,success:e,finalError:t})});return yield*b(function*(){for(;;){if(o!==void 0){let e=t.indexOf(o.message);e!==-1&&t.splice(e,1)}o=yield*cD(e,t,n,r,i,++s);let l=o.message;if(l.stopReason!==`error`||a===void 0||!a.enabled||c>=a.maxRetries)return c>0&&(yield*f(l.stopReason!==`error`&&l.stopReason!==`aborted`,l.stopReason===`error`?l.errorMessage:void 0)),o;if(!(yield*ai({try:()=>o?.limitReached===!0||e.retryable(l),catch:e=>qE(`model`,`Typed model retry decision failed`,e)})))return c>0&&(yield*f(!1,l.errorMessage)),o;c++,u=l.errorMessage??`Unknown error`;let p=yield*ai({try:()=>e.retryAfterMs?.(l),catch:e=>qE(`model`,`Model retry delay observation failed`,e)}),m=Math.max(dE(a,c),p!==void 0&&Number.isSafeInteger(p)&&p>=0&&p<=6e4?p:0),ee=Math.min(1e3,m/4,Math.max(0,6e4-m)),te=m+Math.floor(Math.random()*ee);yield*d({type:`retry_scheduled`,run:n,turn:r,attempt:c,maxAttempts:a.maxRetries,delayMs:te,errorMessage:u}),yield*Ur(te),yield*d({type:`retry_attempt_started`,run:n,turn:r,attempt:c})}}).pipe(Ee(()=>c===0||l?ft:f(!1,u)))})}var uD=e=>e.stopReason===`aborted`?`cancelled`:e.stopReason===`error`?`failed`:`completed`;function dD(e,t,n,r,i,a){return Yr(e,e=>b(function*(){let o=JE(`message`,i);t.push(e),n.push(e),yield*a({type:`message_start`,run:r,turn:i,message:o,value:e}),yield*a({type:`message_end`,run:r,turn:i,message:o,value:e})})).pipe(rn)}function fD(e,t,n,r,i,a,o){return b(function*(){yield*o({type:`turn_start`,run:r,turn:i}),yield*dD(a,t,n,r,i,o);let s=yield*lD(e,t,r,i,o),c=uD(s.message)!==`completed`,l=s.message.content.filter(e=>e.type===`toolCall`),u=l.length===0||c?{messages:[],terminate:!1}:s.message.stopReason===`length`?{messages:yield*aD(l,r,i,o),terminate:!1}:yield*rD(l,e,r,i,o);t.push(...u.messages),n.push(s.message,...u.messages),yield*o({type:`turn_end`,run:r,turn:i,message:s.message,toolResults:u.messages});let d={message:s.message,toolResults:u.messages,terminate:u.terminate};return s.limitReached&&s.message.errorMessage!==void 0?{...d,modelLimitReason:s.message.errorMessage}:d})}function pD(e,t,n,r,i,a){let o=JE(`turn`,i);return b(function*(){if(uD(t.message)!==`completed`)return{message:t.message,toolResults:[],terminate:!0};let s=yield*Yr(t.tools,n=>b(function*(){if(n.state===`completed`&&n.message!==void 0)return{message:n.message,terminate:n.result.terminate===!0,recorded:!0};let r=QE(e.tools??[],n.call),s;if(t.message.stopReason!==`length`&&(n.state===`pending`||n.state===`started`&&n.replay===`safe`&&r?.replay===`safe`)){let e=yield*eD(r,n.call,i,o,a);s=e.kind===`finalized`?e.value:yield*tD(e,i,o,a)}else s={call:n.call,identity:JE(`tool_call`,o),result:n.state===`completed`?n.result:n.state===`pending`&&t.message.stopReason===`length`?iD(n.call):ZE(`Interrupted by a restart; it may or may not have completed; check before retrying.`)},yield*a({type:`tool_execution_start`,replay:`unsafe`,run:i,turn:o,toolCall:s.identity,call:s.call}),yield*$E(s,i,o,a);return{message:yield*nD(s,i,o,a),terminate:s.result.terminate===!0,recorded:!1}})),c=s.filter(({recorded:e})=>!e).map(({message:e})=>e);return n.push(...c),r.push(...c),{message:t.message,toolResults:s.map(({message:e})=>e),terminate:s.length>0&&s.every(({terminate:e})=>e)}})}function mD(e,t,n,r){return b(function*(){if(e.shouldStopAfterTurn!==void 0&&(yield*e.shouldStopAfterTurn({message:t.message,toolResults:t.toolResults,context:n,newMessages:r})))return{continue:!1,pending:[]};let i=e.getSteeringMessages===void 0?[]:[...yield*e.getSteeringMessages()];if(t.message.content.some(e=>e.type===`toolCall`)&&!t.terminate||i.length>0)return{continue:!0,pending:i};let a=e.getFollowUpMessages===void 0?[]:[...yield*e.getFollowUpMessages()];return{continue:a.length>0,pending:a}})}function hD(e,t,n,r,i,a,o){return b(function*(){yield*a({type:`run_end`,run:e,terminal:t,outcome:i});let s={status:i,run:e,terminal:t,message:n,messages:r};return o===void 0?s:{...s,modelLimitReason:o}})}function gD(e,t=YE){return b(function*(){let n=yield*m_(1),r={started:!1,ended:!1},i=e=>Cn(()=>(e.type===`run_end`&&(r.ended=!0),n.withPermits(1)(t(e)))).pipe(nr(()=>S(()=>{e.type===`run_start`&&(r.started=!0)}))),a=JE(`run`),o=JE(`terminal`,a);return yield*vD(e,i,a,o).pipe(Ae(e=>{let t=_D(e);return!r.started||r.ended||t===void 0?ft:i({type:`run_end`,run:a,terminal:o,outcome:t}).pipe(ze)}))})}function _D(e){if(ta(e))return;if(Bi(e.cause))return`cancelled`;let t=Wi(e.cause);if(!(gn(t)&&t.value.phase===`listener`))return`failed`}function vD(e,t,n,r){return b(function*(){let i=[...e.messages],a=[],o=e.getSteeringMessages===void 0?[]:[...yield*e.getSteeringMessages()],s,c;if(yield*t({type:`run_start`,run:n}),e.resume!==void 0){let s=yield*pD(e,e.resume,i,a,n,t),c=uD(s.message),l=c===`completed`?yield*mD(e,s,i,a):{continue:!1,pending:[]};if(!l.continue&&o.length===0)return yield*hD(n,r,s.message,a,c,t);o.push(...l.pending)}do{let l=yield*fD(e,i,a,n,JE(`turn`,n),o,t);s=l.message;let u=uD(l.message);if(u!==`completed`)return yield*hD(n,r,l.message,a,u,t,l.modelLimitReason);if(e.prepareNextTurn!==void 0&&!l.terminate&&l.message.content.some(e=>e.type===`toolCall`)){let t=yield*e.prepareNextTurn({message:l.message,toolResults:l.toolResults,context:i,newMessages:a});t!==void 0&&i.splice(0,i.length,...t)}let d=yield*mD(e,l,i,a);o=[...d.pending],c=d.continue}while(c);return yield*hD(n,r,s,a,`completed`,t)})}var yD={run:gD},bD=class{#e=new Map;#t;constructor(e=8){this.#t=e}push(e,t){let n=this.#e.get(e)??[];if(n.length>=this.#t)throw new Gx({namespace:`execute`,operation:`images`,cause:{kind:`Unavailable`,message:`Image collector cap reached for this execution (max ${String(this.#t)} images). Process images one at a time or write them to files.`}});let r=`img_${String(n.length)}`;return n.push(Object.freeze({...t})),this.#e.set(e,n),r}drain(e){let t=this.#e.get(e);return t===void 0?[]:(this.#e.delete(e),t)}dispose(e){this.#e.delete(e)}},xD=8192,SD=xD*4,CD=new TextEncoder,wD=()=>new TextDecoder(`utf-8`,{ignoreBOM:!0,fatal:!1}),TD=class e{wake;#e={stdout:{decoder:wD(),pending:new Uint8Array},stderr:{decoder:wD(),pending:new Uint8Array}};#t=wD();#n=Array.from({length:xD},()=>void 0);#r=0;#i=0;#a=0;#o=0;#s=0;#c=0;#l=!1;#u=!1;constructor(e){this.wake=e}static make(){return Og({capacity:1,strategy:`dropping`}).pipe(Se(t=>new e(t)))}write(e,t){if(this.#u||t.length===0)return;let n=this.#e[e];this.#c+=t.length;for(let e=0;e<t.length;e+=SD){let r=t.subarray(e,e+SD),i=n.decoder.decode(r,{stream:!0}),a=new Uint8Array(n.pending.length+r.length);a.set(n.pending),a.set(r,n.pending.length);let o=this.#f(a);n.pending=a.slice(a.length-o),this.#h(i,a.length-o,a)}this.#l=!0,jg(this.wake,void 0)}#d(e,t){let n=this.#t.decode(e.subarray(0,t),{stream:!0});return this.#t.decode(),n}#f(e){for(let t=1;t<=Math.min(3,e.length);t++){let n=e.subarray(e.length-t);if(this.#d(n,n.length).length===0)return t}return 0}#p(){let e=this.#n[this.#r];if(e===void 0)throw Error(`Missing output ring entry`);this.#n[this.#r]=void 0,this.#r=(this.#r+1)%xD,this.#i--,this.#a-=e.textBytes,this.#o-=e.newlines,this.#s+=e.rawBytes}#m(e,t,n){let r=e.raw;if(r===null){this.#p();return}let i=e=>{let i=this.#d(r,e);return CD.encode(i).length>=t&&i.split(`
|
|
19
19
|
`).length-1>=n},a=Math.min(r.length,Math.max(4,t));for(;a<r.length&&!i(a);)a=Math.min(r.length,a*2);let o=0;for(;o<a;){let e=Math.floor((o+a)/2);i(e)?a=e:o=e+1}let s=this.#d(r,o);if(s.length===e.text.length){this.#p();return}let c=o-this.#f(r.subarray(0,o)),l=CD.encode(s).length,u=s.split(`
|
|
20
20
|
`).length-1;e.raw=r.slice(c),e.text=this.#d(e.raw,e.raw.length),e.rawBytes-=c,e.textBytes-=l,e.newlines-=u,this.#a-=l,this.#o-=u,this.#s+=c}#h(e,t,n){if(e.length===0)return;let r={text:e,raw:n,rawBytes:t,textBytes:CD.encode(e).length,newlines:e.split(`
|
|
21
|
-
`).length-1};for(this.#i===xD&&this.#p(),this.#n[(this.#r+this.#i)%xD]=r,this.#i++,this.#a+=r.textBytes,this.#o+=r.newlines;this.#a>xD||this.#o>=200;){let e=this.#n[this.#r];if(e===void 0)throw Error(`Missing output ring entry`);let t=Math.max(0,this.#a-xD),n=Math.max(0,this.#o-199);e.textBytes<=t||e.newlines<n?this.#p():this.#m(e,t,n)}}snapshot(){let e=``;for(let t=0;t<this.#i;t++){let n=this.#n[(this.#r+t)%xD];if(n===void 0)throw Error(`Missing output ring entry`);e+=n.text}return{tail:e,droppedBytes:this.#s,totalBytes:this.#c}}#g(){if(!this.#l)return;this.#l=!1;let{tail:e,...t}=this.snapshot();return{type:`update`,result:{isError:!1,content:[{type:`text`,text:e}],data:t}}}finish(){if(!this.#u){this.#u=!0;for(let e of[this.#e.stdout,this.#e.stderr]){let t=e.decoder.decode();this.#h(t,e.pending.length,null),e.pending=new Uint8Array,t.length>0&&(this.#l=!0)}return this.#g()}}get updates(){return kv(this.wake).pipe(Nv(()=>Ur(`100 millis`).pipe(Se(()=>this.#u?void 0:this.#g()))),Bv(e=>e!==void 0))}dispose(){this.#u=!0,this.#n.fill(void 0),this.#r=this.#i=this.#a=this.#o=0,this.#c=this.#s=0,this.#l=!1;for(let e of[this.#e.stdout,this.#e.stderr])e.decoder.decode(),e.pending=new Uint8Array}},ED=N({code:j}),DD='Inside execute, call forage.search, forage.list or forage.describe to discover operations and inspect their inputs. forage is available only there, not as a separate tool. Run async JavaScript in the sandbox. Each call is a fresh sandbox, not a REPL: nothing survives between calls, so redefine helpers or persist state to a file. Never shadow injected module names with local bindings. Find operations with await forage.search({ query }) using one short keyword such as read or shell, or page them all with forage.list({limit:50}), optionally by namespace, until nextCursor is null. Inspect input with await forage.describe({ path }) before calling; describe known paths directly. Call an operation as await env.<path>({ ... }) with the exact dotted path, for example await env.computers.local.exec({ command: "pwd" }); a bare computers.local.exec is not defined. Put multiline shell commands in a template literal. Code is JavaScript first, so double each backslash the shell needs (`\\\\(` passes `\\(`; `\\(` becomes `(`). For file edits, prefer Files operations when available. Explicitly return the final value. Before treating a shell or process result as success, check status, exitCode and stderr.';function OD(e,t,n,r){let i={module:e.grantKey,operation:e.name,access:e.operation.access,confirm:e.operation.confirm};return async a=>await Uw(n,{sessionId:r},i,a,t.signal)??await e.operation.invoke(a,t)}function kD(e,t,n,r){let i=0,a=new Map;for(let o of e){let e=o.namespace,s=o.name,c=a.get(e)??new Map;c.set(s,e=>OD(o,Object.freeze({...t,operationOrdinal:i++}),n,r)(e)),a.set(e,c)}return Object.freeze(Object.fromEntries([...a].map(([e,t])=>[e,Object.freeze(Object.fromEntries(t))])))}function AD(e,t){let n=e.safeParse(t);if(!n.success)throw new Nx(n.error.issues);return n.data}function jD(e){return Object.freeze({list:t=>Promise.resolve().then(()=>e.list(AD(gb,t))),describe:t=>Promise.resolve().then(()=>e.describe(AD(hb,t))),search:t=>Promise.resolve().then(()=>e.search(AD(mb,t)))})}function MD(e,t,n,r,i){return Object.freeze({...kD(e,n,r,i),forage:jD(t)})}function ND(e,t,n,r,i,a,o,s){let c=n.execution??IT(void 0),l=new bD,u=(u,d,f,p,m)=>KT({executionId:u,toolCallId:p,output:m,images:Object.freeze({push:e=>l.push(u,e)}),code:d,callerSignal:f,policy:c,sandbox:n,backingWork:r,createBindings:n=>MD(e,t,Object.freeze({...n,toolCallCode:d}),s,o),modules:i,namespacePaths:a,sessionId:o}),d=(e,t)=>Cn(()=>{let n=Zh();return u(n,e,t).pipe(Qn(S(()=>{l.dispose(n)})))}),f=(e,t,n)=>Cn(()=>{let r=Zh(),i=()=>l.drain(r);return u(r,e,void 0,t,n).pipe(vt({onSuccess:e=>v(PD({text:e.text,isError:!1},i())),onFailure:e=>{let t=i();return e instanceof Ux&&t.length>0?v(PD({text:Jx(e),isError:!0},t)):y(FD(e))}}),Qn(S(()=>{l.dispose(r)})))}),p={replay:`unsafe`,descriptor:{name:`execute`,description:DD,parameters:ME({code:LE()},{additionalProperties:!1})},prepare:e=>Np(ED)(e.arguments).pipe(Se(({code:t})=>({execute:()=>jv(b(function*(){let n=yield*TD.make();yield*Sr(()=>S(()=>{n.dispose()}));let r=yield*Vn(f(t,e.id,{write:(e,t)=>{n.write(e,t)}}),{startImmediately:!0});return zv(n.updates,vv(a_(r)).pipe(Fv(e=>{let t=n.finish();return Iv(Dv(t===void 0?[]:[t]),vv(e))})),{haltStrategy:`right`}).pipe(Wv(e=>e.type===`result`))}))})),at(()=>({message:`Invalid execute arguments`})))};return Object.freeze({effectTool:p,execute:d})}function PD(e,t){let n=t.map(e=>({type:`image`,data:e.data,mimeType:e.mimeType})),r=[{type:`text`,text:e.text},...n];return t.length===0?{type:`result`,result:{content:r,isError:e.isError}}:{type:`result`,result:{content:r,data:{images:t.map(e=>({bytes:e.bytes,mimeType:e.mimeType,path:e.path}))},isError:e.isError}}}function FD(e){let t={_tag:`MuleError`,phase:`tool`,message:Zx(e)?Jx(e):e.message};return e instanceof Rx?{...t,cause:e}:t}function ID(e,t){return e<t?-1:+(e>t)}var LD=128,RD=_(()=>x().min(1).max(160)),zD=_(()=>zr({version:x().min(1).max(160),modules:Nt(Gr())})),BD=1e3;function VD(e){if(e.length>LD)throw new G(`Capability source count exceeds bound`);let t=[...e].sort((e,t)=>ID(e.id,t.id)),n=new Set;for(let e of t){if(!RD.safeParse(e.id).success)throw new G(`Capability source id must be non-empty and bounded`);if(n.has(e.id))throw new G(`Duplicate capability source id: ${e.id}`);n.add(e.id)}return t}function HD(e){if(e>BD)throw new G(`Candidate module count exceeds bound`)}function UD(e,t){let n=zD.safeParse(e);if(!n.success)throw new G(`Capability source snapshot must have a non-empty bounded version`);HD(t+n.data.modules.length)}function WD(e,t,n,r,i){return ti(a=>b(function*(){let o=t=>Jr({try:()=>t.release(),catch:()=>new Mx(e.id,`release`)}).pipe(un(e=>S(()=>{n.push(e)}))),s=yield*ai({try:()=>{let t=new AbortController;return{controller:t,outcome:e.acquire(i===void 0?{signal:t.signal,invalidate:r}:{signal:t.signal,invalidate:r,session:i}).then(e=>Xi(e),()=>Qi(new Mx(e.id,`acquire`)))}},catch:()=>new Mx(e.id,`acquire`)});yield*ya(t,jt(()=>s.outcome).pipe(C(e=>ta(e)?o(e.value):ft)));let c=yield*a(jt(()=>s.outcome)).pipe(Ee(()=>S(()=>{s.controller.abort()})));return na(c)?yield*Ut(c.cause):c.value}))}function GD(e){return b(function*(){let t=yield*ai({try:()=>VD(e.sources),catch:e=>e instanceof G?e:new G(`Capability sources are invalid`)});yield*ai({try:()=>{HD(e.modules.length)},catch:e=>e instanceof G?e:new G(`Static capability modules are invalid`)});let n=yield*ha(),r=[],i=!1,a=[...e.modules],o=[];return yield*b(function*(){for(let s of t){let t=yield*WD(s,n,r,()=>{i=!0},e.session);yield*ai({try:()=>{UD(t.snapshot,a.length)},catch:e=>e instanceof G?e:new G(`Capability source snapshot is invalid`)}),a.push(...t.snapshot.modules),o.push({id:s.id,version:t.snapshot.version})}let s=e.precompiled??(yield*ai({try:()=>ET(a,o),catch:e=>e instanceof G?e:new G(`Capability compilation failed`)})),c=e.backingWork.createGroup(),l=ND(s.operations,s.catalog,e.sandbox,c,s.moduleAliases,s.namespacePaths,e.session?.sessionId??null,e.access),u=!1;return Object.freeze({compiled:s,executeDoor:l,isStale:()=>i,close:()=>b(function*(){u||(u=!0,yield*c.awaitIdle,yield*Sa(n,ea));let e=r[0];e!==void 0&&(yield*y(e))})})}).pipe(Ae(e=>ta(e)?ft:Sa(n,e)))})}var KD=2;function qD(e){return b(function*(){for(let t=0;t<KD;t+=1){let t=yield*GD(e);if(!t.isStale())return t;yield*t.close()}return yield*y(new Mx(void 0,`stale`))})}function JD(e,t,n){return ti(r=>r(e.take(1)).pipe(C(()=>S(t).pipe(Qn(e.release(1)))),C(n)))}function YD(e,t){return nn(e.candidate.close().pipe(vt({onFailure:t=>da(e.settled,t).pipe(g(y(t))),onSuccess:()=>fa(e.settled,void 0).pipe(g(S(()=>{t.delete(e)})))})))}function XD(e,t){return e.runCleanup?YD(e.installed,t):la(e.installed.settled)}function ZD(e,t){return Mn(e.map(e=>XD(e,t).pipe(Dn)),{concurrency:`unbounded`}).pipe(C(e=>{let t=e.find(na);return t===void 0?ft:Ut(t.cause)}))}function QD(e){return b(function*(){let t=yield*m_(1),n=yield*ai({try:()=>IT(e.execution),catch:e=>e instanceof G?e:new G(`Execution policy is invalid`)}),r=yield*LT(n.capacity),i=Object.freeze({execute:e.sandbox.execute,adapter:e.sandbox.adapter,buildSha:e.sandbox.buildSha,onFailure:e.onSandboxFailure,execution:n}),a=e.modules.length===0&&e.sources.length>0?void 0:yield*ai({try:()=>ET(e.modules),catch:e=>e instanceof G?e:new G(`Capability compilation failed`)}),o=yield*ai({try:()=>Object.freeze(e.tools.map(t=>Kw(t,e.access,{sessionId:e.session?.sessionId??null}))),catch:e=>e instanceof G?e:new G(`Direct tool labels are invalid`)}),s,c=new Set,l=!1;if(e.sources.length===0&&a!==void 0){let t={candidate:yield*qD({...e,sandbox:i,backingWork:r,precompiled:a}),settled:yield*ca(),leases:0,retired:!1,closing:!1};s=t,c.add(t)}let u=()=>JD(t,()=>(l=!0,[...c].map(e=>{e.retired=!0;let t=e.leases===0&&!e.closing;return t&&(e.closing=!0),{installed:e,runCleanup:t}})),e=>ZD(e,c));return yield*Sr(()=>u().pipe(It)),Object.freeze({acquire:()=>t.withPermits(1)(b(function*(){if(l)return yield*y(new jx);if(s===void 0||s.candidate.isStale()){let t=yield*qD({...e,sandbox:i,backingWork:r}),n=s,a={candidate:t,settled:yield*ca(),leases:0,retired:!1,closing:!1};s=a,c.add(a),n!==void 0&&(n.retired=!0,n.leases===0&&!n.closing&&(n.closing=!0,yield*YD(n,c)))}let n=s;n.leases+=1;let a,u=()=>JD(t,()=>{if(a!==void 0)return a?{installed:n,runCleanup:!1}:void 0;if(--n.leases,a=n.retired&&n.leases===0&&!n.closing,a)return n.closing=!0,{installed:n,runCleanup:!0}},e=>e===void 0?ft:XD(e,c));return yield*Sr(()=>u().pipe(It)),Object.freeze({revision:n.candidate.compiled.revision,catalog:n.candidate.compiled.catalog,executeDoor:n.candidate.executeDoor,effectExecuteTool:n.candidate.executeDoor.effectTool,tools:o,release:u})})),close:u})})}function $D(e){return Object.freeze({adapter:e.adapter??`promise`,buildSha:e.buildSha,execute:(t,n)=>nn(Jr({try:()=>e.execute(t,n),catch:Qx}))})}function eO(e){return QD({modules:e.modules??[],sources:e.sources??[],session:e.session,execution:e.execution,sandbox:e.sandbox,onSandboxFailure:e.onSandboxFailure,tools:e.tools??[],access:e.access??{}}).pipe(Se(e=>Object.freeze({acquire:()=>e.acquire().pipe(Se(e=>Object.freeze({revision:e.revision,catalog:e.catalog,executeTool:e.effectExecuteTool,tools:e.tools,release:e.release}))),close:e.close})))}async function tO(e,t){let n=await Dr(e,t);if(ta(n))return n.value;let r=Wi(n.cause);if(gn(r))throw r.value;if(Bi(n.cause))throw t?.signal?.reason instanceof Error?t.signal.reason:new DOMException(`The operation was aborted`,`AbortError`);let i=Hi(n.cause);throw i instanceof Error?i:Error(`Effect failed without an Error cause`)}async function nO(e){let t=await tO(ha()),n=e.onSandboxFailure;try{let r=await tO(QD({modules:e.modules??[],sources:e.sources??[],session:e.session,execution:e.execution,sandbox:$D(e.sandbox),onSandboxFailure:n===void 0?void 0:e=>jt(()=>n(e)),tools:e.tools??[],access:e.access??{}}).pipe(_a(t))),i=async e=>{let t=await tO(ha());try{let n=await tO(r.acquire().pipe(_a(t)),e?.signal===void 0?void 0:{signal:e.signal}),i;return Object.freeze({revision:n.revision,catalog:n.catalog,executeTool:n.effectExecuteTool,tools:n.tools,release:()=>(i??=tO(n.release().pipe(Qn(Sa(t,ea)))),i)})}catch(e){throw await tO(Sa(t,ea)),e}},a;return Object.freeze({acquire:i,close:()=>(a??=tO(r.close().pipe(Qn(Sa(t,ea)))),a)})}catch(e){throw await tO(Sa(t,ea)),e}}var rO=lm(()=>F([Xp,Qp,Mm,j,om(P(rO)),Gp(nm(j,rO))])),iO=j.check(ah(1),H(256)),aO=j.check(ah(1),H(128)),oO=N({kind:A(`sandbox_failure`),ref:iO,executionId:iO,adapter:aO,buildSha:L(aO),tag:I([`SourceInvalid`,`GuestThrew`,`DeadlineExceeded`,`SandboxBusy`,`Cancelled`,`DispatchLost`,`SandboxCrashed`,`BadResponse`,`ResultTooLarge`,`ResultNotJson`,`CapabilityFailed`,`Unknown`]),fields:nm(j,rO),healthAlert:Qp});function sO(e){return nT(e)}function cO(e){return rT(e)}var lO=Object.freeze({module:cO,operation:sO,make:nO,gate:uT,grantAs:lT}),uO=Bh,dO=4096,fO=new TextEncoder,pO=uO.check(z(e=>fO.encode(JSON.stringify(e)).byteLength<=dO)),mO=T(pO);function hO(e,t){if(Wp(e))return ye(T(e)(t));let n=e[`~standard`].validate(t);if(cr(n,`then`))throw new W(`contract`,`invalid`,`Host metadata schema must validate synchronously`);return n.issues===void 0}function gO(e,t){let n=mO(t);if(Ct(n))throw new W(`contract`,`invalid`,`Host metadata is not JSON within 4096 bytes`);if(e!==void 0&&!hO(e.schema,n.success))throw new W(`contract`,`invalid`,`Host metadata does not match the host's schema`);return n.success}function _O(e,t){return JSON.stringify(e)===JSON.stringify(t)}function vO(e,t){Lr(Ze(`shiitake_operation_failed`,Oo(t)).pipe(or({operation:e,errorKind:t instanceof Error?`error`:`non-error`})))}var yO=64,bO=256,xO=new WeakMap;function SO(e,t){for(let n of xO.get(e)??[])if(n.observes(t))return!0;return!1}function CO(e,t){return e===`closed`||t===`closed`?`closed`:e===`reset`||t===`reset`?`reset`:e===`durable`||t===`durable`?`durable`:e===`activity`||t===`activity`?`activity`:`progress`}function wO(e,t){if(e.pendingCount>=bO){e.pendingCount=0,e.pendingReason=void 0,e.reset=!0;return}e.pendingCount+=1,e.pendingReason=e.pendingReason===`durable`||t===`durable`?`durable`:e.pendingReason===`activity`||t===`activity`?`activity`:`progress`}function TO(e,t){if(e.closed||e.reset)return;let n=e.wake;if(n===void 0){wO(e,t);return}e.wake=void 0;try{n(t)}catch(t){vO(`observation-delivery`,t),e.pendingCount=0,e.pendingReason=void 0,e.reset=!0}}function EO(e,t,n=`durable`){let r=xO.get(e);if(r!==void 0)for(let e of r)try{e.publish({kind:`session`,sessionId:t,reason:n})}catch(e){vO(`owner-observation-publish`,e);continue}}function DO(e){let t=xO.get(e);if(t!==void 0)for(let e of t)try{e.publish({kind:`agent-execution`})}catch(e){vO(`owner-execution-change-publish`,e)}}function OO(e){let t=new Map,n=new Set,r=xO.get(e)??new Set,i=!1,a=e=>{if(e.closed)return`closed`;if(e.reset)return e.reset=!1,`reset`;if(e.pendingCount===0)return;e.pendingCount=0;let t=e.pendingReason;return e.pendingReason=void 0,t??`progress`},o=e=>{if(e.closed)return;e.closed=!0,e.pendingCount=0,e.pendingReason=void 0,e.reset=!1;let r=e.wake;e.wake=void 0,n.delete(e);let i=t.get(e.sessionId);if(i?.delete(e),i?.size===0&&t.delete(e.sessionId),r!==void 0)try{r(`closed`)}catch(e){vO(`observation-listener-close`,e)}},s={publish:e=>{if(e.kind===`agent-execution`){for(let e of n)e.queued&&!e.settlementOnly&&TO(e,`activity`);return}let r=e.sessionId===null?n:t.get(e.sessionId);if(r!==void 0)for(let t of r)t.settlementOnly&&e.reason!==`settlement`||TO(t,e.reason===`settlement`?`durable`:e.reason)},observes:e=>[...t.get(e)??[]].some(e=>!e.closed&&!e.settlementOnly)};return r.add(s),xO.set(e,r),Object.freeze({register:(e,r)=>Cn(()=>{if(i)return y(new W(`runtime`,`closed`,`Shiitake is closed`));if(n.size>=yO)return y(new W(`runtime`,`rejected`,`Observation capacity is exhausted`));let s={sessionId:e,settlementOnly:r===`settlement`,closed:!1,pendingCount:0,pendingReason:void 0,queued:!0,reset:!1,wake:void 0},c=t.get(e)??new Set;c.add(s),t.set(e,c),n.add(s);let l=S(()=>a(s)),u=Kn(e=>{let t=a(s);if(t!==void 0){e(v(t));return}let n=t=>{e(v(t))};return s.wake=n,S(()=>{s.wake===n&&(s.wake=void 0)})});return v(Object.freeze({pollSignal:l,awaitSignal:u,close:()=>{o(s)},setQueued:e=>{s.closed||(s.queued=e)}}))}),close:S(()=>{if(!i){i=!0,r.delete(s),r.size===0&&xO.delete(e);for(let e of n)o(e)}})})}var kO=200,AO={onExcessProperty:`error`},jO=new TextEncoder,MO=V.pipe(R(B(0))),NO=j.pipe(R(ah(1)),R(z(e=>jO.encode(e).byteLength<=256)));T(N({limit:O(V.pipe(R(Um({minimum:1,maximum:kO})))),after:O(j)}),AO);var PO=U(im([MO,NO]));T(PO),Up(PO),T(N({session_id:NO,last_activity_at:MO,state:I([`needs_you`,`running`,`errored`,`done`]),bytes:V.pipe(R(B(0)))}),AO);var FO=E(N({extension_id:j,value_json:j})),IO=E(U($v)),LO=E(ey),RO=Up(U($v));function zO(e){e.sql.exec(`CREATE TABLE IF NOT EXISTS session_attention_grants (
|
|
21
|
+
`).length-1};for(this.#i===xD&&this.#p(),this.#n[(this.#r+this.#i)%xD]=r,this.#i++,this.#a+=r.textBytes,this.#o+=r.newlines;this.#a>xD||this.#o>=200;){let e=this.#n[this.#r];if(e===void 0)throw Error(`Missing output ring entry`);let t=Math.max(0,this.#a-xD),n=Math.max(0,this.#o-199);e.textBytes<=t||e.newlines<n?this.#p():this.#m(e,t,n)}}snapshot(){let e=``;for(let t=0;t<this.#i;t++){let n=this.#n[(this.#r+t)%xD];if(n===void 0)throw Error(`Missing output ring entry`);e+=n.text}return{tail:e,droppedBytes:this.#s,totalBytes:this.#c}}#g(){if(!this.#l)return;this.#l=!1;let{tail:e,...t}=this.snapshot();return{type:`update`,result:{isError:!1,content:[{type:`text`,text:e}],data:t}}}finish(){if(!this.#u){this.#u=!0;for(let e of[this.#e.stdout,this.#e.stderr]){let t=e.decoder.decode();this.#h(t,e.pending.length,null),e.pending=new Uint8Array,t.length>0&&(this.#l=!0)}return this.#g()}}get updates(){return kv(this.wake).pipe(Nv(()=>Ur(`100 millis`).pipe(Se(()=>this.#u?void 0:this.#g()))),Bv(e=>e!==void 0))}dispose(){this.#u=!0,this.#n.fill(void 0),this.#r=this.#i=this.#a=this.#o=0,this.#c=this.#s=0,this.#l=!1;for(let e of[this.#e.stdout,this.#e.stderr])e.decoder.decode(),e.pending=new Uint8Array}},ED=N({code:j}),DD='Inside execute, call forage.search, forage.list or forage.describe to discover operations and inspect their inputs. forage is available only there, not as a separate tool. Run async JavaScript in the sandbox. Each call is a fresh sandbox, not a REPL: nothing survives between calls, so redefine helpers or persist state to a file. Never shadow injected module names with local bindings. Find operations with await forage.search({ query }) using one short keyword such as read or shell, or page them all with forage.list({limit:50}), optionally by namespace, until nextCursor is null. Inspect input with await forage.describe({ path }) before calling; describe known paths directly. Call an operation as await env.<path>({ ... }) with the exact dotted path, for example await env.computers.local.exec({ command: "pwd" }); a bare computers.local.exec is not defined. Put multiline shell commands in a template literal. Code is JavaScript first, so double each backslash the shell needs (`\\\\(` passes `\\(`; `\\(` becomes `(`). For file edits, prefer Files operations when available. Explicitly return the final value. Before treating a shell or process result as success, check status, exitCode and stderr.';function OD(e,t,n,r){let i={module:e.grantKey,operation:e.name,access:e.operation.access,confirm:e.operation.confirm};return async a=>await Uw(n,{sessionId:r},i,a,t.signal)??await e.operation.invoke(a,t)}function kD(e,t,n,r){let i=0,a=new Map;for(let o of e){let e=o.namespace,s=o.name,c=a.get(e)??new Map;c.set(s,e=>OD(o,Object.freeze({...t,operationOrdinal:i++}),n,r)(e)),a.set(e,c)}return Object.freeze(Object.fromEntries([...a].map(([e,t])=>[e,Object.freeze(Object.fromEntries(t))])))}function AD(e,t){let n=e.safeParse(t);if(!n.success)throw new Nx(n.error.issues);return n.data}function jD(e){return Object.freeze({list:t=>Promise.resolve().then(()=>e.list(AD(gb,t))),describe:t=>Promise.resolve().then(()=>e.describe(AD(hb,t))),search:t=>Promise.resolve().then(()=>e.search(AD(mb,t)))})}function MD(e,t,n,r,i){return Object.freeze({...kD(e,n,r,i),forage:jD(t)})}function ND(e,t,n,r,i,a,o,s){let c=n.execution??IT(void 0),l=new bD,u=(u,d,f,p,m)=>KT({executionId:u,toolCallId:p,output:m,images:Object.freeze({push:e=>l.push(u,e)}),code:d,callerSignal:f,policy:c,sandbox:n,backingWork:r,createBindings:n=>MD(e,t,Object.freeze({...n,toolCallCode:d}),s,o),modules:i,namespacePaths:a,sessionId:o}),d=(e,t)=>Cn(()=>{let n=Zh();return u(n,e,t).pipe(Qn(S(()=>{l.dispose(n)})))}),f=(e,t,n)=>Cn(()=>{let r=Zh(),i=()=>l.drain(r);return u(r,e,void 0,t,n).pipe(vt({onSuccess:e=>v(PD({text:e.text,isError:!1},i())),onFailure:e=>{let t=i();return e instanceof Ux&&t.length>0?v(PD({text:Jx(e),isError:!0},t)):y(FD(e))}}),Qn(S(()=>{l.dispose(r)})))}),p={replay:`unsafe`,descriptor:{name:`execute`,description:DD,parameters:ME({code:LE()},{additionalProperties:!1})},prepare:e=>Np(ED)(e.arguments).pipe(Se(({code:t})=>({execute:()=>jv(b(function*(){let n=yield*TD.make();yield*Sr(()=>S(()=>{n.dispose()}));let r=yield*Vn(f(t,e.id,{write:(e,t)=>{n.write(e,t)}}),{startImmediately:!0});return zv(n.updates,vv(a_(r)).pipe(Fv(e=>{let t=n.finish();return Iv(Dv(t===void 0?[]:[t]),vv(e))})),{haltStrategy:`right`}).pipe(Wv(e=>e.type===`result`))}))})),at(()=>({message:`Invalid execute arguments`})))};return Object.freeze({effectTool:p,execute:d})}function PD(e,t){let n=t.map(e=>({type:`image`,data:e.data,mimeType:e.mimeType})),r=[{type:`text`,text:e.text},...n];return t.length===0?{type:`result`,result:{content:r,isError:e.isError}}:{type:`result`,result:{content:r,data:{images:t.map(e=>({bytes:e.bytes,mimeType:e.mimeType,path:e.path}))},isError:e.isError}}}function FD(e){let t={_tag:`MuleError`,phase:`tool`,message:Zx(e)?Jx(e):e.message};return e instanceof Rx?{...t,cause:e}:t}function ID(e,t){return e<t?-1:+(e>t)}var LD=128,RD=_(()=>x().min(1).max(160)),zD=_(()=>zr({version:x().min(1).max(160),modules:Nt(Gr())})),BD=1e3;function VD(e){if(e.length>LD)throw new G(`Capability source count exceeds bound`);let t=[...e].sort((e,t)=>ID(e.id,t.id)),n=new Set;for(let e of t){if(!RD.safeParse(e.id).success)throw new G(`Capability source id must be non-empty and bounded`);if(n.has(e.id))throw new G(`Duplicate capability source id: ${e.id}`);n.add(e.id)}return t}function HD(e){if(e>BD)throw new G(`Candidate module count exceeds bound`)}function UD(e,t){let n=zD.safeParse(e);if(!n.success)throw new G(`Capability source snapshot must have a non-empty bounded version`);HD(t+n.data.modules.length)}function WD(e,t,n,r,i){return ti(a=>b(function*(){let o=t=>Jr({try:()=>t.release(),catch:()=>new Mx(e.id,`release`)}).pipe(un(e=>S(()=>{n.push(e)}))),s=yield*ai({try:()=>{let t=new AbortController;return{controller:t,outcome:e.acquire(i===void 0?{signal:t.signal,invalidate:r}:{signal:t.signal,invalidate:r,session:i}).then(e=>Xi(e),()=>Qi(new Mx(e.id,`acquire`)))}},catch:()=>new Mx(e.id,`acquire`)});yield*ya(t,jt(()=>s.outcome).pipe(C(e=>ta(e)?o(e.value):ft)));let c=yield*a(jt(()=>s.outcome)).pipe(Ee(()=>S(()=>{s.controller.abort()})));return na(c)?yield*Ut(c.cause):c.value}))}function GD(e){return b(function*(){let t=yield*ai({try:()=>VD(e.sources),catch:e=>e instanceof G?e:new G(`Capability sources are invalid`)});yield*ai({try:()=>{HD(e.modules.length)},catch:e=>e instanceof G?e:new G(`Static capability modules are invalid`)});let n=yield*ha(),r=[],i=!1,a=[...e.modules],o=[];return yield*b(function*(){for(let s of t){let t=yield*WD(s,n,r,()=>{i=!0},e.session);yield*ai({try:()=>{UD(t.snapshot,a.length)},catch:e=>e instanceof G?e:new G(`Capability source snapshot is invalid`)}),a.push(...t.snapshot.modules),o.push({id:s.id,version:t.snapshot.version})}let s=e.precompiled??(yield*ai({try:()=>ET(a,o),catch:e=>e instanceof G?e:new G(`Capability compilation failed`)})),c=e.backingWork.createGroup(),l=ND(s.operations,s.catalog,e.sandbox,c,s.moduleAliases,s.namespacePaths,e.session?.sessionId??null,e.access),u=!1;return Object.freeze({compiled:s,executeDoor:l,isStale:()=>i,close:()=>b(function*(){u||(u=!0,yield*c.awaitIdle,yield*Sa(n,ea));let e=r[0];e!==void 0&&(yield*y(e))})})}).pipe(Ae(e=>ta(e)?ft:Sa(n,e)))})}var KD=2;function qD(e){return b(function*(){for(let t=0;t<KD;t+=1){let t=yield*GD(e);if(!t.isStale())return t;yield*t.close()}return yield*y(new Mx(void 0,`stale`))})}function JD(e,t,n){return ti(r=>r(e.take(1)).pipe(C(()=>S(t).pipe(Qn(e.release(1)))),C(n)))}function YD(e,t){return nn(e.candidate.close().pipe(vt({onFailure:t=>da(e.settled,t).pipe(g(y(t))),onSuccess:()=>fa(e.settled,void 0).pipe(g(S(()=>{t.delete(e)})))})))}function XD(e,t){return e.runCleanup?YD(e.installed,t):la(e.installed.settled)}function ZD(e,t){return Mn(e.map(e=>XD(e,t).pipe(Dn)),{concurrency:`unbounded`}).pipe(C(e=>{let t=e.find(na);return t===void 0?ft:Ut(t.cause)}))}function QD(e){return b(function*(){let t=yield*m_(1),n=yield*ai({try:()=>IT(e.execution),catch:e=>e instanceof G?e:new G(`Execution policy is invalid`)}),r=yield*LT(n.capacity),i=Object.freeze({execute:e.sandbox.execute,adapter:e.sandbox.adapter,buildSha:e.sandbox.buildSha,onFailure:e.onSandboxFailure,execution:n}),a=e.modules.length===0&&e.sources.length>0?void 0:yield*ai({try:()=>ET(e.modules),catch:e=>e instanceof G?e:new G(`Capability compilation failed`)}),o=yield*ai({try:()=>Object.freeze(e.tools.map(t=>Kw(t,e.access,{sessionId:e.session?.sessionId??null}))),catch:e=>e instanceof G?e:new G(`Direct tool labels are invalid`)}),s,c=new Set,l=!1;if(e.sources.length===0&&a!==void 0){let t={candidate:yield*qD({...e,sandbox:i,backingWork:r,precompiled:a}),settled:yield*ca(),leases:0,retired:!1,closing:!1};s=t,c.add(t)}let u=()=>JD(t,()=>(l=!0,[...c].map(e=>{e.retired=!0;let t=e.leases===0&&!e.closing;return t&&(e.closing=!0),{installed:e,runCleanup:t}})),e=>ZD(e,c));return yield*Sr(()=>u().pipe(It)),Object.freeze({acquire:()=>t.withPermits(1)(b(function*(){if(l)return yield*y(new jx);if(s===void 0||s.candidate.isStale()){let t=yield*qD({...e,sandbox:i,backingWork:r}),n=s,a={candidate:t,settled:yield*ca(),leases:0,retired:!1,closing:!1};s=a,c.add(a),n!==void 0&&(n.retired=!0,n.leases===0&&!n.closing&&(n.closing=!0,yield*YD(n,c)))}let n=s;n.leases+=1;let a,u=()=>JD(t,()=>{if(a!==void 0)return a?{installed:n,runCleanup:!1}:void 0;if(--n.leases,a=n.retired&&n.leases===0&&!n.closing,a)return n.closing=!0,{installed:n,runCleanup:!0}},e=>e===void 0?ft:XD(e,c));return yield*Sr(()=>u().pipe(It)),Object.freeze({revision:n.candidate.compiled.revision,catalog:n.candidate.compiled.catalog,executeDoor:n.candidate.executeDoor,effectExecuteTool:n.candidate.executeDoor.effectTool,tools:o,release:u})})),close:u})})}function $D(e){return Object.freeze({adapter:e.adapter??`promise`,buildSha:e.buildSha,execute:(t,n)=>nn(Jr({try:()=>e.execute(t,n),catch:Qx}))})}function eO(e){return QD({modules:e.modules??[],sources:e.sources??[],session:e.session,execution:e.execution,sandbox:e.sandbox,onSandboxFailure:e.onSandboxFailure,tools:e.tools??[],access:e.access??{}}).pipe(Se(e=>Object.freeze({acquire:()=>e.acquire().pipe(Se(e=>Object.freeze({revision:e.revision,catalog:e.catalog,executeTool:e.effectExecuteTool,tools:e.tools,release:e.release}))),close:e.close})))}async function tO(e,t){let n=await Dr(e,t);if(ta(n))return n.value;let r=Wi(n.cause);if(gn(r))throw r.value;if(Bi(n.cause))throw t?.signal?.reason instanceof Error?t.signal.reason:new DOMException(`The operation was aborted`,`AbortError`);let i=Hi(n.cause);throw i instanceof Error?i:Error(`Effect failed without an Error cause`)}async function nO(e){let t=await tO(ha()),n=e.onSandboxFailure;try{let r=await tO(QD({modules:e.modules??[],sources:e.sources??[],session:e.session,execution:e.execution,sandbox:$D(e.sandbox),onSandboxFailure:n===void 0?void 0:e=>jt(()=>n(e)),tools:e.tools??[],access:e.access??{}}).pipe(_a(t))),i=async e=>{let t=await tO(ha());try{let n=await tO(r.acquire().pipe(_a(t)),e?.signal===void 0?void 0:{signal:e.signal}),i;return Object.freeze({revision:n.revision,catalog:n.catalog,executeTool:n.effectExecuteTool,tools:n.tools,release:()=>(i??=tO(n.release().pipe(Qn(Sa(t,ea)))),i)})}catch(e){throw await tO(Sa(t,ea)),e}},a;return Object.freeze({acquire:i,close:()=>(a??=tO(r.close().pipe(Qn(Sa(t,ea)))),a)})}catch(e){throw await tO(Sa(t,ea)),e}}var rO=lm(()=>F([Xp,Qp,Mm,j,om(P(rO)),Gp(nm(j,rO))])),iO=j.check(ah(1),H(256)),aO=j.check(ah(1),H(128)),oO=N({kind:A(`sandbox_failure`),ref:iO,executionId:iO,adapter:aO,buildSha:L(aO),tag:I([`SourceInvalid`,`GuestThrew`,`DeadlineExceeded`,`SandboxBusy`,`Cancelled`,`DispatchLost`,`SandboxCrashed`,`BadResponse`,`ResultTooLarge`,`ResultNotJson`,`CapabilityFailed`,`Unknown`]),fields:nm(j,rO),healthAlert:Qp});function sO(e){return nT(e)}function cO(e){return rT(e)}var lO=Object.freeze({module:cO,operation:sO,make:nO,gate:uT,grantAs:lT}),uO=Bh,dO=4096,fO=new TextEncoder,pO=uO.check(z(e=>fO.encode(JSON.stringify(e)).byteLength<=dO)),mO=T(pO);function hO(e,t){if(Wp(e))return ye(T(e)(t));let n=e[`~standard`].validate(t);if(cr(n,`then`))throw new W(`contract`,`invalid`,`Host metadata schema must validate synchronously`);return n.issues===void 0}function gO(e,t){let n=mO(t);if(Ct(n))throw new W(`contract`,`invalid`,`Host metadata is not JSON within 4096 bytes`);if(e!==void 0&&!hO(e.schema,n.success))throw new W(`contract`,`invalid`,`Host metadata does not match the host's schema`);return n.success}function _O(e,t){return JSON.stringify(e)===JSON.stringify(t)}function vO(e,t){Lr(Ze(`shiitake_operation_failed`,Oo(t)).pipe(or({operation:e,errorKind:t instanceof Error?`error`:`non-error`})))}var yO=64,bO=256,xO=new WeakMap;function SO(e,t){for(let n of xO.get(e)??[])if(n.observes(t))return!0;return!1}function CO(e,t){return e===`closed`||t===`closed`?`closed`:e===`reset`||t===`reset`?`reset`:e===`durable`||t===`durable`?`durable`:e===`activity`||t===`activity`?`activity`:`progress`}function wO(e,t){if(e.pendingCount>=bO){e.pendingCount=0,e.pendingReason=void 0,e.reset=!0;return}e.pendingCount+=1,e.pendingReason=e.pendingReason===`durable`||t===`durable`?`durable`:e.pendingReason===`activity`||t===`activity`?`activity`:`progress`}function TO(e,t){if(e.closed||e.reset)return;let n=e.wake;if(n===void 0){wO(e,t);return}e.wake=void 0;try{n(t)}catch(t){vO(`observation-delivery`,t),e.pendingCount=0,e.pendingReason=void 0,e.reset=!0}}function EO(e,t){for(let n of e)n.queued&&!n.settlementOnly&&n.sessionId!==t&&TO(n,`activity`)}function DO(e,t,n=`durable`){let r=xO.get(e);if(r!==void 0)for(let e of r)try{e.publish({kind:`session`,sessionId:t,reason:n})}catch(e){vO(`owner-observation-publish`,e);continue}}function OO(e){let t=xO.get(e);if(t!==void 0)for(let e of t)try{e.publish({kind:`agent-execution`})}catch(e){vO(`owner-execution-change-publish`,e)}}function kO(e){let t=new Map,n=new Set,r=xO.get(e)??new Set,i=!1,a=e=>{if(e.closed)return`closed`;if(e.reset)return e.reset=!1,`reset`;if(e.pendingCount===0)return;e.pendingCount=0;let t=e.pendingReason;return e.pendingReason=void 0,t??`progress`},o=e=>{if(e.closed)return;e.closed=!0,e.pendingCount=0,e.pendingReason=void 0,e.reset=!1;let r=e.wake;e.wake=void 0,n.delete(e);let i=t.get(e.sessionId);if(i?.delete(e),i?.size===0&&t.delete(e.sessionId),r!==void 0)try{r(`closed`)}catch(e){vO(`observation-listener-close`,e)}},s={publish:e=>{if(e.kind===`agent-execution`){EO(n,null);return}e.sessionId!==null&&e.reason!==`settlement`&&EO(n,e.sessionId);let r=e.sessionId===null?n:t.get(e.sessionId);if(r!==void 0)for(let t of r)t.settlementOnly&&e.reason!==`settlement`||TO(t,e.reason===`settlement`?`durable`:e.reason)},observes:e=>[...t.get(e)??[]].some(e=>!e.closed&&!e.settlementOnly)};return r.add(s),xO.set(e,r),Object.freeze({register:(e,r)=>Cn(()=>{if(i)return y(new W(`runtime`,`closed`,`Shiitake is closed`));if(n.size>=yO)return y(new W(`runtime`,`rejected`,`Observation capacity is exhausted`));let s={sessionId:e,settlementOnly:r===`settlement`,closed:!1,pendingCount:0,pendingReason:void 0,queued:!0,reset:!1,wake:void 0},c=t.get(e)??new Set;c.add(s),t.set(e,c),n.add(s);let l=S(()=>a(s)),u=Kn(e=>{let t=a(s);if(t!==void 0){e(v(t));return}let n=t=>{e(v(t))};return s.wake=n,S(()=>{s.wake===n&&(s.wake=void 0)})});return v(Object.freeze({pollSignal:l,awaitSignal:u,close:()=>{o(s)},setQueued:e=>{s.closed||(s.queued=e)}}))}),close:S(()=>{if(!i){i=!0,r.delete(s),r.size===0&&xO.delete(e);for(let e of n)o(e)}})})}var AO=200,jO={onExcessProperty:`error`},MO=new TextEncoder,NO=V.pipe(R(B(0))),PO=j.pipe(R(ah(1)),R(z(e=>MO.encode(e).byteLength<=256)));T(N({limit:O(V.pipe(R(Um({minimum:1,maximum:AO})))),after:O(j)}),jO);var FO=U(im([NO,PO]));T(FO),Up(FO),T(N({session_id:PO,last_activity_at:NO,state:I([`needs_you`,`running`,`errored`,`done`]),bytes:V.pipe(R(B(0)))}),jO);var IO=E(N({extension_id:j,value_json:j})),LO=E(U($v)),RO=E(ey),zO=Up(U($v));function BO(e){e.sql.exec(`CREATE TABLE IF NOT EXISTS session_attention_grants (
|
|
22
22
|
extension_id TEXT PRIMARY KEY
|
|
23
23
|
)`),e.sql.exec(`CREATE TABLE IF NOT EXISTS session_attention (
|
|
24
24
|
session_id TEXT NOT NULL REFERENCES sessions(id),
|
|
@@ -26,22 +26,22 @@ Defaulting to 2020, but this will stop working in the future.`)),t.ecmaVersion=1
|
|
|
26
26
|
id TEXT NOT NULL,
|
|
27
27
|
value_json TEXT NOT NULL,
|
|
28
28
|
PRIMARY KEY (session_id, extension_id, id)
|
|
29
|
-
)`),e.sql.exec(`CREATE INDEX IF NOT EXISTS idx_session_attention_owner ON session_attention(extension_id, session_id)`)}function
|
|
30
|
-
ON CONFLICT (session_id, extension_id, id) DO UPDATE SET value_json = excluded.value_json`,t,n,r.id,
|
|
29
|
+
)`),e.sql.exec(`CREATE INDEX IF NOT EXISTS idx_session_attention_owner ON session_attention(extension_id, session_id)`)}function VO(e,t){return e.sql.exec(`SELECT a.extension_id, a.value_json FROM session_attention a JOIN shiitake_extension_status s ON s.extension_id = a.extension_id AND s.status = 'running' JOIN session_attention_grants g ON g.extension_id = a.extension_id WHERE a.session_id = ? ORDER BY a.extension_id, a.id LIMIT ?`,t,64).toArray().map(e=>{let t=IO(e);return RO({...LO(t.value_json),extensionId:t.extension_id})})}function HO(e,t){return e.sql.exec(`SELECT 1 FROM session_attention a JOIN shiitake_extension_status s ON s.extension_id = a.extension_id AND s.status = 'running' JOIN session_attention_grants g ON g.extension_id = a.extension_id WHERE a.session_id = ? AND json_extract(a.value_json, '$.inbox') IS NOT 0 LIMIT 1`,t).toArray().length>0}function UO(e,t,n,r){if(E(N({count:V}))(e.sql.exec(`SELECT COUNT(*) AS count FROM session_attention WHERE session_id = ? AND NOT (extension_id = ? AND id = ?)`,t,n,r.id).one()).count>=64)throw new W(`contract`,`invalid`,`Session attention capacity reached`);if(E(N({count:V}))(e.sql.exec(`SELECT COUNT(*) AS count FROM session_attention WHERE extension_id = ? AND NOT (session_id = ? AND id = ?)`,n,t,r.id).one()).count>=4096)throw new W(`contract`,`invalid`,`Extension attention capacity reached`);e.sql.exec(`INSERT INTO session_attention (session_id, extension_id, id, value_json) VALUES (?, ?, ?, ?)
|
|
30
|
+
ON CONFLICT (session_id, extension_id, id) DO UPDATE SET value_json = excluded.value_json`,t,n,r.id,zO(r))}function WO(e,t,n,r){e.sql.exec(`DELETE FROM session_attention WHERE session_id = ? AND extension_id = ? AND id = ?`,t,n,r)}function GO(e,t,n){let r=E(N({session_id:j}));return e.sql.exec(`SELECT DISTINCT session_id FROM session_attention WHERE extension_id = ? AND session_id > ? ORDER BY session_id LIMIT 64`,t,n).toArray().map(e=>r(e).session_id)}function KO(e,t){let n=E(N({extension_id:j})),r=new Set(e.sql.exec(`SELECT extension_id FROM session_attention_grants LIMIT 64`).toArray().map(e=>n(e).extension_id)),i=new Set(t),a=[];for(let t of r)i.has(t)||(e.sql.exec(`DELETE FROM session_attention_grants WHERE extension_id = ?`,t),a.push(t));for(let t of i)r.has(t)||(e.sql.exec(`INSERT INTO session_attention_grants (extension_id) VALUES (?)`,t),a.push(t));return a}var qO=8,JO=E(N({agent_id:j,sender_session_id:j,name:j})),YO=E(Qv);function XO(e){e.sql.exec(`CREATE TABLE IF NOT EXISTS session_work_senders (
|
|
31
31
|
session_id TEXT NOT NULL,
|
|
32
32
|
work_id TEXT NOT NULL,
|
|
33
33
|
agent_id TEXT NOT NULL,
|
|
34
34
|
sender_session_id TEXT NOT NULL,
|
|
35
35
|
name TEXT NOT NULL,
|
|
36
36
|
PRIMARY KEY (session_id, work_id)
|
|
37
|
-
)`)}function
|
|
37
|
+
)`)}function ZO(e,t,n,r){e.sql.exec(`INSERT OR IGNORE INTO session_work_senders
|
|
38
38
|
(session_id, work_id, agent_id, sender_session_id, name)
|
|
39
|
-
VALUES (?, ?, ?, ?, ?)`,t,n,r.agentId,r.sessionId,r.name)}function
|
|
39
|
+
VALUES (?, ?, ?, ?, ?)`,t,n,r.agentId,r.sessionId,r.name)}function QO(e,t,n){let r=e.sql.exec(`SELECT agent_id, sender_session_id, name FROM session_work_senders WHERE session_id = ? AND work_id = ?`,t,n).toArray()[0];if(r===void 0)return;let i=JO(r);return YO({agentId:i.agent_id,sessionId:i.sender_session_id,name:i.name})}function $O(e,t,n){let r=QO(e,t,n);return r===void 0?[]:ek(e,t,[r])}function ek(e,t,n){return VO(e,t).filter(e=>n.some(t=>e.waitingOn?.agentId===t.agentId&&e.waitingOn.sessionId===t.sessionId)).slice(0,qO).map(e=>({itemId:e.id,kind:e.kind,summary:e.summary}))}var tk=N({status:I([`accepted`,`duplicate`]),cursor:V.check(B(0))});F([I([`accepted`,`duplicate`,`refused`]),tk,N({status:I([`accepted`,`duplicate`,`refused`]),receipt:Bh})]),Ni(`PostError`);var nk=j.check(ah(1),H(256));N({postKey:nk}),V.check(B(1),Hm(64)),mg({family:`post`,version:1,kinds:{work:{prefix:`post_work`}}});var rk=N({key:nk,kind:nk,address:Yp,event:Yp});U(F([N({state:A(`pending`),envelope:rk,attempts:V.check(B(0)),nextAttemptAt:M.check(B(0)),deadlineAt:k(M.check(B(0))),jobId:k(nk),delivery:k(rk),nextKey:k(nk)}),N({state:A(`delivered`),receipt:k(Bh),nextKey:k(nk)}),N({state:A(`dead`),envelope:rk,attempts:V.check(B(0)),reason:I([`refused`,`exhausted`,`expired`]),deadlineAt:k(M.check(B(0))),receipt:k(Bh),delivery:k(rk),nextKey:k(nk)})])),N({key:j,value:j}),N({due:L(M.check(B(0)))});var ik=j.check(ah(1),H(256)),ak=262144,ok=j.check(z(e=>new TextEncoder().encode(e).byteLength<=ak,{message:`Mail content must be at most ${String(ak)} UTF-8 bytes`})),sk=N({kind:A(`agent`),agentId:ik,sessionId:ik}),ck=N({kind:A(`agent`),agentId:ik,sessionId:O(ik)}),lk=N({kind:A(`system`),systemId:A(`hub`)}),uk=N({itemId:ik,kind:j.check(ah(1),H(64)),summary:j.check(ah(1),H(200))}),dk=N({commandId:ik,outcome:I([`completed`,`failed`,`interrupted`,`cancelled`,`outcome_unknown`]),diagnostic:O(j.check(ah(1),H(200))),waitingOnYou:O(P(uk).check(ah(1),H(8)))}),fk=I([`recipient_offline`,`recipient_left`]),pk=N({outcome:A(`undeliverable`),reason:fk}),mk=N({outcome:A(`accepted`),commandId:ik});F([dk,pk,mk]);var hk=F([dk,mk,N({outcome:A(`undeliverable`),reason:A(`recipient_left`)})]),gk=`[redacted]`,_k=/\b(bearer|basic)\s+[^\s"',;]+/giu,vk=/\b((?:api[_-]?key|access[_-]?token|refresh[_-]?token|token|secret|password|authorization)["']?\s*[:=]\s*["']?)(?!(?:bearer|basic)\s)[^\s"',;&]+/giu,yk=/[A-Za-z0-9][\w-]{23,}/gu;function bk(e){return e.replace(_k,`$1 ${gk}`).replace(vk,`$1${gk}`).replace(yk,e=>/\d/u.test(e)&&/[A-Za-z]/u.test(e)?gk:e)}function xk(e){let t=bk(e.replace(/[\p{Cc}\p{Zl}\p{Zp}\s]+/gu,` `).trim()).slice(0,200).trimEnd();return t.length===0?void 0:t}var Sk={key:ik,to:ck,replyTo:P(sk),content:ok,createdAt:M.check(B(0)),meta:O(Bh)},Ck=F([N({...Sk,from:sk,reply:O(hk)}),N({...Sk,from:lk,reply:N({outcome:A(`undeliverable`),reason:A(`recipient_offline`)})})]),wk=N({jobId:ik,sessionId:ik,commandFactId:ik,recovery:k(N({maxRecoveries:V.check(B(0))}))}),Tk=N({work:N({sessionId:ik,commandFactId:ik}),mail:k(Ck)}),Ek=N({work:wk,delivery:I([`steer`,`followUp`]),mail:k(Ck)}),Dk=e=>{let t=E(Ek)(e),n={sessionId:t.work.sessionId,commandFactId:t.work.commandFactId},r=t.mail===void 0?{work:n}:{work:n,mail:t.mail},i={jobId:t.work.jobId,queue:t.work.sessionId,lane:`default`,priority:+(t.delivery===`steer`),payload:r,state:`queued`};return t.work.recovery===void 0?i:{...i,recovery:t.work.recovery}},Ok=e=>E(Tk)(e.payload);function kk(e,t,n,r){let i=E(ik)(t),a=E(sk)(e.from),o=E(mk)({outcome:`accepted`,commandId:n});return{key:`${e.key}:accepted`,to:a,from:{...e.to,sessionId:i},replyTo:[],content:`Work accepted.`,createdAt:r,reply:o}}var Ak=E(N({mail_key:j,agent_id:j,reply_to_json:U(P(sk))})),jk=Up(U(P(sk)));function Mk(e){e.sql.exec(`CREATE TABLE IF NOT EXISTS session_delegators (
|
|
40
40
|
session_id TEXT PRIMARY KEY,
|
|
41
41
|
mail_key TEXT NOT NULL,
|
|
42
42
|
agent_id TEXT NOT NULL,
|
|
43
43
|
reply_to_json TEXT NOT NULL
|
|
44
|
-
)`)}function
|
|
44
|
+
)`)}function Nk(e,t,n){n!==void 0&&n.reply===void 0&&n.from.kind===`agent`&&n.replyTo.length!==0&&e.sql.exec(`INSERT OR IGNORE INTO session_delegators (session_id, mail_key, agent_id, reply_to_json) VALUES (?, ?, ?, ?)`,t,n.key,n.to.agentId,jk(n.replyTo))}function Pk(e,t){let[n]=e.sql.exec(`SELECT mail_key, agent_id, reply_to_json FROM session_delegators WHERE session_id = ?`,t).toArray();if(n===void 0)return;let r=Ak(n);return{key:r.mail_key,agentId:r.agent_id,replyTo:r.reply_to_json}}var Fk=new TextEncoder,Ik=new TextDecoder,Lk=/^[A-Za-z0-9_-]+$/u,Rk=N({v:A(1),generation:j.pipe(R(ah(1)),R(H(128)),R(z(e=>Fk.encode(e).byteLength<=128))),sequence:V.pipe(R(Bm(0)),R(Hm(2**53-1)))}),zk={onExcessProperty:`error`},Bk=T(Rk,zk),Vk=T(U(Rk),zk);function Hk(e){let t=Bk({v:1,...e});if(t._tag===`Failure`)return;let n=JSON.stringify(t.success);if(Fk.encode(n).byteLength>384)return;let r=Es(n);return Fk.encode(r).byteLength<=512?r:void 0}function Uk(e){if(Fk.encode(e).byteLength>512||!Lk.test(e))return;let t=Ds(e);if(t._tag===`Failure`||t.success.byteLength>384)return;let n=Ik.decode(t.success),r=Vk(n);if(r._tag===`Failure`)return;let i=JSON.stringify(r.success);if(i===n&&Es(i)===e)return Object.freeze({generation:r.success.generation,sequence:r.success.sequence})}var Wk=j.check(ah(1),H(256)),Gk=F([N({agentId:Wk,sessionId:Wk,...dk.fields}),N({agentId:Wk,sessionId:O(Wk),...pk.fields})]),Kk=`fungi_agent_reply`,qk=RegExp(`<(?=\\s*/?\\s*${Kk})`,`giu`);function Jk(e){return e.replace(qk,`<`)}function Yk(e){return e.replaceAll(`&`,`&`).replaceAll(`"`,`"`).replaceAll(`<`,`<`).replaceAll(`>`,`>`)}function Xk(e){let t=[[`agent_id`,e.agentId]];return e.sessionId!==void 0&&t.push([`session_id`,e.sessionId]),e.outcome!==`undeliverable`&&t.push([`command_id`,e.commandId]),t.push([`outcome`,e.outcome]),e.outcome!==`undeliverable`&&e.diagnostic!==void 0&&t.push([`diagnostic`,e.diagnostic]),e.outcome!==`undeliverable`&&e.waitingOnYou!==void 0&&t.push([`waiting_on_you`,JSON.stringify(e.waitingOnYou)]),e.outcome===`undeliverable`&&t.push([`reason`,e.reason]),`<${Kk} ${t.map(([e,t])=>`${e}="${Yk(t)}"`).join(` `)}>`}function Zk(e,t){let n=Array.isArray(e.content)?e.content.map(e=>e.type===`text`?{...e,text:Jk(e.text)}:e):Jk(e.content);if(t===void 0)return{...e,content:n};let r=Xk(t),i=`</${Kk}>`;return{...e,content:Array.isArray(n)?[{type:`text`,text:r},...n,{type:`text`,text:i}]:`${r}\n${n}\n${i}`}}var Qk={onExcessProperty:`error`},$k=new TextEncoder,eA=e=>j.pipe(R(ah(1)),R(z(t=>$k.encode(t).byteLength<=e))),tA=eA(256),nA=eA(4096),rA=j.pipe(R(wm(/^[0-9a-f]{64}$/u))),iA=lm(()=>F([j,M,Qp,Xp,P(iA),nm(j,iA)])),aA=N({type:A(`text`),text:j,textSignature:O(j)}),oA=N({type:A(`thinking`),thinking:j,thinkingSignature:O(j),redacted:O(Qp)}),sA=N({type:A(`image`),data:j,mimeType:j}),cA=N({type:A(`toolCall`),id:j,name:j,arguments:nm(j,iA),thoughtSignature:O(j),namespace:O(j),argumentsError:O(j)}),lA=N({input:M,output:M,cacheRead:M,cacheWrite:M,cacheWrite1h:O(M),reasoning:O(M),totalTokens:M,cost:N({input:M,output:M,cacheRead:M,cacheWrite:M,total:M})}),uA=N({role:A(`user`),content:F([j,om(P(F([aA,sA])))]),timestamp:M}),dA=N({role:A(`user`),content:j,timestamp:M}),fA=N({name:j,description:j,parameters:nm(j,iA),constrainedSampling:O(F([A(!1),N({type:A(`json_schema`),strict:I([`prefer`,`require`])}),N({type:A(`grammar`),variants:N({openai_lark:O(j),openai_regex:O(j)})})]))}),pA=F([N({role:A(`system`),content:F([j,om(P(aA))]),sections:O(nm(j,F([j,Xp]))),toolsAdded:O(om(P(fA))),toolsRemoved:O(om(P(N({name:j})))),timestamp:M}),uA,N({role:A(`assistant`),content:om(P(F([aA,oA,cA]))),api:j,provider:j,model:j,responseModel:O(j),responseId:O(j),diagnostics:O(om(P(N({type:j,timestamp:M,error:O(N({name:O(j),message:j,stack:O(j),code:O(F([j,M]))})),details:O(nm(j,iA))})))),usage:lA,stopReason:I([`pending`,`stop`,`length`,`toolUse`,`error`,`aborted`,`deferred`]),deferred:O(N({provider:j,modelId:j,api:j,id:j,expiresAt:O(M),pollAfterMs:O(M),data:O(iA)})),errorMessage:O(j),providerError:O(j),rawStopReason:O(j),providerThinkingLevel:O(j),endTurn:O(Qp),timestamp:M,durationMs:O(M)}),N({role:A(`toolResult`),toolCallId:j,toolName:j,content:om(P(F([aA,sA]))),usage:O(lA),isError:Qp,timestamp:M,durationMs:O(M)})]),mA=I([`run`,`turn`,`message`,`tool_call`,`tool_result`,`terminal`]),hA=lm(()=>N({kind:mA,value:tA,parent:k(hA)})),gA=F([N({type:A(`auto_retry_start`),run:hA,attempt:M,maxAttempts:M,delayMs:M,errorMessage:j}),N({type:A(`auto_retry_attempt`),run:hA,attempt:M}),N({type:A(`auto_retry_end`),run:hA,attempt:M,success:Qp,finalError:O(j)})]),_A=N({core:rA,extensions:P(im([tA,j.pipe(R(wm(/^sha256:[0-9a-f]{64}$/u)))])).pipe(R(H(128)))}),vA=N({content:om(P(F([aA,sA]))),usage:k(lA),isError:Qp,terminate:k(Qp)}),yA={workId:tA},bA=I([`manual`,`threshold`,`overflow`]),xA=U(F([N({...yA,kind:A(`sandbox_failure`),event:oO}),N({kind:A(`document`),workId:Xp,extensionId:tA,name:tA,valueJson:j}),N({kind:A(`model_preference`),workId:Xp,preference:L(iy)}),N({...yA,kind:A(`command`),meta:O(pO),reply:O(Gk),delivery:O(I([`steer`,`followUp`])),requestId:tA,targetWorkId:O(tA),receiptId:tA,message:uA,contract:_A}),N({...yA,kind:A(`command`),work:A(`compact`),instructions:O(ky),meta:O(pO),requestId:tA,receiptId:tA,timestamp:V.check(B(0)),contract:_A}),N({kind:A(`operator`),workId:Xp,requestId:tA,author:I([`operator`,`party`]),meta:O(pO),message:dA}),N({...yA,kind:A(`cancellation`),requestId:tA,receiptId:tA,targetWorkId:tA,meta:O(pO)}),N({...yA,kind:A(`model_selection`),provider:tA,model:tA,catalogRevision:tA,definitionRevision:tA,selectionPolicyRevision:tA}),N({...yA,kind:A(`run_started`),run:hA,contract:_A}),N({...yA,kind:A(`turn_started`),run:hA,turn:hA}),N({...yA,kind:A(`model_prompt`),run:hA,turn:hA,attempt:M.pipe(R(Gm()),R(Bm(0))),contract:_A,systemPrompt:j.pipe(R(z(e=>$k.encode(e).byteLength<=1048576)))}),N({...yA,kind:A(`message_start`),run:hA,turn:hA,message:hA,role:I([`assistant`,`system`,`toolResult`,`user`])}),N({...yA,kind:A(`message`),data:O(iA),run:hA,turn:hA,message:hA,value:pA}),N({...yA,kind:A(`tool_intent`),replay:I([`safe`,`unsafe`]).pipe(vm(v(`unsafe`))),contract:_A,run:hA,turn:hA,toolCall:hA,call:cA}),N({...yA,kind:A(`tool_outcome`),data:O(iA),run:hA,turn:hA,toolCall:hA,call:cA,result:vA}),N({...yA,kind:A(`live_retry`),event:gA}),N({...yA,kind:A(`compaction`),head:tA,model:im([uA]),data:N({reason:O(bA),resumesRun:Qp,tokensBefore:M,tokensAfter:O(M),usage:lA,contextRevision:tA,receipt:O(nA),details:O(N({readFiles:P(j),modifiedFiles:P(j)}))})}),N({...yA,kind:A(`compaction_notice`),trigger:bA,result:A(`nothing_to_compact`),diagnostic:O(j.check(H(200)))}),N({...yA,kind:A(`compaction_notice`),trigger:bA,result:A(`failed`),usage:O(lA),diagnostic:O(j.check(H(200)))}),N({...yA,kind:A(`compaction_notice`),trigger:bA,result:A(`stale`),usage:O(lA)}),N({...yA,kind:A(`compaction_notice`),trigger:bA,result:A(`insufficient`),usage:O(lA)}),N({...yA,kind:A(`run_terminal`),run:hA,terminal:hA,diagnostic:O(j.check(H(200))),outcome:I([`completed`,`cancelled`,`failed`])}),N({...yA,kind:A(`work_terminal`),diagnostic:O(j),outcome:I([`completed`,`interrupted`,`cancelled`,`failed`])})])),SA=U(Yp),CA=T(xA,Qk),wA=Up(SA),TA=E(xA,Qk);function EA(e){return`work`in e}function DA(e){return e.kind===`command`&&!EA(e)?e:void 0}function OA(e){return EA(e)?e.timestamp:e.message.timestamp}function kA(e){return Zk(e.author===`party`?e.message:{role:`user`,content:`[A human operator replied to the user on your behalf]\n${e.message.content}`,timestamp:e.message.timestamp})}function AA(e){return Zk(e.message,e.reply)}function jA(e){return e.author===`party`?e.message:{role:`assistant`,content:[{type:`text`,text:e.message.content}],api:`operator`,provider:`operator`,model:`operator`,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:`stop`,timestamp:e.message.timestamp}}function MA(e){return yt(CA(e),e=>e.kind===`command`&&!EA(e)&&e.delivery===void 0?{...e,delivery:`followUp`}:e)}function NA(e){let t=wA(e);return TA(t),t}var PA=j.pipe(R(ah(1))),FA=V.pipe(R(B(0))),IA={onExcessProperty:`error`},LA=N({value_json:j}),RA=N({state_version:V.pipe(R(B(1))),revision:PA}),zA=N({status:I([`running`,`stopped`]),reason:L(j),stopped_at:L(FA),revision:PA}),BA=N({extension_id:PA,key:PA,due_at:FA}),VA=N({collection:PA,key:PA,value_json:j}),HA=N({sequence:FA}),UA=N({due:I([0,1]),next_due_at:L(FA)});function WA(e){return new W(`store`,`unavailable`,e)}function GA(e,t,n){let r=T(e,IA);return t.map(e=>{let t=r(e);if(t._tag===`Failure`)throw WA(n);return t.success})}function KA(e){e.transactionSync(()=>{e.sql.exec(`CREATE TABLE IF NOT EXISTS shiitake_extension_records (
|
|
45
45
|
extension_id TEXT NOT NULL,
|
|
46
46
|
collection TEXT NOT NULL,
|
|
47
47
|
key TEXT NOT NULL,
|
|
@@ -70,58 +70,58 @@ Defaulting to 2020, but this will stop working in the future.`)),t.ecmaVersion=1
|
|
|
70
70
|
ON shiitake_extension_timers(due_at, extension_id, key)`),e.sql.exec(`CREATE TABLE IF NOT EXISTS shiitake_settled_cursors (
|
|
71
71
|
consumer TEXT PRIMARY KEY,
|
|
72
72
|
sequence INTEGER NOT NULL CHECK (sequence >= 0)
|
|
73
|
-
)`)})}function
|
|
74
|
-
WHERE extension_id = ? AND collection = ? AND key = ?`,t,n,r).toArray(),`Stored extension record is invalid`)[0]?.value_json}function
|
|
73
|
+
)`)})}function qA(e,t,n,r){return GA(LA,e.sql.exec(`SELECT value_json FROM shiitake_extension_records
|
|
74
|
+
WHERE extension_id = ? AND collection = ? AND key = ?`,t,n,r).toArray(),`Stored extension record is invalid`)[0]?.value_json}function JA(e,t,n,r){return GA(LA,e.sql.exec(`SELECT value_json FROM shiitake_extension_records
|
|
75
75
|
WHERE extension_id = ? AND collection = ?
|
|
76
76
|
AND (? IS NULL OR index_value = ?)
|
|
77
77
|
AND (? IS NULL OR key > ?)
|
|
78
|
-
ORDER BY key LIMIT ?`,t,n,r.index??null,r.index??null,r.after??null,r.after??null,r.limit).toArray(),`Stored extension record is invalid`).map(({value_json:e})=>e)}function
|
|
78
|
+
ORDER BY key LIMIT ?`,t,n,r.index??null,r.index??null,r.after??null,r.after??null,r.limit).toArray(),`Stored extension record is invalid`).map(({value_json:e})=>e)}function YA(e,t,n,r,i,a){e.sql.exec(`INSERT INTO shiitake_extension_records
|
|
79
79
|
(extension_id, collection, key, index_value, value_json)
|
|
80
80
|
VALUES (?, ?, ?, ?, ?)
|
|
81
81
|
ON CONFLICT(extension_id, collection, key) DO UPDATE SET
|
|
82
|
-
index_value = excluded.index_value, value_json = excluded.value_json`,t,n,r,i,a)}function
|
|
83
|
-
WHERE extension_id = ? AND collection = ? AND key = ?`,t,n,r)}function
|
|
84
|
-
WHERE extension_id = ? ORDER BY collection, key`,t).toArray(),`Stored extension record is invalid`).map(e=>({collection:e.collection,key:e.key,valueJson:e.value_json}))}function
|
|
85
|
-
WHERE extension_id = ?`,t).toArray(),`Extension ledger is invalid`)[0];return n===void 0?void 0:{version:n.state_version,revision:n.revision}}function
|
|
82
|
+
index_value = excluded.index_value, value_json = excluded.value_json`,t,n,r,i,a)}function XA(e,t,n,r){e.sql.exec(`DELETE FROM shiitake_extension_records
|
|
83
|
+
WHERE extension_id = ? AND collection = ? AND key = ?`,t,n,r)}function ZA(e,t){return GA(VA,e.sql.exec(`SELECT collection, key, value_json FROM shiitake_extension_records
|
|
84
|
+
WHERE extension_id = ? ORDER BY collection, key`,t).toArray(),`Stored extension record is invalid`).map(e=>({collection:e.collection,key:e.key,valueJson:e.value_json}))}function QA(e,t){e.sql.exec(`DELETE FROM shiitake_extension_records WHERE extension_id = ?`,t)}function $A(e,t){let n=GA(RA,e.sql.exec(`SELECT state_version, revision FROM shiitake_extension_state
|
|
85
|
+
WHERE extension_id = ?`,t).toArray(),`Extension ledger is invalid`)[0];return n===void 0?void 0:{version:n.state_version,revision:n.revision}}function ej(e,t,n,r){e.sql.exec(`INSERT INTO shiitake_extension_state (extension_id, state_version, revision)
|
|
86
86
|
VALUES (?, ?, ?)
|
|
87
87
|
ON CONFLICT(extension_id) DO UPDATE SET
|
|
88
|
-
state_version = excluded.state_version, revision = excluded.revision`,t,n,r)}function
|
|
89
|
-
WHERE extension_id = ?`,t).toArray(),`Extension status is invalid`)[0];return n===void 0?void 0:{status:n.status,reason:n.reason,stoppedAt:n.stopped_at,revision:n.revision}}function
|
|
88
|
+
state_version = excluded.state_version, revision = excluded.revision`,t,n,r)}function tj(e,t){let n=GA(zA,e.sql.exec(`SELECT status, reason, stopped_at, revision FROM shiitake_extension_status
|
|
89
|
+
WHERE extension_id = ?`,t).toArray(),`Extension status is invalid`)[0];return n===void 0?void 0:{status:n.status,reason:n.reason,stoppedAt:n.stopped_at,revision:n.revision}}function nj(e,t,n){e.sql.exec(`INSERT INTO shiitake_extension_status
|
|
90
90
|
(extension_id, status, reason, stopped_at, revision)
|
|
91
91
|
VALUES (?, ?, ?, ?, ?)
|
|
92
92
|
ON CONFLICT(extension_id) DO UPDATE SET status = excluded.status,
|
|
93
93
|
reason = excluded.reason, stopped_at = excluded.stopped_at,
|
|
94
|
-
revision = excluded.revision`,t,n.status,n.reason,n.stoppedAt,n.revision)}function
|
|
94
|
+
revision = excluded.revision`,t,n.status,n.reason,n.stoppedAt,n.revision)}function rj(e,t,n,r){e.sql.exec(`INSERT INTO shiitake_extension_timers (extension_id, key, due_at)
|
|
95
95
|
VALUES (?, ?, ?)
|
|
96
|
-
ON CONFLICT(extension_id, key) DO UPDATE SET due_at = excluded.due_at`,t,n,r)}function
|
|
97
|
-
WHERE extension_id = ? AND key = ?`,t,n).toArray(),`Extension timer is invalid`)[0]?.due_at}function
|
|
98
|
-
WHERE due_at <= ? AND extension_id IN (${
|
|
99
|
-
ORDER BY due_at, extension_id, key LIMIT ?`,n,...t,r).toArray(),`Extension timer is invalid`).map(e=>({extensionId:e.extension_id,key:e.key,dueAt:e.due_at}))}function
|
|
96
|
+
ON CONFLICT(extension_id, key) DO UPDATE SET due_at = excluded.due_at`,t,n,r)}function ij(e,t,n){e.sql.exec(`DELETE FROM shiitake_extension_timers WHERE extension_id = ? AND key = ?`,t,n)}function aj(e,t){e.sql.exec(`DELETE FROM shiitake_extension_timers WHERE extension_id = ?`,t)}function oj(e,t,n){return GA(BA,e.sql.exec(`SELECT extension_id, key, due_at FROM shiitake_extension_timers
|
|
97
|
+
WHERE extension_id = ? AND key = ?`,t,n).toArray(),`Extension timer is invalid`)[0]?.due_at}function sj(e){return e.map(()=>`?`).join(`, `)}function cj(e,t,n,r){return t.length===0?[]:GA(BA,e.sql.exec(`SELECT extension_id, key, due_at FROM shiitake_extension_timers
|
|
98
|
+
WHERE due_at <= ? AND extension_id IN (${sj(t)})
|
|
99
|
+
ORDER BY due_at, extension_id, key LIMIT ?`,n,...t,r).toArray(),`Extension timer is invalid`).map(e=>({extensionId:e.extension_id,key:e.key,dueAt:e.due_at}))}function lj(e,t,n){if(t.length===0)return{due:!1,nextWakeAt:null};let r=sj(t),i=GA(UA,e.sql.exec(`SELECT
|
|
100
100
|
EXISTS (SELECT 1 FROM shiitake_extension_timers
|
|
101
101
|
WHERE due_at <= ? AND extension_id IN (${r})) AS due,
|
|
102
102
|
(SELECT MIN(due_at) FROM shiitake_extension_timers
|
|
103
|
-
WHERE due_at > ? AND extension_id IN (${r})) AS next_due_at`,n,...t,n,...t).toArray(),`Extension timer is invalid`)[0];if(i===void 0)throw
|
|
104
|
-
ON CONFLICT(consumer) DO UPDATE SET sequence = MAX(sequence, excluded.sequence)`,t,n)}var
|
|
103
|
+
WHERE due_at > ? AND extension_id IN (${r})) AS next_due_at`,n,...t,n,...t).toArray(),`Extension timer is invalid`)[0];if(i===void 0)throw WA(`Extension timer is unavailable`);return{due:i.due===1,nextWakeAt:i.next_due_at}}function uj(e,t){return GA(HA,e.sql.exec(`SELECT sequence FROM shiitake_settled_cursors WHERE consumer = ?`,t).toArray(),`Settled cursor is invalid`)[0]?.sequence}function dj(e,t,n){e.sql.exec(`INSERT INTO shiitake_settled_cursors (consumer, sequence) VALUES (?, ?)
|
|
104
|
+
ON CONFLICT(consumer) DO UPDATE SET sequence = MAX(sequence, excluded.sequence)`,t,n)}var fj=N({extension_id:j,name:j,initial_json:j,fork:I([`inherit-at-fork-point`,`current`,`fresh`]),max_bytes:V.pipe(R(Bm(0)))});function pj(e){e.sql.exec(`CREATE TABLE IF NOT EXISTS session_document_specs (
|
|
105
105
|
extension_id TEXT NOT NULL, name TEXT NOT NULL, initial_json TEXT NOT NULL,
|
|
106
106
|
fork TEXT NOT NULL, max_bytes INTEGER NOT NULL,
|
|
107
107
|
PRIMARY KEY (extension_id, name)
|
|
108
|
-
)`)}function
|
|
108
|
+
)`)}function mj(e,t){e.sql.exec(`INSERT INTO session_document_specs
|
|
109
109
|
(extension_id, name, initial_json, fork, max_bytes) VALUES (?, ?, ?, ?, ?)
|
|
110
110
|
ON CONFLICT(extension_id, name) DO UPDATE SET initial_json = excluded.initial_json,
|
|
111
|
-
fork = excluded.fork, max_bytes = excluded.max_bytes`,t.extensionId,t.name,t.initialJson,t.fork,t.maxBytes)}function
|
|
111
|
+
fork = excluded.fork, max_bytes = excluded.max_bytes`,t.extensionId,t.name,t.initialJson,t.fork,t.maxBytes)}function hj(e,t){return e.sql.exec(`SELECT extension_id, name, initial_json, fork, max_bytes FROM session_document_specs ORDER BY extension_id, name`).toArray().flatMap(e=>{let n=E(fj)(e);if(n.fork===`inherit-at-fork-point`)return[];let r=n.fork===`fresh`?n.initial_json:t(n.extension_id,n.name)??n.initial_json;if(new TextEncoder().encode(r).byteLength>n.max_bytes)throw new W(`store`,`rejected`,`Session document exceeds its declared size bound`);return[{kind:`document`,workId:null,extensionId:n.extension_id,name:n.name,valueJson:r}]})}var gj=Mp(j),_j=`The conversation history before this point was compacted into the following summary:
|
|
112
112
|
|
|
113
113
|
<summary>
|
|
114
|
-
`,
|
|
115
|
-
</summary>`;function
|
|
114
|
+
`,vj=`
|
|
115
|
+
</summary>`;function yj(e,t){return{role:`user`,content:[{type:`text`,text:_j+e+vj}],timestamp:t}}function bj(e){let t=Array.isArray(e.content)?e.content[0]:void 0,n=t?.type===`text`?t.text:void 0;if(n===void 0||!n.startsWith(_j)||!n.endsWith(vj))throw Error(`Compaction model message is not a summary`);return n.slice(_j.length,n.length-vj.length)}function xj(){return{edited:new Set,read:new Set,written:new Set}}function Sj(e,t){if(e.role===`assistant`)for(let n of e.content){if(n.type!==`toolCall`)continue;let e=n.arguments.path;gj(e)&&(n.name===`edit`&&t.edited.add(e),n.name===`read`&&t.read.add(e),n.name===`write`&&t.written.add(e))}}function Cj(e){let t=new Set([...e.edited,...e.written]);return{modifiedFiles:[...t].sort(),readFiles:[...e.read].filter(e=>!t.has(e)).sort()}}function wj(e,t){let n=[];return e.length>0&&n.push(`<read-files>\n${e.join(`
|
|
116
116
|
`)}\n</read-files>`),t.length>0&&n.push(`<modified-files>\n${t.join(`
|
|
117
117
|
`)}\n</modified-files>`),n.length===0?``:`\n\n${n.join(`
|
|
118
118
|
|
|
119
|
-
`)}`}var
|
|
120
|
-
`)}`),n.length>0&&r.push(`[Assistant tool calls]: ${n.join(`; `)}`),r}function
|
|
119
|
+
`)}`}var Tj=2e3;function Ej(e){return e.filter(e=>e.type===`text`).map(e=>e.text??``).join(``)}function Dj(e){if(e.length<=Tj)return e;let t=String(e.length-Tj);return`${e.slice(0,Tj)}\n\n[... ${t} more characters truncated]`}function Oj(e){let t=gj(e.content)?e.content:Ej(e.content);return t?`[User]: ${t}`:void 0}function kj(e){let t=[],n=[];for(let r of e.content)if(r.type===`text`)t.push(r.text);else if(r.type===`toolCall`){let e=Object.entries(r.arguments).map(([e,t])=>`${e}=${JSON.stringify(t)}`).join(`, `);n.push(`${r.name}(${e})`)}let r=[];return t.length>0&&r.push(`[Assistant]: ${t.join(`
|
|
120
|
+
`)}`),n.length>0&&r.push(`[Assistant tool calls]: ${n.join(`; `)}`),r}function Aj(e){let t=Ej(e.content);return t?`[Tool result]: ${Dj(t)}`:void 0}function jj(e){let t=[];for(let n of e)if(n.role===`system`){let e=gj(n.content)?n.content:Ej(n.content);e&&t.push(`[System]: ${e}`)}else if(n.role===`user`){let e=Oj(n);e!==void 0&&t.push(e)}else if(n.role===`assistant`)t.push(...kj(n));else{let e=Aj(n);e!==void 0&&t.push(e)}return t.join(`
|
|
121
121
|
|
|
122
|
-
`)}function
|
|
122
|
+
`)}function Mj(e,t,n){return n.enabled?e>t-n.reserveTokens:!1}function Nj(e,t,n){return!n.enabled||n.backgroundTokens===0?!1:e>t-n.reserveTokens-n.backgroundTokens&&!Mj(e,t,n)}var Pj={enabled:!0,reserveTokens:16384,keepRecentTokens:2e4,backgroundTokens:32768},Fj=`You are a context summarization assistant. Your task is to read a conversation between a user and an AI coding assistant, then produce a structured summary following the exact format specified.
|
|
123
123
|
|
|
124
|
-
Do NOT continue the conversation. Do NOT respond to any questions in the conversation. ONLY output the structured summary.`,
|
|
124
|
+
Do NOT continue the conversation. Do NOT respond to any questions in the conversation. ONLY output the structured summary.`,Ij=`The messages above are a conversation to summarize. Create a structured context checkpoint summary that another LLM will use to continue the work.
|
|
125
125
|
|
|
126
126
|
Use this EXACT format:
|
|
127
127
|
|
|
@@ -152,7 +152,7 @@ Use this EXACT format:
|
|
|
152
152
|
- [Any data, examples, or references needed to continue]
|
|
153
153
|
- [Or "(none)" if not applicable]
|
|
154
154
|
|
|
155
|
-
Keep each section concise. Preserve exact file paths, function names, and error messages.`,
|
|
155
|
+
Keep each section concise. Preserve exact file paths, function names, and error messages.`,Lj=`The messages above are NEW conversation messages to incorporate into the existing summary provided in <previous-summary> tags.
|
|
156
156
|
|
|
157
157
|
Update the existing structured summary with new information. RULES:
|
|
158
158
|
- PRESERVE all existing information from the previous summary
|
|
@@ -189,7 +189,7 @@ Use this EXACT format:
|
|
|
189
189
|
## Critical Context
|
|
190
190
|
- [Preserve important context, add new if needed]
|
|
191
191
|
|
|
192
|
-
Keep each section concise. Preserve exact file paths, function names, and error messages.`,
|
|
192
|
+
Keep each section concise. Preserve exact file paths, function names, and error messages.`,Rj=`The messages above are earlier context from an ongoing conversation. Later messages are stored separately and do not need to be reconstructed.
|
|
193
193
|
|
|
194
194
|
Create a concise checkpoint of the user's request and the progress shown above. This checkpoint will be placed before the later messages so the conversation can continue with the necessary context.
|
|
195
195
|
|
|
@@ -202,15 +202,15 @@ Create a concise checkpoint of the user's request and the progress shown above.
|
|
|
202
202
|
## Context Needed to Continue
|
|
203
203
|
- [Information from these messages needed to understand the later work]
|
|
204
204
|
|
|
205
|
-
Only summarize information explicitly present above. Do not infer or recreate later messages.`;function
|
|
205
|
+
Only summarize information explicitly present above. Do not infer or recreate later messages.`;function zj(e,t){if(e.stopReason===`error`){let n=e.errorMessage;return`${t} failed: ${n!==void 0&&n.length>0?n:`Unknown error`}`}return e.stopReason===`length`?`${t} failed: generation hit the token cap and the summary is incomplete`:e.content.some(e=>e.type===`toolCall`)?`${t} attempted to call a tool`:void 0}var Bj=nm(j.check(ah(1),H(160)),I([`none`,`read`,`write`])).check(z(e=>Object.keys(e).length<=256)),Vj=T(N({version:V.check(B(0),Hm(2**53-1)),grants:Bj}),{onExcessProperty:`error`}),Hj=T(U(Bj)),Uj=Up(U(Bj)),Wj=T(N({version:V,grants_json:j}));function Gj(e){e.sql.exec(`CREATE TABLE IF NOT EXISTS session_tool_grants (
|
|
206
206
|
session_id TEXT PRIMARY KEY,
|
|
207
207
|
version INTEGER NOT NULL,
|
|
208
208
|
grants_json TEXT NOT NULL
|
|
209
|
-
)`)}function
|
|
209
|
+
)`)}function Kj(e,t,n){let r=Vj(n);if(Ct(r))throw new W(`contract`,`invalid`,`Session grants delivery is invalid`);let i=Uj(r.success.grants),a=qj(e,t);if(a!==void 0){if(r.success.version<a.version)throw new W(`contract`,`conflict`,`Session grants delivery is older than the stored delivery`);if(r.success.version===a.version&&a.grantsJson===i)return`unchanged`}return e.sql.exec(`INSERT INTO session_tool_grants (session_id, version, grants_json)
|
|
210
210
|
VALUES (?, ?, ?)
|
|
211
211
|
ON CONFLICT(session_id) DO UPDATE SET
|
|
212
|
-
version = excluded.version, grants_json = excluded.grants_json`,t,r.success.version,i),`applied`}function
|
|
213
|
-
SELECT ?, version, grants_json FROM session_tool_grants WHERE session_id = ?`,n,t)}var
|
|
212
|
+
version = excluded.version, grants_json = excluded.grants_json`,t,r.success.version,i),`applied`}function qj(e,t){let[n]=e.sql.exec(`SELECT version, grants_json FROM session_tool_grants WHERE session_id = ?`,t).toArray();if(n===void 0)return;let r=Wj(n);if(Ct(r))throw new W(`store`,`unavailable`,`Stored Session grants are invalid`);return{version:r.success.version,grantsJson:r.success.grants_json}}function Jj(e,t){let n=qj(e,t);if(n===void 0)return null;let r=Hj(n.grantsJson);if(Ct(r))throw new W(`store`,`unavailable`,`Stored Session grants are invalid`);return{version:n.version,grants:r.success}}function Yj(e,t,n){e.sql.exec(`INSERT INTO session_tool_grants (session_id, version, grants_json)
|
|
213
|
+
SELECT ?, version, grants_json FROM session_tool_grants WHERE session_id = ?`,n,t)}var Xj=200,Zj={onExcessProperty:`error`},Qj=new TextEncoder,$j=j.pipe(R(ah(1)),R(z(e=>Qj.encode(e).byteLength<=256))),eM=V.pipe(R(B(0))),tM=I([0,1,2]),nM=I([`needs_you`,`running`,`errored`,`done`]),rM=I([`completed`,`failed`,`cancelled`,`outcome_unknown`,`interrupted`]),iM=N({session_id:$j,title:L(j),created_at:eM,last_activity_at:eM,settled_at:L(eM),state:nM,tier:tM}),aM=T(iM,Zj);T(iM.mapFields(_p({revision:eM})),Zj),T(N({revision:eM}),Zj);var oM=T(N({outcome:L(rM)}),Zj),sM=U(im([tM,eM,$j])),cM=T(sM),lM=Up(sM),uM=`session_id, title, created_at, last_activity_at, settled_at, state, tier`;function dM(e){return new W(`store`,`unavailable`,e)}function fM(e){switch(e){case`needs_you`:return 0;case`running`:return 1;case`errored`:case`done`:return 2}}function pM(e,t,n){if(n)return`needs_you`;if(e.state!==`idle`)return`running`;switch(t){case`failed`:case`interrupted`:case`outcome_unknown`:return`errored`;case`completed`:case`cancelled`:case null:return`done`}}function mM(e){e.sql.exec(`
|
|
214
214
|
CREATE TABLE IF NOT EXISTS session_inbox (
|
|
215
215
|
session_id TEXT PRIMARY KEY REFERENCES sessions(id),
|
|
216
216
|
title TEXT,
|
|
@@ -240,34 +240,34 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
240
240
|
session_id TEXT PRIMARY KEY,
|
|
241
241
|
revision INTEGER NOT NULL
|
|
242
242
|
) STRICT
|
|
243
|
-
`),e.sql.exec(`CREATE INDEX IF NOT EXISTS idx_session_inbox_tombstones_revision ON session_inbox_tombstones(revision)`)}function
|
|
243
|
+
`),e.sql.exec(`CREATE INDEX IF NOT EXISTS idx_session_inbox_tombstones_revision ON session_inbox_tombstones(revision)`)}function hM(e){e.sql.exec(`UPDATE session_inbox_clock SET revision = revision + 1 WHERE singleton = 1`)}var gM=`(SELECT revision FROM session_inbox_clock WHERE singleton = 1)`;function _M(e,t){let n=t.title===void 0?``:t.title,r=t.title===void 0?0:1;hM(e),e.sql.exec(`INSERT INTO session_inbox
|
|
244
244
|
(session_id, title, created_at, last_activity_at, settled_at, outcome,
|
|
245
245
|
state, tier, revision)
|
|
246
246
|
SELECT id, ?, created_at, COALESCE(?, created_at), NULL, NULL, 'done', 2,
|
|
247
|
-
${
|
|
247
|
+
${gM}
|
|
248
248
|
FROM sessions
|
|
249
249
|
WHERE id = ?
|
|
250
250
|
ON CONFLICT (session_id) DO UPDATE SET
|
|
251
251
|
title = CASE WHEN ? = 1 THEN excluded.title ELSE title END,
|
|
252
252
|
last_activity_at = MAX(last_activity_at, excluded.last_activity_at),
|
|
253
|
-
revision = excluded.revision`,n,t.activityAt??null,t.sessionId,r)}function
|
|
254
|
-
VALUES (?, ${
|
|
255
|
-
ON CONFLICT (session_id) DO UPDATE SET revision = excluded.revision`,t)}function
|
|
256
|
-
SET outcome = ?, state = ?, tier = ?, revision = ${
|
|
253
|
+
revision = excluded.revision`,n,t.activityAt??null,t.sessionId,r)}function vM(e,t){hM(e),e.sql.exec(`INSERT INTO session_inbox_tombstones (session_id, revision)
|
|
254
|
+
VALUES (?, ${gM})
|
|
255
|
+
ON CONFLICT (session_id) DO UPDATE SET revision = excluded.revision`,t)}function yM(e,t,n){let r=e.sql.exec(`SELECT outcome FROM session_inbox WHERE session_id = ?`,t.queue).toArray()[0];if(r===void 0)return;let i=oM(r);if(i._tag===`Failure`)throw dM(`Stored inbox row is invalid`);let a=t.settled?.outcome??i.success.outcome,o=pM(t.head,a,HO(e,t.queue));hM(e),e.sql.exec(`UPDATE session_inbox
|
|
256
|
+
SET outcome = ?, state = ?, tier = ?, revision = ${gM},
|
|
257
257
|
settled_at = CASE WHEN ? = 1 THEN ? ELSE settled_at END,
|
|
258
258
|
last_activity_at = MAX(last_activity_at, ?)
|
|
259
|
-
WHERE session_id = ?`,a,o,
|
|
259
|
+
WHERE session_id = ?`,a,o,fM(o),t.settled===void 0?0:1,n,n,t.queue)}function bM(e,t,n){let r=e.sql.exec(`SELECT outcome FROM session_inbox WHERE session_id = ?`,t).toArray()[0];if(r===void 0)return;let i=oM(r);if(i._tag===`Failure`)throw dM(`Stored inbox row is invalid`);let a=pM(n,i.success.outcome,HO(e,t));hM(e),e.sql.exec(`UPDATE session_inbox SET state = ?, tier = ?, revision = ${gM} WHERE session_id = ?`,a,fM(a),t)}function xM(e){if(e.title===null)return Object.freeze({sessionId:e.session_id,state:`unavailable`});let t={sessionId:e.session_id,title:e.title,createdAt:e.created_at,lastActivityAt:e.last_activity_at,state:e.state};return Object.freeze(e.settled_at===null?t:{...t,settledAt:e.settled_at})}function SM(e){let t=cM(e);if(t._tag===`Failure`)throw new W(`contract`,`invalid`,`Session cursor is invalid`);return t.success}function CM(e,t){let n=t===void 0?void 0:SM(t),r=n===void 0?e.sql.exec(`SELECT ${uM} FROM session_inbox
|
|
260
260
|
ORDER BY tier ASC, last_activity_at DESC, session_id ASC
|
|
261
|
-
LIMIT ?`,
|
|
261
|
+
LIMIT ?`,Xj).toArray():e.sql.exec(`SELECT ${uM} FROM session_inbox
|
|
262
262
|
WHERE tier > ?
|
|
263
263
|
OR (tier = ? AND last_activity_at < ?)
|
|
264
264
|
OR (tier = ? AND last_activity_at = ? AND session_id > ?)
|
|
265
265
|
ORDER BY tier ASC, last_activity_at DESC, session_id ASC
|
|
266
|
-
LIMIT ?`,n[0],n[0],n[1],n[0],n[1],n[2],
|
|
266
|
+
LIMIT ?`,n[0],n[0],n[1],n[0],n[1],n[2],Xj).toArray(),i=[],a;for(let e of r){let t=aM(e);if(t._tag===`Failure`)throw dM(`Stored inbox row is invalid`);let n=t.success;a=[n.tier,n.last_activity_at,n.session_id],i.push(xM(n))}return{sessions:i,next:r.length===Xj&&a!==void 0?lM(a):void 0}}var wM=mg({family:`session`,version:1,kinds:{session:{prefix:`session`},work:{prefix:`session_work`},fact:{prefix:`session_fact`},receipt:{prefix:`session_receipt`}}});function TM(e){let t=[...e].reverse().find(({entry:e})=>e.kind===`message`&&e.value.role===`assistant`);if(t?.entry.kind!==`message`||t.entry.value.role!==`assistant`)return;let n=e.filter(({sequence:e})=>e>t.sequence);if(n.some(({entry:e})=>e.kind===`turn_started`||e.kind===`compaction`&&e.data.resumesRun||e.kind===`live_retry`&&e.event.type===`auto_retry_start`))return;let r=n.flatMap(({entry:e})=>e.kind===`message`&&e.value.role===`toolResult`?[e.value]:[]),i=t.entry.value.content.flatMap(e=>{if(e.type!==`toolCall`)return[];let t=[...n].reverse().find(({entry:t})=>t.kind===`tool_outcome`&&t.call.id===e.id)?.entry;if(t?.kind===`tool_outcome`)return[{call:e,state:`completed`,result:t.data===void 0?t.result:{...t.result,data:t.data},message:r.find(t=>t.toolCallId===e.id)}];let i=[...n].reverse().find(({entry:t})=>t.kind===`tool_intent`&&t.call.id===e.id)?.entry;return[i?.kind===`tool_intent`?{call:e,state:`started`,replay:i.replay}:{call:e,state:`pending`}]});return{message:t.entry.value,tools:i}}function EM(e,t){let n=new Set(e.flatMap(({entry:e})=>e.kind===`run_terminal`?[e.workId]:[])),r=new Set,i=new Map;for(let a of e){let e=a.entry;if(e.kind===`message`&&(e.value.role===`assistant`&&i.set(e.workId,a.id),(n.has(e.workId)||e.workId===t)&&(e.value.role!==`assistant`||e.value.stopReason!==`error`&&e.value.stopReason!==`aborted`)&&r.add(a.id)),e.kind===`compaction`&&e.data.resumesRun||e.kind===`live_retry`&&e.event.type===`auto_retry_start`){let t=i.get(e.workId);t!==void 0&&r.delete(t)}}return r}function DM(e){let t=[...e].reverse(),n=t.find(({entry:e})=>e.kind===`run_terminal`);if(n?.entry.kind!==`run_terminal`||e.some(({sequence:e,entry:t})=>e>n.sequence&&(t.kind===`run_started`||t.kind===`compaction`&&t.data.resumesRun)))return;if(n.entry.outcome===`cancelled`)return`cancelled`;if(n.entry.outcome!==`failed`)return;let r=t.find(({entry:e})=>e.kind===`turn_started`),i=t.find(({sequence:e,entry:t})=>t.kind===`message`&&t.value.role===`assistant`&&e>(r?.sequence??0));return i?.entry.kind===`message`&&i.entry.value.role===`assistant`&&i.entry.value.stopReason===`error`&&!e.some(({sequence:e,entry:t})=>e>i.sequence&&t.kind===`live_retry`&&t.event.type===`auto_retry_start`)?void 0:`failed`}var OM={onExcessProperty:`error`},kM=new TextEncoder,AM=j.pipe(R(ah(1)),R(z(e=>kM.encode(e).byteLength<=256))),jM=V.pipe(R(Bm(0))),MM=V.pipe(R(B(0))),NM=N({id:AM,leaf_id:L(AM)}),PM=N({session_id:AM}),FM=N({id:AM,leaf_id:L(AM),created_at:MM,updated_at:MM,metadata_json:L(j)}),IM=U(N({title:My})),LM=T(IM,OM),RM=Up(IM),zM=N({id:AM}),BM=N({version:V,protocol:A(`shiitake.extension/v0`)}),VM=N({name:AM}),HM=N({id:AM,session_id:AM,parent_id:L(AM),sequence:jM,type:j,role:L(I([`user`,`assistant`,`tool_result`])),state:I([`complete`,`streaming`]),request_id:L(AM),work_id:L(AM),data_json:j,timestamp:MM,completed_at:L(MM),damaged:I([0,1])}),UM=N({id:AM,session_id:AM,sequence:jM,request_id:AM,work_id:AM,data_json:j,timestamp:MM,origin_kind:I([`user`,`extension`]),origin_id:L(AM),origin_correlation:L(AM)}),WM=N({kind:A(`extension`),extensionId:AM,correlation:L(AM)}),GM=F([N({kind:A(`user`)}),WM]),KM=T(GM,OM),qM=Ih(GM),JM=e=>[`id`,`session_id`,`sequence`,`request_id`,`work_id`,`data_json`,`timestamp`,`origin_kind`,`origin_id`,`origin_correlation`].map(t=>e+t).join(`, `),YM=N({next_sequence:jM}),XM=N({present:A(1)}),ZM=T(PM,OM),QM=T(FM,OM),$M=T(zM,OM),eN=T(BM,OM),tN=T(VM,OM),nN=T(N({candidate_id:L(AM),path_count:V.pipe(R(Bm(0))),root_count:V.pipe(R(B(0))),missing_parent_count:V.pipe(R(B(0))),leaf_state:I([`complete`,`streaming`])}),OM),rN=T(HM,OM),iN=T(UM,OM),aN=T(YM,OM),oN=T(XM,OM);function sN(e){return`${[`id`,`session_id`,`parent_id`,`sequence`,`type`,`role`,`state`,`request_id`,`work_id`,`data_json`,`timestamp`,`completed_at`].map(t=>`${e}.${t}`).join(`, `)},
|
|
267
267
|
EXISTS (SELECT 1 FROM session_lineage_damage AS damage
|
|
268
|
-
WHERE damage.session_id = ${e}.session_id) AS damaged`}var sN
|
|
268
|
+
WHERE damage.session_id = ${e}.session_id) AS damaged`}var cN=sN(`session_entries`);function lN(e,t){return t===void 0?e:{...e,meta:t}}function uN(e,t){if(wN(e,t)===void 0)return;let n=e.sql.exec(`SELECT id, leaf_id, created_at, updated_at, metadata_json
|
|
269
269
|
FROM sessions
|
|
270
|
-
WHERE id = ?`,t).toArray()[0];if(n===void 0)return;let r=
|
|
270
|
+
WHERE id = ?`,t).toArray()[0];if(n===void 0)return;let r=QM(n);if(r._tag===`Failure`)throw $(`Stored Session summary row is invalid`);let i=mN(e,t,r.success),a=r.success.metadata_json;if(a===null)return i;let o=LM(a);if(o._tag===`Failure`)throw $(`Stored Session title is invalid`);return Object.freeze({createdAt:r.success.created_at,updatedAt:r.success.updated_at,title:o.success.title})}var dN=T(N({id:AM,sequence:jM}),OM);function fN(e,t,n,r){let i=e.sql.exec(`SELECT command.id AS id, command.sequence AS sequence
|
|
271
271
|
FROM session_entries AS command
|
|
272
272
|
WHERE command.session_id = ? AND command.type = 'command'
|
|
273
273
|
AND command.role = 'user' AND command.state = 'complete'
|
|
@@ -278,13 +278,13 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
278
278
|
AND cancelled.type = 'cancellation'
|
|
279
279
|
AND cancelled.sequence < command.sequence
|
|
280
280
|
)
|
|
281
|
-
ORDER BY command.sequence ASC LIMIT 1`,t).toArray()[0];if(i===void 0)return null;let a=
|
|
281
|
+
ORDER BY command.sequence ASC LIMIT 1`,t).toArray()[0];if(i===void 0)return null;let a=dN(i);if(a._tag===`Failure`)throw $(`Stored Session first prompt is invalid`);let o=a.success;return r<o.sequence?null:e.sql.exec(`SELECT 1 AS present FROM session_entries AS parent
|
|
282
282
|
WHERE parent.session_id = ? AND parent.sequence < ?
|
|
283
283
|
AND (SELECT COUNT(*) FROM session_entries AS child
|
|
284
284
|
WHERE child.parent_id = parent.id
|
|
285
285
|
AND child.session_id = parent.session_id
|
|
286
286
|
AND child.state = 'complete') > 1
|
|
287
|
-
LIMIT 1`,t,o.sequence).toArray()[0]===void 0?o.id:
|
|
287
|
+
LIMIT 1`,t,o.sequence).toArray()[0]===void 0?o.id:pN(e,t,n)}function pN(e,t,n){let r=nN(e.sql.exec(`WITH RECURSIVE branch (id, parent_id, sequence, type, role, state, work_id) AS (
|
|
288
288
|
SELECT id, parent_id, sequence, type, role, state, work_id
|
|
289
289
|
FROM session_entries
|
|
290
290
|
WHERE session_id = ? AND id = ?
|
|
@@ -314,31 +314,31 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
314
314
|
SELECT 1 FROM session_entries AS parent
|
|
315
315
|
WHERE parent.session_id = ? AND parent.id = child.parent_id
|
|
316
316
|
)) AS missing_parent_count,
|
|
317
|
-
(SELECT state FROM branch WHERE id = ?) AS leaf_state`,t,n,t,t,n).one());if(r._tag===`Failure`||r.success.leaf_state!==`complete`||r.success.root_count!==1||r.success.missing_parent_count!==0)throw $(`Stored Session summary lineage is invalid`);return r.success.candidate_id}function
|
|
317
|
+
(SELECT state FROM branch WHERE id = ?) AS leaf_state`,t,n,t,t,n).one());if(r._tag===`Failure`||r.success.leaf_state!==`complete`||r.success.root_count!==1||r.success.missing_parent_count!==0)throw $(`Stored Session summary lineage is invalid`);return r.success.candidate_id}function mN(e,t,n){if(n.leaf_id===null)return Object.freeze({createdAt:n.created_at,updatedAt:n.updated_at,title:``});let r=TN(e,t,n.leaf_id);if(r?.state!==`complete`)throw $(`Stored Session summary leaf is invalid`);let i=fN(e,t,n.leaf_id,r.sequence),a=i===null?void 0:TN(e,t,i)?.entry,o=a===void 0?void 0:DA(a);if(o!==void 0)return Object.freeze({createdAt:n.created_at,updatedAt:n.updated_at,title:Array.from(xF(o.message.content)?o.message.content.filter(e=>e.type===`text`).map(e=>e.text).join(``)||`Image prompt`:o.message.content).slice(0,120).join(``)})}function hN(e,t){try{return uN(e,t)?.title??``}catch(e){if(e instanceof W&&e.cause===`unavailable`)return null;throw e}}function $(e){return new W(`store`,`unavailable`,e)}function gN(e){return new W(`store`,`incompatible`,e)}function _N(e){return e.kind===`command`||e.kind===`cancellation`||e.kind===`operator`?e.requestId:null}function vN(e){return e.kind===`command`?EA(e)?null:`user`:e.kind===`operator`?e.author===`party`?`user`:`assistant`:e.kind===`message_start`?e.role===`toolResult`?`tool_result`:e.role:e.kind===`message`?e.value.role===`toolResult`?`tool_result`:e.value.role:null}function yN(e,t){return e.kind===t.kind&&e.value===t.value&&e.parent?.kind===t.parent?.kind&&e.parent?.value===t.parent?.value}function bN(e,t){let n=rN(t);if(n._tag===`Failure`)throw $(`Stored Session entry row is invalid`);let r=n.success;if(r.damaged===1)throw pP(e,r.session_id);let i=MA(r.data_json);if(i._tag===`Failure`)throw $(`Stored Session entry data is invalid`);let a=i.success;if(r.type!==a.kind||r.work_id!==a.workId||r.request_id!==_N(a)||r.role!==vN(a))throw $(`Stored Session entry columns disagree with its data`);return Object.freeze({id:r.id,sessionId:r.session_id,parentId:r.parent_id,sequence:r.sequence,state:r.state,timestamp:r.timestamp,completedAt:r.completed_at,entry:a})}function xN(e){let t=iN(e);if(t._tag===`Failure`)throw $(`Stored command admission row is invalid`);let n=t.success,r=MA(n.data_json);if(r._tag===`Failure`||r.success.kind!==`command`)throw $(`Stored command admission data is invalid`);let i=r.success;if(n.request_id!==i.requestId||n.work_id!==i.workId||n.id!==i.receiptId||n.id!==i.workId||n.timestamp!==OA(i))throw $(`Stored command admission columns disagree with its data`);let a=KM(n.origin_kind===`user`?{kind:`user`}:{kind:`extension`,extensionId:n.origin_id,correlation:n.origin_correlation});if(a._tag===`Failure`||n.origin_kind===`user`&&(n.origin_id!==null||n.origin_correlation!==null))throw $(`Stored command admission origin is invalid`);return Object.freeze({id:n.id,sessionId:n.session_id,sequence:n.sequence,timestamp:n.timestamp,entry:i,origin:a.success})}function SN(e,t){return wN(e,t)!==void 0}var CN=T(N({...NM.fields,damaged:I([0,1])}),OM);function wN(e,t){let n=e.sql.exec(`SELECT id, leaf_id,
|
|
318
318
|
EXISTS (SELECT 1 FROM session_lineage_damage
|
|
319
319
|
WHERE session_id = sessions.id) AS damaged
|
|
320
|
-
FROM sessions WHERE id = ?`,t).toArray()[0];if(n===void 0)return;let r=
|
|
320
|
+
FROM sessions WHERE id = ?`,t).toArray()[0];if(n===void 0)return;let r=CN(n);if(r._tag===`Failure`)throw $(`Stored Session row is invalid`);if(r.success.damaged===1)throw pP(e,t);return Object.freeze({id:r.success.id,leaf_id:r.success.leaf_id})}function TN(e,t,n){let r=e.sql.exec(`SELECT ${cN}
|
|
321
321
|
FROM session_entries
|
|
322
|
-
WHERE session_id = ? AND id = ?`,t,n).toArray()[0];return r===void 0?void 0:
|
|
322
|
+
WHERE session_id = ? AND id = ?`,t,n).toArray()[0];return r===void 0?void 0:bN(e,r)}function EN(e,t){if(t.leaf_id===null){let n=e.sql.exec(`SELECT 1 AS present
|
|
323
323
|
FROM session_entries
|
|
324
324
|
WHERE session_id = ?
|
|
325
|
-
LIMIT 1`,t.id).toArray()[0];if(n===void 0)return;throw
|
|
325
|
+
LIMIT 1`,t.id).toArray()[0];if(n===void 0)return;throw oN(n)._tag===`Failure`?$(`Session entry presence is invalid`):$(`Session leaf is invalid`)}let n=TN(e,t.id,t.leaf_id);if(n?.state!==`complete`)throw $(`Session leaf is invalid`);return n}function DN(e,t){let n=e.sql.exec(`SELECT ${cN}
|
|
326
326
|
FROM session_entries
|
|
327
|
-
WHERE id = ?`,t).toArray()[0];return n===void 0?void 0:
|
|
327
|
+
WHERE id = ?`,t).toArray()[0];return n===void 0?void 0:bN(e,n)}function ON(e,t,n){let[r,i]=`id`in n?[`id`,n.id]:`requestId`in n?[`request_id`,n.requestId]:[`work_id`,n.workId],a=e.sql.exec(`SELECT ${JM(``)}
|
|
328
328
|
FROM session_command_admissions
|
|
329
|
-
WHERE session_id = ? AND ${r} = ?`,t,i).toArray()[0];return a===void 0?void 0:
|
|
329
|
+
WHERE session_id = ? AND ${r} = ?`,t,i).toArray()[0];return a===void 0?void 0:xN(a)}var kN=`FROM session_command_admissions AS a
|
|
330
330
|
WHERE a.session_id = ?
|
|
331
331
|
AND NOT EXISTS (
|
|
332
332
|
SELECT 1 FROM session_entries AS e
|
|
333
333
|
WHERE e.session_id = a.session_id AND e.work_id = a.work_id
|
|
334
334
|
AND e.type IN ('command', 'cancellation', 'run_terminal', 'work_terminal')
|
|
335
|
-
)`;function
|
|
335
|
+
)`;function AN(e,t,n){return e.sql.exec(`SELECT 1 FROM session_entries WHERE session_id = ? AND work_id = ? AND type = 'run_terminal' LIMIT 1`,t,n).toArray().length>0}var jN=E(N({identity:L(j)}));function MN(e,t,n){let{identity:r}=jN(e.sql.exec(`SELECT json_extract(?, ?) AS identity`,JSON.stringify(n??null),t).one());if(r===null||r.length===0)throw new W(`runtime`,`rejected`,`Request author is required`);return{path:t,value:r}}function NN(e,t,n,r){let i=VN(e,t,n);if(i!==void 0&&MN(e,r.path,i.entry.meta).value!==r.value)throw new W(`runtime`,`rejected`,`Message author does not match`)}function PN(e,t,n){let r=e.sql.exec(`SELECT ${JM(`a.`)} ${kN}
|
|
336
336
|
AND json_extract(a.data_json, '$.work') IS NULL
|
|
337
337
|
AND a.origin_kind = 'user'
|
|
338
338
|
AND (? IS NULL OR json_extract(json_extract(a.data_json, '$.meta'), ?) = ?)
|
|
339
|
-
ORDER BY a.sequence DESC LIMIT 1`,t,n?.path??null,n?.path??null,n?.value??null).toArray()[0];return r===void 0?void 0:
|
|
339
|
+
ORDER BY a.sequence DESC LIMIT 1`,t,n?.path??null,n?.path??null,n?.value??null).toArray()[0];return r===void 0?void 0:xN(r)}var FN=E(N({total:V.check(B(0))}));function IN(e,t,n,r=`all`){let i=r===`prompts`?`AND json_extract(a.data_json, '$.work') IS NULL`:``,a=FN(e.sql.exec(`SELECT COUNT(*) AS total ${kN} ${i}`,t).one()).total;return{commands:e.sql.exec(`SELECT ${JM(`a.`)} ${kN} ${i}
|
|
340
340
|
ORDER BY (json_extract(a.data_json, '$.delivery') = 'steer') DESC,
|
|
341
|
-
a.sequence ASC LIMIT ?`,t,n).toArray().map(
|
|
341
|
+
a.sequence ASC LIMIT ?`,t,n).toArray().map(xN),total:a}}function LN(e,t,n,r,i=200){return e.sql.exec(`SELECT ${JM(`a.`)}
|
|
342
342
|
FROM session_command_admissions AS a
|
|
343
343
|
WHERE a.session_id = ?
|
|
344
344
|
AND json_extract(a.data_json, '$.delivery') = ?
|
|
@@ -348,26 +348,26 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
348
348
|
WHERE e.session_id = a.session_id AND e.work_id = a.work_id
|
|
349
349
|
AND e.type IN ('command', 'run_terminal', 'work_terminal')
|
|
350
350
|
)
|
|
351
|
-
ORDER BY a.sequence ASC LIMIT ?`,t,n,r??null,r??null,i).toArray().map(
|
|
351
|
+
ORDER BY a.sequence ASC LIMIT ?`,t,n,r??null,r??null,i).toArray().map(xN)}function RN(e,t,n){return LN(e,t,`steer`,n,1).length>0}function zN(e,t,n,r){return e.transactionSync(()=>LN(e,t,n,r).map(n=>{let r=DA(TN(e,t,n.id)?.entry??SP(e,{sessionId:t,id:n.id,entry:n.entry}).entry);if(r===void 0)throw $(`Session control admission is invalid`);return{workId:r.workId,requestId:r.requestId,message:AA(r)}}))}function BN(e,t){e.transactionSync(()=>{let n=e.sql.exec(`SELECT ${JM(`a.`)}
|
|
352
352
|
FROM session_command_admissions AS a
|
|
353
353
|
WHERE a.session_id = ?
|
|
354
354
|
AND json_extract(a.data_json, '$.delivery') = 'steer'
|
|
355
355
|
AND json_extract(a.data_json, '$.targetWorkId') = ?
|
|
356
|
-
ORDER BY a.sequence ASC`,t.sessionId,t.parentWorkId).toArray().map(
|
|
356
|
+
ORDER BY a.sequence ASC`,t.sessionId,t.parentWorkId).toArray().map(xN);for(let r of n){if(e.sql.exec(`SELECT 1 AS present FROM session_entries WHERE session_id = ? AND work_id = ? AND type IN ('run_terminal', 'work_terminal') LIMIT 1`,t.sessionId,r.entry.workId).toArray()[0]!==void 0)continue;if(TN(e,t.sessionId,r.id)===void 0){t.enqueue({jobId:r.entry.workId,sessionId:t.sessionId,commandFactId:r.id,delivery:`steer`});continue}let n=t.outcome===`failed`||t.outcome===`interrupted`?t.diagnostic:void 0,i={kind:`work_terminal`,workId:r.entry.workId,outcome:t.outcome};n!==void 0&&(i={...i,diagnostic:n}),SP(e,{sessionId:t.sessionId,id:wM.fact.generate(),entry:i})}})}function VN(e,t,n){return ON(e,t,{id:n})}function HN(e,t,n){return ON(e,t,{workId:n})}function UN(e,t,n){return ON(e,t,{requestId:n})}function WN(e,t,n){return wN(e,t),e.sql.exec(`SELECT 1 AS present FROM session_entries
|
|
357
357
|
INDEXED BY idx_session_entries_work_terminal
|
|
358
358
|
WHERE session_id = ? AND work_id = ?
|
|
359
359
|
AND type IN ('run_terminal', 'work_terminal')
|
|
360
|
-
LIMIT 1`,t,n).toArray().length>0}function
|
|
360
|
+
LIMIT 1`,t,n).toArray().length>0}function GN(e,t,n){return wN(e,t),Object.freeze(e.sql.exec(`SELECT ${cN}
|
|
361
361
|
FROM session_entries
|
|
362
362
|
WHERE session_id = ? AND work_id = ?
|
|
363
|
-
ORDER BY sequence ASC`,t,n).toArray().map(t=>
|
|
363
|
+
ORDER BY sequence ASC`,t,n).toArray().map(t=>bN(e,t)))}function KN(e,t,n){let r=e.sql.exec(`SELECT ${cN}
|
|
364
364
|
FROM session_entries
|
|
365
365
|
WHERE session_id = ? AND work_id = ? AND type = 'live_retry'
|
|
366
366
|
ORDER BY sequence DESC
|
|
367
|
-
LIMIT 1`,t,n).toArray()[0];if(r===void 0)return;let i=
|
|
367
|
+
LIMIT 1`,t,n).toArray()[0];if(r===void 0)return;let i=bN(e,r);if(i.entry.kind!==`live_retry`)throw $(`Stored live retry entry is invalid`);return{event:i.entry.event,timestamp:i.timestamp}}function qN(e,t,n,r){return e.sql.exec(`SELECT 1 FROM session_entries INDEXED BY idx_session_entries_successful_tool
|
|
368
368
|
WHERE session_id = ? AND work_id = ? AND type = 'tool_outcome'
|
|
369
369
|
AND json_extract(data_json, '$.result.isError') = 0
|
|
370
|
-
AND json_extract(data_json, '$.call.id') = ? LIMIT 1`,t,n,r).toArray().length>0}function
|
|
370
|
+
AND json_extract(data_json, '$.call.id') = ? LIMIT 1`,t,n,r).toArray().length>0}function JN(e,t,n){let r=e.sql.exec(`SELECT ${sN(`intent`)}
|
|
371
371
|
FROM session_entries AS intent
|
|
372
372
|
WHERE intent.session_id = ? AND intent.work_id = ?
|
|
373
373
|
AND intent.type = 'tool_intent'
|
|
@@ -380,9 +380,9 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
380
380
|
json_extract(intent.data_json, '$.toolCall.value')
|
|
381
381
|
)
|
|
382
382
|
ORDER BY intent.sequence DESC
|
|
383
|
-
LIMIT 1`,t,n).toArray()[0];if(r===void 0)return;let i=
|
|
383
|
+
LIMIT 1`,t,n).toArray()[0];if(r===void 0)return;let i=bN(e,r);if(i.entry.kind!==`tool_intent`)throw $(`Stored tool intent is invalid`);return i.entry.call.name}function YN(e,t){let n=aN(e.sql.exec(`SELECT COALESCE(MAX(sequence), 0) + 1 AS next_sequence
|
|
384
384
|
FROM session_entries
|
|
385
|
-
WHERE session_id = ?`,t).one());if(n._tag===`Failure`)throw $(`Next Session sequence is invalid`);return n.success.next_sequence}function
|
|
385
|
+
WHERE session_id = ?`,t).one());if(n._tag===`Failure`)throw $(`Next Session sequence is invalid`);return n.success.next_sequence}function XN(e,t){let n=aN(e.sql.exec(`SELECT COALESCE(MAX(sequence), 0) + 1 AS next_sequence
|
|
386
386
|
FROM (
|
|
387
387
|
SELECT sequence
|
|
388
388
|
FROM session_command_admissions
|
|
@@ -391,9 +391,9 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
391
391
|
SELECT sequence
|
|
392
392
|
FROM session_entries
|
|
393
393
|
WHERE session_id = ? AND type = 'command'
|
|
394
|
-
)`,t,t).one());if(n._tag===`Failure`)throw $(`Next command admission sequence is invalid`);return n.success.next_sequence}function
|
|
394
|
+
)`,t,t).one());if(n._tag===`Failure`)throw $(`Next command admission sequence is invalid`);return n.success.next_sequence}function ZN(e,t){let n=wN(e,t);if(n!==void 0)return n;let r=Date.now();e.sql.exec(`INSERT INTO sessions
|
|
395
395
|
(id, cwd, parent_session, leaf_id, created_at, updated_at, metadata_json)
|
|
396
|
-
VALUES (?, '/', NULL, NULL, ?, ?, NULL)`,t,r,r),
|
|
396
|
+
VALUES (?, '/', NULL, NULL, ?, ?, NULL)`,t,r,r),_M(e,{sessionId:t,activityAt:r,title:``});let i=wN(e,t);if(i===void 0)throw $(`Created Session row is unavailable`);return i}function QN(e,t,n){return e.transactionSync(()=>$N(e,t,n))}function $N(e,t,n){let r=e.sql.exec(`SELECT session_id FROM session_creation_receipts WHERE request_id = ?`,t).toArray()[0];if(r!==void 0){let e=ZM(r);if(e._tag===`Failure`)throw $(`Session creation receipt is invalid`);return e.success.session_id}n();let i=wM.session.generate();return ZN(e,i),e.sql.exec(`INSERT INTO session_creation_receipts (request_id, session_id) VALUES (?, ?)`,t,i),i}function eP(e,t){return e.transactionSync(()=>{if(!(e.sql.exec(`SELECT id FROM sessions WHERE id = ?`,t.sessionId).toArray().length>0))return!1;t.assertIdleSession(t.sessionId),t.recordInboxDeletion(t.sessionId);for(let n of[`DELETE FROM session_command_admissions WHERE session_id = ?`,`DELETE FROM session_attention WHERE session_id = ?`,`DELETE FROM session_work_senders WHERE session_id = ?`,`DELETE FROM session_tool_grants WHERE session_id = ?`,`DELETE FROM session_inbox WHERE session_id = ?`,`DELETE FROM session_creation_receipts WHERE session_id = ?`,`DELETE FROM sessions WHERE id = ?`,`DELETE FROM session_entries WHERE session_id = ?`,`DELETE FROM session_lineage_damage WHERE session_id = ?`])e.sql.exec(n,t.sessionId);return!0})}var tP=3,nP=`shiitake.extension/v0`;function rP(e,t){let n=e.sql.exec(`SELECT name FROM sqlite_master WHERE type = 'table' AND name = ?`,t).toArray()[0];if(n===void 0)return!1;if(tN(n)._tag===`Failure`)throw $(`Store catalog row is invalid`);return!0}function iP(e){if(!rP(e,`woodstock_schema`))return rP(e,`sessions`)?`unmarked`:`fresh`;if(!e.sql.exec(`PRAGMA table_info(woodstock_schema)`).toArray().some(e=>e.name===`protocol`))return`unmarked`;let t=e.sql.exec(`SELECT version, protocol FROM woodstock_schema`).toArray();if(t.length!==1)return`unmarked`;let n=eN(t[0]);return n._tag===`Success`&&n.success.version===tP?`v0`:`unmarked`}function aP(e){let t=iP(e);if(t!==`v0`){if(t===`unmarked`)throw gN(`Woodstock store has no current v0 schema marker; incompatible storage requires explicit host custody. To reset, stop the owning host before resetting a local store, then remove its database file and the file's .owner.sqlite sidecar. Reset discards that store's data. For the Hub, a Hub Agent is erased only with its Team; Team erasure is destructive and separately authorized, never a routine single-Agent repair. No migration runs.`);e.sql.exec(`CREATE TABLE woodstock_schema (version INTEGER NOT NULL, protocol TEXT NOT NULL)`),e.sql.exec(`INSERT INTO woodstock_schema (version, protocol) VALUES (?, ?)`,tP,nP)}}function oP(e){e.sql.exec(`
|
|
397
397
|
CREATE TABLE IF NOT EXISTS session_entries (
|
|
398
398
|
id TEXT PRIMARY KEY,
|
|
399
399
|
session_id TEXT NOT NULL,
|
|
@@ -409,9 +409,9 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
409
409
|
completed_at INTEGER,
|
|
410
410
|
UNIQUE (session_id, sequence)
|
|
411
411
|
)
|
|
412
|
-
`)}var
|
|
412
|
+
`)}var sP=[`session_entries_lineage_insert`,`session_entries_lineage_update`,`session_entries_lineage_delete`,`session_entries_damaged_session`,`session_entries_lineage_replace`,`session_entries_lineage_replace_position`],cP=T(N({installed:V.pipe(R(B(0)))}),OM),lP=T(N({session_id:j}),OM),uP=`Woodstock Session holds a broken lineage; a store never repairs itself — delete this Session (deleteSession), or reset the owning store`,dP=T(N({damaged:V.pipe(R(Bm(0))),first:j}),OM),fP=class extends W{store;sessionId;constructor(e,t,n){super(`store`,`unavailable`,n),this.store=e,this.sessionId=t}get diagnostic(){return`${this.store}: Woodstock Session ${this.sessionId} holds a broken lineage; delete it with deleteSession("${this.sessionId}"), or reset the owning store`}};function pP(e,t){let n=e.storeName??`Woodstock store`;return new fP(n,t,`${n}: ${hP(e,t)}`)}function mP(e,t){return e.sql.exec(`SELECT session_id FROM session_lineage_damage WHERE session_id = ?`,t).toArray().length>0}function hP(e,t){let n=dP(e.sql.exec(`SELECT COUNT(*) AS damaged, MIN(session_id) AS first FROM session_lineage_damage`).one());if(n._tag===`Failure`)throw $(`Stored Session lineage damage is invalid`);let{damaged:r,first:i}=n.success;return`Woodstock Session ${t} holds a broken lineage (this store has ${String(r)} damaged Session${r===1?``:`s`}, first ${i}); a store never repairs itself — delete this Session with deleteSession("${t}"), or reset the owning store: for a Durable Object, erase all of its storage (DurableObjectStorage.deleteAll(); a Hub Agent is erased only with its Team, POST /operator/teams/:teamId/erasure-durable-objects); for a local store, remove its file and the file's .owner.sqlite sidecar`}function gP(e){e.sql.exec(`CREATE TABLE IF NOT EXISTS session_lineage_damage (session_id TEXT PRIMARY KEY)`);let t=cP(e.sql.exec(`SELECT COUNT(*) AS installed FROM sqlite_master
|
|
413
413
|
WHERE type = 'trigger'
|
|
414
|
-
AND name IN (SELECT value FROM json_each(?))`,JSON.stringify(
|
|
414
|
+
AND name IN (SELECT value FROM json_each(?))`,JSON.stringify(sP)).one());if(t._tag===`Failure`)throw $(`Stored Session lineage guards are invalid`);if(t.success.installed!==sP.length){let t=e.sql.exec(`SELECT child.session_id AS session_id
|
|
415
415
|
FROM session_entries AS child
|
|
416
416
|
LEFT JOIN session_entries AS parent ON parent.id = child.parent_id
|
|
417
417
|
WHERE child.parent_id IS NOT NULL
|
|
@@ -422,7 +422,7 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
422
422
|
UNION
|
|
423
423
|
SELECT session_id FROM session_entries
|
|
424
424
|
WHERE parent_id IS NULL AND state = 'complete'
|
|
425
|
-
GROUP BY session_id HAVING COUNT(*) > 1`).toArray().map(e=>{let t=
|
|
425
|
+
GROUP BY session_id HAVING COUNT(*) > 1`).toArray().map(e=>{let t=lP(e);if(t._tag===`Failure`)throw $(`Stored Session lineage audit is invalid`);return t.success.session_id});for(let n of t)e.sql.exec(`INSERT OR IGNORE INTO session_lineage_damage (session_id) VALUES (?)`,n),_M(e,{sessionId:n,title:null})}e.sql.exec(`
|
|
426
426
|
CREATE TRIGGER IF NOT EXISTS session_entries_lineage_replace
|
|
427
427
|
BEFORE INSERT ON session_entries
|
|
428
428
|
WHEN EXISTS (
|
|
@@ -452,7 +452,7 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
452
452
|
WHEN EXISTS (
|
|
453
453
|
SELECT 1 FROM session_lineage_damage WHERE session_id = NEW.session_id)
|
|
454
454
|
BEGIN
|
|
455
|
-
SELECT RAISE(ABORT, '${
|
|
455
|
+
SELECT RAISE(ABORT, '${uP}');
|
|
456
456
|
END
|
|
457
457
|
`),e.sql.exec(`
|
|
458
458
|
CREATE TRIGGER IF NOT EXISTS session_entries_lineage_insert
|
|
@@ -487,7 +487,7 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
487
487
|
BEGIN
|
|
488
488
|
SELECT RAISE(ABORT, 'Session entry still has children');
|
|
489
489
|
END
|
|
490
|
-
`)}function
|
|
490
|
+
`)}function _P(e){e.transactionSync(()=>{aP(e),e.sql.exec(`
|
|
491
491
|
CREATE TABLE IF NOT EXISTS sessions (
|
|
492
492
|
id TEXT PRIMARY KEY,
|
|
493
493
|
cwd TEXT NOT NULL,
|
|
@@ -497,7 +497,7 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
497
497
|
updated_at INTEGER NOT NULL,
|
|
498
498
|
metadata_json TEXT
|
|
499
499
|
)
|
|
500
|
-
`),
|
|
500
|
+
`),oP(e),pj(e),BO(e),XO(e),Mk(e),Gj(e),mM(e),e.sql.exec(`
|
|
501
501
|
CREATE TABLE IF NOT EXISTS session_creation_receipts (
|
|
502
502
|
request_id TEXT PRIMARY KEY,
|
|
503
503
|
session_id TEXT NOT NULL UNIQUE REFERENCES sessions(id)
|
|
@@ -518,7 +518,7 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
518
518
|
ON session_entries(session_id, json_extract(data_json, '$.targetWorkId'))
|
|
519
519
|
WHERE type = 'cancellation'`),e.sql.exec(`CREATE INDEX IF NOT EXISTS idx_session_entries_successful_tool
|
|
520
520
|
ON session_entries(session_id, work_id, json_extract(data_json, '$.call.id'))
|
|
521
|
-
WHERE type = 'tool_outcome' AND json_extract(data_json, '$.result.isError') = 0`),
|
|
521
|
+
WHERE type = 'tool_outcome' AND json_extract(data_json, '$.result.isError') = 0`),gP(e),e.sql.exec(`
|
|
522
522
|
CREATE TABLE IF NOT EXISTS session_request_withdrawals (
|
|
523
523
|
session_id TEXT NOT NULL,
|
|
524
524
|
request_id TEXT NOT NULL,
|
|
@@ -543,14 +543,14 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
543
543
|
UNIQUE (session_id, request_id),
|
|
544
544
|
UNIQUE (session_id, work_id)
|
|
545
545
|
)
|
|
546
|
-
`)}),
|
|
546
|
+
`)}),KA(e)}function vP(e,t){let n=wN(e,t)?.leaf_id;return n==null?null:XP(e,t,n)}function yP(e,t){let n=wN(e,t)?.leaf_id;return n==null?null:YP(e,t,n)?.sequence??null}function bP(e,t,n){return e.transactionSync(()=>SP(e,{sessionId:t,id:wM.fact.generate(),entry:{kind:`model_preference`,workId:null,preference:n}}))}function xP(e,t,n){e.transactionSync(()=>{ZN(e,t);let r=n===null?null:RM({title:n});e.sql.exec(`SELECT 1 FROM sessions WHERE id = ? AND metadata_json IS ?`,t,r).toArray().length>0||(e.sql.exec(`UPDATE sessions SET metadata_json = ? WHERE id = ?`,r,t),_M(e,{sessionId:t,title:hN(e,t)}))})}function SP(e,t){let n=EN(e,ZN(e,t.sessionId)),r=t.state??`complete`;if(r===`streaming`!=(t.entry.kind===`message_start`))throw $(`A message start must be the streaming entry`);if(r===`streaming`&&t.entry.kind===`message_start`&&t.id!==t.entry.message.value)throw $(`Message placeholder identity does not match its row`);let i=Date.now(),a=YN(e,t.sessionId);e.sql.exec(`INSERT INTO session_entries
|
|
547
547
|
(id, session_id, parent_id, sequence, type, role, state,
|
|
548
548
|
request_id, work_id, data_json, timestamp, completed_at)
|
|
549
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,t.id,t.sessionId,n?.id??null,a,t.entry.kind,
|
|
549
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,t.id,t.sessionId,n?.id??null,a,t.entry.kind,vN(t.entry),r,_N(t.entry),t.entry.workId,NA(t.entry),i,r===`complete`?i:null),r===`complete`&&(e.sql.exec(`UPDATE sessions SET leaf_id = ?, updated_at = ? WHERE id = ?`,t.id,i,t.sessionId),_M(e,t.entry.kind===`command`?{sessionId:t.sessionId,activityAt:i,title:hN(e,t.sessionId)}:{sessionId:t.sessionId,activityAt:i}));let o=TN(e,t.sessionId,t.id);if(o===void 0)throw $(`Appended Session entry is unavailable`);return o}function CP(e,t){let n=EN(e,ZN(e,t.sessionId)),r=TN(e,t.sessionId,t.id),i=Date.now(),a=r?.state===`streaming`&&r.parentId!==(n?.id??null),o=a?n?.id??null:r?.parentId??n?.id??null,s=a?YN(e,t.sessionId):r?.sequence??YN(e,t.sessionId),c=r?.timestamp??i;if(t.id!==t.entry.message.value)throw $(`Completed message identity does not match its row`);if(r!==void 0){let e=r.entry;if(e.kind!==`message_start`&&e.kind!==`message`)throw $(`Completed Session leaf is not a message entry`);if(e.workId!==t.entry.workId||!yN(e.run,t.entry.run)||!yN(e.turn,t.entry.turn)||!yN(e.message,t.entry.message)||e.kind===`message_start`&&e.role!==t.entry.value.role)throw $(`Completed message does not match its placeholder`)}e.sql.exec(`INSERT OR REPLACE INTO session_entries
|
|
550
550
|
(id, session_id, parent_id, sequence, type, role, state,
|
|
551
551
|
request_id, work_id, data_json, timestamp, completed_at)
|
|
552
552
|
VALUES (?, ?, ?, ?, 'message', ?, 'complete',
|
|
553
|
-
NULL, ?, ?, ?, ?)`,t.id,t.sessionId,o,s,
|
|
553
|
+
NULL, ?, ?, ?, ?)`,t.id,t.sessionId,o,s,vN(t.entry),t.entry.workId,NA(t.entry),c,i),e.sql.exec(`UPDATE sessions SET leaf_id = ?, updated_at = ? WHERE id = ?`,t.id,i,t.sessionId),_M(e,{sessionId:t.sessionId,activityAt:i});let l=TN(e,t.sessionId,t.id);if(l===void 0)throw $(`Completed Session leaf is unavailable`);return l}var wP=4e3,TP=4194304,EP={selected:`WITH RECURSIVE branch (id, parent_id, sequence, state) AS (
|
|
554
554
|
SELECT id, parent_id, sequence, state
|
|
555
555
|
FROM session_entries
|
|
556
556
|
WHERE session_id = ? AND id = ?
|
|
@@ -572,10 +572,10 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
572
572
|
WHERE parent.id = child.parent_id AND parent.session_id = ?
|
|
573
573
|
AND child.sequence > ?
|
|
574
574
|
AND parent.state != 'streaming'
|
|
575
|
-
)`},
|
|
575
|
+
)`},DP={selected:{empty:`Selected Session leaf is unavailable`,missingParent:`Selected Session path has a missing parent`,invalid:`Selected Session path is invalid`},fork:{empty:`Fork entry is unavailable`,missingParent:`Fork path has a missing parent`,invalid:`Fork path is invalid`}},OP=T(N({id:AM,parent_id:L(j),sequence:jM,state:I([`complete`,`streaming`])}),OM),kP=new WeakMap;function AP(e,t,n,r=2**53-1){let i=kP.get(e);kP.set(e,{sessionId:t,before:r,encoded:new Map});try{return e.transactionSync(n)}finally{i===void 0?kP.delete(e):kP.set(e,i)}}function jP(e,t,n){return kP.get(e)?.sessionId===t?n():e.transactionSync(n)}function MP(e,t,n,r){let i=kP.get(e);if(i?.sessionId!==t)return;i.ancestry??=e.sql.exec(`WITH RECURSIVE read_window (before_sequence, rows) AS (VALUES (?, ?)),
|
|
576
576
|
ancestry (id, parent_id, sequence, state, head, context_closed, taken) AS (
|
|
577
577
|
SELECT id, parent_id, sequence, state,
|
|
578
|
-
${
|
|
578
|
+
${oF(`session_entries`)}, 0,
|
|
579
579
|
CASE WHEN state != 'streaming'
|
|
580
580
|
AND sequence < (SELECT before_sequence FROM read_window)
|
|
581
581
|
THEN 1 ELSE 0 END
|
|
@@ -583,7 +583,7 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
583
583
|
WHERE session_id = ? AND id = ?
|
|
584
584
|
UNION ALL
|
|
585
585
|
SELECT parent.id, parent.parent_id, parent.sequence, parent.state,
|
|
586
|
-
COALESCE(child.head, ${
|
|
586
|
+
COALESCE(child.head, ${oF(`parent`)}),
|
|
587
587
|
child.context_closed OR
|
|
588
588
|
(child.head IS child.id AND child.state != 'streaming'),
|
|
589
589
|
child.taken + CASE WHEN parent.state != 'streaming'
|
|
@@ -600,13 +600,13 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
600
600
|
SELECT id, parent_id, sequence, state FROM ancestry
|
|
601
601
|
WHERE context_closed = 0
|
|
602
602
|
OR sequence <= (SELECT before_sequence FROM read_window)
|
|
603
|
-
ORDER BY sequence DESC`,i.before,201,t,n,t).toArray().map(e=>{let t=
|
|
603
|
+
ORDER BY sequence DESC`,i.before,201,t,n,t).toArray().map(e=>{let t=OP(e);if(t._tag===`Failure`)throw $(`Stored Session ancestry is invalid`);return t.success});let a=i.ancestry.findIndex(({id:e})=>e===n);if(a===-1)return;let o=i.ancestry.slice(a);if(r!==void 0){let e=o.at(-1);if(e!==void 0&&e.parent_id!==null&&e.sequence>r.floor+1)return;let t=r.ceiling??2**53-1;for(let e=1;e<o.length;e+=1){let n=o[e-1],i=o[e];if(n!==void 0&&i!==void 0&&n.parent_id!==i.id&&r.floor<n.sequence-1&&t>i.sequence)return}}let s=i.encoded.get(n);if(s!==void 0)return s;let c=JSON.stringify(o);return i.encoded.set(n,c),c}function NP(e){return`${e} AS MATERIALIZED (
|
|
604
604
|
SELECT json_extract(value, '$.id') AS id,
|
|
605
605
|
json_extract(value, '$.parent_id') AS parent_id,
|
|
606
606
|
json_extract(value, '$.sequence') AS sequence,
|
|
607
607
|
json_extract(value, '$.state') AS state
|
|
608
608
|
FROM json_each(?)
|
|
609
|
-
)`}var
|
|
609
|
+
)`}var PP=V.pipe(R(B(0))),FP=T(N({length:PP,root_id:L(AM),root_parent_id:L(j),broken:PP,newest_id:L(AM),newest_sequence:L(jM)}),OM),IP=T(N({sequence:jM}),OM),LP=T(N({work_id:AM}),OM),RP=T(N({work_id:AM,diagnostic:j}),OM);function zP(e,t,n,r,...i){let a=t.walk===`selected`?MP(e,t.sessionId,t.tipId,n):void 0;return a===void 0?e.sql.exec(`${EP[t.walk]} ${r}`,t.sessionId,t.tipId,t.sessionId,n.floor,...i).toArray():e.sql.exec(`WITH ${NP(`branch`)} ${r}`,a,...i).toArray()}function BP(e,t,n,r){let i=DP[r],a=FP(e.sql.exec(`${EP[r]},
|
|
610
610
|
kept AS MATERIALIZED (
|
|
611
611
|
SELECT id, parent_id, sequence FROM branch
|
|
612
612
|
WHERE state != 'streaming'
|
|
@@ -624,7 +624,7 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
624
624
|
WHERE previous IS NOT NULL AND parent_id IS NOT previous) AS broken,
|
|
625
625
|
(SELECT id FROM kept ORDER BY sequence DESC LIMIT 1) AS newest_id,
|
|
626
626
|
(SELECT sequence FROM kept ORDER BY sequence DESC LIMIT 1)
|
|
627
|
-
AS newest_sequence`,t,n,t,0).one());if(a._tag===`Failure`)throw $(`Stored Session lineage check is invalid`);let o=a.success;if(o.length===0||o.root_id===null||o.newest_id===null||o.newest_sequence===null)throw $(i.empty);if(o.root_parent_id!==null)throw $(i.missingParent);if(o.broken!==0)throw $(i.invalid);return Object.freeze({sessionId:t,walk:r,tipId:n,rootId:o.root_id,newestId:o.newest_id,newestSequence:o.newest_sequence})}var
|
|
627
|
+
AS newest_sequence`,t,n,t,0).one());if(a._tag===`Failure`)throw $(`Stored Session lineage check is invalid`);let o=a.success;if(o.length===0||o.root_id===null||o.newest_id===null||o.newest_sequence===null)throw $(i.empty);if(o.root_parent_id!==null)throw $(i.missingParent);if(o.broken!==0)throw $(i.invalid);return Object.freeze({sessionId:t,walk:r,tipId:n,rootId:o.root_id,newestId:o.newest_id,newestSequence:o.newest_sequence})}var VP=T(N({state:I([`complete`,`streaming`]),newest_sequence:jM,root_id:L(AM),root_parent_id:L(j)}),OM);function HP(e,t){let n=wN(e,t.sessionId),r=t.leafId??n?.leaf_id;if(r==null)return;let i=DP.selected,a=e.sql.exec(`SELECT tip.state AS state, tip.sequence AS newest_sequence,
|
|
628
628
|
root.id AS root_id, root.parent_id AS root_parent_id
|
|
629
629
|
FROM session_entries AS tip
|
|
630
630
|
LEFT JOIN (
|
|
@@ -632,12 +632,12 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
632
632
|
WHERE session_id = ? AND state = 'complete'
|
|
633
633
|
ORDER BY sequence ASC LIMIT 1
|
|
634
634
|
) AS root
|
|
635
|
-
WHERE tip.session_id = ? AND tip.id = ?`,t.sessionId,t.sessionId,r).toArray()[0];if(a===void 0)throw $(i.empty);let o=
|
|
635
|
+
WHERE tip.session_id = ? AND tip.id = ?`,t.sessionId,t.sessionId,r).toArray()[0];if(a===void 0)throw $(i.empty);let o=VP(a);if(o._tag===`Failure`)throw $(`Stored Session lineage ends are invalid`);if(o.success.state!==`complete`||o.success.root_id===null)throw $(i.empty);if(o.success.root_parent_id!==null)throw $(i.missingParent);return Object.freeze({sessionId:t.sessionId,walk:`selected`,tipId:r,rootId:o.success.root_id,newestId:r,newestSequence:o.success.newest_sequence})}function UP(e,t,n,r){let i=Object.freeze(zP(e,t,{floor:n-1,ceiling:r},`SELECT ${cN}
|
|
636
636
|
FROM session_entries
|
|
637
637
|
WHERE session_id = ? AND state != 'streaming'
|
|
638
638
|
AND sequence BETWEEN ? AND ?
|
|
639
639
|
AND id IN (SELECT id FROM branch)
|
|
640
|
-
ORDER BY sequence ASC`,t.sessionId,n,r).map(t=>
|
|
640
|
+
ORDER BY sequence ASC`,t.sessionId,n,r).map(t=>bN(e,t))),a=DP.selected,o=i[0];if(o!==void 0&&o.parentId!==null&&o.sequence!==n)throw $(a.missingParent);let s;for(let e of i){if(s!==void 0&&e.parentId!==s.id)throw $(a.invalid);s=e}return i}var WP=T(N({sizes:U(P(im([jM,PP]))),deepest_parent:L(j),deepest_sequence:L(jM)}),OM);function GP(e,t,n,r,i,a){let o=t.walk===`selected`?MP(e,t.sessionId,t.tipId):void 0;if(o!==void 0){let s=kP.get(e)?.ancestry?.filter(e=>e.sequence<=t.newestSequence&&e.state!==`streaming`&&e.sequence>r&&e.sequence<i),c=n===`newest`?s?.[a-1]:void 0;o=MP(e,t.sessionId,t.tipId,{floor:c===void 0?r:c.sequence-1,ceiling:i-1})}let s=n===`newest`?`DESC`:`ASC`,c=`SELECT
|
|
641
641
|
(SELECT json_group_array(json_array(sequence, bytes)) FROM (
|
|
642
642
|
SELECT sequence, octet_length(data_json) AS bytes
|
|
643
643
|
FROM session_entries
|
|
@@ -652,7 +652,7 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
652
652
|
(SELECT sequence FROM branch ORDER BY sequence ASC LIMIT 1)
|
|
653
653
|
AS deepest_sequence`,l=e=>`CASE WHEN ${e}.state != 'streaming'
|
|
654
654
|
AND ${e}.sequence < ? AND ${e}.sequence > ?
|
|
655
|
-
THEN 1 ELSE 0 END`,u=
|
|
655
|
+
THEN 1 ELSE 0 END`,u=WP((o===void 0?n===`newest`?e.sql.exec(`WITH RECURSIVE branch (id, parent_id, sequence, state, taken) AS (
|
|
656
656
|
SELECT id, parent_id, sequence, state,
|
|
657
657
|
${l(`session_entries`)}
|
|
658
658
|
FROM session_entries
|
|
@@ -666,26 +666,26 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
666
666
|
AND +parent.sequence < child.sequence
|
|
667
667
|
AND child.taken < ? AND child.sequence > ?
|
|
668
668
|
)
|
|
669
|
-
${c}`,i,r,t.sessionId,t.tipId,i,r,t.sessionId,a,r,r,i,a).toArray():
|
|
669
|
+
${c}`,i,r,t.sessionId,t.tipId,i,r,t.sessionId,a,r,r,i,a).toArray():zP(e,t,{floor:r},c,t.sessionId,r,i,a):e.sql.exec(`WITH ${NP(`branch`)},
|
|
670
670
|
candidates AS MATERIALIZED (
|
|
671
671
|
SELECT id FROM branch
|
|
672
672
|
WHERE state != 'streaming' AND sequence > ? AND sequence < ?
|
|
673
673
|
ORDER BY sequence ${s} LIMIT ?
|
|
674
|
-
) ${c}`,o,r,i,a,...n===`newest`?[]:[t.sessionId],r,i,a).toArray())[0]);if(u._tag===`Failure`)throw $(`Stored Session entry size is invalid`);let{sizes:d,deepest_parent:f,deepest_sequence:p}=u.success;if(!(f===null||p===null||p<=r||n===`newest`&&d.length===a))throw $(
|
|
674
|
+
) ${c}`,o,r,i,a,...n===`newest`?[]:[t.sessionId],r,i,a).toArray())[0]);if(u._tag===`Failure`)throw $(`Stored Session entry size is invalid`);let{sizes:d,deepest_parent:f,deepest_sequence:p}=u.success;if(!(f===null||p===null||p<=r||n===`newest`&&d.length===a))throw $(DP.selected.missingParent);return Object.freeze(d.map(([e,t])=>({sequence:e,bytes:t})).sort((e,t)=>n===`newest`?t.sequence-e.sequence:e.sequence-t.sequence))}function KP(e,t,n){let r=GP(e,t,n.from,n.after??0,n.before??2**53-1,n.rows+1),i=0,a=0;for(let e of r){if(i===n.rows||i>0&&a+e.bytes>TP)break;a+=e.bytes,i+=1}let o=r[0],s=r[i-1];return Object.freeze(o===void 0||s===void 0?{rows:Object.freeze([]),more:!1}:{rows:UP(e,t,Math.min(o.sequence,s.sequence),Math.max(o.sequence,s.sequence)),more:r.length>i})}function qP(e,t,n){return zP(e,t,{floor:n-1,ceiling:n},`SELECT 1 AS present
|
|
675
675
|
FROM session_entries
|
|
676
676
|
WHERE session_id = ? AND state != 'streaming' AND sequence = ?
|
|
677
|
-
AND id IN (SELECT id FROM branch)`,t.sessionId,n).length>0}function
|
|
678
|
-
WHERE session_id = ? AND id = ? AND state != 'streaming'`,t.sessionId,n).toArray()[0];if(r===void 0)return;let i=
|
|
677
|
+
AND id IN (SELECT id FROM branch)`,t.sessionId,n).length>0}function JP(e,t,n){let r=e.sql.exec(`SELECT sequence FROM session_entries
|
|
678
|
+
WHERE session_id = ? AND id = ? AND state != 'streaming'`,t.sessionId,n).toArray()[0];if(r===void 0)return;let i=IP(r);if(i._tag===`Failure`)throw $(`Stored Session entry sequence is invalid`);return qP(e,t,i.success.sequence)?i.success.sequence:void 0}function YP(e,t,n){let[r]=tF(e,t,n,`SELECT id, sequence FROM session_entries
|
|
679
679
|
WHERE session_id = ? AND type = 'model_preference'
|
|
680
680
|
AND state != 'streaming'`,[t],e=>`${e}.id NOT IN (SELECT id FROM targets)
|
|
681
|
-
AND ${e}.sequence > (SELECT MIN(sequence) FROM targets)`);return r===void 0?void 0:
|
|
681
|
+
AND ${e}.sequence > (SELECT MIN(sequence) FROM targets)`);return r===void 0?void 0:TN(e,t,r)}function XP(e,t,n){let r=YP(e,t,n)?.entry;return r?.kind===`model_preference`?r.preference:null}function ZP(e,t,n,r){if(t===void 0)return;let i=zP(e,t,{floor:0},`SELECT ${cN}
|
|
682
682
|
FROM session_entries
|
|
683
683
|
WHERE session_id = ? AND state != 'streaming' AND type = 'document'
|
|
684
684
|
AND json_extract(data_json, '$.extensionId') = ?
|
|
685
685
|
AND json_extract(data_json, '$.name') = ?
|
|
686
686
|
AND id IN (SELECT id FROM branch)
|
|
687
687
|
ORDER BY sequence DESC
|
|
688
|
-
LIMIT 1`,t.sessionId,n,r)[0],a=i===void 0?void 0:
|
|
688
|
+
LIMIT 1`,t.sessionId,n,r)[0],a=i===void 0?void 0:bN(e,i).entry;if(a!==void 0){if(a.kind!==`document`||a.extensionId!==n||a.name!==r)throw $(`Stored Session document disagrees with its row`);return a.valueJson}}var QP=T(N({oldest:L(jM),newest:L(jM)}),OM);function $P(e,t,n){if(n.size===0)return Object.freeze({commands:new Set,diagnostics:new Map,cancellations:new Map});let r=JSON.stringify([...n]),i=QP(e.sql.exec(`SELECT MIN(oldest) AS oldest, MAX(newest) AS newest FROM (
|
|
689
689
|
SELECT MIN(sequence) AS oldest, MAX(sequence) AS newest
|
|
690
690
|
FROM session_entries INDEXED BY idx_session_entries_work
|
|
691
691
|
WHERE work_id IN (SELECT value FROM json_each(?))
|
|
@@ -696,11 +696,11 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
696
696
|
WHERE session_id = ? AND type = 'cancellation'
|
|
697
697
|
AND json_extract(data_json, '$.targetWorkId')
|
|
698
698
|
IN (SELECT value FROM json_each(?))
|
|
699
|
-
)`,r,t.sessionId,t.sessionId,r).one());if(i._tag===`Failure`)throw $(`Stored Session work order is invalid`);if(i.success.oldest===null||i.success.newest===null)return Object.freeze({commands:new Set,diagnostics:new Map,cancellations:new Map});let a=i.success.oldest-1,o={floor:a,ceiling:i.success.newest},s=new Set(
|
|
699
|
+
)`,r,t.sessionId,t.sessionId,r).one());if(i._tag===`Failure`)throw $(`Stored Session work order is invalid`);if(i.success.oldest===null||i.success.newest===null)return Object.freeze({commands:new Set,diagnostics:new Map,cancellations:new Map});let a=i.success.oldest-1,o={floor:a,ceiling:i.success.newest},s=new Set(zP(e,t,o,`SELECT DISTINCT work_id
|
|
700
700
|
FROM session_entries
|
|
701
701
|
WHERE session_id = ? AND sequence > ? AND state != 'streaming' AND type = 'command'
|
|
702
702
|
AND work_id IN (SELECT value FROM json_each(?))
|
|
703
|
-
AND id IN (SELECT id FROM branch)`,t.sessionId,a,r).map(e=>{let t=
|
|
703
|
+
AND id IN (SELECT id FROM branch)`,t.sessionId,a,r).map(e=>{let t=LP(e);if(t._tag===`Failure`)throw $(`Stored Session command work is invalid`);return t.success.work_id})),c=new Map;for(let n of zP(e,t,o,`SELECT work_id, diagnostic FROM (
|
|
704
704
|
SELECT work_id, sequence,
|
|
705
705
|
json_extract(data_json, '$.diagnostic') AS diagnostic
|
|
706
706
|
FROM session_entries
|
|
@@ -710,13 +710,13 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
710
710
|
AND id IN (SELECT id FROM branch)
|
|
711
711
|
)
|
|
712
712
|
WHERE diagnostic IS NOT NULL
|
|
713
|
-
ORDER BY sequence ASC`,t.sessionId,a,r)){let e=
|
|
713
|
+
ORDER BY sequence ASC`,t.sessionId,a,r)){let e=RP(n);if(e._tag===`Failure`)throw $(`Stored Session diagnostic is invalid`);c.set(e.success.work_id,e.success.diagnostic)}let l=new Map;for(let{entry:n}of zP(e,t,o,`SELECT ${cN}
|
|
714
714
|
FROM session_entries
|
|
715
715
|
WHERE session_id = ? AND sequence > ? AND state != 'streaming' AND type = 'cancellation'
|
|
716
716
|
AND json_extract(data_json, '$.targetWorkId')
|
|
717
717
|
IN (SELECT value FROM json_each(?))
|
|
718
718
|
AND id IN (SELECT id FROM branch)
|
|
719
|
-
ORDER BY sequence ASC`,t.sessionId,a,r).map(t=>
|
|
719
|
+
ORDER BY sequence ASC`,t.sessionId,a,r).map(t=>bN(e,t)))n.kind===`cancellation`&&n.meta!==void 0&&l.set(n.targetWorkId,n.meta);return Object.freeze({commands:s,diagnostics:c,cancellations:l})}function eF(e,t,n,r){return r===void 0?{sql:`walk (id, parent_id, sequence, state) AS (
|
|
720
720
|
SELECT id, parent_id, sequence, state
|
|
721
721
|
FROM session_entries
|
|
722
722
|
WHERE session_id = ? AND id = ?
|
|
@@ -727,7 +727,7 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
727
727
|
WHERE parent.id = child.parent_id AND parent.session_id = ?
|
|
728
728
|
AND +parent.sequence < child.sequence
|
|
729
729
|
AND ${n}
|
|
730
|
-
)`,bindings:[e,t,e],recursive:!0}:{sql:`${
|
|
730
|
+
)`,bindings:[e,t,e],recursive:!0}:{sql:`${NP(`ancestors`)},
|
|
731
731
|
stopped AS (
|
|
732
732
|
SELECT child.*,
|
|
733
733
|
COALESCE(SUM(CASE WHEN ${n} THEN 0 ELSE 1 END)
|
|
@@ -737,32 +737,32 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
737
737
|
),
|
|
738
738
|
walk AS (
|
|
739
739
|
SELECT id, parent_id, sequence, state FROM stopped WHERE stops = 0
|
|
740
|
-
)`,bindings:[r],recursive:!1}}function
|
|
740
|
+
)`,bindings:[r],recursive:!1}}function tF(e,t,n,r,i,a){let o=MP(e,t,n),s=o=>{let s=eF(t,n,a(`child`),o);return e.sql.exec(`WITH ${s.recursive?`RECURSIVE `:``}targets AS MATERIALIZED (
|
|
741
741
|
${r}
|
|
742
742
|
),
|
|
743
743
|
${s.sql}
|
|
744
|
-
${
|
|
744
|
+
${nF(a(`walk`))}`,...i,...s.bindings).toArray()},c=s(o);if(o!==void 0){let r=c.at(-1);if(r!==void 0){let i=iF(r);if(i._tag===`Failure`)throw $(`Stored Session walk row is invalid`);(i.success.continues===1&&i.success.parent_id!==null||MP(e,t,n,{floor:i.success.sequence-1})===void 0)&&(c=s(void 0))}}return aF(c)}function nF(e){return`SELECT id, parent_id, sequence, target, continues FROM (
|
|
745
745
|
SELECT id, parent_id, sequence,
|
|
746
746
|
id IN (SELECT id FROM targets) AS target,
|
|
747
747
|
COALESCE((${e}), 0) AS continues
|
|
748
748
|
FROM walk
|
|
749
749
|
)
|
|
750
750
|
WHERE target = 1 OR sequence = (SELECT MIN(sequence) FROM walk)
|
|
751
|
-
ORDER BY sequence DESC`}var
|
|
752
|
-
THEN json_extract(${e}.data_json, '$.head') END`}var
|
|
751
|
+
ORDER BY sequence DESC`}var rF=I([0,1]),iF=T(N({id:AM,parent_id:L(j),sequence:jM,target:rF,continues:rF}),OM);function aF(e){let t=DP.selected;if(e.length===0)throw $(t.empty);let n=e.map(e=>{let t=iF(e);if(t._tag===`Failure`)throw $(`Stored Session walk row is invalid`);return t.success}),r=n.at(-1);if(r?.continues===1&&r.parent_id!==null)throw $(t.missingParent);return n.flatMap(e=>e.target===1?[e.id]:[])}function oF(e){return`CASE WHEN ${e}.type = 'compaction' AND ${e}.state != 'streaming'
|
|
752
|
+
THEN json_extract(${e}.data_json, '$.head') END`}var sF=`WITH RECURSIVE walk (id, parent_id, sequence, state, head) AS (
|
|
753
753
|
SELECT id, parent_id, sequence, state,
|
|
754
|
-
${
|
|
754
|
+
${oF(`session_entries`)}
|
|
755
755
|
FROM session_entries
|
|
756
756
|
WHERE session_id = ? AND id = ?
|
|
757
757
|
UNION ALL
|
|
758
758
|
SELECT parent.id, parent.parent_id, parent.sequence, parent.state,
|
|
759
|
-
COALESCE(child.head, ${
|
|
759
|
+
COALESCE(child.head, ${oF(`parent`)})
|
|
760
760
|
FROM walk AS child
|
|
761
761
|
CROSS JOIN session_entries AS parent
|
|
762
762
|
WHERE parent.id = child.parent_id AND parent.session_id = ?
|
|
763
763
|
AND +parent.sequence < child.sequence
|
|
764
764
|
AND (child.head IS NOT child.id OR child.state = 'streaming')
|
|
765
|
-
)`;function
|
|
765
|
+
)`;function cF(e,t,n,r,i){let a=JSON.stringify(r.flatMap(({entry:e})=>e.kind===`command`?[e.workId]:[])),o=tF(e,t,n.id,`SELECT id, sequence FROM session_entries
|
|
766
766
|
WHERE session_id = ? AND type = 'compaction' AND work_id = ?
|
|
767
767
|
AND sequence < ? AND state != 'streaming'
|
|
768
768
|
UNION ALL
|
|
@@ -772,10 +772,10 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
772
772
|
WHERE session_id = ? AND type = 'cancellation'
|
|
773
773
|
AND json_extract(data_json, '$.targetWorkId')
|
|
774
774
|
IN (SELECT value FROM json_each(?))
|
|
775
|
-
AND sequence < ? AND state != 'streaming'`,[t,i,n.sequence,t,a,n.sequence],e=>`${e}.sequence > (SELECT MIN(sequence) FROM targets)`);return o.length===0?Object.freeze([]):Object.freeze(e.sql.exec(`SELECT ${
|
|
775
|
+
AND sequence < ? AND state != 'streaming'`,[t,i,n.sequence,t,a,n.sequence],e=>`${e}.sequence > (SELECT MIN(sequence) FROM targets)`);return o.length===0?Object.freeze([]):Object.freeze(e.sql.exec(`SELECT ${cN}
|
|
776
776
|
FROM session_entries
|
|
777
777
|
WHERE id IN (SELECT value FROM json_each(?))
|
|
778
|
-
ORDER BY sequence ASC`,JSON.stringify(o)).toArray().map(t=>
|
|
778
|
+
ORDER BY sequence ASC`,JSON.stringify(o)).toArray().map(t=>bN(e,t)))}function lF(e,t,n){let r=DP.selected,i=MP(e,t,n);kP.get(e)?.ancestry?.[0]?.id!==n&&(i=void 0);let a=i===void 0?{sql:sF,bindings:[t,n,t]}:{sql:`WITH ${NP(`ancestors`)},
|
|
779
779
|
boundary AS (
|
|
780
780
|
SELECT sequence, json_extract(data_json, '$.head') AS head
|
|
781
781
|
FROM session_entries
|
|
@@ -793,27 +793,27 @@ Only summarize information explicitly present above. Do not infer or recreate la
|
|
|
793
793
|
AND ancestors.sequence <= boundary.sequence
|
|
794
794
|
), 0)
|
|
795
795
|
)`,bindings:[i,t]},o=e.sql.exec(`${a.sql}
|
|
796
|
-
SELECT ${
|
|
796
|
+
SELECT ${cN}
|
|
797
797
|
FROM session_entries
|
|
798
798
|
WHERE id IN (SELECT id FROM walk) AND state != 'streaming'
|
|
799
|
-
ORDER BY sequence ASC`,...a.bindings).toArray().map(t=>
|
|
799
|
+
ORDER BY sequence ASC`,...a.bindings).toArray().map(t=>bN(e,t)),s=o[0];if(s===void 0)throw $(r.empty);let c,l;for(let e of o){if(l!==void 0&&e.parentId!==l.id)throw $(r.invalid);e.entry.kind===`compaction`&&(c=e.entry.head),l=e}let u=c===s.id;if(!u&&s.parentId!==null)throw $(r.missingParent);return Object.freeze({rows:Object.freeze(o),compacted:u})}function uF(e,t){let n=wN(e,t.sessionId)?.leaf_id;if(n==null)return Object.freeze([]);let r=lF(e,t.sessionId,n),i=r.rows[0];return!r.compacted||i===void 0?r.rows:Object.freeze([...cF(e,t.sessionId,i,r.rows,t.workId??null),...r.rows])}function dF(e,t,n){return e.entry.kind===`compaction`&&e.entry.workId===t||e.entry.kind===`cancellation`&&n.has(e.entry.targetWorkId)}function fF(e,t,n,r,i){let a=HP(e,{sessionId:t,leafId:n.id});if(a===void 0)throw $(`Accepted Session command lineage is unavailable`);let o=r===void 0?[]:zP(e,r,{floor:n.sequence},`SELECT ${cN}
|
|
800
800
|
FROM session_entries
|
|
801
801
|
WHERE session_id = ? AND sequence > ? AND state != 'streaming'
|
|
802
802
|
AND id IN (SELECT id FROM branch)
|
|
803
803
|
AND (work_id = ?
|
|
804
804
|
OR (type = 'command'
|
|
805
805
|
AND json_extract(data_json, '$.targetWorkId') = ?))
|
|
806
|
-
ORDER BY sequence ASC`,t,n.sequence,i,i).map(t=>
|
|
806
|
+
ORDER BY sequence ASC`,t,n.sequence,i,i).map(t=>bN(e,t)),s;for(let e of o)e.entry.kind===`compaction`&&(s=e.entry.head);let c=0,l;if(s===void 0){let r=lF(e,t,n.id);l=r.rows,r.compacted&&(c=r.rows[0]?.sequence??0)}else{let t=s;c=o.find(({id:e})=>e===t)?.sequence??JP(e,a,t)??0,l=c>n.sequence?[]:UP(e,a,Math.max(c,1),n.sequence)}if(c===0)return Object.freeze([...l,...o]);let u=[...l,...o.filter(({sequence:e})=>e>=c)],d=new Set(u.flatMap(({entry:e})=>e.kind===`command`?[e.workId]:[]));return Object.freeze([...cF(e,t,l[0]??n,u,i),...o.filter(e=>e.sequence<c&&dF(e,i,d)),...u])}function pF(e){let t=new Set,n=new Set;for(let{entry:r}of e)r.kind===`command`&&t.add(r.workId),r.kind===`cancellation`&&!t.has(r.targetWorkId)&&n.add(r.targetWorkId);return n}function mF(e,t){let n=pF(e),r;for(let t=e.length-1;t>=0;--t){let n=e[t];if(n?.entry.kind===`compaction`){r=n;break}}let i=r?.entry.kind===`compaction`?r.entry:void 0,a=i===void 0?-1:e.findIndex(({id:e})=>e===i.head),o=a>=0?e.slice(a):e,s=EM(o,t),c=[];i!==void 0&&c.push(...i.model);for(let e of o){let t=DA(e.entry);t!==void 0&&!n.has(t.workId)&&c.push(AA(t)),e.entry.kind===`operator`&&c.push(kA(e.entry)),e.entry.kind===`message`&&s.has(e.id)&&c.push(e.entry.value)}return Object.freeze(c)}function hF(e,t){return e.transactionSync(()=>{let n=TN(e,t.sessionId,t.commandFactId),r=`replay`,i=VN(e,t.sessionId,t.commandFactId);if(n===void 0&&i!==void 0&&(n=SP(e,{sessionId:i.sessionId,id:i.id,entry:i.entry}),r=`new`),n?.entry.kind!==`command`)throw $(`Accepted Session command is unavailable`);if(i!==void 0&&NA(n.entry)!==NA(i.entry))throw $(`Accepted Session command disagrees with its admission`);e.sql.exec(`DELETE FROM session_entries WHERE session_id = ? AND work_id = ? AND state = 'streaming' AND type = 'message_start'`,t.sessionId,n.entry.workId);let a=GN(e,t.sessionId,n.entry.workId),o=n.entry.workId,s=HP(e,{sessionId:t.sessionId}),c=fF(e,t.sessionId,n,s,o),l=Object.freeze({...n,entry:n.entry});return Object.freeze({command:l,modelPreference:XP(e,t.sessionId,n.id),messages:mF(c,n.entry.workId),path:c,entryDelivery:r,resume:TM(a),abnormalTerminal:DM(a)})})}function gF(e,t){let n=wN(e,t.sessionId)?.leaf_id;if(n==null)return`stale`;let r=e.sql.exec(`${sF}
|
|
807
807
|
SELECT sequence
|
|
808
808
|
FROM session_entries
|
|
809
|
-
WHERE state != 'streaming' AND id = ? AND id IN (SELECT id FROM walk)`,t.sessionId,n,t.sessionId,t.head).toArray()[0];if(r===void 0)return`stale`;if(
|
|
809
|
+
WHERE state != 'streaming' AND id = ? AND id IN (SELECT id FROM walk)`,t.sessionId,n,t.sessionId,t.head).toArray()[0];if(r===void 0)return`stale`;if(IP(r)._tag===`Failure`)throw $(`Stored Session entry sequence is invalid`);return`current`}function _F(e,t){return e.transactionSync(()=>{let n={kind:`compaction_notice`,workId:t.workId,trigger:t.trigger},r;if(t.result===`stale`||t.result===`insufficient`){let e={...n,result:t.result};r=t.usage===void 0?e:{...e,usage:t.usage}}else if(t.result===`failed`){let e={...n,result:`failed`},i=t.diagnostic===void 0?e:{...e,diagnostic:t.diagnostic.slice(0,200)};r=t.usage===void 0?i:{...i,usage:t.usage}}else{let e={...n,result:`nothing_to_compact`};r=t.diagnostic===void 0?e:{...e,diagnostic:t.diagnostic.slice(0,200)}}return SP(e,{sessionId:t.sessionId,id:wM.fact.generate(),entry:r})})}function vF(e,t){return e.transactionSync(()=>bF(e,t))}function yF(e,t){return e.transactionSync(()=>gF(e,{sessionId:t.sessionId,head:t.head})===`stale`?`stale`:bF(e,t))}function bF(e,t){if(wN(e,t.sessionId)?.leaf_id!==t.expectedLeafId)throw new W(`store`,`conflict`,`Session leaf changed during compaction`);let n={kind:`compaction`,workId:t.workId,head:t.head,model:[yj(t.summary,Date.now())],data:{reason:t.trigger,resumesRun:t.resumesRun??!1,tokensBefore:t.tokensBefore,tokensAfter:t.tokensAfter,usage:t.usage,contextRevision:t.contextRevision}},r=t.receipt===void 0?n:{...n,data:{...n.data,receipt:t.receipt}};return SP(e,{sessionId:t.sessionId,id:wM.fact.generate(),entry:t.details===void 0?r:{...r,data:{...r.data,details:t.details}}})}function xF(e){return Array.isArray(e)}function SF(e){if(e.images===void 0)return e.text;let t=[];return e.text.length>0&&t.push({type:`text`,text:e.text}),t.push(...e.images),t}function CF(e,t){return!xF(e)||!xF(t)?e===t:e.length===t.length&&e.every((e,n)=>{let r=t[n];return e.type===`text`?r?.type===`text`&&e.text===r.text:r?.type===`image`&&e.data===r.data&&e.mimeType===r.mimeType})}function wF(e,t){if(t.type===`compact`)return EA(e)&&e.instructions===t.instructions;let n=DA(e);return n?.delivery===t.delivery&&CF(n.message.content,SF(t))}function TF(e,t,n,r,i,a){let o={kind:`command`,requestId:e.requestId,receiptId:t,workId:t};if(e.type===`compact`){let t={...o,work:`compact`,timestamp:n,contract:r};return e.instructions===void 0?t:{...t,instructions:e.instructions}}let s={...o,delivery:e.delivery,message:{role:`user`,content:SF(e),timestamp:n},contract:r},c=i===void 0?s:{...s,targetWorkId:i};return a===void 0?c:{...c,reply:a}}function EF(e,t){return e?.agentId===t?.agentId&&e?.sessionId===t?.sessionId&&e?.outcome===t?.outcome&&(e?.outcome===`undeliverable`?t?.outcome===`undeliverable`&&e.reason===t.reason:t?.outcome!==`undeliverable`&&e?.commandId===t?.commandId&&e?.diagnostic===t?.diagnostic)}function DF(e,t,n,r,i,a,o,s,c){let l=UN(e,t,n.requestId);if(l!==void 0){if(!wF(l.entry,n)||!_O(l.entry.meta,r)||!EF(DA(l.entry)?.reply,c)||!qM(l.origin,i))throw new W(`contract`,`conflict`,`Request id conflicts with an accepted Session command`);return AF(l,`replay`)}let u=wM.fact.generate();ZN(e,t);let d=Date.now(),f=TF(n,u,d,a,s,c);e.sql.exec(`INSERT INTO session_command_admissions
|
|
810
810
|
(id, session_id, sequence, request_id, work_id, data_json, timestamp,
|
|
811
811
|
origin_kind, origin_id, origin_correlation)
|
|
812
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,u,t,
|
|
812
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,u,t,XN(e,t),n.requestId,u,NA(lN(f,r)),d,i.kind,i.kind===`user`?null:i.extensionId,i.kind===`user`?null:i.correlation);let p=VN(e,t,u);if(p===void 0)throw $(`Accepted Session command admission is unavailable`);return o?.({jobId:u,sessionId:t,commandFactId:u,delivery:n.type===`prompt`?n.delivery:`followUp`}),AF(p,`new`)}function OF(e,t,n){if(e.sql.exec(`SELECT 1 FROM session_request_withdrawals WHERE session_id = ? AND request_id = ?`,t,n).toArray().length>0)throw new W(`contract`,`closed`,`Request was withdrawn`,n)}function kF(e,t,n){let r=UN(e,t,n);if(r!==void 0)return{status:`accepted`,commandId:r.id};let i=e.sql.exec(`SELECT id FROM session_entries WHERE session_id = ? AND request_id = ? AND type = 'operator'`,t,n).toArray()[0];if(i!==void 0){let e=$M(i);if(e._tag===`Failure`)throw $(`Stored operator receipt is invalid`);return{status:`accepted`,commandId:e.success.id}}return e.sql.exec(`INSERT OR IGNORE INTO session_request_withdrawals(session_id, request_id) VALUES (?, ?)`,t,n),{status:`unknown`}}function AF(e,t){let n=Object.freeze({sessionId:e.sessionId,requestId:e.entry.requestId,commandId:e.id});return Object.freeze({accepted:n,command:e,delivery:t})}function jF(e,t,n){if(e.entry.kind!==`cancellation`)throw $(`Accepted Session cancellation is unavailable`);return Object.freeze({accepted:Object.freeze({commandId:e.entry.targetWorkId,entryId:e.id}),delivery:t,active:n})}function MF(e,t,n,r,i){return e.transactionSync(()=>{let a=n(),o=a.state===`running`?HN(e,t,a.jobId):void 0,s=o===void 0?void 0:PF(e,t,o.id,n,r,!1,i);for(let a=XN(e,t);a>0;){let{commands:o}=IN(e,t,64);if(o.length===0)return s;a-=o.length;for(let a of o){if(PF(e,t,a.id,n,r,!1,i,!0)===void 0)throw $(`Pending Session command could not be cancelled`);SP(e,{sessionId:t,id:a.id,entry:a.entry})}}throw $(`Session cancellation did not settle its pending admissions`)})}function NF(e,t,n,r,i,a=!1,o){return e.transactionSync(()=>PF(e,t,n,r,i,a,o))}function PF(e,t,n,r,i,a=!1,o,s=!1){let c=r(),l=VN(e,t,n);if(l?.entry.kind!==`command`)return;let u=GN(e,t,l.entry.workId),d=u.find(({entry:e})=>e.kind===`cancellation`);if(d?.entry.kind===`cancellation`)return jF(d,`replay`,c.state===`running`&&c.jobId===l.entry.workId);let f=c.state===`running`&&c.jobId===l.entry.workId;if(!f&&u.some(({entry:e})=>e.kind===`run_terminal`||e.kind===`work_terminal`)||a&&(f||u.some(({entry:e})=>e.kind===`command`))||DA(l.entry)?.delivery===`steer`&&u.some(({entry:e})=>e.kind===`command`)&&!f)return;let p=wM.fact.generate(),m=i({jobId:l.entry.workId,cancellationId:p,onlyIfPending:a});if(m.status===`missing`&&DA(l.entry)?.delivery!==`steer`&&!s||m.status===`conflict`&&a)return;if(m.status!==`recorded`&&m.status!==`missing`)throw new W(`store`,`conflict`,`Session cancellation identity conflicts`);let ee=SP(e,{sessionId:t,id:p,entry:lN({kind:`cancellation`,requestId:p,receiptId:p,workId:l.entry.workId,targetWorkId:l.entry.workId},o)});return m.status===`missing`&&SP(e,{sessionId:t,id:wM.fact.generate(),entry:{kind:`work_terminal`,workId:l.entry.workId,outcome:`cancelled`}}),jF(ee,`new`,f)}function FF(e,t){e.transactionSync(()=>{t.assertIdleSession?.(t.sessionId);let n=wN(e,t.sessionId);if(n===void 0)throw $(`Session is unavailable for branch selection`);EN(e,n);let r=TN(e,t.sessionId,t.entryId);if(r?.state!==`complete`)throw $(`Selected branch entry is unavailable`);let i=Date.now();e.sql.exec(`UPDATE sessions SET leaf_id = ?, updated_at = ? WHERE id = ?`,r.id,i,n.id),_M(e,{sessionId:n.id,activityAt:i,title:hN(e,n.id)})})}function IF(e,t){return e.transactionSync(()=>{if(OF(e,t.sessionId,t.requestId),wN(e,t.sessionId)===void 0)throw $(`Session is unavailable for an operator entry`);let n=e.sql.exec(`SELECT id FROM session_entries WHERE session_id = ? AND request_id = ?`,t.sessionId,t.requestId).toArray()[0];if(n!==void 0){let r=$M(n);if(r._tag===`Failure`)throw $(`Stored Session entry identity is invalid`);let i=TN(e,t.sessionId,r.success.id);if(i?.entry.kind===`operator`&&i.entry.author===t.author&&_O(i.entry.meta,t.meta)&&i.entry.message.content===t.text)return!1;throw new W(`store`,`conflict`,`Request id already names another Session entry`)}t.assertIdleSession(t.sessionId);let r={kind:`operator`,workId:null,requestId:t.requestId,author:t.author,message:{role:`user`,content:t.text,timestamp:Date.now()}};return SP(e,{sessionId:t.sessionId,id:wM.fact.generate(),entry:lN(r,t.meta)}),!0})}function LF(e,t){return e.transactionSync(()=>{if(t.assertIdleSession?.(t.sessionId),wN(e,t.sessionId)===void 0)throw $(`Source Session is unavailable`);let n=BP(e,t.sessionId,t.entryId,`fork`),r=wM.session.generate(),i=Date.now();e.sql.exec(`INSERT INTO sessions
|
|
813
813
|
(id, cwd, parent_session, leaf_id, created_at, updated_at, metadata_json)
|
|
814
|
-
VALUES (?, '/', ?, NULL, ?, ?, NULL)`,r,t.sessionId,i,i),
|
|
814
|
+
VALUES (?, '/', ?, NULL, ?, ?, NULL)`,r,t.sessionId,i,i),Yj(e,t.sessionId,r);let a=null,o=null,s=1,c=new Map,l=0;for(;;){let t=KP(e,n,{after:l,from:`oldest`,rows:wP});for(let n of t.rows){let t=wM.fact.generate();c.set(n.id,t);let i=n.entry.kind===`compaction`?{...n.entry,head:c.get(n.entry.head)??(()=>{throw $(`Fork compaction boundary is unavailable`)})()}:n.entry;e.sql.exec(`INSERT INTO session_entries
|
|
815
815
|
(id, session_id, parent_id, sequence, type, role, state,
|
|
816
816
|
request_id, work_id, data_json, timestamp, completed_at)
|
|
817
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,t,r,a,s,i.kind,_N(i),n.state,gN(i),i.workId,MA(i),n.timestamp,n.completedAt),a=t,o=t,s+=1,l=n.sequence}if(!t.more)break}if(o===null)throw $(`Fork path is empty`);e.sql.exec(`UPDATE sessions SET leaf_id = ?, updated_at = ? WHERE id = ?`,o,i,r);let u=VP(e,{sessionId:t.sessionId});for(let t of mj(e,(t,n)=>XP(e,u,t,n)))xP(e,{sessionId:r,id:CM.fact.generate(),entry:t});return gM(e,{sessionId:r,activityAt:i,title:mN(e,r)}),r})}function LF(e,t,n,r){if(CN(e,t)===void 0)throw $(`Session document owner is unavailable`);return XP(e,VP(e,{sessionId:t}),n,r)}function RF(e,t,n,r,i){if(CN(e,t)===void 0)throw $(`Session document owner is unavailable`);xP(e,{sessionId:t,id:CM.fact.generate(),entry:{kind:`document`,workId:null,extensionId:n,name:r,valueJson:i}})}var zF=2097152,BF=200,VF=200,HF=new TextEncoder;function UF(e){return new W(`store`,`unavailable`,e)}function WF(e,t,n){let r=new Map;for(let e of n)e.entry.kind===`command`&&r.set(e.entry.workId,e.entry.workId);let i=n.flatMap(({entry:e})=>(e.kind===`run_terminal`||e.kind===`work_terminal`)&&!r.has(e.workId)?[e.workId]:[]);for(let n of i)BN(e,t,n)!==void 0&&r.set(n,n);return r}function GF(e,t){return n=>{let r=BN(e,t,n)?.origin;return r?.kind===`extension`?{extensionId:r.extensionId,correlation:r.correlation}:void 0}}function KF(e,t,n){return{commandIds:WF(e,t,n),diagnostics:YF(n),cancellations:new Map(n.flatMap(({entry:e})=>e.kind===`cancellation`&&e.meta!==void 0?[[e.targetWorkId,e.meta]]:[])),origin:GF(e,t)}}function qF(e,t,n,r){let i=QP(e,n,new Set(r.flatMap(({entry:e})=>e.kind===`message`||e.kind===`run_terminal`||e.kind===`work_terminal`?[e.workId]:[]))),a=new Map;for(let e of i.commands)a.set(e,e);for(let{entry:n}of r)(n.kind===`run_terminal`||n.kind===`work_terminal`)&&!a.has(n.workId)&&BN(e,t,n.workId)!==void 0&&a.set(n.workId,n.workId);return{commandIds:a,diagnostics:i.diagnostics,cancellations:i.cancellations,origin:GF(e,t)}}function JF(e,t){let n=EA(e.entry);if(n!==void 0){let r=t.origin(n.workId),i={id:e.id,sequence:e.sequence,commandId:n.workId,requestId:n.requestId,value:n.message};return n.meta!==void 0&&(i={...i,meta:n.meta}),r!==void 0&&(i={...i,origin:r}),Object.freeze(i)}if(e.entry.kind===`operator`){let t={id:e.id,sequence:e.sequence,commandId:null,requestId:e.entry.requestId,value:AA(e.entry)};return e.entry.meta!==void 0&&(t={...t,meta:e.entry.meta}),Object.freeze(t)}if(e.entry.kind===`message`){let n={id:e.entry.message.value,sequence:e.sequence,commandId:t.commandIds.get(e.entry.workId)??null,value:e.entry.value};return Object.freeze(e.entry.data===void 0?n:{...n,data:e.entry.data})}}function YF(e){let t=new Map;for(let{entry:n}of e)(n.kind===`work_terminal`||n.kind===`run_terminal`)&&n.diagnostic!==void 0&&t.set(n.workId,n.diagnostic);return t}function XF(e,{commandIds:t,diagnostics:n,cancellations:r}){if(e.entry.kind!==`run_terminal`&&e.entry.kind!==`work_terminal`)return;let i=t.get(e.entry.workId);if(i===void 0)return;let a={commandId:i,outcome:e.entry.outcome,sequence:e.sequence,diagnostic:n.get(e.entry.workId)??null},o=e.entry.outcome===`cancelled`?r.get(e.entry.workId):void 0;return Object.freeze(o===void 0?a:{...a,meta:o})}function ZF(e,t,n){let r=[];for(let i of n){let a=i.entry;if(a.kind!==`compaction`)continue;let o=n.find(e=>e.id===a.head)?.sequence??qP(e,t,a.head);if(o===void 0)throw UF(`Session compaction horizon is unavailable`);r.push(Object.freeze({id:i.id,sequence:o,at:i.timestamp,tokensBefore:a.data.tokensBefore,tokensAfter:a.data.tokensAfter??null,trigger:a.data.reason??null}))}return Object.freeze(r)}function QF(e){return Object.freeze(e.flatMap(({id:e,sequence:t,timestamp:n,entry:r})=>r.kind===`compaction_notice`?[Object.freeze({id:e,sequence:t,at:n,trigger:r.trigger,result:r.result,diagnostic:r.result===`stale`||r.result===`insufficient`?null:r.diagnostic??null})]:[]))}function $F(e){return HF.encode(JSON.stringify(e)).byteLength}function eI(e,t){let n=Vk({generation:e,sequence:t});if(n===void 0)throw UF(`Session cursor is unavailable`);return n}function tI(e,t,n,r,i=!1){let a=JF(t,r),o=XF(t,r),s=i&&t.entry.kind===`sandbox_failure`?t.entry.event:void 0;if(a!==void 0&&e.messages.length===n)return!1;let c=(a===void 0?0:$F(a))+(o===void 0?0:$F(o))+(s===void 0?0:$F(s));if(c>zF)throw UF(`Session projection entry exceeds the read bound`);return e.bytes+c>zF?!1:(a!==void 0&&e.messages.push(a),o!==void 0&&e.terminals.push(o),s!==void 0&&e.sandboxFailures.push(s),e.bytes+=c,!0)}function nI(e,t,n,r,i,a=!1){let o={messages:[],terminals:[],sandboxFailures:[],bytes:0},s=0;for(let t=0;t<e.length&&s!==VF;t+=1){let c=e[i===`forward`?t:e.length-1-t];if(c===void 0||!tI(o,c,n,r,a))break;s+=1}if(s===0&&e.length>0)throw UF(`Session page cannot make bounded progress`);let c=i===`backward`?[...o.messages].reverse():o.messages,l=i===`backward`?[...o.terminals].reverse():o.terminals,u=i===`backward`?[...o.sandboxFailures].reverse():o.sandboxFailures;return Object.freeze({messages:Object.freeze(c),terminals:Object.freeze(l),sandboxFailures:Object.freeze(u),consumed:s,hasMore:t||s<e.length})}function rI(e){return Array.isArray(e)}function iI(e,t){let{commands:n,total:r}=FN(e,t,VF+1,`prompts`),i=[],a=HF.encode(JSON.stringify({prompts:[],hasMore:!1,total:r})).byteLength;for(let e of n){let t=oI(e),n=HF.encode(JSON.stringify(t)).byteLength+(i.length===0?0:1);if(i.length===VF||a+n>zF)return{prompts:i,hasMore:!0,total:r};i.push(t),a+=n}return{prompts:i,hasMore:!1,total:r}}function aI(e,t,n){let r=NN(e,t,n);return r===void 0?null:oI(r)}function oI(e){let t=EA(e.entry);if(t===void 0)throw UF(`Pending Session prompt is unavailable`);let n=t.message.content,r=rI(n)?{commandId:e.entry.workId,requestId:t.requestId,text:n.filter(e=>e.type===`text`).map(e=>e.text).join(``),images:n.filter(e=>e.type===`image`),delivery:t.delivery??`followUp`}:{commandId:e.entry.workId,requestId:t.requestId,text:n,delivery:t.delivery??`followUp`},i=e.entry.meta===void 0?r:{...r,meta:e.entry.meta};return e.origin.kind===`extension`?{...i,origin:{extensionId:e.origin.extensionId,correlation:e.origin.correlation}}:i}function sI(e,t,n){let r=Hk(n);if(r?.generation===t.rootId)return KP(e,t,r.sequence)?r.sequence:void 0}function cI(e,t,n,r,i=()=>({})){return AP(e,t,()=>{let a=iI(e,t),o=VP(e,{sessionId:t});if(o===void 0)return Object.freeze({sessionId:t,cursor:null,hasMore:!1,oldestCursor:null,messages:Object.freeze([]),terminals:Object.freeze([]),compactions:Object.freeze([]),compactionNotices:Object.freeze([]),pending:a,activity:r.facts,progress:r.readProgress(),toolOutput:r.toolOutput,extensions:i(),attention:BO(e,t)});let s=o.rootId,c=n.before===void 0?2**53-1:sI(e,o,n.before);if(c===void 0)throw UF(`Session read cursor is unavailable`);let l=GP(e,o,{before:c,from:`newest`,rows:VF}),u=nI(l.rows,l.more,n.limit,qF(e,t,o,l.rows),`backward`,n.includeSandboxFailures===!0),d=l.rows.slice(l.rows.length-u.consumed),f=l.rows.at(-1),p=d[0],m={sessionId:t,cursor:f===void 0?null:eI(s,f.sequence),hasMore:u.hasMore,oldestCursor:u.hasMore&&p!==void 0?eI(s,p.sequence):null,messages:u.messages,terminals:u.terminals,compactions:ZF(e,o,d),compactionNotices:QF(d),pending:a,activity:r.facts,progress:n.before===void 0?r.readProgress():null,toolOutput:n.before===void 0?r.toolOutput:[],extensions:i(),attention:BO(e,t)};return Object.freeze(n.includeSandboxFailures===!0?{...m,sandboxFailures:u.sandboxFailures}:m)})}var lI=Object.freeze({kind:`reset`});function uI(e,t,n){if(n===void 0)return 0;if(n.generation===t.rootId)return KP(e,t,n.sequence)?n.sequence:void 0}function dI(e,t,n,r,i,a,o,s,c){let l=GP(e,t,{after:n,from:`oldest`,rows:VF}),u=nI(l.rows,l.more,BF,qF(e,t.sessionId,t,l.rows),`forward`,c),d=l.rows.slice(0,u.consumed),f=d.at(-1)?.sequence??t.newestSequence,p={kind:`update`,delivery:r,cursor:eI(t.rootId,f),messages:u.messages,terminals:u.terminals,compactions:ZF(e,t,d),compactionNotices:QF(d),pending:s,activity:i.facts,extensions:a,attention:o},m=[Object.freeze(c?{...p,sandboxFailures:u.sandboxFailures}:p)];return Object.freeze({kind:`page`,frames:Object.freeze(u.hasMore?m:[...m,{kind:`tool_output`,toolOutput:i.toolOutput,activity:i.facts}]),hasMore:u.hasMore})}function fI(e,t,n,r,i,a=()=>({}),o=!1){let s=n===void 0?void 0:Hk(n);return n!==void 0&&s===void 0?lI:AP(e,t,()=>{let c=iI(e,t),l=VP(e,{sessionId:t});if(l===void 0)return n===void 0?{kind:`page`,frames:[{kind:`update`,delivery:r,cursor:null,messages:[],terminals:[],compactions:[],compactionNotices:[],activity:i.facts,extensions:a(),attention:BO(e,t),pending:c}],hasMore:!1}:lI;let u=uI(e,l,s);return u===void 0?lI:dI(e,l,u,r,i,a(),BO(e,t),c,o)})}function pI(e,t,n){let r=BN(e,t,n);if(r===void 0)throw UF(`Accepted Session command is unavailable`);if(!UN(e,t,r.entry.workId))return;let i=WN(e,t,r.entry.workId),a=KF(e,t,i),o=i.flatMap(e=>{let t=XF(e,a);return t===void 0?[]:[t]}).at(-1);if(o===void 0)return;let s=i.flatMap(({entry:e})=>e.kind===`message`&&e.value.role===`assistant`?[e.value]:[]),c=s.at(-1),l=o.outcome===`cancelled`?o.meta:r.entry.meta,u=Kh(r.entry.meta);return{acceptedSender:u?.kind===`agent`?u.id:null,delegator:Nk(e,t)?.replyTo[0]?.agentId??null,terminal:l===void 0?o:{...o,meta:l},content:o.outcome===`cancelled`?``:c?.content.flatMap(e=>e.type===`text`?[e.text]:[]).join(``).trim()??``,usage:s.map(({provider:e,model:t,usage:n})=>({provider:e,model:t,usage:n})),toolCalls:new Set(i.flatMap(({entry:e})=>e.kind===`tool_intent`?[e.call.id]:[])).size,waitingOnYou:QO(e,t,r.entry.workId)}}var mI=65536,hI=2048,gI=new TextEncoder,_I=()=>({chunks:[],length:0,bytes:0});function vI(e,t){for(let n=0;n<t.length;){let r=Math.min(n+hI,t.length),i=t.charCodeAt(r-1);r<t.length&&i>=55296&&i<=56319&&r--;let a=t.slice(n,r),o=gI.encode(a).byteLength,s=e.chunks.at(-1);for(s!==void 0&&s.text.length+a.length<=hI?(s.text+=a,s.bytes+=o):e.chunks.push({offset:e.length,text:a,bytes:o}),e.length+=a.length,e.bytes+=o,n=r;e.bytes>mI&&e.chunks.length>1;){let t=e.chunks.shift();t!==void 0&&(e.bytes-=t.bytes)}}}function yI(e){return e.chunks[0]?.offset??0}function bI(e,t){return e.chunks.flatMap(e=>e.offset+e.text.length<=t?[]:[e.text.slice(Math.max(0,t-e.offset))]).join(``)}function xI(e){return e===null?null:{messageId:e.messageId,revision:e.revision,text:bI(e.text,yI(e.text)),thinking:bI(e.thinking,yI(e.thinking)),textOffset:yI(e.text),thinkingOffset:yI(e.thinking),textTruncated:yI(e.text)>0,thinkingTruncated:yI(e.thinking)>0}}function SI(e){return e===null?null:{messageId:e.messageId,revision:e.revision,text:e.textOffset+e.text.length,thinking:e.thinkingOffset+e.thinking.length}}function CI(e,t,n,r){let i=wI.get(e)?.get(t),a=i?.workId===n?i.value:null;if(a===null)return null;let o=r?.messageId===a.messageId?r:null;if(o!==null&&o.revision>=a.revision)return null;let s=o?.text??0,c=o?.thinking??0;if(!(s<yI(a.text)||c<yI(a.thinking)))return{messageId:a.messageId,revision:a.revision,text:{offset:s,append:bI(a.text,s)},thinking:{offset:c,append:bI(a.thinking,c)}}}var wI=new WeakMap;function TI(e,t,n){let r=wI.get(e)?.get(t);return r?.workId===n?[...r.slots.values()].filter(e=>e!==null):[]}var EI=T(N({droppedBytes:V.check(B(0)),totalBytes:V.check(B(0))}),{onExcessProperty:`error`});function DI(e,t){return b(function*(){let n=yield*kI(e,t),r=()=>{EO(e,t.sessionId,`progress`)};return{started:e=>S(()=>{n.slots.size<4&&!n.slots.has(e.toolCall.value)&&n.slots.set(e.toolCall.value,null)}),update:e=>S(()=>{let t=n.slots.get(e.toolCall.value);if(t===void 0)return;let i=EI(e.result.data);if(Ct(i))return;let a=e.result.content.filter(e=>e.type===`text`).map(e=>e.text).join(``);new TextEncoder().encode(a).byteLength>8192||a.split(`
|
|
818
|
-
`).length>200||i.success.droppedBytes>i.success.totalBytes||(n.slots.set(e.toolCall.value,{toolCallId:e.call.id,revision:(t?.revision??0)+1,tail:a,...i.success}),r())}),terminal:e=>S(()=>{n.slots.delete(e.toolCall.value)&&r()})}})}function OI(e){let t=wI.get(e);if(t!==void 0)return t;let n=new Map;return wI.set(e,n),n}function kI(e,t){return b(function*(){let n=OI(e),r=n.get(t.sessionId);if(r?.workId===t.commandId)return r;let i={workId:t.commandId,value:null,slots:new Map};return n.set(t.sessionId,i),yield*Sr(()=>S(()=>{n.get(t.sessionId)===i&&(n.delete(t.sessionId),(i.value!==null||i.slots.size>0)&&EO(e,t.sessionId,`progress`))})),i})}function AI(e){return new W(`runtime`,`rejected`,e)}function jI(e,t,n){let r=OI(e).get(t);return xI(r?.workId===n?r.value:null)}function MI(e,t,n){return b(function*(){let r=yield*kI(e,t),i,a=0,o,s=()=>{o!==void 0&&clearTimeout(o),o=void 0},c=()=>{s();let n=r.value;n!==null&&(a=n.text.length+n.thinking.length,EO(e,t.sessionId,`progress`))},l=S(()=>{s();let n=r.value!==null;r.value=null,n&&EO(e,t.sessionId,`progress`),i=void 0});return yield*Sr(()=>l),Object.freeze({started:e=>S(()=>{s(),i=e,r.value=null,a=0}),update:e=>Cn(()=>{let t=i;if(t===void 0)return y(AI(`Mule progress arrived before its message start`));if(t.run.value!==e.run.value||t.turn.value!==e.turn.value||t.message.value!==e.message.value)return y(AI(`Mule progress identity conflicts`));let n=e.event;if(n.type!==`text_delta`&&n.type!==`thinking_delta`||n.delta.length===0)return ft;let s=r.value===null,l=r.value??{messageId:e.message.value,revision:0,text:_I(),thinking:_I()};vI(n.type===`text_delta`?l.text:l.thinking,n.delta),l.revision++,r.value=l;let u=l.text.length+l.thinking.length;return s||u-a>=4096?c():o??=setTimeout(c,100),ft}),terminal:e=>l.pipe(g(n(e)))})})}var NI=new WeakMap;function PI(e){let t=NI.get(e);if(t!==void 0)return t;let n=new Map;return NI.set(e,n),n}function FI(e,t){return PI(e).get(t)??null}function II(e,t,n){PI(e).set(t,Object.freeze({trigger:n})),EO(e,t,`progress`)}function LI(e,t){PI(e).delete(t)&&EO(e,t,`progress`)}var RI=Object.freeze({admitNew:()=>{}});function zI(e){return e===void 0?RI:Object.freeze({admitNew:()=>{if(e.underPressure())throw new W(`store`,`storage_pressure`,`Storage is near its budget. New Sessions and prompts are refused until space is freed; running work continues.`)}})}function BI(e,t){let n=gF(e,t);return EO(e,t.sessionId),n}function VI(e,t){let n=_F(e,t);return EO(e,t.sessionId),n}function HI(e,t){let n=vF(e,t);return n!==`stale`&&EO(e,t.sessionId),n}function UI(e){return new W(`store`,`rejected`,e)}function WI(e){return new W(`store`,`conflict`,e)}function GI(e){return ai({try:e,catch:e=>e instanceof W?e:new W(`store`,`rejected`,`Native Session store operation failed`,void 0,e)})}function KI(e){return GI(()=>{gP(e)})}function qI(e,t,n,r,i,a,o){return GI(()=>{let s=MF(e,t,n,i,a,r,o);return s?.delivery===`new`&&EO(e,t,`settlement`),s})}function JI(e,t){return GI(()=>{let n=RN(e,t.sessionId,t.delivery,t.workId);return n.length>0&&EO(e,t.sessionId),n})}function YI(e,t){return GI(()=>{zN(e,t),EO(e,t.sessionId,`settlement`)})}function XI(e,t,n,r,i){return GI(()=>{let a=jF(e,t,n,r,i);return EO(e,t,`settlement`),a?.accepted})}function ZI(e,t){return GI(()=>{PF(e,{sessionId:t.sessionId,entryId:t.entryId,assertIdleSession:t.assertIdleSession}),EO(e,t.sessionId)})}function QI(e,t){return GI(()=>{FF(e,t)&&EO(e,t.sessionId)})}function $I(e,t){return GI(()=>{let n=IF(e,{sessionId:t.sessionId,entryId:t.entryId,assertIdleSession:t.assertIdleSession});return EO(e,n),Object.freeze({sessionId:n})})}function eL(e,t){return GI(()=>{let n=mF(e,{sessionId:Ky(t.sessionId),commandFactId:t.commandFactId});return n.entryDelivery===`new`&&EO(e,t.sessionId),n})}function tL(e){return e.content.flatMap(e=>e.type===`text`?[e.text]:[]).join(``).trim()}function nL(e,t){return GI(()=>{let n=BN(e,t.sessionId,t.commandFactId);if(n===void 0)throw UI(`Accepted Session command is unavailable`);let r=WN(e,t.sessionId,n.entry.workId);for(let e=r.length-1;e>=0;--e){let t=r[e]?.entry;if(t?.kind===`message`&&t.value.role===`assistant`)return tL(t.value)}return``})}function rL(e,t,n){return GI(()=>{let r=BN(e,t.sessionId,t.commandFactId);if(r===void 0)throw UI(`Accepted Session command is unavailable`);if(n!==`cancelled`)return r.entry.meta;let i=WN(e,t.sessionId,r.entry.workId).find(({entry:e})=>e.kind===`cancellation`);return i?.entry.kind===`cancellation`?i.entry.meta:void 0})}function iL(e,t){return GI(()=>{let n=BN(e,t.sessionId,t.commandFactId);if(n===void 0)throw UI(`Accepted Session command is unavailable`);return YF(WN(e,t.sessionId,n.entry.workId)).get(n.entry.workId)})}function aL(e,t,n,r,i,a){return GI(()=>{let o=Ky(t),s=Yy(r);return kP(e,o,()=>a(cI(e,o,s,n(),i)),s.before===void 0?void 0:Hk(s.before)?.sequence)})}function oL(e,t){return GI(()=>lN(e,Ky(t)))}function sL(e,t,n){return GI(()=>ZN(e,Jy({requestId:t}),n))}function cL(e,t,n){return QN(e,Jy({requestId:t}),n)}function lL(e,t){return GI(()=>$N(e,{sessionId:Ky(t.sessionId),assertIdleSession:t.assertIdleSession,recordInboxDeletion:t=>{_M(e,t)}}))}function uL(e,t){return GI(()=>SM(e,t))}function dL(e,t,n,r,i,a,o,s){return GI(()=>{let c=Ky(t);return kP(e,c,()=>s(fI(e,c,n,r,i,a,o)))})}function fL(e,t){return MA(e)===MA(t)}function pL(e,t){return e.kind===t.kind&&e.value===t.value&&e.parent?.kind===t.parent?.kind&&e.parent?.value===t.parent?.value}function mL(e,t){return e.core===t.core&&e.extensions.length===t.extensions.length&&e.extensions.every(([e,n],r)=>{let i=t.extensions[r];return i?.[0]===e&&i[1]===n})}function hL(e,t,n,r,i){e.transactionSync(()=>{i?.();let a=WN(e,t.sessionId,t.commandId).find(r);if(a!==void 0){if(n.kind===`work_terminal`&&a.entry.kind===`run_terminal`||fL(a.entry,n))return`replay`;throw WI(`Mule event identity conflicts`)}for(let r=0;r<3;r+=1){let r=CM.fact.generate();if(EN(e,r)===void 0&&BN(e,t.sessionId,r)===void 0)return xP(e,{sessionId:t.sessionId,id:r,entry:n}),`new`}throw UI(`Session fact identity allocation failed`)})===`new`&&EO(e,t.sessionId,n.kind===`run_terminal`||n.kind===`work_terminal`?`settlement`:`durable`)}function gL(e,t,n){return GI(()=>{hL(e,t,{kind:`sandbox_failure`,workId:t.commandId,event:n},({entry:e})=>e.kind===`sandbox_failure`&&e.event.ref===n.ref)})}function _L(e,t,n,r){let i=BN(e,t,n);if(i?.entry.workId!==r)throw UI(`Accepted Session work is unavailable`);return i.origin.kind===`extension`?Object.freeze({extensionId:i.origin.extensionId,correlation:i.origin.correlation}):null}function vL(e,t,n,r){let i=_L(e,t,n,r),a=WN(e,t,r).map(({entry:e})=>e),o=new Set(a.flatMap(e=>e.kind===`tool_intent`?[e.call.id]:[])).size,s=a.filter(e=>e.kind===`run_terminal`||e.kind===`work_terminal`).at(-1);return Object.freeze({terminal:s?.kind===`run_terminal`||s?.kind===`work_terminal`?s.outcome:`missing`,origin:i,toolCalls:o})}function yL(e,t){return GI(()=>{if(BN(e,t.sessionId,t.commandFactId)?.entry.workId!==t.workId)throw UI(`Settled Session work is unavailable`);let n={workId:t.workId,kind:`work_terminal`,outcome:t.outcome};hL(e,{sessionId:t.sessionId,commandId:t.workId},t.diagnostic===void 0?n:{...n,diagnostic:t.diagnostic},({entry:e})=>e.kind===`work_terminal`||e.kind===`run_terminal`&&e.outcome===t.outcome,()=>{e.sql.exec(`DELETE FROM session_entries WHERE session_id = ? AND work_id = ? AND state = 'streaming' AND type = 'message_start'`,t.sessionId,t.workId)})})}function bL(e,t,n,r,i){return GI(()=>{let a=r.type===`run_start`?{kind:`run_started`,workId:t.commandId,run:r.run,contract:n}:r.type===`turn_start`?{kind:`turn_started`,workId:t.commandId,run:r.run,turn:r.turn}:{kind:`run_terminal`,workId:t.commandId,run:r.run,terminal:r.terminal,outcome:r.outcome};a.kind===`run_terminal`&&i!==void 0&&(a={...a,diagnostic:i}),hL(e,t,a,({entry:e})=>e.kind===a.kind?e.kind===`run_started`&&a.kind===`run_started`?pL(e.run,a.run)&&mL(e.contract,n):e.kind===`turn_started`&&a.kind===`turn_started`?pL(e.turn,a.turn):e.kind===`run_terminal`&&a.kind===`run_terminal`&&pL(e.terminal,a.terminal):!1)})}function xL(e,t,n){return GI(()=>{let r={kind:`message_start`,workId:t.commandId,run:n.run,turn:n.turn,message:n.message,role:n.value.role};e.transactionSync(()=>{let i=WN(e,t.sessionId,t.commandId).find(({entry:e})=>(e.kind===`message_start`||e.kind===`message`)&&pL(e.message,n.message));if(i!==void 0){if(i.entry.kind===`message`){if(i.entry.workId!==r.workId||!pL(i.entry.run,r.run)||!pL(i.entry.turn,r.turn)||i.entry.value.role!==r.role)throw WI(`Mule message-start identity conflicts`);return`replay`}if(!fL(i.entry,r))throw WI(`Mule message-start identity conflicts`);return`replay`}return xP(e,{sessionId:t.sessionId,id:n.message.value,entry:r,state:`streaming`}),`new`})===`new`&&EO(e,t.sessionId)})}function SL(e,t,n,r){return GI(()=>{hL(e,t,{kind:`model_prompt`,workId:t.commandId,run:r.run,turn:r.turn,attempt:r.attempt,contract:n,systemPrompt:r.systemPrompt},({entry:e})=>e.kind===`model_prompt`&&pL(e.turn,r.turn)&&e.attempt===r.attempt&&mL(e.contract,n))})}function CL(e,t,n){return GI(()=>{let r={kind:`message`,workId:t.commandId,run:n.run,turn:n.turn,message:n.message,value:n.value},i=n.data===void 0?r:{...r,data:n.data};e.transactionSync(()=>{let r=WN(e,t.sessionId,t.commandId).find(({entry:e})=>(e.kind===`message_start`||e.kind===`message`)&&pL(e.message,n.message));if(r?.entry.kind===`message`){if(!fL(r.entry,i))throw WI(`Mule completed-message identity conflicts`);return`replay`}return SP(e,{sessionId:t.sessionId,id:n.message.value,entry:i}),`new`})===`new`&&EO(e,t.sessionId)})}function wL(e,t,n,r){return GI(()=>{hL(e,t,{kind:`tool_intent`,replay:r.replay,contract:n,workId:t.commandId,run:r.run,turn:r.turn,toolCall:r.toolCall,call:r.call},({entry:e})=>e.kind===`tool_intent`&&pL(e.toolCall,r.toolCall)&&mL(e.contract,n))})}function TL(e,t,n){return GI(()=>{let{data:r,...i}=n.result,a={kind:`tool_outcome`,workId:t.commandId,run:n.run,turn:n.turn,toolCall:n.toolCall,call:n.call,result:i};hL(e,t,r===void 0?a:{...a,data:r},({entry:e})=>e.kind===`tool_outcome`&&pL(e.toolCall,n.toolCall))})}function EL(e,t,n,r){return GI(()=>{let i=WN(e,t.sessionId,t.commandId).find(({entry:e})=>e.kind===`turn_started`&&pL(e.turn,r));if(i===void 0)throw WI(`Retry has no recorded turn`);hL(e,t,{kind:`live_retry`,workId:t.commandId,event:n},({entry:e,sequence:t})=>t>i.sequence&&e.kind===`live_retry`&&e.event.type===n.type&&e.event.attempt===n.attempt&&pL(e.event.run,n.run))}).pipe(at(DL))}var DL=()=>({_tag:`MuleError`,phase:`listener`,message:`Woodstock could not record the Mule event`});function OL(e,t,n){return b(function*(){let r=yield*MI(e,t,n=>CL(e,t,n)),i=yield*DI(e,t),a=(a,o)=>{switch(a.type){case`model_prompt`:return SL(e,t,n,a);case`run_start`:case`turn_start`:case`run_end`:return bL(e,t,n,a,o);case`message_start`:return a.value.role===`user`?ft:xL(e,t,a).pipe(g(a.value.role===`assistant`?r.started(a):ft));case`message_update`:return r.update(a);case`message_end`:return a.value.role===`user`?ft:a.value.role===`assistant`?r.terminal(a):CL(e,t,a);case`tool_execution_start`:return wL(e,t,n,a).pipe(g(i.started(a)));case`tool_execution_end`:return TL(e,t,a).pipe(g(i.terminal(a)));case`tool_execution_update`:return i.update(a);case`turn_end`:return ft}};return(e,t)=>a(e,t).pipe(at(DL))})}function kL(e,t,n){return GI(()=>pI(e,Ky(t),Ky(n)))}var AL=UM.mapFields(({extensionId:e,correlation:t})=>({extensionId:e,correlation:t})),jL=N({requestId:O(j),meta:O(pO),data:O(uO),origin:O(AL),id:j,sequence:V.check(Bm(0)),commandId:L(j),value:fA}),ML=I([`manual`,`threshold`,`overflow`]),NL=N({queue:F([N({state:A(`idle`)}),N({state:A(`queued`),commandId:bh,runningWork:L(F([N({kind:A(`session`),sessionId:bh,commandId:bh,title:j}),N({kind:A(`host`),lane:bh,jobId:bh})]))}),N({state:A(`running`),commandId:bh})]),cancellationRequested:Qp,retry:L(N({attempt:V.check(Bm(0)),maxAttempts:V.check(Bm(0)),delayMs:V.check(B(0)),errorMessage:j,scheduledAt:V.check(B(0))})),activeTool:L(j),lastModelChoiceSequence:L(V.check(Bm(0))),compaction:L(N({trigger:ML}))}),PL=j,FL=nm(j,F([N({status:A(`running`),revision:PL,value:uO,catalog:O(uO)}),N({status:A(`stopped`),revision:PL,reason:j})])),IL=N({id:j,version:j,revision:PL,status:I([`running`,`stopped`]),reason:L(j),stoppedAt:L(M)}),LL=N({commandId:j,outcome:I([`completed`,`cancelled`,`failed`,`interrupted`]),sequence:V.check(Bm(0)),diagnostic:L(j),meta:O(pO)}),RL=N({id:j,sequence:V.check(Bm(0)),at:V.check(B(0)),tokensBefore:M,tokensAfter:L(M),trigger:L(ML)}),zL=N({id:j,sequence:V.check(Bm(0)),at:V.check(B(0)),trigger:ML,result:I([`nothing_to_compact`,`failed`,`stale`,`insufficient`]),diagnostic:L(j)}),BL=j.check(z(e=>new TextEncoder().encode(e).byteLength<=65536)),VL=N({messageId:j,revision:V.check(B(0)),text:BL,thinking:BL,textOffset:V.check(B(0)),thinkingOffset:V.check(B(0)),textTruncated:Qp,thinkingTruncated:Qp}),HL=N({commandId:j,requestId:j,meta:O(pO),origin:O(AL),text:j,images:O(P(gy)),delivery:I([`steer`,`followUp`])}),UL=P(N({toolCallId:j,revision:V.check(B(0)),tail:j.check(z(e=>new TextEncoder().encode(e).byteLength<=8192&&e.split(`
|
|
819
|
-
`).length<=200)),droppedBytes:V.check(B(0)),totalBytes:V.check(B(0))})).check(H(4)),WL=N({total:V.check(B(0)),prompts:P(HL),hasMore:Qp}),GL=N({tokens:V.check(B(0)),window:L(V.check(Bm(0)))}),KL=N({sessionId:j,cursor:L(j),hasMore:Qp,oldestCursor:O(L(j)),messages:P(jL),terminals:P(LL),sandboxFailures:O(P(oO)),compactions:O(P(RL)),compactionNotices:O(P(zL)),pending:WL,activity:NL,progress:L(VL),toolOutput:UL,extensions:FL,attention:ny,context:O(GL)}),qL=F([N({kind:A(`activity`),activity:NL}),N({kind:A(`tool_output`),toolOutput:UL,activity:NL}),N({kind:A(`update`),delivery:I([`replay`,`live`]),cursor:L(j),messages:P(jL),terminals:P(LL),sandboxFailures:O(P(oO)),compactions:O(P(RL)),compactionNotices:O(P(zL)),pending:WL,activity:NL,extensions:FL,attention:ny,context:O(GL)}),N({kind:A(`progress`),progress:N({messageId:j,revision:V.check(B(0)),text:N({offset:V.check(B(0)),append:BL}),thinking:N({offset:V.check(B(0)),append:BL})}),activity:NL}),N({kind:A(`reset`),reason:A(`history_unavailable`),cursor:L(j),baseline:KL})]),JL=N({status:A(`accepted`),commandId:j,sessionId:O(j)});E(U(F([JL,N({status:A(`held`),reason:A(`recipient_offline`),message:A(`waiting: recipient offline`)})])),{onExcessProperty:`error`});var YL=N({status:A(`unknown`)}),XL=E(U(F([JL,YL])));function ZL(e){return XL(e)}var QL=F([JL,YL,N({status:A(`too_late`),commandId:j})]),$L=N({sessionId:j}),eR=E(U(KL),{onExcessProperty:`error`}),tR=E(U(qL),{onExcessProperty:`error`}),nR=E(U(JL)),rR=E(U(QL)),iR=E(U($L)),aR=E(U(uy)),oR=E(U(IL)),sR=E(U(P(IL))),cR=E(U(uO));function lR(e){return oR(e)}function uR(e){return sR(e)}function dR(e){return cR(e)}function fR(e){return nR(e)}function pR(e){return rR(e)}function mR(e){return E(U(L(HL)))(e)}function hR(e){return iR(e)}var gR=N({acceptedSender:L(j),delegator:L(j),terminal:LL,content:j,usage:P(N({provider:j,model:j,usage:cA})),toolCalls:V.check(B(0)),waitingOnYou:P(N({itemId:j,kind:j,summary:j})).check(H(8))});function _R(e){return E(U(L(gR)))(e)??void 0}function vR(e){return eR(e)}function yR(e){return tR(e)}function bR(e){let t=aR(e);return new W(t.boundary,t.cause,t.message,t.requestId)}var xR=E(U(N({sessions:P(F([N({sessionId:bh,createdAt:M,lastActivityAt:M,settledAt:O(M),title:j,state:I([`needs_you`,`running`,`errored`,`done`])}),N({sessionId:bh,state:A(`unavailable`)})])),next:k(bh)})));function SR(e){let t=xR(e);return{sessions:t.sessions,next:t.next}}var CR=E(U(N({sessionId:bh}))),wR=E(U(N({deleted:Qp})));function TR(e){return wR(e).deleted}function ER(e){return CR(e).sessionId}function DR(e){let t={modules:e.modules??[],sources:e.sources??[],sandbox:$D(e.sandbox),access:e.access??{}};return e.execution===void 0?t:{...t,execution:e.execution}}function OR(e,t){return Dr(e,t).then(e=>{if(ta(e))return e.value;let t=Bt(Wi(e.cause))??Hi(e.cause);return Promise.reject(t instanceof Error?t:Error(String(t)))})}function kR(e){let t=dr(e);if(ta(t))return t.value;let n=Bt(Wi(t.cause))??Hi(t.cause);throw n instanceof Error?n:Error(String(n))}function AR(e){let t=Yv(e);return Object.freeze({[Symbol.asyncIterator]:()=>{let e=t[Symbol.asyncIterator]();return{next:()=>e.next(),return:()=>e.return?.()??Promise.resolve({done:!0,value:void 0})}}})}function jR(e,t){function n(e){return OR(t.command(e))}return Object.freeze({address:e,command:n,withdraw:e=>OR(t.withdraw(e)),abort:()=>OR(t.abort),send:(e,n)=>OR(t.send(e,n)),cancel:e=>OR(t.cancel(e)),latestPending:()=>OR(t.latestPending),modelPreference:Object.freeze({read:()=>OR(t.modelPreference.read),set:e=>OR(t.modelPreference.set(e))}),extension:e=>{let n=t.extension(e);return Object.freeze({call:(e,t,r)=>OR(n.call(e,t,r))})},read:e=>OR(t.read(e)),readSettlement:(e,n)=>OR(t.readSettlement(e,n?.timeoutMs),n),subscribe:e=>AR(t.subscribe(e)),watch:e=>OR(t.watch(e)).then(e=>Object.freeze({snapshot:e.snapshot,changes:AR(e.changes),close:()=>OR(e.close)}))})}function MR(e,t){let n=t??`local:${Zh()}`;return Object.freeze({createSession:t=>OR(e.createSession(t)),deleteSession:t=>OR(e.deleteSession(t)),listSessions:t=>OR(e.listSessions(t)),extensions:Object.freeze({list:()=>OR(e.extensions.list),resume:t=>OR(e.extensions.resume(t)),call:(t,n,r)=>OR(e.extensions.call(t,n,r))}),session:t=>jR(`${n}/sessions/${encodeURIComponent(t)}`,e.session(t)),close:()=>OR(e.close)})}function NR(e){let t=`local:${Zh()}`;return Object.freeze({...MR(e,t),prepareConfiguration:async t=>{let n={extensions:t.extensions};t.tools!==void 0&&Object.assign(n,{tools:DR(t.tools)});let r=await OR(e.prepareConfiguration(n));return{commit:()=>{kR(r.commit)},discard:()=>OR(r.discard)}},grants:Object.freeze({deliver:(t,n)=>kR(e.grants.deliver(t,n)),read:t=>kR(e.grants.read(t))}),withMeta:n=>MR(e.withMeta(n),t)})}function PR(e=`Remote Shiitake operation is unavailable`){return new W(`runtime`,`unavailable`,e)}function FR(e){return new W(`runtime`,`invalid`,e)}function IR(){return new W(`runtime`,`closed`,`Shiitake client is closed`)}var LR=2,RR=E(j);function zR(e){if(!(e instanceof MessageEvent))throw FR(`Session stream event is invalid`);return RR(e.data)}function BR(e){return e.kind===`source-error`?y(PR(`Session stream is unavailable`)):e.kind===`snapshot`?ai({try:()=>({kind:`snapshot`,value:vR(zR(e.event))}),catch:()=>FR(`Session snapshot is invalid`)}):e.kind===`frame`?ai({try:()=>({kind:`frame`,value:yR(zR(e.event))}),catch:()=>FR(`Session frame is invalid`)}):ai({try:()=>bR(zR(e.event)),catch:()=>FR(`Session runtime error is invalid`)}).pipe(C(y))}function VR(e,t){return S(()=>{e.closed||(e.closed=!0,t.delete(e),e.source.close())})}function HR(e,t,n,r){return Sv(t=>Mr(ai({try:()=>{let i={source:new(r??EventSource)(e),closed:!1},a=(e,r)=>{jg(t,{kind:e,event:r})||(Pg(t,Ri(PR(`Session stream client fell behind`))),Zt(VR(i,n)))};return i.source.addEventListener(`snapshot`,e=>{a(`snapshot`,e)}),i.source.addEventListener(`frame`,e=>{a(`frame`,e)}),i.source.addEventListener(`runtime-error`,e=>{a(`runtime-error`,e)}),i.source.addEventListener(`error`,e=>{i.source.readyState===LR&&a(`source-error`,e)}),n.add(i),i},catch:()=>PR(`Session stream could not open`)}),e=>VR(e,n)),{bufferSize:256,strategy:`dropping`}).pipe(Nv(BR),Gv(t.await))}function UR(e,t){return`${e}/sessions/${encodeURIComponent(t)}`}function WR(e,t,n=!1){let r=new URLSearchParams({mode:`subscribe`});return t!==void 0&&r.set(`after`,t),n&&r.set(`includeSandboxFailures`,`true`),`${e}?${r.toString()}`}function GR(e,t,n,r){return HR(e,t,n,r).pipe(Nv(e=>e.kind===`frame`?v(e.value):y(FR(`Session subscription received a snapshot`))))}function KR(e,t,n,r,i,a){return b(function*(){yield*n;let o=yield*u_(!1),s=yield*ha();yield*S(()=>t.add(s)),yield*ya(s,S(()=>{t.delete(s)}));let c=yield*Dn(HR(e,r,i,a).pipe(Vv(mv()),_a(s)));if(na(c))return yield*Sa(s,c),yield*Ut(c.cause);let[l,u]=c.value;if(nt(l)||l.value.kind!==`snapshot`){let e=FR(`Session stream did not begin with a snapshot`);return yield*Sa(s,Qi(e)),yield*y(e)}let d=u.pipe(Nv(e=>e.kind===`frame`?v(e.value):v({kind:`reset`,reason:`history_unavailable`,cursor:e.value.cursor,baseline:e.value})),Gv(o.await),Hv(e=>o.isOpen()&&Bi(e)?Cv:Ev(e)));return Object.freeze({snapshot:l.value.value,changes:d,close:o.open.pipe(g(Sa(s,ea)))})})}function qR(e,t,n){return Jr({try:async t=>{let n=await e(t);return{response:n,body:await n.text()}},catch:()=>PR(`${n} request failed`)}).pipe(C(({response:e,body:r})=>e.ok?ai({try:()=>t(r),catch:()=>FR(`${n} response is invalid`)}):ai({try:()=>bR(r),catch:()=>FR(`${n} error response is invalid`)}).pipe(C(y))))}function JR(t){let n=t.baseUrl.replace(/\/+$/u,``),r=t.fetch??globalThis.fetch,i=new Set,a=new Set,o=l_(!1),s=!1,c=Cn(()=>s?y(IR()):ft),l=(t,n,r)=>e(qR(t,n,r),o.await.pipe(g(y(IR())))),u=(e,t)=>c.pipe(g(l(n=>r(e,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t),signal:n}),dR,`Extension command`)));return Object.freeze({createSession:e=>c.pipe(C(()=>{let t=Jy({requestId:e});return l(e=>r(`${n}/sessions`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({requestId:t}),signal:e}),ER,`Session creation`)})),deleteSession:e=>c.pipe(C(()=>{let t=Ky(e);return l(e=>r(`${n}/sessions/${encodeURIComponent(t)}`,{method:`DELETE`,signal:e}),TR,`Session deletion`)})),listSessions:e=>c.pipe(C(()=>{let t=new URLSearchParams;e!==void 0&&t.set(`after`,qy(e));let i=t.size===0?``:`?${t.toString()}`;return l(e=>r(`${n}/sessions${i}`,{signal:e}),SR,`Session discovery`)})),extensions:Object.freeze({list:c.pipe(g(l(e=>r(`${n}/extensions`,{signal:e}),uR,`Extension list`))),resume:e=>c.pipe(g(l(t=>r(`${n}/extensions/${encodeURIComponent(e)}/resume`,{method:`POST`,signal:t}),lR,`Extension resume`))),call:(e,t,r)=>u(`${n}/extensions/${encodeURIComponent(e)}/commands/${encodeURIComponent(t)}`,r)}),session:e=>{let s=Ky(e),d=UR(n,s),f=`${d}/events`;function p(e){return c.pipe(g(l(t=>r(`${d}/command`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({command:e}),signal:t}),e.type===`prompt`||e.type===`compact`?fR:e.type===`cancel`?pR:e.type===`fork`?hR:()=>void 0,`Command`)))}return Object.freeze({command:p,withdraw:e=>c.pipe(g(l(t=>r(`${d}/withdraw`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({requestId:e}),signal:t}),ZL,`Request withdrawal`))),abort:p({type:`abort`}),send:(e,t)=>S(()=>t?.requestId??Zh()).pipe(C(n=>{let r={type:`prompt`,delivery:t?.delivery??`steer`,requestId:n,text:e};return p(t?.images===void 0?r:{...r,images:t.images}).pipe(at(e=>e.requestId===n?e:new W(e.boundary,e.cause,e.message,n)))})),cancel:e=>p({type:`cancel`,...e}),latestPending:c.pipe(g(l(e=>r(`${d}/pending/latest`,{signal:e}),mR,`Newest pending prompt`))),modelPreference:Object.freeze({read:c.pipe(g(l(e=>r(`${d}/model-preference`,{signal:e}),oy,`Model preference read`))),set:e=>c.pipe(g(l(t=>r(`${d}/model-preference`,{signal:t,method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)}),()=>void 0,`Model preference set`)))}),extension:e=>Object.freeze({call:(t,n)=>u(`${d}/extensions/${encodeURIComponent(e)}/commands/${encodeURIComponent(t)}`,n)}),read:e=>c.pipe(g(ai({try:()=>Yy(e),catch:e=>e instanceof W?e:FR(`Read options are invalid`)})),C(({limit:e,before:t,includeSandboxFailures:n})=>{let i=new URLSearchParams({limit:String(e)});return t!==void 0&&i.set(`before`,t),n===!0&&i.set(`includeSandboxFailures`,`true`),l(e=>r(`${d}?${i.toString()}`,{signal:e}),vR,`Session read`)})),readSettlement:(e,t=0)=>c.pipe(g(l(n=>r(`${d}/settlement?${new URLSearchParams({commandId:e,timeoutMs:String(t)}).toString()}`,{signal:n}),_R,`Command settlement`))),subscribe:e=>jv(c.pipe(g(ai({try:()=>Xy(e),catch:e=>e instanceof W?e:FR(`Subscribe options are invalid`)})),Se(({after:e,includeSandboxFailures:n})=>GR(WR(f,e,n===!0),o,a,t.eventSource)))),watch:e=>KR(e?.includeSandboxFailures===!0?`${f}?includeSandboxFailures=true`:f,i,c,o,a,t.eventSource)})},close:Cn(()=>s?ft:(s=!0,o.open.pipe(g(Yr([...i],e=>Sa(e,ea),{discard:!0})),g(Yr([...a],e=>VR(e,a),{discard:!0})))))})}function YR(e){return MR(JR(e),e.baseUrl.replace(/\/+$/u,``))}T(uO);function XR(e,t){if(t===void 0)return{status:`unavailable`};if(t.status===`stopped`)return{status:`stopped`,reason:t.reason};if(t.value===null||e.projection===null)return{status:`running`,value:null};let n=T(e.projection.schema)(t.value);return n._tag===`Success`?{status:`running`,value:n.success}:{status:`stopped`,reason:`Extension projection does not match this client`}}function ZR(e,t){let n=e?.messageId===t.messageId?e:null;if(n!==null&&n.revision>=t.revision)return e;let r=n===null?0:n.textOffset+n.text.length,i=n===null?0:n.thinkingOffset+n.thinking.length;return t.text.offset>r||t.thinking.offset>i?e:{messageId:t.messageId,revision:t.revision,text:(n?.text??``)+t.text.append.slice(Math.max(0,r-t.text.offset)),thinking:(n?.thinking??``)+t.thinking.append.slice(Math.max(0,i-t.thinking.offset)),textOffset:n?.textOffset??0,thinkingOffset:n?.thinkingOffset??0,textTruncated:n?.textTruncated??!1,thinkingTruncated:n?.thinkingTruncated??!1}}var QR=j.pipe(R(ah(1)),R(H(128)),R(wm(/^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$/u))),$R=j.pipe(R(ah(1)),R(H(64)),R(wm(/^(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)(?:-[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?(?:\+[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?$/u))),ez=QR.pipe(dm(`ExtensionId`)),tz=j.pipe(R(wm(/^sha256:[0-9a-f]{64}$/u)),dm(`ExtensionRevision`)),nz=j.pipe(R(wm(/^sha256:[0-9a-f]{64}$/u)),dm(`ExtensionFingerprint`)),rz=class extends Ni(`ExtensionHookError`){};function iz(e){return Cn(()=>{let t=e();return He(t)?t:Jr({try:()=>Promise.resolve(t),catch:e=>new rz({cause:e})})})}var az=class extends Error{constructor(){super(`Extension transaction handler must return synchronously`),this.name=`AsyncExtensionTransactionError`}};function oz(e,t){let r=e(t);if(r instanceof Promise||He(r)&&!n(r))throw new az;return r}export{aI as $,ea as $a,lh as $i,oE as $n,$p as $r,GA as $t,_L as A,Hu as Aa,ch as Ai,UO as An,Zh as Ar,Gj as At,QI as B,ya as Ba,Xm as Bi,vO as Bn,Vh as Br,bj as Bt,lL as C,vc as Ca,U as Ci,Ek as Cn,a_ as Cr,OF as Ct,HI as D,hc as Da,ih as Di,QO as Dn,Mg as Dr,yM as Dt,OL as E,xc as Ea,Um as Ei,$O as En,Fg as Er,TM as Et,vL as F,Ps as Fa,Bm as Fi,SO as Fn,Qp as Fr,Lj as Ft,zI as G,la as Ga,Zm as Gi,KE as Gn,am as Gr,Mj as Gt,yL as H,ba as Ha,Gm as Hi,uO as Hn,I as Hr,Cj as Ht,nL as I,Fs as Ia,eh as Ii,CO as In,Sh as Ir,Ij as It,FI as J,ia as Ja,Qm as Ji,uE as Jn,L as Jr,uj as Jt,II as K,ca as Ka,Hm as Ki,yD as Kn,bh as Kr,Rj as Kt,iL as L,Ls as La,Ym as Li,OO as Ln,Mm as Lr,vj as Lt,uL as M,Uu as Ma,gh as Mi,WO as Mn,Kh as Mr,Nj as Mt,dL as N,yu as Na,Am as Ni,GO as Nn,P as Nr,Fj as Nt,KI as O,pc as Oa,dh as Oi,ZO as On,jg as Or,vM as Ot,oL as P,ic as Pa,Nm as Pi,HO as Pn,em as Pr,Pj as Pt,TI as Q,Xi as Qa,hh as Qi,aE as Qn,N as Qr,rj as Qt,rL as R,Oo as Ra,B as Ri,DO as Rn,V as Rr,yj as Rt,cL as S,Ju as Sa,Bp as Si,Ok as Sn,l_ as Sr,bP as St,eL as T,gc as Ta,Mp as Ti,Dk as Tn,o_ as Tr,RF as Tt,YI as U,ha as Ua,Vm as Ui,lO as Un,Km as Ur,Aj as Ut,gL as V,Sa as Va,jm as Vi,gO as Vn,A as Vr,xj as Vt,JI as W,_a as Wa,nh as Wi,eO as Wn,Jp as Wr,jj as Wt,CI as X,ta as Xa,H as Xi,mE as Xn,nm as Xr,ij as Xt,SI as Y,na as Ya,uh as Yi,hE as Yn,M as Yr,ZA as Yt,jI as Z,ra as Za,vh as Zi,dE as Zn,j as Zr,YA as Zt,BI as _,vm as _a,E as _i,EA as _n,Sv as _r,LF as _t,nz as a,km as aa,F as ai,QA as an,Ki as ao,Yy as ar,pF as at,qI as b,bc as ba,mm as bi,Mk as bn,Yv as br,pP as bt,$R as c,k as ca,R as ci,cj as cn,Ky as cr,kN as ct,YR as d,lm as da,Ip as di,tj as dn,Zy as dr,qN as dt,ah as ea,Eh as ei,XA as en,zi as eo,eE as er,WM as et,DR as f,ym as fa,Lp as fi,nj as fn,W as fr,jN as ft,XI as g,Ap as ga,T as gi,OA as gn,ty as gr,lF as gt,fR as h,Lh as ha,Fp as hi,TA as hn,Qv as hr,HN as ht,ez as i,wm as ia,cm as ii,qA as in,Bi as io,Hy as ir,DF as it,aL as j,Wu as ja,yh as ji,VO as jn,Gh as jr,qj as jt,kL as k,Sc as ka,$m as ki,XO as kn,mg as kr,SM as kt,ZR as l,O as la,Cp as li,JA as ln,by as lr,xN as lt,NR as m,Rh as ma,Pp as mi,kA as mn,$v as mr,GN as mt,iz as n,mh as na,Oh as ni,sj as nn,Gi as no,nT as nr,EF as nt,QR as o,Em as oa,Yp as oi,ej as on,Hi as oo,Uy as or,hF as ot,OR as p,zh as pa,Np as pi,tA as pn,ay as pr,vP as pt,LI as q,fa as qa,rh as qi,HE as qn,Xp as qr,pj as qt,oz as r,Wm as ra,Zp as ri,KA as rn,Wi as ro,uT as rr,MN as rt,tz as s,z as sa,dm as si,aj as sn,Ni as so,Jy as sr,LN as st,az as t,_h as ta,im as ti,lj as tn,Ri as to,rT as tr,dP as tt,XR as u,um as ua,Sp as ui,$A as un,Xy as ur,KN as ut,VI as v,xd as va,Vp as vi,Wk as vn,Kv as vr,VP as vt,$I as w,fc as wa,bm as wi,bk as wn,s_ as wr,fF as wt,sL as x,_c as xa,zp as xi,Sk as xn,jv as xr,yP as xt,ZI as y,wc as ya,Up as yi,Nk as yn,Av as yr,_P as yt,EL as z,ma as za,th as zi,EO as zn,Bh as zr,Sj as zt};
|
|
817
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,t,r,a,s,i.kind,vN(i),n.state,_N(i),i.workId,NA(i),n.timestamp,n.completedAt),a=t,o=t,s+=1,l=n.sequence}if(!t.more)break}if(o===null)throw $(`Fork path is empty`);e.sql.exec(`UPDATE sessions SET leaf_id = ?, updated_at = ? WHERE id = ?`,o,i,r);let u=HP(e,{sessionId:t.sessionId});for(let t of hj(e,(t,n)=>ZP(e,u,t,n)))SP(e,{sessionId:r,id:wM.fact.generate(),entry:t});return _M(e,{sessionId:r,activityAt:i,title:hN(e,r)}),r})}function RF(e,t,n,r){if(wN(e,t)===void 0)throw $(`Session document owner is unavailable`);return ZP(e,HP(e,{sessionId:t}),n,r)}function zF(e,t,n,r,i){if(wN(e,t)===void 0)throw $(`Session document owner is unavailable`);SP(e,{sessionId:t,id:wM.fact.generate(),entry:{kind:`document`,workId:null,extensionId:n,name:r,valueJson:i}})}var BF=2097152,VF=200,HF=200,UF=new TextEncoder;function WF(e){return new W(`store`,`unavailable`,e)}function GF(e,t,n){let r=new Map;for(let e of n)e.entry.kind===`command`&&r.set(e.entry.workId,e.entry.workId);let i=n.flatMap(({entry:e})=>(e.kind===`run_terminal`||e.kind===`work_terminal`)&&!r.has(e.workId)?[e.workId]:[]);for(let n of i)VN(e,t,n)!==void 0&&r.set(n,n);return r}function KF(e,t){return n=>{let r=VN(e,t,n)?.origin;return r?.kind===`extension`?{extensionId:r.extensionId,correlation:r.correlation}:void 0}}function qF(e,t,n){return{commandIds:GF(e,t,n),diagnostics:XF(n),cancellations:new Map(n.flatMap(({entry:e})=>e.kind===`cancellation`&&e.meta!==void 0?[[e.targetWorkId,e.meta]]:[])),origin:KF(e,t)}}function JF(e,t,n,r){let i=$P(e,n,new Set(r.flatMap(({entry:e})=>e.kind===`message`||e.kind===`run_terminal`||e.kind===`work_terminal`?[e.workId]:[]))),a=new Map;for(let e of i.commands)a.set(e,e);for(let{entry:n}of r)(n.kind===`run_terminal`||n.kind===`work_terminal`)&&!a.has(n.workId)&&VN(e,t,n.workId)!==void 0&&a.set(n.workId,n.workId);return{commandIds:a,diagnostics:i.diagnostics,cancellations:i.cancellations,origin:KF(e,t)}}function YF(e,t){let n=DA(e.entry);if(n!==void 0){let r=t.origin(n.workId),i={id:e.id,sequence:e.sequence,commandId:n.workId,requestId:n.requestId,value:n.message};return n.meta!==void 0&&(i={...i,meta:n.meta}),r!==void 0&&(i={...i,origin:r}),Object.freeze(i)}if(e.entry.kind===`operator`){let t={id:e.id,sequence:e.sequence,commandId:null,requestId:e.entry.requestId,value:jA(e.entry)};return e.entry.meta!==void 0&&(t={...t,meta:e.entry.meta}),Object.freeze(t)}if(e.entry.kind===`message`){let n={id:e.entry.message.value,sequence:e.sequence,commandId:t.commandIds.get(e.entry.workId)??null,value:e.entry.value};return Object.freeze(e.entry.data===void 0?n:{...n,data:e.entry.data})}}function XF(e){let t=new Map;for(let{entry:n}of e)(n.kind===`work_terminal`||n.kind===`run_terminal`)&&n.diagnostic!==void 0&&t.set(n.workId,n.diagnostic);return t}function ZF(e,{commandIds:t,diagnostics:n,cancellations:r}){if(e.entry.kind!==`run_terminal`&&e.entry.kind!==`work_terminal`)return;let i=t.get(e.entry.workId);if(i===void 0)return;let a={commandId:i,outcome:e.entry.outcome,sequence:e.sequence,diagnostic:n.get(e.entry.workId)??null},o=e.entry.outcome===`cancelled`?r.get(e.entry.workId):void 0;return Object.freeze(o===void 0?a:{...a,meta:o})}function QF(e,t,n){let r=[];for(let i of n){let a=i.entry;if(a.kind!==`compaction`)continue;let o=n.find(e=>e.id===a.head)?.sequence??JP(e,t,a.head);if(o===void 0)throw WF(`Session compaction horizon is unavailable`);r.push(Object.freeze({id:i.id,sequence:o,at:i.timestamp,tokensBefore:a.data.tokensBefore,tokensAfter:a.data.tokensAfter??null,trigger:a.data.reason??null}))}return Object.freeze(r)}function $F(e){return Object.freeze(e.flatMap(({id:e,sequence:t,timestamp:n,entry:r})=>r.kind===`compaction_notice`?[Object.freeze({id:e,sequence:t,at:n,trigger:r.trigger,result:r.result,diagnostic:r.result===`stale`||r.result===`insufficient`?null:r.diagnostic??null})]:[]))}function eI(e){return UF.encode(JSON.stringify(e)).byteLength}function tI(e,t){let n=Hk({generation:e,sequence:t});if(n===void 0)throw WF(`Session cursor is unavailable`);return n}function nI(e,t,n,r,i=!1){let a=YF(t,r),o=ZF(t,r),s=i&&t.entry.kind===`sandbox_failure`?t.entry.event:void 0;if(a!==void 0&&e.messages.length===n)return!1;let c=(a===void 0?0:eI(a))+(o===void 0?0:eI(o))+(s===void 0?0:eI(s));if(c>BF)throw WF(`Session projection entry exceeds the read bound`);return e.bytes+c>BF?!1:(a!==void 0&&e.messages.push(a),o!==void 0&&e.terminals.push(o),s!==void 0&&e.sandboxFailures.push(s),e.bytes+=c,!0)}function rI(e,t,n,r,i,a=!1){let o={messages:[],terminals:[],sandboxFailures:[],bytes:0},s=0;for(let t=0;t<e.length&&s!==HF;t+=1){let c=e[i===`forward`?t:e.length-1-t];if(c===void 0||!nI(o,c,n,r,a))break;s+=1}if(s===0&&e.length>0)throw WF(`Session page cannot make bounded progress`);let c=i===`backward`?[...o.messages].reverse():o.messages,l=i===`backward`?[...o.terminals].reverse():o.terminals,u=i===`backward`?[...o.sandboxFailures].reverse():o.sandboxFailures;return Object.freeze({messages:Object.freeze(c),terminals:Object.freeze(l),sandboxFailures:Object.freeze(u),consumed:s,hasMore:t||s<e.length})}function iI(e){return Array.isArray(e)}function aI(e,t){let{commands:n,total:r}=IN(e,t,HF+1,`prompts`),i=[],a=UF.encode(JSON.stringify({prompts:[],hasMore:!1,total:r})).byteLength;for(let e of n){let t=sI(e),n=UF.encode(JSON.stringify(t)).byteLength+(i.length===0?0:1);if(i.length===HF||a+n>BF)return{prompts:i,hasMore:!0,total:r};i.push(t),a+=n}return{prompts:i,hasMore:!1,total:r}}function oI(e,t,n){let r=PN(e,t,n);return r===void 0?null:sI(r)}function sI(e){let t=DA(e.entry);if(t===void 0)throw WF(`Pending Session prompt is unavailable`);let n=t.message.content,r=iI(n)?{commandId:e.entry.workId,requestId:t.requestId,text:n.filter(e=>e.type===`text`).map(e=>e.text).join(``),images:n.filter(e=>e.type===`image`),delivery:t.delivery??`followUp`}:{commandId:e.entry.workId,requestId:t.requestId,text:n,delivery:t.delivery??`followUp`},i=e.entry.meta===void 0?r:{...r,meta:e.entry.meta};return e.origin.kind===`extension`?{...i,origin:{extensionId:e.origin.extensionId,correlation:e.origin.correlation}}:i}function cI(e,t,n){let r=Uk(n);if(r?.generation===t.rootId)return qP(e,t,r.sequence)?r.sequence:void 0}function lI(e,t,n,r,i=()=>({})){return jP(e,t,()=>{let a=aI(e,t),o=HP(e,{sessionId:t});if(o===void 0)return Object.freeze({sessionId:t,cursor:null,hasMore:!1,oldestCursor:null,messages:Object.freeze([]),terminals:Object.freeze([]),compactions:Object.freeze([]),compactionNotices:Object.freeze([]),pending:a,activity:r.facts,progress:r.readProgress(),toolOutput:r.toolOutput,extensions:i(),attention:VO(e,t)});let s=o.rootId,c=n.before===void 0?2**53-1:cI(e,o,n.before);if(c===void 0)throw WF(`Session read cursor is unavailable`);let l=KP(e,o,{before:c,from:`newest`,rows:HF}),u=rI(l.rows,l.more,n.limit,JF(e,t,o,l.rows),`backward`,n.includeSandboxFailures===!0),d=l.rows.slice(l.rows.length-u.consumed),f=l.rows.at(-1),p=d[0],m={sessionId:t,cursor:f===void 0?null:tI(s,f.sequence),hasMore:u.hasMore,oldestCursor:u.hasMore&&p!==void 0?tI(s,p.sequence):null,messages:u.messages,terminals:u.terminals,compactions:QF(e,o,d),compactionNotices:$F(d),pending:a,activity:r.facts,progress:n.before===void 0?r.readProgress():null,toolOutput:n.before===void 0?r.toolOutput:[],extensions:i(),attention:VO(e,t)};return Object.freeze(n.includeSandboxFailures===!0?{...m,sandboxFailures:u.sandboxFailures}:m)})}var uI=Object.freeze({kind:`reset`});function dI(e,t,n){if(n===void 0)return 0;if(n.generation===t.rootId)return qP(e,t,n.sequence)?n.sequence:void 0}function fI(e,t,n,r,i,a,o,s,c){let l=KP(e,t,{after:n,from:`oldest`,rows:HF}),u=rI(l.rows,l.more,VF,JF(e,t.sessionId,t,l.rows),`forward`,c),d=l.rows.slice(0,u.consumed),f=d.at(-1)?.sequence??t.newestSequence,p={kind:`update`,delivery:r,cursor:tI(t.rootId,f),messages:u.messages,terminals:u.terminals,compactions:QF(e,t,d),compactionNotices:$F(d),pending:s,activity:i.facts,extensions:a,attention:o},m=[Object.freeze(c?{...p,sandboxFailures:u.sandboxFailures}:p)];return Object.freeze({kind:`page`,frames:Object.freeze(u.hasMore?m:[...m,{kind:`tool_output`,toolOutput:i.toolOutput,activity:i.facts}]),hasMore:u.hasMore})}function pI(e,t,n,r,i,a=()=>({}),o=!1){let s=n===void 0?void 0:Uk(n);return n!==void 0&&s===void 0?uI:jP(e,t,()=>{let c=aI(e,t),l=HP(e,{sessionId:t});if(l===void 0)return n===void 0?{kind:`page`,frames:[{kind:`update`,delivery:r,cursor:null,messages:[],terminals:[],compactions:[],compactionNotices:[],activity:i.facts,extensions:a(),attention:VO(e,t),pending:c}],hasMore:!1}:uI;let u=dI(e,l,s);return u===void 0?uI:fI(e,l,u,r,i,a(),VO(e,t),c,o)})}function mI(e,t,n){let r=VN(e,t,n);if(r===void 0)throw WF(`Accepted Session command is unavailable`);if(!WN(e,t,r.entry.workId))return;let i=GN(e,t,r.entry.workId),a=qF(e,t,i),o=i.flatMap(e=>{let t=ZF(e,a);return t===void 0?[]:[t]}).at(-1);if(o===void 0)return;let s=i.flatMap(({entry:e})=>e.kind===`message`&&e.value.role===`assistant`?[e.value]:[]),c=s.at(-1),l=o.outcome===`cancelled`?o.meta:r.entry.meta,u=Kh(r.entry.meta);return{acceptedSender:u?.kind===`agent`?u.id:null,delegator:Pk(e,t)?.replyTo[0]?.agentId??null,terminal:l===void 0?o:{...o,meta:l},content:o.outcome===`cancelled`?``:c?.content.flatMap(e=>e.type===`text`?[e.text]:[]).join(``).trim()??``,usage:s.map(({provider:e,model:t,usage:n})=>({provider:e,model:t,usage:n})),toolCalls:new Set(i.flatMap(({entry:e})=>e.kind===`tool_intent`?[e.call.id]:[])).size,waitingOnYou:$O(e,t,r.entry.workId)}}var hI=65536,gI=2048,_I=new TextEncoder,vI=()=>({chunks:[],length:0,bytes:0});function yI(e,t){for(let n=0;n<t.length;){let r=Math.min(n+gI,t.length),i=t.charCodeAt(r-1);r<t.length&&i>=55296&&i<=56319&&r--;let a=t.slice(n,r),o=_I.encode(a).byteLength,s=e.chunks.at(-1);for(s!==void 0&&s.text.length+a.length<=gI?(s.text+=a,s.bytes+=o):e.chunks.push({offset:e.length,text:a,bytes:o}),e.length+=a.length,e.bytes+=o,n=r;e.bytes>hI&&e.chunks.length>1;){let t=e.chunks.shift();t!==void 0&&(e.bytes-=t.bytes)}}}function bI(e){return e.chunks[0]?.offset??0}function xI(e,t){return e.chunks.flatMap(e=>e.offset+e.text.length<=t?[]:[e.text.slice(Math.max(0,t-e.offset))]).join(``)}function SI(e){return e===null?null:{messageId:e.messageId,revision:e.revision,text:xI(e.text,bI(e.text)),thinking:xI(e.thinking,bI(e.thinking)),textOffset:bI(e.text),thinkingOffset:bI(e.thinking),textTruncated:bI(e.text)>0,thinkingTruncated:bI(e.thinking)>0}}function CI(e){return e===null?null:{messageId:e.messageId,revision:e.revision,text:e.textOffset+e.text.length,thinking:e.thinkingOffset+e.thinking.length}}function wI(e,t,n,r){let i=TI.get(e)?.get(t),a=i?.workId===n?i.value:null;if(a===null)return null;let o=r?.messageId===a.messageId?r:null;if(o!==null&&o.revision>=a.revision)return null;let s=o?.text??0,c=o?.thinking??0;if(!(s<bI(a.text)||c<bI(a.thinking)))return{messageId:a.messageId,revision:a.revision,text:{offset:s,append:xI(a.text,s)},thinking:{offset:c,append:xI(a.thinking,c)}}}var TI=new WeakMap;function EI(e,t,n){let r=TI.get(e)?.get(t);return r?.workId===n?[...r.slots.values()].filter(e=>e!==null):[]}var DI=T(N({droppedBytes:V.check(B(0)),totalBytes:V.check(B(0))}),{onExcessProperty:`error`});function OI(e,t){return b(function*(){let n=yield*AI(e,t),r=()=>{DO(e,t.sessionId,`progress`)};return{started:e=>S(()=>{n.slots.size<4&&!n.slots.has(e.toolCall.value)&&n.slots.set(e.toolCall.value,null)}),update:e=>S(()=>{let t=n.slots.get(e.toolCall.value);if(t===void 0)return;let i=DI(e.result.data);if(Ct(i))return;let a=e.result.content.filter(e=>e.type===`text`).map(e=>e.text).join(``);new TextEncoder().encode(a).byteLength>8192||a.split(`
|
|
818
|
+
`).length>200||i.success.droppedBytes>i.success.totalBytes||(n.slots.set(e.toolCall.value,{toolCallId:e.call.id,revision:(t?.revision??0)+1,tail:a,...i.success}),r())}),terminal:e=>S(()=>{n.slots.delete(e.toolCall.value)&&r()})}})}function kI(e){let t=TI.get(e);if(t!==void 0)return t;let n=new Map;return TI.set(e,n),n}function AI(e,t){return b(function*(){let n=kI(e),r=n.get(t.sessionId);if(r?.workId===t.commandId)return r;let i={workId:t.commandId,value:null,slots:new Map};return n.set(t.sessionId,i),yield*Sr(()=>S(()=>{n.get(t.sessionId)===i&&(n.delete(t.sessionId),(i.value!==null||i.slots.size>0)&&DO(e,t.sessionId,`progress`))})),i})}function jI(e){return new W(`runtime`,`rejected`,e)}function MI(e,t,n){let r=kI(e).get(t);return SI(r?.workId===n?r.value:null)}function NI(e,t,n){let r=TI.get(e)?.get(t);return r?.workId===n&&(r.value?.text.length??0)>0}function PI(e,t,n){return b(function*(){let r=yield*AI(e,t),i,a=0,o,s=()=>{o!==void 0&&clearTimeout(o),o=void 0},c=()=>{s();let n=r.value;n!==null&&(a=n.text.length+n.thinking.length,DO(e,t.sessionId,`progress`))},l=S(()=>{s();let n=r.value!==null;r.value=null,n&&DO(e,t.sessionId,`progress`),i=void 0});return yield*Sr(()=>l),Object.freeze({started:e=>S(()=>{s(),i=e,r.value=null,a=0}),update:e=>Cn(()=>{let t=i;if(t===void 0)return y(jI(`Mule progress arrived before its message start`));if(t.run.value!==e.run.value||t.turn.value!==e.turn.value||t.message.value!==e.message.value)return y(jI(`Mule progress identity conflicts`));let n=e.event;if(n.type!==`text_delta`&&n.type!==`thinking_delta`||n.delta.length===0)return ft;let s=r.value===null,l=r.value??{messageId:e.message.value,revision:0,text:vI(),thinking:vI()};yI(n.type===`text_delta`?l.text:l.thinking,n.delta),l.revision++,r.value=l;let u=l.text.length+l.thinking.length;return s||u-a>=4096?c():o??=setTimeout(c,100),ft}),terminal:e=>l.pipe(g(n(e)))})})}var FI=new WeakMap;function II(e){let t=FI.get(e);if(t!==void 0)return t;let n=new Map;return FI.set(e,n),n}function LI(e,t){return II(e).get(t)??null}function RI(e,t,n){II(e).set(t,Object.freeze({trigger:n})),DO(e,t,`progress`)}function zI(e,t){II(e).delete(t)&&DO(e,t,`progress`)}var BI=Object.freeze({admitNew:()=>{}});function VI(e){return e===void 0?BI:Object.freeze({admitNew:()=>{if(e.underPressure())throw new W(`store`,`storage_pressure`,`Storage is near its budget. New Sessions and prompts are refused until space is freed; running work continues.`)}})}function HI(e,t){let n=_F(e,t);return DO(e,t.sessionId),n}function UI(e,t){let n=vF(e,t);return DO(e,t.sessionId),n}function WI(e,t){let n=yF(e,t);return n!==`stale`&&DO(e,t.sessionId),n}function GI(e){return new W(`store`,`rejected`,e)}function KI(e){return new W(`store`,`conflict`,e)}function qI(e){return ai({try:e,catch:e=>e instanceof W?e:new W(`store`,`rejected`,`Native Session store operation failed`,void 0,e)})}function JI(e){return qI(()=>{_P(e)})}function YI(e,t,n,r,i,a,o){return qI(()=>{let s=NF(e,t,n,i,a,r,o);return s?.delivery===`new`&&DO(e,t,`settlement`),s})}function XI(e,t){return qI(()=>{let n=zN(e,t.sessionId,t.delivery,t.workId);return n.length>0&&DO(e,t.sessionId),n})}function ZI(e,t){return qI(()=>{BN(e,t),DO(e,t.sessionId,`settlement`)})}function QI(e,t,n,r,i){return qI(()=>{let a=MF(e,t,n,r,i);return DO(e,t,`settlement`),a?.accepted})}function $I(e,t){return qI(()=>{FF(e,{sessionId:t.sessionId,entryId:t.entryId,assertIdleSession:t.assertIdleSession}),DO(e,t.sessionId)})}function eL(e,t){return qI(()=>{IF(e,t)&&DO(e,t.sessionId)})}function tL(e,t){return qI(()=>{let n=LF(e,{sessionId:t.sessionId,entryId:t.entryId,assertIdleSession:t.assertIdleSession});return DO(e,n),Object.freeze({sessionId:n})})}function nL(e,t){return qI(()=>{let n=hF(e,{sessionId:Ky(t.sessionId),commandFactId:t.commandFactId});return n.entryDelivery===`new`&&DO(e,t.sessionId),n})}function rL(e){return e.content.flatMap(e=>e.type===`text`?[e.text]:[]).join(``).trim()}function iL(e,t){return qI(()=>{let n=VN(e,t.sessionId,t.commandFactId);if(n===void 0)throw GI(`Accepted Session command is unavailable`);let r=GN(e,t.sessionId,n.entry.workId);for(let e=r.length-1;e>=0;--e){let t=r[e]?.entry;if(t?.kind===`message`&&t.value.role===`assistant`)return rL(t.value)}return``})}function aL(e,t,n){return qI(()=>{let r=VN(e,t.sessionId,t.commandFactId);if(r===void 0)throw GI(`Accepted Session command is unavailable`);if(n!==`cancelled`)return r.entry.meta;let i=GN(e,t.sessionId,r.entry.workId).find(({entry:e})=>e.kind===`cancellation`);return i?.entry.kind===`cancellation`?i.entry.meta:void 0})}function oL(e,t){return qI(()=>{let n=VN(e,t.sessionId,t.commandFactId);if(n===void 0)throw GI(`Accepted Session command is unavailable`);return XF(GN(e,t.sessionId,n.entry.workId)).get(n.entry.workId)})}function sL(e,t,n,r,i,a){return qI(()=>{let o=Ky(t),s=Yy(r);return AP(e,o,()=>a(lI(e,o,s,n(),i)),s.before===void 0?void 0:Uk(s.before)?.sequence)})}function cL(e,t,n){return qI(()=>QN(e,Jy({requestId:t}),n))}function lL(e,t,n){return $N(e,Jy({requestId:t}),n)}function uL(e,t){return qI(()=>eP(e,{sessionId:Ky(t.sessionId),assertIdleSession:t.assertIdleSession,recordInboxDeletion:t=>{vM(e,t)}}))}function dL(e,t){return qI(()=>CM(e,t))}function fL(e,t,n,r,i,a,o,s){return qI(()=>{let c=Ky(t);return AP(e,c,()=>s(pI(e,c,n,r,i,a,o)))})}function pL(e,t){return NA(e)===NA(t)}function mL(e,t){return e.kind===t.kind&&e.value===t.value&&e.parent?.kind===t.parent?.kind&&e.parent?.value===t.parent?.value}function hL(e,t){return e.core===t.core&&e.extensions.length===t.extensions.length&&e.extensions.every(([e,n],r)=>{let i=t.extensions[r];return i?.[0]===e&&i[1]===n})}function gL(e,t,n,r,i){e.transactionSync(()=>{i?.();let a=GN(e,t.sessionId,t.commandId).find(r);if(a!==void 0){if(n.kind===`work_terminal`&&a.entry.kind===`run_terminal`||pL(a.entry,n))return`replay`;throw KI(`Mule event identity conflicts`)}for(let r=0;r<3;r+=1){let r=wM.fact.generate();if(DN(e,r)===void 0&&VN(e,t.sessionId,r)===void 0)return SP(e,{sessionId:t.sessionId,id:r,entry:n}),`new`}throw GI(`Session fact identity allocation failed`)})===`new`&&DO(e,t.sessionId,n.kind===`run_terminal`||n.kind===`work_terminal`?`settlement`:`durable`)}function _L(e,t,n){return qI(()=>{gL(e,t,{kind:`sandbox_failure`,workId:t.commandId,event:n},({entry:e})=>e.kind===`sandbox_failure`&&e.event.ref===n.ref)})}function vL(e,t,n,r){let i=VN(e,t,n);if(i?.entry.workId!==r)throw GI(`Accepted Session work is unavailable`);return i.origin.kind===`extension`?Object.freeze({extensionId:i.origin.extensionId,correlation:i.origin.correlation}):null}function yL(e,t,n,r){let i=vL(e,t,n,r),a=GN(e,t,r).map(({entry:e})=>e),o=new Set(a.flatMap(e=>e.kind===`tool_intent`?[e.call.id]:[])).size,s=a.filter(e=>e.kind===`run_terminal`||e.kind===`work_terminal`).at(-1);return Object.freeze({terminal:s?.kind===`run_terminal`||s?.kind===`work_terminal`?s.outcome:`missing`,origin:i,toolCalls:o})}function bL(e,t){return qI(()=>{if(VN(e,t.sessionId,t.commandFactId)?.entry.workId!==t.workId)throw GI(`Settled Session work is unavailable`);let n={workId:t.workId,kind:`work_terminal`,outcome:t.outcome};gL(e,{sessionId:t.sessionId,commandId:t.workId},t.diagnostic===void 0?n:{...n,diagnostic:t.diagnostic},({entry:e})=>e.kind===`work_terminal`||e.kind===`run_terminal`&&e.outcome===t.outcome,()=>{e.sql.exec(`DELETE FROM session_entries WHERE session_id = ? AND work_id = ? AND state = 'streaming' AND type = 'message_start'`,t.sessionId,t.workId)})})}function xL(e,t,n,r,i){return qI(()=>{let a=r.type===`run_start`?{kind:`run_started`,workId:t.commandId,run:r.run,contract:n}:r.type===`turn_start`?{kind:`turn_started`,workId:t.commandId,run:r.run,turn:r.turn}:{kind:`run_terminal`,workId:t.commandId,run:r.run,terminal:r.terminal,outcome:r.outcome};a.kind===`run_terminal`&&i!==void 0&&(a={...a,diagnostic:i}),gL(e,t,a,({entry:e})=>e.kind===a.kind?e.kind===`run_started`&&a.kind===`run_started`?mL(e.run,a.run)&&hL(e.contract,n):e.kind===`turn_started`&&a.kind===`turn_started`?mL(e.turn,a.turn):e.kind===`run_terminal`&&a.kind===`run_terminal`&&mL(e.terminal,a.terminal):!1)})}function SL(e,t,n){return qI(()=>{let r={kind:`message_start`,workId:t.commandId,run:n.run,turn:n.turn,message:n.message,role:n.value.role};e.transactionSync(()=>{let i=GN(e,t.sessionId,t.commandId).find(({entry:e})=>(e.kind===`message_start`||e.kind===`message`)&&mL(e.message,n.message));if(i!==void 0){if(i.entry.kind===`message`){if(i.entry.workId!==r.workId||!mL(i.entry.run,r.run)||!mL(i.entry.turn,r.turn)||i.entry.value.role!==r.role)throw KI(`Mule message-start identity conflicts`);return`replay`}if(!pL(i.entry,r))throw KI(`Mule message-start identity conflicts`);return`replay`}return SP(e,{sessionId:t.sessionId,id:n.message.value,entry:r,state:`streaming`}),`new`})===`new`&&DO(e,t.sessionId)})}function CL(e,t,n,r){return qI(()=>{gL(e,t,{kind:`model_prompt`,workId:t.commandId,run:r.run,turn:r.turn,attempt:r.attempt,contract:n,systemPrompt:r.systemPrompt},({entry:e})=>e.kind===`model_prompt`&&mL(e.turn,r.turn)&&e.attempt===r.attempt&&hL(e.contract,n))})}function wL(e,t,n){return qI(()=>{let r={kind:`message`,workId:t.commandId,run:n.run,turn:n.turn,message:n.message,value:n.value},i=n.data===void 0?r:{...r,data:n.data};e.transactionSync(()=>{let r=GN(e,t.sessionId,t.commandId).find(({entry:e})=>(e.kind===`message_start`||e.kind===`message`)&&mL(e.message,n.message));if(r?.entry.kind===`message`){if(!pL(r.entry,i))throw KI(`Mule completed-message identity conflicts`);return`replay`}return CP(e,{sessionId:t.sessionId,id:n.message.value,entry:i}),`new`})===`new`&&DO(e,t.sessionId)})}function TL(e,t,n,r){return qI(()=>{gL(e,t,{kind:`tool_intent`,replay:r.replay,contract:n,workId:t.commandId,run:r.run,turn:r.turn,toolCall:r.toolCall,call:r.call},({entry:e})=>e.kind===`tool_intent`&&mL(e.toolCall,r.toolCall)&&hL(e.contract,n))})}function EL(e,t,n){return qI(()=>{let{data:r,...i}=n.result,a={kind:`tool_outcome`,workId:t.commandId,run:n.run,turn:n.turn,toolCall:n.toolCall,call:n.call,result:i};gL(e,t,r===void 0?a:{...a,data:r},({entry:e})=>e.kind===`tool_outcome`&&mL(e.toolCall,n.toolCall))})}function DL(e,t,n,r){return qI(()=>{let i=GN(e,t.sessionId,t.commandId).find(({entry:e})=>e.kind===`turn_started`&&mL(e.turn,r));if(i===void 0)throw KI(`Retry has no recorded turn`);gL(e,t,{kind:`live_retry`,workId:t.commandId,event:n},({entry:e,sequence:t})=>t>i.sequence&&e.kind===`live_retry`&&e.event.type===n.type&&e.event.attempt===n.attempt&&mL(e.event.run,n.run))}).pipe(at(OL))}var OL=e=>({_tag:`MuleError`,phase:`listener`,message:`Woodstock could not record the Mule event`,cause:e});function kL(e,t,n){return b(function*(){let r=yield*PI(e,t,n=>wL(e,t,n)),i=yield*OI(e,t),a=(a,o)=>{switch(a.type){case`model_prompt`:return CL(e,t,n,a);case`run_start`:case`turn_start`:case`run_end`:return xL(e,t,n,a,o);case`message_start`:return a.value.role===`user`?ft:SL(e,t,a).pipe(g(a.value.role===`assistant`?r.started(a):ft));case`message_update`:return r.update(a);case`message_end`:return a.value.role===`user`?ft:a.value.role===`assistant`?r.terminal(a):wL(e,t,a);case`tool_execution_start`:return TL(e,t,n,a).pipe(g(i.started(a)));case`tool_execution_end`:return EL(e,t,a).pipe(g(i.terminal(a)));case`tool_execution_update`:return i.update(a);case`turn_end`:return ft}};return(e,t)=>a(e,t).pipe(at(OL))})}function AL(e,t,n){return qI(()=>mI(e,Ky(t),Ky(n)))}var jL=WM.mapFields(({extensionId:e,correlation:t})=>({extensionId:e,correlation:t})),ML=N({requestId:O(j),meta:O(pO),data:O(uO),origin:O(jL),id:j,sequence:V.check(Bm(0)),commandId:L(j),value:pA}),NL=I([`manual`,`threshold`,`overflow`]),PL=N({queue:F([N({state:A(`idle`)}),N({state:A(`queued`),commandId:bh,runningWork:L(N({phase:I([`thinking`,`streaming`,`running_tool`,`waiting_on_you`,`cancelling`])}))}),N({state:A(`running`),commandId:bh})]),cancellationRequested:Qp,retry:L(N({attempt:V.check(Bm(0)),maxAttempts:V.check(Bm(0)),delayMs:V.check(B(0)),errorMessage:j,scheduledAt:V.check(B(0))})),activeTool:L(j),lastModelChoiceSequence:L(V.check(Bm(0))),compaction:L(N({trigger:NL}))}),FL=j,IL=nm(j,F([N({status:A(`running`),revision:FL,value:uO,catalog:O(uO)}),N({status:A(`stopped`),revision:FL,reason:j})])),LL=N({id:j,version:j,revision:FL,status:I([`running`,`stopped`]),reason:L(j),stoppedAt:L(M)}),RL=N({commandId:j,outcome:I([`completed`,`cancelled`,`failed`,`interrupted`]),sequence:V.check(Bm(0)),diagnostic:L(j),meta:O(pO)}),zL=N({id:j,sequence:V.check(Bm(0)),at:V.check(B(0)),tokensBefore:M,tokensAfter:L(M),trigger:L(NL)}),BL=N({id:j,sequence:V.check(Bm(0)),at:V.check(B(0)),trigger:NL,result:I([`nothing_to_compact`,`failed`,`stale`,`insufficient`]),diagnostic:L(j)}),VL=j.check(z(e=>new TextEncoder().encode(e).byteLength<=65536)),HL=N({messageId:j,revision:V.check(B(0)),text:VL,thinking:VL,textOffset:V.check(B(0)),thinkingOffset:V.check(B(0)),textTruncated:Qp,thinkingTruncated:Qp}),UL=N({commandId:j,requestId:j,meta:O(pO),origin:O(jL),text:j,images:O(P(gy)),delivery:I([`steer`,`followUp`])}),WL=P(N({toolCallId:j,revision:V.check(B(0)),tail:j.check(z(e=>new TextEncoder().encode(e).byteLength<=8192&&e.split(`
|
|
819
|
+
`).length<=200)),droppedBytes:V.check(B(0)),totalBytes:V.check(B(0))})).check(H(4)),GL=N({total:V.check(B(0)),prompts:P(UL),hasMore:Qp}),KL=N({tokens:V.check(B(0)),window:L(V.check(Bm(0)))}),qL=N({sessionId:j,cursor:L(j),hasMore:Qp,oldestCursor:O(L(j)),messages:P(ML),terminals:P(RL),sandboxFailures:O(P(oO)),compactions:O(P(zL)),compactionNotices:O(P(BL)),pending:GL,activity:PL,progress:L(HL),toolOutput:WL,extensions:IL,attention:ny,context:O(KL)}),JL=F([N({kind:A(`activity`),activity:PL}),N({kind:A(`tool_output`),toolOutput:WL,activity:PL}),N({kind:A(`update`),delivery:I([`replay`,`live`]),cursor:L(j),messages:P(ML),terminals:P(RL),sandboxFailures:O(P(oO)),compactions:O(P(zL)),compactionNotices:O(P(BL)),pending:GL,activity:PL,extensions:IL,attention:ny,context:O(KL)}),N({kind:A(`progress`),progress:N({messageId:j,revision:V.check(B(0)),text:N({offset:V.check(B(0)),append:VL}),thinking:N({offset:V.check(B(0)),append:VL})}),activity:PL}),N({kind:A(`reset`),reason:A(`history_unavailable`),cursor:L(j),baseline:qL})]),YL=N({status:A(`accepted`),commandId:j,sessionId:O(j)});E(U(F([YL,N({status:A(`held`),reason:A(`recipient_offline`),message:A(`waiting: recipient offline`)})])),{onExcessProperty:`error`});var XL=N({status:A(`unknown`)}),ZL=E(U(F([YL,XL])));function QL(e){return ZL(e)}var $L=F([YL,XL,N({status:A(`too_late`),commandId:j})]),eR=N({sessionId:j}),tR=E(U(qL),{onExcessProperty:`error`}),nR=E(U(JL),{onExcessProperty:`error`}),rR=E(U(YL)),iR=E(U($L)),aR=E(U(eR)),oR=E(U(uy)),sR=E(U(LL)),cR=E(U(P(LL))),lR=E(U(uO));function uR(e){return sR(e)}function dR(e){return cR(e)}function fR(e){return lR(e)}function pR(e){return rR(e)}function mR(e){return iR(e)}function hR(e){return E(U(L(UL)))(e)}function gR(e){return aR(e)}var _R=N({acceptedSender:L(j),delegator:L(j),terminal:RL,content:j,usage:P(N({provider:j,model:j,usage:lA})),toolCalls:V.check(B(0)),waitingOnYou:P(N({itemId:j,kind:j,summary:j})).check(H(8))});function vR(e){return E(U(L(_R)))(e)??void 0}function yR(e){return tR(e)}function bR(e){return nR(e)}function xR(e){let t=oR(e);return new W(t.boundary,t.cause,t.message,t.requestId)}var SR=E(U(N({sessions:P(F([N({sessionId:bh,createdAt:M,lastActivityAt:M,settledAt:O(M),title:j,state:I([`needs_you`,`running`,`errored`,`done`])}),N({sessionId:bh,state:A(`unavailable`)})])),next:k(bh)})));function CR(e){let t=SR(e);return{sessions:t.sessions,next:t.next}}var wR=E(U(N({sessionId:bh}))),TR=E(U(N({deleted:Qp})));function ER(e){return TR(e).deleted}function DR(e){return wR(e).sessionId}function OR(e){let t={modules:e.modules??[],sources:e.sources??[],sandbox:$D(e.sandbox),access:e.access??{}};return e.execution===void 0?t:{...t,execution:e.execution}}function kR(e,t){return Dr(e,t).then(e=>{if(ta(e))return e.value;let t=Bt(Wi(e.cause))??Hi(e.cause);return Promise.reject(t instanceof Error?t:Error(String(t)))})}function AR(e){let t=dr(e);if(ta(t))return t.value;let n=Bt(Wi(t.cause))??Hi(t.cause);throw n instanceof Error?n:Error(String(n))}function jR(e){let t=Yv(e);return Object.freeze({[Symbol.asyncIterator]:()=>{let e=t[Symbol.asyncIterator]();return{next:()=>e.next(),return:()=>e.return?.()??Promise.resolve({done:!0,value:void 0})}}})}function MR(e,t){function n(e){return kR(t.command(e))}return Object.freeze({address:e,command:n,withdraw:e=>kR(t.withdraw(e)),abort:()=>kR(t.abort),send:(e,n)=>kR(t.send(e,n)),cancel:e=>kR(t.cancel(e)),latestPending:()=>kR(t.latestPending),modelPreference:Object.freeze({read:()=>kR(t.modelPreference.read),set:e=>kR(t.modelPreference.set(e))}),extension:e=>{let n=t.extension(e);return Object.freeze({call:(e,t,r)=>kR(n.call(e,t,r))})},read:e=>kR(t.read(e)),readSettlement:(e,n)=>kR(t.readSettlement(e,n?.timeoutMs),n),subscribe:e=>jR(t.subscribe(e)),watch:e=>kR(t.watch(e)).then(e=>Object.freeze({snapshot:e.snapshot,changes:jR(e.changes),close:()=>kR(e.close)}))})}function NR(e,t){let n=t??`local:${Zh()}`;return Object.freeze({createSession:t=>kR(e.createSession(t)),deleteSession:t=>kR(e.deleteSession(t)),listSessions:t=>kR(e.listSessions(t)),extensions:Object.freeze({list:()=>kR(e.extensions.list),resume:t=>kR(e.extensions.resume(t)),call:(t,n,r)=>kR(e.extensions.call(t,n,r))}),session:t=>MR(`${n}/sessions/${encodeURIComponent(t)}`,e.session(t)),close:()=>kR(e.close)})}function PR(e){let t=`local:${Zh()}`;return Object.freeze({...NR(e,t),prepareConfiguration:async t=>{let n={extensions:t.extensions};t.tools!==void 0&&Object.assign(n,{tools:OR(t.tools)});let r=await kR(e.prepareConfiguration(n));return{commit:()=>{AR(r.commit)},discard:()=>kR(r.discard)}},grants:Object.freeze({deliver:(t,n)=>AR(e.grants.deliver(t,n)),read:t=>AR(e.grants.read(t))}),withMeta:n=>NR(e.withMeta(n),t)})}function FR(e=`Remote Shiitake operation is unavailable`){return new W(`runtime`,`unavailable`,e)}function IR(e){return new W(`runtime`,`invalid`,e)}function LR(){return new W(`runtime`,`closed`,`Shiitake client is closed`)}var RR=2,zR=E(j);function BR(e){if(!(e instanceof MessageEvent))throw IR(`Session stream event is invalid`);return zR(e.data)}function VR(e){return e.kind===`source-error`?y(FR(`Session stream is unavailable`)):e.kind===`snapshot`?ai({try:()=>({kind:`snapshot`,value:yR(BR(e.event))}),catch:()=>IR(`Session snapshot is invalid`)}):e.kind===`frame`?ai({try:()=>({kind:`frame`,value:bR(BR(e.event))}),catch:()=>IR(`Session frame is invalid`)}):ai({try:()=>xR(BR(e.event)),catch:()=>IR(`Session runtime error is invalid`)}).pipe(C(y))}function HR(e,t){return S(()=>{e.closed||(e.closed=!0,t.delete(e),e.source.close())})}function UR(e,t,n,r){return Sv(t=>Mr(ai({try:()=>{let i={source:new(r??EventSource)(e),closed:!1},a=(e,r)=>{jg(t,{kind:e,event:r})||(Pg(t,Ri(FR(`Session stream client fell behind`))),Zt(HR(i,n)))};return i.source.addEventListener(`snapshot`,e=>{a(`snapshot`,e)}),i.source.addEventListener(`frame`,e=>{a(`frame`,e)}),i.source.addEventListener(`runtime-error`,e=>{a(`runtime-error`,e)}),i.source.addEventListener(`error`,e=>{i.source.readyState===RR&&a(`source-error`,e)}),n.add(i),i},catch:()=>FR(`Session stream could not open`)}),e=>HR(e,n)),{bufferSize:256,strategy:`dropping`}).pipe(Nv(VR),Gv(t.await))}function WR(e,t){return`${e}/sessions/${encodeURIComponent(t)}`}function GR(e,t,n=!1){let r=new URLSearchParams({mode:`subscribe`});return t!==void 0&&r.set(`after`,t),n&&r.set(`includeSandboxFailures`,`true`),`${e}?${r.toString()}`}function KR(e,t,n,r){return UR(e,t,n,r).pipe(Nv(e=>e.kind===`frame`?v(e.value):y(IR(`Session subscription received a snapshot`))))}function qR(e,t,n,r,i,a){return b(function*(){yield*n;let o=yield*u_(!1),s=yield*ha();yield*S(()=>t.add(s)),yield*ya(s,S(()=>{t.delete(s)}));let c=yield*Dn(UR(e,r,i,a).pipe(Vv(mv()),_a(s)));if(na(c))return yield*Sa(s,c),yield*Ut(c.cause);let[l,u]=c.value;if(nt(l)||l.value.kind!==`snapshot`){let e=IR(`Session stream did not begin with a snapshot`);return yield*Sa(s,Qi(e)),yield*y(e)}let d=u.pipe(Nv(e=>e.kind===`frame`?v(e.value):v({kind:`reset`,reason:`history_unavailable`,cursor:e.value.cursor,baseline:e.value})),Gv(o.await),Hv(e=>o.isOpen()&&Bi(e)?Cv:Ev(e)));return Object.freeze({snapshot:l.value.value,changes:d,close:o.open.pipe(g(Sa(s,ea)))})})}function JR(e,t,n){return Jr({try:async t=>{let n=await e(t);return{response:n,body:await n.text()}},catch:()=>FR(`${n} request failed`)}).pipe(C(({response:e,body:r})=>e.ok?ai({try:()=>t(r),catch:()=>IR(`${n} response is invalid`)}):ai({try:()=>xR(r),catch:()=>IR(`${n} error response is invalid`)}).pipe(C(y))))}function YR(t){let n=t.baseUrl.replace(/\/+$/u,``),r=t.fetch??globalThis.fetch,i=new Set,a=new Set,o=l_(!1),s=!1,c=Cn(()=>s?y(LR()):ft),l=(t,n,r)=>e(JR(t,n,r),o.await.pipe(g(y(LR())))),u=(e,t)=>c.pipe(g(l(n=>r(e,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t),signal:n}),fR,`Extension command`)));return Object.freeze({createSession:e=>c.pipe(C(()=>{let t=Jy({requestId:e});return l(e=>r(`${n}/sessions`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({requestId:t}),signal:e}),DR,`Session creation`)})),deleteSession:e=>c.pipe(C(()=>{let t=Ky(e);return l(e=>r(`${n}/sessions/${encodeURIComponent(t)}`,{method:`DELETE`,signal:e}),ER,`Session deletion`)})),listSessions:e=>c.pipe(C(()=>{let t=new URLSearchParams;e!==void 0&&t.set(`after`,qy(e));let i=t.size===0?``:`?${t.toString()}`;return l(e=>r(`${n}/sessions${i}`,{signal:e}),CR,`Session discovery`)})),extensions:Object.freeze({list:c.pipe(g(l(e=>r(`${n}/extensions`,{signal:e}),dR,`Extension list`))),resume:e=>c.pipe(g(l(t=>r(`${n}/extensions/${encodeURIComponent(e)}/resume`,{method:`POST`,signal:t}),uR,`Extension resume`))),call:(e,t,r)=>u(`${n}/extensions/${encodeURIComponent(e)}/commands/${encodeURIComponent(t)}`,r)}),session:e=>{let s=Ky(e),d=WR(n,s),f=`${d}/events`;function p(e){return c.pipe(g(l(t=>r(`${d}/command`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({command:e}),signal:t}),e.type===`prompt`||e.type===`compact`?pR:e.type===`cancel`?mR:e.type===`fork`?gR:()=>void 0,`Command`)))}return Object.freeze({command:p,withdraw:e=>c.pipe(g(l(t=>r(`${d}/withdraw`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({requestId:e}),signal:t}),QL,`Request withdrawal`))),abort:p({type:`abort`}),send:(e,t)=>S(()=>t?.requestId??Zh()).pipe(C(n=>{let r={type:`prompt`,delivery:t?.delivery??`steer`,requestId:n,text:e};return p(t?.images===void 0?r:{...r,images:t.images}).pipe(at(e=>e.requestId===n?e:new W(e.boundary,e.cause,e.message,n)))})),cancel:e=>p({type:`cancel`,...e}),latestPending:c.pipe(g(l(e=>r(`${d}/pending/latest`,{signal:e}),hR,`Newest pending prompt`))),modelPreference:Object.freeze({read:c.pipe(g(l(e=>r(`${d}/model-preference`,{signal:e}),oy,`Model preference read`))),set:e=>c.pipe(g(l(t=>r(`${d}/model-preference`,{signal:t,method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)}),()=>void 0,`Model preference set`)))}),extension:e=>Object.freeze({call:(t,n)=>u(`${d}/extensions/${encodeURIComponent(e)}/commands/${encodeURIComponent(t)}`,n)}),read:e=>c.pipe(g(ai({try:()=>Yy(e),catch:e=>e instanceof W?e:IR(`Read options are invalid`)})),C(({limit:e,before:t,includeSandboxFailures:n})=>{let i=new URLSearchParams({limit:String(e)});return t!==void 0&&i.set(`before`,t),n===!0&&i.set(`includeSandboxFailures`,`true`),l(e=>r(`${d}?${i.toString()}`,{signal:e}),yR,`Session read`)})),readSettlement:(e,t=0)=>c.pipe(g(l(n=>r(`${d}/settlement?${new URLSearchParams({commandId:e,timeoutMs:String(t)}).toString()}`,{signal:n}),vR,`Command settlement`))),subscribe:e=>jv(c.pipe(g(ai({try:()=>Xy(e),catch:e=>e instanceof W?e:IR(`Subscribe options are invalid`)})),Se(({after:e,includeSandboxFailures:n})=>KR(GR(f,e,n===!0),o,a,t.eventSource)))),watch:e=>qR(e?.includeSandboxFailures===!0?`${f}?includeSandboxFailures=true`:f,i,c,o,a,t.eventSource)})},close:Cn(()=>s?ft:(s=!0,o.open.pipe(g(Yr([...i],e=>Sa(e,ea),{discard:!0})),g(Yr([...a],e=>HR(e,a),{discard:!0})))))})}function XR(e){return NR(YR(e),e.baseUrl.replace(/\/+$/u,``))}T(uO);function ZR(e,t){if(t===void 0)return{status:`unavailable`};if(t.status===`stopped`)return{status:`stopped`,reason:t.reason};if(t.value===null||e.projection===null)return{status:`running`,value:null};let n=T(e.projection.schema)(t.value);return n._tag===`Success`?{status:`running`,value:n.success}:{status:`stopped`,reason:`Extension projection does not match this client`}}function QR(e,t){let n=e?.messageId===t.messageId?e:null;if(n!==null&&n.revision>=t.revision)return e;let r=n===null?0:n.textOffset+n.text.length,i=n===null?0:n.thinkingOffset+n.thinking.length;return t.text.offset>r||t.thinking.offset>i?e:{messageId:t.messageId,revision:t.revision,text:(n?.text??``)+t.text.append.slice(Math.max(0,r-t.text.offset)),thinking:(n?.thinking??``)+t.thinking.append.slice(Math.max(0,i-t.thinking.offset)),textOffset:n?.textOffset??0,thinkingOffset:n?.thinkingOffset??0,textTruncated:n?.textTruncated??!1,thinkingTruncated:n?.thinkingTruncated??!1}}var $R=j.pipe(R(ah(1)),R(H(128)),R(wm(/^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$/u))),ez=j.pipe(R(ah(1)),R(H(64)),R(wm(/^(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)(?:-[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?(?:\+[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?$/u))),tz=$R.pipe(dm(`ExtensionId`)),nz=j.pipe(R(wm(/^sha256:[0-9a-f]{64}$/u)),dm(`ExtensionRevision`)),rz=j.pipe(R(wm(/^sha256:[0-9a-f]{64}$/u)),dm(`ExtensionFingerprint`)),iz=class extends Ni(`ExtensionHookError`){};function az(e){return Cn(()=>{let t=e();return He(t)?t:Jr({try:()=>Promise.resolve(t),catch:e=>new iz({cause:e})})})}var oz=class extends Error{constructor(){super(`Extension transaction handler must return synchronously`),this.name=`AsyncExtensionTransactionError`}};function sz(e,t){let r=e(t);if(r instanceof Promise||He(r)&&!n(r))throw new oz;return r}export{oI as $,Xi as $a,hh as $i,aE as $n,N as $r,KA as $t,vL as A,Sc as Aa,$m as Ai,WO as An,mg as Ar,Kj as At,_L as B,ma as Ba,th as Bi,DO as Bn,Bh as Br,xj as Bt,uL as C,Ju as Ca,Bp as Ci,Dk as Cn,l_ as Cr,kF as Ct,WI as D,xc as Da,Um as Di,$O as Dn,Fg as Dr,bM as Dt,kL as E,gc as Ea,Mp as Ei,ek as En,o_ as Er,EM as Et,iL as F,ic as Fa,Nm as Fi,UO as Fn,em as Fr,Rj as Ft,RI as G,_a as Ga,nh as Gi,eO as Gn,Jp as Gr,Nj as Gt,ZI as H,Sa as Ha,jm as Hi,gO as Hn,A as Hr,wj as Ht,oL as I,Ps as Ia,Bm as Ii,SO as In,Qp as Ir,Lj as It,NI as J,fa as Ja,rh as Ji,HE as Jn,Xp as Jr,dj as Jt,zI as K,la as Ka,Zm as Ki,KE as Kn,am as Kr,zj as Kt,aL as L,Fs as La,eh as Li,CO as Ln,Sh as Lr,yj as Lt,dL as M,Wu as Ma,yh as Mi,GO as Mn,Gh as Mr,Pj as Mt,fL as N,Uu as Na,gh as Ni,VO as Nn,Kh as Nr,Ij as Nt,JI as O,hc as Oa,ih as Oi,QO as On,Mg as Or,yM as Ot,yL as P,yu as Pa,Am as Pi,KO as Pn,P as Pr,Fj as Pt,EI as Q,ra as Qa,vh as Qi,dE as Qn,j as Qr,ij as Qt,DL as R,Ls as Ra,Ym as Ri,kO as Rn,Mm as Rr,bj as Rt,lL as S,_c as Sa,zp as Si,kk as Sn,jv as Sr,xP as St,nL as T,fc as Ta,bm as Ti,Ok as Tn,s_ as Tr,zF as Tt,XI as U,ba as Ua,Gm as Ui,uO as Un,I as Ur,jj as Ut,bL as V,ya as Va,Xm as Vi,vO as Vn,Vh as Vr,Sj as Vt,VI as W,ha as Wa,Vm as Wi,lO as Wn,Km as Wr,Mj as Wt,wI as X,na as Xa,uh as Xi,hE as Xn,M as Xr,aj as Xt,CI as Y,ia as Ya,Qm as Yi,uE as Yn,L as Yr,QA as Yt,MI as Z,ta as Za,H as Zi,mE as Zn,nm as Zr,XA as Zt,HI as _,Ap as _a,T as _i,DA as _n,ty as _r,RF as _t,rz as a,wm as aa,cm as ai,$A as an,Bi as ao,Hy as ar,mF as at,YI as b,wc as ba,Up as bi,Nk as bn,Av as br,mP as bt,ez as c,z as ca,dm as ci,lj as cn,Ni as co,Jy as cr,AN as ct,XR as d,um as da,Sp as di,nj as dn,Xy as dr,JN as dt,lh as ea,$p as ei,ZA as en,ea as eo,oE as er,GM as et,OR as f,lm as fa,Ip as fi,rj as fn,Zy as fr,MN as ft,QI as g,Lh as ga,Fp as gi,kA as gn,Qv as gr,uF as gt,pR as h,Rh as ha,Pp as hi,EA as hn,$v as hr,UN as ht,tz as i,Wm as ia,Zp as ii,JA as in,Wi as io,uT as ir,OF as it,sL as j,Hu as ja,ch as ji,HO as jn,Zh as jr,Jj as jt,AL as k,pc as ka,dh as ki,ZO as kn,jg as kr,CM as kt,QR as l,k as la,R as li,YA as ln,Ky as lr,SN as lt,PR as m,zh as ma,Np as mi,AA as mn,ay as mr,KN as mt,az as n,_h as na,im as ni,cj as nn,Ri as no,rT as nr,DF as nt,$R as o,km as oa,F as oi,tj as on,Ki as oo,Yy as or,gF as ot,kR as p,ym as pa,Lp as pi,nA as pn,W as pr,yP as pt,LI as q,ca as qa,Hm as qi,yD as qn,bh as qr,mj as qt,sz as r,mh as ra,Oh as ri,qA as rn,Gi as ro,nT as rr,NN as rt,nz as s,Em as sa,Yp as si,oj as sn,Hi as so,Uy as sr,RN as st,oz as t,ah as ta,Eh as ti,uj as tn,zi as to,eE as tr,fP as tt,ZR as u,O as ua,Cp as ui,ej as un,by as ur,qN as ut,UI as v,vm as va,E as vi,Gk as vn,Sv as vr,HP as vt,tL as w,vc as wa,U as wi,xk as wn,a_ as wr,pF as wt,cL as x,bc as xa,mm as xi,Ck as xn,Yv as xr,bP as xt,$I as y,xd as ya,Vp as yi,Pk as yn,Kv as yr,vP as yt,eL as z,Oo as za,B as zi,OO as zn,V as zr,Cj as zt};
|