@linzumi/cli 1.0.148 → 1.0.150
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/impl-res/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { createRequire as __linzumiBundleCreateRequire } from 'node:module';
|
|
2
2
|
const require = __linzumiBundleCreateRequire(import.meta.url);
|
|
3
|
-
var $j=Object.create;var Np=Object.defineProperty;var Mj=Object.getOwnPropertyDescriptor;var jj=Object.getOwnPropertyNames;var zj=Object.getPrototypeOf,Nj=Object.prototype.hasOwnProperty;var ce=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Gp=(e,t)=>{for(var r in t)Np(e,r,{get:t[r],enumerable:!0})},Gj=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of jj(t))!Nj.call(e,i)&&i!==r&&Np(e,i,{get:()=>t[i],enumerable:!(n=Mj(t,i))||n.enumerable});return e};var Tw=(e,t,r)=>(r=e!=null?$j(zj(e)):{},Gj(t||!e||!e.__esModule?Np(r,"default",{value:e,enumerable:!0}):r,e));var Bd=ce(xt=>{"use strict";Object.defineProperty(xt,"__esModule",{value:!0});xt.regexpCode=xt.getEsmExportName=xt.getProperty=xt.safeStringify=xt.stringify=xt.strConcat=xt.addCodeArg=xt.str=xt._=xt.nil=xt._Code=xt.Name=xt.IDENTIFIER=xt._CodeOrName=void 0;var Vd=class{};xt._CodeOrName=Vd;xt.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var qa=class extends Vd{constructor(t){if(super(),!xt.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};xt.Name=qa;var Yn=class extends Vd{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof qa&&(r[n.str]=(r[n.str]||0)+1),r),{})}};xt._Code=Yn;xt.nil=new Yn("");function XA(e,...t){let r=[e[0]],n=0;for(;n<t.length;)Ay(r,t[n]),r.push(e[++n]);return new Yn(r)}xt._=XA;var Ty=new Yn("+");function QA(e,...t){let r=[Hd(e[0])],n=0;for(;n<t.length;)r.push(Ty),Ay(r,t[n]),r.push(Ty,Hd(e[++n]));return rL(r),new Yn(r)}xt.str=QA;function Ay(e,t){t instanceof Yn?e.push(...t._items):t instanceof qa?e.push(t):e.push(oL(t))}xt.addCodeArg=Ay;function rL(e){let t=1;for(;t<e.length-1;){if(e[t]===Ty){let r=nL(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function nL(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof qa||e[e.length-1]!=='"'?void 0:typeof t!="string"?`${e.slice(0,-1)}${t}"`:t[0]==='"'?e.slice(0,-1)+t.slice(1):void 0;if(typeof t=="string"&&t[0]==='"'&&!(e instanceof qa))return`"${e}${t.slice(1)}`}function iL(e,t){return t.emptyStr()?e:e.emptyStr()?t:QA`${e}${t}`}xt.strConcat=iL;function oL(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Hd(Array.isArray(e)?e.join(","):e)}function aL(e){return new Yn(Hd(e))}xt.stringify=aL;function Hd(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}xt.safeStringify=Hd;function sL(e){return typeof e=="string"&&xt.IDENTIFIER.test(e)?new Yn(`.${e}`):XA`[${e}]`}xt.getProperty=sL;function lL(e){if(typeof e=="string"&&xt.IDENTIFIER.test(e))return new Yn(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}xt.getEsmExportName=lL;function dL(e){return new Yn(e.toString())}xt.regexpCode=dL});var Ey=ce(Tn=>{"use strict";Object.defineProperty(Tn,"__esModule",{value:!0});Tn.ValueScope=Tn.ValueScopeName=Tn.Scope=Tn.varKinds=Tn.UsedValueState=void 0;var xn=Bd(),Oy=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},Lf;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Lf||(Tn.UsedValueState=Lf={}));Tn.varKinds={const:new xn.Name("const"),let:new xn.Name("let"),var:new xn.Name("var")};var Uf=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof xn.Name?t:this.name(t)}name(t){return new xn.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Tn.Scope=Uf;var Wf=class extends xn.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,xn._)`.${new xn.Name(r)}[${n}]`}};Tn.ValueScopeName=Wf;var uL=(0,xn._)`\n`,Cy=class extends Uf{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?uL:xn.nil}}get(){return this._scope}name(t){return new Wf(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let i=this.toName(t),{prefix:o}=i,a=(n=r.key)!==null&&n!==void 0?n:r.ref,s=this._values[o];if(s){let u=s.get(a);if(u)return u}else s=this._values[o]=new Map;s.set(a,i);let l=this._scope[o]||(this._scope[o]=[]),d=l.length;return l[d]=r.ref,i.setValue(r,{property:o,itemIndex:d}),i}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,xn._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,i=>{if(i.value===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return i.value.code},r,n)}_reduceValues(t,r,n={},i){let o=xn.nil;for(let a in t){let s=t[a];if(!s)continue;let l=n[a]=n[a]||new Map;s.forEach(d=>{if(l.has(d))return;l.set(d,Lf.Started);let u=r(d);if(u){let c=this.opts.es5?Tn.varKinds.var:Tn.varKinds.const;o=(0,xn._)`${o}${c} ${d} = ${u};${this.opts._n}`}else if(u=i?.(d))o=(0,xn._)`${o}${u}${this.opts._n}`;else throw new Oy(d);l.set(d,Lf.Completed)})}return o}};Tn.ValueScope=Cy});var it=ce(ot=>{"use strict";Object.defineProperty(ot,"__esModule",{value:!0});ot.or=ot.and=ot.not=ot.CodeGen=ot.operators=ot.varKinds=ot.ValueScopeName=ot.ValueScope=ot.Scope=ot.Name=ot.regexpCode=ot.stringify=ot.getProperty=ot.nil=ot.strConcat=ot.str=ot._=void 0;var bt=Bd(),gi=Ey(),zo=Bd();Object.defineProperty(ot,"_",{enumerable:!0,get:function(){return zo._}});Object.defineProperty(ot,"str",{enumerable:!0,get:function(){return zo.str}});Object.defineProperty(ot,"strConcat",{enumerable:!0,get:function(){return zo.strConcat}});Object.defineProperty(ot,"nil",{enumerable:!0,get:function(){return zo.nil}});Object.defineProperty(ot,"getProperty",{enumerable:!0,get:function(){return zo.getProperty}});Object.defineProperty(ot,"stringify",{enumerable:!0,get:function(){return zo.stringify}});Object.defineProperty(ot,"regexpCode",{enumerable:!0,get:function(){return zo.regexpCode}});Object.defineProperty(ot,"Name",{enumerable:!0,get:function(){return zo.Name}});var Bf=Ey();Object.defineProperty(ot,"Scope",{enumerable:!0,get:function(){return Bf.Scope}});Object.defineProperty(ot,"ValueScope",{enumerable:!0,get:function(){return Bf.ValueScope}});Object.defineProperty(ot,"ValueScopeName",{enumerable:!0,get:function(){return Bf.ValueScopeName}});Object.defineProperty(ot,"varKinds",{enumerable:!0,get:function(){return Bf.varKinds}});ot.operators={GT:new bt._Code(">"),GTE:new bt._Code(">="),LT:new bt._Code("<"),LTE:new bt._Code("<="),EQ:new bt._Code("==="),NEQ:new bt._Code("!=="),NOT:new bt._Code("!"),OR:new bt._Code("||"),AND:new bt._Code("&&"),ADD:new bt._Code("+")};var so=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},Py=class extends so{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?gi.varKinds.var:this.varKind,i=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${i};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=il(this.rhs,t,r)),this}get names(){return this.rhs instanceof bt._CodeOrName?this.rhs.names:{}}},Zf=class extends so{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof bt.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=il(this.rhs,t,r),this}get names(){let t=this.lhs instanceof bt.Name?{}:{...this.lhs.names};return Hf(t,this.rhs)}},Ry=class extends Zf{constructor(t,r,n,i){super(t,n,i),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},Iy=class extends so{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},$y=class extends so{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},My=class extends so{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},jy=class extends so{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=il(this.code,t,r),this}get names(){return this.code instanceof bt._CodeOrName?this.code.names:{}}},Kd=class extends so{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,i=n.length;for(;i--;){let o=n[i];o.optimizeNames(t,r)||(cL(t,o.names),n.splice(i,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>Wa(t,r.names),{})}},lo=class extends Kd{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},zy=class extends Kd{},nl=class extends lo{};nl.kind="else";var La=class e extends lo{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new nl(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(eO(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=il(this.condition,t,r),this}get names(){let t=super.names;return Hf(t,this.condition),this.else&&Wa(t,this.else.names),t}};La.kind="if";var Ua=class extends lo{};Ua.kind="for";var Ny=class extends Ua{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=il(this.iteration,t,r),this}get names(){return Wa(super.names,this.iteration.names)}},Gy=class extends Ua{constructor(t,r,n,i){super(),this.varKind=t,this.name=r,this.from=n,this.to=i}render(t){let r=t.es5?gi.varKinds.var:this.varKind,{name:n,from:i,to:o}=this;return`for(${r} ${n}=${i}; ${n}<${o}; ${n}++)`+super.render(t)}get names(){let t=Hf(super.names,this.from);return Hf(t,this.to)}},Vf=class extends Ua{constructor(t,r,n,i){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=i}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=il(this.iterable,t,r),this}get names(){return Wa(super.names,this.iterable.names)}},Jd=class extends lo{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};Jd.kind="func";var Yd=class extends Kd{render(t){return"return "+super.render(t)}};Yd.kind="return";var Fy=class extends lo{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,i;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(i=this.finally)===null||i===void 0||i.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&Wa(t,this.catch.names),this.finally&&Wa(t,this.finally.names),t}},Xd=class extends lo{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};Xd.kind="catch";var Qd=class extends lo{render(t){return"finally"+super.render(t)}};Qd.kind="finally";var Dy=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
4
|
-
`:""},this._extScope=t,this._scope=new gi.Scope({parent:t}),this._nodes=[new zy]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,i){let o=this._scope.toName(r);return n!==void 0&&i&&(this._constants[o.str]=n),this._leafNode(new Py(t,o,n)),o}const(t,r,n){return this._def(gi.varKinds.const,t,r,n)}let(t,r,n){return this._def(gi.varKinds.let,t,r,n)}var(t,r,n){return this._def(gi.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new Zf(t,r,n))}add(t,r){return this._leafNode(new Ry(t,ot.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==bt.nil&&this._leafNode(new jy(t)),this}object(...t){let r=["{"];for(let[n,i]of t)r.length>1&&r.push(","),r.push(n),(n!==i||this.opts.es5)&&(r.push(":"),(0,bt.addCodeArg)(r,i));return r.push("}"),new bt._Code(r)}if(t,r,n){if(this._blockNode(new La(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new La(t))}else(){return this._elseNode(new nl)}endIf(){return this._endBlockNode(La,nl)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new Ny(t),r)}forRange(t,r,n,i,o=this.opts.es5?gi.varKinds.var:gi.varKinds.let){let a=this._scope.toName(t);return this._for(new Gy(o,a,r,n),()=>i(a))}forOf(t,r,n,i=gi.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let a=r instanceof bt.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,bt._)`${a}.length`,s=>{this.var(o,(0,bt._)`${a}[${s}]`),n(o)})}return this._for(new Vf("of",i,o,r),()=>n(o))}forIn(t,r,n,i=this.opts.es5?gi.varKinds.var:gi.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,bt._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new Vf("in",i,o,r),()=>n(o))}endFor(){return this._endBlockNode(Ua)}label(t){return this._leafNode(new Iy(t))}break(t){return this._leafNode(new $y(t))}return(t){let r=new Yd;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Yd)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let i=new Fy;if(this._blockNode(i),this.code(t),r){let o=this.name("e");this._currNode=i.catch=new Xd(o),r(o)}return n&&(this._currNode=i.finally=new Qd,this.code(n)),this._endBlockNode(Xd,Qd)}throw(t){return this._leafNode(new My(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=bt.nil,n,i){return this._blockNode(new Jd(t,r,n)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(Jd)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof La))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};ot.CodeGen=Dy;function Wa(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Hf(e,t){return t instanceof bt._CodeOrName?Wa(e,t.names):e}function il(e,t,r){if(e instanceof bt.Name)return n(e);if(!i(e))return e;return new bt._Code(e._items.reduce((o,a)=>(a instanceof bt.Name&&(a=n(a)),a instanceof bt._Code?o.push(...a._items):o.push(a),o),[]));function n(o){let a=r[o.str];return a===void 0||t[o.str]!==1?o:(delete t[o.str],a)}function i(o){return o instanceof bt._Code&&o._items.some(a=>a instanceof bt.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function cL(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function eO(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,bt._)`!${qy(e)}`}ot.not=eO;var fL=tO(ot.operators.AND);function mL(...e){return e.reduce(fL)}ot.and=mL;var pL=tO(ot.operators.OR);function hL(...e){return e.reduce(pL)}ot.or=hL;function tO(e){return(t,r)=>t===bt.nil?r:r===bt.nil?t:(0,bt._)`${qy(t)} ${e} ${qy(r)}`}function qy(e){return e instanceof bt.Name?e:(0,bt._)`(${e})`}});var Tt=ce(dt=>{"use strict";Object.defineProperty(dt,"__esModule",{value:!0});dt.checkStrictMode=dt.getErrorPath=dt.Type=dt.useFunc=dt.setEvaluated=dt.evaluatedPropsToName=dt.mergeEvaluated=dt.eachItem=dt.unescapeJsonPointer=dt.escapeJsonPointer=dt.escapeFragment=dt.unescapeFragment=dt.schemaRefOrVal=dt.schemaHasRulesButRef=dt.schemaHasRules=dt.checkUnknownRules=dt.alwaysValidSchema=dt.toHash=void 0;var Lt=it(),_L=Bd();function gL(e){let t={};for(let r of e)t[r]=!0;return t}dt.toHash=gL;function yL(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(iO(e,t),!oO(t,e.self.RULES.all))}dt.alwaysValidSchema=yL;function iO(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let i=n.RULES.keywords;for(let o in t)i[o]||lO(e,`unknown keyword: "${o}"`)}dt.checkUnknownRules=iO;function oO(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}dt.schemaHasRules=oO;function bL(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}dt.schemaHasRulesButRef=bL;function vL({topSchemaRef:e,schemaPath:t},r,n,i){if(!i){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,Lt._)`${r}`}return(0,Lt._)`${e}${t}${(0,Lt.getProperty)(n)}`}dt.schemaRefOrVal=vL;function SL(e){return aO(decodeURIComponent(e))}dt.unescapeFragment=SL;function wL(e){return encodeURIComponent(Uy(e))}dt.escapeFragment=wL;function Uy(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}dt.escapeJsonPointer=Uy;function aO(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}dt.unescapeJsonPointer=aO;function kL(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}dt.eachItem=kL;function rO({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(i,o,a,s)=>{let l=a===void 0?o:a instanceof Lt.Name?(o instanceof Lt.Name?e(i,o,a):t(i,o,a),a):o instanceof Lt.Name?(t(i,a,o),o):r(o,a);return s===Lt.Name&&!(l instanceof Lt.Name)?n(i,l):l}}dt.mergeEvaluated={props:rO({mergeNames:(e,t,r)=>e.if((0,Lt._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,Lt._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,Lt._)`${r} || {}`).code((0,Lt._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,Lt._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,Lt._)`${r} || {}`),Wy(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:sO}),items:rO({mergeNames:(e,t,r)=>e.if((0,Lt._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,Lt._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,Lt._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,Lt._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function sO(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,Lt._)`{}`);return t!==void 0&&Wy(e,r,t),r}dt.evaluatedPropsToName=sO;function Wy(e,t,r){Object.keys(r).forEach(n=>e.assign((0,Lt._)`${t}${(0,Lt.getProperty)(n)}`,!0))}dt.setEvaluated=Wy;var nO={};function xL(e,t){return e.scopeValue("func",{ref:t,code:nO[t.code]||(nO[t.code]=new _L._Code(t.code))})}dt.useFunc=xL;var Ly;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(Ly||(dt.Type=Ly={}));function TL(e,t,r){if(e instanceof Lt.Name){let n=t===Ly.Num;return r?n?(0,Lt._)`"[" + ${e} + "]"`:(0,Lt._)`"['" + ${e} + "']"`:n?(0,Lt._)`"/" + ${e}`:(0,Lt._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,Lt.getProperty)(e).toString():"/"+Uy(e)}dt.getErrorPath=TL;function lO(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}dt.checkStrictMode=lO});var uo=ce(Zy=>{"use strict";Object.defineProperty(Zy,"__esModule",{value:!0});var Yr=it(),AL={data:new Yr.Name("data"),valCxt:new Yr.Name("valCxt"),instancePath:new Yr.Name("instancePath"),parentData:new Yr.Name("parentData"),parentDataProperty:new Yr.Name("parentDataProperty"),rootData:new Yr.Name("rootData"),dynamicAnchors:new Yr.Name("dynamicAnchors"),vErrors:new Yr.Name("vErrors"),errors:new Yr.Name("errors"),this:new Yr.Name("this"),self:new Yr.Name("self"),scope:new Yr.Name("scope"),json:new Yr.Name("json"),jsonPos:new Yr.Name("jsonPos"),jsonLen:new Yr.Name("jsonLen"),jsonPart:new Yr.Name("jsonPart")};Zy.default=AL});var eu=ce(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.extendErrors=Xr.resetErrorsCount=Xr.reportExtraError=Xr.reportError=Xr.keyword$DataError=Xr.keywordError=void 0;var St=it(),Kf=Tt(),ln=uo();Xr.keywordError={message:({keyword:e})=>(0,St.str)`must pass "${e}" keyword validation`};Xr.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,St.str)`"${e}" keyword must be ${t} ($data)`:(0,St.str)`"${e}" keyword is invalid ($data)`};function OL(e,t=Xr.keywordError,r,n){let{it:i}=e,{gen:o,compositeRule:a,allErrors:s}=i,l=cO(e,t,r);n??(a||s)?dO(o,l):uO(i,(0,St._)`[${l}]`)}Xr.reportError=OL;function CL(e,t=Xr.keywordError,r){let{it:n}=e,{gen:i,compositeRule:o,allErrors:a}=n,s=cO(e,t,r);dO(i,s),o||a||uO(n,ln.default.vErrors)}Xr.reportExtraError=CL;function EL(e,t){e.assign(ln.default.errors,t),e.if((0,St._)`${ln.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,St._)`${ln.default.vErrors}.length`,t),()=>e.assign(ln.default.vErrors,null)))}Xr.resetErrorsCount=EL;function PL({gen:e,keyword:t,schemaValue:r,data:n,errsCount:i,it:o}){if(i===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",i,ln.default.errors,s=>{e.const(a,(0,St._)`${ln.default.vErrors}[${s}]`),e.if((0,St._)`${a}.instancePath === undefined`,()=>e.assign((0,St._)`${a}.instancePath`,(0,St.strConcat)(ln.default.instancePath,o.errorPath))),e.assign((0,St._)`${a}.schemaPath`,(0,St.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0,St._)`${a}.schema`,r),e.assign((0,St._)`${a}.data`,n))})}Xr.extendErrors=PL;function dO(e,t){let r=e.const("err",t);e.if((0,St._)`${ln.default.vErrors} === null`,()=>e.assign(ln.default.vErrors,(0,St._)`[${r}]`),(0,St._)`${ln.default.vErrors}.push(${r})`),e.code((0,St._)`${ln.default.errors}++`)}function uO(e,t){let{gen:r,validateName:n,schemaEnv:i}=e;i.$async?r.throw((0,St._)`new ${e.ValidationError}(${t})`):(r.assign((0,St._)`${n}.errors`,t),r.return(!1))}var Za={keyword:new St.Name("keyword"),schemaPath:new St.Name("schemaPath"),params:new St.Name("params"),propertyName:new St.Name("propertyName"),message:new St.Name("message"),schema:new St.Name("schema"),parentSchema:new St.Name("parentSchema")};function cO(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,St._)`{}`:RL(e,t,r)}function RL(e,t,r={}){let{gen:n,it:i}=e,o=[IL(i,r),$L(e,r)];return ML(e,t,o),n.object(...o)}function IL({errorPath:e},{instancePath:t}){let r=t?(0,St.str)`${e}${(0,Kf.getErrorPath)(t,Kf.Type.Str)}`:e;return[ln.default.instancePath,(0,St.strConcat)(ln.default.instancePath,r)]}function $L({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let i=n?t:(0,St.str)`${t}/${e}`;return r&&(i=(0,St.str)`${i}${(0,Kf.getErrorPath)(r,Kf.Type.Str)}`),[Za.schemaPath,i]}function ML(e,{params:t,message:r},n){let{keyword:i,data:o,schemaValue:a,it:s}=e,{opts:l,propertyName:d,topSchemaRef:u,schemaPath:c}=s;n.push([Za.keyword,i],[Za.params,typeof t=="function"?t(e):t||(0,St._)`{}`]),l.messages&&n.push([Za.message,typeof r=="function"?r(e):r]),l.verbose&&n.push([Za.schema,a],[Za.parentSchema,(0,St._)`${u}${c}`],[ln.default.data,o]),d&&n.push([Za.propertyName,d])}});var mO=ce(ol=>{"use strict";Object.defineProperty(ol,"__esModule",{value:!0});ol.boolOrEmptySchema=ol.topBoolOrEmptySchema=void 0;var jL=eu(),zL=it(),NL=uo(),GL={message:"boolean schema is false"};function FL(e){let{gen:t,schema:r,validateName:n}=e;r===!1?fO(e,!1):typeof r=="object"&&r.$async===!0?t.return(NL.default.data):(t.assign((0,zL._)`${n}.errors`,null),t.return(!0))}ol.topBoolOrEmptySchema=FL;function DL(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),fO(e)):r.var(t,!0)}ol.boolOrEmptySchema=DL;function fO(e,t){let{gen:r,data:n}=e,i={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,jL.reportError)(i,GL,void 0,t)}});var Vy=ce(al=>{"use strict";Object.defineProperty(al,"__esModule",{value:!0});al.getRules=al.isJSONType=void 0;var qL=["string","number","integer","boolean","null","object","array"],LL=new Set(qL);function UL(e){return typeof e=="string"&&LL.has(e)}al.isJSONType=UL;function WL(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}al.getRules=WL});var Hy=ce(No=>{"use strict";Object.defineProperty(No,"__esModule",{value:!0});No.shouldUseRule=No.shouldUseGroup=No.schemaHasRulesForType=void 0;function ZL({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&pO(e,n)}No.schemaHasRulesForType=ZL;function pO(e,t){return t.rules.some(r=>hO(e,r))}No.shouldUseGroup=pO;function hO(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}No.shouldUseRule=hO});var tu=ce(Qr=>{"use strict";Object.defineProperty(Qr,"__esModule",{value:!0});Qr.reportTypeError=Qr.checkDataTypes=Qr.checkDataType=Qr.coerceAndCheckDataType=Qr.getJSONTypes=Qr.getSchemaTypes=Qr.DataType=void 0;var VL=Vy(),HL=Hy(),BL=eu(),et=it(),_O=Tt(),sl;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(sl||(Qr.DataType=sl={}));function KL(e){let t=gO(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}Qr.getSchemaTypes=KL;function gO(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(VL.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}Qr.getJSONTypes=gO;function JL(e,t){let{gen:r,data:n,opts:i}=e,o=YL(t,i.coerceTypes),a=t.length>0&&!(o.length===0&&t.length===1&&(0,HL.schemaHasRulesForType)(e,t[0]));if(a){let s=Ky(t,n,i.strictNumbers,sl.Wrong);r.if(s,()=>{o.length?XL(e,t,o):Jy(e)})}return a}Qr.coerceAndCheckDataType=JL;var yO=new Set(["string","number","integer","boolean","null"]);function YL(e,t){return t?e.filter(r=>yO.has(r)||t==="array"&&r==="array"):[]}function XL(e,t,r){let{gen:n,data:i,opts:o}=e,a=n.let("dataType",(0,et._)`typeof ${i}`),s=n.let("coerced",(0,et._)`undefined`);o.coerceTypes==="array"&&n.if((0,et._)`${a} == 'object' && Array.isArray(${i}) && ${i}.length == 1`,()=>n.assign(i,(0,et._)`${i}[0]`).assign(a,(0,et._)`typeof ${i}`).if(Ky(t,i,o.strictNumbers),()=>n.assign(s,i))),n.if((0,et._)`${s} !== undefined`);for(let d of r)(yO.has(d)||d==="array"&&o.coerceTypes==="array")&&l(d);n.else(),Jy(e),n.endIf(),n.if((0,et._)`${s} !== undefined`,()=>{n.assign(i,s),QL(e,s)});function l(d){switch(d){case"string":n.elseIf((0,et._)`${a} == "number" || ${a} == "boolean"`).assign(s,(0,et._)`"" + ${i}`).elseIf((0,et._)`${i} === null`).assign(s,(0,et._)`""`);return;case"number":n.elseIf((0,et._)`${a} == "boolean" || ${i} === null
|
|
3
|
+
var Mj=Object.create;var Np=Object.defineProperty;var jj=Object.getOwnPropertyDescriptor;var zj=Object.getOwnPropertyNames;var Nj=Object.getPrototypeOf,Gj=Object.prototype.hasOwnProperty;var ce=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Gp=(e,t)=>{for(var r in t)Np(e,r,{get:t[r],enumerable:!0})},Fj=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of zj(t))!Gj.call(e,i)&&i!==r&&Np(e,i,{get:()=>t[i],enumerable:!(n=jj(t,i))||n.enumerable});return e};var Tw=(e,t,r)=>(r=e!=null?Mj(Nj(e)):{},Fj(t||!e||!e.__esModule?Np(r,"default",{value:e,enumerable:!0}):r,e));var Bd=ce(xt=>{"use strict";Object.defineProperty(xt,"__esModule",{value:!0});xt.regexpCode=xt.getEsmExportName=xt.getProperty=xt.safeStringify=xt.stringify=xt.strConcat=xt.addCodeArg=xt.str=xt._=xt.nil=xt._Code=xt.Name=xt.IDENTIFIER=xt._CodeOrName=void 0;var Vd=class{};xt._CodeOrName=Vd;xt.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var qa=class extends Vd{constructor(t){if(super(),!xt.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};xt.Name=qa;var Yn=class extends Vd{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof qa&&(r[n.str]=(r[n.str]||0)+1),r),{})}};xt._Code=Yn;xt.nil=new Yn("");function XA(e,...t){let r=[e[0]],n=0;for(;n<t.length;)Ay(r,t[n]),r.push(e[++n]);return new Yn(r)}xt._=XA;var Ty=new Yn("+");function QA(e,...t){let r=[Hd(e[0])],n=0;for(;n<t.length;)r.push(Ty),Ay(r,t[n]),r.push(Ty,Hd(e[++n]));return nL(r),new Yn(r)}xt.str=QA;function Ay(e,t){t instanceof Yn?e.push(...t._items):t instanceof qa?e.push(t):e.push(aL(t))}xt.addCodeArg=Ay;function nL(e){let t=1;for(;t<e.length-1;){if(e[t]===Ty){let r=iL(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function iL(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof qa||e[e.length-1]!=='"'?void 0:typeof t!="string"?`${e.slice(0,-1)}${t}"`:t[0]==='"'?e.slice(0,-1)+t.slice(1):void 0;if(typeof t=="string"&&t[0]==='"'&&!(e instanceof qa))return`"${e}${t.slice(1)}`}function oL(e,t){return t.emptyStr()?e:e.emptyStr()?t:QA`${e}${t}`}xt.strConcat=oL;function aL(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Hd(Array.isArray(e)?e.join(","):e)}function sL(e){return new Yn(Hd(e))}xt.stringify=sL;function Hd(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}xt.safeStringify=Hd;function lL(e){return typeof e=="string"&&xt.IDENTIFIER.test(e)?new Yn(`.${e}`):XA`[${e}]`}xt.getProperty=lL;function dL(e){if(typeof e=="string"&&xt.IDENTIFIER.test(e))return new Yn(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}xt.getEsmExportName=dL;function uL(e){return new Yn(e.toString())}xt.regexpCode=uL});var Ey=ce(Tn=>{"use strict";Object.defineProperty(Tn,"__esModule",{value:!0});Tn.ValueScope=Tn.ValueScopeName=Tn.Scope=Tn.varKinds=Tn.UsedValueState=void 0;var xn=Bd(),Oy=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},Lf;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Lf||(Tn.UsedValueState=Lf={}));Tn.varKinds={const:new xn.Name("const"),let:new xn.Name("let"),var:new xn.Name("var")};var Uf=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof xn.Name?t:this.name(t)}name(t){return new xn.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Tn.Scope=Uf;var Wf=class extends xn.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,xn._)`.${new xn.Name(r)}[${n}]`}};Tn.ValueScopeName=Wf;var cL=(0,xn._)`\n`,Cy=class extends Uf{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?cL:xn.nil}}get(){return this._scope}name(t){return new Wf(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let i=this.toName(t),{prefix:o}=i,a=(n=r.key)!==null&&n!==void 0?n:r.ref,s=this._values[o];if(s){let u=s.get(a);if(u)return u}else s=this._values[o]=new Map;s.set(a,i);let l=this._scope[o]||(this._scope[o]=[]),d=l.length;return l[d]=r.ref,i.setValue(r,{property:o,itemIndex:d}),i}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,xn._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,i=>{if(i.value===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return i.value.code},r,n)}_reduceValues(t,r,n={},i){let o=xn.nil;for(let a in t){let s=t[a];if(!s)continue;let l=n[a]=n[a]||new Map;s.forEach(d=>{if(l.has(d))return;l.set(d,Lf.Started);let u=r(d);if(u){let c=this.opts.es5?Tn.varKinds.var:Tn.varKinds.const;o=(0,xn._)`${o}${c} ${d} = ${u};${this.opts._n}`}else if(u=i?.(d))o=(0,xn._)`${o}${u}${this.opts._n}`;else throw new Oy(d);l.set(d,Lf.Completed)})}return o}};Tn.ValueScope=Cy});var it=ce(at=>{"use strict";Object.defineProperty(at,"__esModule",{value:!0});at.or=at.and=at.not=at.CodeGen=at.operators=at.varKinds=at.ValueScopeName=at.ValueScope=at.Scope=at.Name=at.regexpCode=at.stringify=at.getProperty=at.nil=at.strConcat=at.str=at._=void 0;var bt=Bd(),gi=Ey(),zo=Bd();Object.defineProperty(at,"_",{enumerable:!0,get:function(){return zo._}});Object.defineProperty(at,"str",{enumerable:!0,get:function(){return zo.str}});Object.defineProperty(at,"strConcat",{enumerable:!0,get:function(){return zo.strConcat}});Object.defineProperty(at,"nil",{enumerable:!0,get:function(){return zo.nil}});Object.defineProperty(at,"getProperty",{enumerable:!0,get:function(){return zo.getProperty}});Object.defineProperty(at,"stringify",{enumerable:!0,get:function(){return zo.stringify}});Object.defineProperty(at,"regexpCode",{enumerable:!0,get:function(){return zo.regexpCode}});Object.defineProperty(at,"Name",{enumerable:!0,get:function(){return zo.Name}});var Bf=Ey();Object.defineProperty(at,"Scope",{enumerable:!0,get:function(){return Bf.Scope}});Object.defineProperty(at,"ValueScope",{enumerable:!0,get:function(){return Bf.ValueScope}});Object.defineProperty(at,"ValueScopeName",{enumerable:!0,get:function(){return Bf.ValueScopeName}});Object.defineProperty(at,"varKinds",{enumerable:!0,get:function(){return Bf.varKinds}});at.operators={GT:new bt._Code(">"),GTE:new bt._Code(">="),LT:new bt._Code("<"),LTE:new bt._Code("<="),EQ:new bt._Code("==="),NEQ:new bt._Code("!=="),NOT:new bt._Code("!"),OR:new bt._Code("||"),AND:new bt._Code("&&"),ADD:new bt._Code("+")};var so=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},Py=class extends so{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?gi.varKinds.var:this.varKind,i=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${i};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=il(this.rhs,t,r)),this}get names(){return this.rhs instanceof bt._CodeOrName?this.rhs.names:{}}},Zf=class extends so{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof bt.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=il(this.rhs,t,r),this}get names(){let t=this.lhs instanceof bt.Name?{}:{...this.lhs.names};return Hf(t,this.rhs)}},Ry=class extends Zf{constructor(t,r,n,i){super(t,n,i),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},Iy=class extends so{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},$y=class extends so{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},My=class extends so{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},jy=class extends so{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=il(this.code,t,r),this}get names(){return this.code instanceof bt._CodeOrName?this.code.names:{}}},Kd=class extends so{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,i=n.length;for(;i--;){let o=n[i];o.optimizeNames(t,r)||(fL(t,o.names),n.splice(i,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>Wa(t,r.names),{})}},lo=class extends Kd{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},zy=class extends Kd{},nl=class extends lo{};nl.kind="else";var La=class e extends lo{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new nl(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(eO(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=il(this.condition,t,r),this}get names(){let t=super.names;return Hf(t,this.condition),this.else&&Wa(t,this.else.names),t}};La.kind="if";var Ua=class extends lo{};Ua.kind="for";var Ny=class extends Ua{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=il(this.iteration,t,r),this}get names(){return Wa(super.names,this.iteration.names)}},Gy=class extends Ua{constructor(t,r,n,i){super(),this.varKind=t,this.name=r,this.from=n,this.to=i}render(t){let r=t.es5?gi.varKinds.var:this.varKind,{name:n,from:i,to:o}=this;return`for(${r} ${n}=${i}; ${n}<${o}; ${n}++)`+super.render(t)}get names(){let t=Hf(super.names,this.from);return Hf(t,this.to)}},Vf=class extends Ua{constructor(t,r,n,i){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=i}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=il(this.iterable,t,r),this}get names(){return Wa(super.names,this.iterable.names)}},Jd=class extends lo{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};Jd.kind="func";var Yd=class extends Kd{render(t){return"return "+super.render(t)}};Yd.kind="return";var Fy=class extends lo{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,i;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(i=this.finally)===null||i===void 0||i.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&Wa(t,this.catch.names),this.finally&&Wa(t,this.finally.names),t}},Xd=class extends lo{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};Xd.kind="catch";var Qd=class extends lo{render(t){return"finally"+super.render(t)}};Qd.kind="finally";var Dy=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
4
|
+
`:""},this._extScope=t,this._scope=new gi.Scope({parent:t}),this._nodes=[new zy]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,i){let o=this._scope.toName(r);return n!==void 0&&i&&(this._constants[o.str]=n),this._leafNode(new Py(t,o,n)),o}const(t,r,n){return this._def(gi.varKinds.const,t,r,n)}let(t,r,n){return this._def(gi.varKinds.let,t,r,n)}var(t,r,n){return this._def(gi.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new Zf(t,r,n))}add(t,r){return this._leafNode(new Ry(t,at.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==bt.nil&&this._leafNode(new jy(t)),this}object(...t){let r=["{"];for(let[n,i]of t)r.length>1&&r.push(","),r.push(n),(n!==i||this.opts.es5)&&(r.push(":"),(0,bt.addCodeArg)(r,i));return r.push("}"),new bt._Code(r)}if(t,r,n){if(this._blockNode(new La(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new La(t))}else(){return this._elseNode(new nl)}endIf(){return this._endBlockNode(La,nl)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new Ny(t),r)}forRange(t,r,n,i,o=this.opts.es5?gi.varKinds.var:gi.varKinds.let){let a=this._scope.toName(t);return this._for(new Gy(o,a,r,n),()=>i(a))}forOf(t,r,n,i=gi.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let a=r instanceof bt.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,bt._)`${a}.length`,s=>{this.var(o,(0,bt._)`${a}[${s}]`),n(o)})}return this._for(new Vf("of",i,o,r),()=>n(o))}forIn(t,r,n,i=this.opts.es5?gi.varKinds.var:gi.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,bt._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new Vf("in",i,o,r),()=>n(o))}endFor(){return this._endBlockNode(Ua)}label(t){return this._leafNode(new Iy(t))}break(t){return this._leafNode(new $y(t))}return(t){let r=new Yd;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Yd)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let i=new Fy;if(this._blockNode(i),this.code(t),r){let o=this.name("e");this._currNode=i.catch=new Xd(o),r(o)}return n&&(this._currNode=i.finally=new Qd,this.code(n)),this._endBlockNode(Xd,Qd)}throw(t){return this._leafNode(new My(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=bt.nil,n,i){return this._blockNode(new Jd(t,r,n)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(Jd)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof La))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};at.CodeGen=Dy;function Wa(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Hf(e,t){return t instanceof bt._CodeOrName?Wa(e,t.names):e}function il(e,t,r){if(e instanceof bt.Name)return n(e);if(!i(e))return e;return new bt._Code(e._items.reduce((o,a)=>(a instanceof bt.Name&&(a=n(a)),a instanceof bt._Code?o.push(...a._items):o.push(a),o),[]));function n(o){let a=r[o.str];return a===void 0||t[o.str]!==1?o:(delete t[o.str],a)}function i(o){return o instanceof bt._Code&&o._items.some(a=>a instanceof bt.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function fL(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function eO(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,bt._)`!${qy(e)}`}at.not=eO;var mL=tO(at.operators.AND);function pL(...e){return e.reduce(mL)}at.and=pL;var hL=tO(at.operators.OR);function _L(...e){return e.reduce(hL)}at.or=_L;function tO(e){return(t,r)=>t===bt.nil?r:r===bt.nil?t:(0,bt._)`${qy(t)} ${e} ${qy(r)}`}function qy(e){return e instanceof bt.Name?e:(0,bt._)`(${e})`}});var Tt=ce(dt=>{"use strict";Object.defineProperty(dt,"__esModule",{value:!0});dt.checkStrictMode=dt.getErrorPath=dt.Type=dt.useFunc=dt.setEvaluated=dt.evaluatedPropsToName=dt.mergeEvaluated=dt.eachItem=dt.unescapeJsonPointer=dt.escapeJsonPointer=dt.escapeFragment=dt.unescapeFragment=dt.schemaRefOrVal=dt.schemaHasRulesButRef=dt.schemaHasRules=dt.checkUnknownRules=dt.alwaysValidSchema=dt.toHash=void 0;var Ut=it(),gL=Bd();function yL(e){let t={};for(let r of e)t[r]=!0;return t}dt.toHash=yL;function bL(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(iO(e,t),!oO(t,e.self.RULES.all))}dt.alwaysValidSchema=bL;function iO(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let i=n.RULES.keywords;for(let o in t)i[o]||lO(e,`unknown keyword: "${o}"`)}dt.checkUnknownRules=iO;function oO(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}dt.schemaHasRules=oO;function vL(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}dt.schemaHasRulesButRef=vL;function SL({topSchemaRef:e,schemaPath:t},r,n,i){if(!i){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,Ut._)`${r}`}return(0,Ut._)`${e}${t}${(0,Ut.getProperty)(n)}`}dt.schemaRefOrVal=SL;function wL(e){return aO(decodeURIComponent(e))}dt.unescapeFragment=wL;function kL(e){return encodeURIComponent(Uy(e))}dt.escapeFragment=kL;function Uy(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}dt.escapeJsonPointer=Uy;function aO(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}dt.unescapeJsonPointer=aO;function xL(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}dt.eachItem=xL;function rO({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(i,o,a,s)=>{let l=a===void 0?o:a instanceof Ut.Name?(o instanceof Ut.Name?e(i,o,a):t(i,o,a),a):o instanceof Ut.Name?(t(i,a,o),o):r(o,a);return s===Ut.Name&&!(l instanceof Ut.Name)?n(i,l):l}}dt.mergeEvaluated={props:rO({mergeNames:(e,t,r)=>e.if((0,Ut._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,Ut._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,Ut._)`${r} || {}`).code((0,Ut._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,Ut._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,Ut._)`${r} || {}`),Wy(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:sO}),items:rO({mergeNames:(e,t,r)=>e.if((0,Ut._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,Ut._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,Ut._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,Ut._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function sO(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,Ut._)`{}`);return t!==void 0&&Wy(e,r,t),r}dt.evaluatedPropsToName=sO;function Wy(e,t,r){Object.keys(r).forEach(n=>e.assign((0,Ut._)`${t}${(0,Ut.getProperty)(n)}`,!0))}dt.setEvaluated=Wy;var nO={};function TL(e,t){return e.scopeValue("func",{ref:t,code:nO[t.code]||(nO[t.code]=new gL._Code(t.code))})}dt.useFunc=TL;var Ly;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(Ly||(dt.Type=Ly={}));function AL(e,t,r){if(e instanceof Ut.Name){let n=t===Ly.Num;return r?n?(0,Ut._)`"[" + ${e} + "]"`:(0,Ut._)`"['" + ${e} + "']"`:n?(0,Ut._)`"/" + ${e}`:(0,Ut._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,Ut.getProperty)(e).toString():"/"+Uy(e)}dt.getErrorPath=AL;function lO(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}dt.checkStrictMode=lO});var uo=ce(Zy=>{"use strict";Object.defineProperty(Zy,"__esModule",{value:!0});var Yr=it(),OL={data:new Yr.Name("data"),valCxt:new Yr.Name("valCxt"),instancePath:new Yr.Name("instancePath"),parentData:new Yr.Name("parentData"),parentDataProperty:new Yr.Name("parentDataProperty"),rootData:new Yr.Name("rootData"),dynamicAnchors:new Yr.Name("dynamicAnchors"),vErrors:new Yr.Name("vErrors"),errors:new Yr.Name("errors"),this:new Yr.Name("this"),self:new Yr.Name("self"),scope:new Yr.Name("scope"),json:new Yr.Name("json"),jsonPos:new Yr.Name("jsonPos"),jsonLen:new Yr.Name("jsonLen"),jsonPart:new Yr.Name("jsonPart")};Zy.default=OL});var eu=ce(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.extendErrors=Xr.resetErrorsCount=Xr.reportExtraError=Xr.reportError=Xr.keyword$DataError=Xr.keywordError=void 0;var St=it(),Kf=Tt(),ln=uo();Xr.keywordError={message:({keyword:e})=>(0,St.str)`must pass "${e}" keyword validation`};Xr.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,St.str)`"${e}" keyword must be ${t} ($data)`:(0,St.str)`"${e}" keyword is invalid ($data)`};function CL(e,t=Xr.keywordError,r,n){let{it:i}=e,{gen:o,compositeRule:a,allErrors:s}=i,l=cO(e,t,r);n??(a||s)?dO(o,l):uO(i,(0,St._)`[${l}]`)}Xr.reportError=CL;function EL(e,t=Xr.keywordError,r){let{it:n}=e,{gen:i,compositeRule:o,allErrors:a}=n,s=cO(e,t,r);dO(i,s),o||a||uO(n,ln.default.vErrors)}Xr.reportExtraError=EL;function PL(e,t){e.assign(ln.default.errors,t),e.if((0,St._)`${ln.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,St._)`${ln.default.vErrors}.length`,t),()=>e.assign(ln.default.vErrors,null)))}Xr.resetErrorsCount=PL;function RL({gen:e,keyword:t,schemaValue:r,data:n,errsCount:i,it:o}){if(i===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",i,ln.default.errors,s=>{e.const(a,(0,St._)`${ln.default.vErrors}[${s}]`),e.if((0,St._)`${a}.instancePath === undefined`,()=>e.assign((0,St._)`${a}.instancePath`,(0,St.strConcat)(ln.default.instancePath,o.errorPath))),e.assign((0,St._)`${a}.schemaPath`,(0,St.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0,St._)`${a}.schema`,r),e.assign((0,St._)`${a}.data`,n))})}Xr.extendErrors=RL;function dO(e,t){let r=e.const("err",t);e.if((0,St._)`${ln.default.vErrors} === null`,()=>e.assign(ln.default.vErrors,(0,St._)`[${r}]`),(0,St._)`${ln.default.vErrors}.push(${r})`),e.code((0,St._)`${ln.default.errors}++`)}function uO(e,t){let{gen:r,validateName:n,schemaEnv:i}=e;i.$async?r.throw((0,St._)`new ${e.ValidationError}(${t})`):(r.assign((0,St._)`${n}.errors`,t),r.return(!1))}var Za={keyword:new St.Name("keyword"),schemaPath:new St.Name("schemaPath"),params:new St.Name("params"),propertyName:new St.Name("propertyName"),message:new St.Name("message"),schema:new St.Name("schema"),parentSchema:new St.Name("parentSchema")};function cO(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,St._)`{}`:IL(e,t,r)}function IL(e,t,r={}){let{gen:n,it:i}=e,o=[$L(i,r),ML(e,r)];return jL(e,t,o),n.object(...o)}function $L({errorPath:e},{instancePath:t}){let r=t?(0,St.str)`${e}${(0,Kf.getErrorPath)(t,Kf.Type.Str)}`:e;return[ln.default.instancePath,(0,St.strConcat)(ln.default.instancePath,r)]}function ML({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let i=n?t:(0,St.str)`${t}/${e}`;return r&&(i=(0,St.str)`${i}${(0,Kf.getErrorPath)(r,Kf.Type.Str)}`),[Za.schemaPath,i]}function jL(e,{params:t,message:r},n){let{keyword:i,data:o,schemaValue:a,it:s}=e,{opts:l,propertyName:d,topSchemaRef:u,schemaPath:c}=s;n.push([Za.keyword,i],[Za.params,typeof t=="function"?t(e):t||(0,St._)`{}`]),l.messages&&n.push([Za.message,typeof r=="function"?r(e):r]),l.verbose&&n.push([Za.schema,a],[Za.parentSchema,(0,St._)`${u}${c}`],[ln.default.data,o]),d&&n.push([Za.propertyName,d])}});var mO=ce(ol=>{"use strict";Object.defineProperty(ol,"__esModule",{value:!0});ol.boolOrEmptySchema=ol.topBoolOrEmptySchema=void 0;var zL=eu(),NL=it(),GL=uo(),FL={message:"boolean schema is false"};function DL(e){let{gen:t,schema:r,validateName:n}=e;r===!1?fO(e,!1):typeof r=="object"&&r.$async===!0?t.return(GL.default.data):(t.assign((0,NL._)`${n}.errors`,null),t.return(!0))}ol.topBoolOrEmptySchema=DL;function qL(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),fO(e)):r.var(t,!0)}ol.boolOrEmptySchema=qL;function fO(e,t){let{gen:r,data:n}=e,i={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,zL.reportError)(i,FL,void 0,t)}});var Vy=ce(al=>{"use strict";Object.defineProperty(al,"__esModule",{value:!0});al.getRules=al.isJSONType=void 0;var LL=["string","number","integer","boolean","null","object","array"],UL=new Set(LL);function WL(e){return typeof e=="string"&&UL.has(e)}al.isJSONType=WL;function ZL(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}al.getRules=ZL});var Hy=ce(No=>{"use strict";Object.defineProperty(No,"__esModule",{value:!0});No.shouldUseRule=No.shouldUseGroup=No.schemaHasRulesForType=void 0;function VL({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&pO(e,n)}No.schemaHasRulesForType=VL;function pO(e,t){return t.rules.some(r=>hO(e,r))}No.shouldUseGroup=pO;function hO(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}No.shouldUseRule=hO});var tu=ce(Qr=>{"use strict";Object.defineProperty(Qr,"__esModule",{value:!0});Qr.reportTypeError=Qr.checkDataTypes=Qr.checkDataType=Qr.coerceAndCheckDataType=Qr.getJSONTypes=Qr.getSchemaTypes=Qr.DataType=void 0;var HL=Vy(),BL=Hy(),KL=eu(),et=it(),_O=Tt(),sl;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(sl||(Qr.DataType=sl={}));function JL(e){let t=gO(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}Qr.getSchemaTypes=JL;function gO(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(HL.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}Qr.getJSONTypes=gO;function YL(e,t){let{gen:r,data:n,opts:i}=e,o=XL(t,i.coerceTypes),a=t.length>0&&!(o.length===0&&t.length===1&&(0,BL.schemaHasRulesForType)(e,t[0]));if(a){let s=Ky(t,n,i.strictNumbers,sl.Wrong);r.if(s,()=>{o.length?QL(e,t,o):Jy(e)})}return a}Qr.coerceAndCheckDataType=YL;var yO=new Set(["string","number","integer","boolean","null"]);function XL(e,t){return t?e.filter(r=>yO.has(r)||t==="array"&&r==="array"):[]}function QL(e,t,r){let{gen:n,data:i,opts:o}=e,a=n.let("dataType",(0,et._)`typeof ${i}`),s=n.let("coerced",(0,et._)`undefined`);o.coerceTypes==="array"&&n.if((0,et._)`${a} == 'object' && Array.isArray(${i}) && ${i}.length == 1`,()=>n.assign(i,(0,et._)`${i}[0]`).assign(a,(0,et._)`typeof ${i}`).if(Ky(t,i,o.strictNumbers),()=>n.assign(s,i))),n.if((0,et._)`${s} !== undefined`);for(let d of r)(yO.has(d)||d==="array"&&o.coerceTypes==="array")&&l(d);n.else(),Jy(e),n.endIf(),n.if((0,et._)`${s} !== undefined`,()=>{n.assign(i,s),eU(e,s)});function l(d){switch(d){case"string":n.elseIf((0,et._)`${a} == "number" || ${a} == "boolean"`).assign(s,(0,et._)`"" + ${i}`).elseIf((0,et._)`${i} === null`).assign(s,(0,et._)`""`);return;case"number":n.elseIf((0,et._)`${a} == "boolean" || ${i} === null
|
|
5
5
|
|| (${a} == "string" && ${i} && ${i} == +${i})`).assign(s,(0,et._)`+${i}`);return;case"integer":n.elseIf((0,et._)`${a} === "boolean" || ${i} === null
|
|
6
6
|
|| (${a} === "string" && ${i} && ${i} == +${i} && !(${i} % 1))`).assign(s,(0,et._)`+${i}`);return;case"boolean":n.elseIf((0,et._)`${i} === "false" || ${i} === 0 || ${i} === null`).assign(s,!1).elseIf((0,et._)`${i} === "true" || ${i} === 1`).assign(s,!0);return;case"null":n.elseIf((0,et._)`${i} === "" || ${i} === 0 || ${i} === false`),n.assign(s,null);return;case"array":n.elseIf((0,et._)`${a} === "string" || ${a} === "number"
|
|
7
|
-
|| ${a} === "boolean" || ${i} === null`).assign(s,(0,et._)`[${i}]`)}}}function QL({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,et._)`${t} !== undefined`,()=>e.assign((0,et._)`${t}[${r}]`,n))}function By(e,t,r,n=sl.Correct){let i=n===sl.Correct?et.operators.EQ:et.operators.NEQ,o;switch(e){case"null":return(0,et._)`${t} ${i} null`;case"array":o=(0,et._)`Array.isArray(${t})`;break;case"object":o=(0,et._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":o=a((0,et._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":o=a();break;default:return(0,et._)`typeof ${t} ${i} ${e}`}return n===sl.Correct?o:(0,et.not)(o);function a(s=et.nil){return(0,et.and)((0,et._)`typeof ${t} == "number"`,s,r?(0,et._)`isFinite(${t})`:et.nil)}}Qr.checkDataType=By;function Ky(e,t,r,n){if(e.length===1)return By(e[0],t,r,n);let i,o=(0,_O.toHash)(e);if(o.array&&o.object){let a=(0,et._)`typeof ${t} != "object"`;i=o.null?a:(0,et._)`!${t} || ${a}`,delete o.null,delete o.array,delete o.object}else i=et.nil;o.number&&delete o.integer;for(let a in o)i=(0,et.and)(i,By(a,t,r,n));return i}Qr.checkDataTypes=Ky;var eU={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,et._)`{type: ${e}}`:(0,et._)`{type: ${t}}`};function Jy(e){let t=tU(e);(0,BL.reportError)(t,eU)}Qr.reportTypeError=Jy;function tU(e){let{gen:t,data:r,schema:n}=e,i=(0,_O.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:i,schemaValue:i,parentSchema:n,params:{},it:e}}});var vO=ce(Jf=>{"use strict";Object.defineProperty(Jf,"__esModule",{value:!0});Jf.assignDefaults=void 0;var ll=it(),rU=Tt();function nU(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let i in r)bO(e,i,r[i].default);else t==="array"&&Array.isArray(n)&&n.forEach((i,o)=>bO(e,o,i.default))}Jf.assignDefaults=nU;function bO(e,t,r){let{gen:n,compositeRule:i,data:o,opts:a}=e;if(r===void 0)return;let s=(0,ll._)`${o}${(0,ll.getProperty)(t)}`;if(i){(0,rU.checkStrictMode)(e,`default is ignored for: ${s}`);return}let l=(0,ll._)`${s} === undefined`;a.useDefaults==="empty"&&(l=(0,ll._)`${l} || ${s} === null || ${s} === ""`),n.if(l,(0,ll._)`${s} = ${(0,ll.stringify)(r)}`)}});var Xn=ce(jt=>{"use strict";Object.defineProperty(jt,"__esModule",{value:!0});jt.validateUnion=jt.validateArray=jt.usePattern=jt.callValidateCode=jt.schemaProperties=jt.allSchemaProperties=jt.noPropertyInData=jt.propertyInData=jt.isOwnProperty=jt.hasPropFunc=jt.reportMissingProp=jt.checkMissingProp=jt.checkReportMissingProp=void 0;var nr=it(),Yy=Tt(),Go=uo(),iU=Tt();function oU(e,t){let{gen:r,data:n,it:i}=e;r.if(Qy(r,n,t,i.opts.ownProperties),()=>{e.setParams({missingProperty:(0,nr._)`${t}`},!0),e.error()})}jt.checkReportMissingProp=oU;function aU({gen:e,data:t,it:{opts:r}},n,i){return(0,nr.or)(...n.map(o=>(0,nr.and)(Qy(e,t,o,r.ownProperties),(0,nr._)`${i} = ${o}`)))}jt.checkMissingProp=aU;function sU(e,t){e.setParams({missingProperty:t},!0),e.error()}jt.reportMissingProp=sU;function SO(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,nr._)`Object.prototype.hasOwnProperty`})}jt.hasPropFunc=SO;function Xy(e,t,r){return(0,nr._)`${SO(e)}.call(${t}, ${r})`}jt.isOwnProperty=Xy;function lU(e,t,r,n){let i=(0,nr._)`${t}${(0,nr.getProperty)(r)} !== undefined`;return n?(0,nr._)`${i} && ${Xy(e,t,r)}`:i}jt.propertyInData=lU;function Qy(e,t,r,n){let i=(0,nr._)`${t}${(0,nr.getProperty)(r)} === undefined`;return n?(0,nr.or)(i,(0,nr.not)(Xy(e,t,r))):i}jt.noPropertyInData=Qy;function wO(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}jt.allSchemaProperties=wO;function dU(e,t){return wO(t).filter(r=>!(0,Yy.alwaysValidSchema)(e,t[r]))}jt.schemaProperties=dU;function uU({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:i,errorPath:o},it:a},s,l,d){let u=d?(0,nr._)`${e}, ${t}, ${n}${i}`:t,c=[[Go.default.instancePath,(0,nr.strConcat)(Go.default.instancePath,o)],[Go.default.parentData,a.parentData],[Go.default.parentDataProperty,a.parentDataProperty],[Go.default.rootData,Go.default.rootData]];a.opts.dynamicRef&&c.push([Go.default.dynamicAnchors,Go.default.dynamicAnchors]);let f=(0,nr._)`${u}, ${r.object(...c)}`;return l!==nr.nil?(0,nr._)`${s}.call(${l}, ${f})`:(0,nr._)`${s}(${f})`}jt.callValidateCode=uU;var cU=(0,nr._)`new RegExp`;function fU({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:i}=t.code,o=i(r,n);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:(0,nr._)`${i.code==="new RegExp"?cU:(0,iU.useFunc)(e,i)}(${r}, ${n})`})}jt.usePattern=fU;function mU(e){let{gen:t,data:r,keyword:n,it:i}=e,o=t.name("valid");if(i.allErrors){let s=t.let("valid",!0);return a(()=>t.assign(s,!1)),s}return t.var(o,!0),a(()=>t.break()),o;function a(s){let l=t.const("len",(0,nr._)`${r}.length`);t.forRange("i",0,l,d=>{e.subschema({keyword:n,dataProp:d,dataPropType:Yy.Type.Num},o),t.if((0,nr.not)(o),s)})}}jt.validateArray=mU;function pU(e){let{gen:t,schema:r,keyword:n,it:i}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(l=>(0,Yy.alwaysValidSchema)(i,l))&&!i.opts.unevaluated)return;let a=t.let("valid",!1),s=t.name("_valid");t.block(()=>r.forEach((l,d)=>{let u=e.subschema({keyword:n,schemaProp:d,compositeRule:!0},s);t.assign(a,(0,nr._)`${a} || ${s}`),e.mergeValidEvaluated(u,s)||t.if((0,nr.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}jt.validateUnion=pU});var TO=ce(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.validateKeywordUsage=zi.validSchemaType=zi.funcKeywordCode=zi.macroKeywordCode=void 0;var dn=it(),Va=uo(),hU=Xn(),_U=eu();function gU(e,t){let{gen:r,keyword:n,schema:i,parentSchema:o,it:a}=e,s=t.macro.call(a.self,i,o,a),l=xO(r,n,s);a.opts.validateSchema!==!1&&a.self.validateSchema(s,!0);let d=r.name("valid");e.subschema({schema:s,schemaPath:dn.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:l,compositeRule:!0},d),e.pass(d,()=>e.error(!0))}zi.macroKeywordCode=gU;function yU(e,t){var r;let{gen:n,keyword:i,schema:o,parentSchema:a,$data:s,it:l}=e;vU(l,t);let d=!s&&t.compile?t.compile.call(l.self,o,a,l):t.validate,u=xO(n,i,d),c=n.let("valid");e.block$data(c,f),e.ok((r=t.valid)!==null&&r!==void 0?r:c);function f(){if(t.errors===!1)h(),t.modifying&&kO(e),_(()=>e.error());else{let g=t.async?p():m();t.modifying&&kO(e),_(()=>bU(e,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,dn._)`await `),b=>n.assign(c,!1).if((0,dn._)`${b} instanceof ${l.ValidationError}`,()=>n.assign(g,(0,dn._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,dn._)`${u}.errors`;return n.assign(g,null),h(dn.nil),g}function h(g=t.async?(0,dn._)`await `:dn.nil){let b=l.opts.passContext?Va.default.this:Va.default.self,y=!("compile"in t&&!s||t.schema===!1);n.assign(c,(0,dn._)`${g}${(0,hU.callValidateCode)(e,u,b,y)}`,t.modifying)}function _(g){var b;n.if((0,dn.not)((b=t.valid)!==null&&b!==void 0?b:c),g)}}zi.funcKeywordCode=yU;function kO(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,dn._)`${n.parentData}[${n.parentDataProperty}]`))}function bU(e,t){let{gen:r}=e;r.if((0,dn._)`Array.isArray(${t})`,()=>{r.assign(Va.default.vErrors,(0,dn._)`${Va.default.vErrors} === null ? ${t} : ${Va.default.vErrors}.concat(${t})`).assign(Va.default.errors,(0,dn._)`${Va.default.vErrors}.length`),(0,_U.extendErrors)(e)},()=>e.error())}function vU({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function xO(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,dn.stringify)(r)})}function SU(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}zi.validSchemaType=SU;function wU({schema:e,opts:t,self:r,errSchemaPath:n},i,o){if(Array.isArray(i.keyword)?!i.keyword.includes(o):i.keyword!==o)throw new Error("ajv implementation error");let a=i.dependencies;if(a?.some(s=>!Object.prototype.hasOwnProperty.call(e,s)))throw new Error(`parent schema must have dependencies of ${o}: ${a.join(",")}`);if(i.validateSchema&&!i.validateSchema(e[o])){let l=`keyword "${o}" value is invalid at path "${n}": `+r.errorsText(i.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(l);else throw new Error(l)}}zi.validateKeywordUsage=wU});var OO=ce(Fo=>{"use strict";Object.defineProperty(Fo,"__esModule",{value:!0});Fo.extendSubschemaMode=Fo.extendSubschemaData=Fo.getSubschema=void 0;var Ni=it(),AO=Tt();function kU(e,{keyword:t,schemaProp:r,schema:n,schemaPath:i,errSchemaPath:o,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let s=e.schema[t];return r===void 0?{schema:s,schemaPath:(0,Ni._)`${e.schemaPath}${(0,Ni.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:s[r],schemaPath:(0,Ni._)`${e.schemaPath}${(0,Ni.getProperty)(t)}${(0,Ni.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,AO.escapeFragment)(r)}`}}if(n!==void 0){if(i===void 0||o===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:i,topSchemaRef:a,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}Fo.getSubschema=kU;function xU(e,t,{dataProp:r,dataPropType:n,data:i,dataTypes:o,propertyName:a}){if(i!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:s}=t;if(r!==void 0){let{errorPath:d,dataPathArr:u,opts:c}=t,f=s.let("data",(0,Ni._)`${t.data}${(0,Ni.getProperty)(r)}`,!0);l(f),e.errorPath=(0,Ni.str)`${d}${(0,AO.getErrorPath)(r,n,c.jsPropertySyntax)}`,e.parentDataProperty=(0,Ni._)`${r}`,e.dataPathArr=[...u,e.parentDataProperty]}if(i!==void 0){let d=i instanceof Ni.Name?i:s.let("data",i,!0);l(d),a!==void 0&&(e.propertyName=a)}o&&(e.dataTypes=o);function l(d){e.data=d,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,d]}}Fo.extendSubschemaData=xU;function TU(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:i,allErrors:o}){n!==void 0&&(e.compositeRule=n),i!==void 0&&(e.createErrors=i),o!==void 0&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=r}Fo.extendSubschemaMode=TU});var eb=ce((Bee,CO)=>{"use strict";CO.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,i,o;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(i=n;i--!==0;)if(!e(t[i],r[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),n=o.length,n!==Object.keys(r).length)return!1;for(i=n;i--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[i]))return!1;for(i=n;i--!==0;){var a=o[i];if(!e(t[a],r[a]))return!1}return!0}return t!==t&&r!==r}});var PO=ce((Kee,EO)=>{"use strict";var Do=EO.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},i=r.post||function(){};Yf(t,n,i,e,"",e)};Do.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Do.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Do.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Do.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Yf(e,t,r,n,i,o,a,s,l,d){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,i,o,a,s,l,d);for(var u in n){var c=n[u];if(Array.isArray(c)){if(u in Do.arrayKeywords)for(var f=0;f<c.length;f++)Yf(e,t,r,c[f],i+"/"+u+"/"+f,o,i,u,n,f)}else if(u in Do.propsKeywords){if(c&&typeof c=="object")for(var p in c)Yf(e,t,r,c[p],i+"/"+u+"/"+AU(p),o,i,u,n,p)}else(u in Do.keywords||e.allKeys&&!(u in Do.skipKeywords))&&Yf(e,t,r,c,i+"/"+u,o,i,u,n)}r(n,i,o,a,s,l,d)}}function AU(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var ru=ce(An=>{"use strict";Object.defineProperty(An,"__esModule",{value:!0});An.getSchemaRefs=An.resolveUrl=An.normalizeId=An._getFullPath=An.getFullPath=An.inlineRef=void 0;var OU=Tt(),CU=eb(),EU=PO(),PU=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function RU(e,t=!0){return typeof e=="boolean"?!0:t===!0?!tb(e):t?RO(e)<=t:!1}An.inlineRef=RU;var IU=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function tb(e){for(let t in e){if(IU.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(tb)||typeof r=="object"&&tb(r))return!0}return!1}function RO(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!PU.has(r)&&(typeof e[r]=="object"&&(0,OU.eachItem)(e[r],n=>t+=RO(n)),t===1/0))return 1/0}return t}function IO(e,t="",r){r!==!1&&(t=dl(t));let n=e.parse(t);return $O(e,n)}An.getFullPath=IO;function $O(e,t){return e.serialize(t).split("#")[0]+"#"}An._getFullPath=$O;var $U=/#\/?$/;function dl(e){return e?e.replace($U,""):""}An.normalizeId=dl;function MU(e,t,r){return r=dl(r),e.resolve(t,r)}An.resolveUrl=MU;var jU=/^[a-z_][-a-z0-9._]*$/i;function zU(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,i=dl(e[r]||t),o={"":i},a=IO(n,i,!1),s={},l=new Set;return EU(e,{allKeys:!0},(c,f,p,m)=>{if(m===void 0)return;let h=a+f,_=o[m];typeof c[r]=="string"&&(_=g.call(this,c[r])),b.call(this,c.$anchor),b.call(this,c.$dynamicAnchor),o[f]=_;function g(y){let v=this.opts.uriResolver.resolve;if(y=dl(_?v(_,y):y),l.has(y))throw u(y);l.add(y);let S=this.refs[y];return typeof S=="string"&&(S=this.refs[S]),typeof S=="object"?d(c,S.schema,y):y!==dl(h)&&(y[0]==="#"?(d(c,s[y],y),s[y]=c):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!jU.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),s;function d(c,f,p){if(f!==void 0&&!CU(c,f))throw u(p)}function u(c){return new Error(`reference "${c}" resolves to more than one schema`)}}An.getSchemaRefs=zU});var ou=ce(qo=>{"use strict";Object.defineProperty(qo,"__esModule",{value:!0});qo.getData=qo.KeywordCxt=qo.validateFunctionCode=void 0;var GO=mO(),MO=tu(),nb=Hy(),Xf=tu(),NU=vO(),iu=TO(),rb=OO(),Te=it(),We=uo(),GU=ru(),co=Tt(),nu=eu();function FU(e){if(qO(e)&&(LO(e),DO(e))){LU(e);return}FO(e,()=>(0,GO.topBoolOrEmptySchema)(e))}qo.validateFunctionCode=FU;function FO({gen:e,validateName:t,schema:r,schemaEnv:n,opts:i},o){i.code.es5?e.func(t,(0,Te._)`${We.default.data}, ${We.default.valCxt}`,n.$async,()=>{e.code((0,Te._)`"use strict"; ${jO(r,i)}`),qU(e,i),e.code(o)}):e.func(t,(0,Te._)`${We.default.data}, ${DU(i)}`,n.$async,()=>e.code(jO(r,i)).code(o))}function DU(e){return(0,Te._)`{${We.default.instancePath}="", ${We.default.parentData}, ${We.default.parentDataProperty}, ${We.default.rootData}=${We.default.data}${e.dynamicRef?(0,Te._)`, ${We.default.dynamicAnchors}={}`:Te.nil}}={}`}function qU(e,t){e.if(We.default.valCxt,()=>{e.var(We.default.instancePath,(0,Te._)`${We.default.valCxt}.${We.default.instancePath}`),e.var(We.default.parentData,(0,Te._)`${We.default.valCxt}.${We.default.parentData}`),e.var(We.default.parentDataProperty,(0,Te._)`${We.default.valCxt}.${We.default.parentDataProperty}`),e.var(We.default.rootData,(0,Te._)`${We.default.valCxt}.${We.default.rootData}`),t.dynamicRef&&e.var(We.default.dynamicAnchors,(0,Te._)`${We.default.valCxt}.${We.default.dynamicAnchors}`)},()=>{e.var(We.default.instancePath,(0,Te._)`""`),e.var(We.default.parentData,(0,Te._)`undefined`),e.var(We.default.parentDataProperty,(0,Te._)`undefined`),e.var(We.default.rootData,We.default.data),t.dynamicRef&&e.var(We.default.dynamicAnchors,(0,Te._)`{}`)})}function LU(e){let{schema:t,opts:r,gen:n}=e;FO(e,()=>{r.$comment&&t.$comment&&WO(e),HU(e),n.let(We.default.vErrors,null),n.let(We.default.errors,0),r.unevaluated&&UU(e),UO(e),JU(e)})}function UU(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,Te._)`${r}.evaluated`),t.if((0,Te._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,Te._)`${e.evaluated}.props`,(0,Te._)`undefined`)),t.if((0,Te._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,Te._)`${e.evaluated}.items`,(0,Te._)`undefined`))}function jO(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,Te._)`/*# sourceURL=${r} */`:Te.nil}function WU(e,t){if(qO(e)&&(LO(e),DO(e))){ZU(e,t);return}(0,GO.boolOrEmptySchema)(e,t)}function DO({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function qO(e){return typeof e.schema!="boolean"}function ZU(e,t){let{schema:r,gen:n,opts:i}=e;i.$comment&&r.$comment&&WO(e),BU(e),KU(e);let o=n.const("_errs",We.default.errors);UO(e,o),n.var(t,(0,Te._)`${o} === ${We.default.errors}`)}function LO(e){(0,co.checkUnknownRules)(e),VU(e)}function UO(e,t){if(e.opts.jtd)return zO(e,[],!1,t);let r=(0,MO.getSchemaTypes)(e.schema),n=(0,MO.coerceAndCheckDataType)(e,r);zO(e,r,!n,t)}function VU(e){let{schema:t,errSchemaPath:r,opts:n,self:i}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,co.schemaHasRulesButRef)(t,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function HU(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,co.checkStrictMode)(e,"default is ignored in the schema root")}function BU(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,GU.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function KU(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function WO({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:i}){let o=r.$comment;if(i.$comment===!0)e.code((0,Te._)`${We.default.self}.logger.log(${o})`);else if(typeof i.$comment=="function"){let a=(0,Te.str)`${n}/$comment`,s=e.scopeValue("root",{ref:t.root});e.code((0,Te._)`${We.default.self}.opts.$comment(${o}, ${a}, ${s}.schema)`)}}function JU(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:i,opts:o}=e;r.$async?t.if((0,Te._)`${We.default.errors} === 0`,()=>t.return(We.default.data),()=>t.throw((0,Te._)`new ${i}(${We.default.vErrors})`)):(t.assign((0,Te._)`${n}.errors`,We.default.vErrors),o.unevaluated&&YU(e),t.return((0,Te._)`${We.default.errors} === 0`))}function YU({gen:e,evaluated:t,props:r,items:n}){r instanceof Te.Name&&e.assign((0,Te._)`${t}.props`,r),n instanceof Te.Name&&e.assign((0,Te._)`${t}.items`,n)}function zO(e,t,r,n){let{gen:i,schema:o,data:a,allErrors:s,opts:l,self:d}=e,{RULES:u}=d;if(o.$ref&&(l.ignoreKeywordsWithRef||!(0,co.schemaHasRulesButRef)(o,u))){i.block(()=>VO(e,"$ref",u.all.$ref.definition));return}l.jtd||XU(e,t),i.block(()=>{for(let f of u.rules)c(f);c(u.post)});function c(f){(0,nb.shouldUseGroup)(o,f)&&(f.type?(i.if((0,Xf.checkDataType)(f.type,a,l.strictNumbers)),NO(e,f),t.length===1&&t[0]===f.type&&r&&(i.else(),(0,Xf.reportTypeError)(e)),i.endIf()):NO(e,f),s||i.if((0,Te._)`${We.default.errors} === ${n||0}`))}}function NO(e,t){let{gen:r,schema:n,opts:{useDefaults:i}}=e;i&&(0,NU.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0,nb.shouldUseRule)(n,o)&&VO(e,o.keyword,o.definition,t.type)})}function XU(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(QU(e,t),e.opts.allowUnionTypes||e2(e,t),t2(e,e.dataTypes))}function QU(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{ZO(e.dataTypes,r)||ib(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),n2(e,t)}}function e2(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&ib(e,"use allowUnionTypes to allow union type keyword")}function t2(e,t){let r=e.self.RULES.all;for(let n in r){let i=r[n];if(typeof i=="object"&&(0,nb.shouldUseRule)(e.schema,i)){let{type:o}=i.definition;o.length&&!o.some(a=>r2(t,a))&&ib(e,`missing type "${o.join(",")}" for keyword "${n}"`)}}}function r2(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function ZO(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function n2(e,t){let r=[];for(let n of e.dataTypes)ZO(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function ib(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,co.checkStrictMode)(e,t,e.opts.strictTypes)}var Qf=class{constructor(t,r,n){if((0,iu.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,co.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",HO(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,iu.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",We.default.errors))}result(t,r,n){this.failResult((0,Te.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,Te.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,Te._)`${r} !== undefined && (${(0,Te.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?nu.reportExtraError:nu.reportError)(this,this.def.error,r)}$dataError(){(0,nu.reportError)(this,this.def.$dataError||nu.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,nu.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=Te.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=Te.nil,r=Te.nil){if(!this.$data)return;let{gen:n,schemaCode:i,schemaType:o,def:a}=this;n.if((0,Te.or)((0,Te._)`${i} === undefined`,r)),t!==Te.nil&&n.assign(t,!0),(o.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==Te.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:i,it:o}=this;return(0,Te.or)(a(),s());function a(){if(n.length){if(!(r instanceof Te.Name))throw new Error("ajv implementation error");let l=Array.isArray(n)?n:[n];return(0,Te._)`${(0,Xf.checkDataTypes)(l,r,o.opts.strictNumbers,Xf.DataType.Wrong)}`}return Te.nil}function s(){if(i.validateSchema){let l=t.scopeValue("validate$data",{ref:i.validateSchema});return(0,Te._)`!${l}(${r})`}return Te.nil}}subschema(t,r){let n=(0,rb.getSubschema)(this.it,t);(0,rb.extendSubschemaData)(n,this.it,t),(0,rb.extendSubschemaMode)(n,t);let i={...this.it,...n,items:void 0,props:void 0};return WU(i,r),i}mergeEvaluated(t,r){let{it:n,gen:i}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=co.mergeEvaluated.props(i,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=co.mergeEvaluated.items(i,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:i}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return i.if(r,()=>this.mergeEvaluated(t,Te.Name)),!0}};qo.KeywordCxt=Qf;function VO(e,t,r,n){let i=new Qf(e,r,t);"code"in r?r.code(i,n):i.$data&&r.validate?(0,iu.funcKeywordCode)(i,r):"macro"in r?(0,iu.macroKeywordCode)(i,r):(r.compile||r.validate)&&(0,iu.funcKeywordCode)(i,r)}var i2=/^\/(?:[^~]|~0|~1)*$/,o2=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function HO(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let i,o;if(e==="")return We.default.rootData;if(e[0]==="/"){if(!i2.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);i=e,o=We.default.rootData}else{let d=o2.exec(e);if(!d)throw new Error(`Invalid JSON-pointer: ${e}`);let u=+d[1];if(i=d[2],i==="#"){if(u>=t)throw new Error(l("property/index",u));return n[t-u]}if(u>t)throw new Error(l("data",u));if(o=r[t-u],!i)return o}let a=o,s=i.split("/");for(let d of s)d&&(o=(0,Te._)`${o}${(0,Te.getProperty)((0,co.unescapeJsonPointer)(d))}`,a=(0,Te._)`${a} && ${o}`);return a;function l(d,u){return`Cannot access ${d} ${u} levels up, current level is ${t}`}}qo.getData=HO});var em=ce(ab=>{"use strict";Object.defineProperty(ab,"__esModule",{value:!0});var ob=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};ab.default=ob});var au=ce(db=>{"use strict";Object.defineProperty(db,"__esModule",{value:!0});var sb=ru(),lb=class extends Error{constructor(t,r,n,i){super(i||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,sb.resolveUrl)(t,r,n),this.missingSchema=(0,sb.normalizeId)((0,sb.getFullPath)(t,this.missingRef))}};db.default=lb});var rm=ce(Qn=>{"use strict";Object.defineProperty(Qn,"__esModule",{value:!0});Qn.resolveSchema=Qn.getCompilingSchema=Qn.resolveRef=Qn.compileSchema=Qn.SchemaEnv=void 0;var yi=it(),a2=em(),Ha=uo(),bi=ru(),BO=Tt(),s2=ou(),ul=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,bi.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};Qn.SchemaEnv=ul;function cb(e){let t=KO.call(this,e);if(t)return t;let r=(0,bi.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:i}=this.opts.code,{ownProperties:o}=this.opts,a=new yi.CodeGen(this.scope,{es5:n,lines:i,ownProperties:o}),s;e.$async&&(s=a.scopeValue("Error",{ref:a2.default,code:(0,yi._)`require("ajv/dist/runtime/validation_error").default`}));let l=a.scopeName("validate");e.validateName=l;let d={gen:a,allErrors:this.opts.allErrors,data:Ha.default.data,parentData:Ha.default.parentData,parentDataProperty:Ha.default.parentDataProperty,dataNames:[Ha.default.data],dataPathArr:[yi.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,yi.stringify)(e.schema)}:{ref:e.schema}),validateName:l,ValidationError:s,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:yi.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,yi._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(e),(0,s2.validateFunctionCode)(d),a.optimize(this.opts.code.optimize);let c=a.toString();u=`${a.scopeRefs(Ha.default.scope)}return ${c}`,this.opts.code.process&&(u=this.opts.code.process(u,e));let p=new Function(`${Ha.default.self}`,`${Ha.default.scope}`,u)(this,this.scope.get());if(this.scope.value(l,{ref:p}),p.errors=null,p.schema=e.schema,p.schemaEnv=e,e.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:l,validateCode:c,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=d;p.evaluated={props:m instanceof yi.Name?void 0:m,items:h instanceof yi.Name?void 0:h,dynamicProps:m instanceof yi.Name,dynamicItems:h instanceof yi.Name},p.source&&(p.source.evaluated=(0,yi.stringify)(p.evaluated))}return e.validate=p,e}catch(c){throw delete e.validate,delete e.validateName,u&&this.logger.error("Error compiling schema, function code:",u),c}finally{this._compilations.delete(e)}}Qn.compileSchema=cb;function l2(e,t,r){var n;r=(0,bi.resolveUrl)(this.opts.uriResolver,t,r);let i=e.refs[r];if(i)return i;let o=c2.call(this,e,r);if(o===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:s}=this.opts;a&&(o=new ul({schema:a,schemaId:s,root:e,baseId:t}))}if(o!==void 0)return e.refs[r]=d2.call(this,o)}Qn.resolveRef=l2;function d2(e){return(0,bi.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:cb.call(this,e)}function KO(e){for(let t of this._compilations)if(u2(t,e))return t}Qn.getCompilingSchema=KO;function u2(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function c2(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||tm.call(this,e,t)}function tm(e,t){let r=this.opts.uriResolver.parse(t),n=(0,bi._getFullPath)(this.opts.uriResolver,r),i=(0,bi.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===i)return ub.call(this,r,e);let o=(0,bi.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let s=tm.call(this,e,a);return typeof s?.schema!="object"?void 0:ub.call(this,r,s)}if(typeof a?.schema=="object"){if(a.validate||cb.call(this,a),o===(0,bi.normalizeId)(t)){let{schema:s}=a,{schemaId:l}=this.opts,d=s[l];return d&&(i=(0,bi.resolveUrl)(this.opts.uriResolver,i,d)),new ul({schema:s,schemaId:l,root:e,baseId:i})}return ub.call(this,r,a)}}Qn.resolveSchema=tm;var f2=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function ub(e,{baseId:t,schema:r,root:n}){var i;if(((i=e.fragment)===null||i===void 0?void 0:i[0])!=="/")return;for(let s of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let l=r[(0,BO.unescapeFragment)(s)];if(l===void 0)return;r=l;let d=typeof r=="object"&&r[this.opts.schemaId];!f2.has(s)&&d&&(t=(0,bi.resolveUrl)(this.opts.uriResolver,t,d))}let o;if(typeof r!="boolean"&&r.$ref&&!(0,BO.schemaHasRulesButRef)(r,this.RULES)){let s=(0,bi.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=tm.call(this,n,s)}let{schemaId:a}=this.opts;if(o=o||new ul({schema:r,schemaId:a,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var JO=ce((tte,m2)=>{m2.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var mb=ce((rte,eC)=>{"use strict";var p2=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),XO=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function fb(e){let t="",r=0,n=0;for(n=0;n<e.length;n++)if(r=e[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var h2=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function YO(e){return e.length=0,!0}function _2(e,t,r){if(e.length){let n=fb(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function g2(e){let t=0,r={error:!1,address:"",zone:""},n=[],i=[],o=!1,a=!1,s=_2;for(let l=0;l<e.length;l++){let d=e[l];if(!(d==="["||d==="]"))if(d===":"){if(o===!0&&(a=!0),!s(i,n,r))break;if(++t>7){r.error=!0;break}l>0&&e[l-1]===":"&&(o=!0),n.push(":");continue}else if(d==="%"){if(!s(i,n,r))break;s=YO}else{i.push(d);continue}}return i.length&&(s===YO?r.zone=i.join(""):a?n.push(i.join("")):n.push(fb(i))),r.address=n.join(""),r}function QO(e){if(y2(e,":")<2)return{host:e,isIPV6:!1};let t=g2(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function y2(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function b2(e){let t=e,r=[],n=-1,i=0;for(;i=t.length;){if(i===1){if(t===".")break;if(t==="/"){r.push("/");break}else{r.push(t);break}}else if(i===2){if(t[0]==="."){if(t[1]===".")break;if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&(t[1]==="."||t[1]==="/")){r.push("/");break}}else if(i===3&&t==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(t[0]==="."){if(t[1]==="."){if(t[2]==="/"){t=t.slice(3);continue}}else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&t[1]==="."){if(t[2]==="/"){t=t.slice(2);continue}else if(t[2]==="."&&t[3]==="/"){t=t.slice(3),r.length!==0&&r.pop();continue}}if((n=t.indexOf("/",1))===-1){r.push(t);break}else r.push(t.slice(0,n)),t=t.slice(n)}return r.join("")}function v2(e,t){let r=t!==!0?escape:unescape;return e.scheme!==void 0&&(e.scheme=r(e.scheme)),e.userinfo!==void 0&&(e.userinfo=r(e.userinfo)),e.host!==void 0&&(e.host=r(e.host)),e.path!==void 0&&(e.path=r(e.path)),e.query!==void 0&&(e.query=r(e.query)),e.fragment!==void 0&&(e.fragment=r(e.fragment)),e}function S2(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!XO(r)){let n=QO(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=e.host}t.push(r)}return(typeof e.port=="number"||typeof e.port=="string")&&(t.push(":"),t.push(String(e.port))),t.length?t.join(""):void 0}eC.exports={nonSimpleDomain:h2,recomposeAuthority:S2,normalizeComponentEncoding:v2,removeDotSegments:b2,isIPv4:XO,isUUID:p2,normalizeIPv6:QO,stringArrayToHexStripped:fb}});var oC=ce((nte,iC)=>{"use strict";var{isUUID:w2}=mb(),k2=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,x2=["http","https","ws","wss","urn","urn:uuid"];function T2(e){return x2.indexOf(e)!==-1}function pb(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function tC(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function rC(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function A2(e){return e.secure=pb(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function O2(e){if((e.port===(pb(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function C2(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(k2);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let i=`${n}:${t.nid||e.nid}`,o=hb(i);e.path=void 0,o&&(e=o.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function E2(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),i=`${r}:${t.nid||n}`,o=hb(i);o&&(e=o.serialize(e,t));let a=e,s=e.nss;return a.path=`${n||t.nid}:${s}`,t.skipEscape=!0,a}function P2(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!w2(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function R2(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var nC={scheme:"http",domainHost:!0,parse:tC,serialize:rC},I2={scheme:"https",domainHost:nC.domainHost,parse:tC,serialize:rC},nm={scheme:"ws",domainHost:!0,parse:A2,serialize:O2},$2={scheme:"wss",domainHost:nm.domainHost,parse:nm.parse,serialize:nm.serialize},M2={scheme:"urn",parse:C2,serialize:E2,skipNormalize:!0},j2={scheme:"urn:uuid",parse:P2,serialize:R2,skipNormalize:!0},im={http:nC,https:I2,ws:nm,wss:$2,urn:M2,"urn:uuid":j2};Object.setPrototypeOf(im,null);function hb(e){return e&&(im[e]||im[e.toLowerCase()])||void 0}iC.exports={wsIsSecure:pb,SCHEMES:im,isValidSchemeName:T2,getSchemeHandler:hb}});var lC=ce((ite,am)=>{"use strict";var{normalizeIPv6:z2,removeDotSegments:su,recomposeAuthority:N2,normalizeComponentEncoding:om,isIPv4:G2,nonSimpleDomain:F2}=mb(),{SCHEMES:D2,getSchemeHandler:aC}=oC();function q2(e,t){return typeof e=="string"?e=Gi(fo(e,t),t):typeof e=="object"&&(e=fo(Gi(e,t),t)),e}function L2(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},i=sC(fo(e,n),fo(t,n),n,!0);return n.skipEscape=!0,Gi(i,n)}function sC(e,t,r,n){let i={};return n||(e=fo(Gi(e,r),r),t=fo(Gi(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(i.scheme=t.scheme,i.userinfo=t.userinfo,i.host=t.host,i.port=t.port,i.path=su(t.path||""),i.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(i.userinfo=t.userinfo,i.host=t.host,i.port=t.port,i.path=su(t.path||""),i.query=t.query):(t.path?(t.path[0]==="/"?i.path=su(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?i.path="/"+t.path:e.path?i.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:i.path=t.path,i.path=su(i.path)),i.query=t.query):(i.path=e.path,t.query!==void 0?i.query=t.query:i.query=e.query),i.userinfo=e.userinfo,i.host=e.host,i.port=e.port),i.scheme=e.scheme),i.fragment=t.fragment,i}function U2(e,t,r){return typeof e=="string"?(e=unescape(e),e=Gi(om(fo(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Gi(om(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=Gi(om(fo(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Gi(om(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function Gi(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),i=[],o=aC(n.scheme||r.scheme);o&&o.serialize&&o.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&i.push(r.scheme,":");let a=N2(r);if(a!==void 0&&(n.reference!=="suffix"&&i.push("//"),i.push(a),r.path&&r.path[0]!=="/"&&i.push("/")),r.path!==void 0){let s=r.path;!n.absolutePath&&(!o||!o.absolutePath)&&(s=su(s)),a===void 0&&s[0]==="/"&&s[1]==="/"&&(s="/%2F"+s.slice(2)),i.push(s)}return r.query!==void 0&&i.push("?",r.query),r.fragment!==void 0&&i.push("#",r.fragment),i.join("")}var W2=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function fo(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},i=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let o=e.match(W2);if(o){if(n.scheme=o[1],n.userinfo=o[3],n.host=o[4],n.port=parseInt(o[5],10),n.path=o[6]||"",n.query=o[7],n.fragment=o[8],isNaN(n.port)&&(n.port=o[5]),n.host)if(G2(n.host)===!1){let l=z2(n.host);n.host=l.host.toLowerCase(),i=l.isIPV6}else i=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=aC(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&i===!1&&F2(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(s){n.error=n.error||"Host's domain name can not be converted to ASCII: "+s}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var _b={SCHEMES:D2,normalize:q2,resolve:L2,resolveComponent:sC,equal:U2,serialize:Gi,parse:fo};am.exports=_b;am.exports.default=_b;am.exports.fastUri=_b});var uC=ce(gb=>{"use strict";Object.defineProperty(gb,"__esModule",{value:!0});var dC=lC();dC.code='require("ajv/dist/runtime/uri").default';gb.default=dC});var yC=ce(Wr=>{"use strict";Object.defineProperty(Wr,"__esModule",{value:!0});Wr.CodeGen=Wr.Name=Wr.nil=Wr.stringify=Wr.str=Wr._=Wr.KeywordCxt=void 0;var Z2=ou();Object.defineProperty(Wr,"KeywordCxt",{enumerable:!0,get:function(){return Z2.KeywordCxt}});var cl=it();Object.defineProperty(Wr,"_",{enumerable:!0,get:function(){return cl._}});Object.defineProperty(Wr,"str",{enumerable:!0,get:function(){return cl.str}});Object.defineProperty(Wr,"stringify",{enumerable:!0,get:function(){return cl.stringify}});Object.defineProperty(Wr,"nil",{enumerable:!0,get:function(){return cl.nil}});Object.defineProperty(Wr,"Name",{enumerable:!0,get:function(){return cl.Name}});Object.defineProperty(Wr,"CodeGen",{enumerable:!0,get:function(){return cl.CodeGen}});var V2=em(),hC=au(),H2=Vy(),lu=rm(),B2=it(),du=ru(),sm=tu(),bb=Tt(),cC=JO(),K2=uC(),_C=(e,t)=>new RegExp(e,t);_C.code="new RegExp";var J2=["removeAdditional","useDefaults","coerceTypes"],Y2=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),X2={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},Q2={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},fC=200;function eW(e){var t,r,n,i,o,a,s,l,d,u,c,f,p,m,h,_,g,b,y,v,S,A,R,W,L;let ae=e.strict,U=(t=e.code)===null||t===void 0?void 0:t.optimize,B=U===!0||U===void 0?1:U||0,oe=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:_C,Z=(i=e.uriResolver)!==null&&i!==void 0?i:K2.default;return{strictSchema:(a=(o=e.strictSchema)!==null&&o!==void 0?o:ae)!==null&&a!==void 0?a:!0,strictNumbers:(l=(s=e.strictNumbers)!==null&&s!==void 0?s:ae)!==null&&l!==void 0?l:!0,strictTypes:(u=(d=e.strictTypes)!==null&&d!==void 0?d:ae)!==null&&u!==void 0?u:"log",strictTuples:(f=(c=e.strictTuples)!==null&&c!==void 0?c:ae)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=e.strictRequired)!==null&&p!==void 0?p:ae)!==null&&m!==void 0?m:!1,code:e.code?{...e.code,optimize:B,regExp:oe}:{optimize:B,regExp:oe},loopRequired:(h=e.loopRequired)!==null&&h!==void 0?h:fC,loopEnum:(_=e.loopEnum)!==null&&_!==void 0?_:fC,meta:(g=e.meta)!==null&&g!==void 0?g:!0,messages:(b=e.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=e.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(v=e.schemaId)!==null&&v!==void 0?v:"$id",addUsedSchema:(S=e.addUsedSchema)!==null&&S!==void 0?S:!0,validateSchema:(A=e.validateSchema)!==null&&A!==void 0?A:!0,validateFormats:(R=e.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(W=e.unicodeRegExp)!==null&&W!==void 0?W:!0,int32range:(L=e.int32range)!==null&&L!==void 0?L:!0,uriResolver:Z}}var uu=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...eW(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new B2.ValueScope({scope:{},prefixes:Y2,es5:r,lines:n}),this.logger=aW(t.logger);let i=t.validateFormats;t.validateFormats=!1,this.RULES=(0,H2.getRules)(),mC.call(this,X2,t,"NOT SUPPORTED"),mC.call(this,Q2,t,"DEPRECATED","warn"),this._metaOpts=iW.call(this),t.formats&&rW.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&nW.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),tW.call(this),t.validateFormats=i}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,i=cC;n==="id"&&(i={...cC},i.id=i.$id,delete i.$id),r&&t&&this.addMetaSchema(i,i[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let i=n(r);return"$async"in n||(this.errors=n.errors),i}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return i.call(this,t,r);async function i(u,c){await o.call(this,u.$schema);let f=this._addSchema(u,c);return f.validate||a.call(this,f)}async function o(u){u&&!this.getSchema(u)&&await i.call(this,{$ref:u},!0)}async function a(u){try{return this._compileSchemaEnv(u)}catch(c){if(!(c instanceof hC.default))throw c;return s.call(this,c),await l.call(this,c.missingSchema),a.call(this,u)}}function s({missingSchema:u,missingRef:c}){if(this.refs[u])throw new Error(`AnySchema ${u} is loaded but ${c} cannot be resolved`)}async function l(u){let c=await d.call(this,u);this.refs[u]||await o.call(this,c.$schema),this.refs[u]||this.addSchema(c,u,r)}async function d(u){let c=this._loading[u];if(c)return c;try{return await(this._loading[u]=n(u))}finally{delete this._loading[u]}}}addSchema(t,r,n,i=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,i);return this}let o;if(typeof t=="object"){let{schemaId:a}=this.opts;if(o=t[a],o!==void 0&&typeof o!="string")throw new Error(`schema ${a} must be string`)}return r=(0,du.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,i,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let i=this.validate(n,t);if(!i&&r){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return i}getSchema(t){let r;for(;typeof(r=pC.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,i=new lu.SchemaEnv({schema:{},schemaId:n});if(r=lu.resolveSchema.call(this,i,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=pC.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,du.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(lW.call(this,n,r),!r)return(0,bb.eachItem)(n,o=>yb.call(this,o)),this;uW.call(this,r);let i={...r,type:(0,sm.getJSONTypes)(r.type),schemaType:(0,sm.getJSONTypes)(r.schemaType)};return(0,bb.eachItem)(n,i.type.length===0?o=>yb.call(this,o,i):o=>i.type.forEach(a=>yb.call(this,o,i,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let i=n.rules.findIndex(o=>o.keyword===t);i>=0&&n.rules.splice(i,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(i=>`${n}${i.instancePath} ${i.message}`).reduce((i,o)=>i+r+o)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let i of r){let o=i.split("/").slice(1),a=t;for(let s of o)a=a[s];for(let s in n){let l=n[s];if(typeof l!="object")continue;let{$data:d}=l.definition,u=a[s];d&&u&&(a[s]=gC(u))}}return t}_removeAllSchemas(t,r){for(let n in t){let i=t[n];(!r||r.test(n))&&(typeof i=="string"?delete t[n]:i&&!i.meta&&(this._cache.delete(i.schema),delete t[n]))}}_addSchema(t,r,n,i=this.opts.validateSchema,o=this.opts.addUsedSchema){let a,{schemaId:s}=this.opts;if(typeof t=="object")a=t[s];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let l=this._cache.get(t);if(l!==void 0)return l;n=(0,du.normalizeId)(a||n);let d=du.getSchemaRefs.call(this,t,n);return l=new lu.SchemaEnv({schema:t,schemaId:s,meta:r,baseId:n,localRefs:d}),this._cache.set(l.schema,l),o&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=l),i&&this.validateSchema(t,!0),l}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):lu.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{lu.compileSchema.call(this,t)}finally{this.opts=r}}};uu.ValidationError=V2.default;uu.MissingRefError=hC.default;Wr.default=uu;function mC(e,t,r,n="error"){for(let i in e){let o=i;o in t&&this.logger[n](`${r}: option ${i}. ${e[o]}`)}}function pC(e){return e=(0,du.normalizeId)(e),this.schemas[e]||this.refs[e]}function tW(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function rW(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function nW(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function iW(){let e={...this.opts};for(let t of J2)delete e[t];return e}var oW={log(){},warn(){},error(){}};function aW(e){if(e===!1)return oW;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var sW=/^[a-z_$][a-z0-9_$:-]*$/i;function lW(e,t){let{RULES:r}=this;if((0,bb.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!sW.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function yb(e,t,r){var n;let i=t?.post;if(r&&i)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,a=i?o.post:o.rules.find(({type:l})=>l===r);if(a||(a={type:r,rules:[]},o.rules.push(a)),o.keywords[e]=!0,!t)return;let s={keyword:e,definition:{...t,type:(0,sm.getJSONTypes)(t.type),schemaType:(0,sm.getJSONTypes)(t.schemaType)}};t.before?dW.call(this,a,s,t.before):a.rules.push(s),o.all[e]=s,(n=t.implements)===null||n===void 0||n.forEach(l=>this.addKeyword(l))}function dW(e,t,r){let n=e.rules.findIndex(i=>i.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function uW(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=gC(t)),e.validateSchema=this.compile(t,!0))}var cW={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function gC(e){return{anyOf:[e,cW]}}});var bC=ce(vb=>{"use strict";Object.defineProperty(vb,"__esModule",{value:!0});var fW={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};vb.default=fW});var kC=ce(Ba=>{"use strict";Object.defineProperty(Ba,"__esModule",{value:!0});Ba.callRef=Ba.getValidate=void 0;var mW=au(),vC=Xn(),On=it(),fl=uo(),SC=rm(),lm=Tt(),pW={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:i,schemaEnv:o,validateName:a,opts:s,self:l}=n,{root:d}=o;if((r==="#"||r==="#/")&&i===d.baseId)return c();let u=SC.resolveRef.call(l,d,i,r);if(u===void 0)throw new mW.default(n.opts.uriResolver,i,r);if(u instanceof SC.SchemaEnv)return f(u);return p(u);function c(){if(o===d)return dm(e,a,o,o.$async);let m=t.scopeValue("root",{ref:d});return dm(e,(0,On._)`${m}.validate`,d,d.$async)}function f(m){let h=wC(e,m);dm(e,h,m,m.$async)}function p(m){let h=t.scopeValue("schema",s.code.source===!0?{ref:m,code:(0,On.stringify)(m)}:{ref:m}),_=t.name("valid"),g=e.subschema({schema:m,dataTypes:[],schemaPath:On.nil,topSchemaRef:h,errSchemaPath:r},_);e.mergeEvaluated(g),e.ok(_)}}};function wC(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,On._)`${r.scopeValue("wrapper",{ref:t})}.validate`}Ba.getValidate=wC;function dm(e,t,r,n){let{gen:i,it:o}=e,{allErrors:a,schemaEnv:s,opts:l}=o,d=l.passContext?fl.default.this:On.nil;n?u():c();function u(){if(!s.$async)throw new Error("async schema referenced by sync schema");let m=i.let("valid");i.try(()=>{i.code((0,On._)`await ${(0,vC.callValidateCode)(e,t,d)}`),p(t),a||i.assign(m,!0)},h=>{i.if((0,On._)`!(${h} instanceof ${o.ValidationError})`,()=>i.throw(h)),f(h),a||i.assign(m,!1)}),e.ok(m)}function c(){e.result((0,vC.callValidateCode)(e,t,d),()=>p(t),()=>f(t))}function f(m){let h=(0,On._)`${m}.errors`;i.assign(fl.default.vErrors,(0,On._)`${fl.default.vErrors} === null ? ${h} : ${fl.default.vErrors}.concat(${h})`),i.assign(fl.default.errors,(0,On._)`${fl.default.vErrors}.length`)}function p(m){var h;if(!o.opts.unevaluated)return;let _=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(o.props!==!0)if(_&&!_.dynamicProps)_.props!==void 0&&(o.props=lm.mergeEvaluated.props(i,_.props,o.props));else{let g=i.var("props",(0,On._)`${m}.evaluated.props`);o.props=lm.mergeEvaluated.props(i,g,o.props,On.Name)}if(o.items!==!0)if(_&&!_.dynamicItems)_.items!==void 0&&(o.items=lm.mergeEvaluated.items(i,_.items,o.items));else{let g=i.var("items",(0,On._)`${m}.evaluated.items`);o.items=lm.mergeEvaluated.items(i,g,o.items,On.Name)}}}Ba.callRef=dm;Ba.default=pW});var xC=ce(Sb=>{"use strict";Object.defineProperty(Sb,"__esModule",{value:!0});var hW=bC(),_W=kC(),gW=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",hW.default,_W.default];Sb.default=gW});var TC=ce(wb=>{"use strict";Object.defineProperty(wb,"__esModule",{value:!0});var um=it(),Lo=um.operators,cm={maximum:{okStr:"<=",ok:Lo.LTE,fail:Lo.GT},minimum:{okStr:">=",ok:Lo.GTE,fail:Lo.LT},exclusiveMaximum:{okStr:"<",ok:Lo.LT,fail:Lo.GTE},exclusiveMinimum:{okStr:">",ok:Lo.GT,fail:Lo.LTE}},yW={message:({keyword:e,schemaCode:t})=>(0,um.str)`must be ${cm[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,um._)`{comparison: ${cm[e].okStr}, limit: ${t}}`},bW={keyword:Object.keys(cm),type:"number",schemaType:"number",$data:!0,error:yW,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,um._)`${r} ${cm[t].fail} ${n} || isNaN(${r})`)}};wb.default=bW});var AC=ce(kb=>{"use strict";Object.defineProperty(kb,"__esModule",{value:!0});var cu=it(),vW={message:({schemaCode:e})=>(0,cu.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,cu._)`{multipleOf: ${e}}`},SW={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:vW,code(e){let{gen:t,data:r,schemaCode:n,it:i}=e,o=i.opts.multipleOfPrecision,a=t.let("res"),s=o?(0,cu._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0,cu._)`${a} !== parseInt(${a})`;e.fail$data((0,cu._)`(${n} === 0 || (${a} = ${r}/${n}, ${s}))`)}};kb.default=SW});var CC=ce(xb=>{"use strict";Object.defineProperty(xb,"__esModule",{value:!0});function OC(e){let t=e.length,r=0,n=0,i;for(;n<t;)r++,i=e.charCodeAt(n++),i>=55296&&i<=56319&&n<t&&(i=e.charCodeAt(n),(i&64512)===56320&&n++);return r}xb.default=OC;OC.code='require("ajv/dist/runtime/ucs2length").default'});var EC=ce(Tb=>{"use strict";Object.defineProperty(Tb,"__esModule",{value:!0});var Ka=it(),wW=Tt(),kW=CC(),xW={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,Ka.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,Ka._)`{limit: ${e}}`},TW={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:xW,code(e){let{keyword:t,data:r,schemaCode:n,it:i}=e,o=t==="maxLength"?Ka.operators.GT:Ka.operators.LT,a=i.opts.unicode===!1?(0,Ka._)`${r}.length`:(0,Ka._)`${(0,wW.useFunc)(e.gen,kW.default)}(${r})`;e.fail$data((0,Ka._)`${a} ${o} ${n}`)}};Tb.default=TW});var PC=ce(Ab=>{"use strict";Object.defineProperty(Ab,"__esModule",{value:!0});var AW=Xn(),fm=it(),OW={message:({schemaCode:e})=>(0,fm.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,fm._)`{pattern: ${e}}`},CW={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:OW,code(e){let{data:t,$data:r,schema:n,schemaCode:i,it:o}=e,a=o.opts.unicodeRegExp?"u":"",s=r?(0,fm._)`(new RegExp(${i}, ${a}))`:(0,AW.usePattern)(e,n);e.fail$data((0,fm._)`!${s}.test(${t})`)}};Ab.default=CW});var RC=ce(Ob=>{"use strict";Object.defineProperty(Ob,"__esModule",{value:!0});var fu=it(),EW={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,fu.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,fu._)`{limit: ${e}}`},PW={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:EW,code(e){let{keyword:t,data:r,schemaCode:n}=e,i=t==="maxProperties"?fu.operators.GT:fu.operators.LT;e.fail$data((0,fu._)`Object.keys(${r}).length ${i} ${n}`)}};Ob.default=PW});var IC=ce(Cb=>{"use strict";Object.defineProperty(Cb,"__esModule",{value:!0});var mu=Xn(),pu=it(),RW=Tt(),IW={message:({params:{missingProperty:e}})=>(0,pu.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,pu._)`{missingProperty: ${e}}`},$W={keyword:"required",type:"object",schemaType:"array",$data:!0,error:IW,code(e){let{gen:t,schema:r,schemaCode:n,data:i,$data:o,it:a}=e,{opts:s}=a;if(!o&&r.length===0)return;let l=r.length>=s.loopRequired;if(a.allErrors?d():u(),s.strictRequired){let p=e.parentSchema.properties,{definedProperties:m}=e.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let _=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${_}" (strictRequired)`;(0,RW.checkStrictMode)(a,g,a.opts.strictRequired)}}function d(){if(l||o)e.block$data(pu.nil,c);else for(let p of r)(0,mu.checkReportMissingProp)(e,p)}function u(){let p=t.let("missing");if(l||o){let m=t.let("valid",!0);e.block$data(m,()=>f(p,m)),e.ok(m)}else t.if((0,mu.checkMissingProp)(e,r,p)),(0,mu.reportMissingProp)(e,p),t.else()}function c(){t.forOf("prop",n,p=>{e.setParams({missingProperty:p}),t.if((0,mu.noPropertyInData)(t,i,p,s.ownProperties),()=>e.error())})}function f(p,m){e.setParams({missingProperty:p}),t.forOf(p,n,()=>{t.assign(m,(0,mu.propertyInData)(t,i,p,s.ownProperties)),t.if((0,pu.not)(m),()=>{e.error(),t.break()})},pu.nil)}}};Cb.default=$W});var $C=ce(Eb=>{"use strict";Object.defineProperty(Eb,"__esModule",{value:!0});var hu=it(),MW={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,hu.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,hu._)`{limit: ${e}}`},jW={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:MW,code(e){let{keyword:t,data:r,schemaCode:n}=e,i=t==="maxItems"?hu.operators.GT:hu.operators.LT;e.fail$data((0,hu._)`${r}.length ${i} ${n}`)}};Eb.default=jW});var mm=ce(Pb=>{"use strict";Object.defineProperty(Pb,"__esModule",{value:!0});var MC=eb();MC.code='require("ajv/dist/runtime/equal").default';Pb.default=MC});var jC=ce(Ib=>{"use strict";Object.defineProperty(Ib,"__esModule",{value:!0});var Rb=tu(),Zr=it(),zW=Tt(),NW=mm(),GW={message:({params:{i:e,j:t}})=>(0,Zr.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,Zr._)`{i: ${e}, j: ${t}}`},FW={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:GW,code(e){let{gen:t,data:r,$data:n,schema:i,parentSchema:o,schemaCode:a,it:s}=e;if(!n&&!i)return;let l=t.let("valid"),d=o.items?(0,Rb.getSchemaTypes)(o.items):[];e.block$data(l,u,(0,Zr._)`${a} === false`),e.ok(l);function u(){let m=t.let("i",(0,Zr._)`${r}.length`),h=t.let("j");e.setParams({i:m,j:h}),t.assign(l,!0),t.if((0,Zr._)`${m} > 1`,()=>(c()?f:p)(m,h))}function c(){return d.length>0&&!d.some(m=>m==="object"||m==="array")}function f(m,h){let _=t.name("item"),g=(0,Rb.checkDataTypes)(d,_,s.opts.strictNumbers,Rb.DataType.Wrong),b=t.const("indices",(0,Zr._)`{}`);t.for((0,Zr._)`;${m}--;`,()=>{t.let(_,(0,Zr._)`${r}[${m}]`),t.if(g,(0,Zr._)`continue`),d.length>1&&t.if((0,Zr._)`typeof ${_} == "string"`,(0,Zr._)`${_} += "_"`),t.if((0,Zr._)`typeof ${b}[${_}] == "number"`,()=>{t.assign(h,(0,Zr._)`${b}[${_}]`),e.error(),t.assign(l,!1).break()}).code((0,Zr._)`${b}[${_}] = ${m}`)})}function p(m,h){let _=(0,zW.useFunc)(t,NW.default),g=t.name("outer");t.label(g).for((0,Zr._)`;${m}--;`,()=>t.for((0,Zr._)`${h} = ${m}; ${h}--;`,()=>t.if((0,Zr._)`${_}(${r}[${m}], ${r}[${h}])`,()=>{e.error(),t.assign(l,!1).break(g)})))}}};Ib.default=FW});var zC=ce(Mb=>{"use strict";Object.defineProperty(Mb,"__esModule",{value:!0});var $b=it(),DW=Tt(),qW=mm(),LW={message:"must be equal to constant",params:({schemaCode:e})=>(0,$b._)`{allowedValue: ${e}}`},UW={keyword:"const",$data:!0,error:LW,code(e){let{gen:t,data:r,$data:n,schemaCode:i,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0,$b._)`!${(0,DW.useFunc)(t,qW.default)}(${r}, ${i})`):e.fail((0,$b._)`${o} !== ${r}`)}};Mb.default=UW});var NC=ce(jb=>{"use strict";Object.defineProperty(jb,"__esModule",{value:!0});var _u=it(),WW=Tt(),ZW=mm(),VW={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,_u._)`{allowedValues: ${e}}`},HW={keyword:"enum",schemaType:"array",$data:!0,error:VW,code(e){let{gen:t,data:r,$data:n,schema:i,schemaCode:o,it:a}=e;if(!n&&i.length===0)throw new Error("enum must have non-empty array");let s=i.length>=a.opts.loopEnum,l,d=()=>l??(l=(0,WW.useFunc)(t,ZW.default)),u;if(s||n)u=t.let("valid"),e.block$data(u,c);else{if(!Array.isArray(i))throw new Error("ajv implementation error");let p=t.const("vSchema",o);u=(0,_u.or)(...i.map((m,h)=>f(p,h)))}e.pass(u);function c(){t.assign(u,!1),t.forOf("v",o,p=>t.if((0,_u._)`${d()}(${r}, ${p})`,()=>t.assign(u,!0).break()))}function f(p,m){let h=i[m];return typeof h=="object"&&h!==null?(0,_u._)`${d()}(${r}, ${p}[${m}])`:(0,_u._)`${r} === ${h}`}}};jb.default=HW});var GC=ce(zb=>{"use strict";Object.defineProperty(zb,"__esModule",{value:!0});var BW=TC(),KW=AC(),JW=EC(),YW=PC(),XW=RC(),QW=IC(),eZ=$C(),tZ=jC(),rZ=zC(),nZ=NC(),iZ=[BW.default,KW.default,JW.default,YW.default,XW.default,QW.default,eZ.default,tZ.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},rZ.default,nZ.default];zb.default=iZ});var Gb=ce(gu=>{"use strict";Object.defineProperty(gu,"__esModule",{value:!0});gu.validateAdditionalItems=void 0;var Ja=it(),Nb=Tt(),oZ={message:({params:{len:e}})=>(0,Ja.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Ja._)`{limit: ${e}}`},aZ={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:oZ,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,Nb.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}FC(e,n)}};function FC(e,t){let{gen:r,schema:n,data:i,keyword:o,it:a}=e;a.items=!0;let s=r.const("len",(0,Ja._)`${i}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,Ja._)`${s} <= ${t.length}`);else if(typeof n=="object"&&!(0,Nb.alwaysValidSchema)(a,n)){let d=r.var("valid",(0,Ja._)`${s} <= ${t.length}`);r.if((0,Ja.not)(d),()=>l(d)),e.ok(d)}function l(d){r.forRange("i",t.length,s,u=>{e.subschema({keyword:o,dataProp:u,dataPropType:Nb.Type.Num},d),a.allErrors||r.if((0,Ja.not)(d),()=>r.break())})}}gu.validateAdditionalItems=FC;gu.default=aZ});var Fb=ce(yu=>{"use strict";Object.defineProperty(yu,"__esModule",{value:!0});yu.validateTuple=void 0;var DC=it(),pm=Tt(),sZ=Xn(),lZ={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return qC(e,"additionalItems",t);r.items=!0,!(0,pm.alwaysValidSchema)(r,t)&&e.ok((0,sZ.validateArray)(e))}};function qC(e,t,r=e.schema){let{gen:n,parentSchema:i,data:o,keyword:a,it:s}=e;u(i),s.opts.unevaluated&&r.length&&s.items!==!0&&(s.items=pm.mergeEvaluated.items(n,r.length,s.items));let l=n.name("valid"),d=n.const("len",(0,DC._)`${o}.length`);r.forEach((c,f)=>{(0,pm.alwaysValidSchema)(s,c)||(n.if((0,DC._)`${d} > ${f}`,()=>e.subschema({keyword:a,schemaProp:f,dataProp:f},l)),e.ok(l))});function u(c){let{opts:f,errSchemaPath:p}=s,m=r.length,h=m===c.minItems&&(m===c.maxItems||c[t]===!1);if(f.strictTuples&&!h){let _=`"${a}" is ${m}-tuple, but minItems or maxItems/${t} are not specified or different at path "${p}"`;(0,pm.checkStrictMode)(s,_,f.strictTuples)}}}yu.validateTuple=qC;yu.default=lZ});var LC=ce(Db=>{"use strict";Object.defineProperty(Db,"__esModule",{value:!0});var dZ=Fb(),uZ={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,dZ.validateTuple)(e,"items")};Db.default=uZ});var WC=ce(qb=>{"use strict";Object.defineProperty(qb,"__esModule",{value:!0});var UC=it(),cZ=Tt(),fZ=Xn(),mZ=Gb(),pZ={message:({params:{len:e}})=>(0,UC.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,UC._)`{limit: ${e}}`},hZ={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:pZ,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:i}=r;n.items=!0,!(0,cZ.alwaysValidSchema)(n,t)&&(i?(0,mZ.validateAdditionalItems)(e,i):e.ok((0,fZ.validateArray)(e)))}};qb.default=hZ});var ZC=ce(Lb=>{"use strict";Object.defineProperty(Lb,"__esModule",{value:!0});var ei=it(),hm=Tt(),_Z={message:({params:{min:e,max:t}})=>t===void 0?(0,ei.str)`must contain at least ${e} valid item(s)`:(0,ei.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,ei._)`{minContains: ${e}}`:(0,ei._)`{minContains: ${e}, maxContains: ${t}}`},gZ={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:_Z,code(e){let{gen:t,schema:r,parentSchema:n,data:i,it:o}=e,a,s,{minContains:l,maxContains:d}=n;o.opts.next?(a=l===void 0?1:l,s=d):a=1;let u=t.const("len",(0,ei._)`${i}.length`);if(e.setParams({min:a,max:s}),s===void 0&&a===0){(0,hm.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(s!==void 0&&a>s){(0,hm.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,hm.alwaysValidSchema)(o,r)){let h=(0,ei._)`${u} >= ${a}`;s!==void 0&&(h=(0,ei._)`${h} && ${u} <= ${s}`),e.pass(h);return}o.items=!0;let c=t.name("valid");s===void 0&&a===1?p(c,()=>t.if(c,()=>t.break())):a===0?(t.let(c,!0),s!==void 0&&t.if((0,ei._)`${i}.length > 0`,f)):(t.let(c,!1),f()),e.result(c,()=>e.reset());function f(){let h=t.name("_valid"),_=t.let("count",0);p(h,()=>t.if(h,()=>m(_)))}function p(h,_){t.forRange("i",0,u,g=>{e.subschema({keyword:"contains",dataProp:g,dataPropType:hm.Type.Num,compositeRule:!0},h),_()})}function m(h){t.code((0,ei._)`${h}++`),s===void 0?t.if((0,ei._)`${h} >= ${a}`,()=>t.assign(c,!0).break()):(t.if((0,ei._)`${h} > ${s}`,()=>t.assign(c,!1).break()),a===1?t.assign(c,!0):t.if((0,ei._)`${h} >= ${a}`,()=>t.assign(c,!0)))}}};Lb.default=gZ});var BC=ce(Fi=>{"use strict";Object.defineProperty(Fi,"__esModule",{value:!0});Fi.validateSchemaDeps=Fi.validatePropertyDeps=Fi.error=void 0;var Ub=it(),yZ=Tt(),bu=Xn();Fi.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,Ub.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,Ub._)`{property: ${e},
|
|
7
|
+
|| ${a} === "boolean" || ${i} === null`).assign(s,(0,et._)`[${i}]`)}}}function eU({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,et._)`${t} !== undefined`,()=>e.assign((0,et._)`${t}[${r}]`,n))}function By(e,t,r,n=sl.Correct){let i=n===sl.Correct?et.operators.EQ:et.operators.NEQ,o;switch(e){case"null":return(0,et._)`${t} ${i} null`;case"array":o=(0,et._)`Array.isArray(${t})`;break;case"object":o=(0,et._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":o=a((0,et._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":o=a();break;default:return(0,et._)`typeof ${t} ${i} ${e}`}return n===sl.Correct?o:(0,et.not)(o);function a(s=et.nil){return(0,et.and)((0,et._)`typeof ${t} == "number"`,s,r?(0,et._)`isFinite(${t})`:et.nil)}}Qr.checkDataType=By;function Ky(e,t,r,n){if(e.length===1)return By(e[0],t,r,n);let i,o=(0,_O.toHash)(e);if(o.array&&o.object){let a=(0,et._)`typeof ${t} != "object"`;i=o.null?a:(0,et._)`!${t} || ${a}`,delete o.null,delete o.array,delete o.object}else i=et.nil;o.number&&delete o.integer;for(let a in o)i=(0,et.and)(i,By(a,t,r,n));return i}Qr.checkDataTypes=Ky;var tU={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,et._)`{type: ${e}}`:(0,et._)`{type: ${t}}`};function Jy(e){let t=rU(e);(0,KL.reportError)(t,tU)}Qr.reportTypeError=Jy;function rU(e){let{gen:t,data:r,schema:n}=e,i=(0,_O.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:i,schemaValue:i,parentSchema:n,params:{},it:e}}});var vO=ce(Jf=>{"use strict";Object.defineProperty(Jf,"__esModule",{value:!0});Jf.assignDefaults=void 0;var ll=it(),nU=Tt();function iU(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let i in r)bO(e,i,r[i].default);else t==="array"&&Array.isArray(n)&&n.forEach((i,o)=>bO(e,o,i.default))}Jf.assignDefaults=iU;function bO(e,t,r){let{gen:n,compositeRule:i,data:o,opts:a}=e;if(r===void 0)return;let s=(0,ll._)`${o}${(0,ll.getProperty)(t)}`;if(i){(0,nU.checkStrictMode)(e,`default is ignored for: ${s}`);return}let l=(0,ll._)`${s} === undefined`;a.useDefaults==="empty"&&(l=(0,ll._)`${l} || ${s} === null || ${s} === ""`),n.if(l,(0,ll._)`${s} = ${(0,ll.stringify)(r)}`)}});var Xn=ce(jt=>{"use strict";Object.defineProperty(jt,"__esModule",{value:!0});jt.validateUnion=jt.validateArray=jt.usePattern=jt.callValidateCode=jt.schemaProperties=jt.allSchemaProperties=jt.noPropertyInData=jt.propertyInData=jt.isOwnProperty=jt.hasPropFunc=jt.reportMissingProp=jt.checkMissingProp=jt.checkReportMissingProp=void 0;var nr=it(),Yy=Tt(),Go=uo(),oU=Tt();function aU(e,t){let{gen:r,data:n,it:i}=e;r.if(Qy(r,n,t,i.opts.ownProperties),()=>{e.setParams({missingProperty:(0,nr._)`${t}`},!0),e.error()})}jt.checkReportMissingProp=aU;function sU({gen:e,data:t,it:{opts:r}},n,i){return(0,nr.or)(...n.map(o=>(0,nr.and)(Qy(e,t,o,r.ownProperties),(0,nr._)`${i} = ${o}`)))}jt.checkMissingProp=sU;function lU(e,t){e.setParams({missingProperty:t},!0),e.error()}jt.reportMissingProp=lU;function SO(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,nr._)`Object.prototype.hasOwnProperty`})}jt.hasPropFunc=SO;function Xy(e,t,r){return(0,nr._)`${SO(e)}.call(${t}, ${r})`}jt.isOwnProperty=Xy;function dU(e,t,r,n){let i=(0,nr._)`${t}${(0,nr.getProperty)(r)} !== undefined`;return n?(0,nr._)`${i} && ${Xy(e,t,r)}`:i}jt.propertyInData=dU;function Qy(e,t,r,n){let i=(0,nr._)`${t}${(0,nr.getProperty)(r)} === undefined`;return n?(0,nr.or)(i,(0,nr.not)(Xy(e,t,r))):i}jt.noPropertyInData=Qy;function wO(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}jt.allSchemaProperties=wO;function uU(e,t){return wO(t).filter(r=>!(0,Yy.alwaysValidSchema)(e,t[r]))}jt.schemaProperties=uU;function cU({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:i,errorPath:o},it:a},s,l,d){let u=d?(0,nr._)`${e}, ${t}, ${n}${i}`:t,c=[[Go.default.instancePath,(0,nr.strConcat)(Go.default.instancePath,o)],[Go.default.parentData,a.parentData],[Go.default.parentDataProperty,a.parentDataProperty],[Go.default.rootData,Go.default.rootData]];a.opts.dynamicRef&&c.push([Go.default.dynamicAnchors,Go.default.dynamicAnchors]);let f=(0,nr._)`${u}, ${r.object(...c)}`;return l!==nr.nil?(0,nr._)`${s}.call(${l}, ${f})`:(0,nr._)`${s}(${f})`}jt.callValidateCode=cU;var fU=(0,nr._)`new RegExp`;function mU({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:i}=t.code,o=i(r,n);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:(0,nr._)`${i.code==="new RegExp"?fU:(0,oU.useFunc)(e,i)}(${r}, ${n})`})}jt.usePattern=mU;function pU(e){let{gen:t,data:r,keyword:n,it:i}=e,o=t.name("valid");if(i.allErrors){let s=t.let("valid",!0);return a(()=>t.assign(s,!1)),s}return t.var(o,!0),a(()=>t.break()),o;function a(s){let l=t.const("len",(0,nr._)`${r}.length`);t.forRange("i",0,l,d=>{e.subschema({keyword:n,dataProp:d,dataPropType:Yy.Type.Num},o),t.if((0,nr.not)(o),s)})}}jt.validateArray=pU;function hU(e){let{gen:t,schema:r,keyword:n,it:i}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(l=>(0,Yy.alwaysValidSchema)(i,l))&&!i.opts.unevaluated)return;let a=t.let("valid",!1),s=t.name("_valid");t.block(()=>r.forEach((l,d)=>{let u=e.subschema({keyword:n,schemaProp:d,compositeRule:!0},s);t.assign(a,(0,nr._)`${a} || ${s}`),e.mergeValidEvaluated(u,s)||t.if((0,nr.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}jt.validateUnion=hU});var TO=ce(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.validateKeywordUsage=zi.validSchemaType=zi.funcKeywordCode=zi.macroKeywordCode=void 0;var dn=it(),Va=uo(),_U=Xn(),gU=eu();function yU(e,t){let{gen:r,keyword:n,schema:i,parentSchema:o,it:a}=e,s=t.macro.call(a.self,i,o,a),l=xO(r,n,s);a.opts.validateSchema!==!1&&a.self.validateSchema(s,!0);let d=r.name("valid");e.subschema({schema:s,schemaPath:dn.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:l,compositeRule:!0},d),e.pass(d,()=>e.error(!0))}zi.macroKeywordCode=yU;function bU(e,t){var r;let{gen:n,keyword:i,schema:o,parentSchema:a,$data:s,it:l}=e;SU(l,t);let d=!s&&t.compile?t.compile.call(l.self,o,a,l):t.validate,u=xO(n,i,d),c=n.let("valid");e.block$data(c,f),e.ok((r=t.valid)!==null&&r!==void 0?r:c);function f(){if(t.errors===!1)h(),t.modifying&&kO(e),_(()=>e.error());else{let g=t.async?p():m();t.modifying&&kO(e),_(()=>vU(e,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,dn._)`await `),b=>n.assign(c,!1).if((0,dn._)`${b} instanceof ${l.ValidationError}`,()=>n.assign(g,(0,dn._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,dn._)`${u}.errors`;return n.assign(g,null),h(dn.nil),g}function h(g=t.async?(0,dn._)`await `:dn.nil){let b=l.opts.passContext?Va.default.this:Va.default.self,y=!("compile"in t&&!s||t.schema===!1);n.assign(c,(0,dn._)`${g}${(0,_U.callValidateCode)(e,u,b,y)}`,t.modifying)}function _(g){var b;n.if((0,dn.not)((b=t.valid)!==null&&b!==void 0?b:c),g)}}zi.funcKeywordCode=bU;function kO(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,dn._)`${n.parentData}[${n.parentDataProperty}]`))}function vU(e,t){let{gen:r}=e;r.if((0,dn._)`Array.isArray(${t})`,()=>{r.assign(Va.default.vErrors,(0,dn._)`${Va.default.vErrors} === null ? ${t} : ${Va.default.vErrors}.concat(${t})`).assign(Va.default.errors,(0,dn._)`${Va.default.vErrors}.length`),(0,gU.extendErrors)(e)},()=>e.error())}function SU({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function xO(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,dn.stringify)(r)})}function wU(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}zi.validSchemaType=wU;function kU({schema:e,opts:t,self:r,errSchemaPath:n},i,o){if(Array.isArray(i.keyword)?!i.keyword.includes(o):i.keyword!==o)throw new Error("ajv implementation error");let a=i.dependencies;if(a?.some(s=>!Object.prototype.hasOwnProperty.call(e,s)))throw new Error(`parent schema must have dependencies of ${o}: ${a.join(",")}`);if(i.validateSchema&&!i.validateSchema(e[o])){let l=`keyword "${o}" value is invalid at path "${n}": `+r.errorsText(i.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(l);else throw new Error(l)}}zi.validateKeywordUsage=kU});var OO=ce(Fo=>{"use strict";Object.defineProperty(Fo,"__esModule",{value:!0});Fo.extendSubschemaMode=Fo.extendSubschemaData=Fo.getSubschema=void 0;var Ni=it(),AO=Tt();function xU(e,{keyword:t,schemaProp:r,schema:n,schemaPath:i,errSchemaPath:o,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let s=e.schema[t];return r===void 0?{schema:s,schemaPath:(0,Ni._)`${e.schemaPath}${(0,Ni.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:s[r],schemaPath:(0,Ni._)`${e.schemaPath}${(0,Ni.getProperty)(t)}${(0,Ni.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,AO.escapeFragment)(r)}`}}if(n!==void 0){if(i===void 0||o===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:i,topSchemaRef:a,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}Fo.getSubschema=xU;function TU(e,t,{dataProp:r,dataPropType:n,data:i,dataTypes:o,propertyName:a}){if(i!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:s}=t;if(r!==void 0){let{errorPath:d,dataPathArr:u,opts:c}=t,f=s.let("data",(0,Ni._)`${t.data}${(0,Ni.getProperty)(r)}`,!0);l(f),e.errorPath=(0,Ni.str)`${d}${(0,AO.getErrorPath)(r,n,c.jsPropertySyntax)}`,e.parentDataProperty=(0,Ni._)`${r}`,e.dataPathArr=[...u,e.parentDataProperty]}if(i!==void 0){let d=i instanceof Ni.Name?i:s.let("data",i,!0);l(d),a!==void 0&&(e.propertyName=a)}o&&(e.dataTypes=o);function l(d){e.data=d,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,d]}}Fo.extendSubschemaData=TU;function AU(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:i,allErrors:o}){n!==void 0&&(e.compositeRule=n),i!==void 0&&(e.createErrors=i),o!==void 0&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=r}Fo.extendSubschemaMode=AU});var eb=ce((Qee,CO)=>{"use strict";CO.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,i,o;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(i=n;i--!==0;)if(!e(t[i],r[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),n=o.length,n!==Object.keys(r).length)return!1;for(i=n;i--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[i]))return!1;for(i=n;i--!==0;){var a=o[i];if(!e(t[a],r[a]))return!1}return!0}return t!==t&&r!==r}});var PO=ce((ete,EO)=>{"use strict";var Do=EO.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},i=r.post||function(){};Yf(t,n,i,e,"",e)};Do.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Do.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Do.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Do.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Yf(e,t,r,n,i,o,a,s,l,d){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,i,o,a,s,l,d);for(var u in n){var c=n[u];if(Array.isArray(c)){if(u in Do.arrayKeywords)for(var f=0;f<c.length;f++)Yf(e,t,r,c[f],i+"/"+u+"/"+f,o,i,u,n,f)}else if(u in Do.propsKeywords){if(c&&typeof c=="object")for(var p in c)Yf(e,t,r,c[p],i+"/"+u+"/"+OU(p),o,i,u,n,p)}else(u in Do.keywords||e.allKeys&&!(u in Do.skipKeywords))&&Yf(e,t,r,c,i+"/"+u,o,i,u,n)}r(n,i,o,a,s,l,d)}}function OU(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var ru=ce(An=>{"use strict";Object.defineProperty(An,"__esModule",{value:!0});An.getSchemaRefs=An.resolveUrl=An.normalizeId=An._getFullPath=An.getFullPath=An.inlineRef=void 0;var CU=Tt(),EU=eb(),PU=PO(),RU=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function IU(e,t=!0){return typeof e=="boolean"?!0:t===!0?!tb(e):t?RO(e)<=t:!1}An.inlineRef=IU;var $U=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function tb(e){for(let t in e){if($U.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(tb)||typeof r=="object"&&tb(r))return!0}return!1}function RO(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!RU.has(r)&&(typeof e[r]=="object"&&(0,CU.eachItem)(e[r],n=>t+=RO(n)),t===1/0))return 1/0}return t}function IO(e,t="",r){r!==!1&&(t=dl(t));let n=e.parse(t);return $O(e,n)}An.getFullPath=IO;function $O(e,t){return e.serialize(t).split("#")[0]+"#"}An._getFullPath=$O;var MU=/#\/?$/;function dl(e){return e?e.replace(MU,""):""}An.normalizeId=dl;function jU(e,t,r){return r=dl(r),e.resolve(t,r)}An.resolveUrl=jU;var zU=/^[a-z_][-a-z0-9._]*$/i;function NU(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,i=dl(e[r]||t),o={"":i},a=IO(n,i,!1),s={},l=new Set;return PU(e,{allKeys:!0},(c,f,p,m)=>{if(m===void 0)return;let h=a+f,_=o[m];typeof c[r]=="string"&&(_=g.call(this,c[r])),b.call(this,c.$anchor),b.call(this,c.$dynamicAnchor),o[f]=_;function g(y){let v=this.opts.uriResolver.resolve;if(y=dl(_?v(_,y):y),l.has(y))throw u(y);l.add(y);let S=this.refs[y];return typeof S=="string"&&(S=this.refs[S]),typeof S=="object"?d(c,S.schema,y):y!==dl(h)&&(y[0]==="#"?(d(c,s[y],y),s[y]=c):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!zU.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),s;function d(c,f,p){if(f!==void 0&&!EU(c,f))throw u(p)}function u(c){return new Error(`reference "${c}" resolves to more than one schema`)}}An.getSchemaRefs=NU});var ou=ce(qo=>{"use strict";Object.defineProperty(qo,"__esModule",{value:!0});qo.getData=qo.KeywordCxt=qo.validateFunctionCode=void 0;var GO=mO(),MO=tu(),nb=Hy(),Xf=tu(),GU=vO(),iu=TO(),rb=OO(),Te=it(),We=uo(),FU=ru(),co=Tt(),nu=eu();function DU(e){if(qO(e)&&(LO(e),DO(e))){UU(e);return}FO(e,()=>(0,GO.topBoolOrEmptySchema)(e))}qo.validateFunctionCode=DU;function FO({gen:e,validateName:t,schema:r,schemaEnv:n,opts:i},o){i.code.es5?e.func(t,(0,Te._)`${We.default.data}, ${We.default.valCxt}`,n.$async,()=>{e.code((0,Te._)`"use strict"; ${jO(r,i)}`),LU(e,i),e.code(o)}):e.func(t,(0,Te._)`${We.default.data}, ${qU(i)}`,n.$async,()=>e.code(jO(r,i)).code(o))}function qU(e){return(0,Te._)`{${We.default.instancePath}="", ${We.default.parentData}, ${We.default.parentDataProperty}, ${We.default.rootData}=${We.default.data}${e.dynamicRef?(0,Te._)`, ${We.default.dynamicAnchors}={}`:Te.nil}}={}`}function LU(e,t){e.if(We.default.valCxt,()=>{e.var(We.default.instancePath,(0,Te._)`${We.default.valCxt}.${We.default.instancePath}`),e.var(We.default.parentData,(0,Te._)`${We.default.valCxt}.${We.default.parentData}`),e.var(We.default.parentDataProperty,(0,Te._)`${We.default.valCxt}.${We.default.parentDataProperty}`),e.var(We.default.rootData,(0,Te._)`${We.default.valCxt}.${We.default.rootData}`),t.dynamicRef&&e.var(We.default.dynamicAnchors,(0,Te._)`${We.default.valCxt}.${We.default.dynamicAnchors}`)},()=>{e.var(We.default.instancePath,(0,Te._)`""`),e.var(We.default.parentData,(0,Te._)`undefined`),e.var(We.default.parentDataProperty,(0,Te._)`undefined`),e.var(We.default.rootData,We.default.data),t.dynamicRef&&e.var(We.default.dynamicAnchors,(0,Te._)`{}`)})}function UU(e){let{schema:t,opts:r,gen:n}=e;FO(e,()=>{r.$comment&&t.$comment&&WO(e),BU(e),n.let(We.default.vErrors,null),n.let(We.default.errors,0),r.unevaluated&&WU(e),UO(e),YU(e)})}function WU(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,Te._)`${r}.evaluated`),t.if((0,Te._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,Te._)`${e.evaluated}.props`,(0,Te._)`undefined`)),t.if((0,Te._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,Te._)`${e.evaluated}.items`,(0,Te._)`undefined`))}function jO(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,Te._)`/*# sourceURL=${r} */`:Te.nil}function ZU(e,t){if(qO(e)&&(LO(e),DO(e))){VU(e,t);return}(0,GO.boolOrEmptySchema)(e,t)}function DO({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function qO(e){return typeof e.schema!="boolean"}function VU(e,t){let{schema:r,gen:n,opts:i}=e;i.$comment&&r.$comment&&WO(e),KU(e),JU(e);let o=n.const("_errs",We.default.errors);UO(e,o),n.var(t,(0,Te._)`${o} === ${We.default.errors}`)}function LO(e){(0,co.checkUnknownRules)(e),HU(e)}function UO(e,t){if(e.opts.jtd)return zO(e,[],!1,t);let r=(0,MO.getSchemaTypes)(e.schema),n=(0,MO.coerceAndCheckDataType)(e,r);zO(e,r,!n,t)}function HU(e){let{schema:t,errSchemaPath:r,opts:n,self:i}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,co.schemaHasRulesButRef)(t,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function BU(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,co.checkStrictMode)(e,"default is ignored in the schema root")}function KU(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,FU.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function JU(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function WO({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:i}){let o=r.$comment;if(i.$comment===!0)e.code((0,Te._)`${We.default.self}.logger.log(${o})`);else if(typeof i.$comment=="function"){let a=(0,Te.str)`${n}/$comment`,s=e.scopeValue("root",{ref:t.root});e.code((0,Te._)`${We.default.self}.opts.$comment(${o}, ${a}, ${s}.schema)`)}}function YU(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:i,opts:o}=e;r.$async?t.if((0,Te._)`${We.default.errors} === 0`,()=>t.return(We.default.data),()=>t.throw((0,Te._)`new ${i}(${We.default.vErrors})`)):(t.assign((0,Te._)`${n}.errors`,We.default.vErrors),o.unevaluated&&XU(e),t.return((0,Te._)`${We.default.errors} === 0`))}function XU({gen:e,evaluated:t,props:r,items:n}){r instanceof Te.Name&&e.assign((0,Te._)`${t}.props`,r),n instanceof Te.Name&&e.assign((0,Te._)`${t}.items`,n)}function zO(e,t,r,n){let{gen:i,schema:o,data:a,allErrors:s,opts:l,self:d}=e,{RULES:u}=d;if(o.$ref&&(l.ignoreKeywordsWithRef||!(0,co.schemaHasRulesButRef)(o,u))){i.block(()=>VO(e,"$ref",u.all.$ref.definition));return}l.jtd||QU(e,t),i.block(()=>{for(let f of u.rules)c(f);c(u.post)});function c(f){(0,nb.shouldUseGroup)(o,f)&&(f.type?(i.if((0,Xf.checkDataType)(f.type,a,l.strictNumbers)),NO(e,f),t.length===1&&t[0]===f.type&&r&&(i.else(),(0,Xf.reportTypeError)(e)),i.endIf()):NO(e,f),s||i.if((0,Te._)`${We.default.errors} === ${n||0}`))}}function NO(e,t){let{gen:r,schema:n,opts:{useDefaults:i}}=e;i&&(0,GU.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0,nb.shouldUseRule)(n,o)&&VO(e,o.keyword,o.definition,t.type)})}function QU(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(e2(e,t),e.opts.allowUnionTypes||t2(e,t),r2(e,e.dataTypes))}function e2(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{ZO(e.dataTypes,r)||ib(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),i2(e,t)}}function t2(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&ib(e,"use allowUnionTypes to allow union type keyword")}function r2(e,t){let r=e.self.RULES.all;for(let n in r){let i=r[n];if(typeof i=="object"&&(0,nb.shouldUseRule)(e.schema,i)){let{type:o}=i.definition;o.length&&!o.some(a=>n2(t,a))&&ib(e,`missing type "${o.join(",")}" for keyword "${n}"`)}}}function n2(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function ZO(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function i2(e,t){let r=[];for(let n of e.dataTypes)ZO(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function ib(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,co.checkStrictMode)(e,t,e.opts.strictTypes)}var Qf=class{constructor(t,r,n){if((0,iu.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,co.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",HO(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,iu.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",We.default.errors))}result(t,r,n){this.failResult((0,Te.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,Te.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,Te._)`${r} !== undefined && (${(0,Te.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?nu.reportExtraError:nu.reportError)(this,this.def.error,r)}$dataError(){(0,nu.reportError)(this,this.def.$dataError||nu.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,nu.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=Te.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=Te.nil,r=Te.nil){if(!this.$data)return;let{gen:n,schemaCode:i,schemaType:o,def:a}=this;n.if((0,Te.or)((0,Te._)`${i} === undefined`,r)),t!==Te.nil&&n.assign(t,!0),(o.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==Te.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:i,it:o}=this;return(0,Te.or)(a(),s());function a(){if(n.length){if(!(r instanceof Te.Name))throw new Error("ajv implementation error");let l=Array.isArray(n)?n:[n];return(0,Te._)`${(0,Xf.checkDataTypes)(l,r,o.opts.strictNumbers,Xf.DataType.Wrong)}`}return Te.nil}function s(){if(i.validateSchema){let l=t.scopeValue("validate$data",{ref:i.validateSchema});return(0,Te._)`!${l}(${r})`}return Te.nil}}subschema(t,r){let n=(0,rb.getSubschema)(this.it,t);(0,rb.extendSubschemaData)(n,this.it,t),(0,rb.extendSubschemaMode)(n,t);let i={...this.it,...n,items:void 0,props:void 0};return ZU(i,r),i}mergeEvaluated(t,r){let{it:n,gen:i}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=co.mergeEvaluated.props(i,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=co.mergeEvaluated.items(i,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:i}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return i.if(r,()=>this.mergeEvaluated(t,Te.Name)),!0}};qo.KeywordCxt=Qf;function VO(e,t,r,n){let i=new Qf(e,r,t);"code"in r?r.code(i,n):i.$data&&r.validate?(0,iu.funcKeywordCode)(i,r):"macro"in r?(0,iu.macroKeywordCode)(i,r):(r.compile||r.validate)&&(0,iu.funcKeywordCode)(i,r)}var o2=/^\/(?:[^~]|~0|~1)*$/,a2=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function HO(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let i,o;if(e==="")return We.default.rootData;if(e[0]==="/"){if(!o2.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);i=e,o=We.default.rootData}else{let d=a2.exec(e);if(!d)throw new Error(`Invalid JSON-pointer: ${e}`);let u=+d[1];if(i=d[2],i==="#"){if(u>=t)throw new Error(l("property/index",u));return n[t-u]}if(u>t)throw new Error(l("data",u));if(o=r[t-u],!i)return o}let a=o,s=i.split("/");for(let d of s)d&&(o=(0,Te._)`${o}${(0,Te.getProperty)((0,co.unescapeJsonPointer)(d))}`,a=(0,Te._)`${a} && ${o}`);return a;function l(d,u){return`Cannot access ${d} ${u} levels up, current level is ${t}`}}qo.getData=HO});var em=ce(ab=>{"use strict";Object.defineProperty(ab,"__esModule",{value:!0});var ob=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};ab.default=ob});var au=ce(db=>{"use strict";Object.defineProperty(db,"__esModule",{value:!0});var sb=ru(),lb=class extends Error{constructor(t,r,n,i){super(i||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,sb.resolveUrl)(t,r,n),this.missingSchema=(0,sb.normalizeId)((0,sb.getFullPath)(t,this.missingRef))}};db.default=lb});var rm=ce(Qn=>{"use strict";Object.defineProperty(Qn,"__esModule",{value:!0});Qn.resolveSchema=Qn.getCompilingSchema=Qn.resolveRef=Qn.compileSchema=Qn.SchemaEnv=void 0;var yi=it(),s2=em(),Ha=uo(),bi=ru(),BO=Tt(),l2=ou(),ul=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,bi.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};Qn.SchemaEnv=ul;function cb(e){let t=KO.call(this,e);if(t)return t;let r=(0,bi.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:i}=this.opts.code,{ownProperties:o}=this.opts,a=new yi.CodeGen(this.scope,{es5:n,lines:i,ownProperties:o}),s;e.$async&&(s=a.scopeValue("Error",{ref:s2.default,code:(0,yi._)`require("ajv/dist/runtime/validation_error").default`}));let l=a.scopeName("validate");e.validateName=l;let d={gen:a,allErrors:this.opts.allErrors,data:Ha.default.data,parentData:Ha.default.parentData,parentDataProperty:Ha.default.parentDataProperty,dataNames:[Ha.default.data],dataPathArr:[yi.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,yi.stringify)(e.schema)}:{ref:e.schema}),validateName:l,ValidationError:s,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:yi.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,yi._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(e),(0,l2.validateFunctionCode)(d),a.optimize(this.opts.code.optimize);let c=a.toString();u=`${a.scopeRefs(Ha.default.scope)}return ${c}`,this.opts.code.process&&(u=this.opts.code.process(u,e));let p=new Function(`${Ha.default.self}`,`${Ha.default.scope}`,u)(this,this.scope.get());if(this.scope.value(l,{ref:p}),p.errors=null,p.schema=e.schema,p.schemaEnv=e,e.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:l,validateCode:c,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=d;p.evaluated={props:m instanceof yi.Name?void 0:m,items:h instanceof yi.Name?void 0:h,dynamicProps:m instanceof yi.Name,dynamicItems:h instanceof yi.Name},p.source&&(p.source.evaluated=(0,yi.stringify)(p.evaluated))}return e.validate=p,e}catch(c){throw delete e.validate,delete e.validateName,u&&this.logger.error("Error compiling schema, function code:",u),c}finally{this._compilations.delete(e)}}Qn.compileSchema=cb;function d2(e,t,r){var n;r=(0,bi.resolveUrl)(this.opts.uriResolver,t,r);let i=e.refs[r];if(i)return i;let o=f2.call(this,e,r);if(o===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:s}=this.opts;a&&(o=new ul({schema:a,schemaId:s,root:e,baseId:t}))}if(o!==void 0)return e.refs[r]=u2.call(this,o)}Qn.resolveRef=d2;function u2(e){return(0,bi.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:cb.call(this,e)}function KO(e){for(let t of this._compilations)if(c2(t,e))return t}Qn.getCompilingSchema=KO;function c2(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function f2(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||tm.call(this,e,t)}function tm(e,t){let r=this.opts.uriResolver.parse(t),n=(0,bi._getFullPath)(this.opts.uriResolver,r),i=(0,bi.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===i)return ub.call(this,r,e);let o=(0,bi.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let s=tm.call(this,e,a);return typeof s?.schema!="object"?void 0:ub.call(this,r,s)}if(typeof a?.schema=="object"){if(a.validate||cb.call(this,a),o===(0,bi.normalizeId)(t)){let{schema:s}=a,{schemaId:l}=this.opts,d=s[l];return d&&(i=(0,bi.resolveUrl)(this.opts.uriResolver,i,d)),new ul({schema:s,schemaId:l,root:e,baseId:i})}return ub.call(this,r,a)}}Qn.resolveSchema=tm;var m2=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function ub(e,{baseId:t,schema:r,root:n}){var i;if(((i=e.fragment)===null||i===void 0?void 0:i[0])!=="/")return;for(let s of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let l=r[(0,BO.unescapeFragment)(s)];if(l===void 0)return;r=l;let d=typeof r=="object"&&r[this.opts.schemaId];!m2.has(s)&&d&&(t=(0,bi.resolveUrl)(this.opts.uriResolver,t,d))}let o;if(typeof r!="boolean"&&r.$ref&&!(0,BO.schemaHasRulesButRef)(r,this.RULES)){let s=(0,bi.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=tm.call(this,n,s)}let{schemaId:a}=this.opts;if(o=o||new ul({schema:r,schemaId:a,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var JO=ce((ate,p2)=>{p2.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var mb=ce((ste,eC)=>{"use strict";var h2=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),XO=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function fb(e){let t="",r=0,n=0;for(n=0;n<e.length;n++)if(r=e[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var _2=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function YO(e){return e.length=0,!0}function g2(e,t,r){if(e.length){let n=fb(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function y2(e){let t=0,r={error:!1,address:"",zone:""},n=[],i=[],o=!1,a=!1,s=g2;for(let l=0;l<e.length;l++){let d=e[l];if(!(d==="["||d==="]"))if(d===":"){if(o===!0&&(a=!0),!s(i,n,r))break;if(++t>7){r.error=!0;break}l>0&&e[l-1]===":"&&(o=!0),n.push(":");continue}else if(d==="%"){if(!s(i,n,r))break;s=YO}else{i.push(d);continue}}return i.length&&(s===YO?r.zone=i.join(""):a?n.push(i.join("")):n.push(fb(i))),r.address=n.join(""),r}function QO(e){if(b2(e,":")<2)return{host:e,isIPV6:!1};let t=y2(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function b2(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function v2(e){let t=e,r=[],n=-1,i=0;for(;i=t.length;){if(i===1){if(t===".")break;if(t==="/"){r.push("/");break}else{r.push(t);break}}else if(i===2){if(t[0]==="."){if(t[1]===".")break;if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&(t[1]==="."||t[1]==="/")){r.push("/");break}}else if(i===3&&t==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(t[0]==="."){if(t[1]==="."){if(t[2]==="/"){t=t.slice(3);continue}}else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&t[1]==="."){if(t[2]==="/"){t=t.slice(2);continue}else if(t[2]==="."&&t[3]==="/"){t=t.slice(3),r.length!==0&&r.pop();continue}}if((n=t.indexOf("/",1))===-1){r.push(t);break}else r.push(t.slice(0,n)),t=t.slice(n)}return r.join("")}function S2(e,t){let r=t!==!0?escape:unescape;return e.scheme!==void 0&&(e.scheme=r(e.scheme)),e.userinfo!==void 0&&(e.userinfo=r(e.userinfo)),e.host!==void 0&&(e.host=r(e.host)),e.path!==void 0&&(e.path=r(e.path)),e.query!==void 0&&(e.query=r(e.query)),e.fragment!==void 0&&(e.fragment=r(e.fragment)),e}function w2(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!XO(r)){let n=QO(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=e.host}t.push(r)}return(typeof e.port=="number"||typeof e.port=="string")&&(t.push(":"),t.push(String(e.port))),t.length?t.join(""):void 0}eC.exports={nonSimpleDomain:_2,recomposeAuthority:w2,normalizeComponentEncoding:S2,removeDotSegments:v2,isIPv4:XO,isUUID:h2,normalizeIPv6:QO,stringArrayToHexStripped:fb}});var oC=ce((lte,iC)=>{"use strict";var{isUUID:k2}=mb(),x2=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,T2=["http","https","ws","wss","urn","urn:uuid"];function A2(e){return T2.indexOf(e)!==-1}function pb(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function tC(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function rC(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function O2(e){return e.secure=pb(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function C2(e){if((e.port===(pb(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function E2(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(x2);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let i=`${n}:${t.nid||e.nid}`,o=hb(i);e.path=void 0,o&&(e=o.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function P2(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),i=`${r}:${t.nid||n}`,o=hb(i);o&&(e=o.serialize(e,t));let a=e,s=e.nss;return a.path=`${n||t.nid}:${s}`,t.skipEscape=!0,a}function R2(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!k2(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function I2(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var nC={scheme:"http",domainHost:!0,parse:tC,serialize:rC},$2={scheme:"https",domainHost:nC.domainHost,parse:tC,serialize:rC},nm={scheme:"ws",domainHost:!0,parse:O2,serialize:C2},M2={scheme:"wss",domainHost:nm.domainHost,parse:nm.parse,serialize:nm.serialize},j2={scheme:"urn",parse:E2,serialize:P2,skipNormalize:!0},z2={scheme:"urn:uuid",parse:R2,serialize:I2,skipNormalize:!0},im={http:nC,https:$2,ws:nm,wss:M2,urn:j2,"urn:uuid":z2};Object.setPrototypeOf(im,null);function hb(e){return e&&(im[e]||im[e.toLowerCase()])||void 0}iC.exports={wsIsSecure:pb,SCHEMES:im,isValidSchemeName:A2,getSchemeHandler:hb}});var lC=ce((dte,am)=>{"use strict";var{normalizeIPv6:N2,removeDotSegments:su,recomposeAuthority:G2,normalizeComponentEncoding:om,isIPv4:F2,nonSimpleDomain:D2}=mb(),{SCHEMES:q2,getSchemeHandler:aC}=oC();function L2(e,t){return typeof e=="string"?e=Gi(fo(e,t),t):typeof e=="object"&&(e=fo(Gi(e,t),t)),e}function U2(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},i=sC(fo(e,n),fo(t,n),n,!0);return n.skipEscape=!0,Gi(i,n)}function sC(e,t,r,n){let i={};return n||(e=fo(Gi(e,r),r),t=fo(Gi(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(i.scheme=t.scheme,i.userinfo=t.userinfo,i.host=t.host,i.port=t.port,i.path=su(t.path||""),i.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(i.userinfo=t.userinfo,i.host=t.host,i.port=t.port,i.path=su(t.path||""),i.query=t.query):(t.path?(t.path[0]==="/"?i.path=su(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?i.path="/"+t.path:e.path?i.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:i.path=t.path,i.path=su(i.path)),i.query=t.query):(i.path=e.path,t.query!==void 0?i.query=t.query:i.query=e.query),i.userinfo=e.userinfo,i.host=e.host,i.port=e.port),i.scheme=e.scheme),i.fragment=t.fragment,i}function W2(e,t,r){return typeof e=="string"?(e=unescape(e),e=Gi(om(fo(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Gi(om(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=Gi(om(fo(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Gi(om(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function Gi(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),i=[],o=aC(n.scheme||r.scheme);o&&o.serialize&&o.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&i.push(r.scheme,":");let a=G2(r);if(a!==void 0&&(n.reference!=="suffix"&&i.push("//"),i.push(a),r.path&&r.path[0]!=="/"&&i.push("/")),r.path!==void 0){let s=r.path;!n.absolutePath&&(!o||!o.absolutePath)&&(s=su(s)),a===void 0&&s[0]==="/"&&s[1]==="/"&&(s="/%2F"+s.slice(2)),i.push(s)}return r.query!==void 0&&i.push("?",r.query),r.fragment!==void 0&&i.push("#",r.fragment),i.join("")}var Z2=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function fo(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},i=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let o=e.match(Z2);if(o){if(n.scheme=o[1],n.userinfo=o[3],n.host=o[4],n.port=parseInt(o[5],10),n.path=o[6]||"",n.query=o[7],n.fragment=o[8],isNaN(n.port)&&(n.port=o[5]),n.host)if(F2(n.host)===!1){let l=N2(n.host);n.host=l.host.toLowerCase(),i=l.isIPV6}else i=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=aC(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&i===!1&&D2(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(s){n.error=n.error||"Host's domain name can not be converted to ASCII: "+s}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var _b={SCHEMES:q2,normalize:L2,resolve:U2,resolveComponent:sC,equal:W2,serialize:Gi,parse:fo};am.exports=_b;am.exports.default=_b;am.exports.fastUri=_b});var uC=ce(gb=>{"use strict";Object.defineProperty(gb,"__esModule",{value:!0});var dC=lC();dC.code='require("ajv/dist/runtime/uri").default';gb.default=dC});var yC=ce(Wr=>{"use strict";Object.defineProperty(Wr,"__esModule",{value:!0});Wr.CodeGen=Wr.Name=Wr.nil=Wr.stringify=Wr.str=Wr._=Wr.KeywordCxt=void 0;var V2=ou();Object.defineProperty(Wr,"KeywordCxt",{enumerable:!0,get:function(){return V2.KeywordCxt}});var cl=it();Object.defineProperty(Wr,"_",{enumerable:!0,get:function(){return cl._}});Object.defineProperty(Wr,"str",{enumerable:!0,get:function(){return cl.str}});Object.defineProperty(Wr,"stringify",{enumerable:!0,get:function(){return cl.stringify}});Object.defineProperty(Wr,"nil",{enumerable:!0,get:function(){return cl.nil}});Object.defineProperty(Wr,"Name",{enumerable:!0,get:function(){return cl.Name}});Object.defineProperty(Wr,"CodeGen",{enumerable:!0,get:function(){return cl.CodeGen}});var H2=em(),hC=au(),B2=Vy(),lu=rm(),K2=it(),du=ru(),sm=tu(),bb=Tt(),cC=JO(),J2=uC(),_C=(e,t)=>new RegExp(e,t);_C.code="new RegExp";var Y2=["removeAdditional","useDefaults","coerceTypes"],X2=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Q2={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},eW={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},fC=200;function tW(e){var t,r,n,i,o,a,s,l,d,u,c,f,p,m,h,_,g,b,y,v,S,A,R,W,L;let ae=e.strict,U=(t=e.code)===null||t===void 0?void 0:t.optimize,B=U===!0||U===void 0?1:U||0,oe=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:_C,Z=(i=e.uriResolver)!==null&&i!==void 0?i:J2.default;return{strictSchema:(a=(o=e.strictSchema)!==null&&o!==void 0?o:ae)!==null&&a!==void 0?a:!0,strictNumbers:(l=(s=e.strictNumbers)!==null&&s!==void 0?s:ae)!==null&&l!==void 0?l:!0,strictTypes:(u=(d=e.strictTypes)!==null&&d!==void 0?d:ae)!==null&&u!==void 0?u:"log",strictTuples:(f=(c=e.strictTuples)!==null&&c!==void 0?c:ae)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=e.strictRequired)!==null&&p!==void 0?p:ae)!==null&&m!==void 0?m:!1,code:e.code?{...e.code,optimize:B,regExp:oe}:{optimize:B,regExp:oe},loopRequired:(h=e.loopRequired)!==null&&h!==void 0?h:fC,loopEnum:(_=e.loopEnum)!==null&&_!==void 0?_:fC,meta:(g=e.meta)!==null&&g!==void 0?g:!0,messages:(b=e.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=e.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(v=e.schemaId)!==null&&v!==void 0?v:"$id",addUsedSchema:(S=e.addUsedSchema)!==null&&S!==void 0?S:!0,validateSchema:(A=e.validateSchema)!==null&&A!==void 0?A:!0,validateFormats:(R=e.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(W=e.unicodeRegExp)!==null&&W!==void 0?W:!0,int32range:(L=e.int32range)!==null&&L!==void 0?L:!0,uriResolver:Z}}var uu=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...tW(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new K2.ValueScope({scope:{},prefixes:X2,es5:r,lines:n}),this.logger=sW(t.logger);let i=t.validateFormats;t.validateFormats=!1,this.RULES=(0,B2.getRules)(),mC.call(this,Q2,t,"NOT SUPPORTED"),mC.call(this,eW,t,"DEPRECATED","warn"),this._metaOpts=oW.call(this),t.formats&&nW.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&iW.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),rW.call(this),t.validateFormats=i}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,i=cC;n==="id"&&(i={...cC},i.id=i.$id,delete i.$id),r&&t&&this.addMetaSchema(i,i[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let i=n(r);return"$async"in n||(this.errors=n.errors),i}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return i.call(this,t,r);async function i(u,c){await o.call(this,u.$schema);let f=this._addSchema(u,c);return f.validate||a.call(this,f)}async function o(u){u&&!this.getSchema(u)&&await i.call(this,{$ref:u},!0)}async function a(u){try{return this._compileSchemaEnv(u)}catch(c){if(!(c instanceof hC.default))throw c;return s.call(this,c),await l.call(this,c.missingSchema),a.call(this,u)}}function s({missingSchema:u,missingRef:c}){if(this.refs[u])throw new Error(`AnySchema ${u} is loaded but ${c} cannot be resolved`)}async function l(u){let c=await d.call(this,u);this.refs[u]||await o.call(this,c.$schema),this.refs[u]||this.addSchema(c,u,r)}async function d(u){let c=this._loading[u];if(c)return c;try{return await(this._loading[u]=n(u))}finally{delete this._loading[u]}}}addSchema(t,r,n,i=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,i);return this}let o;if(typeof t=="object"){let{schemaId:a}=this.opts;if(o=t[a],o!==void 0&&typeof o!="string")throw new Error(`schema ${a} must be string`)}return r=(0,du.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,i,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let i=this.validate(n,t);if(!i&&r){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return i}getSchema(t){let r;for(;typeof(r=pC.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,i=new lu.SchemaEnv({schema:{},schemaId:n});if(r=lu.resolveSchema.call(this,i,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=pC.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,du.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(dW.call(this,n,r),!r)return(0,bb.eachItem)(n,o=>yb.call(this,o)),this;cW.call(this,r);let i={...r,type:(0,sm.getJSONTypes)(r.type),schemaType:(0,sm.getJSONTypes)(r.schemaType)};return(0,bb.eachItem)(n,i.type.length===0?o=>yb.call(this,o,i):o=>i.type.forEach(a=>yb.call(this,o,i,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let i=n.rules.findIndex(o=>o.keyword===t);i>=0&&n.rules.splice(i,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(i=>`${n}${i.instancePath} ${i.message}`).reduce((i,o)=>i+r+o)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let i of r){let o=i.split("/").slice(1),a=t;for(let s of o)a=a[s];for(let s in n){let l=n[s];if(typeof l!="object")continue;let{$data:d}=l.definition,u=a[s];d&&u&&(a[s]=gC(u))}}return t}_removeAllSchemas(t,r){for(let n in t){let i=t[n];(!r||r.test(n))&&(typeof i=="string"?delete t[n]:i&&!i.meta&&(this._cache.delete(i.schema),delete t[n]))}}_addSchema(t,r,n,i=this.opts.validateSchema,o=this.opts.addUsedSchema){let a,{schemaId:s}=this.opts;if(typeof t=="object")a=t[s];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let l=this._cache.get(t);if(l!==void 0)return l;n=(0,du.normalizeId)(a||n);let d=du.getSchemaRefs.call(this,t,n);return l=new lu.SchemaEnv({schema:t,schemaId:s,meta:r,baseId:n,localRefs:d}),this._cache.set(l.schema,l),o&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=l),i&&this.validateSchema(t,!0),l}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):lu.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{lu.compileSchema.call(this,t)}finally{this.opts=r}}};uu.ValidationError=H2.default;uu.MissingRefError=hC.default;Wr.default=uu;function mC(e,t,r,n="error"){for(let i in e){let o=i;o in t&&this.logger[n](`${r}: option ${i}. ${e[o]}`)}}function pC(e){return e=(0,du.normalizeId)(e),this.schemas[e]||this.refs[e]}function rW(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function nW(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function iW(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function oW(){let e={...this.opts};for(let t of Y2)delete e[t];return e}var aW={log(){},warn(){},error(){}};function sW(e){if(e===!1)return aW;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var lW=/^[a-z_$][a-z0-9_$:-]*$/i;function dW(e,t){let{RULES:r}=this;if((0,bb.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!lW.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function yb(e,t,r){var n;let i=t?.post;if(r&&i)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,a=i?o.post:o.rules.find(({type:l})=>l===r);if(a||(a={type:r,rules:[]},o.rules.push(a)),o.keywords[e]=!0,!t)return;let s={keyword:e,definition:{...t,type:(0,sm.getJSONTypes)(t.type),schemaType:(0,sm.getJSONTypes)(t.schemaType)}};t.before?uW.call(this,a,s,t.before):a.rules.push(s),o.all[e]=s,(n=t.implements)===null||n===void 0||n.forEach(l=>this.addKeyword(l))}function uW(e,t,r){let n=e.rules.findIndex(i=>i.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function cW(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=gC(t)),e.validateSchema=this.compile(t,!0))}var fW={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function gC(e){return{anyOf:[e,fW]}}});var bC=ce(vb=>{"use strict";Object.defineProperty(vb,"__esModule",{value:!0});var mW={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};vb.default=mW});var kC=ce(Ba=>{"use strict";Object.defineProperty(Ba,"__esModule",{value:!0});Ba.callRef=Ba.getValidate=void 0;var pW=au(),vC=Xn(),On=it(),fl=uo(),SC=rm(),lm=Tt(),hW={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:i,schemaEnv:o,validateName:a,opts:s,self:l}=n,{root:d}=o;if((r==="#"||r==="#/")&&i===d.baseId)return c();let u=SC.resolveRef.call(l,d,i,r);if(u===void 0)throw new pW.default(n.opts.uriResolver,i,r);if(u instanceof SC.SchemaEnv)return f(u);return p(u);function c(){if(o===d)return dm(e,a,o,o.$async);let m=t.scopeValue("root",{ref:d});return dm(e,(0,On._)`${m}.validate`,d,d.$async)}function f(m){let h=wC(e,m);dm(e,h,m,m.$async)}function p(m){let h=t.scopeValue("schema",s.code.source===!0?{ref:m,code:(0,On.stringify)(m)}:{ref:m}),_=t.name("valid"),g=e.subschema({schema:m,dataTypes:[],schemaPath:On.nil,topSchemaRef:h,errSchemaPath:r},_);e.mergeEvaluated(g),e.ok(_)}}};function wC(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,On._)`${r.scopeValue("wrapper",{ref:t})}.validate`}Ba.getValidate=wC;function dm(e,t,r,n){let{gen:i,it:o}=e,{allErrors:a,schemaEnv:s,opts:l}=o,d=l.passContext?fl.default.this:On.nil;n?u():c();function u(){if(!s.$async)throw new Error("async schema referenced by sync schema");let m=i.let("valid");i.try(()=>{i.code((0,On._)`await ${(0,vC.callValidateCode)(e,t,d)}`),p(t),a||i.assign(m,!0)},h=>{i.if((0,On._)`!(${h} instanceof ${o.ValidationError})`,()=>i.throw(h)),f(h),a||i.assign(m,!1)}),e.ok(m)}function c(){e.result((0,vC.callValidateCode)(e,t,d),()=>p(t),()=>f(t))}function f(m){let h=(0,On._)`${m}.errors`;i.assign(fl.default.vErrors,(0,On._)`${fl.default.vErrors} === null ? ${h} : ${fl.default.vErrors}.concat(${h})`),i.assign(fl.default.errors,(0,On._)`${fl.default.vErrors}.length`)}function p(m){var h;if(!o.opts.unevaluated)return;let _=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(o.props!==!0)if(_&&!_.dynamicProps)_.props!==void 0&&(o.props=lm.mergeEvaluated.props(i,_.props,o.props));else{let g=i.var("props",(0,On._)`${m}.evaluated.props`);o.props=lm.mergeEvaluated.props(i,g,o.props,On.Name)}if(o.items!==!0)if(_&&!_.dynamicItems)_.items!==void 0&&(o.items=lm.mergeEvaluated.items(i,_.items,o.items));else{let g=i.var("items",(0,On._)`${m}.evaluated.items`);o.items=lm.mergeEvaluated.items(i,g,o.items,On.Name)}}}Ba.callRef=dm;Ba.default=hW});var xC=ce(Sb=>{"use strict";Object.defineProperty(Sb,"__esModule",{value:!0});var _W=bC(),gW=kC(),yW=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",_W.default,gW.default];Sb.default=yW});var TC=ce(wb=>{"use strict";Object.defineProperty(wb,"__esModule",{value:!0});var um=it(),Lo=um.operators,cm={maximum:{okStr:"<=",ok:Lo.LTE,fail:Lo.GT},minimum:{okStr:">=",ok:Lo.GTE,fail:Lo.LT},exclusiveMaximum:{okStr:"<",ok:Lo.LT,fail:Lo.GTE},exclusiveMinimum:{okStr:">",ok:Lo.GT,fail:Lo.LTE}},bW={message:({keyword:e,schemaCode:t})=>(0,um.str)`must be ${cm[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,um._)`{comparison: ${cm[e].okStr}, limit: ${t}}`},vW={keyword:Object.keys(cm),type:"number",schemaType:"number",$data:!0,error:bW,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,um._)`${r} ${cm[t].fail} ${n} || isNaN(${r})`)}};wb.default=vW});var AC=ce(kb=>{"use strict";Object.defineProperty(kb,"__esModule",{value:!0});var cu=it(),SW={message:({schemaCode:e})=>(0,cu.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,cu._)`{multipleOf: ${e}}`},wW={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:SW,code(e){let{gen:t,data:r,schemaCode:n,it:i}=e,o=i.opts.multipleOfPrecision,a=t.let("res"),s=o?(0,cu._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0,cu._)`${a} !== parseInt(${a})`;e.fail$data((0,cu._)`(${n} === 0 || (${a} = ${r}/${n}, ${s}))`)}};kb.default=wW});var CC=ce(xb=>{"use strict";Object.defineProperty(xb,"__esModule",{value:!0});function OC(e){let t=e.length,r=0,n=0,i;for(;n<t;)r++,i=e.charCodeAt(n++),i>=55296&&i<=56319&&n<t&&(i=e.charCodeAt(n),(i&64512)===56320&&n++);return r}xb.default=OC;OC.code='require("ajv/dist/runtime/ucs2length").default'});var EC=ce(Tb=>{"use strict";Object.defineProperty(Tb,"__esModule",{value:!0});var Ka=it(),kW=Tt(),xW=CC(),TW={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,Ka.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,Ka._)`{limit: ${e}}`},AW={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:TW,code(e){let{keyword:t,data:r,schemaCode:n,it:i}=e,o=t==="maxLength"?Ka.operators.GT:Ka.operators.LT,a=i.opts.unicode===!1?(0,Ka._)`${r}.length`:(0,Ka._)`${(0,kW.useFunc)(e.gen,xW.default)}(${r})`;e.fail$data((0,Ka._)`${a} ${o} ${n}`)}};Tb.default=AW});var PC=ce(Ab=>{"use strict";Object.defineProperty(Ab,"__esModule",{value:!0});var OW=Xn(),fm=it(),CW={message:({schemaCode:e})=>(0,fm.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,fm._)`{pattern: ${e}}`},EW={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:CW,code(e){let{data:t,$data:r,schema:n,schemaCode:i,it:o}=e,a=o.opts.unicodeRegExp?"u":"",s=r?(0,fm._)`(new RegExp(${i}, ${a}))`:(0,OW.usePattern)(e,n);e.fail$data((0,fm._)`!${s}.test(${t})`)}};Ab.default=EW});var RC=ce(Ob=>{"use strict";Object.defineProperty(Ob,"__esModule",{value:!0});var fu=it(),PW={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,fu.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,fu._)`{limit: ${e}}`},RW={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:PW,code(e){let{keyword:t,data:r,schemaCode:n}=e,i=t==="maxProperties"?fu.operators.GT:fu.operators.LT;e.fail$data((0,fu._)`Object.keys(${r}).length ${i} ${n}`)}};Ob.default=RW});var IC=ce(Cb=>{"use strict";Object.defineProperty(Cb,"__esModule",{value:!0});var mu=Xn(),pu=it(),IW=Tt(),$W={message:({params:{missingProperty:e}})=>(0,pu.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,pu._)`{missingProperty: ${e}}`},MW={keyword:"required",type:"object",schemaType:"array",$data:!0,error:$W,code(e){let{gen:t,schema:r,schemaCode:n,data:i,$data:o,it:a}=e,{opts:s}=a;if(!o&&r.length===0)return;let l=r.length>=s.loopRequired;if(a.allErrors?d():u(),s.strictRequired){let p=e.parentSchema.properties,{definedProperties:m}=e.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let _=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${_}" (strictRequired)`;(0,IW.checkStrictMode)(a,g,a.opts.strictRequired)}}function d(){if(l||o)e.block$data(pu.nil,c);else for(let p of r)(0,mu.checkReportMissingProp)(e,p)}function u(){let p=t.let("missing");if(l||o){let m=t.let("valid",!0);e.block$data(m,()=>f(p,m)),e.ok(m)}else t.if((0,mu.checkMissingProp)(e,r,p)),(0,mu.reportMissingProp)(e,p),t.else()}function c(){t.forOf("prop",n,p=>{e.setParams({missingProperty:p}),t.if((0,mu.noPropertyInData)(t,i,p,s.ownProperties),()=>e.error())})}function f(p,m){e.setParams({missingProperty:p}),t.forOf(p,n,()=>{t.assign(m,(0,mu.propertyInData)(t,i,p,s.ownProperties)),t.if((0,pu.not)(m),()=>{e.error(),t.break()})},pu.nil)}}};Cb.default=MW});var $C=ce(Eb=>{"use strict";Object.defineProperty(Eb,"__esModule",{value:!0});var hu=it(),jW={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,hu.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,hu._)`{limit: ${e}}`},zW={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:jW,code(e){let{keyword:t,data:r,schemaCode:n}=e,i=t==="maxItems"?hu.operators.GT:hu.operators.LT;e.fail$data((0,hu._)`${r}.length ${i} ${n}`)}};Eb.default=zW});var mm=ce(Pb=>{"use strict";Object.defineProperty(Pb,"__esModule",{value:!0});var MC=eb();MC.code='require("ajv/dist/runtime/equal").default';Pb.default=MC});var jC=ce(Ib=>{"use strict";Object.defineProperty(Ib,"__esModule",{value:!0});var Rb=tu(),Zr=it(),NW=Tt(),GW=mm(),FW={message:({params:{i:e,j:t}})=>(0,Zr.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,Zr._)`{i: ${e}, j: ${t}}`},DW={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:FW,code(e){let{gen:t,data:r,$data:n,schema:i,parentSchema:o,schemaCode:a,it:s}=e;if(!n&&!i)return;let l=t.let("valid"),d=o.items?(0,Rb.getSchemaTypes)(o.items):[];e.block$data(l,u,(0,Zr._)`${a} === false`),e.ok(l);function u(){let m=t.let("i",(0,Zr._)`${r}.length`),h=t.let("j");e.setParams({i:m,j:h}),t.assign(l,!0),t.if((0,Zr._)`${m} > 1`,()=>(c()?f:p)(m,h))}function c(){return d.length>0&&!d.some(m=>m==="object"||m==="array")}function f(m,h){let _=t.name("item"),g=(0,Rb.checkDataTypes)(d,_,s.opts.strictNumbers,Rb.DataType.Wrong),b=t.const("indices",(0,Zr._)`{}`);t.for((0,Zr._)`;${m}--;`,()=>{t.let(_,(0,Zr._)`${r}[${m}]`),t.if(g,(0,Zr._)`continue`),d.length>1&&t.if((0,Zr._)`typeof ${_} == "string"`,(0,Zr._)`${_} += "_"`),t.if((0,Zr._)`typeof ${b}[${_}] == "number"`,()=>{t.assign(h,(0,Zr._)`${b}[${_}]`),e.error(),t.assign(l,!1).break()}).code((0,Zr._)`${b}[${_}] = ${m}`)})}function p(m,h){let _=(0,NW.useFunc)(t,GW.default),g=t.name("outer");t.label(g).for((0,Zr._)`;${m}--;`,()=>t.for((0,Zr._)`${h} = ${m}; ${h}--;`,()=>t.if((0,Zr._)`${_}(${r}[${m}], ${r}[${h}])`,()=>{e.error(),t.assign(l,!1).break(g)})))}}};Ib.default=DW});var zC=ce(Mb=>{"use strict";Object.defineProperty(Mb,"__esModule",{value:!0});var $b=it(),qW=Tt(),LW=mm(),UW={message:"must be equal to constant",params:({schemaCode:e})=>(0,$b._)`{allowedValue: ${e}}`},WW={keyword:"const",$data:!0,error:UW,code(e){let{gen:t,data:r,$data:n,schemaCode:i,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0,$b._)`!${(0,qW.useFunc)(t,LW.default)}(${r}, ${i})`):e.fail((0,$b._)`${o} !== ${r}`)}};Mb.default=WW});var NC=ce(jb=>{"use strict";Object.defineProperty(jb,"__esModule",{value:!0});var _u=it(),ZW=Tt(),VW=mm(),HW={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,_u._)`{allowedValues: ${e}}`},BW={keyword:"enum",schemaType:"array",$data:!0,error:HW,code(e){let{gen:t,data:r,$data:n,schema:i,schemaCode:o,it:a}=e;if(!n&&i.length===0)throw new Error("enum must have non-empty array");let s=i.length>=a.opts.loopEnum,l,d=()=>l??(l=(0,ZW.useFunc)(t,VW.default)),u;if(s||n)u=t.let("valid"),e.block$data(u,c);else{if(!Array.isArray(i))throw new Error("ajv implementation error");let p=t.const("vSchema",o);u=(0,_u.or)(...i.map((m,h)=>f(p,h)))}e.pass(u);function c(){t.assign(u,!1),t.forOf("v",o,p=>t.if((0,_u._)`${d()}(${r}, ${p})`,()=>t.assign(u,!0).break()))}function f(p,m){let h=i[m];return typeof h=="object"&&h!==null?(0,_u._)`${d()}(${r}, ${p}[${m}])`:(0,_u._)`${r} === ${h}`}}};jb.default=BW});var GC=ce(zb=>{"use strict";Object.defineProperty(zb,"__esModule",{value:!0});var KW=TC(),JW=AC(),YW=EC(),XW=PC(),QW=RC(),eZ=IC(),tZ=$C(),rZ=jC(),nZ=zC(),iZ=NC(),oZ=[KW.default,JW.default,YW.default,XW.default,QW.default,eZ.default,tZ.default,rZ.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},nZ.default,iZ.default];zb.default=oZ});var Gb=ce(gu=>{"use strict";Object.defineProperty(gu,"__esModule",{value:!0});gu.validateAdditionalItems=void 0;var Ja=it(),Nb=Tt(),aZ={message:({params:{len:e}})=>(0,Ja.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Ja._)`{limit: ${e}}`},sZ={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:aZ,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,Nb.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}FC(e,n)}};function FC(e,t){let{gen:r,schema:n,data:i,keyword:o,it:a}=e;a.items=!0;let s=r.const("len",(0,Ja._)`${i}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,Ja._)`${s} <= ${t.length}`);else if(typeof n=="object"&&!(0,Nb.alwaysValidSchema)(a,n)){let d=r.var("valid",(0,Ja._)`${s} <= ${t.length}`);r.if((0,Ja.not)(d),()=>l(d)),e.ok(d)}function l(d){r.forRange("i",t.length,s,u=>{e.subschema({keyword:o,dataProp:u,dataPropType:Nb.Type.Num},d),a.allErrors||r.if((0,Ja.not)(d),()=>r.break())})}}gu.validateAdditionalItems=FC;gu.default=sZ});var Fb=ce(yu=>{"use strict";Object.defineProperty(yu,"__esModule",{value:!0});yu.validateTuple=void 0;var DC=it(),pm=Tt(),lZ=Xn(),dZ={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return qC(e,"additionalItems",t);r.items=!0,!(0,pm.alwaysValidSchema)(r,t)&&e.ok((0,lZ.validateArray)(e))}};function qC(e,t,r=e.schema){let{gen:n,parentSchema:i,data:o,keyword:a,it:s}=e;u(i),s.opts.unevaluated&&r.length&&s.items!==!0&&(s.items=pm.mergeEvaluated.items(n,r.length,s.items));let l=n.name("valid"),d=n.const("len",(0,DC._)`${o}.length`);r.forEach((c,f)=>{(0,pm.alwaysValidSchema)(s,c)||(n.if((0,DC._)`${d} > ${f}`,()=>e.subschema({keyword:a,schemaProp:f,dataProp:f},l)),e.ok(l))});function u(c){let{opts:f,errSchemaPath:p}=s,m=r.length,h=m===c.minItems&&(m===c.maxItems||c[t]===!1);if(f.strictTuples&&!h){let _=`"${a}" is ${m}-tuple, but minItems or maxItems/${t} are not specified or different at path "${p}"`;(0,pm.checkStrictMode)(s,_,f.strictTuples)}}}yu.validateTuple=qC;yu.default=dZ});var LC=ce(Db=>{"use strict";Object.defineProperty(Db,"__esModule",{value:!0});var uZ=Fb(),cZ={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,uZ.validateTuple)(e,"items")};Db.default=cZ});var WC=ce(qb=>{"use strict";Object.defineProperty(qb,"__esModule",{value:!0});var UC=it(),fZ=Tt(),mZ=Xn(),pZ=Gb(),hZ={message:({params:{len:e}})=>(0,UC.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,UC._)`{limit: ${e}}`},_Z={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:hZ,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:i}=r;n.items=!0,!(0,fZ.alwaysValidSchema)(n,t)&&(i?(0,pZ.validateAdditionalItems)(e,i):e.ok((0,mZ.validateArray)(e)))}};qb.default=_Z});var ZC=ce(Lb=>{"use strict";Object.defineProperty(Lb,"__esModule",{value:!0});var ei=it(),hm=Tt(),gZ={message:({params:{min:e,max:t}})=>t===void 0?(0,ei.str)`must contain at least ${e} valid item(s)`:(0,ei.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,ei._)`{minContains: ${e}}`:(0,ei._)`{minContains: ${e}, maxContains: ${t}}`},yZ={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:gZ,code(e){let{gen:t,schema:r,parentSchema:n,data:i,it:o}=e,a,s,{minContains:l,maxContains:d}=n;o.opts.next?(a=l===void 0?1:l,s=d):a=1;let u=t.const("len",(0,ei._)`${i}.length`);if(e.setParams({min:a,max:s}),s===void 0&&a===0){(0,hm.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(s!==void 0&&a>s){(0,hm.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,hm.alwaysValidSchema)(o,r)){let h=(0,ei._)`${u} >= ${a}`;s!==void 0&&(h=(0,ei._)`${h} && ${u} <= ${s}`),e.pass(h);return}o.items=!0;let c=t.name("valid");s===void 0&&a===1?p(c,()=>t.if(c,()=>t.break())):a===0?(t.let(c,!0),s!==void 0&&t.if((0,ei._)`${i}.length > 0`,f)):(t.let(c,!1),f()),e.result(c,()=>e.reset());function f(){let h=t.name("_valid"),_=t.let("count",0);p(h,()=>t.if(h,()=>m(_)))}function p(h,_){t.forRange("i",0,u,g=>{e.subschema({keyword:"contains",dataProp:g,dataPropType:hm.Type.Num,compositeRule:!0},h),_()})}function m(h){t.code((0,ei._)`${h}++`),s===void 0?t.if((0,ei._)`${h} >= ${a}`,()=>t.assign(c,!0).break()):(t.if((0,ei._)`${h} > ${s}`,()=>t.assign(c,!1).break()),a===1?t.assign(c,!0):t.if((0,ei._)`${h} >= ${a}`,()=>t.assign(c,!0)))}}};Lb.default=yZ});var BC=ce(Fi=>{"use strict";Object.defineProperty(Fi,"__esModule",{value:!0});Fi.validateSchemaDeps=Fi.validatePropertyDeps=Fi.error=void 0;var Ub=it(),bZ=Tt(),bu=Xn();Fi.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,Ub.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,Ub._)`{property: ${e},
|
|
8
8
|
missingProperty: ${n},
|
|
9
9
|
depsCount: ${t},
|
|
10
|
-
deps: ${r}}`};var bZ={keyword:"dependencies",type:"object",schemaType:"object",error:Fi.error,code(e){let[t,r]=vZ(e);VC(e,t),HC(e,r)}};function vZ({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let i=Array.isArray(e[n])?t:r;i[n]=e[n]}return[t,r]}function VC(e,t=e.schema){let{gen:r,data:n,it:i}=e;if(Object.keys(t).length===0)return;let o=r.let("missing");for(let a in t){let s=t[a];if(s.length===0)continue;let l=(0,bu.propertyInData)(r,n,a,i.opts.ownProperties);e.setParams({property:a,depsCount:s.length,deps:s.join(", ")}),i.allErrors?r.if(l,()=>{for(let d of s)(0,bu.checkReportMissingProp)(e,d)}):(r.if((0,Ub._)`${l} && (${(0,bu.checkMissingProp)(e,s,o)})`),(0,bu.reportMissingProp)(e,o),r.else())}}Fi.validatePropertyDeps=VC;function HC(e,t=e.schema){let{gen:r,data:n,keyword:i,it:o}=e,a=r.name("valid");for(let s in t)(0,yZ.alwaysValidSchema)(o,t[s])||(r.if((0,bu.propertyInData)(r,n,s,o.opts.ownProperties),()=>{let l=e.subschema({keyword:i,schemaProp:s},a);e.mergeValidEvaluated(l,a)},()=>r.var(a,!0)),e.ok(a))}Fi.validateSchemaDeps=HC;Fi.default=bZ});var JC=ce(Wb=>{"use strict";Object.defineProperty(Wb,"__esModule",{value:!0});var KC=it(),SZ=Tt(),wZ={message:"property name must be valid",params:({params:e})=>(0,KC._)`{propertyName: ${e.propertyName}}`},kZ={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:wZ,code(e){let{gen:t,schema:r,data:n,it:i}=e;if((0,SZ.alwaysValidSchema)(i,r))return;let o=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},o),t.if((0,KC.not)(o),()=>{e.error(!0),i.allErrors||t.break()})}),e.ok(o)}};Wb.default=kZ});var Vb=ce(Zb=>{"use strict";Object.defineProperty(Zb,"__esModule",{value:!0});var _m=Xn(),vi=it(),xZ=uo(),gm=Tt(),TZ={message:"must NOT have additional properties",params:({params:e})=>(0,vi._)`{additionalProperty: ${e.additionalProperty}}`},AZ={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:TZ,code(e){let{gen:t,schema:r,parentSchema:n,data:i,errsCount:o,it:a}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:s,opts:l}=a;if(a.props=!0,l.removeAdditional!=="all"&&(0,gm.alwaysValidSchema)(a,r))return;let d=(0,_m.allSchemaProperties)(n.properties),u=(0,_m.allSchemaProperties)(n.patternProperties);c(),e.ok((0,vi._)`${o} === ${xZ.default.errors}`);function c(){t.forIn("key",i,_=>{!d.length&&!u.length?m(_):t.if(f(_),()=>m(_))})}function f(_){let g;if(d.length>8){let b=(0,gm.schemaRefOrVal)(a,n.properties,"properties");g=(0,_m.isOwnProperty)(t,b,_)}else d.length?g=(0,vi.or)(...d.map(b=>(0,vi._)`${_} === ${b}`)):g=vi.nil;return u.length&&(g=(0,vi.or)(g,...u.map(b=>(0,vi._)`${(0,_m.usePattern)(e,b)}.test(${_})`))),(0,vi.not)(g)}function p(_){t.code((0,vi._)`delete ${i}[${_}]`)}function m(_){if(l.removeAdditional==="all"||l.removeAdditional&&r===!1){p(_);return}if(r===!1){e.setParams({additionalProperty:_}),e.error(),s||t.break();return}if(typeof r=="object"&&!(0,gm.alwaysValidSchema)(a,r)){let g=t.name("valid");l.removeAdditional==="failing"?(h(_,g,!1),t.if((0,vi.not)(g),()=>{e.reset(),p(_)})):(h(_,g),s||t.if((0,vi.not)(g),()=>t.break()))}}function h(_,g,b){let y={keyword:"additionalProperties",dataProp:_,dataPropType:gm.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(y,g)}}};Zb.default=AZ});var QC=ce(Bb=>{"use strict";Object.defineProperty(Bb,"__esModule",{value:!0});var OZ=ou(),YC=Xn(),Hb=Tt(),XC=Vb(),CZ={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:i,it:o}=e;o.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&XC.default.code(new OZ.KeywordCxt(o,XC.default,"additionalProperties"));let a=(0,YC.allSchemaProperties)(r);for(let c of a)o.definedProperties.add(c);o.opts.unevaluated&&a.length&&o.props!==!0&&(o.props=Hb.mergeEvaluated.props(t,(0,Hb.toHash)(a),o.props));let s=a.filter(c=>!(0,Hb.alwaysValidSchema)(o,r[c]));if(s.length===0)return;let l=t.name("valid");for(let c of s)d(c)?u(c):(t.if((0,YC.propertyInData)(t,i,c,o.opts.ownProperties)),u(c),o.allErrors||t.else().var(l,!0),t.endIf()),e.it.definedProperties.add(c),e.ok(l);function d(c){return o.opts.useDefaults&&!o.compositeRule&&r[c].default!==void 0}function u(c){e.subschema({keyword:"properties",schemaProp:c,dataProp:c},l)}}};Bb.default=CZ});var nE=ce(Kb=>{"use strict";Object.defineProperty(Kb,"__esModule",{value:!0});var eE=Xn(),ym=it(),tE=Tt(),rE=Tt(),EZ={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:i,it:o}=e,{opts:a}=o,s=(0,eE.allSchemaProperties)(r),l=s.filter(h=>(0,tE.alwaysValidSchema)(o,r[h]));if(s.length===0||l.length===s.length&&(!o.opts.unevaluated||o.props===!0))return;let d=a.strictSchema&&!a.allowMatchingProperties&&i.properties,u=t.name("valid");o.props!==!0&&!(o.props instanceof ym.Name)&&(o.props=(0,rE.evaluatedPropsToName)(t,o.props));let{props:c}=o;f();function f(){for(let h of s)d&&p(h),o.allErrors?m(h):(t.var(u,!0),m(h),t.if(u))}function p(h){for(let _ in d)new RegExp(h).test(_)&&(0,tE.checkStrictMode)(o,`property ${_} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){t.forIn("key",n,_=>{t.if((0,ym._)`${(0,eE.usePattern)(e,h)}.test(${_})`,()=>{let g=l.includes(h);g||e.subschema({keyword:"patternProperties",schemaProp:h,dataProp:_,dataPropType:rE.Type.Str},u),o.opts.unevaluated&&c!==!0?t.assign((0,ym._)`${c}[${_}]`,!0):!g&&!o.allErrors&&t.if((0,ym.not)(u),()=>t.break())})})}}};Kb.default=EZ});var iE=ce(Jb=>{"use strict";Object.defineProperty(Jb,"__esModule",{value:!0});var PZ=Tt(),RZ={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,PZ.alwaysValidSchema)(n,r)){e.fail();return}let i=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},i),e.failResult(i,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};Jb.default=RZ});var oE=ce(Yb=>{"use strict";Object.defineProperty(Yb,"__esModule",{value:!0});var IZ=Xn(),$Z={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:IZ.validateUnion,error:{message:"must match a schema in anyOf"}};Yb.default=$Z});var aE=ce(Xb=>{"use strict";Object.defineProperty(Xb,"__esModule",{value:!0});var bm=it(),MZ=Tt(),jZ={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,bm._)`{passingSchemas: ${e.passing}}`},zZ={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:jZ,code(e){let{gen:t,schema:r,parentSchema:n,it:i}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(i.opts.discriminator&&n.discriminator)return;let o=r,a=t.let("valid",!1),s=t.let("passing",null),l=t.name("_valid");e.setParams({passing:s}),t.block(d),e.result(a,()=>e.reset(),()=>e.error(!0));function d(){o.forEach((u,c)=>{let f;(0,MZ.alwaysValidSchema)(i,u)?t.var(l,!0):f=e.subschema({keyword:"oneOf",schemaProp:c,compositeRule:!0},l),c>0&&t.if((0,bm._)`${l} && ${a}`).assign(a,!1).assign(s,(0,bm._)`[${s}, ${c}]`).else(),t.if(l,()=>{t.assign(a,!0),t.assign(s,c),f&&e.mergeEvaluated(f,bm.Name)})})}}};Xb.default=zZ});var sE=ce(Qb=>{"use strict";Object.defineProperty(Qb,"__esModule",{value:!0});var NZ=Tt(),GZ={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let i=t.name("valid");r.forEach((o,a)=>{if((0,NZ.alwaysValidSchema)(n,o))return;let s=e.subschema({keyword:"allOf",schemaProp:a},i);e.ok(i),e.mergeEvaluated(s)})}};Qb.default=GZ});var uE=ce(ev=>{"use strict";Object.defineProperty(ev,"__esModule",{value:!0});var vm=it(),dE=Tt(),FZ={message:({params:e})=>(0,vm.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,vm._)`{failingKeyword: ${e.ifClause}}`},DZ={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:FZ,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,dE.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let i=lE(n,"then"),o=lE(n,"else");if(!i&&!o)return;let a=t.let("valid",!0),s=t.name("_valid");if(l(),e.reset(),i&&o){let u=t.let("ifClause");e.setParams({ifClause:u}),t.if(s,d("then",u),d("else",u))}else i?t.if(s,d("then")):t.if((0,vm.not)(s),d("else"));e.pass(a,()=>e.error(!0));function l(){let u=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},s);e.mergeEvaluated(u)}function d(u,c){return()=>{let f=e.subschema({keyword:u},s);t.assign(a,s),e.mergeValidEvaluated(f,a),c?t.assign(c,(0,vm._)`${u}`):e.setParams({ifClause:u})}}}};function lE(e,t){let r=e.schema[t];return r!==void 0&&!(0,dE.alwaysValidSchema)(e,r)}ev.default=DZ});var cE=ce(tv=>{"use strict";Object.defineProperty(tv,"__esModule",{value:!0});var qZ=Tt(),LZ={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,qZ.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};tv.default=LZ});var fE=ce(rv=>{"use strict";Object.defineProperty(rv,"__esModule",{value:!0});var UZ=Gb(),WZ=LC(),ZZ=Fb(),VZ=WC(),HZ=ZC(),BZ=BC(),KZ=JC(),JZ=Vb(),YZ=QC(),XZ=nE(),QZ=iE(),eV=oE(),tV=aE(),rV=sE(),nV=uE(),iV=cE();function oV(e=!1){let t=[QZ.default,eV.default,tV.default,rV.default,nV.default,iV.default,KZ.default,JZ.default,BZ.default,YZ.default,XZ.default];return e?t.push(WZ.default,VZ.default):t.push(UZ.default,ZZ.default),t.push(HZ.default),t}rv.default=oV});var mE=ce(nv=>{"use strict";Object.defineProperty(nv,"__esModule",{value:!0});var Ar=it(),aV={message:({schemaCode:e})=>(0,Ar.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,Ar._)`{format: ${e}}`},sV={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:aV,code(e,t){let{gen:r,data:n,$data:i,schema:o,schemaCode:a,it:s}=e,{opts:l,errSchemaPath:d,schemaEnv:u,self:c}=s;if(!l.validateFormats)return;i?f():p();function f(){let m=r.scopeValue("formats",{ref:c.formats,code:l.code.formats}),h=r.const("fDef",(0,Ar._)`${m}[${a}]`),_=r.let("fType"),g=r.let("format");r.if((0,Ar._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(_,(0,Ar._)`${h}.type || "string"`).assign(g,(0,Ar._)`${h}.validate`),()=>r.assign(_,(0,Ar._)`"string"`).assign(g,h)),e.fail$data((0,Ar.or)(b(),y()));function b(){return l.strictSchema===!1?Ar.nil:(0,Ar._)`${a} && !${g}`}function y(){let v=u.$async?(0,Ar._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,Ar._)`${g}(${n})`,S=(0,Ar._)`(typeof ${g} == "function" ? ${v} : ${g}.test(${n}))`;return(0,Ar._)`${g} && ${g} !== true && ${_} === ${t} && !${S}`}}function p(){let m=c.formats[o];if(!m){b();return}if(m===!0)return;let[h,_,g]=y(m);h===t&&e.pass(v());function b(){if(l.strictSchema===!1){c.logger.warn(S());return}throw new Error(S());function S(){return`unknown format "${o}" ignored in schema at path "${d}"`}}function y(S){let A=S instanceof RegExp?(0,Ar.regexpCode)(S):l.code.formats?(0,Ar._)`${l.code.formats}${(0,Ar.getProperty)(o)}`:void 0,R=r.scopeValue("formats",{key:o,ref:S,code:A});return typeof S=="object"&&!(S instanceof RegExp)?[S.type||"string",S.validate,(0,Ar._)`${R}.validate`]:["string",S,R]}function v(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!u.$async)throw new Error("async format in sync schema");return(0,Ar._)`await ${g}(${n})`}return typeof _=="function"?(0,Ar._)`${g}(${n})`:(0,Ar._)`${g}.test(${n})`}}}};nv.default=sV});var pE=ce(iv=>{"use strict";Object.defineProperty(iv,"__esModule",{value:!0});var lV=mE(),dV=[lV.default];iv.default=dV});var hE=ce(ml=>{"use strict";Object.defineProperty(ml,"__esModule",{value:!0});ml.contentVocabulary=ml.metadataVocabulary=void 0;ml.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];ml.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var gE=ce(ov=>{"use strict";Object.defineProperty(ov,"__esModule",{value:!0});var uV=xC(),cV=GC(),fV=fE(),mV=pE(),_E=hE(),pV=[uV.default,cV.default,(0,fV.default)(),mV.default,_E.metadataVocabulary,_E.contentVocabulary];ov.default=pV});var bE=ce(Sm=>{"use strict";Object.defineProperty(Sm,"__esModule",{value:!0});Sm.DiscrError=void 0;var yE;(function(e){e.Tag="tag",e.Mapping="mapping"})(yE||(Sm.DiscrError=yE={}))});var SE=ce(sv=>{"use strict";Object.defineProperty(sv,"__esModule",{value:!0});var pl=it(),av=bE(),vE=rm(),hV=au(),_V=Tt(),gV={message:({params:{discrError:e,tagName:t}})=>e===av.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,pl._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},yV={keyword:"discriminator",type:"object",schemaType:"object",error:gV,code(e){let{gen:t,data:r,schema:n,parentSchema:i,it:o}=e,{oneOf:a}=i;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let s=n.propertyName;if(typeof s!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let l=t.let("valid",!1),d=t.const("tag",(0,pl._)`${r}${(0,pl.getProperty)(s)}`);t.if((0,pl._)`typeof ${d} == "string"`,()=>u(),()=>e.error(!1,{discrError:av.DiscrError.Tag,tag:d,tagName:s})),e.ok(l);function u(){let p=f();t.if(!1);for(let m in p)t.elseIf((0,pl._)`${d} === ${m}`),t.assign(l,c(p[m]));t.else(),e.error(!1,{discrError:av.DiscrError.Mapping,tag:d,tagName:s}),t.endIf()}function c(p){let m=t.name("valid"),h=e.subschema({keyword:"oneOf",schemaProp:p},m);return e.mergeEvaluated(h,pl.Name),m}function f(){var p;let m={},h=g(i),_=!0;for(let v=0;v<a.length;v++){let S=a[v];if(S?.$ref&&!(0,_V.schemaHasRulesButRef)(S,o.self.RULES)){let R=S.$ref;if(S=vE.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,R),S instanceof vE.SchemaEnv&&(S=S.schema),S===void 0)throw new hV.default(o.opts.uriResolver,o.baseId,R)}let A=(p=S?.properties)===null||p===void 0?void 0:p[s];if(typeof A!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${s}"`);_=_&&(h||g(S)),b(A,v)}if(!_)throw new Error(`discriminator: "${s}" must be required`);return m;function g({required:v}){return Array.isArray(v)&&v.includes(s)}function b(v,S){if(v.const)y(v.const,S);else if(v.enum)for(let A of v.enum)y(A,S);else throw new Error(`discriminator: "properties/${s}" must have "const" or "enum"`)}function y(v,S){if(typeof v!="string"||v in m)throw new Error(`discriminator: "${s}" values must be unique strings`);m[v]=S}}}};sv.default=yV});var wE=ce((Vte,bV)=>{bV.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var dv=ce((ir,lv)=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.MissingRefError=ir.ValidationError=ir.CodeGen=ir.Name=ir.nil=ir.stringify=ir.str=ir._=ir.KeywordCxt=ir.Ajv=void 0;var vV=yC(),SV=gE(),wV=SE(),kE=wE(),kV=["/properties"],wm="http://json-schema.org/draft-07/schema",hl=class extends vV.default{_addVocabularies(){super._addVocabularies(),SV.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(wV.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(kE,kV):kE;this.addMetaSchema(t,wm,!1),this.refs["http://json-schema.org/schema"]=wm}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(wm)?wm:void 0)}};ir.Ajv=hl;lv.exports=ir=hl;lv.exports.Ajv=hl;Object.defineProperty(ir,"__esModule",{value:!0});ir.default=hl;var xV=ou();Object.defineProperty(ir,"KeywordCxt",{enumerable:!0,get:function(){return xV.KeywordCxt}});var _l=it();Object.defineProperty(ir,"_",{enumerable:!0,get:function(){return _l._}});Object.defineProperty(ir,"str",{enumerable:!0,get:function(){return _l.str}});Object.defineProperty(ir,"stringify",{enumerable:!0,get:function(){return _l.stringify}});Object.defineProperty(ir,"nil",{enumerable:!0,get:function(){return _l.nil}});Object.defineProperty(ir,"Name",{enumerable:!0,get:function(){return _l.Name}});Object.defineProperty(ir,"CodeGen",{enumerable:!0,get:function(){return _l.CodeGen}});var TV=em();Object.defineProperty(ir,"ValidationError",{enumerable:!0,get:function(){return TV.default}});var AV=au();Object.defineProperty(ir,"MissingRefError",{enumerable:!0,get:function(){return AV.default}})});var RE=ce(qi=>{"use strict";Object.defineProperty(qi,"__esModule",{value:!0});qi.formatNames=qi.fastFormats=qi.fullFormats=void 0;function Di(e,t){return{validate:e,compare:t}}qi.fullFormats={date:Di(OE,mv),time:Di(cv(!0),pv),"date-time":Di(xE(!0),EE),"iso-time":Di(cv(),CE),"iso-date-time":Di(xE(),PE),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:IV,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:FV,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:$V,int32:{type:"number",validate:zV},int64:{type:"number",validate:NV},float:{type:"number",validate:AE},double:{type:"number",validate:AE},password:!0,binary:!0};qi.fastFormats={...qi.fullFormats,date:Di(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,mv),time:Di(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,pv),"date-time":Di(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,EE),"iso-time":Di(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,CE),"iso-date-time":Di(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,PE),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};qi.formatNames=Object.keys(qi.fullFormats);function OV(e){return e%4===0&&(e%100!==0||e%400===0)}var CV=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,EV=[0,31,28,31,30,31,30,31,31,30,31,30,31];function OE(e){let t=CV.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],i=+t[3];return n>=1&&n<=12&&i>=1&&i<=(n===2&&OV(r)?29:EV[n])}function mv(e,t){if(e&&t)return e>t?1:e<t?-1:0}var uv=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function cv(e){return function(r){let n=uv.exec(r);if(!n)return!1;let i=+n[1],o=+n[2],a=+n[3],s=n[4],l=n[5]==="-"?-1:1,d=+(n[6]||0),u=+(n[7]||0);if(d>23||u>59||e&&!s)return!1;if(i<=23&&o<=59&&a<60)return!0;let c=o-u*l,f=i-d*l-(c<0?1:0);return(f===23||f===-1)&&(c===59||c===-1)&&a<61}}function pv(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(r&&n)return r-n}function CE(e,t){if(!(e&&t))return;let r=uv.exec(e),n=uv.exec(t);if(r&&n)return e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t?1:e<t?-1:0}var fv=/t|\s/i;function xE(e){let t=cv(e);return function(n){let i=n.split(fv);return i.length===2&&OE(i[0])&&t(i[1])}}function EE(e,t){if(!(e&&t))return;let r=new Date(e).valueOf(),n=new Date(t).valueOf();if(r&&n)return r-n}function PE(e,t){if(!(e&&t))return;let[r,n]=e.split(fv),[i,o]=t.split(fv),a=mv(r,i);if(a!==void 0)return a||pv(n,o)}var PV=/\/|:/,RV=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function IV(e){return PV.test(e)&&RV.test(e)}var TE=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function $V(e){return TE.lastIndex=0,TE.test(e)}var MV=-(2**31),jV=2**31-1;function zV(e){return Number.isInteger(e)&&e<=jV&&e>=MV}function NV(e){return Number.isInteger(e)}function AE(){return!0}var GV=/[^\\]\\Z/;function FV(e){if(GV.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var IE=ce(gl=>{"use strict";Object.defineProperty(gl,"__esModule",{value:!0});gl.formatLimitDefinition=void 0;var DV=dv(),Si=it(),Uo=Si.operators,km={formatMaximum:{okStr:"<=",ok:Uo.LTE,fail:Uo.GT},formatMinimum:{okStr:">=",ok:Uo.GTE,fail:Uo.LT},formatExclusiveMaximum:{okStr:"<",ok:Uo.LT,fail:Uo.GTE},formatExclusiveMinimum:{okStr:">",ok:Uo.GT,fail:Uo.LTE}},qV={message:({keyword:e,schemaCode:t})=>(0,Si.str)`should be ${km[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,Si._)`{comparison: ${km[e].okStr}, limit: ${t}}`};gl.formatLimitDefinition={keyword:Object.keys(km),type:"string",schemaType:"string",$data:!0,error:qV,code(e){let{gen:t,data:r,schemaCode:n,keyword:i,it:o}=e,{opts:a,self:s}=o;if(!a.validateFormats)return;let l=new DV.KeywordCxt(o,s.RULES.all.format.definition,"format");l.$data?d():u();function d(){let f=t.scopeValue("formats",{ref:s.formats,code:a.code.formats}),p=t.const("fmt",(0,Si._)`${f}[${l.schemaCode}]`);e.fail$data((0,Si.or)((0,Si._)`typeof ${p} != "object"`,(0,Si._)`${p} instanceof RegExp`,(0,Si._)`typeof ${p}.compare != "function"`,c(p)))}function u(){let f=l.schema,p=s.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${i}": format "${f}" does not define "compare" function`);let m=t.scopeValue("formats",{key:f,ref:p,code:a.code.formats?(0,Si._)`${a.code.formats}${(0,Si.getProperty)(f)}`:void 0});e.fail$data(c(m))}function c(f){return(0,Si._)`${f}.compare(${r}, ${n}) ${km[i].fail} 0`}},dependencies:["format"]};var LV=e=>(e.addKeyword(gl.formatLimitDefinition),e);gl.default=LV});var zE=ce((vu,jE)=>{"use strict";Object.defineProperty(vu,"__esModule",{value:!0});var yl=RE(),UV=IE(),hv=it(),$E=new hv.Name("fullFormats"),WV=new hv.Name("fastFormats"),_v=(e,t={keywords:!0})=>{if(Array.isArray(t))return ME(e,t,yl.fullFormats,$E),e;let[r,n]=t.mode==="fast"?[yl.fastFormats,WV]:[yl.fullFormats,$E],i=t.formats||yl.formatNames;return ME(e,i,r,n),t.keywords&&(0,UV.default)(e),e};_v.get=(e,t="full")=>{let n=(t==="fast"?yl.fastFormats:yl.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function ME(e,t,r,n){var i,o;(i=(o=e.opts.code).formats)!==null&&i!==void 0||(o.formats=(0,hv._)`require("ajv-formats/dist/formats").${n}`);for(let a of t)e.addFormat(a,r[a])}jE.exports=vu=_v;Object.defineProperty(vu,"__esModule",{value:!0});vu.default=_v});import*as Rj from"node:fs";import*as Ij from"node:path";function fr(e,t){delete e[t]}var Aw=((e,t)=>{for(var r in e)t(e[r],r)});function Xu(e,t){return e<t?-1:e===t?0:1}function Ze(e){return e===void 0?{BS_PRIVATE_NESTED_SOME_NONE:0}:e!==null&&e.BS_PRIVATE_NESTED_SOME_NONE!==void 0?{BS_PRIVATE_NESTED_SOME_NONE:e.BS_PRIVATE_NESTED_SOME_NONE+1|0}:e}function Yt(e){if(e!=null)return Ze(e)}function ue(e){if(e===null||e.BS_PRIVATE_NESTED_SOME_NONE===void 0)return e;let t=e.BS_PRIVATE_NESTED_SOME_NONE;if(t!==0)return{BS_PRIVATE_NESTED_SOME_NONE:t-1|0}}function ia(e,t){let r=e.indexOf(t);if(r!==-1)return r}function Ve(e,t,r){return e.reduce(r,t)}function ec(e,t){let r=e.findIndex(t);if(r!==-1)return r}function $e(e,t){let r=e.length,n=new Array(r),i=0;for(let o=0;o<r;++o){let a=e[o],s=t(a);s!==void 0&&(n[i]=ue(s),i=i+1|0)}return n.length=i,n}import*as rt from"node:fs";import*as Rw from"node:buffer";import*as ic from"node:crypto";function Sr(e){if(e.RE_EXN_ID==="JsExn")return Ze(e._1)}var tc=(e=>t=>t&&typeof t[e]=="string"?t[e]:void 0),Ow=tc("stack"),Er=tc("message"),a5=tc("name"),s5=tc("fileName");function rc(e,t){if(e!==void 0&&t(ue(e)))return e}function rn(e,t,r){return e!==void 0?r(ue(e)):t}function G(e,t){if(e!==void 0)return Ze(t(ue(e)))}function k(e,t){if(e!==void 0)return t(ue(e))}function x(e,t){return e!==void 0?ue(e):t}function cs(e,t){return e!==void 0?e:t}function Dt(e){return e!==void 0}function mn(e){return e===void 0}function fs(e,t){return e===t?0:e<t?-1:1}var Ew=(function(e,t){for(var r in e)t(r)});function de(e,t){if(e===t)return!0;let r=typeof e;if(r==="string"||r==="number"||r==="bigint"||r==="boolean"||r==="undefined"||e===null)return!1;let n=typeof t;if(r==="function"||n==="function")throw{RE_EXN_ID:"Invalid_argument",_1:"equal: functional value",Error:new Error};if(n==="number"||n==="bigint"||n==="undefined"||t===null)return!1;let i=e.TAG,o=t.TAG;if(i!==o)return!1;let a=e.length|0,s=t.length|0;if(a===s)if(Array.isArray(e)){let l=0;for(;;){let d=l;if(d===a)return!0;if(!de(e[d],t[d]))return!1;l=d+1|0}}else{if(e instanceof Date&&t instanceof Date)return!(e>t||e<t);{let l={contents:!0},d=c=>{if(!Object.prototype.hasOwnProperty.call(t,c)){l.contents=!1;return}},u=c=>{if(!Object.prototype.hasOwnProperty.call(e,c)||!de(t[c],e[c])){l.contents=!1;return}};return Ew(e,d),l.contents&&Ew(t,u),l.contents}}else return!1}function nn(e,t){return(typeof e=="number"||typeof e=="bigint")&&(typeof t=="number"||typeof t=="bigint")?e!==t:!de(e,t)}import*as ms from"node:fs/promises";import*as Iw from"node:child_process";function Uj(e){return e==null?!1:typeof e.RE_EXN_ID=="string"}function ee(e){return Uj(e)?e:{RE_EXN_ID:"JsExn",_1:e}}var Fp={};function Pw(e){let t=Fp[e];if(t!==void 0){let r=t+1|0;return Fp[e]=r,e+("/"+r)}return Fp[e]=1,e}function Ne(e){let t=Sr(e);if(t===void 0)return{code:void 0,message:"unknown error"};let r=ue(t);return{code:Yt(r.code),message:x(Er(r),"unknown error")}}function si(e,t){return de(e.code,t)}function Qt(e){try{return{TAG:"Ok",_0:rt.readFileSync(e,"utf8")}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function Ti(e,t){try{return{TAG:"Ok",_0:(rt.writeFileSync(e,t,"utf8"),void 0)}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function yo(e,t,r){try{return{TAG:"Ok",_0:(rt.writeFileSync(e,t,r),void 0)}}catch(n){let i=ee(n);return{TAG:"Error",_0:Ne(i)}}}function qt(e){try{return{TAG:"Ok",_0:(rt.mkdirSync(e,{recursive:!0}),void 0)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function ps(e,t){try{return{TAG:"Ok",_0:(rt.chmodSync(e,t),void 0)}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function $w(e,t){try{return{TAG:"Ok",_0:(rt.linkSync(e,t),void 0)}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function Mw(e){try{return{TAG:"Ok",_0:(rt.unlinkSync(e),void 0)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function li(e,t){try{return{TAG:"Ok",_0:(rt.renameSync(e,t),void 0)}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function pn(e){try{return{TAG:"Ok",_0:(rt.rmSync(e,{force:!0}),void 0)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function Dp(e){try{return{TAG:"Ok",_0:(rt.rmSync(e,{force:!0,recursive:!0}),void 0)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function Dn(e){try{return{TAG:"Ok",_0:rt.realpathSync(e)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function jw(e){try{return{TAG:"Ok",_0:rt.mkdtempSync(e)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function zw(e,t,r,n){try{let i=rt.openSync(e,"w");try{rt.writeFileSync(i,n,"utf8"),rt.fsyncSync(i),rt.closeSync(i)}catch(a){throw rt.closeSync(i),a}rt.renameSync(e,t);let o=rt.openSync(r,"r");try{rt.fsyncSync(o),rt.closeSync(o)}catch(a){throw rt.closeSync(o),a}return{TAG:"Ok",_0:void 0}}catch(i){let o=ee(i);return{TAG:"Error",_0:Ne(o)}}}function qn(e){return ic.createHash("sha256").update(e).digest("hex")}async function qp(e,t){try{return await ms.appendFile(e,t,"utf8"),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}async function Nw(e,t){try{return await ms.writeFile(e,t,"utf8"),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}async function Lp(e,t){try{return await ms.rename(e,t),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function oc(e){try{return ic.randomBytes(e).toString("hex")}catch{return""}}function hs(e){try{return{TAG:"Ok",_0:rt.readdirSync(e)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function _s(e,t,r,n){try{return{TAG:"Ok",_0:Iw.execFileSync(e,t,{encoding:"utf8",timeout:r,maxBuffer:n})}}catch(i){let o=ee(i);return{TAG:"Error",_0:Ne(o)}}}function mr(e){try{return process.stderr.write(e)}catch{return!1}}function oa(e,t){return e[t]}function Vi(e,t){try{return process.kill(e,t),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function Ln(e){try{return Ze(new URL(e))}catch{return}}function Gw(e){return e.keys().toArray()}function Hi(e,t){try{return{TAG:"Ok",_0:new URL(e,t)}}catch(r){let n=ee(r),i=Sr(n);return{TAG:"Error",_0:i!==void 0?x(Er(ue(i)),"unknown error"):"unknown error"}}}function Fw(e){return Rw.Buffer.from(e,"utf8").toString("base64url")}var Gr={};Gr["api-url"]="ValueKind";Gr.token="ValueKind";Gr["auth-file"]="ValueKind";Gr["delegation-auth-file"]="ValueKind";Gr.workspace="ValueKind";Gr.channel="ValueKind";Gr["owner-username"]="ValueKind";Gr.mode="ValueKind";Gr.cwd="ValueKind";Gr["thread-id"]="ValueKind";Gr.format="ValueKind";Gr.command="ValueKind";Gr["tool-scope"]="ValueKind";Gr["agent-session"]="BooleanKind";Gr["include-token"]="BooleanKind";Gr.help="BooleanKind";function ac(e){let t={},r,n=0;for(;r===void 0&&n<e.length;){let o=e[n];if(o!==void 0)if(o.startsWith("--")){let a=o.slice(2),s=Gr[a];if(s!==void 0)if(s==="ValueKind"){let l=e[n+1|0];l!==void 0?l.startsWith("--")?r="--"+a+" requires a value":(t[a]={TAG:"ValueFlag",_0:l},n=n+2|0):r="--"+a+" requires a value"}else t[a]="BoolFlag",n=n+1|0;else r="unsupported option --"+a}else r="unexpected argument "+o;else n=n+1|0}let i=r;return i!==void 0?{TAG:"Error",_0:i}:{TAG:"Ok",_0:t}}function wr(e,t){let r=e[t];if(r===void 0||typeof r!="object")return;let n=r._0;if(n.trim()!=="")return n}function sc(e,t){let r=e[t];return r!==void 0?typeof r!="object":!1}function lc(e,t){let r=wr(e,t);return r!==void 0?{TAG:"Ok",_0:r}:{TAG:"Error",_0:"--"+t+" is required"}}function dc(e){if(e===void 0)return{TAG:"Ok",_0:"Text"};switch(e){case"text":return{TAG:"Ok",_0:"Text"};case"voice":return{TAG:"Ok",_0:"Voice"};default:return{TAG:"Error",_0:"--mode must be voice or text"}}}function Up(e){if(e===void 0)return{TAG:"Ok",_0:"All"};switch(e){case"all":return{TAG:"Ok",_0:"All"};case"coding":return{TAG:"Ok",_0:"Coding"};case"onboarding-discovery":return{TAG:"Ok",_0:"OnboardingDiscovery"};default:return{TAG:"Error",_0:"--tool-scope must be all, coding, or onboarding-discovery"}}}function Dw(e){return e[0]==="mcp"?e.slice(1):e}function uc(){return`Linzumi MCP
|
|
10
|
+
deps: ${r}}`};var vZ={keyword:"dependencies",type:"object",schemaType:"object",error:Fi.error,code(e){let[t,r]=SZ(e);VC(e,t),HC(e,r)}};function SZ({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let i=Array.isArray(e[n])?t:r;i[n]=e[n]}return[t,r]}function VC(e,t=e.schema){let{gen:r,data:n,it:i}=e;if(Object.keys(t).length===0)return;let o=r.let("missing");for(let a in t){let s=t[a];if(s.length===0)continue;let l=(0,bu.propertyInData)(r,n,a,i.opts.ownProperties);e.setParams({property:a,depsCount:s.length,deps:s.join(", ")}),i.allErrors?r.if(l,()=>{for(let d of s)(0,bu.checkReportMissingProp)(e,d)}):(r.if((0,Ub._)`${l} && (${(0,bu.checkMissingProp)(e,s,o)})`),(0,bu.reportMissingProp)(e,o),r.else())}}Fi.validatePropertyDeps=VC;function HC(e,t=e.schema){let{gen:r,data:n,keyword:i,it:o}=e,a=r.name("valid");for(let s in t)(0,bZ.alwaysValidSchema)(o,t[s])||(r.if((0,bu.propertyInData)(r,n,s,o.opts.ownProperties),()=>{let l=e.subschema({keyword:i,schemaProp:s},a);e.mergeValidEvaluated(l,a)},()=>r.var(a,!0)),e.ok(a))}Fi.validateSchemaDeps=HC;Fi.default=vZ});var JC=ce(Wb=>{"use strict";Object.defineProperty(Wb,"__esModule",{value:!0});var KC=it(),wZ=Tt(),kZ={message:"property name must be valid",params:({params:e})=>(0,KC._)`{propertyName: ${e.propertyName}}`},xZ={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:kZ,code(e){let{gen:t,schema:r,data:n,it:i}=e;if((0,wZ.alwaysValidSchema)(i,r))return;let o=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},o),t.if((0,KC.not)(o),()=>{e.error(!0),i.allErrors||t.break()})}),e.ok(o)}};Wb.default=xZ});var Vb=ce(Zb=>{"use strict";Object.defineProperty(Zb,"__esModule",{value:!0});var _m=Xn(),vi=it(),TZ=uo(),gm=Tt(),AZ={message:"must NOT have additional properties",params:({params:e})=>(0,vi._)`{additionalProperty: ${e.additionalProperty}}`},OZ={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:AZ,code(e){let{gen:t,schema:r,parentSchema:n,data:i,errsCount:o,it:a}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:s,opts:l}=a;if(a.props=!0,l.removeAdditional!=="all"&&(0,gm.alwaysValidSchema)(a,r))return;let d=(0,_m.allSchemaProperties)(n.properties),u=(0,_m.allSchemaProperties)(n.patternProperties);c(),e.ok((0,vi._)`${o} === ${TZ.default.errors}`);function c(){t.forIn("key",i,_=>{!d.length&&!u.length?m(_):t.if(f(_),()=>m(_))})}function f(_){let g;if(d.length>8){let b=(0,gm.schemaRefOrVal)(a,n.properties,"properties");g=(0,_m.isOwnProperty)(t,b,_)}else d.length?g=(0,vi.or)(...d.map(b=>(0,vi._)`${_} === ${b}`)):g=vi.nil;return u.length&&(g=(0,vi.or)(g,...u.map(b=>(0,vi._)`${(0,_m.usePattern)(e,b)}.test(${_})`))),(0,vi.not)(g)}function p(_){t.code((0,vi._)`delete ${i}[${_}]`)}function m(_){if(l.removeAdditional==="all"||l.removeAdditional&&r===!1){p(_);return}if(r===!1){e.setParams({additionalProperty:_}),e.error(),s||t.break();return}if(typeof r=="object"&&!(0,gm.alwaysValidSchema)(a,r)){let g=t.name("valid");l.removeAdditional==="failing"?(h(_,g,!1),t.if((0,vi.not)(g),()=>{e.reset(),p(_)})):(h(_,g),s||t.if((0,vi.not)(g),()=>t.break()))}}function h(_,g,b){let y={keyword:"additionalProperties",dataProp:_,dataPropType:gm.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(y,g)}}};Zb.default=OZ});var QC=ce(Bb=>{"use strict";Object.defineProperty(Bb,"__esModule",{value:!0});var CZ=ou(),YC=Xn(),Hb=Tt(),XC=Vb(),EZ={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:i,it:o}=e;o.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&XC.default.code(new CZ.KeywordCxt(o,XC.default,"additionalProperties"));let a=(0,YC.allSchemaProperties)(r);for(let c of a)o.definedProperties.add(c);o.opts.unevaluated&&a.length&&o.props!==!0&&(o.props=Hb.mergeEvaluated.props(t,(0,Hb.toHash)(a),o.props));let s=a.filter(c=>!(0,Hb.alwaysValidSchema)(o,r[c]));if(s.length===0)return;let l=t.name("valid");for(let c of s)d(c)?u(c):(t.if((0,YC.propertyInData)(t,i,c,o.opts.ownProperties)),u(c),o.allErrors||t.else().var(l,!0),t.endIf()),e.it.definedProperties.add(c),e.ok(l);function d(c){return o.opts.useDefaults&&!o.compositeRule&&r[c].default!==void 0}function u(c){e.subschema({keyword:"properties",schemaProp:c,dataProp:c},l)}}};Bb.default=EZ});var nE=ce(Kb=>{"use strict";Object.defineProperty(Kb,"__esModule",{value:!0});var eE=Xn(),ym=it(),tE=Tt(),rE=Tt(),PZ={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:i,it:o}=e,{opts:a}=o,s=(0,eE.allSchemaProperties)(r),l=s.filter(h=>(0,tE.alwaysValidSchema)(o,r[h]));if(s.length===0||l.length===s.length&&(!o.opts.unevaluated||o.props===!0))return;let d=a.strictSchema&&!a.allowMatchingProperties&&i.properties,u=t.name("valid");o.props!==!0&&!(o.props instanceof ym.Name)&&(o.props=(0,rE.evaluatedPropsToName)(t,o.props));let{props:c}=o;f();function f(){for(let h of s)d&&p(h),o.allErrors?m(h):(t.var(u,!0),m(h),t.if(u))}function p(h){for(let _ in d)new RegExp(h).test(_)&&(0,tE.checkStrictMode)(o,`property ${_} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){t.forIn("key",n,_=>{t.if((0,ym._)`${(0,eE.usePattern)(e,h)}.test(${_})`,()=>{let g=l.includes(h);g||e.subschema({keyword:"patternProperties",schemaProp:h,dataProp:_,dataPropType:rE.Type.Str},u),o.opts.unevaluated&&c!==!0?t.assign((0,ym._)`${c}[${_}]`,!0):!g&&!o.allErrors&&t.if((0,ym.not)(u),()=>t.break())})})}}};Kb.default=PZ});var iE=ce(Jb=>{"use strict";Object.defineProperty(Jb,"__esModule",{value:!0});var RZ=Tt(),IZ={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,RZ.alwaysValidSchema)(n,r)){e.fail();return}let i=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},i),e.failResult(i,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};Jb.default=IZ});var oE=ce(Yb=>{"use strict";Object.defineProperty(Yb,"__esModule",{value:!0});var $Z=Xn(),MZ={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:$Z.validateUnion,error:{message:"must match a schema in anyOf"}};Yb.default=MZ});var aE=ce(Xb=>{"use strict";Object.defineProperty(Xb,"__esModule",{value:!0});var bm=it(),jZ=Tt(),zZ={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,bm._)`{passingSchemas: ${e.passing}}`},NZ={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:zZ,code(e){let{gen:t,schema:r,parentSchema:n,it:i}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(i.opts.discriminator&&n.discriminator)return;let o=r,a=t.let("valid",!1),s=t.let("passing",null),l=t.name("_valid");e.setParams({passing:s}),t.block(d),e.result(a,()=>e.reset(),()=>e.error(!0));function d(){o.forEach((u,c)=>{let f;(0,jZ.alwaysValidSchema)(i,u)?t.var(l,!0):f=e.subschema({keyword:"oneOf",schemaProp:c,compositeRule:!0},l),c>0&&t.if((0,bm._)`${l} && ${a}`).assign(a,!1).assign(s,(0,bm._)`[${s}, ${c}]`).else(),t.if(l,()=>{t.assign(a,!0),t.assign(s,c),f&&e.mergeEvaluated(f,bm.Name)})})}}};Xb.default=NZ});var sE=ce(Qb=>{"use strict";Object.defineProperty(Qb,"__esModule",{value:!0});var GZ=Tt(),FZ={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let i=t.name("valid");r.forEach((o,a)=>{if((0,GZ.alwaysValidSchema)(n,o))return;let s=e.subschema({keyword:"allOf",schemaProp:a},i);e.ok(i),e.mergeEvaluated(s)})}};Qb.default=FZ});var uE=ce(ev=>{"use strict";Object.defineProperty(ev,"__esModule",{value:!0});var vm=it(),dE=Tt(),DZ={message:({params:e})=>(0,vm.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,vm._)`{failingKeyword: ${e.ifClause}}`},qZ={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:DZ,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,dE.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let i=lE(n,"then"),o=lE(n,"else");if(!i&&!o)return;let a=t.let("valid",!0),s=t.name("_valid");if(l(),e.reset(),i&&o){let u=t.let("ifClause");e.setParams({ifClause:u}),t.if(s,d("then",u),d("else",u))}else i?t.if(s,d("then")):t.if((0,vm.not)(s),d("else"));e.pass(a,()=>e.error(!0));function l(){let u=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},s);e.mergeEvaluated(u)}function d(u,c){return()=>{let f=e.subschema({keyword:u},s);t.assign(a,s),e.mergeValidEvaluated(f,a),c?t.assign(c,(0,vm._)`${u}`):e.setParams({ifClause:u})}}}};function lE(e,t){let r=e.schema[t];return r!==void 0&&!(0,dE.alwaysValidSchema)(e,r)}ev.default=qZ});var cE=ce(tv=>{"use strict";Object.defineProperty(tv,"__esModule",{value:!0});var LZ=Tt(),UZ={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,LZ.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};tv.default=UZ});var fE=ce(rv=>{"use strict";Object.defineProperty(rv,"__esModule",{value:!0});var WZ=Gb(),ZZ=LC(),VZ=Fb(),HZ=WC(),BZ=ZC(),KZ=BC(),JZ=JC(),YZ=Vb(),XZ=QC(),QZ=nE(),eV=iE(),tV=oE(),rV=aE(),nV=sE(),iV=uE(),oV=cE();function aV(e=!1){let t=[eV.default,tV.default,rV.default,nV.default,iV.default,oV.default,JZ.default,YZ.default,KZ.default,XZ.default,QZ.default];return e?t.push(ZZ.default,HZ.default):t.push(WZ.default,VZ.default),t.push(BZ.default),t}rv.default=aV});var mE=ce(nv=>{"use strict";Object.defineProperty(nv,"__esModule",{value:!0});var Ar=it(),sV={message:({schemaCode:e})=>(0,Ar.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,Ar._)`{format: ${e}}`},lV={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:sV,code(e,t){let{gen:r,data:n,$data:i,schema:o,schemaCode:a,it:s}=e,{opts:l,errSchemaPath:d,schemaEnv:u,self:c}=s;if(!l.validateFormats)return;i?f():p();function f(){let m=r.scopeValue("formats",{ref:c.formats,code:l.code.formats}),h=r.const("fDef",(0,Ar._)`${m}[${a}]`),_=r.let("fType"),g=r.let("format");r.if((0,Ar._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(_,(0,Ar._)`${h}.type || "string"`).assign(g,(0,Ar._)`${h}.validate`),()=>r.assign(_,(0,Ar._)`"string"`).assign(g,h)),e.fail$data((0,Ar.or)(b(),y()));function b(){return l.strictSchema===!1?Ar.nil:(0,Ar._)`${a} && !${g}`}function y(){let v=u.$async?(0,Ar._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,Ar._)`${g}(${n})`,S=(0,Ar._)`(typeof ${g} == "function" ? ${v} : ${g}.test(${n}))`;return(0,Ar._)`${g} && ${g} !== true && ${_} === ${t} && !${S}`}}function p(){let m=c.formats[o];if(!m){b();return}if(m===!0)return;let[h,_,g]=y(m);h===t&&e.pass(v());function b(){if(l.strictSchema===!1){c.logger.warn(S());return}throw new Error(S());function S(){return`unknown format "${o}" ignored in schema at path "${d}"`}}function y(S){let A=S instanceof RegExp?(0,Ar.regexpCode)(S):l.code.formats?(0,Ar._)`${l.code.formats}${(0,Ar.getProperty)(o)}`:void 0,R=r.scopeValue("formats",{key:o,ref:S,code:A});return typeof S=="object"&&!(S instanceof RegExp)?[S.type||"string",S.validate,(0,Ar._)`${R}.validate`]:["string",S,R]}function v(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!u.$async)throw new Error("async format in sync schema");return(0,Ar._)`await ${g}(${n})`}return typeof _=="function"?(0,Ar._)`${g}(${n})`:(0,Ar._)`${g}.test(${n})`}}}};nv.default=lV});var pE=ce(iv=>{"use strict";Object.defineProperty(iv,"__esModule",{value:!0});var dV=mE(),uV=[dV.default];iv.default=uV});var hE=ce(ml=>{"use strict";Object.defineProperty(ml,"__esModule",{value:!0});ml.contentVocabulary=ml.metadataVocabulary=void 0;ml.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];ml.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var gE=ce(ov=>{"use strict";Object.defineProperty(ov,"__esModule",{value:!0});var cV=xC(),fV=GC(),mV=fE(),pV=pE(),_E=hE(),hV=[cV.default,fV.default,(0,mV.default)(),pV.default,_E.metadataVocabulary,_E.contentVocabulary];ov.default=hV});var bE=ce(Sm=>{"use strict";Object.defineProperty(Sm,"__esModule",{value:!0});Sm.DiscrError=void 0;var yE;(function(e){e.Tag="tag",e.Mapping="mapping"})(yE||(Sm.DiscrError=yE={}))});var SE=ce(sv=>{"use strict";Object.defineProperty(sv,"__esModule",{value:!0});var pl=it(),av=bE(),vE=rm(),_V=au(),gV=Tt(),yV={message:({params:{discrError:e,tagName:t}})=>e===av.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,pl._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},bV={keyword:"discriminator",type:"object",schemaType:"object",error:yV,code(e){let{gen:t,data:r,schema:n,parentSchema:i,it:o}=e,{oneOf:a}=i;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let s=n.propertyName;if(typeof s!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let l=t.let("valid",!1),d=t.const("tag",(0,pl._)`${r}${(0,pl.getProperty)(s)}`);t.if((0,pl._)`typeof ${d} == "string"`,()=>u(),()=>e.error(!1,{discrError:av.DiscrError.Tag,tag:d,tagName:s})),e.ok(l);function u(){let p=f();t.if(!1);for(let m in p)t.elseIf((0,pl._)`${d} === ${m}`),t.assign(l,c(p[m]));t.else(),e.error(!1,{discrError:av.DiscrError.Mapping,tag:d,tagName:s}),t.endIf()}function c(p){let m=t.name("valid"),h=e.subschema({keyword:"oneOf",schemaProp:p},m);return e.mergeEvaluated(h,pl.Name),m}function f(){var p;let m={},h=g(i),_=!0;for(let v=0;v<a.length;v++){let S=a[v];if(S?.$ref&&!(0,gV.schemaHasRulesButRef)(S,o.self.RULES)){let R=S.$ref;if(S=vE.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,R),S instanceof vE.SchemaEnv&&(S=S.schema),S===void 0)throw new _V.default(o.opts.uriResolver,o.baseId,R)}let A=(p=S?.properties)===null||p===void 0?void 0:p[s];if(typeof A!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${s}"`);_=_&&(h||g(S)),b(A,v)}if(!_)throw new Error(`discriminator: "${s}" must be required`);return m;function g({required:v}){return Array.isArray(v)&&v.includes(s)}function b(v,S){if(v.const)y(v.const,S);else if(v.enum)for(let A of v.enum)y(A,S);else throw new Error(`discriminator: "properties/${s}" must have "const" or "enum"`)}function y(v,S){if(typeof v!="string"||v in m)throw new Error(`discriminator: "${s}" values must be unique strings`);m[v]=S}}}};sv.default=bV});var wE=ce((Yte,vV)=>{vV.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var dv=ce((ir,lv)=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.MissingRefError=ir.ValidationError=ir.CodeGen=ir.Name=ir.nil=ir.stringify=ir.str=ir._=ir.KeywordCxt=ir.Ajv=void 0;var SV=yC(),wV=gE(),kV=SE(),kE=wE(),xV=["/properties"],wm="http://json-schema.org/draft-07/schema",hl=class extends SV.default{_addVocabularies(){super._addVocabularies(),wV.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(kV.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(kE,xV):kE;this.addMetaSchema(t,wm,!1),this.refs["http://json-schema.org/schema"]=wm}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(wm)?wm:void 0)}};ir.Ajv=hl;lv.exports=ir=hl;lv.exports.Ajv=hl;Object.defineProperty(ir,"__esModule",{value:!0});ir.default=hl;var TV=ou();Object.defineProperty(ir,"KeywordCxt",{enumerable:!0,get:function(){return TV.KeywordCxt}});var _l=it();Object.defineProperty(ir,"_",{enumerable:!0,get:function(){return _l._}});Object.defineProperty(ir,"str",{enumerable:!0,get:function(){return _l.str}});Object.defineProperty(ir,"stringify",{enumerable:!0,get:function(){return _l.stringify}});Object.defineProperty(ir,"nil",{enumerable:!0,get:function(){return _l.nil}});Object.defineProperty(ir,"Name",{enumerable:!0,get:function(){return _l.Name}});Object.defineProperty(ir,"CodeGen",{enumerable:!0,get:function(){return _l.CodeGen}});var AV=em();Object.defineProperty(ir,"ValidationError",{enumerable:!0,get:function(){return AV.default}});var OV=au();Object.defineProperty(ir,"MissingRefError",{enumerable:!0,get:function(){return OV.default}})});var RE=ce(qi=>{"use strict";Object.defineProperty(qi,"__esModule",{value:!0});qi.formatNames=qi.fastFormats=qi.fullFormats=void 0;function Di(e,t){return{validate:e,compare:t}}qi.fullFormats={date:Di(OE,mv),time:Di(cv(!0),pv),"date-time":Di(xE(!0),EE),"iso-time":Di(cv(),CE),"iso-date-time":Di(xE(),PE),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:$V,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:DV,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:MV,int32:{type:"number",validate:NV},int64:{type:"number",validate:GV},float:{type:"number",validate:AE},double:{type:"number",validate:AE},password:!0,binary:!0};qi.fastFormats={...qi.fullFormats,date:Di(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,mv),time:Di(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,pv),"date-time":Di(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,EE),"iso-time":Di(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,CE),"iso-date-time":Di(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,PE),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};qi.formatNames=Object.keys(qi.fullFormats);function CV(e){return e%4===0&&(e%100!==0||e%400===0)}var EV=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,PV=[0,31,28,31,30,31,30,31,31,30,31,30,31];function OE(e){let t=EV.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],i=+t[3];return n>=1&&n<=12&&i>=1&&i<=(n===2&&CV(r)?29:PV[n])}function mv(e,t){if(e&&t)return e>t?1:e<t?-1:0}var uv=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function cv(e){return function(r){let n=uv.exec(r);if(!n)return!1;let i=+n[1],o=+n[2],a=+n[3],s=n[4],l=n[5]==="-"?-1:1,d=+(n[6]||0),u=+(n[7]||0);if(d>23||u>59||e&&!s)return!1;if(i<=23&&o<=59&&a<60)return!0;let c=o-u*l,f=i-d*l-(c<0?1:0);return(f===23||f===-1)&&(c===59||c===-1)&&a<61}}function pv(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(r&&n)return r-n}function CE(e,t){if(!(e&&t))return;let r=uv.exec(e),n=uv.exec(t);if(r&&n)return e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t?1:e<t?-1:0}var fv=/t|\s/i;function xE(e){let t=cv(e);return function(n){let i=n.split(fv);return i.length===2&&OE(i[0])&&t(i[1])}}function EE(e,t){if(!(e&&t))return;let r=new Date(e).valueOf(),n=new Date(t).valueOf();if(r&&n)return r-n}function PE(e,t){if(!(e&&t))return;let[r,n]=e.split(fv),[i,o]=t.split(fv),a=mv(r,i);if(a!==void 0)return a||pv(n,o)}var RV=/\/|:/,IV=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function $V(e){return RV.test(e)&&IV.test(e)}var TE=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function MV(e){return TE.lastIndex=0,TE.test(e)}var jV=-(2**31),zV=2**31-1;function NV(e){return Number.isInteger(e)&&e<=zV&&e>=jV}function GV(e){return Number.isInteger(e)}function AE(){return!0}var FV=/[^\\]\\Z/;function DV(e){if(FV.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var IE=ce(gl=>{"use strict";Object.defineProperty(gl,"__esModule",{value:!0});gl.formatLimitDefinition=void 0;var qV=dv(),Si=it(),Uo=Si.operators,km={formatMaximum:{okStr:"<=",ok:Uo.LTE,fail:Uo.GT},formatMinimum:{okStr:">=",ok:Uo.GTE,fail:Uo.LT},formatExclusiveMaximum:{okStr:"<",ok:Uo.LT,fail:Uo.GTE},formatExclusiveMinimum:{okStr:">",ok:Uo.GT,fail:Uo.LTE}},LV={message:({keyword:e,schemaCode:t})=>(0,Si.str)`should be ${km[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,Si._)`{comparison: ${km[e].okStr}, limit: ${t}}`};gl.formatLimitDefinition={keyword:Object.keys(km),type:"string",schemaType:"string",$data:!0,error:LV,code(e){let{gen:t,data:r,schemaCode:n,keyword:i,it:o}=e,{opts:a,self:s}=o;if(!a.validateFormats)return;let l=new qV.KeywordCxt(o,s.RULES.all.format.definition,"format");l.$data?d():u();function d(){let f=t.scopeValue("formats",{ref:s.formats,code:a.code.formats}),p=t.const("fmt",(0,Si._)`${f}[${l.schemaCode}]`);e.fail$data((0,Si.or)((0,Si._)`typeof ${p} != "object"`,(0,Si._)`${p} instanceof RegExp`,(0,Si._)`typeof ${p}.compare != "function"`,c(p)))}function u(){let f=l.schema,p=s.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${i}": format "${f}" does not define "compare" function`);let m=t.scopeValue("formats",{key:f,ref:p,code:a.code.formats?(0,Si._)`${a.code.formats}${(0,Si.getProperty)(f)}`:void 0});e.fail$data(c(m))}function c(f){return(0,Si._)`${f}.compare(${r}, ${n}) ${km[i].fail} 0`}},dependencies:["format"]};var UV=e=>(e.addKeyword(gl.formatLimitDefinition),e);gl.default=UV});var zE=ce((vu,jE)=>{"use strict";Object.defineProperty(vu,"__esModule",{value:!0});var yl=RE(),WV=IE(),hv=it(),$E=new hv.Name("fullFormats"),ZV=new hv.Name("fastFormats"),_v=(e,t={keywords:!0})=>{if(Array.isArray(t))return ME(e,t,yl.fullFormats,$E),e;let[r,n]=t.mode==="fast"?[yl.fastFormats,ZV]:[yl.fullFormats,$E],i=t.formats||yl.formatNames;return ME(e,i,r,n),t.keywords&&(0,WV.default)(e),e};_v.get=(e,t="full")=>{let n=(t==="fast"?yl.fastFormats:yl.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function ME(e,t,r,n){var i,o;(i=(o=e.opts.code).formats)!==null&&i!==void 0||(o.formats=(0,hv._)`require("ajv-formats/dist/formats").${n}`);for(let a of t)e.addFormat(a,r[a])}jE.exports=vu=_v;Object.defineProperty(vu,"__esModule",{value:!0});vu.default=_v});import*as Ij from"node:fs";import*as $j from"node:path";function fr(e,t){delete e[t]}var Aw=((e,t)=>{for(var r in e)t(e[r],r)});function Xu(e,t){return e<t?-1:e===t?0:1}function Ze(e){return e===void 0?{BS_PRIVATE_NESTED_SOME_NONE:0}:e!==null&&e.BS_PRIVATE_NESTED_SOME_NONE!==void 0?{BS_PRIVATE_NESTED_SOME_NONE:e.BS_PRIVATE_NESTED_SOME_NONE+1|0}:e}function Dt(e){if(e!=null)return Ze(e)}function ue(e){if(e===null||e.BS_PRIVATE_NESTED_SOME_NONE===void 0)return e;let t=e.BS_PRIVATE_NESTED_SOME_NONE;if(t!==0)return{BS_PRIVATE_NESTED_SOME_NONE:t-1|0}}function ia(e,t){let r=e.indexOf(t);if(r!==-1)return r}function Ve(e,t,r){return e.reduce(r,t)}function ec(e,t){let r=e.findIndex(t);if(r!==-1)return r}function $e(e,t){let r=e.length,n=new Array(r),i=0;for(let o=0;o<r;++o){let a=e[o],s=t(a);s!==void 0&&(n[i]=ue(s),i=i+1|0)}return n.length=i,n}import*as rt from"node:fs";import*as Rw from"node:buffer";import*as ic from"node:crypto";function Sr(e){if(e.RE_EXN_ID==="JsExn")return Ze(e._1)}var tc=(e=>t=>t&&typeof t[e]=="string"?t[e]:void 0),Ow=tc("stack"),Er=tc("message"),c5=tc("name"),f5=tc("fileName");function rc(e,t){if(e!==void 0&&t(ue(e)))return e}function rn(e,t,r){return e!==void 0?r(ue(e)):t}function G(e,t){if(e!==void 0)return Ze(t(ue(e)))}function k(e,t){if(e!==void 0)return t(ue(e))}function x(e,t){return e!==void 0?ue(e):t}function cs(e,t){return e!==void 0?e:t}function qt(e){return e!==void 0}function mn(e){return e===void 0}function fs(e,t){return e===t?0:e<t?-1:1}var Ew=(function(e,t){for(var r in e)t(r)});function de(e,t){if(e===t)return!0;let r=typeof e;if(r==="string"||r==="number"||r==="bigint"||r==="boolean"||r==="undefined"||e===null)return!1;let n=typeof t;if(r==="function"||n==="function")throw{RE_EXN_ID:"Invalid_argument",_1:"equal: functional value",Error:new Error};if(n==="number"||n==="bigint"||n==="undefined"||t===null)return!1;let i=e.TAG,o=t.TAG;if(i!==o)return!1;let a=e.length|0,s=t.length|0;if(a===s)if(Array.isArray(e)){let l=0;for(;;){let d=l;if(d===a)return!0;if(!de(e[d],t[d]))return!1;l=d+1|0}}else{if(e instanceof Date&&t instanceof Date)return!(e>t||e<t);{let l={contents:!0},d=c=>{if(!Object.prototype.hasOwnProperty.call(t,c)){l.contents=!1;return}},u=c=>{if(!Object.prototype.hasOwnProperty.call(e,c)||!de(t[c],e[c])){l.contents=!1;return}};return Ew(e,d),l.contents&&Ew(t,u),l.contents}}else return!1}function nn(e,t){return(typeof e=="number"||typeof e=="bigint")&&(typeof t=="number"||typeof t=="bigint")?e!==t:!de(e,t)}import*as ms from"node:fs/promises";import*as Iw from"node:child_process";function Wj(e){return e==null?!1:typeof e.RE_EXN_ID=="string"}function ee(e){return Wj(e)?e:{RE_EXN_ID:"JsExn",_1:e}}var Fp={};function Pw(e){let t=Fp[e];if(t!==void 0){let r=t+1|0;return Fp[e]=r,e+("/"+r)}return Fp[e]=1,e}function Ne(e){let t=Sr(e);if(t===void 0)return{code:void 0,message:"unknown error"};let r=ue(t);return{code:Dt(r.code),message:x(Er(r),"unknown error")}}function si(e,t){return de(e.code,t)}function Qt(e){try{return{TAG:"Ok",_0:rt.readFileSync(e,"utf8")}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function Ti(e,t){try{return{TAG:"Ok",_0:(rt.writeFileSync(e,t,"utf8"),void 0)}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function yo(e,t,r){try{return{TAG:"Ok",_0:(rt.writeFileSync(e,t,r),void 0)}}catch(n){let i=ee(n);return{TAG:"Error",_0:Ne(i)}}}function Lt(e){try{return{TAG:"Ok",_0:(rt.mkdirSync(e,{recursive:!0}),void 0)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function ps(e,t){try{return{TAG:"Ok",_0:(rt.chmodSync(e,t),void 0)}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function $w(e,t){try{return{TAG:"Ok",_0:(rt.linkSync(e,t),void 0)}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function Mw(e){try{return{TAG:"Ok",_0:(rt.unlinkSync(e),void 0)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function li(e,t){try{return{TAG:"Ok",_0:(rt.renameSync(e,t),void 0)}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function pn(e){try{return{TAG:"Ok",_0:(rt.rmSync(e,{force:!0}),void 0)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function Dp(e){try{return{TAG:"Ok",_0:(rt.rmSync(e,{force:!0,recursive:!0}),void 0)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function Dn(e){try{return{TAG:"Ok",_0:rt.realpathSync(e)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function jw(e){try{return{TAG:"Ok",_0:rt.mkdtempSync(e)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function zw(e,t,r,n){try{let i=rt.openSync(e,"w");try{rt.writeFileSync(i,n,"utf8"),rt.fsyncSync(i),rt.closeSync(i)}catch(a){throw rt.closeSync(i),a}rt.renameSync(e,t);let o=rt.openSync(r,"r");try{rt.fsyncSync(o),rt.closeSync(o)}catch(a){throw rt.closeSync(o),a}return{TAG:"Ok",_0:void 0}}catch(i){let o=ee(i);return{TAG:"Error",_0:Ne(o)}}}function qn(e){return ic.createHash("sha256").update(e).digest("hex")}async function qp(e,t){try{return await ms.appendFile(e,t,"utf8"),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}async function Nw(e,t){try{return await ms.writeFile(e,t,"utf8"),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}async function Lp(e,t){try{return await ms.rename(e,t),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function oc(e){try{return ic.randomBytes(e).toString("hex")}catch{return""}}function hs(e){try{return{TAG:"Ok",_0:rt.readdirSync(e)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function _s(e,t,r,n){try{return{TAG:"Ok",_0:Iw.execFileSync(e,t,{encoding:"utf8",timeout:r,maxBuffer:n})}}catch(i){let o=ee(i);return{TAG:"Error",_0:Ne(o)}}}function mr(e){try{return process.stderr.write(e)}catch{return!1}}function oa(e,t){return e[t]}function Vi(e,t){try{return process.kill(e,t),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function Ln(e){try{return Ze(new URL(e))}catch{return}}function Gw(e){return e.keys().toArray()}function Hi(e,t){try{return{TAG:"Ok",_0:new URL(e,t)}}catch(r){let n=ee(r),i=Sr(n);return{TAG:"Error",_0:i!==void 0?x(Er(ue(i)),"unknown error"):"unknown error"}}}function Fw(e){return Rw.Buffer.from(e,"utf8").toString("base64url")}var Gr={};Gr["api-url"]="ValueKind";Gr.token="ValueKind";Gr["auth-file"]="ValueKind";Gr["delegation-auth-file"]="ValueKind";Gr.workspace="ValueKind";Gr.channel="ValueKind";Gr["owner-username"]="ValueKind";Gr.mode="ValueKind";Gr.cwd="ValueKind";Gr["thread-id"]="ValueKind";Gr.format="ValueKind";Gr.command="ValueKind";Gr["tool-scope"]="ValueKind";Gr["agent-session"]="BooleanKind";Gr["include-token"]="BooleanKind";Gr.help="BooleanKind";function ac(e){let t={},r,n=0;for(;r===void 0&&n<e.length;){let o=e[n];if(o!==void 0)if(o.startsWith("--")){let a=o.slice(2),s=Gr[a];if(s!==void 0)if(s==="ValueKind"){let l=e[n+1|0];l!==void 0?l.startsWith("--")?r="--"+a+" requires a value":(t[a]={TAG:"ValueFlag",_0:l},n=n+2|0):r="--"+a+" requires a value"}else t[a]="BoolFlag",n=n+1|0;else r="unsupported option --"+a}else r="unexpected argument "+o;else n=n+1|0}let i=r;return i!==void 0?{TAG:"Error",_0:i}:{TAG:"Ok",_0:t}}function wr(e,t){let r=e[t];if(r===void 0||typeof r!="object")return;let n=r._0;if(n.trim()!=="")return n}function sc(e,t){let r=e[t];return r!==void 0?typeof r!="object":!1}function lc(e,t){let r=wr(e,t);return r!==void 0?{TAG:"Ok",_0:r}:{TAG:"Error",_0:"--"+t+" is required"}}function dc(e){if(e===void 0)return{TAG:"Ok",_0:"Text"};switch(e){case"text":return{TAG:"Ok",_0:"Text"};case"voice":return{TAG:"Ok",_0:"Voice"};default:return{TAG:"Error",_0:"--mode must be voice or text"}}}function Up(e){if(e===void 0)return{TAG:"Ok",_0:"All"};switch(e){case"all":return{TAG:"Ok",_0:"All"};case"coding":return{TAG:"Ok",_0:"Coding"};case"onboarding-discovery":return{TAG:"Ok",_0:"OnboardingDiscovery"};default:return{TAG:"Error",_0:"--tool-scope must be all, coding, or onboarding-discovery"}}}function Dw(e){return e[0]==="mcp"?e.slice(1):e}function uc(){return`Linzumi MCP
|
|
11
11
|
|
|
12
12
|
Usage:
|
|
13
13
|
linzumi mcp server --api-url <url> [--mode voice|text] [--workspace <slug> --channel <slug>]
|
|
@@ -101,14 +101,14 @@ Tools:
|
|
|
101
101
|
Auth:
|
|
102
102
|
Uses --token, LINZUMI_MCP_ACCESS_TOKEN, or cached local runner OAuth from linzumi auth.
|
|
103
103
|
Hosted personal agents use --delegation-auth-file with a signed delegation grant.
|
|
104
|
-
`}function Lw(e){throw e}function Uw(e){throw e}function Ww(e){throw e}function yr(e){throw new Error(e)}function gs(e){let t=Sr(e);if(t===void 0)return"unknown error";let r=ue(t);return x(Er(r),String(r))}function
|
|
105
|
-
`:return JSON.stringify(e);default:t=r+1|0;continue}}}function
|
|
104
|
+
`}function Lw(e){throw e}function Uw(e){throw e}function Ww(e){throw e}function yr(e){throw new Error(e)}function gs(e){let t=Sr(e);if(t===void 0)return"unknown error";let r=ue(t);return x(Er(r),String(r))}function Zj(e,t){return fetch(e,t)}function Vj(e,t){return fetch(e,t)}var cc={json:Zj,binary:Vj};function Zw(e){return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength|0)}function fc(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}function Jl(e){process.exitCode=e}function aa(e){process.stdout.write(e)}import*as _k from"node:os";import*as Ah from"node:path";function wt(e,t){return e.TAG==="Ok"?{TAG:"Ok",_0:t(e._0)}:e}function he(e,t){return e.TAG==="Ok"?t(e._0):e}function $t(e,t){return e.TAG==="Ok"?e:{TAG:"Error",_0:t(e._0)}}var Xp={},wc=[],Kj=(e=>({...e}));function Cs(e){let t=0;for(;;){let r=t,n=e[r];if(n===void 0)return'"'+e+'"';switch(n){case'"':case`
|
|
105
|
+
`:return JSON.stringify(e);default:t=r+1|0;continue}}}function Jj(e){return e===""?[]:JSON.parse(e.split('"]["').join('","'))}function Yj(e){return"["+Cs(e)+"]"}function Xj(e){let t=e.length;return t!==1?t!==0?e.map(Yj).join(""):"":"["+Cs(e[0])+"]"}var Qp="sury",eh=Symbol(Qp),th=Symbol(Qp+":item"),Ss="string",vo="number",Qj="bigint",hc="boolean",ez="symbol",ws="null",Un="undefined",Hp="nan";var rh="instance",Ki="array",Ir="object",di="union",Bp="never",rd="unknown",Kp="ref",nh=Pw("Sury.Exn"),Pi="const";function tz(e){return e.type===Un?!0:e.type===di?Un in e.has:!1}function rz(e,t){return(e&t)!==0}var tr={[rd]:1,[Ss]:2,[vo]:4,[hc]:8,[Un]:16,[ws]:32,[Ir]:64,[Ki]:128,[di]:256,[Kp]:512,[Qj]:1024,[Hp]:2048,function:4096,[rh]:8192,[Bp]:32768,[ez]:16384};function _c(e){let t=tr[typeof e];if(t&16)return Un;if(!(t&64))return t&2?'"'+e+'"':t&1024?e+"n":t&4096?"Function":e.toString();if(e===null)return ws;if(Array.isArray(e)){let i="[";for(let o=0,a=e.length;o<a;++o)o!==0&&(i=i+", "),i=i+_c(e[o]);return i+"]"}if(e.constructor!==Object)return Object.prototype.toString.call(e);let r=Object.keys(e),n="{ ";for(let i=0,o=r.length;i<o;++i){let a=r[i],s=e[a];n=n+a+": "+_c(s)+"; "}return n+"}"}function xr(e){let t=e.type,r=e.to,n=e.const,i=e.name;if(i!==void 0)return i;if(n!==void 0)return _c(n);let o=e.format,a=e.anyOf;if(a!==void 0)return a.map(xr).join(" | ");if(o!==void 0){if(o!=="compactColumns")return o;let s=e.additionalItems;if(r===void 0)return s!==void 0&&s!=="strip"&&s!=="strict"?xr(s)+"[]":"unknown[][]";let l=r.properties;return l===void 0?"unknown[][]":"["+Object.keys(l).map(u=>{let c=l[u];return xr(c)+"[]"}).join(", ")+"]"}switch(t){case"nan":return"NaN";case"object":let s=e.additionalItems,l=e.properties,d=Object.keys(l);return d.length===0?typeof s===Ir?"{ [key: string]: "+xr(s)+"; }":"{}":"{ "+d.map(u=>u+": "+xr(l[u])+";").join(" ")+" }";default:if(e.b)return t;switch(t){case"instance":return e.class.name;case"array":let u=e.additionalItems,c=e.items;if(typeof u!==Ir)return"["+c.map(xr).join(", ")+"]";let f=xr(u);return(u.type===di?"("+f+")":f)+"[]";default:return t}}}var da=class extends Error{constructor(t){super();for(let r in t)this[r]=t[r]}},Cn=Object.defineProperty,nd=da.prototype;Cn(nd,"message",{get(){return Qw(this)}});Cn(nd,"name",{value:"SuryError"});Cn(nd,"s",{value:eh});Cn(nd,"_1",{get(){return this}});Cn(nd,"RE_EXN_ID",{value:nh});var Xw=1,ih=function(){},oh=Object.create(null);Cn(oh,"with",{get(){return(e,...t)=>e(this,...t)}});ih.prototype=oh;function kc(e){if(e&&e.s===eh)return e;throw e}function Qw(e){let t=e.path;return(t===""?"":"Failed at "+t+": ")+e.reason}var Yl={m:Qw,d:void 0,a:"strip",f:0},Ai={},Vw={configurable:!0},ks="value",la="r";function Pr(e,t){let r=new ih;return r.type=e,r.seq=Xw++,t&&(Ai[ks]=r,Cn(r,la,Ai)),r}function e0(e){return e}var Wp={};function xo(e,t,r){if(Wp[e])return Wp[e];let n=Pr(t,!0);return r(n),Wp[e]=n,n}var er=Pr(rd,!0);er.decoder=e0;var ui=(e=>{let t=new ih;for(let r in e)t[r]=e[r];return t.seq=Xw++,t});function So(e,t){let r=ui(e),n=r;for(;n.to;){let i=ui(n.to);n.to=i,n=i}return t(n),r}function Oi(e,t){let r=e.g.e,n=r.length;return r[n]=t,"e["+n+"]"}function id(e,t){let r=tr[t.type],n=t.const;return r&16?"void 0":r&2?Cs(n):r&1024?n+"n":r&28672?Oi(e,t.const):n}function ua(e,t){let r='"'+t+'"',n=e[r];if(n!==void 0)return n;let i=Cs(t);return e[r]=i,i}function Br(){return this.i}function nz(){return this.b.v()}function iz(){return this.prev.v()}function _n(e){let t=e.v+1;return e.v=t,"v"+t}function gc(e,t){e.hd=e.hd===""?t:e.hd+","+t}function oz(){let e=this,t=_n(e.g);return e.cp="let "+t+"="+e.i+";",e.i=t,e.v=Br,t}function Jp(){let e=this,t=e.p;if(t.fz)return e.v=Br,e.i;let r=_n(e.g);return gc(t,r+"="+e.i),e.v=Br,e.i=r,r}function yc(){let e=this;if(e.fz)return e.v=Br,e.i="("+e.i+")",e.i;let t=_n(e.g);if(e.prev!==void 0){let n=e.i;n===""?e.cp="let "+t+";"+e.cp:e.cp=e.cp+("let "+t+"="+n+";")}else{let n=e.i;n===""?gc(e,t):gc(e,t+"="+n)}return e.v=Br,e.i=t,t}function az(e,t,r,n){return{v:Br,i:"i",s:e,e:t,f:0,cp:"",hd:"",path:"",g:{v:-1,o:r,e:[],d:n}}}function fa(e,t,r){let n=e.path,i="Can't decode "+xr(t)+" to "+xr(r)+". Use S.to to define a custom decoder",o={code:"unsupported_decode",path:n,reason:i,from:t,to:r};throw new da(o)}function Xl(e,t,r){return Oi(e,n=>{let i=t(n);throw new da(i)})+"("+r+")"}function t0(e,t,r,n,i,o,a){let s=a!==void 0?a:"Expected "+xr(e)+", received "+(i?_c(n):xr(t));if(o!==void 0){let d={};for(let u=0,c=o.length;u<c;++u){let f=o[u],p=f.reason.split(`
|
|
106
106
|
`).join(`
|
|
107
107
|
`),m=f.path,_=`
|
|
108
|
-
- `+(m===""?"":"At "+m+": ")+p;d[_]||(d[_]=1,s=s+_)}}let l={code:"invalid_input",path:r,reason:s,expected:e,received:t,unionErrors:o};return i&&(l.input=n),l}function ah(e,t,r,n){return i=>{let o=t!==void 0?t:"",a=n!==void 0?n:!0,s=e!==void 0?e:i.e,l=i.prev,d=l!==void 0?l.s:i.s,u=o===""?i.path:i.path+o;return c=>t0(s,d,u,c,a,void 0,r)}}function zr(e){let t=e.e.errorMessage,r;if(t!==void 0){let n=t.type;r=n!==void 0?n:t._}else r=void 0;return ah(void 0,void 0,r,void 0)(e)}function r0(e,t){let r=t!==void 0?t:e.e;return Xl(e,ah(r,void 0,void 0,void 0)(e),e.v())}function az(e,t){let r=e.vc,n=r.length;if(n===1){let a=r[0];return a.c(t)+"||"+Xl(e,a.f(e),t)+";"}let i="",o=0;for(;o<n;){let a=r[o],s=a.f,l=a.c(t);for(o=o+1|0;o<n&&r[o].f===s;)l=l+"&&"+r[o].c(t),o=o+1|0;i=i+(l+"||"+Xl(e,s(e),t)+";")}return i}function n0(e){return e.t===!0?e.prev.t!==!0?e.cp==="":!1:!0}function Ci(e,t){let r=e,n="";for(;r!==void 0;){let i=r;r=i.prev;let o="";if(i.vc)if(t!==void 0&&n0(i)){let s=r.v(),l=i.vc,d="";for(let u=0,c=l.length;u<c;++u){let f=l[u],p=f.c(s);f.f===zr?d=d?d+"&&"+p:p:i.e.noValidation!==!0&&(o=o+(p+"||"+Xl(i,f.f(i),s)+";"))}d&&(t.contents?t.contents=d+"&&"+t.contents:t.contents=d)}else i.e.noValidation!==!0&&(o=az(i,r.v()));i.hd!==""&&(o=o+("let "+i.hd+";")),i.fz=!0,o=i.cp+o,n=o+n}return n}function Wn(e,t,r,n){let i=n!==void 0?n:e.e;return{v:yc,i:t,s:r,e:i,prev:e,f:0,d:e.d,cp:"",hd:"",t:!0,path:e.path,g:e.g}}function kt(e,t,r,n){let i=t!==void 0?t:e.s,o=n!==void 0?n:e.e,a=e.v!==Br,s={v:a?nz:Br,i:e.i,s:i,e:o,prev:e,f:e.f,d:e.d,cp:"",hd:"",vc:r,t:e.t,path:e.path,g:e.g};if(a){let l=e.v.bind(e);e.v=()=>{let d=l();return s.i=d,s.v=Br,d}}return s}function sh(e,t){let r=e.vc;r!==void 0?r.push(t):e.vc=[t]}function Ql(e,t){let r=t.e.inputRefiner,n;if(r!==void 0){let s=r(t);if(s.length!==0)if(t.prev!==void 0){for(let d=0,u=s.length;d<u;++d)sh(t,s[d]);n=void 0}else n=s;else n=void 0}else n=void 0;let i=e.e.refiner,o;if(i!==void 0){let s=i(e);o=s.length!==0?s:void 0}else o=void 0;let a=n!==void 0?o!==void 0?kt(e,void 0,n.concat(o),void 0):kt(e,void 0,n,void 0):o!==void 0?kt(e,void 0,o,void 0):e;return a.io=!0,a}function i0(e,t,r){if(!t.vc)return;let i="["+ua(e.g,r)+"]";t.vc.forEach(o=>sh(e,{c:a=>o.c(a+i),f:o.f})),t.vc=void 0}function o0(e,t){let r=e.s.additionalItems,n;n=r!==void 0&&r!=="strip"&&r!=="strict"?r:er;let i=e.e.additionalItems,o;return o=i!==void 0&&i!=="strip"&&i!=="strict"?i:er,{p:e,v:iz,i:e.v()+"["+t+"]",s:n,e:o,f:e.f,cp:"",hd:"",path:"",g:e.g}}function bo(e,t,r){return Wn(e,id(e,t),t,r)}function a0(e,t){let r=Wn(e,t,e.s,void 0);return r.f=1,r}function Ei(e,t,r){e.s.type===Ki?e.s.items.push(r.s):(r.o||e.s.required.push(t),e.s.properties[t]=r.s),r.f&1&&r.v(),e.cp=e.cp+Ci(r,void 0),e.d[t]=r}function s0(e,t,r){return e.v()+"["+t+"]="+r.i}function Ji(e){let t=e.v!==Br,r={b:e,v:t?rz:Br,i:e.i,s:e.s,io:e.io,e:e.e,f:0,d:e.d,cp:"",hd:"",u:!1,t:!1,path:e.path,g:e.g};if(t){let n=e.v.bind(e);e.v=()=>{let i=n();return r.i=i,r.v=Br,i}}return r}function sz(e,t){throw new da({code:"invalid_operation",path:e.path,reason:t})}function lh(e,t,r,n){if(e.path===""&&r===void 0)return Ci(e,void 0);{let i=l=>{let d=t.path,u=d===""?"":Cs(d)+"+";return l+".path="+u+(r!==void 0?`'["'+`+r+`+'"]'+`:"")+l+".path"},o=Ci(e,void 0);if(o===""&&!(e.f&1))return o+(n!==void 0?n():"");let a=_n(e.g),s=i(a)+";throw "+a;return e.f&1&&(e.i=e.i+".catch("+a+"=>{"+s+"})"),"try{"+o+(n!==void 0?n():"")+"}catch("+a+"){"+s+"}"}}function l0(e){return e}l0.embedded=wc;function Zp(e){return e+"<=2147483647&&"+e+">=-2147483648&&"+e+"%1===0"}function xs(e){return t=>"typeof "+t+'==="'+e+'"'}function vs(e){return"Number.isNaN("+e+")"}function bc(e){return"Array.isArray("+e+")"}function d0(e){return xs(Ir)(e)+"&&"+e}function lz(e,t){return r=>r+" instanceof "+Oi(e,t)}function dz(e){let t=tr[e.s.type];if(t&1){let i=[{c:xs(vo),f:zr}],o=e.e.format,a=0;return o==="int32"?i.push({c:Zp,f:zr}):a=1,a===1&&(e.g.o&2||i.push({c:s=>"!"+vs(s),f:zr})),kt(e,e.e,i,void 0)}if(!(t&2))return t&4?e.s.format!==e.e.format&&e.e.format==="int32"?kt(e,e.e,[{c:Zp,f:zr}],void 0):e:fa(e,e.s,e.e);let r=_n(e.g),n=Wn(e,r,e.e,void 0);return n.v=Br,n.cp="let "+r+"=+"+e.v()+";",n.vc=[{c:i=>{let o=e.e.format;return o!==void 0&&o==="int32"?Zp(r):"!"+vs(r)},f:zr}],n}function dh(){return xo(vo,vo,e=>{e.decoder=dz})}function uz(e){return Wn(e,'""+'+e.i,Es(),void 0)}function cz(e){let t=tr[e.s.type];if(t&1)return kt(e,e.e,[{c:xs(Ss),f:zr}],void 0);if(!(t&3132&&Pi in e.s))return t&1036?uz(e):t&2?e:fa(e,e.s,e.e);let r=""+e.s.const,n=Pr(Ss,!1);return n.const=r,Wn(e,'"'+r+'"',n,void 0)}function Es(){return xo(Ss,Ss,e=>{e.decoder=cz})}function fz(e){let t=tr[e.s.type];if(t&1)return kt(e,e.e,[{c:xs(hc),f:zr}],void 0);if(!(t&2))return t&8?e:fa(e,e.s,e.e);let r=_n(e.g),n=Wn(e,r,e.e,void 0);n.v=Br;let i=e.v();return n.cp="let "+r+";("+n.i+"="+i+'==="true")||'+i+'==="false"||'+r0(e,void 0)+";",n}function uh(){return xo(hc,hc,e=>{e.decoder=fz})}function u0(e,t){e[tr[t]&768?rd:t]=!0}var sa="JSON";function Ts(e){let t=e.e;if(t.noValidation&&!e.u)return bo(e,t,void 0);if(Pi in e.s)return e.s.const===t.const?e:bo(e,t,void 0);let r=tr[t.type];if(!(tr[e.s.type]&2&&r&3132))return r&2048?kt(e,t,[{c:vs,f:zr}],void 0):kt(e,t,[{c:o=>o+"==="+id(e,t),f:zr}],void 0);let n=Pr(Ss,!1);n.const=""+t.const;let i=bo(e,n,n);return i.vc=[{c:o=>o+'==="'+n.const+'"',f:zr}],bo(i,t,t)}function ma(){return xo(Un,Un,e=>{e.const=void 0,e.decoder=Ts})}function od(){return xo(ws,ws,e=>{e.const=null,e.decoder=Ts})}function c0(){return xo(Hp,Hp,e=>{e.const=NaN,e.decoder=Ts})}function ch(e){if(e===null)return od();let t=typeof e;if(t===Un)return ma();if(t===vo&&Number.isNaN(e))return c0();if(t===Ir){let n=Pr(rh,!0);return n.class=e.constructor,n.const=e,n.decoder=Ts,n}let r=Pr(t,!0);return r.const=e,r.decoder=Ts,r}function pr(e){let t=e,r,n=0;for(;!t.io||t.e.to;){let i=r;r=void 0;let o=t;if(n=n+1|0,n>50)throw new Error("Loop count exceeded 100");if(o.e.$defs&&(o.g.d?Object.assign(o.g.d,o.e.$defs):o.g.d=o.e.$defs),o.f&1){let a=o.v(),s=Ji(o),l=pr(s),d=Ci(l,void 0);t=s.i!==l.i||d!==""?Wn(o,a+".then("+a+"=>{"+d+"return "+l.i+"})",l.s,l.e):kt(o,l.s,void 0,l.e),t.f=t.f|1,t.io=!0}else if(o.io){let a=o.e.to,l=o.e.parser;t=l!==void 0?l(o):kt(t,void 0,void 0,a)}else{let a=o.s.encoder;a&&a!==i&&o.s!==o.e&&o.e.type!==rd&&(t=a(o,o.e)),o!==t?r=a:(t=o.e.decoder(o),t.io||(t=Ql(t,t)))}}return t}function wo(e){for(;;){let t=e,r=t.to;if(r===void 0)return t;e=r}}function Bi(e){if(la in e)return e[la];let t,r=e;for(;r;){let i=ui(r),o=i.to,a=t;a!==void 0?i.to=a:delete i.to;let s=i.parser,l=i.serializer;l!==void 0?i.parser=l:delete i.parser,s!==void 0?i.serializer=s:delete i.serializer;let d=i.refiner,u=i.inputRefiner;u!==void 0?i.refiner=u:delete i.refiner,d!==void 0?i.inputRefiner=d:delete i.inputRefiner;let c=i.fromDefault,f=i.default;f!==void 0?i.fromDefault=f:delete i.fromDefault,c!==void 0?i.default=c:delete i.default;let p=i.items;p!==void 0&&(i.items=p.map(Bi));let m=i.properties;if(m!==void 0){let g={},b=Object.keys(m);for(let y=0,v=b.length;y<v;++y){let S=b[y];g[S]=Bi(m[S])}i.properties=g}typeof i.additionalItems===Ir&&(i.additionalItems=Bi(i.additionalItems));let h=i.anyOf;if(h!==void 0){let g={},b=[];for(let y=0,v=h.length;y<v;++y){let S=h[y],A=Bi(S);b.push(A),u0(g,A.type)}i.has=g,i.anyOf=b}let _=i.$defs;if(_!==void 0){let g={};for(let b=0,y=Object.keys(_).length;b<y;++b){let v=Object.keys(_)[b];g[v]=Bi(_[v])}i.$defs=g}t=i,r=o}let n=t;return Ai[ks]=n,Cn(e,la,Ai),Ai[ks]=e,Cn(n,la,Ai),n}function f0(e){try{return pr(e)}catch(t){let r=kc(t),n=e.p;throw r.path=(n!==void 0?n.path:"")+(e.path+"[]"+r.path),r}}function m0(e,t,r,n){let i=oz(Pi in e?er:e,t,r,n),o=pr(i),a=Ci(o,void 0),s=tz(o.f,1);t.isAsync=s;let l=o.t===!0;if(t.hasTransform=l,a===""&&(o===i||o.i===i.i)&&!(r&1))return l0;let d=o.i;r&1&&!s&&!n&&(d="Promise.resolve("+d+")");let u="i=>{"+a+"return "+d+"}",c=i.g.e,f=new Function("e","s","return "+u)(c,eh);return f.embedded=i.g.e,f}function vc(e,t){let r=arguments,n=0,i,o="",a=0,s;for(;i===void 0;){let d=r[n];if(d)if(typeof d===vo){let u=d|Yl.f;i=u,o=o+"-"+u}else{let u=d.seq;u>a&&(a=u,s=d),o=o+u+"-",n=n+1|0}else{let u=Yl.f;i=u,o=o+"-"+u}}let l=s;if(l!==void 0){let d=o;if(d in l)return l[d];let u=r[n-1|0];for(let f=n-2|0;f>=0;--f){let p=u;u=So(r[f],m=>{m.to=p})}let c=m0(u,u,i,0);return Ai[ks]=c,Cn(l,d,Ai),c}throw new Error("[Sury] No schema provided for decoder.")}var ca="BS_PRIVATE_NESTED_SOME_NONE";function mz(e){let t=kt(e,void 0,void 0,fh());return t.cp=r0(e,void 0)+";",t}function fh(){return xo(Bp,Bp,e=>{e.decoder=mz})}function pz(e){let t=e.e.to;return Wn(e,"{"+ca+":"+wo(e.e).properties[ca].const+"}",t,t)}function As(e,t){return{v:yc,i:"",s:t.type===Ki?{type:Ki,decoder:ad,additionalItems:"strict",items:[]}:{type:Ir,decoder:Ps,additionalItems:"strict",required:[],properties:{}},e:e.e,prev:e,f:0,d:{},cp:"",hd:"",t:!0,path:e.path,g:e.g}}function mh(e){return xc(e,ma())}function Ps(e){let t=e.u,r=e.e,n=tr[e.s.type],i;if(n&65){let u=n&64,c;if(u)c=e.s;else{let p=Pr(Ir,!1);p.properties=Xp,p.additionalItems=er,c=p}let f=[];u||(f.push({c:d0,f:zr}),r.additionalItems!=="strip"&&f.push({c:p=>"!"+bc(p),f:zr})),i=f.length!==0?kt(e,c,f,void 0):kt(e,c,void 0,void 0)}else i=fa(e,e.s,r);let o=r.additionalItems,a;a=o==="strip"||o==="strict"?void 0:o;let s=i.s.additionalItems,l;l=s!=="strip"&&s!=="strict";let d;if(a!==void 0)if(a===er)d=i;else if(l){let u=i.v(),c=_n(i.g),f=o0(i,c),p=f0(f),m=p.t,h=m?Wn(i,"{}",r,void 0):kt(i,r,void 0,void 0),_=lh(p,i,c,m?()=>s0(h,c,p):void 0);if((m||_!=="")&&(h.cp=h.cp+("for(let "+c+" in "+u+"){"+_+"}")),p.f&1){let g=_n(h.g),b=_n(h.g),y=_n(h.g),v=_n(h.g),S=h.v();d=a0(h,"new Promise(("+g+","+b+")=>{let "+v+"=Object.keys("+S+").length;for(let "+c+" in "+S+"){"+S+"["+c+"].then("+y+"=>{"+S+"["+c+"]="+y+";if("+v+"--===1){"+g+"("+S+")}},"+b+")}})")}else d=h}else{let u=As(i,r),c=Object.keys(i.s.properties);for(let f=0,p=c.length;f<p;++f){let m=c[f],h=ed(i,m);h.e=a,h.io=!1,h.u=t,Ei(u,m,pr(h))}d=Os(u)}else{let u=r.properties,c=Object.keys(u),f=c.length,p=As(i,r),m=r.additionalItems,h;h=m==="strip"||m==="strict"?m==="strip"?l||Object.keys(i.s.properties).length!==f:!1:!0;let _=i.s.additionalItems,g;g=_==="strip"||_==="strict"?!1:_.name===sa;for(let y=0;y<f;++y){let v=c[y],S=u[v],A=ed(i,v);A.e=S,A.io=!1,A.u=t,g&&S.type===di&&S.has[Un]&&(A.i="("+A.i+"??null)");let R=pr(A);t&&Pi in S&&i0(i,R,v),Ei(p,v,R),h||(h=R.t)}let b=!1;if(r.additionalItems==="strict"){let y=i.s.additionalItems,v;v=y!=="strip"&&y!=="strict",b=v}if(b){let y=_n(p.g);if(gc(i,y),p.cp=p.cp+("for("+y+" in "+i.v()+"){if("),c.length!==0)for(let v=0,S=c.length;v<S;++v){let A=c[v];v!==0&&(p.cp=p.cp+"&&"),p.cp=p.cp+(y+"!=="+ua(i.g,A))}else p.cp=p.cp+"true";p.cp=p.cp+("){"+Xl(i,v=>({code:"unrecognized_keys",path:p.path,reason:'Unrecognized key "'+v+'"',keys:[v]}),y)+"}}")}if(h)d=Os(p);else{let y=kt(i,void 0,void 0,void 0);y.cp=p.cp,y.d=p.d,d=y}}return Ql(d,i)}function hz(){let e=ch(0),t={};return t[ca]=e,{type:Ir,serializer:r=>{let n=r.e.to;return bo(r,n,n)},decoder:Ps,additionalItems:"strip",required:[ca],properties:t}}function ad(e){let t=e.u,r=e.e,n=tr[e.s.type],i=r.items,o=i.length,a;if(n&129){let u=n&128,c=u?e.s:sd(er),f=[];u||f.push({c:bc,f:zr});let p=c.additionalItems,m;if(m=p==="strip"||p==="strict"?c.items.length===o:!1,!m){let h=r.additionalItems;(h==="strip"||h==="strict")&&(h==="strip"?f.push({c:_=>_+".length>="+o,f:zr}):f.push({c:_=>_+".length==="+o,f:zr}))}a=f.length!==0?kt(e,c,f,void 0):kt(e,c,void 0,void 0)}else a=fa(e,e.s,r);let s=r.additionalItems,l,d=0;if(s==="strip"||s==="strict")d=1;else if(s===er)l=a;else{let u=a.v(),c=_n(a.g),f=o0(a,c),p=f0(f),m=p.t,h=m?Wn(a,"new Array("+u+".length)",r,void 0):kt(a,r,void 0,void 0),_=lh(p,a,c,m?()=>s0(h,c,p):void 0);(m||_!=="")&&(h.cp=h.cp+("for(let "+c+"="+o+";"+c+"<"+u+".length;++"+c+"){"+_+"}")),l=p.f&1?a0(h,"Promise.all("+h.i+")"):h}if(d===1){let u=As(a,r),c=r.additionalItems,f;if(c==="strip"||c==="strict")if(c==="strip"){let p=a.s.additionalItems;f=p==="strip"||p==="strict"?a.s.items.length!==o:!0}else f=!1;else f=!0;for(let p=0;p<o;++p){let m=i[p],h=p.toString(),_=ed(a,h);_.e=m,_.io=!1,_.u=t;let g=pr(_);t&&Pi in m&&i0(a,g,h),Ei(u,h,g),f||(f=g.t)}if(f)l=Os(u);else{let p=kt(a,void 0,void 0,void 0);p.cp=u.cp,p.d=u.d,l=p}}return Ql(l,a)}function _z(e,t){let r=e.s.anyOf;return t.type===di&&g0(t)===void 0&&h0(t.anyOf,r)||!gz(r,t)?e:_0(e,t)}function p0(e){let t=e.e,r=t.anyOf,n=tr[e.s.type],i=g0(t);if(e.s===t&&i===void 0&&r.every(mc)||n&256&&h0(r,e.s.anyOf)&&i===void 0||e.io&&e.e===e.s)return e;(n&256||e.s.encoder===void 0&&n&512)&&(e.s=er);let o="";if(!(n&769)){let Z=Vp(e.s),V=!1,M=!1,N=r.length,j=0;for(;o===""&&j<N;){let re=r[j];Vp(re)===Z?o=Z:re.type===ws?V=!0:re.type===Un&&(M=!0),j=j+1|0}o===""&&(n&16&&V?o=ws:n&32&&M&&(o=Un))}let a=o,s=e.i,l=Z=>Oi(e,function(){let V=arguments,M=t0(t,er,e.path,V[0],!0,V.length>1?Array.from(V).slice(1):void 0,void 0);throw new da(M)})+"("+e.v()+Z+")",d=kt(e,void 0,void 0,void 0),u=[],c={contents:""},f=(Z,V)=>{let M=Z[0],N=Z[1],j="",re="",se=!1,Ae={contents:""},Ue="",Ge={},ut=2,ze=Z.length-1|0;for(;ut<=ze;){let pt=Ji(N);pt.u=!0,pt.t=N.t,pt.io=!1,pt.e=Z[ut];let Xe=ut===ze,He=ut===2,It=He&&Xe,Cr=!It,Ut=!1,Qe="",q={contents:""};try{let _e=pr(pt);if(u.push(_e.s),Qe=Ci(_e,q),_e.t){d.t=!0,_e.f&1&&(d.f=d.f|1);let Be=M.v();_e.i!==Be&&(Qe=Qe+(Be+"="+_e.i))}}catch(_e){let Be=Oi(pt,kc(_e));Ue=Ue+","+Be,V&&It?(c.contents=Be,Ut=!0):Xe?(Cr=!1,Qe=V?"throw "+Be:l(Ue)):Ut=!0}let Ee=q.contents,ve=Qe;if(!Ut&&Ee)if(ve){let _e=Ge[Ee];_e!==void 0?typeof _e=="string"?Ge[Ee]=[_e,ve]:_e.push(ve):Ge[Ee]=ve}else Ae.contents=Ae.contents?Ae.contents+"||"+Ee:Ee;if(!Ut&&(!Ee||Xe)){let _e=Object.keys(Ge);for(let Be=0,Jt=_e.length;Be<Jt;++Be){let fn=_e[Be];j=j+(se?"else if":"if")+("("+fn+"){");let Fn=Ge[fn];if(typeof Fn=="string")j=j+Fn+"}";else{let ii="";for(let Vr=0,_o=Fn.length;Vr<_o;++Vr){let ra=Fn[Vr],tn="e"+Vr;j=j+("try{"+ra+"}catch("+tn+"){"),ii=ii+","+tn}j=j+l(ii)+"}".repeat(Fn.length)+"}"}se=!0}Ge={}}if(!Ut&&!Ee)if(ve)if(Ae.contents&&(j=j+(se?"else if":"if")+("(!("+Ae.contents+")){"),re="}"+re,Ae.contents="",se=!1),Xe&&(V||!Cr||He))j=j+((se?"else{":"")+ve),re=(se?"}":"")+re;else{let _e="e"+(ut-2|0);j=j+((se?"else{":"")+"try{"+ve+"}catch("+_e+"){"),re=(se?"}":"")+"}"+re,Ue=Ue+","+_e,se=!1}else Ae.contents="",ut=ze,Cr=!1;if(Xe){if(Ae.contents)j||Ue?j=j+(se?"else if":"if")+("(!("+Ae.contents+")){"+l(Ue)+"}"):sh(N,{c:_e=>"("+Ae.contents+")",f:zr});else if(Cr){let _e=l(Ue);j=j+(se?"else{"+_e+"}":_e)}}ut=ut+1}return j+re},p="",m="",h="",_=!1,g=r.length-1|0,b={},y=[],v=t.refiner,S=t.inputRefiner,A={contents:void 0},R={contents:void 0},W=(Z,V,M)=>{if(V===void 0)return Z;let N=j=>{let re=M.contents;if(re!==void 0)return re;let se=V(j);return M.contents=se,se};return Z!==void 0?j=>{let re=Z(j),se=N(j);for(let Ae=0,Ue=se.length;Ae<Ue;++Ae)re.push(se[Ae]);return re}:N},L=Z=>{let V=W(Z.refiner,v,A);V!==void 0&&(Z.refiner=V);let M=W(Z.inputRefiner,S,R);if(M!==void 0){Z.inputRefiner=M;return}},ae;if(Pi in e.s){let Z=[],V=[];for(let M=0;M<=g;++M){let N=r[M];Pi in N&&N.const===e.s.const?Z.push(N):V.push(N)}ae=Z.concat(V)}else ae=r;for(let Z=0;Z<=g;++Z){let V=i!==void 0?So(ae[Z],re=>{L(re),re.to=i}):ae[Z],M=V.type,N=tr[M],j=Vp(V);if((a===""||a===j)&&!(N&16&&"fromDefault"in t)){let re=b[j];if(re!==void 0)N&64&&ca in V.properties?re.splice(re.length-1|0,0,V):N&2096||re.push(V);else{let se=Ji(e),Ae;if(N&37633)Ae=er;else{let ze=Pr(V.type,!1);ze.encoder=V.encoder,N&8192?ze.class=V.class:N&64?(ze.properties=Xp,ze.additionalItems=er):N&128?(ze.additionalItems=er,ze.items=wc):N&2096&&(ze.const=V.const),ze.decoder=pt=>tr[pt.s.type]&1?kt(pt,pt.e,[{c:Xe=>{let He=tr[V.type];if(He&64)return d0(Xe)+"&&!"+bc(Xe);if(He&128)return bc(Xe);if(He&8192)return lz(pt,V.class)(Xe);if(!(He&4))return He&2048?vs(Xe):He&48?Xe+"==="+id(pt,V):He&17418?xs(V.type)(Xe):"";let It=xs(vo)(Xe);return pt.g.o&2?It:It+"&&!"+vs(Xe)},f:zr}],void 0):V.decoder(pt),Ae=ze}se.e=Ae;let Ue;try{Ue=pr(se)}catch{se.vc=void 0,Ue=se}Hw(N,b)?y.unshift(j):y.push(j),b[j]=[se,Ue,V];let Ge=!0,ut=Ue;for(;ut!==void 0&&Ge;){let ze=ut;ut=ze.prev,Ge=!(ze.vc&&n0(ze))}if(Ge){for(let ze=0,pt=y.length;ze<pt;++ze){let Xe=y[ze];if(!_){let He=b[Xe],It=He[1],Cr=f(He,!0),Ut=Ci(It,void 0)+Cr,Qe=c.contents;if(Qe)if(c.contents="",Ut){let q="e"+(Z+ze|0);p=p+("try{"+Ut+"throw "+Qe+"}catch("+q+"){"),m="}"+m,h=h+","+q}else h=h+","+Qe;else if(Ut){let q="e"+(Z+ze|0);p=p+("try{"+Ut+"}catch("+q+"){"),m="}"+m,h=h+","+q}else _=!0}}b={},y=[]}}}}let U=b,B=y;if(!_){let Z=!1,V="";for(let j=0,re=B.length;j<re;++j){let se=U[B[j]],Ae=se[1],Ue=se[2],Ge=f(se,!1),ut={contents:""},ze=Ci(Ae,ut)+Ge,pt=ut.contents;ze||Hw(tr[Ue.type],U)?(p=p+(Z?"else if":"if")+("("+pt+"){"+ze+"}"),Z=!0):V=V?V+"||"+pt:pt}let M=l(h),N;V?N=(Z?"else if":"if")+("(!("+V+")){"+M+"}"):N=Z?"else{"+M+"}":m===""?M+";":M,p=p+N}d.cp=d.cp+p+m,e.i!==d.i&&(d.i=e.i);let oe=d.f&1?(d.i="Promise.resolve("+d.i+")",d.v=yc,d):d.v===Br&&e.cp===""&&d.cp===""&&s==="i"?(e.hd="",e.v=yc,e.i=s,e):d;return oe.s=u.length?ko(u):fh(),oe.e=i!==void 0?(oe.io=!0,wo(i)):t,oe}function h0(e,t){return t.every((r,n)=>{let i=e[n];return i!==void 0&&!(tr[r.type]&9152)&&r.type===i.type&&r.const===i.const?r.to===void 0:!1})}function _0(e,t){return kt(e,er,void 0,So(e.s,r=>{r.to=t}))}function gz(e,t){return!(tr[wo(t).type]&512)&&!(t.type===di&&t.anyOf.some(r=>tr[r.type]&512))?!e.some(r=>r.to!==void 0||r.parser!==void 0?!0:tr[r.type]&512):!1}function g0(e){if(e.parser!==void 0)return;let r=e.to;if(r!==void 0)return r}function ed(e,t){let r=e.d,n;if(r!==void 0)n=r;else{let u={};e.d=u,n=u}let i=n[t];if(i!==void 0)return Ji(i);let o=e.s.type===Ir?e.s.properties[t]:e.s.items[t],a;if(o!==void 0)a=o;else{let u=e.s.additionalItems;a=u==="strip"||u==="strict"?fa(e,e.s,e.e):e.s.type===Ir&&u.type!==rd&&!(tr[u.type]&512)&&!ez(u)?mh(u):u}let l="["+ua(e.g,t)+"]",d={p:e,v:Jp,i:Pi in a?id(e,a):e.v()+l,s:a,e:a,f:0,cp:"",hd:"",path:e.path+l,g:e.g};return n[t]=d,d}function Os(e){let t=e.s.type===Ki,r="",n="",i,o=Object.keys(e.d);for(let d=0,u=o.length;d<u;++d){let c=o[d],f=e.d[c];if(f.f&1&&(n=n+f.i+","),f.o){let p=i;i=m=>(p!==void 0?p(m):"")+("if("+f.v()+"!==void 0){"+m+"["+ua(e.g,c)+"]="+f.i+"}")}else r=r+(t?f.i:ua(e.g,c)+":"+f.i)+","}if(e.i=t?"["+r+"]":"{"+r+"}",n){let d=Ji(e);d.io=!0;let u=pr(d),c=Ci(u,void 0);return c===""&&n===u.i+","?e.i=u.i:e.i="Promise.all(["+n+"]).then((["+n+"])=>{"+c+"return "+u.i+"})",e.f=e.f|1,e.s=u.s,e.e=u.e,e.io=!0,e}let a=i;if(a===void 0)return e;let s=a(e.v()),l=kt(e,void 0,void 0,void 0);return l.cp=l.cp+s,l}function ko(e){let t=e.length;if(t===1)return e[0];if(t!==0){let r={},n=new Set;for(let o=0,a=e.length;o<a;++o){let s=e[o];s.type===di&&s.to===void 0?(s.anyOf.forEach(l=>{n.add(l)}),Object.assign(r,s.has)):(n.add(s),u0(r,s.type))}let i=Pr(di,!1);return i.anyOf=Array.from(n),i.decoder=p0,i.encoder=_z,i.has=r,i}throw new Error("[Sury] S.union requires at least one item")}function Hw(e,t){return e&8320&&Ir in t?!0:e&2048?vo in t:!1}function Vp(e){return tr[e.type]&8192?e.class.name:e.type}function mc(e){for(;;){let t=e,r=!1,n=!1,i=!1;if(t.to===void 0&&t.parser===void 0&&!(tr[t.type]&512)){let a=t.anyOf;i=a!==void 0?a.every(mc):!0}if(i){let a=t.items;n=a!==void 0?a.every(mc):!0}if(n){let a=t.properties;r=a!==void 0?Object.values(a).every(mc):!0}if(!r)return!1;let o=t.additionalItems;if(o===void 0||o==="strip"||o==="strict")return!0;e=o}}function sd(e){let t=Pr(Ki,e[la]===e);return t.additionalItems=e,t.items=wc,t.decoder=ad,t}function xc(e,t){let r=t!==void 0?t:ma(),n=wo(e);switch(n.type){case"undefined":return ko([r,Bw(e)]);case"union":let o=n.has,a=n.anyOf;return So(e,s=>{let l=Bj(o),d=[];for(let u=0,c=a.length;u<c;++u){let f=a[u],p=wo(f),m=p.type,h;if(m==="undefined")l[r.type]=!0,d.push(r),h=Bw(f);else{let _=p.properties;if(_!==void 0){let g=_[ca];h=g!==void 0?So(f,b=>{let y={},v={...g};v.const=g.const+1,y[ca]=v,b.properties=y}):f}else h=f}d.push(h)}d.length===a.length&&(l[r.type]=!0,d.push(r)),s.anyOf=d,s.has=l});default:return ko([e,r])}}function Bw(e){return So(e,t=>{t.to=hz(),t.parser=pz})}function ph(e){let t=Pr(Ir,e[la]===e);return t.properties=Xp,t.additionalItems=e,t.decoder=Ps,t}function Kw(e){let t=e.e,r=t.$ref,n=e.g.d,i=r.slice(8),o=n[i],a=e.g.o,s=e.s.seq===t.seq?o:e.s,l=s.seq+"-"+o.seq+"--"+a,d="",u=o[l];if(u!==void 0){let h=ue(u);d=h===0?Oi(e,o)+('["'+l+'"]'):Oi(e,h)}else{let h=x(o.hasTransform,!1),_=x(o.isAsync,!1),g=!0,b=0;for(;g;){g=!1,o.hasTransform===void 0&&(o.hasTransform=h),o.isAsync===void 0&&(o.isAsync=_),Vw[ks]=0,Cn(o,l,Vw);let y=m0(s,o,a,n);Ai[ks]=y,Cn(o,l,Ai),b=y;let v=o.hasTransform,S=o.isAsync;(v!==h||S!==_)&&(h=v,_=S,delete o[l],g=!0)}d=Oi(e,b)}let c=o.hasTransform===!0,f=o.isAsync,p="",m;if(c||f){let h=_n(e.g);p="let "+h+";";let _=Wn(e,h,t,t);_.v=Br,_.cp=h+"="+d+"("+e.i+");",f&&(_.f=_.f|1),m=_}else{let h=kt(e,t,void 0,t);h.cp=d+"("+e.i+");",m=h}return m.prev=void 0,m.cp=p+lh(m,e,void 0,void 0),m.fz=void 0,m.prev=e,m}Cn(oh,"~standard",{get:function(){let e=this;return{version:1,vendor:Qp,validate:t=>{try{return{value:vc(er,e)(t)}}catch(r){let n=kc(r);return{issues:[{message:n.reason,path:n.path===""?void 0:Kj(n.path)}]}}}}}});function y0(e,t){return vc(er,t)(e)}var yz="#/$defs/";function bz(e,t){return So(e,r=>{let n=t(r),i=r.refiner;i!==void 0?r.refiner=o=>{let a=i(o),s=n(o);for(let l=0,d=s.length;l<d;++l)a.push(s[l]);return a}:r.refiner=n})}function b0(e,t,r,n){let i=r!==void 0?r:"Refinement failed",o=n!==void 0?Yj(n):"";return bz(e,a=>(s=>{let l=Oi(s,t);return[{c:d=>l+"("+d+")",f:ah(void 0,o,i,void 0)}]}))}function v0(){let e=ui(od());return e.to=ma(),e}function S0(e,t){return So(e,r=>{let n=r.anyOf;if(n!==void 0){let o=[],a=[];for(let f=0,p=n.length;f<p;++f){let m=n[f],h=wo(m);h.type!=="undefined"&&(o.push(h),a.push(m))}let s=o.length,l;if(s!==1)if(s!==0)l=ko(o);else{let f="Can't set default for "+xr(r);throw new Error("[Sury] "+f)}else l=o[0];let d=a.length!==1?ko(a):a[0];if(t.TAG==="Value"){let f=t._0;try{vc(er,l)(f)}catch(p){let m=kc(p),h="Invalid default for "+xr(r)+": "+m.message;throw new Error("[Sury] "+h)}try{r.default=vc(Bi(d),void 0)(f)}catch{}}r.parser=f=>{let p=f.e.to,m=f.v(),h;return h=t.TAG==="Value"?id(f,ch(t._0)):Oi(f,t._0)+"()",Wn(f,m+"===void 0?"+h+":"+m,p,p)};let u=ui(l),c=u.decoder;u.serializer=f=>{let p=Bi(d);return kt(c(f),p,void 0,p)},u.decoder=e0,r.to=u;return}let i="Can't set default for "+xr(r);throw new Error("[Sury] "+i)})}function Yp(e,t){let r=tr[t.type];if(r&46)return pr(kt(e,er,void 0,t));if(r&2064){let i=ui(od());return i.to=t,pr(kt(e,er,void 0,i))}if(r&128){let i=sd(er),o=pr(kt(e,er,void 0,i));return o.s.additionalItems=hn(),o.e=t,o.io=!1,o}if(r&64){let i=ph(er),o=pr(kt(e,er,void 0,i));return o.s.additionalItems=hn(),o.e=t,o.io=!1,o}if(r&768)return e;let n=ui(Es());return n.to=t,pr(kt(e,er,void 0,n))}function bs(e){let t=tr[e.type],r=!0;if(!(t&46||e.$ref===hn().$ref||t&256&&e.anyOf.every(bs))){let i=!1;if(t&128){let o=e.additionalItems,a;a=o==="strip"||o==="strict"?!0:bs(o),i=a}r=i&&e.items.every(bs)}if(r)return!0;let n=!1;if(t&64){let i=e.additionalItems,o;o=i==="strip"||i==="strict"?!0:bs(i),n=o}return n?Object.values(e.properties).every(bs):!1}function Jw(e){let t=tr[e.s.type];if(bs(e.s))return e;if(t&2064)return bo(e,od(),void 0);if(t&128){let r=Pr(Ki,!1);r.items=e.s.items.map(o=>hn()),r.decoder=ad;let n=e.s.additionalItems,i;return i=n==="strip"||n==="strict"?n:hn(),r.additionalItems=i,r.to=e.e.to,pr(kt(e,void 0,void 0,r))}if(t&64){let r=e.s.additionalItems;if(!(r==="strip"||r==="strict")){let o=ph(hn());return o.to=e.e.to,pr(kt(e,void 0,void 0,o))}let n=As(e,e.s);n.e=hn(),e.e.to&&(n.e=ui(n.e),n.e.to=e.e.to);let i=Object.keys(e.s.properties);for(let o=0,a=i.length;o<a;++o){let s=i[o],l=ed(e,s);if(l.io=!1,l.s.type===di&&l.s.has[Un]){l.e=ko([ma(),hn()]);let d=pr(l);d.o=!0,Ei(n,s,d)}else l.e=hn(),Ei(n,s,pr(l))}return Os(n)}if(t&512)return Kw(e);if(t&256&&!(Un in e.s.has))return pr(_0(e,e.e));if(t&1)return e.e.to&&!e.e.parser?(e.s=hn(),Yp(e,e.e)):e.e.noValidation?(e.s=hn(),e):Kw(e);try{let r=ui(Es());return r.to=e.e,e.e=r,pr(e)}catch{return fa(e,e.s,hn())}}function hn(){return xo(sa,Kp,e=>{let t=Pr(Kp,!0);t.$ref=yz+sa,t.name=sa,t.decoder=Jw,t.encoder=Yp,e.$ref=t.$ref,e.name=sa,e.decoder=Jw,e.encoder=Yp;let r=[Es(),uh(),dh(),od(),ph(t),sd(t)],n={};r.forEach(a=>{n[a.type]=!0});let i=Pr(di,!0);i.anyOf=r,i.has=n,i.decoder=p0,i.name=sa,i.type=di;let o={};o[sa]=i,e.$defs=o})}function vz(e){return e[th]}function td(e,t,r){let n=ui(wo(e));return n.from=t,r!==void 0&&(n.fromFlattened=r),new Proxy(n,{get:(i,o)=>{if(o===th)return i;let a=i.items,s=i.properties,l=s!==void 0?s[o]:a!==void 0?a[o]:void 0;if(l===void 0){let d='Cannot read property "'+o+'" of '+xr(i);throw new Error("[Sury] "+d)}return td(l,i.from.concat(o),i.fromFlattened)}})}function w0(e,t,r){let n=As(e,t);n.io=!0;let i=t.items;if(i!==void 0)for(let o=0,a=i.length;o<a;++o){let s=o.toString();Ei(n,s,r(s,i[o]))}else{let o=t.properties;if(o!==void 0){let a=Object.keys(o);for(let s=0,l=a.length;s<l;++s){let d=a[s];Ei(n,d,r(d,o[d]))}}else{let a="Don't know where the value is coming from: "+xr(t);throw new Error("[Sury] "+a)}}return Os(n)}function k0(e,t){let r=t.from,n=t.fromFlattened,i=n!==void 0?Ji(Yw(e.fv[n],t.from,0)):r!==void 0?Ji(Yw(e,r,0)):Pi in t?bo(e,t,void 0):w0(e,t,(o,a)=>k0(e,a));return i.prev=void 0,i.e=t,i}function x0(e,t){let r=t.e,n=r.from;if(n!==void 0){let a=r.fromFlattened,s;if(a!==void 0){e.flattened===void 0&&(e.flattened=[]);let l=e.flattened[a];if(l!==void 0)s=l;else{let d={};e.flattened[a]=d,s=d}}else s=e;for(let l=0,d=n.length;l<d;++l){let u=n[l],c=s.properties,f;if(c!==void 0)f=c;else{let h={};s.properties=h,f=h}let p=f[u],m;if(p!==void 0)m=p;else{let h={};f[u]=h,m=h}s=m}s.val=t;return}let i=t.d;if(i===void 0)return;let o=Object.keys(i);for(let a=0,s=o.length;a<s;++a)x0(e,i[o[a]])}function pc(e,t,r,n){let i=0;if(t!==void 0){let o=t.val;if(o!==void 0){let a=Ji(o);return a.t=!0,a.s=r,a.e=r,pr(a)}i=1}else i=1;if(i===1){if(Pi in r){let c=bo(e,r,r);return c.prev=void 0,c.p=e,c.v=Jp,c.io=!0,pr(c)}let o=t===void 0?wo(r):r,a=As(e,o);a.e=o,a.io=!0,a.prev=void 0,a.p=e,a.v=Jp;let s=o.flattened,l=o.items,d=0,u=0;if(l!==void 0&&(t!==void 0||typeof o.additionalItems!==Ir))for(let c=0,f=l.length;c<f;++c){let p=c.toString(),m;if(t!==void 0){let _=t.properties;m=_!==void 0?_[p]:void 0}else m=void 0;let h=ua(e.g,p);Ei(a,p,pc(e,m,l[c],n+("["+h+"]")))}else u=3;if(u===3){let c=o.properties;if(c!==void 0&&(t!==void 0||typeof o.additionalItems!==Ir)){if(s!==void 0&&t!==void 0){let p=t.flattened;p!==void 0&&p.forEach((m,h)=>{let g=pc(e,m,Bi(s[h]),n).d,b=Object.keys(g);for(let y=0,v=b.length;y<v;++y){let S=b[y];Ei(a,S,g[S])}})}let f=Object.keys(c);for(let p=0,m=f.length;p<m;++p){let h=f[p];if(!(h in a.d)){let _;if(t!==void 0){let b=t.properties;_=b!==void 0?b[h]:void 0}else _=void 0;let g=ua(e.g,h);Ei(a,h,pc(e,_,c[h],n+("["+g+"]")))}}}else d=2}if(d===2){let c=r.from,f=c!==void 0?n+c.map(m=>'["'+m+'"]').join(""):n,p=f===""?"":" at "+f;sz(e,"Missing input for "+xr(r)+p)}return Os(a)}}function Yw(e,t,r){for(;;){let n=r,i=e,o=t[n];if(o===void 0)return i;r=n+1|0,e=i.d[o]}}function Sc(e,t){if(typeof e!==Ir||e===null)return ch(e);let r=t(e);if(r!==void 0)return r;if(Array.isArray(e)){for(let l=0,d=e.length;l<d;++l){let u=Sc(e[l],t);e[l]=u}let s=Pr(Ki,!1);return s.items=e,s.additionalItems="strict",s.decoder=ad,s}let n=e.constructor;if(n&&n!==Object){let s=Pr(rh,!0);return s.class=n,s.const=e,s.decoder=Ts,s}let i=Object.keys(e),o=i.length;for(let s=0;s<o;++s){let l=i[s],d=Sc(e[l],t);e[l]=d}let a=Pr(Ir,!1);return a.required=i,a.properties=e,a.additionalItems=Yl.a,a.decoder=Ps,a}function Sz(e){let t={};x0(t,e);let r=e.e.to,n=pc(e,t,r,"");return n.t=!0,n.prev=e,n}function Tc(e){return Sc(e,t=>{if(t["~standard"])return t})}function T0(e){let t=this,r="~"+e,n=t[r];if(n!==void 0)return ue(n);let i={},o=[],a=Pr(Ir,!1);a.required=o,a.properties=i,a.additionalItems=Yl.a,a.decoder=Ps;let s=t.f(e,a)[th],l=(p,m)=>{let h=Cs(p);if(p in i)throw new Error("[Sury] "+("The field "+h+" defined twice"));return o.push(p),i[p]=m,td(m,s.from.concat(p),s.fromFlattened)},f={field:l,f:l,fieldOr:(p,m,h)=>{let _=xc(m,void 0);return l(p,S0(_,{TAG:"Value",_0:h}))},tag:(p,m)=>{l(p,Tc(m))},nested:T0,flatten:p=>{if(p.type==="object"){let _=p.to,g=p.properties;if(_){let v="Unsupported nested flatten for transformed object schema "+xr(p);throw new Error("[Sury] "+v)}let b=Object.keys(g),y={};for(let v=0,S=b.length;v<S;++v){let A=b[v];y[A]=l(A,g[A])}return y}let h="Can't flatten "+xr(p)+" schema";throw new Error("[Sury] "+h)}};return t[r]=f,f}function A0(e){let t=ui(Sc(e,vz));return t.serializer=Sz,t}function O0(e){let t=e.e.flattened;if(t!==void 0){let i=[];for(let o=0,a=t.length;o<a;++o){let s=t[o],l=s.to,d;if(l!==void 0){let u=Ji(e);u.e=s,u.io=!0,d=pr(u)}else{let u=w0(e,s,(c,f)=>ed(e,c));u.e=s,u.prev=void 0,d=Ql(u,u)}i.push(d),e.cp=e.cp+Ci(d,void 0)}e.fv=i}let r=e.e.to,n=k0(e,r);return n.t=!0,n.prev=e,Ql(n,e)}function C0(e){let t,r={},n=u=>{if(u.type==="object"){let p=u.properties,m=Object.keys(p);for(let _=0,g=m.length;_<g;++_){let b=m[_],y=p[b],v=r[b];if(v!==void 0){if(v!==y)throw new Error("[Sury] "+('The field "'+b+'" defined twice with incompatible schemas'))}else r[b]=y}let h=t||(t=[]);return td(u,wc,h.push(u)-1|0)}let f="The '"+xr(u)+"' schema can't be flattened";throw new Error("[Sury] "+f)},i=(u,c)=>{if(u in r)throw new Error("[Sury] "+('The field "'+u+'" defined twice with incompatible schemas'));return r[u]=c,td(c,[u],void 0)},l=e({field:i,f:i,fieldOr:(u,c,f)=>{let p=xc(c,void 0);return i(u,S0(p,{TAG:"Value",_0:f}))},tag:(u,c)=>{i(u,Tc(c))},nested:T0,flatten:n}),d=Pr(Ir,!1);return d.required=Object.keys(r),d.properties=r,d.additionalItems=Yl.a,d.decoder=Ps,d.parser=O0,d.to=A0(l),t!==void 0&&(d.flattened=t),d}function E0(e){let t=[],r=(s,l)=>{let d=s.toString();if(t[s])throw new Error("[Sury] "+("The item ["+d+"] is defined multiple times"));return t[s]=l,td(l,[s.toString()],void 0)},o=e({item:r,tag:(s,l)=>{r(s,Tc(l))}});for(let s=0,l=t.length;s<l;++s)t[s]||(t[s]=ma());let a=Pr(Ki,!1);return a.items=t,a.additionalItems="strict",a.decoder=ad,a.parser=O0,a.to=A0(o),a}var wz=Tc;function P0(e){return ko(e.map(wz))}function R0(e){return xc(e,v0())}var I0=ko;var At=Es(),$0=uh();var Rs=dh();var M0=hn();var j0=nh;var Ac=sd;var hr=mh;var hh=R0;var z0=I0,Oc=P0;var Yi=b0;var N0=y0;var En=C0;var G0=E0;function xz(e){return{path:e.path,summary:e.message}}function we(e){return{path:"",summary:e}}function Is(e,t){try{return{TAG:"Ok",_0:N0(e,t)}}catch(r){let n=ee(r);if(n.RE_EXN_ID===j0)return{TAG:"Error",_0:xz(n._1)};throw n}}import*as dd from"node:fs";import*as L0 from"node:os";import*as Cc from"node:path";var Tz="--api-url must be ws://, wss://, http://, or https://";function on(e){let t=Ln(e);if(t===void 0)return{TAG:"Error",_0:"invalid URL: "+e};let r=ue(t),n=r.protocol,i;switch(n){case"http:":case"https:":i={TAG:"Ok",_0:void 0};break;case"ws:":r.protocol="http:",i={TAG:"Ok",_0:void 0};break;case"wss:":r.protocol="https:",i={TAG:"Ok",_0:void 0};break;default:i={TAG:"Error",_0:Tz}}return wt(i,()=>{r.pathname="",r.search="",r.hash="";let o=r.toString();return o.endsWith("/")?o.slice(0,o.length-1|0):o})}var $s="wss://serve.linzumi.com";function ud(){return Cc.join(L0.homedir(),".linzumi","auth.json")}var F0="Kandan auth cache must contain a JSON object",Az="Kandan auth cache local_codex_runner must be an object",Oz="Kandan auth cache personal_agent_delegation must be an object";function D0(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e.access_token,r=e.issued_at;if(t===void 0||typeof t!="string"||r===void 0||typeof r!="string")return;let n=e.expires_at,i;return i=typeof n=="string"?n:void 0,{accessToken:t,issuedAt:r,expiresAt:i}}function U0(e){let t;try{t=JSON.parse(e)}catch{t=void 0}if(t===void 0)return{TAG:"Error",_0:we(F0)};if(typeof t!="object"||t===null||Array.isArray(t))return{TAG:"Error",_0:we(F0)};let r=t.local_codex_runner,n=t.personal_agent_delegation,i=r!==void 0?typeof r=="object"&&r!==null&&!Array.isArray(r):!0,o=n!==void 0?typeof n=="object"&&n!==null&&!Array.isArray(n):!0;if(!i)return{TAG:"Error",_0:we(Az)};if(!o)return{TAG:"Error",_0:we(Oz)};let a;return a=typeof r=="object"&&r!==null&&!Array.isArray(r)?Object.fromEntries($e(Object.entries(r),s=>{let l=s[0];return G(D0(s[1]),d=>[l,d])})):void 0,{TAG:"Ok",_0:{serverTokens:a,personalAgentDelegation:k(n,D0)}}}function W0(e){return dd.existsSync(e)?he($t(Qt(e),t=>we(t.message)),t=>wt(U0(t),r=>r)):{TAG:"Ok",_0:void 0}}function Z0(e,t){return e!==void 0?new Date(e).getTime()<=t:!1}function Ec(e,t,r){return dd.existsSync(t)?he(W0(t),n=>wt($t(on(e),we),i=>k(k(k(n,o=>o.serverTokens),o=>o[i]),o=>{if(!(o.accessToken.trim()===""||Z0(o.expiresAt,r)))return{accessToken:o.accessToken,serverBaseUrl:i,issuedAt:o.issuedAt,expiresAt:o.expiresAt}}))):{TAG:"Ok",_0:void 0}}function Cz(e){return"missing personal-agent delegation auth file: "+e}var Ez="personal-agent delegation auth file is missing access_token",Pz="personal-agent delegation auth file token is expired";function V0(e,t){return dd.existsSync(e)?he(W0(e),r=>{let n=k(r,i=>i.personalAgentDelegation);return n!==void 0&&n.accessToken.trim()!==""?Z0(n.expiresAt,t)?{TAG:"Error",_0:we(Pz)}:{TAG:"Ok",_0:n}:{TAG:"Error",_0:we(Ez)}}):{TAG:"Error",_0:we(Cz(e))}}function q0(e){let t={};t.access_token=e.accessToken,t.issued_at=e.issuedAt;let r=e.expiresAt;return r!==void 0&&(t.expires_at=r),t}function Rz(e){let t={};t.version=1;let r=e.serverTokens;r!==void 0&&(t.local_codex_runner=Object.fromEntries(Object.entries(r).map(i=>[i[0],q0(i[1])])));let n=e.personalAgentDelegation;return n!==void 0&&(t.personal_agent_delegation=q0(n)),t}function Pc(e,t,r,n,i){return he($t(on(e),we),o=>{let a=dd.existsSync(n)?he($t(Qt(n),s=>we(s.message)),U0):{TAG:"Ok",_0:{serverTokens:void 0,personalAgentDelegation:void 0}};return he(a,s=>{let l=i.toISOString(),d=G(r,g=>new Date(i.getTime()+g*1e3).toISOString()),u={accessToken:t,issuedAt:l,expiresAt:d},c=s.serverTokens,f=c!==void 0?Object.fromEntries(Object.entries(c)):{};f[o]=u;let p=Rz({serverTokens:f,personalAgentDelegation:s.personalAgentDelegation}),m=JSON.stringify(p,void 0,2)+`
|
|
109
|
-
`,h=n+".tmp."+process.pid.toString()+"."+oc(6),_=g=>we(g.message);return he($t(
|
|
110
|
-
`,{encoding:"utf8",mode:384}),r)),()=>$t(ps(e,384),r))}function
|
|
111
|
-
`,{encoding:"utf8",flag:"wx"}),l)),()=>{let d=$w(s,e),u;if(d.TAG==="Ok")u={TAG:"Ok",_0:i};else{let c=d._0;u=si(c,"EEXIST")?Q0(e,r,n):{TAG:"Error",_0:we(c.message)}}return Mw(s),u})}function
|
|
108
|
+
- `+(m===""?"":"At "+m+": ")+p;d[_]||(d[_]=1,s=s+_)}}let l={code:"invalid_input",path:r,reason:s,expected:e,received:t,unionErrors:o};return i&&(l.input=n),l}function ah(e,t,r,n){return i=>{let o=t!==void 0?t:"",a=n!==void 0?n:!0,s=e!==void 0?e:i.e,l=i.prev,d=l!==void 0?l.s:i.s,u=o===""?i.path:i.path+o;return c=>t0(s,d,u,c,a,void 0,r)}}function zr(e){let t=e.e.errorMessage,r;if(t!==void 0){let n=t.type;r=n!==void 0?n:t._}else r=void 0;return ah(void 0,void 0,r,void 0)(e)}function r0(e,t){let r=t!==void 0?t:e.e;return Xl(e,ah(r,void 0,void 0,void 0)(e),e.v())}function sz(e,t){let r=e.vc,n=r.length;if(n===1){let a=r[0];return a.c(t)+"||"+Xl(e,a.f(e),t)+";"}let i="",o=0;for(;o<n;){let a=r[o],s=a.f,l=a.c(t);for(o=o+1|0;o<n&&r[o].f===s;)l=l+"&&"+r[o].c(t),o=o+1|0;i=i+(l+"||"+Xl(e,s(e),t)+";")}return i}function n0(e){return e.t===!0?e.prev.t!==!0?e.cp==="":!1:!0}function Ci(e,t){let r=e,n="";for(;r!==void 0;){let i=r;r=i.prev;let o="";if(i.vc)if(t!==void 0&&n0(i)){let s=r.v(),l=i.vc,d="";for(let u=0,c=l.length;u<c;++u){let f=l[u],p=f.c(s);f.f===zr?d=d?d+"&&"+p:p:i.e.noValidation!==!0&&(o=o+(p+"||"+Xl(i,f.f(i),s)+";"))}d&&(t.contents?t.contents=d+"&&"+t.contents:t.contents=d)}else i.e.noValidation!==!0&&(o=sz(i,r.v()));i.hd!==""&&(o=o+("let "+i.hd+";")),i.fz=!0,o=i.cp+o,n=o+n}return n}function Wn(e,t,r,n){let i=n!==void 0?n:e.e;return{v:yc,i:t,s:r,e:i,prev:e,f:0,d:e.d,cp:"",hd:"",t:!0,path:e.path,g:e.g}}function kt(e,t,r,n){let i=t!==void 0?t:e.s,o=n!==void 0?n:e.e,a=e.v!==Br,s={v:a?iz:Br,i:e.i,s:i,e:o,prev:e,f:e.f,d:e.d,cp:"",hd:"",vc:r,t:e.t,path:e.path,g:e.g};if(a){let l=e.v.bind(e);e.v=()=>{let d=l();return s.i=d,s.v=Br,d}}return s}function sh(e,t){let r=e.vc;r!==void 0?r.push(t):e.vc=[t]}function Ql(e,t){let r=t.e.inputRefiner,n;if(r!==void 0){let s=r(t);if(s.length!==0)if(t.prev!==void 0){for(let d=0,u=s.length;d<u;++d)sh(t,s[d]);n=void 0}else n=s;else n=void 0}else n=void 0;let i=e.e.refiner,o;if(i!==void 0){let s=i(e);o=s.length!==0?s:void 0}else o=void 0;let a=n!==void 0?o!==void 0?kt(e,void 0,n.concat(o),void 0):kt(e,void 0,n,void 0):o!==void 0?kt(e,void 0,o,void 0):e;return a.io=!0,a}function i0(e,t,r){if(!t.vc)return;let i="["+ua(e.g,r)+"]";t.vc.forEach(o=>sh(e,{c:a=>o.c(a+i),f:o.f})),t.vc=void 0}function o0(e,t){let r=e.s.additionalItems,n;n=r!==void 0&&r!=="strip"&&r!=="strict"?r:er;let i=e.e.additionalItems,o;return o=i!==void 0&&i!=="strip"&&i!=="strict"?i:er,{p:e,v:oz,i:e.v()+"["+t+"]",s:n,e:o,f:e.f,cp:"",hd:"",path:"",g:e.g}}function bo(e,t,r){return Wn(e,id(e,t),t,r)}function a0(e,t){let r=Wn(e,t,e.s,void 0);return r.f=1,r}function Ei(e,t,r){e.s.type===Ki?e.s.items.push(r.s):(r.o||e.s.required.push(t),e.s.properties[t]=r.s),r.f&1&&r.v(),e.cp=e.cp+Ci(r,void 0),e.d[t]=r}function s0(e,t,r){return e.v()+"["+t+"]="+r.i}function Ji(e){let t=e.v!==Br,r={b:e,v:t?nz:Br,i:e.i,s:e.s,io:e.io,e:e.e,f:0,d:e.d,cp:"",hd:"",u:!1,t:!1,path:e.path,g:e.g};if(t){let n=e.v.bind(e);e.v=()=>{let i=n();return r.i=i,r.v=Br,i}}return r}function lz(e,t){throw new da({code:"invalid_operation",path:e.path,reason:t})}function lh(e,t,r,n){if(e.path===""&&r===void 0)return Ci(e,void 0);{let i=l=>{let d=t.path,u=d===""?"":Cs(d)+"+";return l+".path="+u+(r!==void 0?`'["'+`+r+`+'"]'+`:"")+l+".path"},o=Ci(e,void 0);if(o===""&&!(e.f&1))return o+(n!==void 0?n():"");let a=_n(e.g),s=i(a)+";throw "+a;return e.f&1&&(e.i=e.i+".catch("+a+"=>{"+s+"})"),"try{"+o+(n!==void 0?n():"")+"}catch("+a+"){"+s+"}"}}function l0(e){return e}l0.embedded=wc;function Zp(e){return e+"<=2147483647&&"+e+">=-2147483648&&"+e+"%1===0"}function xs(e){return t=>"typeof "+t+'==="'+e+'"'}function vs(e){return"Number.isNaN("+e+")"}function bc(e){return"Array.isArray("+e+")"}function d0(e){return xs(Ir)(e)+"&&"+e}function dz(e,t){return r=>r+" instanceof "+Oi(e,t)}function uz(e){let t=tr[e.s.type];if(t&1){let i=[{c:xs(vo),f:zr}],o=e.e.format,a=0;return o==="int32"?i.push({c:Zp,f:zr}):a=1,a===1&&(e.g.o&2||i.push({c:s=>"!"+vs(s),f:zr})),kt(e,e.e,i,void 0)}if(!(t&2))return t&4?e.s.format!==e.e.format&&e.e.format==="int32"?kt(e,e.e,[{c:Zp,f:zr}],void 0):e:fa(e,e.s,e.e);let r=_n(e.g),n=Wn(e,r,e.e,void 0);return n.v=Br,n.cp="let "+r+"=+"+e.v()+";",n.vc=[{c:i=>{let o=e.e.format;return o!==void 0&&o==="int32"?Zp(r):"!"+vs(r)},f:zr}],n}function dh(){return xo(vo,vo,e=>{e.decoder=uz})}function cz(e){return Wn(e,'""+'+e.i,Es(),void 0)}function fz(e){let t=tr[e.s.type];if(t&1)return kt(e,e.e,[{c:xs(Ss),f:zr}],void 0);if(!(t&3132&&Pi in e.s))return t&1036?cz(e):t&2?e:fa(e,e.s,e.e);let r=""+e.s.const,n=Pr(Ss,!1);return n.const=r,Wn(e,'"'+r+'"',n,void 0)}function Es(){return xo(Ss,Ss,e=>{e.decoder=fz})}function mz(e){let t=tr[e.s.type];if(t&1)return kt(e,e.e,[{c:xs(hc),f:zr}],void 0);if(!(t&2))return t&8?e:fa(e,e.s,e.e);let r=_n(e.g),n=Wn(e,r,e.e,void 0);n.v=Br;let i=e.v();return n.cp="let "+r+";("+n.i+"="+i+'==="true")||'+i+'==="false"||'+r0(e,void 0)+";",n}function uh(){return xo(hc,hc,e=>{e.decoder=mz})}function u0(e,t){e[tr[t]&768?rd:t]=!0}var sa="JSON";function Ts(e){let t=e.e;if(t.noValidation&&!e.u)return bo(e,t,void 0);if(Pi in e.s)return e.s.const===t.const?e:bo(e,t,void 0);let r=tr[t.type];if(!(tr[e.s.type]&2&&r&3132))return r&2048?kt(e,t,[{c:vs,f:zr}],void 0):kt(e,t,[{c:o=>o+"==="+id(e,t),f:zr}],void 0);let n=Pr(Ss,!1);n.const=""+t.const;let i=bo(e,n,n);return i.vc=[{c:o=>o+'==="'+n.const+'"',f:zr}],bo(i,t,t)}function ma(){return xo(Un,Un,e=>{e.const=void 0,e.decoder=Ts})}function od(){return xo(ws,ws,e=>{e.const=null,e.decoder=Ts})}function c0(){return xo(Hp,Hp,e=>{e.const=NaN,e.decoder=Ts})}function ch(e){if(e===null)return od();let t=typeof e;if(t===Un)return ma();if(t===vo&&Number.isNaN(e))return c0();if(t===Ir){let n=Pr(rh,!0);return n.class=e.constructor,n.const=e,n.decoder=Ts,n}let r=Pr(t,!0);return r.const=e,r.decoder=Ts,r}function pr(e){let t=e,r,n=0;for(;!t.io||t.e.to;){let i=r;r=void 0;let o=t;if(n=n+1|0,n>50)throw new Error("Loop count exceeded 100");if(o.e.$defs&&(o.g.d?Object.assign(o.g.d,o.e.$defs):o.g.d=o.e.$defs),o.f&1){let a=o.v(),s=Ji(o),l=pr(s),d=Ci(l,void 0);t=s.i!==l.i||d!==""?Wn(o,a+".then("+a+"=>{"+d+"return "+l.i+"})",l.s,l.e):kt(o,l.s,void 0,l.e),t.f=t.f|1,t.io=!0}else if(o.io){let a=o.e.to,l=o.e.parser;t=l!==void 0?l(o):kt(t,void 0,void 0,a)}else{let a=o.s.encoder;a&&a!==i&&o.s!==o.e&&o.e.type!==rd&&(t=a(o,o.e)),o!==t?r=a:(t=o.e.decoder(o),t.io||(t=Ql(t,t)))}}return t}function wo(e){for(;;){let t=e,r=t.to;if(r===void 0)return t;e=r}}function Bi(e){if(la in e)return e[la];let t,r=e;for(;r;){let i=ui(r),o=i.to,a=t;a!==void 0?i.to=a:delete i.to;let s=i.parser,l=i.serializer;l!==void 0?i.parser=l:delete i.parser,s!==void 0?i.serializer=s:delete i.serializer;let d=i.refiner,u=i.inputRefiner;u!==void 0?i.refiner=u:delete i.refiner,d!==void 0?i.inputRefiner=d:delete i.inputRefiner;let c=i.fromDefault,f=i.default;f!==void 0?i.fromDefault=f:delete i.fromDefault,c!==void 0?i.default=c:delete i.default;let p=i.items;p!==void 0&&(i.items=p.map(Bi));let m=i.properties;if(m!==void 0){let g={},b=Object.keys(m);for(let y=0,v=b.length;y<v;++y){let S=b[y];g[S]=Bi(m[S])}i.properties=g}typeof i.additionalItems===Ir&&(i.additionalItems=Bi(i.additionalItems));let h=i.anyOf;if(h!==void 0){let g={},b=[];for(let y=0,v=h.length;y<v;++y){let S=h[y],A=Bi(S);b.push(A),u0(g,A.type)}i.has=g,i.anyOf=b}let _=i.$defs;if(_!==void 0){let g={};for(let b=0,y=Object.keys(_).length;b<y;++b){let v=Object.keys(_)[b];g[v]=Bi(_[v])}i.$defs=g}t=i,r=o}let n=t;return Ai[ks]=n,Cn(e,la,Ai),Ai[ks]=e,Cn(n,la,Ai),n}function f0(e){try{return pr(e)}catch(t){let r=kc(t),n=e.p;throw r.path=(n!==void 0?n.path:"")+(e.path+"[]"+r.path),r}}function m0(e,t,r,n){let i=az(Pi in e?er:e,t,r,n),o=pr(i),a=Ci(o,void 0),s=rz(o.f,1);t.isAsync=s;let l=o.t===!0;if(t.hasTransform=l,a===""&&(o===i||o.i===i.i)&&!(r&1))return l0;let d=o.i;r&1&&!s&&!n&&(d="Promise.resolve("+d+")");let u="i=>{"+a+"return "+d+"}",c=i.g.e,f=new Function("e","s","return "+u)(c,eh);return f.embedded=i.g.e,f}function vc(e,t){let r=arguments,n=0,i,o="",a=0,s;for(;i===void 0;){let d=r[n];if(d)if(typeof d===vo){let u=d|Yl.f;i=u,o=o+"-"+u}else{let u=d.seq;u>a&&(a=u,s=d),o=o+u+"-",n=n+1|0}else{let u=Yl.f;i=u,o=o+"-"+u}}let l=s;if(l!==void 0){let d=o;if(d in l)return l[d];let u=r[n-1|0];for(let f=n-2|0;f>=0;--f){let p=u;u=So(r[f],m=>{m.to=p})}let c=m0(u,u,i,0);return Ai[ks]=c,Cn(l,d,Ai),c}throw new Error("[Sury] No schema provided for decoder.")}var ca="BS_PRIVATE_NESTED_SOME_NONE";function pz(e){let t=kt(e,void 0,void 0,fh());return t.cp=r0(e,void 0)+";",t}function fh(){return xo(Bp,Bp,e=>{e.decoder=pz})}function hz(e){let t=e.e.to;return Wn(e,"{"+ca+":"+wo(e.e).properties[ca].const+"}",t,t)}function As(e,t){return{v:yc,i:"",s:t.type===Ki?{type:Ki,decoder:ad,additionalItems:"strict",items:[]}:{type:Ir,decoder:Ps,additionalItems:"strict",required:[],properties:{}},e:e.e,prev:e,f:0,d:{},cp:"",hd:"",t:!0,path:e.path,g:e.g}}function mh(e){return xc(e,ma())}function Ps(e){let t=e.u,r=e.e,n=tr[e.s.type],i;if(n&65){let u=n&64,c;if(u)c=e.s;else{let p=Pr(Ir,!1);p.properties=Xp,p.additionalItems=er,c=p}let f=[];u||(f.push({c:d0,f:zr}),r.additionalItems!=="strip"&&f.push({c:p=>"!"+bc(p),f:zr})),i=f.length!==0?kt(e,c,f,void 0):kt(e,c,void 0,void 0)}else i=fa(e,e.s,r);let o=r.additionalItems,a;a=o==="strip"||o==="strict"?void 0:o;let s=i.s.additionalItems,l;l=s!=="strip"&&s!=="strict";let d;if(a!==void 0)if(a===er)d=i;else if(l){let u=i.v(),c=_n(i.g),f=o0(i,c),p=f0(f),m=p.t,h=m?Wn(i,"{}",r,void 0):kt(i,r,void 0,void 0),_=lh(p,i,c,m?()=>s0(h,c,p):void 0);if((m||_!=="")&&(h.cp=h.cp+("for(let "+c+" in "+u+"){"+_+"}")),p.f&1){let g=_n(h.g),b=_n(h.g),y=_n(h.g),v=_n(h.g),S=h.v();d=a0(h,"new Promise(("+g+","+b+")=>{let "+v+"=Object.keys("+S+").length;for(let "+c+" in "+S+"){"+S+"["+c+"].then("+y+"=>{"+S+"["+c+"]="+y+";if("+v+"--===1){"+g+"("+S+")}},"+b+")}})")}else d=h}else{let u=As(i,r),c=Object.keys(i.s.properties);for(let f=0,p=c.length;f<p;++f){let m=c[f],h=ed(i,m);h.e=a,h.io=!1,h.u=t,Ei(u,m,pr(h))}d=Os(u)}else{let u=r.properties,c=Object.keys(u),f=c.length,p=As(i,r),m=r.additionalItems,h;h=m==="strip"||m==="strict"?m==="strip"?l||Object.keys(i.s.properties).length!==f:!1:!0;let _=i.s.additionalItems,g;g=_==="strip"||_==="strict"?!1:_.name===sa;for(let y=0;y<f;++y){let v=c[y],S=u[v],A=ed(i,v);A.e=S,A.io=!1,A.u=t,g&&S.type===di&&S.has[Un]&&(A.i="("+A.i+"??null)");let R=pr(A);t&&Pi in S&&i0(i,R,v),Ei(p,v,R),h||(h=R.t)}let b=!1;if(r.additionalItems==="strict"){let y=i.s.additionalItems,v;v=y!=="strip"&&y!=="strict",b=v}if(b){let y=_n(p.g);if(gc(i,y),p.cp=p.cp+("for("+y+" in "+i.v()+"){if("),c.length!==0)for(let v=0,S=c.length;v<S;++v){let A=c[v];v!==0&&(p.cp=p.cp+"&&"),p.cp=p.cp+(y+"!=="+ua(i.g,A))}else p.cp=p.cp+"true";p.cp=p.cp+("){"+Xl(i,v=>({code:"unrecognized_keys",path:p.path,reason:'Unrecognized key "'+v+'"',keys:[v]}),y)+"}}")}if(h)d=Os(p);else{let y=kt(i,void 0,void 0,void 0);y.cp=p.cp,y.d=p.d,d=y}}return Ql(d,i)}function _z(){let e=ch(0),t={};return t[ca]=e,{type:Ir,serializer:r=>{let n=r.e.to;return bo(r,n,n)},decoder:Ps,additionalItems:"strip",required:[ca],properties:t}}function ad(e){let t=e.u,r=e.e,n=tr[e.s.type],i=r.items,o=i.length,a;if(n&129){let u=n&128,c=u?e.s:sd(er),f=[];u||f.push({c:bc,f:zr});let p=c.additionalItems,m;if(m=p==="strip"||p==="strict"?c.items.length===o:!1,!m){let h=r.additionalItems;(h==="strip"||h==="strict")&&(h==="strip"?f.push({c:_=>_+".length>="+o,f:zr}):f.push({c:_=>_+".length==="+o,f:zr}))}a=f.length!==0?kt(e,c,f,void 0):kt(e,c,void 0,void 0)}else a=fa(e,e.s,r);let s=r.additionalItems,l,d=0;if(s==="strip"||s==="strict")d=1;else if(s===er)l=a;else{let u=a.v(),c=_n(a.g),f=o0(a,c),p=f0(f),m=p.t,h=m?Wn(a,"new Array("+u+".length)",r,void 0):kt(a,r,void 0,void 0),_=lh(p,a,c,m?()=>s0(h,c,p):void 0);(m||_!=="")&&(h.cp=h.cp+("for(let "+c+"="+o+";"+c+"<"+u+".length;++"+c+"){"+_+"}")),l=p.f&1?a0(h,"Promise.all("+h.i+")"):h}if(d===1){let u=As(a,r),c=r.additionalItems,f;if(c==="strip"||c==="strict")if(c==="strip"){let p=a.s.additionalItems;f=p==="strip"||p==="strict"?a.s.items.length!==o:!0}else f=!1;else f=!0;for(let p=0;p<o;++p){let m=i[p],h=p.toString(),_=ed(a,h);_.e=m,_.io=!1,_.u=t;let g=pr(_);t&&Pi in m&&i0(a,g,h),Ei(u,h,g),f||(f=g.t)}if(f)l=Os(u);else{let p=kt(a,void 0,void 0,void 0);p.cp=u.cp,p.d=u.d,l=p}}return Ql(l,a)}function gz(e,t){let r=e.s.anyOf;return t.type===di&&g0(t)===void 0&&h0(t.anyOf,r)||!yz(r,t)?e:_0(e,t)}function p0(e){let t=e.e,r=t.anyOf,n=tr[e.s.type],i=g0(t);if(e.s===t&&i===void 0&&r.every(mc)||n&256&&h0(r,e.s.anyOf)&&i===void 0||e.io&&e.e===e.s)return e;(n&256||e.s.encoder===void 0&&n&512)&&(e.s=er);let o="";if(!(n&769)){let Z=Vp(e.s),V=!1,M=!1,N=r.length,j=0;for(;o===""&&j<N;){let re=r[j];Vp(re)===Z?o=Z:re.type===ws?V=!0:re.type===Un&&(M=!0),j=j+1|0}o===""&&(n&16&&V?o=ws:n&32&&M&&(o=Un))}let a=o,s=e.i,l=Z=>Oi(e,function(){let V=arguments,M=t0(t,er,e.path,V[0],!0,V.length>1?Array.from(V).slice(1):void 0,void 0);throw new da(M)})+"("+e.v()+Z+")",d=kt(e,void 0,void 0,void 0),u=[],c={contents:""},f=(Z,V)=>{let M=Z[0],N=Z[1],j="",re="",se=!1,Ae={contents:""},Ue="",Ge={},ut=2,ze=Z.length-1|0;for(;ut<=ze;){let pt=Ji(N);pt.u=!0,pt.t=N.t,pt.io=!1,pt.e=Z[ut];let Xe=ut===ze,He=ut===2,It=He&&Xe,Cr=!It,Wt=!1,Qe="",q={contents:""};try{let _e=pr(pt);if(u.push(_e.s),Qe=Ci(_e,q),_e.t){d.t=!0,_e.f&1&&(d.f=d.f|1);let Be=M.v();_e.i!==Be&&(Qe=Qe+(Be+"="+_e.i))}}catch(_e){let Be=Oi(pt,kc(_e));Ue=Ue+","+Be,V&&It?(c.contents=Be,Wt=!0):Xe?(Cr=!1,Qe=V?"throw "+Be:l(Ue)):Wt=!0}let Ee=q.contents,ve=Qe;if(!Wt&&Ee)if(ve){let _e=Ge[Ee];_e!==void 0?typeof _e=="string"?Ge[Ee]=[_e,ve]:_e.push(ve):Ge[Ee]=ve}else Ae.contents=Ae.contents?Ae.contents+"||"+Ee:Ee;if(!Wt&&(!Ee||Xe)){let _e=Object.keys(Ge);for(let Be=0,Yt=_e.length;Be<Yt;++Be){let fn=_e[Be];j=j+(se?"else if":"if")+("("+fn+"){");let Fn=Ge[fn];if(typeof Fn=="string")j=j+Fn+"}";else{let ii="";for(let Vr=0,_o=Fn.length;Vr<_o;++Vr){let ra=Fn[Vr],tn="e"+Vr;j=j+("try{"+ra+"}catch("+tn+"){"),ii=ii+","+tn}j=j+l(ii)+"}".repeat(Fn.length)+"}"}se=!0}Ge={}}if(!Wt&&!Ee)if(ve)if(Ae.contents&&(j=j+(se?"else if":"if")+("(!("+Ae.contents+")){"),re="}"+re,Ae.contents="",se=!1),Xe&&(V||!Cr||He))j=j+((se?"else{":"")+ve),re=(se?"}":"")+re;else{let _e="e"+(ut-2|0);j=j+((se?"else{":"")+"try{"+ve+"}catch("+_e+"){"),re=(se?"}":"")+"}"+re,Ue=Ue+","+_e,se=!1}else Ae.contents="",ut=ze,Cr=!1;if(Xe){if(Ae.contents)j||Ue?j=j+(se?"else if":"if")+("(!("+Ae.contents+")){"+l(Ue)+"}"):sh(N,{c:_e=>"("+Ae.contents+")",f:zr});else if(Cr){let _e=l(Ue);j=j+(se?"else{"+_e+"}":_e)}}ut=ut+1}return j+re},p="",m="",h="",_=!1,g=r.length-1|0,b={},y=[],v=t.refiner,S=t.inputRefiner,A={contents:void 0},R={contents:void 0},W=(Z,V,M)=>{if(V===void 0)return Z;let N=j=>{let re=M.contents;if(re!==void 0)return re;let se=V(j);return M.contents=se,se};return Z!==void 0?j=>{let re=Z(j),se=N(j);for(let Ae=0,Ue=se.length;Ae<Ue;++Ae)re.push(se[Ae]);return re}:N},L=Z=>{let V=W(Z.refiner,v,A);V!==void 0&&(Z.refiner=V);let M=W(Z.inputRefiner,S,R);if(M!==void 0){Z.inputRefiner=M;return}},ae;if(Pi in e.s){let Z=[],V=[];for(let M=0;M<=g;++M){let N=r[M];Pi in N&&N.const===e.s.const?Z.push(N):V.push(N)}ae=Z.concat(V)}else ae=r;for(let Z=0;Z<=g;++Z){let V=i!==void 0?So(ae[Z],re=>{L(re),re.to=i}):ae[Z],M=V.type,N=tr[M],j=Vp(V);if((a===""||a===j)&&!(N&16&&"fromDefault"in t)){let re=b[j];if(re!==void 0)N&64&&ca in V.properties?re.splice(re.length-1|0,0,V):N&2096||re.push(V);else{let se=Ji(e),Ae;if(N&37633)Ae=er;else{let ze=Pr(V.type,!1);ze.encoder=V.encoder,N&8192?ze.class=V.class:N&64?(ze.properties=Xp,ze.additionalItems=er):N&128?(ze.additionalItems=er,ze.items=wc):N&2096&&(ze.const=V.const),ze.decoder=pt=>tr[pt.s.type]&1?kt(pt,pt.e,[{c:Xe=>{let He=tr[V.type];if(He&64)return d0(Xe)+"&&!"+bc(Xe);if(He&128)return bc(Xe);if(He&8192)return dz(pt,V.class)(Xe);if(!(He&4))return He&2048?vs(Xe):He&48?Xe+"==="+id(pt,V):He&17418?xs(V.type)(Xe):"";let It=xs(vo)(Xe);return pt.g.o&2?It:It+"&&!"+vs(Xe)},f:zr}],void 0):V.decoder(pt),Ae=ze}se.e=Ae;let Ue;try{Ue=pr(se)}catch{se.vc=void 0,Ue=se}Hw(N,b)?y.unshift(j):y.push(j),b[j]=[se,Ue,V];let Ge=!0,ut=Ue;for(;ut!==void 0&&Ge;){let ze=ut;ut=ze.prev,Ge=!(ze.vc&&n0(ze))}if(Ge){for(let ze=0,pt=y.length;ze<pt;++ze){let Xe=y[ze];if(!_){let He=b[Xe],It=He[1],Cr=f(He,!0),Wt=Ci(It,void 0)+Cr,Qe=c.contents;if(Qe)if(c.contents="",Wt){let q="e"+(Z+ze|0);p=p+("try{"+Wt+"throw "+Qe+"}catch("+q+"){"),m="}"+m,h=h+","+q}else h=h+","+Qe;else if(Wt){let q="e"+(Z+ze|0);p=p+("try{"+Wt+"}catch("+q+"){"),m="}"+m,h=h+","+q}else _=!0}}b={},y=[]}}}}let U=b,B=y;if(!_){let Z=!1,V="";for(let j=0,re=B.length;j<re;++j){let se=U[B[j]],Ae=se[1],Ue=se[2],Ge=f(se,!1),ut={contents:""},ze=Ci(Ae,ut)+Ge,pt=ut.contents;ze||Hw(tr[Ue.type],U)?(p=p+(Z?"else if":"if")+("("+pt+"){"+ze+"}"),Z=!0):V=V?V+"||"+pt:pt}let M=l(h),N;V?N=(Z?"else if":"if")+("(!("+V+")){"+M+"}"):N=Z?"else{"+M+"}":m===""?M+";":M,p=p+N}d.cp=d.cp+p+m,e.i!==d.i&&(d.i=e.i);let oe=d.f&1?(d.i="Promise.resolve("+d.i+")",d.v=yc,d):d.v===Br&&e.cp===""&&d.cp===""&&s==="i"?(e.hd="",e.v=yc,e.i=s,e):d;return oe.s=u.length?ko(u):fh(),oe.e=i!==void 0?(oe.io=!0,wo(i)):t,oe}function h0(e,t){return t.every((r,n)=>{let i=e[n];return i!==void 0&&!(tr[r.type]&9152)&&r.type===i.type&&r.const===i.const?r.to===void 0:!1})}function _0(e,t){return kt(e,er,void 0,So(e.s,r=>{r.to=t}))}function yz(e,t){return!(tr[wo(t).type]&512)&&!(t.type===di&&t.anyOf.some(r=>tr[r.type]&512))?!e.some(r=>r.to!==void 0||r.parser!==void 0?!0:tr[r.type]&512):!1}function g0(e){if(e.parser!==void 0)return;let r=e.to;if(r!==void 0)return r}function ed(e,t){let r=e.d,n;if(r!==void 0)n=r;else{let u={};e.d=u,n=u}let i=n[t];if(i!==void 0)return Ji(i);let o=e.s.type===Ir?e.s.properties[t]:e.s.items[t],a;if(o!==void 0)a=o;else{let u=e.s.additionalItems;a=u==="strip"||u==="strict"?fa(e,e.s,e.e):e.s.type===Ir&&u.type!==rd&&!(tr[u.type]&512)&&!tz(u)?mh(u):u}let l="["+ua(e.g,t)+"]",d={p:e,v:Jp,i:Pi in a?id(e,a):e.v()+l,s:a,e:a,f:0,cp:"",hd:"",path:e.path+l,g:e.g};return n[t]=d,d}function Os(e){let t=e.s.type===Ki,r="",n="",i,o=Object.keys(e.d);for(let d=0,u=o.length;d<u;++d){let c=o[d],f=e.d[c];if(f.f&1&&(n=n+f.i+","),f.o){let p=i;i=m=>(p!==void 0?p(m):"")+("if("+f.v()+"!==void 0){"+m+"["+ua(e.g,c)+"]="+f.i+"}")}else r=r+(t?f.i:ua(e.g,c)+":"+f.i)+","}if(e.i=t?"["+r+"]":"{"+r+"}",n){let d=Ji(e);d.io=!0;let u=pr(d),c=Ci(u,void 0);return c===""&&n===u.i+","?e.i=u.i:e.i="Promise.all(["+n+"]).then((["+n+"])=>{"+c+"return "+u.i+"})",e.f=e.f|1,e.s=u.s,e.e=u.e,e.io=!0,e}let a=i;if(a===void 0)return e;let s=a(e.v()),l=kt(e,void 0,void 0,void 0);return l.cp=l.cp+s,l}function ko(e){let t=e.length;if(t===1)return e[0];if(t!==0){let r={},n=new Set;for(let o=0,a=e.length;o<a;++o){let s=e[o];s.type===di&&s.to===void 0?(s.anyOf.forEach(l=>{n.add(l)}),Object.assign(r,s.has)):(n.add(s),u0(r,s.type))}let i=Pr(di,!1);return i.anyOf=Array.from(n),i.decoder=p0,i.encoder=gz,i.has=r,i}throw new Error("[Sury] S.union requires at least one item")}function Hw(e,t){return e&8320&&Ir in t?!0:e&2048?vo in t:!1}function Vp(e){return tr[e.type]&8192?e.class.name:e.type}function mc(e){for(;;){let t=e,r=!1,n=!1,i=!1;if(t.to===void 0&&t.parser===void 0&&!(tr[t.type]&512)){let a=t.anyOf;i=a!==void 0?a.every(mc):!0}if(i){let a=t.items;n=a!==void 0?a.every(mc):!0}if(n){let a=t.properties;r=a!==void 0?Object.values(a).every(mc):!0}if(!r)return!1;let o=t.additionalItems;if(o===void 0||o==="strip"||o==="strict")return!0;e=o}}function sd(e){let t=Pr(Ki,e[la]===e);return t.additionalItems=e,t.items=wc,t.decoder=ad,t}function xc(e,t){let r=t!==void 0?t:ma(),n=wo(e);switch(n.type){case"undefined":return ko([r,Bw(e)]);case"union":let o=n.has,a=n.anyOf;return So(e,s=>{let l=Kj(o),d=[];for(let u=0,c=a.length;u<c;++u){let f=a[u],p=wo(f),m=p.type,h;if(m==="undefined")l[r.type]=!0,d.push(r),h=Bw(f);else{let _=p.properties;if(_!==void 0){let g=_[ca];h=g!==void 0?So(f,b=>{let y={},v={...g};v.const=g.const+1,y[ca]=v,b.properties=y}):f}else h=f}d.push(h)}d.length===a.length&&(l[r.type]=!0,d.push(r)),s.anyOf=d,s.has=l});default:return ko([e,r])}}function Bw(e){return So(e,t=>{t.to=_z(),t.parser=hz})}function ph(e){let t=Pr(Ir,e[la]===e);return t.properties=Xp,t.additionalItems=e,t.decoder=Ps,t}function Kw(e){let t=e.e,r=t.$ref,n=e.g.d,i=r.slice(8),o=n[i],a=e.g.o,s=e.s.seq===t.seq?o:e.s,l=s.seq+"-"+o.seq+"--"+a,d="",u=o[l];if(u!==void 0){let h=ue(u);d=h===0?Oi(e,o)+('["'+l+'"]'):Oi(e,h)}else{let h=x(o.hasTransform,!1),_=x(o.isAsync,!1),g=!0,b=0;for(;g;){g=!1,o.hasTransform===void 0&&(o.hasTransform=h),o.isAsync===void 0&&(o.isAsync=_),Vw[ks]=0,Cn(o,l,Vw);let y=m0(s,o,a,n);Ai[ks]=y,Cn(o,l,Ai),b=y;let v=o.hasTransform,S=o.isAsync;(v!==h||S!==_)&&(h=v,_=S,delete o[l],g=!0)}d=Oi(e,b)}let c=o.hasTransform===!0,f=o.isAsync,p="",m;if(c||f){let h=_n(e.g);p="let "+h+";";let _=Wn(e,h,t,t);_.v=Br,_.cp=h+"="+d+"("+e.i+");",f&&(_.f=_.f|1),m=_}else{let h=kt(e,t,void 0,t);h.cp=d+"("+e.i+");",m=h}return m.prev=void 0,m.cp=p+lh(m,e,void 0,void 0),m.fz=void 0,m.prev=e,m}Cn(oh,"~standard",{get:function(){let e=this;return{version:1,vendor:Qp,validate:t=>{try{return{value:vc(er,e)(t)}}catch(r){let n=kc(r);return{issues:[{message:n.reason,path:n.path===""?void 0:Jj(n.path)}]}}}}}});function y0(e,t){return vc(er,t)(e)}var bz="#/$defs/";function vz(e,t){return So(e,r=>{let n=t(r),i=r.refiner;i!==void 0?r.refiner=o=>{let a=i(o),s=n(o);for(let l=0,d=s.length;l<d;++l)a.push(s[l]);return a}:r.refiner=n})}function b0(e,t,r,n){let i=r!==void 0?r:"Refinement failed",o=n!==void 0?Xj(n):"";return vz(e,a=>(s=>{let l=Oi(s,t);return[{c:d=>l+"("+d+")",f:ah(void 0,o,i,void 0)}]}))}function v0(){let e=ui(od());return e.to=ma(),e}function S0(e,t){return So(e,r=>{let n=r.anyOf;if(n!==void 0){let o=[],a=[];for(let f=0,p=n.length;f<p;++f){let m=n[f],h=wo(m);h.type!=="undefined"&&(o.push(h),a.push(m))}let s=o.length,l;if(s!==1)if(s!==0)l=ko(o);else{let f="Can't set default for "+xr(r);throw new Error("[Sury] "+f)}else l=o[0];let d=a.length!==1?ko(a):a[0];if(t.TAG==="Value"){let f=t._0;try{vc(er,l)(f)}catch(p){let m=kc(p),h="Invalid default for "+xr(r)+": "+m.message;throw new Error("[Sury] "+h)}try{r.default=vc(Bi(d),void 0)(f)}catch{}}r.parser=f=>{let p=f.e.to,m=f.v(),h;return h=t.TAG==="Value"?id(f,ch(t._0)):Oi(f,t._0)+"()",Wn(f,m+"===void 0?"+h+":"+m,p,p)};let u=ui(l),c=u.decoder;u.serializer=f=>{let p=Bi(d);return kt(c(f),p,void 0,p)},u.decoder=e0,r.to=u;return}let i="Can't set default for "+xr(r);throw new Error("[Sury] "+i)})}function Yp(e,t){let r=tr[t.type];if(r&46)return pr(kt(e,er,void 0,t));if(r&2064){let i=ui(od());return i.to=t,pr(kt(e,er,void 0,i))}if(r&128){let i=sd(er),o=pr(kt(e,er,void 0,i));return o.s.additionalItems=hn(),o.e=t,o.io=!1,o}if(r&64){let i=ph(er),o=pr(kt(e,er,void 0,i));return o.s.additionalItems=hn(),o.e=t,o.io=!1,o}if(r&768)return e;let n=ui(Es());return n.to=t,pr(kt(e,er,void 0,n))}function bs(e){let t=tr[e.type],r=!0;if(!(t&46||e.$ref===hn().$ref||t&256&&e.anyOf.every(bs))){let i=!1;if(t&128){let o=e.additionalItems,a;a=o==="strip"||o==="strict"?!0:bs(o),i=a}r=i&&e.items.every(bs)}if(r)return!0;let n=!1;if(t&64){let i=e.additionalItems,o;o=i==="strip"||i==="strict"?!0:bs(i),n=o}return n?Object.values(e.properties).every(bs):!1}function Jw(e){let t=tr[e.s.type];if(bs(e.s))return e;if(t&2064)return bo(e,od(),void 0);if(t&128){let r=Pr(Ki,!1);r.items=e.s.items.map(o=>hn()),r.decoder=ad;let n=e.s.additionalItems,i;return i=n==="strip"||n==="strict"?n:hn(),r.additionalItems=i,r.to=e.e.to,pr(kt(e,void 0,void 0,r))}if(t&64){let r=e.s.additionalItems;if(!(r==="strip"||r==="strict")){let o=ph(hn());return o.to=e.e.to,pr(kt(e,void 0,void 0,o))}let n=As(e,e.s);n.e=hn(),e.e.to&&(n.e=ui(n.e),n.e.to=e.e.to);let i=Object.keys(e.s.properties);for(let o=0,a=i.length;o<a;++o){let s=i[o],l=ed(e,s);if(l.io=!1,l.s.type===di&&l.s.has[Un]){l.e=ko([ma(),hn()]);let d=pr(l);d.o=!0,Ei(n,s,d)}else l.e=hn(),Ei(n,s,pr(l))}return Os(n)}if(t&512)return Kw(e);if(t&256&&!(Un in e.s.has))return pr(_0(e,e.e));if(t&1)return e.e.to&&!e.e.parser?(e.s=hn(),Yp(e,e.e)):e.e.noValidation?(e.s=hn(),e):Kw(e);try{let r=ui(Es());return r.to=e.e,e.e=r,pr(e)}catch{return fa(e,e.s,hn())}}function hn(){return xo(sa,Kp,e=>{let t=Pr(Kp,!0);t.$ref=bz+sa,t.name=sa,t.decoder=Jw,t.encoder=Yp,e.$ref=t.$ref,e.name=sa,e.decoder=Jw,e.encoder=Yp;let r=[Es(),uh(),dh(),od(),ph(t),sd(t)],n={};r.forEach(a=>{n[a.type]=!0});let i=Pr(di,!0);i.anyOf=r,i.has=n,i.decoder=p0,i.name=sa,i.type=di;let o={};o[sa]=i,e.$defs=o})}function Sz(e){return e[th]}function td(e,t,r){let n=ui(wo(e));return n.from=t,r!==void 0&&(n.fromFlattened=r),new Proxy(n,{get:(i,o)=>{if(o===th)return i;let a=i.items,s=i.properties,l=s!==void 0?s[o]:a!==void 0?a[o]:void 0;if(l===void 0){let d='Cannot read property "'+o+'" of '+xr(i);throw new Error("[Sury] "+d)}return td(l,i.from.concat(o),i.fromFlattened)}})}function w0(e,t,r){let n=As(e,t);n.io=!0;let i=t.items;if(i!==void 0)for(let o=0,a=i.length;o<a;++o){let s=o.toString();Ei(n,s,r(s,i[o]))}else{let o=t.properties;if(o!==void 0){let a=Object.keys(o);for(let s=0,l=a.length;s<l;++s){let d=a[s];Ei(n,d,r(d,o[d]))}}else{let a="Don't know where the value is coming from: "+xr(t);throw new Error("[Sury] "+a)}}return Os(n)}function k0(e,t){let r=t.from,n=t.fromFlattened,i=n!==void 0?Ji(Yw(e.fv[n],t.from,0)):r!==void 0?Ji(Yw(e,r,0)):Pi in t?bo(e,t,void 0):w0(e,t,(o,a)=>k0(e,a));return i.prev=void 0,i.e=t,i}function x0(e,t){let r=t.e,n=r.from;if(n!==void 0){let a=r.fromFlattened,s;if(a!==void 0){e.flattened===void 0&&(e.flattened=[]);let l=e.flattened[a];if(l!==void 0)s=l;else{let d={};e.flattened[a]=d,s=d}}else s=e;for(let l=0,d=n.length;l<d;++l){let u=n[l],c=s.properties,f;if(c!==void 0)f=c;else{let h={};s.properties=h,f=h}let p=f[u],m;if(p!==void 0)m=p;else{let h={};f[u]=h,m=h}s=m}s.val=t;return}let i=t.d;if(i===void 0)return;let o=Object.keys(i);for(let a=0,s=o.length;a<s;++a)x0(e,i[o[a]])}function pc(e,t,r,n){let i=0;if(t!==void 0){let o=t.val;if(o!==void 0){let a=Ji(o);return a.t=!0,a.s=r,a.e=r,pr(a)}i=1}else i=1;if(i===1){if(Pi in r){let c=bo(e,r,r);return c.prev=void 0,c.p=e,c.v=Jp,c.io=!0,pr(c)}let o=t===void 0?wo(r):r,a=As(e,o);a.e=o,a.io=!0,a.prev=void 0,a.p=e,a.v=Jp;let s=o.flattened,l=o.items,d=0,u=0;if(l!==void 0&&(t!==void 0||typeof o.additionalItems!==Ir))for(let c=0,f=l.length;c<f;++c){let p=c.toString(),m;if(t!==void 0){let _=t.properties;m=_!==void 0?_[p]:void 0}else m=void 0;let h=ua(e.g,p);Ei(a,p,pc(e,m,l[c],n+("["+h+"]")))}else u=3;if(u===3){let c=o.properties;if(c!==void 0&&(t!==void 0||typeof o.additionalItems!==Ir)){if(s!==void 0&&t!==void 0){let p=t.flattened;p!==void 0&&p.forEach((m,h)=>{let g=pc(e,m,Bi(s[h]),n).d,b=Object.keys(g);for(let y=0,v=b.length;y<v;++y){let S=b[y];Ei(a,S,g[S])}})}let f=Object.keys(c);for(let p=0,m=f.length;p<m;++p){let h=f[p];if(!(h in a.d)){let _;if(t!==void 0){let b=t.properties;_=b!==void 0?b[h]:void 0}else _=void 0;let g=ua(e.g,h);Ei(a,h,pc(e,_,c[h],n+("["+g+"]")))}}}else d=2}if(d===2){let c=r.from,f=c!==void 0?n+c.map(m=>'["'+m+'"]').join(""):n,p=f===""?"":" at "+f;lz(e,"Missing input for "+xr(r)+p)}return Os(a)}}function Yw(e,t,r){for(;;){let n=r,i=e,o=t[n];if(o===void 0)return i;r=n+1|0,e=i.d[o]}}function Sc(e,t){if(typeof e!==Ir||e===null)return ch(e);let r=t(e);if(r!==void 0)return r;if(Array.isArray(e)){for(let l=0,d=e.length;l<d;++l){let u=Sc(e[l],t);e[l]=u}let s=Pr(Ki,!1);return s.items=e,s.additionalItems="strict",s.decoder=ad,s}let n=e.constructor;if(n&&n!==Object){let s=Pr(rh,!0);return s.class=n,s.const=e,s.decoder=Ts,s}let i=Object.keys(e),o=i.length;for(let s=0;s<o;++s){let l=i[s],d=Sc(e[l],t);e[l]=d}let a=Pr(Ir,!1);return a.required=i,a.properties=e,a.additionalItems=Yl.a,a.decoder=Ps,a}function wz(e){let t={};x0(t,e);let r=e.e.to,n=pc(e,t,r,"");return n.t=!0,n.prev=e,n}function Tc(e){return Sc(e,t=>{if(t["~standard"])return t})}function T0(e){let t=this,r="~"+e,n=t[r];if(n!==void 0)return ue(n);let i={},o=[],a=Pr(Ir,!1);a.required=o,a.properties=i,a.additionalItems=Yl.a,a.decoder=Ps;let s=t.f(e,a)[th],l=(p,m)=>{let h=Cs(p);if(p in i)throw new Error("[Sury] "+("The field "+h+" defined twice"));return o.push(p),i[p]=m,td(m,s.from.concat(p),s.fromFlattened)},f={field:l,f:l,fieldOr:(p,m,h)=>{let _=xc(m,void 0);return l(p,S0(_,{TAG:"Value",_0:h}))},tag:(p,m)=>{l(p,Tc(m))},nested:T0,flatten:p=>{if(p.type==="object"){let _=p.to,g=p.properties;if(_){let v="Unsupported nested flatten for transformed object schema "+xr(p);throw new Error("[Sury] "+v)}let b=Object.keys(g),y={};for(let v=0,S=b.length;v<S;++v){let A=b[v];y[A]=l(A,g[A])}return y}let h="Can't flatten "+xr(p)+" schema";throw new Error("[Sury] "+h)}};return t[r]=f,f}function A0(e){let t=ui(Sc(e,Sz));return t.serializer=wz,t}function O0(e){let t=e.e.flattened;if(t!==void 0){let i=[];for(let o=0,a=t.length;o<a;++o){let s=t[o],l=s.to,d;if(l!==void 0){let u=Ji(e);u.e=s,u.io=!0,d=pr(u)}else{let u=w0(e,s,(c,f)=>ed(e,c));u.e=s,u.prev=void 0,d=Ql(u,u)}i.push(d),e.cp=e.cp+Ci(d,void 0)}e.fv=i}let r=e.e.to,n=k0(e,r);return n.t=!0,n.prev=e,Ql(n,e)}function C0(e){let t,r={},n=u=>{if(u.type==="object"){let p=u.properties,m=Object.keys(p);for(let _=0,g=m.length;_<g;++_){let b=m[_],y=p[b],v=r[b];if(v!==void 0){if(v!==y)throw new Error("[Sury] "+('The field "'+b+'" defined twice with incompatible schemas'))}else r[b]=y}let h=t||(t=[]);return td(u,wc,h.push(u)-1|0)}let f="The '"+xr(u)+"' schema can't be flattened";throw new Error("[Sury] "+f)},i=(u,c)=>{if(u in r)throw new Error("[Sury] "+('The field "'+u+'" defined twice with incompatible schemas'));return r[u]=c,td(c,[u],void 0)},l=e({field:i,f:i,fieldOr:(u,c,f)=>{let p=xc(c,void 0);return i(u,S0(p,{TAG:"Value",_0:f}))},tag:(u,c)=>{i(u,Tc(c))},nested:T0,flatten:n}),d=Pr(Ir,!1);return d.required=Object.keys(r),d.properties=r,d.additionalItems=Yl.a,d.decoder=Ps,d.parser=O0,d.to=A0(l),t!==void 0&&(d.flattened=t),d}function E0(e){let t=[],r=(s,l)=>{let d=s.toString();if(t[s])throw new Error("[Sury] "+("The item ["+d+"] is defined multiple times"));return t[s]=l,td(l,[s.toString()],void 0)},o=e({item:r,tag:(s,l)=>{r(s,Tc(l))}});for(let s=0,l=t.length;s<l;++s)t[s]||(t[s]=ma());let a=Pr(Ki,!1);return a.items=t,a.additionalItems="strict",a.decoder=ad,a.parser=O0,a.to=A0(o),a}var kz=Tc;function P0(e){return ko(e.map(kz))}function R0(e){return xc(e,v0())}var I0=ko;var At=Es(),$0=uh();var Rs=dh();var M0=hn();var j0=nh;var Ac=sd;var hr=mh;var hh=R0;var z0=I0,Oc=P0;var Yi=b0;var N0=y0;var En=C0;var G0=E0;function Tz(e){return{path:e.path,summary:e.message}}function we(e){return{path:"",summary:e}}function Is(e,t){try{return{TAG:"Ok",_0:N0(e,t)}}catch(r){let n=ee(r);if(n.RE_EXN_ID===j0)return{TAG:"Error",_0:Tz(n._1)};throw n}}import*as dd from"node:fs";import*as L0 from"node:os";import*as Cc from"node:path";var Az="--api-url must be ws://, wss://, http://, or https://";function on(e){let t=Ln(e);if(t===void 0)return{TAG:"Error",_0:"invalid URL: "+e};let r=ue(t),n=r.protocol,i;switch(n){case"http:":case"https:":i={TAG:"Ok",_0:void 0};break;case"ws:":r.protocol="http:",i={TAG:"Ok",_0:void 0};break;case"wss:":r.protocol="https:",i={TAG:"Ok",_0:void 0};break;default:i={TAG:"Error",_0:Az}}return wt(i,()=>{r.pathname="",r.search="",r.hash="";let o=r.toString();return o.endsWith("/")?o.slice(0,o.length-1|0):o})}var $s="wss://serve.linzumi.com";function ud(){return Cc.join(L0.homedir(),".linzumi","auth.json")}var F0="Kandan auth cache must contain a JSON object",Oz="Kandan auth cache local_codex_runner must be an object",Cz="Kandan auth cache personal_agent_delegation must be an object";function D0(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e.access_token,r=e.issued_at;if(t===void 0||typeof t!="string"||r===void 0||typeof r!="string")return;let n=e.expires_at,i;return i=typeof n=="string"?n:void 0,{accessToken:t,issuedAt:r,expiresAt:i}}function U0(e){let t;try{t=JSON.parse(e)}catch{t=void 0}if(t===void 0)return{TAG:"Error",_0:we(F0)};if(typeof t!="object"||t===null||Array.isArray(t))return{TAG:"Error",_0:we(F0)};let r=t.local_codex_runner,n=t.personal_agent_delegation,i=r!==void 0?typeof r=="object"&&r!==null&&!Array.isArray(r):!0,o=n!==void 0?typeof n=="object"&&n!==null&&!Array.isArray(n):!0;if(!i)return{TAG:"Error",_0:we(Oz)};if(!o)return{TAG:"Error",_0:we(Cz)};let a;return a=typeof r=="object"&&r!==null&&!Array.isArray(r)?Object.fromEntries($e(Object.entries(r),s=>{let l=s[0];return G(D0(s[1]),d=>[l,d])})):void 0,{TAG:"Ok",_0:{serverTokens:a,personalAgentDelegation:k(n,D0)}}}function W0(e){return dd.existsSync(e)?he($t(Qt(e),t=>we(t.message)),t=>wt(U0(t),r=>r)):{TAG:"Ok",_0:void 0}}function Z0(e,t){return e!==void 0?new Date(e).getTime()<=t:!1}function Ec(e,t,r){return dd.existsSync(t)?he(W0(t),n=>wt($t(on(e),we),i=>k(k(k(n,o=>o.serverTokens),o=>o[i]),o=>{if(!(o.accessToken.trim()===""||Z0(o.expiresAt,r)))return{accessToken:o.accessToken,serverBaseUrl:i,issuedAt:o.issuedAt,expiresAt:o.expiresAt}}))):{TAG:"Ok",_0:void 0}}function Ez(e){return"missing personal-agent delegation auth file: "+e}var Pz="personal-agent delegation auth file is missing access_token",Rz="personal-agent delegation auth file token is expired";function V0(e,t){return dd.existsSync(e)?he(W0(e),r=>{let n=k(r,i=>i.personalAgentDelegation);return n!==void 0&&n.accessToken.trim()!==""?Z0(n.expiresAt,t)?{TAG:"Error",_0:we(Rz)}:{TAG:"Ok",_0:n}:{TAG:"Error",_0:we(Pz)}}):{TAG:"Error",_0:we(Ez(e))}}function q0(e){let t={};t.access_token=e.accessToken,t.issued_at=e.issuedAt;let r=e.expiresAt;return r!==void 0&&(t.expires_at=r),t}function Iz(e){let t={};t.version=1;let r=e.serverTokens;r!==void 0&&(t.local_codex_runner=Object.fromEntries(Object.entries(r).map(i=>[i[0],q0(i[1])])));let n=e.personalAgentDelegation;return n!==void 0&&(t.personal_agent_delegation=q0(n)),t}function Pc(e,t,r,n,i){return he($t(on(e),we),o=>{let a=dd.existsSync(n)?he($t(Qt(n),s=>we(s.message)),U0):{TAG:"Ok",_0:{serverTokens:void 0,personalAgentDelegation:void 0}};return he(a,s=>{let l=i.toISOString(),d=G(r,g=>new Date(i.getTime()+g*1e3).toISOString()),u={accessToken:t,issuedAt:l,expiresAt:d},c=s.serverTokens,f=c!==void 0?Object.fromEntries(Object.entries(c)):{};f[o]=u;let p=Iz({serverTokens:f,personalAgentDelegation:s.personalAgentDelegation}),m=JSON.stringify(p,void 0,2)+`
|
|
109
|
+
`,h=n+".tmp."+process.pid.toString()+"."+oc(6),_=g=>we(g.message);return he($t(Lt(Cc.dirname(n)),_),()=>{let g=he(yo(h,m,{encoding:"utf8",mode:384}),()=>li(h,n));return g.TAG==="Ok"?{TAG:"Ok",_0:{accessToken:t,serverBaseUrl:o,issuedAt:l,expiresAt:d}}:(pn(h),{TAG:"Error",_0:we(g._0.message)})})})})}function gh(e){let t=Sr(e);return t!==void 0?x(Er(ue(t)),"unknown error"):"unknown error"}async function pa(e,t){try{return{TAG:"Ok",_0:await fetch(e,t)}}catch(r){let n=ee(r);return{TAG:"Error",_0:{message:gh(n)}}}}async function $z(e){try{return{TAG:"Ok",_0:await e.text()}}catch(t){let r=ee(t);return{TAG:"Error",_0:{message:gh(r)}}}}async function cd(e){let t=await $z(e);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};try{return{TAG:"Ok",_0:JSON.parse(t._0)}}catch(r){let n=ee(r);return{TAG:"Error",_0:{message:gh(n)}}}}function Mz(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}async function Ms(e,t,r,n,i){let o=i!==void 0?i:[],a=$t(on(e),we);if(a.TAG!=="Ok")return{TAG:"Error",_0:a._0};let s=Hi("/api/v2/local-codex-runner/oauth/validate",a._0);if(s.TAG!=="Ok")return{TAG:"Error",_0:we(s._0)};let l=s._0,d=l.searchParams;r!==void 0&&d.set("workspace",r),n!==void 0&&d.set("channel",n),o.forEach(m=>{d.append("required_scope",m)});let u={};u.authorization="Bearer "+t;let c=await pa(l.toString(),{method:"GET",headers:u});if(c.TAG!=="Ok")return{TAG:"Error",_0:we(c._0.message)};let f=c._0,p=f.status;if(p>404||p<401){if(p===200){let m=await cd(f);return m.TAG!=="Ok"?{TAG:"Error",_0:we(m._0.message)}:k(Mz(m._0),_=>_.ok)===!0?{TAG:"Ok",_0:"Usable"}:{TAG:"Ok",_0:"Rejected"}}}else{if(p<402)return{TAG:"Ok",_0:"Rejected"};switch(p){case 402:break;case 403:return{TAG:"Ok",_0:"Rejected"};case 404:return{TAG:"Ok",_0:"NotFound"}}}return{TAG:"Error",_0:we("local runner auth validation failed with HTTP "+p.toString())}}import*as mk from"node:os";import*as Mc from"node:fs";import*as kh from"node:os";import*as Fr from"node:path";import*as xh from"node:crypto";function ke(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function Qi(e){if(Array.isArray(e))return e}function Tr(e){if(typeof e!="string")return;let t=e.trim();if(t!=="")return t}function Ot(e){return isFinite(e)?Math.trunc(e)===e:!1}function ha(e){if(typeof e=="number"&&Ot(e))return e}function Rc(e){return Array.isArray(e)?$e(e,Tr):[]}function _a(e){try{return ke(JSON.parse(e))}catch{return}}var jz=new RegExp("^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$","i"),zz=new RegExp("^[a-zA-Z0-9_.-]+$");function vh(e){return jz.test(e)}function $c(e){return zz.test(e)}var Nz=Yi(At,e=>e.trim()!=="","allowedCwds entries must be non-empty strings",void 0);function K0(e){return{version:1,machineId:e.f("machineId",hr(Yi(At,vh,"invalid machine id",void 0))),runnerId:e.f("runnerId",hr(Yi(At,$c,"invalid runner id",void 0))),allowedCwds:e.f("allowedCwds",Ac(Nz))}}var Gz=En(K0),Fz=En(e=>(e.tag("version",1),K0(e)));function fd(e){let t=new Set;return $e(e,r=>{let n=r.trim();if(!(n===""||t.has(n)))return t.add(n),n})}function J0(e){return{version:e.version,machineId:e.machineId,runnerId:e.runnerId,allowedCwds:fd(e.allowedCwds)}}function Sh(e){return wt(Is(e,Fz),J0)}function Y0(e){return wt(Is(e,Gz),J0)}var Ic=hr(Yi(At,e=>e.trim()!=="","must be a non-empty string",void 0)),H0=hr(Yi(Rs,e=>Ot(e)?e>0:!1,"must be a positive integer",void 0));function Dz(e){return!Number.isNaN(new Date(e).getTime())}var B0=Yi(At,Dz,"must be a parseable date",void 0),$8=En(e=>({email:e.f("email",Yi(At,t=>t.trim()!=="","must be a non-empty string",void 0)),serviceUrl:e.f("service_url",Yi(At,t=>t.trim()!=="","must be a non-empty string",void 0)),accessToken:e.f("access_token",Ic),refreshToken:e.f("refresh_token",Ic),expiresInSeconds:e.f("expires_in_seconds",H0),userId:e.f("user_id",H0),workspaceSlug:e.f("workspace_slug",Ic),launchUrl:e.f("launch_url",Ic),createdAt:e.f("created_at",B0),updatedAt:e.f("updated_at",B0)}));var Ri="prod";function X0(e){let t=e!==void 0?e:process.env,r=oa(t,"HOME");return r!==void 0&&r.trim()!==""?r:kh.homedir()}function js(e,t){let r=e!==void 0?e:process.env;return t==="~"?X0(r):t.startsWith("~/")?Fr.resolve(X0(r),t.slice(2)):t}function jc(e){let t=oa(e,"LINZUMI_CONFIG_FILE");return t!==void 0&&t.trim()!==""?Fr.resolve(js(e,t)):Fr.resolve(kh.homedir(),".linzumi","config.json")}function md(e){let t=on(e),r=on($s);if(t.TAG!=="Ok")return{TAG:"Error",_0:we(t._0)};let n=t._0;return r.TAG==="Ok"?{TAG:"Ok",_0:n===r._0?Ri:n}:{TAG:"Error",_0:we(r._0)}}function Lz(e){return wt(md(e),t=>t===Ri?Ri:Buffer.from(t).toString("base64url"))}function Uz(e,t,r){let n=Fr.dirname(e),i=Fr.basename(e);return t!==void 0?he(md(t),o=>o===Ri?{TAG:"Ok",_0:Fr.join(n,i+"."+r)}:wt(Lz(t),a=>Fr.join(n,i+"."+a+"."+r))):{TAG:"Ok",_0:Fr.join(n,i+"."+r)}}function ek(e){if(Mc.existsSync(e))return he($t(Qt(e),r=>we(r.message)),r=>{let n;try{n=JSON.parse(r)}catch{n=void 0}return typeof n=="object"&&n!==null&&!Array.isArray(n)?Sh(n).TAG==="Ok"?{TAG:"Ok",_0:n}:{TAG:"Error",_0:we("invalid Linzumi config: "+e)}:{TAG:"Error",_0:we("invalid Linzumi config: "+e)}});let t={};return t.version=1,t.allowedCwds=[],{TAG:"Ok",_0:t}}function Wz(){let e={};return e.allowedCwds=[],e}function wh(e,t){return he(ek(e),r=>{let n=t!==void 0?md(t):{TAG:"Ok",_0:Ri};return he(n,i=>{let o=i===Ri?r:x(r[i],Wz()),a=i===Ri?Sh(o):Y0(o);return $t(a,s=>we("invalid Linzumi config section "+i+": "+e))})})}function Zz(e,t){let r=i=>we(i.message),n=Mc.existsSync(e)?$t(ps(e,384),r):{TAG:"Ok",_0:void 0};return he(he(n,()=>$t(yo(e,JSON.stringify(t,void 0,2)+`
|
|
110
|
+
`,{encoding:"utf8",mode:384}),r)),()=>$t(ps(e,384),r))}function Vz(e){let t={},r=e.machineId;r!==void 0&&(t.machineId=r);let n=e.runnerId;return n!==void 0&&(t.runnerId=n),t.allowedCwds=fd(e.allowedCwds).map(i=>i),t}function Hz(e){let t=e.version===1,r=e.machineId,n=r!==void 0?vh(r):!0,i=e.runnerId,o=i!==void 0?$c(i):!0,a=e.allowedCwds.every(s=>s.trim()!=="");return t&&n&&o&&a?{TAG:"Ok",_0:void 0}:{TAG:"Error",_0:we("invalid Linzumi config")}}function Bz(e,t,r){return he(Hz(e),()=>{let n=r!==void 0?md(r):{TAG:"Ok",_0:Ri};return he(n,i=>he(ek(t),o=>{let a=Object.fromEntries(Object.entries(o)),s=Vz(e);return i===Ri?(Object.entries(s).forEach(l=>{a[l[0]]=l[1]}),a.version=1):(a.version=1,a[i]=s),he($t(Lt(Fr.dirname(t)),l=>we(l.message)),()=>Zz(t,a))}))})}function Q0(e,t,r){return he($t(Qt(e),n=>we(n.message)),n=>{let i=n.trim();return t(i)?{TAG:"Ok",_0:i}:{TAG:"Error",_0:we("invalid Linzumi "+r+" seed: "+e)}})}function Kz(e,t,r,n){if(Mc.existsSync(e))return Q0(e,r,n);let i=t();if(!r(i))return{TAG:"Error",_0:we("invalid generated Linzumi "+n+": "+i)};let o=Fr.dirname(e),a=Fr.basename(e),s=Fr.join(o,"."+a+"."+process.pid.toString()+"."+xh.randomUUID()+".tmp"),l=d=>we(d.message);return he(he($t(Lt(o),l),()=>$t(yo(s,i+`
|
|
111
|
+
`,{encoding:"utf8",flag:"wx"}),l)),()=>{let d=$w(s,e),u;if(d.TAG==="Ok")u={TAG:"Ok",_0:i};else{let c=d._0;u=si(c,"EEXIST")?Q0(e,r,n):{TAG:"Error",_0:we(c.message)}}return Mw(s),u})}function Jz(){return"runner-"+xh.randomUUID()}function Yz(e,t,r,n,i,o,a,s){let l=t!==void 0?wt(md(t),d=>{if(d!==Ri)return t}):{TAG:"Ok",_0:void 0};return he(l,d=>he(wh(e,d),u=>{let c=a(u);return c!==void 0?{TAG:"Ok",_0:c}:he(Uz(e,d,r),f=>he(Kz(f,n,i,o),p=>he(wh(e,d),m=>{let h=a(m);return h!==void 0?{TAG:"Ok",_0:h}:wt(Bz(s(m,p),e,d),()=>p)})))}))}function zc(e,t,r){return Yz(e,t,"runner-id",r!==void 0?r:Jz,$c,"runner id",i=>i.runnerId,(i,o)=>({version:i.version,machineId:i.machineId,runnerId:o,allowedCwds:i.allowedCwds}))}var Xz=["ENOENT","ENOTDIR","EACCES","ELOOP","EIO"];function Qz(e){let t=e.code;return t!==void 0?Xz.includes(t):!1}function tk(e,t){return he(wh(e,t),r=>{let n=[],i=[],o={contents:void 0};r.allowedCwds.forEach(s=>{if(o.contents!==void 0)return;let d=Fr.resolve(js(void 0,s)),u=Dn(d);if(u.TAG==="Ok"){let f=u._0;if(n.push(f),f===d)return;n.push(d);return}let c=u._0;Qz(c)?i.push(d):o.contents=we(c.message)});let a=o.contents;return a!==void 0?{TAG:"Error",_0:a}:{TAG:"Ok",_0:{allowedCwds:fd(n),missingAllowedCwds:fd(i)}}})}function nk(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e.error;if(typeof t=="string")return t}function ik(e,t){if(e===void 0)return t!==void 0?"local runner device authorization failed (HTTP "+t.toString()+", no reason returned by the server)":"local runner device authorization failed (no reason returned by the server)";switch(e){case"access_denied":return"local runner device authorization was denied";case"approving_user_not_found":return"local runner device authorization failed: the approving Linzumi account could not be found";case"device_session_consumed":return"local runner device authorization was already used";case"device_session_expired":return"local runner device authorization expired";case"device_session_not_pending":return"local runner device authorization was already decided (approved or denied) on the server";case"invalid_device_code":return"local runner device authorization code was rejected";case"invalid_user_code":return"local runner device authorization code was not recognized by the server";case"rate_limited":return"local runner device authorization was rate limited by the server; wait a minute and retry";default:return"local runner device authorization failed (server said: "+e+")"}}function zs(e,t){let r=e[t];if(r!==void 0&&typeof r=="string"&&r.trim()!=="")return r}async function ok(e,t,r,n,i){let o=Hi("/api/v2/local-codex-runner/device/start",e);if(o.TAG!=="Ok")return{TAG:"Error",_0:we(o._0)};let a={},s=(_,g)=>{if(g!==void 0){a[_]=g;return}};s("workspace",t),s("channel",r),s("onboarding",n),i!==void 0&&(s("runner_id",i.commanderId),s("machine_fingerprint",i.machineFingerprint),s("hostname",i.hostname));let l={};l["content-type"]="application/json";let d=await pa(o._0.toString(),{method:"POST",headers:l,body:JSON.stringify(a)});if(d.TAG!=="Ok")return{TAG:"Error",_0:we(d._0.message)};let u=d._0,c=u.status,f=await cd(u);if(f.TAG!=="Ok")return{TAG:"Error",_0:we(f._0.message)};let p=f._0;if(c>=200&&c<300){if(Array.isArray(p))return{TAG:"Error",_0:we("local runner device authorization response was incomplete")};if(p!==null)switch(typeof p){case"object":let _=zs(p,"device_code"),g=zs(p,"user_code"),b=zs(p,"verification_uri");if(_===void 0)return{TAG:"Error",_0:we("local runner device authorization response was incomplete")};if(g===void 0)return{TAG:"Error",_0:we("local runner device authorization response was incomplete")};if(b===void 0)return{TAG:"Error",_0:we("local runner device authorization response was incomplete")};let y=p.expires_in,v;return v=typeof y=="number"?y:void 0,{TAG:"Ok",_0:{deviceCode:_,userCode:g,verificationUri:b,expiresInSeconds:v}}}}let h=nk(p);return{TAG:"Error",_0:we(h!==void 0?"local runner device authorization failed to start (server said: "+h+")":"local runner device authorization failed to start (HTTP "+c.toString()+")")}}async function e1(e,t,r){let n=new AbortController,i=setTimeout(()=>{n.abort()},r+1e4|0),o={};o.device_code=t,o.wait_ms=r;let a={};a["content-type"]="application/json";let s=Hi("/api/v2/local-codex-runner/device/token",e),l;if(l=s.TAG==="Ok"?await pa(s._0.toString(),{method:"POST",headers:a,body:JSON.stringify(o),signal:Ze(n.signal)}):{TAG:"Error",_0:{message:s._0}},l.TAG==="Ok"){let d=l._0,u=d.status,c=await cd(d);if(clearTimeout(i),c.TAG!=="Ok")return n.signal.aborted?"Continue":{TAG:"Done",_0:{TAG:"Transient",reason:"non-JSON device/token response ("+c._0.message+")",httpStatus:u}};let f=c._0,p=u>=200&&u<300,m=nk(f),h=0;if(u!==202||m===void 0)h=1;else{if(m==="authorization_pending")return"Continue";h=1}if(h===1){let _=0;if(p){if(Array.isArray(f))return{TAG:"Done",_0:{TAG:"Rejected",reason:"device token response did not include access_token",httpStatus:u}};if(f===null)_=2;else switch(typeof f){case"object":let g=zs(f,"access_token");if(g===void 0)return{TAG:"Done",_0:{TAG:"Rejected",reason:"device token response did not include access_token",httpStatus:u}};let b=f.expires_in,y;return y=typeof b=="number"?b:void 0,{TAG:"Done",_0:{TAG:"Token",_0:{accessToken:g,expiresInSeconds:y,workspaceSlug:zs(f,"workspace"),channelSlug:zs(f,"channel")}}};default:_=2}}else _=2;if(_===2){let g=0;if(m!==void 0)switch(m){case"access_denied":return{TAG:"Done",_0:"Denied"};case"device_session_consumed":return{TAG:"Done",_0:"Consumed"};case"device_session_expired":return{TAG:"Done",_0:"CodeExpired"};default:g=3}else g=3;if(g===3)return u>=500||u===429?{TAG:"Done",_0:{TAG:"Transient",reason:m!==void 0?m:"HTTP "+u.toString(),httpStatus:u}}:{TAG:"Done",_0:{TAG:"Rejected",reason:m,httpStatus:u}}}}}else return clearTimeout(i),n.signal.aborted?"Continue":{TAG:"Done",_0:{TAG:"Transient",reason:l._0.message,httpStatus:void 0}}}async function ak(e,t,r,n){let i=n!==void 0?n:()=>Date.now(),o=r!==void 0&&r>=0?r:600,a=i()+o*1e3,s=async()=>{if(i()>=a)return"CodeExpired";let l=Math.max(0,Math.min(3e4,a-i())),d=await e1(e,t,l);return typeof d!="object"?await s():d._0};return await s()}var r1=3600*1e3;function n1(e,t,r,n){return e<=3?"DecidePrompt":r!==void 0&&t-r<r1?n?"DecideRefreshLine":"DecideSilent":"DecideSummary"}function sk(e){let t=Math.floor(e/6e4),r=Math.floor(t/60),n=t-r*60;return r>0?r.toString()+"h "+n.toString()+"m":n.toString()+"m"}function i1(e){switch(e.TAG){case"Prompt":return(e.cycle===1?"":`The previous code expired; here is a fresh one (no restart needed - this prompt stays alive).
|
|
112
112
|
`)+`Authorize this computer:
|
|
113
113
|
Code: `+e.userCode+`
|
|
114
114
|
Open: `+e.verificationUri+`
|
|
@@ -118,8 +118,8 @@ Code: `+e.userCode+`
|
|
|
118
118
|
Open: `+e.verificationUri+`
|
|
119
119
|
`);case"RefreshLine":return"\r\x1B[2KCode: "+e.userCode+" (waiting "+sk(e.waitedMs)+") - open "+e.verificationUri;case"TransientFailure":return"Device authorization poll hit a transient failure ("+e.reason+`); retrying with the same code.
|
|
120
120
|
`;case"StartFailed":return"Could not mint a device authorization code ("+e.reason+"); retrying in "+Math.round(e.retryInMs/1e3).toString()+`s.
|
|
121
|
-
`}}function i1(e){return new Promise((t,r)=>{setTimeout(()=>t(),e|0)})}function o1(e){return{startDeviceAuthorization:t=>ok(t.httpBaseUrl,t.workspaceSlug,t.channelSlug,t.onboarding,t.identity),pollDeviceCodeForToken:t=>ak(t.httpBaseUrl,t.deviceCode,t.expiresInSeconds,void 0),now:()=>Date.now(),sleep:i1,report:e,log:(t,r)=>{}}}var a1="local runner device authorization was denied - a signed-in user rejected this computer";async function lk(e,t,r,n,i,o,a,s){let l=o!==void 0?o:g=>{mr(g)},d=s!==void 0?s:o1(g=>l(n1(g))),u=a!==void 0?a:de(Yt(process.stderr.isTTY),!0),c=$t(on(e),we);if(c.TAG!=="Ok")return{TAG:"Error",_0:c._0};let f=c._0,p=d.now(),m={cycle:0,lastLoudPromptAtMs:void 0,startFailures:0},h=async g=>{let b=await d.pollDeviceCodeForToken({httpBaseUrl:f,deviceCode:g.deviceCode,expiresInSeconds:g.expiresInSeconds});if(typeof b!="object"||b.TAG!=="Transient")return b;let y=b.httpStatus,v=b.reason;d.report({TAG:"TransientFailure",reason:v,waitedMs:d.now()-p});let S={};return S.cycle=m.cycle,S.reason=v,S.httpStatus=y!==void 0?y:null,d.log("device_wait.transient_poll_failure",S),await d.sleep(5e3),await h(g)},_=async()=>{let g=await d.startDeviceAuthorization({httpBaseUrl:f,workspaceSlug:t,channelSlug:r,onboarding:n,identity:i});if(g.TAG==="Ok"){let b=g._0;m.startFailures=0,m.cycle=m.cycle+1|0;let y=r1(m.cycle,d.now(),m.lastLoudPromptAtMs,u),v=0;switch(y){case"DecidePrompt":case"DecideSummary":v=1;break;case"DecideRefreshLine":d.report({TAG:"RefreshLine",cycle:m.cycle,userCode:b.userCode,verificationUri:b.verificationUri,waitedMs:d.now()-p});break;case"DecideSilent":break}if(v===1){m.lastLoudPromptAtMs=d.now();let R=d.now()-p,W;W=y==="DecidePrompt"?{TAG:"Prompt",cycle:m.cycle,userCode:b.userCode,verificationUri:b.verificationUri,waitedMs:R}:{TAG:"Summary",cycle:m.cycle,userCode:b.userCode,verificationUri:b.verificationUri,waitedMs:R},d.report(W)}let S={};S.cycle=m.cycle,S.verificationUri=b.verificationUri,d.log("device_wait.code_issued",S);let A=await h(b);if(typeof A!="object")switch(A){case"CodeExpired":let R={};return R.cycle=m.cycle,R.outcome="code_expired",d.log("device_wait.code_retired",R),await _();case"Denied":return{TAG:"Error",_0:we(a1)};case"Consumed":let W={};return W.cycle=m.cycle,W.outcome="consumed",d.log("device_wait.code_retired",W),await _()}else switch(A.TAG){case"Token":let R={};return R.cycle=m.cycle,R.waitedMs=d.now()-p,d.log("device_wait.authorized",R),{TAG:"Ok",_0:A._0};case"Rejected":let W=A.httpStatus,L=A.reason;d.report({TAG:"TransientFailure",reason:ik(L,W),waitedMs:d.now()-p});let ae={};return ae.cycle=m.cycle,ae.reason=L!==void 0?L:null,ae.httpStatus=W,d.log("device_wait.code_rejected",ae),await _();case"Transient":return await _()}}else{let b=g._0;m.startFailures=m.startFailures+1|0;let y=Math.min(6e4,5e3*Math.pow(2,m.startFailures-1|0));d.report({TAG:"StartFailed",reason:b.summary,retryInMs:y});let v={};return v.reason=b.summary,v.retryInMs=y,v.attempt=m.startFailures,d.log("device_wait.start_failed",v),await d.sleep(y),await _()}};return await _()}function ga(e,t){let r=t!==void 0?parseInt(e,t):parseInt(e);if(!(Number.isNaN(r)||r>2147483647||r<-2147483648))return r|0}var l1="linzumi-machine-fingerprint:v1:";var dk={platform:void 0,execFile:void 0,readFile:void 0,username:void 0};function d1(e,t){return _s(e,t,5e3,1024*1024)}var u1=new RegExp('"IOPlatformUUID"\\s*=\\s*"([0-9A-Fa-f-]{36})"'),c1=new RegExp("^[0-9a-f]{32}$"),f1=["/etc/machine-id","/var/lib/dbus/machine-id"];function m1(e){let t=e!==void 0?e:dk,r=x(t.platform,process.platform),n=x(t.execFile,d1),i=x(t.readFile,Qt);switch(r){case"darwin":let o=n("ioreg",["-rd1","-c","IOPlatformExpertDevice"]);if(o.TAG!=="Ok")return;let a=u1.exec(o._0);if(a==null)return;let s=a.slice(1)[0];if(s===void 0)return;let l=ue(s);return l!==void 0?l.toLowerCase():void 0;case"linux":return Ve(f1,void 0,(d,u)=>{if(d!==void 0)return d;let c=i(u);if(c.TAG!=="Ok")return;let f=c._0.trim().toLowerCase();if(c1.test(f))return f});default:return}}function uk(e){return G(m1(e!==void 0?e:dk),r=>"mfp-"+qn(l1+r).slice(0,32))}function ck(e){let t={};return e!==void 0&&(t.machineFingerprintV2=e),t}function pk(e){return e==="UnusableRejected"?"Cached Linzumi local runner auth was rejected; starting OAuth.":"Cached Linzumi local runner auth points at a workspace or runner the server no longer knows (it may have been reset); starting OAuth."}function p1(e,t){return he($t(on(e),we),r=>{let n=Ln(r);return n===void 0?{TAG:"Error",_0:we("invalid URL: "+r)}:{TAG:"Ok",_0:"Workspace '"+(t!==void 0?t:"undefined")+"' was not found on "+ue(n).host+". Sign in to the web app to create it, then re-run connect."}})}var h1="local runner browser OAuth is not available in this implementation yet; use --auth-mode device or supply --token";async function _1(e){let t=jc(process.env),r=zc(t,e.serviceUrl,void 0);if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=r._0,i=uk(void 0),o=mk.hostname(),a={commanderId:n,machineFingerprint:i,hostname:o},s=await lk(e.serviceUrl,e.workspaceSlug,e.channelSlug,e.onboarding,a,void 0,void 0,void 0);if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0};let l=s._0,d=e.authFilePath,u=d!==void 0?d:ud();return wt(Pc(e.serviceUrl,l.accessToken,l.expiresInSeconds,u,new Date),c=>l.accessToken)}async function g1(e){let t=e.authMode;return typeof(t!==void 0?t:{TAG:"BrowserMode",callbackHost:e.callbackHost})!="object"?await _1(e):{TAG:"Error",_0:we(h1)}}function y1(){return{readCachedToken:(e,t)=>Ec(e,t,Date.now()),validateToken:(e,t,r,n,i)=>Ms(e,t,r,n,i),acquireAndCacheToken:g1}}async function b1(e,t,r){let n=await t.validateToken(e.serviceUrl,r,e.workspaceSlug,e.channelSlug,e.requiredScopes);if(n.TAG!=="Ok")return{TAG:"Ok",_0:void 0};switch(n._0){case"Usable":case"Rejected":return{TAG:"Ok",_0:void 0};case"NotFound":return he(p1(e.serviceUrl,e.workspaceSlug),i=>({TAG:"Error",_0:we(i)}))}}async function Nc(e,t){let r=t!==void 0?t:y1(),n=e.explicitToken;if(n!==void 0)return{TAG:"Ok",_0:n};let i=e.authFilePath,o=i!==void 0?i:ud(),a=r.readCachedToken(e.serviceUrl,o);if(a.TAG!=="Ok")return{TAG:"Error",_0:a._0};let s=a._0,l;if(s!==void 0){let m=await r.validateToken(e.serviceUrl,s.accessToken,e.workspaceSlug,e.channelSlug,e.requiredScopes);if(m.TAG==="Ok")switch(m._0){case"Usable":l={TAG:"Ok",_0:s.accessToken};break;case"Rejected":let h=e.reportRejectedCachedToken;h!==void 0&&h("UnusableRejected"),l={TAG:"Ok",_0:void 0};break;case"NotFound":let _=e.reportRejectedCachedToken;_!==void 0&&_("UnusableNotFound"),l={TAG:"Ok",_0:void 0};break}else l={TAG:"Error",_0:m._0}}else l={TAG:"Ok",_0:void 0};if(l.TAG!=="Ok")return{TAG:"Error",_0:l._0};let d=l._0;if(d!==void 0)return{TAG:"Ok",_0:d};let u=await r.acquireAndCacheToken(e);if(u.TAG!=="Ok")return{TAG:"Error",_0:u._0};let c=u._0;if(e.workspaceSlug===void 0)return{TAG:"Ok",_0:c};let p=await b1(e,r,c);return p.TAG==="Ok"?{TAG:"Ok",_0:c}:{TAG:"Error",_0:p._0}}function Th(e){return we(e.message)}function Gc(e,t,r,n){return he($t(jw(Ah.join(_k.tmpdir(),"linzumi-mcp-auth-")),Th),i=>he($t(ps(i,448),Th),()=>{let o=Ah.join(i,"auth.json");return he(Pc(e,r!==void 0?r:t,void 0,o,n),a=>wt($t(ps(o,384),Th),()=>({path:o,directory:i,cleanup:()=>{Dp(i)}})))}))}function v1(){return{readCachedToken:(e,t)=>Ec(e,t,Date.now()),validateTokenOutcome:(e,t,r,n)=>Ms(e,t,r,n,void 0),resolveToken:e=>Nc(e,void 0)}}var S1="missing Linzumi MCP token; run linzumi auth or pass --token";function w1(e){return"Linzumi MCP token was rejected by the server and re-mint failed: "+e}async function gk(e,t,r,n,i,o){let a=o!==void 0?o:v1(),s=r!==void 0?r:ud(),l=t!==void 0?{TAG:"Ok",_0:t}:wt(a.readCachedToken(e,s),f=>G(f,p=>p.accessToken));if(l.TAG!=="Ok")return{TAG:"Error",_0:l._0};let d=l._0;if(d===void 0)return{TAG:"Error",_0:we(S1)};let u=await a.validateTokenOutcome(e,d,n,i);if(u.TAG!=="Ok")return{TAG:"Error",_0:u._0};switch(u._0){case"Usable":return{TAG:"Ok",_0:d};case"Rejected":case"NotFound":break}let c=await a.resolveToken({serviceUrl:e,explicitToken:void 0,workspaceSlug:n,channelSlug:i,requiredScopes:[],onboarding:void 0,authFilePath:r,callbackHost:void 0,authMode:void 0,reportRejectedCachedToken:void 0});return c.TAG==="Ok"?{TAG:"Ok",_0:c._0}:{TAG:"Error",_0:we(w1(c._0.summary))}}var T={};Gp(T,{BRAND:()=>B1,DIRTY:()=>ya,EMPTY_PATH:()=>A1,INVALID:()=>Me,NEVER:()=>RN,OK:()=>Kr,ParseStatus:()=>Dr,Schema:()=>nt,ZodAny:()=>Oo,ZodArray:()=>no,ZodBigInt:()=>va,ZodBoolean:()=>Sa,ZodBranded:()=>_d,ZodCatch:()=>Ia,ZodDate:()=>wa,ZodDefault:()=>Ra,ZodDiscriminatedUnion:()=>qc,ZodEffects:()=>Vn,ZodEnum:()=>Ea,ZodError:()=>gn,ZodFirstPartyTypeKind:()=>Q,ZodFunction:()=>Uc,ZodIntersection:()=>Aa,ZodIssueCode:()=>Y,ZodLazy:()=>Oa,ZodLiteral:()=>Ca,ZodMap:()=>Ls,ZodNaN:()=>Ws,ZodNativeEnum:()=>Pa,ZodNever:()=>fi,ZodNull:()=>xa,ZodNullable:()=>Mi,ZodNumber:()=>ba,ZodObject:()=>bn,ZodOptional:()=>yn,ZodParsedType:()=>fe,ZodPipeline:()=>gd,ZodPromise:()=>Co,ZodReadonly:()=>$a,ZodRecord:()=>Lc,ZodSchema:()=>nt,ZodSet:()=>Us,ZodString:()=>Ao,ZodSymbol:()=>Ds,ZodTransformer:()=>Vn,ZodTuple:()=>$i,ZodType:()=>nt,ZodUndefined:()=>ka,ZodUnion:()=>Ta,ZodUnknown:()=>ro,ZodVoid:()=>qs,addIssueToContext:()=>le,any:()=>nN,array:()=>sN,bigint:()=>X1,boolean:()=>Ck,coerce:()=>PN,custom:()=>Tk,date:()=>Q1,datetimeRegex:()=>kk,defaultErrorMap:()=>eo,discriminatedUnion:()=>uN,effect:()=>wN,enum:()=>bN,function:()=>_N,getErrorMap:()=>Ns,getParsedType:()=>Ii,instanceof:()=>J1,intersection:()=>cN,isAborted:()=>Fc,isAsync:()=>Gs,isDirty:()=>Dc,isValid:()=>To,late:()=>K1,lazy:()=>gN,literal:()=>yN,makeIssue:()=>hd,map:()=>pN,nan:()=>Y1,nativeEnum:()=>vN,never:()=>oN,null:()=>rN,nullable:()=>xN,number:()=>Ok,object:()=>Rh,objectUtil:()=>Ch,oboolean:()=>EN,onumber:()=>CN,optional:()=>kN,ostring:()=>ON,pipeline:()=>AN,preprocess:()=>TN,promise:()=>SN,quotelessJson:()=>k1,record:()=>mN,set:()=>hN,setErrorMap:()=>T1,strictObject:()=>lN,string:()=>Ak,symbol:()=>eN,transformer:()=>wN,tuple:()=>fN,undefined:()=>tN,union:()=>dN,unknown:()=>iN,util:()=>mt,void:()=>aN});var mt;(function(e){e.assertEqual=i=>{};function t(i){}e.assertIs=t;function r(i){throw new Error}e.assertNever=r,e.arrayToEnum=i=>{let o={};for(let a of i)o[a]=a;return o},e.getValidEnumValues=i=>{let o=e.objectKeys(i).filter(s=>typeof i[i[s]]!="number"),a={};for(let s of o)a[s]=i[s];return e.objectValues(a)},e.objectValues=i=>e.objectKeys(i).map(function(o){return i[o]}),e.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let o=[];for(let a in i)Object.prototype.hasOwnProperty.call(i,a)&&o.push(a);return o},e.find=(i,o)=>{for(let a of i)if(o(a))return a},e.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function n(i,o=" | "){return i.map(a=>typeof a=="string"?`'${a}'`:a).join(o)}e.joinValues=n,e.jsonStringifyReplacer=(i,o)=>typeof o=="bigint"?o.toString():o})(mt||(mt={}));var Ch;(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(Ch||(Ch={}));var fe=mt.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Ii=e=>{switch(typeof e){case"undefined":return fe.undefined;case"string":return fe.string;case"number":return Number.isNaN(e)?fe.nan:fe.number;case"boolean":return fe.boolean;case"function":return fe.function;case"bigint":return fe.bigint;case"symbol":return fe.symbol;case"object":return Array.isArray(e)?fe.array:e===null?fe.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?fe.promise:typeof Map<"u"&&e instanceof Map?fe.map:typeof Set<"u"&&e instanceof Set?fe.set:typeof Date<"u"&&e instanceof Date?fe.date:fe.object;default:return fe.unknown}};var Y=mt.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),k1=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),gn=class e extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=t}format(t){let r=t||function(o){return o.message},n={_errors:[]},i=o=>{for(let a of o.issues)if(a.code==="invalid_union")a.unionErrors.map(i);else if(a.code==="invalid_return_type")i(a.returnTypeError);else if(a.code==="invalid_arguments")i(a.argumentsError);else if(a.path.length===0)n._errors.push(r(a));else{let s=n,l=0;for(;l<a.path.length;){let d=a.path[l];l===a.path.length-1?(s[d]=s[d]||{_errors:[]},s[d]._errors.push(r(a))):s[d]=s[d]||{_errors:[]},s=s[d],l++}}};return i(this),n}static assert(t){if(!(t instanceof e))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,mt.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=r=>r.message){let r={},n=[];for(let i of this.issues)if(i.path.length>0){let o=i.path[0];r[o]=r[o]||[],r[o].push(t(i))}else n.push(t(i));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};gn.create=e=>new gn(e);var x1=(e,t)=>{let r;switch(e.code){case Y.invalid_type:e.received===fe.undefined?r="Required":r=`Expected ${e.expected}, received ${e.received}`;break;case Y.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,mt.jsonStringifyReplacer)}`;break;case Y.unrecognized_keys:r=`Unrecognized key(s) in object: ${mt.joinValues(e.keys,", ")}`;break;case Y.invalid_union:r="Invalid input";break;case Y.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${mt.joinValues(e.options)}`;break;case Y.invalid_enum_value:r=`Invalid enum value. Expected ${mt.joinValues(e.options)}, received '${e.received}'`;break;case Y.invalid_arguments:r="Invalid function arguments";break;case Y.invalid_return_type:r="Invalid function return type";break;case Y.invalid_date:r="Invalid date";break;case Y.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(r=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?r=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?r=`Invalid input: must end with "${e.validation.endsWith}"`:mt.assertNever(e.validation):e.validation!=="regex"?r=`Invalid ${e.validation}`:r="Invalid";break;case Y.too_small:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="bigint"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:r="Invalid input";break;case Y.too_big:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?r=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:r="Invalid input";break;case Y.custom:r="Invalid input";break;case Y.invalid_intersection_types:r="Intersection results could not be merged";break;case Y.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case Y.not_finite:r="Number must be finite";break;default:r=t.defaultError,mt.assertNever(e)}return{message:r}},eo=x1;var yk=eo;function T1(e){yk=e}function Ns(){return yk}var hd=e=>{let{data:t,path:r,errorMaps:n,issueData:i}=e,o=[...r,...i.path||[]],a={...i,path:o};if(i.message!==void 0)return{...i,path:o,message:i.message};let s="",l=n.filter(d=>!!d).slice().reverse();for(let d of l)s=d(a,{data:t,defaultError:s}).message;return{...i,path:o,message:s}},A1=[];function le(e,t){let r=Ns(),n=hd({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,r,r===eo?void 0:eo].filter(i=>!!i)});e.common.issues.push(n)}var Dr=class e{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,r){let n=[];for(let i of r){if(i.status==="aborted")return Me;i.status==="dirty"&&t.dirty(),n.push(i.value)}return{status:t.value,value:n}}static async mergeObjectAsync(t,r){let n=[];for(let i of r){let o=await i.key,a=await i.value;n.push({key:o,value:a})}return e.mergeObjectSync(t,n)}static mergeObjectSync(t,r){let n={};for(let i of r){let{key:o,value:a}=i;if(o.status==="aborted"||a.status==="aborted")return Me;o.status==="dirty"&&t.dirty(),a.status==="dirty"&&t.dirty(),o.value!=="__proto__"&&(typeof a.value<"u"||i.alwaysSet)&&(n[o.value]=a.value)}return{status:t.value,value:n}}},Me=Object.freeze({status:"aborted"}),ya=e=>({status:"dirty",value:e}),Kr=e=>({status:"valid",value:e}),Fc=e=>e.status==="aborted",Dc=e=>e.status==="dirty",To=e=>e.status==="valid",Gs=e=>typeof Promise<"u"&&e instanceof Promise;var ye;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(ye||(ye={}));var Zn=class{constructor(t,r,n,i){this._cachedPath=[],this.parent=t,this.data=r,this._path=n,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},bk=(e,t)=>{if(To(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new gn(e.common.issues);return this._error=r,this._error}}};function Ye(e){if(!e)return{};let{errorMap:t,invalid_type_error:r,required_error:n,description:i}=e;if(t&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:i}:{errorMap:(a,s)=>{let{message:l}=e;return a.code==="invalid_enum_value"?{message:l??s.defaultError}:typeof s.data>"u"?{message:l??n??s.defaultError}:a.code!=="invalid_type"?{message:s.defaultError}:{message:l??r??s.defaultError}},description:i}}var nt=class{get description(){return this._def.description}_getType(t){return Ii(t.data)}_getOrReturnCtx(t,r){return r||{common:t.parent.common,data:t.data,parsedType:Ii(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new Dr,ctx:{common:t.parent.common,data:t.data,parsedType:Ii(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let r=this._parse(t);if(Gs(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(t){let r=this._parse(t);return Promise.resolve(r)}parse(t,r){let n=this.safeParse(t,r);if(n.success)return n.data;throw n.error}safeParse(t,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ii(t)},i=this._parseSync({data:t,path:n.path,parent:n});return bk(n,i)}"~validate"(t){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ii(t)};if(!this["~standard"].async)try{let n=this._parseSync({data:t,path:[],parent:r});return To(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:t,path:[],parent:r}).then(n=>To(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(t,r){let n=await this.safeParseAsync(t,r);if(n.success)return n.data;throw n.error}async safeParseAsync(t,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ii(t)},i=this._parse({data:t,path:n.path,parent:n}),o=await(Gs(i)?i:Promise.resolve(i));return bk(n,o)}refine(t,r){let n=i=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(i):r;return this._refinement((i,o)=>{let a=t(i),s=()=>o.addIssue({code:Y.custom,...n(i)});return typeof Promise<"u"&&a instanceof Promise?a.then(l=>l?!0:(s(),!1)):a?!0:(s(),!1)})}refinement(t,r){return this._refinement((n,i)=>t(n)?!0:(i.addIssue(typeof r=="function"?r(n,i):r),!1))}_refinement(t){return new Vn({schema:this,typeName:Q.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return yn.create(this,this._def)}nullable(){return Mi.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return no.create(this)}promise(){return Co.create(this,this._def)}or(t){return Ta.create([this,t],this._def)}and(t){return Aa.create(this,t,this._def)}transform(t){return new Vn({...Ye(this._def),schema:this,typeName:Q.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let r=typeof t=="function"?t:()=>t;return new Ra({...Ye(this._def),innerType:this,defaultValue:r,typeName:Q.ZodDefault})}brand(){return new _d({typeName:Q.ZodBranded,type:this,...Ye(this._def)})}catch(t){let r=typeof t=="function"?t:()=>t;return new Ia({...Ye(this._def),innerType:this,catchValue:r,typeName:Q.ZodCatch})}describe(t){let r=this.constructor;return new r({...this._def,description:t})}pipe(t){return gd.create(this,t)}readonly(){return $a.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},O1=/^c[^\s-]{8,}$/i,C1=/^[0-9a-z]+$/,E1=/^[0-9A-HJKMNP-TV-Z]{26}$/i,P1=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,R1=/^[a-z0-9_-]{21}$/i,I1=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,$1=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,M1=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,j1="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Eh,z1=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,N1=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,G1=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,F1=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,D1=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,q1=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Sk="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",L1=new RegExp(`^${Sk}$`);function wk(e){let t="[0-5]\\d";e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`);let r=e.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${r}`}function U1(e){return new RegExp(`^${wk(e)}$`)}function kk(e){let t=`${Sk}T${wk(e)}`,r=[];return r.push(e.local?"Z?":"Z"),e.offset&&r.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${r.join("|")})`,new RegExp(`^${t}$`)}function W1(e,t){return!!((t==="v4"||!t)&&z1.test(e)||(t==="v6"||!t)&&G1.test(e))}function Z1(e,t){if(!I1.test(e))return!1;try{let[r]=e.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),i=JSON.parse(atob(n));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||t&&i.alg!==t)}catch{return!1}}function V1(e,t){return!!((t==="v4"||!t)&&N1.test(e)||(t==="v6"||!t)&&F1.test(e))}var Ao=class e extends nt{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==fe.string){let o=this._getOrReturnCtx(t);return le(o,{code:Y.invalid_type,expected:fe.string,received:o.parsedType}),Me}let n=new Dr,i;for(let o of this._def.checks)if(o.kind==="min")t.data.length<o.value&&(i=this._getOrReturnCtx(t,i),le(i,{code:Y.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),n.dirty());else if(o.kind==="max")t.data.length>o.value&&(i=this._getOrReturnCtx(t,i),le(i,{code:Y.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),n.dirty());else if(o.kind==="length"){let a=t.data.length>o.value,s=t.data.length<o.value;(a||s)&&(i=this._getOrReturnCtx(t,i),a?le(i,{code:Y.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):s&&le(i,{code:Y.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),n.dirty())}else if(o.kind==="email")M1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"email",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="emoji")Eh||(Eh=new RegExp(j1,"u")),Eh.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"emoji",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="uuid")P1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"uuid",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="nanoid")R1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"nanoid",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="cuid")O1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"cuid",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="cuid2")C1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"cuid2",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="ulid")E1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"ulid",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="url")try{new URL(t.data)}catch{i=this._getOrReturnCtx(t,i),le(i,{validation:"url",code:Y.invalid_string,message:o.message}),n.dirty()}else o.kind==="regex"?(o.regex.lastIndex=0,o.regex.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"regex",code:Y.invalid_string,message:o.message}),n.dirty())):o.kind==="trim"?t.data=t.data.trim():o.kind==="includes"?t.data.includes(o.value,o.position)||(i=this._getOrReturnCtx(t,i),le(i,{code:Y.invalid_string,validation:{includes:o.value,position:o.position},message:o.message}),n.dirty()):o.kind==="toLowerCase"?t.data=t.data.toLowerCase():o.kind==="toUpperCase"?t.data=t.data.toUpperCase():o.kind==="startsWith"?t.data.startsWith(o.value)||(i=this._getOrReturnCtx(t,i),le(i,{code:Y.invalid_string,validation:{startsWith:o.value},message:o.message}),n.dirty()):o.kind==="endsWith"?t.data.endsWith(o.value)||(i=this._getOrReturnCtx(t,i),le(i,{code:Y.invalid_string,validation:{endsWith:o.value},message:o.message}),n.dirty()):o.kind==="datetime"?kk(o).test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{code:Y.invalid_string,validation:"datetime",message:o.message}),n.dirty()):o.kind==="date"?L1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{code:Y.invalid_string,validation:"date",message:o.message}),n.dirty()):o.kind==="time"?U1(o).test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{code:Y.invalid_string,validation:"time",message:o.message}),n.dirty()):o.kind==="duration"?$1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"duration",code:Y.invalid_string,message:o.message}),n.dirty()):o.kind==="ip"?W1(t.data,o.version)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"ip",code:Y.invalid_string,message:o.message}),n.dirty()):o.kind==="jwt"?Z1(t.data,o.alg)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"jwt",code:Y.invalid_string,message:o.message}),n.dirty()):o.kind==="cidr"?V1(t.data,o.version)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"cidr",code:Y.invalid_string,message:o.message}),n.dirty()):o.kind==="base64"?D1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"base64",code:Y.invalid_string,message:o.message}),n.dirty()):o.kind==="base64url"?q1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"base64url",code:Y.invalid_string,message:o.message}),n.dirty()):mt.assertNever(o);return{status:n.value,value:t.data}}_regex(t,r,n){return this.refinement(i=>t.test(i),{validation:r,code:Y.invalid_string,...ye.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...ye.errToObj(t)})}url(t){return this._addCheck({kind:"url",...ye.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...ye.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...ye.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...ye.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...ye.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...ye.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...ye.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...ye.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...ye.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...ye.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...ye.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...ye.errToObj(t)})}datetime(t){return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof t?.precision>"u"?null:t?.precision,offset:t?.offset??!1,local:t?.local??!1,...ye.errToObj(t?.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof t?.precision>"u"?null:t?.precision,...ye.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...ye.errToObj(t)})}regex(t,r){return this._addCheck({kind:"regex",regex:t,...ye.errToObj(r)})}includes(t,r){return this._addCheck({kind:"includes",value:t,position:r?.position,...ye.errToObj(r?.message)})}startsWith(t,r){return this._addCheck({kind:"startsWith",value:t,...ye.errToObj(r)})}endsWith(t,r){return this._addCheck({kind:"endsWith",value:t,...ye.errToObj(r)})}min(t,r){return this._addCheck({kind:"min",value:t,...ye.errToObj(r)})}max(t,r){return this._addCheck({kind:"max",value:t,...ye.errToObj(r)})}length(t,r){return this._addCheck({kind:"length",value:t,...ye.errToObj(r)})}nonempty(t){return this.min(1,ye.errToObj(t))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isCIDR(){return!!this._def.checks.find(t=>t.kind==="cidr")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get isBase64url(){return!!this._def.checks.find(t=>t.kind==="base64url")}get minLength(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxLength(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}};Ao.create=e=>new Ao({checks:[],typeName:Q.ZodString,coerce:e?.coerce??!1,...Ye(e)});function H1(e,t){let r=(e.toString().split(".")[1]||"").length,n=(t.toString().split(".")[1]||"").length,i=r>n?r:n,o=Number.parseInt(e.toFixed(i).replace(".","")),a=Number.parseInt(t.toFixed(i).replace(".",""));return o%a/10**i}var ba=class e extends nt{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==fe.number){let o=this._getOrReturnCtx(t);return le(o,{code:Y.invalid_type,expected:fe.number,received:o.parsedType}),Me}let n,i=new Dr;for(let o of this._def.checks)o.kind==="int"?mt.isInteger(t.data)||(n=this._getOrReturnCtx(t,n),le(n,{code:Y.invalid_type,expected:"integer",received:"float",message:o.message}),i.dirty()):o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="multipleOf"?H1(t.data,o.value)!==0&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):o.kind==="finite"?Number.isFinite(t.data)||(n=this._getOrReturnCtx(t,n),le(n,{code:Y.not_finite,message:o.message}),i.dirty()):mt.assertNever(o);return{status:i.value,value:t.data}}gte(t,r){return this.setLimit("min",t,!0,ye.toString(r))}gt(t,r){return this.setLimit("min",t,!1,ye.toString(r))}lte(t,r){return this.setLimit("max",t,!0,ye.toString(r))}lt(t,r){return this.setLimit("max",t,!1,ye.toString(r))}setLimit(t,r,n,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:ye.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:ye.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ye.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ye.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ye.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ye.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:ye.toString(r)})}finite(t){return this._addCheck({kind:"finite",message:ye.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ye.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ye.toString(t)})}get minValue(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}get isInt(){return!!this._def.checks.find(t=>t.kind==="int"||t.kind==="multipleOf"&&mt.isInteger(t.value))}get isFinite(){let t=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(t===null||n.value<t)&&(t=n.value)}return Number.isFinite(r)&&Number.isFinite(t)}};ba.create=e=>new ba({checks:[],typeName:Q.ZodNumber,coerce:e?.coerce||!1,...Ye(e)});var va=class e extends nt{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce)try{t.data=BigInt(t.data)}catch{return this._getInvalidInput(t)}if(this._getType(t)!==fe.bigint)return this._getInvalidInput(t);let n,i=new Dr;for(let o of this._def.checks)o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="multipleOf"?t.data%o.value!==BigInt(0)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):mt.assertNever(o);return{status:i.value,value:t.data}}_getInvalidInput(t){let r=this._getOrReturnCtx(t);return le(r,{code:Y.invalid_type,expected:fe.bigint,received:r.parsedType}),Me}gte(t,r){return this.setLimit("min",t,!0,ye.toString(r))}gt(t,r){return this.setLimit("min",t,!1,ye.toString(r))}lte(t,r){return this.setLimit("max",t,!0,ye.toString(r))}lt(t,r){return this.setLimit("max",t,!1,ye.toString(r))}setLimit(t,r,n,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:ye.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:ye.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ye.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ye.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ye.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:ye.toString(r)})}get minValue(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}};va.create=e=>new va({checks:[],typeName:Q.ZodBigInt,coerce:e?.coerce??!1,...Ye(e)});var Sa=class extends nt{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==fe.boolean){let n=this._getOrReturnCtx(t);return le(n,{code:Y.invalid_type,expected:fe.boolean,received:n.parsedType}),Me}return Kr(t.data)}};Sa.create=e=>new Sa({typeName:Q.ZodBoolean,coerce:e?.coerce||!1,...Ye(e)});var wa=class e extends nt{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==fe.date){let o=this._getOrReturnCtx(t);return le(o,{code:Y.invalid_type,expected:fe.date,received:o.parsedType}),Me}if(Number.isNaN(t.data.getTime())){let o=this._getOrReturnCtx(t);return le(o,{code:Y.invalid_date}),Me}let n=new Dr,i;for(let o of this._def.checks)o.kind==="min"?t.data.getTime()<o.value&&(i=this._getOrReturnCtx(t,i),le(i,{code:Y.too_small,message:o.message,inclusive:!0,exact:!1,minimum:o.value,type:"date"}),n.dirty()):o.kind==="max"?t.data.getTime()>o.value&&(i=this._getOrReturnCtx(t,i),le(i,{code:Y.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),n.dirty()):mt.assertNever(o);return{status:n.value,value:new Date(t.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(t,r){return this._addCheck({kind:"min",value:t.getTime(),message:ye.toString(r)})}max(t,r){return this._addCheck({kind:"max",value:t.getTime(),message:ye.toString(r)})}get minDate(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t!=null?new Date(t):null}};wa.create=e=>new wa({checks:[],coerce:e?.coerce||!1,typeName:Q.ZodDate,...Ye(e)});var Ds=class extends nt{_parse(t){if(this._getType(t)!==fe.symbol){let n=this._getOrReturnCtx(t);return le(n,{code:Y.invalid_type,expected:fe.symbol,received:n.parsedType}),Me}return Kr(t.data)}};Ds.create=e=>new Ds({typeName:Q.ZodSymbol,...Ye(e)});var ka=class extends nt{_parse(t){if(this._getType(t)!==fe.undefined){let n=this._getOrReturnCtx(t);return le(n,{code:Y.invalid_type,expected:fe.undefined,received:n.parsedType}),Me}return Kr(t.data)}};ka.create=e=>new ka({typeName:Q.ZodUndefined,...Ye(e)});var xa=class extends nt{_parse(t){if(this._getType(t)!==fe.null){let n=this._getOrReturnCtx(t);return le(n,{code:Y.invalid_type,expected:fe.null,received:n.parsedType}),Me}return Kr(t.data)}};xa.create=e=>new xa({typeName:Q.ZodNull,...Ye(e)});var Oo=class extends nt{constructor(){super(...arguments),this._any=!0}_parse(t){return Kr(t.data)}};Oo.create=e=>new Oo({typeName:Q.ZodAny,...Ye(e)});var ro=class extends nt{constructor(){super(...arguments),this._unknown=!0}_parse(t){return Kr(t.data)}};ro.create=e=>new ro({typeName:Q.ZodUnknown,...Ye(e)});var fi=class extends nt{_parse(t){let r=this._getOrReturnCtx(t);return le(r,{code:Y.invalid_type,expected:fe.never,received:r.parsedType}),Me}};fi.create=e=>new fi({typeName:Q.ZodNever,...Ye(e)});var qs=class extends nt{_parse(t){if(this._getType(t)!==fe.undefined){let n=this._getOrReturnCtx(t);return le(n,{code:Y.invalid_type,expected:fe.void,received:n.parsedType}),Me}return Kr(t.data)}};qs.create=e=>new qs({typeName:Q.ZodVoid,...Ye(e)});var no=class e extends nt{_parse(t){let{ctx:r,status:n}=this._processInputParams(t),i=this._def;if(r.parsedType!==fe.array)return le(r,{code:Y.invalid_type,expected:fe.array,received:r.parsedType}),Me;if(i.exactLength!==null){let a=r.data.length>i.exactLength.value,s=r.data.length<i.exactLength.value;(a||s)&&(le(r,{code:a?Y.too_big:Y.too_small,minimum:s?i.exactLength.value:void 0,maximum:a?i.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:i.exactLength.message}),n.dirty())}if(i.minLength!==null&&r.data.length<i.minLength.value&&(le(r,{code:Y.too_small,minimum:i.minLength.value,type:"array",inclusive:!0,exact:!1,message:i.minLength.message}),n.dirty()),i.maxLength!==null&&r.data.length>i.maxLength.value&&(le(r,{code:Y.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((a,s)=>i.type._parseAsync(new Zn(r,a,r.path,s)))).then(a=>Dr.mergeArray(n,a));let o=[...r.data].map((a,s)=>i.type._parseSync(new Zn(r,a,r.path,s)));return Dr.mergeArray(n,o)}get element(){return this._def.type}min(t,r){return new e({...this._def,minLength:{value:t,message:ye.toString(r)}})}max(t,r){return new e({...this._def,maxLength:{value:t,message:ye.toString(r)}})}length(t,r){return new e({...this._def,exactLength:{value:t,message:ye.toString(r)}})}nonempty(t){return this.min(1,t)}};no.create=(e,t)=>new no({type:e,minLength:null,maxLength:null,exactLength:null,typeName:Q.ZodArray,...Ye(t)});function Fs(e){if(e instanceof bn){let t={};for(let r in e.shape){let n=e.shape[r];t[r]=yn.create(Fs(n))}return new bn({...e._def,shape:()=>t})}else return e instanceof no?new no({...e._def,type:Fs(e.element)}):e instanceof yn?yn.create(Fs(e.unwrap())):e instanceof Mi?Mi.create(Fs(e.unwrap())):e instanceof $i?$i.create(e.items.map(t=>Fs(t))):e}var bn=class e extends nt{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let t=this._def.shape(),r=mt.objectKeys(t);return this._cached={shape:t,keys:r},this._cached}_parse(t){if(this._getType(t)!==fe.object){let d=this._getOrReturnCtx(t);return le(d,{code:Y.invalid_type,expected:fe.object,received:d.parsedType}),Me}let{status:n,ctx:i}=this._processInputParams(t),{shape:o,keys:a}=this._getCached(),s=[];if(!(this._def.catchall instanceof fi&&this._def.unknownKeys==="strip"))for(let d in i.data)a.includes(d)||s.push(d);let l=[];for(let d of a){let u=o[d],c=i.data[d];l.push({key:{status:"valid",value:d},value:u._parse(new Zn(i,c,i.path,d)),alwaysSet:d in i.data})}if(this._def.catchall instanceof fi){let d=this._def.unknownKeys;if(d==="passthrough")for(let u of s)l.push({key:{status:"valid",value:u},value:{status:"valid",value:i.data[u]}});else if(d==="strict")s.length>0&&(le(i,{code:Y.unrecognized_keys,keys:s}),n.dirty());else if(d!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let d=this._def.catchall;for(let u of s){let c=i.data[u];l.push({key:{status:"valid",value:u},value:d._parse(new Zn(i,c,i.path,u)),alwaysSet:u in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let d=[];for(let u of l){let c=await u.key,f=await u.value;d.push({key:c,value:f,alwaysSet:u.alwaysSet})}return d}).then(d=>Dr.mergeObjectSync(n,d)):Dr.mergeObjectSync(n,l)}get shape(){return this._def.shape()}strict(t){return ye.errToObj,new e({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(r,n)=>{let i=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:ye.errToObj(t).message??i}:{message:i}}}:{}})}strip(){return new e({...this._def,unknownKeys:"strip"})}passthrough(){return new e({...this._def,unknownKeys:"passthrough"})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:Q.ZodObject})}setKey(t,r){return this.augment({[t]:r})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let r={};for(let n of mt.objectKeys(t))t[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new e({...this._def,shape:()=>r})}omit(t){let r={};for(let n of mt.objectKeys(this.shape))t[n]||(r[n]=this.shape[n]);return new e({...this._def,shape:()=>r})}deepPartial(){return Fs(this)}partial(t){let r={};for(let n of mt.objectKeys(this.shape)){let i=this.shape[n];t&&!t[n]?r[n]=i:r[n]=i.optional()}return new e({...this._def,shape:()=>r})}required(t){let r={};for(let n of mt.objectKeys(this.shape))if(t&&!t[n])r[n]=this.shape[n];else{let o=this.shape[n];for(;o instanceof yn;)o=o._def.innerType;r[n]=o}return new e({...this._def,shape:()=>r})}keyof(){return xk(mt.objectKeys(this.shape))}};bn.create=(e,t)=>new bn({shape:()=>e,unknownKeys:"strip",catchall:fi.create(),typeName:Q.ZodObject,...Ye(t)});bn.strictCreate=(e,t)=>new bn({shape:()=>e,unknownKeys:"strict",catchall:fi.create(),typeName:Q.ZodObject,...Ye(t)});bn.lazycreate=(e,t)=>new bn({shape:e,unknownKeys:"strip",catchall:fi.create(),typeName:Q.ZodObject,...Ye(t)});var Ta=class extends nt{_parse(t){let{ctx:r}=this._processInputParams(t),n=this._def.options;function i(o){for(let s of o)if(s.result.status==="valid")return s.result;for(let s of o)if(s.result.status==="dirty")return r.common.issues.push(...s.ctx.common.issues),s.result;let a=o.map(s=>new gn(s.ctx.common.issues));return le(r,{code:Y.invalid_union,unionErrors:a}),Me}if(r.common.async)return Promise.all(n.map(async o=>{let a={...r,common:{...r.common,issues:[]},parent:null};return{result:await o._parseAsync({data:r.data,path:r.path,parent:a}),ctx:a}})).then(i);{let o,a=[];for(let l of n){let d={...r,common:{...r.common,issues:[]},parent:null},u=l._parseSync({data:r.data,path:r.path,parent:d});if(u.status==="valid")return u;u.status==="dirty"&&!o&&(o={result:u,ctx:d}),d.common.issues.length&&a.push(d.common.issues)}if(o)return r.common.issues.push(...o.ctx.common.issues),o.result;let s=a.map(l=>new gn(l));return le(r,{code:Y.invalid_union,unionErrors:s}),Me}}get options(){return this._def.options}};Ta.create=(e,t)=>new Ta({options:e,typeName:Q.ZodUnion,...Ye(t)});var to=e=>e instanceof Oa?to(e.schema):e instanceof Vn?to(e.innerType()):e instanceof Ca?[e.value]:e instanceof Ea?e.options:e instanceof Pa?mt.objectValues(e.enum):e instanceof Ra?to(e._def.innerType):e instanceof ka?[void 0]:e instanceof xa?[null]:e instanceof yn?[void 0,...to(e.unwrap())]:e instanceof Mi?[null,...to(e.unwrap())]:e instanceof _d||e instanceof $a?to(e.unwrap()):e instanceof Ia?to(e._def.innerType):[],qc=class e extends nt{_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==fe.object)return le(r,{code:Y.invalid_type,expected:fe.object,received:r.parsedType}),Me;let n=this.discriminator,i=r.data[n],o=this.optionsMap.get(i);return o?r.common.async?o._parseAsync({data:r.data,path:r.path,parent:r}):o._parseSync({data:r.data,path:r.path,parent:r}):(le(r,{code:Y.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),Me)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,r,n){let i=new Map;for(let o of r){let a=to(o.shape[t]);if(!a.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let s of a){if(i.has(s))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(s)}`);i.set(s,o)}}return new e({typeName:Q.ZodDiscriminatedUnion,discriminator:t,options:r,optionsMap:i,...Ye(n)})}};function Ph(e,t){let r=Ii(e),n=Ii(t);if(e===t)return{valid:!0,data:e};if(r===fe.object&&n===fe.object){let i=mt.objectKeys(t),o=mt.objectKeys(e).filter(s=>i.indexOf(s)!==-1),a={...e,...t};for(let s of o){let l=Ph(e[s],t[s]);if(!l.valid)return{valid:!1};a[s]=l.data}return{valid:!0,data:a}}else if(r===fe.array&&n===fe.array){if(e.length!==t.length)return{valid:!1};let i=[];for(let o=0;o<e.length;o++){let a=e[o],s=t[o],l=Ph(a,s);if(!l.valid)return{valid:!1};i.push(l.data)}return{valid:!0,data:i}}else return r===fe.date&&n===fe.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}var Aa=class extends nt{_parse(t){let{status:r,ctx:n}=this._processInputParams(t),i=(o,a)=>{if(Fc(o)||Fc(a))return Me;let s=Ph(o.value,a.value);return s.valid?((Dc(o)||Dc(a))&&r.dirty(),{status:r.value,value:s.data}):(le(n,{code:Y.invalid_intersection_types}),Me)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([o,a])=>i(o,a)):i(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Aa.create=(e,t,r)=>new Aa({left:e,right:t,typeName:Q.ZodIntersection,...Ye(r)});var $i=class e extends nt{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==fe.array)return le(n,{code:Y.invalid_type,expected:fe.array,received:n.parsedType}),Me;if(n.data.length<this._def.items.length)return le(n,{code:Y.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Me;!this._def.rest&&n.data.length>this._def.items.length&&(le(n,{code:Y.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let o=[...n.data].map((a,s)=>{let l=this._def.items[s]||this._def.rest;return l?l._parse(new Zn(n,a,n.path,s)):null}).filter(a=>!!a);return n.common.async?Promise.all(o).then(a=>Dr.mergeArray(r,a)):Dr.mergeArray(r,o)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};$i.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new $i({items:e,typeName:Q.ZodTuple,rest:null,...Ye(t)})};var Lc=class e extends nt{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==fe.object)return le(n,{code:Y.invalid_type,expected:fe.object,received:n.parsedType}),Me;let i=[],o=this._def.keyType,a=this._def.valueType;for(let s in n.data)i.push({key:o._parse(new Zn(n,s,n.path,s)),value:a._parse(new Zn(n,n.data[s],n.path,s)),alwaysSet:s in n.data});return n.common.async?Dr.mergeObjectAsync(r,i):Dr.mergeObjectSync(r,i)}get element(){return this._def.valueType}static create(t,r,n){return r instanceof nt?new e({keyType:t,valueType:r,typeName:Q.ZodRecord,...Ye(n)}):new e({keyType:Ao.create(),valueType:t,typeName:Q.ZodRecord,...Ye(r)})}},Ls=class extends nt{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==fe.map)return le(n,{code:Y.invalid_type,expected:fe.map,received:n.parsedType}),Me;let i=this._def.keyType,o=this._def.valueType,a=[...n.data.entries()].map(([s,l],d)=>({key:i._parse(new Zn(n,s,n.path,[d,"key"])),value:o._parse(new Zn(n,l,n.path,[d,"value"]))}));if(n.common.async){let s=new Map;return Promise.resolve().then(async()=>{for(let l of a){let d=await l.key,u=await l.value;if(d.status==="aborted"||u.status==="aborted")return Me;(d.status==="dirty"||u.status==="dirty")&&r.dirty(),s.set(d.value,u.value)}return{status:r.value,value:s}})}else{let s=new Map;for(let l of a){let d=l.key,u=l.value;if(d.status==="aborted"||u.status==="aborted")return Me;(d.status==="dirty"||u.status==="dirty")&&r.dirty(),s.set(d.value,u.value)}return{status:r.value,value:s}}}};Ls.create=(e,t,r)=>new Ls({valueType:t,keyType:e,typeName:Q.ZodMap,...Ye(r)});var Us=class e extends nt{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==fe.set)return le(n,{code:Y.invalid_type,expected:fe.set,received:n.parsedType}),Me;let i=this._def;i.minSize!==null&&n.data.size<i.minSize.value&&(le(n,{code:Y.too_small,minimum:i.minSize.value,type:"set",inclusive:!0,exact:!1,message:i.minSize.message}),r.dirty()),i.maxSize!==null&&n.data.size>i.maxSize.value&&(le(n,{code:Y.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),r.dirty());let o=this._def.valueType;function a(l){let d=new Set;for(let u of l){if(u.status==="aborted")return Me;u.status==="dirty"&&r.dirty(),d.add(u.value)}return{status:r.value,value:d}}let s=[...n.data.values()].map((l,d)=>o._parse(new Zn(n,l,n.path,d)));return n.common.async?Promise.all(s).then(l=>a(l)):a(s)}min(t,r){return new e({...this._def,minSize:{value:t,message:ye.toString(r)}})}max(t,r){return new e({...this._def,maxSize:{value:t,message:ye.toString(r)}})}size(t,r){return this.min(t,r).max(t,r)}nonempty(t){return this.min(1,t)}};Us.create=(e,t)=>new Us({valueType:e,minSize:null,maxSize:null,typeName:Q.ZodSet,...Ye(t)});var Uc=class e extends nt{constructor(){super(...arguments),this.validate=this.implement}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==fe.function)return le(r,{code:Y.invalid_type,expected:fe.function,received:r.parsedType}),Me;function n(s,l){return hd({data:s,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ns(),eo].filter(d=>!!d),issueData:{code:Y.invalid_arguments,argumentsError:l}})}function i(s,l){return hd({data:s,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ns(),eo].filter(d=>!!d),issueData:{code:Y.invalid_return_type,returnTypeError:l}})}let o={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof Co){let s=this;return Kr(async function(...l){let d=new gn([]),u=await s._def.args.parseAsync(l,o).catch(p=>{throw d.addIssue(n(l,p)),d}),c=await Reflect.apply(a,this,u);return await s._def.returns._def.type.parseAsync(c,o).catch(p=>{throw d.addIssue(i(c,p)),d})})}else{let s=this;return Kr(function(...l){let d=s._def.args.safeParse(l,o);if(!d.success)throw new gn([n(l,d.error)]);let u=Reflect.apply(a,this,d.data),c=s._def.returns.safeParse(u,o);if(!c.success)throw new gn([i(u,c.error)]);return c.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:$i.create(t).rest(ro.create())})}returns(t){return new e({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,r,n){return new e({args:t||$i.create([]).rest(ro.create()),returns:r||ro.create(),typeName:Q.ZodFunction,...Ye(n)})}},Oa=class extends nt{get schema(){return this._def.getter()}_parse(t){let{ctx:r}=this._processInputParams(t);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Oa.create=(e,t)=>new Oa({getter:e,typeName:Q.ZodLazy,...Ye(t)});var Ca=class extends nt{_parse(t){if(t.data!==this._def.value){let r=this._getOrReturnCtx(t);return le(r,{received:r.data,code:Y.invalid_literal,expected:this._def.value}),Me}return{status:"valid",value:t.data}}get value(){return this._def.value}};Ca.create=(e,t)=>new Ca({value:e,typeName:Q.ZodLiteral,...Ye(t)});function xk(e,t){return new Ea({values:e,typeName:Q.ZodEnum,...Ye(t)})}var Ea=class e extends nt{_parse(t){if(typeof t.data!="string"){let r=this._getOrReturnCtx(t),n=this._def.values;return le(r,{expected:mt.joinValues(n),received:r.parsedType,code:Y.invalid_type}),Me}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(t.data)){let r=this._getOrReturnCtx(t),n=this._def.values;return le(r,{received:r.data,code:Y.invalid_enum_value,options:n}),Me}return Kr(t.data)}get options(){return this._def.values}get enum(){let t={};for(let r of this._def.values)t[r]=r;return t}get Values(){let t={};for(let r of this._def.values)t[r]=r;return t}get Enum(){let t={};for(let r of this._def.values)t[r]=r;return t}extract(t,r=this._def){return e.create(t,{...this._def,...r})}exclude(t,r=this._def){return e.create(this.options.filter(n=>!t.includes(n)),{...this._def,...r})}};Ea.create=xk;var Pa=class extends nt{_parse(t){let r=mt.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(t);if(n.parsedType!==fe.string&&n.parsedType!==fe.number){let i=mt.objectValues(r);return le(n,{expected:mt.joinValues(i),received:n.parsedType,code:Y.invalid_type}),Me}if(this._cache||(this._cache=new Set(mt.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){let i=mt.objectValues(r);return le(n,{received:n.data,code:Y.invalid_enum_value,options:i}),Me}return Kr(t.data)}get enum(){return this._def.values}};Pa.create=(e,t)=>new Pa({values:e,typeName:Q.ZodNativeEnum,...Ye(t)});var Co=class extends nt{unwrap(){return this._def.type}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==fe.promise&&r.common.async===!1)return le(r,{code:Y.invalid_type,expected:fe.promise,received:r.parsedType}),Me;let n=r.parsedType===fe.promise?r.data:Promise.resolve(r.data);return Kr(n.then(i=>this._def.type.parseAsync(i,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Co.create=(e,t)=>new Co({type:e,typeName:Q.ZodPromise,...Ye(t)});var Vn=class extends nt{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===Q.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){let{status:r,ctx:n}=this._processInputParams(t),i=this._def.effect||null,o={addIssue:a=>{le(n,a),a.fatal?r.abort():r.dirty()},get path(){return n.path}};if(o.addIssue=o.addIssue.bind(o),i.type==="preprocess"){let a=i.transform(n.data,o);if(n.common.async)return Promise.resolve(a).then(async s=>{if(r.value==="aborted")return Me;let l=await this._def.schema._parseAsync({data:s,path:n.path,parent:n});return l.status==="aborted"?Me:l.status==="dirty"?ya(l.value):r.value==="dirty"?ya(l.value):l});{if(r.value==="aborted")return Me;let s=this._def.schema._parseSync({data:a,path:n.path,parent:n});return s.status==="aborted"?Me:s.status==="dirty"?ya(s.value):r.value==="dirty"?ya(s.value):s}}if(i.type==="refinement"){let a=s=>{let l=i.refinement(s,o);if(n.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return s};if(n.common.async===!1){let s=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?Me:(s.status==="dirty"&&r.dirty(),a(s.value),{status:r.value,value:s.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(s=>s.status==="aborted"?Me:(s.status==="dirty"&&r.dirty(),a(s.value).then(()=>({status:r.value,value:s.value}))))}if(i.type==="transform")if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!To(a))return Me;let s=i.transform(a.value,o);if(s instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:s}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>To(a)?Promise.resolve(i.transform(a.value,o)).then(s=>({status:r.value,value:s})):Me);mt.assertNever(i)}};Vn.create=(e,t,r)=>new Vn({schema:e,typeName:Q.ZodEffects,effect:t,...Ye(r)});Vn.createWithPreprocess=(e,t,r)=>new Vn({schema:t,effect:{type:"preprocess",transform:e},typeName:Q.ZodEffects,...Ye(r)});var yn=class extends nt{_parse(t){return this._getType(t)===fe.undefined?Kr(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};yn.create=(e,t)=>new yn({innerType:e,typeName:Q.ZodOptional,...Ye(t)});var Mi=class extends nt{_parse(t){return this._getType(t)===fe.null?Kr(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};Mi.create=(e,t)=>new Mi({innerType:e,typeName:Q.ZodNullable,...Ye(t)});var Ra=class extends nt{_parse(t){let{ctx:r}=this._processInputParams(t),n=r.data;return r.parsedType===fe.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Ra.create=(e,t)=>new Ra({innerType:e,typeName:Q.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...Ye(t)});var Ia=class extends nt{_parse(t){let{ctx:r}=this._processInputParams(t),n={...r,common:{...r.common,issues:[]}},i=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Gs(i)?i.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new gn(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new gn(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Ia.create=(e,t)=>new Ia({innerType:e,typeName:Q.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...Ye(t)});var Ws=class extends nt{_parse(t){if(this._getType(t)!==fe.nan){let n=this._getOrReturnCtx(t);return le(n,{code:Y.invalid_type,expected:fe.nan,received:n.parsedType}),Me}return{status:"valid",value:t.data}}};Ws.create=e=>new Ws({typeName:Q.ZodNaN,...Ye(e)});var B1=Symbol("zod_brand"),_d=class extends nt{_parse(t){let{ctx:r}=this._processInputParams(t),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},gd=class e extends nt{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.common.async)return(async()=>{let o=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?Me:o.status==="dirty"?(r.dirty(),ya(o.value)):this._def.out._parseAsync({data:o.value,path:n.path,parent:n})})();{let i=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?Me:i.status==="dirty"?(r.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:n.path,parent:n})}}static create(t,r){return new e({in:t,out:r,typeName:Q.ZodPipeline})}},$a=class extends nt{_parse(t){let r=this._def.innerType._parse(t),n=i=>(To(i)&&(i.value=Object.freeze(i.value)),i);return Gs(r)?r.then(i=>n(i)):n(r)}unwrap(){return this._def.innerType}};$a.create=(e,t)=>new $a({innerType:e,typeName:Q.ZodReadonly,...Ye(t)});function vk(e,t){let r=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof r=="string"?{message:r}:r}function Tk(e,t={},r){return e?Oo.create().superRefine((n,i)=>{let o=e(n);if(o instanceof Promise)return o.then(a=>{if(!a){let s=vk(t,n),l=s.fatal??r??!0;i.addIssue({code:"custom",...s,fatal:l})}});if(!o){let a=vk(t,n),s=a.fatal??r??!0;i.addIssue({code:"custom",...a,fatal:s})}}):Oo.create()}var K1={object:bn.lazycreate},Q;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(Q||(Q={}));var J1=(e,t={message:`Input not instance of ${e.name}`})=>Tk(r=>r instanceof e,t),Ak=Ao.create,Ok=ba.create,Y1=Ws.create,X1=va.create,Ck=Sa.create,Q1=wa.create,eN=Ds.create,tN=ka.create,rN=xa.create,nN=Oo.create,iN=ro.create,oN=fi.create,aN=qs.create,sN=no.create,Rh=bn.create,lN=bn.strictCreate,dN=Ta.create,uN=qc.create,cN=Aa.create,fN=$i.create,mN=Lc.create,pN=Ls.create,hN=Us.create,_N=Uc.create,gN=Oa.create,yN=Ca.create,bN=Ea.create,vN=Pa.create,SN=Co.create,wN=Vn.create,kN=yn.create,xN=Mi.create,TN=Vn.createWithPreprocess,AN=gd.create,ON=()=>Ak().optional(),CN=()=>Ok().optional(),EN=()=>Ck().optional(),PN={string:(e=>Ao.create({...e,coerce:!0})),number:(e=>ba.create({...e,coerce:!0})),boolean:(e=>Sa.create({...e,coerce:!0})),bigint:(e=>va.create({...e,coerce:!0})),date:(e=>wa.create({...e,coerce:!0}))};var RN=Me;import*as Nk from"node:os";import*as Sn from"node:path";import*as Eo from"node:fs/promises";function Pk(e,t){return"Kandan attachment path must resolve inside an allowed upload root ("+e+"): "+t}function Rk(e){return"Kandan attachment upload path must not include hidden path segments: "+e}function Ik(e){return"Kandan attachment upload path extension is not allowed: "+e}var $k="LINZUMI_THREAD_RUNNER_KANDAN_THREAD_ID";var Mk="Kandan attachment path must not be empty";function io(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function Gk(e){if(Array.isArray(e))return e}function Jr(e){if(e!==void 0&&typeof e=="string"&&e.trim()!=="")return e.trim()}function IN(e){if(e!==void 0&&typeof e=="number"&&Number.isInteger(e))return e}function vn(e){let t={};t.type="text",t.text=JSON.stringify(e,void 0,2);let r={};return r.content=[t],r.structuredContent=e,r}var $N="failed: ([a-z0-9_]+)(?: detail=(.+))?$";async function Ih(e){let t;try{t=await e}catch(r){let n=ee(r),i=gs(n),o=new RegExp($N).exec(i);if(o==null){let c={};return c.error=i,vn(c)}let a=o.slice(1),s=a[0],l;if(s!==void 0){let c=ue(s);l=c!==void 0?c:i}else l=i;let d={};d.error=l;let u=a[1];if(u!==void 0){let c=ue(u);c!==void 0&&(d.detail=c)}return vn(d)}return vn(t)}function Fk(e){let t=Sr(e);if(t===void 0)return Ww(e);let r=ue(t),n=Er(r);return n!==void 0&&n.includes("channel_required")?Lw(new Error(n+". Remediation: pass the channel slug in the `channel` parameter, or set target.thread_id to a Linzumi thread you can access (the server resolves the thread's channel). The files were NOT attached; retry with a channel or thread instead of leaving them on disk.",{cause:r})):Uw(r)}function oo(e){let t={};return Object.entries(e).forEach(r=>{t[r[0]]=r[1]}),t}function $h(e,t){if(Jr(e.thread_id)!==void 0||t===void 0)return e;let n=()=>{let a=oo(e);return a.thread_id=t,a},i=e.message_seq;if(i!==void 0&&typeof i<"u")return n();let o=Jr(e.kind);if(o===void 0)return e;switch(o){case"latest_assistant_message":case"message_seq":case"new_message":return n();default:return e}}function mi(e,t){if(Jr(e.thread_id)!==void 0||t===void 0)return e;let n=oo(e);return n.thread_id=t,n}function Wc(e,t){let r=Ln(t);if(r!==void 0)return ue(r).toString();let n=e.replace(new RegExp("^wss://"),"https://").replace(new RegExp("^ws://"),"http://"),i=Hi(t,n);return i.TAG==="Ok"?i._0.toString():yr(i._0)}function MN(e,t){let r=Jr(t.inline_url),n=Jr(t.carousel_url),i=oo(t);return r!==void 0&&(i.inline_url=Wc(e,r)),n!==void 0&&(i.carousel_url=Wc(e,n)),i}function jN(e,t){if(typeof t!="object"||t===null||Array.isArray(t))return t;let r=Jr(t.url),n=io(t.image_variants),i=oo(t);return r!==void 0&&(i.url=Wc(e,r)),n!==void 0&&(i.image_variants=MN(e,n)),i}function zk(e,t){let r=Gk(t.attachments);if(r===void 0)return t;let n=oo(t);return n.attachments=r.map(i=>jN(e,i)),n}function Mh(e,t){let r=io(t.message),n=io(t.target_message);if(r===void 0&&n===void 0)return t;let i=oo(t);return r!==void 0&&(i.message=zk(e,r)),n!==void 0&&(i.target_message=zk(e,n)),i}var zN=[".csv",".diff",".gif",".htm",".html",".jpeg",".jpg",".json",".jsonl",".log",".md",".mp4",".patch",".pdf",".png",".svg",".txt",".webm",".webp",".xml",".zip"];async function NN(e){let t=[{path:e,label:"runner cwd"}],r=G(process.env.HOME,o=>o.trim()),n=Sn.resolve(r!==void 0&&r!==""?r:Nk.homedir(),"Downloads"),i;try{i=await Eo.realpath(n)}catch{return t}return t.some(o=>o.path===i)||t.push({path:i,label:"~/Downloads"}),t}function GN(e,t){let r=Sn.relative(e,t);return r===""?!0:r.startsWith("..")?!1:!Sn.isAbsolute(r)}async function FN(e,t){if(t==="")return yr(Mk);let r=Sn.isAbsolute(t)?Sn.resolve(t):Sn.resolve(e,t);return await Eo.realpath(r)}function DN(e,t){let r=e.find(i=>GN(i.path,t));if(r!==void 0){if(Sn.relative(r.path,t).split(new RegExp("[\\\\/]+","g")).find(s=>s!==void 0?s.startsWith("."):!1)!==void 0)return yr(Rk(t));let a=Sn.extname(t).toLowerCase();return zN.includes(a)?void 0:yr(Ik(t))}let n=e.map(i=>i.label).join(", ");yr(Pk(n,t))}function qN(e){let t=e.toLowerCase();return t.endsWith(".png")?"image/png":t.endsWith(".jpg")||t.endsWith(".jpeg")?"image/jpeg":t.endsWith(".gif")?"image/gif":t.endsWith(".webp")?"image/webp":t.endsWith(".csv")?"text/csv":t.endsWith(".json")?"application/json":t.endsWith(".md")||t.endsWith(".txt")||t.endsWith(".log")?"text/plain":"application/octet-stream"}async function Dk(e,t){let r=await Eo.realpath(e),n=await NN(r),i=await FN(r,t);DN(n,i);let o=await Eo.stat(i);return o.isFile()?{path:i,fileName:Sn.basename(i),contentType:qN(i),sizeBytes:o.size}:yr("Linzumi upload path is not a file: "+i)}async function qk(e,t,r,n,i){let o=await Eo.readFile(i),a={};return a["content-type"]=n,await cc.binary(Wc(e,t),{method:r,headers:a,body:Zw(o)})}async function Lk(e){let t=await Promise.all(e.files.map(m=>Dk(e.cwd,m))),r=Jr(e.target.thread_id),n={},i=e.workspace;i!==void 0&&(n.workspace=i);let o=e.channel;o!==void 0&&(n.channel=o),r!==void 0&&(n.thread_id=r),n.files=t.map(m=>{let h={};return h.file_name=m.fileName,h.content_type=m.contentType,h.size_bytes=m.sizeBytes,h});let a=await e.client.prepareMessageUploads(n),s=Gk(a.uploads),l=s!==void 0?s:[];l.length===t.length||yr("Linzumi upload prepare response count mismatch"),await Promise.all(t.map(async(m,h)=>{let _=io(l[h]),g=Jr(k(_,S=>S.upload_url)),b=Jr(k(_,S=>S.upload_method)),y=b!==void 0?b:"PUT";if(g===void 0)return yr("Linzumi upload prepare response missing upload_url");let v=await qk(e.serviceUrl,g,y,m.contentType,m.path);if(!v.ok)return yr("Linzumi upload failed for "+m.fileName+": "+v.status.toString()+" "+v.statusText)}));let d=l.map(m=>{let h=Jr(k(io(m),_=>_.file_id));return h!==void 0?h:yr("Linzumi upload prepare response missing file_id")}),u={},c=e.workspace;c!==void 0&&(u.workspace=c);let f=e.channel;f!==void 0&&(u.channel=f),r!==void 0&&(u.thread_id=r),u.target=e.target;let p=e.body;return p!==void 0&&(u.body=p),u.uploaded_file_ids=d,await e.client.attachMessageFiles(u)}async function Uk(e){let t=await Dk(e.cwd,e.file),r={},n=e.workspace;n!==void 0&&(r.workspace=n),r.name=e.name,r.file_name=t.fileName,r.content_type=t.contentType,r.size_bytes=t.sizeBytes;let i=await e.client.prepareCustomEmoji(r),o=io(i.upload),a=Jr(k(o,m=>m.upload_url)),s=Jr(k(o,m=>m.upload_method)),l=s!==void 0?s:"PUT";if(a===void 0)return yr("Linzumi custom emoji prepare response missing upload_url");let d=await qk(e.serviceUrl,a,l,t.contentType,t.path);if(d.ok){let m=await d.json();if(typeof m!="object"||m===null||Array.isArray(m))return yr("Linzumi custom emoji upload returned non-object JSON");let h=io(m.custom_emoji);if(h===void 0)return yr("Linzumi custom emoji upload response missing custom_emoji");let _={};_.ok=!0;let g=i.workspace;_.workspace=g!==void 0?g:void 0,_.emoji=h;let b=Jr(m.asset_id);_.asset_id=b!==void 0?b:void 0;let y=IN(h.id);_.id=y!==void 0?y:void 0;let v=Jr(h.name);_.name=v!==void 0?v:void 0;let S=Jr(h.shortcode);_.shortcode=S!==void 0?S:void 0;let A=Jr(h.image_url);return _.image_url=A!==void 0?A:void 0,_}let u=d.status.toString()+" "+d.statusText,f=(await d.text()).trim(),p;if(f==="")p=u;else{let m=0,h;try{h=JSON.parse(f),m=1}catch{p=f}if(m===1)if(typeof h=="object"&&h!==null&&!Array.isArray(h)){let _=h.error;p=typeof _=="string"?_:f}else p=f}return yr("Linzumi custom emoji upload failed: "+p)}import*as wn from"node:fs";import*as Wk from"node:os";import*as Zk from"node:net";import*as Hn from"node:path";import*as Vk from"node:child_process";function Nh(e,t){}function Gh(e){return e==="DesiredRunning"?"running":"stopped"}function Hk(e){switch(e){case"Running":return"running";case"Unhealthy":return"unhealthy";case"Exited":return"exited";case"Stopped":return"stopped"}}function UN(){let e=G(process.env.LINZUMI_DEV_SERVICES_DIR,t=>t.trim());return e!==void 0&&e!==""?e:Hn.join(Wk.homedir(),".linzumi","dev-services")}function WN(e){let t=e.replace(new RegExp("[^A-Za-z0-9._-]+","g"),"-").replace(new RegExp("^[-.]+|[-.]+$","g"),"").slice(0,80),r=qn(e).slice(0,8),n=t===""?"runner":t;return Hn.join(UN(),n+"."+r)}function Zc(e){let t=e.trim().toLowerCase();if(new RegExp("^[a-z0-9][a-z0-9._-]{0,63}$").test(t)&&!t.includes(".."))return t}function Fh(e,t){return Hn.join(e,"services",t+".json")}function Dh(e,t){return Hn.join(e,"exits",t+".json")}function Bk(e,t){return Hn.join(e,"logs",t+".log")}function yd(e){if(typeof e=="string"&&e!=="")return e}function bd(e){if(e!==void 0&&typeof e=="number"&&isFinite(e))return e}function ZN(e){return e!==void 0?Array.isArray(e)?$e(e,t=>{if(typeof t=="number"&&Number.isInteger(t)&&t>0&&t<=65535)return t}):[]:[]}function VN(e){if(typeof e!="object"||e===null||Array.isArray(e)||!de(e.version,1))return;let t=yd(e.name),r=k(t,Zc),n=yd(e.command),i=yd(e.cwd),o=e.desiredState,a;if(typeof o=="string")switch(o){case"running":a="DesiredRunning";break;case"stopped":a="DesiredStopped";break;default:a=void 0}else a=void 0;let s=bd(e.updatedAtMs),l=yd(e.logPath),d=de(r,t);if(r!==void 0&&d&&n!==void 0&&i!==void 0&&a!==void 0&&s!==void 0&&l!==void 0)return{name:r,command:n,cwd:i,ports:ZN(e.ports),restartOnBranchChange:de(e.restartOnBranchChange,!0),desiredState:a,pid:bd(e.pid),ownerPid:bd(e.ownerPid),startedAtMs:bd(e.startedAtMs),updatedAtMs:s,lastBranch:yd(e.lastBranch),logPath:l}}function jh(e){return e!==void 0?e:null}function HN(e){return e!==void 0?e:null}function BN(e){let t={};return t.version=1,t.name=e.name,t.command=e.command,t.cwd=e.cwd,t.ports=e.ports.map(r=>r),t.restartOnBranchChange=e.restartOnBranchChange,t.desiredState=Gh(e.desiredState),t.pid=jh(e.pid),t.ownerPid=jh(e.ownerPid),t.startedAtMs=jh(e.startedAtMs),t.updatedAtMs=e.updatedAtMs,t.lastBranch=HN(e.lastBranch),t.logPath=e.logPath,t}function Kk(e,t,r){let n=Fh(e,t.name),i=he(qt(Hn.dirname(n)),()=>{let a=n+".tmp";return he(Ti(a,JSON.stringify(BN(t))+`
|
|
122
|
-
`),()=>li(a,n))});if(i.TAG==="Ok")return;let o={};o.path=n,o.message=i._0.message,r("dev_services.record_write_failed",o)}function qh(e,t){let r=Zc(t);if(r===void 0)return;let n=Qt(Fh(e,r));if(n.TAG!=="Ok")return;let i;try{i=JSON.parse(n._0)}catch{return}return
|
|
121
|
+
`}}function o1(e){return new Promise((t,r)=>{setTimeout(()=>t(),e|0)})}function a1(e){return{startDeviceAuthorization:t=>ok(t.httpBaseUrl,t.workspaceSlug,t.channelSlug,t.onboarding,t.identity),pollDeviceCodeForToken:t=>ak(t.httpBaseUrl,t.deviceCode,t.expiresInSeconds,void 0),now:()=>Date.now(),sleep:o1,report:e,log:(t,r)=>{}}}var s1="local runner device authorization was denied - a signed-in user rejected this computer";async function lk(e,t,r,n,i,o,a,s){let l=o!==void 0?o:g=>{mr(g)},d=s!==void 0?s:a1(g=>l(i1(g))),u=a!==void 0?a:de(Dt(process.stderr.isTTY),!0),c=$t(on(e),we);if(c.TAG!=="Ok")return{TAG:"Error",_0:c._0};let f=c._0,p=d.now(),m={cycle:0,lastLoudPromptAtMs:void 0,startFailures:0},h=async g=>{let b=await d.pollDeviceCodeForToken({httpBaseUrl:f,deviceCode:g.deviceCode,expiresInSeconds:g.expiresInSeconds});if(typeof b!="object"||b.TAG!=="Transient")return b;let y=b.httpStatus,v=b.reason;d.report({TAG:"TransientFailure",reason:v,waitedMs:d.now()-p});let S={};return S.cycle=m.cycle,S.reason=v,S.httpStatus=y!==void 0?y:null,d.log("device_wait.transient_poll_failure",S),await d.sleep(5e3),await h(g)},_=async()=>{let g=await d.startDeviceAuthorization({httpBaseUrl:f,workspaceSlug:t,channelSlug:r,onboarding:n,identity:i});if(g.TAG==="Ok"){let b=g._0;m.startFailures=0,m.cycle=m.cycle+1|0;let y=n1(m.cycle,d.now(),m.lastLoudPromptAtMs,u),v=0;switch(y){case"DecidePrompt":case"DecideSummary":v=1;break;case"DecideRefreshLine":d.report({TAG:"RefreshLine",cycle:m.cycle,userCode:b.userCode,verificationUri:b.verificationUri,waitedMs:d.now()-p});break;case"DecideSilent":break}if(v===1){m.lastLoudPromptAtMs=d.now();let R=d.now()-p,W;W=y==="DecidePrompt"?{TAG:"Prompt",cycle:m.cycle,userCode:b.userCode,verificationUri:b.verificationUri,waitedMs:R}:{TAG:"Summary",cycle:m.cycle,userCode:b.userCode,verificationUri:b.verificationUri,waitedMs:R},d.report(W)}let S={};S.cycle=m.cycle,S.verificationUri=b.verificationUri,d.log("device_wait.code_issued",S);let A=await h(b);if(typeof A!="object")switch(A){case"CodeExpired":let R={};return R.cycle=m.cycle,R.outcome="code_expired",d.log("device_wait.code_retired",R),await _();case"Denied":return{TAG:"Error",_0:we(s1)};case"Consumed":let W={};return W.cycle=m.cycle,W.outcome="consumed",d.log("device_wait.code_retired",W),await _()}else switch(A.TAG){case"Token":let R={};return R.cycle=m.cycle,R.waitedMs=d.now()-p,d.log("device_wait.authorized",R),{TAG:"Ok",_0:A._0};case"Rejected":let W=A.httpStatus,L=A.reason;d.report({TAG:"TransientFailure",reason:ik(L,W),waitedMs:d.now()-p});let ae={};return ae.cycle=m.cycle,ae.reason=L!==void 0?L:null,ae.httpStatus=W,d.log("device_wait.code_rejected",ae),await _();case"Transient":return await _()}}else{let b=g._0;m.startFailures=m.startFailures+1|0;let y=Math.min(6e4,5e3*Math.pow(2,m.startFailures-1|0));d.report({TAG:"StartFailed",reason:b.summary,retryInMs:y});let v={};return v.reason=b.summary,v.retryInMs=y,v.attempt=m.startFailures,d.log("device_wait.start_failed",v),await d.sleep(y),await _()}};return await _()}function ga(e,t){let r=t!==void 0?parseInt(e,t):parseInt(e);if(!(Number.isNaN(r)||r>2147483647||r<-2147483648))return r|0}var d1="linzumi-machine-fingerprint:v1:";var dk={platform:void 0,execFile:void 0,readFile:void 0,username:void 0};function u1(e,t){return _s(e,t,5e3,1024*1024)}var c1=new RegExp('"IOPlatformUUID"\\s*=\\s*"([0-9A-Fa-f-]{36})"'),f1=new RegExp("^[0-9a-f]{32}$"),m1=["/etc/machine-id","/var/lib/dbus/machine-id"];function p1(e){let t=e!==void 0?e:dk,r=x(t.platform,process.platform),n=x(t.execFile,u1),i=x(t.readFile,Qt);switch(r){case"darwin":let o=n("ioreg",["-rd1","-c","IOPlatformExpertDevice"]);if(o.TAG!=="Ok")return;let a=c1.exec(o._0);if(a==null)return;let s=a.slice(1)[0];if(s===void 0)return;let l=ue(s);return l!==void 0?l.toLowerCase():void 0;case"linux":return Ve(m1,void 0,(d,u)=>{if(d!==void 0)return d;let c=i(u);if(c.TAG!=="Ok")return;let f=c._0.trim().toLowerCase();if(f1.test(f))return f});default:return}}function uk(e){return G(p1(e!==void 0?e:dk),r=>"mfp-"+qn(d1+r).slice(0,32))}function ck(e){let t={};return e!==void 0&&(t.machineFingerprintV2=e),t}function pk(e){return e==="UnusableRejected"?"Cached Linzumi local runner auth was rejected; starting OAuth.":"Cached Linzumi local runner auth points at a workspace or runner the server no longer knows (it may have been reset); starting OAuth."}function h1(e,t){return he($t(on(e),we),r=>{let n=Ln(r);return n===void 0?{TAG:"Error",_0:we("invalid URL: "+r)}:{TAG:"Ok",_0:"Workspace '"+(t!==void 0?t:"undefined")+"' was not found on "+ue(n).host+". Sign in to the web app to create it, then re-run connect."}})}var _1="local runner browser OAuth is not available in this implementation yet; use --auth-mode device or supply --token";async function g1(e){let t=jc(process.env),r=zc(t,e.serviceUrl,void 0);if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=r._0,i=uk(void 0),o=mk.hostname(),a={commanderId:n,machineFingerprint:i,hostname:o},s=await lk(e.serviceUrl,e.workspaceSlug,e.channelSlug,e.onboarding,a,void 0,void 0,void 0);if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0};let l=s._0,d=e.authFilePath,u=d!==void 0?d:ud();return wt(Pc(e.serviceUrl,l.accessToken,l.expiresInSeconds,u,new Date),c=>l.accessToken)}async function y1(e){let t=e.authMode;return typeof(t!==void 0?t:{TAG:"BrowserMode",callbackHost:e.callbackHost})!="object"?await g1(e):{TAG:"Error",_0:we(_1)}}function b1(){return{readCachedToken:(e,t)=>Ec(e,t,Date.now()),validateToken:(e,t,r,n,i)=>Ms(e,t,r,n,i),acquireAndCacheToken:y1}}async function v1(e,t,r){let n=await t.validateToken(e.serviceUrl,r,e.workspaceSlug,e.channelSlug,e.requiredScopes);if(n.TAG!=="Ok")return{TAG:"Ok",_0:void 0};switch(n._0){case"Usable":case"Rejected":return{TAG:"Ok",_0:void 0};case"NotFound":return he(h1(e.serviceUrl,e.workspaceSlug),i=>({TAG:"Error",_0:we(i)}))}}async function Nc(e,t){let r=t!==void 0?t:b1(),n=e.explicitToken;if(n!==void 0)return{TAG:"Ok",_0:n};let i=e.authFilePath,o=i!==void 0?i:ud(),a=r.readCachedToken(e.serviceUrl,o);if(a.TAG!=="Ok")return{TAG:"Error",_0:a._0};let s=a._0,l;if(s!==void 0){let m=await r.validateToken(e.serviceUrl,s.accessToken,e.workspaceSlug,e.channelSlug,e.requiredScopes);if(m.TAG==="Ok")switch(m._0){case"Usable":l={TAG:"Ok",_0:s.accessToken};break;case"Rejected":let h=e.reportRejectedCachedToken;h!==void 0&&h("UnusableRejected"),l={TAG:"Ok",_0:void 0};break;case"NotFound":let _=e.reportRejectedCachedToken;_!==void 0&&_("UnusableNotFound"),l={TAG:"Ok",_0:void 0};break}else l={TAG:"Error",_0:m._0}}else l={TAG:"Ok",_0:void 0};if(l.TAG!=="Ok")return{TAG:"Error",_0:l._0};let d=l._0;if(d!==void 0)return{TAG:"Ok",_0:d};let u=await r.acquireAndCacheToken(e);if(u.TAG!=="Ok")return{TAG:"Error",_0:u._0};let c=u._0;if(e.workspaceSlug===void 0)return{TAG:"Ok",_0:c};let p=await v1(e,r,c);return p.TAG==="Ok"?{TAG:"Ok",_0:c}:{TAG:"Error",_0:p._0}}function Th(e){return we(e.message)}function Gc(e,t,r,n){return he($t(jw(Ah.join(_k.tmpdir(),"linzumi-mcp-auth-")),Th),i=>he($t(ps(i,448),Th),()=>{let o=Ah.join(i,"auth.json");return he(Pc(e,r!==void 0?r:t,void 0,o,n),a=>wt($t(ps(o,384),Th),()=>({path:o,directory:i,cleanup:()=>{Dp(i)}})))}))}function S1(){return{readCachedToken:(e,t)=>Ec(e,t,Date.now()),validateTokenOutcome:(e,t,r,n)=>Ms(e,t,r,n,void 0),resolveToken:e=>Nc(e,void 0)}}var w1="missing Linzumi MCP token; run linzumi auth or pass --token";function k1(e){return"Linzumi MCP token was rejected by the server and re-mint failed: "+e}async function gk(e,t,r,n,i,o){let a=o!==void 0?o:S1(),s=r!==void 0?r:ud(),l=t!==void 0?{TAG:"Ok",_0:t}:wt(a.readCachedToken(e,s),f=>G(f,p=>p.accessToken));if(l.TAG!=="Ok")return{TAG:"Error",_0:l._0};let d=l._0;if(d===void 0)return{TAG:"Error",_0:we(w1)};let u=await a.validateTokenOutcome(e,d,n,i);if(u.TAG!=="Ok")return{TAG:"Error",_0:u._0};switch(u._0){case"Usable":return{TAG:"Ok",_0:d};case"Rejected":case"NotFound":break}let c=await a.resolveToken({serviceUrl:e,explicitToken:void 0,workspaceSlug:n,channelSlug:i,requiredScopes:[],onboarding:void 0,authFilePath:r,callbackHost:void 0,authMode:void 0,reportRejectedCachedToken:void 0});return c.TAG==="Ok"?{TAG:"Ok",_0:c._0}:{TAG:"Error",_0:we(k1(c._0.summary))}}var T={};Gp(T,{BRAND:()=>K1,DIRTY:()=>ya,EMPTY_PATH:()=>O1,INVALID:()=>Me,NEVER:()=>IN,OK:()=>Kr,ParseStatus:()=>Dr,Schema:()=>nt,ZodAny:()=>Oo,ZodArray:()=>no,ZodBigInt:()=>va,ZodBoolean:()=>Sa,ZodBranded:()=>_d,ZodCatch:()=>Ia,ZodDate:()=>wa,ZodDefault:()=>Ra,ZodDiscriminatedUnion:()=>qc,ZodEffects:()=>Vn,ZodEnum:()=>Ea,ZodError:()=>gn,ZodFirstPartyTypeKind:()=>Q,ZodFunction:()=>Uc,ZodIntersection:()=>Aa,ZodIssueCode:()=>Y,ZodLazy:()=>Oa,ZodLiteral:()=>Ca,ZodMap:()=>Ls,ZodNaN:()=>Ws,ZodNativeEnum:()=>Pa,ZodNever:()=>fi,ZodNull:()=>xa,ZodNullable:()=>Mi,ZodNumber:()=>ba,ZodObject:()=>bn,ZodOptional:()=>yn,ZodParsedType:()=>fe,ZodPipeline:()=>gd,ZodPromise:()=>Co,ZodReadonly:()=>$a,ZodRecord:()=>Lc,ZodSchema:()=>nt,ZodSet:()=>Us,ZodString:()=>Ao,ZodSymbol:()=>Ds,ZodTransformer:()=>Vn,ZodTuple:()=>$i,ZodType:()=>nt,ZodUndefined:()=>ka,ZodUnion:()=>Ta,ZodUnknown:()=>ro,ZodVoid:()=>qs,addIssueToContext:()=>le,any:()=>iN,array:()=>lN,bigint:()=>Q1,boolean:()=>Ck,coerce:()=>RN,custom:()=>Tk,date:()=>eN,datetimeRegex:()=>kk,defaultErrorMap:()=>eo,discriminatedUnion:()=>cN,effect:()=>kN,enum:()=>vN,function:()=>gN,getErrorMap:()=>Ns,getParsedType:()=>Ii,instanceof:()=>Y1,intersection:()=>fN,isAborted:()=>Fc,isAsync:()=>Gs,isDirty:()=>Dc,isValid:()=>To,late:()=>J1,lazy:()=>yN,literal:()=>bN,makeIssue:()=>hd,map:()=>hN,nan:()=>X1,nativeEnum:()=>SN,never:()=>aN,null:()=>nN,nullable:()=>TN,number:()=>Ok,object:()=>Rh,objectUtil:()=>Ch,oboolean:()=>PN,onumber:()=>EN,optional:()=>xN,ostring:()=>CN,pipeline:()=>ON,preprocess:()=>AN,promise:()=>wN,quotelessJson:()=>x1,record:()=>pN,set:()=>_N,setErrorMap:()=>A1,strictObject:()=>dN,string:()=>Ak,symbol:()=>tN,transformer:()=>kN,tuple:()=>mN,undefined:()=>rN,union:()=>uN,unknown:()=>oN,util:()=>mt,void:()=>sN});var mt;(function(e){e.assertEqual=i=>{};function t(i){}e.assertIs=t;function r(i){throw new Error}e.assertNever=r,e.arrayToEnum=i=>{let o={};for(let a of i)o[a]=a;return o},e.getValidEnumValues=i=>{let o=e.objectKeys(i).filter(s=>typeof i[i[s]]!="number"),a={};for(let s of o)a[s]=i[s];return e.objectValues(a)},e.objectValues=i=>e.objectKeys(i).map(function(o){return i[o]}),e.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let o=[];for(let a in i)Object.prototype.hasOwnProperty.call(i,a)&&o.push(a);return o},e.find=(i,o)=>{for(let a of i)if(o(a))return a},e.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function n(i,o=" | "){return i.map(a=>typeof a=="string"?`'${a}'`:a).join(o)}e.joinValues=n,e.jsonStringifyReplacer=(i,o)=>typeof o=="bigint"?o.toString():o})(mt||(mt={}));var Ch;(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(Ch||(Ch={}));var fe=mt.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Ii=e=>{switch(typeof e){case"undefined":return fe.undefined;case"string":return fe.string;case"number":return Number.isNaN(e)?fe.nan:fe.number;case"boolean":return fe.boolean;case"function":return fe.function;case"bigint":return fe.bigint;case"symbol":return fe.symbol;case"object":return Array.isArray(e)?fe.array:e===null?fe.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?fe.promise:typeof Map<"u"&&e instanceof Map?fe.map:typeof Set<"u"&&e instanceof Set?fe.set:typeof Date<"u"&&e instanceof Date?fe.date:fe.object;default:return fe.unknown}};var Y=mt.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),x1=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),gn=class e extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=t}format(t){let r=t||function(o){return o.message},n={_errors:[]},i=o=>{for(let a of o.issues)if(a.code==="invalid_union")a.unionErrors.map(i);else if(a.code==="invalid_return_type")i(a.returnTypeError);else if(a.code==="invalid_arguments")i(a.argumentsError);else if(a.path.length===0)n._errors.push(r(a));else{let s=n,l=0;for(;l<a.path.length;){let d=a.path[l];l===a.path.length-1?(s[d]=s[d]||{_errors:[]},s[d]._errors.push(r(a))):s[d]=s[d]||{_errors:[]},s=s[d],l++}}};return i(this),n}static assert(t){if(!(t instanceof e))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,mt.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=r=>r.message){let r={},n=[];for(let i of this.issues)if(i.path.length>0){let o=i.path[0];r[o]=r[o]||[],r[o].push(t(i))}else n.push(t(i));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};gn.create=e=>new gn(e);var T1=(e,t)=>{let r;switch(e.code){case Y.invalid_type:e.received===fe.undefined?r="Required":r=`Expected ${e.expected}, received ${e.received}`;break;case Y.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,mt.jsonStringifyReplacer)}`;break;case Y.unrecognized_keys:r=`Unrecognized key(s) in object: ${mt.joinValues(e.keys,", ")}`;break;case Y.invalid_union:r="Invalid input";break;case Y.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${mt.joinValues(e.options)}`;break;case Y.invalid_enum_value:r=`Invalid enum value. Expected ${mt.joinValues(e.options)}, received '${e.received}'`;break;case Y.invalid_arguments:r="Invalid function arguments";break;case Y.invalid_return_type:r="Invalid function return type";break;case Y.invalid_date:r="Invalid date";break;case Y.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(r=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?r=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?r=`Invalid input: must end with "${e.validation.endsWith}"`:mt.assertNever(e.validation):e.validation!=="regex"?r=`Invalid ${e.validation}`:r="Invalid";break;case Y.too_small:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="bigint"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:r="Invalid input";break;case Y.too_big:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?r=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:r="Invalid input";break;case Y.custom:r="Invalid input";break;case Y.invalid_intersection_types:r="Intersection results could not be merged";break;case Y.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case Y.not_finite:r="Number must be finite";break;default:r=t.defaultError,mt.assertNever(e)}return{message:r}},eo=T1;var yk=eo;function A1(e){yk=e}function Ns(){return yk}var hd=e=>{let{data:t,path:r,errorMaps:n,issueData:i}=e,o=[...r,...i.path||[]],a={...i,path:o};if(i.message!==void 0)return{...i,path:o,message:i.message};let s="",l=n.filter(d=>!!d).slice().reverse();for(let d of l)s=d(a,{data:t,defaultError:s}).message;return{...i,path:o,message:s}},O1=[];function le(e,t){let r=Ns(),n=hd({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,r,r===eo?void 0:eo].filter(i=>!!i)});e.common.issues.push(n)}var Dr=class e{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,r){let n=[];for(let i of r){if(i.status==="aborted")return Me;i.status==="dirty"&&t.dirty(),n.push(i.value)}return{status:t.value,value:n}}static async mergeObjectAsync(t,r){let n=[];for(let i of r){let o=await i.key,a=await i.value;n.push({key:o,value:a})}return e.mergeObjectSync(t,n)}static mergeObjectSync(t,r){let n={};for(let i of r){let{key:o,value:a}=i;if(o.status==="aborted"||a.status==="aborted")return Me;o.status==="dirty"&&t.dirty(),a.status==="dirty"&&t.dirty(),o.value!=="__proto__"&&(typeof a.value<"u"||i.alwaysSet)&&(n[o.value]=a.value)}return{status:t.value,value:n}}},Me=Object.freeze({status:"aborted"}),ya=e=>({status:"dirty",value:e}),Kr=e=>({status:"valid",value:e}),Fc=e=>e.status==="aborted",Dc=e=>e.status==="dirty",To=e=>e.status==="valid",Gs=e=>typeof Promise<"u"&&e instanceof Promise;var ye;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(ye||(ye={}));var Zn=class{constructor(t,r,n,i){this._cachedPath=[],this.parent=t,this.data=r,this._path=n,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},bk=(e,t)=>{if(To(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new gn(e.common.issues);return this._error=r,this._error}}};function Ye(e){if(!e)return{};let{errorMap:t,invalid_type_error:r,required_error:n,description:i}=e;if(t&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:i}:{errorMap:(a,s)=>{let{message:l}=e;return a.code==="invalid_enum_value"?{message:l??s.defaultError}:typeof s.data>"u"?{message:l??n??s.defaultError}:a.code!=="invalid_type"?{message:s.defaultError}:{message:l??r??s.defaultError}},description:i}}var nt=class{get description(){return this._def.description}_getType(t){return Ii(t.data)}_getOrReturnCtx(t,r){return r||{common:t.parent.common,data:t.data,parsedType:Ii(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new Dr,ctx:{common:t.parent.common,data:t.data,parsedType:Ii(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let r=this._parse(t);if(Gs(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(t){let r=this._parse(t);return Promise.resolve(r)}parse(t,r){let n=this.safeParse(t,r);if(n.success)return n.data;throw n.error}safeParse(t,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ii(t)},i=this._parseSync({data:t,path:n.path,parent:n});return bk(n,i)}"~validate"(t){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ii(t)};if(!this["~standard"].async)try{let n=this._parseSync({data:t,path:[],parent:r});return To(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:t,path:[],parent:r}).then(n=>To(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(t,r){let n=await this.safeParseAsync(t,r);if(n.success)return n.data;throw n.error}async safeParseAsync(t,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ii(t)},i=this._parse({data:t,path:n.path,parent:n}),o=await(Gs(i)?i:Promise.resolve(i));return bk(n,o)}refine(t,r){let n=i=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(i):r;return this._refinement((i,o)=>{let a=t(i),s=()=>o.addIssue({code:Y.custom,...n(i)});return typeof Promise<"u"&&a instanceof Promise?a.then(l=>l?!0:(s(),!1)):a?!0:(s(),!1)})}refinement(t,r){return this._refinement((n,i)=>t(n)?!0:(i.addIssue(typeof r=="function"?r(n,i):r),!1))}_refinement(t){return new Vn({schema:this,typeName:Q.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return yn.create(this,this._def)}nullable(){return Mi.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return no.create(this)}promise(){return Co.create(this,this._def)}or(t){return Ta.create([this,t],this._def)}and(t){return Aa.create(this,t,this._def)}transform(t){return new Vn({...Ye(this._def),schema:this,typeName:Q.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let r=typeof t=="function"?t:()=>t;return new Ra({...Ye(this._def),innerType:this,defaultValue:r,typeName:Q.ZodDefault})}brand(){return new _d({typeName:Q.ZodBranded,type:this,...Ye(this._def)})}catch(t){let r=typeof t=="function"?t:()=>t;return new Ia({...Ye(this._def),innerType:this,catchValue:r,typeName:Q.ZodCatch})}describe(t){let r=this.constructor;return new r({...this._def,description:t})}pipe(t){return gd.create(this,t)}readonly(){return $a.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},C1=/^c[^\s-]{8,}$/i,E1=/^[0-9a-z]+$/,P1=/^[0-9A-HJKMNP-TV-Z]{26}$/i,R1=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,I1=/^[a-z0-9_-]{21}$/i,$1=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,M1=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,j1=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,z1="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Eh,N1=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,G1=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,F1=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,D1=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,q1=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,L1=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Sk="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",U1=new RegExp(`^${Sk}$`);function wk(e){let t="[0-5]\\d";e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`);let r=e.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${r}`}function W1(e){return new RegExp(`^${wk(e)}$`)}function kk(e){let t=`${Sk}T${wk(e)}`,r=[];return r.push(e.local?"Z?":"Z"),e.offset&&r.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${r.join("|")})`,new RegExp(`^${t}$`)}function Z1(e,t){return!!((t==="v4"||!t)&&N1.test(e)||(t==="v6"||!t)&&F1.test(e))}function V1(e,t){if(!$1.test(e))return!1;try{let[r]=e.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),i=JSON.parse(atob(n));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||t&&i.alg!==t)}catch{return!1}}function H1(e,t){return!!((t==="v4"||!t)&&G1.test(e)||(t==="v6"||!t)&&D1.test(e))}var Ao=class e extends nt{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==fe.string){let o=this._getOrReturnCtx(t);return le(o,{code:Y.invalid_type,expected:fe.string,received:o.parsedType}),Me}let n=new Dr,i;for(let o of this._def.checks)if(o.kind==="min")t.data.length<o.value&&(i=this._getOrReturnCtx(t,i),le(i,{code:Y.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),n.dirty());else if(o.kind==="max")t.data.length>o.value&&(i=this._getOrReturnCtx(t,i),le(i,{code:Y.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),n.dirty());else if(o.kind==="length"){let a=t.data.length>o.value,s=t.data.length<o.value;(a||s)&&(i=this._getOrReturnCtx(t,i),a?le(i,{code:Y.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):s&&le(i,{code:Y.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),n.dirty())}else if(o.kind==="email")j1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"email",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="emoji")Eh||(Eh=new RegExp(z1,"u")),Eh.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"emoji",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="uuid")R1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"uuid",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="nanoid")I1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"nanoid",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="cuid")C1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"cuid",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="cuid2")E1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"cuid2",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="ulid")P1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"ulid",code:Y.invalid_string,message:o.message}),n.dirty());else if(o.kind==="url")try{new URL(t.data)}catch{i=this._getOrReturnCtx(t,i),le(i,{validation:"url",code:Y.invalid_string,message:o.message}),n.dirty()}else o.kind==="regex"?(o.regex.lastIndex=0,o.regex.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"regex",code:Y.invalid_string,message:o.message}),n.dirty())):o.kind==="trim"?t.data=t.data.trim():o.kind==="includes"?t.data.includes(o.value,o.position)||(i=this._getOrReturnCtx(t,i),le(i,{code:Y.invalid_string,validation:{includes:o.value,position:o.position},message:o.message}),n.dirty()):o.kind==="toLowerCase"?t.data=t.data.toLowerCase():o.kind==="toUpperCase"?t.data=t.data.toUpperCase():o.kind==="startsWith"?t.data.startsWith(o.value)||(i=this._getOrReturnCtx(t,i),le(i,{code:Y.invalid_string,validation:{startsWith:o.value},message:o.message}),n.dirty()):o.kind==="endsWith"?t.data.endsWith(o.value)||(i=this._getOrReturnCtx(t,i),le(i,{code:Y.invalid_string,validation:{endsWith:o.value},message:o.message}),n.dirty()):o.kind==="datetime"?kk(o).test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{code:Y.invalid_string,validation:"datetime",message:o.message}),n.dirty()):o.kind==="date"?U1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{code:Y.invalid_string,validation:"date",message:o.message}),n.dirty()):o.kind==="time"?W1(o).test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{code:Y.invalid_string,validation:"time",message:o.message}),n.dirty()):o.kind==="duration"?M1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"duration",code:Y.invalid_string,message:o.message}),n.dirty()):o.kind==="ip"?Z1(t.data,o.version)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"ip",code:Y.invalid_string,message:o.message}),n.dirty()):o.kind==="jwt"?V1(t.data,o.alg)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"jwt",code:Y.invalid_string,message:o.message}),n.dirty()):o.kind==="cidr"?H1(t.data,o.version)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"cidr",code:Y.invalid_string,message:o.message}),n.dirty()):o.kind==="base64"?q1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"base64",code:Y.invalid_string,message:o.message}),n.dirty()):o.kind==="base64url"?L1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"base64url",code:Y.invalid_string,message:o.message}),n.dirty()):mt.assertNever(o);return{status:n.value,value:t.data}}_regex(t,r,n){return this.refinement(i=>t.test(i),{validation:r,code:Y.invalid_string,...ye.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...ye.errToObj(t)})}url(t){return this._addCheck({kind:"url",...ye.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...ye.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...ye.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...ye.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...ye.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...ye.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...ye.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...ye.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...ye.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...ye.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...ye.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...ye.errToObj(t)})}datetime(t){return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof t?.precision>"u"?null:t?.precision,offset:t?.offset??!1,local:t?.local??!1,...ye.errToObj(t?.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof t?.precision>"u"?null:t?.precision,...ye.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...ye.errToObj(t)})}regex(t,r){return this._addCheck({kind:"regex",regex:t,...ye.errToObj(r)})}includes(t,r){return this._addCheck({kind:"includes",value:t,position:r?.position,...ye.errToObj(r?.message)})}startsWith(t,r){return this._addCheck({kind:"startsWith",value:t,...ye.errToObj(r)})}endsWith(t,r){return this._addCheck({kind:"endsWith",value:t,...ye.errToObj(r)})}min(t,r){return this._addCheck({kind:"min",value:t,...ye.errToObj(r)})}max(t,r){return this._addCheck({kind:"max",value:t,...ye.errToObj(r)})}length(t,r){return this._addCheck({kind:"length",value:t,...ye.errToObj(r)})}nonempty(t){return this.min(1,ye.errToObj(t))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isCIDR(){return!!this._def.checks.find(t=>t.kind==="cidr")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get isBase64url(){return!!this._def.checks.find(t=>t.kind==="base64url")}get minLength(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxLength(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}};Ao.create=e=>new Ao({checks:[],typeName:Q.ZodString,coerce:e?.coerce??!1,...Ye(e)});function B1(e,t){let r=(e.toString().split(".")[1]||"").length,n=(t.toString().split(".")[1]||"").length,i=r>n?r:n,o=Number.parseInt(e.toFixed(i).replace(".","")),a=Number.parseInt(t.toFixed(i).replace(".",""));return o%a/10**i}var ba=class e extends nt{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==fe.number){let o=this._getOrReturnCtx(t);return le(o,{code:Y.invalid_type,expected:fe.number,received:o.parsedType}),Me}let n,i=new Dr;for(let o of this._def.checks)o.kind==="int"?mt.isInteger(t.data)||(n=this._getOrReturnCtx(t,n),le(n,{code:Y.invalid_type,expected:"integer",received:"float",message:o.message}),i.dirty()):o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="multipleOf"?B1(t.data,o.value)!==0&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):o.kind==="finite"?Number.isFinite(t.data)||(n=this._getOrReturnCtx(t,n),le(n,{code:Y.not_finite,message:o.message}),i.dirty()):mt.assertNever(o);return{status:i.value,value:t.data}}gte(t,r){return this.setLimit("min",t,!0,ye.toString(r))}gt(t,r){return this.setLimit("min",t,!1,ye.toString(r))}lte(t,r){return this.setLimit("max",t,!0,ye.toString(r))}lt(t,r){return this.setLimit("max",t,!1,ye.toString(r))}setLimit(t,r,n,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:ye.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:ye.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ye.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ye.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ye.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ye.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:ye.toString(r)})}finite(t){return this._addCheck({kind:"finite",message:ye.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ye.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ye.toString(t)})}get minValue(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}get isInt(){return!!this._def.checks.find(t=>t.kind==="int"||t.kind==="multipleOf"&&mt.isInteger(t.value))}get isFinite(){let t=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(t===null||n.value<t)&&(t=n.value)}return Number.isFinite(r)&&Number.isFinite(t)}};ba.create=e=>new ba({checks:[],typeName:Q.ZodNumber,coerce:e?.coerce||!1,...Ye(e)});var va=class e extends nt{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce)try{t.data=BigInt(t.data)}catch{return this._getInvalidInput(t)}if(this._getType(t)!==fe.bigint)return this._getInvalidInput(t);let n,i=new Dr;for(let o of this._def.checks)o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="multipleOf"?t.data%o.value!==BigInt(0)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):mt.assertNever(o);return{status:i.value,value:t.data}}_getInvalidInput(t){let r=this._getOrReturnCtx(t);return le(r,{code:Y.invalid_type,expected:fe.bigint,received:r.parsedType}),Me}gte(t,r){return this.setLimit("min",t,!0,ye.toString(r))}gt(t,r){return this.setLimit("min",t,!1,ye.toString(r))}lte(t,r){return this.setLimit("max",t,!0,ye.toString(r))}lt(t,r){return this.setLimit("max",t,!1,ye.toString(r))}setLimit(t,r,n,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:ye.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:ye.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ye.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ye.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ye.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:ye.toString(r)})}get minValue(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}};va.create=e=>new va({checks:[],typeName:Q.ZodBigInt,coerce:e?.coerce??!1,...Ye(e)});var Sa=class extends nt{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==fe.boolean){let n=this._getOrReturnCtx(t);return le(n,{code:Y.invalid_type,expected:fe.boolean,received:n.parsedType}),Me}return Kr(t.data)}};Sa.create=e=>new Sa({typeName:Q.ZodBoolean,coerce:e?.coerce||!1,...Ye(e)});var wa=class e extends nt{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==fe.date){let o=this._getOrReturnCtx(t);return le(o,{code:Y.invalid_type,expected:fe.date,received:o.parsedType}),Me}if(Number.isNaN(t.data.getTime())){let o=this._getOrReturnCtx(t);return le(o,{code:Y.invalid_date}),Me}let n=new Dr,i;for(let o of this._def.checks)o.kind==="min"?t.data.getTime()<o.value&&(i=this._getOrReturnCtx(t,i),le(i,{code:Y.too_small,message:o.message,inclusive:!0,exact:!1,minimum:o.value,type:"date"}),n.dirty()):o.kind==="max"?t.data.getTime()>o.value&&(i=this._getOrReturnCtx(t,i),le(i,{code:Y.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),n.dirty()):mt.assertNever(o);return{status:n.value,value:new Date(t.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(t,r){return this._addCheck({kind:"min",value:t.getTime(),message:ye.toString(r)})}max(t,r){return this._addCheck({kind:"max",value:t.getTime(),message:ye.toString(r)})}get minDate(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t!=null?new Date(t):null}};wa.create=e=>new wa({checks:[],coerce:e?.coerce||!1,typeName:Q.ZodDate,...Ye(e)});var Ds=class extends nt{_parse(t){if(this._getType(t)!==fe.symbol){let n=this._getOrReturnCtx(t);return le(n,{code:Y.invalid_type,expected:fe.symbol,received:n.parsedType}),Me}return Kr(t.data)}};Ds.create=e=>new Ds({typeName:Q.ZodSymbol,...Ye(e)});var ka=class extends nt{_parse(t){if(this._getType(t)!==fe.undefined){let n=this._getOrReturnCtx(t);return le(n,{code:Y.invalid_type,expected:fe.undefined,received:n.parsedType}),Me}return Kr(t.data)}};ka.create=e=>new ka({typeName:Q.ZodUndefined,...Ye(e)});var xa=class extends nt{_parse(t){if(this._getType(t)!==fe.null){let n=this._getOrReturnCtx(t);return le(n,{code:Y.invalid_type,expected:fe.null,received:n.parsedType}),Me}return Kr(t.data)}};xa.create=e=>new xa({typeName:Q.ZodNull,...Ye(e)});var Oo=class extends nt{constructor(){super(...arguments),this._any=!0}_parse(t){return Kr(t.data)}};Oo.create=e=>new Oo({typeName:Q.ZodAny,...Ye(e)});var ro=class extends nt{constructor(){super(...arguments),this._unknown=!0}_parse(t){return Kr(t.data)}};ro.create=e=>new ro({typeName:Q.ZodUnknown,...Ye(e)});var fi=class extends nt{_parse(t){let r=this._getOrReturnCtx(t);return le(r,{code:Y.invalid_type,expected:fe.never,received:r.parsedType}),Me}};fi.create=e=>new fi({typeName:Q.ZodNever,...Ye(e)});var qs=class extends nt{_parse(t){if(this._getType(t)!==fe.undefined){let n=this._getOrReturnCtx(t);return le(n,{code:Y.invalid_type,expected:fe.void,received:n.parsedType}),Me}return Kr(t.data)}};qs.create=e=>new qs({typeName:Q.ZodVoid,...Ye(e)});var no=class e extends nt{_parse(t){let{ctx:r,status:n}=this._processInputParams(t),i=this._def;if(r.parsedType!==fe.array)return le(r,{code:Y.invalid_type,expected:fe.array,received:r.parsedType}),Me;if(i.exactLength!==null){let a=r.data.length>i.exactLength.value,s=r.data.length<i.exactLength.value;(a||s)&&(le(r,{code:a?Y.too_big:Y.too_small,minimum:s?i.exactLength.value:void 0,maximum:a?i.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:i.exactLength.message}),n.dirty())}if(i.minLength!==null&&r.data.length<i.minLength.value&&(le(r,{code:Y.too_small,minimum:i.minLength.value,type:"array",inclusive:!0,exact:!1,message:i.minLength.message}),n.dirty()),i.maxLength!==null&&r.data.length>i.maxLength.value&&(le(r,{code:Y.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((a,s)=>i.type._parseAsync(new Zn(r,a,r.path,s)))).then(a=>Dr.mergeArray(n,a));let o=[...r.data].map((a,s)=>i.type._parseSync(new Zn(r,a,r.path,s)));return Dr.mergeArray(n,o)}get element(){return this._def.type}min(t,r){return new e({...this._def,minLength:{value:t,message:ye.toString(r)}})}max(t,r){return new e({...this._def,maxLength:{value:t,message:ye.toString(r)}})}length(t,r){return new e({...this._def,exactLength:{value:t,message:ye.toString(r)}})}nonempty(t){return this.min(1,t)}};no.create=(e,t)=>new no({type:e,minLength:null,maxLength:null,exactLength:null,typeName:Q.ZodArray,...Ye(t)});function Fs(e){if(e instanceof bn){let t={};for(let r in e.shape){let n=e.shape[r];t[r]=yn.create(Fs(n))}return new bn({...e._def,shape:()=>t})}else return e instanceof no?new no({...e._def,type:Fs(e.element)}):e instanceof yn?yn.create(Fs(e.unwrap())):e instanceof Mi?Mi.create(Fs(e.unwrap())):e instanceof $i?$i.create(e.items.map(t=>Fs(t))):e}var bn=class e extends nt{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let t=this._def.shape(),r=mt.objectKeys(t);return this._cached={shape:t,keys:r},this._cached}_parse(t){if(this._getType(t)!==fe.object){let d=this._getOrReturnCtx(t);return le(d,{code:Y.invalid_type,expected:fe.object,received:d.parsedType}),Me}let{status:n,ctx:i}=this._processInputParams(t),{shape:o,keys:a}=this._getCached(),s=[];if(!(this._def.catchall instanceof fi&&this._def.unknownKeys==="strip"))for(let d in i.data)a.includes(d)||s.push(d);let l=[];for(let d of a){let u=o[d],c=i.data[d];l.push({key:{status:"valid",value:d},value:u._parse(new Zn(i,c,i.path,d)),alwaysSet:d in i.data})}if(this._def.catchall instanceof fi){let d=this._def.unknownKeys;if(d==="passthrough")for(let u of s)l.push({key:{status:"valid",value:u},value:{status:"valid",value:i.data[u]}});else if(d==="strict")s.length>0&&(le(i,{code:Y.unrecognized_keys,keys:s}),n.dirty());else if(d!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let d=this._def.catchall;for(let u of s){let c=i.data[u];l.push({key:{status:"valid",value:u},value:d._parse(new Zn(i,c,i.path,u)),alwaysSet:u in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let d=[];for(let u of l){let c=await u.key,f=await u.value;d.push({key:c,value:f,alwaysSet:u.alwaysSet})}return d}).then(d=>Dr.mergeObjectSync(n,d)):Dr.mergeObjectSync(n,l)}get shape(){return this._def.shape()}strict(t){return ye.errToObj,new e({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(r,n)=>{let i=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:ye.errToObj(t).message??i}:{message:i}}}:{}})}strip(){return new e({...this._def,unknownKeys:"strip"})}passthrough(){return new e({...this._def,unknownKeys:"passthrough"})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:Q.ZodObject})}setKey(t,r){return this.augment({[t]:r})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let r={};for(let n of mt.objectKeys(t))t[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new e({...this._def,shape:()=>r})}omit(t){let r={};for(let n of mt.objectKeys(this.shape))t[n]||(r[n]=this.shape[n]);return new e({...this._def,shape:()=>r})}deepPartial(){return Fs(this)}partial(t){let r={};for(let n of mt.objectKeys(this.shape)){let i=this.shape[n];t&&!t[n]?r[n]=i:r[n]=i.optional()}return new e({...this._def,shape:()=>r})}required(t){let r={};for(let n of mt.objectKeys(this.shape))if(t&&!t[n])r[n]=this.shape[n];else{let o=this.shape[n];for(;o instanceof yn;)o=o._def.innerType;r[n]=o}return new e({...this._def,shape:()=>r})}keyof(){return xk(mt.objectKeys(this.shape))}};bn.create=(e,t)=>new bn({shape:()=>e,unknownKeys:"strip",catchall:fi.create(),typeName:Q.ZodObject,...Ye(t)});bn.strictCreate=(e,t)=>new bn({shape:()=>e,unknownKeys:"strict",catchall:fi.create(),typeName:Q.ZodObject,...Ye(t)});bn.lazycreate=(e,t)=>new bn({shape:e,unknownKeys:"strip",catchall:fi.create(),typeName:Q.ZodObject,...Ye(t)});var Ta=class extends nt{_parse(t){let{ctx:r}=this._processInputParams(t),n=this._def.options;function i(o){for(let s of o)if(s.result.status==="valid")return s.result;for(let s of o)if(s.result.status==="dirty")return r.common.issues.push(...s.ctx.common.issues),s.result;let a=o.map(s=>new gn(s.ctx.common.issues));return le(r,{code:Y.invalid_union,unionErrors:a}),Me}if(r.common.async)return Promise.all(n.map(async o=>{let a={...r,common:{...r.common,issues:[]},parent:null};return{result:await o._parseAsync({data:r.data,path:r.path,parent:a}),ctx:a}})).then(i);{let o,a=[];for(let l of n){let d={...r,common:{...r.common,issues:[]},parent:null},u=l._parseSync({data:r.data,path:r.path,parent:d});if(u.status==="valid")return u;u.status==="dirty"&&!o&&(o={result:u,ctx:d}),d.common.issues.length&&a.push(d.common.issues)}if(o)return r.common.issues.push(...o.ctx.common.issues),o.result;let s=a.map(l=>new gn(l));return le(r,{code:Y.invalid_union,unionErrors:s}),Me}}get options(){return this._def.options}};Ta.create=(e,t)=>new Ta({options:e,typeName:Q.ZodUnion,...Ye(t)});var to=e=>e instanceof Oa?to(e.schema):e instanceof Vn?to(e.innerType()):e instanceof Ca?[e.value]:e instanceof Ea?e.options:e instanceof Pa?mt.objectValues(e.enum):e instanceof Ra?to(e._def.innerType):e instanceof ka?[void 0]:e instanceof xa?[null]:e instanceof yn?[void 0,...to(e.unwrap())]:e instanceof Mi?[null,...to(e.unwrap())]:e instanceof _d||e instanceof $a?to(e.unwrap()):e instanceof Ia?to(e._def.innerType):[],qc=class e extends nt{_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==fe.object)return le(r,{code:Y.invalid_type,expected:fe.object,received:r.parsedType}),Me;let n=this.discriminator,i=r.data[n],o=this.optionsMap.get(i);return o?r.common.async?o._parseAsync({data:r.data,path:r.path,parent:r}):o._parseSync({data:r.data,path:r.path,parent:r}):(le(r,{code:Y.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),Me)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,r,n){let i=new Map;for(let o of r){let a=to(o.shape[t]);if(!a.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let s of a){if(i.has(s))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(s)}`);i.set(s,o)}}return new e({typeName:Q.ZodDiscriminatedUnion,discriminator:t,options:r,optionsMap:i,...Ye(n)})}};function Ph(e,t){let r=Ii(e),n=Ii(t);if(e===t)return{valid:!0,data:e};if(r===fe.object&&n===fe.object){let i=mt.objectKeys(t),o=mt.objectKeys(e).filter(s=>i.indexOf(s)!==-1),a={...e,...t};for(let s of o){let l=Ph(e[s],t[s]);if(!l.valid)return{valid:!1};a[s]=l.data}return{valid:!0,data:a}}else if(r===fe.array&&n===fe.array){if(e.length!==t.length)return{valid:!1};let i=[];for(let o=0;o<e.length;o++){let a=e[o],s=t[o],l=Ph(a,s);if(!l.valid)return{valid:!1};i.push(l.data)}return{valid:!0,data:i}}else return r===fe.date&&n===fe.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}var Aa=class extends nt{_parse(t){let{status:r,ctx:n}=this._processInputParams(t),i=(o,a)=>{if(Fc(o)||Fc(a))return Me;let s=Ph(o.value,a.value);return s.valid?((Dc(o)||Dc(a))&&r.dirty(),{status:r.value,value:s.data}):(le(n,{code:Y.invalid_intersection_types}),Me)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([o,a])=>i(o,a)):i(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Aa.create=(e,t,r)=>new Aa({left:e,right:t,typeName:Q.ZodIntersection,...Ye(r)});var $i=class e extends nt{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==fe.array)return le(n,{code:Y.invalid_type,expected:fe.array,received:n.parsedType}),Me;if(n.data.length<this._def.items.length)return le(n,{code:Y.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Me;!this._def.rest&&n.data.length>this._def.items.length&&(le(n,{code:Y.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let o=[...n.data].map((a,s)=>{let l=this._def.items[s]||this._def.rest;return l?l._parse(new Zn(n,a,n.path,s)):null}).filter(a=>!!a);return n.common.async?Promise.all(o).then(a=>Dr.mergeArray(r,a)):Dr.mergeArray(r,o)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};$i.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new $i({items:e,typeName:Q.ZodTuple,rest:null,...Ye(t)})};var Lc=class e extends nt{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==fe.object)return le(n,{code:Y.invalid_type,expected:fe.object,received:n.parsedType}),Me;let i=[],o=this._def.keyType,a=this._def.valueType;for(let s in n.data)i.push({key:o._parse(new Zn(n,s,n.path,s)),value:a._parse(new Zn(n,n.data[s],n.path,s)),alwaysSet:s in n.data});return n.common.async?Dr.mergeObjectAsync(r,i):Dr.mergeObjectSync(r,i)}get element(){return this._def.valueType}static create(t,r,n){return r instanceof nt?new e({keyType:t,valueType:r,typeName:Q.ZodRecord,...Ye(n)}):new e({keyType:Ao.create(),valueType:t,typeName:Q.ZodRecord,...Ye(r)})}},Ls=class extends nt{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==fe.map)return le(n,{code:Y.invalid_type,expected:fe.map,received:n.parsedType}),Me;let i=this._def.keyType,o=this._def.valueType,a=[...n.data.entries()].map(([s,l],d)=>({key:i._parse(new Zn(n,s,n.path,[d,"key"])),value:o._parse(new Zn(n,l,n.path,[d,"value"]))}));if(n.common.async){let s=new Map;return Promise.resolve().then(async()=>{for(let l of a){let d=await l.key,u=await l.value;if(d.status==="aborted"||u.status==="aborted")return Me;(d.status==="dirty"||u.status==="dirty")&&r.dirty(),s.set(d.value,u.value)}return{status:r.value,value:s}})}else{let s=new Map;for(let l of a){let d=l.key,u=l.value;if(d.status==="aborted"||u.status==="aborted")return Me;(d.status==="dirty"||u.status==="dirty")&&r.dirty(),s.set(d.value,u.value)}return{status:r.value,value:s}}}};Ls.create=(e,t,r)=>new Ls({valueType:t,keyType:e,typeName:Q.ZodMap,...Ye(r)});var Us=class e extends nt{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==fe.set)return le(n,{code:Y.invalid_type,expected:fe.set,received:n.parsedType}),Me;let i=this._def;i.minSize!==null&&n.data.size<i.minSize.value&&(le(n,{code:Y.too_small,minimum:i.minSize.value,type:"set",inclusive:!0,exact:!1,message:i.minSize.message}),r.dirty()),i.maxSize!==null&&n.data.size>i.maxSize.value&&(le(n,{code:Y.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),r.dirty());let o=this._def.valueType;function a(l){let d=new Set;for(let u of l){if(u.status==="aborted")return Me;u.status==="dirty"&&r.dirty(),d.add(u.value)}return{status:r.value,value:d}}let s=[...n.data.values()].map((l,d)=>o._parse(new Zn(n,l,n.path,d)));return n.common.async?Promise.all(s).then(l=>a(l)):a(s)}min(t,r){return new e({...this._def,minSize:{value:t,message:ye.toString(r)}})}max(t,r){return new e({...this._def,maxSize:{value:t,message:ye.toString(r)}})}size(t,r){return this.min(t,r).max(t,r)}nonempty(t){return this.min(1,t)}};Us.create=(e,t)=>new Us({valueType:e,minSize:null,maxSize:null,typeName:Q.ZodSet,...Ye(t)});var Uc=class e extends nt{constructor(){super(...arguments),this.validate=this.implement}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==fe.function)return le(r,{code:Y.invalid_type,expected:fe.function,received:r.parsedType}),Me;function n(s,l){return hd({data:s,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ns(),eo].filter(d=>!!d),issueData:{code:Y.invalid_arguments,argumentsError:l}})}function i(s,l){return hd({data:s,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ns(),eo].filter(d=>!!d),issueData:{code:Y.invalid_return_type,returnTypeError:l}})}let o={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof Co){let s=this;return Kr(async function(...l){let d=new gn([]),u=await s._def.args.parseAsync(l,o).catch(p=>{throw d.addIssue(n(l,p)),d}),c=await Reflect.apply(a,this,u);return await s._def.returns._def.type.parseAsync(c,o).catch(p=>{throw d.addIssue(i(c,p)),d})})}else{let s=this;return Kr(function(...l){let d=s._def.args.safeParse(l,o);if(!d.success)throw new gn([n(l,d.error)]);let u=Reflect.apply(a,this,d.data),c=s._def.returns.safeParse(u,o);if(!c.success)throw new gn([i(u,c.error)]);return c.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:$i.create(t).rest(ro.create())})}returns(t){return new e({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,r,n){return new e({args:t||$i.create([]).rest(ro.create()),returns:r||ro.create(),typeName:Q.ZodFunction,...Ye(n)})}},Oa=class extends nt{get schema(){return this._def.getter()}_parse(t){let{ctx:r}=this._processInputParams(t);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Oa.create=(e,t)=>new Oa({getter:e,typeName:Q.ZodLazy,...Ye(t)});var Ca=class extends nt{_parse(t){if(t.data!==this._def.value){let r=this._getOrReturnCtx(t);return le(r,{received:r.data,code:Y.invalid_literal,expected:this._def.value}),Me}return{status:"valid",value:t.data}}get value(){return this._def.value}};Ca.create=(e,t)=>new Ca({value:e,typeName:Q.ZodLiteral,...Ye(t)});function xk(e,t){return new Ea({values:e,typeName:Q.ZodEnum,...Ye(t)})}var Ea=class e extends nt{_parse(t){if(typeof t.data!="string"){let r=this._getOrReturnCtx(t),n=this._def.values;return le(r,{expected:mt.joinValues(n),received:r.parsedType,code:Y.invalid_type}),Me}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(t.data)){let r=this._getOrReturnCtx(t),n=this._def.values;return le(r,{received:r.data,code:Y.invalid_enum_value,options:n}),Me}return Kr(t.data)}get options(){return this._def.values}get enum(){let t={};for(let r of this._def.values)t[r]=r;return t}get Values(){let t={};for(let r of this._def.values)t[r]=r;return t}get Enum(){let t={};for(let r of this._def.values)t[r]=r;return t}extract(t,r=this._def){return e.create(t,{...this._def,...r})}exclude(t,r=this._def){return e.create(this.options.filter(n=>!t.includes(n)),{...this._def,...r})}};Ea.create=xk;var Pa=class extends nt{_parse(t){let r=mt.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(t);if(n.parsedType!==fe.string&&n.parsedType!==fe.number){let i=mt.objectValues(r);return le(n,{expected:mt.joinValues(i),received:n.parsedType,code:Y.invalid_type}),Me}if(this._cache||(this._cache=new Set(mt.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){let i=mt.objectValues(r);return le(n,{received:n.data,code:Y.invalid_enum_value,options:i}),Me}return Kr(t.data)}get enum(){return this._def.values}};Pa.create=(e,t)=>new Pa({values:e,typeName:Q.ZodNativeEnum,...Ye(t)});var Co=class extends nt{unwrap(){return this._def.type}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==fe.promise&&r.common.async===!1)return le(r,{code:Y.invalid_type,expected:fe.promise,received:r.parsedType}),Me;let n=r.parsedType===fe.promise?r.data:Promise.resolve(r.data);return Kr(n.then(i=>this._def.type.parseAsync(i,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Co.create=(e,t)=>new Co({type:e,typeName:Q.ZodPromise,...Ye(t)});var Vn=class extends nt{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===Q.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){let{status:r,ctx:n}=this._processInputParams(t),i=this._def.effect||null,o={addIssue:a=>{le(n,a),a.fatal?r.abort():r.dirty()},get path(){return n.path}};if(o.addIssue=o.addIssue.bind(o),i.type==="preprocess"){let a=i.transform(n.data,o);if(n.common.async)return Promise.resolve(a).then(async s=>{if(r.value==="aborted")return Me;let l=await this._def.schema._parseAsync({data:s,path:n.path,parent:n});return l.status==="aborted"?Me:l.status==="dirty"?ya(l.value):r.value==="dirty"?ya(l.value):l});{if(r.value==="aborted")return Me;let s=this._def.schema._parseSync({data:a,path:n.path,parent:n});return s.status==="aborted"?Me:s.status==="dirty"?ya(s.value):r.value==="dirty"?ya(s.value):s}}if(i.type==="refinement"){let a=s=>{let l=i.refinement(s,o);if(n.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return s};if(n.common.async===!1){let s=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?Me:(s.status==="dirty"&&r.dirty(),a(s.value),{status:r.value,value:s.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(s=>s.status==="aborted"?Me:(s.status==="dirty"&&r.dirty(),a(s.value).then(()=>({status:r.value,value:s.value}))))}if(i.type==="transform")if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!To(a))return Me;let s=i.transform(a.value,o);if(s instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:s}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>To(a)?Promise.resolve(i.transform(a.value,o)).then(s=>({status:r.value,value:s})):Me);mt.assertNever(i)}};Vn.create=(e,t,r)=>new Vn({schema:e,typeName:Q.ZodEffects,effect:t,...Ye(r)});Vn.createWithPreprocess=(e,t,r)=>new Vn({schema:t,effect:{type:"preprocess",transform:e},typeName:Q.ZodEffects,...Ye(r)});var yn=class extends nt{_parse(t){return this._getType(t)===fe.undefined?Kr(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};yn.create=(e,t)=>new yn({innerType:e,typeName:Q.ZodOptional,...Ye(t)});var Mi=class extends nt{_parse(t){return this._getType(t)===fe.null?Kr(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};Mi.create=(e,t)=>new Mi({innerType:e,typeName:Q.ZodNullable,...Ye(t)});var Ra=class extends nt{_parse(t){let{ctx:r}=this._processInputParams(t),n=r.data;return r.parsedType===fe.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Ra.create=(e,t)=>new Ra({innerType:e,typeName:Q.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...Ye(t)});var Ia=class extends nt{_parse(t){let{ctx:r}=this._processInputParams(t),n={...r,common:{...r.common,issues:[]}},i=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Gs(i)?i.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new gn(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new gn(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Ia.create=(e,t)=>new Ia({innerType:e,typeName:Q.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...Ye(t)});var Ws=class extends nt{_parse(t){if(this._getType(t)!==fe.nan){let n=this._getOrReturnCtx(t);return le(n,{code:Y.invalid_type,expected:fe.nan,received:n.parsedType}),Me}return{status:"valid",value:t.data}}};Ws.create=e=>new Ws({typeName:Q.ZodNaN,...Ye(e)});var K1=Symbol("zod_brand"),_d=class extends nt{_parse(t){let{ctx:r}=this._processInputParams(t),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},gd=class e extends nt{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.common.async)return(async()=>{let o=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?Me:o.status==="dirty"?(r.dirty(),ya(o.value)):this._def.out._parseAsync({data:o.value,path:n.path,parent:n})})();{let i=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?Me:i.status==="dirty"?(r.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:n.path,parent:n})}}static create(t,r){return new e({in:t,out:r,typeName:Q.ZodPipeline})}},$a=class extends nt{_parse(t){let r=this._def.innerType._parse(t),n=i=>(To(i)&&(i.value=Object.freeze(i.value)),i);return Gs(r)?r.then(i=>n(i)):n(r)}unwrap(){return this._def.innerType}};$a.create=(e,t)=>new $a({innerType:e,typeName:Q.ZodReadonly,...Ye(t)});function vk(e,t){let r=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof r=="string"?{message:r}:r}function Tk(e,t={},r){return e?Oo.create().superRefine((n,i)=>{let o=e(n);if(o instanceof Promise)return o.then(a=>{if(!a){let s=vk(t,n),l=s.fatal??r??!0;i.addIssue({code:"custom",...s,fatal:l})}});if(!o){let a=vk(t,n),s=a.fatal??r??!0;i.addIssue({code:"custom",...a,fatal:s})}}):Oo.create()}var J1={object:bn.lazycreate},Q;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(Q||(Q={}));var Y1=(e,t={message:`Input not instance of ${e.name}`})=>Tk(r=>r instanceof e,t),Ak=Ao.create,Ok=ba.create,X1=Ws.create,Q1=va.create,Ck=Sa.create,eN=wa.create,tN=Ds.create,rN=ka.create,nN=xa.create,iN=Oo.create,oN=ro.create,aN=fi.create,sN=qs.create,lN=no.create,Rh=bn.create,dN=bn.strictCreate,uN=Ta.create,cN=qc.create,fN=Aa.create,mN=$i.create,pN=Lc.create,hN=Ls.create,_N=Us.create,gN=Uc.create,yN=Oa.create,bN=Ca.create,vN=Ea.create,SN=Pa.create,wN=Co.create,kN=Vn.create,xN=yn.create,TN=Mi.create,AN=Vn.createWithPreprocess,ON=gd.create,CN=()=>Ak().optional(),EN=()=>Ok().optional(),PN=()=>Ck().optional(),RN={string:(e=>Ao.create({...e,coerce:!0})),number:(e=>ba.create({...e,coerce:!0})),boolean:(e=>Sa.create({...e,coerce:!0})),bigint:(e=>va.create({...e,coerce:!0})),date:(e=>wa.create({...e,coerce:!0}))};var IN=Me;import*as Nk from"node:os";import*as Sn from"node:path";import*as Eo from"node:fs/promises";function Pk(e,t){return"Kandan attachment path must resolve inside an allowed upload root ("+e+"): "+t}function Rk(e){return"Kandan attachment upload path must not include hidden path segments: "+e}function Ik(e){return"Kandan attachment upload path extension is not allowed: "+e}var $k="LINZUMI_THREAD_RUNNER_KANDAN_THREAD_ID";var Mk="Kandan attachment path must not be empty";function io(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function Gk(e){if(Array.isArray(e))return e}function Jr(e){if(e!==void 0&&typeof e=="string"&&e.trim()!=="")return e.trim()}function $N(e){if(e!==void 0&&typeof e=="number"&&Number.isInteger(e))return e}function vn(e){let t={};t.type="text",t.text=JSON.stringify(e,void 0,2);let r={};return r.content=[t],r.structuredContent=e,r}var MN="failed: ([a-z0-9_]+)(?: detail=(.+))?$";async function Ih(e){let t;try{t=await e}catch(r){let n=ee(r),i=gs(n),o=new RegExp(MN).exec(i);if(o==null){let c={};return c.error=i,vn(c)}let a=o.slice(1),s=a[0],l;if(s!==void 0){let c=ue(s);l=c!==void 0?c:i}else l=i;let d={};d.error=l;let u=a[1];if(u!==void 0){let c=ue(u);c!==void 0&&(d.detail=c)}return vn(d)}return vn(t)}function Fk(e){let t=Sr(e);if(t===void 0)return Ww(e);let r=ue(t),n=Er(r);return n!==void 0&&n.includes("channel_required")?Lw(new Error(n+". Remediation: pass the channel slug in the `channel` parameter, or set target.thread_id to a Linzumi thread you can access (the server resolves the thread's channel). The files were NOT attached; retry with a channel or thread instead of leaving them on disk.",{cause:r})):Uw(r)}function oo(e){let t={};return Object.entries(e).forEach(r=>{t[r[0]]=r[1]}),t}function $h(e,t){if(Jr(e.thread_id)!==void 0||t===void 0)return e;let n=()=>{let a=oo(e);return a.thread_id=t,a},i=e.message_seq;if(i!==void 0&&typeof i<"u")return n();let o=Jr(e.kind);if(o===void 0)return e;switch(o){case"latest_assistant_message":case"message_seq":case"new_message":return n();default:return e}}function mi(e,t){if(Jr(e.thread_id)!==void 0||t===void 0)return e;let n=oo(e);return n.thread_id=t,n}function Wc(e,t){let r=Ln(t);if(r!==void 0)return ue(r).toString();let n=e.replace(new RegExp("^wss://"),"https://").replace(new RegExp("^ws://"),"http://"),i=Hi(t,n);return i.TAG==="Ok"?i._0.toString():yr(i._0)}function jN(e,t){let r=Jr(t.inline_url),n=Jr(t.carousel_url),i=oo(t);return r!==void 0&&(i.inline_url=Wc(e,r)),n!==void 0&&(i.carousel_url=Wc(e,n)),i}function zN(e,t){if(typeof t!="object"||t===null||Array.isArray(t))return t;let r=Jr(t.url),n=io(t.image_variants),i=oo(t);return r!==void 0&&(i.url=Wc(e,r)),n!==void 0&&(i.image_variants=jN(e,n)),i}function zk(e,t){let r=Gk(t.attachments);if(r===void 0)return t;let n=oo(t);return n.attachments=r.map(i=>zN(e,i)),n}function Mh(e,t){let r=io(t.message),n=io(t.target_message);if(r===void 0&&n===void 0)return t;let i=oo(t);return r!==void 0&&(i.message=zk(e,r)),n!==void 0&&(i.target_message=zk(e,n)),i}var NN=[".csv",".diff",".gif",".htm",".html",".jpeg",".jpg",".json",".jsonl",".log",".md",".mp4",".patch",".pdf",".png",".svg",".txt",".webm",".webp",".xml",".zip"];async function GN(e){let t=[{path:e,label:"runner cwd"}],r=G(process.env.HOME,o=>o.trim()),n=Sn.resolve(r!==void 0&&r!==""?r:Nk.homedir(),"Downloads"),i;try{i=await Eo.realpath(n)}catch{return t}return t.some(o=>o.path===i)||t.push({path:i,label:"~/Downloads"}),t}function FN(e,t){let r=Sn.relative(e,t);return r===""?!0:r.startsWith("..")?!1:!Sn.isAbsolute(r)}async function DN(e,t){if(t==="")return yr(Mk);let r=Sn.isAbsolute(t)?Sn.resolve(t):Sn.resolve(e,t);return await Eo.realpath(r)}function qN(e,t){let r=e.find(i=>FN(i.path,t));if(r!==void 0){if(Sn.relative(r.path,t).split(new RegExp("[\\\\/]+","g")).find(s=>s!==void 0?s.startsWith("."):!1)!==void 0)return yr(Rk(t));let a=Sn.extname(t).toLowerCase();return NN.includes(a)?void 0:yr(Ik(t))}let n=e.map(i=>i.label).join(", ");yr(Pk(n,t))}function LN(e){let t=e.toLowerCase();return t.endsWith(".png")?"image/png":t.endsWith(".jpg")||t.endsWith(".jpeg")?"image/jpeg":t.endsWith(".gif")?"image/gif":t.endsWith(".webp")?"image/webp":t.endsWith(".csv")?"text/csv":t.endsWith(".json")?"application/json":t.endsWith(".md")||t.endsWith(".txt")||t.endsWith(".log")?"text/plain":"application/octet-stream"}async function Dk(e,t){let r=await Eo.realpath(e),n=await GN(r),i=await DN(r,t);qN(n,i);let o=await Eo.stat(i);return o.isFile()?{path:i,fileName:Sn.basename(i),contentType:LN(i),sizeBytes:o.size}:yr("Linzumi upload path is not a file: "+i)}async function qk(e,t,r,n,i){let o=await Eo.readFile(i),a={};return a["content-type"]=n,await cc.binary(Wc(e,t),{method:r,headers:a,body:Zw(o)})}async function Lk(e){let t=await Promise.all(e.files.map(m=>Dk(e.cwd,m))),r=Jr(e.target.thread_id),n={},i=e.workspace;i!==void 0&&(n.workspace=i);let o=e.channel;o!==void 0&&(n.channel=o),r!==void 0&&(n.thread_id=r),n.files=t.map(m=>{let h={};return h.file_name=m.fileName,h.content_type=m.contentType,h.size_bytes=m.sizeBytes,h});let a=await e.client.prepareMessageUploads(n),s=Gk(a.uploads),l=s!==void 0?s:[];l.length===t.length||yr("Linzumi upload prepare response count mismatch"),await Promise.all(t.map(async(m,h)=>{let _=io(l[h]),g=Jr(k(_,S=>S.upload_url)),b=Jr(k(_,S=>S.upload_method)),y=b!==void 0?b:"PUT";if(g===void 0)return yr("Linzumi upload prepare response missing upload_url");let v=await qk(e.serviceUrl,g,y,m.contentType,m.path);if(!v.ok)return yr("Linzumi upload failed for "+m.fileName+": "+v.status.toString()+" "+v.statusText)}));let d=l.map(m=>{let h=Jr(k(io(m),_=>_.file_id));return h!==void 0?h:yr("Linzumi upload prepare response missing file_id")}),u={},c=e.workspace;c!==void 0&&(u.workspace=c);let f=e.channel;f!==void 0&&(u.channel=f),r!==void 0&&(u.thread_id=r),u.target=e.target;let p=e.body;return p!==void 0&&(u.body=p),u.uploaded_file_ids=d,await e.client.attachMessageFiles(u)}async function Uk(e){let t=await Dk(e.cwd,e.file),r={},n=e.workspace;n!==void 0&&(r.workspace=n),r.name=e.name,r.file_name=t.fileName,r.content_type=t.contentType,r.size_bytes=t.sizeBytes;let i=await e.client.prepareCustomEmoji(r),o=io(i.upload),a=Jr(k(o,m=>m.upload_url)),s=Jr(k(o,m=>m.upload_method)),l=s!==void 0?s:"PUT";if(a===void 0)return yr("Linzumi custom emoji prepare response missing upload_url");let d=await qk(e.serviceUrl,a,l,t.contentType,t.path);if(d.ok){let m=await d.json();if(typeof m!="object"||m===null||Array.isArray(m))return yr("Linzumi custom emoji upload returned non-object JSON");let h=io(m.custom_emoji);if(h===void 0)return yr("Linzumi custom emoji upload response missing custom_emoji");let _={};_.ok=!0;let g=i.workspace;_.workspace=g!==void 0?g:void 0,_.emoji=h;let b=Jr(m.asset_id);_.asset_id=b!==void 0?b:void 0;let y=$N(h.id);_.id=y!==void 0?y:void 0;let v=Jr(h.name);_.name=v!==void 0?v:void 0;let S=Jr(h.shortcode);_.shortcode=S!==void 0?S:void 0;let A=Jr(h.image_url);return _.image_url=A!==void 0?A:void 0,_}let u=d.status.toString()+" "+d.statusText,f=(await d.text()).trim(),p;if(f==="")p=u;else{let m=0,h;try{h=JSON.parse(f),m=1}catch{p=f}if(m===1)if(typeof h=="object"&&h!==null&&!Array.isArray(h)){let _=h.error;p=typeof _=="string"?_:f}else p=f}return yr("Linzumi custom emoji upload failed: "+p)}import*as wn from"node:fs";import*as Wk from"node:os";import*as Zk from"node:net";import*as Hn from"node:path";import*as Vk from"node:child_process";function Nh(e,t){}function Gh(e){return e==="DesiredRunning"?"running":"stopped"}function Hk(e){switch(e){case"Running":return"running";case"Unhealthy":return"unhealthy";case"Exited":return"exited";case"Stopped":return"stopped"}}function WN(){let e=G(process.env.LINZUMI_DEV_SERVICES_DIR,t=>t.trim());return e!==void 0&&e!==""?e:Hn.join(Wk.homedir(),".linzumi","dev-services")}function ZN(e){let t=e.replace(new RegExp("[^A-Za-z0-9._-]+","g"),"-").replace(new RegExp("^[-.]+|[-.]+$","g"),"").slice(0,80),r=qn(e).slice(0,8),n=t===""?"runner":t;return Hn.join(WN(),n+"."+r)}function Zc(e){let t=e.trim().toLowerCase();if(new RegExp("^[a-z0-9][a-z0-9._-]{0,63}$").test(t)&&!t.includes(".."))return t}function Fh(e,t){return Hn.join(e,"services",t+".json")}function Dh(e,t){return Hn.join(e,"exits",t+".json")}function Bk(e,t){return Hn.join(e,"logs",t+".log")}function yd(e){if(typeof e=="string"&&e!=="")return e}function bd(e){if(e!==void 0&&typeof e=="number"&&isFinite(e))return e}function VN(e){return e!==void 0?Array.isArray(e)?$e(e,t=>{if(typeof t=="number"&&Number.isInteger(t)&&t>0&&t<=65535)return t}):[]:[]}function HN(e){if(typeof e!="object"||e===null||Array.isArray(e)||!de(e.version,1))return;let t=yd(e.name),r=k(t,Zc),n=yd(e.command),i=yd(e.cwd),o=e.desiredState,a;if(typeof o=="string")switch(o){case"running":a="DesiredRunning";break;case"stopped":a="DesiredStopped";break;default:a=void 0}else a=void 0;let s=bd(e.updatedAtMs),l=yd(e.logPath),d=de(r,t);if(r!==void 0&&d&&n!==void 0&&i!==void 0&&a!==void 0&&s!==void 0&&l!==void 0)return{name:r,command:n,cwd:i,ports:VN(e.ports),restartOnBranchChange:de(e.restartOnBranchChange,!0),desiredState:a,pid:bd(e.pid),ownerPid:bd(e.ownerPid),startedAtMs:bd(e.startedAtMs),updatedAtMs:s,lastBranch:yd(e.lastBranch),logPath:l}}function jh(e){return e!==void 0?e:null}function BN(e){return e!==void 0?e:null}function KN(e){let t={};return t.version=1,t.name=e.name,t.command=e.command,t.cwd=e.cwd,t.ports=e.ports.map(r=>r),t.restartOnBranchChange=e.restartOnBranchChange,t.desiredState=Gh(e.desiredState),t.pid=jh(e.pid),t.ownerPid=jh(e.ownerPid),t.startedAtMs=jh(e.startedAtMs),t.updatedAtMs=e.updatedAtMs,t.lastBranch=BN(e.lastBranch),t.logPath=e.logPath,t}function Kk(e,t,r){let n=Fh(e,t.name),i=he(Lt(Hn.dirname(n)),()=>{let a=n+".tmp";return he(Ti(a,JSON.stringify(KN(t))+`
|
|
122
|
+
`),()=>li(a,n))});if(i.TAG==="Ok")return;let o={};o.path=n,o.message=i._0.message,r("dev_services.record_write_failed",o)}function qh(e,t){let r=Zc(t);if(r===void 0)return;let n=Qt(Fh(e,r));if(n.TAG!=="Ok")return;let i;try{i=JSON.parse(n._0)}catch{return}return HN(i)}function JN(e){let t=hs(Hn.join(e,"services"));return t.TAG==="Ok"?$e(t._0,r=>{if(r.endsWith(".json"))return qh(e,r.slice(0,r.length-5|0))}).toSorted((r,n)=>r.name.localeCompare(n.name)):[]}function Jk(e,t){let r=Qt(Dh(e,t));if(r.TAG!=="Ok")return;let n;try{n=JSON.parse(r._0)}catch{return}if(typeof n!="object"||n===null||Array.isArray(n))return;let i=bd(n.atMs);if(i===void 0)return;let o=n.code,a;a=typeof o=="number"?o:void 0;let s=n.signal,l;return l=typeof s=="string"?s:void 0,{code:a,signal:l,atMs:i}}function YN(e){let t={};return t.command=e.command,t.args=e.args.map(r=>r),t.cwd=e.cwd,t.ownerPid=e.ownerPid,t.pollIntervalMs=e.pollIntervalMs,t.exitStatusPath=e.exitStatusPath,JSON.stringify(t)}function XN(e,t){return{command:e,args:["-e",`
|
|
123
123
|
const { spawn } = require('node:child_process');
|
|
124
124
|
const fs = require('node:fs');
|
|
125
125
|
const config = JSON.parse(process.argv[process.argv.length - 1]);
|
|
@@ -175,10 +175,10 @@ const watchdog = setInterval(() => {
|
|
|
175
175
|
}
|
|
176
176
|
}
|
|
177
177
|
}, config.pollIntervalMs);
|
|
178
|
-
`.trim(),
|
|
178
|
+
`.trim(),YN(t)]}}function zh(e){if(e===void 0||e<=1)return!1;try{return process.kill(-e,0),!0}catch(t){let r=ee(t);return de(Ne(r).code,"EPERM")}}function Lh(e,t){let r=t.pid;if(r===void 0||r<=1)return!1;let n=Jk(e,t.name),i=t.startedAtMs;return n!==void 0&&i!==void 0&&n.atMs>=i?!1:zh(t.pid)}function Uh(e){return new Promise((t,r)=>{let n=Zk.createConnection({port:e,host:"127.0.0.1"}),i=o=>{n.removeAllListeners(),n.destroy(),t(o)};n.setTimeout(750),n.once("connect",()=>i(!0)),n.once("timeout",()=>i(!1)),n.once("error",()=>i(!1))})}async function QN(e,t){let r=Lh(e,t),n=[];for(let a=0,s=t.ports.length;a<s;++a){let l=t.ports[a];if(l!==void 0){let d=r?await Uh(l|0):!1;n.push({port:l,listening:d})}}let i=t.desiredState,o;return o=i==="DesiredRunning"?r?n.every(a=>a.listening)?"Running":"Unhealthy":"Exited":"Stopped",{record:t,liveness:o,portProbes:n,lastExit:Jk(e,t.name)}}async function Wh(e){let t=[],r=JN(e);for(let n=0,i=r.length;n<i;++n){let o=r[n];o!==void 0&&t.push(await QN(e,o))}return t}function eG(e){let t=G(e.SHELL,r=>r.trim());return t!==void 0&&t!==""?t:"/bin/sh"}async function Yk(e,t,r){if(e===void 0||e<=1||Vi(-e|0,"SIGTERM").TAG!=="Ok")return;let i=Date.now()+3e3,o=zh(e);for(;o&&Date.now()<i;)await fc(100),o=zh(e);if(!o||Vi(-e|0,"SIGKILL").TAG!=="Ok")return;let s={};return s.name=r,s.pgid=e,t("dev_services.stop_escalated",s)}async function Xk(e){let t=e.log,r=t!==void 0?t:Nh,n=Zc(e.definition.name);if(n===void 0)return{TAG:"Error",_0:"invalid service name: use 1-64 lowercase letters, digits, ., _ or -"};let i=e.definition.command.trim();if(i==="")return{TAG:"Error",_0:"service command must not be empty"};let o;try{o={TAG:"Ok",_0:wn.statSync(e.definition.cwd).isDirectory()}}catch{o={TAG:"Error",_0:"cwd does not exist: "+e.definition.cwd}}if(o.TAG!=="Ok")return{TAG:"Error",_0:o._0};if(!o._0)return{TAG:"Error",_0:"cwd is not a directory: "+e.definition.cwd};let a=qh(e.scopeDir,n);a!==void 0&&Lh(e.scopeDir,a)&&await Yk(a.pid,r,n);let s=e.nowMs,l=s!==void 0?s:Date.now(),d=Bk(e.scopeDir,n),u=Dh(e.scopeDir,n),c=he(he(he(Lt(Hn.dirname(d)),()=>Lt(Hn.join(e.scopeDir,"services"))),()=>Lt(Hn.dirname(u))),()=>{try{return{TAG:"Ok",_0:wn.openSync(d,"a")}}catch(Z){let V=ee(Z);return{TAG:"Error",_0:Ne(V)}}});if(c.TAG!=="Ok")return{TAG:"Error",_0:"cannot open service log: "+c._0.message};let f=c._0;pn(u);let p=e.shellPathOverride,m=p!==void 0?p:eG(process.env),h=e.nodeExecPath,_=e.watchdogPollIntervalMs,g=XN(h!==void 0?h:process.execPath,{command:m,args:["-lc",i],cwd:e.definition.cwd,ownerPid:e.ownerPid,pollIntervalMs:_!==void 0?_:500,exitStatusPath:u});try{wn.writeFileSync(f,`
|
|
179
179
|
--- linzumi dev-service "`+n+'" starting at '+new Date(l).toISOString()+" (owner pid "+e.ownerPid.toString()+`) ---
|
|
180
180
|
$ `+i+`
|
|
181
|
-
`)}catch{}let b={};Object.entries(process.env).forEach(Z=>{b[Z[0]]=Z[1]}),b.ELECTRON_RUN_AS_NODE="1";let y;try{let Z=Vk.spawn(g.command,g.args,{cwd:e.definition.cwd,detached:!0,stdio:["ignore",Number(f),Number(f)],env:b});Z.unref(),y={TAG:"Ok",_0:
|
|
181
|
+
`)}catch{}let b={};Object.entries(process.env).forEach(Z=>{b[Z[0]]=Z[1]}),b.ELECTRON_RUN_AS_NODE="1";let y;try{let Z=Vk.spawn(g.command,g.args,{cwd:e.definition.cwd,detached:!0,stdio:["ignore",Number(f),Number(f)],env:b});Z.unref(),y={TAG:"Ok",_0:Dt(Z.pid)}}catch(Z){let V=ee(Z);y={TAG:"Error",_0:"spawn failed: "+Ne(V).message}}try{wn.closeSync(f)}catch{}if(y.TAG!=="Ok")return{TAG:"Error",_0:y._0};let v=y._0;if(v===void 0)return{TAG:"Error",_0:"spawn failed: no pid"};let S=[];e.definition.ports.forEach(Z=>{if(!S.includes(Z)){S.push(Z);return}});let A=e.definition.cwd,R=S.toSorted((Z,V)=>Z-V),W=e.definition.restartOnBranchChange,L=v,ae=e.ownerPid,B={name:n,command:i,cwd:A,ports:R,restartOnBranchChange:W,desiredState:"DesiredRunning",pid:L,ownerPid:ae,startedAtMs:l,updatedAtMs:l,lastBranch:void 0,logPath:d};Kk(e.scopeDir,B,r);let oe={};return oe.name=n,oe.pid=v,oe.owner_pid=e.ownerPid,oe.cwd=e.definition.cwd,oe.ports=R.map(Z=>Z),r("dev_services.started",oe),{TAG:"Ok",_0:B}}async function Zh(e,t,r){let n=r!==void 0?r:Nh,i=qh(e,t);if(i===void 0)return{TAG:"Error",_0:"unknown service: "+t};Lh(e,i)&&await Yk(i.pid,n,i.name);let o=i.name,a=i.command,s=i.cwd,l=i.ports,d=i.restartOnBranchChange,u=i.startedAtMs,c=Date.now(),f=i.lastBranch,p=i.logPath,m={name:o,command:a,cwd:s,ports:l,restartOnBranchChange:d,desiredState:"DesiredStopped",pid:void 0,ownerPid:void 0,startedAtMs:u,updatedAtMs:c,lastBranch:f,logPath:p};Kk(e,m,n);let h={};return h.name=i.name,n("dev_services.stopped",h),{TAG:"Ok",_0:m}}async function Qk(e,t){let r=await Zh(e,t,Nh);if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=r._0;return pn(Fh(e,n.name)),pn(Dh(e,n.name)),{TAG:"Ok",_0:n}}function ex(e,t,r){let n=Zc(t);if(n===void 0)return;let i=Bk(e,n),o;try{o=wn.openSync(i,"r")}catch{return}let a;try{let s=wn.fstatSync(o).size,l=Math.min(s,r),d=Buffer.alloc(l|0);wn.readSync(o,d,0,l|0,s-l),a=d.toString("utf8")}catch{a=void 0}try{wn.closeSync(o)}catch{}return a}function tx(e){let t=G(e.LINZUMI_DEV_SERVICES_SCOPE,i=>i.trim()),r=e.LINZUMI_DEV_SERVICES_OWNER_PID,n=Number.parseInt(r!==void 0?r:"",10);if(t!==void 0&&t!==""&&Number.isInteger(n)&&n>0)return{scopeDir:ZN(t),ownerPid:n}}var nx=`<linzumi_markdown_media_guidance>
|
|
182
182
|
Some Linzumi users have opted into rich Markdown media rendering. When you are
|
|
183
183
|
writing a visible Linzumi message, channel message, or thread reply, you may use
|
|
184
184
|
these Markdown-compatible media directives:
|
|
@@ -281,14 +281,14 @@ Why bad: External image hosts are intentionally not auto-rendered; attach the im
|
|
|
281
281
|
Use media directives only after upload/attach returns a Linzumi download URL.
|
|
282
282
|
Keep "src" required, all other fields optional, and never exceed 10 embeds in one message.
|
|
283
283
|
</media_reminder>
|
|
284
|
-
</linzumi_markdown_media_guidance>`;function tG(e){switch(e){case"All":return!0;case"Coding":case"OnboardingDiscovery":return!1}}function rG(e){return e==="Voice"}function nG(e){return e.trim().replace(new RegExp("^:+"),"").replace(new RegExp(":+$"),"").toLowerCase()}function ix(){return T.string().min(1).refine(e=>nG(e).length<=64,{message:"Custom emoji shortcode name must be at most 64 characters after trimming surrounding colons."})}function Vt(){return T.string().optional().describe("Workspace slug. Omit to use the authenticated token scope.")}function Pn(){return T.string().optional().describe("Channel slug. Omit to use the authenticated token scope.")}function Rn(e){if(typeof e=="string")return e}function ox(e,t,r){let n=io(e[t]);return n!==void 0?n:yr(r+" "+t+" must be an object")}function iG(e){return e!==void 0?Array.isArray(e)?$e(e,t=>{if(typeof t=="string")return t}):[]:[]}function oG(e){return e!==void 0?Array.isArray(e)?$e(e,t=>{if(typeof t=="number")return t}):[]:[]}function ax(e){if(typeof e=="number")return e}function sx(e){let t={};t.name=e.record.name,t.command=e.record.command,t.cwd=e.record.cwd,t.ports=e.record.ports.map(o=>o),t.restart_on_branch_change=e.record.restartOnBranchChange,t.desired_state=Gh(e.record.desiredState),t.liveness=Hk(e.liveness),t.port_health=e.portProbes.map(o=>{let a={};return a.port=o.port,a.listening=o.listening,a});let r=e.record.startedAtMs;t.started_at_ms=r!==void 0?r:null;let n=e.lastExit,i;if(n!==void 0){let o={},a=n.code;o.code=a!==void 0?a:null;let s=n.signal;o.signal=s!==void 0?s:null,o.at_ms=n.atMs,i=o}else i=null;return t.last_exit=i,t.log_path=e.record.logPath,t}function aG(e,t,r){e.registerTool("linzumi_dev_service_start","Start a long-running local dev server (npm run dev, storybook, docker compose up, ...) as a MANAGED SERVICE owned by the Linzumi runner. Use this instead of running dev servers in your own shell: a managed service survives the end of your turn and branch switches, is auto-restarted if it crashes, and its declared ports are health-probed and surfaced in the product. Calling start for an existing name declaratively RESTARTS it (e.g. after a checkout). Declare EVERY port the app serves from (primary plus HMR/asset/bundle sibling ports).",Object.fromEntries([["name",T.string().regex(new RegExp("^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$")).describe("Stable service name (slug), e.g. 'web' or 'storybook'. Reusing a name restarts that service.")],["command",T.string().min(1).describe("Shell command that runs the server in the foreground (never daemonize/screen/nohup it yourself), e.g. 'npm run dev'. Runs via the user's login shell.")],["cwd",T.string().optional().describe("Working directory for the service. Defaults to the session cwd.")],["ports",T.array(T.number().int().min(1).max(65535)).max(16).default([]).describe("Every TCP port this service listens on (primary AND related ports such as the Vite/HMR bundle port). Used for health probes and product visibility.")],["restart_on_branch_change",T.boolean().optional().describe("Restart the service automatically when the git branch of its cwd changes (for servers that go stale across checkouts).")],["wait_for_ports_ms",T.number().int().min(0).max(6e4).optional().describe("How long to wait for the declared ports to accept connections before returning (default 15000).")]]),async n=>{let i=Rn(n.name),o=i!==void 0?i:"",a=Rn(n.command),s=a!==void 0?a:"",l=Rn(n.cwd),d=await Xk({scopeDir:r.scopeDir,definition:{name:o,command:s,cwd:l!==void 0?l:t,ports:oG(n.ports),restartOnBranchChange:de(n.restart_on_branch_change,!0)},ownerPid:r.ownerPid});if(d.TAG==="Ok"){let c=d._0,f=ax(n.wait_for_ports_ms),p=Date.now()+(f!==void 0?f:15e3),m=c.ports.length===0;for(;!m&&Date.now()<p;)m=(await Promise.all(c.ports.map(v=>Uh(v|0)))).every(v=>v),m||await fc(250);let _=(await Wh(r.scopeDir)).find(y=>y.record.name===c.name),g={};g.ok=!0;let b;if(_!==void 0)b=sx(_);else{let y={};y.name=c.name,b=y}return g.service=b,_!==void 0&&_.liveness!=="Running"&&(g.hint="The service is not (fully) serving its declared ports yet. Check linzumi_dev_service_logs before assuming it works."),vn(g)}let u={};return u.ok=!1,u.error=d._0,vn(u)}),e.registerTool("linzumi_dev_service_stop","Stop a managed dev service (SIGTERM, then SIGKILL after a grace period). The registration is kept so linzumi_dev_service_start can bring it back.",Object.fromEntries([["name",T.string().min(1).describe("Service name to stop.")]]),async n=>{let i=Rn(n.name),o=i!==void 0?i:"",a=await Zh(r.scopeDir,o,void 0),s={};return a.TAG==="Ok"?(s.ok=!0,s.name=a._0.name,s.desired_state="stopped"):(s.ok=!1,s.error=a._0),vn(s)}),e.registerTool("linzumi_dev_service_status","List every managed dev service with liveness (running / unhealthy / exited / stopped), per-port health probes, and last exit. Live state - always check this before concluding a dev server is up or down.",{},async n=>{let i=await Wh(r.scopeDir),o={};return o.services=i.map(a=>sx(a)),vn(o)}),e.registerTool("linzumi_dev_service_logs","Read the tail of a managed dev service's combined stdout/stderr log.",Object.fromEntries([["name",T.string().min(1).describe("Service name.")],["max_bytes",T.number().int().min(256).max(65536).optional().describe("Tail size in bytes (default 16384).")]]),async n=>{let i=Rn(n.name),o=i!==void 0?i:"",a=ax(n.max_bytes),s=ex(r.scopeDir,o,a!==void 0?a:16384),l={};return s!==void 0?(l.ok=!0,l.name=o,l.log_tail=s):(l.ok=!1,l.error="no log for service: "+o),vn(l)}),e.registerTool("linzumi_dev_service_remove","Stop a managed dev service AND delete its registration (it will not be resurrected on runner restart). Use stop instead when the user may want it back.",Object.fromEntries([["name",T.string().min(1).describe("Service name to remove.")]]),async n=>{let i=Rn(n.name),o=i!==void 0?i:"",a=await Qk(r.scopeDir,o),s={};return a.TAG==="Ok"?(s.ok=!0,s.name=a._0.name,s.removed=!0):(s.ok=!1,s.error=a._0),vn(s)})}function lx(e,t){let r=t.devServices,n=t.agentSession,i=t.ownerUsername,o=t.defaultThreadId,a=t.serviceUrl,s=t.cwd,l=t.toolScope,d=t.client,u;switch(l){case"All":case"Coding":u=!0;break;case"OnboardingDiscovery":u=!1;break}let c=async f=>vn(await f);switch(n&&(e.registerTool("linzumi_agent_reply","Post your single @linzumi reply for the current turn into the surface where you were mentioned. Call EXACTLY ONCE per turn with your final answer; the reply links to this working session automatically. Fails with already_replied on a second call and no_active_asker_binding when no turn is active.",Object.fromEntries([["body",T.string().min(1).describe("Plain-text reply body to post.")]]),async f=>{let p={},m=f.body;return p.body=m!==void 0?m:void 0,await c(d.agentReply(p))}),e.registerTool("linzumi_list_coding_jobs","List the coding jobs the current asker can see in this workspace: runner connections (online and recent) with their bound job threads. Live state - never answered from search.",{},async f=>await c(d.agentListCodingJobs({}))),e.registerTool("linzumi_start_coding_job","Start a coding job exactly as if the asking user clicked start: same runner/channel authorization, same pipeline. Returns status 'unavailable' with a reason when the runner cannot take the job (relay that honestly).",Object.fromEntries([["channel",T.string().describe("Channel slug to host the job thread.")],["runner_key",T.string().describe("Runner (computer) to run the job on.")],["cwd",T.string().describe("Working directory on the runner.")],["work_description",T.string().min(1).describe("What the job should do - the initial instruction.")],["model",T.string().optional().describe("Model override (optional).")],["model_provider",T.string().optional().describe("Model provider override, e.g. 'wafer' (optional).")],["execution_mode",T.enum(["raw","local_vm"]).optional().describe("Execution placement override (optional).")],["project_task_id",T.string().optional().describe("Project task item to bind the job to (task_id from linzumi_get_project_tasks). The task flips todo -> active and links to the new job.")]]),async f=>await c(d.agentStartCodingJob(f))),e.registerTool("linzumi_interrupt_coding_job","Interrupt a coding job: mode 'steer' (default) discards its queued follow-ups so your next message lands first; mode 'stop' terminates the current turn.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the job thread.")],["thread_id",T.string().uuid().describe("The job thread UUID.")],["mode",T.enum(["steer","stop"]).optional().describe("Interrupt mode; defaults to 'steer'.")]]),async f=>await c(d.agentInterruptCodingJob(f))),e.registerTool("linzumi_send_coding_job_message","Send a message into a coding job thread as the asking user (the job processes it like any human follow-up).",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the job thread.")],["thread_id",T.string().uuid().describe("The job thread UUID.")],["body",T.string().min(1).describe("Message body to send.")]]),async f=>await c(d.agentSendCodingJobMessage(f))),e.registerTool("linzumi_read_coding_job_thread","Read a coding job's thread (asker-visible history) plus its workflow status metadata.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the job thread.")],["thread_id",T.string().uuid().describe("The job thread UUID.")],["limit",T.number().int().min(1).max(100).optional().describe("Maximum replies to return.")],["before_seq",T.number().int().positive().optional().describe("Return replies before this channel seq.")]]),async f=>await c(d.agentReadCodingJobThread(f))),e.registerTool("linzumi_resolve_job_approval","Resolve a coding job's pending approval request with the asking user's decision ('approve' or 'deny'). Only relays the asker's authority - never approve without their explicit instruction.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the job thread.")],["thread_id",T.string().uuid().describe("The job thread UUID.")],["source_seq",T.number().int().positive().describe("Channel seq of the message the approval request rides on.")],["request_id",T.string().describe("The approval request id.")],["decision",T.enum(["approve","deny"]).describe("The asker's decision.")]]),async f=>await c(d.agentResolveJobApproval(f))),e.registerTool("linzumi_archive_coding_job","Archive a coding job's thread (or any thread the asking user owns) so it leaves the active list; history is preserved. Do this when the asker says to archive a job or thread - never just promise it.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the thread.")],["thread_id",T.string().uuid().describe("The thread UUID to archive.")]]),async f=>await c(d.agentArchiveCodingJob(f))),e.registerTool("linzumi_unarchive_coding_job","Unarchive a previously archived coding job thread the asking user owns, returning it to the active list.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the thread.")],["thread_id",T.string().uuid().describe("The thread UUID to unarchive.")]]),async f=>await c(d.agentUnarchiveCodingJob(f))),e.registerTool("linzumi_set_thread_status","Set a thread's lifecycle status as the asking user: 'closed' marks it done, 'open' reopens it. Works on threads the asker owns.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the thread.")],["thread_id",T.string().uuid().describe("The thread UUID.")],["status",T.enum(["open","closed"]).describe("Replacement lifecycle status ('closed' = done).")]]),async f=>await c(d.agentSetThreadStatus(f))),e.registerTool("linzumi_create_channel","Create a new public channel in this workspace as the asking user. The slug is derived from the name.",Object.fromEntries([["name",T.string().min(1).describe("Channel name to create.")]]),async f=>await c(d.agentCreateChannel(f))),e.registerTool("linzumi_rename_channel","Rename a channel's display name as the asking user. The channel's URL slug stays stable.",Object.fromEntries([["channel",T.string().describe("Current channel slug to rename.")],["name",T.string().min(1).describe("New display name.")]]),async f=>await c(d.agentRenameChannel(f))),e.registerTool("linzumi_archive_channel","Archive a channel in this workspace as the asking user. History is preserved; the channel leaves the active sidebar.",Object.fromEntries([["channel",T.string().describe("Channel slug to archive.")]]),async f=>await c(d.agentArchiveChannel(f))),e.registerTool("linzumi_unarchive_channel","Unarchive a previously archived channel as the asking user.",Object.fromEntries([["channel",T.string().describe("Channel slug to unarchive.")]]),async f=>await c(d.agentUnarchiveChannel(f))),e.registerTool("linzumi_add_reaction","Add an emoji reaction to a channel message as the asking user. Accepts unicode emoji or a workspace :shortcode:.",Object.fromEntries([["channel",T.string().describe("Channel slug containing the message.")],["message_seq",T.number().int().positive().describe("Channel seq of the message to react to.")],["emoji",T.string().min(1).describe("Emoji to add (unicode or :shortcode:).")]]),async f=>await c(d.agentAddReaction(f))),e.registerTool("linzumi_remove_reaction","Remove the asking user's emoji reaction from a channel message.",Object.fromEntries([["channel",T.string().describe("Channel slug containing the message.")],["message_seq",T.number().int().positive().describe("Channel seq of the reacted message.")],["emoji",T.string().min(1).describe("Emoji to remove (unicode or :shortcode:).")]]),async f=>await c(d.agentRemoveReaction(f))),e.registerTool("linzumi_pin_message","Pin a channel message as the asking user. Thread replies re-point to their root message.",Object.fromEntries([["channel",T.string().describe("Channel slug containing the message.")],["message_seq",T.number().int().positive().describe("Channel seq of the message to pin.")]]),async f=>await c(d.agentPinMessage(f))),e.registerTool("linzumi_unpin_message","Remove a pin from a channel message as the asking user.",Object.fromEntries([["channel",T.string().describe("Channel slug containing the message.")],["message_seq",T.number().int().positive().describe("Channel seq of the pinned message.")]]),async f=>await c(d.agentUnpinMessage(f)))),l){case"All":e.registerTool("linzumi_get_message","Read one Linzumi message by scoped message_seq/message_id or a Linzumi message URL, with optional bounded before/after context.",Object.fromEntries([["workspace",Vt()],["channel",Pn()],["message_id",T.union([T.string(),T.number()]).optional().describe("Message seq inside the scoped channel.")],["message_seq",T.union([T.string(),T.number()]).optional().describe("Alias for message_id.")],["message_url",T.string().optional().describe("Full Linzumi message URL with #message-<seq>.")],["before",T.number().int().min(0).max(100).optional().describe("Number of visible messages before the target.")],["after",T.number().int().min(0).max(100).optional().describe("Number of visible messages after the target.")]]),async f=>await c(d.getMessage(f))),e.registerTool("linzumi_get_thread","Read one Linzumi thread by thread_id in the scoped channel, including the parent message and bounded replies.",Object.fromEntries([["workspace",Vt()],["channel",Pn()],["thread_id",T.string().uuid().describe("Linzumi thread UUID.")],["limit",T.number().int().min(1).max(100).optional().describe("Maximum replies to return.")],["before_seq",T.number().int().positive().optional().describe("Return replies before this channel seq.")]]),async f=>await c(d.getThread(f))),e.registerTool("linzumi_get_thread_transcript","Read a Linzumi thread's full transcript as canonical IR nodes (user/assistant messages, command executions, file changes, tool calls, statuses), cursor-paginated over the complete history. Use the returned cursor with has_more to walk older pages.",Object.fromEntries([["workspace",Vt()],["channel",Pn()],["thread_id",T.string().uuid().describe("Linzumi thread UUID.")],["limit",T.number().int().min(1).max(500).optional().describe("Maximum transcript nodes per page (default 200).")],["cursor",T.number().int().positive().optional().describe("Return nodes below this seq (the previous page reply cursor).")]]),async f=>await c(d.getThreadTranscript(f))),e.registerTool("linzumi_get_channel","Read scoped Linzumi channel metadata and bounded recent channel messages.",Object.fromEntries([["workspace",Vt()],["channel",Pn()],["limit",T.number().int().min(1).max(100).optional().describe("Maximum messages to return.")],["before_seq",T.number().int().positive().optional().describe("Return messages before this channel seq.")]]),async f=>await c(d.getChannel(f))),e.registerTool("linzumi_search_workspace","Search the Linzumi workspace with hybrid lexical+semantic retrieval, scoped to what the authorizing user can access. Returns scored content chunks with provenance (channel, thread, authored time) and a permalink to cite.",Object.fromEntries([["workspace",Vt()],["query",T.string().min(1).describe("Natural-language or keyword query to retrieve against.")],["limit",T.number().int().min(1).max(25).optional().describe("Maximum results to return (default 10, server-capped).")],["source_types",T.array(T.enum(["message","coding_job","github_pr","github_pr_review","github_check_run","github_workflow_run","github_diff","dictation","file"])).optional().describe("Restrict results to these corpora; omit for all.")],["authored_after",T.string().optional().describe("ISO8601 instant; only content authored at or after this time.")],["authored_before",T.string().optional().describe("ISO8601 instant; only content authored at or before this time.")],["repo",T.string().optional().describe("Restrict GitHub-sourced results to one repository by full name (owner/name).")],["check_status",T.enum(["pending","success","failed"]).optional().describe("Restrict check and workflow results to one conclusion bucket.")]]),async f=>await c(d.searchWorkspace(f))),e.registerTool("linzumi_ask_workspace",'Ask the Linzumi workspace a natural-language question and get a synthesized, citation-backed answer over what the authorizing user can access. Costs an LLM call on cache misses, so prefer linzumi_search_workspace for simple lookups. A "refused" status means there was not enough accessible evidence - treat it as "the workspace does not know", never retry verbatim.',Object.fromEntries([["workspace",Vt()],["question",T.string().min(1).max(2e3).describe("Natural-language question to answer with citations.")],["channel",T.string().optional().describe("Optional channel slug providing conversational context; never widens access.")],["allow_cached",T.boolean().optional().describe("Allow serving a cached synthesis when the evidence set is unchanged (default true). Set false to force fresh synthesis.")]]),async f=>await c(d.askWorkspace(f))),e.registerTool("linzumi_about_me","Read what the authorizing user has told Linzumi about themselves: their profile facts (homes, unit preferences, and other self-maintained attributes) plus their derived current timezone. Use it to personalize answers (e.g. pick the right city for weather, use their preferred units). Predicates may have multiple active values; prefer the one consistent with the derived timezone.",{},async f=>await c(d.aboutMe(f)));break;case"Coding":case"OnboardingDiscovery":break}switch(u&&(e.registerTool("linzumi_web_search","Search the public web for live or external information: news, current events, weather, prices, third-party API docs, research. Returns result titles, URLs, and snippets. Use this whenever the answer lives outside the Linzumi workspace; follow up with linzumi_fetch_url to read a result page.",Object.fromEntries([["query",T.string().min(1).describe("Web search query (natural language or keywords).")],["limit",T.number().int().min(1).max(10).optional().describe("Maximum results to return (default 8, server-capped).")]]),async f=>await c(d.webSearch(f))),e.registerTool("linzumi_fetch_url","Fetch one public http(s) URL and return its readable text content (HTML is reduced to plain text; large pages are truncated). Use it to read pages found via linzumi_web_search or any public docs/API reference. Only public addresses are reachable - private/internal hosts are rejected with url_not_allowed.",Object.fromEntries([["url",T.string().min(1).describe("Absolute public http(s) URL to fetch.")]]),async f=>await c(d.fetchUrl(f)))),l){case"All":e.registerTool("linzumi_list_ui_targets","List every UI surface you can ask the user to open in their own Linzumi window (channels, DMs, threads, projects, coding jobs, computers, catch-up, activity, settings tabs, pane layouts) with the structured args each kind takes. Use UI control only when the user asks for help or asks to be shown something.",{},async f=>await Ih(d.listUiTargets({}))),e.registerTool("linzumi_open_ui","Ask the user to open one whitelisted UI surface in their own already-open Linzumi window. A consent toast appears in THEIR session; navigation happens only if they tap Open. The call blocks until they decide and returns status opened/dismissed/expired - or error no_active_ui_session when they have no Linzumi window open (tell them to open Linzumi), or invalid_target with a detail. Use it only when the user asks for help or asks to be shown something; kinds and per-kind args come from linzumi_list_ui_targets.",Object.fromEntries([["kind",T.string().min(1).describe("Target kind from linzumi_list_ui_targets (e.g. settings_workspace, channel, pane_layout).")],["args",T.record(T.unknown()).optional().describe("Structured per-kind args from linzumi_list_ui_targets (never a URL - the server computes every path).")],["workspace",Vt()]]),async f=>await Ih(d.openUi(mi(f,o))));break;case"Coding":case"OnboardingDiscovery":break}if(u){let f=()=>T.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread.");e.registerTool("linzumi_get_coding_job_metadata","Read the active coding job workflow metadata for a thread, including the agent-owned goal, ordered plan steps, step lock versions, and workflow status.",Object.fromEntries([["workspace",Vt()],["channel",Pn()],["thread_id",f()]]),async p=>await c(d.getCodingJobMetadata(mi(p,o)))),e.registerTool("linzumi_rename_coding_job","Update the current coding job thread title and workflow-facing title. Use this when the job scope changes materially so the Linzumi thread list and metadata overview stay accurate.",Object.fromEntries([["workspace",Vt()],["channel",Pn()],["thread_id",f()],["title",T.string().min(1).max(100).describe("Concise user-visible title for this coding job.")]]),async p=>await c(d.renameCodingJob(mi(p,o)))),e.registerTool("linzumi_upsert_coding_job_plan","Set or update the current coding job goal. Use this at job start and whenever the goal changes materially.",Object.fromEntries([["workspace",Vt()],["channel",Pn()],["thread_id",f()],["goal",T.string().min(1).max(1e4).describe("Concrete user-visible goal for this coding job.")]]),async p=>await c(d.upsertCodingJobPlan(mi(p,o)))),e.registerTool("linzumi_replace_coding_job_plan_steps","Replace the ordered coding job plan steps. Use this for the initial plan and for substantial rewrites when the old plan no longer fits the work.",Object.fromEntries([["workspace",Vt()],["channel",Pn()],["thread_id",f()],["goal",T.string().min(1).max(1e4).optional().describe("Required when no plan exists yet; updates the current coding job goal.")],["steps",T.array(T.object(Object.fromEntries([["title",T.string().min(1).max(255)],["description",T.string().min(1).max(1e4)],["status",T.enum(["pending","active","completed","blocked","canceled"])],["status_note",T.string().min(1).max(4e3).optional()],["completed_debrief",T.string().min(1).max(2e4).optional()]]))).min(1).max(50).describe("Ordered user-visible plan steps. Completed steps must include completed_debrief.")]]),async p=>await c(d.replaceCodingJobPlanSteps(mi(p,o)))),e.registerTool("linzumi_update_coding_job_plan_step","Update one coding job plan step status or note. Read metadata first and pass the current step lock_version.",Object.fromEntries([["workspace",Vt()],["channel",Pn()],["thread_id",f()],["step_id",T.string().uuid().describe("Step id returned by linzumi_get_coding_job_metadata.")],["lock_version",T.number().int().positive().describe("Current step lock_version from metadata.")],["status",T.enum(["pending","active","completed","blocked","canceled"])],["status_note",T.string().min(1).max(4e3).optional()],["completed_debrief",T.string().min(1).max(2e4).optional().describe("Required when marking a step completed.")]]),async p=>await c(d.updateCodingJobPlanStep(mi(p,o)))),e.registerTool("linzumi_link_coding_job_pull_request","Link the active coding job to its primary GitHub pull request so PR comments, files, commits, checks, deployments, and reviews can flow into the metadata view.",Object.fromEntries([["workspace",Vt()],["channel",Pn()],["thread_id",f()],["github_repo_owner",T.string().min(1).max(255)],["github_repo_name",T.string().min(1).max(255)],["github_pr_number",T.number().int().positive()],["github_pr_url",T.string().url()],["title",T.string().min(1).max(255)],["body",T.string().min(1).max(1e5).optional()],["head_branch",T.string().min(1).max(255)],["head_sha",T.string().min(7).max(64)],["base_branch",T.string().min(1).max(255)],["base_sha",T.string().min(7).max(64)],["state",T.enum(["draft","open","closed","merged"]).optional()],["is_draft",T.boolean().optional()],["review_status",T.enum(["unknown","review_required","approved","changes_requested"]).optional()],["source_remote_url",T.string().min(1).max(1e3).describe("Git remote URL for the local job worktree; required when this job has no repo workspace yet.")],["runtime_worktree_root",T.string().min(1).max(1e3).describe("Absolute local worktree path for the coding job; required when this job has no repo workspace yet.")],["dirty_status",T.enum(["unknown","clean","dirty"]).optional()],["dirty_summary",T.string().min(1).max(2e3).optional()]]),async p=>await c(d.linkCodingJobPullRequest(mi(p,o)))),e.registerTool("linzumi_upload_files",["Upload local files to Linzumi and attach them to a new, exact, or latest assistant message. Use silently; do not mention this tool in the visible reply.","The JSON result includes message.attachments[].url as an absolute URL. Use those returned URLs when writing rich media directives such as ::audio, ::video, ::image, or Markdown images. Do not guess attachment URLs before upload.","For a message that should both attach files and show inline rich media, use a two-step flow: first upload/attach the files to create or target the message, then edit the same target message with body text that references the returned absolute URLs. When the result has target_seq, use target.kind=message_seq and message_seq=target_seq for that follow-up edit; result.message is the edit event that carries the new attachments, and target_message is the original target."].join(" "),Object.fromEntries([["target",T.object(Object.fromEntries([["kind",T.enum(["new_message","message_seq","latest_assistant_message"]).describe("new_message creates a message; message_seq edits an exact message; latest_assistant_message edits the latest assistant message in the scoped thread/channel.")],["message_seq",T.union([T.string(),T.number()]).optional().describe("Required when kind is message_seq.")],["thread_id",T.string().optional().describe("Thread UUID. Defaults to the active Linzumi thread when the MCP server was launched with one.")]])).describe("Attachment target. Do not guess; use new_message when there is no previous assistant message. To reference uploaded files in the message body, upload first, then edit message_seq/latest_assistant_message with the returned absolute attachment URLs. If the upload result includes target_seq, use message_seq=target_seq for that follow-up edit.")],["files",T.array(T.string().min(1)).min(1).max(16).describe("Local file paths to upload. Paths must be non-hidden supported file types inside the approved workspace or Downloads.")],["body",T.string().min(1).max(2e4).optional().describe("Required for new_message. Optional replacement body for message_seq/latest_assistant_message; when omitted, the existing message body is preserved. Rich media directives in body must use Linzumi attachment download URLs returned by this tool.")],["workspace",Vt()],["channel",T.string().optional().describe("Channel slug. Omit to use the target thread's channel (when the thread is known) or the authenticated token scope.")]]),async p=>{let m=$h(ox(p,"target","linzumi_upload_files"),o),h;try{h=await Lk({client:d,cwd:s,serviceUrl:a,target:m,files:iG(p.files),workspace:Rn(p.workspace),channel:Rn(p.channel),body:Rn(p.body)})}catch(_){return Fk(ee(_))}return vn(Mh(a,h))}),e.registerTool("linzumi_edit_message","Edit an exact scoped Linzumi message by message_seq. Use after linzumi_upload_files when you need a body-only follow-up edit that embeds returned attachment URLs. Requires channel.write, and thread.write when target.thread_id is set. Rich media src/poster values must be Linzumi attachment download URLs.",Object.fromEntries([["workspace",Vt()],["channel",Pn()],["target",T.object(Object.fromEntries([["message_seq",T.union([T.string(),T.number()]).describe("Exact message seq to edit. After linzumi_upload_files returns target_seq, pass that value here.")],["thread_id",T.string().optional().describe("Thread UUID when editing a thread message. Use the upload result target_message.thread_id when present.")]])).describe("Exact message target for the body edit.")],["body",T.string().min(1).max(2e4).describe("Replacement Markdown body. Rich media src/poster values must be Linzumi attachment download URLs returned by linzumi_upload_files.")]]),async p=>{let m=oo(p);return m.target=$h(ox(p,"target","linzumi_edit_message"),o),vn(Mh(a,await d.editMessage(m)))})}switch(l){case"All":e.registerTool("linzumi_list_vault_secrets","List vault secret names, descriptions, and whether each secret is personal or workspace-owned. Does not return secret values.",{},async f=>await c(d.listVaultSecrets(f))),e.registerTool("linzumi_list_projects","List the projects in the current workspace with their project_id (needed by the other project task tools), slug, title, description, and state.",Object.fromEntries([["workspace",Vt()]]),async f=>await c(d.listProjects(f))),e.registerTool("linzumi_get_project_tasks",`Read a project's full task graph: task GROUPS (kind "group", organizational containers, exactly one level deep) and ISSUES (kind "issue", the executable work items), each with status (todo/active/blocked/review/done/canceled), DERIVED work_state readiness (ready = todo with every dependency satisfied; blocked = todo with unsatisfied dependencies; running/stalled = active with/without a connected job), parent group, assignee, lock_version, and dependency edges (depends_on_task_ids / unblocks_task_ids). Always read this before reorganizing. Inside a project-bound coding job the project is inferred automatically; otherwise pass project_id from linzumi_list_projects.`,Object.fromEntries([["project_id",T.string().optional().describe("Project id from linzumi_list_projects. Omit inside a coding job started from a project to use that project.")]]),async f=>await c(d.getProjectTasks(mi(f,o)))),e.registerTool("linzumi_create_project_task",'Create a task group (kind "group") or issue (kind "issue", the default) in a project. Groups organize issues and are exactly one level deep: a parent_id must name a GROUP, and groups themselves can never have a parent. New tasks default to status "todo" and append to the end unless position is given. Inside a project-bound coding job the project is inferred; otherwise pass project_id.',Object.fromEntries([["project_id",T.string().optional().describe("Project id from linzumi_list_projects. Omit inside a coding job started from a project to use that project.")],["title",T.string().min(1).describe("Task title.")],["kind",T.enum(["issue","group"]).optional().describe('What to create: "issue" (executable work item, default) or "group" (organizational container).')],["description",T.string().optional().describe("Detailed description of the work - written so an engineer (or coding agent) could execute the task from it.")],["status",T.enum(["todo","active","blocked","review","done","canceled"]).optional().describe('Initial status. Defaults to "todo".')],["parent_id",T.string().optional().describe("task_id of the GROUP to place an issue in. Only issues can have a parent.")],["assignee",T.string().optional().describe("Username of a workspace member to assign.")],["position",T.number().int().min(0).optional().describe("Sort position. Defaults to appending at the end.")]]),async f=>await c(d.createProjectTask(mi(f,o)))),e.registerTool("linzumi_update_project_task",'Update a task group or issue: retitle, edit description/status_note, transition status (todo/active/blocked/review/done/canceled), reassign, reorder (position), or reorganize (parent_id moves an issue into a group; clear_parent moves it to top level). Only the fields you pass change; description and status_note accept null to clear. Prefer updating existing tasks over delete-and-recreate. Pass the lock_version from your last read to fail loudly ("stale") instead of overwriting a concurrent edit.',Object.fromEntries([["task_id",T.string().describe("task_id of the group or issue to update.")],["title",T.string().min(1).optional().describe("New title.")],["description",T.string().nullable().optional().describe("New description. Pass null to clear it.")],["status",T.enum(["todo","active","blocked","review","done","canceled"]).optional().describe('New status. "done"/"canceled" satisfy dependent tasks; "blocked" is a manual hold.')],["status_note",T.string().nullable().optional().describe("Short human-readable note about the current status. Pass null to clear it.")],["position",T.number().int().min(0).optional().describe("New sort position among siblings.")],["parent_id",T.string().optional().describe("task_id of the GROUP to move this issue into. Do not combine with clear_parent.")],["clear_parent",T.boolean().optional().describe("true moves the issue to the top level (no group). Do not combine with parent_id.")],["assignee",T.string().optional().describe("Username of a workspace member to assign. Do not combine with clear_assignee.")],["clear_assignee",T.boolean().optional().describe("true removes the assignee. Do not combine with assignee.")],["lock_version",T.number().int().positive().optional().describe("The task's lock_version from your last read, for compare-and-swap safety.")]]),async f=>await c(d.updateProjectTask(f))),e.registerTool("linzumi_delete_project_task",`Permanently delete a task group or issue. Dependency edges on the task are removed with it (dependents may become ready). Deletion is normally the USER's call - prefer status "canceled" or an update unless you are certain the entry is obsolete.`,Object.fromEntries([["task_id",T.string().describe("task_id of the group or issue to delete.")]]),async f=>await c(d.deleteProjectTask(f))),e.registerTool("linzumi_add_project_task_dependency",'Add the dependency edge "task_id is blocked by depends_on_task_id" between two ISSUES in the same project (groups cannot have dependencies). The dependent stays blocked until the prerequisite reaches done or canceled. The graph must stay acyclic: an edge that would create a cycle is refused with reason "would_create_cycle" and the offending cycle_path so you can restructure. Duplicate and self edges are rejected.',Object.fromEntries([["task_id",T.string().describe("task_id of the DEPENDENT issue (the one that must wait).")],["depends_on_task_id",T.string().describe("task_id of the PREREQUISITE issue (the one that must finish first).")]]),async f=>await c(d.addProjectTaskDependency(f))),e.registerTool("linzumi_remove_project_task_dependency",'Remove the dependency edge "task_id is blocked by depends_on_task_id". The dependent issue may become ready if that was its last unsatisfied dependency.',Object.fromEntries([["task_id",T.string().describe("task_id of the DEPENDENT issue.")],["depends_on_task_id",T.string().describe("task_id of the PREREQUISITE issue the edge points at.")]]),async f=>await c(d.removeProjectTaskDependency(f))),e.registerTool("linzumi_get_call_transcript","Read the full transcript of a completed Linzumi notetaker call: call metadata (title, platform, started/ended/transcribed times), participants, and every spoken segment in order with speaker names and millisecond offsets. Pass the call_id embedded in the request (or copied from the call card). Errors: call_not_found (missing or not visible to you), call_transcript_not_ready (call still connecting, in progress, or transcribing - retry later).",Object.fromEntries([["call_id",T.string().describe("The call id from the call card or the launching message (a CallRecording id - the opaque GraphQL id and the bare uuid both work).")]]),async f=>await c(d.getCallTranscript(f))),n||e.registerTool("linzumi_start_coding_job","Start a coding job as the invoking user (same authorization and pipeline as clicking start). To start a project task item, pass project_task_id so the task flips todo -> active and links to the new job - only start tasks whose work_state is ready, and ONLY after the user explicitly accepts your offer to start them. Omit channel, runner_key, and cwd to reuse this job's own channel, computer, and folder. Returns status 'unavailable' with a reason when the runner cannot take the job (relay that honestly).",Object.fromEntries([["work_description",T.string().min(1).describe("What the job should do - the initial instruction. For a task item, write it from the task title and description.")],["project_task_id",T.string().optional().describe("Project task item to bind the job to (task_id from linzumi_get_project_tasks). The task flips todo -> active and links to the new job.")],["channel",T.string().optional().describe("Channel slug to host the job thread. Omit to use this job's own channel.")],["runner_key",T.string().optional().describe("Runner (computer) to run the job on. Omit to use this job's own computer.")],["cwd",T.string().optional().describe("Working directory on the runner. Omit to use this job's own folder.")],["model",T.string().optional().describe("Model override (optional).")],["model_provider",T.string().optional().describe("Model provider override, e.g. 'wafer' (optional).")],["agent_provider",T.string().optional().describe("Agent provider override, e.g. 'codex' (optional).")],["reasoning_effort",T.enum(["default","low","medium","high","xhigh","ultra"]).optional().describe("Reasoning effort override (optional).")],["approval_policy",T.enum(["default","on-request","on-failure","never"]).optional().describe("Approval policy override (optional).")],["sandbox",T.enum(["default","workspace-write","read-only","danger-full-access"]).optional().describe("Sandbox override (optional).")],["fast",T.boolean().optional().describe("Fast-mode override (optional).")],["allow_port_forwarding_by_default",T.boolean().optional().describe("Default port-forwarding override (optional).")],["execution_mode",T.enum(["raw","local_vm"]).optional().describe("Execution placement override (optional).")],["egress_mode",T.enum(["open","hardened"]).optional().describe("Local-VM egress override (optional).")]]),async f=>await c(d.agentStartCodingJob(mi(f,o))));break;case"Coding":case"OnboardingDiscovery":break}switch(tG(l)&&(e.registerTool("linzumi_upload_custom_emoji","Upload a local image as a workspace custom emoji. For generated emoji art, create a transparent PNG with a simple centered subject, crisp edges, strong contrast, minimal tiny details, and enough outline/highlight separation to read at 16-24px on both dark and light backgrounds. Use lowercase shortcode names without colons unless preserving a user-provided :name:.",Object.fromEntries([["name",ix().describe("Custom emoji shortcode name, with or without surrounding colons.")],["file",T.string().min(1).describe("Local PNG/WebP/GIF/JPEG file path to upload. Prefer transparent PNG for generated emoji.")],["workspace",Vt()]]),async f=>{let p=Rn(f.name),m=Rn(f.file);return vn(await Uk({client:d,cwd:s,serviceUrl:a,name:p!==void 0?p:"",file:m!==void 0?m:"",workspace:Rn(f.workspace)}))}),e.registerTool("linzumi_rename_custom_emoji","Rename an existing workspace custom emoji. The new name may include surrounding colons; Linzumi stores the normalized shortcode without colons.",Object.fromEntries([["emoji_id",T.union([T.string(),T.number().int().positive()]).describe("Workspace custom emoji id returned by linzumi_upload_custom_emoji or workspace emoji listings.")],["name",ix().describe("New shortcode name, with or without surrounding colons.")],["workspace",Vt()]]),async f=>await c(d.renameCustomEmoji(f)))),e.registerTool("linzumi_media_guide","Return the full Linzumi rich-media authoring guide (audio/video/image directives, URL rules, upload-then-embed flow, examples). Call once BEFORE writing any ::audio/::video/::image directive or Markdown image into a Linzumi message.",{},async f=>{let p={};p.type="text",p.text=nx;let m={};return m.content=[p],m}),e.registerTool("linzumi_note_project_directory","Record one discovered local Git repository or worktree for onboarding import. Call once per project as soon as it is found.",Object.fromEntries([["workspace",Vt()],["runner_id",T.string().min(1).describe("Local runner/computer id provided in the discovery prompt.")],["path",T.string().min(1).describe("Absolute local path to the repository worktree root.")],["display_name",T.string().optional().describe("Short project label. Defaults to the path basename.")],["activity_at",T.string().optional().describe("Best-known recent activity time as an ISO-8601 timestamp.")],["import_key",T.string().optional().describe("Stable dedupe key. Defaults to path.")],["metadata",T.record(T.unknown()).optional().describe("Small structured metadata such as branch or remote origin.")]]),async f=>await c(d.noteProjectDirectory(f))),e.registerTool("linzumi_note_agent_conversation","Record one discovered Codex or Claude Code local conversation for onboarding import. Call once per conversation as soon as it is found.",Object.fromEntries([["workspace",Vt()],["runner_id",T.string().min(1).describe("Local runner/computer id provided in the discovery prompt.")],["source",T.enum(["codex","claude_code"]).describe("Conversation source.")],["import_key",T.string().min(1).describe("Stable dedupe key, such as a session id or file path.")],["path",T.string().optional().describe("Absolute local path to the conversation file or directory.")],["display_name",T.string().optional().describe("Short label for the discovered conversation.")],["activity_at",T.string().optional().describe("Best-known recent activity time as an ISO-8601 timestamp.")],["metadata",T.record(T.unknown()).optional().describe("Small structured metadata such as session id or project path.")]]),async f=>await c(d.noteAgentConversation(f))),e.registerTool("linzumi_note_onboarding_discovery_status","Record onboarding discovery progress. Call when a search phase starts, checks another place, completes, or fails.",Object.fromEntries([["workspace",Vt()],["runner_id",T.string().min(1).describe("Local runner/computer id provided in the discovery prompt.")],["phase",T.enum(["projects","conversations"]).describe("Discovery phase being reported.")],["status",T.enum(["starting","running","completed","failed"]).describe("Current phase status.")],["places_searched",T.number().int().nonnegative().optional().describe("Count of concrete folders/files/known locations checked so far.")],["message",T.string().optional().describe("Short user-facing status note.")],["current_place",T.string().optional().describe("Current folder, file, Git command target, or known location being checked.")],["current_source",T.string().optional().describe("Short machine-readable source label such as git, codex, or claude_code.")],["last_error",T.string().optional().describe("Short failure detail when status is failed.")],["metadata",T.record(T.unknown()).optional().describe("Small structured status metadata.")]]),async f=>await c(d.noteOnboardingDiscoveryStatus(f))),l==="All"&&rG(t.operatingMode)&&(e.registerTool("linzumi_dm_owner","Send a plain-text DM to the configured Commander owner. Requires dm.write and a visible owner username.",Object.fromEntries([["owner_username",T.string().optional().describe("Owner username. Defaults to LINZUMI_MCP_OWNER_USERNAME or --owner-username.")],["workspace",Vt()],["channel",T.string().optional().describe("Source channel slug used to verify owner visibility.")],["body",T.string().min(1).max(2e4).describe("Plain-text message body to DM.")]]),async f=>{let p=Rn(f.owner_username),m=p!==void 0?p:i;if(m===void 0)return yr("owner_username is required for linzumi_dm_owner");let h=oo(f);return h.owner_username=m,await c(d.dmOwner(h))}),e.registerTool("linzumi_send_channel_message","Post a NEW standalone Markdown message into the scoped Linzumi channel as the authenticated local-runner user. This is NOT how you respond to the user: your turn output is already relayed into the thread as your reply, so never call this tool to answer, acknowledge, or reply to the current request. Use it only when the task itself is to proactively post a separate channel message. Requires channel.write. Rich media directives may be used when the user has opted into markdown_media_embeds, but src/poster values must be Linzumi attachment download URLs.",Object.fromEntries([["workspace",Vt()],["channel",Pn()],["body",T.string().min(1).max(2e4).describe("Markdown message body to post. Rich media src/poster values must be Linzumi attachment download URLs, not third-party URLs, /relative paths, or local filesystem paths.")]]),async f=>await c(d.sendChannelMessage(f))),e.registerTool("linzumi_send_thread_reply","Post a Markdown reply into some OTHER existing Linzumi thread as the authenticated local-runner user. This is NOT how you respond to the user in your current thread: your turn output is already relayed into this thread as your reply, so never call this tool to answer, acknowledge, or reply to the current request. Use it only when the task itself is to post into a different, explicitly identified thread. Requires thread.write. Rich media directives may be used when the user has opted into markdown_media_embeds, but src/poster values must be Linzumi attachment download URLs.",Object.fromEntries([["workspace",Vt()],["channel",Pn()],["thread_id",T.string().uuid().describe("Existing Linzumi thread UUID.")],["body",T.string().min(1).max(2e4).describe("Markdown reply body to post. Rich media src/poster values must be Linzumi attachment download URLs, not third-party URLs, /relative paths, or local filesystem paths.")]]),async f=>await c(d.sendThreadReply(f))),e.registerTool("linzumi_send_dm","Send a plain-text DM as the authenticated local-runner user to a visible user in the scoped workspace/channel. Requires dm.write.",Object.fromEntries([["workspace",Vt()],["channel",T.string().optional().describe("Source channel slug used to verify target visibility.")],["username",T.string().describe("Visible Linzumi username to DM.")],["body",T.string().min(1).max(2e4).describe("Plain-text message body to DM.")]]),async f=>await c(d.sendDm(f)))),l){case"All":e.registerTool("linzumi_get_vault_values","Request values for explicit vault env var names after a thread-scoped human approval. Requires vault.read; thread_id resolves the approval thread.",Object.fromEntries([["workspace",Vt()],["channel",T.string().optional().describe("Channel slug used to disambiguate the approval thread when needed.")],["thread_id",T.string().uuid().describe("Existing Linzumi thread UUID for the inline approval.")],["env_var_names",T.array(T.string().regex(new RegExp("^[A-Z][A-Z0-9_]{0,127}$"))).min(1).max(20).describe("Explicit vault env var names to request. This tool cannot list all vault keys.")],["description",T.string().min(1).max(500).describe("Human-readable reason shown in the approval request.")],["justification",T.string().min(10).max(1e3).describe("Agent justification shown to the approver.")]]),async f=>await c(d.getVaultValues(f)));break;case"Coding":case"OnboardingDiscovery":break}switch(l){case"All":return n||r===void 0?void 0:aG(e,s,r);case"Coding":case"OnboardingDiscovery":return}}function Hh(e){return e==="Voice"?"voice":"text"}function lG(e){switch(e){case"All":return"all";case"Coding":return"coding";case"OnboardingDiscovery":return"onboarding-discovery"}}function vd(e){return JSON.stringify(e)}function Zs(e){let t=[],r=e.argsPrefix;r!==void 0&&r.forEach(h=>{t.push(h)}),t.push("mcp"),t.push("server"),t.push("--api-url"),t.push(e.serviceUrl);let n=e.authFilePath;n!==void 0&&(t.push("--auth-file"),t.push(n));let i=e.delegationAuthFilePath;i!==void 0&&(t.push("--delegation-auth-file"),t.push(i));let o=e.ownerUsername;o!==void 0&&(t.push("--owner-username"),t.push(o));let a=e.cwd;a!==void 0&&(t.push("--cwd"),t.push(a));let s=e.threadId;s!==void 0&&(t.push("--thread-id"),t.push(s)),t.push("--mode");let l=e.operatingMode;t.push(l!==void 0?Hh(l):"text");let d=e.toolScope;if(d!==void 0){let h=0;switch(d){case"All":break;case"Coding":case"OnboardingDiscovery":h=1;break}h===1&&(t.push("--tool-scope"),t.push(lG(d)))}let u=e.agentSession;u!==void 0&&u&&t.push("--agent-session");let c={},f=e.accessToken;f!==void 0&&(c.LINZUMI_MCP_ACCESS_TOKEN=f);let p=e.devServices;p!==void 0&&(c.LINZUMI_DEV_SERVICES_SCOPE=p.scope,c.LINZUMI_DEV_SERVICES_OWNER_PID=p.ownerPid.toString()),c.ELECTRON_RUN_AS_NODE="1";let m=e.command;return{name:"linzumi",command:m!==void 0?m:"linzumi",args:t,env:c}}function dx(e){return"["+e.map(vd).join(", ")+"]"}function dG(e){return"{ "+Object.entries(e).map(r=>r[0]+" = "+vd(r[1])).join(", ")+" }"}function ux(e){let t=["-c","mcp_servers."+e.name+".command="+vd(e.command),"-c","mcp_servers."+e.name+".args="+dx(e.args)];return Object.entries(e.env).forEach(r=>{t.push("-c"),t.push("mcp_servers."+e.name+".env."+r[0]+"="+vd(r[1]))}),t}function uG(e){return["--require","-r","--import","--loader","--experimental-loader"].includes(e)}function cG(e){return["--require=","-r=","--import=","--loader=","--experimental-loader="].some(t=>e.startsWith(t))}function Vh(e,t){for(;;){let r=t,n=e[r];if(n===void 0)return[];if(uG(n)){let i=e[r+1|0];if(i!==void 0)return[n,i].concat(Vh(e,r+2|0));t=r+1|0;continue}if(cG(n))return[n].concat(Vh(e,r+1|0));t=r+1|0}}function Vc(e,t,r){let n=t!==void 0?t.trim():"";return n===""?{command:"linzumi",argsPrefix:[]}:n.endsWith(".ts")||n.endsWith(".js")?{command:e,argsPrefix:Vh(r,0).concat([n])}:{command:n,argsPrefix:[]}}function cx(e){let t={};t.type="stdio",t.command=e.command,t.args=e.args.map(i=>i);let r={};t.env=(Object.entries(e.env).forEach(i=>{r[i[0]]=i[1]}),r);let n={};return n[e.name]=t,n}function fx(e){let t={};t.command=e.command,t.args=e.args.map(o=>o);let r={};t.env=(Object.entries(e.env).forEach(o=>{r[o[0]]=o[1]}),r);let n={};n[e.name]=t;let i={};return i.mcpServers=n,JSON.stringify(i,void 0,2)+`
|
|
285
|
-
`}function mx(e){let t=Object.entries(e.env).length===0?"":"env = "+
|
|
284
|
+
</linzumi_markdown_media_guidance>`;function rG(e){switch(e){case"All":return!0;case"Coding":case"OnboardingDiscovery":return!1}}function nG(e){return e==="Voice"}function iG(e){return e.trim().replace(new RegExp("^:+"),"").replace(new RegExp(":+$"),"").toLowerCase()}function ix(){return T.string().min(1).refine(e=>iG(e).length<=64,{message:"Custom emoji shortcode name must be at most 64 characters after trimming surrounding colons."})}function Ht(){return T.string().optional().describe("Workspace slug. Omit to use the authenticated token scope.")}function Pn(){return T.string().optional().describe("Channel slug. Omit to use the authenticated token scope.")}function Rn(e){if(typeof e=="string")return e}function ox(e,t,r){let n=io(e[t]);return n!==void 0?n:yr(r+" "+t+" must be an object")}function oG(e){return e!==void 0?Array.isArray(e)?$e(e,t=>{if(typeof t=="string")return t}):[]:[]}function aG(e){return e!==void 0?Array.isArray(e)?$e(e,t=>{if(typeof t=="number")return t}):[]:[]}function ax(e){if(typeof e=="number")return e}function sx(e){let t={};t.name=e.record.name,t.command=e.record.command,t.cwd=e.record.cwd,t.ports=e.record.ports.map(o=>o),t.restart_on_branch_change=e.record.restartOnBranchChange,t.desired_state=Gh(e.record.desiredState),t.liveness=Hk(e.liveness),t.port_health=e.portProbes.map(o=>{let a={};return a.port=o.port,a.listening=o.listening,a});let r=e.record.startedAtMs;t.started_at_ms=r!==void 0?r:null;let n=e.lastExit,i;if(n!==void 0){let o={},a=n.code;o.code=a!==void 0?a:null;let s=n.signal;o.signal=s!==void 0?s:null,o.at_ms=n.atMs,i=o}else i=null;return t.last_exit=i,t.log_path=e.record.logPath,t}function sG(e,t,r){e.registerTool("linzumi_dev_service_start","Start a long-running local dev server (npm run dev, storybook, docker compose up, ...) as a MANAGED SERVICE owned by the Linzumi runner. Use this instead of running dev servers in your own shell: a managed service survives the end of your turn and branch switches, is auto-restarted if it crashes, and its declared ports are health-probed and surfaced in the product. Calling start for an existing name declaratively RESTARTS it (e.g. after a checkout). Declare EVERY port the app serves from (primary plus HMR/asset/bundle sibling ports).",Object.fromEntries([["name",T.string().regex(new RegExp("^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$")).describe("Stable service name (slug), e.g. 'web' or 'storybook'. Reusing a name restarts that service.")],["command",T.string().min(1).describe("Shell command that runs the server in the foreground (never daemonize/screen/nohup it yourself), e.g. 'npm run dev'. Runs via the user's login shell.")],["cwd",T.string().optional().describe("Working directory for the service. Defaults to the session cwd.")],["ports",T.array(T.number().int().min(1).max(65535)).max(16).default([]).describe("Every TCP port this service listens on (primary AND related ports such as the Vite/HMR bundle port). Used for health probes and product visibility.")],["restart_on_branch_change",T.boolean().optional().describe("Restart the service automatically when the git branch of its cwd changes (for servers that go stale across checkouts).")],["wait_for_ports_ms",T.number().int().min(0).max(6e4).optional().describe("How long to wait for the declared ports to accept connections before returning (default 15000).")]]),async n=>{let i=Rn(n.name),o=i!==void 0?i:"",a=Rn(n.command),s=a!==void 0?a:"",l=Rn(n.cwd),d=await Xk({scopeDir:r.scopeDir,definition:{name:o,command:s,cwd:l!==void 0?l:t,ports:aG(n.ports),restartOnBranchChange:de(n.restart_on_branch_change,!0)},ownerPid:r.ownerPid});if(d.TAG==="Ok"){let c=d._0,f=ax(n.wait_for_ports_ms),p=Date.now()+(f!==void 0?f:15e3),m=c.ports.length===0;for(;!m&&Date.now()<p;)m=(await Promise.all(c.ports.map(v=>Uh(v|0)))).every(v=>v),m||await fc(250);let _=(await Wh(r.scopeDir)).find(y=>y.record.name===c.name),g={};g.ok=!0;let b;if(_!==void 0)b=sx(_);else{let y={};y.name=c.name,b=y}return g.service=b,_!==void 0&&_.liveness!=="Running"&&(g.hint="The service is not (fully) serving its declared ports yet. Check linzumi_dev_service_logs before assuming it works."),vn(g)}let u={};return u.ok=!1,u.error=d._0,vn(u)}),e.registerTool("linzumi_dev_service_stop","Stop a managed dev service (SIGTERM, then SIGKILL after a grace period). The registration is kept so linzumi_dev_service_start can bring it back.",Object.fromEntries([["name",T.string().min(1).describe("Service name to stop.")]]),async n=>{let i=Rn(n.name),o=i!==void 0?i:"",a=await Zh(r.scopeDir,o,void 0),s={};return a.TAG==="Ok"?(s.ok=!0,s.name=a._0.name,s.desired_state="stopped"):(s.ok=!1,s.error=a._0),vn(s)}),e.registerTool("linzumi_dev_service_status","List every managed dev service with liveness (running / unhealthy / exited / stopped), per-port health probes, and last exit. Live state - always check this before concluding a dev server is up or down.",{},async n=>{let i=await Wh(r.scopeDir),o={};return o.services=i.map(a=>sx(a)),vn(o)}),e.registerTool("linzumi_dev_service_logs","Read the tail of a managed dev service's combined stdout/stderr log.",Object.fromEntries([["name",T.string().min(1).describe("Service name.")],["max_bytes",T.number().int().min(256).max(65536).optional().describe("Tail size in bytes (default 16384).")]]),async n=>{let i=Rn(n.name),o=i!==void 0?i:"",a=ax(n.max_bytes),s=ex(r.scopeDir,o,a!==void 0?a:16384),l={};return s!==void 0?(l.ok=!0,l.name=o,l.log_tail=s):(l.ok=!1,l.error="no log for service: "+o),vn(l)}),e.registerTool("linzumi_dev_service_remove","Stop a managed dev service AND delete its registration (it will not be resurrected on runner restart). Use stop instead when the user may want it back.",Object.fromEntries([["name",T.string().min(1).describe("Service name to remove.")]]),async n=>{let i=Rn(n.name),o=i!==void 0?i:"",a=await Qk(r.scopeDir,o),s={};return a.TAG==="Ok"?(s.ok=!0,s.name=a._0.name,s.removed=!0):(s.ok=!1,s.error=a._0),vn(s)})}function lx(e,t){let r=t.devServices,n=t.agentSession,i=t.ownerUsername,o=t.defaultThreadId,a=t.serviceUrl,s=t.cwd,l=t.toolScope,d=t.client,u;switch(l){case"All":case"Coding":u=!0;break;case"OnboardingDiscovery":u=!1;break}let c=async f=>vn(await f);switch(n&&(e.registerTool("linzumi_agent_reply","Post your single @linzumi reply for the current turn into the surface where you were mentioned. Call EXACTLY ONCE per turn with your final answer; the reply links to this working session automatically. Fails with already_replied on a second call and no_active_asker_binding when no turn is active.",Object.fromEntries([["body",T.string().min(1).describe("Plain-text reply body to post.")]]),async f=>{let p={},m=f.body;return p.body=m!==void 0?m:void 0,await c(d.agentReply(p))}),e.registerTool("linzumi_list_coding_jobs","List the coding jobs the current asker can see in this workspace: runner connections (online and recent) with their bound job threads. Live state - never answered from search.",{},async f=>await c(d.agentListCodingJobs({}))),e.registerTool("linzumi_start_coding_job","Start a coding job exactly as if the asking user clicked start: same runner/channel authorization, same pipeline. Returns status 'unavailable' with a reason when the runner cannot take the job (relay that honestly).",Object.fromEntries([["channel",T.string().describe("Channel slug to host the job thread.")],["runner_key",T.string().describe("Runner (computer) to run the job on.")],["cwd",T.string().describe("Working directory on the runner.")],["work_description",T.string().min(1).describe("What the job should do - the initial instruction.")],["model",T.string().optional().describe("Model override (optional).")],["model_provider",T.string().optional().describe("Model provider override, e.g. 'wafer' (optional).")],["execution_mode",T.enum(["raw","local_vm"]).optional().describe("Execution placement override (optional).")],["project_task_id",T.string().optional().describe("Project task item to bind the job to (task_id from linzumi_get_project_tasks). The task flips todo -> active and links to the new job.")]]),async f=>await c(d.agentStartCodingJob(f))),e.registerTool("linzumi_interrupt_coding_job","Interrupt a coding job: mode 'steer' (default) discards its queued follow-ups so your next message lands first; mode 'stop' terminates the current turn.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the job thread.")],["thread_id",T.string().uuid().describe("The job thread UUID.")],["mode",T.enum(["steer","stop"]).optional().describe("Interrupt mode; defaults to 'steer'.")]]),async f=>await c(d.agentInterruptCodingJob(f))),e.registerTool("linzumi_send_coding_job_message","Send a message into a coding job thread as the asking user (the job processes it like any human follow-up).",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the job thread.")],["thread_id",T.string().uuid().describe("The job thread UUID.")],["body",T.string().min(1).describe("Message body to send.")]]),async f=>await c(d.agentSendCodingJobMessage(f))),e.registerTool("linzumi_read_coding_job_thread","Read a coding job's thread (asker-visible history) plus its workflow status metadata.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the job thread.")],["thread_id",T.string().uuid().describe("The job thread UUID.")],["limit",T.number().int().min(1).max(100).optional().describe("Maximum replies to return.")],["before_seq",T.number().int().positive().optional().describe("Return replies before this channel seq.")]]),async f=>await c(d.agentReadCodingJobThread(f))),e.registerTool("linzumi_resolve_job_approval","Resolve a coding job's pending approval request with the asking user's decision ('approve' or 'deny'). Only relays the asker's authority - never approve without their explicit instruction.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the job thread.")],["thread_id",T.string().uuid().describe("The job thread UUID.")],["source_seq",T.number().int().positive().describe("Channel seq of the message the approval request rides on.")],["request_id",T.string().describe("The approval request id.")],["decision",T.enum(["approve","deny"]).describe("The asker's decision.")]]),async f=>await c(d.agentResolveJobApproval(f))),e.registerTool("linzumi_archive_coding_job","Archive a coding job's thread (or any thread the asking user owns) so it leaves the active list; history is preserved. Do this when the asker says to archive a job or thread - never just promise it.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the thread.")],["thread_id",T.string().uuid().describe("The thread UUID to archive.")]]),async f=>await c(d.agentArchiveCodingJob(f))),e.registerTool("linzumi_unarchive_coding_job","Unarchive a previously archived coding job thread the asking user owns, returning it to the active list.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the thread.")],["thread_id",T.string().uuid().describe("The thread UUID to unarchive.")]]),async f=>await c(d.agentUnarchiveCodingJob(f))),e.registerTool("linzumi_set_thread_status","Set a thread's lifecycle status as the asking user: 'closed' marks it done, 'open' reopens it. Works on threads the asker owns.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the thread.")],["thread_id",T.string().uuid().describe("The thread UUID.")],["status",T.enum(["open","closed"]).describe("Replacement lifecycle status ('closed' = done).")]]),async f=>await c(d.agentSetThreadStatus(f))),e.registerTool("linzumi_create_channel","Create a new public channel in this workspace as the asking user. The slug is derived from the name.",Object.fromEntries([["name",T.string().min(1).describe("Channel name to create.")]]),async f=>await c(d.agentCreateChannel(f))),e.registerTool("linzumi_rename_channel","Rename a channel's display name as the asking user. The channel's URL slug stays stable.",Object.fromEntries([["channel",T.string().describe("Current channel slug to rename.")],["name",T.string().min(1).describe("New display name.")]]),async f=>await c(d.agentRenameChannel(f))),e.registerTool("linzumi_archive_channel","Archive a channel in this workspace as the asking user. History is preserved; the channel leaves the active sidebar.",Object.fromEntries([["channel",T.string().describe("Channel slug to archive.")]]),async f=>await c(d.agentArchiveChannel(f))),e.registerTool("linzumi_unarchive_channel","Unarchive a previously archived channel as the asking user.",Object.fromEntries([["channel",T.string().describe("Channel slug to unarchive.")]]),async f=>await c(d.agentUnarchiveChannel(f))),e.registerTool("linzumi_add_reaction","Add an emoji reaction to a channel message as the asking user. Accepts unicode emoji or a workspace :shortcode:.",Object.fromEntries([["channel",T.string().describe("Channel slug containing the message.")],["message_seq",T.number().int().positive().describe("Channel seq of the message to react to.")],["emoji",T.string().min(1).describe("Emoji to add (unicode or :shortcode:).")]]),async f=>await c(d.agentAddReaction(f))),e.registerTool("linzumi_remove_reaction","Remove the asking user's emoji reaction from a channel message.",Object.fromEntries([["channel",T.string().describe("Channel slug containing the message.")],["message_seq",T.number().int().positive().describe("Channel seq of the reacted message.")],["emoji",T.string().min(1).describe("Emoji to remove (unicode or :shortcode:).")]]),async f=>await c(d.agentRemoveReaction(f))),e.registerTool("linzumi_pin_message","Pin a channel message as the asking user. Thread replies re-point to their root message.",Object.fromEntries([["channel",T.string().describe("Channel slug containing the message.")],["message_seq",T.number().int().positive().describe("Channel seq of the message to pin.")]]),async f=>await c(d.agentPinMessage(f))),e.registerTool("linzumi_unpin_message","Remove a pin from a channel message as the asking user.",Object.fromEntries([["channel",T.string().describe("Channel slug containing the message.")],["message_seq",T.number().int().positive().describe("Channel seq of the pinned message.")]]),async f=>await c(d.agentUnpinMessage(f)))),l){case"All":e.registerTool("linzumi_get_message","Read one Linzumi message by scoped message_seq/message_id or a Linzumi message URL, with optional bounded before/after context.",Object.fromEntries([["workspace",Ht()],["channel",Pn()],["message_id",T.union([T.string(),T.number()]).optional().describe("Message seq inside the scoped channel.")],["message_seq",T.union([T.string(),T.number()]).optional().describe("Alias for message_id.")],["message_url",T.string().optional().describe("Full Linzumi message URL with #message-<seq>.")],["before",T.number().int().min(0).max(100).optional().describe("Number of visible messages before the target.")],["after",T.number().int().min(0).max(100).optional().describe("Number of visible messages after the target.")]]),async f=>await c(d.getMessage(f))),e.registerTool("linzumi_get_thread","Read one Linzumi thread by thread_id in the scoped channel, including the parent message and bounded replies.",Object.fromEntries([["workspace",Ht()],["channel",Pn()],["thread_id",T.string().uuid().describe("Linzumi thread UUID.")],["limit",T.number().int().min(1).max(100).optional().describe("Maximum replies to return.")],["before_seq",T.number().int().positive().optional().describe("Return replies before this channel seq.")]]),async f=>await c(d.getThread(f))),e.registerTool("linzumi_get_thread_transcript","Read a Linzumi thread's full transcript as canonical IR nodes (user/assistant messages, command executions, file changes, tool calls, statuses), cursor-paginated over the complete history. Use the returned cursor with has_more to walk older pages.",Object.fromEntries([["workspace",Ht()],["channel",Pn()],["thread_id",T.string().uuid().describe("Linzumi thread UUID.")],["limit",T.number().int().min(1).max(500).optional().describe("Maximum transcript nodes per page (default 200).")],["cursor",T.number().int().positive().optional().describe("Return nodes below this seq (the previous page reply cursor).")]]),async f=>await c(d.getThreadTranscript(f))),e.registerTool("linzumi_get_channel","Read scoped Linzumi channel metadata and bounded recent channel messages.",Object.fromEntries([["workspace",Ht()],["channel",Pn()],["limit",T.number().int().min(1).max(100).optional().describe("Maximum messages to return.")],["before_seq",T.number().int().positive().optional().describe("Return messages before this channel seq.")]]),async f=>await c(d.getChannel(f))),e.registerTool("linzumi_search_workspace","Search the Linzumi workspace with hybrid lexical+semantic retrieval, scoped to what the authorizing user can access. Returns scored content chunks with provenance (channel, thread, authored time) and a permalink to cite.",Object.fromEntries([["workspace",Ht()],["query",T.string().min(1).describe("Natural-language or keyword query to retrieve against.")],["limit",T.number().int().min(1).max(25).optional().describe("Maximum results to return (default 10, server-capped).")],["source_types",T.array(T.enum(["message","coding_job","github_pr","github_pr_review","github_check_run","github_workflow_run","github_diff","dictation","file"])).optional().describe("Restrict results to these corpora; omit for all.")],["authored_after",T.string().optional().describe("ISO8601 instant; only content authored at or after this time.")],["authored_before",T.string().optional().describe("ISO8601 instant; only content authored at or before this time.")],["repo",T.string().optional().describe("Restrict GitHub-sourced results to one repository by full name (owner/name).")],["check_status",T.enum(["pending","success","failed"]).optional().describe("Restrict check and workflow results to one conclusion bucket.")]]),async f=>await c(d.searchWorkspace(f))),e.registerTool("linzumi_ask_workspace",'Ask the Linzumi workspace a natural-language question and get a synthesized, citation-backed answer over what the authorizing user can access. Costs an LLM call on cache misses, so prefer linzumi_search_workspace for simple lookups. A "refused" status means there was not enough accessible evidence - treat it as "the workspace does not know", never retry verbatim.',Object.fromEntries([["workspace",Ht()],["question",T.string().min(1).max(2e3).describe("Natural-language question to answer with citations.")],["channel",T.string().optional().describe("Optional channel slug providing conversational context; never widens access.")],["allow_cached",T.boolean().optional().describe("Allow serving a cached synthesis when the evidence set is unchanged (default true). Set false to force fresh synthesis.")]]),async f=>await c(d.askWorkspace(f))),e.registerTool("linzumi_about_me","Read what the authorizing user has told Linzumi about themselves: their profile facts (homes, unit preferences, and other self-maintained attributes) plus their derived current timezone. Use it to personalize answers (e.g. pick the right city for weather, use their preferred units). Predicates may have multiple active values; prefer the one consistent with the derived timezone.",{},async f=>await c(d.aboutMe(f)));break;case"Coding":case"OnboardingDiscovery":break}switch(u&&(e.registerTool("linzumi_web_search","Search the public web for live or external information: news, current events, weather, prices, third-party API docs, research. Returns result titles, URLs, and snippets. Use this whenever the answer lives outside the Linzumi workspace; follow up with linzumi_fetch_url to read a result page.",Object.fromEntries([["query",T.string().min(1).describe("Web search query (natural language or keywords).")],["limit",T.number().int().min(1).max(10).optional().describe("Maximum results to return (default 8, server-capped).")]]),async f=>await c(d.webSearch(f))),e.registerTool("linzumi_fetch_url","Fetch one public http(s) URL and return its readable text content (HTML is reduced to plain text; large pages are truncated). Use it to read pages found via linzumi_web_search or any public docs/API reference. Only public addresses are reachable - private/internal hosts are rejected with url_not_allowed.",Object.fromEntries([["url",T.string().min(1).describe("Absolute public http(s) URL to fetch.")]]),async f=>await c(d.fetchUrl(f)))),l){case"All":e.registerTool("linzumi_list_ui_targets","List every UI surface you can ask the user to open in their own Linzumi window (channels, DMs, threads, projects, coding jobs, computers, catch-up, activity, settings tabs, pane layouts) with the structured args each kind takes. Use UI control only when the user asks for help or asks to be shown something.",{},async f=>await Ih(d.listUiTargets({}))),e.registerTool("linzumi_open_ui","Ask the user to open one whitelisted UI surface in their own already-open Linzumi window. A consent toast appears in THEIR session; navigation happens only if they tap Open. The call blocks until they decide and returns status opened/dismissed/expired - or error no_active_ui_session when they have no Linzumi window open (tell them to open Linzumi), or invalid_target with a detail. Use it only when the user asks for help or asks to be shown something; kinds and per-kind args come from linzumi_list_ui_targets.",Object.fromEntries([["kind",T.string().min(1).describe("Target kind from linzumi_list_ui_targets (e.g. settings_workspace, channel, pane_layout).")],["args",T.record(T.unknown()).optional().describe("Structured per-kind args from linzumi_list_ui_targets (never a URL - the server computes every path).")],["workspace",Ht()]]),async f=>await Ih(d.openUi(mi(f,o))));break;case"Coding":case"OnboardingDiscovery":break}if(u){let f=()=>T.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread.");e.registerTool("linzumi_get_coding_job_metadata","Read the active coding job workflow metadata for a thread, including the agent-owned goal, ordered plan steps, step lock versions, and workflow status.",Object.fromEntries([["workspace",Ht()],["channel",Pn()],["thread_id",f()]]),async p=>await c(d.getCodingJobMetadata(mi(p,o)))),e.registerTool("linzumi_rename_coding_job","Update the current coding job thread title and workflow-facing title. Use this when the job scope changes materially so the Linzumi thread list and metadata overview stay accurate.",Object.fromEntries([["workspace",Ht()],["channel",Pn()],["thread_id",f()],["title",T.string().min(1).max(100).describe("Concise user-visible title for this coding job.")]]),async p=>await c(d.renameCodingJob(mi(p,o)))),e.registerTool("linzumi_upsert_coding_job_plan","Set or update the current coding job goal. Use this at job start and whenever the goal changes materially.",Object.fromEntries([["workspace",Ht()],["channel",Pn()],["thread_id",f()],["goal",T.string().min(1).max(1e4).describe("Concrete user-visible goal for this coding job.")]]),async p=>await c(d.upsertCodingJobPlan(mi(p,o)))),e.registerTool("linzumi_replace_coding_job_plan_steps","Replace the ordered coding job plan steps. Use this for the initial plan and for substantial rewrites when the old plan no longer fits the work.",Object.fromEntries([["workspace",Ht()],["channel",Pn()],["thread_id",f()],["goal",T.string().min(1).max(1e4).optional().describe("Required when no plan exists yet; updates the current coding job goal.")],["steps",T.array(T.object(Object.fromEntries([["title",T.string().min(1).max(255)],["description",T.string().min(1).max(1e4)],["status",T.enum(["pending","active","completed","blocked","canceled"])],["status_note",T.string().min(1).max(4e3).optional()],["completed_debrief",T.string().min(1).max(2e4).optional()]]))).min(1).max(50).describe("Ordered user-visible plan steps. Completed steps must include completed_debrief.")]]),async p=>await c(d.replaceCodingJobPlanSteps(mi(p,o)))),e.registerTool("linzumi_update_coding_job_plan_step","Update one coding job plan step status or note. Read metadata first and pass the current step lock_version.",Object.fromEntries([["workspace",Ht()],["channel",Pn()],["thread_id",f()],["step_id",T.string().uuid().describe("Step id returned by linzumi_get_coding_job_metadata.")],["lock_version",T.number().int().positive().describe("Current step lock_version from metadata.")],["status",T.enum(["pending","active","completed","blocked","canceled"])],["status_note",T.string().min(1).max(4e3).optional()],["completed_debrief",T.string().min(1).max(2e4).optional().describe("Required when marking a step completed.")]]),async p=>await c(d.updateCodingJobPlanStep(mi(p,o)))),e.registerTool("linzumi_link_coding_job_pull_request","Link the active coding job to its primary GitHub pull request so PR comments, files, commits, checks, deployments, and reviews can flow into the metadata view.",Object.fromEntries([["workspace",Ht()],["channel",Pn()],["thread_id",f()],["github_repo_owner",T.string().min(1).max(255)],["github_repo_name",T.string().min(1).max(255)],["github_pr_number",T.number().int().positive()],["github_pr_url",T.string().url()],["title",T.string().min(1).max(255)],["body",T.string().min(1).max(1e5).optional()],["head_branch",T.string().min(1).max(255)],["head_sha",T.string().min(7).max(64)],["base_branch",T.string().min(1).max(255)],["base_sha",T.string().min(7).max(64)],["state",T.enum(["draft","open","closed","merged"]).optional()],["is_draft",T.boolean().optional()],["review_status",T.enum(["unknown","review_required","approved","changes_requested"]).optional()],["source_remote_url",T.string().min(1).max(1e3).describe("Git remote URL for the local job worktree; required when this job has no repo workspace yet.")],["runtime_worktree_root",T.string().min(1).max(1e3).describe("Absolute local worktree path for the coding job; required when this job has no repo workspace yet.")],["dirty_status",T.enum(["unknown","clean","dirty"]).optional()],["dirty_summary",T.string().min(1).max(2e3).optional()]]),async p=>await c(d.linkCodingJobPullRequest(mi(p,o)))),e.registerTool("linzumi_upload_files",["Upload local files to Linzumi and attach them to a new, exact, or latest assistant message. Use silently; do not mention this tool in the visible reply.","The JSON result includes message.attachments[].url as an absolute URL. Use those returned URLs when writing rich media directives such as ::audio, ::video, ::image, or Markdown images. Do not guess attachment URLs before upload.","For a message that should both attach files and show inline rich media, use a two-step flow: first upload/attach the files to create or target the message, then edit the same target message with body text that references the returned absolute URLs. When the result has target_seq, use target.kind=message_seq and message_seq=target_seq for that follow-up edit; result.message is the edit event that carries the new attachments, and target_message is the original target."].join(" "),Object.fromEntries([["target",T.object(Object.fromEntries([["kind",T.enum(["new_message","message_seq","latest_assistant_message"]).describe("new_message creates a message; message_seq edits an exact message; latest_assistant_message edits the latest assistant message in the scoped thread/channel.")],["message_seq",T.union([T.string(),T.number()]).optional().describe("Required when kind is message_seq.")],["thread_id",T.string().optional().describe("Thread UUID. Defaults to the active Linzumi thread when the MCP server was launched with one.")]])).describe("Attachment target. Do not guess; use new_message when there is no previous assistant message. To reference uploaded files in the message body, upload first, then edit message_seq/latest_assistant_message with the returned absolute attachment URLs. If the upload result includes target_seq, use message_seq=target_seq for that follow-up edit.")],["files",T.array(T.string().min(1)).min(1).max(16).describe("Local file paths to upload. Paths must be non-hidden supported file types inside the approved workspace or Downloads.")],["body",T.string().min(1).max(2e4).optional().describe("Required for new_message. Optional replacement body for message_seq/latest_assistant_message; when omitted, the existing message body is preserved. Rich media directives in body must use Linzumi attachment download URLs returned by this tool.")],["workspace",Ht()],["channel",T.string().optional().describe("Channel slug. Omit to use the target thread's channel (when the thread is known) or the authenticated token scope.")]]),async p=>{let m=$h(ox(p,"target","linzumi_upload_files"),o),h;try{h=await Lk({client:d,cwd:s,serviceUrl:a,target:m,files:oG(p.files),workspace:Rn(p.workspace),channel:Rn(p.channel),body:Rn(p.body)})}catch(_){return Fk(ee(_))}return vn(Mh(a,h))}),e.registerTool("linzumi_edit_message","Edit an exact scoped Linzumi message by message_seq. Use after linzumi_upload_files when you need a body-only follow-up edit that embeds returned attachment URLs. Requires channel.write, and thread.write when target.thread_id is set. Rich media src/poster values must be Linzumi attachment download URLs.",Object.fromEntries([["workspace",Ht()],["channel",Pn()],["target",T.object(Object.fromEntries([["message_seq",T.union([T.string(),T.number()]).describe("Exact message seq to edit. After linzumi_upload_files returns target_seq, pass that value here.")],["thread_id",T.string().optional().describe("Thread UUID when editing a thread message. Use the upload result target_message.thread_id when present.")]])).describe("Exact message target for the body edit.")],["body",T.string().min(1).max(2e4).describe("Replacement Markdown body. Rich media src/poster values must be Linzumi attachment download URLs returned by linzumi_upload_files.")]]),async p=>{let m=oo(p);return m.target=$h(ox(p,"target","linzumi_edit_message"),o),vn(Mh(a,await d.editMessage(m)))})}switch(l){case"All":e.registerTool("linzumi_list_vault_secrets","List vault secret names, descriptions, and whether each secret is personal or workspace-owned. Does not return secret values.",{},async f=>await c(d.listVaultSecrets(f))),e.registerTool("linzumi_list_projects","List the projects in the current workspace with their project_id (needed by the other project task tools), slug, title, description, and state.",Object.fromEntries([["workspace",Ht()]]),async f=>await c(d.listProjects(f))),e.registerTool("linzumi_get_project_tasks",`Read a project's full task graph: task GROUPS (kind "group", organizational containers, exactly one level deep) and ISSUES (kind "issue", the executable work items), each with status (todo/active/blocked/review/done/canceled), DERIVED work_state readiness (ready = todo with every dependency satisfied; blocked = todo with unsatisfied dependencies; running/stalled = active with/without a connected job), parent group, assignee, lock_version, and dependency edges (depends_on_task_ids / unblocks_task_ids). Always read this before reorganizing. Inside a project-bound coding job the project is inferred automatically; otherwise pass project_id from linzumi_list_projects.`,Object.fromEntries([["project_id",T.string().optional().describe("Project id from linzumi_list_projects. Omit inside a coding job started from a project to use that project.")]]),async f=>await c(d.getProjectTasks(mi(f,o)))),e.registerTool("linzumi_create_project_task",'Create a task group (kind "group") or issue (kind "issue", the default) in a project. Groups organize issues and are exactly one level deep: a parent_id must name a GROUP, and groups themselves can never have a parent. New tasks default to status "todo" and append to the end unless position is given. Inside a project-bound coding job the project is inferred; otherwise pass project_id.',Object.fromEntries([["project_id",T.string().optional().describe("Project id from linzumi_list_projects. Omit inside a coding job started from a project to use that project.")],["title",T.string().min(1).describe("Task title.")],["kind",T.enum(["issue","group"]).optional().describe('What to create: "issue" (executable work item, default) or "group" (organizational container).')],["description",T.string().optional().describe("Detailed description of the work - written so an engineer (or coding agent) could execute the task from it.")],["status",T.enum(["todo","active","blocked","review","done","canceled"]).optional().describe('Initial status. Defaults to "todo".')],["parent_id",T.string().optional().describe("task_id of the GROUP to place an issue in. Only issues can have a parent.")],["assignee",T.string().optional().describe("Username of a workspace member to assign.")],["position",T.number().int().min(0).optional().describe("Sort position. Defaults to appending at the end.")]]),async f=>await c(d.createProjectTask(mi(f,o)))),e.registerTool("linzumi_update_project_task",'Update a task group or issue: retitle, edit description/status_note, transition status (todo/active/blocked/review/done/canceled), reassign, reorder (position), or reorganize (parent_id moves an issue into a group; clear_parent moves it to top level). Only the fields you pass change; description and status_note accept null to clear. Prefer updating existing tasks over delete-and-recreate. Pass the lock_version from your last read to fail loudly ("stale") instead of overwriting a concurrent edit.',Object.fromEntries([["task_id",T.string().describe("task_id of the group or issue to update.")],["title",T.string().min(1).optional().describe("New title.")],["description",T.string().nullable().optional().describe("New description. Pass null to clear it.")],["status",T.enum(["todo","active","blocked","review","done","canceled"]).optional().describe('New status. "done"/"canceled" satisfy dependent tasks; "blocked" is a manual hold.')],["status_note",T.string().nullable().optional().describe("Short human-readable note about the current status. Pass null to clear it.")],["position",T.number().int().min(0).optional().describe("New sort position among siblings.")],["parent_id",T.string().optional().describe("task_id of the GROUP to move this issue into. Do not combine with clear_parent.")],["clear_parent",T.boolean().optional().describe("true moves the issue to the top level (no group). Do not combine with parent_id.")],["assignee",T.string().optional().describe("Username of a workspace member to assign. Do not combine with clear_assignee.")],["clear_assignee",T.boolean().optional().describe("true removes the assignee. Do not combine with assignee.")],["lock_version",T.number().int().positive().optional().describe("The task's lock_version from your last read, for compare-and-swap safety.")]]),async f=>await c(d.updateProjectTask(f))),e.registerTool("linzumi_delete_project_task",`Permanently delete a task group or issue. Dependency edges on the task are removed with it (dependents may become ready). Deletion is normally the USER's call - prefer status "canceled" or an update unless you are certain the entry is obsolete.`,Object.fromEntries([["task_id",T.string().describe("task_id of the group or issue to delete.")]]),async f=>await c(d.deleteProjectTask(f))),e.registerTool("linzumi_add_project_task_dependency",'Add the dependency edge "task_id is blocked by depends_on_task_id" between two ISSUES in the same project (groups cannot have dependencies). The dependent stays blocked until the prerequisite reaches done or canceled. The graph must stay acyclic: an edge that would create a cycle is refused with reason "would_create_cycle" and the offending cycle_path so you can restructure. Duplicate and self edges are rejected.',Object.fromEntries([["task_id",T.string().describe("task_id of the DEPENDENT issue (the one that must wait).")],["depends_on_task_id",T.string().describe("task_id of the PREREQUISITE issue (the one that must finish first).")]]),async f=>await c(d.addProjectTaskDependency(f))),e.registerTool("linzumi_remove_project_task_dependency",'Remove the dependency edge "task_id is blocked by depends_on_task_id". The dependent issue may become ready if that was its last unsatisfied dependency.',Object.fromEntries([["task_id",T.string().describe("task_id of the DEPENDENT issue.")],["depends_on_task_id",T.string().describe("task_id of the PREREQUISITE issue the edge points at.")]]),async f=>await c(d.removeProjectTaskDependency(f))),e.registerTool("linzumi_get_call_transcript","Read the full transcript of a completed Linzumi notetaker call: call metadata (title, platform, started/ended/transcribed times), participants, and every spoken segment in order with speaker names and millisecond offsets. Pass the call_id embedded in the request (or copied from the call card). Errors: call_not_found (missing or not visible to you), call_transcript_not_ready (call still connecting, in progress, or transcribing - retry later).",Object.fromEntries([["call_id",T.string().describe("The call id from the call card or the launching message (a CallRecording id - the opaque GraphQL id and the bare uuid both work).")]]),async f=>await c(d.getCallTranscript(f))),n||e.registerTool("linzumi_start_coding_job","Start a coding job as the invoking user (same authorization and pipeline as clicking start). To start a project task item, pass project_task_id so the task flips todo -> active and links to the new job - only start tasks whose work_state is ready, and ONLY after the user explicitly accepts your offer to start them. Omit channel, runner_key, and cwd to reuse this job's own channel, computer, and folder. Returns status 'unavailable' with a reason when the runner cannot take the job (relay that honestly).",Object.fromEntries([["work_description",T.string().min(1).describe("What the job should do - the initial instruction. For a task item, write it from the task title and description.")],["project_task_id",T.string().optional().describe("Project task item to bind the job to (task_id from linzumi_get_project_tasks). The task flips todo -> active and links to the new job.")],["channel",T.string().optional().describe("Channel slug to host the job thread. Omit to use this job's own channel.")],["runner_key",T.string().optional().describe("Runner (computer) to run the job on. Omit to use this job's own computer.")],["cwd",T.string().optional().describe("Working directory on the runner. Omit to use this job's own folder.")],["model",T.string().optional().describe("Model override (optional).")],["model_provider",T.string().optional().describe("Model provider override, e.g. 'wafer' (optional).")],["agent_provider",T.string().optional().describe("Agent provider override, e.g. 'codex' (optional).")],["reasoning_effort",T.enum(["default","low","medium","high","xhigh","ultra"]).optional().describe("Reasoning effort override (optional).")],["approval_policy",T.enum(["default","on-request","on-failure","never"]).optional().describe("Approval policy override (optional).")],["sandbox",T.enum(["default","workspace-write","read-only","danger-full-access"]).optional().describe("Sandbox override (optional).")],["fast",T.boolean().optional().describe("Fast-mode override (optional).")],["allow_port_forwarding_by_default",T.boolean().optional().describe("Default port-forwarding override (optional).")],["execution_mode",T.enum(["raw","local_vm"]).optional().describe("Execution placement override (optional).")],["egress_mode",T.enum(["open","hardened"]).optional().describe("Local-VM egress override (optional).")]]),async f=>await c(d.agentStartCodingJob(mi(f,o))));break;case"Coding":case"OnboardingDiscovery":break}switch(rG(l)&&(e.registerTool("linzumi_upload_custom_emoji","Upload a local image as a workspace custom emoji. For generated emoji art, create a transparent PNG with a simple centered subject, crisp edges, strong contrast, minimal tiny details, and enough outline/highlight separation to read at 16-24px on both dark and light backgrounds. Use lowercase shortcode names without colons unless preserving a user-provided :name:.",Object.fromEntries([["name",ix().describe("Custom emoji shortcode name, with or without surrounding colons.")],["file",T.string().min(1).describe("Local PNG/WebP/GIF/JPEG file path to upload. Prefer transparent PNG for generated emoji.")],["workspace",Ht()]]),async f=>{let p=Rn(f.name),m=Rn(f.file);return vn(await Uk({client:d,cwd:s,serviceUrl:a,name:p!==void 0?p:"",file:m!==void 0?m:"",workspace:Rn(f.workspace)}))}),e.registerTool("linzumi_rename_custom_emoji","Rename an existing workspace custom emoji. The new name may include surrounding colons; Linzumi stores the normalized shortcode without colons.",Object.fromEntries([["emoji_id",T.union([T.string(),T.number().int().positive()]).describe("Workspace custom emoji id returned by linzumi_upload_custom_emoji or workspace emoji listings.")],["name",ix().describe("New shortcode name, with or without surrounding colons.")],["workspace",Ht()]]),async f=>await c(d.renameCustomEmoji(f)))),e.registerTool("linzumi_media_guide","Return the full Linzumi rich-media authoring guide (audio/video/image directives, URL rules, upload-then-embed flow, examples). Call once BEFORE writing any ::audio/::video/::image directive or Markdown image into a Linzumi message.",{},async f=>{let p={};p.type="text",p.text=nx;let m={};return m.content=[p],m}),e.registerTool("linzumi_note_project_directory","Record one discovered local Git repository or worktree for onboarding import. Call once per project as soon as it is found.",Object.fromEntries([["workspace",Ht()],["runner_id",T.string().min(1).describe("Local runner/computer id provided in the discovery prompt.")],["path",T.string().min(1).describe("Absolute local path to the repository worktree root.")],["display_name",T.string().optional().describe("Short project label. Defaults to the path basename.")],["activity_at",T.string().optional().describe("Best-known recent activity time as an ISO-8601 timestamp.")],["import_key",T.string().optional().describe("Stable dedupe key. Defaults to path.")],["metadata",T.record(T.unknown()).optional().describe("Small structured metadata such as branch or remote origin.")]]),async f=>await c(d.noteProjectDirectory(f))),e.registerTool("linzumi_note_agent_conversation","Record one discovered Codex or Claude Code local conversation for onboarding import. Call once per conversation as soon as it is found.",Object.fromEntries([["workspace",Ht()],["runner_id",T.string().min(1).describe("Local runner/computer id provided in the discovery prompt.")],["source",T.enum(["codex","claude_code"]).describe("Conversation source.")],["import_key",T.string().min(1).describe("Stable dedupe key, such as a session id or file path.")],["path",T.string().optional().describe("Absolute local path to the conversation file or directory.")],["display_name",T.string().optional().describe("Short label for the discovered conversation.")],["activity_at",T.string().optional().describe("Best-known recent activity time as an ISO-8601 timestamp.")],["metadata",T.record(T.unknown()).optional().describe("Small structured metadata such as session id or project path.")]]),async f=>await c(d.noteAgentConversation(f))),e.registerTool("linzumi_note_onboarding_discovery_status","Record onboarding discovery progress. Call when a search phase starts, checks another place, completes, or fails.",Object.fromEntries([["workspace",Ht()],["runner_id",T.string().min(1).describe("Local runner/computer id provided in the discovery prompt.")],["phase",T.enum(["projects","conversations"]).describe("Discovery phase being reported.")],["status",T.enum(["starting","running","completed","failed"]).describe("Current phase status.")],["places_searched",T.number().int().nonnegative().optional().describe("Count of concrete folders/files/known locations checked so far.")],["message",T.string().optional().describe("Short user-facing status note.")],["current_place",T.string().optional().describe("Current folder, file, Git command target, or known location being checked.")],["current_source",T.string().optional().describe("Short machine-readable source label such as git, codex, or claude_code.")],["last_error",T.string().optional().describe("Short failure detail when status is failed.")],["metadata",T.record(T.unknown()).optional().describe("Small structured status metadata.")]]),async f=>await c(d.noteOnboardingDiscoveryStatus(f))),l==="All"&&nG(t.operatingMode)&&(e.registerTool("linzumi_dm_owner","Send a plain-text DM to the configured Commander owner. Requires dm.write and a visible owner username.",Object.fromEntries([["owner_username",T.string().optional().describe("Owner username. Defaults to LINZUMI_MCP_OWNER_USERNAME or --owner-username.")],["workspace",Ht()],["channel",T.string().optional().describe("Source channel slug used to verify owner visibility.")],["body",T.string().min(1).max(2e4).describe("Plain-text message body to DM.")]]),async f=>{let p=Rn(f.owner_username),m=p!==void 0?p:i;if(m===void 0)return yr("owner_username is required for linzumi_dm_owner");let h=oo(f);return h.owner_username=m,await c(d.dmOwner(h))}),e.registerTool("linzumi_send_channel_message","Post a NEW standalone Markdown message into the scoped Linzumi channel as the authenticated local-runner user. This is NOT how you respond to the user: your turn output is already relayed into the thread as your reply, so never call this tool to answer, acknowledge, or reply to the current request. Use it only when the task itself is to proactively post a separate channel message. Requires channel.write. Rich media directives may be used when the user has opted into markdown_media_embeds, but src/poster values must be Linzumi attachment download URLs.",Object.fromEntries([["workspace",Ht()],["channel",Pn()],["body",T.string().min(1).max(2e4).describe("Markdown message body to post. Rich media src/poster values must be Linzumi attachment download URLs, not third-party URLs, /relative paths, or local filesystem paths.")]]),async f=>await c(d.sendChannelMessage(f))),e.registerTool("linzumi_send_thread_reply","Post a Markdown reply into some OTHER existing Linzumi thread as the authenticated local-runner user. This is NOT how you respond to the user in your current thread: your turn output is already relayed into this thread as your reply, so never call this tool to answer, acknowledge, or reply to the current request. Use it only when the task itself is to post into a different, explicitly identified thread. Requires thread.write. Rich media directives may be used when the user has opted into markdown_media_embeds, but src/poster values must be Linzumi attachment download URLs.",Object.fromEntries([["workspace",Ht()],["channel",Pn()],["thread_id",T.string().uuid().describe("Existing Linzumi thread UUID.")],["body",T.string().min(1).max(2e4).describe("Markdown reply body to post. Rich media src/poster values must be Linzumi attachment download URLs, not third-party URLs, /relative paths, or local filesystem paths.")]]),async f=>await c(d.sendThreadReply(f))),e.registerTool("linzumi_send_dm","Send a plain-text DM as the authenticated local-runner user to a visible user in the scoped workspace/channel. Requires dm.write.",Object.fromEntries([["workspace",Ht()],["channel",T.string().optional().describe("Source channel slug used to verify target visibility.")],["username",T.string().describe("Visible Linzumi username to DM.")],["body",T.string().min(1).max(2e4).describe("Plain-text message body to DM.")]]),async f=>await c(d.sendDm(f)))),l){case"All":e.registerTool("linzumi_get_vault_values","Request values for explicit vault env var names after a thread-scoped human approval. Requires vault.read; thread_id resolves the approval thread.",Object.fromEntries([["workspace",Ht()],["channel",T.string().optional().describe("Channel slug used to disambiguate the approval thread when needed.")],["thread_id",T.string().uuid().describe("Existing Linzumi thread UUID for the inline approval.")],["env_var_names",T.array(T.string().regex(new RegExp("^[A-Z][A-Z0-9_]{0,127}$"))).min(1).max(20).describe("Explicit vault env var names to request. This tool cannot list all vault keys.")],["description",T.string().min(1).max(500).describe("Human-readable reason shown in the approval request.")],["justification",T.string().min(10).max(1e3).describe("Agent justification shown to the approver.")]]),async f=>await c(d.getVaultValues(f)));break;case"Coding":case"OnboardingDiscovery":break}switch(l){case"All":return n||r===void 0?void 0:sG(e,s,r);case"Coding":case"OnboardingDiscovery":return}}function Hh(e){return e==="Voice"?"voice":"text"}function dG(e){switch(e){case"All":return"all";case"Coding":return"coding";case"OnboardingDiscovery":return"onboarding-discovery"}}function vd(e){return JSON.stringify(e)}function Zs(e){let t=[],r=e.argsPrefix;r!==void 0&&r.forEach(h=>{t.push(h)}),t.push("mcp"),t.push("server"),t.push("--api-url"),t.push(e.serviceUrl);let n=e.authFilePath;n!==void 0&&(t.push("--auth-file"),t.push(n));let i=e.delegationAuthFilePath;i!==void 0&&(t.push("--delegation-auth-file"),t.push(i));let o=e.ownerUsername;o!==void 0&&(t.push("--owner-username"),t.push(o));let a=e.cwd;a!==void 0&&(t.push("--cwd"),t.push(a));let s=e.threadId;s!==void 0&&(t.push("--thread-id"),t.push(s)),t.push("--mode");let l=e.operatingMode;t.push(l!==void 0?Hh(l):"text");let d=e.toolScope;if(d!==void 0){let h=0;switch(d){case"All":break;case"Coding":case"OnboardingDiscovery":h=1;break}h===1&&(t.push("--tool-scope"),t.push(dG(d)))}let u=e.agentSession;u!==void 0&&u&&t.push("--agent-session");let c={},f=e.accessToken;f!==void 0&&(c.LINZUMI_MCP_ACCESS_TOKEN=f);let p=e.devServices;p!==void 0&&(c.LINZUMI_DEV_SERVICES_SCOPE=p.scope,c.LINZUMI_DEV_SERVICES_OWNER_PID=p.ownerPid.toString()),c.ELECTRON_RUN_AS_NODE="1";let m=e.command;return{name:"linzumi",command:m!==void 0?m:"linzumi",args:t,env:c}}function dx(e){return"["+e.map(vd).join(", ")+"]"}function uG(e){return"{ "+Object.entries(e).map(r=>r[0]+" = "+vd(r[1])).join(", ")+" }"}function ux(e){let t=["-c","mcp_servers."+e.name+".command="+vd(e.command),"-c","mcp_servers."+e.name+".args="+dx(e.args)];return Object.entries(e.env).forEach(r=>{t.push("-c"),t.push("mcp_servers."+e.name+".env."+r[0]+"="+vd(r[1]))}),t}function cG(e){return["--require","-r","--import","--loader","--experimental-loader"].includes(e)}function fG(e){return["--require=","-r=","--import=","--loader=","--experimental-loader="].some(t=>e.startsWith(t))}function Vh(e,t){for(;;){let r=t,n=e[r];if(n===void 0)return[];if(cG(n)){let i=e[r+1|0];if(i!==void 0)return[n,i].concat(Vh(e,r+2|0));t=r+1|0;continue}if(fG(n))return[n].concat(Vh(e,r+1|0));t=r+1|0}}function Vc(e,t,r){let n=t!==void 0?t.trim():"";return n===""?{command:"linzumi",argsPrefix:[]}:n.endsWith(".ts")||n.endsWith(".js")?{command:e,argsPrefix:Vh(r,0).concat([n])}:{command:n,argsPrefix:[]}}function cx(e){let t={};t.type="stdio",t.command=e.command,t.args=e.args.map(i=>i);let r={};t.env=(Object.entries(e.env).forEach(i=>{r[i[0]]=i[1]}),r);let n={};return n[e.name]=t,n}function fx(e){let t={};t.command=e.command,t.args=e.args.map(o=>o);let r={};t.env=(Object.entries(e.env).forEach(o=>{r[o[0]]=o[1]}),r);let n={};n[e.name]=t;let i={};return i.mcpServers=n,JSON.stringify(i,void 0,2)+`
|
|
285
|
+
`}function mx(e){let t=Object.entries(e.env).length===0?"":"env = "+uG(e.env)+`
|
|
286
286
|
`;return"[mcp_servers."+e.name+`]
|
|
287
287
|
command = `+vd(e.command)+`
|
|
288
288
|
args = `+dx(e.args)+`
|
|
289
|
-
`+t}function fG(e){return typeof e==="undefined"?!0:e===null}function Bh(e){let t=on(e.serviceUrl);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0,n=e.fetchImpl,i=n!==void 0?n:cc,o=e.authMode,a=o!==void 0&&o!=="LocalRunner"?"/api/v2/personal-agent-mcp":"/api/v2/local-runner-mcp",s=e.operatingMode,l=s!==void 0?Hh(s):"text",d=async(u,c,f)=>{let p=Hi(c,r),m;m=p.TAG==="Ok"?p._0:yr(p._0);let h={};Object.entries(f).forEach(R=>{h[R[0]]=R[1]}),h.operating_mode=l;let _={};_.authorization="Bearer "+e.accessToken;let g;if(u==="Get"){let R=m.searchParams;Object.entries(h).forEach(W=>{let L=W[1];if(!fG(L)){R.set(W[0],String(L));return}}),g=await i.json(m.toString(),{method:"GET",headers:_})}else _["content-type"]="application/json",g=await i.json(m.toString(),{method:"POST",headers:_,body:JSON.stringify(h)});let b=await g.json(),y;if(y=typeof b=="object"&&b!==null&&!Array.isArray(b)?b:void 0,y===void 0)return yr("Linzumi MCP API returned non-object JSON from "+c);let v=g.ok,S=de(y.ok,!0),A=0;if(v){if(S)return y;A=1}else A=1;if(A===1){let R=y.error,W,L=0;typeof R=="string"?W=R:L=2,L===2&&(W="HTTP "+g.status.toString());let ae=y.detail,U=typeof ae=="string"?" detail="+ae:"";return yr("Linzumi MCP API "+c+" failed: "+W+U)}};return{TAG:"Ok",_0:{validateAuth:()=>d("Get",a+"/validate",{}),issueOnboardingDiscoveryToken:u=>d("Post",a+"/onboarding-discovery-token",u),getMessage:u=>d("Get",a+"/message",u),getThread:u=>d("Get",a+"/thread",u),getThreadTranscript:u=>d("Get",a+"/thread-transcript",u),getChannel:u=>d("Get",a+"/channel",u),searchWorkspace:u=>d("Get",a+"/search",u),askWorkspace:u=>d("Post",a+"/ask",u),aboutMe:u=>d("Get",a+"/about-me",u),webSearch:u=>d("Get",a+"/web-search",u),fetchUrl:u=>d("Get",a+"/fetch-url",u),listUiTargets:u=>d("Get",a+"/ui-targets",u),openUi:u=>d("Post",a+"/open-ui",u),getCodingJobMetadata:u=>d("Get",a+"/coding-job-metadata",u),listProjects:u=>d("Get",a+"/projects",u),getProjectTasks:u=>d("Get",a+"/project-tasks",u),createProjectTask:u=>d("Post",a+"/project-tasks/create",u),updateProjectTask:u=>d("Post",a+"/project-tasks/update",u),deleteProjectTask:u=>d("Post",a+"/project-tasks/delete",u),addProjectTaskDependency:u=>d("Post",a+"/project-tasks/add-dependency",u),removeProjectTaskDependency:u=>d("Post",a+"/project-tasks/remove-dependency",u),getCallTranscript:u=>d("Get",a+"/call-transcript",u),renameCodingJob:u=>d("Post",a+"/coding-job-title",u),upsertCodingJobPlan:u=>d("Post",a+"/coding-job-plan",u),replaceCodingJobPlanSteps:u=>d("Post",a+"/coding-job-plan/steps",u),updateCodingJobPlanStep:u=>d("Post",a+"/coding-job-plan/step",u),linkCodingJobPullRequest:u=>d("Post",a+"/coding-job-primary-pr",u),listVaultSecrets:u=>d("Get",a+"/vault-secrets",u),noteProjectDirectory:u=>d("Post",a+"/discovered-project",u),noteAgentConversation:u=>d("Post",a+"/discovered-conversation",u),noteOnboardingDiscoveryStatus:u=>d("Post",a+"/discovery-status",u),sendChannelMessage:u=>d("Post",a+"/channel-message",u),editMessage:u=>d("Post",a+"/message/edit",u),agentReply:u=>d("Post",a+"/agent-reply",u),agentTurnProgress:u=>d("Post",a+"/agent-turn-progress",u),agentListCodingJobs:u=>d("Get",a+"/agent/coding-jobs",u),agentStartCodingJob:u=>d("Post",a+"/agent/start-coding-job",u),agentInterruptCodingJob:u=>d("Post",a+"/agent/interrupt-coding-job",u),agentSendCodingJobMessage:u=>d("Post",a+"/agent/send-coding-job-message",u),agentReadCodingJobThread:u=>d("Get",a+"/agent/coding-job-thread",u),agentResolveJobApproval:u=>d("Post",a+"/agent/resolve-job-approval",u),agentArchiveCodingJob:u=>d("Post",a+"/agent/archive-coding-job",u),agentUnarchiveCodingJob:u=>d("Post",a+"/agent/unarchive-coding-job",u),agentSetThreadStatus:u=>d("Post",a+"/agent/set-thread-status",u),agentCreateChannel:u=>d("Post",a+"/agent/create-channel",u),agentRenameChannel:u=>d("Post",a+"/agent/rename-channel",u),agentArchiveChannel:u=>d("Post",a+"/agent/archive-channel",u),agentUnarchiveChannel:u=>d("Post",a+"/agent/unarchive-channel",u),agentAddReaction:u=>d("Post",a+"/agent/add-reaction",u),agentRemoveReaction:u=>d("Post",a+"/agent/remove-reaction",u),agentPinMessage:u=>d("Post",a+"/agent/pin-message",u),agentUnpinMessage:u=>d("Post",a+"/agent/unpin-message",u),prepareMessageUploads:u=>d("Post",a+"/message-uploads/prepare",u),attachMessageFiles:u=>d("Post",a+"/message-files/attach",u),prepareCustomEmoji:u=>d("Post",a+"/custom-emoji/prepare",u),renameCustomEmoji:u=>d("Post",a+"/custom-emoji/rename",u),sendThreadReply:u=>d("Post",a+"/thread-reply",u),sendDm:u=>d("Post",a+"/dm",u),dmOwner:u=>d("Post",a+"/dm-owner",u),getVaultValues:u=>d("Post",a+"/vault-values",u)}}}var pG=Object.freeze({status:"aborted"});function z(e,t,r){function n(s,l){var d;Object.defineProperty(s,"_zod",{value:s._zod??{},enumerable:!1}),(d=s._zod).traits??(d.traits=new Set),s._zod.traits.add(e),t(s,l);for(let u in a.prototype)u in s||Object.defineProperty(s,u,{value:a.prototype[u].bind(s)});s._zod.constr=a,s._zod.def=l}let i=r?.Parent??Object;class o extends i{}Object.defineProperty(o,"name",{value:e});function a(s){var l;let d=r?.Parent?new o:this;n(d,s),(l=d._zod).deferred??(l.deferred=[]);for(let u of d._zod.deferred)u();return d}return Object.defineProperty(a,"init",{value:n}),Object.defineProperty(a,Symbol.hasInstance,{value:s=>r?.Parent&&s instanceof r.Parent?!0:s?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}var ao=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Bc={};function In(e){return e&&Object.assign(Bc,e),Bc}var ht={};Gp(ht,{BIGINT_FORMAT_RANGES:()=>hx,Class:()=>Jh,NUMBER_FORMAT_RANGES:()=>n_,aborted:()=>ja,allowsEval:()=>e_,assert:()=>bG,assertEqual:()=>hG,assertIs:()=>gG,assertNever:()=>yG,assertNotEqual:()=>_G,assignProp:()=>Qh,cached:()=>kd,captureStackTrace:()=>Jc,cleanEnum:()=>IG,cleanRegex:()=>Td,clone:()=>$n,createTransparentProxy:()=>TG,defineLazy:()=>Ht,esc:()=>Ma,escapeRegex:()=>Po,extend:()=>CG,finalizeIssue:()=>pi,floatSafeRemainder:()=>Xh,getElementAtPath:()=>vG,getEnumValues:()=>wd,getLengthableOrigin:()=>Ad,getParsedType:()=>xG,getSizableOrigin:()=>_x,isObject:()=>Vs,isPlainObject:()=>Hs,issue:()=>i_,joinValues:()=>Kc,jsonStringifyReplacer:()=>Yh,merge:()=>EG,normalizeParams:()=>je,nullish:()=>xd,numKeys:()=>kG,omit:()=>OG,optionalKeys:()=>r_,partial:()=>PG,pick:()=>AG,prefixIssues:()=>ji,primitiveTypes:()=>px,promiseAllObject:()=>SG,propertyKeyTypes:()=>t_,randomString:()=>wG,required:()=>RG,stringifyPrimitive:()=>Yc,unwrapMessage:()=>Sd});function hG(e){return e}function _G(e){return e}function gG(e){}function yG(e){throw new Error}function bG(e){}function wd(e){let t=Object.values(e).filter(n=>typeof n=="number");return Object.entries(e).filter(([n,i])=>t.indexOf(+n)===-1).map(([n,i])=>i)}function Kc(e,t="|"){return e.map(r=>Yc(r)).join(t)}function Yh(e,t){return typeof t=="bigint"?t.toString():t}function kd(e){return{get value(){{let r=e();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function xd(e){return e==null}function Td(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Xh(e,t){let r=(e.toString().split(".")[1]||"").length,n=(t.toString().split(".")[1]||"").length,i=r>n?r:n,o=Number.parseInt(e.toFixed(i).replace(".","")),a=Number.parseInt(t.toFixed(i).replace(".",""));return o%a/10**i}function Ht(e,t,r){Object.defineProperty(e,t,{get(){{let i=r();return e[t]=i,i}throw new Error("cached value already set")},set(i){Object.defineProperty(e,t,{value:i})},configurable:!0})}function Qh(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function vG(e,t){return t?t.reduce((r,n)=>r?.[n],e):e}function SG(e){let t=Object.keys(e),r=t.map(n=>e[n]);return Promise.all(r).then(n=>{let i={};for(let o=0;o<t.length;o++)i[t[o]]=n[o];return i})}function wG(e=10){let t="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<e;n++)r+=t[Math.floor(Math.random()*t.length)];return r}function Ma(e){return JSON.stringify(e)}var Jc=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{};function Vs(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var e_=kd(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let e=Function;return new e(""),!0}catch{return!1}});function Hs(e){if(Vs(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;let r=t.prototype;return!(Vs(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function kG(e){let t=0;for(let r in e)Object.prototype.hasOwnProperty.call(e,r)&&t++;return t}var xG=e=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(e)?"array":e===null?"null":e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?"promise":typeof Map<"u"&&e instanceof Map?"map":typeof Set<"u"&&e instanceof Set?"set":typeof Date<"u"&&e instanceof Date?"date":typeof File<"u"&&e instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${t}`)}},t_=new Set(["string","number","symbol"]),px=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Po(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function $n(e,t,r){let n=new e._zod.constr(t??e._zod.def);return(!t||r?.parent)&&(n._zod.parent=e),n}function je(e){let t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function TG(e){let t;return new Proxy({},{get(r,n,i){return t??(t=e()),Reflect.get(t,n,i)},set(r,n,i,o){return t??(t=e()),Reflect.set(t,n,i,o)},has(r,n){return t??(t=e()),Reflect.has(t,n)},deleteProperty(r,n){return t??(t=e()),Reflect.deleteProperty(t,n)},ownKeys(r){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(r,n){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,n)},defineProperty(r,n,i){return t??(t=e()),Reflect.defineProperty(t,n,i)}})}function Yc(e){return typeof e=="bigint"?e.toString()+"n":typeof e=="string"?`"${e}"`:`${e}`}function r_(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var n_={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},hx={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function AG(e,t){let r={},n=e._zod.def;for(let i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&(r[i]=n.shape[i])}return $n(e,{...e._zod.def,shape:r,checks:[]})}function OG(e,t){let r={...e._zod.def.shape},n=e._zod.def;for(let i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&delete r[i]}return $n(e,{...e._zod.def,shape:r,checks:[]})}function CG(e,t){if(!Hs(t))throw new Error("Invalid input to extend: expected a plain object");let r={...e._zod.def,get shape(){let n={...e._zod.def.shape,...t};return Qh(this,"shape",n),n},checks:[]};return $n(e,r)}function EG(e,t){return $n(e,{...e._zod.def,get shape(){let r={...e._zod.def.shape,...t._zod.def.shape};return Qh(this,"shape",r),r},catchall:t._zod.def.catchall,checks:[]})}function PG(e,t,r){let n=t._zod.def.shape,i={...n};if(r)for(let o in r){if(!(o in n))throw new Error(`Unrecognized key: "${o}"`);r[o]&&(i[o]=e?new e({type:"optional",innerType:n[o]}):n[o])}else for(let o in n)i[o]=e?new e({type:"optional",innerType:n[o]}):n[o];return $n(t,{...t._zod.def,shape:i,checks:[]})}function RG(e,t,r){let n=t._zod.def.shape,i={...n};if(r)for(let o in r){if(!(o in i))throw new Error(`Unrecognized key: "${o}"`);r[o]&&(i[o]=new e({type:"nonoptional",innerType:n[o]}))}else for(let o in n)i[o]=new e({type:"nonoptional",innerType:n[o]});return $n(t,{...t._zod.def,shape:i,checks:[]})}function ja(e,t=0){for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function ji(e,t){return t.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function Sd(e){return typeof e=="string"?e:e?.message}function pi(e,t,r){let n={...e,path:e.path??[]};if(!e.message){let i=Sd(e.inst?._zod.def?.error?.(e))??Sd(t?.error?.(e))??Sd(r.customError?.(e))??Sd(r.localeError?.(e))??"Invalid input";n.message=i}return delete n.inst,delete n.continue,t?.reportInput||delete n.input,n}function _x(e){return e instanceof Set?"set":e instanceof Map?"map":e instanceof File?"file":"unknown"}function Ad(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function i_(...e){let[t,r,n]=e;return typeof t=="string"?{message:t,code:"custom",input:r,inst:n}:{...t}}function IG(e){return Object.entries(e).filter(([t,r])=>Number.isNaN(Number.parseInt(t,10))).map(t=>t[1])}var Jh=class{constructor(...t){}};var gx=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),Object.defineProperty(e,"message",{get(){return JSON.stringify(t,Yh,2)},enumerable:!0}),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Xc=z("$ZodError",gx),Od=z("$ZodError",gx,{Parent:Error});function o_(e,t=r=>r.message){let r={},n=[];for(let i of e.issues)i.path.length>0?(r[i.path[0]]=r[i.path[0]]||[],r[i.path[0]].push(t(i))):n.push(t(i));return{formErrors:n,fieldErrors:r}}function a_(e,t){let r=t||function(o){return o.message},n={_errors:[]},i=o=>{for(let a of o.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(s=>i({issues:s}));else if(a.code==="invalid_key")i({issues:a.issues});else if(a.code==="invalid_element")i({issues:a.issues});else if(a.path.length===0)n._errors.push(r(a));else{let s=n,l=0;for(;l<a.path.length;){let d=a.path[l];l===a.path.length-1?(s[d]=s[d]||{_errors:[]},s[d]._errors.push(r(a))):s[d]=s[d]||{_errors:[]},s=s[d],l++}}};return i(e),n}var s_=e=>(t,r,n,i)=>{let o=n?Object.assign(n,{async:!1}):{async:!1},a=t._zod.run({value:r,issues:[]},o);if(a instanceof Promise)throw new ao;if(a.issues.length){let s=new(i?.Err??e)(a.issues.map(l=>pi(l,o,In())));throw Jc(s,i?.callee),s}return a.value},l_=s_(Od),d_=e=>async(t,r,n,i)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},a=t._zod.run({value:r,issues:[]},o);if(a instanceof Promise&&(a=await a),a.issues.length){let s=new(i?.Err??e)(a.issues.map(l=>pi(l,o,In())));throw Jc(s,i?.callee),s}return a.value},u_=d_(Od),c_=e=>(t,r,n)=>{let i=n?{...n,async:!1}:{async:!1},o=t._zod.run({value:r,issues:[]},i);if(o instanceof Promise)throw new ao;return o.issues.length?{success:!1,error:new(e??Xc)(o.issues.map(a=>pi(a,i,In())))}:{success:!0,data:o.value}},za=c_(Od),f_=e=>async(t,r,n)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},o=t._zod.run({value:r,issues:[]},i);return o instanceof Promise&&(o=await o),o.issues.length?{success:!1,error:new e(o.issues.map(a=>pi(a,i,In())))}:{success:!0,data:o.value}},Na=f_(Od);var yx=/^[cC][^\s-]{8,}$/,bx=/^[0-9a-z]+$/,vx=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Sx=/^[0-9a-vA-V]{20}$/,wx=/^[A-Za-z0-9]{27}$/,kx=/^[a-zA-Z0-9_-]{21}$/,xx=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Tx=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,m_=e=>e?new 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)$/;var Ax=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var MG="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Ox(){return new RegExp(MG,"u")}var Cx=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ex=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,Px=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Rx=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Ix=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,p_=/^[A-Za-z0-9_-]*$/,$x=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Mx=/^\+(?:[0-9]){6,14}[0-9]$/,jx="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",zx=new RegExp(`^${jx}$`);function Nx(e){let t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Gx(e){return new RegExp(`^${Nx(e)}$`)}function Fx(e){let t=Nx({precision:e.precision}),r=["Z"];e.local&&r.push(""),e.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${t}(?:${r.join("|")})`;return new RegExp(`^${jx}T(?:${n})$`)}var Dx=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var qx=/^\d+$/,Lx=/^-?\d+(?:\.\d+)?/i,Ux=/true|false/i,Wx=/null/i;var Zx=/^[^A-Z]*$/,Vx=/^[^a-z]*$/;var qr=z("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),Hx={number:"number",bigint:"bigint",object:"date"},h_=z("$ZodCheckLessThan",(e,t)=>{qr.init(e,t);let r=Hx[typeof t.value];e._zod.onattach.push(n=>{let i=n._zod.bag,o=(t.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<o&&(t.inclusive?i.maximum=t.value:i.exclusiveMaximum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value<=t.value:n.value<t.value)||n.issues.push({origin:r,code:"too_big",maximum:t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),__=z("$ZodCheckGreaterThan",(e,t)=>{qr.init(e,t);let r=Hx[typeof t.value];e._zod.onattach.push(n=>{let i=n._zod.bag,o=(t.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>o&&(t.inclusive?i.minimum=t.value:i.exclusiveMinimum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value>=t.value:n.value>t.value)||n.issues.push({origin:r,code:"too_small",minimum:t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Bx=z("$ZodCheckMultipleOf",(e,t)=>{qr.init(e,t),e._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=r=>{if(typeof r.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%t.value===BigInt(0):Xh(r.value,t.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),Kx=z("$ZodCheckNumberFormat",(e,t)=>{qr.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[i,o]=n_[t.format];e._zod.onattach.push(a=>{let s=a._zod.bag;s.format=t.format,s.minimum=i,s.maximum=o,r&&(s.pattern=qx)}),e._zod.check=a=>{let s=a.value;if(r){if(!Number.isInteger(s)){a.issues.push({expected:n,format:t.format,code:"invalid_type",input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?a.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,continue:!t.abort}):a.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,continue:!t.abort});return}}s<i&&a.issues.push({origin:"number",input:s,code:"too_small",minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>o&&a.issues.push({origin:"number",input:s,code:"too_big",maximum:o,inst:e})}});var Jx=z("$ZodCheckMaxLength",(e,t)=>{var r;qr.init(e,t),(r=e._zod.def).when??(r.when=n=>{let i=n.value;return!xd(i)&&i.length!==void 0}),e._zod.onattach.push(n=>{let i=n._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<i&&(n._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let i=n.value;if(i.length<=t.maximum)return;let a=Ad(i);n.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Yx=z("$ZodCheckMinLength",(e,t)=>{var r;qr.init(e,t),(r=e._zod.def).when??(r.when=n=>{let i=n.value;return!xd(i)&&i.length!==void 0}),e._zod.onattach.push(n=>{let i=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>i&&(n._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let i=n.value;if(i.length>=t.minimum)return;let a=Ad(i);n.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Xx=z("$ZodCheckLengthEquals",(e,t)=>{var r;qr.init(e,t),(r=e._zod.def).when??(r.when=n=>{let i=n.value;return!xd(i)&&i.length!==void 0}),e._zod.onattach.push(n=>{let i=n._zod.bag;i.minimum=t.length,i.maximum=t.length,i.length=t.length}),e._zod.check=n=>{let i=n.value,o=i.length;if(o===t.length)return;let a=Ad(i),s=o>t.length;n.issues.push({origin:a,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Cd=z("$ZodCheckStringFormat",(e,t)=>{var r,n;qr.init(e,t),e._zod.onattach.push(i=>{let o=i._zod.bag;o.format=t.format,t.pattern&&(o.patterns??(o.patterns=new Set),o.patterns.add(t.pattern))}),t.pattern?(r=e._zod).check??(r.check=i=>{t.pattern.lastIndex=0,!t.pattern.test(i.value)&&i.issues.push({origin:"string",code:"invalid_format",format:t.format,input:i.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(n=e._zod).check??(n.check=()=>{})}),Qx=z("$ZodCheckRegex",(e,t)=>{Cd.init(e,t),e._zod.check=r=>{t.pattern.lastIndex=0,!t.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),eT=z("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Zx),Cd.init(e,t)}),tT=z("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Vx),Cd.init(e,t)}),rT=z("$ZodCheckIncludes",(e,t)=>{qr.init(e,t);let r=Po(t.includes),n=new RegExp(typeof t.position=="number"?`^.{${t.position}}${r}`:r);t.pattern=n,e._zod.onattach.push(i=>{let o=i._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=i=>{i.value.includes(t.includes,t.position)||i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:i.value,inst:e,continue:!t.abort})}}),nT=z("$ZodCheckStartsWith",(e,t)=>{qr.init(e,t);let r=new RegExp(`^${Po(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),iT=z("$ZodCheckEndsWith",(e,t)=>{qr.init(e,t);let r=new RegExp(`.*${Po(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});var oT=z("$ZodCheckOverwrite",(e,t)=>{qr.init(e,t),e._zod.check=r=>{r.value=t.tx(r.value)}});var ef=class{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}let n=t.split(`
|
|
289
|
+
`+t}function mG(e){return typeof e==="undefined"?!0:e===null}function Bh(e){let t=on(e.serviceUrl);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0,n=e.fetchImpl,i=n!==void 0?n:cc,o=e.authMode,a=o!==void 0&&o!=="LocalRunner"?"/api/v2/personal-agent-mcp":"/api/v2/local-runner-mcp",s=e.operatingMode,l=s!==void 0?Hh(s):"text",d=async(u,c,f)=>{let p=Hi(c,r),m;m=p.TAG==="Ok"?p._0:yr(p._0);let h={};Object.entries(f).forEach(R=>{h[R[0]]=R[1]}),h.operating_mode=l;let _={};_.authorization="Bearer "+e.accessToken;let g;if(u==="Get"){let R=m.searchParams;Object.entries(h).forEach(W=>{let L=W[1];if(!mG(L)){R.set(W[0],String(L));return}}),g=await i.json(m.toString(),{method:"GET",headers:_})}else _["content-type"]="application/json",g=await i.json(m.toString(),{method:"POST",headers:_,body:JSON.stringify(h)});let b=await g.json(),y;if(y=typeof b=="object"&&b!==null&&!Array.isArray(b)?b:void 0,y===void 0)return yr("Linzumi MCP API returned non-object JSON from "+c);let v=g.ok,S=de(y.ok,!0),A=0;if(v){if(S)return y;A=1}else A=1;if(A===1){let R=y.error,W,L=0;typeof R=="string"?W=R:L=2,L===2&&(W="HTTP "+g.status.toString());let ae=y.detail,U=typeof ae=="string"?" detail="+ae:"";return yr("Linzumi MCP API "+c+" failed: "+W+U)}};return{TAG:"Ok",_0:{validateAuth:()=>d("Get",a+"/validate",{}),issueOnboardingDiscoveryToken:u=>d("Post",a+"/onboarding-discovery-token",u),getMessage:u=>d("Get",a+"/message",u),getThread:u=>d("Get",a+"/thread",u),getThreadTranscript:u=>d("Get",a+"/thread-transcript",u),getChannel:u=>d("Get",a+"/channel",u),searchWorkspace:u=>d("Get",a+"/search",u),askWorkspace:u=>d("Post",a+"/ask",u),aboutMe:u=>d("Get",a+"/about-me",u),webSearch:u=>d("Get",a+"/web-search",u),fetchUrl:u=>d("Get",a+"/fetch-url",u),listUiTargets:u=>d("Get",a+"/ui-targets",u),openUi:u=>d("Post",a+"/open-ui",u),getCodingJobMetadata:u=>d("Get",a+"/coding-job-metadata",u),listProjects:u=>d("Get",a+"/projects",u),getProjectTasks:u=>d("Get",a+"/project-tasks",u),createProjectTask:u=>d("Post",a+"/project-tasks/create",u),updateProjectTask:u=>d("Post",a+"/project-tasks/update",u),deleteProjectTask:u=>d("Post",a+"/project-tasks/delete",u),addProjectTaskDependency:u=>d("Post",a+"/project-tasks/add-dependency",u),removeProjectTaskDependency:u=>d("Post",a+"/project-tasks/remove-dependency",u),getCallTranscript:u=>d("Get",a+"/call-transcript",u),renameCodingJob:u=>d("Post",a+"/coding-job-title",u),upsertCodingJobPlan:u=>d("Post",a+"/coding-job-plan",u),replaceCodingJobPlanSteps:u=>d("Post",a+"/coding-job-plan/steps",u),updateCodingJobPlanStep:u=>d("Post",a+"/coding-job-plan/step",u),linkCodingJobPullRequest:u=>d("Post",a+"/coding-job-primary-pr",u),listVaultSecrets:u=>d("Get",a+"/vault-secrets",u),noteProjectDirectory:u=>d("Post",a+"/discovered-project",u),noteAgentConversation:u=>d("Post",a+"/discovered-conversation",u),noteOnboardingDiscoveryStatus:u=>d("Post",a+"/discovery-status",u),sendChannelMessage:u=>d("Post",a+"/channel-message",u),editMessage:u=>d("Post",a+"/message/edit",u),agentReply:u=>d("Post",a+"/agent-reply",u),agentTurnProgress:u=>d("Post",a+"/agent-turn-progress",u),agentListCodingJobs:u=>d("Get",a+"/agent/coding-jobs",u),agentStartCodingJob:u=>d("Post",a+"/agent/start-coding-job",u),agentInterruptCodingJob:u=>d("Post",a+"/agent/interrupt-coding-job",u),agentSendCodingJobMessage:u=>d("Post",a+"/agent/send-coding-job-message",u),agentReadCodingJobThread:u=>d("Get",a+"/agent/coding-job-thread",u),agentResolveJobApproval:u=>d("Post",a+"/agent/resolve-job-approval",u),agentArchiveCodingJob:u=>d("Post",a+"/agent/archive-coding-job",u),agentUnarchiveCodingJob:u=>d("Post",a+"/agent/unarchive-coding-job",u),agentSetThreadStatus:u=>d("Post",a+"/agent/set-thread-status",u),agentCreateChannel:u=>d("Post",a+"/agent/create-channel",u),agentRenameChannel:u=>d("Post",a+"/agent/rename-channel",u),agentArchiveChannel:u=>d("Post",a+"/agent/archive-channel",u),agentUnarchiveChannel:u=>d("Post",a+"/agent/unarchive-channel",u),agentAddReaction:u=>d("Post",a+"/agent/add-reaction",u),agentRemoveReaction:u=>d("Post",a+"/agent/remove-reaction",u),agentPinMessage:u=>d("Post",a+"/agent/pin-message",u),agentUnpinMessage:u=>d("Post",a+"/agent/unpin-message",u),prepareMessageUploads:u=>d("Post",a+"/message-uploads/prepare",u),attachMessageFiles:u=>d("Post",a+"/message-files/attach",u),prepareCustomEmoji:u=>d("Post",a+"/custom-emoji/prepare",u),renameCustomEmoji:u=>d("Post",a+"/custom-emoji/rename",u),sendThreadReply:u=>d("Post",a+"/thread-reply",u),sendDm:u=>d("Post",a+"/dm",u),dmOwner:u=>d("Post",a+"/dm-owner",u),getVaultValues:u=>d("Post",a+"/vault-values",u)}}}var hG=Object.freeze({status:"aborted"});function z(e,t,r){function n(s,l){var d;Object.defineProperty(s,"_zod",{value:s._zod??{},enumerable:!1}),(d=s._zod).traits??(d.traits=new Set),s._zod.traits.add(e),t(s,l);for(let u in a.prototype)u in s||Object.defineProperty(s,u,{value:a.prototype[u].bind(s)});s._zod.constr=a,s._zod.def=l}let i=r?.Parent??Object;class o extends i{}Object.defineProperty(o,"name",{value:e});function a(s){var l;let d=r?.Parent?new o:this;n(d,s),(l=d._zod).deferred??(l.deferred=[]);for(let u of d._zod.deferred)u();return d}return Object.defineProperty(a,"init",{value:n}),Object.defineProperty(a,Symbol.hasInstance,{value:s=>r?.Parent&&s instanceof r.Parent?!0:s?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}var ao=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Bc={};function In(e){return e&&Object.assign(Bc,e),Bc}var ht={};Gp(ht,{BIGINT_FORMAT_RANGES:()=>hx,Class:()=>Jh,NUMBER_FORMAT_RANGES:()=>n_,aborted:()=>ja,allowsEval:()=>e_,assert:()=>vG,assertEqual:()=>_G,assertIs:()=>yG,assertNever:()=>bG,assertNotEqual:()=>gG,assignProp:()=>Qh,cached:()=>kd,captureStackTrace:()=>Jc,cleanEnum:()=>$G,cleanRegex:()=>Td,clone:()=>$n,createTransparentProxy:()=>AG,defineLazy:()=>Bt,esc:()=>Ma,escapeRegex:()=>Po,extend:()=>EG,finalizeIssue:()=>pi,floatSafeRemainder:()=>Xh,getElementAtPath:()=>SG,getEnumValues:()=>wd,getLengthableOrigin:()=>Ad,getParsedType:()=>TG,getSizableOrigin:()=>_x,isObject:()=>Vs,isPlainObject:()=>Hs,issue:()=>i_,joinValues:()=>Kc,jsonStringifyReplacer:()=>Yh,merge:()=>PG,normalizeParams:()=>je,nullish:()=>xd,numKeys:()=>xG,omit:()=>CG,optionalKeys:()=>r_,partial:()=>RG,pick:()=>OG,prefixIssues:()=>ji,primitiveTypes:()=>px,promiseAllObject:()=>wG,propertyKeyTypes:()=>t_,randomString:()=>kG,required:()=>IG,stringifyPrimitive:()=>Yc,unwrapMessage:()=>Sd});function _G(e){return e}function gG(e){return e}function yG(e){}function bG(e){throw new Error}function vG(e){}function wd(e){let t=Object.values(e).filter(n=>typeof n=="number");return Object.entries(e).filter(([n,i])=>t.indexOf(+n)===-1).map(([n,i])=>i)}function Kc(e,t="|"){return e.map(r=>Yc(r)).join(t)}function Yh(e,t){return typeof t=="bigint"?t.toString():t}function kd(e){return{get value(){{let r=e();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function xd(e){return e==null}function Td(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Xh(e,t){let r=(e.toString().split(".")[1]||"").length,n=(t.toString().split(".")[1]||"").length,i=r>n?r:n,o=Number.parseInt(e.toFixed(i).replace(".","")),a=Number.parseInt(t.toFixed(i).replace(".",""));return o%a/10**i}function Bt(e,t,r){Object.defineProperty(e,t,{get(){{let i=r();return e[t]=i,i}throw new Error("cached value already set")},set(i){Object.defineProperty(e,t,{value:i})},configurable:!0})}function Qh(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function SG(e,t){return t?t.reduce((r,n)=>r?.[n],e):e}function wG(e){let t=Object.keys(e),r=t.map(n=>e[n]);return Promise.all(r).then(n=>{let i={};for(let o=0;o<t.length;o++)i[t[o]]=n[o];return i})}function kG(e=10){let t="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<e;n++)r+=t[Math.floor(Math.random()*t.length)];return r}function Ma(e){return JSON.stringify(e)}var Jc=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{};function Vs(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var e_=kd(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let e=Function;return new e(""),!0}catch{return!1}});function Hs(e){if(Vs(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;let r=t.prototype;return!(Vs(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function xG(e){let t=0;for(let r in e)Object.prototype.hasOwnProperty.call(e,r)&&t++;return t}var TG=e=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(e)?"array":e===null?"null":e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?"promise":typeof Map<"u"&&e instanceof Map?"map":typeof Set<"u"&&e instanceof Set?"set":typeof Date<"u"&&e instanceof Date?"date":typeof File<"u"&&e instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${t}`)}},t_=new Set(["string","number","symbol"]),px=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Po(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function $n(e,t,r){let n=new e._zod.constr(t??e._zod.def);return(!t||r?.parent)&&(n._zod.parent=e),n}function je(e){let t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function AG(e){let t;return new Proxy({},{get(r,n,i){return t??(t=e()),Reflect.get(t,n,i)},set(r,n,i,o){return t??(t=e()),Reflect.set(t,n,i,o)},has(r,n){return t??(t=e()),Reflect.has(t,n)},deleteProperty(r,n){return t??(t=e()),Reflect.deleteProperty(t,n)},ownKeys(r){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(r,n){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,n)},defineProperty(r,n,i){return t??(t=e()),Reflect.defineProperty(t,n,i)}})}function Yc(e){return typeof e=="bigint"?e.toString()+"n":typeof e=="string"?`"${e}"`:`${e}`}function r_(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var n_={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},hx={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function OG(e,t){let r={},n=e._zod.def;for(let i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&(r[i]=n.shape[i])}return $n(e,{...e._zod.def,shape:r,checks:[]})}function CG(e,t){let r={...e._zod.def.shape},n=e._zod.def;for(let i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&delete r[i]}return $n(e,{...e._zod.def,shape:r,checks:[]})}function EG(e,t){if(!Hs(t))throw new Error("Invalid input to extend: expected a plain object");let r={...e._zod.def,get shape(){let n={...e._zod.def.shape,...t};return Qh(this,"shape",n),n},checks:[]};return $n(e,r)}function PG(e,t){return $n(e,{...e._zod.def,get shape(){let r={...e._zod.def.shape,...t._zod.def.shape};return Qh(this,"shape",r),r},catchall:t._zod.def.catchall,checks:[]})}function RG(e,t,r){let n=t._zod.def.shape,i={...n};if(r)for(let o in r){if(!(o in n))throw new Error(`Unrecognized key: "${o}"`);r[o]&&(i[o]=e?new e({type:"optional",innerType:n[o]}):n[o])}else for(let o in n)i[o]=e?new e({type:"optional",innerType:n[o]}):n[o];return $n(t,{...t._zod.def,shape:i,checks:[]})}function IG(e,t,r){let n=t._zod.def.shape,i={...n};if(r)for(let o in r){if(!(o in i))throw new Error(`Unrecognized key: "${o}"`);r[o]&&(i[o]=new e({type:"nonoptional",innerType:n[o]}))}else for(let o in n)i[o]=new e({type:"nonoptional",innerType:n[o]});return $n(t,{...t._zod.def,shape:i,checks:[]})}function ja(e,t=0){for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function ji(e,t){return t.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function Sd(e){return typeof e=="string"?e:e?.message}function pi(e,t,r){let n={...e,path:e.path??[]};if(!e.message){let i=Sd(e.inst?._zod.def?.error?.(e))??Sd(t?.error?.(e))??Sd(r.customError?.(e))??Sd(r.localeError?.(e))??"Invalid input";n.message=i}return delete n.inst,delete n.continue,t?.reportInput||delete n.input,n}function _x(e){return e instanceof Set?"set":e instanceof Map?"map":e instanceof File?"file":"unknown"}function Ad(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function i_(...e){let[t,r,n]=e;return typeof t=="string"?{message:t,code:"custom",input:r,inst:n}:{...t}}function $G(e){return Object.entries(e).filter(([t,r])=>Number.isNaN(Number.parseInt(t,10))).map(t=>t[1])}var Jh=class{constructor(...t){}};var gx=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),Object.defineProperty(e,"message",{get(){return JSON.stringify(t,Yh,2)},enumerable:!0}),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Xc=z("$ZodError",gx),Od=z("$ZodError",gx,{Parent:Error});function o_(e,t=r=>r.message){let r={},n=[];for(let i of e.issues)i.path.length>0?(r[i.path[0]]=r[i.path[0]]||[],r[i.path[0]].push(t(i))):n.push(t(i));return{formErrors:n,fieldErrors:r}}function a_(e,t){let r=t||function(o){return o.message},n={_errors:[]},i=o=>{for(let a of o.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(s=>i({issues:s}));else if(a.code==="invalid_key")i({issues:a.issues});else if(a.code==="invalid_element")i({issues:a.issues});else if(a.path.length===0)n._errors.push(r(a));else{let s=n,l=0;for(;l<a.path.length;){let d=a.path[l];l===a.path.length-1?(s[d]=s[d]||{_errors:[]},s[d]._errors.push(r(a))):s[d]=s[d]||{_errors:[]},s=s[d],l++}}};return i(e),n}var s_=e=>(t,r,n,i)=>{let o=n?Object.assign(n,{async:!1}):{async:!1},a=t._zod.run({value:r,issues:[]},o);if(a instanceof Promise)throw new ao;if(a.issues.length){let s=new(i?.Err??e)(a.issues.map(l=>pi(l,o,In())));throw Jc(s,i?.callee),s}return a.value},l_=s_(Od),d_=e=>async(t,r,n,i)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},a=t._zod.run({value:r,issues:[]},o);if(a instanceof Promise&&(a=await a),a.issues.length){let s=new(i?.Err??e)(a.issues.map(l=>pi(l,o,In())));throw Jc(s,i?.callee),s}return a.value},u_=d_(Od),c_=e=>(t,r,n)=>{let i=n?{...n,async:!1}:{async:!1},o=t._zod.run({value:r,issues:[]},i);if(o instanceof Promise)throw new ao;return o.issues.length?{success:!1,error:new(e??Xc)(o.issues.map(a=>pi(a,i,In())))}:{success:!0,data:o.value}},za=c_(Od),f_=e=>async(t,r,n)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},o=t._zod.run({value:r,issues:[]},i);return o instanceof Promise&&(o=await o),o.issues.length?{success:!1,error:new e(o.issues.map(a=>pi(a,i,In())))}:{success:!0,data:o.value}},Na=f_(Od);var yx=/^[cC][^\s-]{8,}$/,bx=/^[0-9a-z]+$/,vx=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Sx=/^[0-9a-vA-V]{20}$/,wx=/^[A-Za-z0-9]{27}$/,kx=/^[a-zA-Z0-9_-]{21}$/,xx=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Tx=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,m_=e=>e?new 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)$/;var Ax=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var jG="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Ox(){return new RegExp(jG,"u")}var Cx=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ex=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,Px=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Rx=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Ix=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,p_=/^[A-Za-z0-9_-]*$/,$x=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Mx=/^\+(?:[0-9]){6,14}[0-9]$/,jx="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",zx=new RegExp(`^${jx}$`);function Nx(e){let t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Gx(e){return new RegExp(`^${Nx(e)}$`)}function Fx(e){let t=Nx({precision:e.precision}),r=["Z"];e.local&&r.push(""),e.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${t}(?:${r.join("|")})`;return new RegExp(`^${jx}T(?:${n})$`)}var Dx=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var qx=/^\d+$/,Lx=/^-?\d+(?:\.\d+)?/i,Ux=/true|false/i,Wx=/null/i;var Zx=/^[^A-Z]*$/,Vx=/^[^a-z]*$/;var qr=z("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),Hx={number:"number",bigint:"bigint",object:"date"},h_=z("$ZodCheckLessThan",(e,t)=>{qr.init(e,t);let r=Hx[typeof t.value];e._zod.onattach.push(n=>{let i=n._zod.bag,o=(t.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<o&&(t.inclusive?i.maximum=t.value:i.exclusiveMaximum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value<=t.value:n.value<t.value)||n.issues.push({origin:r,code:"too_big",maximum:t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),__=z("$ZodCheckGreaterThan",(e,t)=>{qr.init(e,t);let r=Hx[typeof t.value];e._zod.onattach.push(n=>{let i=n._zod.bag,o=(t.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>o&&(t.inclusive?i.minimum=t.value:i.exclusiveMinimum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value>=t.value:n.value>t.value)||n.issues.push({origin:r,code:"too_small",minimum:t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Bx=z("$ZodCheckMultipleOf",(e,t)=>{qr.init(e,t),e._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=r=>{if(typeof r.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%t.value===BigInt(0):Xh(r.value,t.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),Kx=z("$ZodCheckNumberFormat",(e,t)=>{qr.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[i,o]=n_[t.format];e._zod.onattach.push(a=>{let s=a._zod.bag;s.format=t.format,s.minimum=i,s.maximum=o,r&&(s.pattern=qx)}),e._zod.check=a=>{let s=a.value;if(r){if(!Number.isInteger(s)){a.issues.push({expected:n,format:t.format,code:"invalid_type",input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?a.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,continue:!t.abort}):a.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,continue:!t.abort});return}}s<i&&a.issues.push({origin:"number",input:s,code:"too_small",minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>o&&a.issues.push({origin:"number",input:s,code:"too_big",maximum:o,inst:e})}});var Jx=z("$ZodCheckMaxLength",(e,t)=>{var r;qr.init(e,t),(r=e._zod.def).when??(r.when=n=>{let i=n.value;return!xd(i)&&i.length!==void 0}),e._zod.onattach.push(n=>{let i=n._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<i&&(n._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let i=n.value;if(i.length<=t.maximum)return;let a=Ad(i);n.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Yx=z("$ZodCheckMinLength",(e,t)=>{var r;qr.init(e,t),(r=e._zod.def).when??(r.when=n=>{let i=n.value;return!xd(i)&&i.length!==void 0}),e._zod.onattach.push(n=>{let i=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>i&&(n._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let i=n.value;if(i.length>=t.minimum)return;let a=Ad(i);n.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Xx=z("$ZodCheckLengthEquals",(e,t)=>{var r;qr.init(e,t),(r=e._zod.def).when??(r.when=n=>{let i=n.value;return!xd(i)&&i.length!==void 0}),e._zod.onattach.push(n=>{let i=n._zod.bag;i.minimum=t.length,i.maximum=t.length,i.length=t.length}),e._zod.check=n=>{let i=n.value,o=i.length;if(o===t.length)return;let a=Ad(i),s=o>t.length;n.issues.push({origin:a,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Cd=z("$ZodCheckStringFormat",(e,t)=>{var r,n;qr.init(e,t),e._zod.onattach.push(i=>{let o=i._zod.bag;o.format=t.format,t.pattern&&(o.patterns??(o.patterns=new Set),o.patterns.add(t.pattern))}),t.pattern?(r=e._zod).check??(r.check=i=>{t.pattern.lastIndex=0,!t.pattern.test(i.value)&&i.issues.push({origin:"string",code:"invalid_format",format:t.format,input:i.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(n=e._zod).check??(n.check=()=>{})}),Qx=z("$ZodCheckRegex",(e,t)=>{Cd.init(e,t),e._zod.check=r=>{t.pattern.lastIndex=0,!t.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),eT=z("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Zx),Cd.init(e,t)}),tT=z("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Vx),Cd.init(e,t)}),rT=z("$ZodCheckIncludes",(e,t)=>{qr.init(e,t);let r=Po(t.includes),n=new RegExp(typeof t.position=="number"?`^.{${t.position}}${r}`:r);t.pattern=n,e._zod.onattach.push(i=>{let o=i._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=i=>{i.value.includes(t.includes,t.position)||i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:i.value,inst:e,continue:!t.abort})}}),nT=z("$ZodCheckStartsWith",(e,t)=>{qr.init(e,t);let r=new RegExp(`^${Po(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),iT=z("$ZodCheckEndsWith",(e,t)=>{qr.init(e,t);let r=new RegExp(`.*${Po(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});var oT=z("$ZodCheckOverwrite",(e,t)=>{qr.init(e,t),e._zod.check=r=>{r.value=t.tx(r.value)}});var ef=class{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}let n=t.split(`
|
|
290
290
|
`).filter(a=>a),i=Math.min(...n.map(a=>a.length-a.trimStart().length)),o=n.map(a=>a.slice(i)).map(a=>" ".repeat(this.indent*2)+a);for(let a of o)this.content.push(a)}compile(){let t=Function,r=this?.args,i=[...(this?.content??[""]).map(o=>` ${o}`)];return new t(...r,i.join(`
|
|
291
|
-
`))}};var sT={major:4,minor:0,patch:0};var Mt=z("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=sT;let n=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&n.unshift(e);for(let i of n)for(let o of i._zod.onattach)o(e);if(n.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let i=(o,a,s)=>{let l=ja(o),d;for(let u of a){if(u._zod.def.when){if(!u._zod.def.when(o))continue}else if(l)continue;let c=o.issues.length,f=u._zod.check(o);if(f instanceof Promise&&s?.async===!1)throw new ao;if(d||f instanceof Promise)d=(d??Promise.resolve()).then(async()=>{await f,o.issues.length!==c&&(l||(l=ja(o,c)))});else{if(o.issues.length===c)continue;l||(l=ja(o,c))}}return d?d.then(()=>o):o};e._zod.run=(o,a)=>{let s=e._zod.parse(o,a);if(s instanceof Promise){if(a.async===!1)throw new ao;return s.then(l=>i(l,n,a))}return i(s,n,a)}}e["~standard"]={validate:i=>{try{let o=za(e,i);return o.success?{value:o.data}:{issues:o.error?.issues}}catch{return Na(e,i).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}}),Ed=z("$ZodString",(e,t)=>{Mt.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Dx(e._zod.bag),e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),
|
|
291
|
+
`))}};var sT={major:4,minor:0,patch:0};var Mt=z("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=sT;let n=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&n.unshift(e);for(let i of n)for(let o of i._zod.onattach)o(e);if(n.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let i=(o,a,s)=>{let l=ja(o),d;for(let u of a){if(u._zod.def.when){if(!u._zod.def.when(o))continue}else if(l)continue;let c=o.issues.length,f=u._zod.check(o);if(f instanceof Promise&&s?.async===!1)throw new ao;if(d||f instanceof Promise)d=(d??Promise.resolve()).then(async()=>{await f,o.issues.length!==c&&(l||(l=ja(o,c)))});else{if(o.issues.length===c)continue;l||(l=ja(o,c))}}return d?d.then(()=>o):o};e._zod.run=(o,a)=>{let s=e._zod.parse(o,a);if(s instanceof Promise){if(a.async===!1)throw new ao;return s.then(l=>i(l,n,a))}return i(s,n,a)}}e["~standard"]={validate:i=>{try{let o=za(e,i);return o.success?{value:o.data}:{issues:o.error?.issues}}catch{return Na(e,i).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}}),Ed=z("$ZodString",(e,t)=>{Mt.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Dx(e._zod.bag),e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),Kt=z("$ZodStringFormat",(e,t)=>{Cd.init(e,t),Ed.init(e,t)}),y_=z("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Tx),Kt.init(e,t)}),b_=z("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=m_(n))}else t.pattern??(t.pattern=m_());Kt.init(e,t)}),v_=z("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Ax),Kt.init(e,t)}),S_=z("$ZodURL",(e,t)=>{Kt.init(e,t),e._zod.check=r=>{try{let n=r.value,i=new URL(n),o=i.href;t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:$x.source,input:r.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort})),!n.endsWith("/")&&o.endsWith("/")?r.value=o.slice(0,-1):r.value=o;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),w_=z("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Ox()),Kt.init(e,t)}),k_=z("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=kx),Kt.init(e,t)}),x_=z("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=yx),Kt.init(e,t)}),T_=z("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=bx),Kt.init(e,t)}),A_=z("$ZodULID",(e,t)=>{t.pattern??(t.pattern=vx),Kt.init(e,t)}),O_=z("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Sx),Kt.init(e,t)}),C_=z("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=wx),Kt.init(e,t)}),gT=z("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Fx(t)),Kt.init(e,t)}),yT=z("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=zx),Kt.init(e,t)}),bT=z("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Gx(t)),Kt.init(e,t)}),vT=z("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=xx),Kt.init(e,t)}),E_=z("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Cx),Kt.init(e,t),e._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),P_=z("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Ex),Kt.init(e,t),e._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),e._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}}}),R_=z("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Px),Kt.init(e,t)}),I_=z("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Rx),Kt.init(e,t),e._zod.check=r=>{let[n,i]=r.value.split("/");try{if(!i)throw new Error;let o=Number(i);if(`${o}`!==i)throw new Error;if(o<0||o>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}}});function ST(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var $_=z("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Ix),Kt.init(e,t),e._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),e._zod.check=r=>{ST(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function zG(e){if(!p_.test(e))return!1;let t=e.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return ST(r)}var M_=z("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=p_),Kt.init(e,t),e._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),e._zod.check=r=>{zG(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),j_=z("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Mx),Kt.init(e,t)});function NG(e,t=null){try{let r=e.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let i=JSON.parse(atob(n));return!("typ"in i&&i?.typ!=="JWT"||!i.alg||t&&(!("alg"in i)||i.alg!==t))}catch{return!1}}var z_=z("$ZodJWT",(e,t)=>{Kt.init(e,t),e._zod.check=r=>{NG(r.value,t.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var rf=z("$ZodNumber",(e,t)=>{Mt.init(e,t),e._zod.pattern=e._zod.bag.pattern??Lx,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Number(r.value)}catch{}let i=r.value;if(typeof i=="number"&&!Number.isNaN(i)&&Number.isFinite(i))return r;let o=typeof i=="number"?Number.isNaN(i)?"NaN":Number.isFinite(i)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:i,inst:e,...o?{received:o}:{}}),r}}),N_=z("$ZodNumber",(e,t)=>{Kx.init(e,t),rf.init(e,t)}),G_=z("$ZodBoolean",(e,t)=>{Mt.init(e,t),e._zod.pattern=Ux,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=!!r.value}catch{}let i=r.value;return typeof i=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:e}),r}});var F_=z("$ZodNull",(e,t)=>{Mt.init(e,t),e._zod.pattern=Wx,e._zod.values=new Set([null]),e._zod.parse=(r,n)=>{let i=r.value;return i===null||r.issues.push({expected:"null",code:"invalid_type",input:i,inst:e}),r}});var D_=z("$ZodUnknown",(e,t)=>{Mt.init(e,t),e._zod.parse=r=>r}),q_=z("$ZodNever",(e,t)=>{Mt.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function lT(e,t,r){e.issues.length&&t.issues.push(...ji(r,e.issues)),t.value[r]=e.value}var L_=z("$ZodArray",(e,t)=>{Mt.init(e,t),e._zod.parse=(r,n)=>{let i=r.value;if(!Array.isArray(i))return r.issues.push({expected:"array",code:"invalid_type",input:i,inst:e}),r;r.value=Array(i.length);let o=[];for(let a=0;a<i.length;a++){let s=i[a],l=t.element._zod.run({value:s,issues:[]},n);l instanceof Promise?o.push(l.then(d=>lT(d,r,a))):lT(l,r,a)}return o.length?Promise.all(o).then(()=>r):r}});function tf(e,t,r){e.issues.length&&t.issues.push(...ji(r,e.issues)),t.value[r]=e.value}function dT(e,t,r,n){e.issues.length?n[r]===void 0?r in n?t.value[r]=void 0:t.value[r]=e.value:t.issues.push(...ji(r,e.issues)):e.value===void 0?r in n&&(t.value[r]=void 0):t.value[r]=e.value}var nf=z("$ZodObject",(e,t)=>{Mt.init(e,t);let r=kd(()=>{let c=Object.keys(t.shape);for(let p of c)if(!(t.shape[p]instanceof Mt))throw new Error(`Invalid element at key "${p}": expected a Zod schema`);let f=r_(t.shape);return{shape:t.shape,keys:c,keySet:new Set(c),numKeys:c.length,optionalKeys:new Set(f)}});Bt(e._zod,"propValues",()=>{let c=t.shape,f={};for(let p in c){let m=c[p]._zod;if(m.values){f[p]??(f[p]=new Set);for(let h of m.values)f[p].add(h)}}return f});let n=c=>{let f=new ef(["shape","payload","ctx"]),p=r.value,m=b=>{let y=Ma(b);return`shape[${y}]._zod.run({ value: input[${y}], issues: [] }, ctx)`};f.write("const input = payload.value;");let h=Object.create(null),_=0;for(let b of p.keys)h[b]=`key_${_++}`;f.write("const newResult = {}");for(let b of p.keys)if(p.optionalKeys.has(b)){let y=h[b];f.write(`const ${y} = ${m(b)};`);let v=Ma(b);f.write(`
|
|
292
292
|
if (${y}.issues.length) {
|
|
293
293
|
if (input[${v}] === undefined) {
|
|
294
294
|
if (${v} in input) {
|
|
@@ -311,61 +311,61 @@ args = `+dx(e.args)+`
|
|
|
311
311
|
if (${y}.issues.length) payload.issues = payload.issues.concat(${y}.issues.map(iss => ({
|
|
312
312
|
...iss,
|
|
313
313
|
path: iss.path ? [${Ma(b)}, ...iss.path] : [${Ma(b)}]
|
|
314
|
-
})));`),f.write(`newResult[${Ma(b)}] = ${y}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let g=f.compile();return(b,y)=>g(c,b,y)},i,o=Vs,a=!Bc.jitless,l=a&&e_.value,d=t.catchall,u;e._zod.parse=(c,f)=>{u??(u=r.value);let p=c.value;if(!o(p))return c.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),c;let m=[];if(a&&l&&f?.async===!1&&f.jitless!==!0)i||(i=n(t.shape)),c=i(c,f);else{c.value={};let y=u.shape;for(let v of u.keys){let S=y[v],A=S._zod.run({value:p[v],issues:[]},f),R=S._zod.optin==="optional"&&S._zod.optout==="optional";A instanceof Promise?m.push(A.then(W=>R?dT(W,c,v,p):tf(W,c,v))):R?dT(A,c,v,p):tf(A,c,v)}}if(!d)return m.length?Promise.all(m).then(()=>c):c;let h=[],_=u.keySet,g=d._zod,b=g.def.type;for(let y of Object.keys(p)){if(_.has(y))continue;if(b==="never"){h.push(y);continue}let v=g.run({value:p[y],issues:[]},f);v instanceof Promise?m.push(v.then(S=>tf(S,c,y))):tf(v,c,y)}return h.length&&c.issues.push({code:"unrecognized_keys",keys:h,input:p,inst:e}),m.length?Promise.all(m).then(()=>c):c}});function uT(e,t,r,n){for(let i of e)if(i.issues.length===0)return t.value=i.value,t;return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(i=>i.issues.map(o=>pi(o,n,In())))}),t}var of=z("$ZodUnion",(e,t)=>{Mt.init(e,t),Ht(e._zod,"optin",()=>t.options.some(r=>r._zod.optin==="optional")?"optional":void 0),Ht(e._zod,"optout",()=>t.options.some(r=>r._zod.optout==="optional")?"optional":void 0),Ht(e._zod,"values",()=>{if(t.options.every(r=>r._zod.values))return new Set(t.options.flatMap(r=>Array.from(r._zod.values)))}),Ht(e._zod,"pattern",()=>{if(t.options.every(r=>r._zod.pattern)){let r=t.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>Td(n.source)).join("|")})$`)}}),e._zod.parse=(r,n)=>{let i=!1,o=[];for(let a of t.options){let s=a._zod.run({value:r.value,issues:[]},n);if(s instanceof Promise)o.push(s),i=!0;else{if(s.issues.length===0)return s;o.push(s)}}return i?Promise.all(o).then(a=>uT(a,r,e,n)):uT(o,r,e,n)}}),U_=z("$ZodDiscriminatedUnion",(e,t)=>{of.init(e,t);let r=e._zod.parse;Ht(e._zod,"propValues",()=>{let i={};for(let o of t.options){let a=o._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(o)}"`);for(let[s,l]of Object.entries(a)){i[s]||(i[s]=new Set);for(let d of l)i[s].add(d)}}return i});let n=kd(()=>{let i=t.options,o=new Map;for(let a of i){let s=a._zod.propValues[t.discriminator];if(!s||s.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(a)}"`);for(let l of s){if(o.has(l))throw new Error(`Duplicate discriminator value "${String(l)}"`);o.set(l,a)}}return o});e._zod.parse=(i,o)=>{let a=i.value;if(!Vs(a))return i.issues.push({code:"invalid_type",expected:"object",input:a,inst:e}),i;let s=n.value.get(a?.[t.discriminator]);return s?s._zod.run(i,o):t.unionFallback?r(i,o):(i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:a,path:[t.discriminator],inst:e}),i)}}),W_=z("$ZodIntersection",(e,t)=>{Mt.init(e,t),e._zod.parse=(r,n)=>{let i=r.value,o=t.left._zod.run({value:i,issues:[]},n),a=t.right._zod.run({value:i,issues:[]},n);return o instanceof Promise||a instanceof Promise?Promise.all([o,a]).then(([l,d])=>cT(r,l,d)):cT(r,o,a)}});function g_(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Hs(e)&&Hs(t)){let r=Object.keys(t),n=Object.keys(e).filter(o=>r.indexOf(o)!==-1),i={...e,...t};for(let o of n){let a=g_(e[o],t[o]);if(!a.valid)return{valid:!1,mergeErrorPath:[o,...a.mergeErrorPath]};i[o]=a.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<e.length;n++){let i=e[n],o=t[n],a=g_(i,o);if(!a.valid)return{valid:!1,mergeErrorPath:[n,...a.mergeErrorPath]};r.push(a.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function cT(e,t,r){if(t.issues.length&&e.issues.push(...t.issues),r.issues.length&&e.issues.push(...r.issues),ja(e))return e;let n=g_(t.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return e.value=n.data,e}var Z_=z("$ZodRecord",(e,t)=>{Mt.init(e,t),e._zod.parse=(r,n)=>{let i=r.value;if(!Hs(i))return r.issues.push({expected:"record",code:"invalid_type",input:i,inst:e}),r;let o=[];if(t.keyType._zod.values){let a=t.keyType._zod.values;r.value={};for(let l of a)if(typeof l=="string"||typeof l=="number"||typeof l=="symbol"){let d=t.valueType._zod.run({value:i[l],issues:[]},n);d instanceof Promise?o.push(d.then(u=>{u.issues.length&&r.issues.push(...ji(l,u.issues)),r.value[l]=u.value})):(d.issues.length&&r.issues.push(...ji(l,d.issues)),r.value[l]=d.value)}let s;for(let l in i)a.has(l)||(s=s??[],s.push(l));s&&s.length>0&&r.issues.push({code:"unrecognized_keys",input:i,inst:e,keys:s})}else{r.value={};for(let a of Reflect.ownKeys(i)){if(a==="__proto__")continue;let s=t.keyType._zod.run({value:a,issues:[]},n);if(s instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(s.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:s.issues.map(d=>pi(d,n,In())),input:a,path:[a],inst:e}),r.value[s.value]=s.value;continue}let l=t.valueType._zod.run({value:i[a],issues:[]},n);l instanceof Promise?o.push(l.then(d=>{d.issues.length&&r.issues.push(...ji(a,d.issues)),r.value[s.value]=d.value})):(l.issues.length&&r.issues.push(...ji(a,l.issues)),r.value[s.value]=l.value)}}return o.length?Promise.all(o).then(()=>r):r}});var V_=z("$ZodEnum",(e,t)=>{Mt.init(e,t);let r=wd(t.entries);e._zod.values=new Set(r),e._zod.pattern=new RegExp(`^(${r.filter(n=>t_.has(typeof n)).map(n=>typeof n=="string"?Po(n):n.toString()).join("|")})$`),e._zod.parse=(n,i)=>{let o=n.value;return e._zod.values.has(o)||n.issues.push({code:"invalid_value",values:r,input:o,inst:e}),n}}),H_=z("$ZodLiteral",(e,t)=>{Mt.init(e,t),e._zod.values=new Set(t.values),e._zod.pattern=new RegExp(`^(${t.values.map(r=>typeof r=="string"?Po(r):r?r.toString():String(r)).join("|")})$`),e._zod.parse=(r,n)=>{let i=r.value;return e._zod.values.has(i)||r.issues.push({code:"invalid_value",values:t.values,input:i,inst:e}),r}});var B_=z("$ZodTransform",(e,t)=>{Mt.init(e,t),e._zod.parse=(r,n)=>{let i=t.transform(r.value,r);if(n.async)return(i instanceof Promise?i:Promise.resolve(i)).then(a=>(r.value=a,r));if(i instanceof Promise)throw new ao;return r.value=i,r}}),K_=z("$ZodOptional",(e,t)=>{Mt.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Ht(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Ht(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${Td(r.source)})?$`):void 0}),e._zod.parse=(r,n)=>t.innerType._zod.optin==="optional"?t.innerType._zod.run(r,n):r.value===void 0?r:t.innerType._zod.run(r,n)}),J_=z("$ZodNullable",(e,t)=>{Mt.init(e,t),Ht(e._zod,"optin",()=>t.innerType._zod.optin),Ht(e._zod,"optout",()=>t.innerType._zod.optout),Ht(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${Td(r.source)}|null)$`):void 0}),Ht(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>r.value===null?r:t.innerType._zod.run(r,n)}),Y_=z("$ZodDefault",(e,t)=>{Mt.init(e,t),e._zod.optin="optional",Ht(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=t.defaultValue,r;let i=t.innerType._zod.run(r,n);return i instanceof Promise?i.then(o=>fT(o,t)):fT(i,t)}});function fT(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var X_=z("$ZodPrefault",(e,t)=>{Mt.init(e,t),e._zod.optin="optional",Ht(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>(r.value===void 0&&(r.value=t.defaultValue),t.innerType._zod.run(r,n))}),Q_=z("$ZodNonOptional",(e,t)=>{Mt.init(e,t),Ht(e._zod,"values",()=>{let r=t.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),e._zod.parse=(r,n)=>{let i=t.innerType._zod.run(r,n);return i instanceof Promise?i.then(o=>mT(o,e)):mT(i,e)}});function mT(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}var eg=z("$ZodCatch",(e,t)=>{Mt.init(e,t),e._zod.optin="optional",Ht(e._zod,"optout",()=>t.innerType._zod.optout),Ht(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{let i=t.innerType._zod.run(r,n);return i instanceof Promise?i.then(o=>(r.value=o.value,o.issues.length&&(r.value=t.catchValue({...r,error:{issues:o.issues.map(a=>pi(a,n,In()))},input:r.value}),r.issues=[]),r)):(r.value=i.value,i.issues.length&&(r.value=t.catchValue({...r,error:{issues:i.issues.map(o=>pi(o,n,In()))},input:r.value}),r.issues=[]),r)}});var tg=z("$ZodPipe",(e,t)=>{Mt.init(e,t),Ht(e._zod,"values",()=>t.in._zod.values),Ht(e._zod,"optin",()=>t.in._zod.optin),Ht(e._zod,"optout",()=>t.out._zod.optout),e._zod.parse=(r,n)=>{let i=t.in._zod.run(r,n);return i instanceof Promise?i.then(o=>pT(o,t,n)):pT(i,t,n)}});function pT(e,t,r){return ja(e)?e:t.out._zod.run({value:e.value,issues:e.issues},r)}var rg=z("$ZodReadonly",(e,t)=>{Mt.init(e,t),Ht(e._zod,"propValues",()=>t.innerType._zod.propValues),Ht(e._zod,"values",()=>t.innerType._zod.values),Ht(e._zod,"optin",()=>t.innerType._zod.optin),Ht(e._zod,"optout",()=>t.innerType._zod.optout),e._zod.parse=(r,n)=>{let i=t.innerType._zod.run(r,n);return i instanceof Promise?i.then(hT):hT(i)}});function hT(e){return e.value=Object.freeze(e.value),e}var ng=z("$ZodCustom",(e,t)=>{qr.init(e,t),Mt.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=r=>{let n=r.value,i=t.fn(n);if(i instanceof Promise)return i.then(o=>_T(o,r,n,e));_T(i,r,n,e)}});function _T(e,t,r,n){if(!e){let i={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(i.params=n._zod.def.params),t.issues.push(i_(i))}}var NG=e=>{let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"NaN":"number";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return t},GG=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function t(n){return e[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${NG(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Yc(n.values[0])}`:`Invalid option: expected one of ${Kc(n.values,"|")}`;case"too_big":{let i=n.inclusive?"<=":"<",o=t(n.origin);return o?`Too big: expected ${n.origin??"value"} to have ${i}${n.maximum.toString()} ${o.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${i}${n.maximum.toString()}`}case"too_small":{let i=n.inclusive?">=":">",o=t(n.origin);return o?`Too small: expected ${n.origin} to have ${i}${n.minimum.toString()} ${o.unit}`:`Too small: expected ${n.origin} to be ${i}${n.minimum.toString()}`}case"invalid_format":{let i=n;return i.format==="starts_with"?`Invalid string: must start with "${i.prefix}"`:i.format==="ends_with"?`Invalid string: must end with "${i.suffix}"`:i.format==="includes"?`Invalid string: must include "${i.includes}"`:i.format==="regex"?`Invalid string: must match pattern ${i.pattern}`:`Invalid ${r[i.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${Kc(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function wT(){return{localeError:GG()}}var Pd=class{constructor(){this._map=new Map,this._idmap=new Map}add(t,...r){let n=r[0];if(this._map.set(t,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,t)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(t){let r=this._map.get(t);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(t),this}get(t){let r=t._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(t)}}return this._map.get(t)}has(t){return this._map.has(t)}};function kT(){return new Pd}var Ro=kT();function ig(e,t){return new e({type:"string",...je(t)})}function og(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...je(t)})}function af(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...je(t)})}function ag(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...je(t)})}function sg(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...je(t)})}function lg(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...je(t)})}function dg(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...je(t)})}function ug(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...je(t)})}function cg(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...je(t)})}function fg(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...je(t)})}function mg(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...je(t)})}function pg(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...je(t)})}function hg(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...je(t)})}function _g(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...je(t)})}function gg(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...je(t)})}function yg(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...je(t)})}function bg(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...je(t)})}function vg(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...je(t)})}function Sg(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...je(t)})}function wg(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...je(t)})}function kg(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...je(t)})}function xg(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...je(t)})}function Tg(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...je(t)})}function xT(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...je(t)})}function TT(e,t){return new e({type:"string",format:"date",check:"string_format",...je(t)})}function AT(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...je(t)})}function OT(e,t){return new e({type:"string",format:"duration",check:"string_format",...je(t)})}function Ag(e,t){return new e({type:"number",checks:[],...je(t)})}function Og(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...je(t)})}function Cg(e,t){return new e({type:"boolean",...je(t)})}function Eg(e,t){return new e({type:"null",...je(t)})}function Pg(e){return new e({type:"unknown"})}function Rg(e,t){return new e({type:"never",...je(t)})}function sf(e,t){return new h_({check:"less_than",...je(t),value:e,inclusive:!1})}function Rd(e,t){return new h_({check:"less_than",...je(t),value:e,inclusive:!0})}function lf(e,t){return new __({check:"greater_than",...je(t),value:e,inclusive:!1})}function Id(e,t){return new __({check:"greater_than",...je(t),value:e,inclusive:!0})}function df(e,t){return new Bx({check:"multiple_of",...je(t),value:e})}function uf(e,t){return new Jx({check:"max_length",...je(t),maximum:e})}function Bs(e,t){return new Yx({check:"min_length",...je(t),minimum:e})}function cf(e,t){return new Xx({check:"length_equals",...je(t),length:e})}function Ig(e,t){return new Qx({check:"string_format",format:"regex",...je(t),pattern:e})}function $g(e){return new eT({check:"string_format",format:"lowercase",...je(e)})}function Mg(e){return new tT({check:"string_format",format:"uppercase",...je(e)})}function jg(e,t){return new rT({check:"string_format",format:"includes",...je(t),includes:e})}function zg(e,t){return new nT({check:"string_format",format:"starts_with",...je(t),prefix:e})}function Ng(e,t){return new iT({check:"string_format",format:"ends_with",...je(t),suffix:e})}function Ga(e){return new oT({check:"overwrite",tx:e})}function Gg(e){return Ga(t=>t.normalize(e))}function Fg(){return Ga(e=>e.trim())}function Dg(){return Ga(e=>e.toLowerCase())}function qg(){return Ga(e=>e.toUpperCase())}function CT(e,t,r){return new e({type:"array",element:t,...je(r)})}function Lg(e,t,r){let n=je(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function Ug(e,t,r){return new e({type:"custom",check:"custom",fn:t,...je(r)})}var ff=class{constructor(t){this.counter=0,this.metadataRegistry=t?.metadata??Ro,this.target=t?.target??"draft-2020-12",this.unrepresentable=t?.unrepresentable??"throw",this.override=t?.override??(()=>{}),this.io=t?.io??"output",this.seen=new Map}process(t,r={path:[],schemaPath:[]}){var n;let i=t._zod.def,o={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},a=this.seen.get(t);if(a)return a.count++,r.schemaPath.includes(t)&&(a.cycle=r.path),a.schema;let s={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(t,s);let l=t._zod.toJSONSchema?.();if(l)s.schema=l;else{let c={...r,schemaPath:[...r.schemaPath,t],path:r.path},f=t._zod.parent;if(f)s.ref=f,this.process(f,c),this.seen.get(f).isParent=!0;else{let p=s.schema;switch(i.type){case"string":{let m=p;m.type="string";let{minimum:h,maximum:_,format:g,patterns:b,contentEncoding:y}=t._zod.bag;if(typeof h=="number"&&(m.minLength=h),typeof _=="number"&&(m.maxLength=_),g&&(m.format=o[g]??g,m.format===""&&delete m.format),y&&(m.contentEncoding=y),b&&b.size>0){let v=[...b];v.length===1?m.pattern=v[0].source:v.length>1&&(s.schema.allOf=[...v.map(S=>({...this.target==="draft-7"?{type:"string"}:{},pattern:S.source}))])}break}case"number":{let m=p,{minimum:h,maximum:_,format:g,multipleOf:b,exclusiveMaximum:y,exclusiveMinimum:v}=t._zod.bag;typeof g=="string"&&g.includes("int")?m.type="integer":m.type="number",typeof v=="number"&&(m.exclusiveMinimum=v),typeof h=="number"&&(m.minimum=h,typeof v=="number"&&(v>=h?delete m.minimum:delete m.exclusiveMinimum)),typeof y=="number"&&(m.exclusiveMaximum=y),typeof _=="number"&&(m.maximum=_,typeof y=="number"&&(y<=_?delete m.maximum:delete m.exclusiveMaximum)),typeof b=="number"&&(m.multipleOf=b);break}case"boolean":{let m=p;m.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{p.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{p.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let m=p,{minimum:h,maximum:_}=t._zod.bag;typeof h=="number"&&(m.minItems=h),typeof _=="number"&&(m.maxItems=_),m.type="array",m.items=this.process(i.element,{...c,path:[...c.path,"items"]});break}case"object":{let m=p;m.type="object",m.properties={};let h=i.shape;for(let b in h)m.properties[b]=this.process(h[b],{...c,path:[...c.path,"properties",b]});let _=new Set(Object.keys(h)),g=new Set([..._].filter(b=>{let y=i.shape[b]._zod;return this.io==="input"?y.optin===void 0:y.optout===void 0}));g.size>0&&(m.required=Array.from(g)),i.catchall?._zod.def.type==="never"?m.additionalProperties=!1:i.catchall?i.catchall&&(m.additionalProperties=this.process(i.catchall,{...c,path:[...c.path,"additionalProperties"]})):this.io==="output"&&(m.additionalProperties=!1);break}case"union":{let m=p;m.anyOf=i.options.map((h,_)=>this.process(h,{...c,path:[...c.path,"anyOf",_]}));break}case"intersection":{let m=p,h=this.process(i.left,{...c,path:[...c.path,"allOf",0]}),_=this.process(i.right,{...c,path:[...c.path,"allOf",1]}),g=y=>"allOf"in y&&Object.keys(y).length===1,b=[...g(h)?h.allOf:[h],...g(_)?_.allOf:[_]];m.allOf=b;break}case"tuple":{let m=p;m.type="array";let h=i.items.map((b,y)=>this.process(b,{...c,path:[...c.path,"prefixItems",y]}));if(this.target==="draft-2020-12"?m.prefixItems=h:m.items=h,i.rest){let b=this.process(i.rest,{...c,path:[...c.path,"items"]});this.target==="draft-2020-12"?m.items=b:m.additionalItems=b}i.rest&&(m.items=this.process(i.rest,{...c,path:[...c.path,"items"]}));let{minimum:_,maximum:g}=t._zod.bag;typeof _=="number"&&(m.minItems=_),typeof g=="number"&&(m.maxItems=g);break}case"record":{let m=p;m.type="object",m.propertyNames=this.process(i.keyType,{...c,path:[...c.path,"propertyNames"]}),m.additionalProperties=this.process(i.valueType,{...c,path:[...c.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let m=p,h=wd(i.entries);h.every(_=>typeof _=="number")&&(m.type="number"),h.every(_=>typeof _=="string")&&(m.type="string"),m.enum=h;break}case"literal":{let m=p,h=[];for(let _ of i.values)if(_===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof _=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(_))}else h.push(_);if(h.length!==0)if(h.length===1){let _=h[0];m.type=_===null?"null":typeof _,m.const=_}else h.every(_=>typeof _=="number")&&(m.type="number"),h.every(_=>typeof _=="string")&&(m.type="string"),h.every(_=>typeof _=="boolean")&&(m.type="string"),h.every(_=>_===null)&&(m.type="null"),m.enum=h;break}case"file":{let m=p,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:_,maximum:g,mime:b}=t._zod.bag;_!==void 0&&(h.minLength=_),g!==void 0&&(h.maxLength=g),b?b.length===1?(h.contentMediaType=b[0],Object.assign(m,h)):m.anyOf=b.map(y=>({...h,contentMediaType:y})):Object.assign(m,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let m=this.process(i.innerType,c);p.anyOf=[m,{type:"null"}];break}case"nonoptional":{this.process(i.innerType,c),s.ref=i.innerType;break}case"success":{let m=p;m.type="boolean";break}case"default":{this.process(i.innerType,c),s.ref=i.innerType,p.default=JSON.parse(JSON.stringify(i.defaultValue));break}case"prefault":{this.process(i.innerType,c),s.ref=i.innerType,this.io==="input"&&(p._prefault=JSON.parse(JSON.stringify(i.defaultValue)));break}case"catch":{this.process(i.innerType,c),s.ref=i.innerType;let m;try{m=i.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}p.default=m;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let m=p,h=t._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");m.type="string",m.pattern=h.source;break}case"pipe":{let m=this.io==="input"?i.in._zod.def.type==="transform"?i.out:i.in:i.out;this.process(m,c),s.ref=m;break}case"readonly":{this.process(i.innerType,c),s.ref=i.innerType,p.readOnly=!0;break}case"promise":{this.process(i.innerType,c),s.ref=i.innerType;break}case"optional":{this.process(i.innerType,c),s.ref=i.innerType;break}case"lazy":{let m=t._zod.innerType;this.process(m,c),s.ref=m;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let d=this.metadataRegistry.get(t);return d&&Object.assign(s.schema,d),this.io==="input"&&$r(t)&&(delete s.schema.examples,delete s.schema.default),this.io==="input"&&s.schema._prefault&&((n=s.schema).default??(n.default=s.schema._prefault)),delete s.schema._prefault,this.seen.get(t).schema}emit(t,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},i=this.seen.get(t);if(!i)throw new Error("Unprocessed schema. This is a bug in Zod.");let o=u=>{let c=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(u[0])?.id,_=n.external.uri??(b=>b);if(h)return{ref:_(h)};let g=u[1].defId??u[1].schema.id??`schema${this.counter++}`;return u[1].defId=g,{defId:g,ref:`${_("__shared")}#/${c}/${g}`}}if(u[1]===i)return{ref:"#"};let p=`#/${c}/`,m=u[1].schema.id??`__schema${this.counter++}`;return{defId:m,ref:p+m}},a=u=>{if(u[1].schema.$ref)return;let c=u[1],{ref:f,defId:p}=o(u);c.def={...c.schema},p&&(c.defId=p);let m=c.schema;for(let h in m)delete m[h];m.$ref=f};if(n.cycles==="throw")for(let u of this.seen.entries()){let c=u[1];if(c.cycle)throw new Error(`Cycle detected: #/${c.cycle?.join("/")}/<root>
|
|
314
|
+
})));`),f.write(`newResult[${Ma(b)}] = ${y}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let g=f.compile();return(b,y)=>g(c,b,y)},i,o=Vs,a=!Bc.jitless,l=a&&e_.value,d=t.catchall,u;e._zod.parse=(c,f)=>{u??(u=r.value);let p=c.value;if(!o(p))return c.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),c;let m=[];if(a&&l&&f?.async===!1&&f.jitless!==!0)i||(i=n(t.shape)),c=i(c,f);else{c.value={};let y=u.shape;for(let v of u.keys){let S=y[v],A=S._zod.run({value:p[v],issues:[]},f),R=S._zod.optin==="optional"&&S._zod.optout==="optional";A instanceof Promise?m.push(A.then(W=>R?dT(W,c,v,p):tf(W,c,v))):R?dT(A,c,v,p):tf(A,c,v)}}if(!d)return m.length?Promise.all(m).then(()=>c):c;let h=[],_=u.keySet,g=d._zod,b=g.def.type;for(let y of Object.keys(p)){if(_.has(y))continue;if(b==="never"){h.push(y);continue}let v=g.run({value:p[y],issues:[]},f);v instanceof Promise?m.push(v.then(S=>tf(S,c,y))):tf(v,c,y)}return h.length&&c.issues.push({code:"unrecognized_keys",keys:h,input:p,inst:e}),m.length?Promise.all(m).then(()=>c):c}});function uT(e,t,r,n){for(let i of e)if(i.issues.length===0)return t.value=i.value,t;return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(i=>i.issues.map(o=>pi(o,n,In())))}),t}var of=z("$ZodUnion",(e,t)=>{Mt.init(e,t),Bt(e._zod,"optin",()=>t.options.some(r=>r._zod.optin==="optional")?"optional":void 0),Bt(e._zod,"optout",()=>t.options.some(r=>r._zod.optout==="optional")?"optional":void 0),Bt(e._zod,"values",()=>{if(t.options.every(r=>r._zod.values))return new Set(t.options.flatMap(r=>Array.from(r._zod.values)))}),Bt(e._zod,"pattern",()=>{if(t.options.every(r=>r._zod.pattern)){let r=t.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>Td(n.source)).join("|")})$`)}}),e._zod.parse=(r,n)=>{let i=!1,o=[];for(let a of t.options){let s=a._zod.run({value:r.value,issues:[]},n);if(s instanceof Promise)o.push(s),i=!0;else{if(s.issues.length===0)return s;o.push(s)}}return i?Promise.all(o).then(a=>uT(a,r,e,n)):uT(o,r,e,n)}}),U_=z("$ZodDiscriminatedUnion",(e,t)=>{of.init(e,t);let r=e._zod.parse;Bt(e._zod,"propValues",()=>{let i={};for(let o of t.options){let a=o._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(o)}"`);for(let[s,l]of Object.entries(a)){i[s]||(i[s]=new Set);for(let d of l)i[s].add(d)}}return i});let n=kd(()=>{let i=t.options,o=new Map;for(let a of i){let s=a._zod.propValues[t.discriminator];if(!s||s.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(a)}"`);for(let l of s){if(o.has(l))throw new Error(`Duplicate discriminator value "${String(l)}"`);o.set(l,a)}}return o});e._zod.parse=(i,o)=>{let a=i.value;if(!Vs(a))return i.issues.push({code:"invalid_type",expected:"object",input:a,inst:e}),i;let s=n.value.get(a?.[t.discriminator]);return s?s._zod.run(i,o):t.unionFallback?r(i,o):(i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:a,path:[t.discriminator],inst:e}),i)}}),W_=z("$ZodIntersection",(e,t)=>{Mt.init(e,t),e._zod.parse=(r,n)=>{let i=r.value,o=t.left._zod.run({value:i,issues:[]},n),a=t.right._zod.run({value:i,issues:[]},n);return o instanceof Promise||a instanceof Promise?Promise.all([o,a]).then(([l,d])=>cT(r,l,d)):cT(r,o,a)}});function g_(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Hs(e)&&Hs(t)){let r=Object.keys(t),n=Object.keys(e).filter(o=>r.indexOf(o)!==-1),i={...e,...t};for(let o of n){let a=g_(e[o],t[o]);if(!a.valid)return{valid:!1,mergeErrorPath:[o,...a.mergeErrorPath]};i[o]=a.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<e.length;n++){let i=e[n],o=t[n],a=g_(i,o);if(!a.valid)return{valid:!1,mergeErrorPath:[n,...a.mergeErrorPath]};r.push(a.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function cT(e,t,r){if(t.issues.length&&e.issues.push(...t.issues),r.issues.length&&e.issues.push(...r.issues),ja(e))return e;let n=g_(t.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return e.value=n.data,e}var Z_=z("$ZodRecord",(e,t)=>{Mt.init(e,t),e._zod.parse=(r,n)=>{let i=r.value;if(!Hs(i))return r.issues.push({expected:"record",code:"invalid_type",input:i,inst:e}),r;let o=[];if(t.keyType._zod.values){let a=t.keyType._zod.values;r.value={};for(let l of a)if(typeof l=="string"||typeof l=="number"||typeof l=="symbol"){let d=t.valueType._zod.run({value:i[l],issues:[]},n);d instanceof Promise?o.push(d.then(u=>{u.issues.length&&r.issues.push(...ji(l,u.issues)),r.value[l]=u.value})):(d.issues.length&&r.issues.push(...ji(l,d.issues)),r.value[l]=d.value)}let s;for(let l in i)a.has(l)||(s=s??[],s.push(l));s&&s.length>0&&r.issues.push({code:"unrecognized_keys",input:i,inst:e,keys:s})}else{r.value={};for(let a of Reflect.ownKeys(i)){if(a==="__proto__")continue;let s=t.keyType._zod.run({value:a,issues:[]},n);if(s instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(s.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:s.issues.map(d=>pi(d,n,In())),input:a,path:[a],inst:e}),r.value[s.value]=s.value;continue}let l=t.valueType._zod.run({value:i[a],issues:[]},n);l instanceof Promise?o.push(l.then(d=>{d.issues.length&&r.issues.push(...ji(a,d.issues)),r.value[s.value]=d.value})):(l.issues.length&&r.issues.push(...ji(a,l.issues)),r.value[s.value]=l.value)}}return o.length?Promise.all(o).then(()=>r):r}});var V_=z("$ZodEnum",(e,t)=>{Mt.init(e,t);let r=wd(t.entries);e._zod.values=new Set(r),e._zod.pattern=new RegExp(`^(${r.filter(n=>t_.has(typeof n)).map(n=>typeof n=="string"?Po(n):n.toString()).join("|")})$`),e._zod.parse=(n,i)=>{let o=n.value;return e._zod.values.has(o)||n.issues.push({code:"invalid_value",values:r,input:o,inst:e}),n}}),H_=z("$ZodLiteral",(e,t)=>{Mt.init(e,t),e._zod.values=new Set(t.values),e._zod.pattern=new RegExp(`^(${t.values.map(r=>typeof r=="string"?Po(r):r?r.toString():String(r)).join("|")})$`),e._zod.parse=(r,n)=>{let i=r.value;return e._zod.values.has(i)||r.issues.push({code:"invalid_value",values:t.values,input:i,inst:e}),r}});var B_=z("$ZodTransform",(e,t)=>{Mt.init(e,t),e._zod.parse=(r,n)=>{let i=t.transform(r.value,r);if(n.async)return(i instanceof Promise?i:Promise.resolve(i)).then(a=>(r.value=a,r));if(i instanceof Promise)throw new ao;return r.value=i,r}}),K_=z("$ZodOptional",(e,t)=>{Mt.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Bt(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Bt(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${Td(r.source)})?$`):void 0}),e._zod.parse=(r,n)=>t.innerType._zod.optin==="optional"?t.innerType._zod.run(r,n):r.value===void 0?r:t.innerType._zod.run(r,n)}),J_=z("$ZodNullable",(e,t)=>{Mt.init(e,t),Bt(e._zod,"optin",()=>t.innerType._zod.optin),Bt(e._zod,"optout",()=>t.innerType._zod.optout),Bt(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${Td(r.source)}|null)$`):void 0}),Bt(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>r.value===null?r:t.innerType._zod.run(r,n)}),Y_=z("$ZodDefault",(e,t)=>{Mt.init(e,t),e._zod.optin="optional",Bt(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=t.defaultValue,r;let i=t.innerType._zod.run(r,n);return i instanceof Promise?i.then(o=>fT(o,t)):fT(i,t)}});function fT(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var X_=z("$ZodPrefault",(e,t)=>{Mt.init(e,t),e._zod.optin="optional",Bt(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>(r.value===void 0&&(r.value=t.defaultValue),t.innerType._zod.run(r,n))}),Q_=z("$ZodNonOptional",(e,t)=>{Mt.init(e,t),Bt(e._zod,"values",()=>{let r=t.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),e._zod.parse=(r,n)=>{let i=t.innerType._zod.run(r,n);return i instanceof Promise?i.then(o=>mT(o,e)):mT(i,e)}});function mT(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}var eg=z("$ZodCatch",(e,t)=>{Mt.init(e,t),e._zod.optin="optional",Bt(e._zod,"optout",()=>t.innerType._zod.optout),Bt(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{let i=t.innerType._zod.run(r,n);return i instanceof Promise?i.then(o=>(r.value=o.value,o.issues.length&&(r.value=t.catchValue({...r,error:{issues:o.issues.map(a=>pi(a,n,In()))},input:r.value}),r.issues=[]),r)):(r.value=i.value,i.issues.length&&(r.value=t.catchValue({...r,error:{issues:i.issues.map(o=>pi(o,n,In()))},input:r.value}),r.issues=[]),r)}});var tg=z("$ZodPipe",(e,t)=>{Mt.init(e,t),Bt(e._zod,"values",()=>t.in._zod.values),Bt(e._zod,"optin",()=>t.in._zod.optin),Bt(e._zod,"optout",()=>t.out._zod.optout),e._zod.parse=(r,n)=>{let i=t.in._zod.run(r,n);return i instanceof Promise?i.then(o=>pT(o,t,n)):pT(i,t,n)}});function pT(e,t,r){return ja(e)?e:t.out._zod.run({value:e.value,issues:e.issues},r)}var rg=z("$ZodReadonly",(e,t)=>{Mt.init(e,t),Bt(e._zod,"propValues",()=>t.innerType._zod.propValues),Bt(e._zod,"values",()=>t.innerType._zod.values),Bt(e._zod,"optin",()=>t.innerType._zod.optin),Bt(e._zod,"optout",()=>t.innerType._zod.optout),e._zod.parse=(r,n)=>{let i=t.innerType._zod.run(r,n);return i instanceof Promise?i.then(hT):hT(i)}});function hT(e){return e.value=Object.freeze(e.value),e}var ng=z("$ZodCustom",(e,t)=>{qr.init(e,t),Mt.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=r=>{let n=r.value,i=t.fn(n);if(i instanceof Promise)return i.then(o=>_T(o,r,n,e));_T(i,r,n,e)}});function _T(e,t,r,n){if(!e){let i={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(i.params=n._zod.def.params),t.issues.push(i_(i))}}var GG=e=>{let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"NaN":"number";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return t},FG=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function t(n){return e[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${GG(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Yc(n.values[0])}`:`Invalid option: expected one of ${Kc(n.values,"|")}`;case"too_big":{let i=n.inclusive?"<=":"<",o=t(n.origin);return o?`Too big: expected ${n.origin??"value"} to have ${i}${n.maximum.toString()} ${o.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${i}${n.maximum.toString()}`}case"too_small":{let i=n.inclusive?">=":">",o=t(n.origin);return o?`Too small: expected ${n.origin} to have ${i}${n.minimum.toString()} ${o.unit}`:`Too small: expected ${n.origin} to be ${i}${n.minimum.toString()}`}case"invalid_format":{let i=n;return i.format==="starts_with"?`Invalid string: must start with "${i.prefix}"`:i.format==="ends_with"?`Invalid string: must end with "${i.suffix}"`:i.format==="includes"?`Invalid string: must include "${i.includes}"`:i.format==="regex"?`Invalid string: must match pattern ${i.pattern}`:`Invalid ${r[i.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${Kc(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function wT(){return{localeError:FG()}}var Pd=class{constructor(){this._map=new Map,this._idmap=new Map}add(t,...r){let n=r[0];if(this._map.set(t,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,t)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(t){let r=this._map.get(t);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(t),this}get(t){let r=t._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(t)}}return this._map.get(t)}has(t){return this._map.has(t)}};function kT(){return new Pd}var Ro=kT();function ig(e,t){return new e({type:"string",...je(t)})}function og(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...je(t)})}function af(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...je(t)})}function ag(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...je(t)})}function sg(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...je(t)})}function lg(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...je(t)})}function dg(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...je(t)})}function ug(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...je(t)})}function cg(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...je(t)})}function fg(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...je(t)})}function mg(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...je(t)})}function pg(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...je(t)})}function hg(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...je(t)})}function _g(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...je(t)})}function gg(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...je(t)})}function yg(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...je(t)})}function bg(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...je(t)})}function vg(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...je(t)})}function Sg(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...je(t)})}function wg(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...je(t)})}function kg(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...je(t)})}function xg(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...je(t)})}function Tg(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...je(t)})}function xT(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...je(t)})}function TT(e,t){return new e({type:"string",format:"date",check:"string_format",...je(t)})}function AT(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...je(t)})}function OT(e,t){return new e({type:"string",format:"duration",check:"string_format",...je(t)})}function Ag(e,t){return new e({type:"number",checks:[],...je(t)})}function Og(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...je(t)})}function Cg(e,t){return new e({type:"boolean",...je(t)})}function Eg(e,t){return new e({type:"null",...je(t)})}function Pg(e){return new e({type:"unknown"})}function Rg(e,t){return new e({type:"never",...je(t)})}function sf(e,t){return new h_({check:"less_than",...je(t),value:e,inclusive:!1})}function Rd(e,t){return new h_({check:"less_than",...je(t),value:e,inclusive:!0})}function lf(e,t){return new __({check:"greater_than",...je(t),value:e,inclusive:!1})}function Id(e,t){return new __({check:"greater_than",...je(t),value:e,inclusive:!0})}function df(e,t){return new Bx({check:"multiple_of",...je(t),value:e})}function uf(e,t){return new Jx({check:"max_length",...je(t),maximum:e})}function Bs(e,t){return new Yx({check:"min_length",...je(t),minimum:e})}function cf(e,t){return new Xx({check:"length_equals",...je(t),length:e})}function Ig(e,t){return new Qx({check:"string_format",format:"regex",...je(t),pattern:e})}function $g(e){return new eT({check:"string_format",format:"lowercase",...je(e)})}function Mg(e){return new tT({check:"string_format",format:"uppercase",...je(e)})}function jg(e,t){return new rT({check:"string_format",format:"includes",...je(t),includes:e})}function zg(e,t){return new nT({check:"string_format",format:"starts_with",...je(t),prefix:e})}function Ng(e,t){return new iT({check:"string_format",format:"ends_with",...je(t),suffix:e})}function Ga(e){return new oT({check:"overwrite",tx:e})}function Gg(e){return Ga(t=>t.normalize(e))}function Fg(){return Ga(e=>e.trim())}function Dg(){return Ga(e=>e.toLowerCase())}function qg(){return Ga(e=>e.toUpperCase())}function CT(e,t,r){return new e({type:"array",element:t,...je(r)})}function Lg(e,t,r){let n=je(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function Ug(e,t,r){return new e({type:"custom",check:"custom",fn:t,...je(r)})}var ff=class{constructor(t){this.counter=0,this.metadataRegistry=t?.metadata??Ro,this.target=t?.target??"draft-2020-12",this.unrepresentable=t?.unrepresentable??"throw",this.override=t?.override??(()=>{}),this.io=t?.io??"output",this.seen=new Map}process(t,r={path:[],schemaPath:[]}){var n;let i=t._zod.def,o={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},a=this.seen.get(t);if(a)return a.count++,r.schemaPath.includes(t)&&(a.cycle=r.path),a.schema;let s={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(t,s);let l=t._zod.toJSONSchema?.();if(l)s.schema=l;else{let c={...r,schemaPath:[...r.schemaPath,t],path:r.path},f=t._zod.parent;if(f)s.ref=f,this.process(f,c),this.seen.get(f).isParent=!0;else{let p=s.schema;switch(i.type){case"string":{let m=p;m.type="string";let{minimum:h,maximum:_,format:g,patterns:b,contentEncoding:y}=t._zod.bag;if(typeof h=="number"&&(m.minLength=h),typeof _=="number"&&(m.maxLength=_),g&&(m.format=o[g]??g,m.format===""&&delete m.format),y&&(m.contentEncoding=y),b&&b.size>0){let v=[...b];v.length===1?m.pattern=v[0].source:v.length>1&&(s.schema.allOf=[...v.map(S=>({...this.target==="draft-7"?{type:"string"}:{},pattern:S.source}))])}break}case"number":{let m=p,{minimum:h,maximum:_,format:g,multipleOf:b,exclusiveMaximum:y,exclusiveMinimum:v}=t._zod.bag;typeof g=="string"&&g.includes("int")?m.type="integer":m.type="number",typeof v=="number"&&(m.exclusiveMinimum=v),typeof h=="number"&&(m.minimum=h,typeof v=="number"&&(v>=h?delete m.minimum:delete m.exclusiveMinimum)),typeof y=="number"&&(m.exclusiveMaximum=y),typeof _=="number"&&(m.maximum=_,typeof y=="number"&&(y<=_?delete m.maximum:delete m.exclusiveMaximum)),typeof b=="number"&&(m.multipleOf=b);break}case"boolean":{let m=p;m.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{p.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{p.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let m=p,{minimum:h,maximum:_}=t._zod.bag;typeof h=="number"&&(m.minItems=h),typeof _=="number"&&(m.maxItems=_),m.type="array",m.items=this.process(i.element,{...c,path:[...c.path,"items"]});break}case"object":{let m=p;m.type="object",m.properties={};let h=i.shape;for(let b in h)m.properties[b]=this.process(h[b],{...c,path:[...c.path,"properties",b]});let _=new Set(Object.keys(h)),g=new Set([..._].filter(b=>{let y=i.shape[b]._zod;return this.io==="input"?y.optin===void 0:y.optout===void 0}));g.size>0&&(m.required=Array.from(g)),i.catchall?._zod.def.type==="never"?m.additionalProperties=!1:i.catchall?i.catchall&&(m.additionalProperties=this.process(i.catchall,{...c,path:[...c.path,"additionalProperties"]})):this.io==="output"&&(m.additionalProperties=!1);break}case"union":{let m=p;m.anyOf=i.options.map((h,_)=>this.process(h,{...c,path:[...c.path,"anyOf",_]}));break}case"intersection":{let m=p,h=this.process(i.left,{...c,path:[...c.path,"allOf",0]}),_=this.process(i.right,{...c,path:[...c.path,"allOf",1]}),g=y=>"allOf"in y&&Object.keys(y).length===1,b=[...g(h)?h.allOf:[h],...g(_)?_.allOf:[_]];m.allOf=b;break}case"tuple":{let m=p;m.type="array";let h=i.items.map((b,y)=>this.process(b,{...c,path:[...c.path,"prefixItems",y]}));if(this.target==="draft-2020-12"?m.prefixItems=h:m.items=h,i.rest){let b=this.process(i.rest,{...c,path:[...c.path,"items"]});this.target==="draft-2020-12"?m.items=b:m.additionalItems=b}i.rest&&(m.items=this.process(i.rest,{...c,path:[...c.path,"items"]}));let{minimum:_,maximum:g}=t._zod.bag;typeof _=="number"&&(m.minItems=_),typeof g=="number"&&(m.maxItems=g);break}case"record":{let m=p;m.type="object",m.propertyNames=this.process(i.keyType,{...c,path:[...c.path,"propertyNames"]}),m.additionalProperties=this.process(i.valueType,{...c,path:[...c.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let m=p,h=wd(i.entries);h.every(_=>typeof _=="number")&&(m.type="number"),h.every(_=>typeof _=="string")&&(m.type="string"),m.enum=h;break}case"literal":{let m=p,h=[];for(let _ of i.values)if(_===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof _=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(_))}else h.push(_);if(h.length!==0)if(h.length===1){let _=h[0];m.type=_===null?"null":typeof _,m.const=_}else h.every(_=>typeof _=="number")&&(m.type="number"),h.every(_=>typeof _=="string")&&(m.type="string"),h.every(_=>typeof _=="boolean")&&(m.type="string"),h.every(_=>_===null)&&(m.type="null"),m.enum=h;break}case"file":{let m=p,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:_,maximum:g,mime:b}=t._zod.bag;_!==void 0&&(h.minLength=_),g!==void 0&&(h.maxLength=g),b?b.length===1?(h.contentMediaType=b[0],Object.assign(m,h)):m.anyOf=b.map(y=>({...h,contentMediaType:y})):Object.assign(m,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let m=this.process(i.innerType,c);p.anyOf=[m,{type:"null"}];break}case"nonoptional":{this.process(i.innerType,c),s.ref=i.innerType;break}case"success":{let m=p;m.type="boolean";break}case"default":{this.process(i.innerType,c),s.ref=i.innerType,p.default=JSON.parse(JSON.stringify(i.defaultValue));break}case"prefault":{this.process(i.innerType,c),s.ref=i.innerType,this.io==="input"&&(p._prefault=JSON.parse(JSON.stringify(i.defaultValue)));break}case"catch":{this.process(i.innerType,c),s.ref=i.innerType;let m;try{m=i.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}p.default=m;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let m=p,h=t._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");m.type="string",m.pattern=h.source;break}case"pipe":{let m=this.io==="input"?i.in._zod.def.type==="transform"?i.out:i.in:i.out;this.process(m,c),s.ref=m;break}case"readonly":{this.process(i.innerType,c),s.ref=i.innerType,p.readOnly=!0;break}case"promise":{this.process(i.innerType,c),s.ref=i.innerType;break}case"optional":{this.process(i.innerType,c),s.ref=i.innerType;break}case"lazy":{let m=t._zod.innerType;this.process(m,c),s.ref=m;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let d=this.metadataRegistry.get(t);return d&&Object.assign(s.schema,d),this.io==="input"&&$r(t)&&(delete s.schema.examples,delete s.schema.default),this.io==="input"&&s.schema._prefault&&((n=s.schema).default??(n.default=s.schema._prefault)),delete s.schema._prefault,this.seen.get(t).schema}emit(t,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},i=this.seen.get(t);if(!i)throw new Error("Unprocessed schema. This is a bug in Zod.");let o=u=>{let c=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(u[0])?.id,_=n.external.uri??(b=>b);if(h)return{ref:_(h)};let g=u[1].defId??u[1].schema.id??`schema${this.counter++}`;return u[1].defId=g,{defId:g,ref:`${_("__shared")}#/${c}/${g}`}}if(u[1]===i)return{ref:"#"};let p=`#/${c}/`,m=u[1].schema.id??`__schema${this.counter++}`;return{defId:m,ref:p+m}},a=u=>{if(u[1].schema.$ref)return;let c=u[1],{ref:f,defId:p}=o(u);c.def={...c.schema},p&&(c.defId=p);let m=c.schema;for(let h in m)delete m[h];m.$ref=f};if(n.cycles==="throw")for(let u of this.seen.entries()){let c=u[1];if(c.cycle)throw new Error(`Cycle detected: #/${c.cycle?.join("/")}/<root>
|
|
315
315
|
|
|
316
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let u of this.seen.entries()){let c=u[1];if(t===u[0]){a(u);continue}if(n.external){let p=n.external.registry.get(u[0])?.id;if(t!==u[0]&&p){a(u);continue}}if(this.metadataRegistry.get(u[0])?.id){a(u);continue}if(c.cycle){a(u);continue}if(c.count>1&&n.reused==="ref"){a(u);continue}}let s=(u,c)=>{let f=this.seen.get(u),p=f.def??f.schema,m={...p};if(f.ref===null)return;let h=f.ref;if(f.ref=null,h){s(h,c);let _=this.seen.get(h).schema;_.$ref&&c.target==="draft-7"?(p.allOf=p.allOf??[],p.allOf.push(_)):(Object.assign(p,_),Object.assign(p,m))}f.isParent||this.override({zodSchema:u,jsonSchema:p,path:f.path??[]})};for(let u of[...this.seen.entries()].reverse())s(u[0],{target:this.target});let l={};if(this.target==="draft-2020-12"?l.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?l.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let u=n.external.registry.get(t)?.id;if(!u)throw new Error("Schema is missing an `id` property");l.$id=n.external.uri(u)}Object.assign(l,i.def);let d=n.external?.defs??{};for(let u of this.seen.entries()){let c=u[1];c.def&&c.defId&&(d[c.defId]=c.def)}n.external||Object.keys(d).length>0&&(this.target==="draft-2020-12"?l.$defs=d:l.definitions=d);try{return JSON.parse(JSON.stringify(l))}catch{throw new Error("Error converting schema to JSON.")}}};function Wg(e,t){if(e instanceof Pd){let n=new ff(t),i={};for(let s of e._idmap.entries()){let[l,d]=s;n.process(d)}let o={},a={registry:e,uri:t?.uri,defs:i};for(let s of e._idmap.entries()){let[l,d]=s;o[l]=n.emit(d,{...t,external:a})}if(Object.keys(i).length>0){let s=n.target==="draft-2020-12"?"$defs":"definitions";o.__shared={[s]:i}}return{schemas:o}}let r=new ff(t);return r.process(e),r.emit(e,t)}function $r(e,t){let r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);let i=e._zod.def;switch(i.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":return!1;case"array":return $r(i.element,r);case"object":{for(let o in i.shape)if($r(i.shape[o],r))return!0;return!1}case"union":{for(let o of i.options)if($r(o,r))return!0;return!1}case"intersection":return $r(i.left,r)||$r(i.right,r);case"tuple":{for(let o of i.items)if($r(o,r))return!0;return!!(i.rest&&$r(i.rest,r))}case"record":return $r(i.keyType,r)||$r(i.valueType,r);case"map":return $r(i.keyType,r)||$r(i.valueType,r);case"set":return $r(i.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return $r(i.innerType,r);case"lazy":return $r(i.getter(),r);case"default":return $r(i.innerType,r);case"prefault":return $r(i.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return $r(i.in,r)||$r(i.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${i.type}`)}var $d={};Gp($d,{ZodISODate:()=>RT,ZodISODateTime:()=>PT,ZodISODuration:()=>$T,ZodISOTime:()=>IT,date:()=>Vg,datetime:()=>Zg,duration:()=>Bg,time:()=>Hg});var PT=z("ZodISODateTime",(e,t)=>{gT.init(e,t),lr.init(e,t)});function Zg(e){return xT(PT,e)}var RT=z("ZodISODate",(e,t)=>{yT.init(e,t),lr.init(e,t)});function Vg(e){return TT(RT,e)}var IT=z("ZodISOTime",(e,t)=>{bT.init(e,t),lr.init(e,t)});function Hg(e){return AT(IT,e)}var $T=z("ZodISODuration",(e,t)=>{vT.init(e,t),lr.init(e,t)});function Bg(e){return OT($T,e)}var MT=(e,t)=>{Xc.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:r=>a_(e,r)},flatten:{value:r=>o_(e,r)},addIssue:{value:r=>e.issues.push(r)},addIssues:{value:r=>e.issues.push(...r)},isEmpty:{get(){return e.issues.length===0}}})},Z7=z("ZodError",MT),Md=z("ZodError",MT,{Parent:Error});var jT=s_(Md),zT=d_(Md),NT=c_(Md),GT=f_(Md);var _r=z("ZodType",(e,t)=>(Mt.init(e,t),e.def=t,Object.defineProperty(e,"_def",{value:t}),e.check=(...r)=>e.clone({...t,checks:[...t.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),e.clone=(r,n)=>$n(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e)),e.parse=(r,n)=>jT(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>NT(e,r,n),e.parseAsync=async(r,n)=>zT(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>GT(e,r,n),e.spa=e.safeParseAsync,e.refine=(r,n)=>e.check(mD(r,n)),e.superRefine=r=>e.check(pD(r)),e.overwrite=r=>e.check(Ga(r)),e.optional=()=>ur(e),e.nullable=()=>qT(e),e.nullish=()=>ur(qT(e)),e.nonoptional=r=>aD(e,r),e.array=()=>gt(e),e.or=r=>rr([e,r]),e.and=r=>pf(e,r),e.transform=r=>Jg(e,HT(r)),e.default=r=>nD(e,r),e.prefault=r=>oD(e,r),e.catch=r=>lD(e,r),e.pipe=r=>Jg(e,r),e.readonly=()=>cD(e),e.describe=r=>{let n=e.clone();return Ro.add(n,{description:r}),n},Object.defineProperty(e,"description",{get(){return Ro.get(e)?.description},configurable:!0}),e.meta=(...r)=>{if(r.length===0)return Ro.get(e);let n=e.clone();return Ro.add(n,r[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),LT=z("_ZodString",(e,t)=>{Ed.init(e,t),_r.init(e,t);let r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,e.regex=(...n)=>e.check(Ig(...n)),e.includes=(...n)=>e.check(jg(...n)),e.startsWith=(...n)=>e.check(zg(...n)),e.endsWith=(...n)=>e.check(Ng(...n)),e.min=(...n)=>e.check(Bs(...n)),e.max=(...n)=>e.check(uf(...n)),e.length=(...n)=>e.check(cf(...n)),e.nonempty=(...n)=>e.check(Bs(1,...n)),e.lowercase=n=>e.check($g(n)),e.uppercase=n=>e.check(Mg(n)),e.trim=()=>e.check(Fg()),e.normalize=(...n)=>e.check(Gg(...n)),e.toLowerCase=()=>e.check(Dg()),e.toUpperCase=()=>e.check(qg())}),TF=z("ZodString",(e,t)=>{Ed.init(e,t),LT.init(e,t),e.email=r=>e.check(og(AF,r)),e.url=r=>e.check(ug(OF,r)),e.jwt=r=>e.check(Tg(LF,r)),e.emoji=r=>e.check(cg(CF,r)),e.guid=r=>e.check(af(FT,r)),e.uuid=r=>e.check(ag(mf,r)),e.uuidv4=r=>e.check(sg(mf,r)),e.uuidv6=r=>e.check(lg(mf,r)),e.uuidv7=r=>e.check(dg(mf,r)),e.nanoid=r=>e.check(fg(EF,r)),e.guid=r=>e.check(af(FT,r)),e.cuid=r=>e.check(mg(PF,r)),e.cuid2=r=>e.check(pg(RF,r)),e.ulid=r=>e.check(hg(IF,r)),e.base64=r=>e.check(wg(FF,r)),e.base64url=r=>e.check(kg(DF,r)),e.xid=r=>e.check(_g($F,r)),e.ksuid=r=>e.check(gg(MF,r)),e.ipv4=r=>e.check(yg(jF,r)),e.ipv6=r=>e.check(bg(zF,r)),e.cidrv4=r=>e.check(vg(NF,r)),e.cidrv6=r=>e.check(Sg(GF,r)),e.e164=r=>e.check(xg(qF,r)),e.datetime=r=>e.check(Zg(r)),e.date=r=>e.check(Vg(r)),e.time=r=>e.check(Hg(r)),e.duration=r=>e.check(Bg(r))});function $(e){return ig(TF,e)}var lr=z("ZodStringFormat",(e,t)=>{Bt.init(e,t),LT.init(e,t)}),AF=z("ZodEmail",(e,t)=>{v_.init(e,t),lr.init(e,t)});var FT=z("ZodGUID",(e,t)=>{y_.init(e,t),lr.init(e,t)});var mf=z("ZodUUID",(e,t)=>{b_.init(e,t),lr.init(e,t)});var OF=z("ZodURL",(e,t)=>{S_.init(e,t),lr.init(e,t)});var CF=z("ZodEmoji",(e,t)=>{w_.init(e,t),lr.init(e,t)});var EF=z("ZodNanoID",(e,t)=>{k_.init(e,t),lr.init(e,t)});var PF=z("ZodCUID",(e,t)=>{x_.init(e,t),lr.init(e,t)});var RF=z("ZodCUID2",(e,t)=>{T_.init(e,t),lr.init(e,t)});var IF=z("ZodULID",(e,t)=>{A_.init(e,t),lr.init(e,t)});var $F=z("ZodXID",(e,t)=>{O_.init(e,t),lr.init(e,t)});var MF=z("ZodKSUID",(e,t)=>{C_.init(e,t),lr.init(e,t)});var jF=z("ZodIPv4",(e,t)=>{E_.init(e,t),lr.init(e,t)});var zF=z("ZodIPv6",(e,t)=>{P_.init(e,t),lr.init(e,t)});var NF=z("ZodCIDRv4",(e,t)=>{R_.init(e,t),lr.init(e,t)});var GF=z("ZodCIDRv6",(e,t)=>{I_.init(e,t),lr.init(e,t)});var FF=z("ZodBase64",(e,t)=>{$_.init(e,t),lr.init(e,t)});var DF=z("ZodBase64URL",(e,t)=>{M_.init(e,t),lr.init(e,t)});var qF=z("ZodE164",(e,t)=>{j_.init(e,t),lr.init(e,t)});var LF=z("ZodJWT",(e,t)=>{z_.init(e,t),lr.init(e,t)});var UT=z("ZodNumber",(e,t)=>{rf.init(e,t),_r.init(e,t),e.gt=(n,i)=>e.check(lf(n,i)),e.gte=(n,i)=>e.check(Id(n,i)),e.min=(n,i)=>e.check(Id(n,i)),e.lt=(n,i)=>e.check(sf(n,i)),e.lte=(n,i)=>e.check(Rd(n,i)),e.max=(n,i)=>e.check(Rd(n,i)),e.int=n=>e.check(DT(n)),e.safe=n=>e.check(DT(n)),e.positive=n=>e.check(lf(0,n)),e.nonnegative=n=>e.check(Id(0,n)),e.negative=n=>e.check(sf(0,n)),e.nonpositive=n=>e.check(Rd(0,n)),e.multipleOf=(n,i)=>e.check(df(n,i)),e.step=(n,i)=>e.check(df(n,i)),e.finite=()=>e;let r=e._zod.bag;e.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),e.isFinite=!0,e.format=r.format??null});function Et(e){return Ag(UT,e)}var UF=z("ZodNumberFormat",(e,t)=>{N_.init(e,t),UT.init(e,t)});function DT(e){return Og(UF,e)}var WF=z("ZodBoolean",(e,t)=>{G_.init(e,t),_r.init(e,t)});function Nr(e){return Cg(WF,e)}var ZF=z("ZodNull",(e,t)=>{F_.init(e,t),_r.init(e,t)});function WT(e){return Eg(ZF,e)}var VF=z("ZodUnknown",(e,t)=>{D_.init(e,t),_r.init(e,t)});function dr(){return Pg(VF)}var HF=z("ZodNever",(e,t)=>{q_.init(e,t),_r.init(e,t)});function BF(e){return Rg(HF,e)}var KF=z("ZodArray",(e,t)=>{L_.init(e,t),_r.init(e,t),e.element=t.element,e.min=(r,n)=>e.check(Bs(r,n)),e.nonempty=r=>e.check(Bs(1,r)),e.max=(r,n)=>e.check(uf(r,n)),e.length=(r,n)=>e.check(cf(r,n)),e.unwrap=()=>e.element});function gt(e,t){return CT(KF,e,t)}var ZT=z("ZodObject",(e,t)=>{nf.init(e,t),_r.init(e,t),ht.defineLazy(e,"shape",()=>t.shape),e.keyof=()=>kn(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:dr()}),e.loose=()=>e.clone({...e._zod.def,catchall:dr()}),e.strict=()=>e.clone({...e._zod.def,catchall:BF()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=r=>ht.extend(e,r),e.merge=r=>ht.merge(e,r),e.pick=r=>ht.pick(e,r),e.omit=r=>ht.omit(e,r),e.partial=(...r)=>ht.partial(BT,e,r[0]),e.required=(...r)=>ht.required(KT,e,r[0])});function me(e,t){let r={type:"object",get shape(){return ht.assignProp(this,"shape",{...e}),this.shape},...ht.normalizeParams(t)};return new ZT(r)}function an(e,t){return new ZT({type:"object",get shape(){return ht.assignProp(this,"shape",{...e}),this.shape},catchall:dr(),...ht.normalizeParams(t)})}var VT=z("ZodUnion",(e,t)=>{of.init(e,t),_r.init(e,t),e.options=t.options});function rr(e,t){return new VT({type:"union",options:e,...ht.normalizeParams(t)})}var JF=z("ZodDiscriminatedUnion",(e,t)=>{VT.init(e,t),U_.init(e,t)});function Yg(e,t,r){return new JF({type:"union",options:t,discriminator:e,...ht.normalizeParams(r)})}var YF=z("ZodIntersection",(e,t)=>{W_.init(e,t),_r.init(e,t)});function pf(e,t){return new YF({type:"intersection",left:e,right:t})}var XF=z("ZodRecord",(e,t)=>{Z_.init(e,t),_r.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function Kt(e,t,r){return new XF({type:"record",keyType:e,valueType:t,...ht.normalizeParams(r)})}var Kg=z("ZodEnum",(e,t)=>{V_.init(e,t),_r.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);let r=new Set(Object.keys(t.entries));e.extract=(n,i)=>{let o={};for(let a of n)if(r.has(a))o[a]=t.entries[a];else throw new Error(`Key ${a} not found in enum`);return new Kg({...t,checks:[],...ht.normalizeParams(i),entries:o})},e.exclude=(n,i)=>{let o={...t.entries};for(let a of n)if(r.has(a))delete o[a];else throw new Error(`Key ${a} not found in enum`);return new Kg({...t,checks:[],...ht.normalizeParams(i),entries:o})}});function kn(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new Kg({type:"enum",entries:r,...ht.normalizeParams(t)})}var QF=z("ZodLiteral",(e,t)=>{H_.init(e,t),_r.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function xe(e,t){return new QF({type:"literal",values:Array.isArray(e)?e:[e],...ht.normalizeParams(t)})}var eD=z("ZodTransform",(e,t)=>{B_.init(e,t),_r.init(e,t),e._zod.parse=(r,n)=>{r.addIssue=o=>{if(typeof o=="string")r.issues.push(ht.issue(o,r.value,t));else{let a=o;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=e),a.continue??(a.continue=!0),r.issues.push(ht.issue(a))}};let i=t.transform(r.value,r);return i instanceof Promise?i.then(o=>(r.value=o,r)):(r.value=i,r)}});function HT(e){return new eD({type:"transform",transform:e})}var BT=z("ZodOptional",(e,t)=>{K_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType});function ur(e){return new BT({type:"optional",innerType:e})}var tD=z("ZodNullable",(e,t)=>{J_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType});function qT(e){return new tD({type:"nullable",innerType:e})}var rD=z("ZodDefault",(e,t)=>{Y_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function nD(e,t){return new rD({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():t}})}var iD=z("ZodPrefault",(e,t)=>{X_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType});function oD(e,t){return new iD({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():t}})}var KT=z("ZodNonOptional",(e,t)=>{Q_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType});function aD(e,t){return new KT({type:"nonoptional",innerType:e,...ht.normalizeParams(t)})}var sD=z("ZodCatch",(e,t)=>{eg.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function lD(e,t){return new sD({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}var dD=z("ZodPipe",(e,t)=>{tg.init(e,t),_r.init(e,t),e.in=t.in,e.out=t.out});function Jg(e,t){return new dD({type:"pipe",in:e,out:t})}var uD=z("ZodReadonly",(e,t)=>{rg.init(e,t),_r.init(e,t)});function cD(e){return new uD({type:"readonly",innerType:e})}var JT=z("ZodCustom",(e,t)=>{ng.init(e,t),_r.init(e,t)});function fD(e){let t=new qr({check:"custom"});return t._zod.check=e,t}function YT(e,t){return Lg(JT,e??(()=>!0),t)}function mD(e,t={}){return Ug(JT,e,t)}function pD(e){let t=fD(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(ht.issue(n,r.value,t._zod.def));else{let i=n;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!t._zod.def.abort),r.issues.push(ht.issue(i))}},e(r.value,r)));return t}function Xg(e,t){return Jg(HT(e),t)}In(wT());var ey="2025-11-25";var XT=[ey,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Io="io.modelcontextprotocol/related-task",_f="2.0",Mr=YT(e=>e!==null&&(typeof e=="object"||typeof e=="function")),QT=rr([$(),Et().int()]),eA=$(),oY=an({ttl:Et().optional(),pollInterval:Et().optional()}),hD=me({ttl:Et().optional()}),_D=me({taskId:$()}),ty=an({progressToken:QT.optional(),[Io]:_D.optional()}),Mn=me({_meta:ty.optional()}),jd=Mn.extend({task:hD.optional()}),tA=e=>jd.safeParse(e).success,Lr=me({method:$(),params:Mn.loose().optional()}),Bn=me({_meta:ty.optional()}),Kn=me({method:$(),params:Bn.loose().optional()}),Ur=an({_meta:ty.optional()}),gf=rr([$(),Et().int()]),rA=me({jsonrpc:xe(_f),id:gf,...Lr.shape}).strict(),ry=e=>rA.safeParse(e).success,nA=me({jsonrpc:xe(_f),...Kn.shape}).strict(),iA=e=>nA.safeParse(e).success,ny=me({jsonrpc:xe(_f),id:gf,result:Ur}).strict(),zd=e=>ny.safeParse(e).success;var Re;(function(e){e[e.ConnectionClosed=-32e3]="ConnectionClosed",e[e.RequestTimeout=-32001]="RequestTimeout",e[e.ParseError=-32700]="ParseError",e[e.InvalidRequest=-32600]="InvalidRequest",e[e.MethodNotFound=-32601]="MethodNotFound",e[e.InvalidParams=-32602]="InvalidParams",e[e.InternalError=-32603]="InternalError",e[e.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(Re||(Re={}));var iy=me({jsonrpc:xe(_f),id:gf.optional(),error:me({code:Et().int(),message:$(),data:dr().optional()})}).strict();var oA=e=>iy.safeParse(e).success;var aA=rr([rA,nA,ny,iy]),aY=rr([ny,iy]),yf=Ur.strict(),gD=Bn.extend({requestId:gf.optional(),reason:$().optional()}),bf=Kn.extend({method:xe("notifications/cancelled"),params:gD}),yD=me({src:$(),mimeType:$().optional(),sizes:gt($()).optional(),theme:kn(["light","dark"]).optional()}),Nd=me({icons:gt(yD).optional()}),Ks=me({name:$(),title:$().optional()}),sA=Ks.extend({...Ks.shape,...Nd.shape,version:$(),websiteUrl:$().optional(),description:$().optional()}),bD=pf(me({applyDefaults:Nr().optional()}),Kt($(),dr())),vD=Xg(e=>e&&typeof e=="object"&&!Array.isArray(e)&&Object.keys(e).length===0?{form:{}}:e,pf(me({form:bD.optional(),url:Mr.optional()}),Kt($(),dr()).optional())),SD=an({list:Mr.optional(),cancel:Mr.optional(),requests:an({sampling:an({createMessage:Mr.optional()}).optional(),elicitation:an({create:Mr.optional()}).optional()}).optional()}),wD=an({list:Mr.optional(),cancel:Mr.optional(),requests:an({tools:an({call:Mr.optional()}).optional()}).optional()}),kD=me({experimental:Kt($(),Mr).optional(),sampling:me({context:Mr.optional(),tools:Mr.optional()}).optional(),elicitation:vD.optional(),roots:me({listChanged:Nr().optional()}).optional(),tasks:SD.optional(),extensions:Kt($(),Mr).optional()}),xD=Mn.extend({protocolVersion:$(),capabilities:kD,clientInfo:sA}),oy=Lr.extend({method:xe("initialize"),params:xD});var TD=me({experimental:Kt($(),Mr).optional(),logging:Mr.optional(),completions:Mr.optional(),prompts:me({listChanged:Nr().optional()}).optional(),resources:me({subscribe:Nr().optional(),listChanged:Nr().optional()}).optional(),tools:me({listChanged:Nr().optional()}).optional(),tasks:wD.optional(),extensions:Kt($(),Mr).optional()}),AD=Ur.extend({protocolVersion:$(),capabilities:TD,serverInfo:sA,instructions:$().optional()}),ay=Kn.extend({method:xe("notifications/initialized"),params:Bn.optional()});var vf=Lr.extend({method:xe("ping"),params:Mn.optional()}),OD=me({progress:Et(),total:ur(Et()),message:ur($())}),CD=me({...Bn.shape,...OD.shape,progressToken:QT}),Sf=Kn.extend({method:xe("notifications/progress"),params:CD}),ED=Mn.extend({cursor:eA.optional()}),Gd=Lr.extend({params:ED.optional()}),Fd=Ur.extend({nextCursor:eA.optional()}),PD=kn(["working","input_required","completed","failed","cancelled"]),Dd=me({taskId:$(),status:PD,ttl:rr([Et(),WT()]),createdAt:$(),lastUpdatedAt:$(),pollInterval:ur(Et()),statusMessage:ur($())}),Js=Ur.extend({task:Dd}),RD=Bn.merge(Dd),qd=Kn.extend({method:xe("notifications/tasks/status"),params:RD}),wf=Lr.extend({method:xe("tasks/get"),params:Mn.extend({taskId:$()})}),kf=Ur.merge(Dd),xf=Lr.extend({method:xe("tasks/result"),params:Mn.extend({taskId:$()})}),sY=Ur.loose(),Tf=Gd.extend({method:xe("tasks/list")}),Af=Fd.extend({tasks:gt(Dd)}),Of=Lr.extend({method:xe("tasks/cancel"),params:Mn.extend({taskId:$()})}),lA=Ur.merge(Dd),dA=me({uri:$(),mimeType:ur($()),_meta:Kt($(),dr()).optional()}),uA=dA.extend({text:$()}),sy=$().refine(e=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),cA=dA.extend({blob:sy}),Ld=kn(["user","assistant"]),Ys=me({audience:gt(Ld).optional(),priority:Et().min(0).max(1).optional(),lastModified:$d.datetime({offset:!0}).optional()}),fA=me({...Ks.shape,...Nd.shape,uri:$(),description:ur($()),mimeType:ur($()),size:ur(Et()),annotations:Ys.optional(),_meta:ur(an({}))}),ID=me({...Ks.shape,...Nd.shape,uriTemplate:$(),description:ur($()),mimeType:ur($()),annotations:Ys.optional(),_meta:ur(an({}))}),Xs=Gd.extend({method:xe("resources/list")}),$D=Fd.extend({resources:gt(fA)}),Qs=Gd.extend({method:xe("resources/templates/list")}),MD=Fd.extend({resourceTemplates:gt(ID)}),ly=Mn.extend({uri:$()}),jD=ly,Cf=Lr.extend({method:xe("resources/read"),params:jD}),zD=Ur.extend({contents:gt(rr([uA,cA]))}),ND=Kn.extend({method:xe("notifications/resources/list_changed"),params:Bn.optional()}),GD=ly,FD=Lr.extend({method:xe("resources/subscribe"),params:GD}),DD=ly,qD=Lr.extend({method:xe("resources/unsubscribe"),params:DD}),LD=Bn.extend({uri:$()}),UD=Kn.extend({method:xe("notifications/resources/updated"),params:LD}),WD=me({name:$(),description:ur($()),required:ur(Nr())}),ZD=me({...Ks.shape,...Nd.shape,description:ur($()),arguments:ur(gt(WD)),_meta:ur(an({}))}),Ef=Gd.extend({method:xe("prompts/list")}),VD=Fd.extend({prompts:gt(ZD)}),HD=Mn.extend({name:$(),arguments:Kt($(),$()).optional()}),Pf=Lr.extend({method:xe("prompts/get"),params:HD}),dy=me({type:xe("text"),text:$(),annotations:Ys.optional(),_meta:Kt($(),dr()).optional()}),uy=me({type:xe("image"),data:sy,mimeType:$(),annotations:Ys.optional(),_meta:Kt($(),dr()).optional()}),cy=me({type:xe("audio"),data:sy,mimeType:$(),annotations:Ys.optional(),_meta:Kt($(),dr()).optional()}),BD=me({type:xe("tool_use"),name:$(),id:$(),input:Kt($(),dr()),_meta:Kt($(),dr()).optional()}),KD=me({type:xe("resource"),resource:rr([uA,cA]),annotations:Ys.optional(),_meta:Kt($(),dr()).optional()}),JD=fA.extend({type:xe("resource_link")}),fy=rr([dy,uy,cy,JD,KD]),YD=me({role:Ld,content:fy}),XD=Ur.extend({description:$().optional(),messages:gt(YD)}),QD=Kn.extend({method:xe("notifications/prompts/list_changed"),params:Bn.optional()}),eq=me({title:$().optional(),readOnlyHint:Nr().optional(),destructiveHint:Nr().optional(),idempotentHint:Nr().optional(),openWorldHint:Nr().optional()}),tq=me({taskSupport:kn(["required","optional","forbidden"]).optional()}),mA=me({...Ks.shape,...Nd.shape,description:$().optional(),inputSchema:me({type:xe("object"),properties:Kt($(),Mr).optional(),required:gt($()).optional()}).catchall(dr()),outputSchema:me({type:xe("object"),properties:Kt($(),Mr).optional(),required:gt($()).optional()}).catchall(dr()).optional(),annotations:eq.optional(),execution:tq.optional(),_meta:Kt($(),dr()).optional()}),Rf=Gd.extend({method:xe("tools/list")}),rq=Fd.extend({tools:gt(mA)}),If=Ur.extend({content:gt(fy).default([]),structuredContent:Kt($(),dr()).optional(),isError:Nr().optional()}),lY=If.or(Ur.extend({toolResult:dr()})),nq=jd.extend({name:$(),arguments:Kt($(),dr()).optional()}),el=Lr.extend({method:xe("tools/call"),params:nq}),iq=Kn.extend({method:xe("notifications/tools/list_changed"),params:Bn.optional()}),dY=me({autoRefresh:Nr().default(!0),debounceMs:Et().int().nonnegative().default(300)}),Ud=kn(["debug","info","notice","warning","error","critical","alert","emergency"]),oq=Mn.extend({level:Ud}),my=Lr.extend({method:xe("logging/setLevel"),params:oq}),aq=Bn.extend({level:Ud,logger:$().optional(),data:dr()}),sq=Kn.extend({method:xe("notifications/message"),params:aq}),lq=me({name:$().optional()}),dq=me({hints:gt(lq).optional(),costPriority:Et().min(0).max(1).optional(),speedPriority:Et().min(0).max(1).optional(),intelligencePriority:Et().min(0).max(1).optional()}),uq=me({mode:kn(["auto","required","none"]).optional()}),cq=me({type:xe("tool_result"),toolUseId:$().describe("The unique identifier for the corresponding tool call."),content:gt(fy).default([]),structuredContent:me({}).loose().optional(),isError:Nr().optional(),_meta:Kt($(),dr()).optional()}),fq=Yg("type",[dy,uy,cy]),hf=Yg("type",[dy,uy,cy,BD,cq]),mq=me({role:Ld,content:rr([hf,gt(hf)]),_meta:Kt($(),dr()).optional()}),pq=jd.extend({messages:gt(mq),modelPreferences:dq.optional(),systemPrompt:$().optional(),includeContext:kn(["none","thisServer","allServers"]).optional(),temperature:Et().optional(),maxTokens:Et().int(),stopSequences:gt($()).optional(),metadata:Mr.optional(),tools:gt(mA).optional(),toolChoice:uq.optional()}),hq=Lr.extend({method:xe("sampling/createMessage"),params:pq}),Wd=Ur.extend({model:$(),stopReason:ur(kn(["endTurn","stopSequence","maxTokens"]).or($())),role:Ld,content:fq}),py=Ur.extend({model:$(),stopReason:ur(kn(["endTurn","stopSequence","maxTokens","toolUse"]).or($())),role:Ld,content:rr([hf,gt(hf)])}),_q=me({type:xe("boolean"),title:$().optional(),description:$().optional(),default:Nr().optional()}),gq=me({type:xe("string"),title:$().optional(),description:$().optional(),minLength:Et().optional(),maxLength:Et().optional(),format:kn(["email","uri","date","date-time"]).optional(),default:$().optional()}),yq=me({type:kn(["number","integer"]),title:$().optional(),description:$().optional(),minimum:Et().optional(),maximum:Et().optional(),default:Et().optional()}),bq=me({type:xe("string"),title:$().optional(),description:$().optional(),enum:gt($()),default:$().optional()}),vq=me({type:xe("string"),title:$().optional(),description:$().optional(),oneOf:gt(me({const:$(),title:$()})),default:$().optional()}),Sq=me({type:xe("string"),title:$().optional(),description:$().optional(),enum:gt($()),enumNames:gt($()).optional(),default:$().optional()}),wq=rr([bq,vq]),kq=me({type:xe("array"),title:$().optional(),description:$().optional(),minItems:Et().optional(),maxItems:Et().optional(),items:me({type:xe("string"),enum:gt($())}),default:gt($()).optional()}),xq=me({type:xe("array"),title:$().optional(),description:$().optional(),minItems:Et().optional(),maxItems:Et().optional(),items:me({anyOf:gt(me({const:$(),title:$()}))}),default:gt($()).optional()}),Tq=rr([kq,xq]),Aq=rr([Sq,wq,Tq]),Oq=rr([Aq,_q,gq,yq]),Cq=jd.extend({mode:xe("form").optional(),message:$(),requestedSchema:me({type:xe("object"),properties:Kt($(),Oq),required:gt($()).optional()})}),Eq=jd.extend({mode:xe("url"),message:$(),elicitationId:$(),url:$().url()}),Pq=rr([Cq,Eq]),Rq=Lr.extend({method:xe("elicitation/create"),params:Pq}),Iq=Bn.extend({elicitationId:$()}),$q=Kn.extend({method:xe("notifications/elicitation/complete"),params:Iq}),tl=Ur.extend({action:kn(["accept","decline","cancel"]),content:Xg(e=>e===null?void 0:e,Kt($(),rr([$(),Et(),Nr(),gt($())])).optional())}),Mq=me({type:xe("ref/resource"),uri:$()});var jq=me({type:xe("ref/prompt"),name:$()}),zq=Mn.extend({ref:rr([jq,Mq]),argument:me({name:$(),value:$()}),context:me({arguments:Kt($(),$()).optional()}).optional()}),$f=Lr.extend({method:xe("completion/complete"),params:zq});function pA(e){if(e.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${e.params.ref.type}`)}function hA(e){if(e.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${e.params.ref.type}`)}var Nq=Ur.extend({completion:an({values:gt($()).max(100),total:ur(Et().int()),hasMore:ur(Nr())})}),Gq=me({uri:$().startsWith("file://"),name:$().optional(),_meta:Kt($(),dr()).optional()}),Fq=Lr.extend({method:xe("roots/list"),params:Mn.optional()}),hy=Ur.extend({roots:gt(Gq)}),Dq=Kn.extend({method:xe("notifications/roots/list_changed"),params:Bn.optional()}),uY=rr([vf,oy,$f,my,Pf,Ef,Xs,Qs,Cf,FD,qD,el,Rf,wf,xf,Tf,Of]),cY=rr([bf,Sf,ay,Dq,qd]),fY=rr([yf,Wd,py,tl,hy,kf,Af,Js]),mY=rr([vf,hq,Rq,Fq,wf,xf,Tf,Of]),pY=rr([bf,Sf,sq,UD,ND,iq,QD,qd,$q]),hY=rr([yf,AD,Nq,XD,VD,$D,MD,zD,If,rq,kf,Af,Js]),be=class e extends Error{constructor(t,r,n){super(`MCP error ${t}: ${r}`),this.code=t,this.data=n,this.name="McpError"}static fromError(t,r,n){if(t===Re.UrlElicitationRequired&&n){let i=n;if(i.elicitations)return new Qg(i.elicitations,r)}return new e(t,r,n)}},Qg=class extends be{constructor(t,r=`URL elicitation${t.length>1?"s":""} required`){super(Re.UrlElicitationRequired,r,{elicitations:t})}get elicitations(){return this.data?.elicitations??[]}};var Uq=z("ZodMiniType",(e,t)=>{if(!e._zod)throw new Error("Uninitialized schema in ZodMiniType.");Mt.init(e,t),e.def=t,e.parse=(r,n)=>l_(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>za(e,r,n),e.parseAsync=async(r,n)=>u_(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>Na(e,r,n),e.check=(...r)=>e.clone({...t,checks:[...t.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),e.clone=(r,n)=>$n(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e))});var Wq=z("ZodMiniObject",(e,t)=>{nf.init(e,t),Uq.init(e,t),ht.defineLazy(e,"shape",()=>t.shape)});function _y(e,t){let r={type:"object",get shape(){return ht.assignProp(this,"shape",{...e}),this.shape},...ht.normalizeParams(t)};return new Wq(r)}function Jn(e){return!!e._zod}function Da(e){let t=Object.values(e);if(t.length===0)return _y({});let r=t.every(Jn),n=t.every(i=>!Jn(i));if(r)return _y(e);if(n)return Rh(e);throw new Error("Mixed Zod versions detected in object shape.")}function $o(e,t){return Jn(e)?za(e,t):e.safeParse(t)}async function Mf(e,t){return Jn(e)?await Na(e,t):await e.safeParseAsync(t)}function Mo(e){if(!e)return;let t;if(Jn(e)?t=e._zod?.def?.shape:t=e.shape,!!t){if(typeof t=="function")try{return t()}catch{return}return t}}function rl(e){if(e){if(typeof e=="object"){let t=e,r=e;if(!t._def&&!r._zod){let n=Object.values(e);if(n.length>0&&n.every(i=>typeof i=="object"&&i!==null&&(i._def!==void 0||i._zod!==void 0||typeof i.parse=="function")))return Da(e)}}if(Jn(e)){let r=e._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return e}else if(e.shape!==void 0)return e}}function jf(e){if(e&&typeof e=="object"){if("message"in e&&typeof e.message=="string")return e.message;if("issues"in e&&Array.isArray(e.issues)&&e.issues.length>0){let t=e.issues[0];if(t&&typeof t=="object"&&"message"in t)return String(t.message)}try{return JSON.stringify(e)}catch{return String(e)}}return String(e)}function _A(e){return e.description}function gA(e){if(Jn(e))return e._zod?.def?.type==="optional";let t=e;return typeof e.isOptional=="function"?e.isOptional():t._def?.typeName==="ZodOptional"}function zf(e){if(Jn(e)){let o=e._zod?.def;if(o){if(o.value!==void 0)return o.value;if(Array.isArray(o.values)&&o.values.length>0)return o.values[0]}}let r=e._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=e.value;if(n!==void 0)return n}function jo(e){return e==="completed"||e==="failed"||e==="cancelled"}var bA=Symbol("Let zodToJsonSchema decide on which parser to use");var yA={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},vA=e=>typeof e=="string"?{...yA,name:e}:{...yA,...e};var SA=e=>{let t=vA(e),r=t.name!==void 0?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([n,i])=>[i._def,{def:i._def,path:[...t.basePath,t.definitionPath,n],jsonSchema:void 0}]))}};function gy(e,t,r,n){n?.errorMessages&&r&&(e.errorMessage={...e.errorMessage,[t]:r})}function yt(e,t,r,n,i){e[t]=r,gy(e,t,n,i)}var Nf=(e,t)=>{let r=0;for(;r<e.length&&r<t.length&&e[r]===t[r];r++);return[(e.length-r).toString(),...t.slice(r)].join("/")};function cr(e){if(e.target!=="openAi")return{};let t=[...e.basePath,e.definitionPath,e.openAiAnyTypeName];return e.flags.hasReferencedOpenAiAnyType=!0,{$ref:e.$refStrategy==="relative"?Nf(t,e.currentPath):t.join("/")}}function wA(e,t){let r={type:"array"};return e.type?._def&&e.type?._def?.typeName!==Q.ZodAny&&(r.items=De(e.type._def,{...t,currentPath:[...t.currentPath,"items"]})),e.minLength&&yt(r,"minItems",e.minLength.value,e.minLength.message,t),e.maxLength&&yt(r,"maxItems",e.maxLength.value,e.maxLength.message,t),e.exactLength&&(yt(r,"minItems",e.exactLength.value,e.exactLength.message,t),yt(r,"maxItems",e.exactLength.value,e.exactLength.message,t)),r}function kA(e,t){let r={type:"integer",format:"int64"};if(!e.checks)return r;for(let n of e.checks)switch(n.kind){case"min":t.target==="jsonSchema7"?n.inclusive?yt(r,"minimum",n.value,n.message,t):yt(r,"exclusiveMinimum",n.value,n.message,t):(n.inclusive||(r.exclusiveMinimum=!0),yt(r,"minimum",n.value,n.message,t));break;case"max":t.target==="jsonSchema7"?n.inclusive?yt(r,"maximum",n.value,n.message,t):yt(r,"exclusiveMaximum",n.value,n.message,t):(n.inclusive||(r.exclusiveMaximum=!0),yt(r,"maximum",n.value,n.message,t));break;case"multipleOf":yt(r,"multipleOf",n.value,n.message,t);break}return r}function xA(){return{type:"boolean"}}function Gf(e,t){return De(e.type._def,t)}var TA=(e,t)=>De(e.innerType._def,t);function yy(e,t,r){let n=r??t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((i,o)=>yy(e,t,i))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return Vq(e,t)}}var Vq=(e,t)=>{let r={type:"integer",format:"unix-time"};if(t.target==="openApi3")return r;for(let n of e.checks)switch(n.kind){case"min":yt(r,"minimum",n.value,n.message,t);break;case"max":yt(r,"maximum",n.value,n.message,t);break}return r};function AA(e,t){return{...De(e.innerType._def,t),default:e.defaultValue()}}function OA(e,t){return t.effectStrategy==="input"?De(e.schema._def,t):cr(t)}function CA(e){return{type:"string",enum:Array.from(e.values)}}var Hq=e=>"type"in e&&e.type==="string"?!1:"allOf"in e;function EA(e,t){let r=[De(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),De(e.right._def,{...t,currentPath:[...t.currentPath,"allOf","1"]})].filter(o=>!!o),n=t.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,i=[];return r.forEach(o=>{if(Hq(o))i.push(...o.allOf),o.unevaluatedProperties===void 0&&(n=void 0);else{let a=o;if("additionalProperties"in o&&o.additionalProperties===!1){let{additionalProperties:s,...l}=o;a=l}else n=void 0;i.push(a)}}),i.length?{allOf:i,...n}:void 0}function PA(e,t){let r=typeof e.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(e.value)?"array":"object"}:t.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[e.value]}:{type:r==="bigint"?"integer":r,const:e.value}}var by,hi={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(by===void 0&&(by=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),by),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Ff(e,t){let r={type:"string"};if(e.checks)for(let n of e.checks)switch(n.kind){case"min":yt(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,t);break;case"max":yt(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,t);break;case"email":switch(t.emailStrategy){case"format:email":_i(r,"email",n.message,t);break;case"format:idn-email":_i(r,"idn-email",n.message,t);break;case"pattern:zod":sn(r,hi.email,n.message,t);break}break;case"url":_i(r,"uri",n.message,t);break;case"uuid":_i(r,"uuid",n.message,t);break;case"regex":sn(r,n.regex,n.message,t);break;case"cuid":sn(r,hi.cuid,n.message,t);break;case"cuid2":sn(r,hi.cuid2,n.message,t);break;case"startsWith":sn(r,RegExp(`^${vy(n.value,t)}`),n.message,t);break;case"endsWith":sn(r,RegExp(`${vy(n.value,t)}$`),n.message,t);break;case"datetime":_i(r,"date-time",n.message,t);break;case"date":_i(r,"date",n.message,t);break;case"time":_i(r,"time",n.message,t);break;case"duration":_i(r,"duration",n.message,t);break;case"length":yt(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,t),yt(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,t);break;case"includes":{sn(r,RegExp(vy(n.value,t)),n.message,t);break}case"ip":{n.version!=="v6"&&_i(r,"ipv4",n.message,t),n.version!=="v4"&&_i(r,"ipv6",n.message,t);break}case"base64url":sn(r,hi.base64url,n.message,t);break;case"jwt":sn(r,hi.jwt,n.message,t);break;case"cidr":{n.version!=="v6"&&sn(r,hi.ipv4Cidr,n.message,t),n.version!=="v4"&&sn(r,hi.ipv6Cidr,n.message,t);break}case"emoji":sn(r,hi.emoji(),n.message,t);break;case"ulid":{sn(r,hi.ulid,n.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{_i(r,"binary",n.message,t);break}case"contentEncoding:base64":{yt(r,"contentEncoding","base64",n.message,t);break}case"pattern:zod":{sn(r,hi.base64,n.message,t);break}}break}case"nanoid":sn(r,hi.nanoid,n.message,t);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function vy(e,t){return t.patternStrategy==="escape"?Kq(e):e}var Bq=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Kq(e){let t="";for(let r=0;r<e.length;r++)Bq.has(e[r])||(t+="\\"),t+=e[r];return t}function _i(e,t,r,n){e.format||e.anyOf?.some(i=>i.format)?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format,...e.errorMessage&&n.errorMessages&&{errorMessage:{format:e.errorMessage.format}}}),delete e.format,e.errorMessage&&(delete e.errorMessage.format,Object.keys(e.errorMessage).length===0&&delete e.errorMessage)),e.anyOf.push({format:t,...r&&n.errorMessages&&{errorMessage:{format:r}}})):yt(e,"format",t,r,n)}function sn(e,t,r,n){e.pattern||e.allOf?.some(i=>i.pattern)?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern,...e.errorMessage&&n.errorMessages&&{errorMessage:{pattern:e.errorMessage.pattern}}}),delete e.pattern,e.errorMessage&&(delete e.errorMessage.pattern,Object.keys(e.errorMessage).length===0&&delete e.errorMessage)),e.allOf.push({pattern:RA(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):yt(e,"pattern",RA(t,n),r,n)}function RA(e,t){if(!t.applyRegexFlags||!e.flags)return e.source;let r={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},n=r.i?e.source.toLowerCase():e.source,i="",o=!1,a=!1,s=!1;for(let l=0;l<n.length;l++){if(o){i+=n[l],o=!1;continue}if(r.i){if(a){if(n[l].match(/[a-z]/)){s?(i+=n[l],i+=`${n[l-2]}-${n[l]}`.toUpperCase(),s=!1):n[l+1]==="-"&&n[l+2]?.match(/[a-z]/)?(i+=n[l],s=!0):i+=`${n[l]}${n[l].toUpperCase()}`;continue}}else if(n[l].match(/[a-z]/)){i+=`[${n[l]}${n[l].toUpperCase()}]`;continue}}if(r.m){if(n[l]==="^"){i+=`(^|(?<=[\r
|
|
316
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let u of this.seen.entries()){let c=u[1];if(t===u[0]){a(u);continue}if(n.external){let p=n.external.registry.get(u[0])?.id;if(t!==u[0]&&p){a(u);continue}}if(this.metadataRegistry.get(u[0])?.id){a(u);continue}if(c.cycle){a(u);continue}if(c.count>1&&n.reused==="ref"){a(u);continue}}let s=(u,c)=>{let f=this.seen.get(u),p=f.def??f.schema,m={...p};if(f.ref===null)return;let h=f.ref;if(f.ref=null,h){s(h,c);let _=this.seen.get(h).schema;_.$ref&&c.target==="draft-7"?(p.allOf=p.allOf??[],p.allOf.push(_)):(Object.assign(p,_),Object.assign(p,m))}f.isParent||this.override({zodSchema:u,jsonSchema:p,path:f.path??[]})};for(let u of[...this.seen.entries()].reverse())s(u[0],{target:this.target});let l={};if(this.target==="draft-2020-12"?l.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?l.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let u=n.external.registry.get(t)?.id;if(!u)throw new Error("Schema is missing an `id` property");l.$id=n.external.uri(u)}Object.assign(l,i.def);let d=n.external?.defs??{};for(let u of this.seen.entries()){let c=u[1];c.def&&c.defId&&(d[c.defId]=c.def)}n.external||Object.keys(d).length>0&&(this.target==="draft-2020-12"?l.$defs=d:l.definitions=d);try{return JSON.parse(JSON.stringify(l))}catch{throw new Error("Error converting schema to JSON.")}}};function Wg(e,t){if(e instanceof Pd){let n=new ff(t),i={};for(let s of e._idmap.entries()){let[l,d]=s;n.process(d)}let o={},a={registry:e,uri:t?.uri,defs:i};for(let s of e._idmap.entries()){let[l,d]=s;o[l]=n.emit(d,{...t,external:a})}if(Object.keys(i).length>0){let s=n.target==="draft-2020-12"?"$defs":"definitions";o.__shared={[s]:i}}return{schemas:o}}let r=new ff(t);return r.process(e),r.emit(e,t)}function $r(e,t){let r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);let i=e._zod.def;switch(i.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":return!1;case"array":return $r(i.element,r);case"object":{for(let o in i.shape)if($r(i.shape[o],r))return!0;return!1}case"union":{for(let o of i.options)if($r(o,r))return!0;return!1}case"intersection":return $r(i.left,r)||$r(i.right,r);case"tuple":{for(let o of i.items)if($r(o,r))return!0;return!!(i.rest&&$r(i.rest,r))}case"record":return $r(i.keyType,r)||$r(i.valueType,r);case"map":return $r(i.keyType,r)||$r(i.valueType,r);case"set":return $r(i.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return $r(i.innerType,r);case"lazy":return $r(i.getter(),r);case"default":return $r(i.innerType,r);case"prefault":return $r(i.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return $r(i.in,r)||$r(i.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${i.type}`)}var $d={};Gp($d,{ZodISODate:()=>RT,ZodISODateTime:()=>PT,ZodISODuration:()=>$T,ZodISOTime:()=>IT,date:()=>Vg,datetime:()=>Zg,duration:()=>Bg,time:()=>Hg});var PT=z("ZodISODateTime",(e,t)=>{gT.init(e,t),lr.init(e,t)});function Zg(e){return xT(PT,e)}var RT=z("ZodISODate",(e,t)=>{yT.init(e,t),lr.init(e,t)});function Vg(e){return TT(RT,e)}var IT=z("ZodISOTime",(e,t)=>{bT.init(e,t),lr.init(e,t)});function Hg(e){return AT(IT,e)}var $T=z("ZodISODuration",(e,t)=>{vT.init(e,t),lr.init(e,t)});function Bg(e){return OT($T,e)}var MT=(e,t)=>{Xc.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:r=>a_(e,r)},flatten:{value:r=>o_(e,r)},addIssue:{value:r=>e.issues.push(r)},addIssues:{value:r=>e.issues.push(...r)},isEmpty:{get(){return e.issues.length===0}}})},J7=z("ZodError",MT),Md=z("ZodError",MT,{Parent:Error});var jT=s_(Md),zT=d_(Md),NT=c_(Md),GT=f_(Md);var _r=z("ZodType",(e,t)=>(Mt.init(e,t),e.def=t,Object.defineProperty(e,"_def",{value:t}),e.check=(...r)=>e.clone({...t,checks:[...t.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),e.clone=(r,n)=>$n(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e)),e.parse=(r,n)=>jT(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>NT(e,r,n),e.parseAsync=async(r,n)=>zT(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>GT(e,r,n),e.spa=e.safeParseAsync,e.refine=(r,n)=>e.check(pD(r,n)),e.superRefine=r=>e.check(hD(r)),e.overwrite=r=>e.check(Ga(r)),e.optional=()=>ur(e),e.nullable=()=>qT(e),e.nullish=()=>ur(qT(e)),e.nonoptional=r=>sD(e,r),e.array=()=>gt(e),e.or=r=>rr([e,r]),e.and=r=>pf(e,r),e.transform=r=>Jg(e,HT(r)),e.default=r=>iD(e,r),e.prefault=r=>aD(e,r),e.catch=r=>dD(e,r),e.pipe=r=>Jg(e,r),e.readonly=()=>fD(e),e.describe=r=>{let n=e.clone();return Ro.add(n,{description:r}),n},Object.defineProperty(e,"description",{get(){return Ro.get(e)?.description},configurable:!0}),e.meta=(...r)=>{if(r.length===0)return Ro.get(e);let n=e.clone();return Ro.add(n,r[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),LT=z("_ZodString",(e,t)=>{Ed.init(e,t),_r.init(e,t);let r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,e.regex=(...n)=>e.check(Ig(...n)),e.includes=(...n)=>e.check(jg(...n)),e.startsWith=(...n)=>e.check(zg(...n)),e.endsWith=(...n)=>e.check(Ng(...n)),e.min=(...n)=>e.check(Bs(...n)),e.max=(...n)=>e.check(uf(...n)),e.length=(...n)=>e.check(cf(...n)),e.nonempty=(...n)=>e.check(Bs(1,...n)),e.lowercase=n=>e.check($g(n)),e.uppercase=n=>e.check(Mg(n)),e.trim=()=>e.check(Fg()),e.normalize=(...n)=>e.check(Gg(...n)),e.toLowerCase=()=>e.check(Dg()),e.toUpperCase=()=>e.check(qg())}),AF=z("ZodString",(e,t)=>{Ed.init(e,t),LT.init(e,t),e.email=r=>e.check(og(OF,r)),e.url=r=>e.check(ug(CF,r)),e.jwt=r=>e.check(Tg(UF,r)),e.emoji=r=>e.check(cg(EF,r)),e.guid=r=>e.check(af(FT,r)),e.uuid=r=>e.check(ag(mf,r)),e.uuidv4=r=>e.check(sg(mf,r)),e.uuidv6=r=>e.check(lg(mf,r)),e.uuidv7=r=>e.check(dg(mf,r)),e.nanoid=r=>e.check(fg(PF,r)),e.guid=r=>e.check(af(FT,r)),e.cuid=r=>e.check(mg(RF,r)),e.cuid2=r=>e.check(pg(IF,r)),e.ulid=r=>e.check(hg($F,r)),e.base64=r=>e.check(wg(DF,r)),e.base64url=r=>e.check(kg(qF,r)),e.xid=r=>e.check(_g(MF,r)),e.ksuid=r=>e.check(gg(jF,r)),e.ipv4=r=>e.check(yg(zF,r)),e.ipv6=r=>e.check(bg(NF,r)),e.cidrv4=r=>e.check(vg(GF,r)),e.cidrv6=r=>e.check(Sg(FF,r)),e.e164=r=>e.check(xg(LF,r)),e.datetime=r=>e.check(Zg(r)),e.date=r=>e.check(Vg(r)),e.time=r=>e.check(Hg(r)),e.duration=r=>e.check(Bg(r))});function $(e){return ig(AF,e)}var lr=z("ZodStringFormat",(e,t)=>{Kt.init(e,t),LT.init(e,t)}),OF=z("ZodEmail",(e,t)=>{v_.init(e,t),lr.init(e,t)});var FT=z("ZodGUID",(e,t)=>{y_.init(e,t),lr.init(e,t)});var mf=z("ZodUUID",(e,t)=>{b_.init(e,t),lr.init(e,t)});var CF=z("ZodURL",(e,t)=>{S_.init(e,t),lr.init(e,t)});var EF=z("ZodEmoji",(e,t)=>{w_.init(e,t),lr.init(e,t)});var PF=z("ZodNanoID",(e,t)=>{k_.init(e,t),lr.init(e,t)});var RF=z("ZodCUID",(e,t)=>{x_.init(e,t),lr.init(e,t)});var IF=z("ZodCUID2",(e,t)=>{T_.init(e,t),lr.init(e,t)});var $F=z("ZodULID",(e,t)=>{A_.init(e,t),lr.init(e,t)});var MF=z("ZodXID",(e,t)=>{O_.init(e,t),lr.init(e,t)});var jF=z("ZodKSUID",(e,t)=>{C_.init(e,t),lr.init(e,t)});var zF=z("ZodIPv4",(e,t)=>{E_.init(e,t),lr.init(e,t)});var NF=z("ZodIPv6",(e,t)=>{P_.init(e,t),lr.init(e,t)});var GF=z("ZodCIDRv4",(e,t)=>{R_.init(e,t),lr.init(e,t)});var FF=z("ZodCIDRv6",(e,t)=>{I_.init(e,t),lr.init(e,t)});var DF=z("ZodBase64",(e,t)=>{$_.init(e,t),lr.init(e,t)});var qF=z("ZodBase64URL",(e,t)=>{M_.init(e,t),lr.init(e,t)});var LF=z("ZodE164",(e,t)=>{j_.init(e,t),lr.init(e,t)});var UF=z("ZodJWT",(e,t)=>{z_.init(e,t),lr.init(e,t)});var UT=z("ZodNumber",(e,t)=>{rf.init(e,t),_r.init(e,t),e.gt=(n,i)=>e.check(lf(n,i)),e.gte=(n,i)=>e.check(Id(n,i)),e.min=(n,i)=>e.check(Id(n,i)),e.lt=(n,i)=>e.check(sf(n,i)),e.lte=(n,i)=>e.check(Rd(n,i)),e.max=(n,i)=>e.check(Rd(n,i)),e.int=n=>e.check(DT(n)),e.safe=n=>e.check(DT(n)),e.positive=n=>e.check(lf(0,n)),e.nonnegative=n=>e.check(Id(0,n)),e.negative=n=>e.check(sf(0,n)),e.nonpositive=n=>e.check(Rd(0,n)),e.multipleOf=(n,i)=>e.check(df(n,i)),e.step=(n,i)=>e.check(df(n,i)),e.finite=()=>e;let r=e._zod.bag;e.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),e.isFinite=!0,e.format=r.format??null});function Et(e){return Ag(UT,e)}var WF=z("ZodNumberFormat",(e,t)=>{N_.init(e,t),UT.init(e,t)});function DT(e){return Og(WF,e)}var ZF=z("ZodBoolean",(e,t)=>{G_.init(e,t),_r.init(e,t)});function Nr(e){return Cg(ZF,e)}var VF=z("ZodNull",(e,t)=>{F_.init(e,t),_r.init(e,t)});function WT(e){return Eg(VF,e)}var HF=z("ZodUnknown",(e,t)=>{D_.init(e,t),_r.init(e,t)});function dr(){return Pg(HF)}var BF=z("ZodNever",(e,t)=>{q_.init(e,t),_r.init(e,t)});function KF(e){return Rg(BF,e)}var JF=z("ZodArray",(e,t)=>{L_.init(e,t),_r.init(e,t),e.element=t.element,e.min=(r,n)=>e.check(Bs(r,n)),e.nonempty=r=>e.check(Bs(1,r)),e.max=(r,n)=>e.check(uf(r,n)),e.length=(r,n)=>e.check(cf(r,n)),e.unwrap=()=>e.element});function gt(e,t){return CT(JF,e,t)}var ZT=z("ZodObject",(e,t)=>{nf.init(e,t),_r.init(e,t),ht.defineLazy(e,"shape",()=>t.shape),e.keyof=()=>kn(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:dr()}),e.loose=()=>e.clone({...e._zod.def,catchall:dr()}),e.strict=()=>e.clone({...e._zod.def,catchall:KF()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=r=>ht.extend(e,r),e.merge=r=>ht.merge(e,r),e.pick=r=>ht.pick(e,r),e.omit=r=>ht.omit(e,r),e.partial=(...r)=>ht.partial(BT,e,r[0]),e.required=(...r)=>ht.required(KT,e,r[0])});function me(e,t){let r={type:"object",get shape(){return ht.assignProp(this,"shape",{...e}),this.shape},...ht.normalizeParams(t)};return new ZT(r)}function an(e,t){return new ZT({type:"object",get shape(){return ht.assignProp(this,"shape",{...e}),this.shape},catchall:dr(),...ht.normalizeParams(t)})}var VT=z("ZodUnion",(e,t)=>{of.init(e,t),_r.init(e,t),e.options=t.options});function rr(e,t){return new VT({type:"union",options:e,...ht.normalizeParams(t)})}var YF=z("ZodDiscriminatedUnion",(e,t)=>{VT.init(e,t),U_.init(e,t)});function Yg(e,t,r){return new YF({type:"union",options:t,discriminator:e,...ht.normalizeParams(r)})}var XF=z("ZodIntersection",(e,t)=>{W_.init(e,t),_r.init(e,t)});function pf(e,t){return new XF({type:"intersection",left:e,right:t})}var QF=z("ZodRecord",(e,t)=>{Z_.init(e,t),_r.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function Jt(e,t,r){return new QF({type:"record",keyType:e,valueType:t,...ht.normalizeParams(r)})}var Kg=z("ZodEnum",(e,t)=>{V_.init(e,t),_r.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);let r=new Set(Object.keys(t.entries));e.extract=(n,i)=>{let o={};for(let a of n)if(r.has(a))o[a]=t.entries[a];else throw new Error(`Key ${a} not found in enum`);return new Kg({...t,checks:[],...ht.normalizeParams(i),entries:o})},e.exclude=(n,i)=>{let o={...t.entries};for(let a of n)if(r.has(a))delete o[a];else throw new Error(`Key ${a} not found in enum`);return new Kg({...t,checks:[],...ht.normalizeParams(i),entries:o})}});function kn(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new Kg({type:"enum",entries:r,...ht.normalizeParams(t)})}var eD=z("ZodLiteral",(e,t)=>{H_.init(e,t),_r.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function xe(e,t){return new eD({type:"literal",values:Array.isArray(e)?e:[e],...ht.normalizeParams(t)})}var tD=z("ZodTransform",(e,t)=>{B_.init(e,t),_r.init(e,t),e._zod.parse=(r,n)=>{r.addIssue=o=>{if(typeof o=="string")r.issues.push(ht.issue(o,r.value,t));else{let a=o;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=e),a.continue??(a.continue=!0),r.issues.push(ht.issue(a))}};let i=t.transform(r.value,r);return i instanceof Promise?i.then(o=>(r.value=o,r)):(r.value=i,r)}});function HT(e){return new tD({type:"transform",transform:e})}var BT=z("ZodOptional",(e,t)=>{K_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType});function ur(e){return new BT({type:"optional",innerType:e})}var rD=z("ZodNullable",(e,t)=>{J_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType});function qT(e){return new rD({type:"nullable",innerType:e})}var nD=z("ZodDefault",(e,t)=>{Y_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function iD(e,t){return new nD({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():t}})}var oD=z("ZodPrefault",(e,t)=>{X_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType});function aD(e,t){return new oD({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():t}})}var KT=z("ZodNonOptional",(e,t)=>{Q_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType});function sD(e,t){return new KT({type:"nonoptional",innerType:e,...ht.normalizeParams(t)})}var lD=z("ZodCatch",(e,t)=>{eg.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function dD(e,t){return new lD({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}var uD=z("ZodPipe",(e,t)=>{tg.init(e,t),_r.init(e,t),e.in=t.in,e.out=t.out});function Jg(e,t){return new uD({type:"pipe",in:e,out:t})}var cD=z("ZodReadonly",(e,t)=>{rg.init(e,t),_r.init(e,t)});function fD(e){return new cD({type:"readonly",innerType:e})}var JT=z("ZodCustom",(e,t)=>{ng.init(e,t),_r.init(e,t)});function mD(e){let t=new qr({check:"custom"});return t._zod.check=e,t}function YT(e,t){return Lg(JT,e??(()=>!0),t)}function pD(e,t={}){return Ug(JT,e,t)}function hD(e){let t=mD(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(ht.issue(n,r.value,t._zod.def));else{let i=n;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!t._zod.def.abort),r.issues.push(ht.issue(i))}},e(r.value,r)));return t}function Xg(e,t){return Jg(HT(e),t)}In(wT());var ey="2025-11-25";var XT=[ey,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Io="io.modelcontextprotocol/related-task",_f="2.0",Mr=YT(e=>e!==null&&(typeof e=="object"||typeof e=="function")),QT=rr([$(),Et().int()]),eA=$(),uY=an({ttl:Et().optional(),pollInterval:Et().optional()}),_D=me({ttl:Et().optional()}),gD=me({taskId:$()}),ty=an({progressToken:QT.optional(),[Io]:gD.optional()}),Mn=me({_meta:ty.optional()}),jd=Mn.extend({task:_D.optional()}),tA=e=>jd.safeParse(e).success,Lr=me({method:$(),params:Mn.loose().optional()}),Bn=me({_meta:ty.optional()}),Kn=me({method:$(),params:Bn.loose().optional()}),Ur=an({_meta:ty.optional()}),gf=rr([$(),Et().int()]),rA=me({jsonrpc:xe(_f),id:gf,...Lr.shape}).strict(),ry=e=>rA.safeParse(e).success,nA=me({jsonrpc:xe(_f),...Kn.shape}).strict(),iA=e=>nA.safeParse(e).success,ny=me({jsonrpc:xe(_f),id:gf,result:Ur}).strict(),zd=e=>ny.safeParse(e).success;var Re;(function(e){e[e.ConnectionClosed=-32e3]="ConnectionClosed",e[e.RequestTimeout=-32001]="RequestTimeout",e[e.ParseError=-32700]="ParseError",e[e.InvalidRequest=-32600]="InvalidRequest",e[e.MethodNotFound=-32601]="MethodNotFound",e[e.InvalidParams=-32602]="InvalidParams",e[e.InternalError=-32603]="InternalError",e[e.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(Re||(Re={}));var iy=me({jsonrpc:xe(_f),id:gf.optional(),error:me({code:Et().int(),message:$(),data:dr().optional()})}).strict();var oA=e=>iy.safeParse(e).success;var aA=rr([rA,nA,ny,iy]),cY=rr([ny,iy]),yf=Ur.strict(),yD=Bn.extend({requestId:gf.optional(),reason:$().optional()}),bf=Kn.extend({method:xe("notifications/cancelled"),params:yD}),bD=me({src:$(),mimeType:$().optional(),sizes:gt($()).optional(),theme:kn(["light","dark"]).optional()}),Nd=me({icons:gt(bD).optional()}),Ks=me({name:$(),title:$().optional()}),sA=Ks.extend({...Ks.shape,...Nd.shape,version:$(),websiteUrl:$().optional(),description:$().optional()}),vD=pf(me({applyDefaults:Nr().optional()}),Jt($(),dr())),SD=Xg(e=>e&&typeof e=="object"&&!Array.isArray(e)&&Object.keys(e).length===0?{form:{}}:e,pf(me({form:vD.optional(),url:Mr.optional()}),Jt($(),dr()).optional())),wD=an({list:Mr.optional(),cancel:Mr.optional(),requests:an({sampling:an({createMessage:Mr.optional()}).optional(),elicitation:an({create:Mr.optional()}).optional()}).optional()}),kD=an({list:Mr.optional(),cancel:Mr.optional(),requests:an({tools:an({call:Mr.optional()}).optional()}).optional()}),xD=me({experimental:Jt($(),Mr).optional(),sampling:me({context:Mr.optional(),tools:Mr.optional()}).optional(),elicitation:SD.optional(),roots:me({listChanged:Nr().optional()}).optional(),tasks:wD.optional(),extensions:Jt($(),Mr).optional()}),TD=Mn.extend({protocolVersion:$(),capabilities:xD,clientInfo:sA}),oy=Lr.extend({method:xe("initialize"),params:TD});var AD=me({experimental:Jt($(),Mr).optional(),logging:Mr.optional(),completions:Mr.optional(),prompts:me({listChanged:Nr().optional()}).optional(),resources:me({subscribe:Nr().optional(),listChanged:Nr().optional()}).optional(),tools:me({listChanged:Nr().optional()}).optional(),tasks:kD.optional(),extensions:Jt($(),Mr).optional()}),OD=Ur.extend({protocolVersion:$(),capabilities:AD,serverInfo:sA,instructions:$().optional()}),ay=Kn.extend({method:xe("notifications/initialized"),params:Bn.optional()});var vf=Lr.extend({method:xe("ping"),params:Mn.optional()}),CD=me({progress:Et(),total:ur(Et()),message:ur($())}),ED=me({...Bn.shape,...CD.shape,progressToken:QT}),Sf=Kn.extend({method:xe("notifications/progress"),params:ED}),PD=Mn.extend({cursor:eA.optional()}),Gd=Lr.extend({params:PD.optional()}),Fd=Ur.extend({nextCursor:eA.optional()}),RD=kn(["working","input_required","completed","failed","cancelled"]),Dd=me({taskId:$(),status:RD,ttl:rr([Et(),WT()]),createdAt:$(),lastUpdatedAt:$(),pollInterval:ur(Et()),statusMessage:ur($())}),Js=Ur.extend({task:Dd}),ID=Bn.merge(Dd),qd=Kn.extend({method:xe("notifications/tasks/status"),params:ID}),wf=Lr.extend({method:xe("tasks/get"),params:Mn.extend({taskId:$()})}),kf=Ur.merge(Dd),xf=Lr.extend({method:xe("tasks/result"),params:Mn.extend({taskId:$()})}),fY=Ur.loose(),Tf=Gd.extend({method:xe("tasks/list")}),Af=Fd.extend({tasks:gt(Dd)}),Of=Lr.extend({method:xe("tasks/cancel"),params:Mn.extend({taskId:$()})}),lA=Ur.merge(Dd),dA=me({uri:$(),mimeType:ur($()),_meta:Jt($(),dr()).optional()}),uA=dA.extend({text:$()}),sy=$().refine(e=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),cA=dA.extend({blob:sy}),Ld=kn(["user","assistant"]),Ys=me({audience:gt(Ld).optional(),priority:Et().min(0).max(1).optional(),lastModified:$d.datetime({offset:!0}).optional()}),fA=me({...Ks.shape,...Nd.shape,uri:$(),description:ur($()),mimeType:ur($()),size:ur(Et()),annotations:Ys.optional(),_meta:ur(an({}))}),$D=me({...Ks.shape,...Nd.shape,uriTemplate:$(),description:ur($()),mimeType:ur($()),annotations:Ys.optional(),_meta:ur(an({}))}),Xs=Gd.extend({method:xe("resources/list")}),MD=Fd.extend({resources:gt(fA)}),Qs=Gd.extend({method:xe("resources/templates/list")}),jD=Fd.extend({resourceTemplates:gt($D)}),ly=Mn.extend({uri:$()}),zD=ly,Cf=Lr.extend({method:xe("resources/read"),params:zD}),ND=Ur.extend({contents:gt(rr([uA,cA]))}),GD=Kn.extend({method:xe("notifications/resources/list_changed"),params:Bn.optional()}),FD=ly,DD=Lr.extend({method:xe("resources/subscribe"),params:FD}),qD=ly,LD=Lr.extend({method:xe("resources/unsubscribe"),params:qD}),UD=Bn.extend({uri:$()}),WD=Kn.extend({method:xe("notifications/resources/updated"),params:UD}),ZD=me({name:$(),description:ur($()),required:ur(Nr())}),VD=me({...Ks.shape,...Nd.shape,description:ur($()),arguments:ur(gt(ZD)),_meta:ur(an({}))}),Ef=Gd.extend({method:xe("prompts/list")}),HD=Fd.extend({prompts:gt(VD)}),BD=Mn.extend({name:$(),arguments:Jt($(),$()).optional()}),Pf=Lr.extend({method:xe("prompts/get"),params:BD}),dy=me({type:xe("text"),text:$(),annotations:Ys.optional(),_meta:Jt($(),dr()).optional()}),uy=me({type:xe("image"),data:sy,mimeType:$(),annotations:Ys.optional(),_meta:Jt($(),dr()).optional()}),cy=me({type:xe("audio"),data:sy,mimeType:$(),annotations:Ys.optional(),_meta:Jt($(),dr()).optional()}),KD=me({type:xe("tool_use"),name:$(),id:$(),input:Jt($(),dr()),_meta:Jt($(),dr()).optional()}),JD=me({type:xe("resource"),resource:rr([uA,cA]),annotations:Ys.optional(),_meta:Jt($(),dr()).optional()}),YD=fA.extend({type:xe("resource_link")}),fy=rr([dy,uy,cy,YD,JD]),XD=me({role:Ld,content:fy}),QD=Ur.extend({description:$().optional(),messages:gt(XD)}),eq=Kn.extend({method:xe("notifications/prompts/list_changed"),params:Bn.optional()}),tq=me({title:$().optional(),readOnlyHint:Nr().optional(),destructiveHint:Nr().optional(),idempotentHint:Nr().optional(),openWorldHint:Nr().optional()}),rq=me({taskSupport:kn(["required","optional","forbidden"]).optional()}),mA=me({...Ks.shape,...Nd.shape,description:$().optional(),inputSchema:me({type:xe("object"),properties:Jt($(),Mr).optional(),required:gt($()).optional()}).catchall(dr()),outputSchema:me({type:xe("object"),properties:Jt($(),Mr).optional(),required:gt($()).optional()}).catchall(dr()).optional(),annotations:tq.optional(),execution:rq.optional(),_meta:Jt($(),dr()).optional()}),Rf=Gd.extend({method:xe("tools/list")}),nq=Fd.extend({tools:gt(mA)}),If=Ur.extend({content:gt(fy).default([]),structuredContent:Jt($(),dr()).optional(),isError:Nr().optional()}),mY=If.or(Ur.extend({toolResult:dr()})),iq=jd.extend({name:$(),arguments:Jt($(),dr()).optional()}),el=Lr.extend({method:xe("tools/call"),params:iq}),oq=Kn.extend({method:xe("notifications/tools/list_changed"),params:Bn.optional()}),pY=me({autoRefresh:Nr().default(!0),debounceMs:Et().int().nonnegative().default(300)}),Ud=kn(["debug","info","notice","warning","error","critical","alert","emergency"]),aq=Mn.extend({level:Ud}),my=Lr.extend({method:xe("logging/setLevel"),params:aq}),sq=Bn.extend({level:Ud,logger:$().optional(),data:dr()}),lq=Kn.extend({method:xe("notifications/message"),params:sq}),dq=me({name:$().optional()}),uq=me({hints:gt(dq).optional(),costPriority:Et().min(0).max(1).optional(),speedPriority:Et().min(0).max(1).optional(),intelligencePriority:Et().min(0).max(1).optional()}),cq=me({mode:kn(["auto","required","none"]).optional()}),fq=me({type:xe("tool_result"),toolUseId:$().describe("The unique identifier for the corresponding tool call."),content:gt(fy).default([]),structuredContent:me({}).loose().optional(),isError:Nr().optional(),_meta:Jt($(),dr()).optional()}),mq=Yg("type",[dy,uy,cy]),hf=Yg("type",[dy,uy,cy,KD,fq]),pq=me({role:Ld,content:rr([hf,gt(hf)]),_meta:Jt($(),dr()).optional()}),hq=jd.extend({messages:gt(pq),modelPreferences:uq.optional(),systemPrompt:$().optional(),includeContext:kn(["none","thisServer","allServers"]).optional(),temperature:Et().optional(),maxTokens:Et().int(),stopSequences:gt($()).optional(),metadata:Mr.optional(),tools:gt(mA).optional(),toolChoice:cq.optional()}),_q=Lr.extend({method:xe("sampling/createMessage"),params:hq}),Wd=Ur.extend({model:$(),stopReason:ur(kn(["endTurn","stopSequence","maxTokens"]).or($())),role:Ld,content:mq}),py=Ur.extend({model:$(),stopReason:ur(kn(["endTurn","stopSequence","maxTokens","toolUse"]).or($())),role:Ld,content:rr([hf,gt(hf)])}),gq=me({type:xe("boolean"),title:$().optional(),description:$().optional(),default:Nr().optional()}),yq=me({type:xe("string"),title:$().optional(),description:$().optional(),minLength:Et().optional(),maxLength:Et().optional(),format:kn(["email","uri","date","date-time"]).optional(),default:$().optional()}),bq=me({type:kn(["number","integer"]),title:$().optional(),description:$().optional(),minimum:Et().optional(),maximum:Et().optional(),default:Et().optional()}),vq=me({type:xe("string"),title:$().optional(),description:$().optional(),enum:gt($()),default:$().optional()}),Sq=me({type:xe("string"),title:$().optional(),description:$().optional(),oneOf:gt(me({const:$(),title:$()})),default:$().optional()}),wq=me({type:xe("string"),title:$().optional(),description:$().optional(),enum:gt($()),enumNames:gt($()).optional(),default:$().optional()}),kq=rr([vq,Sq]),xq=me({type:xe("array"),title:$().optional(),description:$().optional(),minItems:Et().optional(),maxItems:Et().optional(),items:me({type:xe("string"),enum:gt($())}),default:gt($()).optional()}),Tq=me({type:xe("array"),title:$().optional(),description:$().optional(),minItems:Et().optional(),maxItems:Et().optional(),items:me({anyOf:gt(me({const:$(),title:$()}))}),default:gt($()).optional()}),Aq=rr([xq,Tq]),Oq=rr([wq,kq,Aq]),Cq=rr([Oq,gq,yq,bq]),Eq=jd.extend({mode:xe("form").optional(),message:$(),requestedSchema:me({type:xe("object"),properties:Jt($(),Cq),required:gt($()).optional()})}),Pq=jd.extend({mode:xe("url"),message:$(),elicitationId:$(),url:$().url()}),Rq=rr([Eq,Pq]),Iq=Lr.extend({method:xe("elicitation/create"),params:Rq}),$q=Bn.extend({elicitationId:$()}),Mq=Kn.extend({method:xe("notifications/elicitation/complete"),params:$q}),tl=Ur.extend({action:kn(["accept","decline","cancel"]),content:Xg(e=>e===null?void 0:e,Jt($(),rr([$(),Et(),Nr(),gt($())])).optional())}),jq=me({type:xe("ref/resource"),uri:$()});var zq=me({type:xe("ref/prompt"),name:$()}),Nq=Mn.extend({ref:rr([zq,jq]),argument:me({name:$(),value:$()}),context:me({arguments:Jt($(),$()).optional()}).optional()}),$f=Lr.extend({method:xe("completion/complete"),params:Nq});function pA(e){if(e.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${e.params.ref.type}`)}function hA(e){if(e.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${e.params.ref.type}`)}var Gq=Ur.extend({completion:an({values:gt($()).max(100),total:ur(Et().int()),hasMore:ur(Nr())})}),Fq=me({uri:$().startsWith("file://"),name:$().optional(),_meta:Jt($(),dr()).optional()}),Dq=Lr.extend({method:xe("roots/list"),params:Mn.optional()}),hy=Ur.extend({roots:gt(Fq)}),qq=Kn.extend({method:xe("notifications/roots/list_changed"),params:Bn.optional()}),hY=rr([vf,oy,$f,my,Pf,Ef,Xs,Qs,Cf,DD,LD,el,Rf,wf,xf,Tf,Of]),_Y=rr([bf,Sf,ay,qq,qd]),gY=rr([yf,Wd,py,tl,hy,kf,Af,Js]),yY=rr([vf,_q,Iq,Dq,wf,xf,Tf,Of]),bY=rr([bf,Sf,lq,WD,GD,oq,eq,qd,Mq]),vY=rr([yf,OD,Gq,QD,HD,MD,jD,ND,If,nq,kf,Af,Js]),be=class e extends Error{constructor(t,r,n){super(`MCP error ${t}: ${r}`),this.code=t,this.data=n,this.name="McpError"}static fromError(t,r,n){if(t===Re.UrlElicitationRequired&&n){let i=n;if(i.elicitations)return new Qg(i.elicitations,r)}return new e(t,r,n)}},Qg=class extends be{constructor(t,r=`URL elicitation${t.length>1?"s":""} required`){super(Re.UrlElicitationRequired,r,{elicitations:t})}get elicitations(){return this.data?.elicitations??[]}};var Wq=z("ZodMiniType",(e,t)=>{if(!e._zod)throw new Error("Uninitialized schema in ZodMiniType.");Mt.init(e,t),e.def=t,e.parse=(r,n)=>l_(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>za(e,r,n),e.parseAsync=async(r,n)=>u_(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>Na(e,r,n),e.check=(...r)=>e.clone({...t,checks:[...t.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),e.clone=(r,n)=>$n(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e))});var Zq=z("ZodMiniObject",(e,t)=>{nf.init(e,t),Wq.init(e,t),ht.defineLazy(e,"shape",()=>t.shape)});function _y(e,t){let r={type:"object",get shape(){return ht.assignProp(this,"shape",{...e}),this.shape},...ht.normalizeParams(t)};return new Zq(r)}function Jn(e){return!!e._zod}function Da(e){let t=Object.values(e);if(t.length===0)return _y({});let r=t.every(Jn),n=t.every(i=>!Jn(i));if(r)return _y(e);if(n)return Rh(e);throw new Error("Mixed Zod versions detected in object shape.")}function $o(e,t){return Jn(e)?za(e,t):e.safeParse(t)}async function Mf(e,t){return Jn(e)?await Na(e,t):await e.safeParseAsync(t)}function Mo(e){if(!e)return;let t;if(Jn(e)?t=e._zod?.def?.shape:t=e.shape,!!t){if(typeof t=="function")try{return t()}catch{return}return t}}function rl(e){if(e){if(typeof e=="object"){let t=e,r=e;if(!t._def&&!r._zod){let n=Object.values(e);if(n.length>0&&n.every(i=>typeof i=="object"&&i!==null&&(i._def!==void 0||i._zod!==void 0||typeof i.parse=="function")))return Da(e)}}if(Jn(e)){let r=e._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return e}else if(e.shape!==void 0)return e}}function jf(e){if(e&&typeof e=="object"){if("message"in e&&typeof e.message=="string")return e.message;if("issues"in e&&Array.isArray(e.issues)&&e.issues.length>0){let t=e.issues[0];if(t&&typeof t=="object"&&"message"in t)return String(t.message)}try{return JSON.stringify(e)}catch{return String(e)}}return String(e)}function _A(e){return e.description}function gA(e){if(Jn(e))return e._zod?.def?.type==="optional";let t=e;return typeof e.isOptional=="function"?e.isOptional():t._def?.typeName==="ZodOptional"}function zf(e){if(Jn(e)){let o=e._zod?.def;if(o){if(o.value!==void 0)return o.value;if(Array.isArray(o.values)&&o.values.length>0)return o.values[0]}}let r=e._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=e.value;if(n!==void 0)return n}function jo(e){return e==="completed"||e==="failed"||e==="cancelled"}var bA=Symbol("Let zodToJsonSchema decide on which parser to use");var yA={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},vA=e=>typeof e=="string"?{...yA,name:e}:{...yA,...e};var SA=e=>{let t=vA(e),r=t.name!==void 0?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([n,i])=>[i._def,{def:i._def,path:[...t.basePath,t.definitionPath,n],jsonSchema:void 0}]))}};function gy(e,t,r,n){n?.errorMessages&&r&&(e.errorMessage={...e.errorMessage,[t]:r})}function yt(e,t,r,n,i){e[t]=r,gy(e,t,n,i)}var Nf=(e,t)=>{let r=0;for(;r<e.length&&r<t.length&&e[r]===t[r];r++);return[(e.length-r).toString(),...t.slice(r)].join("/")};function cr(e){if(e.target!=="openAi")return{};let t=[...e.basePath,e.definitionPath,e.openAiAnyTypeName];return e.flags.hasReferencedOpenAiAnyType=!0,{$ref:e.$refStrategy==="relative"?Nf(t,e.currentPath):t.join("/")}}function wA(e,t){let r={type:"array"};return e.type?._def&&e.type?._def?.typeName!==Q.ZodAny&&(r.items=De(e.type._def,{...t,currentPath:[...t.currentPath,"items"]})),e.minLength&&yt(r,"minItems",e.minLength.value,e.minLength.message,t),e.maxLength&&yt(r,"maxItems",e.maxLength.value,e.maxLength.message,t),e.exactLength&&(yt(r,"minItems",e.exactLength.value,e.exactLength.message,t),yt(r,"maxItems",e.exactLength.value,e.exactLength.message,t)),r}function kA(e,t){let r={type:"integer",format:"int64"};if(!e.checks)return r;for(let n of e.checks)switch(n.kind){case"min":t.target==="jsonSchema7"?n.inclusive?yt(r,"minimum",n.value,n.message,t):yt(r,"exclusiveMinimum",n.value,n.message,t):(n.inclusive||(r.exclusiveMinimum=!0),yt(r,"minimum",n.value,n.message,t));break;case"max":t.target==="jsonSchema7"?n.inclusive?yt(r,"maximum",n.value,n.message,t):yt(r,"exclusiveMaximum",n.value,n.message,t):(n.inclusive||(r.exclusiveMaximum=!0),yt(r,"maximum",n.value,n.message,t));break;case"multipleOf":yt(r,"multipleOf",n.value,n.message,t);break}return r}function xA(){return{type:"boolean"}}function Gf(e,t){return De(e.type._def,t)}var TA=(e,t)=>De(e.innerType._def,t);function yy(e,t,r){let n=r??t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((i,o)=>yy(e,t,i))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return Hq(e,t)}}var Hq=(e,t)=>{let r={type:"integer",format:"unix-time"};if(t.target==="openApi3")return r;for(let n of e.checks)switch(n.kind){case"min":yt(r,"minimum",n.value,n.message,t);break;case"max":yt(r,"maximum",n.value,n.message,t);break}return r};function AA(e,t){return{...De(e.innerType._def,t),default:e.defaultValue()}}function OA(e,t){return t.effectStrategy==="input"?De(e.schema._def,t):cr(t)}function CA(e){return{type:"string",enum:Array.from(e.values)}}var Bq=e=>"type"in e&&e.type==="string"?!1:"allOf"in e;function EA(e,t){let r=[De(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),De(e.right._def,{...t,currentPath:[...t.currentPath,"allOf","1"]})].filter(o=>!!o),n=t.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,i=[];return r.forEach(o=>{if(Bq(o))i.push(...o.allOf),o.unevaluatedProperties===void 0&&(n=void 0);else{let a=o;if("additionalProperties"in o&&o.additionalProperties===!1){let{additionalProperties:s,...l}=o;a=l}else n=void 0;i.push(a)}}),i.length?{allOf:i,...n}:void 0}function PA(e,t){let r=typeof e.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(e.value)?"array":"object"}:t.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[e.value]}:{type:r==="bigint"?"integer":r,const:e.value}}var by,hi={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(by===void 0&&(by=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),by),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Ff(e,t){let r={type:"string"};if(e.checks)for(let n of e.checks)switch(n.kind){case"min":yt(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,t);break;case"max":yt(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,t);break;case"email":switch(t.emailStrategy){case"format:email":_i(r,"email",n.message,t);break;case"format:idn-email":_i(r,"idn-email",n.message,t);break;case"pattern:zod":sn(r,hi.email,n.message,t);break}break;case"url":_i(r,"uri",n.message,t);break;case"uuid":_i(r,"uuid",n.message,t);break;case"regex":sn(r,n.regex,n.message,t);break;case"cuid":sn(r,hi.cuid,n.message,t);break;case"cuid2":sn(r,hi.cuid2,n.message,t);break;case"startsWith":sn(r,RegExp(`^${vy(n.value,t)}`),n.message,t);break;case"endsWith":sn(r,RegExp(`${vy(n.value,t)}$`),n.message,t);break;case"datetime":_i(r,"date-time",n.message,t);break;case"date":_i(r,"date",n.message,t);break;case"time":_i(r,"time",n.message,t);break;case"duration":_i(r,"duration",n.message,t);break;case"length":yt(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,t),yt(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,t);break;case"includes":{sn(r,RegExp(vy(n.value,t)),n.message,t);break}case"ip":{n.version!=="v6"&&_i(r,"ipv4",n.message,t),n.version!=="v4"&&_i(r,"ipv6",n.message,t);break}case"base64url":sn(r,hi.base64url,n.message,t);break;case"jwt":sn(r,hi.jwt,n.message,t);break;case"cidr":{n.version!=="v6"&&sn(r,hi.ipv4Cidr,n.message,t),n.version!=="v4"&&sn(r,hi.ipv6Cidr,n.message,t);break}case"emoji":sn(r,hi.emoji(),n.message,t);break;case"ulid":{sn(r,hi.ulid,n.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{_i(r,"binary",n.message,t);break}case"contentEncoding:base64":{yt(r,"contentEncoding","base64",n.message,t);break}case"pattern:zod":{sn(r,hi.base64,n.message,t);break}}break}case"nanoid":sn(r,hi.nanoid,n.message,t);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function vy(e,t){return t.patternStrategy==="escape"?Jq(e):e}var Kq=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Jq(e){let t="";for(let r=0;r<e.length;r++)Kq.has(e[r])||(t+="\\"),t+=e[r];return t}function _i(e,t,r,n){e.format||e.anyOf?.some(i=>i.format)?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format,...e.errorMessage&&n.errorMessages&&{errorMessage:{format:e.errorMessage.format}}}),delete e.format,e.errorMessage&&(delete e.errorMessage.format,Object.keys(e.errorMessage).length===0&&delete e.errorMessage)),e.anyOf.push({format:t,...r&&n.errorMessages&&{errorMessage:{format:r}}})):yt(e,"format",t,r,n)}function sn(e,t,r,n){e.pattern||e.allOf?.some(i=>i.pattern)?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern,...e.errorMessage&&n.errorMessages&&{errorMessage:{pattern:e.errorMessage.pattern}}}),delete e.pattern,e.errorMessage&&(delete e.errorMessage.pattern,Object.keys(e.errorMessage).length===0&&delete e.errorMessage)),e.allOf.push({pattern:RA(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):yt(e,"pattern",RA(t,n),r,n)}function RA(e,t){if(!t.applyRegexFlags||!e.flags)return e.source;let r={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},n=r.i?e.source.toLowerCase():e.source,i="",o=!1,a=!1,s=!1;for(let l=0;l<n.length;l++){if(o){i+=n[l],o=!1;continue}if(r.i){if(a){if(n[l].match(/[a-z]/)){s?(i+=n[l],i+=`${n[l-2]}-${n[l]}`.toUpperCase(),s=!1):n[l+1]==="-"&&n[l+2]?.match(/[a-z]/)?(i+=n[l],s=!0):i+=`${n[l]}${n[l].toUpperCase()}`;continue}}else if(n[l].match(/[a-z]/)){i+=`[${n[l]}${n[l].toUpperCase()}]`;continue}}if(r.m){if(n[l]==="^"){i+=`(^|(?<=[\r
|
|
317
317
|
]))`;continue}else if(n[l]==="$"){i+=`($|(?=[\r
|
|
318
318
|
]))`;continue}}if(r.s&&n[l]==="."){i+=a?`${n[l]}\r
|
|
319
319
|
`:`[${n[l]}\r
|
|
320
|
-
]`;continue}i+=n[l],n[l]==="\\"?o=!0:a&&n[l]==="]"?a=!1:!a&&n[l]==="["&&(a=!0)}try{new RegExp(i)}catch{return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return i}function Df(e,t){if(t.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),t.target==="openApi3"&&e.keyType?._def.typeName===Q.ZodEnum)return{type:"object",required:e.keyType._def.values,properties:e.keyType._def.values.reduce((n,i)=>({...n,[i]:De(e.valueType._def,{...t,currentPath:[...t.currentPath,"properties",i]})??cr(t)}),{}),additionalProperties:t.rejectedAdditionalProperties};let r={type:"object",additionalProperties:De(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]})??t.allowedAdditionalProperties};if(t.target==="openApi3")return r;if(e.keyType?._def.typeName===Q.ZodString&&e.keyType._def.checks?.length){let{type:n,...i}=Ff(e.keyType._def,t);return{...r,propertyNames:i}}else{if(e.keyType?._def.typeName===Q.ZodEnum)return{...r,propertyNames:{enum:e.keyType._def.values}};if(e.keyType?._def.typeName===Q.ZodBranded&&e.keyType._def.type._def.typeName===Q.ZodString&&e.keyType._def.type._def.checks?.length){let{type:n,...i}=Gf(e.keyType._def,t);return{...r,propertyNames:i}}}return r}function IA(e,t){if(t.mapStrategy==="record")return Df(e,t);let r=De(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||cr(t),n=De(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||cr(t);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function $A(e){let t=e.values,n=Object.keys(e.values).filter(o=>typeof t[t[o]]!="number").map(o=>t[o]),i=Array.from(new Set(n.map(o=>typeof o)));return{type:i.length===1?i[0]==="string"?"string":"number":["string","number"],enum:n}}function MA(e){return e.target==="openAi"?void 0:{not:cr({...e,currentPath:[...e.currentPath,"not"]})}}function jA(e){return e.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Zd={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function NA(e,t){if(t.target==="openApi3")return zA(e,t);let r=e.options instanceof Map?Array.from(e.options.values()):e.options;if(r.every(n=>n._def.typeName in Zd&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((i,o)=>{let a=Zd[o._def.typeName];return a&&!i.includes(a)?[...i,a]:i},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((i,o)=>{let a=typeof o._def.value;switch(a){case"string":case"number":case"boolean":return[...i,a];case"bigint":return[...i,"integer"];case"object":if(o._def.value===null)return[...i,"null"];default:return i}},[]);if(n.length===r.length){let i=n.filter((o,a,s)=>s.indexOf(o)===a);return{type:i.length>1?i:i[0],enum:r.reduce((o,a)=>o.includes(a._def.value)?o:[...o,a._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,i)=>[...n,...i._def.values.filter(o=>!n.includes(o))],[])};return zA(e,t)}var zA=(e,t)=>{let r=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((n,i)=>De(n._def,{...t,currentPath:[...t.currentPath,"anyOf",`${i}`]})).filter(n=>!!n&&(!t.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function GA(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return t.target==="openApi3"?{type:Zd[e.innerType._def.typeName],nullable:!0}:{type:[Zd[e.innerType._def.typeName],"null"]};if(t.target==="openApi3"){let n=De(e.innerType._def,{...t,currentPath:[...t.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=De(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function FA(e,t){let r={type:"number"};if(!e.checks)return r;for(let n of e.checks)switch(n.kind){case"int":r.type="integer",gy(r,"type",n.message,t);break;case"min":t.target==="jsonSchema7"?n.inclusive?yt(r,"minimum",n.value,n.message,t):yt(r,"exclusiveMinimum",n.value,n.message,t):(n.inclusive||(r.exclusiveMinimum=!0),yt(r,"minimum",n.value,n.message,t));break;case"max":t.target==="jsonSchema7"?n.inclusive?yt(r,"maximum",n.value,n.message,t):yt(r,"exclusiveMaximum",n.value,n.message,t):(n.inclusive||(r.exclusiveMaximum=!0),yt(r,"maximum",n.value,n.message,t));break;case"multipleOf":yt(r,"multipleOf",n.value,n.message,t);break}return r}function DA(e,t){let r=t.target==="openAi",n={type:"object",properties:{}},i=[],o=e.shape();for(let s in o){let l=o[s];if(l===void 0||l._def===void 0)continue;let d=Yq(l);d&&r&&(l._def.typeName==="ZodOptional"&&(l=l._def.innerType),l.isNullable()||(l=l.nullable()),d=!1);let u=De(l._def,{...t,currentPath:[...t.currentPath,"properties",s],propertyPath:[...t.currentPath,"properties",s]});u!==void 0&&(n.properties[s]=u,d||i.push(s))}i.length&&(n.required=i);let a=Jq(e,t);return a!==void 0&&(n.additionalProperties=a),n}function Jq(e,t){if(e.catchall._def.typeName!=="ZodNever")return De(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return t.removeAdditionalStrategy==="strict"?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function Yq(e){try{return e.isOptional()}catch{return!0}}var qA=(e,t)=>{if(t.currentPath.toString()===t.propertyPath?.toString())return De(e.innerType._def,t);let r=De(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return r?{anyOf:[{not:cr(t)},r]}:cr(t)};var LA=(e,t)=>{if(t.pipeStrategy==="input")return De(e.in._def,t);if(t.pipeStrategy==="output")return De(e.out._def,t);let r=De(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),n=De(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(i=>i!==void 0)}};function UA(e,t){return De(e.type._def,t)}function WA(e,t){let n={type:"array",uniqueItems:!0,items:De(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};return e.minSize&&yt(n,"minItems",e.minSize.value,e.minSize.message,t),e.maxSize&&yt(n,"maxItems",e.maxSize.value,e.maxSize.message,t),n}function ZA(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((r,n)=>De(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:De(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((r,n)=>De(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function VA(e){return{not:cr(e)}}function HA(e){return cr(e)}var BA=(e,t)=>De(e.innerType._def,t);var KA=(e,t,r)=>{switch(t){case Q.ZodString:return Ff(e,r);case Q.ZodNumber:return FA(e,r);case Q.ZodObject:return DA(e,r);case Q.ZodBigInt:return kA(e,r);case Q.ZodBoolean:return xA();case Q.ZodDate:return yy(e,r);case Q.ZodUndefined:return VA(r);case Q.ZodNull:return jA(r);case Q.ZodArray:return wA(e,r);case Q.ZodUnion:case Q.ZodDiscriminatedUnion:return NA(e,r);case Q.ZodIntersection:return EA(e,r);case Q.ZodTuple:return ZA(e,r);case Q.ZodRecord:return Df(e,r);case Q.ZodLiteral:return PA(e,r);case Q.ZodEnum:return CA(e);case Q.ZodNativeEnum:return $A(e);case Q.ZodNullable:return GA(e,r);case Q.ZodOptional:return qA(e,r);case Q.ZodMap:return IA(e,r);case Q.ZodSet:return WA(e,r);case Q.ZodLazy:return()=>e.getter()._def;case Q.ZodPromise:return UA(e,r);case Q.ZodNaN:case Q.ZodNever:return MA(r);case Q.ZodEffects:return OA(e,r);case Q.ZodAny:return cr(r);case Q.ZodUnknown:return HA(r);case Q.ZodDefault:return AA(e,r);case Q.ZodBranded:return Gf(e,r);case Q.ZodReadonly:return BA(e,r);case Q.ZodCatch:return TA(e,r);case Q.ZodPipeline:return LA(e,r);case Q.ZodFunction:case Q.ZodVoid:case Q.ZodSymbol:return;default:return(n=>{})(t)}};function De(e,t,r=!1){let n=t.seen.get(e);if(t.override){let s=t.override?.(e,t,n,r);if(s!==bA)return s}if(n&&!r){let s=Xq(n,t);if(s!==void 0)return s}let i={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,i);let o=KA(e,e.typeName,t),a=typeof o=="function"?De(o(),t):o;if(a&&Qq(e,t,a),t.postProcess){let s=t.postProcess(a,e,t);return i.jsonSchema=a,s}return i.jsonSchema=a,a}var Xq=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:Nf(t.currentPath,e.path)};case"none":case"seen":return e.path.length<t.currentPath.length&&e.path.every((r,n)=>t.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),cr(t)):t.$refStrategy==="seen"?cr(t):void 0}},Qq=(e,t,r)=>(e.description&&(r.description=e.description,t.markdownDescription&&(r.markdownDescription=e.description)),r);var Sy=(e,t)=>{let r=SA(t),n=typeof t=="object"&&t.definitions?Object.entries(t.definitions).reduce((l,[d,u])=>({...l,[d]:De(u._def,{...r,currentPath:[...r.basePath,r.definitionPath,d]},!0)??cr(r)}),{}):void 0,i=typeof t=="string"?t:t?.nameStrategy==="title"?void 0:t?.name,o=De(e._def,i===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,i]},!1)??cr(r),a=typeof t=="object"&&t.name!==void 0&&t.nameStrategy==="title"?t.name:void 0;a!==void 0&&(o.title=a),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let s=i===void 0?n?{...o,[r.definitionPath]:n}:o:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,i].join("/"),[r.definitionPath]:{...n,[i]:o}};return r.target==="jsonSchema7"?s.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(s.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in s||"oneOf"in s||"allOf"in s||"type"in s&&Array.isArray(s.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),s};function eL(e){return!e||e==="jsonSchema7"||e==="draft-7"?"draft-7":e==="jsonSchema2019-09"||e==="draft-2020-12"?"draft-2020-12":"draft-7"}function wy(e,t){return Jn(e)?Wg(e,{target:eL(t?.target),io:t?.pipeStrategy??"input"}):Sy(e,{strictUnions:t?.strictUnions??!0,pipeStrategy:t?.pipeStrategy??"input"})}function ky(e){let r=Mo(e)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=zf(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function xy(e,t){let r=$o(e,t);if(!r.success)throw r.error;return r.data}var tL=6e4,qf=class{constructor(t){this._options=t,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(bf,r=>{this._oncancel(r)}),this.setNotificationHandler(Sf,r=>{this._onprogress(r)}),this.setRequestHandler(vf,r=>({})),this._taskStore=t?.taskStore,this._taskMessageQueue=t?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(wf,async(r,n)=>{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new be(Re.InvalidParams,"Failed to retrieve task: Task not found");return{...i}}),this.setRequestHandler(xf,async(r,n)=>{let i=async()=>{let o=r.params.taskId;if(this._taskMessageQueue){let s;for(;s=await this._taskMessageQueue.dequeue(o,n.sessionId);){if(s.type==="response"||s.type==="error"){let l=s.message,d=l.id,u=this._requestResolvers.get(d);if(u)if(this._requestResolvers.delete(d),s.type==="response")u(l);else{let c=l,f=new be(c.error.code,c.error.message,c.error.data);u(f)}else{let c=s.type==="response"?"Response":"Error";this._onerror(new Error(`${c} handler missing for request ${d}`))}continue}await this._transport?.send(s.message,{relatedRequestId:n.requestId})}}let a=await this._taskStore.getTask(o,n.sessionId);if(!a)throw new be(Re.InvalidParams,`Task not found: ${o}`);if(!jo(a.status))return await this._waitForTaskUpdate(o,n.signal),await i();if(jo(a.status)){let s=await this._taskStore.getTaskResult(o,n.sessionId);return this._clearTaskQueue(o),{...s,_meta:{...s._meta,[Io]:{taskId:o}}}}return await i()};return await i()}),this.setRequestHandler(Tf,async(r,n)=>{try{let{tasks:i,nextCursor:o}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:i,nextCursor:o,_meta:{}}}catch(i){throw new be(Re.InvalidParams,`Failed to list tasks: ${i instanceof Error?i.message:String(i)}`)}}),this.setRequestHandler(Of,async(r,n)=>{try{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new be(Re.InvalidParams,`Task not found: ${r.params.taskId}`);if(jo(i.status))throw new be(Re.InvalidParams,`Cannot cancel task in terminal status: ${i.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new be(Re.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...o}}catch(i){throw i instanceof be?i:new be(Re.InvalidRequest,`Failed to cancel task: ${i instanceof Error?i.message:String(i)}`)}}))}async _oncancel(t){if(!t.params.requestId)return;this._requestHandlerAbortControllers.get(t.params.requestId)?.abort(t.params.reason)}_setupTimeout(t,r,n,i,o=!1){this._timeoutInfo.set(t,{timeoutId:setTimeout(i,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:o,onTimeout:i})}_resetTimeout(t){let r=this._timeoutInfo.get(t);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(t),be.fromError(Re.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(t){let r=this._timeoutInfo.get(t);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(t))}async connect(t){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=t;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=o=>{n?.(o),this._onerror(o)};let i=this._transport?.onmessage;this._transport.onmessage=(o,a)=>{i?.(o,a),zd(o)||oA(o)?this._onresponse(o):ry(o)?this._onrequest(o,a):iA(o)?this._onnotification(o):this._onerror(new Error(`Unknown message type: ${JSON.stringify(o)}`))},await this._transport.start()}_onclose(){let t=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=be.fromError(Re.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of t.values())n(r)}_onerror(t){this.onerror?.(t)}_onnotification(t){let r=this._notificationHandlers.get(t.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(t)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(t,r){let n=this._requestHandlers.get(t.method)??this.fallbackRequestHandler,i=this._transport,o=t.params?._meta?.[Io]?.taskId;if(n===void 0){let u={jsonrpc:"2.0",id:t.id,error:{code:Re.MethodNotFound,message:"Method not found"}};o&&this._taskMessageQueue?this._enqueueTaskMessage(o,{type:"error",message:u,timestamp:Date.now()},i?.sessionId).catch(c=>this._onerror(new Error(`Failed to enqueue error response: ${c}`))):i?.send(u).catch(c=>this._onerror(new Error(`Failed to send an error response: ${c}`)));return}let a=new AbortController;this._requestHandlerAbortControllers.set(t.id,a);let s=tA(t.params)?t.params.task:void 0,l=this._taskStore?this.requestTaskStore(t,i?.sessionId):void 0,d={signal:a.signal,sessionId:i?.sessionId,_meta:t.params?._meta,sendNotification:async u=>{if(a.signal.aborted)return;let c={relatedRequestId:t.id};o&&(c.relatedTask={taskId:o}),await this.notification(u,c)},sendRequest:async(u,c,f)=>{if(a.signal.aborted)throw new be(Re.ConnectionClosed,"Request was cancelled");let p={...f,relatedRequestId:t.id};o&&!p.relatedTask&&(p.relatedTask={taskId:o});let m=p.relatedTask?.taskId??o;return m&&l&&await l.updateTaskStatus(m,"input_required"),await this.request(u,c,p)},authInfo:r?.authInfo,requestId:t.id,requestInfo:r?.requestInfo,taskId:o,taskStore:l,taskRequestedTtl:s?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{s&&this.assertTaskHandlerCapability(t.method)}).then(()=>n(t,d)).then(async u=>{if(a.signal.aborted)return;let c={result:u,jsonrpc:"2.0",id:t.id};o&&this._taskMessageQueue?await this._enqueueTaskMessage(o,{type:"response",message:c,timestamp:Date.now()},i?.sessionId):await i?.send(c)},async u=>{if(a.signal.aborted)return;let c={jsonrpc:"2.0",id:t.id,error:{code:Number.isSafeInteger(u.code)?u.code:Re.InternalError,message:u.message??"Internal error",...u.data!==void 0&&{data:u.data}}};o&&this._taskMessageQueue?await this._enqueueTaskMessage(o,{type:"error",message:c,timestamp:Date.now()},i?.sessionId):await i?.send(c)}).catch(u=>this._onerror(new Error(`Failed to send response: ${u}`))).finally(()=>{this._requestHandlerAbortControllers.get(t.id)===a&&this._requestHandlerAbortControllers.delete(t.id)})}_onprogress(t){let{progressToken:r,...n}=t.params,i=Number(r),o=this._progressHandlers.get(i);if(!o){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(t)}`));return}let a=this._responseHandlers.get(i),s=this._timeoutInfo.get(i);if(s&&a&&s.resetTimeoutOnProgress)try{this._resetTimeout(i)}catch(l){this._responseHandlers.delete(i),this._progressHandlers.delete(i),this._cleanupTimeout(i),a(l);return}o(n)}_onresponse(t){let r=Number(t.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),zd(t))n(t);else{let a=new be(t.error.code,t.error.message,t.error.data);n(a)}return}let i=this._responseHandlers.get(r);if(i===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(t)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let o=!1;if(zd(t)&&t.result&&typeof t.result=="object"){let a=t.result;if(a.task&&typeof a.task=="object"){let s=a.task;typeof s.taskId=="string"&&(o=!0,this._taskProgressTokens.set(s.taskId,r))}}if(o||this._progressHandlers.delete(r),zd(t))i(t);else{let a=be.fromError(t.error.code,t.error.message,t.error.data);i(a)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(t,r,n){let{task:i}=n??{};if(!i){try{yield{type:"result",result:await this.request(t,r,n)}}catch(a){yield{type:"error",error:a instanceof be?a:new be(Re.InternalError,String(a))}}return}let o;try{let a=await this.request(t,Js,n);if(a.task)o=a.task.taskId,yield{type:"taskCreated",task:a.task};else throw new be(Re.InternalError,"Task creation did not return a task");for(;;){let s=await this.getTask({taskId:o},n);if(yield{type:"taskStatus",task:s},jo(s.status)){s.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:o},r,n)}:s.status==="failed"?yield{type:"error",error:new be(Re.InternalError,`Task ${o} failed`)}:s.status==="cancelled"&&(yield{type:"error",error:new be(Re.InternalError,`Task ${o} was cancelled`)});return}if(s.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:o},r,n)};return}let l=s.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(d=>setTimeout(d,l)),n?.signal?.throwIfAborted()}}catch(a){yield{type:"error",error:a instanceof be?a:new be(Re.InternalError,String(a))}}}request(t,r,n){let{relatedRequestId:i,resumptionToken:o,onresumptiontoken:a,task:s,relatedTask:l}=n??{};return new Promise((d,u)=>{let c=b=>{u(b)};if(!this._transport){c(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(t.method),s&&this.assertTaskCapability(t.method)}catch(b){c(b);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,p={...t,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),p.params={...t.params,_meta:{...t.params?._meta||{},progressToken:f}}),s&&(p.params={...p.params,task:s}),l&&(p.params={...p.params,_meta:{...p.params?._meta||{},[Io]:l}});let m=b=>{this._responseHandlers.delete(f),this._progressHandlers.delete(f),this._cleanupTimeout(f),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:f,reason:String(b)}},{relatedRequestId:i,resumptionToken:o,onresumptiontoken:a}).catch(v=>this._onerror(new Error(`Failed to send cancellation: ${v}`)));let y=b instanceof be?b:new be(Re.RequestTimeout,String(b));u(y)};this._responseHandlers.set(f,b=>{if(!n?.signal?.aborted){if(b instanceof Error)return u(b);try{let y=$o(r,b.result);y.success?d(y.data):u(y.error)}catch(y){u(y)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let h=n?.timeout??tL,_=()=>m(be.fromError(Re.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,_,n?.resetTimeoutOnProgress??!1);let g=l?.taskId;if(g){let b=y=>{let v=this._responseHandlers.get(f);v?v(y):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,b),this._enqueueTaskMessage(g,{type:"request",message:p,timestamp:Date.now()}).catch(y=>{this._cleanupTimeout(f),u(y)})}else this._transport.send(p,{relatedRequestId:i,resumptionToken:o,onresumptiontoken:a}).catch(b=>{this._cleanupTimeout(f),u(b)})})}async getTask(t,r){return this.request({method:"tasks/get",params:t},kf,r)}async getTaskResult(t,r,n){return this.request({method:"tasks/result",params:t},r,n)}async listTasks(t,r){return this.request({method:"tasks/list",params:t},Af,r)}async cancelTask(t,r){return this.request({method:"tasks/cancel",params:t},lA,r)}async notification(t,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(t.method);let n=r?.relatedTask?.taskId;if(n){let s={...t,jsonrpc:"2.0",params:{...t.params,_meta:{...t.params?._meta||{},[Io]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:s,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(t.method)&&!t.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(t.method))return;this._pendingDebouncedNotifications.add(t.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(t.method),!this._transport)return;let s={...t,jsonrpc:"2.0"};r?.relatedTask&&(s={...s,params:{...s.params,_meta:{...s.params?._meta||{},[Io]:r.relatedTask}}}),this._transport?.send(s,r).catch(l=>this._onerror(l))});return}let a={...t,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[Io]:r.relatedTask}}}),await this._transport.send(a,r)}setRequestHandler(t,r){let n=ky(t);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(i,o)=>{let a=xy(t,i);return Promise.resolve(r(a,o))})}removeRequestHandler(t){this._requestHandlers.delete(t)}assertCanSetRequestHandler(t){if(this._requestHandlers.has(t))throw new Error(`A request handler for ${t} already exists, which would be overridden`)}setNotificationHandler(t,r){let n=ky(t);this._notificationHandlers.set(n,i=>{let o=xy(t,i);return Promise.resolve(r(o))})}removeNotificationHandler(t){this._notificationHandlers.delete(t)}_cleanupTaskProgressHandler(t){let r=this._taskProgressTokens.get(t);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(t))}async _enqueueTaskMessage(t,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let i=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(t,r,n,i)}async _clearTaskQueue(t,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(t,r);for(let i of n)if(i.type==="request"&&ry(i.message)){let o=i.message.id,a=this._requestResolvers.get(o);a?(a(new be(Re.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(o)):this._onerror(new Error(`Resolver missing for request ${o} during task ${t} cleanup`))}}}async _waitForTaskUpdate(t,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let i=await this._taskStore?.getTask(t);i?.pollInterval&&(n=i.pollInterval)}catch{}return new Promise((i,o)=>{if(r.aborted){o(new be(Re.InvalidRequest,"Request cancelled"));return}let a=setTimeout(i,n);r.addEventListener("abort",()=>{clearTimeout(a),o(new be(Re.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(t,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async i=>{if(!t)throw new Error("No request provided");return await n.createTask(i,t.id,{method:t.method,params:t.params},r)},getTask:async i=>{let o=await n.getTask(i,r);if(!o)throw new be(Re.InvalidParams,"Failed to retrieve task: Task not found");return o},storeTaskResult:async(i,o,a)=>{await n.storeTaskResult(i,o,a,r);let s=await n.getTask(i,r);if(s){let l=qd.parse({method:"notifications/tasks/status",params:s});await this.notification(l),jo(s.status)&&this._cleanupTaskProgressHandler(i)}},getTaskResult:i=>n.getTaskResult(i,r),updateTaskStatus:async(i,o,a)=>{let s=await n.getTask(i,r);if(!s)throw new be(Re.InvalidParams,`Task "${i}" not found - it may have been cleaned up`);if(jo(s.status))throw new be(Re.InvalidParams,`Cannot update task "${i}" from terminal status "${s.status}" to "${o}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(i,o,a,r);let l=await n.getTask(i,r);if(l){let d=qd.parse({method:"notifications/tasks/status",params:l});await this.notification(d),jo(l.status)&&this._cleanupTaskProgressHandler(i)}},listTasks:i=>n.listTasks(i,r)}}};function JA(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function YA(e,t){let r={...e};for(let n in t){let i=n,o=t[i];if(o===void 0)continue;let a=r[i];JA(a)&&JA(o)?r[i]={...a,...o}:r[i]=o}return r}var NE=Tw(dv(),1),GE=Tw(zE(),1);function ZV(){let e=new NE.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,GE.default)(e),e}var xm=class{constructor(t){this._ajv=t??ZV()}getValidator(t){let r="$id"in t&&typeof t.$id=="string"?this._ajv.getSchema(t.$id)??this._ajv.compile(t):this._ajv.compile(t);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var Tm=class{constructor(t){this._server=t}requestStream(t,r,n){return this._server.requestStream(t,r,n)}createMessageStream(t,r){let n=this._server.getClientCapabilities();if((t.tools||t.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(t.messages.length>0){let i=t.messages[t.messages.length-1],o=Array.isArray(i.content)?i.content:[i.content],a=o.some(u=>u.type==="tool_result"),s=t.messages.length>1?t.messages[t.messages.length-2]:void 0,l=s?Array.isArray(s.content)?s.content:[s.content]:[],d=l.some(u=>u.type==="tool_use");if(a){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!d)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(d){let u=new Set(l.filter(f=>f.type==="tool_use").map(f=>f.id)),c=new Set(o.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(u.size!==c.size||![...u].every(f=>c.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:t},Wd,r)}elicitInputStream(t,r){let n=this._server.getClientCapabilities(),i=t.mode??"form";switch(i){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let o=i==="form"&&t.mode===void 0?{...t,mode:"form"}:t;return this.requestStream({method:"elicitation/create",params:o},tl,r)}async getTask(t,r){return this._server.getTask({taskId:t},r)}async getTaskResult(t,r,n){return this._server.getTaskResult({taskId:t},r,n)}async listTasks(t,r){return this._server.listTasks(t?{cursor:t}:void 0,r)}async cancelTask(t,r){return this._server.cancelTask({taskId:t},r)}};function FE(e,t,r){if(!e)throw new Error(`${r} does not support task creation (required for ${t})`);switch(t){case"tools/call":if(!e.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${t})`);break;default:break}}function DE(e,t,r){if(!e)throw new Error(`${r} does not support task creation (required for ${t})`);switch(t){case"sampling/createMessage":if(!e.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${t})`);break;case"elicitation/create":if(!e.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${t})`);break;default:break}}var Am=class extends qf{constructor(t,r){super(r),this._serverInfo=t,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Ud.options.map((n,i)=>[n,i])),this.isMessageIgnored=(n,i)=>{let o=this._loggingLevels.get(i);return o?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(o):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new xm,this.setRequestHandler(oy,n=>this._oninitialize(n)),this.setNotificationHandler(ay,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(my,async(n,i)=>{let o=i.sessionId||i.requestInfo?.headers["mcp-session-id"]||void 0,{level:a}=n.params,s=Ud.safeParse(a);return s.success&&this._loggingLevels.set(o,s.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Tm(this)}),this._experimental}registerCapabilities(t){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=YA(this._capabilities,t)}setRequestHandler(t,r){let i=Mo(t)?.method;if(!i)throw new Error("Schema is missing a method literal");let o;if(Jn(i)){let s=i;o=s._zod?.def?.value??s.value}else{let s=i;o=s._def?.value??s.value}if(typeof o!="string")throw new Error("Schema method literal must be a string");if(o==="tools/call"){let s=async(l,d)=>{let u=$o(el,l);if(!u.success){let m=u.error instanceof Error?u.error.message:String(u.error);throw new be(Re.InvalidParams,`Invalid tools/call request: ${m}`)}let{params:c}=u.data,f=await Promise.resolve(r(l,d));if(c.task){let m=$o(Js,f);if(!m.success){let h=m.error instanceof Error?m.error.message:String(m.error);throw new be(Re.InvalidParams,`Invalid task creation result: ${h}`)}return m.data}let p=$o(If,f);if(!p.success){let m=p.error instanceof Error?p.error.message:String(p.error);throw new be(Re.InvalidParams,`Invalid tools/call result: ${m}`)}return p.data};return super.setRequestHandler(t,s)}return super.setRequestHandler(t,r)}assertCapabilityForMethod(t){switch(t){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${t})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${t})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${t})`);break;case"ping":break}}assertNotificationCapability(t){switch(t){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${t})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${t})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${t})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${t})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${t})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(t){if(this._capabilities)switch(t){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${t})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${t})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${t})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${t})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${t})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${t})`);break;case"ping":case"initialize":break}}assertTaskCapability(t){DE(this._clientCapabilities?.tasks?.requests,t,"Client")}assertTaskHandlerCapability(t){this._capabilities&&FE(this._capabilities.tasks?.requests,t,"Server")}async _oninitialize(t){let r=t.params.protocolVersion;return this._clientCapabilities=t.params.capabilities,this._clientVersion=t.params.clientInfo,{protocolVersion:XT.includes(r)?r:ey,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},yf)}async createMessage(t,r){if((t.tools||t.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(t.messages.length>0){let n=t.messages[t.messages.length-1],i=Array.isArray(n.content)?n.content:[n.content],o=i.some(d=>d.type==="tool_result"),a=t.messages.length>1?t.messages[t.messages.length-2]:void 0,s=a?Array.isArray(a.content)?a.content:[a.content]:[],l=s.some(d=>d.type==="tool_use");if(o){if(i.some(d=>d.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!l)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(l){let d=new Set(s.filter(c=>c.type==="tool_use").map(c=>c.id)),u=new Set(i.filter(c=>c.type==="tool_result").map(c=>c.toolUseId));if(d.size!==u.size||![...d].every(c=>u.has(c)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return t.tools?this.request({method:"sampling/createMessage",params:t},py,r):this.request({method:"sampling/createMessage",params:t},Wd,r)}async elicitInput(t,r){switch(t.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let i=t;return this.request({method:"elicitation/create",params:i},tl,r)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let i=t.mode==="form"?t:{...t,mode:"form"},o=await this.request({method:"elicitation/create",params:i},tl,r);if(o.action==="accept"&&o.content&&i.requestedSchema)try{let s=this._jsonSchemaValidator.getValidator(i.requestedSchema)(o.content);if(!s.valid)throw new be(Re.InvalidParams,`Elicitation response content does not match requested schema: ${s.errorMessage}`)}catch(a){throw a instanceof be?a:new be(Re.InternalError,`Error validating elicitation response: ${a instanceof Error?a.message:String(a)}`)}return o}}}createElicitationCompletionNotifier(t,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:t}},r)}async listRoots(t,r){return this.request({method:"roots/list",params:t},hy,r)}async sendLoggingMessage(t,r){if(this._capabilities.logging&&!this.isMessageIgnored(t.level,r))return this.notification({method:"notifications/message",params:t})}async sendResourceUpdated(t){return this.notification({method:"notifications/resources/updated",params:t})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}};var LE=Symbol.for("mcp.completable");function gv(e){return!!e&&typeof e=="object"&&LE in e}function UE(e){return e[LE]?.complete}var qE;(function(e){e.Completable="McpCompletable"})(qE||(qE={}));var VV=/^[A-Za-z0-9._-]{1,128}$/;function HV(e){let t=[];if(e.length===0)return{isValid:!1,warnings:["Tool name cannot be empty"]};if(e.length>128)return{isValid:!1,warnings:[`Tool name exceeds maximum length of 128 characters (current: ${e.length})`]};if(e.includes(" ")&&t.push("Tool name contains spaces, which may cause parsing issues"),e.includes(",")&&t.push("Tool name contains commas, which may cause parsing issues"),(e.startsWith("-")||e.endsWith("-"))&&t.push("Tool name starts or ends with a dash, which may cause parsing issues in some contexts"),(e.startsWith(".")||e.endsWith("."))&&t.push("Tool name starts or ends with a dot, which may cause parsing issues in some contexts"),!VV.test(e)){let r=e.split("").filter(n=>!/[A-Za-z0-9._-]/.test(n)).filter((n,i,o)=>o.indexOf(n)===i);return t.push(`Tool name contains invalid characters: ${r.map(n=>`"${n}"`).join(", ")}`,"Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)"),{isValid:!1,warnings:t}}return{isValid:!0,warnings:t}}function BV(e,t){if(t.length>0){console.warn(`Tool name validation warning for "${e}":`);for(let r of t)console.warn(` - ${r}`);console.warn("Tool registration will proceed, but this may cause compatibility issues."),console.warn("Consider updating the tool name to conform to the MCP tool naming standard."),console.warn("See SEP: Specify Format for Tool Names (https://github.com/modelcontextprotocol/modelcontextprotocol/issues/986) for more details.")}}function yv(e){let t=HV(e);return BV(e,t.warnings),t.isValid}var Om=class{constructor(t){this._mcpServer=t}registerToolTask(t,r,n){let i={taskSupport:"required",...r.execution};if(i.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${t}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(t,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,i,r._meta,n)}};var Cm=class{constructor(t,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new Am(t,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Om(this)}),this._experimental}async connect(t){return await this.server.connect(t)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Wo(Rf)),this.server.assertCanSetRequestHandler(Wo(el)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(Rf,()=>({tools:Object.entries(this._registeredTools).filter(([,t])=>t.enabled).map(([t,r])=>{let n={name:t,title:r.title,description:r.description,inputSchema:(()=>{let i=rl(r.inputSchema);return i?wy(i,{strictUnions:!0,pipeStrategy:"input"}):KV})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let i=rl(r.outputSchema);i&&(n.outputSchema=wy(i,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(el,async(t,r)=>{try{let n=this._registeredTools[t.params.name];if(!n)throw new be(Re.InvalidParams,`Tool ${t.params.name} not found`);if(!n.enabled)throw new be(Re.InvalidParams,`Tool ${t.params.name} disabled`);let i=!!t.params.task,o=n.execution?.taskSupport,a="createTask"in n.handler;if((o==="required"||o==="optional")&&!a)throw new be(Re.InternalError,`Tool ${t.params.name} has taskSupport '${o}' but was not registered with registerToolTask`);if(o==="required"&&!i)throw new be(Re.MethodNotFound,`Tool ${t.params.name} requires task augmentation (taskSupport: 'required')`);if(o==="optional"&&!i&&a)return await this.handleAutomaticTaskPolling(n,t,r);let s=await this.validateToolInput(n,t.params.arguments,t.params.name),l=await this.executeToolHandler(n,s,r);return i||await this.validateToolOutput(n,l,t.params.name),l}catch(n){if(n instanceof be&&n.code===Re.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(t){return{content:[{type:"text",text:t}],isError:!0}}async validateToolInput(t,r,n){if(!t.inputSchema)return;let o=rl(t.inputSchema)??t.inputSchema,a=await Mf(o,r);if(!a.success){let s="error"in a?a.error:"Unknown error",l=jf(s);throw new be(Re.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${l}`)}return a.data}async validateToolOutput(t,r,n){if(!t.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new be(Re.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let i=rl(t.outputSchema),o=await Mf(i,r.structuredContent);if(!o.success){let a="error"in o?o.error:"Unknown error",s=jf(a);throw new be(Re.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${s}`)}}async executeToolHandler(t,r,n){let i=t.handler;if("createTask"in i){if(!n.taskStore)throw new Error("No task store provided.");let a={...n,taskStore:n.taskStore};if(t.inputSchema){let s=i;return await Promise.resolve(s.createTask(r,a))}else{let s=i;return await Promise.resolve(s.createTask(a))}}if(t.inputSchema){let a=i;return await Promise.resolve(a(r,n))}else{let a=i;return await Promise.resolve(a(n))}}async handleAutomaticTaskPolling(t,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let i=await this.validateToolInput(t,r.params.arguments,r.params.name),o=t.handler,a={...n,taskStore:n.taskStore},s=i?await Promise.resolve(o.createTask(i,a)):await Promise.resolve(o.createTask(a)),l=s.task.taskId,d=s.task,u=d.pollInterval??5e3;for(;d.status!=="completed"&&d.status!=="failed"&&d.status!=="cancelled";){await new Promise(f=>setTimeout(f,u));let c=await n.taskStore.getTask(l);if(!c)throw new be(Re.InternalError,`Task ${l} not found during polling`);d=c}return await n.taskStore.getTaskResult(l)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Wo($f)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler($f,async t=>{switch(t.params.ref.type){case"ref/prompt":return pA(t),this.handlePromptCompletion(t,t.params.ref);case"ref/resource":return hA(t),this.handleResourceCompletion(t,t.params.ref);default:throw new be(Re.InvalidParams,`Invalid completion reference: ${t.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(t,r){let n=this._registeredPrompts[r.name];if(!n)throw new be(Re.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new be(Re.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return Su;let o=Mo(n.argsSchema)?.[t.params.argument.name];if(!gv(o))return Su;let a=UE(o);if(!a)return Su;let s=await a(t.params.argument.value,t.params.context);return ZE(s)}async handleResourceCompletion(t,r){let n=Object.values(this._registeredResourceTemplates).find(a=>a.resourceTemplate.uriTemplate.toString()===r.uri);if(!n){if(this._registeredResources[r.uri])return Su;throw new be(Re.InvalidParams,`Resource template ${t.params.ref.uri} not found`)}let i=n.resourceTemplate.completeCallback(t.params.argument.name);if(!i)return Su;let o=await i(t.params.argument.value,t.params.context);return ZE(o)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Wo(Xs)),this.server.assertCanSetRequestHandler(Wo(Qs)),this.server.assertCanSetRequestHandler(Wo(Cf)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Xs,async(t,r)=>{let n=Object.entries(this._registeredResources).filter(([o,a])=>a.enabled).map(([o,a])=>({uri:o,name:a.name,...a.metadata})),i=[];for(let o of Object.values(this._registeredResourceTemplates)){if(!o.resourceTemplate.listCallback)continue;let a=await o.resourceTemplate.listCallback(r);for(let s of a.resources)i.push({...o.metadata,...s})}return{resources:[...n,...i]}}),this.server.setRequestHandler(Qs,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(Cf,async(t,r)=>{let n=new URL(t.params.uri),i=this._registeredResources[n.toString()];if(i){if(!i.enabled)throw new be(Re.InvalidParams,`Resource ${n} disabled`);return i.readCallback(n,r)}for(let o of Object.values(this._registeredResourceTemplates)){let a=o.resourceTemplate.uriTemplate.match(n.toString());if(a)return o.readCallback(n,a,r)}throw new be(Re.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Wo(Ef)),this.server.assertCanSetRequestHandler(Wo(Pf)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Ef,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,t])=>t.enabled).map(([t,r])=>({name:t,title:r.title,description:r.description,arguments:r.argsSchema?JV(r.argsSchema):void 0}))})),this.server.setRequestHandler(Pf,async(t,r)=>{let n=this._registeredPrompts[t.params.name];if(!n)throw new be(Re.InvalidParams,`Prompt ${t.params.name} not found`);if(!n.enabled)throw new be(Re.InvalidParams,`Prompt ${t.params.name} disabled`);if(n.argsSchema){let i=rl(n.argsSchema),o=await Mf(i,t.params.arguments);if(!o.success){let l="error"in o?o.error:"Unknown error",d=jf(l);throw new be(Re.InvalidParams,`Invalid arguments for prompt ${t.params.name}: ${d}`)}let a=o.data,s=n.callback;return await Promise.resolve(s(a,r))}else{let i=n.callback;return await Promise.resolve(i(r))}}),this._promptHandlersInitialized=!0)}resource(t,r,...n){let i;typeof n[0]=="object"&&(i=n.shift());let o=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let a=this._createRegisteredResource(t,void 0,r,i,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),a}else{if(this._registeredResourceTemplates[t])throw new Error(`Resource template ${t} is already registered`);let a=this._createRegisteredResourceTemplate(t,void 0,r,i,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),a}}registerResource(t,r,n,i){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let o=this._createRegisteredResource(t,n.title,r,n,i);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),o}else{if(this._registeredResourceTemplates[t])throw new Error(`Resource template ${t} is already registered`);let o=this._createRegisteredResourceTemplate(t,n.title,r,n,i);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),o}}_createRegisteredResource(t,r,n,i,o){let a={name:t,title:r,metadata:i,readCallback:o,enabled:!0,disable:()=>a.update({enabled:!1}),enable:()=>a.update({enabled:!0}),remove:()=>a.update({uri:null}),update:s=>{typeof s.uri<"u"&&s.uri!==n&&(delete this._registeredResources[n],s.uri&&(this._registeredResources[s.uri]=a)),typeof s.name<"u"&&(a.name=s.name),typeof s.title<"u"&&(a.title=s.title),typeof s.metadata<"u"&&(a.metadata=s.metadata),typeof s.callback<"u"&&(a.readCallback=s.callback),typeof s.enabled<"u"&&(a.enabled=s.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=a,a}_createRegisteredResourceTemplate(t,r,n,i,o){let a={resourceTemplate:n,title:r,metadata:i,readCallback:o,enabled:!0,disable:()=>a.update({enabled:!1}),enable:()=>a.update({enabled:!0}),remove:()=>a.update({name:null}),update:d=>{typeof d.name<"u"&&d.name!==t&&(delete this._registeredResourceTemplates[t],d.name&&(this._registeredResourceTemplates[d.name]=a)),typeof d.title<"u"&&(a.title=d.title),typeof d.template<"u"&&(a.resourceTemplate=d.template),typeof d.metadata<"u"&&(a.metadata=d.metadata),typeof d.callback<"u"&&(a.readCallback=d.callback),typeof d.enabled<"u"&&(a.enabled=d.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[t]=a;let s=n.uriTemplate.variableNames;return Array.isArray(s)&&s.some(d=>!!n.completeCallback(d))&&this.setCompletionRequestHandler(),a}_createRegisteredPrompt(t,r,n,i,o){let a={title:r,description:n,argsSchema:i===void 0?void 0:Da(i),callback:o,enabled:!0,disable:()=>a.update({enabled:!1}),enable:()=>a.update({enabled:!0}),remove:()=>a.update({name:null}),update:s=>{typeof s.name<"u"&&s.name!==t&&(delete this._registeredPrompts[t],s.name&&(this._registeredPrompts[s.name]=a)),typeof s.title<"u"&&(a.title=s.title),typeof s.description<"u"&&(a.description=s.description),typeof s.argsSchema<"u"&&(a.argsSchema=Da(s.argsSchema)),typeof s.callback<"u"&&(a.callback=s.callback),typeof s.enabled<"u"&&(a.enabled=s.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[t]=a,i&&Object.values(i).some(l=>{let d=l instanceof yn?l._def?.innerType:l;return gv(d)})&&this.setCompletionRequestHandler(),a}_createRegisteredTool(t,r,n,i,o,a,s,l,d){yv(t);let u={title:r,description:n,inputSchema:WE(i),outputSchema:WE(o),annotations:a,execution:s,_meta:l,handler:d,enabled:!0,disable:()=>u.update({enabled:!1}),enable:()=>u.update({enabled:!0}),remove:()=>u.update({name:null}),update:c=>{typeof c.name<"u"&&c.name!==t&&(typeof c.name=="string"&&yv(c.name),delete this._registeredTools[t],c.name&&(this._registeredTools[c.name]=u)),typeof c.title<"u"&&(u.title=c.title),typeof c.description<"u"&&(u.description=c.description),typeof c.paramsSchema<"u"&&(u.inputSchema=Da(c.paramsSchema)),typeof c.outputSchema<"u"&&(u.outputSchema=Da(c.outputSchema)),typeof c.callback<"u"&&(u.handler=c.callback),typeof c.annotations<"u"&&(u.annotations=c.annotations),typeof c._meta<"u"&&(u._meta=c._meta),typeof c.enabled<"u"&&(u.enabled=c.enabled),this.sendToolListChanged()}};return this._registeredTools[t]=u,this.setToolRequestHandlers(),this.sendToolListChanged(),u}tool(t,...r){if(this._registeredTools[t])throw new Error(`Tool ${t} is already registered`);let n,i,o,a;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let l=r[0];if(bv(l))i=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!bv(r[0])&&(a=r.shift());else if(typeof l=="object"&&l!==null){if(Object.values(l).some(d=>typeof d=="object"&&d!==null))throw new Error(`Tool ${t} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);a=r.shift()}}let s=r[0];return this._createRegisteredTool(t,void 0,n,i,o,a,{taskSupport:"forbidden"},void 0,s)}registerTool(t,r,n){if(this._registeredTools[t])throw new Error(`Tool ${t} is already registered`);let{title:i,description:o,inputSchema:a,outputSchema:s,annotations:l,_meta:d}=r;return this._createRegisteredTool(t,i,o,a,s,l,{taskSupport:"forbidden"},d,n)}prompt(t,...r){if(this._registeredPrompts[t])throw new Error(`Prompt ${t} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let i;r.length>1&&(i=r.shift());let o=r[0],a=this._createRegisteredPrompt(t,void 0,n,i,o);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}registerPrompt(t,r,n){if(this._registeredPrompts[t])throw new Error(`Prompt ${t} is already registered`);let{title:i,description:o,argsSchema:a}=r,s=this._createRegisteredPrompt(t,i,o,a,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),s}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(t,r){return this.server.sendLoggingMessage(t,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var KV={type:"object",properties:{}};function VE(e){return e!==null&&typeof e=="object"&&"parse"in e&&typeof e.parse=="function"&&"safeParse"in e&&typeof e.safeParse=="function"}function HE(e){return"_def"in e||"_zod"in e||VE(e)}function bv(e){return typeof e!="object"||e===null||HE(e)?!1:Object.keys(e).length===0?!0:Object.values(e).some(VE)}function WE(e){if(e){if(bv(e))return Da(e);if(!HE(e))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return e}}function JV(e){let t=Mo(e);return t?Object.entries(t).map(([r,n])=>{let i=_A(n),o=gA(n);return{name:r,description:i,required:!o}}):[]}function Wo(e){let r=Mo(e)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=zf(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function ZE(e){return{completion:{values:e.slice(0,100),total:e.length,hasMore:e.length>100}}}var Su={completion:{values:[],hasMore:!1}};import KE from"node:process";var Em=class{append(t){this._buffer=this._buffer?Buffer.concat([this._buffer,t]):t}readMessage(){if(!this._buffer)return null;let t=this._buffer.indexOf(`
|
|
321
|
-
`);if(t===-1)return null;let r=this._buffer.toString("utf8",0,t).replace(/\r$/,"");return this._buffer=this._buffer.subarray(t+1),
|
|
322
|
-
`}var Pm=class{constructor(t=KE.stdin,r=KE.stdout){this._stdin=t,this._stdout=r,this._readBuffer=new Em,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let t=this._readBuffer.readMessage();if(t===null)break;this.onmessage?.(t)}catch(t){this.onerror?.(t)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(t){return new Promise(r=>{let n=BE(t);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};function
|
|
323
|
-
`),{TAG:"Ok",_0:void 0})}async function JE(e){let t=e.slice(1),r=e[0];if(r!==void 0)switch(r){case"--help":case"-h":return aa(uc()),{TAG:"Ok",_0:void 0};case"config":return await
|
|
324
|
-
`}function y4(e,t){}function $m(e,t,r,n,i,o){let a=o!==void 0?o:y4;if(e!==void 0)return{TAG:"Ok",_0:{codexBin:e,source:"ExplicitFlag"}};let s=u4(t);if(s!==void 0){let f={};return f.codex_bin_path=s,f.codex_bin_source="bundled",a("codex.binary.resolved",f),{TAG:"Ok",_0:{codexBin:s,source:"Bundled"}}}_4(r);let l=c4(t),d=l!==void 0?n("codex"):void 0,u=m4(d,l),c={};switch(c.codex_bin_path="codex",c.codex_bin_source="path-fallback",c.harness_version_check=p4(u),u.TAG){case"Match":c.harness_version=u.version;break;case"Mismatch":c.path_harness_version=u.pathVersion,c.pinned_harness_version=u.pinnedVersion;break;case"Unverified":c.path_harness_version=rn(u.pathVersion,null,f=>f),c.pinned_harness_version=rn(u.pinnedVersion,null,f=>f);break}switch(a("codex.binary.resolved",c),u.TAG){case"Mismatch":let f=u.pinnedVersion,p=u.pathVersion,m=i[kv];return m===void 0?{TAG:"Error",_0:XE(p,f)}:m!=="1"?{TAG:"Error",_0:XE(p,f)}:(r(g4(p,f)),{TAG:"Ok",_0:{codexBin:"codex",source:"PathFallback"}});case"Match":case"Unverified":return{TAG:"Ok",_0:{codexBin:"codex",source:"PathFallback"}}}}function iP(e){if(typeof e=="number"&&e%1===0)return e}function b4(e){if(typeof e=="string")return e}function v4(e){let t=e.replaceAll("-","+").replaceAll("_","/");switch(t.length&3){case 2:return t+"==";case 3:return t+"=";default:return t}}function oP(e){let t=e.split(".")[1];if(t===void 0)return;let r=Buffer.from(v4(t),"base64").toString("utf8"),n;try{n=JSON.parse(r)}catch{n=void 0}if(typeof n=="object"&&n!==null&&!Array.isArray(n))return n}function wu(e){let t=oP(e);if(t===void 0)return{actorUserId:void 0,actorUsername:void 0};let r=iP(t.actor_id);return{actorUserId:r!==void 0?r:iP(t.sub),actorUsername:b4(t.actor_username)}}function aP(e){let t=k(oP(e),n=>n.workspace_scope),r=t!==void 0?Array.isArray(t)?$e(t,n=>{if(typeof n=="string"&&n.trim()!=="")return n}):[]:[];if(r.length===1)return r[0]}var Av=[["codex.agent_turn_narration_only_no_reply","harness.agent_turn_narration_only_no_reply"],["codex.cost_cap_402_seen","harness.cost_cap_402_seen"],["codex.edge_blocked_captured","harness.edge_blocked_captured"],["codex.empty_turn_auto_retry_suppressed_cost_cap","harness.empty_turn_auto_retry_suppressed_cost_cap"],["codex.empty_turn_loop_guard_tripped","harness.empty_turn_loop_guard_tripped"],["codex.error_without_http_status_captured","harness.error_without_http_status_captured"],["codex.mid_stream_stall_auto_resume_flagged","harness.mid_stream_stall_auto_resume_flagged"],["codex.mid_stream_stall_resume_suppressed_rate_limit","harness.mid_stream_stall_resume_suppressed_rate_limit"],["codex.mid_stream_stall_second_stall_after_resume","harness.mid_stream_stall_second_stall_after_resume"],["codex.pre_first_byte_stall_auto_retry_flagged","harness.pre_first_byte_stall_auto_retry_flagged"],["codex.pre_first_byte_stall_retry_suppressed_cost_cap","harness.pre_first_byte_stall_retry_suppressed_cost_cap"],["codex.provider_outage_flagged_captured","harness.provider_outage_flagged_captured"],["codex.reasoning_loop_breaker_tripped","harness.reasoning_loop_breaker_tripped"],["codex.tool_fatal_captured","harness.tool_fatal_captured"],["codex.turn_completed","job.turn_completed"],["codex.turn_completed_with_protocol_failure","job.turn_completed_with_protocol_failure"],["codex.turn_completed_with_unsupported_tool_call_ignored","job.turn_completed_with_unsupported_tool_call_ignored"],["codex.turn_completed_without_assistant_output","job.turn_completed_without_assistant_output"],["codex.turn_forward_failed","job.turn_forward_failed"],["codex.upstream_error_captured","harness.upstream_error_captured"],["codex.upstream_rejection_captured","harness.upstream_rejection_captured"],["codex.upstream_turn_error_captured","harness.upstream_turn_error_captured"],["kandan.chat_event","linzumi.chat_event"],["kandan.chat_event_abandoned","linzumi.chat_event_abandoned"],["kandan.chat_event_failed","linzumi.chat_event_failed"],["kandan.chat_event_failure_cleared","linzumi.chat_event_failure_cleared"],["kandan.claude_code_interrupt_state_push_failed","linzumi.claude_code_interrupt_state_push_failed"],["kandan.claude_code_stop_state_push_failed","linzumi.claude_code_stop_state_push_failed"],["kandan.claude_code_typing_heartbeat_failed","linzumi.claude_code_typing_heartbeat_failed"],["kandan.claude_code_typing_start_wait_timeout","linzumi.claude_code_typing_start_wait_timeout"],["kandan.claude_code_typing_stop_failed","linzumi.claude_code_typing_stop_failed"],["kandan.claude_code_user_input_abort_publish_failed","linzumi.claude_code_user_input_abort_publish_failed"],["kandan.claude_code_user_question_completed_publish_failed","linzumi.claude_code_user_question_completed_publish_failed"],["kandan.codex_command_output_forwarded","linzumi.codex_command_output_forwarded"],["kandan.codex_delta_forwarded","linzumi.codex_delta_forwarded"],["kandan.codex_file_change_forwarded","linzumi.codex_file_change_forwarded"],["kandan.codex_notification_push_failed","linzumi.codex_notification_push_failed"],["kandan.codex_output_forwarded","linzumi.codex_output_forwarded"],["kandan.codex_reasoning_delta_forwarded","linzumi.codex_reasoning_delta_forwarded"],["kandan.codex_web_search_progress_forwarded","linzumi.codex_web_search_progress_forwarded"],["kandan.connection_force_reconnect","linzumi.connection_force_reconnect"],["kandan.connection_force_reconnect_dispatched","linzumi.connection_force_reconnect_dispatched"],["kandan.connection_hard_reset","linzumi.connection_hard_reset"],["kandan.connection_hard_reset_exhausted","linzumi.connection_hard_reset_exhausted"],["kandan.connection_recovered","linzumi.connection_recovered"],["kandan.connection_stale","linzumi.connection_stale"],["kandan.connection_unrecoverable","linzumi.connection_unrecoverable"],["kandan.control","linzumi.control"],["kandan.control_ack_withheld_on_failure","linzumi.control_ack_withheld_on_failure"],["kandan.control_epoch_changed","linzumi.control_epoch_changed"],["kandan.control_handler_threw","linzumi.control_handler_threw"],["kandan.control_ignored","linzumi.control_ignored"],["kandan.control_response_push_failed","linzumi.control_response_push_failed"],["kandan.failed_seq_overflow","linzumi.failed_seq_overflow"],["kandan.forward_port_revoked_push_failed","linzumi.forward_port_revoked_push_failed"],["kandan.forward_response","linzumi.forward_response"],["kandan.forward_response_push_failed","linzumi.forward_response_push_failed"],["kandan.forward_tunnel_error","linzumi.forward_tunnel_error"],["kandan.forward_tunnel_open_failed","linzumi.forward_tunnel_open_failed"],["kandan.heartbeat_push_failed","linzumi.heartbeat_push_failed"],["kandan.local_editor_initial_status_failed","linzumi.local_editor_initial_status_failed"],["kandan.local_editor_status_push_failed","linzumi.local_editor_status_push_failed"],["kandan.message_duplicate_ignored","linzumi.message_duplicate_ignored"],["kandan.message_ignored","linzumi.message_ignored"],["kandan.message_queued","linzumi.message_queued"],["kandan.message_spawn_on_miss","linzumi.message_spawn_on_miss"],["kandan.message_spawn_on_miss_failed","linzumi.message_spawn_on_miss_failed"],["kandan.message_state_refresh_failed","linzumi.message_state_refresh_failed"],["kandan.optional_push_failed","linzumi.optional_push_failed"],["kandan.post_stop_queue_drain_failed","linzumi.post_stop_queue_drain_failed"],["kandan.queue_drain_blocked","linzumi.queue_drain_blocked"],["kandan.queue_drain_dead_worker_fail_publish_failed","linzumi.queue_drain_dead_worker_fail_publish_failed"],["kandan.queue_drain_dead_worker_rebuild","linzumi.queue_drain_dead_worker_rebuild"],["kandan.queue_drain_dead_worker_rebuild_exhausted","linzumi.queue_drain_dead_worker_rebuild_exhausted"],["kandan.queue_drain_dead_worker_rebuild_failed","linzumi.queue_drain_dead_worker_rebuild_failed"],["kandan.reconnect_handling_failed","linzumi.reconnect_handling_failed"],["kandan.reconnect_thread_context_fetch_failed","linzumi.reconnect_thread_context_fetch_failed"],["kandan.reconnect_thread_cwd_failed_state_push_failed","linzumi.reconnect_thread_cwd_failed_state_push_failed"],["kandan.reconnect_thread_failed","linzumi.reconnect_thread_failed"],["kandan.reconnect_thread_processing_state_push_failed","linzumi.reconnect_thread_processing_state_push_failed"],["kandan.reconnect_thread_queue_closed_state_push_failed","linzumi.reconnect_thread_queue_closed_state_push_failed"],["kandan.reconnect_thread_queue_failed_state_push_failed","linzumi.reconnect_thread_queue_failed_state_push_failed"],["kandan.reconnect_thread_queue_state_push_failed","linzumi.reconnect_thread_queue_state_push_failed"],["kandan.reconnect_thread_rehydrate_forced","linzumi.reconnect_thread_rehydrate_forced"],["kandan.reconnect_thread_rehydrated","linzumi.reconnect_thread_rehydrated"],["kandan.reconnect_thread_rehydrated_state_push_failed","linzumi.reconnect_thread_rehydrated_state_push_failed"],["kandan.reconnect_thread_rehydration_failed","linzumi.reconnect_thread_rehydration_failed"],["kandan.reconnect_thread_rehydration_ir_emitted","linzumi.reconnect_thread_rehydration_ir_emitted"],["kandan.reconnect_thread_rehydration_items_failed","linzumi.reconnect_thread_rehydration_items_failed"],["kandan.reconnect_thread_resume_failed","linzumi.reconnect_thread_resume_failed"],["kandan.reconnect_thread_seq_already_applied","linzumi.reconnect_thread_seq_already_applied"],["kandan.reconnect_thread_transcript_fetch_failed","linzumi.reconnect_thread_transcript_fetch_failed"],["kandan.reconnect_thread_unarchive_failed","linzumi.reconnect_thread_unarchive_failed"],["kandan.reconnect_thread_unarchive_resumed","linzumi.reconnect_thread_unarchive_resumed"],["kandan.reconnect_thread_unarchive_started","linzumi.reconnect_thread_unarchive_started"],["kandan.reconnect_thread_unavailable_state_push_failed","linzumi.reconnect_thread_unavailable_state_push_failed"],["kandan.reconnected","linzumi.reconnected"],["kandan.roster_seeded","linzumi.roster_seeded"],["kandan.session_app_server_lost_push_failed","linzumi.session_app_server_lost_push_failed"],["kandan.session_settings_publish_failed","linzumi.session_settings_publish_failed"],["kandan.start_instance_claude_code_attachment_failed_state_push_failed","linzumi.start_instance_claude_code_attachment_failed_state_push_failed"],["kandan.start_instance_codex_app_server_unavailable","linzumi.start_instance_codex_app_server_unavailable"],["kandan.start_instance_cwd_failed_state_push_failed","linzumi.start_instance_cwd_failed_state_push_failed"],["kandan.start_instance_cwd_rejected","linzumi.start_instance_cwd_rejected"],["kandan.start_instance_failed","linzumi.start_instance_failed"],["kandan.start_instance_processing_state_push_failed","linzumi.start_instance_processing_state_push_failed"],["kandan.start_instance_skipped_known_session","linzumi.start_instance_skipped_known_session"],["kandan.start_instance_stale_skipped","linzumi.start_instance_stale_skipped"],["kandan.start_instance_unavailable_state_push_failed","linzumi.start_instance_unavailable_state_push_failed"],["kandan.start_instance_wafer_state_push_failed","linzumi.start_instance_wafer_state_push_failed"],["kandan.start_turn_replay_skipped","linzumi.start_turn_replay_skipped"],["kandan.steer_duplicate_ignored","linzumi.steer_duplicate_ignored"],["kandan.steer_parked_as_own_turn","linzumi.steer_parked_as_own_turn"],["kandan.thread_bind_from_historical_reply_failed","linzumi.thread_bind_from_historical_reply_failed"],["kandan.thread_bound_from_historical_reply","linzumi.thread_bound_from_historical_reply"],["kandan.thread_sessions_reannounce_failed","linzumi.thread_sessions_reannounce_failed"],["kandan.thread_sessions_reannounced","linzumi.thread_sessions_reannounced"],["kandan.tui_input_mirrored","linzumi.tui_input_mirrored"],["kandan.typing_heartbeat_failed","linzumi.typing_heartbeat_failed"],["kandan.typing_stop_after_completion_failed","linzumi.typing_stop_after_completion_failed"]],sP=[["codexThreadId","harness_session_id"],["codex_thread_id","harness_session_id"],["kandanThreadId","thread_id"],["kandan_preview_ticket","linzumi_preview_ticket"],["kandan_thread_id","thread_id"],["linzumiThreadId","thread_id"],["linzumi_thread_id","thread_id"],["local_codex_runner","commander"],["runnerId","commander_id"],["runner_config","commander_config"],["runner_id","commander_id"]],Mm=[["commander","local_codex_runner"],["commander_config","runner_config"],["commander_id","runner_id"],["harness_session_id","codex_thread_id"],["linzumi_preview_ticket","kandan_preview_ticket"],["thread_id","kandan_thread_id"]],Ov=[["engine_boot_reconnect","harness_boot_reconnect"],["engine_for_runner_event_type","harness_for_commander_event_type"],["engine_rejected_steer","harness_rejected_steer"],["engine_unavailable","harness_unavailable"],["join_engine","join_harness"],["kandan-local-codex-runner","linzumi-commander"],["local_codex_runner","commander"],["original_engine","original_harness"],["resume_engine","resume_harness"]];function ku(){return x("1.0.148","0.0.0-unbundled")}function Ev(){return"linzumi "+x("1.0.148","0.0.0-unbundled")}function bl(e,t){let r=e.indexOf(t);if(r!==-1)return r}function Pv(){let e=process.env.LINZUMI_NAMING_DUAL_EMIT;if(e===void 0)return!0;let t=e.trim().toLowerCase();return t!=="0"?t!=="false":!1}function Rv(e){let t={};return e.forEach(r=>{t[r[0]]=r[1]}),t}function S4(e){let t={};return e.forEach(r=>{t[r[1]]=r[0]}),t}var uP=Rv(sP),cP=Rv(Mm),w4=Rv(Ov),k4=S4(Ov);function x4(e){return e.endsWith("_canonical")?!0:e.endsWith("_legacy")}function fP(e,t){return t>=32?e:Array.isArray(e)?e.map(r=>fP(r,t+1|0)):e===null?e:typeof e==="object"?mP(e,t):e}function mP(e,t){let r=Object.keys(e),n={};return r.forEach(i=>{let o=e[i];if(o!==void 0){n[i]=fP(o,t+1|0);return}}),r.forEach(i=>{if(x4(i))return;let o=n[i];if(o===void 0)return;let a=uP[i];if(a!==void 0)n[a]=o;else{let c=cP[i];c!==void 0&&(n[c]!==void 0||(n[c]=o))}let s=n[i];if(s===void 0||typeof s!="string")return;let l=w4[s];if(l!==void 0){if(n[i+"_canonical"]!==void 0)return;n[i+"_canonical"]=l;return}let d=k4[s];if(!(d===void 0||n[i+"_legacy"]!==void 0)){n[i+"_legacy"]=d;return}}),n}function jm(e){return Pv()?mP(e,0):e}function pP(e){let t=e.slice();return e.forEach(r=>{let n=uP[r];n!==void 0&&!t.includes(n)&&t.push(n);let i=cP[r];if(i!==void 0&&!t.includes(i)){t.push(i);return}}),t}var vl="<SENSITIVE_DATA>",T4=pP(["access_token","authorization","code","cookie","kandan_preview_ticket","refresh_token","token"]),A4=["--access-token","--api-key","--authorization","--cookie","--oauth-code","--password","--refresh-token","--secret","--token"],O4=new RegExp("^(authorization|cookie|set-cookie|password)$","i"),C4=new RegExp("(^|[_-])(access[_-]?token|api[_-]?key|auth[_-]?token|oauth[_-]?code|refresh[_-]?token|secret|token)$","i"),E4=new RegExp("\\beyJ[A-Za-z0-9_-]*\\.[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+\\b","g");function P4(e){return e!==void 0?O4.test(e)?!0:C4.test(e):!1}function hP(e){let t={contents:!1};return Gw(e).forEach(r=>{if(T4.includes(r.toLowerCase())){e.set(r,vl),t.contents=!0;return}}),t.contents}function R4(e){let t=bl(e,"?"),r=bl(e,"#");if(t===void 0||r!==void 0&&r<t)return e;let n=e.slice(0,t),i=r!==void 0?e.slice(t+1|0,r):e.slice(t+1|0),o=r!==void 0?e.slice(r):"",a=new URLSearchParams(i);return hP(a)?n+"?"+a.toString()+o:e}function I4(e){let t=Ln(e);if(t===void 0)return R4(e);let r=ue(t);return hP(r.searchParams),r.toString()}function _P(e){return I4(e).replace(E4,vl)}function $4(e){let t=bl(e,"=");return t!==void 0?[e.slice(0,t),e.slice(t+1|0)]:[e,void 0]}function $v(e,t){if(P4(t))return vl;if(Array.isArray(e))return t==="args"?M4(e):e.map(r=>$v(r,void 0));if(e===null)return e;switch(typeof e){case"string":return _P(e);case"object":return gP(e);default:return e}}function M4(e){let t={contents:!1};return e.map(r=>{if(typeof r=="string"){if(t.contents)return t.contents=!1,vl;let n=$4(r),i=n[0];return A4.includes(i)?n[1]!==void 0?i+"="+vl:(t.contents=!0,r):_P(r)}return t.contents=!1,$v(r,void 0)})}function gP(e){let t=e.name,r=typeof t=="string"?t.toLowerCase():void 0,n;if(r!==void 0)switch(r){case"authorization":case"cookie":case"set-cookie":n=!0;break;default:n=!1}else n=!1;let i={};return Object.entries(e).forEach(o=>{let a=o[0];if(a!=="runner_console"){i[a]=n&&a==="value"?vl:$v(o[1],a);return}}),i}var zm=gP;import*as ta from"node:os";import*as jp from"node:path";import*as gw from"node:crypto";function jn(e){let t=parseFloat(e);if(!Number.isNaN(t))return t}function bP(e){return"local_runner:"+e}var j4="kandan-local-codex-runner",z4="rescript";function vP(e){let t={};t.clientName=j4,t.clientId=e.clientId;let r=e.machineFingerprint;t.machineFingerprint=r!==void 0?r:null,Object.entries(ck(e.machineFingerprintV2)).forEach(a=>{t[a[0]]=a[1]}),t.runnerPid=e.runnerPid,t.version=e.version,t.hostname=e.hostname,t.cwd=e.cwd;let n=e.workspace;t.workspace=n!==void 0?n:null;let i=e.channel;t.channel=i!==void 0?i:null,t.capabilities=e.capabilities;let o=e.generationOverlapEpoch;if(o!==void 0){let a={};a.epoch=o,a.overlap=!0,t.generation=a}return t.commander_impl=z4,t}function SP(e,t,r){let n={};return n.last_seq=r,t!==void 0&&(n.runner_id=e,n.thread_id=t),n}function zn(e,t){return e.catch(r=>t(ee(r)))}function kP(){let e=[],t=[],r={contents:!1},n=()=>{let a=e.shift();return a!==void 0?Promise.resolve({done:!1,value:a}):r.contents?Promise.resolve({done:!0}):new Promise((s,l)=>{t.push(s)})},i=()=>(r.contents=!0,Promise.resolve({done:!0})),o={};return o[Symbol.asyncIterator]=()=>({next:n,return:i}),{iterable:o,push:a=>{if(r.contents)return!1;let s=t.shift();return s!==void 0?(s({done:!1,value:a}),!0):(e.push(a),!0)},close:()=>{r.contents=!0,(()=>{for(;;){let s=t.shift();if(s===void 0)return;s({done:!0})}})()}}}function xP(e){return import(e)}var G4="@anthropic-ai/claude-agent-sdk";function TP(e){return kP()}function F4(e){return{next:()=>e.next(),close:()=>{e.close()},interrupt:()=>e.interrupt(),setModel:t=>e.setModel(t),setPermissionMode:t=>e.setPermissionMode(t),applyFlagSettings:t=>e.applyFlagSettings(t),supportedCommands:()=>e.supportedCommands()}}async function AP(){let e=await xP(G4);return{query:t=>F4(e.query(t)),getSessionInfo:(t,r)=>e.getSessionInfo(t,r),listSessions:t=>e.listSessions(t),getSessionMessages:(t,r)=>e.getSessionMessages(t,r)}}var Mv=["codex","claude-code","pi","opencode"];function Ya(e){return e}function Nm(e){switch(e.TAG){case"SessionStarted":return"session_started";case"TurnStarted":return"turn_started";case"ItemStarted":return"item_started";case"ItemDelta":return"item_delta";case"ItemCompleted":return"item_completed";case"ApprovalRequested":return"approval_requested";case"UsageUpdated":return"usage_updated";case"RateLimitUpdated":return"rate_limit_updated";case"ActivityPulse":return"activity_pulse";case"TurnCompleted":return"turn_completed";case"TurnFailed":return"turn_failed";case"TurnInterrupted":return"turn_interrupted";case"HarnessDied":return"harness_died"}}function D4(e){switch(e){case"SocketOpen":return"open";case"SocketMessage":return"message";case"SocketClose":return"close";case"SocketError":return"error"}}function q4(e){let t=e.data,r;r=t==null||typeof t!="string"?void 0:t;let n=e.code,i;i=n==null||typeof n!="number"||(n|0)!==n?void 0:n|0;let o=e.reason,a;return a=o==null||typeof o!="string"?void 0:o,{data:r,code:i,reason:a}}function L4(e){return{readyState:()=>e.readyState,send:t=>{e.send(t)},close:()=>{e.close()},on:(t,r)=>{e.addEventListener(D4(t),n=>r(q4(n)),{})}}}function Gm(e,t){return L4(new WebSocket(e,t))}var CP=0,Xa=1;var jv="file",zv=["mcp_oauth_credentials_store","cli_auth_credentials_store"],U4=zv.flatMap(e=>["-c",e+'="'+jv+'"']),W4=["-c","features.apps=false"];function po(e){return JSON.stringify(e)}function Z4(e){let t=(r,n)=>r!==void 0?Object.entries(r).flatMap(i=>["-c","model_providers."+e.id+"."+n+"."+i[0]+"="+po(i[1])]):[];return[["-c","model_providers."+e.id+".name="+po(e.name),"-c","model_providers."+e.id+".base_url="+po(e.baseUrl),"-c","model_providers."+e.id+".env_key="+po(e.envKey),"-c","model_providers."+e.id+".wire_api="+po(e.wireApi)],t(e.httpHeaders,"http_headers"),t(e.envHttpHeaders,"env_http_headers"),["-c","model_provider="+po(e.id)]].flat()}function V4(e){let t=e.model,r=e.reasoningEffort,n=e.modelProvider;return[W4,U4,t!==void 0?["-c","model="+po(t)]:[],r!==void 0?["-c","model_reasoning_effort="+po(r)]:[],e.fast?["-c","service_tier="+po("fast")]:[],e.mcpConfigArgs.flat(),n!==void 0?Z4(n):[]].flat()}function PP(e,t){return[["app-server"],V4(t),["--listen",e]].flat()}var H4=["LINZUMI_MCP_ACCESS_TOKEN","LINZUMI_MCP_OWNER_USERNAME"];function RP(e,t,r){let n=r?Object.fromEntries(Object.entries(e)):{};return H4.forEach(i=>fr(n,i)),t.forEach(i=>{let o=i[1],a=i[0];if(o!==void 0){n[a]=o;return}else return fr(n,a)}),n}var IP=["ignore","pipe","pipe"];function $P(e){let t=e.length;return t>12e3?e.slice(t-12e3|0,t):e}function MP(e,t,r){return r<3&&e.includes("codex app-server exited before readyz")&&t.includes("EADDRINUSE")?t.includes("listen"):!1}function jP(e){let t=Ln(e);if(t===void 0)return;let r=ue(t),i=r.protocol==="wss:"?"https:":"http:";return r.protocol=i,r.pathname="/readyz",r.search="",r.hash="",r.toString()}var B4="kandan-local-codex-runner",K4="0.0.1";function zP(){return Object.fromEntries([["clientInfo",Object.fromEntries([["name",B4],["version",K4]])],["capabilities",Object.fromEntries([["experimentalApi",!0]])]])}var J4=new RegExp("\\bsession\\b.+\\bis archived\\b","i");function NP(e){return J4.test(e)}var Y4=new RegExp("^thread not found(?:\\s*:|\\b)","i");function GP(e){return Y4.test(e.trim())}var FP=2e3;function X4(e){try{e.unref();return}catch{return}}var DP="codex app-server websocket closed",Q4="codex app-server websocket is not open";function eH(e){let t=e.method;if(typeof t=="string")return t}function Nv(e){let t=e.error;if(t===void 0)return{TAG:"ResultReply",_0:x(e.result,null)};if(typeof t!="object"||t===null||Array.isArray(t))return{TAG:"ErrorReply",code:0,message:JSON.stringify(t)};let r=t.code,n=r!==void 0&&typeof r=="number"?r:0,i=t.message;return{TAG:"ErrorReply",code:n,message:typeof i=="string"?i:""}}function Dm(e,t,r,n){let i=JSON.stringify(n);t(r,i);try{return e.socket.send(i),{TAG:"Ok",_0:void 0}}catch(o){let a=ee(o);return{TAG:"Error",_0:Ne(a).message}}}function WP(e,t,r){try{return t(r)}catch(n){let i=ee(n);return e("codex.notification_callback_failed",Object.fromEntries([["purpose","codex.app_server"],["method",r.method],["message",Ne(i).message]]))}}function qP(e,t,r){try{return t(r)}catch(n){let i=ee(n);return e("codex.close_callback_failed",Object.fromEntries([["purpose","codex.app_server"],["message",Ne(i).message]]))}}function tH(e,t){let r;if(t.TAG==="Ok")r=[["jsonrpc","2.0"],["id",e],["result",t._0]];else{let n=t._0;r=[["jsonrpc","2.0"],["id",e],["error",Object.fromEntries([["code",n[0]],["message",n[1]]])]]}return Object.fromEntries(r)}async function rH(e,t,r,n){let i={TAG:"Error",_0:[-32601,"unhandled Codex app-server request: "+n.method]},o=e.requestCallbacks.slice(),a,s=0;for(;mn(a)&&s<o.length;){let d=o[s];if(d!==void 0){let u=0,c;try{c=await d(n),u=1}catch(f){let p=ee(f);a={TAG:"Error",_0:[-32e3,Ne(p).message]}}u===1&&c!==void 0&&(a={TAG:"Ok",_0:c})}s=s+1|0}let l=x(a,i);Dm(t,r,"outgoing",tH(n.id,l))}function nH(e,t,r,n,i){let o;try{o=JSON.parse(i)}catch(p){let m=ee(p);r("codex.app_server_frame_malformed",Object.fromEntries([["purpose","codex.app_server"],["message",Ne(m).message],["payload",i.slice(0,512)],["payloadChars",i.length]])),o=void 0}let a;if(o!==void 0){let p=0;typeof o=="object"&&o!==null&&!Array.isArray(o)?a=o:p=1,p===1&&(r("codex.app_server_frame_malformed",Object.fromEntries([["purpose","codex.app_server"],["message","codex app-server sent non-object JSON-RPC message"],["payload",i.slice(0,512)],["payloadChars",i.length]])),a=void 0)}else a=void 0;if(a===void 0)return;let s=Dt(a.id),l=s&&(Dt(a.result)||Dt(a.error)),d=eH(a);if(l){let p=x(a.id,null),m=JSON.stringify(p),h=e.pending[m];return h!==void 0?(fr(e.pending,m),h.resolvePending({TAG:"Ok",_0:Nv(a)})):void 0}if(s)if(d!==void 0){zn(rH(e,t,n,{id:x(a.id,null),method:d,params:a.params}),p=>Promise.resolve());return}else return;if(d===void 0)return;let u=a.params,c={method:d,params:u};e.notificationCallbacks.length!==0?e.notificationCallbacks.forEach(p=>WP(r,p,c)):e.pendingNotifications.push(c)}function iH(e,t,r){return Object.fromEntries(r!==void 0?[["jsonrpc","2.0"],["id",e],["method",t],["params",r]]:[["jsonrpc","2.0"],["id",e],["method",t]])}function LP(e,t){return Object.fromEntries(t!==void 0?[["jsonrpc","2.0"],["method",e],["params",t]]:[["jsonrpc","2.0"],["method",e]])}function UP(e,t,r,n,i,o){return t.socket.readyState()===Xa?new Promise((a,s)=>{e.pending[JSON.stringify(n)]={resolvePending:a};let l=Dm(t,r,"request",iH(n,i,o));l.TAG!=="Ok"&&(fr(e.pending,JSON.stringify(n)),a({TAG:"Error",_0:l._0}))}):Promise.resolve({TAG:"Error",_0:Q4})}async function qm(e,t,r,n){let i=t!==void 0?t:u=>({socket:Gm(u,[]),ping:void 0}),o=r!==void 0?r:2e3,a=n!==void 0?n:()=>Date.now(),s=a()+o,l,d="websocket open failed";for(;mn(l);){let u;try{u={TAG:"Ok",_0:i(e)}}catch(c){let f=ee(c);u={TAG:"Error",_0:Ne(f).message}}if(u.TAG==="Ok"){let c=u._0;if(await new Promise((f,p)=>{c.socket.on("SocketOpen",m=>f(!0)),c.socket.on("SocketError",m=>f(!1))}))l={TAG:"Ok",_0:c};else{try{c.socket.close()}catch{}a()>s&&(l={TAG:"Error",_0:d})}}else d=u._0,a()>s&&(l={TAG:"Error",_0:d})}return x(l,{TAG:"Error",_0:d})}async function Lm(e,t){let r={pending:{},notificationCallbacks:[],requestCallbacks:[],pendingNotifications:[],closeCallbacks:[],nextId:1,closeError:void 0},n=t.audit,i=t.onWire,o=setInterval(()=>{let d=e.ping;if(d!==void 0&&e.socket.readyState()===Xa)try{return d()}catch{return}},t.keepaliveIntervalMs);X4(o);let a=d=>{clearInterval(o);let u=Object.entries(r.pending);if(Object.entries(r.pending).forEach(p=>fr(r.pending,p[0])),u.forEach(p=>p[1].resolvePending({TAG:"Error",_0:d})),r.closeError!==void 0)return;r.closeError=d;let f=r.closeCallbacks.slice();r.closeCallbacks.splice(0,r.closeCallbacks.length),f.forEach(p=>qP(n,p,d))};e.socket.on("SocketClose",d=>a(DP)),e.socket.on("SocketError",d=>a(DP)),e.socket.on("SocketMessage",d=>{let u=d.data;if(u!==void 0)return i("incoming",u),nH(r,e,n,i,u)});let s=await UP(r,e,i,"initialize","initialize",zP());if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0};let l=s._0;return l.TAG!=="ResultReply"?{TAG:"Error",_0:"codex initialize failed: "+l.message}:(Dm(e,i,"outgoing",LP("initialized",void 0)),{TAG:"Ok",_0:{request:(d,u)=>{let c=r.nextId;return r.nextId=r.nextId+1|0,UP(r,e,i,c,d,u)},notify:(d,u)=>{Dm(e,i,"outgoing",LP(d,u))},onNotification:d=>{r.notificationCallbacks.push(d);let u=r.pendingNotifications.slice();r.pendingNotifications.splice(0,r.pendingNotifications.length),u.forEach(c=>WP(n,d,c))},onRequest:d=>{r.requestCallbacks.push(d)},onClose:d=>{let u=r.closeError;if(u!==void 0)return qP(n,d,u);r.closeCallbacks.push(d)},isClosed:()=>Dt(r.closeError),close:()=>{clearInterval(o);try{return e.socket.close()}catch{return}}}})}function xl(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function Li(e){if(e!==void 0&&typeof e=="string"&&e.trim()!=="")return e.trim()}function kl(e){if(e!==void 0&&typeof e=="number"&&Ot(e))return e}function ZP(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}var VP="linzumi_thread_codex_worker_ready",HP="linzumi_thread_codex_worker_session_closed",BP="linzumi_thread_codex_worker_request",KP="linzumi_thread_codex_worker_notify",qv="linzumi_thread_codex_worker_response",JP="linzumi_thread_codex_worker_notification",YP="linzumi_thread_codex_worker_server_request",XP="linzumi_thread_codex_worker_server_request_response";function QP(e,t){let r={};return r.type=VP,r.kandanThreadId=e,r.commanderManagedPorts=t.map(n=>{let i={};i.port=n.port;let o=n.pid;o!==void 0&&(i.pid=o);let a=n.processName;a!==void 0&&(i.processName=a);let s=n.processIconKey;s!==void 0&&(i.processIconKey=s);let l=n.agentProvider;return l!==void 0&&(i.agentProvider=l),i}),r}function eR(e,t){let r={};return r.type=HP,r.kandanThreadId=e,r.reason=t,r}function oH(e,t,r){let n={};return n.type=BP,n.id=e,n.method=t,r!==void 0&&(n.params=r),n}function aH(e,t){let r={};return r.type=KP,r.method=e,t!==void 0&&(r.params=t),r}function sH(e,t){let r={};return r.type=qv,r.id=e,r.response=t,r}function lH(e,t){let r={};return r.type=qv,r.id=e,r.error=t,r}function dH(e){let t={};return t.type=JP,t.notification=e,t}function uH(e,t){let r={};return r.type=YP,r.id=e,r.request=t,r}function Fv(e,t,r){let n={};return n.type=XP,n.id=e,t!==void 0&&(n.result=t),r!==void 0&&(n.error=r),n}function cH(e){if(e===void 0||typeof e!="object"||e===null||Array.isArray(e)||e.id===void 0)return;let r=e.result,n=e.error;if(r!==void 0||n!==void 0)return e}function fH(e){if(e===void 0||typeof e!="object"||e===null||Array.isArray(e))return;let t=e.id,r=e.method;if(!(t!==void 0||typeof r!="string"))return e}function mH(e){if(e===void 0||typeof e!="object"||e===null||Array.isArray(e))return;let t=e.id,r=e.method;if(t!==void 0&&typeof r=="string")return e}function pH(e){let t=xl(e);if(t===void 0)return;let r=t.type;if(r===void 0||typeof r!="string")return;if(r===BP){let i=kl(t.id),o=Li(t.method);return i!==void 0&&o!==void 0?{TAG:"ParentRequest",id:i,method_:o,params:ZP(t.params)}:void 0}if(r===KP){let i=Li(t.method);return i!==void 0?{TAG:"ParentNotify",method_:i,params:ZP(t.params)}:void 0}if(r!==XP)return;let n=kl(t.id);if(n!==void 0)return{TAG:"ParentServerRequestResponse",id:n,result:t.result,error:Li(t.error)}}function hH(e){let t=xl(e);if(t===void 0)return;let r=t.type;if(r===void 0||typeof r!="string")return;if(r===qv){let o=kl(t.id);return o!==void 0?{TAG:"ChildResponse",id:o,response:cH(t.response),error:Li(t.error)}:void 0}if(r===JP){let o=fH(t.notification);return o!==void 0?{TAG:"ChildNotification",notification:o}:void 0}if(r!==YP)return;let n=kl(t.id),i=mH(t.request);if(n!==void 0&&i!==void 0)return{TAG:"ChildServerRequest",id:n,request:i}}function tR(e){let t=xl(e);if(t===void 0)return;let r=t.type;if(typeof r=="string"&&r===HP)return[x(Li(t.kandanThreadId),""),x(Li(t.reason),"")]}var _H="thread Codex worker reported invalid ready payload";function gH(e){let t=Li(e);if(t!==void 0)switch(t){case"claude-code":return"claude-code";case"codex":return"codex";default:return}}function yH(e){return e!==void 0?Array.isArray(e)?$e(e,t=>{let r=xl(t);if(r===void 0)return;let n=kl(r.port);if(n!==void 0&&n>=1&&n<=65535)return{port:n,pid:kl(r.pid),processName:Li(r.processName),processIconKey:Li(r.processIconKey),agentProvider:gH(r.agentProvider)}}):[]:[]}function rR(e,t){let r=xl(e);if(r===void 0)return{TAG:"Ok",_0:void 0};let n=r.type;if(n===void 0)return{TAG:"Ok",_0:void 0};if(typeof n!="string")return{TAG:"Ok",_0:void 0};if(n!==VP)return{TAG:"Ok",_0:void 0};let i=Li(r.kandanThreadId);return i!==void 0&&i===t?{TAG:"Ok",_0:{kandanThreadId:i,commanderManagedPorts:yH(r.commanderManagedPorts)}}:{TAG:"Error",_0:_H}}function nR(e,t){}var iR="linzumi.thread_runner",bH="thread Codex worker requires a codex client with onRequest",Dv="thread Codex worker IPC channel closed";function oR(e,t,r){let n=r!==void 0?r:nR,i=e.onRequest;if(i===void 0)return{TAG:"Error",_0:bH};let o=new Map,a={contents:1},s={contents:!1},l=u=>{if(s.contents)return;s.contents=!0;let c={};c.purpose=iR,c.reason=u,n("thread_codex_worker.ipc_send_dropped",c)},d=u=>{let c=t.send,f=t.isConnected();if(c===void 0||!f)return l("ipc_channel_closed");let p=c(u);if(p.TAG!=="Ok")return l(p._0)};return t.onMessage(u=>{let c=pH(u);if(c!==void 0)switch(c.TAG){case"ParentRequest":let f=c.id;e.request(c.method_,c.params).then(_=>_.TAG==="Ok"?d(sH(f,_._0)):d(lH(f,_._0)));return;case"ParentNotify":return e.notify(c.method_,c.params);case"ParentServerRequestResponse":let p=c.error,m=c.id,h=o.get(m);return h!==void 0?(o.delete(m),h(p!==void 0?{TAG:"Error",_0:p}:{TAG:"Ok",_0:c.result})):void 0}}),e.onNotification(u=>d(dH(u))),i(u=>new Promise((c,f)=>{let p=a.contents;a.contents=p+1,o.set(p,c),d(uH(p,u))})),t.onceDisconnect(()=>{o.forEach(u=>u({TAG:"Error",_0:Dv})),o.clear()}),{TAG:"Ok",_0:void 0}}var vH="thread Codex worker IPC client is closed",SH="thread Codex worker response missing body",wH="thread Codex worker IPC client closed";async function kH(e,t,r,n,i,o){let a=d=>{let u=e(d);if(u.TAG==="Ok")return;let c={};c.purpose=iR,c.requestMethod=n,c.message=u._0,o("thread_codex_worker.ipc_response_dropped",c)},s=!1,l=0;for(;!s&&l<i.length;){let d=i[l];if(d!==void 0){let u=await d(r);if(u.TAG==="Ok"){let c=u._0;c!==void 0&&(s=!0,a(Fv(t,c,void 0)))}else s=!0,a(Fv(t,void 0,u._0))}l=l+1|0}if(!s)return a(Fv(t,void 0,"unhandled Codex app-server request: "+n))}function xH(e){let t=xl(e);if(t===void 0)return"";let r=t.method;return typeof r=="string"?r:""}function aR(e,t){let r=t!==void 0?t:nR,n=new Map,i=[],o=[],a=[],s={contents:1},l={contents:!1},d=_=>{n.forEach(g=>g({TAG:"Error",_0:_})),n.clear()},u=_=>{if(l.contents)return{TAG:"Error",_0:vH};let g=e.send,b=e.isConnected();return g!==void 0&&b?g(_):{TAG:"Error",_0:Dv}},c=_=>{let g=hH(_);if(g!==void 0)switch(g.TAG){case"ChildResponse":let b=g.error,y=g.response,v=g.id,S=n.get(v);return S!==void 0?(n.delete(v),S(b!==void 0?{TAG:"Error",_0:b}:y!==void 0?{TAG:"Ok",_0:y}:{TAG:"Error",_0:SH})):void 0;case"ChildNotification":let A=g.notification;i.length!==0?i.forEach(L=>L(A)):a.push(A);return;case"ChildServerRequest":let W=g.request;kH(u,g.id,W,xH(W),o,r);return}},f=e.onMessage(c),p=()=>{l.contents=!0,d(Dv)},m=e.onceExit(p),h=e.onceDisconnect(p);return{request:(_,g)=>new Promise((b,y)=>{let v=s.contents;s.contents=v+1,n.set(v,b);let S=u(oH(v,_,g));S.TAG!=="Ok"&&(n.delete(v),b({TAG:"Error",_0:S._0}))}),notify:(_,g)=>u(aH(_,g)),onNotification:_=>{i.push(_);let g=a.slice();a.splice(0,a.length),g.forEach(b=>_(b))},onRequest:_=>{o.push(_)},isClosed:()=>l.contents?!0:!e.isConnected(),close:()=>{l.contents=!0,f(),m(),h(),d(wH)}}}import*as Bv from"node:child_process";import*as lR from"node:os";import*as dR from"node:path";function uR(){return dR.join(lR.homedir(),".linzumi","protected-dev-listeners")}var TH=new RegExp("^(\\d+)\\s+(\\d+)$");function AH(e){return $e(e.split(`
|
|
325
|
-
`),t=>{let r=
|
|
326
|
-
`}function
|
|
327
|
-
worker output: `+i}function xR(e,t){return"thread Codex worker did not report ready within "+t.toString()+"ms for Kandan thread "+e}var
|
|
328
|
-
`).map(t=>t.trim()).find(t=>t.startsWith(AR))}var Wre=new RegExp("worker exited before ready|worker did not report ready within","i");function ER(e,t){let r=e.trim(),n=r.length,i=" ... ",o=i.length,a=n<=t,s=t<(o+2|0);if(a)return r;if(s)return r.slice(n-Math.max(1,t)|0,n);let l=Math.max(1,Math.floor((t-o|0)/3)|0),d=Math.max(1,(t-o|0)-l|0);return r.slice(0,l)+i+r.slice(n-d|0,n)}function LH(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}async function PR(e,t,r,n,i,o){let a=o!==void 0?o:MH,s=Math.max(1,x(t,2)),l=x(r,250),d=x(n,LH),u,c,f=1;for(;mn(u)&&f<=s;){let m=f,h=await e(m);if(h.TAG==="Ready")u={TAG:"Ok",_0:h._0};else{let _=h._0;c=_;let g=qH(_.capturedOutput),b=m<s&&mn(g),y={};y.purpose=Zv,y.attempt=m,y.maxAttempts=s,y.code=rn(_.code,null,v=>v),y.signal=rn(_.signal,null,v=>v),y.capturedOutput=_.capturedOutput,y.willRespawn=b,g!==void 0&&(y.deterministicPreflightFailure=g),a("runner.thread_runner_exited_before_ready",y),g!==void 0?u={TAG:"Error",_0:g}:(b&&(i!==void 0&&i({attemptNumber:m+1|0,previous:_}),l>0&&await d(l)),f=m+1|0)}}let p=u;return p!==void 0?p:{TAG:"Error",_0:Zm(x(c,{code:void 0,signal:void 0,capturedOutput:""}))}}var RR=3e4;function UH(e){let t=ke(e);return t!==void 0?Nv(t):{TAG:"ResultReply",_0:null}}function IR(e,t){let r={contents:void 0},n=[],i=(m,h)=>{try{return m(h)}catch(_){let g=ee(_);return t("codex.close_callback_failed",Object.fromEntries([["purpose","codex.app_server"],["message",Ne(g).message]]))}};return{client:{request:(m,h)=>e.request(m,k(h,ke)).then(_=>wt(_,UH)),notify:(m,h)=>{e.notify(m,k(h,ke))},onNotification:m=>e.onNotification(h=>{let _=ke(h);if(_===void 0)return;let g=_.method;if(typeof g=="string")return m({method:g,params:_.params})}),onRequest:m=>e.onRequest(async h=>{let _=ke(h);if(_===void 0)return{TAG:"Ok",_0:void 0};let g=_.method;if(g===void 0)return{TAG:"Ok",_0:void 0};if(typeof g!="string")return{TAG:"Ok",_0:void 0};let b;try{b=await m({id:x(_.id,null),method:g,params:_.params})}catch(y){let v=ee(y);return{TAG:"Error",_0:Ne(v).message}}return b!==void 0?{TAG:"Ok",_0:b}:{TAG:"Ok",_0:void 0}}),onClose:m=>{let h=r.contents;if(h!==void 0)return i(m,h);n.push(m)},isClosed:()=>Dt(r.contents)?!0:e.isClosed(),close:()=>e.close()},signalClosed:m=>{if(r.contents!==void 0)return;r.contents=m;let _=n.slice();n.splice(0,n.length),_.forEach(g=>i(g,m))}}}function $R(e){let t={contents:1};return{request:(r,n)=>{let i=t.contents;return t.contents=i+1,e.request(r,G(n,o=>o)).then(o=>wt(o,a=>a.TAG==="ResultReply"?Object.fromEntries([["id",i],["result",a._0]]):Object.fromEntries([["id",i],["error",Object.fromEntries([["code",a.code],["message",a.message]])]])))},notify:(r,n)=>e.notify(r,G(n,i=>i)),onNotification:r=>e.onNotification(n=>{let i={};i.method=n.method;let o=n.params;o!==void 0&&(i.params=o),r(i)}),onRequest:r=>e.onRequest(async n=>{let i={};i.id=n.id,i.method=n.method;let o=n.params;o!==void 0&&(i.params=o);let a=await r(i);if(a.TAG==="Ok")return a._0})}}function WH(e,t){try{return e.send(t),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n).message}}}function Tu(e,t){try{e.kill(t);return}catch{return}}function ZH(e){try{e.disconnect();return}catch{return}}function VH(e,t,r,n,i){return new Promise((o,a)=>{let s=Bv.spawn(process.execPath,e,{cwd:t,env:r,stdio:["inherit","pipe","pipe","ipc"]}),l=Wm({stop:()=>Tu(s,"SIGTERM"),pid:Yt(s.pid),ownProcessGroup:!1,kind:"thread-worker"});s.once("exit",(_,g)=>l.unregister()),i(s);let d={contents:""},u={contents:!0},c={contents:!1},f=_=>{if(!c.contents)return c.contents=!0,u.contents=!1,o(_)},p=(_,g)=>{if(_!=null){_.on("data",b=>{let y=b.toString("utf8");u.contents&&(d.contents=kR(d.contents+y)),g.write(y)});return}};p(s.stdout,process.stdout),p(s.stderr,process.stderr);let m=_=>{let g=rR(_,n);if(g.TAG==="Ok"){let b=g._0;return b!==void 0?(s.off("message",m),s.off("exit",h),f({TAG:"WorkerReady",worker:s,ports:b.commanderManagedPorts})):void 0}Tu(s,"SIGKILL"),f({TAG:"WorkerInvalidReady",_0:g._0})},h=(_,g)=>f({TAG:"WorkerExitedBeforeReady",_0:{code:_==null?void 0:Ze(_),signal:g==null?void 0:Ze(g),capturedOutput:d.contents}});s.on("message",m),s.once("exit",h),s.on("error",_=>f({TAG:"WorkerExitedBeforeReady",_0:{code:void 0,signal:void 0,capturedOutput:_.message}}))})}async function jR(e,t){let r=bR(process.argv[1],process.cwd());if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=r._0,i=TR(void 0);if(i.TAG!=="Ok")return{TAG:"Error",_0:i._0};let o=i._0,a=["run"].concat(vR(e)),s=Vv(n,a,process.execArgv),l=e.codexModelProvider,d;if(l!==void 0&&l.provider==="openai-proxy"){let _=G(process.env.OPENAI_API_KEY,g=>g.trim());d=_!==void 0&&_!==""?_:void 0}else d=void 0;let u=Object.fromEntries(Object.entries(process.env));wR(e,process.pid,d).forEach(_=>{u[_[0]]=_[1]}),t("process.spawn",Object.fromEntries([["command",process.execPath],["args",Vv(n,SR(a),process.execArgv).map(_=>_)],["cwd",e.cwd],["purpose",Zv]]));let c={contents:void 0},f={contents:!1},p=(async()=>{let _=await PR(b=>VH(s,e.cwd,u,e.kandanThreadId,y=>{c.contents=Ze(y)}).then(y=>{switch(y.TAG){case"WorkerExitedBeforeReady":return{TAG:"ExitedBeforeReady",_0:y._0};case"WorkerReady":case"WorkerInvalidReady":return{TAG:"Ready",_0:y}}}),void 0,void 0,void 0,void 0,t);if(_.TAG!=="Ok")return{TAG:"Error",_0:_._0};let g=_._0;switch(g.TAG){case"WorkerReady":return{TAG:"Ok",_0:g};case"WorkerExitedBeforeReady":return{TAG:"Error",_0:Zm(g._0)};case"WorkerInvalidReady":return{TAG:"Error",_0:g._0}}})();p.then(_=>{if(!f.contents||_.TAG!=="Ok")return;let b=_._0;switch(b.TAG){case"WorkerReady":return Tu(b.worker,"SIGKILL");case"WorkerExitedBeforeReady":case"WorkerInvalidReady":return}});let m=await Promise.race([p,new Promise((_,g)=>{setTimeout(()=>{f.contents=!0;let b=c.contents;b!==void 0&&Tu(ue(b),"SIGKILL"),_({TAG:"Error",_0:xR(e.kandanThreadId,o)})},o)})]);if(m.TAG!=="Ok")return{TAG:"Error",_0:m._0};let h=m._0;switch(h.TAG){case"WorkerReady":let _=h.worker,g=[],W=aR({send:B=>WH(_,B),isConnected:()=>nn(Yt(_.connected),!1),onMessage:B=>{_.on("message",B);let oe=()=>{_.off("message",B)};return g.push(oe),oe},onceExit:B=>{let oe=(Z,V)=>B();return _.once("exit",oe),()=>{_.off("exit",oe)}},onceDisconnect:B=>{let oe=()=>B();return _.once("disconnect",oe),()=>{_.off("disconnect",oe)}}},t),L=IR(W,t);_.on("message",B=>{let oe=tR(B);if(oe!==void 0)return t("runner.thread_codex_worker_session_closed",Object.fromEntries([["kandanThreadId",oe[0]],["reason",oe[1]]]))});let ae=[],U={contents:!1};return _.once("exit",(B,oe)=>{U.contents=!0,L.signalClosed("codex thread worker exited");let Z=ae.slice();ae.splice(0,ae.length),Z.forEach(V=>V())}),{TAG:"Ok",_0:{client:L.client,pid:Yt(_.pid),commanderManagedPorts:h.ports,onExit:B=>{if(U.contents)return B();ae.push(B)},close:()=>{W.close(),g.forEach(B=>B()),ZH(_),Tu(_,"SIGTERM")}}};case"WorkerExitedBeforeReady":return{TAG:"Error",_0:Zm(h._0)};case"WorkerInvalidReady":return{TAG:"Error",_0:h._0}}}function zR(e,t){return new Promise((r,n)=>{let i;try{i={TAG:"Ok",_0:Bv.spawn(e,["login","status"],{cwd:t,env:process.env,stdio:["ignore","pipe","pipe"]})}}catch(l){let d=ee(l);i={TAG:"Error",_0:Ne(d).message}}if(i.TAG!=="Ok")return r();let o=i._0,a={contents:!1},s=()=>{if(!a.contents)return a.contents=!0,r()};setTimeout(()=>{Tl(o,"SIGTERM"),s()},3e3),o.once("exit",(l,d)=>s()),o.on("error",l=>s())})}function Kv(e,t,r){let n=r.sandboxedNeverDefault&&de(t,"workspace-write");if(e===void 0)return{TAG:"Ok",_0:n?"never":"on-request"};switch(e){case"default":return{TAG:"Ok",_0:n?"never":"on-request"};case"never":return{TAG:"Ok",_0:de(t,"danger-full-access")||n?"never":"on-request"};case"on-failure":return{TAG:"Ok",_0:"on-failure"};case"on-request":return{TAG:"Ok",_0:"on-request"};default:return{TAG:"Error",_0:"unsupported Codex approval policy: "+e}}}function Vm(e,t,r){return wt(Kv(e,t,r),n=>n==="on-failure"?"on-request":n)}function NR(e,t){switch(e){case"danger-full-access":return{TAG:"Ok",_0:Object.fromEntries([["type","dangerFullAccess"]])};case"read-only":return{TAG:"Ok",_0:Object.fromEntries([["type","readOnly"],["access",Object.fromEntries([["type","fullAccess"]])],["networkAccess",!1]])};case"workspace-write":return{TAG:"Ok",_0:Object.fromEntries([["type","workspaceWrite"],["writableRoots",[t]],["readOnlyAccess",Object.fromEntries([["type","fullAccess"]])],["networkAccess",!1],["excludeTmpdirEnvVar",!1],["excludeSlashTmp",!1]])};default:return{TAG:"Error",_0:"unsupported Codex sandbox mode: "+e}}}var GR="kandan-local-runner",FR="pragmatic";import*as qR from"node:os";import*as Vo from"node:path";function Jv(e){let t=oa(e,"LINZUMI_CONTROL_CURSOR_DIR");return t!==void 0&&t.trim()!==""?t.trim():Vo.join(qR.homedir(),".linzumi","control-cursors")}var BH=new RegExp("[^A-Za-z0-9._-]+","g"),KH=new RegExp("^[-.]+|[-.]+$","g");function Yv(e){let t=e.replace(BH,"-").replace(KH,"").slice(0,80),r=qn(e).slice(0,8);return(t===""?"runner":t)+"."+r}function LR(e,t){return Vo.join(Jv(t),Yv(e)+".json")}function UR(e,t){return Vo.join(Jv(t),Yv(e)+".start-turn.json")}function WR(e,t){return Vo.join(Jv(t),Yv(e)+".source-seq.json")}function ZR(e,t){return e+" "+t}function VR(e,t,r){return e+" "+t+" "+r}var HR="__control_epoch";function JH(e){let t;try{t=JSON.parse(e)}catch{t=void 0}if(t===void 0)return{TAG:"Error",_0:void 0};if(typeof t!="object"||t===null||Array.isArray(t))return{TAG:"Error",_0:void 0};let r={},n={contents:void 0};return Object.entries(t).forEach(i=>{let o=i[1],a=i[0];if(a===HR)if(typeof o=="string"&&o!==""){n.contents=o;return}else return;else if(typeof o=="number"&&Ot(o)&&o>=0){r[a]=o;return}else return}),{TAG:"Ok",_0:{cursors:r,epoch:n.contents}}}function YH(e,t){let r=Qt(e);if(r.TAG==="Ok"){let i=JH(r._0);return i.TAG==="Ok"?i._0:(t("control_cursor_store.corrupt_ignored",Object.fromEntries([["path",e]])),{cursors:{},epoch:void 0})}let n=r._0;return si(n,"ENOENT")||t("control_cursor_store.read_failed",Object.fromEntries([["path",e],["message",n.message]])),{cursors:{},epoch:void 0}}function XH(e,t){let r={};return t!==void 0&&(r[HR]=t),Object.entries(e).forEach(n=>{r[n[0]]=n[1]}),JSON.stringify(r)+`
|
|
329
|
-
`}function Hm(e,t,r,n){let i=r!==void 0?r:!1,o=n!==void 0?n:!1,a=YH(e,t),s=a.cursors,l={contents:a.epoch},d={contents:!1},u={contents:void 0},c=()=>{if(!d.contents)return;d.contents=!1;let m=XH(s,l.contents),h=e+".tmp",_=he(qt(Vo.dirname(e)),()=>o?zw(h,e,Vo.dirname(e),m):he(Ti(h,m),()=>li(h,e)));if(_.TAG!=="Ok")return t("control_cursor_store.write_failed",Object.fromEntries([["path",e],["message",_._0.message]]))},f=()=>{if(d.contents=!0,u.contents!==void 0)return;let h=setTimeout(()=>{u.contents=void 0,c()},250);h.unref(),u.contents=Ze(h)},p=()=>{let m=u.contents;m!==void 0&&(clearTimeout(ue(m)),u.contents=void 0),c()};return{initial:m=>s[m],onAdvance:(m,h)=>{let _=s[m];_!==void 0&&h<=_||(s[m]=h,f())},reset:(m,h)=>{if(!de(s[m],h))return s[m]=h,f()},flush:p,epoch:()=>l.contents,adoptEpoch:m=>{if(de(l.contents,m))return!1;let h=l.contents!==void 0,_=!h&&i&&Object.entries(s).length!==0;return l.contents=m,(h||_)&&(_&&t("control_cursor_store.pre_epoch_seqs_discarded",Object.fromEntries([["path",e],["epoch",m],["discardedSeqs",Object.entries(s).length]])),Object.entries(s).forEach(g=>fr(s,g[0]))),f(),(h||_)&&p(),h}}}function BR(e,t,r,n,i){return{current:()=>e.epoch(),adopt:(o,a)=>{let s=e.epoch(),l=e.adoptEpoch(a),d=t.adoptEpoch(a),u=l||d;return u&&r("kandan.control_epoch_changed",Object.fromEntries([["runnerId",n],["kandanUrl",i],["topic",o],["previousEpoch",s!==void 0?s:null],["epoch",a],["controlCursorCleared",l],["startTurnWatermarksCleared",d]])),u}}}var Zre=1800*1e3;var Vre=new RegExp("[^A-Za-z0-9._-]+","g"),Hre=new RegExp("^[-.]+|[-.]+$","g");function KR(e){return{initial:t=>e.initial(t),onAdvance:(t,r)=>e.onAdvance(t,r),flush:()=>e.flush()}}function Bm(e,t){return e!==void 0?t>e:!0}function Au(e,t,r,n){if(n!==void 0){let i=e.initial(t);i!==void 0&&r<=i&&n("commander.invariant_violation",Object.fromEntries([["invariant","watermark_regression"],["thread_id",null],["harness",null],["detail","watermark_key="+t+" committed_source_seq="+r.toString()+" durable_floor="+i.toString()]]))}e.onAdvance(t,r),e.flush()}function JR(e){return e!==void 0?Array.isArray(e)?$e(e,t=>{if(typeof t!="object"||t===null||Array.isArray(t))return;let r=t.threadId;if(r===void 0||typeof r!="string")return;let n=t.channelId,i;if(n!==void 0)switch(typeof n){case"string":i=n;break;case"number":i=n.toString();break;default:i=""}else i="";let o=t.highestProcessedSourceSeq,a=o!==void 0&&typeof o=="number"&&Ot(o)?o:void 0,s=t.leaseEpoch,l=s!==void 0&&typeof s=="number"&&Ot(s)?s:void 0;return{channelId:i,threadId:r,highestProcessedSourceSeq:a,leaseEpoch:l}}):[]:[]}function XR(){let e=new Map;return{current:t=>e.get(t),adopt:(t,r)=>{if(!Ot(r))return!1;let n=e.get(t);return n!==void 0&&(r<n||r===n)?!1:(e.set(t,r),!0)},release:t=>{e.delete(t)},snapshot:()=>e.entries().toArray().map(t=>({threadId:t[0],leaseEpoch:t[1]}))}}function Km(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function n3(e,t){let r=e[t];if(typeof r=="string")return r}function Ho(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&isFinite(r)&&Math.round(r)===r)return r}function Xv(e){return G(Km(e,"usage"),t=>({inputTokens:Ho(t,"input_tokens"),outputTokens:Ho(t,"output_tokens"),cacheCreationInputTokens:Ho(t,"cache_creation_input_tokens"),cacheReadInputTokens:Ho(t,"cache_read_input_tokens")}))}function tI(){return{completed:{inputTokens:0,outputTokens:0,cacheCreationInputTokens:0,cacheReadInputTokens:0},current:void 0,lastEmittedKey:void 0}}function QR(e,t){let r=n=>t!==void 0?n(t):0;return{inputTokens:x(Ho(e,"input_tokens"),r(n=>n.inputTokens)),outputTokens:x(Ho(e,"output_tokens"),r(n=>n.outputTokens)),cacheCreationInputTokens:x(Ho(e,"cache_creation_input_tokens"),r(n=>n.cacheCreationInputTokens)),cacheReadInputTokens:x(Ho(e,"cache_read_input_tokens"),r(n=>n.cacheReadInputTokens))}}function eI(e){let t=(s,l)=>{let d=e.current;return s+(d!==void 0?l(d):0)},r=t(e.completed.inputTokens,s=>s.inputTokens),n=t(e.completed.outputTokens,s=>s.outputTokens),i=t(e.completed.cacheCreationInputTokens,s=>s.cacheCreationInputTokens),o=t(e.completed.cacheReadInputTokens,s=>s.cacheReadInputTokens),a=r.toString()+":"+n.toString()+":"+(i.toString()+":"+o.toString());if(!de(e.lastEmittedKey,a))return e.lastEmittedKey=a,{inputTokens:r,outputTokens:n,cacheCreationInputTokens:i,cacheReadInputTokens:o}}function rI(e,t){let r=k(t,n=>n3(n,"type"));if(r!==void 0)switch(r){case"message_delta":let n=k(t,a=>Km(a,"usage"));return n!==void 0?(e.current=QR(n,e.current),eI(e)):void 0;case"message_start":let i=k(k(t,a=>Km(a,"message")),a=>Km(a,"usage"));if(i===void 0)return;let o=e.current;return o!==void 0&&(e.completed.inputTokens=e.completed.inputTokens+o.inputTokens,e.completed.outputTokens=e.completed.outputTokens+o.outputTokens,e.completed.cacheCreationInputTokens=e.completed.cacheCreationInputTokens+o.cacheCreationInputTokens,e.completed.cacheReadInputTokens=e.completed.cacheReadInputTokens+o.cacheReadInputTokens),e.current=QR(i,void 0),eI(e);default:return}}function Ou(e){if(e<425){if(e===402||e===408)return"transient_upstream"}else{if(e===425)return"transient_upstream";if(e===429)return"rate_limited"}return e>=500&&e<=599?"transient_upstream":"deterministic"}function eS(e){return e==="Text"?"text":"thinking"}function oI(){return{activeMessageId:void 0,syntheticMessageCounter:0,completedMessageIds:[],consumedAssistantMessageIds:new Set,blocksByMessageId:{}}}function Qv(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function Bo(e,t){let r=e[t];if(typeof r=="string")return r}function iI(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&isFinite(r)&&Math.round(r)===r)return r|0}function tS(e,t){return e.syntheticMessageCounter=e.syntheticMessageCounter+1|0,"synthetic-claude-message:"+t+":"+e.syntheticMessageCounter.toString()}function o3(e,t){let r=e.activeMessageId;if(r!==void 0)return r;let n=tS(e,t);return e.activeMessageId=n,n}function rS(e,t){return"claude-message:"+e+":content-block:"+t.toString()}function Jm(e,t,r,n){if(r===void 0)return;let i=o3(e,"orphan-stream-event"),o=e.blocksByMessageId[i],a;if(o!==void 0)a=o;else{let l=[];e.blocksByMessageId[i]=l,a=l}let s=a.find(l=>l.index===r);s!==void 0?s.content=s.content+x(n,""):a.push({kind:t,index:r,content:x(n,"")})}function aI(e,t){let r=k(t,n=>Bo(n,"type"));if(r!==void 0)switch(r){case"content_block_delta":let n=k(t,c=>Qv(c,"delta")),i=k(t,c=>iI(c,"index")),o=k(n,c=>Bo(c,"type"));if(o!==void 0)switch(o){case"text_delta":Jm(e,"Text",i,k(n,c=>Bo(c,"text")));break;case"thinking_delta":Jm(e,"Thinking",i,k(n,c=>Bo(c,"thinking")));break}return e.activeMessageId;case"content_block_start":let a=k(t,c=>Qv(c,"content_block")),s=k(t,c=>iI(c,"index")),l=k(a,c=>Bo(c,"type"));if(l!==void 0)switch(l){case"text":Jm(e,"Text",s,k(a,c=>Bo(c,"text")));break;case"thinking":Jm(e,"Thinking",s,k(a,c=>Bo(c,"thinking")));break}return e.activeMessageId;case"message_start":let d=k(k(t,c=>Qv(c,"message")),c=>Bo(c,"id"));e.activeMessageId=d!==void 0?d:tS(e,"missing-message-start-id");return;case"message_stop":let u=e.activeMessageId;u!==void 0&&!e.consumedAssistantMessageIds.has(u)&&e.completedMessageIds.push(u),e.activeMessageId=void 0;return;default:return}}function sI(e,t){if(t!==void 0){e.consumedAssistantMessageIds.add(t);let n=ia(e.completedMessageIds,t);return n!==void 0&&e.completedMessageIds.splice(n,1),t}let r=e.completedMessageIds.shift();return r!==void 0?(e.consumedAssistantMessageIds.add(r),r):tS(e,"missing-assistant-frame-id")}function lI(e,t){let r=e.blocksByMessageId[t];return r!==void 0?(fr(e.blocksByMessageId,t),r.toSorted((n,i)=>Xu(n.index,i.index))):[]}function dI(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function nS(e,t){let r=e[t];if(typeof r=="string")return r}function iS(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&isFinite(r))return r}function s3(e){if(e===void 0||e<0)return;let t=e<=1?e*100:e;return Math.min(100,Math.round(t))}function l3(e){if(e!==void 0&&e>0)return e>1e12?Math.round(e):Math.round(e*1e3)}function oS(e){let t=nS(e,"status"),r=nS(e,"rateLimitType"),n=r!==void 0?r:nS(e,"rate_limit_type"),i=s3(iS(e,"utilization")),o=iS(e,"resetsAt"),a=l3(o!==void 0?o:iS(e,"resets_at"));if(!(t===void 0&&i===void 0&&a===void 0))return{status:t,windowLabel:n,utilizationPercent:i,resetsAtMs:a}}function uI(e){let t=dI(e,"rate_limit_info");if(t!==void 0)return oS(t);let r=dI(e,"rate_limit");return oS(r!==void 0?r:e)}var u3="edge_blocked";function c3(e){let t=e.toLowerCase(),r=t.includes("<html")||t.includes("<!doctype html"),n=t.includes("cloudflare");return t.includes("sorry, you have been blocked")||t.includes("attention required")&&n||t.includes("cf_chl_")||t.includes("challenge-platform")||t.includes("just a moment")&&(n||t.includes("cf-"))?!0:r?t.includes("cloudflare ray id")||t.includes("cf-ray")?!0:n?t.includes("blocked"):!1:!1}function fI(e,t){let r=e.exec(t);if(r==null)return;let n=r.slice(1)[0];if(n===void 0)return;let i=ue(n);if(i!==void 0)return i}var f3=[new RegExp("\\bAPI Error:?\\s*([1-5]\\d{2})\\b","i"),new RegExp("\\b(?:HTTP|status(?:\\s+code)?)[\\s:]+([1-5]\\d{2})\\b","i")],m3=[new RegExp('"request[_-]id"\\s*:\\s*"([^"]{1,128})"',"i"),new RegExp('\\brequest[_ -]id[:=]\\s*"?([A-Za-z0-9_-]{6,128})',"i"),new RegExp("\\b(req_[A-Za-z0-9]{6,})\\b")],p3=new RegExp('"error"\\s*:\\s*\\{[^{}]*?"message"\\s*:\\s*"((?:[^"\\\\]|\\\\.){1,500})"');function cI(e,t){return Ve(e,void 0,(r,n)=>r!==void 0?r:fI(n,t))}function h3(e){let t;try{t=JSON.parse('"'+e+'"')}catch{return e}return typeof t=="string"?t:e}function _3(e){let t=fI(p3,e),n=(t!==void 0?h3(t):e).trim();return n.length<=200?n:n.slice(0,199)+"\u2026"}function mI(e){return{status:k(cI(f3,e),t=>ga(t,void 0)),requestId:cI(m3,e),edgeBlocked:c3(e),message:_3(e)}}function aS(e){return Dt(e.status)||Dt(e.requestId)?!0:e.edgeBlocked}function pI(e,t){let r=[],n=t.status;n!==void 0&&r.push("HTTP "+n.toString());let i=t.requestId;return i!==void 0&&r.push("request "+i),t.edgeBlocked&&r.push("blocked at the network edge by Cloudflare before reaching Linzumi - our infrastructure, not your usage; retrying usually succeeds "+("[failure_class="+u3+"]")),r.length!==0?e+" ("+r.join(", ")+")":e}function hI(e){let t={},r=e.status;t.status=r!==void 0?r:null;let n=e.requestId;return t.request_id=n!==void 0?n:null,t.edge_blocked=e.edgeBlocked,t.message=e.message,t}function yI(e,t,r){return{emitEvent:r,announcedSessionId:e,onSessionStarted:t,sessionAnnounced:!1,pendingTurnIds:[],startedTurns:new Set,terminalTurns:new Set,startedItems:new Set,activeTurnId:void 0,mintedTurnCount:0,usage:tI(),identity:oI()}}function Al(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function Rt(e,t){let r=e[t];if(typeof r=="string")return r}function _I(e,t){let r=e[t];if(typeof r=="boolean")return r}function sS(e,t){let r=e[t];if(Array.isArray(r))return r}function Ko(e){if(e===void 0)return;let t=e.trim();if(t!=="")return t}function y3(e){let t=Rt(e,"session_id"),r=t!==void 0?t:Rt(e,"sessionId");if(r!==void 0)return r;let n=Al(e,"message");if(n===void 0)return;let i=Rt(n,"session_id");return i!==void 0?i:Rt(n,"sessionId")}function b3(e,t){if(e.sessionAnnounced)return!1;let r=y3(t);if(r===void 0)return!1;let n=e.announcedSessionId,i=n!==void 0?n:r;return e.sessionAnnounced=!0,e.emitEvent({TAG:"SessionStarted",harnessSessionId:i}),e.onSessionStarted(i),!0}function Cu(e,t){return e.startedTurns.has(t)?!e.terminalTurns.has(t):!1}var bI=Cu;function vI(e){let t=e.activeTurnId;return t!==void 0?Cu(e,t):!1}function SI(e,t){e.mintedTurnCount=e.mintedTurnCount+1|0;let r="claude:"+t+":turn:"+e.mintedTurnCount.toString();return e.pendingTurnIds.push(r),r}function Ol(e){let t=e.activeTurnId;if(t!==void 0&&Cu(e,t))return t;let r=e.pendingTurnIds.shift(),n=r!==void 0?r:(e.mintedTurnCount=e.mintedTurnCount+1|0,"claude-adapter-turn-"+e.mintedTurnCount.toString());return e.startedTurns.add(n),e.activeTurnId=n,e.emitEvent({TAG:"TurnStarted",turnId:n}),n}function lS(e,t){if(e.terminalTurns.add(t),de(e.activeTurnId,t)){e.activeTurnId=void 0;return}}function gI(e){return e.turnId+"/"+e.itemId+"/"+e.streamKind}function dS(e,t){if(!e.startedItems.has(gI(t)))return e.startedItems.add(gI(t)),e.emitEvent({TAG:"ItemStarted",item:t})}function uS(e,t,r){dS(e,t),e.emitEvent({TAG:"ItemCompleted",item:t,content:r})}function v3(e,t,r){dS(e,t),e.emitEvent({TAG:"ItemDelta",item:t,delta:r})}function es(e,t){let r=e.activeTurnId;if(x(G(r,n=>Cu(e,n)),!0))return e.emitEvent({TAG:"ActivityPulse",turnId:r,signalKind:t})}function S3(e,t){let r=$e(x(sS(e,"errors"),[]),a=>{if(typeof a=="string")return Ko(a)}).join("; "),n=Ko(r);if(n!==void 0)return n;let i=Ko(Rt(e,"result"));if(i!==void 0)return i;let o=Ko(Rt(e,"error"));return o!==void 0?o:x(t,"error")}function w3(e){let t=Rt(e,"subtype"),r=x(_I(e,"is_error"),!1),n=de(t,"interrupt")||de(t,"error_interrupted")||x(_I(e,"is_interrupt"),!1),i=r||de(t,"error_max_turns")||de(t,"error_during_execution");return n?"Interrupted":i?{TAG:"Errored",reason:S3(e,t)}:"Success"}function k3(e,t){let r=mI(t),n=r.status;return{fate:e!==void 0?e==="error_max_turns"?"deterministic":n!==void 0?Ou(n):"transient_upstream":n!==void 0?Ou(n):"transient_upstream",reason:aS(r)?pI("Claude Code failed: "+t,r):"Claude Code failed: "+t,providerDetail:aS(r)?hI(r):void 0}}function x3(e,t){let r=Rt(e,"id");if(r!==void 0)return r;let n=Rt(e,"tool_use_id");return n!==void 0?n:"content-block-"+t.toString()}function T3(e){return e==="Text"?"assistant":"reasoning"}function A3(e){let t={};t.type=eS(e.kind);let r=e.kind,n;return n=r==="Text"?"text":"thinking",t[n]=e.content,t}function O3(e,t){let r=Ol(e),n=Al(t,"message"),i=x(k(n,y=>sS(y,"content")),[]),o=sI(e.identity,k(n,y=>Rt(y,"id"))),s=lI(e.identity,o).filter(y=>y.content.trim()!==""),l={};s.forEach(y=>{let v=eS(y.kind),S=l[v];S!==void 0?S.push(y.index):l[v]=[y.index]});let d={};i.forEach((y,v)=>{let S;if(S=typeof y=="object"&&y!==null&&!Array.isArray(y)?Rt(y,"type"):void 0,S===void 0)return;switch(S){case"text":case"thinking":break;default:return}let A=x(S,""),R=d[A];R!==void 0?R.push(v):d[A]=[v]});let u=new Set;s.forEach(y=>{u.add(y.index)});let c=(y,v)=>{let S=x(d[y],[]),A=ia(S,v);A!==void 0&&S.splice(A,1);let R=x(l[y],[]),W=R[0];if(W!==void 0&&v<W)return R.shift(),!0;let L=ia(R,v);if(L!==void 0)return R.splice(L,1),!0;let ae=ec(R,U=>!S.includes(U));return ae!==void 0?(R.splice(ae,1),!0):!1},f=y=>{if(u.has(y)){let v=y+1|0;for(;u.has(v);)v=v+1|0;return u.add(v),v}return u.add(y),y},p=(y,v)=>({turnId:r,itemId:rS(o,y),streamKind:v}),m=[];s.forEach(y=>{m.push({index:y.index,events:[[p(y.index,T3(y.kind)),A3(y)]]})}),i.forEach((y,v)=>{if(typeof y!="object"||y===null||Array.isArray(y))return;let S=Rt(y,"type");if(S!==void 0)switch(S){case"text":if(c("text",v))return;if(Ko(Rt(y,"text"))!==void 0){m.push({index:v,events:[[p(f(v),"assistant"),y]]});return}else return;case"thinking":if(c("thinking",v))return;if(Ko(Rt(y,"thinking"))!==void 0){m.push({index:v,events:[[p(f(v),"reasoning"),y]]});return}else return;case"tool_use":m.push({index:v,events:[[{turnId:r,itemId:x3(y,v),streamKind:"command_output"},y]]});return;default:return}});let h=i.some(y=>typeof y=="object"&&y!==null&&!Array.isArray(y)?de(Rt(y,"type"),"text"):!1),_=s.some(y=>y.kind==="Text"),g=h||_,b=Ko(Rt(t,"text"));return g||b===void 0||m.push({index:i.length,events:[[p(f(i.length),"assistant"),b]]}),m.toSorted((y,v)=>Xu(y.index,v.index)).flatMap(y=>y.events)}function C3(e){if(e!==void 0&&e!=="")return e}function E3(e,t){let r=Al(t,"event"),n=rI(e.usage,r),i=aI(e.identity,r),o={contents:!1};if(n!==void 0){let d=Ol(e);e.emitEvent({TAG:"UsageUpdated",turnId:d,usage:n}),o.contents=!0}let a=(d,u)=>G(i,c=>({turnId:Ol(e),itemId:rS(c,d),streamKind:u})),s=d=>{let u=d.index;if(u!==void 0&&typeof u=="number"&&isFinite(u)&&Math.round(u)===u)return u|0},l=k(r,d=>Rt(d,"type"));if(l!==void 0)switch(l){case"content_block_delta":let d=k(r,b=>Al(b,"delta")),u=k(r,s),c=(b,y)=>{let v=C3(y);if(u===void 0||v===void 0)return;let S=a(u,b);if(S!==void 0){v3(e,S,v),o.contents=!0;return}},f=k(d,b=>Rt(b,"type")),p=0;f==="thinking_delta"?c("reasoning",k(d,b=>Rt(b,"thinking"))):p=1,p===1&&c("assistant",k(d,b=>Rt(b,"text")));break;case"content_block_start":let m=k(r,b=>Al(b,"content_block")),h=k(r,s),_=(b,y,v)=>{let S=Ko(y);if(h===void 0||S===void 0)return;let A=a(h,b);if(A!==void 0){uS(e,A,v),o.contents=!0;return}},g=k(m,b=>Rt(b,"type"));if(g!==void 0)switch(g){case"text":_("assistant",k(m,b=>Rt(b,"text")),x(G(m,b=>b),null));break;case"thinking":_("reasoning",k(m,b=>Rt(b,"thinking")),x(G(m,b=>b),null));break}break}if(!o.contents)return es(e,"stream_event")}function P3(e,t){let r=Al(t,"message"),n=x(k(r,o=>sS(o,"content")),[]),i={contents:!1};if(n.forEach((o,a)=>{if(typeof o!="object"||o===null||Array.isArray(o)||!de(Rt(o,"type"),"tool_result"))return;let s=Ol(e),l=Rt(o,"tool_use_id"),d;if(l!==void 0)d=l;else{let u=Rt(o,"id");d=u!==void 0?u:"content-block-"+a.toString()}uS(e,{turnId:s,itemId:d,streamKind:"command_output"},o),i.contents=!0}),!i.contents)return es(e,"user")}function R3(e,t){lS(e,t),e.emitEvent({TAG:"TurnCompleted",turnId:t})}function I3(e,t,r){lS(e,t),e.emitEvent({TAG:"TurnInterrupted",turnId:t,reason:r})}function $3(e,t,r){lS(e,t),e.emitEvent({TAG:"TurnFailed",turnId:t,failure:r})}function M3(e,t){let r=w3(t);if(typeof r!="object"){if(r==="Success"){let i=Ol(e),o=Xv(t);return o!==void 0&&e.emitEvent({TAG:"UsageUpdated",turnId:i,usage:o}),R3(e,i)}let n=e.activeTurnId;return n!==void 0&&Cu(e,n)?I3(e,n,void 0):void 0}else{let n=Ol(e),i=Xv(t);return i!==void 0&&e.emitEvent({TAG:"UsageUpdated",turnId:n,usage:i}),$3(e,n,k3(Rt(t,"subtype"),r.reason))}}function wI(e,t){if(typeof t!="object"||t===null||Array.isArray(t))return;let r=b3(e,t),n=Rt(t,"type");if(n!==void 0)switch(n){case"assistant":O3(e,t).forEach(a=>{let s=a[0];return s.streamKind==="command_output"?dS(e,s):uS(e,s,a[1])});return;case"rate_limit_event":let i=uI(t);return i!==void 0?e.emitEvent({TAG:"RateLimitUpdated",rateLimit:i}):es(e,"rate_limit_event");case"result":return M3(e,t);case"stream_event":return E3(e,t);case"system":let o=Rt(t,"subtype");return o!==void 0?o==="init"?r?void 0:es(e,"system:init"):es(e,"system:"+o):es(e,"system");case"user":return P3(e,t);default:return es(e,n)}}var z3=["liveModelSwitch","liveEffortSwitch","sessionHistoryListing","slashCommandCatalog"];function Cl(e){let t=Sr(e);return t!==void 0?x(Er(ue(t)),"unknown error"):"unknown error"}function kI(e){if(e===void 0)return{TAG:"Ok",_0:void 0};switch(e){case"never":return{TAG:"Ok",_0:"bypassPermissions"};case"on-failure":return{TAG:"Ok",_0:"acceptEdits"};case"on-request":case"untrusted":return{TAG:"Ok",_0:"default"};default:return{TAG:"Error",_0:"unsupported Claude Code approval policy: "+e}}}function OI(e){let t=G(e,r=>r.trim().toLowerCase());if(t===void 0)return"EffortNotApplied";switch(t){case"default":return"ClearEffort";case"high":return{TAG:"SetEffort",_0:"high"};case"low":return{TAG:"SetEffort",_0:"low"};case"medium":return{TAG:"SetEffort",_0:"medium"};case"xhigh":return{TAG:"SetEffort",_0:"xhigh"};default:return"EffortNotApplied"}}function xI(e){let t=e.attachments.length,r;if(t!==0){let o={};o.type="text",o.text=e.text,r=[o].concat(e.attachments)}else r=e.text;let n={};n.role="user",n.content=r;let i={};return i.type="user",i.message=n,i.parent_tool_use_id=null,i}function N3(e,t,r){let n={};return n.tool_name=e,n.input=t,r!==void 0&&(n.suggestions=r),n}function G3(e,t){let r={};return r.behavior="allow",r.toolUseID=e,r.updatedInput=t,r}function CI(e,t){let r={};return r.behavior="deny",r.message=x(t,"denied by the approval bridge"),r.toolUseID=e,r}function TI(e){return{harnessSessionId:e.harnessSessionId,dispatchTurn:async t=>{if(e.stopped)return{TAG:"Error",_0:{fate:"transient_local",reason:"the session is stopped; no turn can be dispatched",providerDetail:void 0}};let r;if(t.model===e.currentModel)r={TAG:"Ok",_0:void 0};else try{await e.connection.setModel(t.model),e.currentModel=t.model,r={TAG:"Ok",_0:void 0}}catch(l){let d=ee(l);r={TAG:"Error",_0:{fate:"transient_local",reason:"setModel failed: "+Cl(d),providerDetail:void 0}}}if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=OI(t.reasoningEffort),i;if(typeof n!="object")if(n==="ClearEffort"&&Dt(e.currentEffort))try{let l={};l.effortLevel=null,await e.connection.applyFlagSettings(l),e.currentEffort=void 0,i={TAG:"Ok",_0:void 0}}catch(l){let d=ee(l);i={TAG:"Error",_0:{fate:"transient_local",reason:"applyFlagSettings failed: "+Cl(d),providerDetail:void 0}}}else i={TAG:"Ok",_0:void 0};else{let l=n._0;if(nn(l,e.currentEffort))try{let d={};d.effortLevel=l,await e.connection.applyFlagSettings(d),e.currentEffort=l,i={TAG:"Ok",_0:void 0}}catch(d){let u=ee(d);i={TAG:"Error",_0:{fate:"transient_local",reason:"applyFlagSettings failed: "+Cl(u),providerDetail:void 0}}}else i={TAG:"Ok",_0:void 0}}if(i.TAG!=="Ok")return{TAG:"Error",_0:i._0};let o=()=>({turnId:SI(e.projector,e.harnessSessionId)});if(e.harnessSessionId===""){if(!e.input.push(xI(t.input)))return{TAG:"Error",_0:{fate:"transient_local",reason:"the streaming input is closed; no turn can be dispatched",providerDetail:void 0}};let l=await e.adoption;return l.TAG!=="Ok"?{TAG:"Error",_0:l._0}:(e.harnessSessionId=l._0,{TAG:"Ok",_0:o()})}let a=o();if(e.input.push(xI(t.input)))return{TAG:"Ok",_0:a};let s=ia(e.projector.pendingTurnIds,a.turnId);return s!==void 0&&e.projector.pendingTurnIds.splice(s,1),{TAG:"Error",_0:{fate:"transient_local",reason:"the streaming input is closed; no turn can be dispatched",providerDetail:void 0}}},steerTurn:(t,r)=>Promise.resolve({TAG:"Error",_0:{TAG:"NotSupported",capability:"midTurnSteer"}}),interruptTurn:async t=>{if(!bI(e.projector,t))return{TAG:"Ok",_0:void 0};try{return await e.connection.interrupt(),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:{fate:"transient_local",reason:"interrupt failed: "+Cl(n),providerDetail:void 0}}}},respondToApproval:(t,r)=>{let n=ec(e.pendingApprovals,a=>a.requestId===t),i=k(n,a=>e.pendingApprovals[a]);if(i===void 0)return Promise.resolve({TAG:"Error",_0:{fate:"deterministic",reason:"no unresolved approval request with id "+t,providerDetail:void 0}});n!==void 0&&e.pendingApprovals.splice(n,1);let o;if(r.TAG==="Approve"){let a=r.updatedInput;o=G3(t,a!==void 0?a:i.toolInput)}else o=CI(t,r.message);return i.resolveDecision(o),Promise.resolve({TAG:"Ok",_0:void 0})},injectContext:t=>Promise.resolve({TAG:"Error",_0:{TAG:"NotSupported",capability:"sessionContextInjection"}}),archiveSession:()=>Promise.resolve({TAG:"Error",_0:{TAG:"NotSupported",capability:"sessionArchiveRestore"}}),unarchiveSession:()=>Promise.resolve({TAG:"Error",_0:{TAG:"NotSupported",capability:"sessionArchiveRestore"}}),stopSession:()=>(e.stopped||(e.stopped=!0,e.input.close(),e.connection.close()),Promise.resolve())}}function AI(e,t,r,n,i){let o=TP(),a={contents:void 0},s=U=>{let B=a.contents;if(!(B!==void 0&&B.stopped))return i(U)},l={contents:void 0},d=new Promise((U,B)=>{l.contents=U}),u=U=>{let B=l.contents;if(B!==void 0)return l.contents=void 0,B(U)},c=yI(n,U=>u({TAG:"Ok",_0:U}),s),f=(U,B,oe)=>new Promise((Z,V)=>{let M=oe.toolUseID,N=a.contents;return N!==void 0?(N.pendingApprovals.push({requestId:M,toolInput:B,resolveDecision:Z}),s({TAG:"ApprovalRequested",request:{requestId:M,turnId:c.activeTurnId,kind:"canUseTool",summary:U,payload:N3(U,B,Yt(oe.suggestions))}})):Z(CI(M,"approval bridge not ready"))}),p=OI(t.reasoningEffort),m;m=typeof p!="object"?void 0:p._0;let h=e.env,_=Object.entries(t.environment).length,g,b=0;if(h!==void 0||_!==0?b=1:g=void 0,b===1){let U={};h!==void 0?Object.entries(h).forEach(B=>{U[B[0]]=B[1]}):Object.entries(process.env).forEach(B=>{U[B[0]]=B[1]}),Object.entries(t.environment).forEach(B=>{U[B[0]]=B[1]}),g=U}let y={};y.type="preset",y.preset="claude_code";let v={};v.type="preset",v.preset="claude_code";let S=t.developerInstructions;S!==void 0&&(v.append=S);let A;A=r==="bypassPermissions"?!0:void 0;let R=e.sdk.query({prompt:o.iterable,options:{cwd:t.cwd,model:t.model,persistSession:!0,includePartialMessages:!0,includeHookEvents:!0,tools:y,settingSources:["user","project","local"],systemPrompt:v,mcpServers:t.mcpServers,resume:n,permissionMode:r,allowDangerouslySkipPermissions:A,effort:m,env:g,canUseTool:f}}),W={harnessSessionId:x(n,""),currentModel:t.model,currentEffort:m,input:o,connection:R,projector:c,pendingApprovals:[],stopped:!1,diedReported:!1,adoption:d};a.contents=W;let L=U=>{if(!(W.stopped||W.diedReported))return W.diedReported=!0,e.audit("claude.sdk_stream_died",Object.fromEntries([["reason",U]])),s({TAG:"HarnessDied",failure:{fate:"transient_local",reason:U,providerDetail:void 0}})};return(async()=>{let U=!0;for(;U;){let B;try{B=await W.connection.next()}catch(oe){let Z=ee(oe);U=!1;let V="Claude Code SDK stream threw: "+Cl(Z);u({TAG:"Error",_0:{fate:"transient_local",reason:V,providerDetail:void 0}}),L(V),B=void 0}if(B!==void 0)if(B.done){U=!1;let oe=vI(W.projector)?"Claude Code stopped mid-turn: the SDK stream ended before the turn produced a final response. The turn was failed instead of being reported complete - retry the message to continue.":"Claude Code SDK stream ended while the session was idle";u({TAG:"Error",_0:{fate:"transient_local",reason:"Claude Code SDK stream ended before the session started",providerDetail:void 0}}),L(oe)}else wI(W.projector,B.value)}})(),{state:W,started:d}}function EI(e){let t=[];return{harness:"claude-code",capabilities:z3,startSession:async(i,o)=>{let a=kI(i.approvalPolicy);if(a.TAG!=="Ok")return{TAG:"Error",_0:{fate:"deterministic",reason:a._0,providerDetail:void 0}};let s=AI(e,i,a._0,void 0,o);return s.started.then(l=>{if(l.TAG==="Ok"){s.state.harnessSessionId=l._0;return}}),t.push(s.state),{TAG:"Ok",_0:TI(s.state)}},attachSession:async(i,o,a)=>{let s=kI(o.approvalPolicy);if(s.TAG!=="Ok")return{TAG:"Error",_0:{fate:"deterministic",reason:s._0,providerDetail:void 0}};let l={};l.dir=o.cwd;let d;try{let c=await e.sdk.getSessionInfo(i,l);d={TAG:"Ok",_0:Dt(c==null?void 0:Ze(c))}}catch(c){let f=ee(c);d={TAG:"Error",_0:{fate:"transient_local",reason:"getSessionInfo failed: "+Cl(f),providerDetail:void 0}}}if(d.TAG!=="Ok")return{TAG:"Error",_0:d._0};if(!d._0)return{TAG:"Error",_0:{fate:"deterministic",reason:"Claude Code session "+i+" was not found for "+o.cwd,providerDetail:void 0}};let u=AI(e,o,s._0,i,a);return t.push(u.state),{TAG:"Ok",_0:TI(u.state)}},reap:()=>(t.forEach(i=>{if(!i.stopped)return i.stopped=!0,i.input.close(),i.connection.close()}),t.splice(0,t.length),Promise.resolve())}}import*as Ym from"node:path";function cS(e){switch(e){case"rescript":return"Rescript";case"ts":return"Ts";default:return}}function El(e){return e==="Ts"?"ts":"rescript"}function fS(e){return Ym.join(e,".linzumi","commanderImpl")}function PI(e){let t=Qt(e);if(t.TAG==="Ok")return cS(t._0.trim())}function RI(e,t){let r=e+".tmp."+process.pid.toString()+"."+oc(6);return he(qt(Ym.dirname(e)),()=>{let n=he(Ti(r,El(t)+`
|
|
330
|
-
`),()=>li(r,e));return n.TAG==="Ok"?{TAG:"Ok",_0:void 0}:(pn(r),{TAG:"Error",_0:n._0})})}import*as Qm from"node:path";function $I(e,t){return e.LINZUMI_THREAD_RUNNER_ROLE==="thread"?"ThreadWorkerRole":t&&nn(e.LINZUMI_SUPERVISED,"1")?"SupervisorRole":"CommanderRole"}var
|
|
331
|
-
`}function pS(e){if(e!==void 0)switch(e){case"local_vm":return"local_vm";case"raw":return"raw";default:return}}function hS(e){if(e!==void 0)switch(e){case"hardened":return"hardened";case"open":return"open";default:return}}function II(e){if(e!==void 0&&e.trim()!=="")return e.trim()}function
|
|
320
|
+
]`;continue}i+=n[l],n[l]==="\\"?o=!0:a&&n[l]==="]"?a=!1:!a&&n[l]==="["&&(a=!0)}try{new RegExp(i)}catch{return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return i}function Df(e,t){if(t.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),t.target==="openApi3"&&e.keyType?._def.typeName===Q.ZodEnum)return{type:"object",required:e.keyType._def.values,properties:e.keyType._def.values.reduce((n,i)=>({...n,[i]:De(e.valueType._def,{...t,currentPath:[...t.currentPath,"properties",i]})??cr(t)}),{}),additionalProperties:t.rejectedAdditionalProperties};let r={type:"object",additionalProperties:De(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]})??t.allowedAdditionalProperties};if(t.target==="openApi3")return r;if(e.keyType?._def.typeName===Q.ZodString&&e.keyType._def.checks?.length){let{type:n,...i}=Ff(e.keyType._def,t);return{...r,propertyNames:i}}else{if(e.keyType?._def.typeName===Q.ZodEnum)return{...r,propertyNames:{enum:e.keyType._def.values}};if(e.keyType?._def.typeName===Q.ZodBranded&&e.keyType._def.type._def.typeName===Q.ZodString&&e.keyType._def.type._def.checks?.length){let{type:n,...i}=Gf(e.keyType._def,t);return{...r,propertyNames:i}}}return r}function IA(e,t){if(t.mapStrategy==="record")return Df(e,t);let r=De(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||cr(t),n=De(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||cr(t);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function $A(e){let t=e.values,n=Object.keys(e.values).filter(o=>typeof t[t[o]]!="number").map(o=>t[o]),i=Array.from(new Set(n.map(o=>typeof o)));return{type:i.length===1?i[0]==="string"?"string":"number":["string","number"],enum:n}}function MA(e){return e.target==="openAi"?void 0:{not:cr({...e,currentPath:[...e.currentPath,"not"]})}}function jA(e){return e.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Zd={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function NA(e,t){if(t.target==="openApi3")return zA(e,t);let r=e.options instanceof Map?Array.from(e.options.values()):e.options;if(r.every(n=>n._def.typeName in Zd&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((i,o)=>{let a=Zd[o._def.typeName];return a&&!i.includes(a)?[...i,a]:i},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((i,o)=>{let a=typeof o._def.value;switch(a){case"string":case"number":case"boolean":return[...i,a];case"bigint":return[...i,"integer"];case"object":if(o._def.value===null)return[...i,"null"];default:return i}},[]);if(n.length===r.length){let i=n.filter((o,a,s)=>s.indexOf(o)===a);return{type:i.length>1?i:i[0],enum:r.reduce((o,a)=>o.includes(a._def.value)?o:[...o,a._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,i)=>[...n,...i._def.values.filter(o=>!n.includes(o))],[])};return zA(e,t)}var zA=(e,t)=>{let r=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((n,i)=>De(n._def,{...t,currentPath:[...t.currentPath,"anyOf",`${i}`]})).filter(n=>!!n&&(!t.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function GA(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return t.target==="openApi3"?{type:Zd[e.innerType._def.typeName],nullable:!0}:{type:[Zd[e.innerType._def.typeName],"null"]};if(t.target==="openApi3"){let n=De(e.innerType._def,{...t,currentPath:[...t.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=De(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function FA(e,t){let r={type:"number"};if(!e.checks)return r;for(let n of e.checks)switch(n.kind){case"int":r.type="integer",gy(r,"type",n.message,t);break;case"min":t.target==="jsonSchema7"?n.inclusive?yt(r,"minimum",n.value,n.message,t):yt(r,"exclusiveMinimum",n.value,n.message,t):(n.inclusive||(r.exclusiveMinimum=!0),yt(r,"minimum",n.value,n.message,t));break;case"max":t.target==="jsonSchema7"?n.inclusive?yt(r,"maximum",n.value,n.message,t):yt(r,"exclusiveMaximum",n.value,n.message,t):(n.inclusive||(r.exclusiveMaximum=!0),yt(r,"maximum",n.value,n.message,t));break;case"multipleOf":yt(r,"multipleOf",n.value,n.message,t);break}return r}function DA(e,t){let r=t.target==="openAi",n={type:"object",properties:{}},i=[],o=e.shape();for(let s in o){let l=o[s];if(l===void 0||l._def===void 0)continue;let d=Xq(l);d&&r&&(l._def.typeName==="ZodOptional"&&(l=l._def.innerType),l.isNullable()||(l=l.nullable()),d=!1);let u=De(l._def,{...t,currentPath:[...t.currentPath,"properties",s],propertyPath:[...t.currentPath,"properties",s]});u!==void 0&&(n.properties[s]=u,d||i.push(s))}i.length&&(n.required=i);let a=Yq(e,t);return a!==void 0&&(n.additionalProperties=a),n}function Yq(e,t){if(e.catchall._def.typeName!=="ZodNever")return De(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return t.removeAdditionalStrategy==="strict"?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function Xq(e){try{return e.isOptional()}catch{return!0}}var qA=(e,t)=>{if(t.currentPath.toString()===t.propertyPath?.toString())return De(e.innerType._def,t);let r=De(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return r?{anyOf:[{not:cr(t)},r]}:cr(t)};var LA=(e,t)=>{if(t.pipeStrategy==="input")return De(e.in._def,t);if(t.pipeStrategy==="output")return De(e.out._def,t);let r=De(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),n=De(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(i=>i!==void 0)}};function UA(e,t){return De(e.type._def,t)}function WA(e,t){let n={type:"array",uniqueItems:!0,items:De(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};return e.minSize&&yt(n,"minItems",e.minSize.value,e.minSize.message,t),e.maxSize&&yt(n,"maxItems",e.maxSize.value,e.maxSize.message,t),n}function ZA(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((r,n)=>De(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:De(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((r,n)=>De(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function VA(e){return{not:cr(e)}}function HA(e){return cr(e)}var BA=(e,t)=>De(e.innerType._def,t);var KA=(e,t,r)=>{switch(t){case Q.ZodString:return Ff(e,r);case Q.ZodNumber:return FA(e,r);case Q.ZodObject:return DA(e,r);case Q.ZodBigInt:return kA(e,r);case Q.ZodBoolean:return xA();case Q.ZodDate:return yy(e,r);case Q.ZodUndefined:return VA(r);case Q.ZodNull:return jA(r);case Q.ZodArray:return wA(e,r);case Q.ZodUnion:case Q.ZodDiscriminatedUnion:return NA(e,r);case Q.ZodIntersection:return EA(e,r);case Q.ZodTuple:return ZA(e,r);case Q.ZodRecord:return Df(e,r);case Q.ZodLiteral:return PA(e,r);case Q.ZodEnum:return CA(e);case Q.ZodNativeEnum:return $A(e);case Q.ZodNullable:return GA(e,r);case Q.ZodOptional:return qA(e,r);case Q.ZodMap:return IA(e,r);case Q.ZodSet:return WA(e,r);case Q.ZodLazy:return()=>e.getter()._def;case Q.ZodPromise:return UA(e,r);case Q.ZodNaN:case Q.ZodNever:return MA(r);case Q.ZodEffects:return OA(e,r);case Q.ZodAny:return cr(r);case Q.ZodUnknown:return HA(r);case Q.ZodDefault:return AA(e,r);case Q.ZodBranded:return Gf(e,r);case Q.ZodReadonly:return BA(e,r);case Q.ZodCatch:return TA(e,r);case Q.ZodPipeline:return LA(e,r);case Q.ZodFunction:case Q.ZodVoid:case Q.ZodSymbol:return;default:return(n=>{})(t)}};function De(e,t,r=!1){let n=t.seen.get(e);if(t.override){let s=t.override?.(e,t,n,r);if(s!==bA)return s}if(n&&!r){let s=Qq(n,t);if(s!==void 0)return s}let i={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,i);let o=KA(e,e.typeName,t),a=typeof o=="function"?De(o(),t):o;if(a&&eL(e,t,a),t.postProcess){let s=t.postProcess(a,e,t);return i.jsonSchema=a,s}return i.jsonSchema=a,a}var Qq=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:Nf(t.currentPath,e.path)};case"none":case"seen":return e.path.length<t.currentPath.length&&e.path.every((r,n)=>t.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),cr(t)):t.$refStrategy==="seen"?cr(t):void 0}},eL=(e,t,r)=>(e.description&&(r.description=e.description,t.markdownDescription&&(r.markdownDescription=e.description)),r);var Sy=(e,t)=>{let r=SA(t),n=typeof t=="object"&&t.definitions?Object.entries(t.definitions).reduce((l,[d,u])=>({...l,[d]:De(u._def,{...r,currentPath:[...r.basePath,r.definitionPath,d]},!0)??cr(r)}),{}):void 0,i=typeof t=="string"?t:t?.nameStrategy==="title"?void 0:t?.name,o=De(e._def,i===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,i]},!1)??cr(r),a=typeof t=="object"&&t.name!==void 0&&t.nameStrategy==="title"?t.name:void 0;a!==void 0&&(o.title=a),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let s=i===void 0?n?{...o,[r.definitionPath]:n}:o:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,i].join("/"),[r.definitionPath]:{...n,[i]:o}};return r.target==="jsonSchema7"?s.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(s.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in s||"oneOf"in s||"allOf"in s||"type"in s&&Array.isArray(s.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),s};function tL(e){return!e||e==="jsonSchema7"||e==="draft-7"?"draft-7":e==="jsonSchema2019-09"||e==="draft-2020-12"?"draft-2020-12":"draft-7"}function wy(e,t){return Jn(e)?Wg(e,{target:tL(t?.target),io:t?.pipeStrategy??"input"}):Sy(e,{strictUnions:t?.strictUnions??!0,pipeStrategy:t?.pipeStrategy??"input"})}function ky(e){let r=Mo(e)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=zf(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function xy(e,t){let r=$o(e,t);if(!r.success)throw r.error;return r.data}var rL=6e4,qf=class{constructor(t){this._options=t,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(bf,r=>{this._oncancel(r)}),this.setNotificationHandler(Sf,r=>{this._onprogress(r)}),this.setRequestHandler(vf,r=>({})),this._taskStore=t?.taskStore,this._taskMessageQueue=t?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(wf,async(r,n)=>{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new be(Re.InvalidParams,"Failed to retrieve task: Task not found");return{...i}}),this.setRequestHandler(xf,async(r,n)=>{let i=async()=>{let o=r.params.taskId;if(this._taskMessageQueue){let s;for(;s=await this._taskMessageQueue.dequeue(o,n.sessionId);){if(s.type==="response"||s.type==="error"){let l=s.message,d=l.id,u=this._requestResolvers.get(d);if(u)if(this._requestResolvers.delete(d),s.type==="response")u(l);else{let c=l,f=new be(c.error.code,c.error.message,c.error.data);u(f)}else{let c=s.type==="response"?"Response":"Error";this._onerror(new Error(`${c} handler missing for request ${d}`))}continue}await this._transport?.send(s.message,{relatedRequestId:n.requestId})}}let a=await this._taskStore.getTask(o,n.sessionId);if(!a)throw new be(Re.InvalidParams,`Task not found: ${o}`);if(!jo(a.status))return await this._waitForTaskUpdate(o,n.signal),await i();if(jo(a.status)){let s=await this._taskStore.getTaskResult(o,n.sessionId);return this._clearTaskQueue(o),{...s,_meta:{...s._meta,[Io]:{taskId:o}}}}return await i()};return await i()}),this.setRequestHandler(Tf,async(r,n)=>{try{let{tasks:i,nextCursor:o}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:i,nextCursor:o,_meta:{}}}catch(i){throw new be(Re.InvalidParams,`Failed to list tasks: ${i instanceof Error?i.message:String(i)}`)}}),this.setRequestHandler(Of,async(r,n)=>{try{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new be(Re.InvalidParams,`Task not found: ${r.params.taskId}`);if(jo(i.status))throw new be(Re.InvalidParams,`Cannot cancel task in terminal status: ${i.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new be(Re.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...o}}catch(i){throw i instanceof be?i:new be(Re.InvalidRequest,`Failed to cancel task: ${i instanceof Error?i.message:String(i)}`)}}))}async _oncancel(t){if(!t.params.requestId)return;this._requestHandlerAbortControllers.get(t.params.requestId)?.abort(t.params.reason)}_setupTimeout(t,r,n,i,o=!1){this._timeoutInfo.set(t,{timeoutId:setTimeout(i,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:o,onTimeout:i})}_resetTimeout(t){let r=this._timeoutInfo.get(t);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(t),be.fromError(Re.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(t){let r=this._timeoutInfo.get(t);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(t))}async connect(t){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=t;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=o=>{n?.(o),this._onerror(o)};let i=this._transport?.onmessage;this._transport.onmessage=(o,a)=>{i?.(o,a),zd(o)||oA(o)?this._onresponse(o):ry(o)?this._onrequest(o,a):iA(o)?this._onnotification(o):this._onerror(new Error(`Unknown message type: ${JSON.stringify(o)}`))},await this._transport.start()}_onclose(){let t=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=be.fromError(Re.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of t.values())n(r)}_onerror(t){this.onerror?.(t)}_onnotification(t){let r=this._notificationHandlers.get(t.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(t)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(t,r){let n=this._requestHandlers.get(t.method)??this.fallbackRequestHandler,i=this._transport,o=t.params?._meta?.[Io]?.taskId;if(n===void 0){let u={jsonrpc:"2.0",id:t.id,error:{code:Re.MethodNotFound,message:"Method not found"}};o&&this._taskMessageQueue?this._enqueueTaskMessage(o,{type:"error",message:u,timestamp:Date.now()},i?.sessionId).catch(c=>this._onerror(new Error(`Failed to enqueue error response: ${c}`))):i?.send(u).catch(c=>this._onerror(new Error(`Failed to send an error response: ${c}`)));return}let a=new AbortController;this._requestHandlerAbortControllers.set(t.id,a);let s=tA(t.params)?t.params.task:void 0,l=this._taskStore?this.requestTaskStore(t,i?.sessionId):void 0,d={signal:a.signal,sessionId:i?.sessionId,_meta:t.params?._meta,sendNotification:async u=>{if(a.signal.aborted)return;let c={relatedRequestId:t.id};o&&(c.relatedTask={taskId:o}),await this.notification(u,c)},sendRequest:async(u,c,f)=>{if(a.signal.aborted)throw new be(Re.ConnectionClosed,"Request was cancelled");let p={...f,relatedRequestId:t.id};o&&!p.relatedTask&&(p.relatedTask={taskId:o});let m=p.relatedTask?.taskId??o;return m&&l&&await l.updateTaskStatus(m,"input_required"),await this.request(u,c,p)},authInfo:r?.authInfo,requestId:t.id,requestInfo:r?.requestInfo,taskId:o,taskStore:l,taskRequestedTtl:s?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{s&&this.assertTaskHandlerCapability(t.method)}).then(()=>n(t,d)).then(async u=>{if(a.signal.aborted)return;let c={result:u,jsonrpc:"2.0",id:t.id};o&&this._taskMessageQueue?await this._enqueueTaskMessage(o,{type:"response",message:c,timestamp:Date.now()},i?.sessionId):await i?.send(c)},async u=>{if(a.signal.aborted)return;let c={jsonrpc:"2.0",id:t.id,error:{code:Number.isSafeInteger(u.code)?u.code:Re.InternalError,message:u.message??"Internal error",...u.data!==void 0&&{data:u.data}}};o&&this._taskMessageQueue?await this._enqueueTaskMessage(o,{type:"error",message:c,timestamp:Date.now()},i?.sessionId):await i?.send(c)}).catch(u=>this._onerror(new Error(`Failed to send response: ${u}`))).finally(()=>{this._requestHandlerAbortControllers.get(t.id)===a&&this._requestHandlerAbortControllers.delete(t.id)})}_onprogress(t){let{progressToken:r,...n}=t.params,i=Number(r),o=this._progressHandlers.get(i);if(!o){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(t)}`));return}let a=this._responseHandlers.get(i),s=this._timeoutInfo.get(i);if(s&&a&&s.resetTimeoutOnProgress)try{this._resetTimeout(i)}catch(l){this._responseHandlers.delete(i),this._progressHandlers.delete(i),this._cleanupTimeout(i),a(l);return}o(n)}_onresponse(t){let r=Number(t.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),zd(t))n(t);else{let a=new be(t.error.code,t.error.message,t.error.data);n(a)}return}let i=this._responseHandlers.get(r);if(i===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(t)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let o=!1;if(zd(t)&&t.result&&typeof t.result=="object"){let a=t.result;if(a.task&&typeof a.task=="object"){let s=a.task;typeof s.taskId=="string"&&(o=!0,this._taskProgressTokens.set(s.taskId,r))}}if(o||this._progressHandlers.delete(r),zd(t))i(t);else{let a=be.fromError(t.error.code,t.error.message,t.error.data);i(a)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(t,r,n){let{task:i}=n??{};if(!i){try{yield{type:"result",result:await this.request(t,r,n)}}catch(a){yield{type:"error",error:a instanceof be?a:new be(Re.InternalError,String(a))}}return}let o;try{let a=await this.request(t,Js,n);if(a.task)o=a.task.taskId,yield{type:"taskCreated",task:a.task};else throw new be(Re.InternalError,"Task creation did not return a task");for(;;){let s=await this.getTask({taskId:o},n);if(yield{type:"taskStatus",task:s},jo(s.status)){s.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:o},r,n)}:s.status==="failed"?yield{type:"error",error:new be(Re.InternalError,`Task ${o} failed`)}:s.status==="cancelled"&&(yield{type:"error",error:new be(Re.InternalError,`Task ${o} was cancelled`)});return}if(s.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:o},r,n)};return}let l=s.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(d=>setTimeout(d,l)),n?.signal?.throwIfAborted()}}catch(a){yield{type:"error",error:a instanceof be?a:new be(Re.InternalError,String(a))}}}request(t,r,n){let{relatedRequestId:i,resumptionToken:o,onresumptiontoken:a,task:s,relatedTask:l}=n??{};return new Promise((d,u)=>{let c=b=>{u(b)};if(!this._transport){c(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(t.method),s&&this.assertTaskCapability(t.method)}catch(b){c(b);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,p={...t,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),p.params={...t.params,_meta:{...t.params?._meta||{},progressToken:f}}),s&&(p.params={...p.params,task:s}),l&&(p.params={...p.params,_meta:{...p.params?._meta||{},[Io]:l}});let m=b=>{this._responseHandlers.delete(f),this._progressHandlers.delete(f),this._cleanupTimeout(f),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:f,reason:String(b)}},{relatedRequestId:i,resumptionToken:o,onresumptiontoken:a}).catch(v=>this._onerror(new Error(`Failed to send cancellation: ${v}`)));let y=b instanceof be?b:new be(Re.RequestTimeout,String(b));u(y)};this._responseHandlers.set(f,b=>{if(!n?.signal?.aborted){if(b instanceof Error)return u(b);try{let y=$o(r,b.result);y.success?d(y.data):u(y.error)}catch(y){u(y)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let h=n?.timeout??rL,_=()=>m(be.fromError(Re.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,_,n?.resetTimeoutOnProgress??!1);let g=l?.taskId;if(g){let b=y=>{let v=this._responseHandlers.get(f);v?v(y):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,b),this._enqueueTaskMessage(g,{type:"request",message:p,timestamp:Date.now()}).catch(y=>{this._cleanupTimeout(f),u(y)})}else this._transport.send(p,{relatedRequestId:i,resumptionToken:o,onresumptiontoken:a}).catch(b=>{this._cleanupTimeout(f),u(b)})})}async getTask(t,r){return this.request({method:"tasks/get",params:t},kf,r)}async getTaskResult(t,r,n){return this.request({method:"tasks/result",params:t},r,n)}async listTasks(t,r){return this.request({method:"tasks/list",params:t},Af,r)}async cancelTask(t,r){return this.request({method:"tasks/cancel",params:t},lA,r)}async notification(t,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(t.method);let n=r?.relatedTask?.taskId;if(n){let s={...t,jsonrpc:"2.0",params:{...t.params,_meta:{...t.params?._meta||{},[Io]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:s,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(t.method)&&!t.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(t.method))return;this._pendingDebouncedNotifications.add(t.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(t.method),!this._transport)return;let s={...t,jsonrpc:"2.0"};r?.relatedTask&&(s={...s,params:{...s.params,_meta:{...s.params?._meta||{},[Io]:r.relatedTask}}}),this._transport?.send(s,r).catch(l=>this._onerror(l))});return}let a={...t,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[Io]:r.relatedTask}}}),await this._transport.send(a,r)}setRequestHandler(t,r){let n=ky(t);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(i,o)=>{let a=xy(t,i);return Promise.resolve(r(a,o))})}removeRequestHandler(t){this._requestHandlers.delete(t)}assertCanSetRequestHandler(t){if(this._requestHandlers.has(t))throw new Error(`A request handler for ${t} already exists, which would be overridden`)}setNotificationHandler(t,r){let n=ky(t);this._notificationHandlers.set(n,i=>{let o=xy(t,i);return Promise.resolve(r(o))})}removeNotificationHandler(t){this._notificationHandlers.delete(t)}_cleanupTaskProgressHandler(t){let r=this._taskProgressTokens.get(t);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(t))}async _enqueueTaskMessage(t,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let i=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(t,r,n,i)}async _clearTaskQueue(t,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(t,r);for(let i of n)if(i.type==="request"&&ry(i.message)){let o=i.message.id,a=this._requestResolvers.get(o);a?(a(new be(Re.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(o)):this._onerror(new Error(`Resolver missing for request ${o} during task ${t} cleanup`))}}}async _waitForTaskUpdate(t,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let i=await this._taskStore?.getTask(t);i?.pollInterval&&(n=i.pollInterval)}catch{}return new Promise((i,o)=>{if(r.aborted){o(new be(Re.InvalidRequest,"Request cancelled"));return}let a=setTimeout(i,n);r.addEventListener("abort",()=>{clearTimeout(a),o(new be(Re.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(t,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async i=>{if(!t)throw new Error("No request provided");return await n.createTask(i,t.id,{method:t.method,params:t.params},r)},getTask:async i=>{let o=await n.getTask(i,r);if(!o)throw new be(Re.InvalidParams,"Failed to retrieve task: Task not found");return o},storeTaskResult:async(i,o,a)=>{await n.storeTaskResult(i,o,a,r);let s=await n.getTask(i,r);if(s){let l=qd.parse({method:"notifications/tasks/status",params:s});await this.notification(l),jo(s.status)&&this._cleanupTaskProgressHandler(i)}},getTaskResult:i=>n.getTaskResult(i,r),updateTaskStatus:async(i,o,a)=>{let s=await n.getTask(i,r);if(!s)throw new be(Re.InvalidParams,`Task "${i}" not found - it may have been cleaned up`);if(jo(s.status))throw new be(Re.InvalidParams,`Cannot update task "${i}" from terminal status "${s.status}" to "${o}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(i,o,a,r);let l=await n.getTask(i,r);if(l){let d=qd.parse({method:"notifications/tasks/status",params:l});await this.notification(d),jo(l.status)&&this._cleanupTaskProgressHandler(i)}},listTasks:i=>n.listTasks(i,r)}}};function JA(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function YA(e,t){let r={...e};for(let n in t){let i=n,o=t[i];if(o===void 0)continue;let a=r[i];JA(a)&&JA(o)?r[i]={...a,...o}:r[i]=o}return r}var NE=Tw(dv(),1),GE=Tw(zE(),1);function VV(){let e=new NE.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,GE.default)(e),e}var xm=class{constructor(t){this._ajv=t??VV()}getValidator(t){let r="$id"in t&&typeof t.$id=="string"?this._ajv.getSchema(t.$id)??this._ajv.compile(t):this._ajv.compile(t);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var Tm=class{constructor(t){this._server=t}requestStream(t,r,n){return this._server.requestStream(t,r,n)}createMessageStream(t,r){let n=this._server.getClientCapabilities();if((t.tools||t.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(t.messages.length>0){let i=t.messages[t.messages.length-1],o=Array.isArray(i.content)?i.content:[i.content],a=o.some(u=>u.type==="tool_result"),s=t.messages.length>1?t.messages[t.messages.length-2]:void 0,l=s?Array.isArray(s.content)?s.content:[s.content]:[],d=l.some(u=>u.type==="tool_use");if(a){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!d)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(d){let u=new Set(l.filter(f=>f.type==="tool_use").map(f=>f.id)),c=new Set(o.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(u.size!==c.size||![...u].every(f=>c.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:t},Wd,r)}elicitInputStream(t,r){let n=this._server.getClientCapabilities(),i=t.mode??"form";switch(i){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let o=i==="form"&&t.mode===void 0?{...t,mode:"form"}:t;return this.requestStream({method:"elicitation/create",params:o},tl,r)}async getTask(t,r){return this._server.getTask({taskId:t},r)}async getTaskResult(t,r,n){return this._server.getTaskResult({taskId:t},r,n)}async listTasks(t,r){return this._server.listTasks(t?{cursor:t}:void 0,r)}async cancelTask(t,r){return this._server.cancelTask({taskId:t},r)}};function FE(e,t,r){if(!e)throw new Error(`${r} does not support task creation (required for ${t})`);switch(t){case"tools/call":if(!e.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${t})`);break;default:break}}function DE(e,t,r){if(!e)throw new Error(`${r} does not support task creation (required for ${t})`);switch(t){case"sampling/createMessage":if(!e.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${t})`);break;case"elicitation/create":if(!e.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${t})`);break;default:break}}var Am=class extends qf{constructor(t,r){super(r),this._serverInfo=t,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Ud.options.map((n,i)=>[n,i])),this.isMessageIgnored=(n,i)=>{let o=this._loggingLevels.get(i);return o?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(o):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new xm,this.setRequestHandler(oy,n=>this._oninitialize(n)),this.setNotificationHandler(ay,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(my,async(n,i)=>{let o=i.sessionId||i.requestInfo?.headers["mcp-session-id"]||void 0,{level:a}=n.params,s=Ud.safeParse(a);return s.success&&this._loggingLevels.set(o,s.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Tm(this)}),this._experimental}registerCapabilities(t){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=YA(this._capabilities,t)}setRequestHandler(t,r){let i=Mo(t)?.method;if(!i)throw new Error("Schema is missing a method literal");let o;if(Jn(i)){let s=i;o=s._zod?.def?.value??s.value}else{let s=i;o=s._def?.value??s.value}if(typeof o!="string")throw new Error("Schema method literal must be a string");if(o==="tools/call"){let s=async(l,d)=>{let u=$o(el,l);if(!u.success){let m=u.error instanceof Error?u.error.message:String(u.error);throw new be(Re.InvalidParams,`Invalid tools/call request: ${m}`)}let{params:c}=u.data,f=await Promise.resolve(r(l,d));if(c.task){let m=$o(Js,f);if(!m.success){let h=m.error instanceof Error?m.error.message:String(m.error);throw new be(Re.InvalidParams,`Invalid task creation result: ${h}`)}return m.data}let p=$o(If,f);if(!p.success){let m=p.error instanceof Error?p.error.message:String(p.error);throw new be(Re.InvalidParams,`Invalid tools/call result: ${m}`)}return p.data};return super.setRequestHandler(t,s)}return super.setRequestHandler(t,r)}assertCapabilityForMethod(t){switch(t){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${t})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${t})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${t})`);break;case"ping":break}}assertNotificationCapability(t){switch(t){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${t})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${t})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${t})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${t})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${t})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(t){if(this._capabilities)switch(t){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${t})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${t})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${t})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${t})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${t})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${t})`);break;case"ping":case"initialize":break}}assertTaskCapability(t){DE(this._clientCapabilities?.tasks?.requests,t,"Client")}assertTaskHandlerCapability(t){this._capabilities&&FE(this._capabilities.tasks?.requests,t,"Server")}async _oninitialize(t){let r=t.params.protocolVersion;return this._clientCapabilities=t.params.capabilities,this._clientVersion=t.params.clientInfo,{protocolVersion:XT.includes(r)?r:ey,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},yf)}async createMessage(t,r){if((t.tools||t.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(t.messages.length>0){let n=t.messages[t.messages.length-1],i=Array.isArray(n.content)?n.content:[n.content],o=i.some(d=>d.type==="tool_result"),a=t.messages.length>1?t.messages[t.messages.length-2]:void 0,s=a?Array.isArray(a.content)?a.content:[a.content]:[],l=s.some(d=>d.type==="tool_use");if(o){if(i.some(d=>d.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!l)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(l){let d=new Set(s.filter(c=>c.type==="tool_use").map(c=>c.id)),u=new Set(i.filter(c=>c.type==="tool_result").map(c=>c.toolUseId));if(d.size!==u.size||![...d].every(c=>u.has(c)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return t.tools?this.request({method:"sampling/createMessage",params:t},py,r):this.request({method:"sampling/createMessage",params:t},Wd,r)}async elicitInput(t,r){switch(t.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let i=t;return this.request({method:"elicitation/create",params:i},tl,r)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let i=t.mode==="form"?t:{...t,mode:"form"},o=await this.request({method:"elicitation/create",params:i},tl,r);if(o.action==="accept"&&o.content&&i.requestedSchema)try{let s=this._jsonSchemaValidator.getValidator(i.requestedSchema)(o.content);if(!s.valid)throw new be(Re.InvalidParams,`Elicitation response content does not match requested schema: ${s.errorMessage}`)}catch(a){throw a instanceof be?a:new be(Re.InternalError,`Error validating elicitation response: ${a instanceof Error?a.message:String(a)}`)}return o}}}createElicitationCompletionNotifier(t,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:t}},r)}async listRoots(t,r){return this.request({method:"roots/list",params:t},hy,r)}async sendLoggingMessage(t,r){if(this._capabilities.logging&&!this.isMessageIgnored(t.level,r))return this.notification({method:"notifications/message",params:t})}async sendResourceUpdated(t){return this.notification({method:"notifications/resources/updated",params:t})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}};var LE=Symbol.for("mcp.completable");function gv(e){return!!e&&typeof e=="object"&&LE in e}function UE(e){return e[LE]?.complete}var qE;(function(e){e.Completable="McpCompletable"})(qE||(qE={}));var HV=/^[A-Za-z0-9._-]{1,128}$/;function BV(e){let t=[];if(e.length===0)return{isValid:!1,warnings:["Tool name cannot be empty"]};if(e.length>128)return{isValid:!1,warnings:[`Tool name exceeds maximum length of 128 characters (current: ${e.length})`]};if(e.includes(" ")&&t.push("Tool name contains spaces, which may cause parsing issues"),e.includes(",")&&t.push("Tool name contains commas, which may cause parsing issues"),(e.startsWith("-")||e.endsWith("-"))&&t.push("Tool name starts or ends with a dash, which may cause parsing issues in some contexts"),(e.startsWith(".")||e.endsWith("."))&&t.push("Tool name starts or ends with a dot, which may cause parsing issues in some contexts"),!HV.test(e)){let r=e.split("").filter(n=>!/[A-Za-z0-9._-]/.test(n)).filter((n,i,o)=>o.indexOf(n)===i);return t.push(`Tool name contains invalid characters: ${r.map(n=>`"${n}"`).join(", ")}`,"Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)"),{isValid:!1,warnings:t}}return{isValid:!0,warnings:t}}function KV(e,t){if(t.length>0){console.warn(`Tool name validation warning for "${e}":`);for(let r of t)console.warn(` - ${r}`);console.warn("Tool registration will proceed, but this may cause compatibility issues."),console.warn("Consider updating the tool name to conform to the MCP tool naming standard."),console.warn("See SEP: Specify Format for Tool Names (https://github.com/modelcontextprotocol/modelcontextprotocol/issues/986) for more details.")}}function yv(e){let t=BV(e);return KV(e,t.warnings),t.isValid}var Om=class{constructor(t){this._mcpServer=t}registerToolTask(t,r,n){let i={taskSupport:"required",...r.execution};if(i.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${t}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(t,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,i,r._meta,n)}};var Cm=class{constructor(t,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new Am(t,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Om(this)}),this._experimental}async connect(t){return await this.server.connect(t)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Wo(Rf)),this.server.assertCanSetRequestHandler(Wo(el)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(Rf,()=>({tools:Object.entries(this._registeredTools).filter(([,t])=>t.enabled).map(([t,r])=>{let n={name:t,title:r.title,description:r.description,inputSchema:(()=>{let i=rl(r.inputSchema);return i?wy(i,{strictUnions:!0,pipeStrategy:"input"}):JV})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let i=rl(r.outputSchema);i&&(n.outputSchema=wy(i,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(el,async(t,r)=>{try{let n=this._registeredTools[t.params.name];if(!n)throw new be(Re.InvalidParams,`Tool ${t.params.name} not found`);if(!n.enabled)throw new be(Re.InvalidParams,`Tool ${t.params.name} disabled`);let i=!!t.params.task,o=n.execution?.taskSupport,a="createTask"in n.handler;if((o==="required"||o==="optional")&&!a)throw new be(Re.InternalError,`Tool ${t.params.name} has taskSupport '${o}' but was not registered with registerToolTask`);if(o==="required"&&!i)throw new be(Re.MethodNotFound,`Tool ${t.params.name} requires task augmentation (taskSupport: 'required')`);if(o==="optional"&&!i&&a)return await this.handleAutomaticTaskPolling(n,t,r);let s=await this.validateToolInput(n,t.params.arguments,t.params.name),l=await this.executeToolHandler(n,s,r);return i||await this.validateToolOutput(n,l,t.params.name),l}catch(n){if(n instanceof be&&n.code===Re.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(t){return{content:[{type:"text",text:t}],isError:!0}}async validateToolInput(t,r,n){if(!t.inputSchema)return;let o=rl(t.inputSchema)??t.inputSchema,a=await Mf(o,r);if(!a.success){let s="error"in a?a.error:"Unknown error",l=jf(s);throw new be(Re.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${l}`)}return a.data}async validateToolOutput(t,r,n){if(!t.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new be(Re.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let i=rl(t.outputSchema),o=await Mf(i,r.structuredContent);if(!o.success){let a="error"in o?o.error:"Unknown error",s=jf(a);throw new be(Re.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${s}`)}}async executeToolHandler(t,r,n){let i=t.handler;if("createTask"in i){if(!n.taskStore)throw new Error("No task store provided.");let a={...n,taskStore:n.taskStore};if(t.inputSchema){let s=i;return await Promise.resolve(s.createTask(r,a))}else{let s=i;return await Promise.resolve(s.createTask(a))}}if(t.inputSchema){let a=i;return await Promise.resolve(a(r,n))}else{let a=i;return await Promise.resolve(a(n))}}async handleAutomaticTaskPolling(t,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let i=await this.validateToolInput(t,r.params.arguments,r.params.name),o=t.handler,a={...n,taskStore:n.taskStore},s=i?await Promise.resolve(o.createTask(i,a)):await Promise.resolve(o.createTask(a)),l=s.task.taskId,d=s.task,u=d.pollInterval??5e3;for(;d.status!=="completed"&&d.status!=="failed"&&d.status!=="cancelled";){await new Promise(f=>setTimeout(f,u));let c=await n.taskStore.getTask(l);if(!c)throw new be(Re.InternalError,`Task ${l} not found during polling`);d=c}return await n.taskStore.getTaskResult(l)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Wo($f)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler($f,async t=>{switch(t.params.ref.type){case"ref/prompt":return pA(t),this.handlePromptCompletion(t,t.params.ref);case"ref/resource":return hA(t),this.handleResourceCompletion(t,t.params.ref);default:throw new be(Re.InvalidParams,`Invalid completion reference: ${t.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(t,r){let n=this._registeredPrompts[r.name];if(!n)throw new be(Re.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new be(Re.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return Su;let o=Mo(n.argsSchema)?.[t.params.argument.name];if(!gv(o))return Su;let a=UE(o);if(!a)return Su;let s=await a(t.params.argument.value,t.params.context);return ZE(s)}async handleResourceCompletion(t,r){let n=Object.values(this._registeredResourceTemplates).find(a=>a.resourceTemplate.uriTemplate.toString()===r.uri);if(!n){if(this._registeredResources[r.uri])return Su;throw new be(Re.InvalidParams,`Resource template ${t.params.ref.uri} not found`)}let i=n.resourceTemplate.completeCallback(t.params.argument.name);if(!i)return Su;let o=await i(t.params.argument.value,t.params.context);return ZE(o)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Wo(Xs)),this.server.assertCanSetRequestHandler(Wo(Qs)),this.server.assertCanSetRequestHandler(Wo(Cf)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Xs,async(t,r)=>{let n=Object.entries(this._registeredResources).filter(([o,a])=>a.enabled).map(([o,a])=>({uri:o,name:a.name,...a.metadata})),i=[];for(let o of Object.values(this._registeredResourceTemplates)){if(!o.resourceTemplate.listCallback)continue;let a=await o.resourceTemplate.listCallback(r);for(let s of a.resources)i.push({...o.metadata,...s})}return{resources:[...n,...i]}}),this.server.setRequestHandler(Qs,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(Cf,async(t,r)=>{let n=new URL(t.params.uri),i=this._registeredResources[n.toString()];if(i){if(!i.enabled)throw new be(Re.InvalidParams,`Resource ${n} disabled`);return i.readCallback(n,r)}for(let o of Object.values(this._registeredResourceTemplates)){let a=o.resourceTemplate.uriTemplate.match(n.toString());if(a)return o.readCallback(n,a,r)}throw new be(Re.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Wo(Ef)),this.server.assertCanSetRequestHandler(Wo(Pf)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Ef,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,t])=>t.enabled).map(([t,r])=>({name:t,title:r.title,description:r.description,arguments:r.argsSchema?YV(r.argsSchema):void 0}))})),this.server.setRequestHandler(Pf,async(t,r)=>{let n=this._registeredPrompts[t.params.name];if(!n)throw new be(Re.InvalidParams,`Prompt ${t.params.name} not found`);if(!n.enabled)throw new be(Re.InvalidParams,`Prompt ${t.params.name} disabled`);if(n.argsSchema){let i=rl(n.argsSchema),o=await Mf(i,t.params.arguments);if(!o.success){let l="error"in o?o.error:"Unknown error",d=jf(l);throw new be(Re.InvalidParams,`Invalid arguments for prompt ${t.params.name}: ${d}`)}let a=o.data,s=n.callback;return await Promise.resolve(s(a,r))}else{let i=n.callback;return await Promise.resolve(i(r))}}),this._promptHandlersInitialized=!0)}resource(t,r,...n){let i;typeof n[0]=="object"&&(i=n.shift());let o=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let a=this._createRegisteredResource(t,void 0,r,i,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),a}else{if(this._registeredResourceTemplates[t])throw new Error(`Resource template ${t} is already registered`);let a=this._createRegisteredResourceTemplate(t,void 0,r,i,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),a}}registerResource(t,r,n,i){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let o=this._createRegisteredResource(t,n.title,r,n,i);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),o}else{if(this._registeredResourceTemplates[t])throw new Error(`Resource template ${t} is already registered`);let o=this._createRegisteredResourceTemplate(t,n.title,r,n,i);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),o}}_createRegisteredResource(t,r,n,i,o){let a={name:t,title:r,metadata:i,readCallback:o,enabled:!0,disable:()=>a.update({enabled:!1}),enable:()=>a.update({enabled:!0}),remove:()=>a.update({uri:null}),update:s=>{typeof s.uri<"u"&&s.uri!==n&&(delete this._registeredResources[n],s.uri&&(this._registeredResources[s.uri]=a)),typeof s.name<"u"&&(a.name=s.name),typeof s.title<"u"&&(a.title=s.title),typeof s.metadata<"u"&&(a.metadata=s.metadata),typeof s.callback<"u"&&(a.readCallback=s.callback),typeof s.enabled<"u"&&(a.enabled=s.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=a,a}_createRegisteredResourceTemplate(t,r,n,i,o){let a={resourceTemplate:n,title:r,metadata:i,readCallback:o,enabled:!0,disable:()=>a.update({enabled:!1}),enable:()=>a.update({enabled:!0}),remove:()=>a.update({name:null}),update:d=>{typeof d.name<"u"&&d.name!==t&&(delete this._registeredResourceTemplates[t],d.name&&(this._registeredResourceTemplates[d.name]=a)),typeof d.title<"u"&&(a.title=d.title),typeof d.template<"u"&&(a.resourceTemplate=d.template),typeof d.metadata<"u"&&(a.metadata=d.metadata),typeof d.callback<"u"&&(a.readCallback=d.callback),typeof d.enabled<"u"&&(a.enabled=d.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[t]=a;let s=n.uriTemplate.variableNames;return Array.isArray(s)&&s.some(d=>!!n.completeCallback(d))&&this.setCompletionRequestHandler(),a}_createRegisteredPrompt(t,r,n,i,o){let a={title:r,description:n,argsSchema:i===void 0?void 0:Da(i),callback:o,enabled:!0,disable:()=>a.update({enabled:!1}),enable:()=>a.update({enabled:!0}),remove:()=>a.update({name:null}),update:s=>{typeof s.name<"u"&&s.name!==t&&(delete this._registeredPrompts[t],s.name&&(this._registeredPrompts[s.name]=a)),typeof s.title<"u"&&(a.title=s.title),typeof s.description<"u"&&(a.description=s.description),typeof s.argsSchema<"u"&&(a.argsSchema=Da(s.argsSchema)),typeof s.callback<"u"&&(a.callback=s.callback),typeof s.enabled<"u"&&(a.enabled=s.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[t]=a,i&&Object.values(i).some(l=>{let d=l instanceof yn?l._def?.innerType:l;return gv(d)})&&this.setCompletionRequestHandler(),a}_createRegisteredTool(t,r,n,i,o,a,s,l,d){yv(t);let u={title:r,description:n,inputSchema:WE(i),outputSchema:WE(o),annotations:a,execution:s,_meta:l,handler:d,enabled:!0,disable:()=>u.update({enabled:!1}),enable:()=>u.update({enabled:!0}),remove:()=>u.update({name:null}),update:c=>{typeof c.name<"u"&&c.name!==t&&(typeof c.name=="string"&&yv(c.name),delete this._registeredTools[t],c.name&&(this._registeredTools[c.name]=u)),typeof c.title<"u"&&(u.title=c.title),typeof c.description<"u"&&(u.description=c.description),typeof c.paramsSchema<"u"&&(u.inputSchema=Da(c.paramsSchema)),typeof c.outputSchema<"u"&&(u.outputSchema=Da(c.outputSchema)),typeof c.callback<"u"&&(u.handler=c.callback),typeof c.annotations<"u"&&(u.annotations=c.annotations),typeof c._meta<"u"&&(u._meta=c._meta),typeof c.enabled<"u"&&(u.enabled=c.enabled),this.sendToolListChanged()}};return this._registeredTools[t]=u,this.setToolRequestHandlers(),this.sendToolListChanged(),u}tool(t,...r){if(this._registeredTools[t])throw new Error(`Tool ${t} is already registered`);let n,i,o,a;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let l=r[0];if(bv(l))i=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!bv(r[0])&&(a=r.shift());else if(typeof l=="object"&&l!==null){if(Object.values(l).some(d=>typeof d=="object"&&d!==null))throw new Error(`Tool ${t} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);a=r.shift()}}let s=r[0];return this._createRegisteredTool(t,void 0,n,i,o,a,{taskSupport:"forbidden"},void 0,s)}registerTool(t,r,n){if(this._registeredTools[t])throw new Error(`Tool ${t} is already registered`);let{title:i,description:o,inputSchema:a,outputSchema:s,annotations:l,_meta:d}=r;return this._createRegisteredTool(t,i,o,a,s,l,{taskSupport:"forbidden"},d,n)}prompt(t,...r){if(this._registeredPrompts[t])throw new Error(`Prompt ${t} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let i;r.length>1&&(i=r.shift());let o=r[0],a=this._createRegisteredPrompt(t,void 0,n,i,o);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}registerPrompt(t,r,n){if(this._registeredPrompts[t])throw new Error(`Prompt ${t} is already registered`);let{title:i,description:o,argsSchema:a}=r,s=this._createRegisteredPrompt(t,i,o,a,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),s}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(t,r){return this.server.sendLoggingMessage(t,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var JV={type:"object",properties:{}};function VE(e){return e!==null&&typeof e=="object"&&"parse"in e&&typeof e.parse=="function"&&"safeParse"in e&&typeof e.safeParse=="function"}function HE(e){return"_def"in e||"_zod"in e||VE(e)}function bv(e){return typeof e!="object"||e===null||HE(e)?!1:Object.keys(e).length===0?!0:Object.values(e).some(VE)}function WE(e){if(e){if(bv(e))return Da(e);if(!HE(e))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return e}}function YV(e){let t=Mo(e);return t?Object.entries(t).map(([r,n])=>{let i=_A(n),o=gA(n);return{name:r,description:i,required:!o}}):[]}function Wo(e){let r=Mo(e)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=zf(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function ZE(e){return{completion:{values:e.slice(0,100),total:e.length,hasMore:e.length>100}}}var Su={completion:{values:[],hasMore:!1}};import KE from"node:process";var Em=class{append(t){this._buffer=this._buffer?Buffer.concat([this._buffer,t]):t}readMessage(){if(!this._buffer)return null;let t=this._buffer.indexOf(`
|
|
321
|
+
`);if(t===-1)return null;let r=this._buffer.toString("utf8",0,t).replace(/\r$/,"");return this._buffer=this._buffer.subarray(t+1),QV(r)}clear(){this._buffer=void 0}};function QV(e){return aA.parse(JSON.parse(e))}function BE(e){return JSON.stringify(e)+`
|
|
322
|
+
`}var Pm=class{constructor(t=KE.stdin,r=KE.stdout){this._stdin=t,this._stdout=r,this._readBuffer=new Em,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let t=this._readBuffer.readMessage();if(t===null)break;this.onmessage?.(t)}catch(t){this.onerror?.(t)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(t){return new Promise(r=>{let n=BE(t);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};function t4(e){let t={};t.listChanged=!1;let r={};r.resources=t,e.server.registerCapabilities(r),e.server.setRequestHandler(Xs,()=>{let n={};return n.resources=[],n}),e.server.setRequestHandler(Qs,()=>{let n={};return n.resourceTemplates=[],n})}function r4(e){return{registerTool:(t,r,n,i)=>{e.tool(t,r,n,i)}}}async function vv(e){let t=e.delegationAuthFilePath;if(t!==void 0){let n=e.explicitToken,i=e.authFilePath;if(n!==void 0)return{TAG:"Error",_0:"--delegation-auth-file cannot be combined with --token or --auth-file"};if(i!==void 0)return{TAG:"Error",_0:"--delegation-auth-file cannot be combined with --token or --auth-file"};let o=V0(t,Date.now());return o.TAG==="Ok"?{TAG:"Ok",_0:{accessToken:o._0.accessToken,mode:"PersonalAgentDelegation"}}:{TAG:"Error",_0:o._0.summary}}let r=await gk(e.serviceUrl,e.explicitToken,e.authFilePath,e.workspaceSlug,e.channelSlug,void 0);return r.TAG==="Ok"?{TAG:"Ok",_0:{accessToken:r._0,mode:"LocalRunner"}}:{TAG:"Error",_0:r._0.summary}}function Sv(e,t){let r=wr(e,"token");return{serviceUrl:t,explicitToken:r!==void 0?r:process.env.LINZUMI_MCP_ACCESS_TOKEN,authFilePath:wr(e,"auth-file"),delegationAuthFilePath:wr(e,"delegation-auth-file"),workspaceSlug:wr(e,"workspace"),channelSlug:wr(e,"channel")}}async function n4(e){let t=ac(e);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0;if(sc(r,"help"))return aa(uc()),{TAG:"Ok",_0:void 0};let n=lc(r,"api-url");if(n.TAG!=="Ok")return{TAG:"Error",_0:n._0};let i=n._0,o=await vv(Sv(r,i));if(o.TAG!=="Ok")return{TAG:"Error",_0:o._0};let a=o._0,s=dc(wr(r,"mode")),l=Up(wr(r,"tool-scope"));if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0};let d=s._0;if(l.TAG!=="Ok")return{TAG:"Error",_0:l._0};let u=wr(r,"owner-username"),c=u!==void 0?u:process.env.LINZUMI_MCP_OWNER_USERNAME,f=wr(r,"cwd"),p=f!==void 0?f:process.cwd(),m=wr(r,"thread-id"),h=m!==void 0?m:process.env[$k],_=Bh({serviceUrl:i,accessToken:a.accessToken,authMode:a.mode,operatingMode:d});if(_.TAG!=="Ok")return{TAG:"Error",_0:_._0};let g=new Cm({name:"linzumi",version:"0.1.0"});return t4(g),lx(r4(g),{client:_._0,toolScope:l._0,operatingMode:d,cwd:p,serviceUrl:i,defaultThreadId:h,ownerUsername:c,agentSession:sc(r,"agent-session"),devServices:tx(process.env)}),await g.connect(new Pm),{TAG:"Ok",_0:void 0}}async function i4(e){let t=ac(e);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0,n=lc(r,"api-url");if(n.TAG!=="Ok")return{TAG:"Error",_0:n._0};let i=n._0,o=wr(r,"format"),a=o!==void 0?o:"codex",s=dc(wr(r,"mode"));if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0};let l;if(sc(r,"include-token")){let f=await vv(Sv(r,i));l=f.TAG==="Ok"?{TAG:"Ok",_0:f._0.accessToken}:{TAG:"Error",_0:f._0}}else l={TAG:"Ok",_0:void 0};if(l.TAG!=="Ok")return{TAG:"Error",_0:l._0};let d=Up(wr(r,"tool-scope"));if(d.TAG!=="Ok")return{TAG:"Error",_0:d._0};let u=wr(r,"owner-username"),c=Zs({command:wr(r,"command"),serviceUrl:i,accessToken:l._0,delegationAuthFilePath:wr(r,"delegation-auth-file"),ownerUsername:u!==void 0?u:process.env.LINZUMI_MCP_OWNER_USERNAME,operatingMode:s._0,toolScope:d._0});switch(a){case"claude-code":return aa(fx(c)),{TAG:"Ok",_0:void 0};case"codex":return aa(mx(c)),{TAG:"Ok",_0:void 0};default:return{TAG:"Error",_0:"--format must be codex or claude-code"}}}async function o4(e){let t=ac(e);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0,n=lc(r,"api-url");if(n.TAG!=="Ok")return{TAG:"Error",_0:n._0};let i=n._0,o=await vv(Sv(r,i));if(o.TAG!=="Ok")return{TAG:"Error",_0:o._0};let a=o._0,s=a.mode,l;if(s==="LocalRunner"){let d=await Ms(i,a.accessToken,wr(r,"workspace"),wr(r,"channel"),void 0);if(d.TAG==="Ok")switch(d._0){case"Usable":l={TAG:"Ok",_0:void 0};break;case"Rejected":case"NotFound":l={TAG:"Error",_0:"Linzumi MCP auth validation failed"};break}else l={TAG:"Error",_0:d._0.summary}}else{let d=dc(wr(r,"mode"));if(d.TAG==="Ok"){let u=Bh({serviceUrl:i,accessToken:a.accessToken,authMode:a.mode,operatingMode:d._0});if(u.TAG==="Ok")try{await u._0.validateAuth(),l={TAG:"Ok",_0:void 0}}catch(c){let f=ee(c);l={TAG:"Error",_0:gs(f)}}else l={TAG:"Error",_0:u._0}}else l={TAG:"Error",_0:d._0}}return l.TAG!=="Ok"?{TAG:"Error",_0:l._0}:(aa(`Linzumi MCP auth OK
|
|
323
|
+
`),{TAG:"Ok",_0:void 0})}async function JE(e){let t=e.slice(1),r=e[0];if(r!==void 0)switch(r){case"--help":case"-h":return aa(uc()),{TAG:"Ok",_0:void 0};case"config":return await i4(t);case"doctor":return await o4(t);case"server":return await n4(t);default:return{TAG:"Error",_0:"unknown linzumi mcp command: "+r}}else return aa(uc()),{TAG:"Ok",_0:void 0}}import*as QE from"node:fs";import*as eP from"node:url";import*as un from"node:path";import*as tP from"node:module";var s4=[["linux","x64",{triple:"x86_64-unknown-linux-musl",packageName:"@openai/codex-linux-x64"}],["linux","arm64",{triple:"aarch64-unknown-linux-musl",packageName:"@openai/codex-linux-arm64"}],["android","x64",{triple:"x86_64-unknown-linux-musl",packageName:"@openai/codex-linux-x64"}],["android","arm64",{triple:"aarch64-unknown-linux-musl",packageName:"@openai/codex-linux-arm64"}],["darwin","x64",{triple:"x86_64-apple-darwin",packageName:"@openai/codex-darwin-x64"}],["darwin","arm64",{triple:"aarch64-apple-darwin",packageName:"@openai/codex-darwin-arm64"}],["win32","x64",{triple:"x86_64-pc-windows-msvc",packageName:"@openai/codex-win32-x64"}],["win32","arm64",{triple:"aarch64-pc-windows-msvc",packageName:"@openai/codex-win32-arm64"}]];function rP(e,t){return G(s4.find(r=>r[0]===e?r[1]===t:!1),r=>r[2])}function l4(e){try{return tP.createRequire(import.meta.url).resolve(e)}catch{return}}function d4(e){let t=hs(e);return t.TAG==="Ok"?t._0:[]}function Rm(){return{platform:process.platform,arch:process.arch,fileExists:e=>QE.existsSync(e),listDirectory:d4,resolveModulePath:l4,moduleDir:un.dirname(eP.fileURLToPath(import.meta.url))}}function nP(e,t,r){let n=t;for(;;){let i=n,o=un.join(...[i,"node_modules"].concat(e.split("/")));if(r(un.join(o,"package.json")))return o;let a=un.dirname(i);if(a===i)return;n=a}}function wv(e,t){let r=t.resolveModulePath(e+"/package.json");return r!==void 0?un.dirname(r):nP(e,t.moduleDir,t.fileExists)}function u4(e,t,r){let i=r.platform==="win32"?"codex.exe":"codex",o=un.join(e,t),s=[un.join(o,"codex",i),un.join(o,"bin",i),un.join(o,i)].find(l=>r.fileExists(l));return s!==void 0?s:r.listDirectory(o).map(l=>un.join(o,l,i)).find(l=>r.fileExists(l))}function c4(e){let t=rP(e.platform,e.arch);if(t===void 0)return;let r=[],n=wv(t.packageName,e);n!==void 0&&r.push(un.join(n,"vendor"));let i=wv("@openai/codex",e);return i!==void 0&&r.push(un.join(i,"vendor")),Ve(r,void 0,(o,a)=>o!==void 0?o:u4(a,t.triple,e))}function f4(e){let t=wv("@openai/codex",e);if(t===void 0)return;let r=Qt(un.join(t,"package.json"));if(r.TAG!=="Ok")return;let n;try{n=JSON.parse(r._0)}catch{n=void 0}if(n===void 0||typeof n!="object"||n===null||Array.isArray(n))return;let i=n.version;if(i!==void 0&&typeof i=="string"&&i.trim()!=="")return i.trim()}var m4=new RegExp("(\\d+\\.\\d+\\.\\d+)");function Im(e){let t=_s(e,["--version"],1e4,1048576);if(t.TAG!=="Ok")return;let r=m4.exec(t._0);if(r!=null)return k(r.slice(1)[0],n=>n)}function p4(e,t){return e!==void 0&&t!==void 0?e===t?{TAG:"Match",version:e}:{TAG:"Mismatch",pathVersion:e,pinnedVersion:t}:{TAG:"Unverified",pathVersion:e,pinnedVersion:t}}function h4(e){switch(e.TAG){case"Match":return"match";case"Mismatch":return"mismatch";case"Unverified":return"unverified"}}var kv="LINZUMI_ALLOW_HARNESS_MISMATCH",YE={contents:!1};var _4="Warning: the Codex engine bundled with @linzumi/cli could not be located in its install (@openai/codex platform binary missing). Falling back to `codex` from PATH - the engine version may not match this CLI release. Pass --codex-bin <path> to pin an engine explicitly.\n";function g4(e){if(!YE.contents)return YE.contents=!0,e(_4)}function XE(e,t){return"the codex engine bundled with @linzumi/cli is missing from this install and the `codex` on PATH is version "+e+", but this CLI release pins engine "+t+". "+("Running a mismatched engine breaks the wire protocol (codex "+t+" vocabulary), so refusing to start. ")+("Fix: reinstall the CLI (a fresh `npx -y @linzumi/cli@latest` restores the bundled engine), pass --codex-bin <path> to pin an engine deliberately, or set "+kv+"=1 to accept the skew.")}function y4(e,t){return"Warning: proceeding with the PATH codex "+e+" despite the CLI pinning engine "+t+" ("+kv+`=1). Engine/CLI version skew can break the wire protocol.
|
|
324
|
+
`}function b4(e,t){}function $m(e,t,r,n,i,o){let a=o!==void 0?o:b4;if(e!==void 0)return{TAG:"Ok",_0:{codexBin:e,source:"ExplicitFlag"}};let s=c4(t);if(s!==void 0){let f={};return f.codex_bin_path=s,f.codex_bin_source="bundled",a("codex.binary.resolved",f),{TAG:"Ok",_0:{codexBin:s,source:"Bundled"}}}g4(r);let l=f4(t),d=l!==void 0?n("codex"):void 0,u=p4(d,l),c={};switch(c.codex_bin_path="codex",c.codex_bin_source="path-fallback",c.harness_version_check=h4(u),u.TAG){case"Match":c.harness_version=u.version;break;case"Mismatch":c.path_harness_version=u.pathVersion,c.pinned_harness_version=u.pinnedVersion;break;case"Unverified":c.path_harness_version=rn(u.pathVersion,null,f=>f),c.pinned_harness_version=rn(u.pinnedVersion,null,f=>f);break}switch(a("codex.binary.resolved",c),u.TAG){case"Mismatch":let f=u.pinnedVersion,p=u.pathVersion,m=i[kv];return m===void 0?{TAG:"Error",_0:XE(p,f)}:m!=="1"?{TAG:"Error",_0:XE(p,f)}:(r(y4(p,f)),{TAG:"Ok",_0:{codexBin:"codex",source:"PathFallback"}});case"Match":case"Unverified":return{TAG:"Ok",_0:{codexBin:"codex",source:"PathFallback"}}}}function iP(e){if(typeof e=="number"&&e%1===0)return e}function v4(e){if(typeof e=="string")return e}function S4(e){let t=e.replaceAll("-","+").replaceAll("_","/");switch(t.length&3){case 2:return t+"==";case 3:return t+"=";default:return t}}function oP(e){let t=e.split(".")[1];if(t===void 0)return;let r=Buffer.from(S4(t),"base64").toString("utf8"),n;try{n=JSON.parse(r)}catch{n=void 0}if(typeof n=="object"&&n!==null&&!Array.isArray(n))return n}function wu(e){let t=oP(e);if(t===void 0)return{actorUserId:void 0,actorUsername:void 0};let r=iP(t.actor_id);return{actorUserId:r!==void 0?r:iP(t.sub),actorUsername:v4(t.actor_username)}}function aP(e){let t=k(oP(e),n=>n.workspace_scope),r=t!==void 0?Array.isArray(t)?$e(t,n=>{if(typeof n=="string"&&n.trim()!=="")return n}):[]:[];if(r.length===1)return r[0]}var Av=[["codex.agent_turn_narration_only_no_reply","harness.agent_turn_narration_only_no_reply"],["codex.cost_cap_402_seen","harness.cost_cap_402_seen"],["codex.edge_blocked_captured","harness.edge_blocked_captured"],["codex.empty_turn_auto_retry_suppressed_cost_cap","harness.empty_turn_auto_retry_suppressed_cost_cap"],["codex.empty_turn_loop_guard_tripped","harness.empty_turn_loop_guard_tripped"],["codex.error_without_http_status_captured","harness.error_without_http_status_captured"],["codex.mid_stream_stall_auto_resume_flagged","harness.mid_stream_stall_auto_resume_flagged"],["codex.mid_stream_stall_resume_suppressed_rate_limit","harness.mid_stream_stall_resume_suppressed_rate_limit"],["codex.mid_stream_stall_second_stall_after_resume","harness.mid_stream_stall_second_stall_after_resume"],["codex.pre_first_byte_stall_auto_retry_flagged","harness.pre_first_byte_stall_auto_retry_flagged"],["codex.pre_first_byte_stall_retry_suppressed_cost_cap","harness.pre_first_byte_stall_retry_suppressed_cost_cap"],["codex.provider_outage_flagged_captured","harness.provider_outage_flagged_captured"],["codex.reasoning_loop_breaker_tripped","harness.reasoning_loop_breaker_tripped"],["codex.tool_fatal_captured","harness.tool_fatal_captured"],["codex.turn_completed","job.turn_completed"],["codex.turn_completed_with_protocol_failure","job.turn_completed_with_protocol_failure"],["codex.turn_completed_with_unsupported_tool_call_ignored","job.turn_completed_with_unsupported_tool_call_ignored"],["codex.turn_completed_without_assistant_output","job.turn_completed_without_assistant_output"],["codex.turn_forward_failed","job.turn_forward_failed"],["codex.upstream_error_captured","harness.upstream_error_captured"],["codex.upstream_rejection_captured","harness.upstream_rejection_captured"],["codex.upstream_turn_error_captured","harness.upstream_turn_error_captured"],["kandan.chat_event","linzumi.chat_event"],["kandan.chat_event_abandoned","linzumi.chat_event_abandoned"],["kandan.chat_event_failed","linzumi.chat_event_failed"],["kandan.chat_event_failure_cleared","linzumi.chat_event_failure_cleared"],["kandan.claude_code_interrupt_state_push_failed","linzumi.claude_code_interrupt_state_push_failed"],["kandan.claude_code_stop_state_push_failed","linzumi.claude_code_stop_state_push_failed"],["kandan.claude_code_typing_heartbeat_failed","linzumi.claude_code_typing_heartbeat_failed"],["kandan.claude_code_typing_start_wait_timeout","linzumi.claude_code_typing_start_wait_timeout"],["kandan.claude_code_typing_stop_failed","linzumi.claude_code_typing_stop_failed"],["kandan.claude_code_user_input_abort_publish_failed","linzumi.claude_code_user_input_abort_publish_failed"],["kandan.claude_code_user_question_completed_publish_failed","linzumi.claude_code_user_question_completed_publish_failed"],["kandan.codex_command_output_forwarded","linzumi.codex_command_output_forwarded"],["kandan.codex_delta_forwarded","linzumi.codex_delta_forwarded"],["kandan.codex_file_change_forwarded","linzumi.codex_file_change_forwarded"],["kandan.codex_notification_push_failed","linzumi.codex_notification_push_failed"],["kandan.codex_output_forwarded","linzumi.codex_output_forwarded"],["kandan.codex_reasoning_delta_forwarded","linzumi.codex_reasoning_delta_forwarded"],["kandan.codex_web_search_progress_forwarded","linzumi.codex_web_search_progress_forwarded"],["kandan.connection_force_reconnect","linzumi.connection_force_reconnect"],["kandan.connection_force_reconnect_dispatched","linzumi.connection_force_reconnect_dispatched"],["kandan.connection_hard_reset","linzumi.connection_hard_reset"],["kandan.connection_hard_reset_exhausted","linzumi.connection_hard_reset_exhausted"],["kandan.connection_recovered","linzumi.connection_recovered"],["kandan.connection_stale","linzumi.connection_stale"],["kandan.connection_unrecoverable","linzumi.connection_unrecoverable"],["kandan.control","linzumi.control"],["kandan.control_ack_withheld_on_failure","linzumi.control_ack_withheld_on_failure"],["kandan.control_epoch_changed","linzumi.control_epoch_changed"],["kandan.control_handler_threw","linzumi.control_handler_threw"],["kandan.control_ignored","linzumi.control_ignored"],["kandan.control_response_push_failed","linzumi.control_response_push_failed"],["kandan.failed_seq_overflow","linzumi.failed_seq_overflow"],["kandan.forward_port_revoked_push_failed","linzumi.forward_port_revoked_push_failed"],["kandan.forward_response","linzumi.forward_response"],["kandan.forward_response_push_failed","linzumi.forward_response_push_failed"],["kandan.forward_tunnel_error","linzumi.forward_tunnel_error"],["kandan.forward_tunnel_open_failed","linzumi.forward_tunnel_open_failed"],["kandan.heartbeat_push_failed","linzumi.heartbeat_push_failed"],["kandan.local_editor_initial_status_failed","linzumi.local_editor_initial_status_failed"],["kandan.local_editor_status_push_failed","linzumi.local_editor_status_push_failed"],["kandan.message_duplicate_ignored","linzumi.message_duplicate_ignored"],["kandan.message_ignored","linzumi.message_ignored"],["kandan.message_queued","linzumi.message_queued"],["kandan.message_spawn_on_miss","linzumi.message_spawn_on_miss"],["kandan.message_spawn_on_miss_failed","linzumi.message_spawn_on_miss_failed"],["kandan.message_state_refresh_failed","linzumi.message_state_refresh_failed"],["kandan.optional_push_failed","linzumi.optional_push_failed"],["kandan.post_stop_queue_drain_failed","linzumi.post_stop_queue_drain_failed"],["kandan.queue_drain_blocked","linzumi.queue_drain_blocked"],["kandan.queue_drain_dead_worker_fail_publish_failed","linzumi.queue_drain_dead_worker_fail_publish_failed"],["kandan.queue_drain_dead_worker_rebuild","linzumi.queue_drain_dead_worker_rebuild"],["kandan.queue_drain_dead_worker_rebuild_exhausted","linzumi.queue_drain_dead_worker_rebuild_exhausted"],["kandan.queue_drain_dead_worker_rebuild_failed","linzumi.queue_drain_dead_worker_rebuild_failed"],["kandan.reconnect_handling_failed","linzumi.reconnect_handling_failed"],["kandan.reconnect_thread_context_fetch_failed","linzumi.reconnect_thread_context_fetch_failed"],["kandan.reconnect_thread_cwd_failed_state_push_failed","linzumi.reconnect_thread_cwd_failed_state_push_failed"],["kandan.reconnect_thread_failed","linzumi.reconnect_thread_failed"],["kandan.reconnect_thread_processing_state_push_failed","linzumi.reconnect_thread_processing_state_push_failed"],["kandan.reconnect_thread_queue_closed_state_push_failed","linzumi.reconnect_thread_queue_closed_state_push_failed"],["kandan.reconnect_thread_queue_failed_state_push_failed","linzumi.reconnect_thread_queue_failed_state_push_failed"],["kandan.reconnect_thread_queue_state_push_failed","linzumi.reconnect_thread_queue_state_push_failed"],["kandan.reconnect_thread_rehydrate_forced","linzumi.reconnect_thread_rehydrate_forced"],["kandan.reconnect_thread_rehydrated","linzumi.reconnect_thread_rehydrated"],["kandan.reconnect_thread_rehydrated_state_push_failed","linzumi.reconnect_thread_rehydrated_state_push_failed"],["kandan.reconnect_thread_rehydration_failed","linzumi.reconnect_thread_rehydration_failed"],["kandan.reconnect_thread_rehydration_ir_emitted","linzumi.reconnect_thread_rehydration_ir_emitted"],["kandan.reconnect_thread_rehydration_items_failed","linzumi.reconnect_thread_rehydration_items_failed"],["kandan.reconnect_thread_resume_failed","linzumi.reconnect_thread_resume_failed"],["kandan.reconnect_thread_seq_already_applied","linzumi.reconnect_thread_seq_already_applied"],["kandan.reconnect_thread_transcript_fetch_failed","linzumi.reconnect_thread_transcript_fetch_failed"],["kandan.reconnect_thread_unarchive_failed","linzumi.reconnect_thread_unarchive_failed"],["kandan.reconnect_thread_unarchive_resumed","linzumi.reconnect_thread_unarchive_resumed"],["kandan.reconnect_thread_unarchive_started","linzumi.reconnect_thread_unarchive_started"],["kandan.reconnect_thread_unavailable_state_push_failed","linzumi.reconnect_thread_unavailable_state_push_failed"],["kandan.reconnected","linzumi.reconnected"],["kandan.roster_seeded","linzumi.roster_seeded"],["kandan.session_app_server_lost_push_failed","linzumi.session_app_server_lost_push_failed"],["kandan.session_settings_publish_failed","linzumi.session_settings_publish_failed"],["kandan.start_instance_claude_code_attachment_failed_state_push_failed","linzumi.start_instance_claude_code_attachment_failed_state_push_failed"],["kandan.start_instance_codex_app_server_unavailable","linzumi.start_instance_codex_app_server_unavailable"],["kandan.start_instance_cwd_failed_state_push_failed","linzumi.start_instance_cwd_failed_state_push_failed"],["kandan.start_instance_cwd_rejected","linzumi.start_instance_cwd_rejected"],["kandan.start_instance_failed","linzumi.start_instance_failed"],["kandan.start_instance_processing_state_push_failed","linzumi.start_instance_processing_state_push_failed"],["kandan.start_instance_skipped_known_session","linzumi.start_instance_skipped_known_session"],["kandan.start_instance_stale_skipped","linzumi.start_instance_stale_skipped"],["kandan.start_instance_unavailable_state_push_failed","linzumi.start_instance_unavailable_state_push_failed"],["kandan.start_instance_wafer_state_push_failed","linzumi.start_instance_wafer_state_push_failed"],["kandan.start_turn_replay_skipped","linzumi.start_turn_replay_skipped"],["kandan.steer_duplicate_ignored","linzumi.steer_duplicate_ignored"],["kandan.steer_parked_as_own_turn","linzumi.steer_parked_as_own_turn"],["kandan.thread_bind_from_historical_reply_failed","linzumi.thread_bind_from_historical_reply_failed"],["kandan.thread_bound_from_historical_reply","linzumi.thread_bound_from_historical_reply"],["kandan.thread_sessions_reannounce_failed","linzumi.thread_sessions_reannounce_failed"],["kandan.thread_sessions_reannounced","linzumi.thread_sessions_reannounced"],["kandan.tui_input_mirrored","linzumi.tui_input_mirrored"],["kandan.typing_heartbeat_failed","linzumi.typing_heartbeat_failed"],["kandan.typing_stop_after_completion_failed","linzumi.typing_stop_after_completion_failed"]],sP=[["codexThreadId","harness_session_id"],["codex_thread_id","harness_session_id"],["kandanThreadId","thread_id"],["kandan_preview_ticket","linzumi_preview_ticket"],["kandan_thread_id","thread_id"],["linzumiThreadId","thread_id"],["linzumi_thread_id","thread_id"],["local_codex_runner","commander"],["runnerId","commander_id"],["runner_config","commander_config"],["runner_id","commander_id"]],Mm=[["commander","local_codex_runner"],["commander_config","runner_config"],["commander_id","runner_id"],["harness_session_id","codex_thread_id"],["linzumi_preview_ticket","kandan_preview_ticket"],["thread_id","kandan_thread_id"]],Ov=[["engine_boot_reconnect","harness_boot_reconnect"],["engine_for_runner_event_type","harness_for_commander_event_type"],["engine_rejected_steer","harness_rejected_steer"],["engine_unavailable","harness_unavailable"],["join_engine","join_harness"],["kandan-local-codex-runner","linzumi-commander"],["local_codex_runner","commander"],["original_engine","original_harness"],["resume_engine","resume_harness"]];function ku(){return x("1.0.150","0.0.0-unbundled")}function Ev(){return"linzumi "+x("1.0.150","0.0.0-unbundled")}function bl(e,t){let r=e.indexOf(t);if(r!==-1)return r}function Pv(){let e=process.env.LINZUMI_NAMING_DUAL_EMIT;if(e===void 0)return!0;let t=e.trim().toLowerCase();return t!=="0"?t!=="false":!1}function Rv(e){let t={};return e.forEach(r=>{t[r[0]]=r[1]}),t}function w4(e){let t={};return e.forEach(r=>{t[r[1]]=r[0]}),t}var uP=Rv(sP),cP=Rv(Mm),k4=Rv(Ov),x4=w4(Ov);function T4(e){return e.endsWith("_canonical")?!0:e.endsWith("_legacy")}function fP(e,t){return t>=32?e:Array.isArray(e)?e.map(r=>fP(r,t+1|0)):e===null?e:typeof e==="object"?mP(e,t):e}function mP(e,t){let r=Object.keys(e),n={};return r.forEach(i=>{let o=e[i];if(o!==void 0){n[i]=fP(o,t+1|0);return}}),r.forEach(i=>{if(T4(i))return;let o=n[i];if(o===void 0)return;let a=uP[i];if(a!==void 0)n[a]=o;else{let c=cP[i];c!==void 0&&(n[c]!==void 0||(n[c]=o))}let s=n[i];if(s===void 0||typeof s!="string")return;let l=k4[s];if(l!==void 0){if(n[i+"_canonical"]!==void 0)return;n[i+"_canonical"]=l;return}let d=x4[s];if(!(d===void 0||n[i+"_legacy"]!==void 0)){n[i+"_legacy"]=d;return}}),n}function jm(e){return Pv()?mP(e,0):e}function pP(e){let t=e.slice();return e.forEach(r=>{let n=uP[r];n!==void 0&&!t.includes(n)&&t.push(n);let i=cP[r];if(i!==void 0&&!t.includes(i)){t.push(i);return}}),t}var vl="<SENSITIVE_DATA>",A4=pP(["access_token","authorization","code","cookie","kandan_preview_ticket","refresh_token","token"]),O4=["--access-token","--api-key","--authorization","--cookie","--oauth-code","--password","--refresh-token","--secret","--token"],C4=new RegExp("^(authorization|cookie|set-cookie|password)$","i"),E4=new RegExp("(^|[_-])(access[_-]?token|api[_-]?key|auth[_-]?token|oauth[_-]?code|refresh[_-]?token|secret|token)$","i"),P4=new RegExp("\\beyJ[A-Za-z0-9_-]*\\.[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+\\b","g");function R4(e){return e!==void 0?C4.test(e)?!0:E4.test(e):!1}function hP(e){let t={contents:!1};return Gw(e).forEach(r=>{if(A4.includes(r.toLowerCase())){e.set(r,vl),t.contents=!0;return}}),t.contents}function I4(e){let t=bl(e,"?"),r=bl(e,"#");if(t===void 0||r!==void 0&&r<t)return e;let n=e.slice(0,t),i=r!==void 0?e.slice(t+1|0,r):e.slice(t+1|0),o=r!==void 0?e.slice(r):"",a=new URLSearchParams(i);return hP(a)?n+"?"+a.toString()+o:e}function $4(e){let t=Ln(e);if(t===void 0)return I4(e);let r=ue(t);return hP(r.searchParams),r.toString()}function _P(e){return $4(e).replace(P4,vl)}function M4(e){let t=bl(e,"=");return t!==void 0?[e.slice(0,t),e.slice(t+1|0)]:[e,void 0]}function $v(e,t){if(R4(t))return vl;if(Array.isArray(e))return t==="args"?j4(e):e.map(r=>$v(r,void 0));if(e===null)return e;switch(typeof e){case"string":return _P(e);case"object":return gP(e);default:return e}}function j4(e){let t={contents:!1};return e.map(r=>{if(typeof r=="string"){if(t.contents)return t.contents=!1,vl;let n=M4(r),i=n[0];return O4.includes(i)?n[1]!==void 0?i+"="+vl:(t.contents=!0,r):_P(r)}return t.contents=!1,$v(r,void 0)})}function gP(e){let t=e.name,r=typeof t=="string"?t.toLowerCase():void 0,n;if(r!==void 0)switch(r){case"authorization":case"cookie":case"set-cookie":n=!0;break;default:n=!1}else n=!1;let i={};return Object.entries(e).forEach(o=>{let a=o[0];if(a!=="runner_console"){i[a]=n&&a==="value"?vl:$v(o[1],a);return}}),i}var zm=gP;import*as ta from"node:os";import*as jp from"node:path";import*as gw from"node:crypto";function jn(e){let t=parseFloat(e);if(!Number.isNaN(t))return t}function bP(e){return"local_runner:"+e}var z4="kandan-local-codex-runner",N4="rescript";function vP(e){let t={};t.clientName=z4,t.clientId=e.clientId;let r=e.machineFingerprint;t.machineFingerprint=r!==void 0?r:null,Object.entries(ck(e.machineFingerprintV2)).forEach(a=>{t[a[0]]=a[1]}),t.runnerPid=e.runnerPid,t.version=e.version,t.hostname=e.hostname,t.cwd=e.cwd;let n=e.workspace;t.workspace=n!==void 0?n:null;let i=e.channel;t.channel=i!==void 0?i:null,t.capabilities=e.capabilities;let o=e.generationOverlapEpoch;if(o!==void 0){let a={};a.epoch=o,a.overlap=!0,t.generation=a}return t.commander_impl=N4,t}function SP(e,t,r){let n={};return n.last_seq=r,t!==void 0&&(n.runner_id=e,n.thread_id=t),n}function zn(e,t){return e.catch(r=>t(ee(r)))}function kP(){let e=[],t=[],r={contents:!1},n=()=>{let a=e.shift();return a!==void 0?Promise.resolve({done:!1,value:a}):r.contents?Promise.resolve({done:!0}):new Promise((s,l)=>{t.push(s)})},i=()=>(r.contents=!0,Promise.resolve({done:!0})),o={};return o[Symbol.asyncIterator]=()=>({next:n,return:i}),{iterable:o,push:a=>{if(r.contents)return!1;let s=t.shift();return s!==void 0?(s({done:!1,value:a}),!0):(e.push(a),!0)},close:()=>{r.contents=!0,(()=>{for(;;){let s=t.shift();if(s===void 0)return;s({done:!0})}})()}}}function xP(e){return import(e)}var F4="@anthropic-ai/claude-agent-sdk";function TP(e){return kP()}function D4(e){return{next:()=>e.next(),close:()=>{e.close()},interrupt:()=>e.interrupt(),setModel:t=>e.setModel(t),setPermissionMode:t=>e.setPermissionMode(t),applyFlagSettings:t=>e.applyFlagSettings(t),supportedCommands:()=>e.supportedCommands()}}async function AP(){let e=await xP(F4);return{query:t=>D4(e.query(t)),getSessionInfo:(t,r)=>e.getSessionInfo(t,r),listSessions:t=>e.listSessions(t),getSessionMessages:(t,r)=>e.getSessionMessages(t,r)}}var Mv=["codex","claude-code","pi","opencode"];function Ya(e){return e}function Nm(e){switch(e.TAG){case"SessionStarted":return"session_started";case"TurnStarted":return"turn_started";case"ItemStarted":return"item_started";case"ItemDelta":return"item_delta";case"ItemCompleted":return"item_completed";case"ApprovalRequested":return"approval_requested";case"UsageUpdated":return"usage_updated";case"RateLimitUpdated":return"rate_limit_updated";case"ActivityPulse":return"activity_pulse";case"TurnCompleted":return"turn_completed";case"TurnFailed":return"turn_failed";case"TurnInterrupted":return"turn_interrupted";case"HarnessDied":return"harness_died"}}function q4(e){switch(e){case"SocketOpen":return"open";case"SocketMessage":return"message";case"SocketClose":return"close";case"SocketError":return"error"}}function L4(e){let t=e.data,r;r=t==null||typeof t!="string"?void 0:t;let n=e.code,i;i=n==null||typeof n!="number"||(n|0)!==n?void 0:n|0;let o=e.reason,a;return a=o==null||typeof o!="string"?void 0:o,{data:r,code:i,reason:a}}function U4(e){return{readyState:()=>e.readyState,send:t=>{e.send(t)},close:()=>{e.close()},on:(t,r)=>{e.addEventListener(q4(t),n=>r(L4(n)),{})}}}function Gm(e,t){return U4(new WebSocket(e,t))}var CP=0,Xa=1;var jv="file",zv=["mcp_oauth_credentials_store","cli_auth_credentials_store"],W4=zv.flatMap(e=>["-c",e+'="'+jv+'"']),Z4=["-c","features.apps=false"];function po(e){return JSON.stringify(e)}function V4(e){let t=(r,n)=>r!==void 0?Object.entries(r).flatMap(i=>["-c","model_providers."+e.id+"."+n+"."+i[0]+"="+po(i[1])]):[];return[["-c","model_providers."+e.id+".name="+po(e.name),"-c","model_providers."+e.id+".base_url="+po(e.baseUrl),"-c","model_providers."+e.id+".env_key="+po(e.envKey),"-c","model_providers."+e.id+".wire_api="+po(e.wireApi)],t(e.httpHeaders,"http_headers"),t(e.envHttpHeaders,"env_http_headers"),["-c","model_provider="+po(e.id)]].flat()}function H4(e){let t=e.model,r=e.reasoningEffort,n=e.modelProvider;return[Z4,W4,t!==void 0?["-c","model="+po(t)]:[],r!==void 0?["-c","model_reasoning_effort="+po(r)]:[],e.fast?["-c","service_tier="+po("fast")]:[],e.mcpConfigArgs.flat(),n!==void 0?V4(n):[]].flat()}function PP(e,t){return[["app-server"],H4(t),["--listen",e]].flat()}var B4=["LINZUMI_MCP_ACCESS_TOKEN","LINZUMI_MCP_OWNER_USERNAME"];function RP(e,t,r){let n=r?Object.fromEntries(Object.entries(e)):{};return B4.forEach(i=>fr(n,i)),t.forEach(i=>{let o=i[1],a=i[0];if(o!==void 0){n[a]=o;return}else return fr(n,a)}),n}var IP=["ignore","pipe","pipe"];function $P(e){let t=e.length;return t>12e3?e.slice(t-12e3|0,t):e}function MP(e,t,r){return r<3&&e.includes("codex app-server exited before readyz")&&t.includes("EADDRINUSE")?t.includes("listen"):!1}function jP(e){let t=Ln(e);if(t===void 0)return;let r=ue(t),i=r.protocol==="wss:"?"https:":"http:";return r.protocol=i,r.pathname="/readyz",r.search="",r.hash="",r.toString()}var K4="kandan-local-codex-runner",J4="0.0.1";function zP(){return Object.fromEntries([["clientInfo",Object.fromEntries([["name",K4],["version",J4]])],["capabilities",Object.fromEntries([["experimentalApi",!0]])]])}var Y4=new RegExp("\\bsession\\b.+\\bis archived\\b","i");function NP(e){return Y4.test(e)}var X4=new RegExp("^thread not found(?:\\s*:|\\b)","i");function GP(e){return X4.test(e.trim())}var FP=2e3;function Q4(e){try{e.unref();return}catch{return}}var DP="codex app-server websocket closed",eH="codex app-server websocket is not open";function tH(e){let t=e.method;if(typeof t=="string")return t}function Nv(e){let t=e.error;if(t===void 0)return{TAG:"ResultReply",_0:x(e.result,null)};if(typeof t!="object"||t===null||Array.isArray(t))return{TAG:"ErrorReply",code:0,message:JSON.stringify(t)};let r=t.code,n=r!==void 0&&typeof r=="number"?r:0,i=t.message;return{TAG:"ErrorReply",code:n,message:typeof i=="string"?i:""}}function Dm(e,t,r,n){let i=JSON.stringify(n);t(r,i);try{return e.socket.send(i),{TAG:"Ok",_0:void 0}}catch(o){let a=ee(o);return{TAG:"Error",_0:Ne(a).message}}}function WP(e,t,r){try{return t(r)}catch(n){let i=ee(n);return e("codex.notification_callback_failed",Object.fromEntries([["purpose","codex.app_server"],["method",r.method],["message",Ne(i).message]]))}}function qP(e,t,r){try{return t(r)}catch(n){let i=ee(n);return e("codex.close_callback_failed",Object.fromEntries([["purpose","codex.app_server"],["message",Ne(i).message]]))}}function rH(e,t){let r;if(t.TAG==="Ok")r=[["jsonrpc","2.0"],["id",e],["result",t._0]];else{let n=t._0;r=[["jsonrpc","2.0"],["id",e],["error",Object.fromEntries([["code",n[0]],["message",n[1]]])]]}return Object.fromEntries(r)}async function nH(e,t,r,n){let i={TAG:"Error",_0:[-32601,"unhandled Codex app-server request: "+n.method]},o=e.requestCallbacks.slice(),a,s=0;for(;mn(a)&&s<o.length;){let d=o[s];if(d!==void 0){let u=0,c;try{c=await d(n),u=1}catch(f){let p=ee(f);a={TAG:"Error",_0:[-32e3,Ne(p).message]}}u===1&&c!==void 0&&(a={TAG:"Ok",_0:c})}s=s+1|0}let l=x(a,i);Dm(t,r,"outgoing",rH(n.id,l))}function iH(e,t,r,n,i){let o;try{o=JSON.parse(i)}catch(p){let m=ee(p);r("codex.app_server_frame_malformed",Object.fromEntries([["purpose","codex.app_server"],["message",Ne(m).message],["payload",i.slice(0,512)],["payloadChars",i.length]])),o=void 0}let a;if(o!==void 0){let p=0;typeof o=="object"&&o!==null&&!Array.isArray(o)?a=o:p=1,p===1&&(r("codex.app_server_frame_malformed",Object.fromEntries([["purpose","codex.app_server"],["message","codex app-server sent non-object JSON-RPC message"],["payload",i.slice(0,512)],["payloadChars",i.length]])),a=void 0)}else a=void 0;if(a===void 0)return;let s=qt(a.id),l=s&&(qt(a.result)||qt(a.error)),d=tH(a);if(l){let p=x(a.id,null),m=JSON.stringify(p),h=e.pending[m];return h!==void 0?(fr(e.pending,m),h.resolvePending({TAG:"Ok",_0:Nv(a)})):void 0}if(s)if(d!==void 0){zn(nH(e,t,n,{id:x(a.id,null),method:d,params:a.params}),p=>Promise.resolve());return}else return;if(d===void 0)return;let u=a.params,c={method:d,params:u};e.notificationCallbacks.length!==0?e.notificationCallbacks.forEach(p=>WP(r,p,c)):e.pendingNotifications.push(c)}function oH(e,t,r){return Object.fromEntries(r!==void 0?[["jsonrpc","2.0"],["id",e],["method",t],["params",r]]:[["jsonrpc","2.0"],["id",e],["method",t]])}function LP(e,t){return Object.fromEntries(t!==void 0?[["jsonrpc","2.0"],["method",e],["params",t]]:[["jsonrpc","2.0"],["method",e]])}function UP(e,t,r,n,i,o){return t.socket.readyState()===Xa?new Promise((a,s)=>{e.pending[JSON.stringify(n)]={resolvePending:a};let l=Dm(t,r,"request",oH(n,i,o));l.TAG!=="Ok"&&(fr(e.pending,JSON.stringify(n)),a({TAG:"Error",_0:l._0}))}):Promise.resolve({TAG:"Error",_0:eH})}async function qm(e,t,r,n){let i=t!==void 0?t:u=>({socket:Gm(u,[]),ping:void 0}),o=r!==void 0?r:2e3,a=n!==void 0?n:()=>Date.now(),s=a()+o,l,d="websocket open failed";for(;mn(l);){let u;try{u={TAG:"Ok",_0:i(e)}}catch(c){let f=ee(c);u={TAG:"Error",_0:Ne(f).message}}if(u.TAG==="Ok"){let c=u._0;if(await new Promise((f,p)=>{c.socket.on("SocketOpen",m=>f(!0)),c.socket.on("SocketError",m=>f(!1))}))l={TAG:"Ok",_0:c};else{try{c.socket.close()}catch{}a()>s&&(l={TAG:"Error",_0:d})}}else d=u._0,a()>s&&(l={TAG:"Error",_0:d})}return x(l,{TAG:"Error",_0:d})}async function Lm(e,t){let r={pending:{},notificationCallbacks:[],requestCallbacks:[],pendingNotifications:[],closeCallbacks:[],nextId:1,closeError:void 0},n=t.audit,i=t.onWire,o=setInterval(()=>{let d=e.ping;if(d!==void 0&&e.socket.readyState()===Xa)try{return d()}catch{return}},t.keepaliveIntervalMs);Q4(o);let a=d=>{clearInterval(o);let u=Object.entries(r.pending);if(Object.entries(r.pending).forEach(p=>fr(r.pending,p[0])),u.forEach(p=>p[1].resolvePending({TAG:"Error",_0:d})),r.closeError!==void 0)return;r.closeError=d;let f=r.closeCallbacks.slice();r.closeCallbacks.splice(0,r.closeCallbacks.length),f.forEach(p=>qP(n,p,d))};e.socket.on("SocketClose",d=>a(DP)),e.socket.on("SocketError",d=>a(DP)),e.socket.on("SocketMessage",d=>{let u=d.data;if(u!==void 0)return i("incoming",u),iH(r,e,n,i,u)});let s=await UP(r,e,i,"initialize","initialize",zP());if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0};let l=s._0;return l.TAG!=="ResultReply"?{TAG:"Error",_0:"codex initialize failed: "+l.message}:(Dm(e,i,"outgoing",LP("initialized",void 0)),{TAG:"Ok",_0:{request:(d,u)=>{let c=r.nextId;return r.nextId=r.nextId+1|0,UP(r,e,i,c,d,u)},notify:(d,u)=>{Dm(e,i,"outgoing",LP(d,u))},onNotification:d=>{r.notificationCallbacks.push(d);let u=r.pendingNotifications.slice();r.pendingNotifications.splice(0,r.pendingNotifications.length),u.forEach(c=>WP(n,d,c))},onRequest:d=>{r.requestCallbacks.push(d)},onClose:d=>{let u=r.closeError;if(u!==void 0)return qP(n,d,u);r.closeCallbacks.push(d)},isClosed:()=>qt(r.closeError),close:()=>{clearInterval(o);try{return e.socket.close()}catch{return}}}})}function xl(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function Li(e){if(e!==void 0&&typeof e=="string"&&e.trim()!=="")return e.trim()}function kl(e){if(e!==void 0&&typeof e=="number"&&Ot(e))return e}function ZP(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}var VP="linzumi_thread_codex_worker_ready",HP="linzumi_thread_codex_worker_session_closed",BP="linzumi_thread_codex_worker_request",KP="linzumi_thread_codex_worker_notify",qv="linzumi_thread_codex_worker_response",JP="linzumi_thread_codex_worker_notification",YP="linzumi_thread_codex_worker_server_request",XP="linzumi_thread_codex_worker_server_request_response";function QP(e,t){let r={};return r.type=VP,r.kandanThreadId=e,r.commanderManagedPorts=t.map(n=>{let i={};i.port=n.port;let o=n.pid;o!==void 0&&(i.pid=o);let a=n.processName;a!==void 0&&(i.processName=a);let s=n.processIconKey;s!==void 0&&(i.processIconKey=s);let l=n.agentProvider;return l!==void 0&&(i.agentProvider=l),i}),r}function eR(e,t){let r={};return r.type=HP,r.kandanThreadId=e,r.reason=t,r}function aH(e,t,r){let n={};return n.type=BP,n.id=e,n.method=t,r!==void 0&&(n.params=r),n}function sH(e,t){let r={};return r.type=KP,r.method=e,t!==void 0&&(r.params=t),r}function lH(e,t){let r={};return r.type=qv,r.id=e,r.response=t,r}function dH(e,t){let r={};return r.type=qv,r.id=e,r.error=t,r}function uH(e){let t={};return t.type=JP,t.notification=e,t}function cH(e,t){let r={};return r.type=YP,r.id=e,r.request=t,r}function Fv(e,t,r){let n={};return n.type=XP,n.id=e,t!==void 0&&(n.result=t),r!==void 0&&(n.error=r),n}function fH(e){if(e===void 0||typeof e!="object"||e===null||Array.isArray(e)||e.id===void 0)return;let r=e.result,n=e.error;if(r!==void 0||n!==void 0)return e}function mH(e){if(e===void 0||typeof e!="object"||e===null||Array.isArray(e))return;let t=e.id,r=e.method;if(!(t!==void 0||typeof r!="string"))return e}function pH(e){if(e===void 0||typeof e!="object"||e===null||Array.isArray(e))return;let t=e.id,r=e.method;if(t!==void 0&&typeof r=="string")return e}function hH(e){let t=xl(e);if(t===void 0)return;let r=t.type;if(r===void 0||typeof r!="string")return;if(r===BP){let i=kl(t.id),o=Li(t.method);return i!==void 0&&o!==void 0?{TAG:"ParentRequest",id:i,method_:o,params:ZP(t.params)}:void 0}if(r===KP){let i=Li(t.method);return i!==void 0?{TAG:"ParentNotify",method_:i,params:ZP(t.params)}:void 0}if(r!==XP)return;let n=kl(t.id);if(n!==void 0)return{TAG:"ParentServerRequestResponse",id:n,result:t.result,error:Li(t.error)}}function _H(e){let t=xl(e);if(t===void 0)return;let r=t.type;if(r===void 0||typeof r!="string")return;if(r===qv){let o=kl(t.id);return o!==void 0?{TAG:"ChildResponse",id:o,response:fH(t.response),error:Li(t.error)}:void 0}if(r===JP){let o=mH(t.notification);return o!==void 0?{TAG:"ChildNotification",notification:o}:void 0}if(r!==YP)return;let n=kl(t.id),i=pH(t.request);if(n!==void 0&&i!==void 0)return{TAG:"ChildServerRequest",id:n,request:i}}function tR(e){let t=xl(e);if(t===void 0)return;let r=t.type;if(typeof r=="string"&&r===HP)return[x(Li(t.kandanThreadId),""),x(Li(t.reason),"")]}var gH="thread Codex worker reported invalid ready payload";function yH(e){let t=Li(e);if(t!==void 0)switch(t){case"claude-code":return"claude-code";case"codex":return"codex";default:return}}function bH(e){return e!==void 0?Array.isArray(e)?$e(e,t=>{let r=xl(t);if(r===void 0)return;let n=kl(r.port);if(n!==void 0&&n>=1&&n<=65535)return{port:n,pid:kl(r.pid),processName:Li(r.processName),processIconKey:Li(r.processIconKey),agentProvider:yH(r.agentProvider)}}):[]:[]}function rR(e,t){let r=xl(e);if(r===void 0)return{TAG:"Ok",_0:void 0};let n=r.type;if(n===void 0)return{TAG:"Ok",_0:void 0};if(typeof n!="string")return{TAG:"Ok",_0:void 0};if(n!==VP)return{TAG:"Ok",_0:void 0};let i=Li(r.kandanThreadId);return i!==void 0&&i===t?{TAG:"Ok",_0:{kandanThreadId:i,commanderManagedPorts:bH(r.commanderManagedPorts)}}:{TAG:"Error",_0:gH}}function nR(e,t){}var iR="linzumi.thread_runner",vH="thread Codex worker requires a codex client with onRequest",Dv="thread Codex worker IPC channel closed";function oR(e,t,r){let n=r!==void 0?r:nR,i=e.onRequest;if(i===void 0)return{TAG:"Error",_0:vH};let o=new Map,a={contents:1},s={contents:!1},l=u=>{if(s.contents)return;s.contents=!0;let c={};c.purpose=iR,c.reason=u,n("thread_codex_worker.ipc_send_dropped",c)},d=u=>{let c=t.send,f=t.isConnected();if(c===void 0||!f)return l("ipc_channel_closed");let p=c(u);if(p.TAG!=="Ok")return l(p._0)};return t.onMessage(u=>{let c=hH(u);if(c!==void 0)switch(c.TAG){case"ParentRequest":let f=c.id;e.request(c.method_,c.params).then(_=>_.TAG==="Ok"?d(lH(f,_._0)):d(dH(f,_._0)));return;case"ParentNotify":return e.notify(c.method_,c.params);case"ParentServerRequestResponse":let p=c.error,m=c.id,h=o.get(m);return h!==void 0?(o.delete(m),h(p!==void 0?{TAG:"Error",_0:p}:{TAG:"Ok",_0:c.result})):void 0}}),e.onNotification(u=>d(uH(u))),i(u=>new Promise((c,f)=>{let p=a.contents;a.contents=p+1,o.set(p,c),d(cH(p,u))})),t.onceDisconnect(()=>{o.forEach(u=>u({TAG:"Error",_0:Dv})),o.clear()}),{TAG:"Ok",_0:void 0}}var SH="thread Codex worker IPC client is closed",wH="thread Codex worker response missing body",kH="thread Codex worker IPC client closed";async function xH(e,t,r,n,i,o){let a=d=>{let u=e(d);if(u.TAG==="Ok")return;let c={};c.purpose=iR,c.requestMethod=n,c.message=u._0,o("thread_codex_worker.ipc_response_dropped",c)},s=!1,l=0;for(;!s&&l<i.length;){let d=i[l];if(d!==void 0){let u=await d(r);if(u.TAG==="Ok"){let c=u._0;c!==void 0&&(s=!0,a(Fv(t,c,void 0)))}else s=!0,a(Fv(t,void 0,u._0))}l=l+1|0}if(!s)return a(Fv(t,void 0,"unhandled Codex app-server request: "+n))}function TH(e){let t=xl(e);if(t===void 0)return"";let r=t.method;return typeof r=="string"?r:""}function aR(e,t){let r=t!==void 0?t:nR,n=new Map,i=[],o=[],a=[],s={contents:1},l={contents:!1},d=_=>{n.forEach(g=>g({TAG:"Error",_0:_})),n.clear()},u=_=>{if(l.contents)return{TAG:"Error",_0:SH};let g=e.send,b=e.isConnected();return g!==void 0&&b?g(_):{TAG:"Error",_0:Dv}},c=_=>{let g=_H(_);if(g!==void 0)switch(g.TAG){case"ChildResponse":let b=g.error,y=g.response,v=g.id,S=n.get(v);return S!==void 0?(n.delete(v),S(b!==void 0?{TAG:"Error",_0:b}:y!==void 0?{TAG:"Ok",_0:y}:{TAG:"Error",_0:wH})):void 0;case"ChildNotification":let A=g.notification;i.length!==0?i.forEach(L=>L(A)):a.push(A);return;case"ChildServerRequest":let W=g.request;xH(u,g.id,W,TH(W),o,r);return}},f=e.onMessage(c),p=()=>{l.contents=!0,d(Dv)},m=e.onceExit(p),h=e.onceDisconnect(p);return{request:(_,g)=>new Promise((b,y)=>{let v=s.contents;s.contents=v+1,n.set(v,b);let S=u(aH(v,_,g));S.TAG!=="Ok"&&(n.delete(v),b({TAG:"Error",_0:S._0}))}),notify:(_,g)=>u(sH(_,g)),onNotification:_=>{i.push(_);let g=a.slice();a.splice(0,a.length),g.forEach(b=>_(b))},onRequest:_=>{o.push(_)},isClosed:()=>l.contents?!0:!e.isConnected(),close:()=>{l.contents=!0,f(),m(),h(),d(kH)}}}import*as Bv from"node:child_process";import*as lR from"node:os";import*as dR from"node:path";function uR(){return dR.join(lR.homedir(),".linzumi","protected-dev-listeners")}var AH=new RegExp("^(\\d+)\\s+(\\d+)$");function OH(e){return $e(e.split(`
|
|
325
|
+
`),t=>{let r=AH.exec(t.trim());if(r==null)return;let n=r.slice(1);if(n.length!==2)return;let i=n[0];if(i===void 0)return;let o=n[1];if(o===void 0)return;let a=jn(i),s=jn(o);if(a!==void 0&&s!==void 0)return{pid:a,pgid:s}})}function CH(e){let t=_s("ps",["-axo","pid=,pgid="],5e3,16e6);if(t.TAG==="Ok")return OH(t._0).filter(r=>r.pgid===e).map(r=>r.pid)}function Um(e,t,r,n,i){let o=n!==void 0?n:CH,a;if(i.size>0){let l=o(e);if(l!==void 0){let d=l.filter(u=>i.has(u));if(d.length!==0){let u=[],c=new Set(l.filter(f=>!i.has(f)));c.add(e),Array.from(c).forEach(f=>{let p=r(f|0,t);if(p.TAG==="Ok")return;let m=p._0;if(!de(m.code,"ESRCH")){u.push({pid:f,code:m.code,message:m.message});return}}),a={mode:"IndividualSignals",sparedPids:d,failures:u,groupSignalError:void 0}}else a=void 0}else a=void 0}else a=void 0;if(a!==void 0)return a;let s=r(-e|0,t);return s.TAG==="Ok"?{mode:"GroupSignal",sparedPids:[],failures:[],groupSignalError:void 0}:{mode:"GroupSignal",sparedPids:[],failures:[],groupSignalError:s._0}}var mR={contents:(e,t)=>{}};var Lv="SIGKILL",Qa={children:new Set,handlersInstalled:!1,removeHandlers:void 0};function xu(e,t,r,n,i){let o=e.pid;mR.contents("process.reap_failed",Object.fromEntries([["purpose",e.kind],["pid",o!==void 0?o:null],["ownProcessGroup",e.ownProcessGroup],["reason",t],["stage",r],["code",n!==void 0?n:null],["message",i]]))}function EH(e,t,r,n){let i;try{e.stop(),i={TAG:"Ok",_0:void 0}}catch(l){i={TAG:"Error",_0:ee(l)}}if(i.TAG!=="Ok"){let l=Ne(i._0);xu(e,n,"stop",l.code,l.message)}let o=e.pid;if(o===void 0)return;if(e.ownProcessGroup){let l=Um(o,Lv,t,void 0,r);l.sparedPids.length!==0&&mR.contents("process.reap_spared_listeners",Object.fromEntries([["purpose",e.kind],["pid",o],["reason",n],["sparedPids",l.sparedPids.map(f=>f)]])),l.failures.forEach(f=>xu(e,n,"member_kill:"+f.pid.toString(),f.code,f.message));let d=l.groupSignalError;if(d===void 0||de(d.code,"ESRCH"))return;xu(e,n,"group_kill",d.code,d.message);let u=t(o,Lv);if(u.TAG==="Ok")return;let c=u._0;return de(c.code,"ESRCH")?void 0:xu(e,n,"pid_kill",c.code,c.message)}let a=t(o,Lv);if(a.TAG==="Ok")return;let s=a._0;if(!de(s.code,"ESRCH"))return xu(e,n,"pid_kill",s.code,s.message)}function Uv(e,t,r){let n=e!==void 0?e:Vi,i=t!==void 0?t:new Set,o=r!==void 0?r:"exit",a=Array.from(Qa.children);return Qa.children.clear(),a.forEach(s=>EH(s,n,i,o)),a.length}function fR(e,t){let r;return r=typeof t=="string"?t:JSON.stringify(t),"linzumi commander "+e+": "+r+`
|
|
326
|
+
`}function PH(){if(Qa.handlersInstalled)return;Qa.handlersInstalled=!0;let e=o=>{Uv(void 0,void 0,"process_exit")};process.on("exit",e);let t=process.listenerCount("uncaughtException")===0,r=process.listenerCount("unhandledRejection")===0,n=o=>{Uv(void 0,void 0,"uncaught_exception"),mr(fR("uncaughtException",o)),process.exit(1)},i=o=>{Uv(void 0,void 0,"unhandled_rejection"),mr(fR("unhandledRejection",o)),process.exit(1)};t&&process.on("uncaughtException",n),r&&process.on("unhandledRejection",i),Qa.removeHandlers=()=>{if(process.off("exit",e),t&&process.off("uncaughtException",n),r){process.off("unhandledRejection",i);return}}}function Wm(e){return Qa.children.add(e),PH(),{unregister:()=>{Qa.children.delete(e)}}}import*as Zo from"node:path";import*as hR from"node:net";function Tl(e,t){try{return e.kill(t)}catch{return!1}}function _R(){return new Promise((e,t)=>{let r=hR.createServer();r.on("error",n=>e({TAG:"Error",_0:n.message})),r.listen(0,"127.0.0.1",()=>{let n=r.address();if(n==null)return r.close(o=>{}),e({TAG:"Error",_0:"failed to allocate loopback port"});let i=n.port;r.close(o=>o==null?e({TAG:"Ok",_0:i}):e({TAG:"Error",_0:o.message}))})})}var Ere=new RegExp("[^0-9A-Za-z._-]","g");var Fre=new RegExp("[\\\\/]");var gR="cannot fork thread runner without current CLI script path";var Dre=15*6e4,qre=120*6e4,Lre=1440*6e4,Ure=2*6e4;var $H="this computer is updating its Linzumi runner",Wre=$H+" to a new version - nothing was started. Retry in a few minutes once the update finishes.";var Zre=15*6e4;var yR="this computer restarted its Linzumi runner for an update",Vre=yR+" after waiting for this job past the drain timeout - the job was interrupted. Send your message again to continue.",Hre=yR+" while this job was waiting on your approval - the approval prompt was interrupted. Send your message again and answer the approval prompt to continue.";function jH(e,t){}var Zv="linzumi.thread_runner";function bR(e,t){return e!==void 0&&e.trim()!==""?{TAG:"Ok",_0:Zo.isAbsolute(e)?e:Zo.resolve(t,e)}:{TAG:"Error",_0:gR}}function zH(e){return["--require","-r","--import","--loader","--experimental-loader"].includes(e)}function NH(e){return["--require=","-r=","--import=","--loader=","--experimental-loader="].some(t=>e.startsWith(t))}function GH(e){let t=[],r=0;for(;r<e.length;){let n=e[r];if(n!==void 0){let i=zH(n),o=NH(n);if(i){let a=e[r+1|0];a!==void 0&&(t.push(n),t.push(a)),r=r+2|0}else o&&t.push(n),r=r+1|0}else r=r+1|0}return t}function Vv(e,t,r){return GH(r).concat([e].concat(t))}function cn(e,t){return t!==void 0?t!==""?[e,t]:[]:[]}function vR(e){let t=i=>{let o=i.join(",");if(o!=="")return o},r=e.codexModelProvider,n=e.runtimeDefaults;return[["--api-url",e.kandanUrl],["--cwd",e.cwd],["--codex-bin",e.codexBin],cn("--workspace",e.workspaceSlug),cn("--log-file",e.logFile),cn("--debug-trace-dir",G(e.debugTrace,i=>i.dir)),cn("--debug-trace-content",k(e.debugTrace,i=>i.contentMode)),e.fast?["--fast"]:[],cn("--allowed-cwd",t(e.allowedCwds)),cn("--forward-port",t(e.allowedForwardPorts.map(i=>i.toString()))),cn("--code-server-bin",e.codeServerBin),cn("--model",k(e.runtimeDefaults,i=>i.model)),cn("--reasoning-effort",k(e.runtimeDefaults,i=>i.reasoningEffort)),cn("--sandbox",k(e.runtimeDefaults,i=>i.sandbox)),cn("--approval-policy",k(e.runtimeDefaults,i=>i.approvalPolicy)),r!==void 0?["--model-provider",r.provider,"--llm-proxy-base-url",r.llmProxyBaseUrl]:[],e.vmExecution?["--vm-execution"]:[],cn("--execution-mode",e.executionMode),cn("--egress-mode",e.egressMode),cn("--project-public-id",e.projectPublicId),cn("--golden-image-id",e.goldenImagePublicId),n!==void 0?n.allowPortForwardingByDefault?["--allow-port-forwarding-by-default"]:["--no-allow-port-forwarding-by-default"]:[]].flat()}function SR(e){let t=[],r=0;for(;r<e.length;){let n=e[r];n!==void 0?n==="--token"?(t.push("--token"),t.push("<redacted>"),r=r+2|0):(t.push(n),r=r+1|0):r=r+1|0}return t}function wR(e,t,r){let n=[["LINZUMI_THREAD_RUNNER_ROLE","thread"],["LINZUMI_THREAD_RUNNER_KANDAN_THREAD_ID",e.kandanThreadId],["LINZUMI_THREAD_RUNNER_TOKEN",e.token],["LINZUMI_DEV_SERVICES_PARENT_PID",t.toString()]],i=e.codexModelProvider;return i!==void 0&&n.push(["LINZUMI_LLM_PROXY_TOKEN",i.llmProxyToken]),n.push(["LINZUMI_THREAD_RUNNER_AGENT_MCP_TOKEN",x(e.linzumiAgentMcpToken,"")]),r!==void 0&&n.push(["OPENAI_API_KEY",r]),n}function kR(e){let t=e.length;return t>12e3?e.slice(t-12e3|0,t):e}function Zm(e){let t=rn(e.code,"null",o=>o.toString()),r=x(e.signal,"null"),n="thread Codex worker exited before ready: code="+t+" signal="+r,i=e.capturedOutput.trim();return i===""?n:n+`
|
|
327
|
+
worker output: `+i}function xR(e,t){return"thread Codex worker did not report ready within "+t.toString()+"ms for Kandan thread "+e}var FH="thread runner ready timeout must be a non-negative number";function TR(e){let t=x(e,3e4);return isFinite(t)&&t>=0?{TAG:"Ok",_0:t}:{TAG:"Error",_0:FH}}var AR="thread worker start preflight failed";function DH(e){return Zo.isAbsolute(e)||new RegExp("^[A-Za-z]:[\\\\/]").test(e)?!0:e.startsWith("\\\\")}function qH(e){return e===""?!0:!DH(e)&&e!==".."&&!e.startsWith("../")&&!e.startsWith("..\\")&&!e.includes("/../")?!e.includes("\\..\\"):!1}function OR(e,t,r){if(e===void 0)return{TAG:"CwdRefused",reason:"missing_cwd"};if(e.trim()==="")return{TAG:"CwdRefused",reason:"missing_cwd"};if(t.length===0)return{TAG:"CwdRefused",reason:"no_allowed_cwd"};let i=Dn(Zo.resolve(e));if(i.TAG!=="Ok")return{TAG:"CwdRefused",reason:"cwd_not_found"};let o=i._0,a=t.find(s=>qH(Zo.relative(s,o)));return a!==void 0?r(o)?{TAG:"CwdRefused",reason:"cwd_dangerous"}:{TAG:"CwdAllowed",cwd:o,matchedRoot:a}:{TAG:"CwdRefused",reason:"cwd_not_allowed"}}function CR(e,t,r){if(r.TAG==="CwdAllowed")return;let n=r.reason,o=t.length!==0?t.join(", "):"none";return{reason:n,message:AR+" ("+n+"): working directory "+e+" cannot start a coding session on this runner (allowed roots: "+o+")"}}function LH(e){return e.split(`
|
|
328
|
+
`).map(t=>t.trim()).find(t=>t.startsWith(AR))}var Kre=new RegExp("worker exited before ready|worker did not report ready within","i");function ER(e,t){let r=e.trim(),n=r.length,i=" ... ",o=i.length,a=n<=t,s=t<(o+2|0);if(a)return r;if(s)return r.slice(n-Math.max(1,t)|0,n);let l=Math.max(1,Math.floor((t-o|0)/3)|0),d=Math.max(1,(t-o|0)-l|0);return r.slice(0,l)+i+r.slice(n-d|0,n)}function UH(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}async function PR(e,t,r,n,i,o){let a=o!==void 0?o:jH,s=Math.max(1,x(t,2)),l=x(r,250),d=x(n,UH),u,c,f=1;for(;mn(u)&&f<=s;){let m=f,h=await e(m);if(h.TAG==="Ready")u={TAG:"Ok",_0:h._0};else{let _=h._0;c=_;let g=LH(_.capturedOutput),b=m<s&&mn(g),y={};y.purpose=Zv,y.attempt=m,y.maxAttempts=s,y.code=rn(_.code,null,v=>v),y.signal=rn(_.signal,null,v=>v),y.capturedOutput=_.capturedOutput,y.willRespawn=b,g!==void 0&&(y.deterministicPreflightFailure=g),a("runner.thread_runner_exited_before_ready",y),g!==void 0?u={TAG:"Error",_0:g}:(b&&(i!==void 0&&i({attemptNumber:m+1|0,previous:_}),l>0&&await d(l)),f=m+1|0)}}let p=u;return p!==void 0?p:{TAG:"Error",_0:Zm(x(c,{code:void 0,signal:void 0,capturedOutput:""}))}}var RR=3e4;function WH(e){let t=ke(e);return t!==void 0?Nv(t):{TAG:"ResultReply",_0:null}}function IR(e,t){let r={contents:void 0},n=[],i=(m,h)=>{try{return m(h)}catch(_){let g=ee(_);return t("codex.close_callback_failed",Object.fromEntries([["purpose","codex.app_server"],["message",Ne(g).message]]))}};return{client:{request:(m,h)=>e.request(m,k(h,ke)).then(_=>wt(_,WH)),notify:(m,h)=>{e.notify(m,k(h,ke))},onNotification:m=>e.onNotification(h=>{let _=ke(h);if(_===void 0)return;let g=_.method;if(typeof g=="string")return m({method:g,params:_.params})}),onRequest:m=>e.onRequest(async h=>{let _=ke(h);if(_===void 0)return{TAG:"Ok",_0:void 0};let g=_.method;if(g===void 0)return{TAG:"Ok",_0:void 0};if(typeof g!="string")return{TAG:"Ok",_0:void 0};let b;try{b=await m({id:x(_.id,null),method:g,params:_.params})}catch(y){let v=ee(y);return{TAG:"Error",_0:Ne(v).message}}return b!==void 0?{TAG:"Ok",_0:b}:{TAG:"Ok",_0:void 0}}),onClose:m=>{let h=r.contents;if(h!==void 0)return i(m,h);n.push(m)},isClosed:()=>qt(r.contents)?!0:e.isClosed(),close:()=>e.close()},signalClosed:m=>{if(r.contents!==void 0)return;r.contents=m;let _=n.slice();n.splice(0,n.length),_.forEach(g=>i(g,m))}}}function $R(e){let t={contents:1};return{request:(r,n)=>{let i=t.contents;return t.contents=i+1,e.request(r,G(n,o=>o)).then(o=>wt(o,a=>a.TAG==="ResultReply"?Object.fromEntries([["id",i],["result",a._0]]):Object.fromEntries([["id",i],["error",Object.fromEntries([["code",a.code],["message",a.message]])]])))},notify:(r,n)=>e.notify(r,G(n,i=>i)),onNotification:r=>e.onNotification(n=>{let i={};i.method=n.method;let o=n.params;o!==void 0&&(i.params=o),r(i)}),onRequest:r=>e.onRequest(async n=>{let i={};i.id=n.id,i.method=n.method;let o=n.params;o!==void 0&&(i.params=o);let a=await r(i);if(a.TAG==="Ok")return a._0})}}function ZH(e,t){try{return e.send(t),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n).message}}}function Tu(e,t){try{e.kill(t);return}catch{return}}function VH(e){try{e.disconnect();return}catch{return}}function HH(e,t,r,n,i){return new Promise((o,a)=>{let s=Bv.spawn(process.execPath,e,{cwd:t,env:r,stdio:["inherit","pipe","pipe","ipc"]}),l=Wm({stop:()=>Tu(s,"SIGTERM"),pid:Dt(s.pid),ownProcessGroup:!1,kind:"thread-worker"});s.once("exit",(_,g)=>l.unregister()),i(s);let d={contents:""},u={contents:!0},c={contents:!1},f=_=>{if(!c.contents)return c.contents=!0,u.contents=!1,o(_)},p=(_,g)=>{if(_!=null){_.on("data",b=>{let y=b.toString("utf8");u.contents&&(d.contents=kR(d.contents+y)),g.write(y)});return}};p(s.stdout,process.stdout),p(s.stderr,process.stderr);let m=_=>{let g=rR(_,n);if(g.TAG==="Ok"){let b=g._0;return b!==void 0?(s.off("message",m),s.off("exit",h),f({TAG:"WorkerReady",worker:s,ports:b.commanderManagedPorts})):void 0}Tu(s,"SIGKILL"),f({TAG:"WorkerInvalidReady",_0:g._0})},h=(_,g)=>f({TAG:"WorkerExitedBeforeReady",_0:{code:_==null?void 0:Ze(_),signal:g==null?void 0:Ze(g),capturedOutput:d.contents}});s.on("message",m),s.once("exit",h),s.on("error",_=>f({TAG:"WorkerExitedBeforeReady",_0:{code:void 0,signal:void 0,capturedOutput:_.message}}))})}async function jR(e,t){let r=bR(process.argv[1],process.cwd());if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=r._0,i=TR(void 0);if(i.TAG!=="Ok")return{TAG:"Error",_0:i._0};let o=i._0,a=["run"].concat(vR(e)),s=Vv(n,a,process.execArgv),l=e.codexModelProvider,d;if(l!==void 0&&l.provider==="openai-proxy"){let _=G(process.env.OPENAI_API_KEY,g=>g.trim());d=_!==void 0&&_!==""?_:void 0}else d=void 0;let u=Object.fromEntries(Object.entries(process.env));wR(e,process.pid,d).forEach(_=>{u[_[0]]=_[1]}),t("process.spawn",Object.fromEntries([["command",process.execPath],["args",Vv(n,SR(a),process.execArgv).map(_=>_)],["cwd",e.cwd],["purpose",Zv]]));let c={contents:void 0},f={contents:!1},p=(async()=>{let _=await PR(b=>HH(s,e.cwd,u,e.kandanThreadId,y=>{c.contents=Ze(y)}).then(y=>{switch(y.TAG){case"WorkerExitedBeforeReady":return{TAG:"ExitedBeforeReady",_0:y._0};case"WorkerReady":case"WorkerInvalidReady":return{TAG:"Ready",_0:y}}}),void 0,void 0,void 0,void 0,t);if(_.TAG!=="Ok")return{TAG:"Error",_0:_._0};let g=_._0;switch(g.TAG){case"WorkerReady":return{TAG:"Ok",_0:g};case"WorkerExitedBeforeReady":return{TAG:"Error",_0:Zm(g._0)};case"WorkerInvalidReady":return{TAG:"Error",_0:g._0}}})();p.then(_=>{if(!f.contents||_.TAG!=="Ok")return;let b=_._0;switch(b.TAG){case"WorkerReady":return Tu(b.worker,"SIGKILL");case"WorkerExitedBeforeReady":case"WorkerInvalidReady":return}});let m=await Promise.race([p,new Promise((_,g)=>{setTimeout(()=>{f.contents=!0;let b=c.contents;b!==void 0&&Tu(ue(b),"SIGKILL"),_({TAG:"Error",_0:xR(e.kandanThreadId,o)})},o)})]);if(m.TAG!=="Ok")return{TAG:"Error",_0:m._0};let h=m._0;switch(h.TAG){case"WorkerReady":let _=h.worker,g=[],W=aR({send:B=>ZH(_,B),isConnected:()=>nn(Dt(_.connected),!1),onMessage:B=>{_.on("message",B);let oe=()=>{_.off("message",B)};return g.push(oe),oe},onceExit:B=>{let oe=(Z,V)=>B();return _.once("exit",oe),()=>{_.off("exit",oe)}},onceDisconnect:B=>{let oe=()=>B();return _.once("disconnect",oe),()=>{_.off("disconnect",oe)}}},t),L=IR(W,t);_.on("message",B=>{let oe=tR(B);if(oe!==void 0)return t("runner.thread_codex_worker_session_closed",Object.fromEntries([["kandanThreadId",oe[0]],["reason",oe[1]]]))});let ae=[],U={contents:!1};return _.once("exit",(B,oe)=>{U.contents=!0,L.signalClosed("codex thread worker exited");let Z=ae.slice();ae.splice(0,ae.length),Z.forEach(V=>V())}),{TAG:"Ok",_0:{client:L.client,pid:Dt(_.pid),commanderManagedPorts:h.ports,onExit:B=>{if(U.contents)return B();ae.push(B)},close:()=>{W.close(),g.forEach(B=>B()),VH(_),Tu(_,"SIGTERM")}}};case"WorkerExitedBeforeReady":return{TAG:"Error",_0:Zm(h._0)};case"WorkerInvalidReady":return{TAG:"Error",_0:h._0}}}function zR(e,t){return new Promise((r,n)=>{let i;try{i={TAG:"Ok",_0:Bv.spawn(e,["login","status"],{cwd:t,env:process.env,stdio:["ignore","pipe","pipe"]})}}catch(l){let d=ee(l);i={TAG:"Error",_0:Ne(d).message}}if(i.TAG!=="Ok")return r();let o=i._0,a={contents:!1},s=()=>{if(!a.contents)return a.contents=!0,r()};setTimeout(()=>{Tl(o,"SIGTERM"),s()},3e3),o.once("exit",(l,d)=>s()),o.on("error",l=>s())})}function Kv(e,t,r){let n=r.sandboxedNeverDefault&&de(t,"workspace-write");if(e===void 0)return{TAG:"Ok",_0:n?"never":"on-request"};switch(e){case"default":return{TAG:"Ok",_0:n?"never":"on-request"};case"never":return{TAG:"Ok",_0:de(t,"danger-full-access")||n?"never":"on-request"};case"on-failure":return{TAG:"Ok",_0:"on-failure"};case"on-request":return{TAG:"Ok",_0:"on-request"};default:return{TAG:"Error",_0:"unsupported Codex approval policy: "+e}}}function Vm(e,t,r){return wt(Kv(e,t,r),n=>n==="on-failure"?"on-request":n)}function NR(e,t){switch(e){case"danger-full-access":return{TAG:"Ok",_0:Object.fromEntries([["type","dangerFullAccess"]])};case"read-only":return{TAG:"Ok",_0:Object.fromEntries([["type","readOnly"],["access",Object.fromEntries([["type","fullAccess"]])],["networkAccess",!1]])};case"workspace-write":return{TAG:"Ok",_0:Object.fromEntries([["type","workspaceWrite"],["writableRoots",[t]],["readOnlyAccess",Object.fromEntries([["type","fullAccess"]])],["networkAccess",!1],["excludeTmpdirEnvVar",!1],["excludeSlashTmp",!1]])};default:return{TAG:"Error",_0:"unsupported Codex sandbox mode: "+e}}}var GR="kandan-local-runner",FR="pragmatic";import*as qR from"node:os";import*as Vo from"node:path";function Jv(e){let t=oa(e,"LINZUMI_CONTROL_CURSOR_DIR");return t!==void 0&&t.trim()!==""?t.trim():Vo.join(qR.homedir(),".linzumi","control-cursors")}var KH=new RegExp("[^A-Za-z0-9._-]+","g"),JH=new RegExp("^[-.]+|[-.]+$","g");function Yv(e){let t=e.replace(KH,"-").replace(JH,"").slice(0,80),r=qn(e).slice(0,8);return(t===""?"runner":t)+"."+r}function LR(e,t){return Vo.join(Jv(t),Yv(e)+".json")}function UR(e,t){return Vo.join(Jv(t),Yv(e)+".start-turn.json")}function WR(e,t){return Vo.join(Jv(t),Yv(e)+".source-seq.json")}function ZR(e,t){return e+" "+t}function VR(e,t,r){return e+" "+t+" "+r}var HR="__control_epoch";function YH(e){let t;try{t=JSON.parse(e)}catch{t=void 0}if(t===void 0)return{TAG:"Error",_0:void 0};if(typeof t!="object"||t===null||Array.isArray(t))return{TAG:"Error",_0:void 0};let r={},n={contents:void 0};return Object.entries(t).forEach(i=>{let o=i[1],a=i[0];if(a===HR)if(typeof o=="string"&&o!==""){n.contents=o;return}else return;else if(typeof o=="number"&&Ot(o)&&o>=0){r[a]=o;return}else return}),{TAG:"Ok",_0:{cursors:r,epoch:n.contents}}}function XH(e,t){let r=Qt(e);if(r.TAG==="Ok"){let i=YH(r._0);return i.TAG==="Ok"?i._0:(t("control_cursor_store.corrupt_ignored",Object.fromEntries([["path",e]])),{cursors:{},epoch:void 0})}let n=r._0;return si(n,"ENOENT")||t("control_cursor_store.read_failed",Object.fromEntries([["path",e],["message",n.message]])),{cursors:{},epoch:void 0}}function QH(e,t){let r={};return t!==void 0&&(r[HR]=t),Object.entries(e).forEach(n=>{r[n[0]]=n[1]}),JSON.stringify(r)+`
|
|
329
|
+
`}function Hm(e,t,r,n){let i=r!==void 0?r:!1,o=n!==void 0?n:!1,a=XH(e,t),s=a.cursors,l={contents:a.epoch},d={contents:!1},u={contents:void 0},c=()=>{if(!d.contents)return;d.contents=!1;let m=QH(s,l.contents),h=e+".tmp",_=he(Lt(Vo.dirname(e)),()=>o?zw(h,e,Vo.dirname(e),m):he(Ti(h,m),()=>li(h,e)));if(_.TAG!=="Ok")return t("control_cursor_store.write_failed",Object.fromEntries([["path",e],["message",_._0.message]]))},f=()=>{if(d.contents=!0,u.contents!==void 0)return;let h=setTimeout(()=>{u.contents=void 0,c()},250);h.unref(),u.contents=Ze(h)},p=()=>{let m=u.contents;m!==void 0&&(clearTimeout(ue(m)),u.contents=void 0),c()};return{initial:m=>s[m],onAdvance:(m,h)=>{let _=s[m];_!==void 0&&h<=_||(s[m]=h,f())},reset:(m,h)=>{if(!de(s[m],h))return s[m]=h,f()},flush:p,epoch:()=>l.contents,adoptEpoch:m=>{if(de(l.contents,m))return!1;let h=l.contents!==void 0,_=!h&&i&&Object.entries(s).length!==0;return l.contents=m,(h||_)&&(_&&t("control_cursor_store.pre_epoch_seqs_discarded",Object.fromEntries([["path",e],["epoch",m],["discardedSeqs",Object.entries(s).length]])),Object.entries(s).forEach(g=>fr(s,g[0]))),f(),(h||_)&&p(),h}}}function BR(e,t,r,n,i){return{current:()=>e.epoch(),adopt:(o,a)=>{let s=e.epoch(),l=e.adoptEpoch(a),d=t.adoptEpoch(a),u=l||d;return u&&r("kandan.control_epoch_changed",Object.fromEntries([["runnerId",n],["kandanUrl",i],["topic",o],["previousEpoch",s!==void 0?s:null],["epoch",a],["controlCursorCleared",l],["startTurnWatermarksCleared",d]])),u}}}var Jre=1800*1e3;var Yre=new RegExp("[^A-Za-z0-9._-]+","g"),Xre=new RegExp("^[-.]+|[-.]+$","g");function KR(e){return{initial:t=>e.initial(t),onAdvance:(t,r)=>e.onAdvance(t,r),flush:()=>e.flush()}}function Bm(e,t){return e!==void 0?t>e:!0}function Au(e,t,r,n){if(n!==void 0){let i=e.initial(t);i!==void 0&&r<=i&&n("commander.invariant_violation",Object.fromEntries([["invariant","watermark_regression"],["thread_id",null],["harness",null],["detail","watermark_key="+t+" committed_source_seq="+r.toString()+" durable_floor="+i.toString()]]))}e.onAdvance(t,r),e.flush()}function JR(e){return e!==void 0?Array.isArray(e)?$e(e,t=>{if(typeof t!="object"||t===null||Array.isArray(t))return;let r=t.threadId;if(r===void 0||typeof r!="string")return;let n=t.channelId,i;if(n!==void 0)switch(typeof n){case"string":i=n;break;case"number":i=n.toString();break;default:i=""}else i="";let o=t.highestProcessedSourceSeq,a=o!==void 0&&typeof o=="number"&&Ot(o)?o:void 0,s=t.leaseEpoch,l=s!==void 0&&typeof s=="number"&&Ot(s)?s:void 0;return{channelId:i,threadId:r,highestProcessedSourceSeq:a,leaseEpoch:l}}):[]:[]}function XR(){let e=new Map;return{current:t=>e.get(t),adopt:(t,r)=>{if(!Ot(r))return!1;let n=e.get(t);return n!==void 0&&(r<n||r===n)?!1:(e.set(t,r),!0)},release:t=>{e.delete(t)},snapshot:()=>e.entries().toArray().map(t=>({threadId:t[0],leaseEpoch:t[1]}))}}function Km(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function i3(e,t){let r=e[t];if(typeof r=="string")return r}function Ho(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&isFinite(r)&&Math.round(r)===r)return r}function Xv(e){return G(Km(e,"usage"),t=>({inputTokens:Ho(t,"input_tokens"),outputTokens:Ho(t,"output_tokens"),cacheCreationInputTokens:Ho(t,"cache_creation_input_tokens"),cacheReadInputTokens:Ho(t,"cache_read_input_tokens")}))}function tI(){return{completed:{inputTokens:0,outputTokens:0,cacheCreationInputTokens:0,cacheReadInputTokens:0},current:void 0,lastEmittedKey:void 0}}function QR(e,t){let r=n=>t!==void 0?n(t):0;return{inputTokens:x(Ho(e,"input_tokens"),r(n=>n.inputTokens)),outputTokens:x(Ho(e,"output_tokens"),r(n=>n.outputTokens)),cacheCreationInputTokens:x(Ho(e,"cache_creation_input_tokens"),r(n=>n.cacheCreationInputTokens)),cacheReadInputTokens:x(Ho(e,"cache_read_input_tokens"),r(n=>n.cacheReadInputTokens))}}function eI(e){let t=(s,l)=>{let d=e.current;return s+(d!==void 0?l(d):0)},r=t(e.completed.inputTokens,s=>s.inputTokens),n=t(e.completed.outputTokens,s=>s.outputTokens),i=t(e.completed.cacheCreationInputTokens,s=>s.cacheCreationInputTokens),o=t(e.completed.cacheReadInputTokens,s=>s.cacheReadInputTokens),a=r.toString()+":"+n.toString()+":"+(i.toString()+":"+o.toString());if(!de(e.lastEmittedKey,a))return e.lastEmittedKey=a,{inputTokens:r,outputTokens:n,cacheCreationInputTokens:i,cacheReadInputTokens:o}}function rI(e,t){let r=k(t,n=>i3(n,"type"));if(r!==void 0)switch(r){case"message_delta":let n=k(t,a=>Km(a,"usage"));return n!==void 0?(e.current=QR(n,e.current),eI(e)):void 0;case"message_start":let i=k(k(t,a=>Km(a,"message")),a=>Km(a,"usage"));if(i===void 0)return;let o=e.current;return o!==void 0&&(e.completed.inputTokens=e.completed.inputTokens+o.inputTokens,e.completed.outputTokens=e.completed.outputTokens+o.outputTokens,e.completed.cacheCreationInputTokens=e.completed.cacheCreationInputTokens+o.cacheCreationInputTokens,e.completed.cacheReadInputTokens=e.completed.cacheReadInputTokens+o.cacheReadInputTokens),e.current=QR(i,void 0),eI(e);default:return}}function Ou(e){if(e<425){if(e===402||e===408)return"transient_upstream"}else{if(e===425)return"transient_upstream";if(e===429)return"rate_limited"}return e>=500&&e<=599?"transient_upstream":"deterministic"}function eS(e){return e==="Text"?"text":"thinking"}function oI(){return{activeMessageId:void 0,syntheticMessageCounter:0,completedMessageIds:[],consumedAssistantMessageIds:new Set,blocksByMessageId:{}}}function Qv(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function Bo(e,t){let r=e[t];if(typeof r=="string")return r}function iI(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&isFinite(r)&&Math.round(r)===r)return r|0}function tS(e,t){return e.syntheticMessageCounter=e.syntheticMessageCounter+1|0,"synthetic-claude-message:"+t+":"+e.syntheticMessageCounter.toString()}function a3(e,t){let r=e.activeMessageId;if(r!==void 0)return r;let n=tS(e,t);return e.activeMessageId=n,n}function rS(e,t){return"claude-message:"+e+":content-block:"+t.toString()}function Jm(e,t,r,n){if(r===void 0)return;let i=a3(e,"orphan-stream-event"),o=e.blocksByMessageId[i],a;if(o!==void 0)a=o;else{let l=[];e.blocksByMessageId[i]=l,a=l}let s=a.find(l=>l.index===r);s!==void 0?s.content=s.content+x(n,""):a.push({kind:t,index:r,content:x(n,"")})}function aI(e,t){let r=k(t,n=>Bo(n,"type"));if(r!==void 0)switch(r){case"content_block_delta":let n=k(t,c=>Qv(c,"delta")),i=k(t,c=>iI(c,"index")),o=k(n,c=>Bo(c,"type"));if(o!==void 0)switch(o){case"text_delta":Jm(e,"Text",i,k(n,c=>Bo(c,"text")));break;case"thinking_delta":Jm(e,"Thinking",i,k(n,c=>Bo(c,"thinking")));break}return e.activeMessageId;case"content_block_start":let a=k(t,c=>Qv(c,"content_block")),s=k(t,c=>iI(c,"index")),l=k(a,c=>Bo(c,"type"));if(l!==void 0)switch(l){case"text":Jm(e,"Text",s,k(a,c=>Bo(c,"text")));break;case"thinking":Jm(e,"Thinking",s,k(a,c=>Bo(c,"thinking")));break}return e.activeMessageId;case"message_start":let d=k(k(t,c=>Qv(c,"message")),c=>Bo(c,"id"));e.activeMessageId=d!==void 0?d:tS(e,"missing-message-start-id");return;case"message_stop":let u=e.activeMessageId;u!==void 0&&!e.consumedAssistantMessageIds.has(u)&&e.completedMessageIds.push(u),e.activeMessageId=void 0;return;default:return}}function sI(e,t){if(t!==void 0){e.consumedAssistantMessageIds.add(t);let n=ia(e.completedMessageIds,t);return n!==void 0&&e.completedMessageIds.splice(n,1),t}let r=e.completedMessageIds.shift();return r!==void 0?(e.consumedAssistantMessageIds.add(r),r):tS(e,"missing-assistant-frame-id")}function lI(e,t){let r=e.blocksByMessageId[t];return r!==void 0?(fr(e.blocksByMessageId,t),r.toSorted((n,i)=>Xu(n.index,i.index))):[]}function dI(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function nS(e,t){let r=e[t];if(typeof r=="string")return r}function iS(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&isFinite(r))return r}function l3(e){if(e===void 0||e<0)return;let t=e<=1?e*100:e;return Math.min(100,Math.round(t))}function d3(e){if(e!==void 0&&e>0)return e>1e12?Math.round(e):Math.round(e*1e3)}function oS(e){let t=nS(e,"status"),r=nS(e,"rateLimitType"),n=r!==void 0?r:nS(e,"rate_limit_type"),i=l3(iS(e,"utilization")),o=iS(e,"resetsAt"),a=d3(o!==void 0?o:iS(e,"resets_at"));if(!(t===void 0&&i===void 0&&a===void 0))return{status:t,windowLabel:n,utilizationPercent:i,resetsAtMs:a}}function uI(e){let t=dI(e,"rate_limit_info");if(t!==void 0)return oS(t);let r=dI(e,"rate_limit");return oS(r!==void 0?r:e)}var c3="edge_blocked";function f3(e){let t=e.toLowerCase(),r=t.includes("<html")||t.includes("<!doctype html"),n=t.includes("cloudflare");return t.includes("sorry, you have been blocked")||t.includes("attention required")&&n||t.includes("cf_chl_")||t.includes("challenge-platform")||t.includes("just a moment")&&(n||t.includes("cf-"))?!0:r?t.includes("cloudflare ray id")||t.includes("cf-ray")?!0:n?t.includes("blocked"):!1:!1}function fI(e,t){let r=e.exec(t);if(r==null)return;let n=r.slice(1)[0];if(n===void 0)return;let i=ue(n);if(i!==void 0)return i}var m3=[new RegExp("\\bAPI Error:?\\s*([1-5]\\d{2})\\b","i"),new RegExp("\\b(?:HTTP|status(?:\\s+code)?)[\\s:]+([1-5]\\d{2})\\b","i")],p3=[new RegExp('"request[_-]id"\\s*:\\s*"([^"]{1,128})"',"i"),new RegExp('\\brequest[_ -]id[:=]\\s*"?([A-Za-z0-9_-]{6,128})',"i"),new RegExp("\\b(req_[A-Za-z0-9]{6,})\\b")],h3=new RegExp('"error"\\s*:\\s*\\{[^{}]*?"message"\\s*:\\s*"((?:[^"\\\\]|\\\\.){1,500})"');function cI(e,t){return Ve(e,void 0,(r,n)=>r!==void 0?r:fI(n,t))}function _3(e){let t;try{t=JSON.parse('"'+e+'"')}catch{return e}return typeof t=="string"?t:e}function g3(e){let t=fI(h3,e),n=(t!==void 0?_3(t):e).trim();return n.length<=200?n:n.slice(0,199)+"\u2026"}function mI(e){return{status:k(cI(m3,e),t=>ga(t,void 0)),requestId:cI(p3,e),edgeBlocked:f3(e),message:g3(e)}}function aS(e){return qt(e.status)||qt(e.requestId)?!0:e.edgeBlocked}function pI(e,t){let r=[],n=t.status;n!==void 0&&r.push("HTTP "+n.toString());let i=t.requestId;return i!==void 0&&r.push("request "+i),t.edgeBlocked&&r.push("blocked at the network edge by Cloudflare before reaching Linzumi - our infrastructure, not your usage; retrying usually succeeds "+("[failure_class="+c3+"]")),r.length!==0?e+" ("+r.join(", ")+")":e}function hI(e){let t={},r=e.status;t.status=r!==void 0?r:null;let n=e.requestId;return t.request_id=n!==void 0?n:null,t.edge_blocked=e.edgeBlocked,t.message=e.message,t}function yI(e,t,r){return{emitEvent:r,announcedSessionId:e,onSessionStarted:t,sessionAnnounced:!1,pendingTurnIds:[],startedTurns:new Set,terminalTurns:new Set,startedItems:new Set,activeTurnId:void 0,mintedTurnCount:0,usage:tI(),identity:oI()}}function Al(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function Rt(e,t){let r=e[t];if(typeof r=="string")return r}function _I(e,t){let r=e[t];if(typeof r=="boolean")return r}function sS(e,t){let r=e[t];if(Array.isArray(r))return r}function Ko(e){if(e===void 0)return;let t=e.trim();if(t!=="")return t}function b3(e){let t=Rt(e,"session_id"),r=t!==void 0?t:Rt(e,"sessionId");if(r!==void 0)return r;let n=Al(e,"message");if(n===void 0)return;let i=Rt(n,"session_id");return i!==void 0?i:Rt(n,"sessionId")}function v3(e,t){if(e.sessionAnnounced)return!1;let r=b3(t);if(r===void 0)return!1;let n=e.announcedSessionId,i=n!==void 0?n:r;return e.sessionAnnounced=!0,e.emitEvent({TAG:"SessionStarted",harnessSessionId:i}),e.onSessionStarted(i),!0}function Cu(e,t){return e.startedTurns.has(t)?!e.terminalTurns.has(t):!1}var bI=Cu;function vI(e){let t=e.activeTurnId;return t!==void 0?Cu(e,t):!1}function SI(e,t){e.mintedTurnCount=e.mintedTurnCount+1|0;let r="claude:"+t+":turn:"+e.mintedTurnCount.toString();return e.pendingTurnIds.push(r),r}function Ol(e){let t=e.activeTurnId;if(t!==void 0&&Cu(e,t))return t;let r=e.pendingTurnIds.shift(),n=r!==void 0?r:(e.mintedTurnCount=e.mintedTurnCount+1|0,"claude-adapter-turn-"+e.mintedTurnCount.toString());return e.startedTurns.add(n),e.activeTurnId=n,e.emitEvent({TAG:"TurnStarted",turnId:n}),n}function lS(e,t){if(e.terminalTurns.add(t),de(e.activeTurnId,t)){e.activeTurnId=void 0;return}}function gI(e){return e.turnId+"/"+e.itemId+"/"+e.streamKind}function dS(e,t){if(!e.startedItems.has(gI(t)))return e.startedItems.add(gI(t)),e.emitEvent({TAG:"ItemStarted",item:t})}function uS(e,t,r){dS(e,t),e.emitEvent({TAG:"ItemCompleted",item:t,content:r})}function S3(e,t,r){dS(e,t),e.emitEvent({TAG:"ItemDelta",item:t,delta:r})}function es(e,t){let r=e.activeTurnId;if(x(G(r,n=>Cu(e,n)),!0))return e.emitEvent({TAG:"ActivityPulse",turnId:r,signalKind:t})}function w3(e,t){let r=$e(x(sS(e,"errors"),[]),a=>{if(typeof a=="string")return Ko(a)}).join("; "),n=Ko(r);if(n!==void 0)return n;let i=Ko(Rt(e,"result"));if(i!==void 0)return i;let o=Ko(Rt(e,"error"));return o!==void 0?o:x(t,"error")}function k3(e){let t=Rt(e,"subtype"),r=x(_I(e,"is_error"),!1),n=de(t,"interrupt")||de(t,"error_interrupted")||x(_I(e,"is_interrupt"),!1),i=r||de(t,"error_max_turns")||de(t,"error_during_execution");return n?"Interrupted":i?{TAG:"Errored",reason:w3(e,t)}:"Success"}function x3(e,t){let r=mI(t),n=r.status;return{fate:e!==void 0?e==="error_max_turns"?"deterministic":n!==void 0?Ou(n):"transient_upstream":n!==void 0?Ou(n):"transient_upstream",reason:aS(r)?pI("Claude Code failed: "+t,r):"Claude Code failed: "+t,providerDetail:aS(r)?hI(r):void 0}}function T3(e,t){let r=Rt(e,"id");if(r!==void 0)return r;let n=Rt(e,"tool_use_id");return n!==void 0?n:"content-block-"+t.toString()}function A3(e){return e==="Text"?"assistant":"reasoning"}function O3(e){let t={};t.type=eS(e.kind);let r=e.kind,n;return n=r==="Text"?"text":"thinking",t[n]=e.content,t}function C3(e,t){let r=Ol(e),n=Al(t,"message"),i=x(k(n,y=>sS(y,"content")),[]),o=sI(e.identity,k(n,y=>Rt(y,"id"))),s=lI(e.identity,o).filter(y=>y.content.trim()!==""),l={};s.forEach(y=>{let v=eS(y.kind),S=l[v];S!==void 0?S.push(y.index):l[v]=[y.index]});let d={};i.forEach((y,v)=>{let S;if(S=typeof y=="object"&&y!==null&&!Array.isArray(y)?Rt(y,"type"):void 0,S===void 0)return;switch(S){case"text":case"thinking":break;default:return}let A=x(S,""),R=d[A];R!==void 0?R.push(v):d[A]=[v]});let u=new Set;s.forEach(y=>{u.add(y.index)});let c=(y,v)=>{let S=x(d[y],[]),A=ia(S,v);A!==void 0&&S.splice(A,1);let R=x(l[y],[]),W=R[0];if(W!==void 0&&v<W)return R.shift(),!0;let L=ia(R,v);if(L!==void 0)return R.splice(L,1),!0;let ae=ec(R,U=>!S.includes(U));return ae!==void 0?(R.splice(ae,1),!0):!1},f=y=>{if(u.has(y)){let v=y+1|0;for(;u.has(v);)v=v+1|0;return u.add(v),v}return u.add(y),y},p=(y,v)=>({turnId:r,itemId:rS(o,y),streamKind:v}),m=[];s.forEach(y=>{m.push({index:y.index,events:[[p(y.index,A3(y.kind)),O3(y)]]})}),i.forEach((y,v)=>{if(typeof y!="object"||y===null||Array.isArray(y))return;let S=Rt(y,"type");if(S!==void 0)switch(S){case"text":if(c("text",v))return;if(Ko(Rt(y,"text"))!==void 0){m.push({index:v,events:[[p(f(v),"assistant"),y]]});return}else return;case"thinking":if(c("thinking",v))return;if(Ko(Rt(y,"thinking"))!==void 0){m.push({index:v,events:[[p(f(v),"reasoning"),y]]});return}else return;case"tool_use":m.push({index:v,events:[[{turnId:r,itemId:T3(y,v),streamKind:"command_output"},y]]});return;default:return}});let h=i.some(y=>typeof y=="object"&&y!==null&&!Array.isArray(y)?de(Rt(y,"type"),"text"):!1),_=s.some(y=>y.kind==="Text"),g=h||_,b=Ko(Rt(t,"text"));return g||b===void 0||m.push({index:i.length,events:[[p(f(i.length),"assistant"),b]]}),m.toSorted((y,v)=>Xu(y.index,v.index)).flatMap(y=>y.events)}function E3(e){if(e!==void 0&&e!=="")return e}function P3(e,t){let r=Al(t,"event"),n=rI(e.usage,r),i=aI(e.identity,r),o={contents:!1};if(n!==void 0){let d=Ol(e);e.emitEvent({TAG:"UsageUpdated",turnId:d,usage:n}),o.contents=!0}let a=(d,u)=>G(i,c=>({turnId:Ol(e),itemId:rS(c,d),streamKind:u})),s=d=>{let u=d.index;if(u!==void 0&&typeof u=="number"&&isFinite(u)&&Math.round(u)===u)return u|0},l=k(r,d=>Rt(d,"type"));if(l!==void 0)switch(l){case"content_block_delta":let d=k(r,b=>Al(b,"delta")),u=k(r,s),c=(b,y)=>{let v=E3(y);if(u===void 0||v===void 0)return;let S=a(u,b);if(S!==void 0){S3(e,S,v),o.contents=!0;return}},f=k(d,b=>Rt(b,"type")),p=0;f==="thinking_delta"?c("reasoning",k(d,b=>Rt(b,"thinking"))):p=1,p===1&&c("assistant",k(d,b=>Rt(b,"text")));break;case"content_block_start":let m=k(r,b=>Al(b,"content_block")),h=k(r,s),_=(b,y,v)=>{let S=Ko(y);if(h===void 0||S===void 0)return;let A=a(h,b);if(A!==void 0){uS(e,A,v),o.contents=!0;return}},g=k(m,b=>Rt(b,"type"));if(g!==void 0)switch(g){case"text":_("assistant",k(m,b=>Rt(b,"text")),x(G(m,b=>b),null));break;case"thinking":_("reasoning",k(m,b=>Rt(b,"thinking")),x(G(m,b=>b),null));break}break}if(!o.contents)return es(e,"stream_event")}function R3(e,t){let r=Al(t,"message"),n=x(k(r,o=>sS(o,"content")),[]),i={contents:!1};if(n.forEach((o,a)=>{if(typeof o!="object"||o===null||Array.isArray(o)||!de(Rt(o,"type"),"tool_result"))return;let s=Ol(e),l=Rt(o,"tool_use_id"),d;if(l!==void 0)d=l;else{let u=Rt(o,"id");d=u!==void 0?u:"content-block-"+a.toString()}uS(e,{turnId:s,itemId:d,streamKind:"command_output"},o),i.contents=!0}),!i.contents)return es(e,"user")}function I3(e,t){lS(e,t),e.emitEvent({TAG:"TurnCompleted",turnId:t})}function $3(e,t,r){lS(e,t),e.emitEvent({TAG:"TurnInterrupted",turnId:t,reason:r})}function M3(e,t,r){lS(e,t),e.emitEvent({TAG:"TurnFailed",turnId:t,failure:r})}function j3(e,t){let r=k3(t);if(typeof r!="object"){if(r==="Success"){let i=Ol(e),o=Xv(t);return o!==void 0&&e.emitEvent({TAG:"UsageUpdated",turnId:i,usage:o}),I3(e,i)}let n=e.activeTurnId;return n!==void 0&&Cu(e,n)?$3(e,n,void 0):void 0}else{let n=Ol(e),i=Xv(t);return i!==void 0&&e.emitEvent({TAG:"UsageUpdated",turnId:n,usage:i}),M3(e,n,x3(Rt(t,"subtype"),r.reason))}}function wI(e,t){if(typeof t!="object"||t===null||Array.isArray(t))return;let r=v3(e,t),n=Rt(t,"type");if(n!==void 0)switch(n){case"assistant":C3(e,t).forEach(a=>{let s=a[0];return s.streamKind==="command_output"?dS(e,s):uS(e,s,a[1])});return;case"rate_limit_event":let i=uI(t);return i!==void 0?e.emitEvent({TAG:"RateLimitUpdated",rateLimit:i}):es(e,"rate_limit_event");case"result":return j3(e,t);case"stream_event":return P3(e,t);case"system":let o=Rt(t,"subtype");return o!==void 0?o==="init"?r?void 0:es(e,"system:init"):es(e,"system:"+o):es(e,"system");case"user":return R3(e,t);default:return es(e,n)}}var N3=["liveModelSwitch","liveEffortSwitch","sessionHistoryListing","slashCommandCatalog"];function Cl(e){let t=Sr(e);return t!==void 0?x(Er(ue(t)),"unknown error"):"unknown error"}function kI(e){if(e===void 0)return{TAG:"Ok",_0:void 0};switch(e){case"never":return{TAG:"Ok",_0:"bypassPermissions"};case"on-failure":return{TAG:"Ok",_0:"acceptEdits"};case"on-request":case"untrusted":return{TAG:"Ok",_0:"default"};default:return{TAG:"Error",_0:"unsupported Claude Code approval policy: "+e}}}function OI(e){let t=G(e,r=>r.trim().toLowerCase());if(t===void 0)return"EffortNotApplied";switch(t){case"default":return"ClearEffort";case"high":return{TAG:"SetEffort",_0:"high"};case"low":return{TAG:"SetEffort",_0:"low"};case"medium":return{TAG:"SetEffort",_0:"medium"};case"xhigh":return{TAG:"SetEffort",_0:"xhigh"};default:return"EffortNotApplied"}}function xI(e){let t=e.attachments.length,r;if(t!==0){let o={};o.type="text",o.text=e.text,r=[o].concat(e.attachments)}else r=e.text;let n={};n.role="user",n.content=r;let i={};return i.type="user",i.message=n,i.parent_tool_use_id=null,i}function G3(e,t,r){let n={};return n.tool_name=e,n.input=t,r!==void 0&&(n.suggestions=r),n}function F3(e,t){let r={};return r.behavior="allow",r.toolUseID=e,r.updatedInput=t,r}function CI(e,t){let r={};return r.behavior="deny",r.message=x(t,"denied by the approval bridge"),r.toolUseID=e,r}function TI(e){return{harnessSessionId:e.harnessSessionId,dispatchTurn:async t=>{if(e.stopped)return{TAG:"Error",_0:{fate:"transient_local",reason:"the session is stopped; no turn can be dispatched",providerDetail:void 0}};let r;if(t.model===e.currentModel)r={TAG:"Ok",_0:void 0};else try{await e.connection.setModel(t.model),e.currentModel=t.model,r={TAG:"Ok",_0:void 0}}catch(l){let d=ee(l);r={TAG:"Error",_0:{fate:"transient_local",reason:"setModel failed: "+Cl(d),providerDetail:void 0}}}if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=OI(t.reasoningEffort),i;if(typeof n!="object")if(n==="ClearEffort"&&qt(e.currentEffort))try{let l={};l.effortLevel=null,await e.connection.applyFlagSettings(l),e.currentEffort=void 0,i={TAG:"Ok",_0:void 0}}catch(l){let d=ee(l);i={TAG:"Error",_0:{fate:"transient_local",reason:"applyFlagSettings failed: "+Cl(d),providerDetail:void 0}}}else i={TAG:"Ok",_0:void 0};else{let l=n._0;if(nn(l,e.currentEffort))try{let d={};d.effortLevel=l,await e.connection.applyFlagSettings(d),e.currentEffort=l,i={TAG:"Ok",_0:void 0}}catch(d){let u=ee(d);i={TAG:"Error",_0:{fate:"transient_local",reason:"applyFlagSettings failed: "+Cl(u),providerDetail:void 0}}}else i={TAG:"Ok",_0:void 0}}if(i.TAG!=="Ok")return{TAG:"Error",_0:i._0};let o=()=>({turnId:SI(e.projector,e.harnessSessionId)});if(e.harnessSessionId===""){if(!e.input.push(xI(t.input)))return{TAG:"Error",_0:{fate:"transient_local",reason:"the streaming input is closed; no turn can be dispatched",providerDetail:void 0}};let l=await e.adoption;return l.TAG!=="Ok"?{TAG:"Error",_0:l._0}:(e.harnessSessionId=l._0,{TAG:"Ok",_0:o()})}let a=o();if(e.input.push(xI(t.input)))return{TAG:"Ok",_0:a};let s=ia(e.projector.pendingTurnIds,a.turnId);return s!==void 0&&e.projector.pendingTurnIds.splice(s,1),{TAG:"Error",_0:{fate:"transient_local",reason:"the streaming input is closed; no turn can be dispatched",providerDetail:void 0}}},steerTurn:(t,r)=>Promise.resolve({TAG:"Error",_0:{TAG:"NotSupported",capability:"midTurnSteer"}}),interruptTurn:async t=>{if(!bI(e.projector,t))return{TAG:"Ok",_0:void 0};try{return await e.connection.interrupt(),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:{fate:"transient_local",reason:"interrupt failed: "+Cl(n),providerDetail:void 0}}}},respondToApproval:(t,r)=>{let n=ec(e.pendingApprovals,a=>a.requestId===t),i=k(n,a=>e.pendingApprovals[a]);if(i===void 0)return Promise.resolve({TAG:"Error",_0:{fate:"deterministic",reason:"no unresolved approval request with id "+t,providerDetail:void 0}});n!==void 0&&e.pendingApprovals.splice(n,1);let o;if(r.TAG==="Approve"){let a=r.updatedInput;o=F3(t,a!==void 0?a:i.toolInput)}else o=CI(t,r.message);return i.resolveDecision(o),Promise.resolve({TAG:"Ok",_0:void 0})},injectContext:t=>Promise.resolve({TAG:"Error",_0:{TAG:"NotSupported",capability:"sessionContextInjection"}}),archiveSession:()=>Promise.resolve({TAG:"Error",_0:{TAG:"NotSupported",capability:"sessionArchiveRestore"}}),unarchiveSession:()=>Promise.resolve({TAG:"Error",_0:{TAG:"NotSupported",capability:"sessionArchiveRestore"}}),stopSession:()=>(e.stopped||(e.stopped=!0,e.input.close(),e.connection.close()),Promise.resolve())}}function AI(e,t,r,n,i){let o=TP(),a={contents:void 0},s=U=>{let B=a.contents;if(!(B!==void 0&&B.stopped))return i(U)},l={contents:void 0},d=new Promise((U,B)=>{l.contents=U}),u=U=>{let B=l.contents;if(B!==void 0)return l.contents=void 0,B(U)},c=yI(n,U=>u({TAG:"Ok",_0:U}),s),f=(U,B,oe)=>new Promise((Z,V)=>{let M=oe.toolUseID,N=a.contents;return N!==void 0?(N.pendingApprovals.push({requestId:M,toolInput:B,resolveDecision:Z}),s({TAG:"ApprovalRequested",request:{requestId:M,turnId:c.activeTurnId,kind:"canUseTool",summary:U,payload:G3(U,B,Dt(oe.suggestions))}})):Z(CI(M,"approval bridge not ready"))}),p=OI(t.reasoningEffort),m;m=typeof p!="object"?void 0:p._0;let h=e.env,_=Object.entries(t.environment).length,g,b=0;if(h!==void 0||_!==0?b=1:g=void 0,b===1){let U={};h!==void 0?Object.entries(h).forEach(B=>{U[B[0]]=B[1]}):Object.entries(process.env).forEach(B=>{U[B[0]]=B[1]}),Object.entries(t.environment).forEach(B=>{U[B[0]]=B[1]}),g=U}let y={};y.type="preset",y.preset="claude_code";let v={};v.type="preset",v.preset="claude_code";let S=t.developerInstructions;S!==void 0&&(v.append=S);let A;A=r==="bypassPermissions"?!0:void 0;let R=e.sdk.query({prompt:o.iterable,options:{cwd:t.cwd,model:t.model,persistSession:!0,includePartialMessages:!0,includeHookEvents:!0,tools:y,settingSources:["user","project","local"],systemPrompt:v,mcpServers:t.mcpServers,resume:n,permissionMode:r,allowDangerouslySkipPermissions:A,effort:m,env:g,canUseTool:f}}),W={harnessSessionId:x(n,""),currentModel:t.model,currentEffort:m,input:o,connection:R,projector:c,pendingApprovals:[],stopped:!1,diedReported:!1,adoption:d};a.contents=W;let L=U=>{if(!(W.stopped||W.diedReported))return W.diedReported=!0,e.audit("claude.sdk_stream_died",Object.fromEntries([["reason",U]])),s({TAG:"HarnessDied",failure:{fate:"transient_local",reason:U,providerDetail:void 0}})};return(async()=>{let U=!0;for(;U;){let B;try{B=await W.connection.next()}catch(oe){let Z=ee(oe);U=!1;let V="Claude Code SDK stream threw: "+Cl(Z);u({TAG:"Error",_0:{fate:"transient_local",reason:V,providerDetail:void 0}}),L(V),B=void 0}if(B!==void 0)if(B.done){U=!1;let oe=vI(W.projector)?"Claude Code stopped mid-turn: the SDK stream ended before the turn produced a final response. The turn was failed instead of being reported complete - retry the message to continue.":"Claude Code SDK stream ended while the session was idle";u({TAG:"Error",_0:{fate:"transient_local",reason:"Claude Code SDK stream ended before the session started",providerDetail:void 0}}),L(oe)}else wI(W.projector,B.value)}})(),{state:W,started:d}}function EI(e){let t=[];return{harness:"claude-code",capabilities:N3,startSession:async(i,o)=>{let a=kI(i.approvalPolicy);if(a.TAG!=="Ok")return{TAG:"Error",_0:{fate:"deterministic",reason:a._0,providerDetail:void 0}};let s=AI(e,i,a._0,void 0,o);return s.started.then(l=>{if(l.TAG==="Ok"){s.state.harnessSessionId=l._0;return}}),t.push(s.state),{TAG:"Ok",_0:TI(s.state)}},attachSession:async(i,o,a)=>{let s=kI(o.approvalPolicy);if(s.TAG!=="Ok")return{TAG:"Error",_0:{fate:"deterministic",reason:s._0,providerDetail:void 0}};let l={};l.dir=o.cwd;let d;try{let c=await e.sdk.getSessionInfo(i,l);d={TAG:"Ok",_0:qt(c==null?void 0:Ze(c))}}catch(c){let f=ee(c);d={TAG:"Error",_0:{fate:"transient_local",reason:"getSessionInfo failed: "+Cl(f),providerDetail:void 0}}}if(d.TAG!=="Ok")return{TAG:"Error",_0:d._0};if(!d._0)return{TAG:"Error",_0:{fate:"deterministic",reason:"Claude Code session "+i+" was not found for "+o.cwd,providerDetail:void 0}};let u=AI(e,o,s._0,i,a);return t.push(u.state),{TAG:"Ok",_0:TI(u.state)}},reap:()=>(t.forEach(i=>{if(!i.stopped)return i.stopped=!0,i.input.close(),i.connection.close()}),t.splice(0,t.length),Promise.resolve())}}import*as Ym from"node:path";function cS(e){switch(e){case"rescript":return"Rescript";case"ts":return"Ts";default:return}}function El(e){return e==="Ts"?"ts":"rescript"}function fS(e){return Ym.join(e,".linzumi","commanderImpl")}function PI(e){let t=Qt(e);if(t.TAG==="Ok")return cS(t._0.trim())}function RI(e,t){let r=e+".tmp."+process.pid.toString()+"."+oc(6);return he(Lt(Ym.dirname(e)),()=>{let n=he(Ti(r,El(t)+`
|
|
330
|
+
`),()=>li(r,e));return n.TAG==="Ok"?{TAG:"Ok",_0:void 0}:(pn(r),{TAG:"Error",_0:n._0})})}import*as Qm from"node:path";function $I(e,t){return e.LINZUMI_THREAD_RUNNER_ROLE==="thread"?"ThreadWorkerRole":t&&nn(e.LINZUMI_SUPERVISED,"1")?"SupervisorRole":"CommanderRole"}var L3=[["api-url","ValueFlag"],["linzumi-url","ValueFlag"],["cwd","ValueFlag"],["codex-bin","ValueFlag"],["workspace","ValueFlag"],["log-file","ValueFlag"],["debug-trace-dir","ValueFlag"],["debug-trace-content","ValueFlag"],["fast","BooleanFlag"],["allowed-cwd","ValueFlag"],["forward-port","ValueFlag"],["code-server-bin","ValueFlag"],["model","ValueFlag"],["reasoning-effort","ValueFlag"],["sandbox","ValueFlag"],["approval-policy","ValueFlag"],["model-provider","ValueFlag"],["llm-proxy-base-url","ValueFlag"],["vm-execution","BooleanFlag"],["execution-mode","ValueFlag"],["egress-mode","ValueFlag"],["project-public-id","ValueFlag"],["golden-image-id","ValueFlag"],["allow-port-forwarding-by-default","BooleanFlag"],["no-allow-port-forwarding-by-default","BooleanFlag"],["token","ValueFlag"]];function U3(e){let t={},r,n=0;for(;mn(r)&&n<e.length;){let o=e[n];if(o!==void 0)if(o.startsWith("--")){let a=o.slice(2,o.length),s=L3.find(l=>l[0]===a);if(s!==void 0)if(s[1]==="ValueFlag"){let l=e[n+1|0],d=0;l!==void 0&&!l.startsWith("--")?(t[a]={TAG:"FlagString",_0:l},n=n+2|0):d=1,d===1&&(r="missing value for --"+a)}else t[a]="FlagSet",n=n+1|0;else r="invalid flag: --"+a}else r="invalid argument: "+o;else n=n+1|0}let i=r;return i!==void 0?{TAG:"Error",_0:i}:{TAG:"Ok",_0:t}}function Rr(e,t){let r=e[t];if(r===void 0||typeof r!="object")return;let n=r._0;if(n.trim()!=="")return n}function Xm(e,t){let r=e[t];return r!==void 0?typeof r!="object":!1}var W3="use only one of --api-url or --linzumi-url";function Z3(e){let t=Rr(e,"api-url"),r=Rr(e,"linzumi-url");return t!==void 0?r!==void 0&&t!==r?{TAG:"Error",_0:W3}:{TAG:"Ok",_0:t}:{TAG:"Ok",_0:r}}function V3(e){return e!==void 0?e.split(",").map(t=>t.trim()).filter(t=>t!==""):[]}function H3(e){return"invalid --forward-port: "+e+" is not a TCP port"}function B3(e){if(e===void 0)return{TAG:"Ok",_0:[]};let t=[],r={contents:void 0};e.split(",").forEach(i=>{let o=i.trim();if(!(o!==""&&mn(r.contents)))return;let a=x(jn(o),NaN),s=!Ot(a)||a<1||a>65535,l=t.includes(a);if(s){r.contents=H3(o);return}else{if(l)return;t.push(a);return}});let n=r.contents;return n!==void 0?{TAG:"Error",_0:n}:{TAG:"Ok",_0:t.toSorted((i,o)=>i-o)}}function mS(e,t){let r=e==="~",n=e.startsWith("~/");return r?t:n?Qm.resolve(t,e.slice(2,e.length)):e}function K3(e){if(e===void 0)return!1;switch(e){case"ELOOP":case"ENOENT":case"ENOTDIR":return!0;default:return!1}}function J3(e,t){let r=[],n=[];e.forEach(o=>{let a=Qm.resolve(mS(o,t)),s=Dn(a);if(s.TAG!=="Ok"){K3(s._0.code)?n.push(o):r.push(a);return}let l=s._0;(l===a?[l]:[l,a]).forEach(d=>{r.push(d)})});let i=o=>{let a=new Set;return o.filter(s=>a.has(s)?!1:(a.add(s),!0))};return{allowed:i(r),missing:i(n)}}function Y3(e){return"invalid requested cwd: "+e+" does not exist"}function X3(e,t){let r=Qm.resolve(mS(e,t)),n=Dn(r);if(n.TAG!=="Ok")return{TAG:"Error",_0:Y3(e)};let i=n._0;return{TAG:"Ok",_0:i===r?[i]:[i,r]}}function MI(e){return"Warning: ignoring allowed cwd root "+e+`: it does not exist (dropped from this runner's advertised roots)
|
|
331
|
+
`}function pS(e){if(e!==void 0)switch(e){case"local_vm":return"local_vm";case"raw":return"raw";default:return}}function hS(e){if(e!==void 0)switch(e){case"hardened":return"hardened";case"open":return"open";default:return}}function II(e){if(e!==void 0&&e.trim()!=="")return e.trim()}function Q3(e){return"invalid --debug-trace-content: expected summary or full, got "+e}function eB(e){if(e===void 0)return{TAG:"Ok",_0:"summary"};switch(e){case"full":return{TAG:"Ok",_0:"full"};case"":case"summary":return{TAG:"Ok",_0:"summary"};default:return{TAG:"Error",_0:Q3(e)}}}var tB="thread runner is missing LINZUMI_THREAD_RUNNER_KANDAN_THREAD_ID",rB="thread runner is missing LINZUMI_THREAD_RUNNER_TOKEN";function nB(e){let t=e.LINZUMI_THREAD_RUNNER_KANDAN_THREAD_ID;return t!==void 0&&t.trim()!==""?{TAG:"Ok",_0:t}:{TAG:"Error",_0:tB}}function iB(e){let t=e.LINZUMI_THREAD_RUNNER_TOKEN;return t!==void 0&&t.trim()!==""?{TAG:"Ok",_0:t}:{TAG:"Error",_0:rB}}function oB(e){let t=e.LINZUMI_THREAD_RUNNER_AGENT_MCP_TOKEN;if(t!==void 0&&t.trim()!=="")return t.trim()}function aB(e){return"unsupported --model-provider: "+e}function sB(e){return"--model-provider "+e+" requires --llm-proxy-base-url"}function lB(e){return"--model-provider "+e+" requires the LINZUMI_LLM_PROXY_TOKEN env credential"}function dB(e,t){let r=Rr(e,"model-provider");if(r===void 0)return{TAG:"Ok",_0:void 0};if(r!=="wafer"&&r!=="openai-proxy")return{TAG:"Error",_0:aB(r)};let n=Rr(e,"llm-proxy-base-url");if(n===void 0)return{TAG:"Error",_0:sB(r)};let i=G(t.LINZUMI_LLM_PROXY_TOKEN,o=>o.trim());return i!==void 0&&i!==""?{TAG:"Ok",_0:{provider:r,llmProxyBaseUrl:n,llmProxyToken:i}}:{TAG:"Error",_0:lB(r)}}function jI(e,t){return he(U3(e),r=>{let n=Xm(r,"allow-port-forwarding-by-default"),i=Xm(r,"no-allow-port-forwarding-by-default");return he(n?i?{TAG:"Error",_0:"use only one of --allow-port-forwarding-by-default or --no-allow-port-forwarding-by-default"}:{TAG:"Ok",_0:!0}:i?{TAG:"Ok",_0:!1}:{TAG:"Ok",_0:!0},a=>he(Z3(r),s=>{let l=x(s,$s),d=t.resolveBaseCwd(mS(x(Rr(r,"cwd"),t.processCwd()),t.home)),c=r["allowed-cwd"]!==void 0?J3(V3(Rr(r,"allowed-cwd")),t.home):{allowed:[],missing:[]};c.missing.forEach(t.warnStaleRoot);let f=c.allowed,p=f.length!==0?{TAG:"Ok",_0:f}:X3(d,t.home);return he(p,m=>he(nB(t.env),h=>he(iB(t.env),_=>he(B3(Rr(r,"forward-port")),g=>he(dB(r,t.env),b=>{let y=Rr(r,"debug-trace-dir");return he(y!==void 0?wt(eB(Rr(r,"debug-trace-content")),v=>({dir:y,contentMode:v})):{TAG:"Ok",_0:void 0},v=>{let S=Rr(r,"codex-bin"),A=S!==void 0?{TAG:"Ok",_0:[S,void 0]}:wt(t.fallbackCodexBin(),R=>[R.codexBin,R.source]);return wt(A,R=>({options:{kandanUrl:l,token:_,cwd:d,codexBin:R[0],kandanThreadId:h,workspaceSlug:Rr(r,"workspace"),logFile:Rr(r,"log-file"),debugTrace:v,fast:Xm(r,"fast"),allowedCwds:m,allowedForwardPorts:g,codeServerBin:void 0,runtimeDefaults:{model:Rr(r,"model"),reasoningEffort:Rr(r,"reasoning-effort"),sandbox:Rr(r,"sandbox"),approvalPolicy:Rr(r,"approval-policy"),allowPortForwardingByDefault:a},codexModelProvider:b,vmExecution:Xm(r,"vm-execution"),executionMode:pS(Rr(r,"execution-mode")),egressMode:hS(Rr(r,"egress-mode")),projectPublicId:II(Rr(r,"project-public-id")),goldenImagePublicId:II(Rr(r,"golden-image-id")),linzumiAgentMcpToken:oB(t.env)},runnerId:"thread-codex-worker:"+h,missingAllowedCwds:c.missing,codexBinSource:R[1]}))})})))))}))})}var uB="thread Codex worker requires an IPC channel";async function zI(e,t){let r=t.ipc;if(r===void 0)return{TAG:"Error",_0:uB};let n=t.preflightFailure();if(n!==void 0){let l={};return l.kandanThreadId=e,l.reason=n.reason,l.message=n.message,t.log("runner.thread_worker_preflight_failed",l),t.writeStderr(n.message+`
|
|
332
332
|
`),{TAG:"Ok",_0:{TAG:"PreflightRefused",reason:n.reason,message:n.message}}}let i=await t.startAppServer();if(i.TAG!=="Ok")return{TAG:"Error",_0:i._0};let o=await t.connectClient();if(o.TAG!=="Ok")return{TAG:"Error",_0:o._0};let a=oR(o._0,r,t.log);if(a.TAG!=="Ok")return{TAG:"Error",_0:a._0};t.onSessionClosed(l=>{let d={};d.kandanThreadId=e,d.reason=l,t.log("runner.thread_codex_worker_session_closed",d);let u=r.send,c=r.isConnected();u!==void 0&&c&&u(eR(e,l)),t.stop()});let s=r.send;return s!==void 0&&s(QP(e,t.commanderManagedPorts())),await t.waitForStop(),t.stop(),{TAG:"Ok",_0:"Stopped"}}function gS(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function ti(e,t){let r=e[t];if(typeof r=="string")return r}function ts(e,t){let r=e[t];if(Array.isArray(r))return r}function Eu(e){return $e(e,t=>{if(typeof t!="object"||t===null||Array.isArray(t))return;if(ti(t,"type")==="text")return ti(t,"text")}).join(`
|
|
333
|
-
`)}function yS(e,t,r,n){return e+":"+t+":"+r+":"+n}function Pu(e,t){let r=t.split(":"),n=r[0],i=r[1],o=r[2];if(n===void 0||i===void 0||o===void 0||!(n===e&&i!==""&&o!==""&&r.length>=4))return;let a=r.slice(3,r.length).join(":");if(a!=="")return{keySessionId:i,keyTurnId:o,keyItemId:a}}function bS(e,t){return{threadId:e,threadTitle:void 0,nodes:t,hasMore:!1,cursor:void 0,budget:void 0,session:void 0}}var
|
|
333
|
+
`)}function yS(e,t,r,n){return e+":"+t+":"+r+":"+n}function Pu(e,t){let r=t.split(":"),n=r[0],i=r[1],o=r[2];if(n===void 0||i===void 0||o===void 0||!(n===e&&i!==""&&o!==""&&r.length>=4))return;let a=r.slice(3,r.length).join(":");if(a!=="")return{keySessionId:i,keyTurnId:o,keyItemId:a}}function bS(e,t){return{threadId:e,threadTitle:void 0,nodes:t,hasMore:!1,cursor:void 0,budget:void 0,session:void 0}}var ine="codex";function NI(e){return Math.ceil(e.length/4)}function tp(e){if(e===void 0||typeof e!="string")return;let t=e.trim();if(t!=="")return t}function cB(e){if(e!==void 0&&typeof e=="number"&&Ot(e))return e}function vS(e){let t=e.structured;if(typeof t=="object"&&t!==null&&!Array.isArray(t))return t}function Pl(e,t){return k(vS(e),r=>tp(r[t]))}function GI(e){return x(e.split(`
|
|
334
334
|
`)[0],e)}function FI(e,t){let r=Math.max(1e3,t*4)|0,n=e.body.trim();return n.length<=r?n:`[...truncated...]
|
|
335
|
-
`+n.slice(n.length-r|0)}function
|
|
336
|
-
[`+r.toString()+" attachment(s) in the original message]":t}function DI(e,t){return"linzumi_replay_"+e.seq.toString()+"_"+t.toString()}function
|
|
337
|
-
`+s:s,[d,u]}function
|
|
335
|
+
`+n.slice(n.length-r|0)}function fB(e,t){return e.length<=t?e:"[...truncated...]"+e.slice(e.length-t|0)}function mB(e){let t=vS(e);if(t===void 0)return[];let r=tp(t.path),n=t.paths,i,o=0;if(Array.isArray(n)?i=n:o=1,o===1){let s=t.files;i=s!==void 0?Array.isArray(s)?s:[]:[]}let a=$e(i,s=>{let l=tp(s);return l!==void 0?l:typeof s=="object"&&s!==null&&!Array.isArray(s)?tp(s.path):void 0});return r!==void 0?[r].concat(a):a}function pB(e){let t=new Set,r=new Set,n={contents:0};return e.forEach(i=>{if(i.kind==="error"&&(n.contents=n.contents+1|0),i.kind==="file_change"&&mB(i).forEach(a=>{t.add(a)}),i.kind!=="command_execution")return;let o=Pl(i,"command");if(o!==void 0){r.add(GI(o));return}}),{filesTouched:t.values().toArray().slice(0,100),commandsRun:r.values().toArray().slice(0,100),errorCount:n.contents}}function hB(e,t){let r=t>0?t:76800,n=e.filter(d=>d.kind!=="reasoning"),i=e.length-n.length|0,o=[],a=0,s=n.length-1|0,l=!1;for(;!l&&s>=0;){let d=n[s];if(d!==void 0){let u=NI(FI(d,r));o.length!==0&&a+u>r?l=!0:(a=a+u,o.unshift(d),s=s-1|0)}else s=s-1|0}return{tail:o,omittedNodeCount:n.length-o.length|0,redactedReasoningCount:i,artifacts:pB(e)}}function Ui(e,t){let r={};r.type="output_text",r.text=e;let n={};return n.type="message",n.role="assistant",n.content=[r],n.phase=t,n}function _B(e){return de(Pl(e,"phase"),"commentary")?"commentary":"final_answer"}function gB(e,t){let r=e.attachments.length;return r!==0?t+`
|
|
336
|
+
[`+r.toString()+" attachment(s) in the original message]":t}function DI(e,t){return"linzumi_replay_"+e.seq.toString()+"_"+t.toString()}function yB(e){let t=e.replace(/[^a-zA-Z0-9_-]/g,"_").slice(0,64);return t===""?"linzumi_replayed_tool":t}function bB(e,t,r){let n=DI(e,r),i=Pl(e,"command"),o=Pl(e,"cwd"),a=k(vS(e),c=>cB(c.exit_code)),s=x(Pl(e,"output"),t),l={};l.command=x(i,GI(t)),o!==void 0&&(l.cwd=o);let d={};d.type="function_call",d.name="shell",d.call_id=n,d.arguments=JSON.stringify(l);let u={};return u.type="function_call_output",u.call_id=n,u.output=a!==void 0?"exit_code="+a.toString()+`
|
|
337
|
+
`+s:s,[d,u]}function vB(e,t,r){let n=DI(e,r),i=yB(x(Pl(e,"title"),"linzumi_replayed_tool")),o={};o.replayed=!0;let a={};a.type="function_call",a.name=i,a.call_id=n,a.arguments=JSON.stringify(o);let s={};return s.type="function_call_output",s.call_id=n,s.output=t===""?"[result not recorded]":t,[a,s]}function SB(e,t){let r={};r.type="input_text",r.text=gB(e,t);let n={};return n.type="message",n.role="user",n.content=[r],n}function wB(e,t,r){let n=FI(e,t),i=e.kind;switch(i){case"agent_status":return[Ui("[status] "+n,"commentary")];case"approval_request":return[Ui("[approval] "+n,"commentary")];case"assistant_message":return[Ui(n,_B(e))];case"command_execution":return bB(e,n,r);case"error":return[Ui("[error] "+n,"commentary")];case"file_change":return[Ui(`[file change]
|
|
338
338
|
`+n,"commentary")];case"reasoning":return[];case"system_notice":return[Ui("[notice] "+n,"commentary")];case"terminal_input":return[Ui(`[terminal input]
|
|
339
|
-
`+n,"commentary")];case"tool_call":return
|
|
340
|
-
`+n,"commentary")];case"user_message":return[
|
|
341
|
-
`)}function qI(e,t,r,n){let i=t!==void 0?t.maxEmissionTokens:76800,o=
|
|
342
|
-
`+e.slice(e.length-t|0,e.length)}function
|
|
343
|
-
`)}function YI(e,t){let r=
|
|
344
|
-
`);if(i.length===0)return s;let l=o>0?"Prior transcript (last "+i.length.toString()+" user-visible messages verbatim; "+o.toString()+" earlier messages omitted):":"Prior transcript ("+i.length.toString()+" user-visible messages verbatim):",d=Math.max(1e3,(24e3-s.length|0)-l.length|0),u=HI(i.map(
|
|
339
|
+
`+n,"commentary")];case"tool_call":return vB(e,n,r);case"tool_result":return[Ui(`[tool result]
|
|
340
|
+
`+n,"commentary")];case"user_message":return[SB(e,n)];default:return[Ui("["+i+"] "+n,"commentary")]}}function kB(e,t,r,n){let i=e.trim(),o=r.artifacts,a=G(t,u=>u.trim()),s;s=a!==void 0?a===""?[]:["","Thread: "+a]:[];let l=["Rebuilt Linzumi coding session","","This session was rebuilt after an interrupted durable engine session: the previous engine session for this Linzumi thread could not be resumed"+(i===""?".":" ("+fB(i,400)+")."),n?"The durable server-side transcript could not be fetched or is empty - ask the user for any missing context instead of guessing.":"You are continuing the SAME task in the SAME Linzumi thread. The transcript below is replayed from the durable server-side record. Re-derive any local state (files, branches, running processes) from the workspace itself; do not assume in-memory state survived."].concat(s),d=[r.omittedNodeCount>0?[r.omittedNodeCount.toString()+" older transcript entries were omitted to fit the emission budget."]:[],r.redactedReasoningCount>0?[r.redactedReasoningCount.toString()+" reasoning entries were redacted (provider-private; never replayed)."]:[],o.filesTouched.length!==0?["Files touched: "+o.filesTouched.join(", ")]:[],o.commandsRun.length!==0?["Commands run: "+o.commandsRun.join("; ")]:[],o.errorCount>0?[o.errorCount.toString()+" error entries in the full history."]:[]].flat();return l.concat(d.length===0?[]:[""].concat(d)).join(`
|
|
341
|
+
`)}function qI(e,t,r,n){let i=t!==void 0?t.maxEmissionTokens:76800,o=hB(e,i),a=kB(r,n,o,o.tail.length===0),s=[Ui(a,"commentary")],l={contents:0};o.tail.forEach(u=>{l.contents=l.contents+1|0,wB(u,i,l.contents).forEach(c=>{s.push(c)})});let d=Ve(s,0,(u,c)=>u+NI(JSON.stringify(c)));return{items:s,emittedNodeCount:o.tail.length,omittedNodeCount:o.omittedNodeCount,redactedReasoningCount:o.redactedReasoningCount,emittedTokenEstimate:d,maxEmissionTokens:i}}function WI(e,t){return e!==void 0?t<=e:!1}function ZI(e,t,r){e.onAdvance(t,r),e.flush()}function UI(e){let t=Sr(e);if(t===void 0)return String(e);let r=ue(t),n=Er(r);return n!==void 0?n:String(r)}function VI(e,t,r,n,i){let o;try{o={TAG:"Ok",_0:t()}}catch(a){o={TAG:"Error",_0:ee(a)}}if(o.TAG==="Ok"){let a=o._0;if(a.TAG==="Returned")return r();zn(a._0.then(s=>r()),s=>{let l=G(i,u=>u(s)),d=0;return l!==void 0&&l!=="Withhold"?r():d=1,d===1&&n("kandan.control_ack_withheld_on_failure",Object.fromEntries([["controlType",e],["message",UI(s)]])),Promise.resolve()});return}n("kandan.control_handler_threw",Object.fromEntries([["controlType",e],["message",UI(o._0)]])),r()}function ho(e,t){return k(e[t],Tr)}function Jo(e,t){return k(e[t],ha)}function rp(e,t){return k(e[t],ke)}function BI(e,t){return k(e[t],Qi)}function KI(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e.status,r=e.response;if(t==="ok"&&typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function TB(e){let t=ke(e);if(t===void 0)return;let r=x(rp(t,"payload"),{}),n=ho(t,"body"),i;if(n!==void 0)i=n;else{let s=k(r.body,Tr);i=s!==void 0?s:k(r.text,Tr)}let o=Jo(t,"seq");if(o===void 0||i===void 0)return;let a=x(rp(t,"actor"),{});return{seq:o,messageType:x(ho(t,"type"),"thread.message"),actorKind:x(k(a.kind,Tr),"unknown"),actorSlug:k(a.slug,Tr),actorUserId:Jo(t,"actor_user_id"),body:i,payload:r}}function AB(e){return e!==void 0?Array.isArray(e)?$e(e,TB):[]:[]}async function JI(e,t,r,n){let i=r.workspace,o=r.channel,a=r.threadId;if(i===void 0)return[];if(o===void 0)return[];if(a===void 0)return[];let s=Object.fromEntries([["workspace",i],["channel",o],["thread_id",a]]),l=await e(t,"session:thread_context",s);if(l.TAG==="Ok"){let d=l._0,u=KI(d);return u!==void 0?AB(u.messages):(n("kandan.reconnect_thread_context_fetch_failed",Object.fromEntries([["thread_id",a],["reply",JSON.stringify(d).slice(0,300)]])),[])}return n("kandan.reconnect_thread_context_fetch_failed",Object.fromEntries([["thread_id",a],["message",l._0]])),[]}function HI(e,t){return e.length<=t?e:`[...truncated...]
|
|
342
|
+
`+e.slice(e.length-t|0,e.length)}function OB(e){return k(k(k(k(k(k(e.metadata,ke),t=>t.local_codex_runner),ke),t=>t.event_type),Tr),t=>{if(t.trim()!=="")return t.trim()})}var CB=[/^Runner port \d+ is open in (Kandan|Linzumi):/,/^.+ on port \d+ is ready in Linzumi\. \[Open\]\(/];function EB(e){let t=e.body.trim();return t.startsWith("Codex reconnected.")||t.startsWith("[codex reconnected")||t.startsWith("Codex is ready.")?!0:CB.some(r=>r.test(t))}function PB(e){return e.filter(t=>{let r=t.body.trim(),n=OB(t.payload);return r!==""&&t.actorKind!=="system"&&(n===void 0||n==="codex_output")?!EB(t):!1})}function RB(e){let t=e.actorSlug,r=t!==void 0&&t.trim()!==""?t:e.actorKind,n=e.actorUserId,i=n!==void 0?n.toString():"unknown";return["Linzumi durable message seq="+e.seq.toString()+" from "+r+" (kind="+e.actorKind+", user_id="+i+"):","",e.body].join(`
|
|
343
|
+
`)}function YI(e,t){let r=PB(e),n=Math.max(0,r.length-12|0),i=r.slice(n,r.length),o=r.length-i.length|0,a=HI(t.trim(),400),s=["Rebuilt Linzumi coding session","","This session was rebuilt after an interrupted durable engine session: the previous engine session for this Linzumi thread could not be resumed"+(a===""?".":" ("+a+")."),"You are continuing the SAME task in the SAME Linzumi thread. The durable server-side transcript "+(i.length===0?"could not be fetched, so no prior transcript is included - ask the user for any missing context instead of guessing.":"follows to restore your working context. Re-derive any local state (files, branches, running processes) from the workspace itself; do not assume in-memory state survived."),""].join(`
|
|
344
|
+
`);if(i.length===0)return s;let l=o>0?"Prior transcript (last "+i.length.toString()+" user-visible messages verbatim; "+o.toString()+" earlier messages omitted):":"Prior transcript ("+i.length.toString()+" user-visible messages verbatim):",d=Math.max(1e3,(24e3-s.length|0)-l.length|0),u=HI(i.map(RB).join(`
|
|
345
345
|
|
|
346
346
|
---
|
|
347
347
|
|
|
348
348
|
`),d);return[s,l,u].join(`
|
|
349
|
-
`)}function XI(e){return{kind:e.kind,seq:e.seq,at:e.at,harness:e.harness,body:e.body,structured:G(e.structured,t=>t),actor:G(e.actor,t=>t),attachments:e.attachments,sourceSeq:e.sourceSeq,streamKey:e.streamKey}}function QI(e){return{model:e.model,contextWindow:e.contextWindow,maxEmissionTokens:e.maxEmissionTokens}}function RB(e){let t=ke(e);if(t===void 0)return;let r=ho(t,"kind"),n=Jo(t,"seq");if(r!==void 0&&n!==void 0)return{kind:r,seq:n,at:ho(t,"at"),harness:x(ho(t,"engine"),"none"),body:x(ho(t,"body"),""),structured:rp(t,"structured"),actor:rp(t,"actor"),attachments:x(BI(t,"attachments"),[]),sourceSeq:Jo(t,"source_seq"),streamKey:ho(t,"stream_key")}}function IB(e){let t=ke(e);if(t===void 0)return;let r=Jo(t,"context_window"),n=Jo(t,"max_emission_tokens");if(r!==void 0&&n!==void 0&&n>0)return{model:ho(t,"model"),contextWindow:r,maxEmissionTokens:n}}function $B(e){let t=Jo(e,"ir_version"),r=BI(e,"nodes");if(t===void 0||r===void 0)return;let n=e.has_more,i;return i=n===!0,{threadTitle:ho(e,"thread_title"),nodes:$e(r,RB),hasMore:i,cursor:Jo(e,"cursor"),budget:k(e.budget,IB)}}async function e$(e,t,r,n){let i=r.workspace,o=r.channel,a=r.threadId;if(i===void 0||o===void 0||a===void 0)return;let s=[],l,d,u,c=0,f=0,p;for(;mn(p)&&f<20;){let h={};h.workspace=i,h.channel=o,h.thread_id=a;let _=u;_!==void 0&&(h.cursor=_);let b=await e(t,"session:thread_transcript",h);if(b.TAG==="Ok"){let y=b._0,v=KI(y);if(v!==void 0){let S=$B(v);if(S!==void 0){l=cs(l,S.budget),d=cs(d,S.threadTitle),s=S.nodes.concat(s),c=c+Ve(S.nodes,0,(W,L)=>L.kind==="reasoning"?W:W+L.body.length);let A=l,R=A!==void 0?c/4>=A.maxEmissionTokens:!1;!S.hasMore||mn(S.cursor)||R?p=Ze({nodes:s,budget:l,threadTitle:d}):(u=S.cursor,f=f+1|0)}else p=Ze(f===0?void 0:{nodes:s,budget:l,threadTitle:d})}else n("kandan.reconnect_thread_transcript_fetch_failed",Object.fromEntries([["thread_id",a],["page",f],["reply",JSON.stringify(y).slice(0,300)]])),p=Ze(f===0?void 0:{nodes:s,budget:l,threadTitle:d})}else n("kandan.reconnect_thread_transcript_fetch_failed",Object.fromEntries([["thread_id",a],["message",b._0]])),p=Ze(void 0)}let m=p;return m!==void 0?ue(m):{nodes:s,budget:l,threadTitle:d}}function MB(e,t){return"Codex "+e+" did not reply within "+t.toString()+"ms (start request timed out)"}function wS(e,t,r,n){return t<=0?n:new Promise((i,o)=>{let a=e.setTimer(()=>i({TAG:"Error",_0:MB(r,t)}),t);n.then(s=>(e.clearTimer(a),i(s),Promise.resolve()))})}function SS(e){return e==="ResumeArchived"?"resume_archived":"forced_inject_not_found"}var jB="the server marked the durable engine session dead after an acknowledged-but-unexecuted turn";async function t$(e,t,r,n,i,o){let a={};a.threadId=n,Object.entries(i).forEach(m=>{a[m[0]]=m[1]});let s=a,l=(m,h)=>wS(t,r,m,e(m,h)),d=async(m,h)=>{o.log("kandan.reconnect_thread_unarchive_started",Object.fromEntries([["codex_thread_id",n],["discovered_by",SS(m)],["message",h]]));let g=await(async()=>{let v=await l("thread/unarchive",Object.fromEntries([["threadId",n]]));if(v.TAG!=="Ok")return{TAG:"Error",_0:v._0};let S=v._0;if(S.TAG!=="ResultReply")return{TAG:"Error",_0:"thread/unarchive failed: "+S.message};let A=await l("thread/resume",s);if(A.TAG!=="Ok")return{TAG:"Error",_0:A._0};let R=A._0;return R.TAG==="ResultReply"?{TAG:"Ok",_0:void 0}:{TAG:"Error",_0:"thread/resume after unarchive failed: "+R.message}})();if(g.TAG==="Ok")return o.log("kandan.reconnect_thread_unarchive_resumed",Object.fromEntries([["codex_thread_id",n],["discovered_by",SS(m)]])),{TAG:"Ok",_0:"Resumed"};let b=g._0;o.log("kandan.reconnect_thread_unarchive_failed",Object.fromEntries([["codex_thread_id",n],["discovered_by",SS(m)],["archive_error",h],["message",b]]));let y;return y=m==="ResumeArchived"?b:"thread/inject_items failed: "+h+"; archive recovery failed: "+b,{TAG:"Error",_0:{message:y}}},u=async m=>{o.log(o.forceRehydrate?"kandan.reconnect_thread_rehydrate_forced":"kandan.reconnect_thread_resume_failed",Object.fromEntries([["codex_thread_id",n],["message",m],["forced",o.forceRehydrate],["rehydrating",!0]]));let h=await(async()=>{let g=o.buildRehydrationItems,b;if(g!==void 0){let L=await g(m);L.TAG==="Ok"?b=L._0:(o.log("kandan.reconnect_thread_rehydration_items_failed",Object.fromEntries([["codex_thread_id",n],["message",L._0]])),b=void 0)}else b=void 0;let y,v=0;if(b!==void 0&&b.length!==0?y={TAG:"Ok",_0:b.slice()}:v=1,v===1){let L=await o.buildRehydrationText(m);y=L.TAG==="Ok"?{TAG:"Ok",_0:[Object.fromEntries([["type","agentMessage"],["text",L._0]])]}:{TAG:"Error",_0:L._0}}if(y.TAG!=="Ok")return{TAG:"Error",_0:y._0};let S=await l("thread/inject_items",Object.fromEntries([["threadId",n],["items",y._0]]));if(S.TAG!=="Ok")return{TAG:"Error",_0:S._0};let A=S._0;if(A.TAG==="ResultReply"){let L=await l("thread/resume",s);if(L.TAG!=="Ok")return{TAG:"Error",_0:L._0};let ae=L._0;return ae.TAG==="ResultReply"?{TAG:"Ok",_0:void 0}:{TAG:"Error",_0:"rehydrated thread/resume failed: "+ae.message}}let R=A.message;if(!(o.forceRehydrate&&GP(R)))return{TAG:"Error",_0:"thread/inject_items failed: "+R};let W=await d("ForcedInjectNotFound",R);return W.TAG==="Ok"?{TAG:"Ok",_0:W._0}:{TAG:"Error",_0:W._0.message}})();if(h.TAG==="Ok"){let g=h._0;return g!==void 0?{TAG:"Ok",_0:g}:(o.log("kandan.reconnect_thread_rehydrated",Object.fromEntries([["codex_thread_id",n],["resume_failure",m]])),{TAG:"Ok",_0:{TAG:"Rehydrated",resumeFailure:m}})}let _=h._0;return o.log("kandan.reconnect_thread_rehydration_failed",Object.fromEntries([["codex_thread_id",n],["resume_failure",m],["rehydration_failure",_]])),{TAG:"Error",_0:{message:"could not resume this thread's engine session ("+m+") and rebuilding a fresh session from the thread transcript also failed ("+_+")"}}};if(o.forceRehydrate)return await u(jB);let c=await l("thread/resume",s);if(c.TAG!=="Ok")return{TAG:"Error",_0:{message:c._0}};let f=c._0;if(f.TAG==="ResultReply")return{TAG:"Ok",_0:"Resumed"};let p=f.message;return NP(p)?await d("ResumeArchived",p):await u(p)}var GB=G0(e=>({joinRef:e.item(0,hh(At)),ref:e.item(1,hh(At)),topic:e.item(2,At),event:e.item(3,At),payload:e.item(4,M0)}));function r$(e){return Is(e,GB)}function ip(e){let t=Sr(e);return t!==void 0?x(Er(ue(t)),"unknown error"):"unknown error"}function DB(e){let t=k(Sr(e),r=>Ow(r));return t!==void 0?t:null}function ri(e){return e.TAG==="Transport"?e._0.message:e.message}function qB(e,t){return{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"TimeoutReason",message:"phoenix push timed out after "+e.toString()+"ms waiting for connection: "+t}}}function LB(e,t){return{TAG:"Transport",_0:{phase:"Reply",reason:"TimeoutReason",message:"phoenix push timed out after "+e.toString()+"ms: "+t}}}function o$(e){return e.TAG==="Transport"?e._0.phase==="WaitForConnection":!1}function a$(e){return{initial:t=>e.initial(t),onAdvance:(t,r)=>e.onAdvance(t,r),reset:(t,r)=>e.reset(t,r)}}function s$(e){return{current:t=>e.current(),adopt:(t,r)=>e.adopt(t,r)}}var UB="base64url.bearer.phx.";function WB(e){let t;t=typeof e=="object"&&e!==null&&!Array.isArray(e)?zm(e):e;let r=JSON.stringify(t);return r.length<=400?r:r.slice(0,400)+"\u2026"}var ZB=new RegExp("/$");function VB(e){let t=Ln(e);if(t===void 0)return{TAG:"Error",_0:"Invalid URL"};let r=ue(t);switch(r.protocol){case"http:":r.protocol="ws:";break;case"https:":r.protocol="wss:";break}return r.pathname=r.pathname.replace(ZB,"")+"/socket/websocket",r.searchParams.set("vsn","2.0.0"),{TAG:"Ok",_0:r.toString()}}function HB(e){return[UB+Fw(e),"phoenix"]}var l$="[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?<![\\uD800-\\uDBFF])[\\uDC00-\\uDFFF]",Ru=new RegExp(l$),Iu=new RegExp(l$,"g"),$u="\uFFFD";function kS(e){if(Array.isArray(e))return e.some(kS);if(e===null)return!1;switch(typeof e){case"string":return Ru.test(e);case"object":return Object.entries(e).some(t=>Ru.test(t[0])?!0:kS(t[1]));default:return!1}}function xS(e){if(Array.isArray(e))return e.map(xS);if(e===null)return e;switch(typeof e){case"string":return e.replace(Iu,$u);case"object":return Object.fromEntries(Object.entries(e).map(t=>[t[0].replace(Iu,$u),xS(t[1])]));default:return e}}function BB(e){return Object.entries(e).some(t=>Ru.test(t[0])?!0:kS(t[1]))}function KB(e){return Object.fromEntries(Object.entries(e).map(t=>[t[0].replace(Iu,$u),xS(t[1])]))}function JB(e,t,r){return Ru.test(e)||Ru.test(t)?!0:BB(r)}function YB(e,t,r){return{frameTopic:e.replace(Iu,$u),frameEvent:t.replace(Iu,$u),framePayload:KB(r)}}function n$(e){let t=r=>r!==void 0?r:null;return JSON.stringify([t(e.joinRef),t(e.ref),e.topic,e.event,e.payload])}function XB(e){let t;try{t={TAG:"Ok",_0:JSON.parse(e)}}catch(n){let i=ee(n);t={TAG:"Error",_0:ip(i)}}if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=r$(t._0);return r.TAG==="Ok"?{TAG:"Ok",_0:r._0}:{TAG:"Error",_0:"invalid Phoenix frame"}}function d$(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function ap(e,t){return k(e,r=>{let n=r[t];if(typeof n=="object"&&n!==null&&!Array.isArray(n))return n})}function Rl(e,t){return k(e,r=>{let n=r[t];if(typeof n=="string")return n})}function np(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e.status,r=e.response;if(t==="ok"&&typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function QB(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?nn(e.status,"ok"):!1}function eK(e){return typeof e!="object"||e===null||Array.isArray(e)?!1:typeof e.type=="string"}function op(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&Ot(r))return r}function i$(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return op(e,"control_seq")}function tK(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e.event,r=e.payload;if(t===void 0||typeof t!="string"||r===void 0||typeof r!="object"||r===null||Array.isArray(r))return;let n=e.control_seq;return n!==void 0?typeof n=="number"&&Ot(n)?{event:t,payload:r,controlSeq:n}:void 0:{event:t,payload:r,controlSeq:void 0}}var rK="npm install -g @linzumi/cli@latest",nK=new RegExp("^npm install -g @linzumi\\/cli(@[0-9A-Za-z^~.-]{1,32})?$"),iK=new RegExp("^\\d+\\.\\d+\\.\\d+(?:[-+][0-9A-Za-z.-]{1,32})?$");function oK(e){return e!==void 0&&typeof e=="string"&&e.length<=100&&nK.test(e)?e:rK}function aK(e){return e!==void 0&&typeof e=="string"&&e.length<=64&&iK.test(e)?"@linzumi/cli "+e+" or newer":"a newer @linzumi/cli"}function TS(e){let t=d$(e),r=ap(t,"response"),n=Rl(r,"error");if(n!==void 0)return n;let i=Rl(r,"reason");if(i!==void 0)return i;let o=Rl(r,"message");if(o!==void 0)return o;let a=Rl(t,"error");return t!==void 0?a!==void 0?a:"unknown":"invalid reply"}function sK(e){let t=ap(d$(e),"response");if(t===void 0||!de(t.error,"commander_version_too_old"))return TS(e);let r=aK(t.min_version),n=oK(t.upgrade_command);return"commander_version_too_old: this Linzumi server requires "+r+". Update with: "+n}function lK(e){let t=e;if(Rl(t,"agent_provider")==="claude-code")return"claude-code-sdk";let n=ap(t,"metadata"),i=ap(n,"local_codex_runner");return Rl(i,"agent_provider")==="claude-code"?"claude-code-sdk":"codex-app-server"}function dK(e,t){let r;try{r=e.initial(t)}catch{r=void 0}if(r!==void 0&&Ot(r)&&r>=0)return r}function uK(e,t){if(e===void 0)return;let r;try{r=e.current(t)}catch{r=void 0}if(r!==void 0&&r!=="")return r}async function u$(e,t,r,n){let i=n!==void 0?n:{},o=r!==void 0?r:Gm,a;a=t.TAG==="Token"?t._0:void 0;let s={contents:a},l=()=>{if(t.TAG==="Token")return{TAG:"Ok",_0:t._0};let w;try{w=t._0()}catch{w=void 0}if(w!==void 0&&w.trim()!=="")return s.contents=w,{TAG:"Ok",_0:w};let C=s.contents;return C!==void 0?{TAG:"Ok",_0:C}:{TAG:"Error",_0:{TAG:"Failed",message:"phoenix token provider returned no usable token"}}},d=i.onOperatorNotice,u=d!==void 0?d:w=>{console.error(w)},c=i.auditEvent,f=c!==void 0?c:(w,C)=>{},p=i.onPushRecorded,m=p!==void 0?p:w=>{},h=x(i.pushTimeoutMs,3e4),_=i.controlCursorStore,g=i.controlEpochStore,b={},y={},v={},S={},A={},R={},W={},L={},ae=new Set,U={contents:1},B=[],oe=[],Z=[],V=[],M={nextRef:1,websocket:void 0,closed:!1,connected:!1,hasEverConnected:!1,connectionGeneration:0,ready:Promise.resolve({TAG:"Ok",_0:void 0}),settleReady:void 0,reconnectTimer:void 0,reconnectAttempts:0,backoffResetTimer:void 0,heartbeatTimer:void 0,connectedAt:void 0},N=w=>{let C=Object.entries(b);C.forEach(P=>fr(b,P[0])),C.forEach(P=>{let I=P[1];clearTimeout(I.timer),I.settle({TAG:"Error",_0:w})})},j=()=>{if(M.settleReady!==void 0)return;let C={contents:void 0};M.ready=new Promise((P,I)=>{C.contents=P}),M.settleReady=C.contents},re=()=>{let w=M.settleReady;w!==void 0&&w({TAG:"Ok",_0:void 0}),M.settleReady=void 0},se=w=>{let C=M.settleReady;C!==void 0&&C({TAG:"Error",_0:w}),M.settleReady=void 0},Ae=()=>{let w=M.heartbeatTimer;if(w!==void 0){clearInterval(ue(w)),M.heartbeatTimer=void 0;return}},Ue=()=>{let w=M.backoffResetTimer;if(w!==void 0){clearTimeout(ue(w)),M.backoffResetTimer=void 0;return}},Ge=w=>{M.closed=!0;let C=M.reconnectTimer;C!==void 0&&(clearTimeout(ue(C)),M.reconnectTimer=void 0),Ae(),Ue();let P=M.websocket;P!==void 0&&P.close(),se(w),N({TAG:"Transport",_0:{phase:"Reply",reason:"ClientClosed",message:"phoenix client closed"}})},ut=w=>x(L[w],0),ze=w=>{fr(S,w),fr(A,w),fr(R,w),fr(W,w),L[w]=ut(w)+1|0},pt=(w,C)=>{let P=S[w];if(P!==void 0){if(C===P+1){let D=P+1,ie=A[w];if(ie!==void 0)for(;ie.has(D+1);)D=D+1,ie.delete(D);S[w]=D;return}let I=A[w],F;if(I!==void 0)F=I;else{let D=new Set;A[w]=D,F=D}F.add(C);return}S[w]=C},Xe=(w,C)=>{let P=i$(C);if(P===void 0)return!0;let I=S[w],F=I!==void 0?P<=I:!1,D=A[w],ie=D!==void 0?D.has(P):!1;return F||ie?!1:(pt(w,P),!0)},He=(w,C)=>{if(_!==void 0)try{return _.onAdvance(w,C)}catch{return}},It=(w,C)=>{if(!w.startsWith("local_runner:"))return;let P=op(C,"control_high_water");if(P===void 0)return;let I=S[w];if(I!==void 0&&P<I){ze(w);let F=0;if(_===void 0)return;let D=_.reset;if(D===void 0)return;try{return D(w,F)}catch{return}}},Cr=(w,C)=>{let P=w.startsWith("local_runner:");if(g===void 0||!P)return!1;let I=C.control_epoch;if(I===void 0||typeof I!="string"||I==="")return!1;let F;try{F=g.adopt(w,I)}catch{F=!1}return F&&ze(w),F},Ut=w=>{let C=S[w];if(C!==void 0)return C;if(_===void 0)return;let P=dK(_,w);return P!==void 0?(S[w]=P,P):0},Qe=new Set,q=(w,C,P,I)=>{try{let F=!1;if(w.startsWith("local_runner:")&&C==="control"&&eK(I)){let D;if(Xe(w,I)){let ie=i$(I);if(ie!==void 0){let Se=R[w],Ce;if(Se!==void 0)Ce=Se;else{let Ie=new Set;R[w]=Ie,Ce=Ie}Ce.add(ie)}let pe=ut(w),Fe=ie!==void 0?()=>{if(pe!==ut(w))return;let Se=R[w];Se!==void 0&&Se.delete(ie);let Ce=W[w];Ce!==void 0&&ie<=Ce||(W[w]=ie);let Ie=k(Se,Wt=>Ve(Wt.values().toArray(),void 0,(zt,br)=>zt!==void 0&&zt<=br?zt:br)),ft=Ie!==void 0?Ie-1:W[w];if(ft===void 0)return;let Pe=S[w],Oe=Pe!==void 0&&Pe<ft?Pe:ft;He(w,Oe)}:()=>{};B.forEach(Se=>Se(I,Fe)),D=!1}else D=!0;F=D}if(!F&&P===void 0&&C!=="phx_reply"&&C!=="phx_error"){oe.forEach(D=>D(w,C,I));return}else return}catch(F){let D=ee(F),ie=ip(D);try{f("phoenix.pushed_frame_dispatch_failed",Object.fromEntries([["topic",w],["frame",C],["message",ie],["stack",DB(D)],["payloadSnippet",WB(I)],["dropped",!0]]))}catch{}if(Qe.has(C))return;Qe.add(C);try{return u('linzumi: dropped a pushed "'+C+'" frame on '+w+" whose dispatch failed ("+ie+"); see the CLI audit log for the payload snippet.")}catch{return}}},Ee=(w,C)=>{let P=S[w],I={contents:P!==void 0&&P>=C?P:C},F=A[w];if(F!==void 0)for(F.values().toArray().forEach(D=>{if(D<=I.contents){F.delete(D);return}});F.has(I.contents+1);)I.contents=I.contents+1,F.delete(I.contents);S[w]=I.contents},ve=w=>{let C=S[w];if(C===void 0)return;let P=R[w],I=P!==void 0&&P.size>0?G(Ve(P.values().toArray(),void 0,(F,D)=>F!==void 0&&F<=D?F:D),F=>F-1):void 0;He(w,I!==void 0&&I<C?I:C)},_e=(w,C)=>{if(w.startsWith("chat:")){let P=C.events;return P===void 0?{TAG:"Ok",_0:void 0}:P===null?{TAG:"Ok",_0:void 0}:Array.isArray(P)?(P.forEach(I=>{oe.forEach(F=>F(w,"event",I))}),{TAG:"Ok",_0:void 0}):{TAG:"Error",_0:"phoenix rejoin returned invalid events for "+w}}else{if(!w.startsWith("local_runner:"))return{TAG:"Ok",_0:void 0};let P=C.controls;if(P===void 0)return{TAG:"Ok",_0:void 0};if(P===null)return{TAG:"Ok",_0:void 0};if(!Array.isArray(P))return{TAG:"Error",_0:"phoenix rejoin returned invalid controls for "+w};P.forEach(F=>{let D=tK(F);if(D===void 0)return;let ie={};Object.entries(D.payload).forEach(Fe=>{ie[Fe[0]]=Fe[1]}),ie.replayed=!0;let pe=D.controlSeq;pe!==void 0&&(ie.control_seq=pe),q(w,D.event,void 0,ie)});let I=op(C,"controls_advance_to");if(I!==void 0){let F=C.control_high_water;typeof F=="number"&&I>F||Ee(w,I)}return ve(w),{TAG:"Ok",_0:void 0}}},Be=(w,C,P,I,F)=>{let D=M.websocket;if(D===void 0)return Promise.resolve({TAG:"Error",_0:{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"SocketNotOpen",message:"phoenix websocket is not open"}}});if(D.readyState()!==Xa)return Promise.resolve({TAG:"Error",_0:{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"SocketNotOpen",message:"phoenix websocket is not open"}}});let ie=M.nextRef.toString();M.nextRef=M.nextRef+1|0,C==="phx_join"&&(v[w]=ie);let pe=C==="phx_join"?ie:v[w],Fe=jm(P),Se;if(JB(w,C,Fe)){let gr=YB(w,C,Fe);f("phoenix.outbound_frame_lone_surrogate_sanitized",Object.fromEntries([["purpose","phoenix.send_totality"],["topic",gr.frameTopic],["frame_event",gr.frameEvent]])),Se=gr}else Se={frameTopic:w,frameEvent:C,framePayload:Fe};let Ce=Se.framePayload,Ie=ie,ft=Se.frameTopic,Pe=Se.frameEvent,zt=n$({joinRef:pe,ref:Ie,topic:ft,event:Pe,payload:Ce}),br=Math.max(0,Math.ceil(I))|0;return new Promise((gr,or)=>{let Nt=setTimeout(()=>{if(b[ie]!==void 0)return fr(b,ie),gr({TAG:"Error",_0:LB(br,C)})},br);b[ie]={event:C,timer:Nt,settle:gr};try{m({provider:lK(Ce),rawFrameText:zt,topic:w,event:C,payload:Ce})}catch{}let ar;try{ar={TAG:"Ok",_0:D.send(zt)}}catch(Gt){let Ft=ee(Gt);ar={TAG:"Error",_0:ip(Ft)}}return ar.TAG==="Ok"?F!==void 0?F():void 0:gr({TAG:"Error",_0:{TAG:"Failed",message:ar._0}})})},Jt=(w,C)=>{let P={};if(C.forEach(I=>{Object.entries(I).forEach(F=>{let D=F[1],ie=F[0],pe=ie==="last_seq",Fe=P[ie];if(pe&&typeof Fe=="number"&&typeof D=="number"){P[ie]=D<Fe?D:Fe;return}if(Fe===void 0){P[ie]=D;return}})}),w.startsWith("local_runner:")){let I=Ut(w);I!==void 0&&(P.last_control_seq=I);let F=uK(g,w);F!==void 0&&(P.last_control_epoch=F)}return P},fn=w=>Object.entries(w).map(C=>C[1].payload()),ki=async w=>{let C=0,P=0,I=!0;for(;I;){let F=y[w];if(F!==void 0){let D=Ut(w),ie=await Be(w,"phx_join",Jt(w,fn(F)),h,void 0);if(C=C+1|0,ie.TAG==="Ok"){let pe=np(ie._0);if(pe!==void 0){let Fe=pe.controls,Se=Array.isArray(Fe)?Fe.length:0;P=P+Se|0;let Ce=de(pe.controls_truncated,!0),Ie=Ut(w),ft;if(Ce){let Pe=op(pe,"control_high_water");ft=Pe!==void 0&&Ie!==void 0?Pe-Ie>0?Pe-Ie:0:void 0}else ft=0;if(f("phoenix.control_backlog_fetch_progress",Object.fromEntries([["topic",w],["fetches",C],["fetched",P],["remaining_estimate",ft!==void 0?ft:null],["truncated",Ce]])),Ce)if(de(Ie,D)){let Pe=Ie!==void 0?Ie.toString():"undefined";u("phoenix.control_backlog_fetch_stalled topic="+w+" fetches="+C.toString()+" fetched="+P.toString()+" cursor="+Pe+"; a truncated reply made no cursor progress - stopping this fetch loop (a server paging bug; the next reconnect resumes from the watermark)"),I=!1}else{if(C%20===0){let Oe=ft!==void 0?ft.toString():"unknown";u("phoenix.control_backlog_cap_exceeded topic="+w+" fetches="+C.toString()+" fetched="+P.toString()+" remaining_estimate="+Oe+"; continuing the paginated backlog fetch (a healthy connection never reconnects, so nothing is deferred)")}await new Promise((Oe,Wt)=>{setImmediate(()=>Oe())})}else I=!1}else I=!1}else I=!1}else I=!1}},Fn=w=>{if(!ae.has(w)){ae.add(w),zn(ki(w).then(()=>{ae.delete(w)}),C=>(ae.delete(w),Promise.resolve()));return}},ii={},Vr=async()=>{Object.entries(ii).forEach(F=>fr(ii,F[0]));let w=Object.entries(y),C,P=0;for(;C===void 0&&P<w.length;){let F=w[P];if(F!==void 0){let D=F[0],ie=await Be(D,"phx_join",Jt(D,fn(F[1])),h,void 0);if(ie.TAG==="Ok"){let pe=np(ie._0);pe!==void 0?ii[D]=pe:C={TAG:"Failed",message:"phoenix rejoin failed for "+D}}else C=ie._0}P=P+1|0}let I=C;return I!==void 0?{TAG:"Error",_0:I}:{TAG:"Ok",_0:void 0}},_o={contents:()=>Promise.resolve()},ra=()=>{let w=M.closed,C=M.reconnectTimer;if(w||C!==void 0)return;j();let P=Math.min(1e4,250*2**M.reconnectAttempts);M.reconnectAttempts=M.reconnectAttempts+1|0,M.reconnectTimer=Ze(setTimeout(()=>{M.reconnectTimer=void 0,_o.contents()},Math.random()*P|0))},tn=(w,C,P)=>{let I=M.connected,F=M.connectedAt;M.connectedAt=void 0,M.connected=!1;let D=M.websocket;if(M.websocket=void 0,Ae(),Ue(),D!==void 0&&(D.readyState()===CP||D.readyState()===Xa))try{D.close()}catch{}if(N(w),ra(),!I)return;let ie;ie=P!==void 0&&P!==""?P:void 0;let pe=G(F,Ce=>Math.max(0,Date.now()-Ce)),Fe=M.reconnectAttempts,Se={closeCode:C,closeReason:ie,previousSessionDurationMs:pe,reconnectCount:Fe};V.forEach(Ce=>{try{return Ce(Se)}catch{return}})},H=()=>{Ae(),M.heartbeatTimer=Ze(setInterval(()=>{let w=M.websocket;if(w===void 0||w.readyState()!==Xa)return;let C=M.nextRef.toString();M.nextRef=M.nextRef+1|0;let F={joinRef:void 0,ref:C,topic:"phoenix",event:"heartbeat",payload:{}};try{return w.send(n$(F))}catch{return}},3e4))},te=()=>{Ue();let w=setTimeout(()=>{if(M.backoffResetTimer=void 0,M.connected){M.reconnectAttempts=0;return}},3e4);w.unref(),M.backoffResetTimer=Ze(w)},ne=(w,C)=>new Promise((P,I)=>{let F={contents:void 0},D=ie=>{let pe=F.contents;pe!==void 0&&(clearTimeout(ue(pe)),F.contents=void 0),P(ie)};w.on("SocketOpen",ie=>D({TAG:"Ok",_0:void 0})),w.on("SocketError",ie=>D({TAG:"Error",_0:"websocket open failed"})),w.on("SocketClose",ie=>D({TAG:"Error",_0:"websocket closed before open"})),F.contents=Ze(setTimeout(()=>{F.contents=void 0,D({TAG:"Error",_0:"websocket open timed out after "+C.toString()+"ms"})},C))}),Ke=async()=>{if(M.closed)return;let w=l(),C=VB(e),P;if(w.TAG==="Ok")if(C.TAG==="Ok"){let D;try{D={TAG:"Ok",_0:o(C._0,HB(w._0))}}catch(ie){let pe=ee(ie);D={TAG:"Error",_0:{TAG:"Failed",message:ip(pe)}}}P=D.TAG==="Ok"?{TAG:"Ok",_0:D._0}:{TAG:"Error",_0:D._0}}else P={TAG:"Error",_0:{TAG:"Failed",message:C._0}};else P={TAG:"Error",_0:w._0};if(P.TAG==="Ok"){let D=P._0;M.websocket=D,D.on("SocketMessage",Pe=>{let Oe=M.websocket;if(Oe!==void 0&&Oe===D){let Wt=XB(x(Pe.data,"undefined"));if(Wt.TAG==="Ok"){let zt=Wt._0,br=zt.payload,gr=zt.event,or=zt.topic,Nt=zt.ref;if(Nt!==void 0&&(gr==="phx_reply"||gr==="phx_error")){let Gt=b[Nt];if(Gt!==void 0){fr(b,Nt),clearTimeout(Gt.timer);let Ft=gr==="phx_error",vr=QB(br)&&Gt.event!=="phx_join";if(Ft)Gt.settle({TAG:"Error",_0:{TAG:"Failed",message:"phoenix push failed"}});else if(vr)Gt.settle({TAG:"Error",_0:{TAG:"Failed",message:"phoenix push failed: "+TS(br)}});else{let Hr=y[or],oi=np(br),ai;if(Hr!==void 0&&oi!==void 0&&Gt.event==="phx_join"){let Bl=Cr(or,oi);It(or,oi);let Kl=Bl?{TAG:"Ok",_0:void 0}:_e(or,oi);Kl.TAG==="Ok"?(or.startsWith("local_runner:")&&(de(oi.controls_truncated,!0)||Bl)&&Fn(or),ai=!1):(Gt.settle({TAG:"Error",_0:{TAG:"Failed",message:Kl._0}}),ai=!0)}else ai=!1;ai||Gt.settle({TAG:"Ok",_0:br})}}}return q(or,gr,Nt,br)}else return f("phoenix.frame_decode_failed",Object.fromEntries([["message",Wt._0],["dropped",!0]]))}}),D.on("SocketClose",Pe=>{let Oe=M.websocket;if(Oe!==void 0&&Oe===D)return tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},Pe.code,Pe.reason)}),D.on("SocketError",Pe=>{let Oe=M.websocket;if(Oe!==void 0&&Oe===D)return tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},void 0,void 0)});let ie=await ne(D,h),pe=()=>{if(M.closed)return!0;let Pe=M.websocket;return Pe!==void 0?Pe!==D:!1},Fe;if(ie.TAG==="Ok")if(pe())Fe={TAG:"Ok",_0:!1};else{M.connectionGeneration=M.connectionGeneration+1|0;let Pe=await Vr();Fe=Pe.TAG==="Ok"?pe()?{TAG:"Ok",_0:!1}:{TAG:"Ok",_0:!0}:{TAG:"Error",_0:Pe._0}}else Fe={TAG:"Error",_0:{TAG:"Failed",message:ie._0}};if(Fe.TAG==="Ok"){if(!Fe._0||(M.connected=!0,M.connectedAt=Date.now(),M.hasEverConnected=!0,te(),H(),re(),M.connectionGeneration<=1))return;let Pe={};Object.entries(ii).forEach(Wt=>{Pe[Wt[0]]=Wt[1]});let Oe={contents:!1};return Z.forEach(Wt=>{if(Oe.contents)return;let zt;try{zt={TAG:"Ok",_0:Wt(Pe)}}catch{zt={TAG:"Error",_0:void 0}}if(zt.TAG!=="Ok"){Oe.contents=!0;return}zn(zt._0,br=>Promise.resolve())}),Oe.contents&&!M.closed?tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket reconnect failed"}},void 0,void 0):void 0}let Se=M.websocket,Ce=Se!==void 0?Se!==D:!1,Ie=M.closed||Ce,ft=M.hasEverConnected;return Ie?void 0:ft?tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket reconnect failed"}},void 0,void 0):Ge(Fe._0)}let I=M.closed,F=M.hasEverConnected;if(!I)return F?tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket reconnect failed"}},void 0,void 0):Ge(P._0)};_o.contents=Ke;let tt=(w,C)=>{let P=M.ready;return new Promise((I,F)=>{let D=setTimeout(()=>I({TAG:"Error",_0:qB(h,w)}),Math.max(0,C-Date.now())|0);P.then(ie=>{clearTimeout(D),I(ie)})})},at=async(w,C,P,I)=>{let F=Date.now()+h,D=await tt(C,F);return D.TAG==="Ok"?await Be(w,C,P,F-Date.now(),I):{TAG:"Error",_0:D._0}},ct=async(w,C,P)=>{let I=P.registrationId,F;if(I!==void 0)F=I;else{let zt="join-registration-"+U.contents.toString();U.contents=U.contents+1|0,F=zt}let D=y[w],ie=D!==void 0?fn(D):[],pe=await at(w,"phx_join",Jt(w,ie.concat([C])),void 0);if(pe.TAG!=="Ok")return{TAG:"Error",_0:pe._0};let Fe=pe._0,Se=np(Fe);if(Se===void 0)return{TAG:"Error",_0:{TAG:"Failed",message:"phoenix join failed: "+sK(Fe)}};let Ce=y[w],Ie=Ce!==void 0?Ce:{},ft=Object.entries(Ie).length===0,Pe=P.rejoinPayload;if(Ie[F]={payload:Pe!==void 0?Pe:()=>C},y[w]=Ie,!(ft&&w.startsWith("local_runner:")))return{TAG:"Ok",_0:Se};let Oe=Cr(w,Se);It(w,Se);let Wt=Oe?{TAG:"Ok",_0:void 0}:_e(w,Se);return Wt.TAG!=="Ok"?{TAG:"Error",_0:{TAG:"Failed",message:Wt._0}}:((de(Se.controls_truncated,!0)||Oe)&&Fn(w),{TAG:"Ok",_0:Se})},J={join:(w,C,P)=>ct(w,C,x(P,{rejoinPayload:void 0,registrationId:void 0})),unregisterJoin:(w,C)=>{let P=y[w];if(!(P===void 0||(fr(P,C),Object.entries(P).length!==0)))return fr(y,w),fr(v,w)},push:at,pushIfConnected:(w,C,P)=>M.connected?Be(w,C,P,h,void 0):Promise.resolve({TAG:"Error",_0:{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"NotConnected",message:"phoenix client is not connected"}}}),onControl:w=>{B.push(w)},onEvent:w=>{oe.push(w)},onReconnect:w=>{Z.push(w)},onDisconnect:w=>{V.push(w)},forceReconnect:w=>M.closed||!M.connected?!1:(tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},void 0,x(w,"forced_stale_reconnect")),!0),hardReset:w=>{if(M.closed)return!1;tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},void 0,x(w,"hard_reset"));let C=M.reconnectTimer;return C!==void 0&&(clearTimeout(ue(C)),M.reconnectTimer=void 0),Ke(),!0},close:()=>Ge({TAG:"Transport",_0:{phase:"WaitForConnection",reason:"ClientClosed",message:"phoenix client closed"}})};j(),Ke();let K=await M.ready;return K.TAG==="Ok"?{TAG:"Ok",_0:J}:{TAG:"Error",_0:K._0}}function cK(e){let t=e.toLowerCase();return t.startsWith("gpt-")||t.startsWith("o1")||t.startsWith("o3")||t.startsWith("o4")||t.startsWith("o5")?!0:t.startsWith("codex")}function c$(e){let t=G(e,r=>r.trim());if(t!==void 0)switch(t){case"":case"default":return;case"fable-5":return"claude-fable-5";case"haiku":return"haiku";case"opus":return"opus";case"sonnet":return"sonnet";default:return cK(t)?"sonnet":t}}function Mu(e,t,r,n){let i=e.sourceSeq;if(i===void 0)return Promise.resolve();let o={};return o.workspace=e.workspace,o.channel=e.channel,o.thread_id=e.threadId,o.seq=i,o.status=t,r!==void 0&&(o.reason=r),n!==void 0&&(o.codex_thread_id=n),o.agent_provider="claude-code",e.pushEvent("message_state",o)}function f$(e){return{cwd:e.cwd,model:x(c$(e.model),""),reasoningEffort:void 0,developerInstructions:void 0,approvalPolicy:e.approvalPolicy,sandboxPolicy:e.sandbox,environment:{},mcpServers:G(e.mcp,t=>t.servers)}}var fK=["If you create files that should be attached back to Kandan, end your assistant response with:","Kandan attachments:","- relative/or/absolute/path/to/file","Only attach non-hidden files with common document, image, text, patch, archive, or video extensions."];function m$(e){return[e,""].concat(fK).join(`
|
|
350
|
-
`)}function p$(e){return{model:x(c$(e.model),""),reasoningEffort:void 0,input:{text:m$(e.workDescription),attachments:[]}}}var OS={contents:0};function mK(){let e=Date.now()*1e3,t=OS.contents>=e?OS.contents+1:e;return OS.contents=t,t}function sp(e,t,r,n){let i={};i.workspace=e.workspace,i.channel=e.channel,i.thread_id=e.threadId,i.cwd=e.cwd,i.sessionId=t,i.subkey="root",i.sequence=mK(),i.entryType=r,i.payload=n,e.pushEvent("claude_session_store_append",i)}function h$(e,t){return r=>{switch(e.log("claude_code.session_event",Object.fromEntries([["thread_id",e.threadId],["kind",Nm(r)]])),r.TAG){case"SessionStarted":let n=r.harnessSessionId;t.contents=n;let i=e.sourceSeq;return sp(e,n,"session_started",Object.fromEntries([["prompt",m$(e.workDescription)],["threadId",e.threadId],["rootSeq",i!==void 0?i:null]]));case"ItemCompleted":let o=r.item;if(o.streamKind!=="assistant")return;let a=t.contents;return a!==void 0?sp(e,a,"assistant_message",Object.fromEntries([["itemKey",o.itemId],["body",r.content]])):void 0;case"TurnCompleted":let s=t.contents;s!==void 0&&(sp(e,s,"turn_completed",{}),sp(e,s,"session_completed",{})),Mu(e,"processed",void 0,t.contents);return;case"TurnFailed":Mu(e,"failed",r.failure.reason,t.contents);return;case"TurnInterrupted":Mu(e,"interrupted","Claude Code interrupted by Linzumi",t.contents);return;case"HarnessDied":Mu(e,"failed",r.failure.reason,t.contents);return;default:return}}}function _$(e,t){let r={};return r.workspace=e.workspace,r.channel=e.channel,r.thread_id=e.threadId,r.codex_thread_id=t,r.agent_provider="claude-code",e.pushEvent("session:bind",r)}function g$(e,t){return Mu(e,"processing","starting turn",t)}function rs(e){let t=e.mcp;if(t!==void 0)return t.cleanup()}async function y$(e){let t={contents:void 0};e.log("claude_code.turn_starting",Object.fromEntries([["linzumi_thread_id",e.threadId],["claude_session_id",null],["body_preview",e.workDescription.slice(0,120)],["message_received_at_ms",Date.now()]]));let r={contents:void 0},n=new Promise((l,d)=>{r.contents=l}),i=l=>{let d=r.contents;if(d!==void 0)return r.contents=void 0,d(l)},o=h$(e,t),a=l=>{switch(l.TAG){case"SessionStarted":i({TAG:"Ok",_0:l.harnessSessionId});break;case"TurnFailed":i({TAG:"Error",_0:l.failure.reason});break;case"HarnessDied":i({TAG:"Error",_0:l.failure.reason});break}o(l)},s=await e.adapter.startSession(f$(e),a);if(s.TAG==="Ok"){let l=s._0,d=await l.dispatchTurn(p$(e));if(d.TAG==="Ok"){let u=await n;if(u.TAG==="Ok"){let c=u._0;return t.contents=c,await _$(e,c),await g$(e,c),{TAG:"Ok",_0:{harnessSessionId:c,session:l,stop:async()=>(await l.stopSession(),rs(e))}}}return await l.stopSession(),rs(e),{TAG:"Error",_0:u._0}}return await l.stopSession(),rs(e),{TAG:"Error",_0:d._0.reason}}return rs(e),{TAG:"Error",_0:s._0.reason}}async function b$(e,t){let r={contents:t},n=await e.adapter.attachSession(t,f$(e),h$(e,r));if(n.TAG==="Ok"){let i=n._0;await _$(e,i.harnessSessionId);let o=await i.dispatchTurn(p$(e));return o.TAG==="Ok"?(await g$(e,i.harnessSessionId),{TAG:"Ok",_0:{harnessSessionId:i.harnessSessionId,session:i,stop:async()=>(await i.stopSession(),rs(e))}}):(await i.stopSession(),rs(e),{TAG:"Error",_0:o._0.reason})}return rs(e),{TAG:"Error",_0:n._0.reason}}var ene=10*6e4;function hK(e,t){let r=setTimeout(e,t);return r.unref(),r}function _K(e){clearTimeout(e)}var ju={setTimer:hK,clearTimer:_K};var yK=["deterministic","transient_upstream","transient_local","rate_limited","needs_approval","needs_decision"],v$=Oc(yK);function lp(e){switch(e){case"deterministic":return"deterministic";case"needs_approval":return"needs_approval";case"needs_decision":return"needs_decision";case"rate_limited":return"rate_limited";case"transient_local":return"transient_local";case"transient_upstream":return"transient_upstream";default:return}}function bK(e){if(typeof e=="object")return"recover";switch(e){case"HoldUntilResetPolicy":return"hold_until_reset";case"RedImmediatelyPolicy":return"red_immediately";case"NeverLaddersPolicy":return"never_ladders"}}function ES(e){let t=e.transpiledItemCount,r=e.redactedReasoningCount,n=(t!==void 0?" items="+t.toString():"")+(r!==void 0?" redacted="+r.toString():"");return"user_switch "+e.sourceHarness+"->"+e.targetHarness+" model="+x(e.model,"unspecified")+n}function RS(e){let t={};t.exportable=e.transpileFeasibility.exportable,t.target_adapter_available=e.transpileFeasibility.targetAdapterAvailable;let r={};r.available=e.available,r.source_harness=e.sourceHarness,r.target_harness=e.targetHarness;let n=e.model;return n!==void 0&&(r.model=n),r.transpile_feasibility=t,r.offer_reason=e.offerReason,r}function S$(e){switch(e){case"deterministic":return"RedImmediatelyPolicy";case"transient_upstream":return{TAG:"RecoverPolicy",rungs:[{rung:"in_place_resume",maxAttempts:2}]};case"transient_local":return{TAG:"RecoverPolicy",rungs:[{rung:"redispatch",maxAttempts:1},{rung:"worker_rebuild",maxAttempts:1}]};case"rate_limited":return"HoldUntilResetPolicy";case"needs_approval":case"needs_decision":return"NeverLaddersPolicy"}}var vK=15*6e4,SK=30*6e4;function CS(e,t){let r=G(e,i=>i.trim());if(r===void 0||r==="")return t;let n=Number(r);return isFinite(n)&&n>0?Math.floor(n):t}function zu(e){return{maxRecoveryRungs:CS(e.LINZUMI_FATE_LADDER_MAX_RECOVERY_RUNGS,4),maxLadderMs:CS(e.LINZUMI_FATE_LADDER_BUDGET_MS,vK),maxRateLimitHoldMs:CS(e.LINZUMI_FATE_LADDER_MAX_HOLD_MS,SK)}}function wK(e){if(typeof e=="object")return e._0;switch(e){case"ClassificationStep":return"classification";case"HoldStep":return"hold";case"UserSwitchStep":return"user_cross_harness_switch"}}function IS(e,t){return{fate:e,startedAtMs:t,rungCursor:0,cursorAttempts:0,recoveryRungsAttempted:0,holdCommitted:!1,holdDispatched:!1,userSwitchInvoked:!1,entries:[],historyTruncated:!1}}function en(e,t){return e.entries.length>=16?e.historyTruncated?e:{fate:e.fate,startedAtMs:e.startedAtMs,rungCursor:e.rungCursor,cursorAttempts:e.cursorAttempts,recoveryRungsAttempted:e.recoveryRungsAttempted,holdCommitted:e.holdCommitted,holdDispatched:e.holdDispatched,userSwitchInvoked:e.userSwitchInvoked,entries:e.entries,historyTruncated:!0}:{fate:e.fate,startedAtMs:e.startedAtMs,rungCursor:e.rungCursor,cursorAttempts:e.cursorAttempts,recoveryRungsAttempted:e.recoveryRungsAttempted,holdCommitted:e.holdCommitted,holdDispatched:e.holdDispatched,userSwitchInvoked:e.userSwitchInvoked,entries:e.entries.concat([t]),historyTruncated:e.historyTruncated}}function kK(e){switch(e){case"budget_rungs_exhausted":case"budget_wall_clock_exhausted":case"rungs_exhausted":case"grant_unavailable":return!0;default:return!1}}function w$(e,t,r){if(e!=="transient_local"||r===void 0||!(r.backendDead&&kK(t)))return;let n=r.exportable&&r.targetAdapterAvailable,i=n?"the "+r.sourceHarness+" harness backend died and automatic recovery is exhausted; this job can continue on "+r.targetHarness+" if the user chooses to switch":r.exportable?"the "+r.sourceHarness+" harness backend died and automatic recovery is exhausted, but the "+r.targetHarness+" harness is not available on this machine":"the "+r.sourceHarness+" harness backend died and automatic recovery is exhausted, but no recorded harness activity is exportable to carry over";return{available:n,sourceHarness:r.sourceHarness,targetHarness:r.targetHarness,model:r.model,transpileFeasibility:{exportable:r.exportable,targetAdapterAvailable:r.targetAdapterAvailable},offerReason:i}}function xK(e,t){switch(t){case"in_place_resume":return e.inPlaceResume;case"redispatch":return e.redispatch;case"worker_rebuild":return e.workerRebuild}}function k$(e){let t=e.grants,r=e.breaker,n=e.budgets,i=e.nowMs,o=e.fate;if(o===void 0)return{TAG:"Stand",cause:"no_fate"};let a=S$(o),s=e.run,l=s!==void 0?s:IS(o,i);if(typeof a!="object")switch(a){case"HoldUntilResetPolicy":if(l.holdCommitted)return{TAG:"Red",cause:"hold_already_committed",run:en(l,{rung:"HoldStep",outcome:"rungs_exhausted",atMs:i,detail:"the one hold-and-dispatch was already spent",resetAtMs:void 0})};let d=e.rateLimitResetAtMs,u=0;if(d!==void 0&&d>i){if(d-i>n.maxRateLimitHoldMs){let p=Math.round((d-i)/1e3).toString(),m=Math.round(n.maxRateLimitHoldMs/1e3).toString();return{TAG:"Red",cause:"hold_unavailable_reset_beyond_bound",run:en(l,{rung:"HoldStep",outcome:"hold_unavailable_reset_beyond_bound",atMs:i,detail:"reset is "+p+"s away, beyond the "+m+"s hold budget",resetAtMs:d})}}let c=r(o,i),f=0;if(typeof c!="object")f=2;else{let p=c.reason;return{TAG:"BreakerHold",reason:p,run:en(l,{rung:"HoldStep",outcome:"breaker_held",atMs:i,detail:p,resetAtMs:void 0})}}if(f===2)return{TAG:"HoldUntilReset",resetAtMs:d,run:en({fate:l.fate,startedAtMs:l.startedAtMs,rungCursor:l.rungCursor,cursorAttempts:l.cursorAttempts,recoveryRungsAttempted:l.recoveryRungsAttempted,holdCommitted:!0,holdDispatched:l.holdDispatched,userSwitchInvoked:l.userSwitchInvoked,entries:l.entries,historyTruncated:l.historyTruncated},{rung:"HoldStep",outcome:"held",atMs:i,detail:void 0,resetAtMs:d})}}else u=1;if(u===1){if(!t.inPlaceResume)return{TAG:"Red",cause:"hold_unavailable_no_reset",run:en(l,{rung:"HoldStep",outcome:"hold_unavailable_no_reset",atMs:i,detail:"no known rate-limit reset timestamp",resetAtMs:void 0})};let c=r(o,i),f=0;if(typeof c!="object")f=2;else{let p=c.reason;return{TAG:"BreakerHold",reason:p,run:en(l,{rung:{TAG:"RungStep",_0:"in_place_resume"},outcome:"breaker_held",atMs:i,detail:p,resetAtMs:void 0})}}if(f===2){if(l.recoveryRungsAttempted<n.maxRecoveryRungs)return{TAG:"ExecuteRung",rung:"in_place_resume",run:en({fate:l.fate,startedAtMs:l.startedAtMs,rungCursor:l.rungCursor,cursorAttempts:l.cursorAttempts,recoveryRungsAttempted:l.recoveryRungsAttempted+1|0,holdCommitted:l.holdCommitted,holdDispatched:l.holdDispatched,userSwitchInvoked:l.userSwitchInvoked,entries:l.entries,historyTruncated:l.historyTruncated},{rung:{TAG:"RungStep",_0:"in_place_resume"},outcome:"attempted",atMs:i,detail:"reducer-granted bounded retry (transient-evidence carve-out; no known reset to hold for)",resetAtMs:void 0})};let p=l.recoveryRungsAttempted.toString(),m=n.maxRecoveryRungs.toString();return{TAG:"Red",cause:"budget_rungs_exhausted",run:en(l,{rung:"ClassificationStep",outcome:"budget_rungs_exhausted",atMs:i,detail:p+" recovery rungs attempted (budget "+m+")",resetAtMs:void 0})}}}break;case"RedImmediatelyPolicy":return{TAG:"Red",cause:"deterministic_by_design",run:en(l,{rung:"ClassificationStep",outcome:"no_rungs_by_design",atMs:i,detail:"classification: deterministic, no rungs attempted by design",resetAtMs:void 0})};case"NeverLaddersPolicy":return{TAG:"Stand",cause:"never_ladders"}}else{let d=a.rungs;if(l.recoveryRungsAttempted>=n.maxRecoveryRungs){let _=l.recoveryRungsAttempted.toString(),g=n.maxRecoveryRungs.toString();return{TAG:"Red",cause:"budget_rungs_exhausted",run:en(l,{rung:"ClassificationStep",outcome:"budget_rungs_exhausted",atMs:i,detail:_+" recovery rungs attempted (budget "+g+")",resetAtMs:void 0})}}if(i-l.startedAtMs>n.maxLadderMs){let _=Math.round((i-l.startedAtMs)/1e3).toString(),g=Math.round(n.maxLadderMs/1e3).toString();return{TAG:"Red",cause:"budget_wall_clock_exhausted",run:en(l,{rung:"ClassificationStep",outcome:"budget_wall_clock_exhausted",atMs:i,detail:"ladder open "+_+"s (budget "+g+"s)",resetAtMs:void 0})}}let u=l.rungCursor,c=l.cursorAttempts,f=!1,p=d[u];for(;(()=>{let _=p;return _!==void 0?c>=_.maxAttempts:!1})();)u=u+1|0,c=0,p=d[u];for(;(()=>{let _=p;return _!==void 0?!xK(t,_.rung):!1})();)f=!0,u=u+1|0,c=0,p=d[u];let m=p;if(m===void 0)return{TAG:"Red",cause:f?"grant_unavailable":"rungs_exhausted",run:en(l,{rung:"ClassificationStep",outcome:f?"grant_unavailable":"rungs_exhausted",atMs:i,detail:f?"no executable recovery rung in this session context":"every recovery rung for this fate was already attempted",resetAtMs:void 0})};let h=r(o,i);if(typeof h=="object"){let _=h.reason;return{TAG:"BreakerHold",reason:_,run:en(l,{rung:{TAG:"RungStep",_0:m.rung},outcome:"breaker_held",atMs:i,detail:_,resetAtMs:void 0})}}return{TAG:"ExecuteRung",rung:m.rung,run:en({fate:l.fate,startedAtMs:l.startedAtMs,rungCursor:u,cursorAttempts:c+1|0,recoveryRungsAttempted:l.recoveryRungsAttempted+1|0,holdCommitted:l.holdCommitted,holdDispatched:l.holdDispatched,userSwitchInvoked:l.userSwitchInvoked,entries:l.entries,historyTruncated:l.historyTruncated},{rung:{TAG:"RungStep",_0:m.rung},outcome:"attempted",atMs:i,detail:void 0,resetAtMs:void 0})}}}function x$(e,t,r){return e.userSwitchInvoked?{TAG:"Error",_0:"the one user-invoked cross-harness switch for this turn was already spent"}:{TAG:"Ok",_0:en({fate:e.fate,startedAtMs:e.startedAtMs,rungCursor:e.rungCursor,cursorAttempts:e.cursorAttempts,recoveryRungsAttempted:e.recoveryRungsAttempted,holdCommitted:e.holdCommitted,holdDispatched:e.holdDispatched,userSwitchInvoked:!0,entries:e.entries,historyTruncated:e.historyTruncated},{rung:"UserSwitchStep",outcome:"switch_invoked",atMs:t,detail:ES(r),resetAtMs:void 0,userSwitch:r})}}function $S(e,t,r,n,i){let o;switch(t){case"switch_dispatched":o="switch_dispatched";break;case"switch_failed":o="switch_failed";break;case"switch_refused":o="switch_refused";break}return en(e,{rung:"UserSwitchStep",outcome:o,atMs:r,detail:i!==void 0?ES(n)+" - "+i:ES(n),resetAtMs:void 0,userSwitch:n})}function dp(e,t,r,n){let i=n!==void 0?ue(n):void 0,o=S$(t),a=c=>{let f={};f.rung=wK(c.rung),f.outcome=c.outcome,f.at_ms=c.atMs;let p=c.detail;p!==void 0&&(f.detail=p.slice(0,200));let m=c.resetAtMs;m!==void 0&&(f.reset_at_ms=m);let h=c.userSwitch;if(h!==void 0){f.source_harness=h.sourceHarness,f.target_harness=h.targetHarness;let _=h.model;_!==void 0&&(f.model=_);let g=h.transpiledItemCount;g!==void 0&&(f.transpiled_item_count=g);let b=h.redactedReasoningCount;b!==void 0&&(f.redacted_reasoning_count=b)}return f},s=e!==void 0?e.entries.slice(0,16).map(a):[],l={};l.fate=t,l.policy=bK(o),l.recovery_rungs_attempted=e!==void 0?e.recoveryRungsAttempted:0;let d={};d.max_recovery_rungs=r.maxRecoveryRungs,d.max_ladder_ms=r.maxLadderMs,d.max_rate_limit_hold_ms=r.maxRateLimitHoldMs,l.budget=d,e!==void 0&&e.historyTruncated&&(l.history_truncated=!0),i!==void 0&&(l.failover_offer=RS(i));let u;if(u=t==="deterministic"?s.length===0:!1,u){let c={};c.rung="classification",c.outcome="no_rungs_by_design",c.at_ms=0,c.detail="classification: deterministic, no rungs attempted by design",l.entries=[c]}else l.entries=s;return l}var T$="switching this job to another harness at the user's request";function AK(e){let t=e.item,n=(typeof t=="object"&&t!==null&&!Array.isArray(t)?t:e).type,i=n!==void 0?Tr(n):void 0;if(i!==void 0)switch(i){case"contextCompaction":return"compacting conversation history";case"commandExecution":case"terminalInput":return"running terminal command";case"agentMessage":case"fileChange":case"reasoning":case"webSearch":case"webSearchCall":case"web_search_call":return"streaming response";default:return}}function MS(e,t){switch(e){case"command/exec/outputDelta":return"running terminal command";case"item/agentMessage/delta":case"item/reasoning/textDelta":return"streaming response";default:return e.startsWith("item/commandExecution/")?"running terminal command":AK(t)}}var CK=En(e=>({decision:e.f("decision",At),label:e.f("label",At),description:e.f("description",hr(At))})),EK=En(e=>({requestId:e.f("requestId",At),kind:e.f("kind",At),summary:e.f("summary",At),reason:e.f("reason",hr(At)),port:e.f("port",hr(Rs)),pid:e.f("pid",hr(Rs)),command:e.f("command",hr(At)),cwd:e.f("cwd",hr(At)),processName:e.f("processName",hr(At)),processIconKey:e.f("processIconKey",hr(At)),processIconPath:e.f("processIconPath",hr(At)),choices:e.f("choices",hr(Ac(CK))),allowedActorSlug:e.f("allowedActorSlug",hr(At)),allowedActorUserId:e.f("allowedActorUserId",hr(Rs))})),PK=Oc(["starting turn","streaming response","running terminal command","interrupt requested","retrying empty turn","model stream stalled - resuming automatically from the last streamed checkpoint","upstream outage detected - recovery paused, resuming automatically","compacting conversation history","awaiting approval"]),tne=z0([En(e=>(e.tag("status","queued"),{TAG:"Queued",reason:e.f("reason",hr(At))})),En(e=>(e.tag("status","processed"),{TAG:"Processed",reason:e.f("reason",hr(At))})),En(e=>(e.tag("status","processing"),{TAG:"Processing",reason:e.f("reason",PK),approval:e.f("approval",hr(EK))})),En(e=>(e.tag("status","ignored"),{TAG:"Ignored",reason:e.f("reason",At)})),En(e=>(e.tag("status","failed"),{TAG:"Failed",reason:e.f("reason",At),retryable:e.f("retryable",hr($0)),fate:e.f("fate",hr(v$))})),En(e=>(e.tag("status","interrupted"),{TAG:"Interrupted",reason:e.f("reason",At)}))]);function IK(e){let t=e.actorSlug,r;if(t!==void 0){let o=t.trim();r=o===""?"unknown":o}else r="unknown";let n=e.actorUserId,i=n!==void 0?n.toString():"unknown";return["Kandan message seq="+e.seq.toString()+" from "+r+" (user_id="+i+"):","",e.body].join(`
|
|
351
|
-
`)}function A$(e){let t=e.body.trimStart();return t.startsWith("!")?t
|
|
349
|
+
`)}function XI(e){return{kind:e.kind,seq:e.seq,at:e.at,harness:e.harness,body:e.body,structured:G(e.structured,t=>t),actor:G(e.actor,t=>t),attachments:e.attachments,sourceSeq:e.sourceSeq,streamKey:e.streamKey}}function QI(e){return{model:e.model,contextWindow:e.contextWindow,maxEmissionTokens:e.maxEmissionTokens}}function IB(e){let t=ke(e);if(t===void 0)return;let r=ho(t,"kind"),n=Jo(t,"seq");if(r!==void 0&&n!==void 0)return{kind:r,seq:n,at:ho(t,"at"),harness:x(ho(t,"engine"),"none"),body:x(ho(t,"body"),""),structured:rp(t,"structured"),actor:rp(t,"actor"),attachments:x(BI(t,"attachments"),[]),sourceSeq:Jo(t,"source_seq"),streamKey:ho(t,"stream_key")}}function $B(e){let t=ke(e);if(t===void 0)return;let r=Jo(t,"context_window"),n=Jo(t,"max_emission_tokens");if(r!==void 0&&n!==void 0&&n>0)return{model:ho(t,"model"),contextWindow:r,maxEmissionTokens:n}}function MB(e){let t=Jo(e,"ir_version"),r=BI(e,"nodes");if(t===void 0||r===void 0)return;let n=e.has_more,i;return i=n===!0,{threadTitle:ho(e,"thread_title"),nodes:$e(r,IB),hasMore:i,cursor:Jo(e,"cursor"),budget:k(e.budget,$B)}}async function e$(e,t,r,n){let i=r.workspace,o=r.channel,a=r.threadId;if(i===void 0||o===void 0||a===void 0)return;let s=[],l,d,u,c=0,f=0,p;for(;mn(p)&&f<20;){let h={};h.workspace=i,h.channel=o,h.thread_id=a;let _=u;_!==void 0&&(h.cursor=_);let b=await e(t,"session:thread_transcript",h);if(b.TAG==="Ok"){let y=b._0,v=KI(y);if(v!==void 0){let S=MB(v);if(S!==void 0){l=cs(l,S.budget),d=cs(d,S.threadTitle),s=S.nodes.concat(s),c=c+Ve(S.nodes,0,(W,L)=>L.kind==="reasoning"?W:W+L.body.length);let A=l,R=A!==void 0?c/4>=A.maxEmissionTokens:!1;!S.hasMore||mn(S.cursor)||R?p=Ze({nodes:s,budget:l,threadTitle:d}):(u=S.cursor,f=f+1|0)}else p=Ze(f===0?void 0:{nodes:s,budget:l,threadTitle:d})}else n("kandan.reconnect_thread_transcript_fetch_failed",Object.fromEntries([["thread_id",a],["page",f],["reply",JSON.stringify(y).slice(0,300)]])),p=Ze(f===0?void 0:{nodes:s,budget:l,threadTitle:d})}else n("kandan.reconnect_thread_transcript_fetch_failed",Object.fromEntries([["thread_id",a],["message",b._0]])),p=Ze(void 0)}let m=p;return m!==void 0?ue(m):{nodes:s,budget:l,threadTitle:d}}function jB(e,t){return"Codex "+e+" did not reply within "+t.toString()+"ms (start request timed out)"}function wS(e,t,r,n){return t<=0?n:new Promise((i,o)=>{let a=e.setTimer(()=>i({TAG:"Error",_0:jB(r,t)}),t);n.then(s=>(e.clearTimer(a),i(s),Promise.resolve()))})}function SS(e){return e==="ResumeArchived"?"resume_archived":"forced_inject_not_found"}var zB="the server marked the durable engine session dead after an acknowledged-but-unexecuted turn";async function t$(e,t,r,n,i,o){let a={};a.threadId=n,Object.entries(i).forEach(m=>{a[m[0]]=m[1]});let s=a,l=(m,h)=>wS(t,r,m,e(m,h)),d=async(m,h)=>{o.log("kandan.reconnect_thread_unarchive_started",Object.fromEntries([["codex_thread_id",n],["discovered_by",SS(m)],["message",h]]));let g=await(async()=>{let v=await l("thread/unarchive",Object.fromEntries([["threadId",n]]));if(v.TAG!=="Ok")return{TAG:"Error",_0:v._0};let S=v._0;if(S.TAG!=="ResultReply")return{TAG:"Error",_0:"thread/unarchive failed: "+S.message};let A=await l("thread/resume",s);if(A.TAG!=="Ok")return{TAG:"Error",_0:A._0};let R=A._0;return R.TAG==="ResultReply"?{TAG:"Ok",_0:void 0}:{TAG:"Error",_0:"thread/resume after unarchive failed: "+R.message}})();if(g.TAG==="Ok")return o.log("kandan.reconnect_thread_unarchive_resumed",Object.fromEntries([["codex_thread_id",n],["discovered_by",SS(m)]])),{TAG:"Ok",_0:"Resumed"};let b=g._0;o.log("kandan.reconnect_thread_unarchive_failed",Object.fromEntries([["codex_thread_id",n],["discovered_by",SS(m)],["archive_error",h],["message",b]]));let y;return y=m==="ResumeArchived"?b:"thread/inject_items failed: "+h+"; archive recovery failed: "+b,{TAG:"Error",_0:{message:y}}},u=async m=>{o.log(o.forceRehydrate?"kandan.reconnect_thread_rehydrate_forced":"kandan.reconnect_thread_resume_failed",Object.fromEntries([["codex_thread_id",n],["message",m],["forced",o.forceRehydrate],["rehydrating",!0]]));let h=await(async()=>{let g=o.buildRehydrationItems,b;if(g!==void 0){let L=await g(m);L.TAG==="Ok"?b=L._0:(o.log("kandan.reconnect_thread_rehydration_items_failed",Object.fromEntries([["codex_thread_id",n],["message",L._0]])),b=void 0)}else b=void 0;let y,v=0;if(b!==void 0&&b.length!==0?y={TAG:"Ok",_0:b.slice()}:v=1,v===1){let L=await o.buildRehydrationText(m);y=L.TAG==="Ok"?{TAG:"Ok",_0:[Object.fromEntries([["type","agentMessage"],["text",L._0]])]}:{TAG:"Error",_0:L._0}}if(y.TAG!=="Ok")return{TAG:"Error",_0:y._0};let S=await l("thread/inject_items",Object.fromEntries([["threadId",n],["items",y._0]]));if(S.TAG!=="Ok")return{TAG:"Error",_0:S._0};let A=S._0;if(A.TAG==="ResultReply"){let L=await l("thread/resume",s);if(L.TAG!=="Ok")return{TAG:"Error",_0:L._0};let ae=L._0;return ae.TAG==="ResultReply"?{TAG:"Ok",_0:void 0}:{TAG:"Error",_0:"rehydrated thread/resume failed: "+ae.message}}let R=A.message;if(!(o.forceRehydrate&&GP(R)))return{TAG:"Error",_0:"thread/inject_items failed: "+R};let W=await d("ForcedInjectNotFound",R);return W.TAG==="Ok"?{TAG:"Ok",_0:W._0}:{TAG:"Error",_0:W._0.message}})();if(h.TAG==="Ok"){let g=h._0;return g!==void 0?{TAG:"Ok",_0:g}:(o.log("kandan.reconnect_thread_rehydrated",Object.fromEntries([["codex_thread_id",n],["resume_failure",m]])),{TAG:"Ok",_0:{TAG:"Rehydrated",resumeFailure:m}})}let _=h._0;return o.log("kandan.reconnect_thread_rehydration_failed",Object.fromEntries([["codex_thread_id",n],["resume_failure",m],["rehydration_failure",_]])),{TAG:"Error",_0:{message:"could not resume this thread's engine session ("+m+") and rebuilding a fresh session from the thread transcript also failed ("+_+")"}}};if(o.forceRehydrate)return await u(zB);let c=await l("thread/resume",s);if(c.TAG!=="Ok")return{TAG:"Error",_0:{message:c._0}};let f=c._0;if(f.TAG==="ResultReply")return{TAG:"Ok",_0:"Resumed"};let p=f.message;return NP(p)?await d("ResumeArchived",p):await u(p)}var FB=G0(e=>({joinRef:e.item(0,hh(At)),ref:e.item(1,hh(At)),topic:e.item(2,At),event:e.item(3,At),payload:e.item(4,M0)}));function r$(e){return Is(e,FB)}function ip(e){let t=Sr(e);return t!==void 0?x(Er(ue(t)),"unknown error"):"unknown error"}function qB(e){let t=k(Sr(e),r=>Ow(r));return t!==void 0?t:null}function ri(e){return e.TAG==="Transport"?e._0.message:e.message}function LB(e,t){return{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"TimeoutReason",message:"phoenix push timed out after "+e.toString()+"ms waiting for connection: "+t}}}function UB(e,t){return{TAG:"Transport",_0:{phase:"Reply",reason:"TimeoutReason",message:"phoenix push timed out after "+e.toString()+"ms: "+t}}}function o$(e){return e.TAG==="Transport"?e._0.phase==="WaitForConnection":!1}function a$(e){return{initial:t=>e.initial(t),onAdvance:(t,r)=>e.onAdvance(t,r),reset:(t,r)=>e.reset(t,r)}}function s$(e){return{current:t=>e.current(),adopt:(t,r)=>e.adopt(t,r)}}var WB="base64url.bearer.phx.";function ZB(e){let t;t=typeof e=="object"&&e!==null&&!Array.isArray(e)?zm(e):e;let r=JSON.stringify(t);return r.length<=400?r:r.slice(0,400)+"\u2026"}var VB=new RegExp("/$");function HB(e){let t=Ln(e);if(t===void 0)return{TAG:"Error",_0:"Invalid URL"};let r=ue(t);switch(r.protocol){case"http:":r.protocol="ws:";break;case"https:":r.protocol="wss:";break}return r.pathname=r.pathname.replace(VB,"")+"/socket/websocket",r.searchParams.set("vsn","2.0.0"),{TAG:"Ok",_0:r.toString()}}function BB(e){return[WB+Fw(e),"phoenix"]}var l$="[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?<![\\uD800-\\uDBFF])[\\uDC00-\\uDFFF]",Ru=new RegExp(l$),Iu=new RegExp(l$,"g"),$u="\uFFFD";function kS(e){if(Array.isArray(e))return e.some(kS);if(e===null)return!1;switch(typeof e){case"string":return Ru.test(e);case"object":return Object.entries(e).some(t=>Ru.test(t[0])?!0:kS(t[1]));default:return!1}}function xS(e){if(Array.isArray(e))return e.map(xS);if(e===null)return e;switch(typeof e){case"string":return e.replace(Iu,$u);case"object":return Object.fromEntries(Object.entries(e).map(t=>[t[0].replace(Iu,$u),xS(t[1])]));default:return e}}function KB(e){return Object.entries(e).some(t=>Ru.test(t[0])?!0:kS(t[1]))}function JB(e){return Object.fromEntries(Object.entries(e).map(t=>[t[0].replace(Iu,$u),xS(t[1])]))}function YB(e,t,r){return Ru.test(e)||Ru.test(t)?!0:KB(r)}function XB(e,t,r){return{frameTopic:e.replace(Iu,$u),frameEvent:t.replace(Iu,$u),framePayload:JB(r)}}function n$(e){let t=r=>r!==void 0?r:null;return JSON.stringify([t(e.joinRef),t(e.ref),e.topic,e.event,e.payload])}function QB(e){let t;try{t={TAG:"Ok",_0:JSON.parse(e)}}catch(n){let i=ee(n);t={TAG:"Error",_0:ip(i)}}if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=r$(t._0);return r.TAG==="Ok"?{TAG:"Ok",_0:r._0}:{TAG:"Error",_0:"invalid Phoenix frame"}}function d$(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function ap(e,t){return k(e,r=>{let n=r[t];if(typeof n=="object"&&n!==null&&!Array.isArray(n))return n})}function Rl(e,t){return k(e,r=>{let n=r[t];if(typeof n=="string")return n})}function np(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e.status,r=e.response;if(t==="ok"&&typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function eK(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?nn(e.status,"ok"):!1}function tK(e){return typeof e!="object"||e===null||Array.isArray(e)?!1:typeof e.type=="string"}function op(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&Ot(r))return r}function i$(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return op(e,"control_seq")}function rK(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e.event,r=e.payload;if(t===void 0||typeof t!="string"||r===void 0||typeof r!="object"||r===null||Array.isArray(r))return;let n=e.control_seq;return n!==void 0?typeof n=="number"&&Ot(n)?{event:t,payload:r,controlSeq:n}:void 0:{event:t,payload:r,controlSeq:void 0}}var nK="npm install -g @linzumi/cli@latest",iK=new RegExp("^npm install -g @linzumi\\/cli(@[0-9A-Za-z^~.-]{1,32})?$"),oK=new RegExp("^\\d+\\.\\d+\\.\\d+(?:[-+][0-9A-Za-z.-]{1,32})?$");function aK(e){return e!==void 0&&typeof e=="string"&&e.length<=100&&iK.test(e)?e:nK}function sK(e){return e!==void 0&&typeof e=="string"&&e.length<=64&&oK.test(e)?"@linzumi/cli "+e+" or newer":"a newer @linzumi/cli"}function TS(e){let t=d$(e),r=ap(t,"response"),n=Rl(r,"error");if(n!==void 0)return n;let i=Rl(r,"reason");if(i!==void 0)return i;let o=Rl(r,"message");if(o!==void 0)return o;let a=Rl(t,"error");return t!==void 0?a!==void 0?a:"unknown":"invalid reply"}function lK(e){let t=ap(d$(e),"response");if(t===void 0||!de(t.error,"commander_version_too_old"))return TS(e);let r=sK(t.min_version),n=aK(t.upgrade_command);return"commander_version_too_old: this Linzumi server requires "+r+". Update with: "+n}function dK(e){let t=e;if(Rl(t,"agent_provider")==="claude-code")return"claude-code-sdk";let n=ap(t,"metadata"),i=ap(n,"local_codex_runner");return Rl(i,"agent_provider")==="claude-code"?"claude-code-sdk":"codex-app-server"}function uK(e,t){let r;try{r=e.initial(t)}catch{r=void 0}if(r!==void 0&&Ot(r)&&r>=0)return r}function cK(e,t){if(e===void 0)return;let r;try{r=e.current(t)}catch{r=void 0}if(r!==void 0&&r!=="")return r}async function u$(e,t,r,n){let i=n!==void 0?n:{},o=r!==void 0?r:Gm,a;a=t.TAG==="Token"?t._0:void 0;let s={contents:a},l=()=>{if(t.TAG==="Token")return{TAG:"Ok",_0:t._0};let w;try{w=t._0()}catch{w=void 0}if(w!==void 0&&w.trim()!=="")return s.contents=w,{TAG:"Ok",_0:w};let C=s.contents;return C!==void 0?{TAG:"Ok",_0:C}:{TAG:"Error",_0:{TAG:"Failed",message:"phoenix token provider returned no usable token"}}},d=i.onOperatorNotice,u=d!==void 0?d:w=>{console.error(w)},c=i.auditEvent,f=c!==void 0?c:(w,C)=>{},p=i.onPushRecorded,m=p!==void 0?p:w=>{},h=x(i.pushTimeoutMs,3e4),_=i.controlCursorStore,g=i.controlEpochStore,b={},y={},v={},S={},A={},R={},W={},L={},ae=new Set,U={contents:1},B=[],oe=[],Z=[],V=[],M={nextRef:1,websocket:void 0,closed:!1,connected:!1,hasEverConnected:!1,connectionGeneration:0,ready:Promise.resolve({TAG:"Ok",_0:void 0}),settleReady:void 0,reconnectTimer:void 0,reconnectAttempts:0,backoffResetTimer:void 0,heartbeatTimer:void 0,connectedAt:void 0},N=w=>{let C=Object.entries(b);C.forEach(P=>fr(b,P[0])),C.forEach(P=>{let I=P[1];clearTimeout(I.timer),I.settle({TAG:"Error",_0:w})})},j=()=>{if(M.settleReady!==void 0)return;let C={contents:void 0};M.ready=new Promise((P,I)=>{C.contents=P}),M.settleReady=C.contents},re=()=>{let w=M.settleReady;w!==void 0&&w({TAG:"Ok",_0:void 0}),M.settleReady=void 0},se=w=>{let C=M.settleReady;C!==void 0&&C({TAG:"Error",_0:w}),M.settleReady=void 0},Ae=()=>{let w=M.heartbeatTimer;if(w!==void 0){clearInterval(ue(w)),M.heartbeatTimer=void 0;return}},Ue=()=>{let w=M.backoffResetTimer;if(w!==void 0){clearTimeout(ue(w)),M.backoffResetTimer=void 0;return}},Ge=w=>{M.closed=!0;let C=M.reconnectTimer;C!==void 0&&(clearTimeout(ue(C)),M.reconnectTimer=void 0),Ae(),Ue();let P=M.websocket;P!==void 0&&P.close(),se(w),N({TAG:"Transport",_0:{phase:"Reply",reason:"ClientClosed",message:"phoenix client closed"}})},ut=w=>x(L[w],0),ze=w=>{fr(S,w),fr(A,w),fr(R,w),fr(W,w),L[w]=ut(w)+1|0},pt=(w,C)=>{let P=S[w];if(P!==void 0){if(C===P+1){let D=P+1,ie=A[w];if(ie!==void 0)for(;ie.has(D+1);)D=D+1,ie.delete(D);S[w]=D;return}let I=A[w],F;if(I!==void 0)F=I;else{let D=new Set;A[w]=D,F=D}F.add(C);return}S[w]=C},Xe=(w,C)=>{let P=i$(C);if(P===void 0)return!0;let I=S[w],F=I!==void 0?P<=I:!1,D=A[w],ie=D!==void 0?D.has(P):!1;return F||ie?!1:(pt(w,P),!0)},He=(w,C)=>{if(_!==void 0)try{return _.onAdvance(w,C)}catch{return}},It=(w,C)=>{if(!w.startsWith("local_runner:"))return;let P=op(C,"control_high_water");if(P===void 0)return;let I=S[w];if(I!==void 0&&P<I){ze(w);let F=0;if(_===void 0)return;let D=_.reset;if(D===void 0)return;try{return D(w,F)}catch{return}}},Cr=(w,C)=>{let P=w.startsWith("local_runner:");if(g===void 0||!P)return!1;let I=C.control_epoch;if(I===void 0||typeof I!="string"||I==="")return!1;let F;try{F=g.adopt(w,I)}catch{F=!1}return F&&ze(w),F},Wt=w=>{let C=S[w];if(C!==void 0)return C;if(_===void 0)return;let P=uK(_,w);return P!==void 0?(S[w]=P,P):0},Qe=new Set,q=(w,C,P,I)=>{try{let F=!1;if(w.startsWith("local_runner:")&&C==="control"&&tK(I)){let D;if(Xe(w,I)){let ie=i$(I);if(ie!==void 0){let Se=R[w],Ce;if(Se!==void 0)Ce=Se;else{let Ie=new Set;R[w]=Ie,Ce=Ie}Ce.add(ie)}let pe=ut(w),Fe=ie!==void 0?()=>{if(pe!==ut(w))return;let Se=R[w];Se!==void 0&&Se.delete(ie);let Ce=W[w];Ce!==void 0&&ie<=Ce||(W[w]=ie);let Ie=k(Se,Zt=>Ve(Zt.values().toArray(),void 0,(zt,br)=>zt!==void 0&&zt<=br?zt:br)),ft=Ie!==void 0?Ie-1:W[w];if(ft===void 0)return;let Pe=S[w],Oe=Pe!==void 0&&Pe<ft?Pe:ft;He(w,Oe)}:()=>{};B.forEach(Se=>Se(I,Fe)),D=!1}else D=!0;F=D}if(!F&&P===void 0&&C!=="phx_reply"&&C!=="phx_error"){oe.forEach(D=>D(w,C,I));return}else return}catch(F){let D=ee(F),ie=ip(D);try{f("phoenix.pushed_frame_dispatch_failed",Object.fromEntries([["topic",w],["frame",C],["message",ie],["stack",qB(D)],["payloadSnippet",ZB(I)],["dropped",!0]]))}catch{}if(Qe.has(C))return;Qe.add(C);try{return u('linzumi: dropped a pushed "'+C+'" frame on '+w+" whose dispatch failed ("+ie+"); see the CLI audit log for the payload snippet.")}catch{return}}},Ee=(w,C)=>{let P=S[w],I={contents:P!==void 0&&P>=C?P:C},F=A[w];if(F!==void 0)for(F.values().toArray().forEach(D=>{if(D<=I.contents){F.delete(D);return}});F.has(I.contents+1);)I.contents=I.contents+1,F.delete(I.contents);S[w]=I.contents},ve=w=>{let C=S[w];if(C===void 0)return;let P=R[w],I=P!==void 0&&P.size>0?G(Ve(P.values().toArray(),void 0,(F,D)=>F!==void 0&&F<=D?F:D),F=>F-1):void 0;He(w,I!==void 0&&I<C?I:C)},_e=(w,C)=>{if(w.startsWith("chat:")){let P=C.events;return P===void 0?{TAG:"Ok",_0:void 0}:P===null?{TAG:"Ok",_0:void 0}:Array.isArray(P)?(P.forEach(I=>{oe.forEach(F=>F(w,"event",I))}),{TAG:"Ok",_0:void 0}):{TAG:"Error",_0:"phoenix rejoin returned invalid events for "+w}}else{if(!w.startsWith("local_runner:"))return{TAG:"Ok",_0:void 0};let P=C.controls;if(P===void 0)return{TAG:"Ok",_0:void 0};if(P===null)return{TAG:"Ok",_0:void 0};if(!Array.isArray(P))return{TAG:"Error",_0:"phoenix rejoin returned invalid controls for "+w};P.forEach(F=>{let D=rK(F);if(D===void 0)return;let ie={};Object.entries(D.payload).forEach(Fe=>{ie[Fe[0]]=Fe[1]}),ie.replayed=!0;let pe=D.controlSeq;pe!==void 0&&(ie.control_seq=pe),q(w,D.event,void 0,ie)});let I=op(C,"controls_advance_to");if(I!==void 0){let F=C.control_high_water;typeof F=="number"&&I>F||Ee(w,I)}return ve(w),{TAG:"Ok",_0:void 0}}},Be=(w,C,P,I,F)=>{let D=M.websocket;if(D===void 0)return Promise.resolve({TAG:"Error",_0:{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"SocketNotOpen",message:"phoenix websocket is not open"}}});if(D.readyState()!==Xa)return Promise.resolve({TAG:"Error",_0:{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"SocketNotOpen",message:"phoenix websocket is not open"}}});let ie=M.nextRef.toString();M.nextRef=M.nextRef+1|0,C==="phx_join"&&(v[w]=ie);let pe=C==="phx_join"?ie:v[w],Fe=jm(P),Se;if(YB(w,C,Fe)){let gr=XB(w,C,Fe);f("phoenix.outbound_frame_lone_surrogate_sanitized",Object.fromEntries([["purpose","phoenix.send_totality"],["topic",gr.frameTopic],["frame_event",gr.frameEvent]])),Se=gr}else Se={frameTopic:w,frameEvent:C,framePayload:Fe};let Ce=Se.framePayload,Ie=ie,ft=Se.frameTopic,Pe=Se.frameEvent,zt=n$({joinRef:pe,ref:Ie,topic:ft,event:Pe,payload:Ce}),br=Math.max(0,Math.ceil(I))|0;return new Promise((gr,or)=>{let Nt=setTimeout(()=>{if(b[ie]!==void 0)return fr(b,ie),gr({TAG:"Error",_0:UB(br,C)})},br);b[ie]={event:C,timer:Nt,settle:gr};try{m({provider:dK(Ce),rawFrameText:zt,topic:w,event:C,payload:Ce})}catch{}let ar;try{ar={TAG:"Ok",_0:D.send(zt)}}catch(Gt){let Ft=ee(Gt);ar={TAG:"Error",_0:ip(Ft)}}return ar.TAG==="Ok"?F!==void 0?F():void 0:gr({TAG:"Error",_0:{TAG:"Failed",message:ar._0}})})},Yt=(w,C)=>{let P={};if(C.forEach(I=>{Object.entries(I).forEach(F=>{let D=F[1],ie=F[0],pe=ie==="last_seq",Fe=P[ie];if(pe&&typeof Fe=="number"&&typeof D=="number"){P[ie]=D<Fe?D:Fe;return}if(Fe===void 0){P[ie]=D;return}})}),w.startsWith("local_runner:")){let I=Wt(w);I!==void 0&&(P.last_control_seq=I);let F=cK(g,w);F!==void 0&&(P.last_control_epoch=F)}return P},fn=w=>Object.entries(w).map(C=>C[1].payload()),ki=async w=>{let C=0,P=0,I=!0;for(;I;){let F=y[w];if(F!==void 0){let D=Wt(w),ie=await Be(w,"phx_join",Yt(w,fn(F)),h,void 0);if(C=C+1|0,ie.TAG==="Ok"){let pe=np(ie._0);if(pe!==void 0){let Fe=pe.controls,Se=Array.isArray(Fe)?Fe.length:0;P=P+Se|0;let Ce=de(pe.controls_truncated,!0),Ie=Wt(w),ft;if(Ce){let Pe=op(pe,"control_high_water");ft=Pe!==void 0&&Ie!==void 0?Pe-Ie>0?Pe-Ie:0:void 0}else ft=0;if(f("phoenix.control_backlog_fetch_progress",Object.fromEntries([["topic",w],["fetches",C],["fetched",P],["remaining_estimate",ft!==void 0?ft:null],["truncated",Ce]])),Ce)if(de(Ie,D)){let Pe=Ie!==void 0?Ie.toString():"undefined";u("phoenix.control_backlog_fetch_stalled topic="+w+" fetches="+C.toString()+" fetched="+P.toString()+" cursor="+Pe+"; a truncated reply made no cursor progress - stopping this fetch loop (a server paging bug; the next reconnect resumes from the watermark)"),I=!1}else{if(C%20===0){let Oe=ft!==void 0?ft.toString():"unknown";u("phoenix.control_backlog_cap_exceeded topic="+w+" fetches="+C.toString()+" fetched="+P.toString()+" remaining_estimate="+Oe+"; continuing the paginated backlog fetch (a healthy connection never reconnects, so nothing is deferred)")}await new Promise((Oe,Zt)=>{setImmediate(()=>Oe())})}else I=!1}else I=!1}else I=!1}else I=!1}},Fn=w=>{if(!ae.has(w)){ae.add(w),zn(ki(w).then(()=>{ae.delete(w)}),C=>(ae.delete(w),Promise.resolve()));return}},ii={},Vr=async()=>{Object.entries(ii).forEach(F=>fr(ii,F[0]));let w=Object.entries(y),C,P=0;for(;C===void 0&&P<w.length;){let F=w[P];if(F!==void 0){let D=F[0],ie=await Be(D,"phx_join",Yt(D,fn(F[1])),h,void 0);if(ie.TAG==="Ok"){let pe=np(ie._0);pe!==void 0?ii[D]=pe:C={TAG:"Failed",message:"phoenix rejoin failed for "+D}}else C=ie._0}P=P+1|0}let I=C;return I!==void 0?{TAG:"Error",_0:I}:{TAG:"Ok",_0:void 0}},_o={contents:()=>Promise.resolve()},ra=()=>{let w=M.closed,C=M.reconnectTimer;if(w||C!==void 0)return;j();let P=Math.min(1e4,250*2**M.reconnectAttempts);M.reconnectAttempts=M.reconnectAttempts+1|0,M.reconnectTimer=Ze(setTimeout(()=>{M.reconnectTimer=void 0,_o.contents()},Math.random()*P|0))},tn=(w,C,P)=>{let I=M.connected,F=M.connectedAt;M.connectedAt=void 0,M.connected=!1;let D=M.websocket;if(M.websocket=void 0,Ae(),Ue(),D!==void 0&&(D.readyState()===CP||D.readyState()===Xa))try{D.close()}catch{}if(N(w),ra(),!I)return;let ie;ie=P!==void 0&&P!==""?P:void 0;let pe=G(F,Ce=>Math.max(0,Date.now()-Ce)),Fe=M.reconnectAttempts,Se={closeCode:C,closeReason:ie,previousSessionDurationMs:pe,reconnectCount:Fe};V.forEach(Ce=>{try{return Ce(Se)}catch{return}})},H=()=>{Ae(),M.heartbeatTimer=Ze(setInterval(()=>{let w=M.websocket;if(w===void 0||w.readyState()!==Xa)return;let C=M.nextRef.toString();M.nextRef=M.nextRef+1|0;let F={joinRef:void 0,ref:C,topic:"phoenix",event:"heartbeat",payload:{}};try{return w.send(n$(F))}catch{return}},3e4))},te=()=>{Ue();let w=setTimeout(()=>{if(M.backoffResetTimer=void 0,M.connected){M.reconnectAttempts=0;return}},3e4);w.unref(),M.backoffResetTimer=Ze(w)},ne=(w,C)=>new Promise((P,I)=>{let F={contents:void 0},D=ie=>{let pe=F.contents;pe!==void 0&&(clearTimeout(ue(pe)),F.contents=void 0),P(ie)};w.on("SocketOpen",ie=>D({TAG:"Ok",_0:void 0})),w.on("SocketError",ie=>D({TAG:"Error",_0:"websocket open failed"})),w.on("SocketClose",ie=>D({TAG:"Error",_0:"websocket closed before open"})),F.contents=Ze(setTimeout(()=>{F.contents=void 0,D({TAG:"Error",_0:"websocket open timed out after "+C.toString()+"ms"})},C))}),Ke=async()=>{if(M.closed)return;let w=l(),C=HB(e),P;if(w.TAG==="Ok")if(C.TAG==="Ok"){let D;try{D={TAG:"Ok",_0:o(C._0,BB(w._0))}}catch(ie){let pe=ee(ie);D={TAG:"Error",_0:{TAG:"Failed",message:ip(pe)}}}P=D.TAG==="Ok"?{TAG:"Ok",_0:D._0}:{TAG:"Error",_0:D._0}}else P={TAG:"Error",_0:{TAG:"Failed",message:C._0}};else P={TAG:"Error",_0:w._0};if(P.TAG==="Ok"){let D=P._0;M.websocket=D,D.on("SocketMessage",Pe=>{let Oe=M.websocket;if(Oe!==void 0&&Oe===D){let Zt=QB(x(Pe.data,"undefined"));if(Zt.TAG==="Ok"){let zt=Zt._0,br=zt.payload,gr=zt.event,or=zt.topic,Nt=zt.ref;if(Nt!==void 0&&(gr==="phx_reply"||gr==="phx_error")){let Gt=b[Nt];if(Gt!==void 0){fr(b,Nt),clearTimeout(Gt.timer);let Ft=gr==="phx_error",vr=eK(br)&&Gt.event!=="phx_join";if(Ft)Gt.settle({TAG:"Error",_0:{TAG:"Failed",message:"phoenix push failed"}});else if(vr)Gt.settle({TAG:"Error",_0:{TAG:"Failed",message:"phoenix push failed: "+TS(br)}});else{let Hr=y[or],oi=np(br),ai;if(Hr!==void 0&&oi!==void 0&&Gt.event==="phx_join"){let Bl=Cr(or,oi);It(or,oi);let Kl=Bl?{TAG:"Ok",_0:void 0}:_e(or,oi);Kl.TAG==="Ok"?(or.startsWith("local_runner:")&&(de(oi.controls_truncated,!0)||Bl)&&Fn(or),ai=!1):(Gt.settle({TAG:"Error",_0:{TAG:"Failed",message:Kl._0}}),ai=!0)}else ai=!1;ai||Gt.settle({TAG:"Ok",_0:br})}}}return q(or,gr,Nt,br)}else return f("phoenix.frame_decode_failed",Object.fromEntries([["message",Zt._0],["dropped",!0]]))}}),D.on("SocketClose",Pe=>{let Oe=M.websocket;if(Oe!==void 0&&Oe===D)return tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},Pe.code,Pe.reason)}),D.on("SocketError",Pe=>{let Oe=M.websocket;if(Oe!==void 0&&Oe===D)return tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},void 0,void 0)});let ie=await ne(D,h),pe=()=>{if(M.closed)return!0;let Pe=M.websocket;return Pe!==void 0?Pe!==D:!1},Fe;if(ie.TAG==="Ok")if(pe())Fe={TAG:"Ok",_0:!1};else{M.connectionGeneration=M.connectionGeneration+1|0;let Pe=await Vr();Fe=Pe.TAG==="Ok"?pe()?{TAG:"Ok",_0:!1}:{TAG:"Ok",_0:!0}:{TAG:"Error",_0:Pe._0}}else Fe={TAG:"Error",_0:{TAG:"Failed",message:ie._0}};if(Fe.TAG==="Ok"){if(!Fe._0||(M.connected=!0,M.connectedAt=Date.now(),M.hasEverConnected=!0,te(),H(),re(),M.connectionGeneration<=1))return;let Pe={};Object.entries(ii).forEach(Zt=>{Pe[Zt[0]]=Zt[1]});let Oe={contents:!1};return Z.forEach(Zt=>{if(Oe.contents)return;let zt;try{zt={TAG:"Ok",_0:Zt(Pe)}}catch{zt={TAG:"Error",_0:void 0}}if(zt.TAG!=="Ok"){Oe.contents=!0;return}zn(zt._0,br=>Promise.resolve())}),Oe.contents&&!M.closed?tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket reconnect failed"}},void 0,void 0):void 0}let Se=M.websocket,Ce=Se!==void 0?Se!==D:!1,Ie=M.closed||Ce,ft=M.hasEverConnected;return Ie?void 0:ft?tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket reconnect failed"}},void 0,void 0):Ge(Fe._0)}let I=M.closed,F=M.hasEverConnected;if(!I)return F?tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket reconnect failed"}},void 0,void 0):Ge(P._0)};_o.contents=Ke;let tt=(w,C)=>{let P=M.ready;return new Promise((I,F)=>{let D=setTimeout(()=>I({TAG:"Error",_0:LB(h,w)}),Math.max(0,C-Date.now())|0);P.then(ie=>{clearTimeout(D),I(ie)})})},st=async(w,C,P,I)=>{let F=Date.now()+h,D=await tt(C,F);return D.TAG==="Ok"?await Be(w,C,P,F-Date.now(),I):{TAG:"Error",_0:D._0}},ct=async(w,C,P)=>{let I=P.registrationId,F;if(I!==void 0)F=I;else{let zt="join-registration-"+U.contents.toString();U.contents=U.contents+1|0,F=zt}let D=y[w],ie=D!==void 0?fn(D):[],pe=await st(w,"phx_join",Yt(w,ie.concat([C])),void 0);if(pe.TAG!=="Ok")return{TAG:"Error",_0:pe._0};let Fe=pe._0,Se=np(Fe);if(Se===void 0)return{TAG:"Error",_0:{TAG:"Failed",message:"phoenix join failed: "+lK(Fe)}};let Ce=y[w],Ie=Ce!==void 0?Ce:{},ft=Object.entries(Ie).length===0,Pe=P.rejoinPayload;if(Ie[F]={payload:Pe!==void 0?Pe:()=>C},y[w]=Ie,!(ft&&w.startsWith("local_runner:")))return{TAG:"Ok",_0:Se};let Oe=Cr(w,Se);It(w,Se);let Zt=Oe?{TAG:"Ok",_0:void 0}:_e(w,Se);return Zt.TAG!=="Ok"?{TAG:"Error",_0:{TAG:"Failed",message:Zt._0}}:((de(Se.controls_truncated,!0)||Oe)&&Fn(w),{TAG:"Ok",_0:Se})},J={join:(w,C,P)=>ct(w,C,x(P,{rejoinPayload:void 0,registrationId:void 0})),unregisterJoin:(w,C)=>{let P=y[w];if(!(P===void 0||(fr(P,C),Object.entries(P).length!==0)))return fr(y,w),fr(v,w)},push:st,pushIfConnected:(w,C,P)=>M.connected?Be(w,C,P,h,void 0):Promise.resolve({TAG:"Error",_0:{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"NotConnected",message:"phoenix client is not connected"}}}),onControl:w=>{B.push(w)},onEvent:w=>{oe.push(w)},onReconnect:w=>{Z.push(w)},onDisconnect:w=>{V.push(w)},forceReconnect:w=>M.closed||!M.connected?!1:(tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},void 0,x(w,"forced_stale_reconnect")),!0),hardReset:w=>{if(M.closed)return!1;tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},void 0,x(w,"hard_reset"));let C=M.reconnectTimer;return C!==void 0&&(clearTimeout(ue(C)),M.reconnectTimer=void 0),Ke(),!0},close:()=>Ge({TAG:"Transport",_0:{phase:"WaitForConnection",reason:"ClientClosed",message:"phoenix client closed"}})};j(),Ke();let K=await M.ready;return K.TAG==="Ok"?{TAG:"Ok",_0:J}:{TAG:"Error",_0:K._0}}function fK(e){let t=e.toLowerCase();return t.startsWith("gpt-")||t.startsWith("o1")||t.startsWith("o3")||t.startsWith("o4")||t.startsWith("o5")?!0:t.startsWith("codex")}function c$(e){let t=G(e,r=>r.trim());if(t!==void 0)switch(t){case"":case"default":return;case"fable-5":return"claude-fable-5";case"haiku":return"haiku";case"opus":return"opus";case"sonnet":return"sonnet";default:return fK(t)?"sonnet":t}}function Mu(e,t,r,n){let i=e.sourceSeq;if(i===void 0)return Promise.resolve();let o={};return o.workspace=e.workspace,o.channel=e.channel,o.thread_id=e.threadId,o.seq=i,o.status=t,r!==void 0&&(o.reason=r),n!==void 0&&(o.codex_thread_id=n),o.agent_provider="claude-code",e.pushEvent("message_state",o)}function f$(e){return{cwd:e.cwd,model:x(c$(e.model),""),reasoningEffort:void 0,developerInstructions:void 0,approvalPolicy:e.approvalPolicy,sandboxPolicy:e.sandbox,environment:{},mcpServers:G(e.mcp,t=>t.servers)}}var mK=["If you create files that should be attached back to Kandan, end your assistant response with:","Kandan attachments:","- relative/or/absolute/path/to/file","Only attach non-hidden files with common document, image, text, patch, archive, or video extensions."];function m$(e){return[e,""].concat(mK).join(`
|
|
350
|
+
`)}function p$(e){return{model:x(c$(e.model),""),reasoningEffort:void 0,input:{text:m$(e.workDescription),attachments:[]}}}var OS={contents:0};function pK(){let e=Date.now()*1e3,t=OS.contents>=e?OS.contents+1:e;return OS.contents=t,t}function sp(e,t,r,n){let i={};i.workspace=e.workspace,i.channel=e.channel,i.thread_id=e.threadId,i.cwd=e.cwd,i.sessionId=t,i.subkey="root",i.sequence=pK(),i.entryType=r,i.payload=n,e.pushEvent("claude_session_store_append",i)}function h$(e,t){return r=>{switch(e.log("claude_code.session_event",Object.fromEntries([["thread_id",e.threadId],["kind",Nm(r)]])),r.TAG){case"SessionStarted":let n=r.harnessSessionId;t.contents=n;let i=e.sourceSeq;return sp(e,n,"session_started",Object.fromEntries([["prompt",m$(e.workDescription)],["threadId",e.threadId],["rootSeq",i!==void 0?i:null]]));case"ItemCompleted":let o=r.item;if(o.streamKind!=="assistant")return;let a=t.contents;return a!==void 0?sp(e,a,"assistant_message",Object.fromEntries([["itemKey",o.itemId],["body",r.content]])):void 0;case"TurnCompleted":let s=t.contents;s!==void 0&&(sp(e,s,"turn_completed",{}),sp(e,s,"session_completed",{})),Mu(e,"processed",void 0,t.contents);return;case"TurnFailed":Mu(e,"failed",r.failure.reason,t.contents);return;case"TurnInterrupted":Mu(e,"interrupted","Claude Code interrupted by Linzumi",t.contents);return;case"HarnessDied":Mu(e,"failed",r.failure.reason,t.contents);return;default:return}}}function _$(e,t){let r={};return r.workspace=e.workspace,r.channel=e.channel,r.thread_id=e.threadId,r.codex_thread_id=t,r.agent_provider="claude-code",e.pushEvent("session:bind",r)}function g$(e,t){return Mu(e,"processing","starting turn",t)}function rs(e){let t=e.mcp;if(t!==void 0)return t.cleanup()}async function y$(e){let t={contents:void 0};e.log("claude_code.turn_starting",Object.fromEntries([["linzumi_thread_id",e.threadId],["claude_session_id",null],["body_preview",e.workDescription.slice(0,120)],["message_received_at_ms",Date.now()]]));let r={contents:void 0},n=new Promise((l,d)=>{r.contents=l}),i=l=>{let d=r.contents;if(d!==void 0)return r.contents=void 0,d(l)},o=h$(e,t),a=l=>{switch(l.TAG){case"SessionStarted":i({TAG:"Ok",_0:l.harnessSessionId});break;case"TurnFailed":i({TAG:"Error",_0:l.failure.reason});break;case"HarnessDied":i({TAG:"Error",_0:l.failure.reason});break}o(l)},s=await e.adapter.startSession(f$(e),a);if(s.TAG==="Ok"){let l=s._0,d=await l.dispatchTurn(p$(e));if(d.TAG==="Ok"){let u=await n;if(u.TAG==="Ok"){let c=u._0;return t.contents=c,await _$(e,c),await g$(e,c),{TAG:"Ok",_0:{harnessSessionId:c,session:l,stop:async()=>(await l.stopSession(),rs(e))}}}return await l.stopSession(),rs(e),{TAG:"Error",_0:u._0}}return await l.stopSession(),rs(e),{TAG:"Error",_0:d._0.reason}}return rs(e),{TAG:"Error",_0:s._0.reason}}async function b$(e,t){let r={contents:t},n=await e.adapter.attachSession(t,f$(e),h$(e,r));if(n.TAG==="Ok"){let i=n._0;await _$(e,i.harnessSessionId);let o=await i.dispatchTurn(p$(e));return o.TAG==="Ok"?(await g$(e,i.harnessSessionId),{TAG:"Ok",_0:{harnessSessionId:i.harnessSessionId,session:i,stop:async()=>(await i.stopSession(),rs(e))}}):(await i.stopSession(),rs(e),{TAG:"Error",_0:o._0.reason})}return rs(e),{TAG:"Error",_0:n._0.reason}}var one=10*6e4;function _K(e,t){let r=setTimeout(e,t);return r.unref(),r}function gK(e){clearTimeout(e)}var ju={setTimer:_K,clearTimer:gK};var bK=["deterministic","transient_upstream","transient_local","rate_limited","needs_approval","needs_decision"],v$=Oc(bK);function lp(e){switch(e){case"deterministic":return"deterministic";case"needs_approval":return"needs_approval";case"needs_decision":return"needs_decision";case"rate_limited":return"rate_limited";case"transient_local":return"transient_local";case"transient_upstream":return"transient_upstream";default:return}}function vK(e){if(typeof e=="object")return"recover";switch(e){case"HoldUntilResetPolicy":return"hold_until_reset";case"RedImmediatelyPolicy":return"red_immediately";case"NeverLaddersPolicy":return"never_ladders"}}function ES(e){let t=e.transpiledItemCount,r=e.redactedReasoningCount,n=(t!==void 0?" items="+t.toString():"")+(r!==void 0?" redacted="+r.toString():"");return"user_switch "+e.sourceHarness+"->"+e.targetHarness+" model="+x(e.model,"unspecified")+n}function RS(e){let t={};t.exportable=e.transpileFeasibility.exportable,t.target_adapter_available=e.transpileFeasibility.targetAdapterAvailable;let r={};r.available=e.available,r.source_harness=e.sourceHarness,r.target_harness=e.targetHarness;let n=e.model;return n!==void 0&&(r.model=n),r.transpile_feasibility=t,r.offer_reason=e.offerReason,r}function S$(e){switch(e){case"deterministic":return"RedImmediatelyPolicy";case"transient_upstream":return{TAG:"RecoverPolicy",rungs:[{rung:"in_place_resume",maxAttempts:2}]};case"transient_local":return{TAG:"RecoverPolicy",rungs:[{rung:"redispatch",maxAttempts:1},{rung:"worker_rebuild",maxAttempts:1}]};case"rate_limited":return"HoldUntilResetPolicy";case"needs_approval":case"needs_decision":return"NeverLaddersPolicy"}}var SK=15*6e4,wK=30*6e4;function CS(e,t){let r=G(e,i=>i.trim());if(r===void 0||r==="")return t;let n=Number(r);return isFinite(n)&&n>0?Math.floor(n):t}function zu(e){return{maxRecoveryRungs:CS(e.LINZUMI_FATE_LADDER_MAX_RECOVERY_RUNGS,4),maxLadderMs:CS(e.LINZUMI_FATE_LADDER_BUDGET_MS,SK),maxRateLimitHoldMs:CS(e.LINZUMI_FATE_LADDER_MAX_HOLD_MS,wK)}}function kK(e){if(typeof e=="object")return e._0;switch(e){case"ClassificationStep":return"classification";case"HoldStep":return"hold";case"UserSwitchStep":return"user_cross_harness_switch"}}function IS(e,t){return{fate:e,startedAtMs:t,rungCursor:0,cursorAttempts:0,recoveryRungsAttempted:0,holdCommitted:!1,holdDispatched:!1,userSwitchInvoked:!1,entries:[],historyTruncated:!1}}function en(e,t){return e.entries.length>=16?e.historyTruncated?e:{fate:e.fate,startedAtMs:e.startedAtMs,rungCursor:e.rungCursor,cursorAttempts:e.cursorAttempts,recoveryRungsAttempted:e.recoveryRungsAttempted,holdCommitted:e.holdCommitted,holdDispatched:e.holdDispatched,userSwitchInvoked:e.userSwitchInvoked,entries:e.entries,historyTruncated:!0}:{fate:e.fate,startedAtMs:e.startedAtMs,rungCursor:e.rungCursor,cursorAttempts:e.cursorAttempts,recoveryRungsAttempted:e.recoveryRungsAttempted,holdCommitted:e.holdCommitted,holdDispatched:e.holdDispatched,userSwitchInvoked:e.userSwitchInvoked,entries:e.entries.concat([t]),historyTruncated:e.historyTruncated}}function xK(e){switch(e){case"budget_rungs_exhausted":case"budget_wall_clock_exhausted":case"rungs_exhausted":case"grant_unavailable":return!0;default:return!1}}function w$(e,t,r){if(e!=="transient_local"||r===void 0||!(r.backendDead&&xK(t)))return;let n=r.exportable&&r.targetAdapterAvailable,i=n?"the "+r.sourceHarness+" harness backend died and automatic recovery is exhausted; this job can continue on "+r.targetHarness+" if the user chooses to switch":r.exportable?"the "+r.sourceHarness+" harness backend died and automatic recovery is exhausted, but the "+r.targetHarness+" harness is not available on this machine":"the "+r.sourceHarness+" harness backend died and automatic recovery is exhausted, but no recorded harness activity is exportable to carry over";return{available:n,sourceHarness:r.sourceHarness,targetHarness:r.targetHarness,model:r.model,transpileFeasibility:{exportable:r.exportable,targetAdapterAvailable:r.targetAdapterAvailable},offerReason:i}}function TK(e,t){switch(t){case"in_place_resume":return e.inPlaceResume;case"redispatch":return e.redispatch;case"worker_rebuild":return e.workerRebuild}}function k$(e){let t=e.grants,r=e.breaker,n=e.budgets,i=e.nowMs,o=e.fate;if(o===void 0)return{TAG:"Stand",cause:"no_fate"};let a=S$(o),s=e.run,l=s!==void 0?s:IS(o,i);if(typeof a!="object")switch(a){case"HoldUntilResetPolicy":if(l.holdCommitted)return{TAG:"Red",cause:"hold_already_committed",run:en(l,{rung:"HoldStep",outcome:"rungs_exhausted",atMs:i,detail:"the one hold-and-dispatch was already spent",resetAtMs:void 0})};let d=e.rateLimitResetAtMs,u=0;if(d!==void 0&&d>i){if(d-i>n.maxRateLimitHoldMs){let p=Math.round((d-i)/1e3).toString(),m=Math.round(n.maxRateLimitHoldMs/1e3).toString();return{TAG:"Red",cause:"hold_unavailable_reset_beyond_bound",run:en(l,{rung:"HoldStep",outcome:"hold_unavailable_reset_beyond_bound",atMs:i,detail:"reset is "+p+"s away, beyond the "+m+"s hold budget",resetAtMs:d})}}let c=r(o,i),f=0;if(typeof c!="object")f=2;else{let p=c.reason;return{TAG:"BreakerHold",reason:p,run:en(l,{rung:"HoldStep",outcome:"breaker_held",atMs:i,detail:p,resetAtMs:void 0})}}if(f===2)return{TAG:"HoldUntilReset",resetAtMs:d,run:en({fate:l.fate,startedAtMs:l.startedAtMs,rungCursor:l.rungCursor,cursorAttempts:l.cursorAttempts,recoveryRungsAttempted:l.recoveryRungsAttempted,holdCommitted:!0,holdDispatched:l.holdDispatched,userSwitchInvoked:l.userSwitchInvoked,entries:l.entries,historyTruncated:l.historyTruncated},{rung:"HoldStep",outcome:"held",atMs:i,detail:void 0,resetAtMs:d})}}else u=1;if(u===1){if(!t.inPlaceResume)return{TAG:"Red",cause:"hold_unavailable_no_reset",run:en(l,{rung:"HoldStep",outcome:"hold_unavailable_no_reset",atMs:i,detail:"no known rate-limit reset timestamp",resetAtMs:void 0})};let c=r(o,i),f=0;if(typeof c!="object")f=2;else{let p=c.reason;return{TAG:"BreakerHold",reason:p,run:en(l,{rung:{TAG:"RungStep",_0:"in_place_resume"},outcome:"breaker_held",atMs:i,detail:p,resetAtMs:void 0})}}if(f===2){if(l.recoveryRungsAttempted<n.maxRecoveryRungs)return{TAG:"ExecuteRung",rung:"in_place_resume",run:en({fate:l.fate,startedAtMs:l.startedAtMs,rungCursor:l.rungCursor,cursorAttempts:l.cursorAttempts,recoveryRungsAttempted:l.recoveryRungsAttempted+1|0,holdCommitted:l.holdCommitted,holdDispatched:l.holdDispatched,userSwitchInvoked:l.userSwitchInvoked,entries:l.entries,historyTruncated:l.historyTruncated},{rung:{TAG:"RungStep",_0:"in_place_resume"},outcome:"attempted",atMs:i,detail:"reducer-granted bounded retry (transient-evidence carve-out; no known reset to hold for)",resetAtMs:void 0})};let p=l.recoveryRungsAttempted.toString(),m=n.maxRecoveryRungs.toString();return{TAG:"Red",cause:"budget_rungs_exhausted",run:en(l,{rung:"ClassificationStep",outcome:"budget_rungs_exhausted",atMs:i,detail:p+" recovery rungs attempted (budget "+m+")",resetAtMs:void 0})}}}break;case"RedImmediatelyPolicy":return{TAG:"Red",cause:"deterministic_by_design",run:en(l,{rung:"ClassificationStep",outcome:"no_rungs_by_design",atMs:i,detail:"classification: deterministic, no rungs attempted by design",resetAtMs:void 0})};case"NeverLaddersPolicy":return{TAG:"Stand",cause:"never_ladders"}}else{let d=a.rungs;if(l.recoveryRungsAttempted>=n.maxRecoveryRungs){let _=l.recoveryRungsAttempted.toString(),g=n.maxRecoveryRungs.toString();return{TAG:"Red",cause:"budget_rungs_exhausted",run:en(l,{rung:"ClassificationStep",outcome:"budget_rungs_exhausted",atMs:i,detail:_+" recovery rungs attempted (budget "+g+")",resetAtMs:void 0})}}if(i-l.startedAtMs>n.maxLadderMs){let _=Math.round((i-l.startedAtMs)/1e3).toString(),g=Math.round(n.maxLadderMs/1e3).toString();return{TAG:"Red",cause:"budget_wall_clock_exhausted",run:en(l,{rung:"ClassificationStep",outcome:"budget_wall_clock_exhausted",atMs:i,detail:"ladder open "+_+"s (budget "+g+"s)",resetAtMs:void 0})}}let u=l.rungCursor,c=l.cursorAttempts,f=!1,p=d[u];for(;(()=>{let _=p;return _!==void 0?c>=_.maxAttempts:!1})();)u=u+1|0,c=0,p=d[u];for(;(()=>{let _=p;return _!==void 0?!TK(t,_.rung):!1})();)f=!0,u=u+1|0,c=0,p=d[u];let m=p;if(m===void 0)return{TAG:"Red",cause:f?"grant_unavailable":"rungs_exhausted",run:en(l,{rung:"ClassificationStep",outcome:f?"grant_unavailable":"rungs_exhausted",atMs:i,detail:f?"no executable recovery rung in this session context":"every recovery rung for this fate was already attempted",resetAtMs:void 0})};let h=r(o,i);if(typeof h=="object"){let _=h.reason;return{TAG:"BreakerHold",reason:_,run:en(l,{rung:{TAG:"RungStep",_0:m.rung},outcome:"breaker_held",atMs:i,detail:_,resetAtMs:void 0})}}return{TAG:"ExecuteRung",rung:m.rung,run:en({fate:l.fate,startedAtMs:l.startedAtMs,rungCursor:u,cursorAttempts:c+1|0,recoveryRungsAttempted:l.recoveryRungsAttempted+1|0,holdCommitted:l.holdCommitted,holdDispatched:l.holdDispatched,userSwitchInvoked:l.userSwitchInvoked,entries:l.entries,historyTruncated:l.historyTruncated},{rung:{TAG:"RungStep",_0:m.rung},outcome:"attempted",atMs:i,detail:void 0,resetAtMs:void 0})}}}function x$(e,t,r){return e.userSwitchInvoked?{TAG:"Error",_0:"the one user-invoked cross-harness switch for this turn was already spent"}:{TAG:"Ok",_0:en({fate:e.fate,startedAtMs:e.startedAtMs,rungCursor:e.rungCursor,cursorAttempts:e.cursorAttempts,recoveryRungsAttempted:e.recoveryRungsAttempted,holdCommitted:e.holdCommitted,holdDispatched:e.holdDispatched,userSwitchInvoked:!0,entries:e.entries,historyTruncated:e.historyTruncated},{rung:"UserSwitchStep",outcome:"switch_invoked",atMs:t,detail:ES(r),resetAtMs:void 0,userSwitch:r})}}function $S(e,t,r,n,i){let o;switch(t){case"switch_dispatched":o="switch_dispatched";break;case"switch_failed":o="switch_failed";break;case"switch_refused":o="switch_refused";break}return en(e,{rung:"UserSwitchStep",outcome:o,atMs:r,detail:i!==void 0?ES(n)+" - "+i:ES(n),resetAtMs:void 0,userSwitch:n})}function dp(e,t,r,n){let i=n!==void 0?ue(n):void 0,o=S$(t),a=c=>{let f={};f.rung=kK(c.rung),f.outcome=c.outcome,f.at_ms=c.atMs;let p=c.detail;p!==void 0&&(f.detail=p.slice(0,200));let m=c.resetAtMs;m!==void 0&&(f.reset_at_ms=m);let h=c.userSwitch;if(h!==void 0){f.source_harness=h.sourceHarness,f.target_harness=h.targetHarness;let _=h.model;_!==void 0&&(f.model=_);let g=h.transpiledItemCount;g!==void 0&&(f.transpiled_item_count=g);let b=h.redactedReasoningCount;b!==void 0&&(f.redacted_reasoning_count=b)}return f},s=e!==void 0?e.entries.slice(0,16).map(a):[],l={};l.fate=t,l.policy=vK(o),l.recovery_rungs_attempted=e!==void 0?e.recoveryRungsAttempted:0;let d={};d.max_recovery_rungs=r.maxRecoveryRungs,d.max_ladder_ms=r.maxLadderMs,d.max_rate_limit_hold_ms=r.maxRateLimitHoldMs,l.budget=d,e!==void 0&&e.historyTruncated&&(l.history_truncated=!0),i!==void 0&&(l.failover_offer=RS(i));let u;if(u=t==="deterministic"?s.length===0:!1,u){let c={};c.rung="classification",c.outcome="no_rungs_by_design",c.at_ms=0,c.detail="classification: deterministic, no rungs attempted by design",l.entries=[c]}else l.entries=s;return l}var T$="switching this job to another harness at the user's request";function OK(e){let t=e.item,n=(typeof t=="object"&&t!==null&&!Array.isArray(t)?t:e).type,i=n!==void 0?Tr(n):void 0;if(i!==void 0)switch(i){case"contextCompaction":return"compacting conversation history";case"commandExecution":case"terminalInput":return"running terminal command";case"agentMessage":case"fileChange":case"reasoning":case"webSearch":case"webSearchCall":case"web_search_call":return"streaming response";default:return}}function MS(e,t){switch(e){case"command/exec/outputDelta":return"running terminal command";case"item/agentMessage/delta":case"item/reasoning/textDelta":return"streaming response";default:return e.startsWith("item/commandExecution/")?"running terminal command":OK(t)}}var EK=En(e=>({decision:e.f("decision",At),label:e.f("label",At),description:e.f("description",hr(At))})),PK=En(e=>({requestId:e.f("requestId",At),kind:e.f("kind",At),summary:e.f("summary",At),reason:e.f("reason",hr(At)),port:e.f("port",hr(Rs)),pid:e.f("pid",hr(Rs)),command:e.f("command",hr(At)),cwd:e.f("cwd",hr(At)),processName:e.f("processName",hr(At)),processIconKey:e.f("processIconKey",hr(At)),processIconPath:e.f("processIconPath",hr(At)),choices:e.f("choices",hr(Ac(EK))),allowedActorSlug:e.f("allowedActorSlug",hr(At)),allowedActorUserId:e.f("allowedActorUserId",hr(Rs))})),RK=Oc(["starting turn","streaming response","running terminal command","interrupt requested","retrying empty turn","model stream stalled - resuming automatically from the last streamed checkpoint","upstream outage detected - recovery paused, resuming automatically","compacting conversation history","awaiting approval"]),ane=z0([En(e=>(e.tag("status","queued"),{TAG:"Queued",reason:e.f("reason",hr(At))})),En(e=>(e.tag("status","processed"),{TAG:"Processed",reason:e.f("reason",hr(At))})),En(e=>(e.tag("status","processing"),{TAG:"Processing",reason:e.f("reason",RK),approval:e.f("approval",hr(PK))})),En(e=>(e.tag("status","ignored"),{TAG:"Ignored",reason:e.f("reason",At)})),En(e=>(e.tag("status","failed"),{TAG:"Failed",reason:e.f("reason",At),retryable:e.f("retryable",hr($0)),fate:e.f("fate",hr(v$))})),En(e=>(e.tag("status","interrupted"),{TAG:"Interrupted",reason:e.f("reason",At)}))]);function $K(e){let t=e.actorSlug,r;if(t!==void 0){let o=t.trim();r=o===""?"unknown":o}else r="unknown";let n=e.actorUserId,i=n!==void 0?n.toString():"unknown";return["Kandan message seq="+e.seq.toString()+" from "+r+" (user_id="+i+"):","",e.body].join(`
|
|
351
|
+
`)}function A$(e){let t=e.body.trimStart();return t.startsWith("!")?t:$K(e)}var C$="codex";function zK(e,t,r){return yS(C$,e,t,r)}function NK(e){if(e===void 0)return"system_notice";switch(e){case"agentMessage":return"assistant_message";case"commandExecution":return"command_execution";case"fileChange":return"file_change";case"collabAgentToolCall":case"dynamicToolCall":case"mcpToolCall":return"tool_call";case"reasoning":return"reasoning";case"plan":case"subAgentActivity":return"agent_status";case"terminalInput":return"terminal_input";case"userMessage":return"user_message";default:return"system_notice"}}function O$(e){return $e(e,t=>{if(typeof t=="string")return t})}function GK(e){let t=ti(e,"type");if(t===void 0)return"";switch(t){case"collabAgentToolCall":return x(ti(e,"prompt"),"");case"commandExecution":return x(ti(e,"aggregatedOutput"),"");case"dynamicToolCall":return rn(ts(e,"contentItems"),"",Eu);case"fileChange":return rn(ts(e,"changes"),[],i=>$e(i,o=>{if(typeof o=="object"&&o!==null&&!Array.isArray(o))return ti(o,"path")})).join(`
|
|
352
352
|
`);case"mcpToolCall":return rn(k(gS(e,"result"),i=>ts(i,"content")),"",Eu);case"reasoning":let r=rn(ts(e,"summary"),[],O$),n=rn(ts(e,"content"),[],O$);return r.concat(n).filter(i=>i!=="").join(`
|
|
353
353
|
|
|
354
|
-
`);case"subAgentActivity":return x(ti(e,"agentPath"),"");case"agentMessage":case"plan":case"terminalInput":return x(ti(e,"text"),"");case"userMessage":return rn(ts(e,"content"),"",Eu);default:return""}}function
|
|
354
|
+
`);case"subAgentActivity":return x(ti(e,"agentPath"),"");case"agentMessage":case"plan":case"terminalInput":return x(ti(e,"text"),"");case"userMessage":return rn(ts(e,"content"),"",Eu);default:return""}}function FK(e){return new Date(e).toISOString()}function E$(e,t){let r=[];return t.turns.forEach(n=>{n.items.forEach(i=>{let o=i.item,a;a=typeof o=="object"&&o!==null&&!Array.isArray(o)?o:{};let s=x(ti(a,"id"),"");r.push({kind:NK(ti(a,"type")),seq:r.length+1|0,at:G(i.completedAtMs,FK),harness:C$,body:GK(a),structured:i.item,actor:void 0,attachments:[],sourceSeq:void 0,streamKey:zK(t.harnessSessionId,n.turnId,s)})})}),bS(e,r)}var lne="claude-code";var LK="claude-code";function UK(e){return"rehydrated-"+e.toString()}var WK="rehydrated-marker";function ZK(e,t){switch(e){case"agent_status":return"[status] "+t;case"approval_request":return"[approval] "+t;case"command_execution":return`[command]
|
|
355
355
|
`+t;case"error":return"[error] "+t;case"file_change":return`[file change]
|
|
356
356
|
`+t;case"system_notice":return"[notice] "+t;case"terminal_input":return`[terminal input]
|
|
357
357
|
`+t;case"tool_call":return`[tool call]
|
|
358
358
|
`+t;case"tool_result":return`[tool result]
|
|
359
|
-
`+t;default:return"["+e+"] "+t}}function P$(e,t,r,n){let i={};i.type="text",i.text=n;let o={};o.role=e,o.content=[i];let a={};return a.type=e,a.session_id=t,a.uuid=r,a.message=o,a}function
|
|
359
|
+
`+t;default:return"["+e+"] "+t}}function P$(e,t,r,n){let i={};i.type="text",i.text=n;let o={};o.role=e,o.content=[i];let a={};return a.type=e,a.session_id=t,a.uuid=r,a.message=o,a}function VK(e,t,r,n,i){return"[linzumi cross-harness resume] This session continues linzumi thread "+r+", "+("imported from the "+e+" session "+t+". ")+(n.toString()+" activity records follow verbatim; ")+(i.toString()+" reasoning records were redacted ")+"(provider-private reasoning is never forged across harnesses)."}function R$(e,t){let r={contents:void 0},n=h=>{if(r.contents===void 0){r.contents=h;return}};e===""?n("the caller-bound target session identity must be non-empty"):e.includes(":")&&n("the caller-bound target session identity must be colon-free"),r.contents===void 0&&t.nodes.length===0&&n("an empty page rehydrates nothing - the source session must carry content");let i={contents:void 0},o={contents:void 0};t.nodes.forEach(h=>{if(r.contents===void 0){let g=o.contents;g!==void 0&&h.seq<=g?n("page nodes must ascend by seq"):o.contents=h.seq}if(r.contents===void 0){let g=$e(Mv.map(Ya),b=>G(k(h.streamKey,y=>Pu(b,y)),y=>[b,y.keySessionId]))[0];if(g!==void 0){let b=g[1],y=g[0];if(y===LK)n("the page was minted by the claude harness - same-harness resume rides the native session store, never rehydration");else{let v=i.contents;v!==void 0&&(v[0]!==y||v[1]!==b)?n("page mixes two harness session identities"):i.contents=[y,b]}}else n("node carries no parseable minted stream_key identity of a catalog harness")}if(r.contents!==void 0)return;let _=h.structured;if(!(typeof _=="object"&&_!==null&&!Array.isArray(_)))return n("node carries no verbatim native passthrough")});let a=r.contents,s=i.contents;if(a!==void 0)return{TAG:"Error",_0:a};if(s===void 0)return{TAG:"Error",_0:"page carries no source harness identity"};let l=s[1];if(l===e)return{TAG:"Error",_0:"the caller-bound target session identity must be distinct from the source session identity"};let d=s[0],u=[],c=[],f={contents:0};t.nodes.forEach(h=>{let _=h.kind;if(_==="reasoning"){f.contents=f.contents+1|0;return}let g;switch(_){case"assistant_message":g=["assistant",h.body];break;case"user_message":g=["user",h.body];break;default:g=["assistant",ZK(_,h.body)]}let b=g[0],y=UK(h.seq);u.push({sourceSeq:h.seq,sourceKind:_,uuid:y,role:b}),c.push(P$(b,e,y,g[1]))});let m=[P$("user",e,WK,VK(d,l,t.threadId,c.length,f.contents))].concat(c);return{TAG:"Ok",_0:{session:{harnessSessionId:e,messages:m},report:{sourceHarness:d,sourceSessionId:l,sessionMessageCount:m.length,redactedReasoningCount:f.contents,emissions:u}}}}import*as jS from"node:path";function BK(e){return e.replace(/[^a-zA-Z0-9]/g,"-")}function KK(e,t){return jS.join(e,".claude","projects",BK(t))}var JK="0.0.0-linzumi-cross-harness-switch";function I$(e,t,r,n,i){let o=Dn(t);if(o.TAG!=="Ok")return{TAG:"Error",_0:"the thread's working directory is not resolvable: "+t};let a=o._0,s=KK(e,a),l=Lt(s);if(l.TAG!=="Ok")return{TAG:"Error",_0:"session store dir creation failed: "+l._0.message};let d=jS.join(s,r+".jsonl"),u={contents:null},c=n.messages.map((m,h)=>{let _;_=typeof m=="object"&&m!==null&&!Array.isArray(m)?m:{};let g={};g.parentUuid=u.contents,g.isSidechain=!1,g.userType="external",g.cwd=a,g.sessionId=r,g.version=JK,g.type=x(_.type,null),g.message=x(_.message,null);let b=x(_.uuid,null);return g.uuid=b,g.timestamp=new Date(i+h).toISOString(),b!==null&&(u.contents=b),g}),f=c.map(m=>JSON.stringify(m)).join(`
|
|
360
360
|
`)+`
|
|
361
361
|
`,p=Ti(d,f);return p.TAG==="Ok"?{TAG:"Ok",_0:{sessionFile:d,entryCount:c.length}}:{TAG:"Error",_0:"session store write failed: "+p._0.message}}function $$(e){switch(e.TAG){case"NothingToCarryOver":return"nothing_to_carry_over";case"TranspileRefused":return"transpile_refused";case"TargetUnavailable":return"target_unavailable";case"SeedFailed":return"seed_failed";case"DispatchFailed":return"dispatch_failed"}}function M$(e){return e.reason}function j$(e){switch(e.TAG){case"SeedFailed":case"DispatchFailed":return!1;default:return!0}}async function z$(e,t,r,n,i,o,a,s,l,d){if(a===void 0)return{TAG:"Error",_0:{TAG:"TargetUnavailable",reason:"the claude-code harness is not available on this machine"}};let u=e.turns.filter(y=>y.items.length!==0);if(Ve(u,0,(y,v)=>y+v.items.length|0)===0)return{TAG:"Error",_0:{TAG:"NothingToCarryOver",reason:"no recorded harness activity to carry over (the switch journal is empty)"}};let f=E$(t,{harnessSessionId:e.harnessSessionId,turns:u}),p=R$(r,f);if(p.TAG!=="Ok")return{TAG:"Error",_0:{TAG:"TranspileRefused",reason:p._0}};let m=p._0,h=I$(i,n,r,m.session,o);if(h.TAG!=="Ok")return{TAG:"Error",_0:{TAG:"SeedFailed",reason:h._0}};let _=await a.attachSession(r,s,d);if(_.TAG!=="Ok")return{TAG:"Error",_0:{TAG:"DispatchFailed",reason:_._0.reason}};let g=_._0,b=await g.dispatchTurn(l);return b.TAG==="Ok"?{TAG:"Ok",_0:{targetSessionId:g.harnessSessionId,sessionFile:h._0.sessionFile,turnId:b._0.turnId,transpiledItemCount:m.report.emissions.length,redactedReasoningCount:m.report.redactedReasoningCount,session:g}}:(await g.stopSession(),{TAG:"Error",_0:{TAG:"DispatchFailed",reason:b._0.reason}})}import*as K$ from"node:url";import*as Nu from"node:path";function G$(e){return e==="MustAck"?"must_ack":"best_effort"}function NS(e,t){let r=t.replace(new RegExp("[^A-Za-z0-9._-]+","g"),"-").replace(new RegExp("^[-.]+|[-.]+$","g"),"").slice(0,80),n=qn(t).slice(0,8);return Nu.join(e,(r===""?"thread":r)+"."+n+".outbox.jsonl")}function ns(e){return JSON.stringify(e)+`
|
|
362
|
-
`}function N$(e,t){let r=Object.fromEntries([["t",e],["seq",t.entrySeq],["kind",t.kind],["data",t.data]]),n=t.coalesceKey;return n!==void 0&&(r.coalesceKey=n),r.resolution=G$(t.resolution),r.atMs=t.enqueuedAtMs,ns(r)}function up(e,t){return ns(Object.fromEntries([["t",e],["seq",t]]))}function zS(e){if(typeof e=="string")return e}function $l(e,t){return e!==void 0&&typeof e=="number"&&Ot(e)?e:t}function
|
|
363
|
-
`),s={contents:-1};return a.forEach((l,d)=>{if(l.trim()!==""){s.contents=d;return}}),a.forEach((l,d)=>{if(!(d<=s.contents&&l.trim()!==""))return;let u;try{u=JSON.parse(l)}catch{u=void 0}if(typeof u=="object"&&u!==null&&!Array.isArray(u))return
|
|
364
|
-
`).length|0)-1|0)}function D$(e,t,r,n,i){let o=n!==void 0?n:256,a=i!==void 0?i:3,s={contents:e};
|
|
362
|
+
`}function N$(e,t){let r=Object.fromEntries([["t",e],["seq",t.entrySeq],["kind",t.kind],["data",t.data]]),n=t.coalesceKey;return n!==void 0&&(r.coalesceKey=n),r.resolution=G$(t.resolution),r.atMs=t.enqueuedAtMs,ns(r)}function up(e,t){return ns(Object.fromEntries([["t",e],["seq",t]]))}function zS(e){if(typeof e=="string")return e}function $l(e,t){return e!==void 0&&typeof e=="number"&&Ot(e)?e:t}function QK(e){let t=e.seq,r=t!==void 0&&typeof t=="number"&&Ot(t)?t:void 0,n=zS(e.kind),i=e.data,o=typeof i=="object"&&i!==null&&!Array.isArray(i)?i:void 0,a=e.resolution,s;if(typeof a=="string")switch(a){case"best_effort":s="BestEffort";break;case"must_ack":s="MustAck";break;default:s=void 0}else s=void 0;let l=e.atMs,d=l!==void 0&&typeof l=="number"&&isFinite(l)?l:0;if(r!==void 0&&n!==void 0&&o!==void 0&&s!==void 0)return{entrySeq:r,kind:n,data:o,coalesceKey:zS(e.coalesceKey),resolution:s,attempts:0,enqueuedAtMs:d}}function e9(e,t,r,n,i){let o=r.counters,a=d=>{if(d>o.lastEntrySeq){o.lastEntrySeq=d;return}},s=e.t,l=0;if(typeof s=="string")switch(s){case"coalesce":o.totalEnqueued=o.totalEnqueued+1|0;let d=e.seq,u=d!==void 0&&typeof d=="number"&&Ot(d)?d:void 0,c=e.data,f=typeof c=="object"&&c!==null&&!Array.isArray(c)?c:void 0;if(u===void 0||f===void 0)return;let p=t.get(u);return p!==void 0&&(p.data=f),a(u);case"context":r.kv=new Map;let m=e.kv;if(m===void 0||typeof m!="object"||m===null||Array.isArray(m))return;Object.entries(m).forEach(g=>{r.kv.set(g[0],g[1])});return;case"counters":return o.totalEnqueued=$l(e.enqueued,0)|0,o.totalAcked=$l(e.acked,0)|0,o.totalDroppedBestEffort=$l(e.dropped,0)|0,o.totalPermanentFailures=$l(e.failed,0)|0,o.totalExpiredOnRecovery=$l(e.expired,0)|0,a($l(e.lastSeq,0));case"item_seq":return;case"kv":let h=zS(e.key),_=e.value;if(h!==void 0&&_!==void 0){r.kv.set(h,_);return}else return;case"enqueue":case"pending":l=2;break;case"ack":case"drop":case"expired":case"fail":case"skip":l=3;break;default:l=1}else l=1;switch(l){case 1:return n("outbox_journal_unknown_record",Object.fromEntries([["path",i],["recordType",x(e.t,null)]]));case 2:let d=QK(e);if(d===void 0)return n("outbox_journal_line_discarded",Object.fromEntries([["path",i],["recordType",x(e.t,null)]]));if(t.set(d.entrySeq,d),a(d.entrySeq),e.t==="enqueue"){o.totalEnqueued=o.totalEnqueued+1|0;return}else return;case 3:let c=e.seq;if(c===void 0||typeof c!="number"||!Ot(c))return;t.delete(c),a(c);let f=e.t;if(f===void 0||typeof f!="string")return;switch(f){case"ack":o.totalAcked=o.totalAcked+1|0;return;case"drop":o.totalDroppedBestEffort=o.totalDroppedBestEffort+1|0;return;case"expired":o.totalExpiredOnRecovery=o.totalExpiredOnRecovery+1|0;return;case"fail":o.totalPermanentFailures=o.totalPermanentFailures+1|0;return;default:return}}}function F$(e,t){let r={pendingEntries:[],kv:new Map,counters:{totalEnqueued:0,totalAcked:0,totalDroppedBestEffort:0,totalPermanentFailures:0,totalExpiredOnRecovery:0,lastEntrySeq:0}},n=Qt(e);if(n.TAG==="Ok"){let o=new Map,a=n._0.split(`
|
|
363
|
+
`),s={contents:-1};return a.forEach((l,d)=>{if(l.trim()!==""){s.contents=d;return}}),a.forEach((l,d)=>{if(!(d<=s.contents&&l.trim()!==""))return;let u;try{u=JSON.parse(l)}catch{u=void 0}if(typeof u=="object"&&u!==null&&!Array.isArray(u))return e9(u,o,r,t,e);t("outbox_journal_line_discarded",Object.fromEntries([["path",e],["line",d+1|0],["trailing",d===s.contents]]))}),r.pendingEntries=o.values().toArray(),r}let i=n._0;return si(i,"ENOENT")||t("outbox_journal_read_failed",Object.fromEntries([["path",e],["error",i.message]])),r}function t9(e){return Ve(e,0,(t,r)=>(t+r.split(`
|
|
364
|
+
`).length|0)-1|0)}function D$(e,t,r,n,i){let o=n!==void 0?n:256,a=i!==void 0?i:3,s={contents:e};Lt(Nu.dirname(e));let l={contents:[]},d={contents:Promise.resolve()},u={contents:!1},c={contents:0},f={contents:!1},p={contents:0},m={contents:0},h={contents:!1},_=A=>{if(m.contents=m.contents+1|0,p.contents=p.contents+1|0,r("outbox_journal_write_failed",Object.fromEntries([["path",s.contents],["error",A]])),!h.contents&&p.contents>=a&&(h.contents=!0,r("outbox_journal_degraded",Object.fromEntries([["level","error"],["path",s.contents],["consecutiveWriteFailures",p.contents],["totalWriteFailures",m.contents]]))),!(h.contents&&l.contents.length!==0))return;let R=t9(l.contents);l.contents=[],r("outbox_journal_buffered_records_dropped",Object.fromEntries([["level","error"],["path",s.contents],["droppedRecords",R],["consecutiveWriteFailures",p.contents],["totalWriteFailures",m.contents]]))},g=()=>{if(p.contents=0,h.contents)return h.contents=!1,r("outbox_journal_recovered",Object.fromEntries([["level","warn"],["path",s.contents],["totalWriteFailures",m.contents]]))},b=async()=>{c.contents=0;let A=t(),R=l.contents;l.contents=[];let W={};A.kv.forEach((oe,Z)=>{W[Z]=oe});let L=[ns(Object.fromEntries([["t","counters"],["enqueued",A.counters.totalEnqueued],["acked",A.counters.totalAcked],["dropped",A.counters.totalDroppedBestEffort],["failed",A.counters.totalPermanentFailures],["expired",A.counters.totalExpiredOnRecovery],["lastSeq",A.counters.lastEntrySeq]])),ns(Object.fromEntries([["t","context"],["kv",W]]))].concat(A.pendingEntries.map(oe=>N$("pending",oe))),ae=s.contents+".tmp",U=await Nw(ae,L.join("")),B;return B=U.TAG==="Ok"?await Lp(ae,s.contents):{TAG:"Error",_0:U._0},B.TAG==="Ok"?(r("outbox_journal_compacted",Object.fromEntries([["path",s.contents],["pendingEntries",A.pendingEntries.length]])),{TAG:"Ok",_0:void 0}):(l.contents=R.concat(l.contents),c.contents=o,{TAG:"Error",_0:B._0.message})},y=async()=>{u.contents=!1;let A;if(l.contents.length!==0){let R=l.contents.join("");l.contents=[];let W=await qp(s.contents,R);W.TAG==="Ok"?A={TAG:"Ok",_0:void 0}:(l.contents=[R].concat(l.contents),A={TAG:"Error",_0:W._0.message})}else A={TAG:"Ok",_0:void 0};return A.TAG==="Ok"?c.contents>=o?await b():{TAG:"Ok",_0:void 0}:{TAG:"Error",_0:A._0}},v=()=>{if(!u.contents){u.contents=!0,d.contents=d.contents.then(()=>y().then(A=>A.TAG==="Ok"?g():_(A._0)));return}},S=(A,R)=>f.contents?r("outbox_journal_append_after_close",Object.fromEntries([["path",s.contents]])):(l.contents.push(A),R&&(c.contents=c.contents+1|0),v());return{appendEnqueue:A=>S(N$("enqueue",A),!1),appendCoalesce:(A,R)=>S(ns(Object.fromEntries([["t","coalesce"],["seq",A],["data",R]])),!1),appendAck:A=>S(up("ack",A),!0),appendSkip:(A,R)=>S(ns(Object.fromEntries([["t","skip"],["seq",A],["reason",R]])),!0),appendDrop:A=>S(up("drop",A),!0),appendFail:A=>S(up("fail",A),!0),appendExpired:A=>S(up("expired",A),!0),appendKv:(A,R)=>S(ns(Object.fromEntries([["t","kv"],["key",A],["value",R]])),!1),settled:()=>d.contents.then(()=>{}),status:()=>({totalWriteFailures:m.contents,degraded:h.contents}),rekey:A=>{if(f.contents)return r("outbox_journal_rekey_after_close",Object.fromEntries([["path",A]]));d.contents=d.contents.then(async()=>{if(A===s.contents)return;let R=s.contents,W=Lt(Nu.dirname(A)),L;if(L=W.TAG==="Ok"?await Lp(R,A):{TAG:"Error",_0:W._0},L.TAG==="Ok")return s.contents=A,r("outbox_journal_rekeyed",Object.fromEntries([["from",R],["to",A]]));let ae=L._0;return si(ae,"ENOENT")?(s.contents=A,r("outbox_journal_rekeyed",Object.fromEntries([["from",R],["to",A]]))):r("outbox_journal_rekey_failed",Object.fromEntries([["level","error"],["from",R],["to",A],["error",ae.message]]))})},close:async()=>{if(f.contents=!0,await d.contents,l.contents.length===0)return;let A=l.contents.join(""),R=await qp(s.contents,A);return R.TAG!=="Ok"?_(R._0.message):(l.contents=[],g())}}}function L$(e){let t=e.itemId,r=t!==void 0?t:"index:"+e.itemIndex.toString();return e.turnId+":"+e.streamKind+":"+r}function Ml(e){switch(e.TAG){case"HarnessNotification":return"codex";case"CompletionSnapshot":return"snapshot";case"Lifecycle":return"lifecycle"}}function U$(e){return e}function GS(e){return e!==void 0?e!=="streaming":!1}var Gu="pipeline.post_streamed_row",Fu="pipeline.stream_snapshot",is="pipeline.finalize_row",Du="pipeline.post_completed_row",jl="pipeline.message_state";function r9(e){return e}function Or(e,t){return e[t]}function E(e,t){return k(e[t],Tr)}function qe(e,t){return k(e[t],ke)}function pp(e,t){return k(e[t],Qi)}function os(e,t){return k(e[t],ha)}function cp(e,t){let r=e[t];return r!==void 0?Rc(r):[]}function DS(e){if(typeof e=="string"&&e.trim()!=="")return e}function _t(e,t){return k(e[t],DS)}var n9="phoenix_insert_body_limit",fp="\0",mp="\uFFFD";function J$(e){return e>=55296?e<=56319:!1}function Y$(e){return e>=56320?e<=57343:!1}function zl(e,t){let r=e.length,n=Math.min(Math.max(0,t),r),i=n>0&&n<r&&J$(e.charCodeAt(n-1|0))&&Y$(e.charCodeAt(n))?n-1|0:n;return e.slice(0,i)}function X$(e,t){let r=e.length,n=Math.max(0,r-Math.max(0,t)|0),i=n>0&&n<r&&J$(e.charCodeAt(n-1|0))&&Y$(e.charCodeAt(n))?n+1|0:n;return e.slice(i,r)}function i9(e,t,r){if(e.length<=t)return{text:e,truncated:!1};let n="[Linzumi truncated "+r+"]",i=Math.max(0,(t-n.length|0)-1|0);return{text:zl(zl(e,i)+" "+n,t),truncated:!0}}var W$=`
|
|
365
365
|
|
|
366
366
|
[Linzumi truncated command output: output was too large to persist fully. Owners should search runner logs for codex.command_output_truncated failure_class=phoenix_insert_body_limit.]
|
|
367
367
|
|
|
368
|
-
`;function
|
|
368
|
+
`;function o9(e){if(e.length<=48e3)return{text:e,truncated:!1};let t=Math.max(0,48e3-W$.length|0),r=Math.min(2e3,Math.floor(t/3)|0),n=t-r|0,i=zl(e,r),o=X$(e,n);return{text:zl(i+W$+o,48e3),truncated:!0}}var Z$=`
|
|
369
369
|
|
|
370
370
|
[Linzumi truncated agent timeline body: body was too large to persist fully. Owners should search runner logs for agent_timeline_body_truncated failure_class=phoenix_insert_body_limit.]
|
|
371
371
|
|
|
@@ -373,28 +373,28 @@ worker output: `+i}function xR(e,t){return"thread Codex worker did not report re
|
|
|
373
373
|
|
|
374
374
|
`+t:e;return Q$(r.replaceAll(fp,mp))}function Wu(e){return G(e,t=>Q$(t.replaceAll(fp,mp)))}function qS(e){let t=k(e,Tr);if(t===void 0)return"info";switch(t){case"error":return"error";case"warning":return"warning";default:return"info"}}function LS(e){let t=k(e,Tr);if(t===void 0)return"unknown";switch(t){case"blocked":return"blocked";case"canceled":case"cancelled":return"cancelled";case"error":case"failed":case"failure":return"failed";case"queued":return"queued";case"in_progress":case"running":return"running";case"completed":case"succeeded":case"success":return"succeeded";default:return"unknown"}}function V$(e){let t=qe(e,"rawProviderMetadata");return t!==void 0?t:qe(e,"raw_provider_metadata")}function US(e,t){return["$ "+e,t].filter(r=>r.trim()!=="").join(`
|
|
375
375
|
|
|
376
|
-
`)}function WS(e,t){let r=
|
|
377
|
-
`)}function
|
|
378
|
-
`).forEach(n=>{let i=
|
|
379
|
-
`)}function oM(e,t,r){return Object.fromEntries([["kind","codex_reasoning"],["item_id",e],["transcript_unit_id","codex_reasoning:"+e],["stream_state",r],["content",HS(t)],["summary_parts",[]]])}function
|
|
376
|
+
`)}function WS(e,t){let r=i9(e.replaceAll(fp,mp),512,"command label"),n=o9(t.replaceAll(fp,mp));return{command:r.text,output:n.text,body:US(r.text,n.text),truncated:r.truncated||n.truncated,originalLength:t.length}}function eM(e){return e.truncated?[["output_truncated",!0],["output_original_length",e.originalLength],["output_max_chars",48e3],["output_truncation_reason",n9]]:[]}function tM(e,t,r){return Object.fromEntries([["kind","codex_assistant_message"],["item_id",e],["transcript_unit_id","codex_assistant_message:"+e],["stream_state",r],["content",t],["phase","final_answer"]])}function rM(e,t,r){return Object.fromEntries([["kind","codex_reasoning"],["item_id",e],["transcript_unit_id","codex_reasoning:"+e],["stream_state",r],["content",t],["summary_parts",[]]])}function nM(e,t,r,n){let i=t.durationMs,o=t.exitCode;return Object.fromEntries([["kind","codex_command_execution"],["item_id",e],["transcript_unit_id","codex_command_execution:"+e],["stream_state",r],["command",n.command],["cwd",x(t.cwd,"")],["status",x(t.status,r)],["process_id",x(t.processId,"")],["duration_ms",i!==void 0?i:null],["exit_code",o!==void 0?o:null],["stream",x(t.stream,"")],["output",n.output]].concat(eM(n)))}function ZS(e,t,r,n,i){return nM(e,n,i,WS(t,r))}function a9(e){let t="*** Update File: ",r="*** Add File: ",n="*** Delete File: ",i=e.startsWith(t),o=e.startsWith(r),a=e.startsWith(n);return i?{headerPath:e.slice(t.length).trim(),headerKind:"update"}:o?{headerPath:e.slice(r.length).trim(),headerKind:"add"}:a?{headerPath:e.slice(n.length).trim(),headerKind:"delete"}:void 0}function H$(e,t){return t!==void 0&&t.path.trim()!==""?e.concat([t]):e}function s9(e){let t=e.findIndex(i=>i.trim()!=="");if(t<0)return"";let r=e.toReversed().findIndex(i=>i.trim()!==""),n=r<0?e.length:e.length-r|0;return e.slice(t,n).join(`
|
|
377
|
+
`)}function l9(e){let t={contents:[]},r={contents:void 0};return e.split(`
|
|
378
|
+
`).forEach(n=>{let i=a9(n);if(i!==void 0){t.contents=H$(t.contents,r.contents),r.contents={path:i.headerPath,kind:i.headerKind,movePath:"",diffLines:[]};return}else if(n.startsWith("*** Move to: ")){r.contents=G(r.contents,o=>({path:o.path,kind:o.kind,movePath:n.slice(13).trim(),diffLines:o.diffLines}));return}else{if(n==="*** Begin Patch"||n==="*** End Patch"||n.startsWith("*** "))return;r.contents=G(r.contents,o=>({path:o.path,kind:o.kind,movePath:o.movePath,diffLines:o.diffLines.concat([n])}));return}}),H$(t.contents,r.contents).map(n=>Object.fromEntries([["path",n.path],["diff",s9(n.diffLines)],["kind",n.kind],["move_path",n.movePath]]))}function VS(e,t,r,n){return Object.fromEntries([["kind","codex_file_change"],["item_id",e],["transcript_unit_id","codex_file_change:"+e],["stream_state",r],["status",n],["patch_text",t],["changes",l9(t)]])}function iM(e){return Ve(e,[],(t,r)=>r!==void 0&&r.trim()!==""&&!t.includes(r)?t.concat([r]):t)}function HS(e){let t=iM(e.map(i=>i)),r=t.slice(0,6),n=t.length-r.length|0;return["Searches"].concat(r.map(i=>"- "+i)).concat(n>0?["- +"+n.toString()+" more"]:[]).join(`
|
|
379
|
+
`)}function oM(e,t,r){return Object.fromEntries([["kind","codex_reasoning"],["item_id",e],["transcript_unit_id","codex_reasoning:"+e],["stream_state",r],["content",HS(t)],["summary_parts",[]]])}function d9(e){let t=qe(e,"action");return iM([E(e,"query"),k(t,r=>E(r,"query"))].concat(cp(e,"queries").map(r=>r).concat(t!==void 0?cp(t,"queries").map(r=>r):[])))}function BS(e,t,r){let n=t.body,i=t.provider,o=t.occurredAtMs,a=t.rawProviderMetadata;return Object.fromEntries([["kind","agent_status_event"],["item_id",e],["transcript_unit_id","agent_status_event:"+e],["stream_state",r],["event_kind","status"],["title",t.title],["body",n!==void 0?n:null],["severity",t.severity],["agent_provider",i!==void 0?i:null],["occurred_at_ms",o!==void 0?o:null],["raw_provider_metadata",a!==void 0?a:{}]])}function KS(e,t,r){let n=t.body,i=t.progressLabel,o=t.provider,a=t.occurredAtMs,s=t.rawProviderMetadata;return Object.fromEntries([["kind","agent_task_update_event"],["item_id",e],["transcript_unit_id","agent_task_update_event:"+e],["stream_state",r],["event_kind","task_update"],["title",t.title],["body",n!==void 0?n:null],["state",t.state],["progress_label",i!==void 0?i:null],["agent_provider",o!==void 0?o:null],["occurred_at_ms",a!==void 0?a:null],["raw_provider_metadata",s!==void 0?s:{}]])}function aM(e){let t=e.delta;if(t!==void 0&&!(t===null||Array.isArray(t)))switch(typeof t){case"string":return t;case"object":let i=E(t,"text");if(i!==void 0)return i;let o=E(t,"content");if(o!==void 0)return o;let a=E(t,"delta");return a!==void 0?a:E(t,"message")}let r=E(e,"text");if(r!==void 0)return r;let n=E(e,"content");return n!==void 0?n:E(e,"message")}function hp(e){let t=aM(e);if(t!==void 0&&t!=="")return t}function sM(e){let t=_t(e,"deltaBase64"),r=t!==void 0?Buffer.from(t,"base64").toString("utf8"):aM(e);if(r===void 0||r==="")return;let n=qe(e,"item"),i=_t(e,"command"),o;if(i!==void 0)o=i;else{let s=_t(e,"cmd");if(s!==void 0)o=s;else{let l=k(n,d=>_t(d,"command"));o=l!==void 0?l:k(n,d=>_t(d,"cmd"))}}let a=E(e,"processId");return{commandProcessId:a!==void 0?a:E(e,"process_id"),command:o,stream:x(E(e,"stream"),"stdout"),commandDelta:r}}function lM(e){let t=_t(e,"stdin"),r;if(t!==void 0)r=t;else{let n=_t(e,"inputText");if(n!==void 0)r=n;else{let i=_t(e,"input");r=i!==void 0?i:_t(e,"text")}}return G(r,n=>{let i=E(e,"processId");return{terminalProcessId:i!==void 0?i:E(e,"process_id"),inputText:n}})}var dM=hp;function FS(e){let t=k(e,DS);if(t!==void 0){let o=_a(t);if(o===void 0)return t;let a=_t(o,"patch");if(a!==void 0)return a;let s=_t(o,"input");if(s!==void 0)return s;let l=_t(o,"text");return l!==void 0?l:t}let r=k(e,ke);if(r===void 0)return;let n=_t(r,"patch");if(n!==void 0)return n;let i=_t(r,"input");return i!==void 0?i:_t(r,"text")}function uM(e){return $e(e,ke).map(t=>{let r=t.kind,n=k(r,ke),i=n!==void 0?x(E(n,"type"),""):x(k(r,Tr),""),o=k(k(r,ke),l=>{let d=E(l,"move_path");return d!==void 0?d:E(l,"movePath")}),a=E(t,"move_path"),s;if(a!==void 0)s=a;else{let l=E(t,"movePath");s=l!==void 0?l:x(o,"")}return Object.fromEntries([["path",x(E(t,"path"),"")],["diff",x(_t(t,"diff"),"")],["kind",i],["move_path",s]])})}function u9(e){let t=E(e,"type");if(t===void 0)return!1;switch(t){case"fileChange":case"file_change":return!0;default:return!1}}function c9(e){if(e.length===0)return;let t=e.flatMap(r=>{let n=E(r,"path");if(n===void 0)return[];if(n.trim()==="")return[];let i=E(r,"kind"),o;if(i!==void 0)switch(i){case"add":o="*** Add File: "+n;break;case"delete":o="*** Delete File: "+n;break;default:o="*** Update File: "+n}else o="*** Update File: "+n;let a=_t(r,"diff");return a!==void 0?[o,a]:[o]}).join(`
|
|
380
380
|
`);if(t!=="")return`*** Begin Patch
|
|
381
381
|
`+t+`
|
|
382
382
|
*** End Patch
|
|
383
|
-
`}function cM(e){let t=qe(e,"item"),r;if(t!==void 0)r=t;else{let o=qe(e,"payload");r=o!==void 0?o:e}let n=E(r,"status");if(
|
|
383
|
+
`}function cM(e){let t=qe(e,"item"),r;if(t!==void 0)r=t;else{let o=qe(e,"payload");r=o!==void 0?o:e}let n=E(r,"status");if(u9(r)&&(n===void 0||de(n,"completed"))){let o=uM(x(pp(r,"changes"),[])),a=_t(r,"patchText");if(a!==void 0)return a;let s=_t(r,"patch");return s!==void 0?s:c9(o)}if(!(de(E(r,"type"),"custom_tool_call")&&de(E(r,"name"),"apply_patch")&&(n===void 0||de(n,"completed"))))return;let i=FS(r.input);return i!==void 0?i:FS(r.arguments)}function JS(e){let t=x(qe(e,"item"),e),r=E(t,"type");if(r===void 0)return;switch(r){case"webSearch":case"webSearchCall":case"web_search_call":break;default:return}let n=d9(t);if(n.length!==0)return{queries:n}}function Lu(e,t,r){return Object.fromEntries([["kind",e],["item_id",t],["transcript_unit_id",e+":"+t],["stream_state","completed"]].concat(r))}function f9(e){return $e(x(pp(e,"content"),[]),ke).flatMap(t=>{let r=E(t,"type");if(r===void 0)return[];switch(r){case"input_text":case"output_text":case"text":break;default:return[]}let n=_t(t,"text");if(n!==void 0)return[n];let i=_t(t,"content");if(i!==void 0)return[i];let o=_t(t,"output_text");return o!==void 0?[o]:[]}).join(`
|
|
384
384
|
|
|
385
|
-
`)}function
|
|
385
|
+
`)}function m9(e){let t=f9(e);if(t!=="")return t;let r=E(e,"reply"),n;if(r!==void 0)n=r;else{let d=E(e,"summary");if(d!==void 0)n=d;else{let u=E(e,"content");n=u!==void 0?u:x(E(e,"text"),"")}}let i=_a(n);if(i===void 0)return n;let o=E(i,"reply");if(o!==void 0)return o;let a=E(i,"summary");if(a!==void 0)return a;let s=E(i,"content");if(s!==void 0)return s;let l=E(i,"message");return l!==void 0?l:x(E(i,"output_text"),n)}var p9=new RegExp("^https?:\\/\\/","i"),h9=new RegExp("^data:","i"),_9=new RegExp("^file:\\/\\/","i");function g9(e){if(!(p9.test(e)||h9.test(e))){if(!_9.test(e))return e;try{return K$.fileURLToPath(e)}catch{return}}}function y9(e){return $e(x(pp(e,"content"),[]),ke).flatMap(t=>{let r=G(E(t,"type"),a=>a.toLowerCase());if(r===void 0)return[];switch(r){case"image":case"input_image":case"output_image":break;default:return[]}let n=E(t,"path"),i;if(n!==void 0)i=n;else{let a=E(t,"file_path");if(a!==void 0)i=a;else{let s=E(t,"filePath");if(s!==void 0)i=s;else{let l=E(t,"image_url");if(l!==void 0)i=l;else{let d=E(t,"imageUrl");i=d!==void 0?d:E(t,"url")}}}}let o=k(i,g9);return o!==void 0?[o]:[]})}function b9(e,t){let r=new Set(t).values().toArray();if(r.length===0)return e;let n=["Kandan attachments:"].concat(r.map(o=>"- "+o)).join(`
|
|
386
386
|
`);return e.trim()===""?n:[e,"",n].join(`
|
|
387
|
-
`)}function B$(e,t){let r=
|
|
387
|
+
`)}function B$(e,t){let r=m9(e),n=y9(e);return[{body:b9(r,n),structured:Lu("codex_assistant_message",t,[["content",r],["phase",x(E(e,"phase"),"final_answer")]])}]}function _p(e,t){let r=x(E(e,"id"),"item-"+t.toString()),n=E(e,"type");if(n===void 0)return[];switch(n){case"agentMessage":return B$(e,r);case"agentStatus":let i=x(_t(e,"title"),"Agent status"),o=Wu(_t(e,"body")),a=qS(e.severity),s=_t(e,"provider"),l=os(e,"occurredAtMs"),d=V$(e),u={title:i,body:o,severity:a,provider:s,occurredAtMs:l,rawProviderMetadata:d};return[{body:Uu(i,o),structured:BS(r,u,"completed")}];case"agentTaskUpdate":let c=x(_t(e,"title"),"Agent task"),f=Wu(_t(e,"body")),p=_t(e,"progressLabel"),m=LS(e.state),h=_t(e,"provider"),_=os(e,"occurredAtMs"),g=V$(e),b={title:c,body:f,state:m,progressLabel:p,provider:h,occurredAtMs:_,rawProviderMetadata:g};return[{body:Uu(c,f!==void 0?f:p),structured:KS(r,b,"completed")}];case"commandExecution":let y=x(E(e,"command"),"command"),v=x(_t(e,"aggregatedOutput"),""),S=WS(y,v),A=E(e,"toolName"),R=os(e,"durationMs"),W=os(e,"exitCode");return[{body:S.body,structured:Lu("codex_command_execution",r,[["command",S.command],["tool_name",A!==void 0?A:null],["cwd",x(E(e,"cwd"),"")],["status",x(E(e,"status"),"")],["process_id",x(E(e,"processId"),"")],["duration_ms",R!==void 0?R:null],["exit_code",W!==void 0?W:null],["output",S.output]].concat(eM(S)))}];case"fileChange":let L=uM(x(pp(e,"changes"),[])),ae=_t(e,"patchText"),U=ae!==void 0?ae:x(_t(e,"patch"),"");return[{body:U.trim()!==""?U:L.map(re=>x(E(re,"path"),"")).join(`
|
|
388
388
|
`),structured:Lu("codex_file_change",r,[["status",x(E(e,"status"),"")],["patch_text",U],["changes",L.map(re=>re)]])}];case"message":let oe=E(e,"role");return oe!==void 0?oe==="assistant"?B$(e,r):[]:[];case"reasoning":let Z=cp(e,"content").join(`
|
|
389
389
|
`),V=cp(e,"summary");return[{body:Z.trim()!==""?Z:V.join(`
|
|
390
|
-
`),structured:Lu("codex_reasoning",r,[["content",Z],["summary_parts",V.map(t9)]])}];case"terminalInput":let N=_t(e,"inputText"),j;if(N!==void 0)j=N;else{let re=_t(e,"input");j=re!==void 0?re:x(_t(e,"text"),"")}return[{body:j,structured:Lu("codex_terminal_input",r,[["process_id",x(E(e,"processId"),"")],["input_text",j]])}];default:return[]}}var fM=U$;var Nl={cwd:void 0,status:void 0,processId:void 0,durationMs:void 0,exitCode:void 0,stream:void 0};function as(e){let t=e!==void 0?e:"";return t===""?{parts:[],cached:"",joinedCount:0}:{parts:[t],cached:t,joinedCount:1}}function YS(e,t){t!==""&&e.parts.push(t)}function XS(e){if(e.joinedCount===e.parts.length)return e.cached;let t=e.cached;for(let r=e.joinedCount,n=e.parts.length;r<n;++r)t=t+e.parts[r];return e.cached=t,e.joinedCount=e.parts.length,t}function b9(e){switch(e.TAG){case"AssistantContent":return"assistant";case"ReasoningContent":return"reasoning";case"CommandOutputContent":return"commandOutput";case"FileChangeContent":return"fileChange";case"TerminalInputContent":return"terminalInput";case"WebSearchContent":return"webSearch";case"AgentStatusContent":return"agentStatus";case"AgentTaskUpdateContent":return"agentTaskUpdate"}}function Gl(e){switch(e.TAG){case"AssistantDelta":return"assistant";case"ReasoningDelta":return"reasoning";case"CommandOutputDelta":return"commandOutput";case"FileChangeDelta":return"fileChange";case"TerminalInputDelta":return"terminalInput";case"WebSearchDelta":return"webSearch"}}function mM(e){return e.itemId}function yp(e){let t=E(e,"itemId");if(t!==void 0)return t;let r=E(e,"item_id");return r!==void 0?r:k(qe(e,"item"),n=>E(n,"id"))}function pM(e,t){let r=yp(t);switch(e){case"item/agentMessage/delta":return G(hp(t),n=>({TAG:"AssistantDelta",itemId:r,text:n}));case"command/exec/outputDelta":case"item/commandExecution/outputDelta":break;case"item/commandExecution/terminalInteraction":return G(lM(t),n=>({TAG:"TerminalInputDelta",itemId:r,processId:n.terminalProcessId,inputText:n.inputText}));case"item/fileChange/outputDelta":return G(dM(t),n=>({TAG:"FileChangeDelta",itemId:r,patchText:n}));case"item/reasoning/textDelta":return G(hp(t),n=>({TAG:"ReasoningDelta",itemId:r,text:n}));case"item/started":return G(JS(t),n=>({TAG:"WebSearchDelta",itemId:r,queries:n.queries}));default:return}return G(sM(t),n=>({TAG:"CommandOutputDelta",itemId:r,processId:n.commandProcessId,command:n.command,stream:n.stream,text:n.commandDelta}))}function hM(e){switch(e){case"assistant":return{TAG:"AssistantContent",text:as(void 0)};case"reasoning":return{TAG:"ReasoningContent",text:as(void 0)};case"commandOutput":return{TAG:"CommandOutputContent",command:"",processId:void 0,chunks:[]};case"fileChange":return{TAG:"FileChangeContent",patchText:as(void 0),status:"started"};case"terminalInput":return{TAG:"TerminalInputContent",processId:void 0,inputText:""};case"webSearch":return{TAG:"WebSearchContent",queries:[]};case"agentStatus":return{TAG:"AgentStatusContent",_0:{title:"Agent status",body:void 0,severity:"info",provider:void 0,occurredAtMs:void 0,rawProviderMetadata:void 0}};case"agentTaskUpdate":return{TAG:"AgentTaskUpdateContent",_0:{title:"Agent task",body:void 0,state:"unknown",progressLabel:void 0,provider:void 0,occurredAtMs:void 0,rawProviderMetadata:void 0}}}}function v9(e,t){return Ve(t,e.slice(),(r,n)=>r.includes(n)?r:r.concat([n]))}function _M(e,t){if(b9(e)!==Gl(t))return e;switch(e.TAG){case"AssistantContent":return t.TAG!=="AssistantDelta"||YS(e.text,t.text),e;case"ReasoningContent":return t.TAG!=="ReasoningDelta"||YS(e.text,t.text),e;case"CommandOutputContent":if(t.TAG!=="CommandOutputDelta")return e;let r=t.command,n=t.processId,i=e.command;return{TAG:"CommandOutputContent",command:r!==void 0&&r.trim()!==""?r:i,processId:n!==void 0?n:e.processId,chunks:e.chunks.concat([{stream:t.stream,text:t.text}])};case"FileChangeContent":return t.TAG!=="FileChangeDelta"||YS(e.patchText,t.patchText),e;case"TerminalInputContent":if(t.TAG!=="TerminalInputDelta")return e;let o=t.processId;return{TAG:"TerminalInputContent",processId:o!==void 0?o:e.processId,inputText:t.inputText};case"WebSearchContent":return t.TAG==="WebSearchDelta"?{TAG:"WebSearchContent",queries:v9(e.queries,t.queries)}:e;case"AgentStatusContent":case"AgentTaskUpdateContent":return e}}function S9(e){return e.map(t=>t.text).join("")}function gM(e){let t=E(e,"type");if(t!==void 0)switch(t){case"agentMessage":return"assistant";case"agentStatus":return"agentStatus";case"agentTaskUpdate":return"agentTaskUpdate";case"commandExecution":return"commandOutput";case"fileChange":case"file_change":return"fileChange";case"message":return E(e,"role")==="assistant"?"assistant":void 0;case"reasoning":return"reasoning";case"terminalInput":return"terminalInput";case"webSearch":case"webSearchCall":case"web_search_call":return"webSearch";default:return}}function yM(e){let t=JS(e);if(t!==void 0)return{completedStreamKind:"webSearch",completedItemId:yp(e),completedContent:{TAG:"WebSearchContent",queries:t.queries}};let r=x(qe(e,"item"),e),n=cM(e);if(n!==void 0){let s=E(r,"call_id");return{completedStreamKind:"fileChange",completedItemId:s!==void 0?s:E(r,"id"),completedContent:{TAG:"FileChangeContent",patchText:as(n),status:"completed"}}}let i=gM(r);if(i===void 0)return;let o=_p(r,0)[0];if(o===void 0)return;let a=E(r,"id");switch(i){case"assistant":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"AssistantContent",text:as(x(E(o.structured,"content"),o.body))}};case"reasoning":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"ReasoningContent",text:as(x(E(o.structured,"content"),o.body))}};case"commandOutput":let s=Or(o.structured,"output"),l;return l=typeof s=="string"?s:"",{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"CommandOutputContent",command:x(E(o.structured,"command"),""),processId:E(o.structured,"process_id"),chunks:[{stream:"",text:l}]}};case"fileChange":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"FileChangeContent",patchText:as(x(E(o.structured,"patch_text"),o.body)),status:"completed"}};case"terminalInput":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"TerminalInputContent",processId:E(o.structured,"process_id"),inputText:x(E(o.structured,"input_text"),o.body)}};case"webSearch":return;case"agentStatus":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"AgentStatusContent",_0:{title:x(E(o.structured,"title"),o.body),body:E(o.structured,"body"),severity:qS(Or(o.structured,"severity")),provider:E(o.structured,"agent_provider"),occurredAtMs:os(o.structured,"occurred_at_ms"),rawProviderMetadata:qe(o.structured,"raw_provider_metadata")}}};case"agentTaskUpdate":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"AgentTaskUpdateContent",_0:{title:x(E(o.structured,"title"),o.body),body:E(o.structured,"body"),state:LS(Or(o.structured,"state")),progressLabel:E(o.structured,"progress_label"),provider:E(o.structured,"agent_provider"),occurredAtMs:os(o.structured,"occurred_at_ms"),rawProviderMetadata:qe(o.structured,"raw_provider_metadata")}}}}}function Fl(e,t,r){switch(t.TAG){case"AssistantContent":let n=XS(t.text);return{renderedBody:n,renderedStructured:tM(e,n,r)};case"ReasoningContent":let i=XS(t.text);return{renderedBody:i,renderedStructured:rM(e,i,r)};case"CommandOutputContent":let o=t.chunks,a=o[o.length-1|0],s=ZS(e,t.command,S9(o),{cwd:Nl.cwd,status:Nl.status,processId:t.processId,durationMs:Nl.durationMs,exitCode:Nl.exitCode,stream:x(G(a,y=>y.stream),"")},r),l=x(E(s,"command"),""),d=Or(s,"output");return{renderedBody:US(l,typeof d=="string"?d:""),renderedStructured:s};case"FileChangeContent":let c=XS(t.patchText),f;return f=r==="completed"||t.status!=="started"?"completed":"started",{renderedBody:c,renderedStructured:VS(e,c,r,f)};case"TerminalInputContent":let p=t.inputText;return{renderedBody:p,renderedStructured:Object.fromEntries([["kind","codex_terminal_input"],["item_id",e],["transcript_unit_id","codex_terminal_input:"+e],["stream_state",fM(r)],["process_id",x(t.processId,"")],["input_text",p]])};case"WebSearchContent":let m=t.queries;return{renderedBody:HS(m),renderedStructured:oM(e,m,r)};case"AgentStatusContent":let h=t._0,_=Wu(h.body);return{renderedBody:Uu(h.title,_),renderedStructured:BS(e,{title:h.title,body:_,severity:h.severity,provider:h.provider,occurredAtMs:h.occurredAtMs,rawProviderMetadata:h.rawProviderMetadata},r)};case"AgentTaskUpdateContent":let g=t._0,b=Wu(g.body);return{renderedBody:Uu(g.title,b!==void 0?b:g.progressLabel),renderedStructured:KS(e,{title:g.title,body:b,state:g.state,progressLabel:g.progressLabel,provider:g.provider,occurredAtMs:g.occurredAtMs,rawProviderMetadata:g.rawProviderMetadata},r)}}}function bM(e){return e.flatMap((t,r)=>{let n=ke(t);if(n===void 0)return[];let i=gM(n);return i!==void 0?i==="webSearch"?[]:_p(n,r).filter(o=>o.body.trim()!=="").map(o=>({snapshotIndex:r,projItemId:E(n,"id"),projStreamKind:i,projBody:o.body,projStructured:o.structured})):[]})}function QS(e,t){let r=x(E(e,"kind"),"codex_output"),n=Object.assign({},e);return n.item_id=t,n.transcript_unit_id=r+":"+t,n}function ew(e,t,r,n){if(r==="webSearch")return"local-codex-search-"+qn(e+":"+t+":web-search").slice(0,32);let i;switch(r){case"reasoning":i="reasoning:";break;case"commandOutput":i="command:";break;case"fileChange":i="file-change:";break;case"terminalInput":i="terminal:";break;case"assistant":case"webSearch":i="";break;case"agentStatus":i="agent-status:";break;case"agentTaskUpdate":i="agent-task:";break}return"local-codex-stream-"+qn(e+":"+t+":"+i+n).slice(0,32)}function Zu(e){let t=qe(e,"turn"),r=qe(e,"item"),n=k(r,d=>qe(d,"turn")),i=k(t,d=>E(d,"id"));if(i!==void 0)return i;let o=E(e,"turnId");if(o!==void 0)return o;let a=E(e,"turn_id");if(a!==void 0)return a;let s=k(r,d=>E(d,"turnId"));if(s!==void 0)return s;let l=k(r,d=>E(d,"turn_id"));return l!==void 0?l:k(n,d=>E(d,"id"))}function wi(e){return e!==void 0?e:null}var Hu="pipeline/turnMappingReady",ql="pipeline/turnMappingFailed",SM="Codex completed without producing a response.",w9="linzumi_agent_reply",k9="The agent ended its turn after narrating an intent without posting a reply or taking any action.",x9="agent narrated intent but posted no reply and took no action",T9="Stopped after repeated empty responses in a row";function A9(e){return"The model appears stuck in a loop - stopped after "+e.toString()+" reasoning steps with no output or tool call (retry to try again)."}var AM="Codex emitted unsupported tool call";function O9(e){return e!==void 0?e.startsWith(AM):!1}function wM(e){switch(e){case"assistant":case"reasoning":case"webSearch":return!1;default:return!0}}function C9(e){if(e===void 0)return;let t=E(e,"type"),r=0;if(t!==void 0){switch(t){case"collabAgentToolCall":case"dynamicToolCall":case"mcpToolCall":r=1;break;default:return}if(r===1){if(!de(E(e,"status"),"completed"))return;let n=Or(e,"error"),i=0;if(n!==void 0){if(n!==null)return;i=2}else i=2;if(i===2){let o=Or(e,"success"),a=0;if(typeof o=="boolean"){if(!o)return;a=3}else a=3;if(a===3){let s=x(E(e,"tool"),""),l=s.split("__");return x(l[l.length-1|0],s)===w9?"ReplyEvidence":"ActionEvidence"}}}}}function OM(e,t){let r=C9(t);if(r!==void 0){r==="ReplyEvidence"?e.agentReplyToolCallSeen=!0:e.agentActionToolCallSeen=!0;return}}function E9(e){let t="unsupported call:";if(e===void 0)return;let r=e.trim();if(!r.toLowerCase().startsWith(t))return;let n=r.slice(t.length).trim();return n===""?"unknown":n}function CM(e){if(e===void 0)return;let t=E(e,"codex_protocol_failure_reason"),r=t!==void 0?t:E(e,"protocolFailureReason");if(r!==void 0)return r;let n=E(e,"type");if(n===void 0)return;switch(n){case"custom_tool_call_output":case"function_call_output":break;default:return}let i=E(e,"output"),o;if(i!==void 0)o=i;else{let a=E(e,"result");if(a!==void 0)o=a;else{let s=E(e,"text");o=s!==void 0?s:E(e,"content")}}return G(E9(o),a=>AM+": "+a)}function P9(e){return Ve(e,void 0,(t,r)=>t!==void 0?t:CM(ke(r)))}function EM(){return{phase:"running",turns:new Map,terminalTurnIds:new Set,bufferedTurns:new Map,consecutiveEmptyTurns:0,lastUpstreamErrorSummary:void 0,consecutiveIsolatedRejections:0,costCap402Seen:!1}}function R9(e){switch(e){case"turn/aborted":case"turn/canceled":case"turn/cancelled":return"interrupted";case"turn/failed":return"failed";default:return}}function I9(e){switch(e){case"command/exec/outputDelta":case"error":case"item/agentMessage/delta":case"item/commandExecution/outputDelta":case"item/commandExecution/terminalInteraction":case"item/completed":case"item/fileChange/outputDelta":case"item/reasoning/textDelta":case"item/started":case"response_item":case"turn/aborted":case"turn/canceled":case"turn/cancelled":case"turn/completed":case"turn/failed":case"turn/started":return!0;default:return!1}}function $9(e){switch(e){case"command/exec/outputDelta":case"item/agentMessage/delta":case"item/commandExecution/outputDelta":case"item/commandExecution/terminalInteraction":case"item/completed":case"item/fileChange/outputDelta":case"item/reasoning/textDelta":case"item/started":case"response_item":return!0;default:return!1}}var M9=new RegExp("<[^>]*>","g"),j9=new RegExp(`data:[^"' )]+`,"g"),z9=new RegExp("\\s+","g");function Xo(e){if(e===void 0)return;let t=e.replace(M9," ").replace(j9,"").replace(z9," ").trim().slice(0,180);if(t!=="")return t}function Yo(e){if(e!==void 0&&typeof e=="number"&&isFinite(e))return e}function kp(e){let t=k(qe(e,"diagnostic_payload"),o=>qe(o,"error")),r=k(t,o=>qe(o,"codexErrorInfo")),n=k(r,o=>qe(o,"responseStreamDisconnected")),i=[Yo(k(n,o=>Or(o,"httpStatusCode"))),Yo(k(r,o=>Or(o,"httpStatusCode"))),Yo(k(r,o=>Or(o,"statusCode"))),Yo(k(r,o=>Or(o,"status"))),Yo(k(t,o=>Or(o,"httpStatusCode"))),Yo(k(t,o=>Or(o,"statusCode"))),Yo(k(t,o=>Or(o,"status")))];return Ve(i,void 0,(o,a)=>o!==void 0?o:a)}function N9(e){let t=E(e,"diagnostic_summary"),r=t!==void 0?t:k(k(qe(e,"diagnostic_payload"),o=>qe(o,"error")),o=>E(o,"message")),n=k(r,o=>Xo(o));if(n===void 0)return;let i=kp(e);return i!==void 0?"Model gateway error (HTTP "+i.toString()+"): "+n:"Model gateway error: "+n}var G9=new RegExp("(?:<!doctype\\s+html|<html(?:\\s|>))","i"),F9=new RegExp("cloudflare|cf-ray|\\bblocked\\b|access denied|\\bchallenge\\b|attention required","i"),D9=new RegExp("cloudflare|cf-ray","i"),q9=new RegExp("\\bblocked\\b|access denied","i"),L9=new RegExp("attention required","i");function U9(e){let t=kp(e);if(t===void 0||t!==401&&t!==403)return;let r=k(qe(e,"diagnostic_payload"),i=>qe(i,"error")),n=Ve([E(e,"diagnostic_summary"),k(r,i=>E(i,"message")),E(e,"message")],void 0,(i,o)=>i!==void 0?i:o!==void 0&&G9.test(o)&&F9.test(o)?o:void 0);return G(n,i=>{let o=D9.test(i),a=q9.test(i),s=L9.test(i);return{edgeStatus:t,edgeSignature:o?"cloudflare":a?"blocked":s?"attention_required":"challenge"}})}function W9(e){return e!==void 0?e===402||e===408||e===425||e===429?!0:e>=500?e<=599:!1:!1}function Z9(e){return e!==void 0&&e>=400&&e<=499&&e!==402&&e!==408&&e!==425?e!==429:!1}function V9(e,t){let r="the model provider rejected this request as invalid (a retry sends the same request and fails the same way, so it was not retried; check the selected model / request and send again).",n=e!==void 0?"Model provider rejected this request (HTTP "+e.toString()+"): "+r:"Model provider rejected this request: "+r,i=x(G(t,o=>o.trim()),"");return i===""?n:n+" Upstream said: "+i}function H9(e){let t="the model provider returned no usable response this turn (retrying will not help until it recovers).";return e!==void 0?"Model upstream unavailable (HTTP "+e.toString()+"): "+t:"Model upstream unavailable: "+t}function B9(e){let t="The agent run was cut off by a tool failure and produced no response (retrying will hit the same failure until the underlying tool call is fixed).",r=x(G(e,n=>n.trim()),"");return r===""?"Tool execution failed: "+t:"Tool execution failed ("+r+"): "+t}function Bu(e){let t=k(qe(e,"diagnostic_payload"),i=>qe(i,"error")),r=E(e,"message"),n;if(r!==void 0)n=r;else{let i=E(e,"reason");if(i!==void 0)n=i;else{let o=k(qe(e,"error"),a=>E(a,"message"));if(o!==void 0)n=o;else{let a=E(e,"error");if(a!==void 0)n=a;else{let s=E(e,"diagnostic");if(s!==void 0)n=s;else{let l=k(t,d=>E(d,"message"));n=l!==void 0?l:k(k(t,d=>qe(d,"error")),d=>E(d,"message"))}}}}}return Xo(n)}var K9=new RegExp("^(?:model_request_rejected|invalid_request_error|invalid_request|request_rejected|content_policy_violation|content_filter|input_validation_error)$","i"),J9=new RegExp("\\bmodel request was rejected\\b|\\bmodel_request_rejected\\b","i");function Y9(e){let t=k(qe(e,"diagnostic_payload"),o=>qe(o,"error")),r=k(t,o=>qe(o,"error")),n=qe(e,"error"),i=[[k(t,o=>E(o,"code")),k(t,o=>E(o,"message"))],[k(t,o=>E(o,"type")),k(t,o=>E(o,"message"))],[k(r,o=>E(o,"code")),k(r,o=>E(o,"message"))],[k(r,o=>E(o,"type")),k(r,o=>E(o,"message"))],[k(n,o=>E(o,"code")),k(n,o=>E(o,"message"))],[k(n,o=>E(o,"type")),k(n,o=>E(o,"message"))],[E(e,"code"),E(e,"message")],[E(e,"type"),E(e,"message")]];return Ve(i,void 0,(o,a)=>{if(o!==void 0)return o;let s=G(a[0],l=>l.trim());if(s!==void 0&&s!==""&&K9.test(s))return{colocatedMessage:a[1]}})}function X9(e){let t=Y9(e),r=Bu(e),n=r!==void 0?J9.test(r):!1;if(t===void 0&&!n)return;let i=Xo(k(t,o=>o.colocatedMessage));return i!==void 0?i:r!==void 0?r:""}function Q9(e){let t="the model provider rejected this request and produced no response (retrying will hit the same rejection until the request is changed).",r=x(G(e,n=>n.trim()),"");return r===""?"The model request was rejected: "+t:"The model request was rejected ("+r+"): "+t}var eJ=new RegExp("^provider_outage$","i"),tJ=new RegExp("rejecting requests|experiencing an outage|provider outage","i");function rJ(e){let t=k(qe(e,"diagnostic_payload"),d=>qe(d,"error")),r=k(t,d=>qe(d,"error")),n=qe(e,"error");if(![k(t,d=>E(d,"code")),k(t,d=>E(d,"type")),k(r,d=>E(d,"code")),k(r,d=>E(d,"type")),k(n,d=>E(d,"code")),k(n,d=>E(d,"type")),E(e,"code"),E(e,"type")].some(d=>{let u=G(d,c=>c.trim());return u!==void 0&&u!==""?eJ.test(u):!1}))return;let a=[k(t,d=>E(d,"message")),k(r,d=>E(d,"message")),k(n,d=>E(d,"message")),E(e,"message"),E(e,"reason")],s=Ve(a,void 0,(d,u)=>{if(d!==void 0)return d;let c=Xo(u);if(c!==void 0&&tJ.test(c))return c});if(s!==void 0)return s;let l=Bu(e);return l!==void 0?l:""}function nJ(e){let t=x(G(e,r=>r.trim()),"");return t===""?"The model provider is currently rejecting requests / experiencing an outage. Your message was NOT processed. Please retry later, or switch to a different model.":t}function iJ(e){let t="the model provider rejected this request and produced no response (a one-off retry did not help).",r=x(G(e,n=>n.trim()),"");return r===""?"The model request was rejected: "+t:"The model request was rejected ("+r+"): "+t}function oJ(e,t,r,n){return e?{dispositionKind:"storm",dispositionRetryable:!1,dispositionReason:nJ(r)}:t<1?{dispositionKind:"isolated_retry",dispositionRetryable:!0,dispositionReason:Q9(n)}:{dispositionKind:"isolated_terminal",dispositionRetryable:!1,dispositionReason:iJ(n)}}var aJ=new RegExp("\\bapply_patch\\b[^]*\\bincompatible\\b|\\bin-flight tool future\\b[^]*\\bfail","i"),sJ=new RegExp("\\btools::router\\b[^]*\\bfatal\\b|\\bresponse\\.failed\\b","i"),lJ=new RegExp("(tool.*fatal|fatal.*tool|response[._]failed|tool_failure)","i");function dJ(e){return aJ.test(e)?!0:sJ.test(e)}function uJ(e){let t=E(e,"kind"),r;if(t!==void 0)r=t;else{let a=E(e,"type");if(a!==void 0)r=a;else{let s=k(qe(e,"error"),l=>E(l,"kind"));r=s!==void 0?s:k(qe(e,"error"),l=>E(l,"type"))}}let n=r!==void 0?lJ.test(r):!1,i=Bu(e),o=i!==void 0?dJ(i):!1;if(n||o)return i!==void 0?i:""}function kM(e){if(e!==void 0&&!(e===null||Array.isArray(e)))switch(typeof e){case"string":return e.trim()!==""?e:void 0;case"object":let t=Object.keys(e);return t.length!==1?void 0:t[0];default:return}}function cJ(e){if(e===void 0)return;let t=bl(e,"{");if(t===void 0)return;let r=_a(e.slice(t)),n=r!==void 0?r:_a(e.slice(t,e.lastIndexOf("}")+1|0));if(n===void 0||!de(E(n,"type"),"error"))return;let i=qe(n,"error");if(i===void 0)return;let o=E(i,"type");return{envelopeStatus:Yo(Or(n,"status")),envelopeErrorType:o!==void 0?o:E(i,"code"),envelopeMessage:E(i,"message")}}function fJ(e){let t=qe(e,"error"),r=k(qe(e,"diagnostic_payload"),h=>qe(h,"error")),n=k(r,h=>qe(h,"error")),i=kp(e),o=k(t,h=>E(h,"type")),a;if(o!==void 0)a=o;else{let h=k(t,_=>E(_,"code"));if(h!==void 0)a=h;else{let _=k(r,g=>E(g,"type"));if(_!==void 0)a=_;else{let g=k(r,b=>E(b,"code"));if(g!==void 0)a=g;else{let b=k(n,y=>E(y,"type"));if(b!==void 0)a=b;else{let y=k(n,v=>E(v,"code"));if(y!==void 0)a=y;else{let v=kM(k(t,S=>Or(S,"codexErrorInfo")));a=v!==void 0?v:kM(k(r,S=>Or(S,"codexErrorInfo")))}}}}}}let s=Xo(k(t,h=>E(h,"message"))),l;if(s!==void 0)l=s;else{let h=Xo(k(n,_=>E(_,"message")));if(h!==void 0)l=h;else{let _=Xo(k(r,g=>E(g,"message")));l=_!==void 0?_:Bu(e)}}if(i===void 0&&a===void 0){let h=Ve([k(t,_=>E(_,"message")),k(n,_=>E(_,"message")),k(r,_=>E(_,"message")),E(e,"message"),E(e,"reason"),E(e,"error"),E(e,"diagnostic"),E(e,"diagnostic_summary")],void 0,(_,g)=>_!==void 0?_:cJ(g));if(h!==void 0){i=h.envelopeStatus,a=h.envelopeErrorType;let _=Xo(h.envelopeMessage);l=_!==void 0?_:l}}let c=G(a,h=>h.trim()),f;f=c!==void 0&&c!==""?c:void 0;let p=$e([G(i,h=>h.toString()),f],h=>h).join(" "),m;if(p==="")m=l;else{let h=l;m=h!==void 0?p+": "+h:p}if(m!==void 0&&m!=="")return m.slice(0,300)}function xM(e){return{swLastUpstreamErrorReason:e.lastUpstreamErrorReason,swLastErrorDiagnosticText:e.lastErrorDiagnosticText,swLastUpstreamErrorHttpStatus:e.lastUpstreamErrorHttpStatus,swUpstreamRejectedSeen:e.upstreamRejectedSeen,swProviderOutageFlaggedSeen:e.providerOutageFlaggedSeen,swToolFatalSeen:e.toolFatalSeen,swErrorNotificationCount:e.errorNotificationCount,swUnattributedErrorNotificationCount:e.unattributedErrorNotificationCount,swModelInteractionSeen:e.modelInteractionSeen}}function PM(e){return e===429||e>=500&&e<=599?"TransientRetryClass":"DeterministicRetryClass"}var mJ=new RegExp("upstream model stream stalled","i"),pJ=new RegExp("\\(HTTP (\\d{3})\\)");function RM(e){let t=pJ.exec(e);if(t!=null)return k(k(t.slice(1)[0],r=>r),jn)}function hJ(e){let t=RM(e);return t!==void 0?PM(t):mJ.test(e)?"TransientRetryClass":"DeterministicRetryClass"}function tw(e){let t={contents:!1},r={contents:e.swUpstreamRejectedSeen||e.swProviderOutageFlaggedSeen||e.swToolFatalSeen||e.swModelInteractionSeen||e.swUnattributedErrorNotificationCount>0},n={contents:0},i=e.swLastUpstreamErrorHttpStatus;i!==void 0&&(n.contents=n.contents+1|0,PM(i)==="TransientRetryClass"?t.contents=!0:r.contents=!0),[e.swLastUpstreamErrorReason,e.swLastErrorDiagnosticText].forEach(s=>{if(s===void 0)return;n.contents=n.contents+1|0,hJ(s)==="TransientRetryClass"?t.contents=!0:r.contents=!0}),e.swErrorNotificationCount>(n.contents+e.swUnattributedErrorNotificationCount|0)&&!e.swUpstreamRejectedSeen&&!e.swProviderOutageFlaggedSeen&&!e.swToolFatalSeen&&(r.contents=!0);let o=r.contents,a=t.contents;return o?"deterministic":a?"transient":"none"}function TM(e){return e.swLastUpstreamErrorHttpStatus===429?!0:[e.swLastUpstreamErrorReason,e.swLastErrorDiagnosticText].some(r=>r!==void 0?de(RM(r),429):!1)}var _J=" (An automatic resume was not attempted: the upstream reported a rate limit (HTTP 429) during this turn, and an automatic resume would burn straight into it. Retry once the rate limit clears.)";function gJ(e){return" (An automatic resume was attempted at "+new Date(e).toISOString()+" and the stream stalled again, so it will not be retried automatically.)"}function yJ(e){return" (An automatic resume was attempted at "+new Date(e).toISOString()+" after the stream stalled; it did not complete.)"}var IM=" (Automatic retries are paused: this session hit your Linzumi cost cap (HTTP 402), and an automatic retry must never spend past it. Retry manually when your budget allows.)";function $M(e){return e>0?" ("+e.toString()+" automatic "+(e===1?"retry":"retries")+" did not help.)":""}var rw={autoRetryPreFirstByteStall:!1,messageStateRetryable:!1,costCapAutoRetrySuppressed:!1,messageStateFate:void 0,autoResumeMidStreamStall:!1,midStreamResumeRateLimitSuppressed:!1,midStreamResumeAttemptBurnedAtMs:void 0};function bp(e,t){return Or(e,t)===!0}function bJ(e){let t=Or(e,"fate");if(typeof t=="string")return lp(t)}function vJ(e,t,r,n){let i=e==="turn/failed"&&de(k(qe(t,"error"),y=>E(y,"code")),"idle_stream_timeout"),o=e==="turn/failed"&&bp(t,"retryable"),a=e==="turn/failed"?bJ(t):void 0;if(!i)return{autoRetryPreFirstByteStall:!1,messageStateRetryable:o,costCapAutoRetrySuppressed:!1,messageStateFate:a,autoResumeMidStreamStall:!1,midStreamResumeRateLimitSuppressed:!1,midStreamResumeAttemptBurnedAtMs:void 0};let s=n.sessionMidStreamResumeAttemptAtMs,l=s!==void 0,d=tw(r)!=="deterministic",u=bp(t,"preFirstByteStall")&&d,c=bp(t,"midStreamResumableStall"),f=c&&TM(r),p=tw({swLastUpstreamErrorReason:r.swLastUpstreamErrorReason,swLastErrorDiagnosticText:r.swLastErrorDiagnosticText,swLastUpstreamErrorHttpStatus:r.swLastUpstreamErrorHttpStatus,swUpstreamRejectedSeen:r.swUpstreamRejectedSeen,swProviderOutageFlaggedSeen:r.swProviderOutageFlaggedSeen,swToolFatalSeen:r.swToolFatalSeen,swErrorNotificationCount:r.swErrorNotificationCount,swUnattributedErrorNotificationCount:r.swUnattributedErrorNotificationCount,swModelInteractionSeen:!1})!=="deterministic",m=c&&!l&&!f&&p,h=(u&&!l||m)&&n.sessionCostCap402Seen,_=u&&!l&&!h,g=m&&!h,b=c&&!l&&f;return{autoRetryPreFirstByteStall:_,messageStateRetryable:u||o,costCapAutoRetrySuppressed:h,messageStateFate:a!==void 0?a:TM(r)?"rate_limited":"transient_upstream",autoResumeMidStreamStall:g,midStreamResumeRateLimitSuppressed:b,midStreamResumeAttemptBurnedAtMs:l?s:void 0}}function SJ(e,t,r){let n=r!==void 0?" (last upstream error: "+r+")":"",i=e.lastErrorDiagnosticText;return i!==void 0?{cause:"codex error without HTTP status: "+i}:e.modelInteractionSeen?{cause:"model returned no assistant output: "+(e.items.length.toString()+" streamed items, ")+(t.toString()+" snapshot items"+n)}:{cause:"codex never called the model: 0 model interactions, "+(e.notificationCount.toString()+" notifications, ")+(e.errorNotificationCount.toString()+" errors"+n)}}function xp(e,t){for(e.terminalTurnIds.delete(t),e.terminalTurnIds.add(t);e.terminalTurnIds.size>512;){let r=e.terminalTurnIds.values().next().value;r!==void 0&&e.terminalTurnIds.delete(r)}}function Tp(e){let t=e.turns.values().toArray().filter(n=>n.phase==="ActiveTurnPhase");return t.length!==1?void 0:t[0].turnId}function Sp(e,t,r,n){return[["thread_key",e.threadKey],["turn_id",t.turnId],["item_key",r.itemKey],["item_id",r.wireItemKey],["stream_kind",r.identity.streamKind],["item_index",r.identity.itemIndex],["source_seq",t.sourceSeq],["client_message_id",r.clientMessageId],["body",n.renderedBody],["structured",n.renderedStructured]]}function Vu(e){let t=e.nextStreamSnapshotIndex;return e.nextStreamSnapshotIndex=e.nextStreamSnapshotIndex+1|0,t}function Dl(e){let t=E(e,"reason");if(t!==void 0)return t;let r=E(e,"message");if(r!==void 0)return r;let n=k(qe(e,"error"),i=>E(i,"message"));return n!==void 0?n:x(E(e,"error"),"codex_turn_aborted")}function wJ(e,t,r){let n={turnId:t,sourceSeq:r,phase:"ActiveTurnPhase",protocolFailureReason:void 0,lastUpstreamErrorReason:void 0,edgeBlockEvidence:void 0,lastErrorDiagnosticText:void 0,toolFatalSeen:!1,toolFatalDetail:void 0,upstreamRejectedSeen:!1,upstreamRejectedDetail:void 0,providerOutageFlaggedSeen:!1,providerOutageDetail:void 0,lastUpstreamErrorHttpStatus:void 0,lastUpstreamErrorSummary:void 0,errorNotificationCount:0,unattributedErrorNotificationCount:0,notificationCount:0,modelInteractionSeen:!1,reasoningStepsWithoutProgress:0,agentReplyToolCallSeen:!1,agentActionToolCallSeen:!1,items:[]};return e.turns.set(t,n),n}function kJ(e,t){if(e.phase==="ActiveTurnPhase"){e.phase="CompletingTurnPhase",t.push({TAG:"RequestSnapshot",turnId:e.turnId});return}let i={TAG:"Log",event:"pipeline.loop.duplicate_turn_completed",fields:Object.fromEntries([["turn_id",e.turnId]])};t.push(i)}function wp(e,t,r,n,i,o,a,s){let l;if(s.autoRetryPreFirstByteStall||s.costCapAutoRetrySuppressed){let _=o.autoRetryAttemptsForSeq;l=n+$M(_!==void 0?_(t.sourceSeq):0)+(s.costCapAutoRetrySuppressed?IM:"")}else l=n;if(s.midStreamResumeRateLimitSuppressed&&(l=l+_J),r==="failed"){let _=s.midStreamResumeAttemptBurnedAtMs;if(_!==void 0)l=l+gJ(_);else{let g=k(o.midStreamResumeAttemptAtMsForSeq,b=>b(t.sourceSeq));g!==void 0&&(l=l+yJ(g))}}t.items.forEach(_=>{if(!_.posted||GS(_.emittedStreamState))return;let g=Fl(_.wireItemKey,_.content,a),b=Object.fromEntries(Sp(o,t,_,g).concat([["stream_snapshot_index",Vu(_)],["terminal_outcome",r],["reason",n]])),y={TAG:"Enqueue",kind:is,data:b,coalesceKey:void 0,resolution:"MustAck"};i.push(y),_.emittedStreamState=a,_.lastEmittedBody=g.renderedBody});let d=s.messageStateFate,u=s.messageStateFate,c;if(u!==void 0){let _=k(o.ladderHistoryForSeq,g=>g(t.sourceSeq,u));c=_!==void 0?[["ladder",_]]:[]}else c=[];let f=t.lastUpstreamErrorSummary,p;if(f!==void 0)p=[["upstream_error",f]];else{let _=e.lastUpstreamErrorSummary;p=_!==void 0?[["upstream_error",_]]:[]}let m=Object.fromEntries([["thread_key",o.threadKey],["turn_id",t.turnId],["seq",t.sourceSeq],["status","failed"],["reason",l]].concat((s.messageStateRetryable?[["retryable",!0]]:[]).concat(d!==void 0?[["fate",d]]:[])).concat(c.concat(p))),h={TAG:"Enqueue",kind:jl,data:m,coalesceKey:void 0,resolution:"MustAck"};i.push(h),i.push({TAG:"TurnTerminal",turnId:t.turnId,outcome:r,reason:l,retryableEmptyTurn:s.autoRetryPreFirstByteStall,autoResumeMidStreamStall:s.autoResumeMidStreamStall,fate:s.messageStateFate}),e.turns.delete(t.turnId),xp(e,t.turnId)}function MM(e,t,r,n,i){let o=l=>{let d=e.turnId,u=e.items.length,c={turnId:d,itemId:l,itemIndex:u,streamKind:t},f=L$(c),p=x(l,f),m={identity:c,itemKey:f,wireItemKey:p,clientMessageId:ew(n.instanceId,e.turnId,t,p),content:hM(t),posted:!1,completed:!1,emittedStreamState:void 0,lastEmittedBody:void 0,nextDeltaIndex:0,nextStreamSnapshotIndex:1};return e.items.push(m),m};if(t==="webSearch"){let l=e.items.find(d=>d.identity.streamKind==="webSearch");return l!==void 0?l:o("web-search:"+e.turnId)}let a=r!==void 0?e.items.find(l=>l.identity.streamKind===t?de(l.identity.itemId,r):!1):void 0;if(a!==void 0)return a;let s=e.items.find(l=>l.identity.streamKind===t&&l.identity.itemId===void 0?!l.completed:!1);return r!==void 0?s!==void 0&&i?s:o(r):s!==void 0?s:o(r)}function jM(e,t,r,n,i,o){let a=Fl(t.wireItemKey,t.content,n);if(t.posted){let u=Object.fromEntries(Sp(i,e,t,a).concat([["delta_index",r],["stream_snapshot_index",Vu(t)]])),c=t.itemKey,f={TAG:"Enqueue",kind:Fu,data:u,coalesceKey:c,resolution:"MustAck"};o.push(f),t.emittedStreamState=n,t.lastEmittedBody=a.renderedBody;return}if(a.renderedBody.trim()==="")return;let l=Object.fromEntries(Sp(i,e,t,a).concat([["delta_index",r],["stream_snapshot_index",Vu(t)]])),d={TAG:"Enqueue",kind:Gu,data:l,coalesceKey:void 0,resolution:"MustAck"};if(o.push(d),t.posted=!0,t.emittedStreamState=n,t.lastEmittedBody=a.renderedBody,n==="completed"){t.completed=!0;return}}function vp(e,t,r,n){if(e.phase==="ActiveTurnPhase"){let l=MM(e,Gl(t),mM(t),r,!1);if(l.completed){let p={TAG:"Log",event:"pipeline.loop.delta_for_completed_item",fields:Object.fromEntries([["turn_id",e.turnId],["item_key",l.itemKey]])};n.push(p);return}l.content=_M(l.content,t);let d=l.nextDeltaIndex;l.nextDeltaIndex=l.nextDeltaIndex+1|0;let u=Gl(t),c;return c=u==="terminalInput"?"completed":"streaming",jM(e,l,d,c,r,n)}let o=[["turn_id",e.turnId],["stream_kind",Gl(t)]],s={TAG:"Log",event:"pipeline.loop.delta_for_completing_turn",fields:Object.fromEntries(o)};n.push(s)}function xJ(e,t,r,n){t.errorNotificationCount=t.errorNotificationCount+1|0;let i=uJ(r);if(i!==void 0){t.toolFatalSeen=!0,t.toolFatalDetail===void 0&&i!==""&&(t.toolFatalDetail=i);let h={TAG:"Log",event:"codex.tool_fatal_captured",fields:Object.fromEntries([["turn_id",t.turnId],["detail",i===""?null:i]])};n.push(h)}let o=X9(r);if(o!==void 0){t.upstreamRejectedSeen=!0,t.upstreamRejectedDetail===void 0&&o!==""&&(t.upstreamRejectedDetail=o);let h={TAG:"Log",event:"codex.upstream_rejection_captured",fields:Object.fromEntries([["turn_id",t.turnId],["detail",o===""?null:o]])};n.push(h)}let a=rJ(r);if(a!==void 0){t.providerOutageFlaggedSeen=!0,t.providerOutageDetail===void 0&&a!==""&&(t.providerOutageDetail=a);let h={TAG:"Log",event:"codex.provider_outage_flagged_captured",fields:Object.fromEntries([["turn_id",t.turnId],["detail",a===""?null:a]])};n.push(h)}let s=kp(r),l=U9(r);if(l!==void 0&&(t.edgeBlockEvidence=l),s!==void 0){let m=t.lastUpstreamErrorHttpStatus;m!==void 0&&s<=m||(t.lastUpstreamErrorHttpStatus=s)}if(de(s,402)&&!e.costCap402Seen){e.costCap402Seen=!0;let h={TAG:"Log",event:"codex.cost_cap_402_seen",fields:Object.fromEntries([["turn_id",t.turnId]])};n.push(h)}let d=N9(r),u=!1;if(d!==void 0){t.lastUpstreamErrorReason=d;let h={TAG:"Log",event:"codex.upstream_error_captured",fields:Object.fromEntries([["turn_id",t.turnId],["reason",d]])};n.push(h)}else{let m=Bu(r);if(m!==void 0){t.lastErrorDiagnosticText=m,u=!0;let _={TAG:"Log",event:"codex.error_without_http_status_captured",fields:Object.fromEntries([["turn_id",t.turnId],["diagnostic_text",m]])};n.push(_)}}i===void 0&&o===void 0&&a===void 0&&s===void 0&&d===void 0&&!u&&(t.unattributedErrorNotificationCount=t.unattributedErrorNotificationCount+1|0);let c=fJ(r);if(c===void 0)return;t.lastUpstreamErrorSummary=c,e.lastUpstreamErrorSummary=c;let p={TAG:"Log",event:"codex.upstream_turn_error_captured",fields:Object.fromEntries([["turn_id",t.turnId],["upstream_error",c]])};n.push(p)}function TJ(e,t,r,n){let i=e.bufferedTurns.get(t);if(i!==void 0){i.push(r);return}e.bufferedTurns.set(t,[r]);let a={TAG:"Log",event:"pipeline.loop.turn_events_buffered",fields:Object.fromEntries([["turn_id",t]])};n.push(a)}function AJ(e,t,r,n){let i=qe(t,"item");i!==void 0&&e.protocolFailureReason===void 0&&(e.protocolFailureReason=CM(i)),OM(e,i!==void 0?i:t);let o=yM(t);if(o===void 0)return;if(o.completedStreamKind==="webSearch"){let c=o.completedContent,f;return f=c.TAG==="WebSearchContent"?c.queries:[],vp(e,{TAG:"WebSearchDelta",itemId:o.completedItemId,queries:f},r,n)}if(e.phase==="ActiveTurnPhase"){let c=MM(e,o.completedStreamKind,o.completedItemId,r,!0),f=!1;if(c.identity.streamKind===o.completedStreamKind){let m=o.completedStreamKind,h;switch(m){case"agentStatus":case"agentTaskUpdate":h=!0;break;default:h=!1}f=h}if(c.completed&&!f)return;c.content=o.completedContent,c.completed=!0;let p=Fl(c.wireItemKey,c.content,"streaming");return c.posted&&de(p.renderedBody,c.lastEmittedBody)?void 0:jM(e,c,Math.max(c.nextDeltaIndex-1|0,0),"streaming",r,n)}let l=[["turn_id",e.turnId],["stream_kind",o.completedStreamKind]],u={TAG:"Log",event:"pipeline.loop.item_completed_for_completing_turn",fields:Object.fromEntries(l)};n.push(u)}function OJ(e,t,r,n){let i=E(t,"turnId"),o=x(E(t,"reason"),"turn source-seq mapping failed");if(i===void 0||e.terminalTurnIds.has(i))return;let a=e.turns.get(i);if(a!==void 0)return wp(e,a,"failed",o,n,r,"failed",rw);let s=e.bufferedTurns.get(i);e.bufferedTurns.delete(i);let l=[["level","warn"],["turn_id",i],["buffered_event_count",x(G(s,c=>c.length),0)],["reason",o]],u={TAG:"Log",event:"pipeline.loop.buffered_turn_failed",fields:Object.fromEntries(l)};n.push(u),n.push({TAG:"TurnTerminal",turnId:i,outcome:"failed",reason:o,retryableEmptyTurn:!1,autoResumeMidStreamStall:!1,fate:void 0}),xp(e,i)}function CJ(e,t,r,n,i){let o=Or(r,"items"),a=o!==void 0?Array.isArray(o)?o:[]:[];t.protocolFailureReason===void 0&&(t.protocolFailureReason=P9(a)),a.forEach(q=>OM(t,ke(q)));let s=bM(a),l=new Set,d=new Map;s.forEach((q,Ee)=>{let ve=q.projItemId;if(ve===void 0)return;let _e=t.items.find(Be=>Be.posted&&!l.has(Be.itemKey)&&Be.identity.streamKind===q.projStreamKind?de(Be.identity.itemId,ve):!1);if(_e!==void 0){l.add(_e.itemKey),d.set(Ee,_e);return}});let u=new Map;t.items.forEach(q=>{if(!(q.posted&&!l.has(q.itemKey)&&q.identity.itemId===void 0))return;let Ee=q.identity.streamKind;u.set(Ee,x(u.get(Ee),0)+1|0)});let c=new Map;s.forEach((q,Ee)=>{if(d.has(Ee))return;let ve=q.projStreamKind;c.set(ve,x(c.get(ve),0)+1|0)});let f=(q,Ee)=>{let ve=Fl(q.wireItemKey,q.content,"completed").renderedBody.trim(),_e=Ee.projBody.trim();return _e.startsWith(ve)?!0:ve.startsWith(_e)};s.forEach((q,Ee)=>{if(d.has(Ee))return;let ve=q.projStreamKind,_e=de(c.get(ve),u.get(ve));if(q.projItemId!==void 0&&!_e)return;let Be=t.items.find(Jt=>Jt.posted&&!l.has(Jt.itemKey)&&Jt.identity.streamKind===q.projStreamKind?Jt.identity.itemId===void 0:!1);if(Be!==void 0&&(q.projItemId===void 0||f(Be,q))){l.add(Be.itemKey),d.set(Ee,Be);return}});let p=d.entries().toArray();t.items.forEach(q=>{let Ee=p.find(Jt=>Jt[1].itemKey===q.itemKey);if(Ee!==void 0){let Jt=s[Ee[0]];if(Jt===void 0)return;let fn=Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["item_key",q.itemKey],["item_id",q.wireItemKey],["stream_kind",q.identity.streamKind],["item_index",q.identity.itemIndex],["source_seq",t.sourceSeq],["client_message_id",q.clientMessageId],["body",Jt.projBody],["structured",QS(Jt.projStructured,q.wireItemKey)],["stream_snapshot_index",Vu(q)],["terminal_outcome","completed"]]),ki={TAG:"Enqueue",kind:is,data:fn,coalesceKey:void 0,resolution:"MustAck"};i.push(ki),q.emittedStreamState="completed",q.lastEmittedBody=Jt.projBody;return}if(!q.posted||GS(q.emittedStreamState))return;let ve=Fl(q.wireItemKey,q.content,"completed"),_e=Object.fromEntries(Sp(n,t,q,ve).concat([["stream_snapshot_index",Vu(q)],["terminal_outcome","completed"]])),Be={TAG:"Enqueue",kind:is,data:_e,coalesceKey:void 0,resolution:"MustAck"};i.push(Be),q.emittedStreamState="completed",q.lastEmittedBody=ve.renderedBody}),s.forEach((q,Ee)=>{if(d.has(Ee))return;let ve=q.projItemId,_e=ve!==void 0?ve:t.turnId+":"+q.projStreamKind+":snapshot:"+q.snapshotIndex.toString(),Be=q.projItemId,Jt=Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["item_key",t.turnId+":"+q.projStreamKind+":"+(Be!==void 0?Be:"snapshot:"+q.snapshotIndex.toString())],["item_id",_e],["stream_kind",q.projStreamKind],["snapshot_index",q.snapshotIndex],["source_seq",t.sourceSeq],["client_message_id",ew(n.instanceId,t.turnId,q.projStreamKind,_e)],["body",q.projBody],["structured",QS(q.projStructured,_e)],["stream_snapshot_index",1]]),fn={TAG:"Enqueue",kind:Du,data:Jt,coalesceKey:void 0,resolution:"MustAck"};i.push(fn)});let m=t.items.some(q=>q.identity.streamKind==="assistant"?q.posted:!1)||s.some(q=>q.projStreamKind==="assistant"),h=t.agentActionToolCallSeen||t.items.some(q=>q.posted?wM(q.identity.streamKind):!1)||s.some(q=>wM(q.projStreamKind)),_=n.linzumiAgentSession&&m&&!t.agentReplyToolCallSeen&&!h,g=m&&!_,b=t.protocolFailureReason,y=O9(b)&&g,v=y?void 0:b,S;if(!g&&b===void 0&&t.lastUpstreamErrorReason===void 0){let q;if(_)q={cause:x9};else{let Ee=t.lastUpstreamErrorSummary;q=SJ(t,s.length,Ee!==void 0?Ee:e.lastUpstreamErrorSummary)}S=q}else S=void 0;let A=!g&&v===void 0&&t.upstreamRejectedSeen,R=!g&&v===void 0&&t.providerOutageFlaggedSeen,W=Z9(t.lastUpstreamErrorHttpStatus),L=!g&&v===void 0&&t.edgeBlockEvidence!==void 0,ae=A&&!R&&!W,U=R||ae?oJ(R,e.consecutiveIsolatedRejections,t.providerOutageDetail,t.upstreamRejectedDetail):void 0,B;if(U!==void 0)switch(U.dispositionKind){case"isolated_retry":B=!0;break;case"storm":case"isolated_terminal":B=!1;break}else B=!1;ae?e.consecutiveIsolatedRejections=e.consecutiveIsolatedRejections+1|0:e.consecutiveIsolatedRejections=0;let oe=!g&&v===void 0&&t.lastUpstreamErrorReason===void 0&&t.lastErrorDiagnosticText===void 0&&!A&&W9(t.lastUpstreamErrorHttpStatus),Z=!g&&v===void 0&&t.lastUpstreamErrorReason===void 0&&W,V=!g&&v===void 0&&t.lastUpstreamErrorReason===void 0&&!A&&!oe&&!Z&&t.toolFatalSeen,M;if(U!==void 0)M=U.dispositionReason;else if(Z){let q=t.upstreamRejectedDetail;M=V9(t.lastUpstreamErrorHttpStatus,q!==void 0?q:t.lastErrorDiagnosticText)}else if(oe)M=H9(t.lastUpstreamErrorHttpStatus);else if(V)M=B9(t.toolFatalDetail);else{let q=t.lastUpstreamErrorReason;M=q!==void 0?q:_?k9:S!==void 0?SM+" ["+S.cause+"]":SM}let N=S!==void 0&&v===void 0&&t.modelInteractionSeen&&t.lastErrorDiagnosticText===void 0&&!A&&!oe&&!Z&&!V;N?e.consecutiveEmptyTurns=e.consecutiveEmptyTurns+1|0:e.consecutiveEmptyTurns=0;let j=N&&e.consecutiveEmptyTurns>3,re=N&&!j||B,se=n.autoRetryAttemptsForSeq,Ae=se!==void 0?se(t.sourceSeq):0,Ue=re&&e.costCap402Seen&&Ae<2,Ge=re&&!Ue;if(L){let q=t.edgeBlockEvidence,Ee=t.edgeBlockEvidence,_e={TAG:"Log",event:"codex.edge_blocked_captured",fields:Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["http_status",q!==void 0?q.edgeStatus:null],["signature",Ee!==void 0?Ee.edgeSignature:null]])};i.push(_e)}let ut=j?T9+" ("+e.consecutiveEmptyTurns.toString()+" in a row"+(S!==void 0?": "+S.cause:"")+").":void 0,ze=v!==void 0?v:g?void 0:ut!==void 0?ut:M,pt=N&&!j?Ae:0,Xe=G(ze,q=>q+$M(pt)+(Ue?IM:"")),He=S!==void 0&&!j&&!A&&!oe&&!Z&&!V||B||L,It;if(He||R)It="transient_upstream";else if(oe){let q=t.lastUpstreamErrorHttpStatus;It=q!==void 0?Ou(q):"transient_upstream"}else It="deterministic";if(Ue){let q=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["reason",wi(ze)],["isolated_rejection_retry_suppressed",B]],ve={TAG:"Log",event:"codex.empty_turn_auto_retry_suppressed_cost_cap",fields:Object.fromEntries(q)};i.push(ve)}if(j){let q=t.lastUpstreamErrorSummary,Ee=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["consecutive_empty_turns",e.consecutiveEmptyTurns],["max_consecutive_empty_turns",3],["cause",wi(G(S,Be=>Be.cause))],["last_upstream_error",wi(q!==void 0?q:e.lastUpstreamErrorSummary)]],_e={TAG:"Log",event:"codex.empty_turn_loop_guard_tripped",fields:Object.fromEntries(Ee)};i.push(_e)}if(y){let q=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["reason",wi(b)]],ve={TAG:"Log",event:"codex.turn_completed_with_unsupported_tool_call_ignored",fields:Object.fromEntries(q)};i.push(ve)}else if(b!==void 0){let q=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["reason",wi(b)]],ve={TAG:"Log",event:"codex.turn_completed_with_protocol_failure",fields:Object.fromEntries(q)};i.push(ve)}if(_){let Ee={TAG:"Log",event:"codex.agent_turn_narration_only_no_reply",fields:Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["streamed_item_count",t.items.length],["snapshot_item_count",s.length],["agent_reply_tool_call_seen",t.agentReplyToolCallSeen],["agent_action_tool_call_seen",t.agentActionToolCallSeen],["retryable_empty_turn",He],["empty_turn_loop_guard_tripped",j]])};i.push(Ee)}if(!m){let q=t.lastUpstreamErrorHttpStatus,Ee=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["streamed_item_count",t.items.length],["snapshot_item_count",s.length],["notification_count",t.notificationCount],["error_notification_count",t.errorNotificationCount],["model_interaction_seen",t.modelInteractionSeen],["last_error_diagnostic_text",wi(t.lastErrorDiagnosticText)],["last_upstream_error_reason",wi(t.lastUpstreamErrorReason)],["last_upstream_error_summary",wi(t.lastUpstreamErrorSummary)],["empty_turn_cause",wi(G(S,Be=>Be.cause))],["tool_fatal_seen",V],["tool_fatal_detail",wi(t.toolFatalDetail)],["upstream_rejected_seen",A],["upstream_rejected_detail",wi(t.upstreamRejectedDetail)],["upstream_terminal_4xx",Z],["last_upstream_error_http_status",q!==void 0?q:null],["provider_outage_flagged",R],["isolated_rejection_retry_granted",B],["rejection_disposition",U!==void 0?U.dispositionKind:null],["consecutive_isolated_rejections",e.consecutiveIsolatedRejections],["retryable_empty_turn",He],["empty_turn_loop_guard_tripped",j],["cost_cap_auto_retry_suppressed",Ue]],_e={TAG:"Log",event:"codex.turn_completed_without_assistant_output",fields:Object.fromEntries(Ee)};i.push(_e)}let Cr;if(Xe!==void 0){let q=k(n.ladderHistoryForSeq,_e=>_e(t.sourceSeq,It)),Ee=t.lastUpstreamErrorSummary,ve;if(Ee!==void 0)ve=[["upstream_error",Ee]];else{let _e=e.lastUpstreamErrorSummary;ve=_e!==void 0?[["upstream_error",_e]]:[]}Cr=[["status","failed"],["reason",Xe]].concat((He?[["retryable",!0]]:[]).concat([["fate",It]])).concat((q!==void 0?[["ladder",q]]:[]).concat(L?[["failure_class","edge_blocked"]]:[]).concat(ve))}else Cr=[["status","processed"]];let Ut=Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["seq",t.sourceSeq]].concat(Cr)),Qe={TAG:"Enqueue",kind:jl,data:Ut,coalesceKey:void 0,resolution:"MustAck"};i.push(Qe),Xe===void 0&&(e.lastUpstreamErrorSummary=void 0),i.push(Xe!==void 0?{TAG:"TurnTerminal",turnId:t.turnId,outcome:"failed",reason:Xe,retryableEmptyTurn:Ge,autoResumeMidStreamStall:!1,fate:It}:{TAG:"TurnTerminal",turnId:t.turnId,outcome:"completed",reason:void 0,retryableEmptyTurn:!1,autoResumeMidStreamStall:!1,fate:void 0}),e.turns.delete(t.turnId),xp(e,t.turnId)}function EJ(e,t,r,n,i){if(e.terminalTurnIds.has(t)){let d={TAG:"Log",event:"pipeline.loop.duplicate_snapshot",fields:Object.fromEntries([["turn_id",t]])};i.push(d);return}let o=e.turns.get(t);if(o!==void 0){if(o.phase!=="ActiveTurnPhase")return CJ(e,o,r,n,i);let u={TAG:"Log",event:"pipeline.loop.snapshot_for_active_turn",fields:Object.fromEntries([["turn_id",t]])};i.push(u);return}let s={TAG:"Log",event:"pipeline.loop.snapshot_for_unknown_turn",fields:Object.fromEntries([["turn_id",t]])};i.push(s)}function PJ(e,t,r,n){let i=t.method,o=x(t.params,{});if(i===Hu)return;if(i===ql)return OJ(e,o,r,n);if(!I9(i))return;let a=Zu(o),s=a!==void 0?a:Tp(e);if(s!==void 0){if(e.terminalTurnIds.has(s)){let y={TAG:"Log",event:"pipeline.loop.notification_for_terminal_turn",fields:Object.fromEntries([["method",i],["turn_id",s]])};n.push(y);return}let u=e.turns.get(s),c;if(u!==void 0)c=u;else{let b=r.sourceSeqForTurn(s);c=b!==void 0?wJ(e,s,b):void 0}if(c===void 0)return TJ(e,s,{TAG:"HarnessNotification",_0:t},n);if(c.notificationCount=c.notificationCount+1|0,$9(i)&&(c.modelInteractionSeen=!0),i==="turn/started")return;if(i==="turn/completed")return kJ(c,n);let f=R9(i);if(f!==void 0){let b=vJ(i,o,xM(c),{sessionCostCap402Seen:e.costCap402Seen,sessionMidStreamResumeAttemptAtMs:k(r.midStreamResumeAttemptAtMsForSeq,v=>v(c.sourceSeq))});if(b.autoResumeMidStreamStall){let v=[["thread_key",r.threadKey],["turn_id",c.turnId],["source_seq",c.sourceSeq],["reason",Dl(o)]],A={TAG:"Log",event:"codex.mid_stream_stall_auto_resume_flagged",fields:Object.fromEntries(v)};n.push(A)}else if(b.midStreamResumeRateLimitSuppressed){let v=[["thread_key",r.threadKey],["turn_id",c.turnId],["source_seq",c.sourceSeq],["reason",Dl(o)]],A={TAG:"Log",event:"codex.mid_stream_stall_resume_suppressed_rate_limit",fields:Object.fromEntries(v)};n.push(A)}else{let v=b.midStreamResumeAttemptBurnedAtMs;if(v!==void 0){let S=[["thread_key",r.threadKey],["turn_id",c.turnId],["source_seq",c.sourceSeq],["resume_attempt_at_ms",v],["reason",Dl(o)]],R={TAG:"Log",event:"codex.mid_stream_stall_second_stall_after_resume",fields:Object.fromEntries(S)};n.push(R)}}if(b.autoRetryPreFirstByteStall){let v=[["thread_key",r.threadKey],["turn_id",c.turnId],["source_seq",c.sourceSeq],["reason",Dl(o)],["evidence_class",tw(xM(c))]],A={TAG:"Log",event:"codex.pre_first_byte_stall_auto_retry_flagged",fields:Object.fromEntries(v)};n.push(A)}else if(b.costCapAutoRetrySuppressed){let v=[["thread_key",r.threadKey],["turn_id",c.turnId],["source_seq",c.sourceSeq],["reason",Dl(o)],["flavor",bp(o,"midStreamResumableStall")?"mid_stream_resume":"pre_first_byte_retry"]],A={TAG:"Log",event:"codex.pre_first_byte_stall_retry_suppressed_cost_cap",fields:Object.fromEntries(v)};n.push(A)}let y;switch(f){case"failed":y="failed";break;case"completed":case"interrupted":y="interrupted";break}return wp(e,c,f,Dl(o),n,r,y,b)}if(i==="error")return xJ(e,c,o,n);if(i==="item/completed"||i==="response_item")return AJ(c,o,r,n);let p=pM(i,o);if(p===void 0)return;if(c.phase!=="ActiveTurnPhase")return vp(c,p,r,n);if(Gl(p)!=="reasoning")return c.reasoningStepsWithoutProgress=0,vp(c,p,r,n);if(c.reasoningStepsWithoutProgress=c.reasoningStepsWithoutProgress+1|0,c.reasoningStepsWithoutProgress<=64)return vp(c,p,r,n);let h=A9(c.reasoningStepsWithoutProgress),g={TAG:"Log",event:"codex.reasoning_loop_breaker_tripped",fields:Object.fromEntries([["thread_key",r.threadKey],["turn_id",c.turnId],["source_seq",c.sourceSeq],["reasoning_steps_without_progress",c.reasoningStepsWithoutProgress],["max_reasoning_steps_without_progress",64]])};return n.push(g),wp(e,c,"failed",h,n,r,"interrupted",rw)}let d={TAG:"Log",event:"pipeline.loop.notification_without_turn",fields:Object.fromEntries([["method",i]])};n.push(d)}function RJ(e,t,r,n,i){switch(t){case"codexDied":let a=e.phase,s=0;switch(a){case"running":case"closing":s=2;break;case"dead":return}if(s===2){e.turns.values().toArray().forEach(u=>wp(e,u,"failed",r,i,n,"interrupted",rw)),e.bufferedTurns.entries().toArray().forEach(u=>{let c=u[0],p={TAG:"Log",event:"pipeline.loop.buffered_turn_dropped",fields:Object.fromEntries([["turn_id",c],["buffered_event_count",u[1].length],["reason",r]])};i.push(p),i.push({TAG:"TurnTerminal",turnId:c,outcome:"failed",reason:r,retryableEmptyTurn:!1,autoResumeMidStreamStall:!1,fate:void 0}),xp(e,c)}),e.bufferedTurns.clear(),e.phase="dead";let d={TAG:"Log",event:"pipeline.loop.codex_died",fields:Object.fromEntries([["reason",r]])};i.push(d);return}break;case"shutdown":case"replaceRunner":break}switch(e.phase){case"running":e.phase="closing";let a=[["kind",t],["reason",r]],l={TAG:"Log",event:"pipeline.loop.closing",fields:Object.fromEntries(a)};i.push(l);return;case"closing":case"dead":return}}function zM(e,t,r,n){switch(t.TAG){case"HarnessNotification":case"CompletionSnapshot":break;case"Lifecycle":return RJ(e,t.kind,t.reason,r,n)}switch(e.phase){case"running":switch(t.TAG){case"HarnessNotification":return PJ(e,t._0,r,n);case"CompletionSnapshot":let c=t.turnId,f=e.bufferedTurns.get(c);if(f!==void 0){f.push(t);return}else return EJ(e,c,t.snapshot,r,n);case"Lifecycle":return}case"closing":let o=[["source",Ml(t)]],s={TAG:"Log",event:"pipeline.loop.event_after_close",fields:Object.fromEntries(o)};n.push(s);return;case"dead":let l=[["source",Ml(t)]],u={TAG:"Log",event:"pipeline.loop.event_after_death",fields:Object.fromEntries(l)};n.push(u);return}}function IJ(e,t,r){e.bufferedTurns.keys().toArray().forEach(n=>{if(t.sourceSeqForTurn(n)===void 0)return;let o=x(e.bufferedTurns.get(n),[]);e.bufferedTurns.delete(n);let s={TAG:"Log",event:"pipeline.loop.buffered_turn_drained",fields:Object.fromEntries([["turn_id",n],["buffered_event_count",o.length]])};r.push(s),o.forEach(l=>zM(e,l,t,r))})}function NM(e,t,r){let n=[];return e.phase==="running"&&IJ(e,r,n),zM(e,t,r,n),n}var nw=2;var $J=[500,1e3,2500,5e3,1e4,3e4],MJ=1440*60*1e3;function Ap(e,t){return e+"\0"+t}function GM(e,t){let r=Math.max(1,Math.ceil(t*e.length)|0);return x(e[r-1|0],0)}function jJ(e){if(e.length===0)return;let t=e.toSorted((r,n)=>r-n);return{p50Ms:GM(t,.5),p95Ms:GM(t,.95),maxMs:x(t[t.length-1|0],0),ackedInWindow:t.length}}function zJ(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}function FM(e){let t=e.log,r=e.onPermanentFailure,n=e.builders,i={contents:e.threadKey},o=x(e.now,()=>Date.now()),a=x(e.retryDelaysMs,$J.slice()),s={contents:[]},l={contents:0},d=new Map,u={contents:new Map},c=[],f={contents:1},p={contents:0},m={contents:0},h={contents:0},_={contents:0},g={contents:0},b={contents:0},y=[],v={contents:0},S={contents:!1},A={contents:!0},R={contents:!1},W={contents:void 0},L={contents:void 0},ae=Math.max(1,x(e.maxInFlightPushes,1)),U={contents:0},B={contents:[]},oe={contents:Promise.resolve()},Z=()=>s.contents[l.contents],V=()=>({totalEnqueued:p.contents,totalAcked:m.contents,totalDroppedBestEffort:_.contents,totalPermanentFailures:g.contents,totalExpiredOnRecovery:b.contents,lastEntrySeq:f.contents-1}),M=e.persistDir;if(M!==void 0){let H=NS(M,i.contents),te=F$(H,t),ne=x(e.journalRecoveryMaxAgeMs,MJ),Ke=o(),tt=[];te.pendingEntries.forEach(ct=>{if(Ke-ct.enqueuedAtMs>ne){tt.push(ct);return}let Pt={entry:ct,state:"EntryQueued",outcome:void 0,retryTimer:void 0};s.contents.push(Pt);let vt=ct.coalesceKey;if(vt!==void 0){d.set(Ap(ct.kind,vt),Pt);return}}),u.contents=te.kv,p.contents=te.counters.totalEnqueued,m.contents=te.counters.totalAcked,_.contents=te.counters.totalDroppedBestEffort,g.contents=te.counters.totalPermanentFailures,b.contents=te.counters.totalExpiredOnRecovery+tt.length|0,f.contents=te.counters.lastEntrySeq+1;let at=D$(H,()=>({pendingEntries:s.contents.slice(l.contents).map(ct=>ct.entry),kv:u.contents,counters:V()}),t,e.journalCompactionThreshold,void 0);if(L.contents=at,tt.length!==0){tt.forEach(vt=>at.appendExpired(vt.entrySeq));let ct=tt.map(vt=>Math.max(0,Ke-vt.enqueuedAtMs)),Pt=new Set(tt.map(vt=>vt.kind));t("outbox_recovery_expired",Object.fromEntries([["level","warn"],["threadKey",i.contents],["expiredEntries",tt.length],["survivingEntries",s.contents.length-l.contents|0],["maxAgeMs",ne],["oldestAgeMs",Ve(ct,0,(vt,Ct)=>Math.max(vt,Ct))],["newestAgeMs",Ve(ct,Number.POSITIVE_INFINITY,(vt,Ct)=>Math.min(vt,Ct))],["kinds",Pt.values().toArray().map(vt=>vt)]]))}(s.contents.length-l.contents|0)>0&&t("outbox_recovered",Object.fromEntries([["threadKey",i.contents],["pendingEntries",s.contents.length-l.contents|0],["nextEntrySeq",f.contents]]))}let re={remember:(H,te)=>{u.contents.set(H,te);let ne=L.contents;if(ne!==void 0)return ne.appendKv(H,te)},recall:H=>u.contents.get(H)},se=()=>{if(l.contents=l.contents+1|0,l.contents>=64&&l.contents<<1>=s.contents.length){s.contents=s.contents.slice(l.contents),l.contents=0;return}},Ae=()=>{let H=Z(),te=c.length-1|0;for(;te>=0;){let ne=c[te];if(ne!==void 0&&(H!==void 0?H.entry.entrySeq>ne.upToSeq:!0)){c.splice(te,1);let tt=ne.timer;tt!==void 0&&clearTimeout(ue(tt)),ne.resolve({TAG:"Ok",_0:void 0})}te=te-1|0}},Ue=H=>{let te=H.entry.coalesceKey;if(te===void 0)return;let ne=Ap(H.entry.kind,te),Ke=d.get(ne);if(Ke!==void 0&&Ke===H){d.delete(ne);return}},Ge=(H,te)=>{let ne=H.entry;switch(te.TAG){case"OutcomeAck":let Ke=n[ne.kind];if(Ke!==void 0){let vt=Ke.onReply;if(vt!==void 0){let Ct;try{vt(ne.data,te._0,re),Ct={TAG:"Ok",_0:void 0}}catch(go){let na=ee(go);Ct={TAG:"Error",_0:Ne(na)}}Ct.TAG!=="Ok"&&t("outbox_on_reply_failed",Object.fromEntries([["threadKey",i.contents],["entrySeq",ne.entrySeq],["kind",ne.kind],["error",Ct._0.message]]))}}let tt=L.contents;tt!==void 0&&tt.appendAck(ne.entrySeq);break;case"OutcomeSkip":let at=te._0;t("outbox_entry_skipped",Object.fromEntries([["threadKey",i.contents],["entrySeq",ne.entrySeq],["kind",ne.kind],["reason",at]]));let ct=L.contents;ct!==void 0&&ct.appendSkip(ne.entrySeq,at);break;case"OutcomeFail":if(ne.resolution==="MustAck"){let vt=L.contents;vt!==void 0&&vt.appendFail(ne.entrySeq);let Ct;try{r(ne,te._0),Ct={TAG:"Ok",_0:void 0}}catch(go){let na=ee(go);Ct={TAG:"Error",_0:Ne(na)}}Ct.TAG!=="Ok"&&t("outbox_permanent_failure_callback_failed",Object.fromEntries([["threadKey",i.contents],["entrySeq",ne.entrySeq],["error",Ct._0.message]]))}else{let vt=L.contents;vt!==void 0&&vt.appendDrop(ne.entrySeq)}break}Ue(H),se(),Ae()},ut=()=>{let H=!0;for(;H;){let te=Z();if(te!==void 0){let ne=te.outcome;ne!==void 0?Ge(te,ne):H=!1}else H=!1}},ze=(H,te)=>{let ne=H.entry;switch(te.TAG){case"OutcomeAck":case"OutcomeSkip":break;case"OutcomeFail":let Ke=te._0;ne.resolution==="MustAck"?(g.contents=g.contents+1|0,t("outbox_permanent_failure",Object.fromEntries([["threadKey",i.contents],["entrySeq",ne.entrySeq],["kind",ne.kind],["attempts",ne.attempts],["error",Ke]]))):(_.contents=_.contents+1|0,t("outbox_dropped_best_effort",Object.fromEntries([["threadKey",i.contents],["entrySeq",ne.entrySeq],["kind",ne.kind],["attempts",ne.attempts],["error",Ke]])));break}H.outcome=te,H.state="EntryQueued"},pt=H=>{y.length<256?y.push(H):y[v.contents]=H;let te=v.contents+1|0;v.contents=te>=256?0:te},Xe=H=>{let te=H.retryTimer;if(te!==void 0){clearTimeout(ue(te)),H.retryTimer=void 0;return}},He=()=>{if(U.contents>0)return;let H=B.contents;B.contents=[],H.forEach(te=>te())},It=()=>{let H=Z();return H===void 0||H.state!=="EntryQueued"||H.outcome!==void 0?!1:H.retryTimer!==void 0},Cr={contents:()=>{}},Ut=(H,te)=>{Xe(H);let ne=setTimeout(()=>{if(H.retryTimer=void 0,!(R.contents||S.contents||H.outcome!==void 0))return Cr.contents()},te|0);ne.unref(),H.retryTimer=Ze(ne)},Qe=async(H,te,ne)=>{let Ke=H.entry,tt=o(),at;try{at=await e.push(te[0],te[1],te[2],ne)}catch(vt){let Ct=ee(vt);at={TAG:"PushFailed",message:Ne(Ct).message,budgetExempt:!1}}if(at.TAG==="Acked")return ne(),pt(Math.max(0,o()-tt)),m.contents=m.contents+1|0,ze(H,{TAG:"OutcomeAck",_0:at._0});let ct=at.message;if(ne(),H.state="EntryQueued",at.budgetExempt)return Ke.attempts=Ke.attempts-1|0,h.contents=h.contents+1|0,t("outbox_push_connection_wait",Object.fromEntries([["threadKey",i.contents],["entrySeq",Ke.entrySeq],["kind",Ke.kind],["error",ct]])),!R.contents&&!S.contents?Ut(H,1e3):void 0;let Pt=a[Ke.attempts-1|0];return Pt!==void 0?(h.contents=h.contents+1|0,t("outbox_push_retry",Object.fromEntries([["threadKey",i.contents],["entrySeq",Ke.entrySeq],["kind",Ke.kind],["attempt",Ke.attempts],["delayMs",Pt],["error",ct]])),!R.contents&&!S.contents?Ut(H,Pt):void 0):ze(H,{TAG:"OutcomeFail",_0:ct})},q=async H=>{let te=H.entry,ne=oe.contents,Ke={contents:()=>{}};oe.contents=new Promise((Pt,vt)=>{Ke.contents=Pt});let tt={contents:!1},at=()=>{if(!tt.contents)return tt.contents=!0,Ke.contents()};if(H.state="EntryPushing",U.contents=U.contents+1|0,await ne,R.contents||S.contents||H.outcome!==void 0){H.state="EntryQueued",at(),U.contents=U.contents-1|0;return}let ct=n[te.kind];if(ct!==void 0){let Pt;try{Pt=ct.build(te.data,re)}catch(vt){let Ct=ee(vt);Pt={TAG:"BuildFailed",_0:Ne(Ct).message}}switch(Pt.TAG){case"BuildPush":te.attempts=te.attempts+1|0,await Qe(H,[Pt.event,Pt.payload,Pt.timeoutMs],at),U.contents=U.contents-1|0;return;case"BuildSkip":at(),ze(H,{TAG:"OutcomeSkip",_0:Pt._0}),U.contents=U.contents-1|0;return;case"BuildFailed":at(),ze(H,{TAG:"OutcomeFail",_0:Pt._0}),U.contents=U.contents-1|0;return}}else{at(),ze(H,{TAG:"OutcomeFail",_0:"no outbox builder registered for kind "+te.kind}),U.contents=U.contents-1|0;return}},Ee=()=>{if(ut(),R.contents||S.contents||It())return He();let H=l.contents;for(;H<s.contents.length&&U.contents<ae;){let te=s.contents[H];te!==void 0&&te.state==="EntryQueued"&&te.outcome===void 0&&(te.retryTimer!==void 0||zn(q(te).then(()=>Ee()),at=>(t("outbox_drain_loop_error",Object.fromEntries([["threadKey",i.contents]])),Ee(),Promise.resolve()))),H=H+1|0}He()};Cr.contents=Ee;let ve=()=>{if(S.contents||R.contents)return;if(Z()!==void 0){Promise.resolve().then(()=>{if(!R.contents&&!S.contents)return Ee()});return}},_e=H=>{let te=f.contents-1,ne=Z();return(ne!==void 0?ne.entry.entrySeq>te:!0)?Promise.resolve({TAG:"Ok",_0:void 0}):new Promise((tt,at)=>{let ct={upToSeq:te,resolve:tt,timer:void 0};H!==void 0&&(ct.timer=Ze(setTimeout(()=>{let Pt=c.indexOf(ct);Pt===-1||c.splice(Pt,1),tt({TAG:"Error",_0:"outbox flush for "+i.contents+" timed out after "+H.toString()+"ms with "+(s.contents.length-l.contents|0).toString()+" entries pending"})},H|0))),c.push(ct)})},Be=async H=>{A.contents=!1;let te=await _e(H);te.TAG!=="Ok"&&t("outbox_close_flush_timeout",Object.fromEntries([["threadKey",i.contents],["depth",s.contents.length-l.contents|0],["error",te._0]])),R.contents=!0;let ne=l.contents;for(;ne<s.contents.length;){let at=s.contents[ne];at!==void 0&&Xe(at),ne=ne+1|0}U.contents>0&&await Promise.race([new Promise((at,ct)=>{B.contents.push(()=>at())}),zJ(1e3)]);let Ke=c.slice();c.splice(0,c.length),Ke.forEach(at=>{let ct=at.timer;ct!==void 0&&clearTimeout(ue(ct)),at.resolve({TAG:"Error",_0:"outbox for "+i.contents+" closed"})});let tt=L.contents;if(tt!==void 0)return await tt.close()},Jt=(H,te,ne)=>{if(H===void 0)return ne;let Ke=H.coalesce;if(Ke===void 0)return ne;let tt;try{tt={TAG:"Ok",_0:Ke(te.data,ne)}}catch(at){let ct=ee(at);tt={TAG:"Error",_0:Ne(ct)}}return tt.TAG==="Ok"?tt._0:(t("outbox_coalesce_failed",Object.fromEntries([["threadKey",i.contents],["entrySeq",te.entrySeq],["kind",te.kind],["error",tt._0.message]])),ne)},tn={enqueue:H=>{if(!A.contents)return{TAG:"Error",_0:"outbox for "+i.contents+" is closed"};p.contents=p.contents+1|0;let te=H.coalesceKey,ne;if(te!==void 0){let vt=Ap(H.kind,te),Ct=d.get(vt);if(Ct!==void 0)if(Ct.state==="EntryQueued")if(Ct.outcome!==void 0)ne=void 0;else{Ct.entry.data=Jt(n[H.kind],Ct.entry,H.data);let Hl=L.contents;Hl!==void 0&&Hl.appendCoalesce(Ct.entry.entrySeq,Ct.entry.data),ne=Ct.entry.entrySeq}else ne=void 0;else ne=void 0}else ne=void 0;if(ne!==void 0)return{TAG:"Ok",_0:ne};let Ke=f.contents;f.contents=f.contents+1;let tt={entrySeq:Ke,kind:H.kind,data:H.data,coalesceKey:H.coalesceKey,resolution:H.resolution,attempts:0,enqueuedAtMs:o()},at={entry:tt,state:"EntryQueued",outcome:void 0,retryTimer:void 0};s.contents.push(at);let ct=H.coalesceKey;ct!==void 0&&d.set(Ap(H.kind,ct),at);let Pt=L.contents;return Pt!==void 0&&Pt.appendEnqueue(tt),ve(),{TAG:"Ok",_0:Ke}},flush:_e,pause:()=>{S.contents=!0},resume:()=>{if(!S.contents)return;S.contents=!1;let H=l.contents;for(;H<s.contents.length;){let te=s.contents[H];te!==void 0&&(te.entry.attempts=0,Xe(te)),H=H+1|0}ve()},metrics:()=>{let H=Z(),te=G(L.contents,ne=>ne.status());return{depth:s.contents.length-l.contents|0,oldestEntryAgeMs:G(H,ne=>Math.max(0,o()-ne.entry.enqueuedAtMs)),totalEnqueued:p.contents,totalAcked:m.contents,totalRetried:h.contents,totalDroppedBestEffort:_.contents,totalPermanentFailures:g.contents,totalExpiredOnRecovery:b.contents,totalJournalWriteFailures:x(G(te,ne=>ne.totalWriteFailures),0),journalDegraded:x(G(te,ne=>ne.degraded),!1),paused:S.contents,pushLatency:jJ(y)}},close:H=>{let te=W.contents;if(te!==void 0)return te;let ne=Be(x(H,3e4));return W.contents=ne,ne},journalSettled:()=>{let H=L.contents;return H!==void 0?H.settled():Promise.resolve()},rekeyJournal:H=>{if(H===i.contents)return;i.contents=H;let te=e.persistDir,ne=L.contents;if(te!==void 0&&ne!==void 0)return ne.rekey(NS(te,H))}};return ve(),tn}var GJ=10*6e4;function FJ(e){switch(e){case"collabAgentToolCall":case"commandExecution":case"contextCompaction":case"dynamicToolCall":case"mcpToolCall":case"terminalInput":return!0;default:return!1}}function ss(e){let t=Sr(e);return t!==void 0?x(Er(ue(t)),"unknown error"):"unknown error"}function DM(e){let t=EM(),r=e.threadKey,n=e.instanceId,i=e.sourceSeqForTurn,o=e.autoRetryAttemptsForSeq,a=e.midStreamResumeAttemptAtMsForSeq,s=e.ladderHistoryForSeq,l=e.linzumiAgentSession,d={threadKey:r,instanceId:n,sourceSeqForTurn:i,autoRetryAttemptsForSeq:o,midStreamResumeAttemptAtMsForSeq:a,ladderHistoryForSeq:s,linzumiAgentSession:l},u=[],c=x(e.now,()=>Date.now()),f=new Map,p=new Map,m=new Map,h=new Map,_=new Set,g=x(e.bufferedTurnMaxAgeMs,GJ),b=x(e.bufferedTurnMaxEvents,1e4),y=x(e.bufferedTurnSweepIntervalMs,3e4),v={contents:!1},S={contents:!0},A={contents:void 0},R=(N,j)=>{try{return e.log(N,Object.fromEntries(j))}catch{return}},W=N=>t.turns.has(N)?!0:t.bufferedTurns.has(N),L=()=>{t.turns.keys().toArray().forEach(N=>{if(!f.has(N)){f.set(N,c());return}}),f.keys().toArray().forEach(N=>{if(!t.turns.has(N)){f.delete(N);return}}),t.bufferedTurns.keys().toArray().forEach(N=>{if(!p.has(N)){p.set(N,c());return}}),p.keys().toArray().forEach(N=>{if(!t.bufferedTurns.has(N)){p.delete(N),_.delete(N);return}}),m.keys().toArray().forEach(N=>{if(!W(N)){m.delete(N);return}}),h.keys().toArray().forEach(N=>{if(!W(N)){h.delete(N);return}})},ae=(N,j)=>{if(W(N)){m.set(N,{atMs:c(),activityKind:j});return}},U=N=>{switch(N.TAG){case"HarnessNotification":let j=N._0,re=j.method;if(re===Hu||re===ql)return;let se=Zu(x(j.params,{})),Ae=se!==void 0?se:Tp(t);return Ae!==void 0?ae(Ae,re):void 0;case"CompletionSnapshot":case"Lifecycle":return}},B=N=>{switch(N.TAG){case"HarnessNotification":let j=N._0,re=j.method;if(re!=="item/started"&&re!=="item/completed"&&re!=="response_item")return;let se=x(j.params,{}),Ae=Zu(se),Ue=Ae!==void 0?Ae:Tp(t);if(Ue===void 0||!W(Ue))return;let Ge=yp(se);if(Ge===void 0||Ge==="")return;if(re==="item/started"){let ze=k(qe(se,"item"),He=>E(He,"type"));if(ze===void 0||!FJ(ze))return;let pt=h.get(Ue),Xe;if(pt!==void 0)Xe=pt;else{let He=new Map;h.set(Ue,He),Xe=He}Xe.set(Ge,{kind:ze,startedAtMs:c()});return}let ut=h.get(Ue);if(ut!==void 0){ut.delete(Ge);return}else return;case"CompletionSnapshot":case"Lifecycle":return}},oe=()=>{if(!S.contents||t.phase!=="running")return!1;let N=c(),j={contents:!1};return t.bufferedTurns.entries().toArray().forEach(re=>{let se=re[0];if(_.has(se))return;let Ae=re[1],Ue=N-x(p.get(se),N),Ge=Ue>g,ut=Ae.length>b;if(Ge||ut){_.add(se),R("pipeline.loop.buffered_turn_overdue",[["level","warn"],["thread_key",e.threadKey],["turn_id",se],["buffered_event_count",Ae.length],["age_ms",Ue],["max_age_ms",g],["max_events",b]]),u.push({TAG:"HarnessNotification",_0:{method:ql,params:Object.fromEntries([["turnId",se],["reason",ut?"turn source mapping never arrived ("+Ae.length.toString()+" buffered events exceeded the "+b.toString()+" cap)":"turn source mapping never arrived within "+g.toString()+"ms"]])}}),j.contents=!0;return}}),j.contents},Z=()=>{if(v.contents)return;v.contents=!0;let N=!0;for(;N;){let j=u.shift();if(j!==void 0){let re;try{re=NM(t,j,d)}catch(se){let Ae=ee(se);R("pipeline.loop.event_processing_failed",[["thread_key",e.threadKey],["source",Ml(j)],["message",ss(Ae)]]),re=void 0}re!==void 0&&(L(),U(j),B(j),re.forEach(se=>{try{switch(se.TAG){case"Enqueue":return e.outboxEnqueue({kind:se.kind,data:se.data,coalesceKey:se.coalesceKey,resolution:se.resolution});case"RequestSnapshot":return e.requestSnapshot(se.turnId);case"TurnTerminal":return e.onTurnTerminal(se.turnId,se.outcome,se.reason,se.retryableEmptyTurn,se.autoResumeMidStreamStall,se.fate);case"Log":try{return e.log(se.event,se.fields)}catch{return}}}catch(Ae){let Ue=ee(Ae),Ge;switch(se.TAG){case"Enqueue":Ge="enqueue";break;case"RequestSnapshot":Ge="requestSnapshot";break;case"TurnTerminal":Ge="turnTerminal";break;case"Log":Ge="log";break}return R("pipeline.loop.effect_failed",[["thread_key",e.threadKey],["effect",Ge],["message",ss(Ue)]])}}),oe())}else N=!1}v.contents=!1},V;if(y>0){let N=setInterval(()=>{if(oe())return Z()},y);N.unref(),V=Ze(N)}else V=void 0;let M=N=>{let j=h.get(N);return j!==void 0?j.values().toArray().map(re=>({kind:re.kind,startedAtMs:re.startedAtMs})):[]};return{submit:N=>{try{return S.contents?(u.push(N),Z()):R("pipeline.loop.event_after_drain",[["thread_key",e.threadKey],["source",Ml(N)]])}catch(j){let re=ee(j);return R("pipeline.loop.submit_failed",[["thread_key",e.threadKey],["message",ss(re)]])}},metrics:()=>({queueDepth:u.length,phase:t.phase,activeTurns:t.turns.values().toArray().map(N=>({turnId:N.turnId,sourceSeq:N.sourceSeq,startedAtMs:x(f.get(N.turnId),c()),lastActivityAtMs:G(m.get(N.turnId),j=>j.atMs),lastActivityKind:G(m.get(N.turnId),j=>j.activityKind),openItems:M(N.turnId)})),bufferedTurns:t.bufferedTurns.entries().toArray().map(N=>{let j=N[0];return{turnId:j,bufferedEventCount:N[1].length,firstBufferedAtMs:x(p.get(j),c()),lastActivityAtMs:G(m.get(j),re=>re.atMs),lastActivityKind:G(m.get(j),re=>re.activityKind),openItems:M(j)}})}),noteTurnActivity:(N,j)=>{try{return ae(N,j)}catch(re){let se=ee(re);return R("pipeline.loop.note_activity_failed",[["thread_key",e.threadKey],["message",ss(se)]])}},drainAndClose:N=>{let j=A.contents;if(j!==void 0)return j;let re=(async()=>{S.contents=!1,V!==void 0&&clearInterval(ue(V)),await Promise.resolve(),Z();let se;try{se=await e.outboxFlush(N)}catch(Ae){let Ue=ee(Ae);return R("pipeline.loop.drain_flush_failed",[["thread_key",e.threadKey],["message",ss(Ue)]])}if(se.TAG!=="Ok")return R("pipeline.loop.drain_flush_failed",[["thread_key",e.threadKey],["message",se._0]])})();return A.contents=re,re}}}var DJ=10*6e4,qJ={emittedTotalEnqueued:0,emittedTotalAcked:0,emittedTotalRetried:0,emittedTotalDroppedBestEffort:0,emittedTotalPermanentFailures:0,emittedTotalExpiredOnRecovery:0,emittedTotalJournalWriteFailures:0,emittedJournalDegraded:!1};function LJ(e){return e.activeTurns.map(t=>({candidateTurnId:t.turnId,candidateSourceSeq:t.sourceSeq,sinceMs:t.startedAtMs,buffered:!1,candidateLastActivityAtMs:t.lastActivityAtMs,candidateLastActivityKind:t.lastActivityKind,candidateOpenItems:t.openItems})).concat(e.bufferedTurns.map(t=>({candidateTurnId:t.turnId,candidateSourceSeq:void 0,sinceMs:t.firstBufferedAtMs,buffered:!0,candidateLastActivityAtMs:t.lastActivityAtMs,candidateLastActivityKind:t.lastActivityKind,candidateOpenItems:t.openItems})))}function UJ(e){return Ve(e,void 0,(t,r)=>t!==void 0&&t<=r.startedAtMs?t:r.startedAtMs)}function WJ(e,t,r){return e.depth>0||e.paused||t.queueDepth>0||t.activeTurns.length!==0||t.bufferedTurns.length!==0||e.totalEnqueued!==r.emittedTotalEnqueued||e.totalAcked!==r.emittedTotalAcked||e.totalRetried!==r.emittedTotalRetried||e.totalDroppedBestEffort!==r.emittedTotalDroppedBestEffort||e.totalPermanentFailures!==r.emittedTotalPermanentFailures||e.totalExpiredOnRecovery!==r.emittedTotalExpiredOnRecovery||e.totalJournalWriteFailures!==r.emittedTotalJournalWriteFailures?!0:e.journalDegraded!==r.emittedJournalDegraded}function ZJ(e){return Ve(e,void 0,(t,r)=>t!==void 0&&t.startedAtMs<=r.startedAtMs?t:r)}function ow(e){return e}function aw(e){return new Set(e).values().toArray().toSorted(fs)}function LM(e){let t=x(e.now,()=>Date.now()),r=x(e.intervalMs,3e4),n=x(e.turnStalledThresholdMs,DJ),i={contents:qJ},o=new Set,a=new Set,s={contents:!1},l=(c,f,p,m)=>{let h=new Set(c.map(_=>_.candidateTurnId));o.values().toArray().forEach(_=>{if(!h.has(_)){o.delete(_);return}}),a.values().toArray().forEach(_=>{if(!h.has(_)){a.delete(_);return}}),c.forEach(_=>{let g=Math.max(0,m-_.sinceMs),b=Math.max(_.sinceMs,x(_.candidateLastActivityAtMs,_.sinceMs)),y=Math.max(0,m-b),v=aw(p.filter(W=>W.waitTurnId===_.candidateTurnId).map(W=>W.waitKind));if(v.length===0){a.delete(_.candidateTurnId);let W=_.candidateOpenItems.length!==0?n*2:n;if(!(y>=W&&!o.has(_.candidateTurnId)))return;let L=UJ(_.candidateOpenItems);o.add(_.candidateTurnId);let ae=_.candidateSourceSeq,U=_.candidateLastActivityKind,B=_.candidateLastActivityAtMs,oe=f.oldestEntryAgeMs;return e.log("pipeline.turn_stalled",Object.fromEntries([["level","warn"],["thread_key",e.threadKey],["turn_id",_.candidateTurnId],["source_seq",ae!==void 0?ae:null],["buffered",_.buffered],["turn_age_ms",g],["quiet_ms",y],["last_activity_kind",U!==void 0?U:null],["last_activity_age_ms",B!==void 0?Math.max(0,m-B):null],["threshold_ms",n],["effective_threshold_ms",W],["open_item_count",_.candidateOpenItems.length],["open_item_kinds",aw(_.candidateOpenItems.map(Z=>Z.kind)).map(ow)],["open_item_oldest_age_ms",L!==void 0?Math.max(0,m-L):null],["outbox_depth",f.depth],["oldest_entry_age_ms",oe!==void 0?oe:null],["paused",f.paused]]))}if(!(y>=n&&!a.has(_.candidateTurnId)))return;a.add(_.candidateTurnId);let S=_.candidateSourceSeq,A=_.candidateLastActivityKind,R=_.candidateLastActivityAtMs;e.log("pipeline.turn_waiting_on_user",Object.fromEntries([["thread_key",e.threadKey],["turn_id",_.candidateTurnId],["source_seq",S!==void 0?S:null],["buffered",_.buffered],["turn_age_ms",g],["quiet_ms",y],["last_activity_kind",A!==void 0?A:null],["last_activity_age_ms",R!==void 0?Math.max(0,m-R):null],["threshold_ms",n],["wait_kinds",v.map(ow)],["open_item_count",_.candidateOpenItems.length],["open_item_kinds",aw(_.candidateOpenItems.map(W=>W.kind)).map(ow)]]))})},d=()=>{if(s.contents)return;let c;try{let v=e.turnWaitStates;c=[e.outboxMetrics(),e.loopMetrics(),v!==void 0?v():[]]}catch(v){let S=ee(v);e.log("pipeline.stats_sample_failed",Object.fromEntries([["thread_key",e.threadKey],["message",ss(S)]])),c=void 0}if(c===void 0)return;let f=c[1],p=c[0],m=t();if(l(LJ(f),p,c[2],m),!WJ(p,f,i.contents))return;let h=ZJ(f.activeTurns),_=p.oldestEntryAgeMs,g=p.pushLatency,b=p.pushLatency,y=p.pushLatency;e.log("pipeline.stats",Object.fromEntries([["thread_key",e.threadKey],["outbox_depth",p.depth],["oldest_entry_age_ms",_!==void 0?_:null],["total_enqueued",p.totalEnqueued],["total_acked",p.totalAcked],["total_retried",p.totalRetried],["total_dropped_best_effort",p.totalDroppedBestEffort],["total_permanent_failures",p.totalPermanentFailures],["total_expired_on_recovery",p.totalExpiredOnRecovery],["total_journal_write_failures",p.totalJournalWriteFailures],["journal_degraded",p.journalDegraded],["push_latency_p50_ms",g!==void 0?g.p50Ms:null],["push_latency_p95_ms",b!==void 0?b.p95Ms:null],["push_latency_max_ms",y!==void 0?y.maxMs:null],["push_latency_window_acked",x(G(p.pushLatency,v=>v.ackedInWindow),0)],["paused",p.paused],["loop_queue_depth",f.queueDepth],["loop_phase",f.phase],["active_turn_count",f.activeTurns.length],["buffered_turn_count",f.bufferedTurns.length],["active_turn_id",h!==void 0?h.turnId:null],["active_turn_source_seq",h!==void 0?h.sourceSeq:null],["active_turn_age_ms",h!==void 0?Math.max(0,m-h.startedAtMs):null]])),i.contents={emittedTotalEnqueued:p.totalEnqueued,emittedTotalAcked:p.totalAcked,emittedTotalRetried:p.totalRetried,emittedTotalDroppedBestEffort:p.totalDroppedBestEffort,emittedTotalPermanentFailures:p.totalPermanentFailures,emittedTotalExpiredOnRecovery:p.totalExpiredOnRecovery,emittedTotalJournalWriteFailures:p.totalJournalWriteFailures,emittedJournalDegraded:p.journalDegraded}},u;if(r>0){let c=setInterval(d,r);c.unref(),u=Ze(c)}else u=void 0;return{sample:d,stop:()=>{if(s.contents=!0,u!==void 0){clearInterval(ue(u));return}}}}var HJ=[1e3,5e3];function ni(e,t){return k(e[t],Tr)}function Ju(e,t){return k(e[t],ha)}function Ll(e,t){return k(e[t],ke)}function sw(e,t){Object.entries(t).forEach(r=>{e[r[0]]=r[1]})}function Ku(e){let t={};return sw(t,e),t}function BJ(e){let t=e.body;return typeof t=="string"?t:""}function KJ(e){return x(Ll(e,"structured"),{})}function JJ(e){return e===Gu||e===Fu||e===is?!0:e===Du}function YJ(e,t){let r=ni(t,"turn_id");r!==void 0&&(e.turn_id=r);let n=ni(t,"item_key");n!==void 0&&(e.item_key=n);let i=Ju(t,"delta_index");i!==void 0&&(e.delta_index=i);let o=Ju(t,"stream_snapshot_index");if(o!==void 0){e.stream_snapshot_index=o;return}}function ZM(e,t,r){let n=t.traceparentForThread(r);if(n!==void 0){e.traceparent=n;return}}function XJ(e){return{build:(t,r)=>{let n=e.wire(),i=n.threadId,o=n.harnessSessionId;if(i===void 0)return{TAG:"BuildSkip",_0:"session_thread_unbound"};if(o===void 0)return{TAG:"BuildSkip",_0:"session_thread_unbound"};let a=ni(t,"client_message_id");if(a===void 0)return{TAG:"BuildSkip",_0:"missing_client_message_id"};let s=ni(t,"turn_id"),l=Ju(t,"source_seq"),d={};s!==void 0&&(d.turn_id=s),d.stream_key=a;let u=Ku(d),c=Ll(t,"local_runner_runtime_metadata");c!==void 0&&sw(u,c);let f=Ku(e.rowEnvelope("codex_output",o,l,u)),p=n.rootSeq;p!==void 0&&(f.reply_to_seq=p),l!==void 0&&(f.source_message_seq=l),sw(f,d);let m=Ku(KJ(t));m.stream_key=a,f.structured=m;let h={};h.workspace=n.workspaceSlug,h.channel=n.channelSlug,h.thread_id=i,h.stream_key=a;let _=n.leaseEpoch;return _!==void 0&&(h.lease_epoch=_),h.body=BJ(t),h.payload=f,h.client_message_id=a,YJ(h,t),ZM(h,e,i),{TAG:"BuildPush",event:"session:stream_thread_message",payload:h,timeoutMs:void 0}},onReply:void 0,coalesce:void 0}}function QJ(e){return{build:(t,r)=>{let n=e.wire(),i=n.threadId;if(i===void 0)return{TAG:"BuildSkip",_0:"session_thread_unbound"};let o=Ju(t,"seq"),a=ni(t,"status");if(o===void 0)return{TAG:"BuildSkip",_0:"malformed_message_state_entry"};if(a===void 0)return{TAG:"BuildSkip",_0:"malformed_message_state_entry"};let s=de(t.suppress_terminal_for_recovered_turn,!0),l=ni(t,"turn_id"),d=e.isRecoveredTurn,u=l!==void 0&&d!==void 0?d(l)===!0:!1;if(s||u)return{TAG:"BuildSkip",_0:"terminal_for_recovered_turn"};let c={};c.workspace=n.workspaceSlug,c.channel=n.channelSlug,c.thread_id=i,c.instance_id=e.instanceId;let f=n.harnessSessionId;f!==void 0&&(c.codex_thread_id=f),c.seq=o,c.status=a;let p=ni(t,"reason");p!==void 0&&(c.reason=p);let m=t.retryable;typeof m=="boolean"&&m&&(c.retryable=!0);let h=t.fate;typeof h=="string"&&Dt(lp(h))&&(c.fate=h);let _=Ll(t,"ladder");_!==void 0&&(c.ladder=_),t.failure_class==="edge_blocked"&&(c.failure_class="edge_blocked");let b=ni(t,"upstream_error");b!==void 0&&(c.upstream_error=b);let y=ni(t,"turn_id");y!==void 0&&(c.turn_id=y);let v=n.leaseEpoch;return v!==void 0&&(c.lease_epoch=v),ZM(c,e,i),{TAG:"BuildPush",event:"message_state",payload:c,timeoutMs:void 0}},onReply:void 0,coalesce:void 0}}function e6(e){let t=XJ(e);return Object.fromEntries([[Gu,t],[Fu,t],[is,t],[Du,t],[jl,QJ(e)]])}function VM(e,t){if(e.error!==void 0)return[];let n=k(Ll(e,"result"),a=>Ll(a,"thread")),i=x(k(k(n,a=>a.turns),Qi),[]),o=$e(i,ke).find(a=>{let s=a.id;return typeof s=="string"?s===t:!1});return $e(x(k(k(o,a=>a.items),Qi),[]),ke)}var fne=new RegExp("^item-\\d+$");var HM=o$;function t6(e){return new Promise((t,r)=>{setTimeout(()=>t(),e|0)})}function UM(e){let t=Sr(e);return t!==void 0?x(Er(ue(t)),"unknown error"):"unknown error"}function WM(e){return e!==void 0?e:null}function BM(e){let t=e6({instanceId:e.instanceId,wire:e.wire,rowEnvelope:e.rowEnvelope,isRecoveredTurn:e.isRecoveredTurn,traceparentForThread:e.traceparentForThread}),r=FM({threadKey:e.threadKey,push:e.push,builders:t,persistDir:e.persistDir,retryDelaysMs:G(e.outboxRetryDelaysMs,f=>f.slice()),onPermanentFailure:(f,p)=>e.log("pipeline.outbox_entry_failed",Object.fromEntries([["thread_key",e.threadKey],["entry_seq",f.entrySeq],["kind",f.kind],["attempts",f.attempts],["item_key",WM(ni(f.data,"item_key"))],["turn_id",WM(ni(f.data,"turn_id"))],["message",p]])),log:e.log,now:void 0,maxInFlightPushes:x(e.outboxMaxInFlightPushes,16),journalCompactionThreshold:void 0,journalRecoveryMaxAgeMs:e.journalRecoveryMaxAgeMs}),n=f=>{let p=!1;if(f.kind===jl){let b=ni(f.data,"turn_id"),y=e.isRecoveredTurn;p=b!==void 0&&y!==void 0?y(b)===!0:!1}if(p){let b=Ku(f.data);return b.suppress_terminal_for_recovered_turn=!0,{kind:f.kind,data:b,coalesceKey:f.coalesceKey,resolution:f.resolution}}if(!JJ(f.kind))return f;let m=Ju(f.data,"source_seq"),h=Ll(f.data,"local_runner_runtime_metadata"),_=h!==void 0?h:k(e.runtimeMetadataForSourceSeq,b=>b(m));if(_===void 0)return f;let g=Ku(f.data);return g.local_runner_runtime_metadata=_,{kind:f.kind,data:g,coalesceKey:f.coalesceKey,resolution:f.resolution}},i=f=>{let p=r.enqueue(n(f));if(p.TAG!=="Ok")try{return e.log("pipeline.loop.effect_failed",Object.fromEntries([["thread_key",e.threadKey],["effect","enqueue"],["message",p._0]]))}catch{return}},o={contents:void 0},a=f=>{let p=o.contents;if(p!==void 0)return p.submit(f)},s=x(e.sleep,t6),l=async f=>{let p=x(e.snapshotRetryDelaysMs,HJ),m=0,h=!1;for(;!h;){let _;try{_=await e.resolveSnapshot(f)}catch(g){let b=ee(g);_={TAG:"Error",_0:UM(b)}}if(_.TAG==="Ok")a({TAG:"CompletionSnapshot",turnId:f,snapshot:Object.fromEntries([["items",_._0.slice()]])}),h=!0;else{let g=_._0,b=p[m];e.log("pipeline.snapshot_resolution_failed",Object.fromEntries([["thread_key",e.threadKey],["turn_id",f],["attempt",m+1|0],["retry_in_ms",b!==void 0?b:null],["message",g]])),b!==void 0?(await s(b),m=m+1|0):(a({TAG:"HarnessNotification",_0:{method:"turn/failed",params:Object.fromEntries([["turnId",f],["reason","completion snapshot resolution failed: "+g]])}}),h=!0)}}},d=DM({threadKey:e.threadKey,instanceId:e.instanceId,outboxEnqueue:i,outboxFlush:f=>r.flush(f),sourceSeqForTurn:e.sourceSeqForTurn,autoRetryAttemptsForSeq:e.autoRetryAttemptsForSeq,midStreamResumeAttemptAtMsForSeq:e.midStreamResumeAttemptAtMsForSeq,ladderHistoryForSeq:e.ladderHistoryForSeq,onTurnTerminal:e.onTurnTerminal,requestSnapshot:f=>{zn(l(f),p=>(e.log("pipeline.snapshot_request_failed",Object.fromEntries([["thread_key",e.threadKey],["turn_id",f],["message",UM(p)]])),Promise.resolve()))},log:e.log,linzumiAgentSession:e.linzumiAgentSession===!0,now:void 0,bufferedTurnMaxAgeMs:void 0,bufferedTurnMaxEvents:void 0,bufferedTurnSweepIntervalMs:void 0});o.contents=d;let u=LM({threadKey:e.threadKey,outboxMetrics:()=>r.metrics(),loopMetrics:()=>d.metrics(),log:e.log,intervalMs:e.statsIntervalMs,turnStalledThresholdMs:e.turnStalledThresholdMs,turnWaitStates:e.turnWaitStates,now:void 0}),c={contents:void 0};return{submitNotification:(f,p)=>d.submit({TAG:"HarnessNotification",_0:{method:f,params:p}}),notifyTurnMappingReady:f=>d.submit({TAG:"HarnessNotification",_0:{method:Hu,params:Object.fromEntries([["turnId",f]])}}),notifyTurnMappingFailed:(f,p)=>d.submit({TAG:"HarnessNotification",_0:{method:ql,params:Object.fromEntries([["turnId",f],["reason",p]])}}),noteTurnActivity:(f,p)=>d.noteTurnActivity(f,p),submitLifecycle:(f,p)=>d.submit({TAG:"Lifecycle",kind:f,reason:p}),pause:()=>r.pause(),resume:()=>r.resume(),rebindThreadKey:f=>r.rekeyJournal(f),flushOutbox:f=>r.flush(f),metrics:()=>r.metrics(),close:f=>{let p=c.contents;if(p!==void 0)return p;let m=(async()=>(u.stop(),d.submit({TAG:"Lifecycle",kind:"shutdown",reason:"session closed"}),await d.drainAndClose(f),await r.close(f)))();return c.contents=m,m}}}function Op(e){return e.split("_").map((t,r)=>r!==0?t.slice(0,1).toUpperCase()+t.slice(1,t.length):t).join("")}function Yu(e){return x(G(Mm.find(t=>t[0]===e),t=>t[1]),e)}var Nn=Yu("harness_session_id"),ls=Op(Nn);function Wi(e,t){let r=e[t];if(typeof r=="string")return r}function lw(e,t){let r=e[t];if(r!==void 0)switch(typeof r){case"string":return r;case"number":return isFinite(r)?r.toString():void 0;default:return}}function n6(e,t){let r=k(t.error,ke),n=k(t.item,ke),i=d=>Ve(d,void 0,(u,c)=>u!==void 0?u:c),o=i([lw(t,"code"),k(r,d=>lw(d,"code")),lw(t,"status")]),a=i([Wi(t,"message"),Wi(t,"detail"),Wi(t,"reason"),k(r,d=>Wi(d,"message")),k(r,d=>Wi(d,"detail")),k(r,d=>Wi(d,"reason"))]),s=o!==void 0?e+" "+o:e,l=a!==void 0?a:G(k(n,d=>Wi(d,"type")),d=>"item.type="+d);return G(l,d=>s+": "+d)}function i6(e,t){switch(e){case"error":case"warning":break;default:return t}let r=n6(e,t);if(r===void 0)return t;let n={};return Object.entries(t).forEach(i=>{n[i[0]]=i[1]}),n.diagnostic_summary=r,n.diagnostic_payload=t,n.diagnostic_payload_keys=Object.keys(t).toSorted(fs).map(i=>i),n}var o6=["When you create files that should be attached back to Linzumi, use the linzumi_upload_files MCP tool silently.","Do not mention that you are using the upload tool. Do not print an upload manifest or upload footer in the message.","The MCP upload tool is the only supported path for attaching generated files to Linzumi messages."];function KM(e){let t=A$(e);return t.trimStart().startsWith("!")?t:[t,""].concat(o6).join(`
|
|
391
|
-
`)}var a6={sandboxedNeverDefault:!1};function JM(e){let t=Vm(e.approvalPolicy,e.sandbox,a6);return t.TAG==="Ok"?t._0:"on-request"}function YM(e){let t={};t.approvalPolicy=JM(e);let r=e.sandbox;return r!==void 0&&(t.sandbox=r),t}function s6(e,t,r,n){let i={};i.threadId=e,i.input=[Object.fromEntries([["type","text"],["text",t]])],i.cwd=r;let o=n.model;o!==void 0&&(i.model=o);let a=n.reasoningEffort;a!==void 0&&(i.effort=a),i.approvalPolicy=JM(n);let s=n.sandbox;if(s!==void 0){let l=NR(s,r);l.TAG==="Ok"&&(i.sandboxPolicy=l._0)}return i}async function Ul(e,t,r,n){let i=e.deps,o={};o.workspace=i.workspaceSlug,o.channel=i.channelSlug,o.thread_id=i.threadId,o.instance_id=i.instanceId,o[Nn]=i.harnessSessionId,o.seq=t,o.status=r,n!==void 0&&(o.reason=n);let a=i.actorSlug;a!==void 0&&(o.actor_slug=a);let s=i.actorUserId;s!==void 0&&(o.actor_user_id=s);let l=await i.transport.push(i.commanderTopic,"message_state",o,void 0);if(l.TAG!=="Ok")return i.log("kandan.message_state_push_failed",Object.fromEntries([["seq",t],["status",r],["message",ri(l._0)]]))}async function Qo(e,t,r){return e.processingReason=r,e.processingSeq=t,await Ul(e,t,"processing",r)}function l6(e){let t=G(e.LINZUMI_TYPING_HEARTBEAT_MS,n=>n.trim());if(t===void 0||t==="")return 5e3;let r=jn(t);return r!==void 0&&isFinite(r)&&r>0?Math.trunc(r):5e3}function XM(e){let t={};return t.workspace=e.workspaceSlug,t.channel=e.channelSlug,t.thread_id=e.threadId,t.instance_id=e.instanceId,t[Nn]=e.harnessSessionId,t}async function d6(e){let t=e.processingSeq,r=e.processingReason;if(t!==void 0&&r!==void 0)return await Ul(e,t,"processing",r)}function QM(e,t){if(e.typingHeartbeatInFlight)return;e.typingHeartbeatInFlight=!0;let r=e.deps;(async()=>{try{let i=await r.transport.push(r.commanderTopic,"session:typing_start",XM(r),void 0);i.TAG!=="Ok"&&r.log("kandan.optional_push_failed",Object.fromEntries([["event","session:typing_start"],["message",ri(i._0)]])),t&&await d6(e)}catch(i){let o=ee(i);r.log("kandan.typing_heartbeat_failed",Object.fromEntries([["message",Ne(o).message]]))}e.typingHeartbeatInFlight=!1})()}function ej(e,t){e.typingHeartbeatTimer=Ze(e.deps.timers.setTimer(()=>{if(e.typingActive)return QM(e,!0),ej(e,t)},t))}function u6(e){if(e.typingActive=!0,QM(e,!1),e.typingHeartbeatTimer===void 0)return ej(e,l6(e.deps.env))}function tj(e){let t=e.typingHeartbeatTimer;if(t!==void 0){e.deps.timers.clearTimer(ue(t)),e.typingHeartbeatTimer=void 0;return}}function c6(e,t){if(tj(e),!e.typingActive)return;e.typingActive=!1;let r=e.deps;(async()=>{let i=await r.transport.push(r.commanderTopic,"session:typing_stop",XM(r),void 0);if(i.TAG!=="Ok")return r.log("kandan.typing_stop_after_completion_failed",Object.fromEntries([["turn_id",t],["message",ri(i._0)]]))})()}function f6(e,t,r){switch(t){case"item/completed":let n=k(r.item,ke);if(n===void 0||!Dt(Wi(n,"id")))return;let i=e.activityJournalTurns[e.activityJournalTurns.length-1|0];if(i===void 0)return;let o=r.completedAtMs,a=typeof o=="number"?o:void 0;for(i.items.push({item:n,completedAtMs:a}),e.activityJournalItemCount=e.activityJournalItemCount+1|0;e.activityJournalItemCount>2e3&&e.activityJournalTurns.length>1;){let l=e.activityJournalTurns.shift();l!==void 0&&(e.activityJournalItemCount=e.activityJournalItemCount-l.items.length|0)}return;case"turn/started":let s=k(k(r.turn,ke),l=>Wi(l,"id"));if(s!==void 0){e.activityJournalTurns.push({turnId:s,items:[]});return}else return;default:return}}function m6(e){if(e.TAG==="ResultReply")return k(k(k(ke(e._0),t=>t.turn),ke),t=>Wi(t,"id"))}async function rj(e,t){let r=e.deps;r.log("codex.turn_starting",Object.fromEntries([["queued_seq",t.seq],["thread_id",r.threadId],[Nn,r.harnessSessionId]])),await Qo(e,t.seq,"starting turn"),await Qo(e,t.seq,"starting turn"),u6(e),e.dispatchingTurnStart=!0,e.pendingStartingPaints=[];let n,i=0,o;try{o=await r.harness.request("turn/start",s6(r.harnessSessionId,KM(t),r.cwd,r.defaults)),i=1}catch(a){let s=ee(a);e.pendingStartingPaints=[],n={TAG:"Error",_0:"turn/start failed: "+Ne(s).message}}if(i===1)if(o.TAG==="Ok"){let a=o._0;if(a.TAG==="ResultReply"){let s=m6(a);if(s!==void 0){e.turnSeqs.set(s,t.seq),e.active={turnId:s,sourceSeq:t.seq};let l=e.pendingStartingPaints;e.pendingStartingPaints=[],l.forEach(u=>{if(u.paintTurnId===s&&nn(e.processingReason,u.reason)){Qo(e,t.seq,u.reason);return}}),r.log("codex.turn_started",Object.fromEntries([["turn_id",s]]));let d=e.pipeline;d!==void 0&&d.notifyTurnMappingReady(s),n={TAG:"Ok",_0:void 0}}else n={TAG:"Error",_0:"turn/start reply carried no turn id"}}else n={TAG:"Error",_0:"turn/start failed: "+a.message}}else n={TAG:"Error",_0:"turn/start failed: "+o._0};return e.dispatchingTurnStart=!1,n}function p6(e,t){let r=e.deps,n=e.retryCandidates.get(t);if(n===void 0)return;let i=x(e.autoRetryAttempts.get(t),0)+1|0;e.autoRetryAttempts.set(t,i),r.log("codex.empty_turn_auto_retry",Object.fromEntries([["queued_seq",t],["attempt",i],["max_attempts",nw]])),r.timers.setTimer(()=>{(async()=>{await Qo(e,t,"retrying empty turn");let o=await rj(e,n);if(o.TAG!=="Ok")return r.log("codex.empty_turn_auto_retry_failed",Object.fromEntries([["queued_seq",t],["message",o._0]]))})()},1500)}function h6(e,t,r,n,i,o){let a=e.deps,s=e.turnSeqs.get(t),l=e.active;switch(l!==void 0&&l.turnId===t&&(e.active=void 0),e.processingReason=void 0,e.processingSeq=void 0,c6(e,t),r){case"completed":if(s!==void 0){a.commitAppliedSourceSeq(s),e.autoRetryAttempts.delete(s),e.retryCandidates.delete(s),e.fateLadderRuns.delete(s);return}else return;case"failed":if(s===void 0||o===void 0)return;let u=x(e.autoRetryAttempts.get(s),0)<nw,c=i&&u,f=u&&!a.harness.isClosed(),p={inPlaceResume:c,redispatch:f,workerRebuild:!1},m=k$({fate:o,run:e.fateLadderRuns.get(s),nowMs:Date.now(),budgets:zu(a.env),breaker:(R,W)=>"Proceed",grants:p,rateLimitResetAtMs:void 0});if(m.TAG==="Stand")return;let h;switch(m.TAG){case"Stand":h=["stand",void 0];break;case"ExecuteRung":h=["execute_rung",m.rung];break;case"HoldUntilReset":h=["hold_until_reset",void 0];break;case"BreakerHold":h=["breaker_hold",void 0];break;case"Red":h=["red",void 0];break}let _=h[1],g;if(g=m.TAG==="Stand"?void 0:m.run,g!==void 0){e.fateLadderRuns.set(s,g);let R={};R.turn_id=t,R.queued_seq=s,R.fate=o,R.decision=h[0],_!==void 0&&(R.rung=_),R.recovery_rungs_attempted=g.recoveryRungsAttempted,a.log("codex.fate_ladder_step",R)}if(m.TAG==="ExecuteRung")switch(m.rung){case"in_place_resume":p6(e,s);break;case"redispatch":case"worker_rebuild":break}let b=a.switchProbe;if(m.TAG!=="Red"||b===void 0)return;let y=w$(o,m.cause,{sourceHarness:"codex",targetHarness:b.targetHarness,model:b.model,backendDead:a.harness.isClosed(),exportable:e.activityJournalItemCount>0,targetAdapterAvailable:b.targetAdapterAvailable()});if(y===void 0)return;e.failoverOffers.set(s,y),a.log("codex.fate_ladder_failover_offer",Object.fromEntries([["queued_seq",s],["offer",RS(y)]]));let v={};v.workspace=a.workspaceSlug,v.channel=a.channelSlug,v.thread_id=a.threadId,v.instance_id=a.instanceId,v[Nn]=a.harnessSessionId,v.seq=s,v.status="failed",n!==void 0&&(v.reason=n),v.fate=o,v.ladder=dp(e.fateLadderRuns.get(s),o,zu(a.env),Ze(y));let S=a.actorSlug;S!==void 0&&(v.actor_slug=S);let A=a.actorUserId;A!==void 0&&(v.actor_user_id=A),a.transport.push(a.commanderTopic,"message_state",v,void 0).then(R=>{});return;case"interrupted":return}}async function dw(e){let t="chat:"+e.workspaceSlug+":"+e.channelSlug,r=await e.transport.join(t,SP(e.commanderId,e.threadId,0),{rejoinPayload:void 0,registrationId:void 0});if(r.TAG!=="Ok")return{TAG:"Error",_0:"chat join failed: "+ri(r._0)};let n={};n.workspace=e.workspaceSlug,n.channel=e.channelSlug,n.thread_id=e.threadId,await e.transport.push(e.commanderTopic,"session:thread_context",n,void 0);let i={};i.workspace=e.workspaceSlug,i.channel=e.channelSlug,i.thread_id=e.threadId,i[Nn]=e.harnessSessionId;let o=await e.transport.push(e.commanderTopic,"session:bind",i,void 0);o.TAG!=="Ok"&&e.log("kandan.session_bind_push_failed",Object.fromEntries([["thread_id",e.threadId],["message",ri(o._0)]]));let a={deps:e,turnSeqs:new Map,pipeline:void 0,active:void 0,processingReason:void 0,processingSeq:void 0,typingActive:!1,typingHeartbeatInFlight:!1,typingHeartbeatTimer:void 0,dispatchingTurnStart:!1,pendingStartingPaints:[],autoRetryAttempts:new Map,retryCandidates:new Map,fateLadderRuns:new Map,activityJournalTurns:[],activityJournalItemCount:0,failoverOffers:new Map,switchedTargetSession:void 0},s=e.workspaceSlug+":"+e.channelSlug+":"+e.threadId,l=BM({instanceId:e.instanceId,threadKey:s,persistDir:void 0,push:async(f,p,m,h)=>{let _=await e.transport.push(e.commanderTopic,f,p,h);if(_.TAG==="Ok")return{TAG:"Acked",_0:_._0};let g=_._0;return{TAG:"PushFailed",message:ri(g),budgetExempt:HM(g)}},wire:()=>({workspaceSlug:e.workspaceSlug,channelSlug:e.channelSlug,threadId:e.threadId,harnessSessionId:e.harnessSessionId,rootSeq:e.rootSeq,leaseEpoch:e.leaseEpochFor(e.threadId)}),rowEnvelope:(f,p,m,h)=>{let _={};return _.event_type=f,_[Nn]=p,m!==void 0&&(_.source_message_seq=m),h!==void 0&&(_.metadata=h),_},runtimeMetadataForSourceSeq:void 0,sourceSeqForTurn:f=>a.turnSeqs.get(f),autoRetryAttemptsForSeq:f=>x(a.autoRetryAttempts.get(f),0),midStreamResumeAttemptAtMsForSeq:void 0,ladderHistoryForSeq:(f,p)=>ke(dp(a.fateLadderRuns.get(f),p,zu(e.env),Ze(a.failoverOffers.get(f)))),isRecoveredTurn:void 0,resolveSnapshot:async f=>{let p=await e.harness.request("thread/read",Object.fromEntries([["threadId",e.harnessSessionId],["includeTurns",!0]]));if(p.TAG!=="Ok")return{TAG:"Error",_0:p._0};let m=p._0;if(m.TAG!=="ResultReply")return{TAG:"Error",_0:m.message};let h={};return h.result=m._0,{TAG:"Ok",_0:VM(h,f).map(_=>_)}},onTurnTerminal:(f,p,m,h,_,g)=>h6(a,f,p,m,h,g),log:e.log,linzumiAgentSession:!1,outboxRetryDelaysMs:void 0,outboxMaxInFlightPushes:void 0,snapshotRetryDelaysMs:void 0,journalRecoveryMaxAgeMs:void 0,statsIntervalMs:0,turnStalledThresholdMs:void 0,turnWaitStates:void 0,traceparentForThread:f=>{},sleep:void 0});return a.pipeline=l,{TAG:"Ok",_0:{routeNotification:(f,p)=>{f6(a,f,p);let m=a.active;if(m!==void 0){let h=k(p.turnId,Tr);if(h!==void 0?h===m.turnId:!0){let g=MS(f,p);if(g!==void 0){let b=g;nn(a.processingReason,b)&&Qo(a,m.sourceSeq,b)}}}else{let h=a.dispatchingTurnStart,_=k(p.turnId,Tr),g=MS(f,p);if(h&&_!==void 0&&g!==void 0){let b=g,y=a.pendingStartingPaints.at(-1);y!==void 0&&y.paintTurnId===_&&y.reason===b||a.pendingStartingPaints.push({paintTurnId:_,reason:b})}}l.submitNotification(f,i6(f,p))},runClaimedTurn:async(f,p)=>{let m=e.actorSlug,h=e.actorUserId,_=[],g=Date.now(),b={seq:f,actorSlug:m,actorUserId:h,body:p,attachments:_,receivedAtMs:g,fusedSeqs:void 0,parkReason:void 0};return a.retryCandidates.set(f,b),e.log("kandan.message_queued",Object.fromEntries([["seq",f],["thread_id",e.threadId],[Nn,e.harnessSessionId]])),await Ul(a,f,"queued",void 0),await rj(a,b)},publishRebuilt:async f=>await Qo(a,f,"rebuilt the coding session from durable thread history after an unresumable engine session"),failOnHarnessDeath:f=>{let p=a.active;if(p!==void 0){let m={};m.turnId=p.turnId,m.retryable=!0,m.fate="transient_local",m.error=Object.fromEntries([["message",f]]),l.submitNotification("turn/failed",m)}l.submitLifecycle("codexDied",f)},invokeCrossHarnessSwitch:async(f,p,m,h,_)=>{let g=f!==void 0?a.failoverOffers.has(f)?f:void 0:Ve(a.failoverOffers.keys().toArray(),void 0,(Qe,q)=>q),b=k(g,Qe=>G(a.failoverOffers.get(Qe),q=>[Qe,q]));if(b===void 0)return{TAG:"Error",_0:"no standing failover offer for this thread - the switch is the user's decision on an offered terminal"};let y=b[1],v=b[0],S=a.fateLadderRuns.get(v),A=S!==void 0?S:IS("transient_local",Date.now()),R=y.sourceHarness,W=y.targetHarness,ae={sourceHarness:R,targetHarness:W,model:p},U=x$(A,Date.now(),ae);if(U.TAG!=="Ok")return{TAG:"Error",_0:U._0};let B=U._0;a.fateLadderRuns.set(v,B),e.log("codex.user_cross_harness_switch_invoked",Object.fromEntries([["queued_seq",v],["source_harness",R],["target_harness",W],["model",p]])),await Qo(a,v,T$);let oe=e.harnessSessionId,Z=a.activityJournalTurns,V={harnessSessionId:oe,turns:Z},M=e.cwd,N=e.defaults.approvalPolicy,re={cwd:M,model:p,reasoningEffort:void 0,developerInstructions:void 0,approvalPolicy:N,sandboxPolicy:void 0,environment:{}},se=a.retryCandidates.get(v),Ue={text:se!==void 0?KM(se):"Continue where the previous harness session left off.",attachments:[]},Ge={model:p,reasoningEffort:void 0,input:Ue},ut=await z$(V,e.threadId,m,e.cwd,_,Date.now(),h,re,Ge,Qe=>{switch(e.log("kandan.switch_target_event",Object.fromEntries([["queued_seq",v],["kind",Nm(Qe)]])),Qe.TAG){case"TurnCompleted":Ul(a,v,"processed",void 0);return;case"TurnFailed":Ul(a,v,"failed",Qe.failure.reason);return;default:return}}),ze=zu(e.env),pt=Qe=>dp(Qe,"transient_local",ze,Ze(y));if(ut.TAG==="Ok"){let Qe=ut._0;a.switchedTargetSession=Qe.session;let q={...ae},Ee=$S(B,"switch_dispatched",Date.now(),(q.redactedReasoningCount=Qe.redactedReasoningCount,q.transpiledItemCount=Qe.transpiledItemCount,q),void 0);a.fateLadderRuns.set(v,Ee),e.log("codex.user_cross_harness_switch_dispatched",Object.fromEntries([["queued_seq",v],["source_harness",R],["target_harness",W],["model",p],["target_session_id",Qe.targetSessionId],["transpiled_item_count",Qe.transpiledItemCount],["redacted_reasoning_count",Qe.redactedReasoningCount]])),await Qo(a,v,"continuing this job on the "+y.targetHarness+" harness after a user-invoked switch");let ve={};ve.ok=!0,ve.target_session_id=Qe.targetSessionId,ve.turn_id=Qe.turnId;let _e=Qe.sessionFile;return _e!==void 0&&(ve.session_file=_e),ve.transpiled_item_count=Qe.transpiledItemCount,ve.redacted_reasoning_count=Qe.redactedReasoningCount,ve.ladder=pt(Ee),{TAG:"Ok",_0:ve}}let Xe=ut._0,He=$$(Xe),It=M$(Xe),Cr=$S(B,j$(Xe)?"switch_refused":"switch_failed",Date.now(),ae,He+": "+It);a.fateLadderRuns.set(v,Cr),e.log("codex.user_cross_harness_switch_not_dispatched",Object.fromEntries([["queued_seq",v],["refusal",He],["reason",It]])),await Ul(a,v,"failed","cross-harness switch "+He+": "+It);let Ut={};return Ut.ok=!1,Ut.refusal=He,Ut.reason=It,Ut.ladder=pt(Cr),{TAG:"Ok",_0:Ut}},close:async()=>{tj(a),a.typingActive=!1;let f=a.switchedTargetSession;f!==void 0&&(a.switchedTargetSession=void 0,await f.stopSession());let p=a.pipeline;if(p!==void 0)return await p.close(5e3)}}}}import*as yj from"node:os";import*as bj from"node:path";import*as cw from"node:os";import*as Wl from"node:path";var g6="LINZUMI_CODEX_HOME";function y6(e){let t=G(e[g6],r=>r.trim());return t!==void 0&&t!==""?t:Wl.join(cw.homedir(),".linzumi","codex-home")}function b6(e){let t=G(e.CODEX_HOME,r=>r.trim());return t!==void 0&&t!==""?t:Wl.join(cw.homedir(),".codex")}var v6=["# Managed by Linzumi - do not edit by hand.","# This isolated CODEX_HOME keeps Linzumi-spawned codex processes off the","# user's ~/.codex config and the macOS Keychain. See codexHome.ts."].concat(zv.map(e=>e+' = "'+jv+'"')).concat([""]).join(`
|
|
392
|
-
`);function
|
|
393
|
-
`),
|
|
394
|
-
`),Tl(t,"SIGINT")}function
|
|
395
|
-
`)}function
|
|
390
|
+
`),structured:Lu("codex_reasoning",r,[["content",Z],["summary_parts",V.map(r9)]])}];case"terminalInput":let N=_t(e,"inputText"),j;if(N!==void 0)j=N;else{let re=_t(e,"input");j=re!==void 0?re:x(_t(e,"text"),"")}return[{body:j,structured:Lu("codex_terminal_input",r,[["process_id",x(E(e,"processId"),"")],["input_text",j]])}];default:return[]}}var fM=U$;var Nl={cwd:void 0,status:void 0,processId:void 0,durationMs:void 0,exitCode:void 0,stream:void 0};function as(e){let t=e!==void 0?e:"";return t===""?{parts:[],cached:"",joinedCount:0}:{parts:[t],cached:t,joinedCount:1}}function YS(e,t){t!==""&&e.parts.push(t)}function XS(e){if(e.joinedCount===e.parts.length)return e.cached;let t=e.cached;for(let r=e.joinedCount,n=e.parts.length;r<n;++r)t=t+e.parts[r];return e.cached=t,e.joinedCount=e.parts.length,t}function v9(e){switch(e.TAG){case"AssistantContent":return"assistant";case"ReasoningContent":return"reasoning";case"CommandOutputContent":return"commandOutput";case"FileChangeContent":return"fileChange";case"TerminalInputContent":return"terminalInput";case"WebSearchContent":return"webSearch";case"AgentStatusContent":return"agentStatus";case"AgentTaskUpdateContent":return"agentTaskUpdate"}}function Gl(e){switch(e.TAG){case"AssistantDelta":return"assistant";case"ReasoningDelta":return"reasoning";case"CommandOutputDelta":return"commandOutput";case"FileChangeDelta":return"fileChange";case"TerminalInputDelta":return"terminalInput";case"WebSearchDelta":return"webSearch"}}function mM(e){return e.itemId}function yp(e){let t=E(e,"itemId");if(t!==void 0)return t;let r=E(e,"item_id");return r!==void 0?r:k(qe(e,"item"),n=>E(n,"id"))}function pM(e,t){let r=yp(t);switch(e){case"item/agentMessage/delta":return G(hp(t),n=>({TAG:"AssistantDelta",itemId:r,text:n}));case"command/exec/outputDelta":case"item/commandExecution/outputDelta":break;case"item/commandExecution/terminalInteraction":return G(lM(t),n=>({TAG:"TerminalInputDelta",itemId:r,processId:n.terminalProcessId,inputText:n.inputText}));case"item/fileChange/outputDelta":return G(dM(t),n=>({TAG:"FileChangeDelta",itemId:r,patchText:n}));case"item/reasoning/textDelta":return G(hp(t),n=>({TAG:"ReasoningDelta",itemId:r,text:n}));case"item/started":return G(JS(t),n=>({TAG:"WebSearchDelta",itemId:r,queries:n.queries}));default:return}return G(sM(t),n=>({TAG:"CommandOutputDelta",itemId:r,processId:n.commandProcessId,command:n.command,stream:n.stream,text:n.commandDelta}))}function hM(e){switch(e){case"assistant":return{TAG:"AssistantContent",text:as(void 0)};case"reasoning":return{TAG:"ReasoningContent",text:as(void 0)};case"commandOutput":return{TAG:"CommandOutputContent",command:"",processId:void 0,chunks:[]};case"fileChange":return{TAG:"FileChangeContent",patchText:as(void 0),status:"started"};case"terminalInput":return{TAG:"TerminalInputContent",processId:void 0,inputText:""};case"webSearch":return{TAG:"WebSearchContent",queries:[]};case"agentStatus":return{TAG:"AgentStatusContent",_0:{title:"Agent status",body:void 0,severity:"info",provider:void 0,occurredAtMs:void 0,rawProviderMetadata:void 0}};case"agentTaskUpdate":return{TAG:"AgentTaskUpdateContent",_0:{title:"Agent task",body:void 0,state:"unknown",progressLabel:void 0,provider:void 0,occurredAtMs:void 0,rawProviderMetadata:void 0}}}}function S9(e,t){return Ve(t,e.slice(),(r,n)=>r.includes(n)?r:r.concat([n]))}function _M(e,t){if(v9(e)!==Gl(t))return e;switch(e.TAG){case"AssistantContent":return t.TAG!=="AssistantDelta"||YS(e.text,t.text),e;case"ReasoningContent":return t.TAG!=="ReasoningDelta"||YS(e.text,t.text),e;case"CommandOutputContent":if(t.TAG!=="CommandOutputDelta")return e;let r=t.command,n=t.processId,i=e.command;return{TAG:"CommandOutputContent",command:r!==void 0&&r.trim()!==""?r:i,processId:n!==void 0?n:e.processId,chunks:e.chunks.concat([{stream:t.stream,text:t.text}])};case"FileChangeContent":return t.TAG!=="FileChangeDelta"||YS(e.patchText,t.patchText),e;case"TerminalInputContent":if(t.TAG!=="TerminalInputDelta")return e;let o=t.processId;return{TAG:"TerminalInputContent",processId:o!==void 0?o:e.processId,inputText:t.inputText};case"WebSearchContent":return t.TAG==="WebSearchDelta"?{TAG:"WebSearchContent",queries:S9(e.queries,t.queries)}:e;case"AgentStatusContent":case"AgentTaskUpdateContent":return e}}function w9(e){return e.map(t=>t.text).join("")}function gM(e){let t=E(e,"type");if(t!==void 0)switch(t){case"agentMessage":return"assistant";case"agentStatus":return"agentStatus";case"agentTaskUpdate":return"agentTaskUpdate";case"commandExecution":return"commandOutput";case"fileChange":case"file_change":return"fileChange";case"message":return E(e,"role")==="assistant"?"assistant":void 0;case"reasoning":return"reasoning";case"terminalInput":return"terminalInput";case"webSearch":case"webSearchCall":case"web_search_call":return"webSearch";default:return}}function yM(e){let t=JS(e);if(t!==void 0)return{completedStreamKind:"webSearch",completedItemId:yp(e),completedContent:{TAG:"WebSearchContent",queries:t.queries}};let r=x(qe(e,"item"),e),n=cM(e);if(n!==void 0){let s=E(r,"call_id");return{completedStreamKind:"fileChange",completedItemId:s!==void 0?s:E(r,"id"),completedContent:{TAG:"FileChangeContent",patchText:as(n),status:"completed"}}}let i=gM(r);if(i===void 0)return;let o=_p(r,0)[0];if(o===void 0)return;let a=E(r,"id");switch(i){case"assistant":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"AssistantContent",text:as(x(E(o.structured,"content"),o.body))}};case"reasoning":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"ReasoningContent",text:as(x(E(o.structured,"content"),o.body))}};case"commandOutput":let s=Or(o.structured,"output"),l;return l=typeof s=="string"?s:"",{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"CommandOutputContent",command:x(E(o.structured,"command"),""),processId:E(o.structured,"process_id"),chunks:[{stream:"",text:l}]}};case"fileChange":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"FileChangeContent",patchText:as(x(E(o.structured,"patch_text"),o.body)),status:"completed"}};case"terminalInput":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"TerminalInputContent",processId:E(o.structured,"process_id"),inputText:x(E(o.structured,"input_text"),o.body)}};case"webSearch":return;case"agentStatus":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"AgentStatusContent",_0:{title:x(E(o.structured,"title"),o.body),body:E(o.structured,"body"),severity:qS(Or(o.structured,"severity")),provider:E(o.structured,"agent_provider"),occurredAtMs:os(o.structured,"occurred_at_ms"),rawProviderMetadata:qe(o.structured,"raw_provider_metadata")}}};case"agentTaskUpdate":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"AgentTaskUpdateContent",_0:{title:x(E(o.structured,"title"),o.body),body:E(o.structured,"body"),state:LS(Or(o.structured,"state")),progressLabel:E(o.structured,"progress_label"),provider:E(o.structured,"agent_provider"),occurredAtMs:os(o.structured,"occurred_at_ms"),rawProviderMetadata:qe(o.structured,"raw_provider_metadata")}}}}}function Fl(e,t,r){switch(t.TAG){case"AssistantContent":let n=XS(t.text);return{renderedBody:n,renderedStructured:tM(e,n,r)};case"ReasoningContent":let i=XS(t.text);return{renderedBody:i,renderedStructured:rM(e,i,r)};case"CommandOutputContent":let o=t.chunks,a=o[o.length-1|0],s=ZS(e,t.command,w9(o),{cwd:Nl.cwd,status:Nl.status,processId:t.processId,durationMs:Nl.durationMs,exitCode:Nl.exitCode,stream:x(G(a,y=>y.stream),"")},r),l=x(E(s,"command"),""),d=Or(s,"output");return{renderedBody:US(l,typeof d=="string"?d:""),renderedStructured:s};case"FileChangeContent":let c=XS(t.patchText),f;return f=r==="completed"||t.status!=="started"?"completed":"started",{renderedBody:c,renderedStructured:VS(e,c,r,f)};case"TerminalInputContent":let p=t.inputText;return{renderedBody:p,renderedStructured:Object.fromEntries([["kind","codex_terminal_input"],["item_id",e],["transcript_unit_id","codex_terminal_input:"+e],["stream_state",fM(r)],["process_id",x(t.processId,"")],["input_text",p]])};case"WebSearchContent":let m=t.queries;return{renderedBody:HS(m),renderedStructured:oM(e,m,r)};case"AgentStatusContent":let h=t._0,_=Wu(h.body);return{renderedBody:Uu(h.title,_),renderedStructured:BS(e,{title:h.title,body:_,severity:h.severity,provider:h.provider,occurredAtMs:h.occurredAtMs,rawProviderMetadata:h.rawProviderMetadata},r)};case"AgentTaskUpdateContent":let g=t._0,b=Wu(g.body);return{renderedBody:Uu(g.title,b!==void 0?b:g.progressLabel),renderedStructured:KS(e,{title:g.title,body:b,state:g.state,progressLabel:g.progressLabel,provider:g.provider,occurredAtMs:g.occurredAtMs,rawProviderMetadata:g.rawProviderMetadata},r)}}}function bM(e){return e.flatMap((t,r)=>{let n=ke(t);if(n===void 0)return[];let i=gM(n);return i!==void 0?i==="webSearch"?[]:_p(n,r).filter(o=>o.body.trim()!=="").map(o=>({snapshotIndex:r,projItemId:E(n,"id"),projStreamKind:i,projBody:o.body,projStructured:o.structured})):[]})}function QS(e,t){let r=x(E(e,"kind"),"codex_output"),n=Object.assign({},e);return n.item_id=t,n.transcript_unit_id=r+":"+t,n}function ew(e,t,r,n){if(r==="webSearch")return"local-codex-search-"+qn(e+":"+t+":web-search").slice(0,32);let i;switch(r){case"reasoning":i="reasoning:";break;case"commandOutput":i="command:";break;case"fileChange":i="file-change:";break;case"terminalInput":i="terminal:";break;case"assistant":case"webSearch":i="";break;case"agentStatus":i="agent-status:";break;case"agentTaskUpdate":i="agent-task:";break}return"local-codex-stream-"+qn(e+":"+t+":"+i+n).slice(0,32)}function Zu(e){let t=qe(e,"turn"),r=qe(e,"item"),n=k(r,d=>qe(d,"turn")),i=k(t,d=>E(d,"id"));if(i!==void 0)return i;let o=E(e,"turnId");if(o!==void 0)return o;let a=E(e,"turn_id");if(a!==void 0)return a;let s=k(r,d=>E(d,"turnId"));if(s!==void 0)return s;let l=k(r,d=>E(d,"turn_id"));return l!==void 0?l:k(n,d=>E(d,"id"))}function wi(e){return e!==void 0?e:null}var Hu="pipeline/turnMappingReady",ql="pipeline/turnMappingFailed",SM="Codex completed without producing a response.",k9="linzumi_agent_reply",x9="The agent ended its turn after narrating an intent without posting a reply or taking any action.",T9="agent narrated intent but posted no reply and took no action",A9="Stopped after repeated empty responses in a row";function O9(e){return"The model appears stuck in a loop - stopped after "+e.toString()+" reasoning steps with no output or tool call (retry to try again)."}var AM="Codex emitted unsupported tool call";function C9(e){return e!==void 0?e.startsWith(AM):!1}function wM(e){switch(e){case"assistant":case"reasoning":case"webSearch":return!1;default:return!0}}function E9(e){if(e===void 0)return;let t=E(e,"type"),r=0;if(t!==void 0){switch(t){case"collabAgentToolCall":case"dynamicToolCall":case"mcpToolCall":r=1;break;default:return}if(r===1){if(!de(E(e,"status"),"completed"))return;let n=Or(e,"error"),i=0;if(n!==void 0){if(n!==null)return;i=2}else i=2;if(i===2){let o=Or(e,"success"),a=0;if(typeof o=="boolean"){if(!o)return;a=3}else a=3;if(a===3){let s=x(E(e,"tool"),""),l=s.split("__");return x(l[l.length-1|0],s)===k9?"ReplyEvidence":"ActionEvidence"}}}}}function OM(e,t){let r=E9(t);if(r!==void 0){r==="ReplyEvidence"?e.agentReplyToolCallSeen=!0:e.agentActionToolCallSeen=!0;return}}function P9(e){let t="unsupported call:";if(e===void 0)return;let r=e.trim();if(!r.toLowerCase().startsWith(t))return;let n=r.slice(t.length).trim();return n===""?"unknown":n}function CM(e){if(e===void 0)return;let t=E(e,"codex_protocol_failure_reason"),r=t!==void 0?t:E(e,"protocolFailureReason");if(r!==void 0)return r;let n=E(e,"type");if(n===void 0)return;switch(n){case"custom_tool_call_output":case"function_call_output":break;default:return}let i=E(e,"output"),o;if(i!==void 0)o=i;else{let a=E(e,"result");if(a!==void 0)o=a;else{let s=E(e,"text");o=s!==void 0?s:E(e,"content")}}return G(P9(o),a=>AM+": "+a)}function R9(e){return Ve(e,void 0,(t,r)=>t!==void 0?t:CM(ke(r)))}function EM(){return{phase:"running",turns:new Map,terminalTurnIds:new Set,bufferedTurns:new Map,consecutiveEmptyTurns:0,lastUpstreamErrorSummary:void 0,consecutiveIsolatedRejections:0,costCap402Seen:!1}}function I9(e){switch(e){case"turn/aborted":case"turn/canceled":case"turn/cancelled":return"interrupted";case"turn/failed":return"failed";default:return}}function $9(e){switch(e){case"command/exec/outputDelta":case"error":case"item/agentMessage/delta":case"item/commandExecution/outputDelta":case"item/commandExecution/terminalInteraction":case"item/completed":case"item/fileChange/outputDelta":case"item/reasoning/textDelta":case"item/started":case"response_item":case"turn/aborted":case"turn/canceled":case"turn/cancelled":case"turn/completed":case"turn/failed":case"turn/started":return!0;default:return!1}}function M9(e){switch(e){case"command/exec/outputDelta":case"item/agentMessage/delta":case"item/commandExecution/outputDelta":case"item/commandExecution/terminalInteraction":case"item/completed":case"item/fileChange/outputDelta":case"item/reasoning/textDelta":case"item/started":case"response_item":return!0;default:return!1}}var j9=new RegExp("<[^>]*>","g"),z9=new RegExp(`data:[^"' )]+`,"g"),N9=new RegExp("\\s+","g");function Xo(e){if(e===void 0)return;let t=e.replace(j9," ").replace(z9,"").replace(N9," ").trim().slice(0,180);if(t!=="")return t}function Yo(e){if(e!==void 0&&typeof e=="number"&&isFinite(e))return e}function kp(e){let t=k(qe(e,"diagnostic_payload"),o=>qe(o,"error")),r=k(t,o=>qe(o,"codexErrorInfo")),n=k(r,o=>qe(o,"responseStreamDisconnected")),i=[Yo(k(n,o=>Or(o,"httpStatusCode"))),Yo(k(r,o=>Or(o,"httpStatusCode"))),Yo(k(r,o=>Or(o,"statusCode"))),Yo(k(r,o=>Or(o,"status"))),Yo(k(t,o=>Or(o,"httpStatusCode"))),Yo(k(t,o=>Or(o,"statusCode"))),Yo(k(t,o=>Or(o,"status")))];return Ve(i,void 0,(o,a)=>o!==void 0?o:a)}function G9(e){let t=E(e,"diagnostic_summary"),r=t!==void 0?t:k(k(qe(e,"diagnostic_payload"),o=>qe(o,"error")),o=>E(o,"message")),n=k(r,o=>Xo(o));if(n===void 0)return;let i=kp(e);return i!==void 0?"Model gateway error (HTTP "+i.toString()+"): "+n:"Model gateway error: "+n}var F9=new RegExp("(?:<!doctype\\s+html|<html(?:\\s|>))","i"),D9=new RegExp("cloudflare|cf-ray|\\bblocked\\b|access denied|\\bchallenge\\b|attention required","i"),PM=new RegExp("cloudflare|cf-ray","i"),q9=new RegExp("\\bblocked\\b|access denied","i"),L9=new RegExp("attention required","i"),U9=new RegExp("@font-face","i"),W9=new RegExp("unexpected status (401|403)\\b","i"),Z9=new RegExp("\\b(401|403)\\s+(?:unauthorized|forbidden)\\b","i");function V9(e){return Ve(e,void 0,(t,r)=>{if(t!==void 0)return t;if(r===void 0)return;let n=W9.exec(r),i=n??Dt(Z9.exec(r));return G(k(i,o=>k(o.slice(1)[0],a=>a)),o=>o==="401"?401:403)})}function H9(e){return F9.test(e)?!0:U9.test(e)?PM.test(e):!1}function B9(e){let t=k(qe(e,"diagnostic_payload"),a=>qe(a,"error")),r=[E(e,"diagnostic_summary"),k(t,a=>E(a,"message")),E(e,"message")],n=kp(e),i=n!==void 0?n:V9(r);if(i===void 0||i!==401&&i!==403)return;let o=Ve(r,void 0,(a,s)=>a!==void 0?a:s!==void 0&&H9(s)&&D9.test(s)?s:void 0);return G(o,a=>{let s=PM.test(a),l=q9.test(a),d=L9.test(a);return{edgeStatus:i,edgeSignature:s?"cloudflare":l?"blocked":d?"attention_required":"challenge"}})}function K9(e){return e!==void 0?e===402||e===408||e===425||e===429?!0:e>=500?e<=599:!1:!1}function J9(e){return e!==void 0&&e>=400&&e<=499&&e!==402&&e!==408&&e!==425?e!==429:!1}function Y9(e,t){let r="the model provider rejected this request as invalid (a retry sends the same request and fails the same way, so it was not retried; check the selected model / request and send again).",n=e!==void 0?"Model provider rejected this request (HTTP "+e.toString()+"): "+r:"Model provider rejected this request: "+r,i=x(G(t,o=>o.trim()),"");return i===""?n:n+" Upstream said: "+i}function X9(e){let t="the model provider returned no usable response this turn (retrying will not help until it recovers).";return e!==void 0?"Model upstream unavailable (HTTP "+e.toString()+"): "+t:"Model upstream unavailable: "+t}function Q9(e){let t="The agent run was cut off by a tool failure and produced no response (retrying will hit the same failure until the underlying tool call is fixed).",r=x(G(e,n=>n.trim()),"");return r===""?"Tool execution failed: "+t:"Tool execution failed ("+r+"): "+t}function Bu(e){let t=k(qe(e,"diagnostic_payload"),i=>qe(i,"error")),r=E(e,"message"),n;if(r!==void 0)n=r;else{let i=E(e,"reason");if(i!==void 0)n=i;else{let o=k(qe(e,"error"),a=>E(a,"message"));if(o!==void 0)n=o;else{let a=E(e,"error");if(a!==void 0)n=a;else{let s=E(e,"diagnostic");if(s!==void 0)n=s;else{let l=k(t,d=>E(d,"message"));n=l!==void 0?l:k(k(t,d=>qe(d,"error")),d=>E(d,"message"))}}}}}return Xo(n)}var eJ=new RegExp("^(?:model_request_rejected|invalid_request_error|invalid_request|request_rejected|content_policy_violation|content_filter|input_validation_error)$","i"),tJ=new RegExp("\\bmodel request was rejected\\b|\\bmodel_request_rejected\\b","i");function rJ(e){let t=k(qe(e,"diagnostic_payload"),o=>qe(o,"error")),r=k(t,o=>qe(o,"error")),n=qe(e,"error"),i=[[k(t,o=>E(o,"code")),k(t,o=>E(o,"message"))],[k(t,o=>E(o,"type")),k(t,o=>E(o,"message"))],[k(r,o=>E(o,"code")),k(r,o=>E(o,"message"))],[k(r,o=>E(o,"type")),k(r,o=>E(o,"message"))],[k(n,o=>E(o,"code")),k(n,o=>E(o,"message"))],[k(n,o=>E(o,"type")),k(n,o=>E(o,"message"))],[E(e,"code"),E(e,"message")],[E(e,"type"),E(e,"message")]];return Ve(i,void 0,(o,a)=>{if(o!==void 0)return o;let s=G(a[0],l=>l.trim());if(s!==void 0&&s!==""&&eJ.test(s))return{colocatedMessage:a[1]}})}function nJ(e){let t=rJ(e),r=Bu(e),n=r!==void 0?tJ.test(r):!1;if(t===void 0&&!n)return;let i=Xo(k(t,o=>o.colocatedMessage));return i!==void 0?i:r!==void 0?r:""}function iJ(e){let t="the model provider rejected this request and produced no response (retrying will hit the same rejection until the request is changed).",r=x(G(e,n=>n.trim()),"");return r===""?"The model request was rejected: "+t:"The model request was rejected ("+r+"): "+t}var oJ=new RegExp("^provider_outage$","i"),aJ=new RegExp("rejecting requests|experiencing an outage|provider outage","i");function sJ(e){let t=k(qe(e,"diagnostic_payload"),d=>qe(d,"error")),r=k(t,d=>qe(d,"error")),n=qe(e,"error");if(![k(t,d=>E(d,"code")),k(t,d=>E(d,"type")),k(r,d=>E(d,"code")),k(r,d=>E(d,"type")),k(n,d=>E(d,"code")),k(n,d=>E(d,"type")),E(e,"code"),E(e,"type")].some(d=>{let u=G(d,c=>c.trim());return u!==void 0&&u!==""?oJ.test(u):!1}))return;let a=[k(t,d=>E(d,"message")),k(r,d=>E(d,"message")),k(n,d=>E(d,"message")),E(e,"message"),E(e,"reason")],s=Ve(a,void 0,(d,u)=>{if(d!==void 0)return d;let c=Xo(u);if(c!==void 0&&aJ.test(c))return c});if(s!==void 0)return s;let l=Bu(e);return l!==void 0?l:""}function lJ(e){let t=x(G(e,r=>r.trim()),"");return t===""?"The model provider is currently rejecting requests / experiencing an outage. Your message was NOT processed. Please retry later, or switch to a different model.":t}function dJ(e){let t="the model provider rejected this request and produced no response (a one-off retry did not help).",r=x(G(e,n=>n.trim()),"");return r===""?"The model request was rejected: "+t:"The model request was rejected ("+r+"): "+t}function uJ(e,t,r,n){return e?{dispositionKind:"storm",dispositionRetryable:!1,dispositionReason:lJ(r)}:t<1?{dispositionKind:"isolated_retry",dispositionRetryable:!0,dispositionReason:iJ(n)}:{dispositionKind:"isolated_terminal",dispositionRetryable:!1,dispositionReason:dJ(n)}}var cJ=new RegExp("\\bapply_patch\\b[^]*\\bincompatible\\b|\\bin-flight tool future\\b[^]*\\bfail","i"),fJ=new RegExp("\\btools::router\\b[^]*\\bfatal\\b|\\bresponse\\.failed\\b","i"),mJ=new RegExp("(tool.*fatal|fatal.*tool|response[._]failed|tool_failure)","i");function pJ(e){return cJ.test(e)?!0:fJ.test(e)}function hJ(e){let t=E(e,"kind"),r;if(t!==void 0)r=t;else{let a=E(e,"type");if(a!==void 0)r=a;else{let s=k(qe(e,"error"),l=>E(l,"kind"));r=s!==void 0?s:k(qe(e,"error"),l=>E(l,"type"))}}let n=r!==void 0?mJ.test(r):!1,i=Bu(e),o=i!==void 0?pJ(i):!1;if(n||o)return i!==void 0?i:""}function kM(e){if(e!==void 0&&!(e===null||Array.isArray(e)))switch(typeof e){case"string":return e.trim()!==""?e:void 0;case"object":let t=Object.keys(e);return t.length!==1?void 0:t[0];default:return}}function _J(e){if(e===void 0)return;let t=bl(e,"{");if(t===void 0)return;let r=_a(e.slice(t)),n=r!==void 0?r:_a(e.slice(t,e.lastIndexOf("}")+1|0));if(n===void 0||!de(E(n,"type"),"error"))return;let i=qe(n,"error");if(i===void 0)return;let o=E(i,"type");return{envelopeStatus:Yo(Or(n,"status")),envelopeErrorType:o!==void 0?o:E(i,"code"),envelopeMessage:E(i,"message")}}function gJ(e){let t=qe(e,"error"),r=k(qe(e,"diagnostic_payload"),h=>qe(h,"error")),n=k(r,h=>qe(h,"error")),i=kp(e),o=k(t,h=>E(h,"type")),a;if(o!==void 0)a=o;else{let h=k(t,_=>E(_,"code"));if(h!==void 0)a=h;else{let _=k(r,g=>E(g,"type"));if(_!==void 0)a=_;else{let g=k(r,b=>E(b,"code"));if(g!==void 0)a=g;else{let b=k(n,y=>E(y,"type"));if(b!==void 0)a=b;else{let y=k(n,v=>E(v,"code"));if(y!==void 0)a=y;else{let v=kM(k(t,S=>Or(S,"codexErrorInfo")));a=v!==void 0?v:kM(k(r,S=>Or(S,"codexErrorInfo")))}}}}}}let s=Xo(k(t,h=>E(h,"message"))),l;if(s!==void 0)l=s;else{let h=Xo(k(n,_=>E(_,"message")));if(h!==void 0)l=h;else{let _=Xo(k(r,g=>E(g,"message")));l=_!==void 0?_:Bu(e)}}if(i===void 0&&a===void 0){let h=Ve([k(t,_=>E(_,"message")),k(n,_=>E(_,"message")),k(r,_=>E(_,"message")),E(e,"message"),E(e,"reason"),E(e,"error"),E(e,"diagnostic"),E(e,"diagnostic_summary")],void 0,(_,g)=>_!==void 0?_:_J(g));if(h!==void 0){i=h.envelopeStatus,a=h.envelopeErrorType;let _=Xo(h.envelopeMessage);l=_!==void 0?_:l}}let c=G(a,h=>h.trim()),f;f=c!==void 0&&c!==""?c:void 0;let p=$e([G(i,h=>h.toString()),f],h=>h).join(" "),m;if(p==="")m=l;else{let h=l;m=h!==void 0?p+": "+h:p}if(m!==void 0&&m!=="")return m.slice(0,300)}function xM(e){return{swLastUpstreamErrorReason:e.lastUpstreamErrorReason,swLastErrorDiagnosticText:e.lastErrorDiagnosticText,swLastUpstreamErrorHttpStatus:e.lastUpstreamErrorHttpStatus,swUpstreamRejectedSeen:e.upstreamRejectedSeen,swProviderOutageFlaggedSeen:e.providerOutageFlaggedSeen,swToolFatalSeen:e.toolFatalSeen,swErrorNotificationCount:e.errorNotificationCount,swUnattributedErrorNotificationCount:e.unattributedErrorNotificationCount,swModelInteractionSeen:e.modelInteractionSeen}}function RM(e){return e===429||e>=500&&e<=599?"TransientRetryClass":"DeterministicRetryClass"}var yJ=new RegExp("upstream model stream stalled","i"),bJ=new RegExp("\\(HTTP (\\d{3})\\)");function IM(e){let t=bJ.exec(e);if(t!=null)return k(k(t.slice(1)[0],r=>r),jn)}function vJ(e){let t=IM(e);return t!==void 0?RM(t):yJ.test(e)?"TransientRetryClass":"DeterministicRetryClass"}function tw(e){let t={contents:!1},r={contents:e.swUpstreamRejectedSeen||e.swProviderOutageFlaggedSeen||e.swToolFatalSeen||e.swModelInteractionSeen||e.swUnattributedErrorNotificationCount>0},n={contents:0},i=e.swLastUpstreamErrorHttpStatus;i!==void 0&&(n.contents=n.contents+1|0,RM(i)==="TransientRetryClass"?t.contents=!0:r.contents=!0),[e.swLastUpstreamErrorReason,e.swLastErrorDiagnosticText].forEach(s=>{if(s===void 0)return;n.contents=n.contents+1|0,vJ(s)==="TransientRetryClass"?t.contents=!0:r.contents=!0}),e.swErrorNotificationCount>(n.contents+e.swUnattributedErrorNotificationCount|0)&&!e.swUpstreamRejectedSeen&&!e.swProviderOutageFlaggedSeen&&!e.swToolFatalSeen&&(r.contents=!0);let o=r.contents,a=t.contents;return o?"deterministic":a?"transient":"none"}function TM(e){return e.swLastUpstreamErrorHttpStatus===429?!0:[e.swLastUpstreamErrorReason,e.swLastErrorDiagnosticText].some(r=>r!==void 0?de(IM(r),429):!1)}var SJ=" (An automatic resume was not attempted: the upstream reported a rate limit (HTTP 429) during this turn, and an automatic resume would burn straight into it. Retry once the rate limit clears.)";function wJ(e){return" (An automatic resume was attempted at "+new Date(e).toISOString()+" and the stream stalled again, so it will not be retried automatically.)"}function kJ(e){return" (An automatic resume was attempted at "+new Date(e).toISOString()+" after the stream stalled; it did not complete.)"}var $M=" (Automatic retries are paused: this session hit your Linzumi cost cap (HTTP 402), and an automatic retry must never spend past it. Retry manually when your budget allows.)";function MM(e){return e>0?" ("+e.toString()+" automatic "+(e===1?"retry":"retries")+" did not help.)":""}var rw={autoRetryPreFirstByteStall:!1,messageStateRetryable:!1,costCapAutoRetrySuppressed:!1,messageStateFate:void 0,autoResumeMidStreamStall:!1,midStreamResumeRateLimitSuppressed:!1,midStreamResumeAttemptBurnedAtMs:void 0};function bp(e,t){return Or(e,t)===!0}function xJ(e){let t=Or(e,"fate");if(typeof t=="string")return lp(t)}function TJ(e,t,r,n){let i=e==="turn/failed"&&de(k(qe(t,"error"),y=>E(y,"code")),"idle_stream_timeout"),o=e==="turn/failed"&&bp(t,"retryable"),a=e==="turn/failed"?xJ(t):void 0;if(!i)return{autoRetryPreFirstByteStall:!1,messageStateRetryable:o,costCapAutoRetrySuppressed:!1,messageStateFate:a,autoResumeMidStreamStall:!1,midStreamResumeRateLimitSuppressed:!1,midStreamResumeAttemptBurnedAtMs:void 0};let s=n.sessionMidStreamResumeAttemptAtMs,l=s!==void 0,d=tw(r)!=="deterministic",u=bp(t,"preFirstByteStall")&&d,c=bp(t,"midStreamResumableStall"),f=c&&TM(r),p=tw({swLastUpstreamErrorReason:r.swLastUpstreamErrorReason,swLastErrorDiagnosticText:r.swLastErrorDiagnosticText,swLastUpstreamErrorHttpStatus:r.swLastUpstreamErrorHttpStatus,swUpstreamRejectedSeen:r.swUpstreamRejectedSeen,swProviderOutageFlaggedSeen:r.swProviderOutageFlaggedSeen,swToolFatalSeen:r.swToolFatalSeen,swErrorNotificationCount:r.swErrorNotificationCount,swUnattributedErrorNotificationCount:r.swUnattributedErrorNotificationCount,swModelInteractionSeen:!1})!=="deterministic",m=c&&!l&&!f&&p,h=(u&&!l||m)&&n.sessionCostCap402Seen,_=u&&!l&&!h,g=m&&!h,b=c&&!l&&f;return{autoRetryPreFirstByteStall:_,messageStateRetryable:u||o,costCapAutoRetrySuppressed:h,messageStateFate:a!==void 0?a:TM(r)?"rate_limited":"transient_upstream",autoResumeMidStreamStall:g,midStreamResumeRateLimitSuppressed:b,midStreamResumeAttemptBurnedAtMs:l?s:void 0}}function AJ(e,t,r){let n=r!==void 0?" (last upstream error: "+r+")":"",i=e.lastErrorDiagnosticText;return i!==void 0?{cause:"codex error without HTTP status: "+i}:e.modelInteractionSeen?{cause:"model returned no assistant output: "+(e.items.length.toString()+" streamed items, ")+(t.toString()+" snapshot items"+n)}:{cause:"codex never called the model: 0 model interactions, "+(e.notificationCount.toString()+" notifications, ")+(e.errorNotificationCount.toString()+" errors"+n)}}function xp(e,t){for(e.terminalTurnIds.delete(t),e.terminalTurnIds.add(t);e.terminalTurnIds.size>512;){let r=e.terminalTurnIds.values().next().value;r!==void 0&&e.terminalTurnIds.delete(r)}}function Tp(e){let t=e.turns.values().toArray().filter(n=>n.phase==="ActiveTurnPhase");return t.length!==1?void 0:t[0].turnId}function Sp(e,t,r,n){return[["thread_key",e.threadKey],["turn_id",t.turnId],["item_key",r.itemKey],["item_id",r.wireItemKey],["stream_kind",r.identity.streamKind],["item_index",r.identity.itemIndex],["source_seq",t.sourceSeq],["client_message_id",r.clientMessageId],["body",n.renderedBody],["structured",n.renderedStructured]]}function Vu(e){let t=e.nextStreamSnapshotIndex;return e.nextStreamSnapshotIndex=e.nextStreamSnapshotIndex+1|0,t}function Dl(e){let t=E(e,"reason");if(t!==void 0)return t;let r=E(e,"message");if(r!==void 0)return r;let n=k(qe(e,"error"),i=>E(i,"message"));return n!==void 0?n:x(E(e,"error"),"codex_turn_aborted")}function OJ(e,t,r){let n={turnId:t,sourceSeq:r,phase:"ActiveTurnPhase",protocolFailureReason:void 0,lastUpstreamErrorReason:void 0,edgeBlockEvidence:void 0,lastErrorDiagnosticText:void 0,toolFatalSeen:!1,toolFatalDetail:void 0,upstreamRejectedSeen:!1,upstreamRejectedDetail:void 0,providerOutageFlaggedSeen:!1,providerOutageDetail:void 0,lastUpstreamErrorHttpStatus:void 0,lastUpstreamErrorSummary:void 0,errorNotificationCount:0,unattributedErrorNotificationCount:0,notificationCount:0,modelInteractionSeen:!1,reasoningStepsWithoutProgress:0,agentReplyToolCallSeen:!1,agentActionToolCallSeen:!1,items:[]};return e.turns.set(t,n),n}function CJ(e,t){if(e.phase==="ActiveTurnPhase"){e.phase="CompletingTurnPhase",t.push({TAG:"RequestSnapshot",turnId:e.turnId});return}let i={TAG:"Log",event:"pipeline.loop.duplicate_turn_completed",fields:Object.fromEntries([["turn_id",e.turnId]])};t.push(i)}function wp(e,t,r,n,i,o,a,s){let l;if(s.autoRetryPreFirstByteStall||s.costCapAutoRetrySuppressed){let _=o.autoRetryAttemptsForSeq;l=n+MM(_!==void 0?_(t.sourceSeq):0)+(s.costCapAutoRetrySuppressed?$M:"")}else l=n;if(s.midStreamResumeRateLimitSuppressed&&(l=l+SJ),r==="failed"){let _=s.midStreamResumeAttemptBurnedAtMs;if(_!==void 0)l=l+wJ(_);else{let g=k(o.midStreamResumeAttemptAtMsForSeq,b=>b(t.sourceSeq));g!==void 0&&(l=l+kJ(g))}}t.items.forEach(_=>{if(!_.posted||GS(_.emittedStreamState))return;let g=Fl(_.wireItemKey,_.content,a),b=Object.fromEntries(Sp(o,t,_,g).concat([["stream_snapshot_index",Vu(_)],["terminal_outcome",r],["reason",n]])),y={TAG:"Enqueue",kind:is,data:b,coalesceKey:void 0,resolution:"MustAck"};i.push(y),_.emittedStreamState=a,_.lastEmittedBody=g.renderedBody});let d=s.messageStateFate,u=s.messageStateFate,c;if(u!==void 0){let _=k(o.ladderHistoryForSeq,g=>g(t.sourceSeq,u));c=_!==void 0?[["ladder",_]]:[]}else c=[];let f=t.lastUpstreamErrorSummary,p;if(f!==void 0)p=[["upstream_error",f]];else{let _=e.lastUpstreamErrorSummary;p=_!==void 0?[["upstream_error",_]]:[]}let m=Object.fromEntries([["thread_key",o.threadKey],["turn_id",t.turnId],["seq",t.sourceSeq],["status","failed"],["reason",l]].concat((s.messageStateRetryable?[["retryable",!0]]:[]).concat(d!==void 0?[["fate",d]]:[])).concat(c.concat(p))),h={TAG:"Enqueue",kind:jl,data:m,coalesceKey:void 0,resolution:"MustAck"};i.push(h),i.push({TAG:"TurnTerminal",turnId:t.turnId,outcome:r,reason:l,retryableEmptyTurn:s.autoRetryPreFirstByteStall,autoResumeMidStreamStall:s.autoResumeMidStreamStall,fate:s.messageStateFate}),e.turns.delete(t.turnId),xp(e,t.turnId)}function jM(e,t,r,n,i){let o=l=>{let d=e.turnId,u=e.items.length,c={turnId:d,itemId:l,itemIndex:u,streamKind:t},f=L$(c),p=x(l,f),m={identity:c,itemKey:f,wireItemKey:p,clientMessageId:ew(n.instanceId,e.turnId,t,p),content:hM(t),posted:!1,completed:!1,emittedStreamState:void 0,lastEmittedBody:void 0,nextDeltaIndex:0,nextStreamSnapshotIndex:1};return e.items.push(m),m};if(t==="webSearch"){let l=e.items.find(d=>d.identity.streamKind==="webSearch");return l!==void 0?l:o("web-search:"+e.turnId)}let a=r!==void 0?e.items.find(l=>l.identity.streamKind===t?de(l.identity.itemId,r):!1):void 0;if(a!==void 0)return a;let s=e.items.find(l=>l.identity.streamKind===t&&l.identity.itemId===void 0?!l.completed:!1);return r!==void 0?s!==void 0&&i?s:o(r):s!==void 0?s:o(r)}function zM(e,t,r,n,i,o){let a=Fl(t.wireItemKey,t.content,n);if(t.posted){let u=Object.fromEntries(Sp(i,e,t,a).concat([["delta_index",r],["stream_snapshot_index",Vu(t)]])),c=t.itemKey,f={TAG:"Enqueue",kind:Fu,data:u,coalesceKey:c,resolution:"MustAck"};o.push(f),t.emittedStreamState=n,t.lastEmittedBody=a.renderedBody;return}if(a.renderedBody.trim()==="")return;let l=Object.fromEntries(Sp(i,e,t,a).concat([["delta_index",r],["stream_snapshot_index",Vu(t)]])),d={TAG:"Enqueue",kind:Gu,data:l,coalesceKey:void 0,resolution:"MustAck"};if(o.push(d),t.posted=!0,t.emittedStreamState=n,t.lastEmittedBody=a.renderedBody,n==="completed"){t.completed=!0;return}}function vp(e,t,r,n){if(e.phase==="ActiveTurnPhase"){let l=jM(e,Gl(t),mM(t),r,!1);if(l.completed){let p={TAG:"Log",event:"pipeline.loop.delta_for_completed_item",fields:Object.fromEntries([["turn_id",e.turnId],["item_key",l.itemKey]])};n.push(p);return}l.content=_M(l.content,t);let d=l.nextDeltaIndex;l.nextDeltaIndex=l.nextDeltaIndex+1|0;let u=Gl(t),c;return c=u==="terminalInput"?"completed":"streaming",zM(e,l,d,c,r,n)}let o=[["turn_id",e.turnId],["stream_kind",Gl(t)]],s={TAG:"Log",event:"pipeline.loop.delta_for_completing_turn",fields:Object.fromEntries(o)};n.push(s)}function EJ(e,t,r,n){let i=t.method,o=x(t.params,{});if(i===Hu)return;if(i===ql)return jJ(e,o,r,n);if(!$9(i))return;let a=Zu(o),s=a!==void 0?a:Tp(e);if(s!==void 0){if(e.terminalTurnIds.has(s)){let y={TAG:"Log",event:"pipeline.loop.notification_for_terminal_turn",fields:Object.fromEntries([["method",i],["turn_id",s]])};n.push(y);return}let u=e.turns.get(s),c;if(u!==void 0)c=u;else{let b=r.sourceSeqForTurn(s);c=b!==void 0?OJ(e,s,b):void 0}if(c===void 0)return $J(e,s,{TAG:"HarnessNotification",_0:t},n);if(c.notificationCount=c.notificationCount+1|0,M9(i)&&(c.modelInteractionSeen=!0),i==="turn/started")return;if(i==="turn/completed")return CJ(c,n);let f=I9(i);if(f!==void 0){let b=TJ(i,o,xM(c),{sessionCostCap402Seen:e.costCap402Seen,sessionMidStreamResumeAttemptAtMs:k(r.midStreamResumeAttemptAtMsForSeq,v=>v(c.sourceSeq))});if(b.autoResumeMidStreamStall){let v=[["thread_key",r.threadKey],["turn_id",c.turnId],["source_seq",c.sourceSeq],["reason",Dl(o)]],A={TAG:"Log",event:"codex.mid_stream_stall_auto_resume_flagged",fields:Object.fromEntries(v)};n.push(A)}else if(b.midStreamResumeRateLimitSuppressed){let v=[["thread_key",r.threadKey],["turn_id",c.turnId],["source_seq",c.sourceSeq],["reason",Dl(o)]],A={TAG:"Log",event:"codex.mid_stream_stall_resume_suppressed_rate_limit",fields:Object.fromEntries(v)};n.push(A)}else{let v=b.midStreamResumeAttemptBurnedAtMs;if(v!==void 0){let S=[["thread_key",r.threadKey],["turn_id",c.turnId],["source_seq",c.sourceSeq],["resume_attempt_at_ms",v],["reason",Dl(o)]],R={TAG:"Log",event:"codex.mid_stream_stall_second_stall_after_resume",fields:Object.fromEntries(S)};n.push(R)}}if(b.autoRetryPreFirstByteStall){let v=[["thread_key",r.threadKey],["turn_id",c.turnId],["source_seq",c.sourceSeq],["reason",Dl(o)],["evidence_class",tw(xM(c))]],A={TAG:"Log",event:"codex.pre_first_byte_stall_auto_retry_flagged",fields:Object.fromEntries(v)};n.push(A)}else if(b.costCapAutoRetrySuppressed){let v=[["thread_key",r.threadKey],["turn_id",c.turnId],["source_seq",c.sourceSeq],["reason",Dl(o)],["flavor",bp(o,"midStreamResumableStall")?"mid_stream_resume":"pre_first_byte_retry"]],A={TAG:"Log",event:"codex.pre_first_byte_stall_retry_suppressed_cost_cap",fields:Object.fromEntries(v)};n.push(A)}let y;switch(f){case"failed":y="failed";break;case"completed":case"interrupted":y="interrupted";break}return wp(e,c,f,Dl(o),n,r,y,b)}if(i==="error")return MJ(e,c,o,n);if(i==="item/completed"||i==="response_item")return IJ(c,o,r,n);let p=pM(i,o);if(p===void 0)return;if(c.phase!=="ActiveTurnPhase")return vp(c,p,r,n);if(Gl(p)!=="reasoning")return c.reasoningStepsWithoutProgress=0,vp(c,p,r,n);if(c.reasoningStepsWithoutProgress=c.reasoningStepsWithoutProgress+1|0,c.reasoningStepsWithoutProgress<=64)return vp(c,p,r,n);let h=O9(c.reasoningStepsWithoutProgress),g={TAG:"Log",event:"codex.reasoning_loop_breaker_tripped",fields:Object.fromEntries([["thread_key",r.threadKey],["turn_id",c.turnId],["source_seq",c.sourceSeq],["reasoning_steps_without_progress",c.reasoningStepsWithoutProgress],["max_reasoning_steps_without_progress",64]])};return n.push(g),wp(e,c,"failed",h,n,r,"interrupted",rw)}let d={TAG:"Log",event:"pipeline.loop.notification_without_turn",fields:Object.fromEntries([["method",i]])};n.push(d)}function PJ(e,t,r,n,i){switch(t){case"codexDied":let a=e.phase,s=0;switch(a){case"running":case"closing":s=2;break;case"dead":return}if(s===2){e.turns.values().toArray().forEach(u=>wp(e,u,"failed",r,i,n,"interrupted",rw)),e.bufferedTurns.entries().toArray().forEach(u=>{let c=u[0],p={TAG:"Log",event:"pipeline.loop.buffered_turn_dropped",fields:Object.fromEntries([["turn_id",c],["buffered_event_count",u[1].length],["reason",r]])};i.push(p),i.push({TAG:"TurnTerminal",turnId:c,outcome:"failed",reason:r,retryableEmptyTurn:!1,autoResumeMidStreamStall:!1,fate:void 0}),xp(e,c)}),e.bufferedTurns.clear(),e.phase="dead";let d={TAG:"Log",event:"pipeline.loop.codex_died",fields:Object.fromEntries([["reason",r]])};i.push(d);return}break;case"shutdown":case"replaceRunner":break}switch(e.phase){case"running":e.phase="closing";let a=[["kind",t],["reason",r]],l={TAG:"Log",event:"pipeline.loop.closing",fields:Object.fromEntries(a)};i.push(l);return;case"closing":case"dead":return}}function RJ(e,t,r,n,i){if(e.terminalTurnIds.has(t)){let d={TAG:"Log",event:"pipeline.loop.duplicate_snapshot",fields:Object.fromEntries([["turn_id",t]])};i.push(d);return}let o=e.turns.get(t);if(o!==void 0){if(o.phase!=="ActiveTurnPhase")return zJ(e,o,r,n,i);let u={TAG:"Log",event:"pipeline.loop.snapshot_for_active_turn",fields:Object.fromEntries([["turn_id",t]])};i.push(u);return}let s={TAG:"Log",event:"pipeline.loop.snapshot_for_unknown_turn",fields:Object.fromEntries([["turn_id",t]])};i.push(s)}function IJ(e,t,r,n){let i=qe(t,"item");i!==void 0&&e.protocolFailureReason===void 0&&(e.protocolFailureReason=CM(i)),OM(e,i!==void 0?i:t);let o=yM(t);if(o===void 0)return;if(o.completedStreamKind==="webSearch"){let c=o.completedContent,f;return f=c.TAG==="WebSearchContent"?c.queries:[],vp(e,{TAG:"WebSearchDelta",itemId:o.completedItemId,queries:f},r,n)}if(e.phase==="ActiveTurnPhase"){let c=jM(e,o.completedStreamKind,o.completedItemId,r,!0),f=!1;if(c.identity.streamKind===o.completedStreamKind){let m=o.completedStreamKind,h;switch(m){case"agentStatus":case"agentTaskUpdate":h=!0;break;default:h=!1}f=h}if(c.completed&&!f)return;c.content=o.completedContent,c.completed=!0;let p=Fl(c.wireItemKey,c.content,"streaming");return c.posted&&de(p.renderedBody,c.lastEmittedBody)?void 0:zM(e,c,Math.max(c.nextDeltaIndex-1|0,0),"streaming",r,n)}let l=[["turn_id",e.turnId],["stream_kind",o.completedStreamKind]],u={TAG:"Log",event:"pipeline.loop.item_completed_for_completing_turn",fields:Object.fromEntries(l)};n.push(u)}function $J(e,t,r,n){let i=e.bufferedTurns.get(t);if(i!==void 0){i.push(r);return}e.bufferedTurns.set(t,[r]);let a={TAG:"Log",event:"pipeline.loop.turn_events_buffered",fields:Object.fromEntries([["turn_id",t]])};n.push(a)}function MJ(e,t,r,n){t.errorNotificationCount=t.errorNotificationCount+1|0;let i=hJ(r);if(i!==void 0){t.toolFatalSeen=!0,t.toolFatalDetail===void 0&&i!==""&&(t.toolFatalDetail=i);let h={TAG:"Log",event:"codex.tool_fatal_captured",fields:Object.fromEntries([["turn_id",t.turnId],["detail",i===""?null:i]])};n.push(h)}let o=nJ(r);if(o!==void 0){t.upstreamRejectedSeen=!0,t.upstreamRejectedDetail===void 0&&o!==""&&(t.upstreamRejectedDetail=o);let h={TAG:"Log",event:"codex.upstream_rejection_captured",fields:Object.fromEntries([["turn_id",t.turnId],["detail",o===""?null:o]])};n.push(h)}let a=sJ(r);if(a!==void 0){t.providerOutageFlaggedSeen=!0,t.providerOutageDetail===void 0&&a!==""&&(t.providerOutageDetail=a);let h={TAG:"Log",event:"codex.provider_outage_flagged_captured",fields:Object.fromEntries([["turn_id",t.turnId],["detail",a===""?null:a]])};n.push(h)}let s=kp(r),l=B9(r);if(l!==void 0&&(t.edgeBlockEvidence=l),s!==void 0){let m=t.lastUpstreamErrorHttpStatus;m!==void 0&&s<=m||(t.lastUpstreamErrorHttpStatus=s)}if(de(s,402)&&!e.costCap402Seen){e.costCap402Seen=!0;let h={TAG:"Log",event:"codex.cost_cap_402_seen",fields:Object.fromEntries([["turn_id",t.turnId]])};n.push(h)}let d=G9(r),u=!1;if(d!==void 0){t.lastUpstreamErrorReason=d;let h={TAG:"Log",event:"codex.upstream_error_captured",fields:Object.fromEntries([["turn_id",t.turnId],["reason",d]])};n.push(h)}else{let m=Bu(r);if(m!==void 0){t.lastErrorDiagnosticText=m,u=!0;let _={TAG:"Log",event:"codex.error_without_http_status_captured",fields:Object.fromEntries([["turn_id",t.turnId],["diagnostic_text",m]])};n.push(_)}}i===void 0&&o===void 0&&a===void 0&&s===void 0&&d===void 0&&!u&&(t.unattributedErrorNotificationCount=t.unattributedErrorNotificationCount+1|0);let c=gJ(r);if(c===void 0)return;t.lastUpstreamErrorSummary=c,e.lastUpstreamErrorSummary=c;let p={TAG:"Log",event:"codex.upstream_turn_error_captured",fields:Object.fromEntries([["turn_id",t.turnId],["upstream_error",c]])};n.push(p)}function jJ(e,t,r,n){let i=E(t,"turnId"),o=x(E(t,"reason"),"turn source-seq mapping failed");if(i===void 0||e.terminalTurnIds.has(i))return;let a=e.turns.get(i);if(a!==void 0)return wp(e,a,"failed",o,n,r,"failed",rw);let s=e.bufferedTurns.get(i);e.bufferedTurns.delete(i);let l=[["level","warn"],["turn_id",i],["buffered_event_count",x(G(s,c=>c.length),0)],["reason",o]],u={TAG:"Log",event:"pipeline.loop.buffered_turn_failed",fields:Object.fromEntries(l)};n.push(u),n.push({TAG:"TurnTerminal",turnId:i,outcome:"failed",reason:o,retryableEmptyTurn:!1,autoResumeMidStreamStall:!1,fate:void 0}),xp(e,i)}function zJ(e,t,r,n,i){let o=Or(r,"items"),a=o!==void 0?Array.isArray(o)?o:[]:[];t.protocolFailureReason===void 0&&(t.protocolFailureReason=R9(a)),a.forEach(q=>OM(t,ke(q)));let s=bM(a),l=new Set,d=new Map;s.forEach((q,Ee)=>{let ve=q.projItemId;if(ve===void 0)return;let _e=t.items.find(Be=>Be.posted&&!l.has(Be.itemKey)&&Be.identity.streamKind===q.projStreamKind?de(Be.identity.itemId,ve):!1);if(_e!==void 0){l.add(_e.itemKey),d.set(Ee,_e);return}});let u=new Map;t.items.forEach(q=>{if(!(q.posted&&!l.has(q.itemKey)&&q.identity.itemId===void 0))return;let Ee=q.identity.streamKind;u.set(Ee,x(u.get(Ee),0)+1|0)});let c=new Map;s.forEach((q,Ee)=>{if(d.has(Ee))return;let ve=q.projStreamKind;c.set(ve,x(c.get(ve),0)+1|0)});let f=(q,Ee)=>{let ve=Fl(q.wireItemKey,q.content,"completed").renderedBody.trim(),_e=Ee.projBody.trim();return _e.startsWith(ve)?!0:ve.startsWith(_e)};s.forEach((q,Ee)=>{if(d.has(Ee))return;let ve=q.projStreamKind,_e=de(c.get(ve),u.get(ve));if(q.projItemId!==void 0&&!_e)return;let Be=t.items.find(Yt=>Yt.posted&&!l.has(Yt.itemKey)&&Yt.identity.streamKind===q.projStreamKind?Yt.identity.itemId===void 0:!1);if(Be!==void 0&&(q.projItemId===void 0||f(Be,q))){l.add(Be.itemKey),d.set(Ee,Be);return}});let p=d.entries().toArray();t.items.forEach(q=>{let Ee=p.find(Yt=>Yt[1].itemKey===q.itemKey);if(Ee!==void 0){let Yt=s[Ee[0]];if(Yt===void 0)return;let fn=Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["item_key",q.itemKey],["item_id",q.wireItemKey],["stream_kind",q.identity.streamKind],["item_index",q.identity.itemIndex],["source_seq",t.sourceSeq],["client_message_id",q.clientMessageId],["body",Yt.projBody],["structured",QS(Yt.projStructured,q.wireItemKey)],["stream_snapshot_index",Vu(q)],["terminal_outcome","completed"]]),ki={TAG:"Enqueue",kind:is,data:fn,coalesceKey:void 0,resolution:"MustAck"};i.push(ki),q.emittedStreamState="completed",q.lastEmittedBody=Yt.projBody;return}if(!q.posted||GS(q.emittedStreamState))return;let ve=Fl(q.wireItemKey,q.content,"completed"),_e=Object.fromEntries(Sp(n,t,q,ve).concat([["stream_snapshot_index",Vu(q)],["terminal_outcome","completed"]])),Be={TAG:"Enqueue",kind:is,data:_e,coalesceKey:void 0,resolution:"MustAck"};i.push(Be),q.emittedStreamState="completed",q.lastEmittedBody=ve.renderedBody}),s.forEach((q,Ee)=>{if(d.has(Ee))return;let ve=q.projItemId,_e=ve!==void 0?ve:t.turnId+":"+q.projStreamKind+":snapshot:"+q.snapshotIndex.toString(),Be=q.projItemId,Yt=Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["item_key",t.turnId+":"+q.projStreamKind+":"+(Be!==void 0?Be:"snapshot:"+q.snapshotIndex.toString())],["item_id",_e],["stream_kind",q.projStreamKind],["snapshot_index",q.snapshotIndex],["source_seq",t.sourceSeq],["client_message_id",ew(n.instanceId,t.turnId,q.projStreamKind,_e)],["body",q.projBody],["structured",QS(q.projStructured,_e)],["stream_snapshot_index",1]]),fn={TAG:"Enqueue",kind:Du,data:Yt,coalesceKey:void 0,resolution:"MustAck"};i.push(fn)});let m=t.items.some(q=>q.identity.streamKind==="assistant"?q.posted:!1)||s.some(q=>q.projStreamKind==="assistant"),h=t.agentActionToolCallSeen||t.items.some(q=>q.posted?wM(q.identity.streamKind):!1)||s.some(q=>wM(q.projStreamKind)),_=n.linzumiAgentSession&&m&&!t.agentReplyToolCallSeen&&!h,g=m&&!_,b=t.protocolFailureReason,y=C9(b)&&g,v=y?void 0:b,S;if(!g&&b===void 0&&t.lastUpstreamErrorReason===void 0){let q;if(_)q={cause:T9};else{let Ee=t.lastUpstreamErrorSummary;q=AJ(t,s.length,Ee!==void 0?Ee:e.lastUpstreamErrorSummary)}S=q}else S=void 0;let A=!g&&v===void 0&&t.upstreamRejectedSeen,R=!g&&v===void 0&&t.providerOutageFlaggedSeen,W=J9(t.lastUpstreamErrorHttpStatus),L=!g&&v===void 0&&t.edgeBlockEvidence!==void 0,ae=A&&!R&&!W,U=R||ae?uJ(R,e.consecutiveIsolatedRejections,t.providerOutageDetail,t.upstreamRejectedDetail):void 0,B;if(U!==void 0)switch(U.dispositionKind){case"isolated_retry":B=!0;break;case"storm":case"isolated_terminal":B=!1;break}else B=!1;ae?e.consecutiveIsolatedRejections=e.consecutiveIsolatedRejections+1|0:e.consecutiveIsolatedRejections=0;let oe=!g&&v===void 0&&t.lastUpstreamErrorReason===void 0&&t.lastErrorDiagnosticText===void 0&&!A&&K9(t.lastUpstreamErrorHttpStatus),Z=!g&&v===void 0&&t.lastUpstreamErrorReason===void 0&&W,V=!g&&v===void 0&&t.lastUpstreamErrorReason===void 0&&!A&&!oe&&!Z&&t.toolFatalSeen,M;if(U!==void 0)M=U.dispositionReason;else if(Z){let q=t.upstreamRejectedDetail;M=Y9(t.lastUpstreamErrorHttpStatus,q!==void 0?q:t.lastErrorDiagnosticText)}else if(oe)M=X9(t.lastUpstreamErrorHttpStatus);else if(V)M=Q9(t.toolFatalDetail);else{let q=t.lastUpstreamErrorReason;M=q!==void 0?q:_?x9:S!==void 0?SM+" ["+S.cause+"]":SM}let N=S!==void 0&&v===void 0&&t.modelInteractionSeen&&t.lastErrorDiagnosticText===void 0&&!A&&!oe&&!Z&&!V;N?e.consecutiveEmptyTurns=e.consecutiveEmptyTurns+1|0:e.consecutiveEmptyTurns=0;let j=N&&e.consecutiveEmptyTurns>3,re=N&&!j||B,se=n.autoRetryAttemptsForSeq,Ae=se!==void 0?se(t.sourceSeq):0,Ue=re&&e.costCap402Seen&&Ae<2,Ge=re&&!Ue;if(L){let q=t.edgeBlockEvidence,Ee=t.edgeBlockEvidence,_e={TAG:"Log",event:"codex.edge_blocked_captured",fields:Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["http_status",q!==void 0?q.edgeStatus:null],["signature",Ee!==void 0?Ee.edgeSignature:null]])};i.push(_e)}let ut=j?A9+" ("+e.consecutiveEmptyTurns.toString()+" in a row"+(S!==void 0?": "+S.cause:"")+").":void 0,ze=v!==void 0?v:g?void 0:ut!==void 0?ut:M,pt=N&&!j?Ae:0,Xe=G(ze,q=>q+MM(pt)+(Ue?$M:"")),He=S!==void 0&&!j&&!A&&!oe&&!Z&&!V||B||L,It;if(He||R)It="transient_upstream";else if(oe){let q=t.lastUpstreamErrorHttpStatus;It=q!==void 0?Ou(q):"transient_upstream"}else It="deterministic";if(Ue){let q=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["reason",wi(ze)],["isolated_rejection_retry_suppressed",B]],ve={TAG:"Log",event:"codex.empty_turn_auto_retry_suppressed_cost_cap",fields:Object.fromEntries(q)};i.push(ve)}if(j){let q=t.lastUpstreamErrorSummary,Ee=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["consecutive_empty_turns",e.consecutiveEmptyTurns],["max_consecutive_empty_turns",3],["cause",wi(G(S,Be=>Be.cause))],["last_upstream_error",wi(q!==void 0?q:e.lastUpstreamErrorSummary)]],_e={TAG:"Log",event:"codex.empty_turn_loop_guard_tripped",fields:Object.fromEntries(Ee)};i.push(_e)}if(y){let q=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["reason",wi(b)]],ve={TAG:"Log",event:"codex.turn_completed_with_unsupported_tool_call_ignored",fields:Object.fromEntries(q)};i.push(ve)}else if(b!==void 0){let q=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["reason",wi(b)]],ve={TAG:"Log",event:"codex.turn_completed_with_protocol_failure",fields:Object.fromEntries(q)};i.push(ve)}if(_){let Ee={TAG:"Log",event:"codex.agent_turn_narration_only_no_reply",fields:Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["streamed_item_count",t.items.length],["snapshot_item_count",s.length],["agent_reply_tool_call_seen",t.agentReplyToolCallSeen],["agent_action_tool_call_seen",t.agentActionToolCallSeen],["retryable_empty_turn",He],["empty_turn_loop_guard_tripped",j]])};i.push(Ee)}if(!m){let q=t.lastUpstreamErrorHttpStatus,Ee=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["streamed_item_count",t.items.length],["snapshot_item_count",s.length],["notification_count",t.notificationCount],["error_notification_count",t.errorNotificationCount],["model_interaction_seen",t.modelInteractionSeen],["last_error_diagnostic_text",wi(t.lastErrorDiagnosticText)],["last_upstream_error_reason",wi(t.lastUpstreamErrorReason)],["last_upstream_error_summary",wi(t.lastUpstreamErrorSummary)],["empty_turn_cause",wi(G(S,Be=>Be.cause))],["tool_fatal_seen",V],["tool_fatal_detail",wi(t.toolFatalDetail)],["upstream_rejected_seen",A],["upstream_rejected_detail",wi(t.upstreamRejectedDetail)],["upstream_terminal_4xx",Z],["last_upstream_error_http_status",q!==void 0?q:null],["provider_outage_flagged",R],["isolated_rejection_retry_granted",B],["rejection_disposition",U!==void 0?U.dispositionKind:null],["consecutive_isolated_rejections",e.consecutiveIsolatedRejections],["retryable_empty_turn",He],["empty_turn_loop_guard_tripped",j],["cost_cap_auto_retry_suppressed",Ue]],_e={TAG:"Log",event:"codex.turn_completed_without_assistant_output",fields:Object.fromEntries(Ee)};i.push(_e)}let Cr;if(Xe!==void 0){let q=k(n.ladderHistoryForSeq,_e=>_e(t.sourceSeq,It)),Ee=t.lastUpstreamErrorSummary,ve;if(Ee!==void 0)ve=[["upstream_error",Ee]];else{let _e=e.lastUpstreamErrorSummary;ve=_e!==void 0?[["upstream_error",_e]]:[]}Cr=[["status","failed"],["reason",Xe]].concat((He?[["retryable",!0]]:[]).concat([["fate",It]])).concat((q!==void 0?[["ladder",q]]:[]).concat(L?[["failure_class","edge_blocked"]]:[]).concat(ve))}else Cr=[["status","processed"]];let Wt=Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["seq",t.sourceSeq]].concat(Cr)),Qe={TAG:"Enqueue",kind:jl,data:Wt,coalesceKey:void 0,resolution:"MustAck"};i.push(Qe),Xe===void 0&&(e.lastUpstreamErrorSummary=void 0),i.push(Xe!==void 0?{TAG:"TurnTerminal",turnId:t.turnId,outcome:"failed",reason:Xe,retryableEmptyTurn:Ge,autoResumeMidStreamStall:!1,fate:It}:{TAG:"TurnTerminal",turnId:t.turnId,outcome:"completed",reason:void 0,retryableEmptyTurn:!1,autoResumeMidStreamStall:!1,fate:void 0}),e.turns.delete(t.turnId),xp(e,t.turnId)}function NM(e,t,r,n){switch(t.TAG){case"HarnessNotification":case"CompletionSnapshot":break;case"Lifecycle":return PJ(e,t.kind,t.reason,r,n)}switch(e.phase){case"running":switch(t.TAG){case"HarnessNotification":return EJ(e,t._0,r,n);case"CompletionSnapshot":let c=t.turnId,f=e.bufferedTurns.get(c);if(f!==void 0){f.push(t);return}else return RJ(e,c,t.snapshot,r,n);case"Lifecycle":return}case"closing":let o=[["source",Ml(t)]],s={TAG:"Log",event:"pipeline.loop.event_after_close",fields:Object.fromEntries(o)};n.push(s);return;case"dead":let l=[["source",Ml(t)]],u={TAG:"Log",event:"pipeline.loop.event_after_death",fields:Object.fromEntries(l)};n.push(u);return}}function NJ(e,t,r){e.bufferedTurns.keys().toArray().forEach(n=>{if(t.sourceSeqForTurn(n)===void 0)return;let o=x(e.bufferedTurns.get(n),[]);e.bufferedTurns.delete(n);let s={TAG:"Log",event:"pipeline.loop.buffered_turn_drained",fields:Object.fromEntries([["turn_id",n],["buffered_event_count",o.length]])};r.push(s),o.forEach(l=>NM(e,l,t,r))})}function GM(e,t,r){let n=[];return e.phase==="running"&&NJ(e,r,n),NM(e,t,r,n),n}var nw=2;var GJ=[500,1e3,2500,5e3,1e4,3e4],FJ=1440*60*1e3;function Ap(e,t){return e+"\0"+t}function FM(e,t){let r=Math.max(1,Math.ceil(t*e.length)|0);return x(e[r-1|0],0)}function DJ(e){if(e.length===0)return;let t=e.toSorted((r,n)=>r-n);return{p50Ms:FM(t,.5),p95Ms:FM(t,.95),maxMs:x(t[t.length-1|0],0),ackedInWindow:t.length}}function qJ(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}function DM(e){let t=e.log,r=e.onPermanentFailure,n=e.builders,i={contents:e.threadKey},o=x(e.now,()=>Date.now()),a=x(e.retryDelaysMs,GJ.slice()),s={contents:[]},l={contents:0},d=new Map,u={contents:new Map},c=[],f={contents:1},p={contents:0},m={contents:0},h={contents:0},_={contents:0},g={contents:0},b={contents:0},y=[],v={contents:0},S={contents:!1},A={contents:!0},R={contents:!1},W={contents:void 0},L={contents:void 0},ae=Math.max(1,x(e.maxInFlightPushes,1)),U={contents:0},B={contents:[]},oe={contents:Promise.resolve()},Z=()=>s.contents[l.contents],V=()=>({totalEnqueued:p.contents,totalAcked:m.contents,totalDroppedBestEffort:_.contents,totalPermanentFailures:g.contents,totalExpiredOnRecovery:b.contents,lastEntrySeq:f.contents-1}),M=e.persistDir;if(M!==void 0){let H=NS(M,i.contents),te=F$(H,t),ne=x(e.journalRecoveryMaxAgeMs,FJ),Ke=o(),tt=[];te.pendingEntries.forEach(ct=>{if(Ke-ct.enqueuedAtMs>ne){tt.push(ct);return}let Pt={entry:ct,state:"EntryQueued",outcome:void 0,retryTimer:void 0};s.contents.push(Pt);let vt=ct.coalesceKey;if(vt!==void 0){d.set(Ap(ct.kind,vt),Pt);return}}),u.contents=te.kv,p.contents=te.counters.totalEnqueued,m.contents=te.counters.totalAcked,_.contents=te.counters.totalDroppedBestEffort,g.contents=te.counters.totalPermanentFailures,b.contents=te.counters.totalExpiredOnRecovery+tt.length|0,f.contents=te.counters.lastEntrySeq+1;let st=D$(H,()=>({pendingEntries:s.contents.slice(l.contents).map(ct=>ct.entry),kv:u.contents,counters:V()}),t,e.journalCompactionThreshold,void 0);if(L.contents=st,tt.length!==0){tt.forEach(vt=>st.appendExpired(vt.entrySeq));let ct=tt.map(vt=>Math.max(0,Ke-vt.enqueuedAtMs)),Pt=new Set(tt.map(vt=>vt.kind));t("outbox_recovery_expired",Object.fromEntries([["level","warn"],["threadKey",i.contents],["expiredEntries",tt.length],["survivingEntries",s.contents.length-l.contents|0],["maxAgeMs",ne],["oldestAgeMs",Ve(ct,0,(vt,Ct)=>Math.max(vt,Ct))],["newestAgeMs",Ve(ct,Number.POSITIVE_INFINITY,(vt,Ct)=>Math.min(vt,Ct))],["kinds",Pt.values().toArray().map(vt=>vt)]]))}(s.contents.length-l.contents|0)>0&&t("outbox_recovered",Object.fromEntries([["threadKey",i.contents],["pendingEntries",s.contents.length-l.contents|0],["nextEntrySeq",f.contents]]))}let re={remember:(H,te)=>{u.contents.set(H,te);let ne=L.contents;if(ne!==void 0)return ne.appendKv(H,te)},recall:H=>u.contents.get(H)},se=()=>{if(l.contents=l.contents+1|0,l.contents>=64&&l.contents<<1>=s.contents.length){s.contents=s.contents.slice(l.contents),l.contents=0;return}},Ae=()=>{let H=Z(),te=c.length-1|0;for(;te>=0;){let ne=c[te];if(ne!==void 0&&(H!==void 0?H.entry.entrySeq>ne.upToSeq:!0)){c.splice(te,1);let tt=ne.timer;tt!==void 0&&clearTimeout(ue(tt)),ne.resolve({TAG:"Ok",_0:void 0})}te=te-1|0}},Ue=H=>{let te=H.entry.coalesceKey;if(te===void 0)return;let ne=Ap(H.entry.kind,te),Ke=d.get(ne);if(Ke!==void 0&&Ke===H){d.delete(ne);return}},Ge=(H,te)=>{let ne=H.entry;switch(te.TAG){case"OutcomeAck":let Ke=n[ne.kind];if(Ke!==void 0){let vt=Ke.onReply;if(vt!==void 0){let Ct;try{vt(ne.data,te._0,re),Ct={TAG:"Ok",_0:void 0}}catch(go){let na=ee(go);Ct={TAG:"Error",_0:Ne(na)}}Ct.TAG!=="Ok"&&t("outbox_on_reply_failed",Object.fromEntries([["threadKey",i.contents],["entrySeq",ne.entrySeq],["kind",ne.kind],["error",Ct._0.message]]))}}let tt=L.contents;tt!==void 0&&tt.appendAck(ne.entrySeq);break;case"OutcomeSkip":let st=te._0;t("outbox_entry_skipped",Object.fromEntries([["threadKey",i.contents],["entrySeq",ne.entrySeq],["kind",ne.kind],["reason",st]]));let ct=L.contents;ct!==void 0&&ct.appendSkip(ne.entrySeq,st);break;case"OutcomeFail":if(ne.resolution==="MustAck"){let vt=L.contents;vt!==void 0&&vt.appendFail(ne.entrySeq);let Ct;try{r(ne,te._0),Ct={TAG:"Ok",_0:void 0}}catch(go){let na=ee(go);Ct={TAG:"Error",_0:Ne(na)}}Ct.TAG!=="Ok"&&t("outbox_permanent_failure_callback_failed",Object.fromEntries([["threadKey",i.contents],["entrySeq",ne.entrySeq],["error",Ct._0.message]]))}else{let vt=L.contents;vt!==void 0&&vt.appendDrop(ne.entrySeq)}break}Ue(H),se(),Ae()},ut=()=>{let H=!0;for(;H;){let te=Z();if(te!==void 0){let ne=te.outcome;ne!==void 0?Ge(te,ne):H=!1}else H=!1}},ze=(H,te)=>{let ne=H.entry;switch(te.TAG){case"OutcomeAck":case"OutcomeSkip":break;case"OutcomeFail":let Ke=te._0;ne.resolution==="MustAck"?(g.contents=g.contents+1|0,t("outbox_permanent_failure",Object.fromEntries([["threadKey",i.contents],["entrySeq",ne.entrySeq],["kind",ne.kind],["attempts",ne.attempts],["error",Ke]]))):(_.contents=_.contents+1|0,t("outbox_dropped_best_effort",Object.fromEntries([["threadKey",i.contents],["entrySeq",ne.entrySeq],["kind",ne.kind],["attempts",ne.attempts],["error",Ke]])));break}H.outcome=te,H.state="EntryQueued"},pt=H=>{y.length<256?y.push(H):y[v.contents]=H;let te=v.contents+1|0;v.contents=te>=256?0:te},Xe=H=>{let te=H.retryTimer;if(te!==void 0){clearTimeout(ue(te)),H.retryTimer=void 0;return}},He=()=>{if(U.contents>0)return;let H=B.contents;B.contents=[],H.forEach(te=>te())},It=()=>{let H=Z();return H===void 0||H.state!=="EntryQueued"||H.outcome!==void 0?!1:H.retryTimer!==void 0},Cr={contents:()=>{}},Wt=(H,te)=>{Xe(H);let ne=setTimeout(()=>{if(H.retryTimer=void 0,!(R.contents||S.contents||H.outcome!==void 0))return Cr.contents()},te|0);ne.unref(),H.retryTimer=Ze(ne)},Qe=async(H,te,ne)=>{let Ke=H.entry,tt=o(),st;try{st=await e.push(te[0],te[1],te[2],ne)}catch(vt){let Ct=ee(vt);st={TAG:"PushFailed",message:Ne(Ct).message,budgetExempt:!1}}if(st.TAG==="Acked")return ne(),pt(Math.max(0,o()-tt)),m.contents=m.contents+1|0,ze(H,{TAG:"OutcomeAck",_0:st._0});let ct=st.message;if(ne(),H.state="EntryQueued",st.budgetExempt)return Ke.attempts=Ke.attempts-1|0,h.contents=h.contents+1|0,t("outbox_push_connection_wait",Object.fromEntries([["threadKey",i.contents],["entrySeq",Ke.entrySeq],["kind",Ke.kind],["error",ct]])),!R.contents&&!S.contents?Wt(H,1e3):void 0;let Pt=a[Ke.attempts-1|0];return Pt!==void 0?(h.contents=h.contents+1|0,t("outbox_push_retry",Object.fromEntries([["threadKey",i.contents],["entrySeq",Ke.entrySeq],["kind",Ke.kind],["attempt",Ke.attempts],["delayMs",Pt],["error",ct]])),!R.contents&&!S.contents?Wt(H,Pt):void 0):ze(H,{TAG:"OutcomeFail",_0:ct})},q=async H=>{let te=H.entry,ne=oe.contents,Ke={contents:()=>{}};oe.contents=new Promise((Pt,vt)=>{Ke.contents=Pt});let tt={contents:!1},st=()=>{if(!tt.contents)return tt.contents=!0,Ke.contents()};if(H.state="EntryPushing",U.contents=U.contents+1|0,await ne,R.contents||S.contents||H.outcome!==void 0){H.state="EntryQueued",st(),U.contents=U.contents-1|0;return}let ct=n[te.kind];if(ct!==void 0){let Pt;try{Pt=ct.build(te.data,re)}catch(vt){let Ct=ee(vt);Pt={TAG:"BuildFailed",_0:Ne(Ct).message}}switch(Pt.TAG){case"BuildPush":te.attempts=te.attempts+1|0,await Qe(H,[Pt.event,Pt.payload,Pt.timeoutMs],st),U.contents=U.contents-1|0;return;case"BuildSkip":st(),ze(H,{TAG:"OutcomeSkip",_0:Pt._0}),U.contents=U.contents-1|0;return;case"BuildFailed":st(),ze(H,{TAG:"OutcomeFail",_0:Pt._0}),U.contents=U.contents-1|0;return}}else{st(),ze(H,{TAG:"OutcomeFail",_0:"no outbox builder registered for kind "+te.kind}),U.contents=U.contents-1|0;return}},Ee=()=>{if(ut(),R.contents||S.contents||It())return He();let H=l.contents;for(;H<s.contents.length&&U.contents<ae;){let te=s.contents[H];te!==void 0&&te.state==="EntryQueued"&&te.outcome===void 0&&(te.retryTimer!==void 0||zn(q(te).then(()=>Ee()),st=>(t("outbox_drain_loop_error",Object.fromEntries([["threadKey",i.contents]])),Ee(),Promise.resolve()))),H=H+1|0}He()};Cr.contents=Ee;let ve=()=>{if(S.contents||R.contents)return;if(Z()!==void 0){Promise.resolve().then(()=>{if(!R.contents&&!S.contents)return Ee()});return}},_e=H=>{let te=f.contents-1,ne=Z();return(ne!==void 0?ne.entry.entrySeq>te:!0)?Promise.resolve({TAG:"Ok",_0:void 0}):new Promise((tt,st)=>{let ct={upToSeq:te,resolve:tt,timer:void 0};H!==void 0&&(ct.timer=Ze(setTimeout(()=>{let Pt=c.indexOf(ct);Pt===-1||c.splice(Pt,1),tt({TAG:"Error",_0:"outbox flush for "+i.contents+" timed out after "+H.toString()+"ms with "+(s.contents.length-l.contents|0).toString()+" entries pending"})},H|0))),c.push(ct)})},Be=async H=>{A.contents=!1;let te=await _e(H);te.TAG!=="Ok"&&t("outbox_close_flush_timeout",Object.fromEntries([["threadKey",i.contents],["depth",s.contents.length-l.contents|0],["error",te._0]])),R.contents=!0;let ne=l.contents;for(;ne<s.contents.length;){let st=s.contents[ne];st!==void 0&&Xe(st),ne=ne+1|0}U.contents>0&&await Promise.race([new Promise((st,ct)=>{B.contents.push(()=>st())}),qJ(1e3)]);let Ke=c.slice();c.splice(0,c.length),Ke.forEach(st=>{let ct=st.timer;ct!==void 0&&clearTimeout(ue(ct)),st.resolve({TAG:"Error",_0:"outbox for "+i.contents+" closed"})});let tt=L.contents;if(tt!==void 0)return await tt.close()},Yt=(H,te,ne)=>{if(H===void 0)return ne;let Ke=H.coalesce;if(Ke===void 0)return ne;let tt;try{tt={TAG:"Ok",_0:Ke(te.data,ne)}}catch(st){let ct=ee(st);tt={TAG:"Error",_0:Ne(ct)}}return tt.TAG==="Ok"?tt._0:(t("outbox_coalesce_failed",Object.fromEntries([["threadKey",i.contents],["entrySeq",te.entrySeq],["kind",te.kind],["error",tt._0.message]])),ne)},tn={enqueue:H=>{if(!A.contents)return{TAG:"Error",_0:"outbox for "+i.contents+" is closed"};p.contents=p.contents+1|0;let te=H.coalesceKey,ne;if(te!==void 0){let vt=Ap(H.kind,te),Ct=d.get(vt);if(Ct!==void 0)if(Ct.state==="EntryQueued")if(Ct.outcome!==void 0)ne=void 0;else{Ct.entry.data=Yt(n[H.kind],Ct.entry,H.data);let Hl=L.contents;Hl!==void 0&&Hl.appendCoalesce(Ct.entry.entrySeq,Ct.entry.data),ne=Ct.entry.entrySeq}else ne=void 0;else ne=void 0}else ne=void 0;if(ne!==void 0)return{TAG:"Ok",_0:ne};let Ke=f.contents;f.contents=f.contents+1;let tt={entrySeq:Ke,kind:H.kind,data:H.data,coalesceKey:H.coalesceKey,resolution:H.resolution,attempts:0,enqueuedAtMs:o()},st={entry:tt,state:"EntryQueued",outcome:void 0,retryTimer:void 0};s.contents.push(st);let ct=H.coalesceKey;ct!==void 0&&d.set(Ap(H.kind,ct),st);let Pt=L.contents;return Pt!==void 0&&Pt.appendEnqueue(tt),ve(),{TAG:"Ok",_0:Ke}},flush:_e,pause:()=>{S.contents=!0},resume:()=>{if(!S.contents)return;S.contents=!1;let H=l.contents;for(;H<s.contents.length;){let te=s.contents[H];te!==void 0&&(te.entry.attempts=0,Xe(te)),H=H+1|0}ve()},metrics:()=>{let H=Z(),te=G(L.contents,ne=>ne.status());return{depth:s.contents.length-l.contents|0,oldestEntryAgeMs:G(H,ne=>Math.max(0,o()-ne.entry.enqueuedAtMs)),totalEnqueued:p.contents,totalAcked:m.contents,totalRetried:h.contents,totalDroppedBestEffort:_.contents,totalPermanentFailures:g.contents,totalExpiredOnRecovery:b.contents,totalJournalWriteFailures:x(G(te,ne=>ne.totalWriteFailures),0),journalDegraded:x(G(te,ne=>ne.degraded),!1),paused:S.contents,pushLatency:DJ(y)}},close:H=>{let te=W.contents;if(te!==void 0)return te;let ne=Be(x(H,3e4));return W.contents=ne,ne},journalSettled:()=>{let H=L.contents;return H!==void 0?H.settled():Promise.resolve()},rekeyJournal:H=>{if(H===i.contents)return;i.contents=H;let te=e.persistDir,ne=L.contents;if(te!==void 0&&ne!==void 0)return ne.rekey(NS(te,H))}};return ve(),tn}var UJ=10*6e4;function WJ(e){switch(e){case"collabAgentToolCall":case"commandExecution":case"contextCompaction":case"dynamicToolCall":case"mcpToolCall":case"terminalInput":return!0;default:return!1}}function ss(e){let t=Sr(e);return t!==void 0?x(Er(ue(t)),"unknown error"):"unknown error"}function qM(e){let t=EM(),r=e.threadKey,n=e.instanceId,i=e.sourceSeqForTurn,o=e.autoRetryAttemptsForSeq,a=e.midStreamResumeAttemptAtMsForSeq,s=e.ladderHistoryForSeq,l=e.linzumiAgentSession,d={threadKey:r,instanceId:n,sourceSeqForTurn:i,autoRetryAttemptsForSeq:o,midStreamResumeAttemptAtMsForSeq:a,ladderHistoryForSeq:s,linzumiAgentSession:l},u=[],c=x(e.now,()=>Date.now()),f=new Map,p=new Map,m=new Map,h=new Map,_=new Set,g=x(e.bufferedTurnMaxAgeMs,UJ),b=x(e.bufferedTurnMaxEvents,1e4),y=x(e.bufferedTurnSweepIntervalMs,3e4),v={contents:!1},S={contents:!0},A={contents:void 0},R=(N,j)=>{try{return e.log(N,Object.fromEntries(j))}catch{return}},W=N=>t.turns.has(N)?!0:t.bufferedTurns.has(N),L=()=>{t.turns.keys().toArray().forEach(N=>{if(!f.has(N)){f.set(N,c());return}}),f.keys().toArray().forEach(N=>{if(!t.turns.has(N)){f.delete(N);return}}),t.bufferedTurns.keys().toArray().forEach(N=>{if(!p.has(N)){p.set(N,c());return}}),p.keys().toArray().forEach(N=>{if(!t.bufferedTurns.has(N)){p.delete(N),_.delete(N);return}}),m.keys().toArray().forEach(N=>{if(!W(N)){m.delete(N);return}}),h.keys().toArray().forEach(N=>{if(!W(N)){h.delete(N);return}})},ae=(N,j)=>{if(W(N)){m.set(N,{atMs:c(),activityKind:j});return}},U=N=>{switch(N.TAG){case"HarnessNotification":let j=N._0,re=j.method;if(re===Hu||re===ql)return;let se=Zu(x(j.params,{})),Ae=se!==void 0?se:Tp(t);return Ae!==void 0?ae(Ae,re):void 0;case"CompletionSnapshot":case"Lifecycle":return}},B=N=>{switch(N.TAG){case"HarnessNotification":let j=N._0,re=j.method;if(re!=="item/started"&&re!=="item/completed"&&re!=="response_item")return;let se=x(j.params,{}),Ae=Zu(se),Ue=Ae!==void 0?Ae:Tp(t);if(Ue===void 0||!W(Ue))return;let Ge=yp(se);if(Ge===void 0||Ge==="")return;if(re==="item/started"){let ze=k(qe(se,"item"),He=>E(He,"type"));if(ze===void 0||!WJ(ze))return;let pt=h.get(Ue),Xe;if(pt!==void 0)Xe=pt;else{let He=new Map;h.set(Ue,He),Xe=He}Xe.set(Ge,{kind:ze,startedAtMs:c()});return}let ut=h.get(Ue);if(ut!==void 0){ut.delete(Ge);return}else return;case"CompletionSnapshot":case"Lifecycle":return}},oe=()=>{if(!S.contents||t.phase!=="running")return!1;let N=c(),j={contents:!1};return t.bufferedTurns.entries().toArray().forEach(re=>{let se=re[0];if(_.has(se))return;let Ae=re[1],Ue=N-x(p.get(se),N),Ge=Ue>g,ut=Ae.length>b;if(Ge||ut){_.add(se),R("pipeline.loop.buffered_turn_overdue",[["level","warn"],["thread_key",e.threadKey],["turn_id",se],["buffered_event_count",Ae.length],["age_ms",Ue],["max_age_ms",g],["max_events",b]]),u.push({TAG:"HarnessNotification",_0:{method:ql,params:Object.fromEntries([["turnId",se],["reason",ut?"turn source mapping never arrived ("+Ae.length.toString()+" buffered events exceeded the "+b.toString()+" cap)":"turn source mapping never arrived within "+g.toString()+"ms"]])}}),j.contents=!0;return}}),j.contents},Z=()=>{if(v.contents)return;v.contents=!0;let N=!0;for(;N;){let j=u.shift();if(j!==void 0){let re;try{re=GM(t,j,d)}catch(se){let Ae=ee(se);R("pipeline.loop.event_processing_failed",[["thread_key",e.threadKey],["source",Ml(j)],["message",ss(Ae)]]),re=void 0}re!==void 0&&(L(),U(j),B(j),re.forEach(se=>{try{switch(se.TAG){case"Enqueue":return e.outboxEnqueue({kind:se.kind,data:se.data,coalesceKey:se.coalesceKey,resolution:se.resolution});case"RequestSnapshot":return e.requestSnapshot(se.turnId);case"TurnTerminal":return e.onTurnTerminal(se.turnId,se.outcome,se.reason,se.retryableEmptyTurn,se.autoResumeMidStreamStall,se.fate);case"Log":try{return e.log(se.event,se.fields)}catch{return}}}catch(Ae){let Ue=ee(Ae),Ge;switch(se.TAG){case"Enqueue":Ge="enqueue";break;case"RequestSnapshot":Ge="requestSnapshot";break;case"TurnTerminal":Ge="turnTerminal";break;case"Log":Ge="log";break}return R("pipeline.loop.effect_failed",[["thread_key",e.threadKey],["effect",Ge],["message",ss(Ue)]])}}),oe())}else N=!1}v.contents=!1},V;if(y>0){let N=setInterval(()=>{if(oe())return Z()},y);N.unref(),V=Ze(N)}else V=void 0;let M=N=>{let j=h.get(N);return j!==void 0?j.values().toArray().map(re=>({kind:re.kind,startedAtMs:re.startedAtMs})):[]};return{submit:N=>{try{return S.contents?(u.push(N),Z()):R("pipeline.loop.event_after_drain",[["thread_key",e.threadKey],["source",Ml(N)]])}catch(j){let re=ee(j);return R("pipeline.loop.submit_failed",[["thread_key",e.threadKey],["message",ss(re)]])}},metrics:()=>({queueDepth:u.length,phase:t.phase,activeTurns:t.turns.values().toArray().map(N=>({turnId:N.turnId,sourceSeq:N.sourceSeq,startedAtMs:x(f.get(N.turnId),c()),lastActivityAtMs:G(m.get(N.turnId),j=>j.atMs),lastActivityKind:G(m.get(N.turnId),j=>j.activityKind),openItems:M(N.turnId)})),bufferedTurns:t.bufferedTurns.entries().toArray().map(N=>{let j=N[0];return{turnId:j,bufferedEventCount:N[1].length,firstBufferedAtMs:x(p.get(j),c()),lastActivityAtMs:G(m.get(j),re=>re.atMs),lastActivityKind:G(m.get(j),re=>re.activityKind),openItems:M(j)}})}),noteTurnActivity:(N,j)=>{try{return ae(N,j)}catch(re){let se=ee(re);return R("pipeline.loop.note_activity_failed",[["thread_key",e.threadKey],["message",ss(se)]])}},drainAndClose:N=>{let j=A.contents;if(j!==void 0)return j;let re=(async()=>{S.contents=!1,V!==void 0&&clearInterval(ue(V)),await Promise.resolve(),Z();let se;try{se=await e.outboxFlush(N)}catch(Ae){let Ue=ee(Ae);return R("pipeline.loop.drain_flush_failed",[["thread_key",e.threadKey],["message",ss(Ue)]])}if(se.TAG!=="Ok")return R("pipeline.loop.drain_flush_failed",[["thread_key",e.threadKey],["message",se._0]])})();return A.contents=re,re}}}var ZJ=10*6e4,VJ={emittedTotalEnqueued:0,emittedTotalAcked:0,emittedTotalRetried:0,emittedTotalDroppedBestEffort:0,emittedTotalPermanentFailures:0,emittedTotalExpiredOnRecovery:0,emittedTotalJournalWriteFailures:0,emittedJournalDegraded:!1};function HJ(e){return e.activeTurns.map(t=>({candidateTurnId:t.turnId,candidateSourceSeq:t.sourceSeq,sinceMs:t.startedAtMs,buffered:!1,candidateLastActivityAtMs:t.lastActivityAtMs,candidateLastActivityKind:t.lastActivityKind,candidateOpenItems:t.openItems})).concat(e.bufferedTurns.map(t=>({candidateTurnId:t.turnId,candidateSourceSeq:void 0,sinceMs:t.firstBufferedAtMs,buffered:!0,candidateLastActivityAtMs:t.lastActivityAtMs,candidateLastActivityKind:t.lastActivityKind,candidateOpenItems:t.openItems})))}function BJ(e){return Ve(e,void 0,(t,r)=>t!==void 0&&t<=r.startedAtMs?t:r.startedAtMs)}function KJ(e,t,r){return e.depth>0||e.paused||t.queueDepth>0||t.activeTurns.length!==0||t.bufferedTurns.length!==0||e.totalEnqueued!==r.emittedTotalEnqueued||e.totalAcked!==r.emittedTotalAcked||e.totalRetried!==r.emittedTotalRetried||e.totalDroppedBestEffort!==r.emittedTotalDroppedBestEffort||e.totalPermanentFailures!==r.emittedTotalPermanentFailures||e.totalExpiredOnRecovery!==r.emittedTotalExpiredOnRecovery||e.totalJournalWriteFailures!==r.emittedTotalJournalWriteFailures?!0:e.journalDegraded!==r.emittedJournalDegraded}function JJ(e){return Ve(e,void 0,(t,r)=>t!==void 0&&t.startedAtMs<=r.startedAtMs?t:r)}function ow(e){return e}function aw(e){return new Set(e).values().toArray().toSorted(fs)}function UM(e){let t=x(e.now,()=>Date.now()),r=x(e.intervalMs,3e4),n=x(e.turnStalledThresholdMs,ZJ),i={contents:VJ},o=new Set,a=new Set,s={contents:!1},l=(c,f,p,m)=>{let h=new Set(c.map(_=>_.candidateTurnId));o.values().toArray().forEach(_=>{if(!h.has(_)){o.delete(_);return}}),a.values().toArray().forEach(_=>{if(!h.has(_)){a.delete(_);return}}),c.forEach(_=>{let g=Math.max(0,m-_.sinceMs),b=Math.max(_.sinceMs,x(_.candidateLastActivityAtMs,_.sinceMs)),y=Math.max(0,m-b),v=aw(p.filter(W=>W.waitTurnId===_.candidateTurnId).map(W=>W.waitKind));if(v.length===0){a.delete(_.candidateTurnId);let W=_.candidateOpenItems.length!==0?n*2:n;if(!(y>=W&&!o.has(_.candidateTurnId)))return;let L=BJ(_.candidateOpenItems);o.add(_.candidateTurnId);let ae=_.candidateSourceSeq,U=_.candidateLastActivityKind,B=_.candidateLastActivityAtMs,oe=f.oldestEntryAgeMs;return e.log("pipeline.turn_stalled",Object.fromEntries([["level","warn"],["thread_key",e.threadKey],["turn_id",_.candidateTurnId],["source_seq",ae!==void 0?ae:null],["buffered",_.buffered],["turn_age_ms",g],["quiet_ms",y],["last_activity_kind",U!==void 0?U:null],["last_activity_age_ms",B!==void 0?Math.max(0,m-B):null],["threshold_ms",n],["effective_threshold_ms",W],["open_item_count",_.candidateOpenItems.length],["open_item_kinds",aw(_.candidateOpenItems.map(Z=>Z.kind)).map(ow)],["open_item_oldest_age_ms",L!==void 0?Math.max(0,m-L):null],["outbox_depth",f.depth],["oldest_entry_age_ms",oe!==void 0?oe:null],["paused",f.paused]]))}if(!(y>=n&&!a.has(_.candidateTurnId)))return;a.add(_.candidateTurnId);let S=_.candidateSourceSeq,A=_.candidateLastActivityKind,R=_.candidateLastActivityAtMs;e.log("pipeline.turn_waiting_on_user",Object.fromEntries([["thread_key",e.threadKey],["turn_id",_.candidateTurnId],["source_seq",S!==void 0?S:null],["buffered",_.buffered],["turn_age_ms",g],["quiet_ms",y],["last_activity_kind",A!==void 0?A:null],["last_activity_age_ms",R!==void 0?Math.max(0,m-R):null],["threshold_ms",n],["wait_kinds",v.map(ow)],["open_item_count",_.candidateOpenItems.length],["open_item_kinds",aw(_.candidateOpenItems.map(W=>W.kind)).map(ow)]]))})},d=()=>{if(s.contents)return;let c;try{let v=e.turnWaitStates;c=[e.outboxMetrics(),e.loopMetrics(),v!==void 0?v():[]]}catch(v){let S=ee(v);e.log("pipeline.stats_sample_failed",Object.fromEntries([["thread_key",e.threadKey],["message",ss(S)]])),c=void 0}if(c===void 0)return;let f=c[1],p=c[0],m=t();if(l(HJ(f),p,c[2],m),!KJ(p,f,i.contents))return;let h=JJ(f.activeTurns),_=p.oldestEntryAgeMs,g=p.pushLatency,b=p.pushLatency,y=p.pushLatency;e.log("pipeline.stats",Object.fromEntries([["thread_key",e.threadKey],["outbox_depth",p.depth],["oldest_entry_age_ms",_!==void 0?_:null],["total_enqueued",p.totalEnqueued],["total_acked",p.totalAcked],["total_retried",p.totalRetried],["total_dropped_best_effort",p.totalDroppedBestEffort],["total_permanent_failures",p.totalPermanentFailures],["total_expired_on_recovery",p.totalExpiredOnRecovery],["total_journal_write_failures",p.totalJournalWriteFailures],["journal_degraded",p.journalDegraded],["push_latency_p50_ms",g!==void 0?g.p50Ms:null],["push_latency_p95_ms",b!==void 0?b.p95Ms:null],["push_latency_max_ms",y!==void 0?y.maxMs:null],["push_latency_window_acked",x(G(p.pushLatency,v=>v.ackedInWindow),0)],["paused",p.paused],["loop_queue_depth",f.queueDepth],["loop_phase",f.phase],["active_turn_count",f.activeTurns.length],["buffered_turn_count",f.bufferedTurns.length],["active_turn_id",h!==void 0?h.turnId:null],["active_turn_source_seq",h!==void 0?h.sourceSeq:null],["active_turn_age_ms",h!==void 0?Math.max(0,m-h.startedAtMs):null]])),i.contents={emittedTotalEnqueued:p.totalEnqueued,emittedTotalAcked:p.totalAcked,emittedTotalRetried:p.totalRetried,emittedTotalDroppedBestEffort:p.totalDroppedBestEffort,emittedTotalPermanentFailures:p.totalPermanentFailures,emittedTotalExpiredOnRecovery:p.totalExpiredOnRecovery,emittedTotalJournalWriteFailures:p.totalJournalWriteFailures,emittedJournalDegraded:p.journalDegraded}},u;if(r>0){let c=setInterval(d,r);c.unref(),u=Ze(c)}else u=void 0;return{sample:d,stop:()=>{if(s.contents=!0,u!==void 0){clearInterval(ue(u));return}}}}var XJ=[1e3,5e3];function ni(e,t){return k(e[t],Tr)}function Ju(e,t){return k(e[t],ha)}function Ll(e,t){return k(e[t],ke)}function sw(e,t){Object.entries(t).forEach(r=>{e[r[0]]=r[1]})}function Ku(e){let t={};return sw(t,e),t}function QJ(e){let t=e.body;return typeof t=="string"?t:""}function e6(e){return x(Ll(e,"structured"),{})}function t6(e){return e===Gu||e===Fu||e===is?!0:e===Du}function r6(e,t){let r=ni(t,"turn_id");r!==void 0&&(e.turn_id=r);let n=ni(t,"item_key");n!==void 0&&(e.item_key=n);let i=Ju(t,"delta_index");i!==void 0&&(e.delta_index=i);let o=Ju(t,"stream_snapshot_index");if(o!==void 0){e.stream_snapshot_index=o;return}}function VM(e,t,r){let n=t.traceparentForThread(r);if(n!==void 0){e.traceparent=n;return}}function n6(e){return{build:(t,r)=>{let n=e.wire(),i=n.threadId,o=n.harnessSessionId;if(i===void 0)return{TAG:"BuildSkip",_0:"session_thread_unbound"};if(o===void 0)return{TAG:"BuildSkip",_0:"session_thread_unbound"};let a=ni(t,"client_message_id");if(a===void 0)return{TAG:"BuildSkip",_0:"missing_client_message_id"};let s=ni(t,"turn_id"),l=Ju(t,"source_seq"),d={};s!==void 0&&(d.turn_id=s),d.stream_key=a;let u=Ku(d),c=Ll(t,"local_runner_runtime_metadata");c!==void 0&&sw(u,c);let f=Ku(e.rowEnvelope("codex_output",o,l,u)),p=n.rootSeq;p!==void 0&&(f.reply_to_seq=p),l!==void 0&&(f.source_message_seq=l),sw(f,d);let m=Ku(e6(t));m.stream_key=a,f.structured=m;let h={};h.workspace=n.workspaceSlug,h.channel=n.channelSlug,h.thread_id=i,h.stream_key=a;let _=n.leaseEpoch;return _!==void 0&&(h.lease_epoch=_),h.body=QJ(t),h.payload=f,h.client_message_id=a,r6(h,t),VM(h,e,i),{TAG:"BuildPush",event:"session:stream_thread_message",payload:h,timeoutMs:void 0}},onReply:void 0,coalesce:void 0}}function i6(e){return{build:(t,r)=>{let n=e.wire(),i=n.threadId;if(i===void 0)return{TAG:"BuildSkip",_0:"session_thread_unbound"};let o=Ju(t,"seq"),a=ni(t,"status");if(o===void 0)return{TAG:"BuildSkip",_0:"malformed_message_state_entry"};if(a===void 0)return{TAG:"BuildSkip",_0:"malformed_message_state_entry"};let s=de(t.suppress_terminal_for_recovered_turn,!0),l=ni(t,"turn_id"),d=e.isRecoveredTurn,u=l!==void 0&&d!==void 0?d(l)===!0:!1;if(s||u)return{TAG:"BuildSkip",_0:"terminal_for_recovered_turn"};let c={};c.workspace=n.workspaceSlug,c.channel=n.channelSlug,c.thread_id=i,c.instance_id=e.instanceId;let f=n.harnessSessionId;f!==void 0&&(c.codex_thread_id=f),c.seq=o,c.status=a;let p=ni(t,"reason");p!==void 0&&(c.reason=p);let m=t.retryable;typeof m=="boolean"&&m&&(c.retryable=!0);let h=t.fate;typeof h=="string"&&qt(lp(h))&&(c.fate=h);let _=Ll(t,"ladder");_!==void 0&&(c.ladder=_),t.failure_class==="edge_blocked"&&(c.failure_class="edge_blocked");let b=ni(t,"upstream_error");b!==void 0&&(c.upstream_error=b);let y=ni(t,"turn_id");y!==void 0&&(c.turn_id=y);let v=n.leaseEpoch;return v!==void 0&&(c.lease_epoch=v),VM(c,e,i),{TAG:"BuildPush",event:"message_state",payload:c,timeoutMs:void 0}},onReply:void 0,coalesce:void 0}}function o6(e){let t=n6(e);return Object.fromEntries([[Gu,t],[Fu,t],[is,t],[Du,t],[jl,i6(e)]])}function HM(e,t){if(e.error!==void 0)return[];let n=k(Ll(e,"result"),a=>Ll(a,"thread")),i=x(k(k(n,a=>a.turns),Qi),[]),o=$e(i,ke).find(a=>{let s=a.id;return typeof s=="string"?s===t:!1});return $e(x(k(k(o,a=>a.items),Qi),[]),ke)}var gne=new RegExp("^item-\\d+$");var BM=o$;function a6(e){return new Promise((t,r)=>{setTimeout(()=>t(),e|0)})}function WM(e){let t=Sr(e);return t!==void 0?x(Er(ue(t)),"unknown error"):"unknown error"}function ZM(e){return e!==void 0?e:null}function KM(e){let t=o6({instanceId:e.instanceId,wire:e.wire,rowEnvelope:e.rowEnvelope,isRecoveredTurn:e.isRecoveredTurn,traceparentForThread:e.traceparentForThread}),r=DM({threadKey:e.threadKey,push:e.push,builders:t,persistDir:e.persistDir,retryDelaysMs:G(e.outboxRetryDelaysMs,f=>f.slice()),onPermanentFailure:(f,p)=>e.log("pipeline.outbox_entry_failed",Object.fromEntries([["thread_key",e.threadKey],["entry_seq",f.entrySeq],["kind",f.kind],["attempts",f.attempts],["item_key",ZM(ni(f.data,"item_key"))],["turn_id",ZM(ni(f.data,"turn_id"))],["message",p]])),log:e.log,now:void 0,maxInFlightPushes:x(e.outboxMaxInFlightPushes,16),journalCompactionThreshold:void 0,journalRecoveryMaxAgeMs:e.journalRecoveryMaxAgeMs}),n=f=>{let p=!1;if(f.kind===jl){let b=ni(f.data,"turn_id"),y=e.isRecoveredTurn;p=b!==void 0&&y!==void 0?y(b)===!0:!1}if(p){let b=Ku(f.data);return b.suppress_terminal_for_recovered_turn=!0,{kind:f.kind,data:b,coalesceKey:f.coalesceKey,resolution:f.resolution}}if(!t6(f.kind))return f;let m=Ju(f.data,"source_seq"),h=Ll(f.data,"local_runner_runtime_metadata"),_=h!==void 0?h:k(e.runtimeMetadataForSourceSeq,b=>b(m));if(_===void 0)return f;let g=Ku(f.data);return g.local_runner_runtime_metadata=_,{kind:f.kind,data:g,coalesceKey:f.coalesceKey,resolution:f.resolution}},i=f=>{let p=r.enqueue(n(f));if(p.TAG!=="Ok")try{return e.log("pipeline.loop.effect_failed",Object.fromEntries([["thread_key",e.threadKey],["effect","enqueue"],["message",p._0]]))}catch{return}},o={contents:void 0},a=f=>{let p=o.contents;if(p!==void 0)return p.submit(f)},s=x(e.sleep,a6),l=async f=>{let p=x(e.snapshotRetryDelaysMs,XJ),m=0,h=!1;for(;!h;){let _;try{_=await e.resolveSnapshot(f)}catch(g){let b=ee(g);_={TAG:"Error",_0:WM(b)}}if(_.TAG==="Ok")a({TAG:"CompletionSnapshot",turnId:f,snapshot:Object.fromEntries([["items",_._0.slice()]])}),h=!0;else{let g=_._0,b=p[m];e.log("pipeline.snapshot_resolution_failed",Object.fromEntries([["thread_key",e.threadKey],["turn_id",f],["attempt",m+1|0],["retry_in_ms",b!==void 0?b:null],["message",g]])),b!==void 0?(await s(b),m=m+1|0):(a({TAG:"HarnessNotification",_0:{method:"turn/failed",params:Object.fromEntries([["turnId",f],["reason","completion snapshot resolution failed: "+g]])}}),h=!0)}}},d=qM({threadKey:e.threadKey,instanceId:e.instanceId,outboxEnqueue:i,outboxFlush:f=>r.flush(f),sourceSeqForTurn:e.sourceSeqForTurn,autoRetryAttemptsForSeq:e.autoRetryAttemptsForSeq,midStreamResumeAttemptAtMsForSeq:e.midStreamResumeAttemptAtMsForSeq,ladderHistoryForSeq:e.ladderHistoryForSeq,onTurnTerminal:e.onTurnTerminal,requestSnapshot:f=>{zn(l(f),p=>(e.log("pipeline.snapshot_request_failed",Object.fromEntries([["thread_key",e.threadKey],["turn_id",f],["message",WM(p)]])),Promise.resolve()))},log:e.log,linzumiAgentSession:e.linzumiAgentSession===!0,now:void 0,bufferedTurnMaxAgeMs:void 0,bufferedTurnMaxEvents:void 0,bufferedTurnSweepIntervalMs:void 0});o.contents=d;let u=UM({threadKey:e.threadKey,outboxMetrics:()=>r.metrics(),loopMetrics:()=>d.metrics(),log:e.log,intervalMs:e.statsIntervalMs,turnStalledThresholdMs:e.turnStalledThresholdMs,turnWaitStates:e.turnWaitStates,now:void 0}),c={contents:void 0};return{submitNotification:(f,p)=>d.submit({TAG:"HarnessNotification",_0:{method:f,params:p}}),notifyTurnMappingReady:f=>d.submit({TAG:"HarnessNotification",_0:{method:Hu,params:Object.fromEntries([["turnId",f]])}}),notifyTurnMappingFailed:(f,p)=>d.submit({TAG:"HarnessNotification",_0:{method:ql,params:Object.fromEntries([["turnId",f],["reason",p]])}}),noteTurnActivity:(f,p)=>d.noteTurnActivity(f,p),submitLifecycle:(f,p)=>d.submit({TAG:"Lifecycle",kind:f,reason:p}),pause:()=>r.pause(),resume:()=>r.resume(),rebindThreadKey:f=>r.rekeyJournal(f),flushOutbox:f=>r.flush(f),metrics:()=>r.metrics(),close:f=>{let p=c.contents;if(p!==void 0)return p;let m=(async()=>(u.stop(),d.submit({TAG:"Lifecycle",kind:"shutdown",reason:"session closed"}),await d.drainAndClose(f),await r.close(f)))();return c.contents=m,m}}}function Op(e){return e.split("_").map((t,r)=>r!==0?t.slice(0,1).toUpperCase()+t.slice(1,t.length):t).join("")}function Yu(e){return x(G(Mm.find(t=>t[0]===e),t=>t[1]),e)}var Nn=Yu("harness_session_id"),ls=Op(Nn);function Wi(e,t){let r=e[t];if(typeof r=="string")return r}function lw(e,t){let r=e[t];if(r!==void 0)switch(typeof r){case"string":return r;case"number":return isFinite(r)?r.toString():void 0;default:return}}function l6(e,t){let r=k(t.error,ke),n=k(t.item,ke),i=d=>Ve(d,void 0,(u,c)=>u!==void 0?u:c),o=i([lw(t,"code"),k(r,d=>lw(d,"code")),lw(t,"status")]),a=i([Wi(t,"message"),Wi(t,"detail"),Wi(t,"reason"),k(r,d=>Wi(d,"message")),k(r,d=>Wi(d,"detail")),k(r,d=>Wi(d,"reason"))]),s=o!==void 0?e+" "+o:e,l=a!==void 0?a:G(k(n,d=>Wi(d,"type")),d=>"item.type="+d);return G(l,d=>s+": "+d)}function d6(e,t){switch(e){case"error":case"warning":break;default:return t}let r=l6(e,t);if(r===void 0)return t;let n={};return Object.entries(t).forEach(i=>{n[i[0]]=i[1]}),n.diagnostic_summary=r,n.diagnostic_payload=t,n.diagnostic_payload_keys=Object.keys(t).toSorted(fs).map(i=>i),n}var u6=["When you create files that should be attached back to Linzumi, use the linzumi_upload_files MCP tool silently.","Do not mention that you are using the upload tool. Do not print an upload manifest or upload footer in the message.","The MCP upload tool is the only supported path for attaching generated files to Linzumi messages."];function JM(e){let t=A$(e);return t.trimStart().startsWith("!")?t:[t,""].concat(u6).join(`
|
|
391
|
+
`)}var c6={sandboxedNeverDefault:!1};function YM(e){let t=Vm(e.approvalPolicy,e.sandbox,c6);return t.TAG==="Ok"?t._0:"on-request"}function XM(e){let t={};t.approvalPolicy=YM(e);let r=e.sandbox;return r!==void 0&&(t.sandbox=r),t}function f6(e,t,r,n){let i={};i.threadId=e,i.input=[Object.fromEntries([["type","text"],["text",t]])],i.cwd=r;let o=n.model;o!==void 0&&(i.model=o);let a=n.reasoningEffort;a!==void 0&&(i.effort=a),i.approvalPolicy=YM(n);let s=n.sandbox;if(s!==void 0){let l=NR(s,r);l.TAG==="Ok"&&(i.sandboxPolicy=l._0)}return i}async function Ul(e,t,r,n){let i=e.deps,o={};o.workspace=i.workspaceSlug,o.channel=i.channelSlug,o.thread_id=i.threadId,o.instance_id=i.instanceId,o[Nn]=i.harnessSessionId,o.seq=t,o.status=r,n!==void 0&&(o.reason=n);let a=i.actorSlug;a!==void 0&&(o.actor_slug=a);let s=i.actorUserId;s!==void 0&&(o.actor_user_id=s);let l=await i.transport.push(i.commanderTopic,"message_state",o,void 0);if(l.TAG!=="Ok")return i.log("kandan.message_state_push_failed",Object.fromEntries([["seq",t],["status",r],["message",ri(l._0)]]))}async function Qo(e,t,r){return e.processingReason=r,e.processingSeq=t,await Ul(e,t,"processing",r)}function m6(e){let t=G(e.LINZUMI_TYPING_HEARTBEAT_MS,n=>n.trim());if(t===void 0||t==="")return 5e3;let r=jn(t);return r!==void 0&&isFinite(r)&&r>0?Math.trunc(r):5e3}function QM(e){let t={};return t.workspace=e.workspaceSlug,t.channel=e.channelSlug,t.thread_id=e.threadId,t.instance_id=e.instanceId,t[Nn]=e.harnessSessionId,t}async function p6(e){let t=e.processingSeq,r=e.processingReason;if(t!==void 0&&r!==void 0)return await Ul(e,t,"processing",r)}function ej(e,t){if(e.typingHeartbeatInFlight)return;e.typingHeartbeatInFlight=!0;let r=e.deps;(async()=>{try{let i=await r.transport.push(r.commanderTopic,"session:typing_start",QM(r),void 0);i.TAG!=="Ok"&&r.log("kandan.optional_push_failed",Object.fromEntries([["event","session:typing_start"],["message",ri(i._0)]])),t&&await p6(e)}catch(i){let o=ee(i);r.log("kandan.typing_heartbeat_failed",Object.fromEntries([["message",Ne(o).message]]))}e.typingHeartbeatInFlight=!1})()}function tj(e,t){e.typingHeartbeatTimer=Ze(e.deps.timers.setTimer(()=>{if(e.typingActive)return ej(e,!0),tj(e,t)},t))}function h6(e){if(e.typingActive=!0,ej(e,!1),e.typingHeartbeatTimer===void 0)return tj(e,m6(e.deps.env))}function rj(e){let t=e.typingHeartbeatTimer;if(t!==void 0){e.deps.timers.clearTimer(ue(t)),e.typingHeartbeatTimer=void 0;return}}function _6(e,t){if(rj(e),!e.typingActive)return;e.typingActive=!1;let r=e.deps;(async()=>{let i=await r.transport.push(r.commanderTopic,"session:typing_stop",QM(r),void 0);if(i.TAG!=="Ok")return r.log("kandan.typing_stop_after_completion_failed",Object.fromEntries([["turn_id",t],["message",ri(i._0)]]))})()}function g6(e,t,r){switch(t){case"item/completed":let n=k(r.item,ke);if(n===void 0||!qt(Wi(n,"id")))return;let i=e.activityJournalTurns[e.activityJournalTurns.length-1|0];if(i===void 0)return;let o=r.completedAtMs,a=typeof o=="number"?o:void 0;for(i.items.push({item:n,completedAtMs:a}),e.activityJournalItemCount=e.activityJournalItemCount+1|0;e.activityJournalItemCount>2e3&&e.activityJournalTurns.length>1;){let l=e.activityJournalTurns.shift();l!==void 0&&(e.activityJournalItemCount=e.activityJournalItemCount-l.items.length|0)}return;case"turn/started":let s=k(k(r.turn,ke),l=>Wi(l,"id"));if(s!==void 0){e.activityJournalTurns.push({turnId:s,items:[]});return}else return;default:return}}function y6(e){if(e.TAG==="ResultReply")return k(k(k(ke(e._0),t=>t.turn),ke),t=>Wi(t,"id"))}async function nj(e,t){let r=e.deps;r.log("codex.turn_starting",Object.fromEntries([["queued_seq",t.seq],["thread_id",r.threadId],[Nn,r.harnessSessionId]])),await Qo(e,t.seq,"starting turn"),await Qo(e,t.seq,"starting turn"),h6(e),e.dispatchingTurnStart=!0,e.pendingStartingPaints=[];let n,i=0,o;try{o=await r.harness.request("turn/start",f6(r.harnessSessionId,JM(t),r.cwd,r.defaults)),i=1}catch(a){let s=ee(a);e.pendingStartingPaints=[],n={TAG:"Error",_0:"turn/start failed: "+Ne(s).message}}if(i===1)if(o.TAG==="Ok"){let a=o._0;if(a.TAG==="ResultReply"){let s=y6(a);if(s!==void 0){e.turnSeqs.set(s,t.seq),e.active={turnId:s,sourceSeq:t.seq};let l=e.pendingStartingPaints;e.pendingStartingPaints=[],l.forEach(u=>{if(u.paintTurnId===s&&nn(e.processingReason,u.reason)){Qo(e,t.seq,u.reason);return}}),r.log("codex.turn_started",Object.fromEntries([["turn_id",s]]));let d=e.pipeline;d!==void 0&&d.notifyTurnMappingReady(s),n={TAG:"Ok",_0:void 0}}else n={TAG:"Error",_0:"turn/start reply carried no turn id"}}else n={TAG:"Error",_0:"turn/start failed: "+a.message}}else n={TAG:"Error",_0:"turn/start failed: "+o._0};return e.dispatchingTurnStart=!1,n}function b6(e,t){let r=e.deps,n=e.retryCandidates.get(t);if(n===void 0)return;let i=x(e.autoRetryAttempts.get(t),0)+1|0;e.autoRetryAttempts.set(t,i),r.log("codex.empty_turn_auto_retry",Object.fromEntries([["queued_seq",t],["attempt",i],["max_attempts",nw]])),r.timers.setTimer(()=>{(async()=>{await Qo(e,t,"retrying empty turn");let o=await nj(e,n);if(o.TAG!=="Ok")return r.log("codex.empty_turn_auto_retry_failed",Object.fromEntries([["queued_seq",t],["message",o._0]]))})()},1500)}function v6(e,t,r,n,i,o){let a=e.deps,s=e.turnSeqs.get(t),l=e.active;switch(l!==void 0&&l.turnId===t&&(e.active=void 0),e.processingReason=void 0,e.processingSeq=void 0,_6(e,t),r){case"completed":if(s!==void 0){a.commitAppliedSourceSeq(s),e.autoRetryAttempts.delete(s),e.retryCandidates.delete(s),e.fateLadderRuns.delete(s);return}else return;case"failed":if(s===void 0||o===void 0)return;let u=x(e.autoRetryAttempts.get(s),0)<nw,c=i&&u,f=u&&!a.harness.isClosed(),p={inPlaceResume:c,redispatch:f,workerRebuild:!1},m=k$({fate:o,run:e.fateLadderRuns.get(s),nowMs:Date.now(),budgets:zu(a.env),breaker:(R,W)=>"Proceed",grants:p,rateLimitResetAtMs:void 0});if(m.TAG==="Stand")return;let h;switch(m.TAG){case"Stand":h=["stand",void 0];break;case"ExecuteRung":h=["execute_rung",m.rung];break;case"HoldUntilReset":h=["hold_until_reset",void 0];break;case"BreakerHold":h=["breaker_hold",void 0];break;case"Red":h=["red",void 0];break}let _=h[1],g;if(g=m.TAG==="Stand"?void 0:m.run,g!==void 0){e.fateLadderRuns.set(s,g);let R={};R.turn_id=t,R.queued_seq=s,R.fate=o,R.decision=h[0],_!==void 0&&(R.rung=_),R.recovery_rungs_attempted=g.recoveryRungsAttempted,a.log("codex.fate_ladder_step",R)}if(m.TAG==="ExecuteRung")switch(m.rung){case"in_place_resume":b6(e,s);break;case"redispatch":case"worker_rebuild":break}let b=a.switchProbe;if(m.TAG!=="Red"||b===void 0)return;let y=w$(o,m.cause,{sourceHarness:"codex",targetHarness:b.targetHarness,model:b.model,backendDead:a.harness.isClosed(),exportable:e.activityJournalItemCount>0,targetAdapterAvailable:b.targetAdapterAvailable()});if(y===void 0)return;e.failoverOffers.set(s,y),a.log("codex.fate_ladder_failover_offer",Object.fromEntries([["queued_seq",s],["offer",RS(y)]]));let v={};v.workspace=a.workspaceSlug,v.channel=a.channelSlug,v.thread_id=a.threadId,v.instance_id=a.instanceId,v[Nn]=a.harnessSessionId,v.seq=s,v.status="failed",n!==void 0&&(v.reason=n),v.fate=o,v.ladder=dp(e.fateLadderRuns.get(s),o,zu(a.env),Ze(y));let S=a.actorSlug;S!==void 0&&(v.actor_slug=S);let A=a.actorUserId;A!==void 0&&(v.actor_user_id=A),a.transport.push(a.commanderTopic,"message_state",v,void 0).then(R=>{});return;case"interrupted":return}}async function dw(e){let t="chat:"+e.workspaceSlug+":"+e.channelSlug,r=await e.transport.join(t,SP(e.commanderId,e.threadId,0),{rejoinPayload:void 0,registrationId:void 0});if(r.TAG!=="Ok")return{TAG:"Error",_0:"chat join failed: "+ri(r._0)};let n={};n.workspace=e.workspaceSlug,n.channel=e.channelSlug,n.thread_id=e.threadId,await e.transport.push(e.commanderTopic,"session:thread_context",n,void 0);let i={};i.workspace=e.workspaceSlug,i.channel=e.channelSlug,i.thread_id=e.threadId,i[Nn]=e.harnessSessionId;let o=await e.transport.push(e.commanderTopic,"session:bind",i,void 0);o.TAG!=="Ok"&&e.log("kandan.session_bind_push_failed",Object.fromEntries([["thread_id",e.threadId],["message",ri(o._0)]]));let a={deps:e,turnSeqs:new Map,pipeline:void 0,active:void 0,processingReason:void 0,processingSeq:void 0,typingActive:!1,typingHeartbeatInFlight:!1,typingHeartbeatTimer:void 0,dispatchingTurnStart:!1,pendingStartingPaints:[],autoRetryAttempts:new Map,retryCandidates:new Map,fateLadderRuns:new Map,activityJournalTurns:[],activityJournalItemCount:0,failoverOffers:new Map,switchedTargetSession:void 0},s=e.workspaceSlug+":"+e.channelSlug+":"+e.threadId,l=KM({instanceId:e.instanceId,threadKey:s,persistDir:void 0,push:async(f,p,m,h)=>{let _=await e.transport.push(e.commanderTopic,f,p,h);if(_.TAG==="Ok")return{TAG:"Acked",_0:_._0};let g=_._0;return{TAG:"PushFailed",message:ri(g),budgetExempt:BM(g)}},wire:()=>({workspaceSlug:e.workspaceSlug,channelSlug:e.channelSlug,threadId:e.threadId,harnessSessionId:e.harnessSessionId,rootSeq:e.rootSeq,leaseEpoch:e.leaseEpochFor(e.threadId)}),rowEnvelope:(f,p,m,h)=>{let _={};return _.event_type=f,_[Nn]=p,m!==void 0&&(_.source_message_seq=m),h!==void 0&&(_.metadata=h),_},runtimeMetadataForSourceSeq:void 0,sourceSeqForTurn:f=>a.turnSeqs.get(f),autoRetryAttemptsForSeq:f=>x(a.autoRetryAttempts.get(f),0),midStreamResumeAttemptAtMsForSeq:void 0,ladderHistoryForSeq:(f,p)=>ke(dp(a.fateLadderRuns.get(f),p,zu(e.env),Ze(a.failoverOffers.get(f)))),isRecoveredTurn:void 0,resolveSnapshot:async f=>{let p=await e.harness.request("thread/read",Object.fromEntries([["threadId",e.harnessSessionId],["includeTurns",!0]]));if(p.TAG!=="Ok")return{TAG:"Error",_0:p._0};let m=p._0;if(m.TAG!=="ResultReply")return{TAG:"Error",_0:m.message};let h={};return h.result=m._0,{TAG:"Ok",_0:HM(h,f).map(_=>_)}},onTurnTerminal:(f,p,m,h,_,g)=>v6(a,f,p,m,h,g),log:e.log,linzumiAgentSession:!1,outboxRetryDelaysMs:void 0,outboxMaxInFlightPushes:void 0,snapshotRetryDelaysMs:void 0,journalRecoveryMaxAgeMs:void 0,statsIntervalMs:0,turnStalledThresholdMs:void 0,turnWaitStates:void 0,traceparentForThread:f=>{},sleep:void 0});return a.pipeline=l,{TAG:"Ok",_0:{routeNotification:(f,p)=>{g6(a,f,p);let m=a.active;if(m!==void 0){let h=k(p.turnId,Tr);if(h!==void 0?h===m.turnId:!0){let g=MS(f,p);if(g!==void 0){let b=g;nn(a.processingReason,b)&&Qo(a,m.sourceSeq,b)}}}else{let h=a.dispatchingTurnStart,_=k(p.turnId,Tr),g=MS(f,p);if(h&&_!==void 0&&g!==void 0){let b=g,y=a.pendingStartingPaints.at(-1);y!==void 0&&y.paintTurnId===_&&y.reason===b||a.pendingStartingPaints.push({paintTurnId:_,reason:b})}}l.submitNotification(f,d6(f,p))},runClaimedTurn:async(f,p)=>{let m=e.actorSlug,h=e.actorUserId,_=[],g=Date.now(),b={seq:f,actorSlug:m,actorUserId:h,body:p,attachments:_,receivedAtMs:g,fusedSeqs:void 0,parkReason:void 0};return a.retryCandidates.set(f,b),e.log("kandan.message_queued",Object.fromEntries([["seq",f],["thread_id",e.threadId],[Nn,e.harnessSessionId]])),await Ul(a,f,"queued",void 0),await nj(a,b)},publishRebuilt:async f=>await Qo(a,f,"rebuilt the coding session from durable thread history after an unresumable engine session"),failOnHarnessDeath:f=>{let p=a.active;if(p!==void 0){let m={};m.turnId=p.turnId,m.retryable=!0,m.fate="transient_local",m.error=Object.fromEntries([["message",f]]),l.submitNotification("turn/failed",m)}l.submitLifecycle("codexDied",f)},invokeCrossHarnessSwitch:async(f,p,m,h,_)=>{let g=f!==void 0?a.failoverOffers.has(f)?f:void 0:Ve(a.failoverOffers.keys().toArray(),void 0,(Qe,q)=>q),b=k(g,Qe=>G(a.failoverOffers.get(Qe),q=>[Qe,q]));if(b===void 0)return{TAG:"Error",_0:"no standing failover offer for this thread - the switch is the user's decision on an offered terminal"};let y=b[1],v=b[0],S=a.fateLadderRuns.get(v),A=S!==void 0?S:IS("transient_local",Date.now()),R=y.sourceHarness,W=y.targetHarness,ae={sourceHarness:R,targetHarness:W,model:p},U=x$(A,Date.now(),ae);if(U.TAG!=="Ok")return{TAG:"Error",_0:U._0};let B=U._0;a.fateLadderRuns.set(v,B),e.log("codex.user_cross_harness_switch_invoked",Object.fromEntries([["queued_seq",v],["source_harness",R],["target_harness",W],["model",p]])),await Qo(a,v,T$);let oe=e.harnessSessionId,Z=a.activityJournalTurns,V={harnessSessionId:oe,turns:Z},M=e.cwd,N=e.defaults.approvalPolicy,re={cwd:M,model:p,reasoningEffort:void 0,developerInstructions:void 0,approvalPolicy:N,sandboxPolicy:void 0,environment:{}},se=a.retryCandidates.get(v),Ue={text:se!==void 0?JM(se):"Continue where the previous harness session left off.",attachments:[]},Ge={model:p,reasoningEffort:void 0,input:Ue},ut=await z$(V,e.threadId,m,e.cwd,_,Date.now(),h,re,Ge,Qe=>{switch(e.log("kandan.switch_target_event",Object.fromEntries([["queued_seq",v],["kind",Nm(Qe)]])),Qe.TAG){case"TurnCompleted":Ul(a,v,"processed",void 0);return;case"TurnFailed":Ul(a,v,"failed",Qe.failure.reason);return;default:return}}),ze=zu(e.env),pt=Qe=>dp(Qe,"transient_local",ze,Ze(y));if(ut.TAG==="Ok"){let Qe=ut._0;a.switchedTargetSession=Qe.session;let q={...ae},Ee=$S(B,"switch_dispatched",Date.now(),(q.redactedReasoningCount=Qe.redactedReasoningCount,q.transpiledItemCount=Qe.transpiledItemCount,q),void 0);a.fateLadderRuns.set(v,Ee),e.log("codex.user_cross_harness_switch_dispatched",Object.fromEntries([["queued_seq",v],["source_harness",R],["target_harness",W],["model",p],["target_session_id",Qe.targetSessionId],["transpiled_item_count",Qe.transpiledItemCount],["redacted_reasoning_count",Qe.redactedReasoningCount]])),await Qo(a,v,"continuing this job on the "+y.targetHarness+" harness after a user-invoked switch");let ve={};ve.ok=!0,ve.target_session_id=Qe.targetSessionId,ve.turn_id=Qe.turnId;let _e=Qe.sessionFile;return _e!==void 0&&(ve.session_file=_e),ve.transpiled_item_count=Qe.transpiledItemCount,ve.redacted_reasoning_count=Qe.redactedReasoningCount,ve.ladder=pt(Ee),{TAG:"Ok",_0:ve}}let Xe=ut._0,He=$$(Xe),It=M$(Xe),Cr=$S(B,j$(Xe)?"switch_refused":"switch_failed",Date.now(),ae,He+": "+It);a.fateLadderRuns.set(v,Cr),e.log("codex.user_cross_harness_switch_not_dispatched",Object.fromEntries([["queued_seq",v],["refusal",He],["reason",It]])),await Ul(a,v,"failed","cross-harness switch "+He+": "+It);let Wt={};return Wt.ok=!1,Wt.refusal=He,Wt.reason=It,Wt.ladder=pt(Cr),{TAG:"Ok",_0:Wt}},close:async()=>{rj(a),a.typingActive=!1;let f=a.switchedTargetSession;f!==void 0&&(a.switchedTargetSession=void 0,await f.stopSession());let p=a.pipeline;if(p!==void 0)return await p.close(5e3)}}}}import*as bj from"node:os";import*as vj from"node:path";import*as cw from"node:os";import*as Wl from"node:path";var w6="LINZUMI_CODEX_HOME";function k6(e){let t=G(e[w6],r=>r.trim());return t!==void 0&&t!==""?t:Wl.join(cw.homedir(),".linzumi","codex-home")}function x6(e){let t=G(e.CODEX_HOME,r=>r.trim());return t!==void 0&&t!==""?t:Wl.join(cw.homedir(),".codex")}var T6=["# Managed by Linzumi - do not edit by hand.","# This isolated CODEX_HOME keeps Linzumi-spawned codex processes off the","# user's ~/.codex config and the macOS Keychain. See codexHome.ts."].concat(zv.map(e=>e+' = "'+jv+'"')).concat([""]).join(`
|
|
392
|
+
`);function ij(e){let t=k6(e),r=Lt(t);if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=yo(Wl.join(t,"config.toml"),T6,{encoding:"utf8",flag:"wx"});if(n.TAG==="Ok")return{TAG:"Ok",_0:t};let i=n._0;return si(i,"EEXIST")?{TAG:"Ok",_0:t}:{TAG:"Error",_0:i}}var A6={beforeCommit:()=>Promise.resolve()},uw={contents:0},Cp={contents:0};async function oj(e,t,r){let n=r!==void 0?r:A6,i=x6(t);if(i===e)return"SkippedSelfCopy";uw.contents=uw.contents+1|0;let o=uw.contents,a=Wl.join(i,"auth.json"),s=Wl.join(e,"auth.json"),l=s+".tmp-"+o.toString(),d=Qt(a);if(d.TAG==="Ok"){let c=Lt(e);if(c.TAG!=="Ok")return{TAG:"InstallFailed",stage:"mkdir",code:c._0.code};let f=pn(l);if(f.TAG!=="Ok")return{TAG:"InstallFailed",stage:"clear_tmp",code:f._0.code};let p=yo(l,d._0,{encoding:"utf8",mode:384,flag:"wx"});if(p.TAG!=="Ok")return{TAG:"InstallFailed",stage:"write_tmp",code:p._0.code};if(await n.beforeCommit(),Cp.contents>o)return pn(l),{TAG:"SkippedStale",generation:o,committedGeneration:Cp.contents};let m=li(l,s);return m.TAG==="Ok"?(Cp.contents<o&&(Cp.contents=o),{TAG:"Installed",generation:o}):(pn(l),{TAG:"InstallFailed",stage:"rename",code:m._0.code})}let u=d._0;return si(u,"ENOENT")?"SkippedLoggedOut":{TAG:"InstallFailed",stage:"read_source",code:u.code}}import*as lj from"node:child_process";function C6(e){let t=Object.fromEntries([["command",e.command],["args",e.args.map(n=>n)],["pollIntervalMs",e.pollIntervalMs]]),r=e.protectedPidsDir;return r!==void 0&&r!==""&&(t.protectedPidsDir=r),JSON.stringify(t)}var E6=["const { spawn, spawnSync } = require('node:child_process');","const fs = require('node:fs');","const config = JSON.parse(process.argv[process.argv.length - 1]);","const originalParentPid = process.ppid;","const child = spawn(config.command, config.args, { stdio: 'inherit' });","let done = false;","// Dev-server exemption (keep in sync with devServerReapExemption.ts","// readProtectedPidsFromDir - the freshness bound is textually substituted","// from protectedListenerFreshnessMs at program build): union of every FRESH","// mirror file's pids. Any failure returns an empty set, restoring the","// classic whole-group kill.","function protectedPids() {"," const out = new Set();"," const dir = config.protectedPidsDir;"," if (typeof dir !== 'string' || dir === '') return out;"," let names;"," try { names = fs.readdirSync(dir); } catch (_e) { return out; }"," const now = Date.now();"," for (const name of names) {"," if (!name.endsWith('.json')) continue;"," try {"," const parsed = JSON.parse(fs.readFileSync(dir + '/' + name, 'utf8'));"," if (!parsed || typeof parsed.updatedAtMs !== 'number' || !Array.isArray(parsed.pids)) continue;"," if (now - parsed.updatedAtMs > 300000) continue;"," for (const pid of parsed.pids) {"," if (Number.isInteger(pid) && pid > 1) out.add(pid);"," }"," } catch (_e) {}"," }"," return out;","}","// Group kill that spares protected listener pids: enumerate this group's","// members (the wrapper leads its own group) and signal each one except the","// spared listeners and the wrapper itself (the wrapper exits via its own","// child-exit/parent-death paths). Any enumeration failure, or no protected","// member in the group, falls back to the atomic kill(-pgid).","function groupKillExcept(signal) {"," const spare = protectedPids();"," if (spare.size > 0) {"," try {"," const result = spawnSync('ps', ['-axo', 'pid=,pgid='], { encoding: 'utf8', timeout: 5000, killSignal: 'SIGKILL' });"," if (result.error === undefined && result.status === 0) {"," const members = [];"," let sparedAny = false;"," for (const line of result.stdout.split('\\n')) {"," const match = line.trim().match(/^(\\d+)\\s+(\\d+)$/);"," if (!match || Number(match[2]) !== process.pid) continue;"," const pid = Number(match[1]);"," if (pid === process.pid) continue;"," if (spare.has(pid)) { sparedAny = true; continue; }"," members.push(pid);"," }"," if (sparedAny) {"," for (const pid of members) { try { process.kill(pid, signal); } catch (_e) {} }"," return;"," }"," }"," } catch (_e) {}"," }"," process.kill(-process.pid, signal);","}","function shutdown(signal) {"," if (done) return;"," done = true;"," try { groupKillExcept(signal); }"," catch (_e) { try { child.kill(signal); } catch (_e2) {} }","}","process.on('SIGINT', () => shutdown('SIGINT'));","process.on('SIGTERM', () => shutdown('SIGTERM'));","process.on('SIGHUP', () => shutdown('SIGTERM'));","child.on('exit', (code, signal) => {"," clearInterval(watchdog);"," // The child is gone; the wrapper must follow it down rather than linger as an"," // orphan. On the forwarded-signal path (shutdown() above caught SIGINT/SIGTERM"," // /SIGHUP and propagated it to the child), the wrapper still has its own"," // handler installed for that signal, so a bare process.kill(self, signal)"," // would just re-enter shutdown() - a no-op once done is set - and the wrapper"," // would never exit. Remove the handlers first so the signal's DEFAULT"," // disposition (terminate) applies, re-raise to mirror the child's death"," // signal, then exit() as a belt-and-suspenders fallback in case re-raising"," // does not terminate (e.g. a signal with no default-terminate disposition)."," process.removeAllListeners('SIGINT');"," process.removeAllListeners('SIGTERM');"," process.removeAllListeners('SIGHUP');"," if (signal) { try { process.kill(process.pid, signal); } catch (_e) {} }"," process.exit(signal ? 1 : code == null ? 0 : code);","});","child.on('error', (err) => {"," process.stderr.write('engine watchdog spawn failed: ' + (err && err.message) + '\\n');"," process.exit(1);","});","const watchdog = setInterval(() => {"," // Inlined parentDeathWatchdogShouldReap (keep in sync): reap PURELY on a ppid"," // change from boot - covers reparent-to-subreaper AND reparent-to-init. NO"," // `=== 1` arm: a runner that is PID 1 captures originalParentPid === 1, so"," // such an arm would false-fire on the first poll and kill a healthy codex."," if (process.ppid !== originalParentPid) {"," try { child.kill('SIGKILL'); } catch (_e) {}"," try { groupKillExcept('SIGKILL'); } catch (_e) {}"," process.exit(0);"," }","}, config.pollIntervalMs);"];function aj(e,t){return{command:e,args:["-e",E6.join(`
|
|
393
|
+
`),C6(t)]}}async function R6(e){let t=await pa(e,{});if(t.TAG!=="Ok")return!1;let r=t._0.status;return r>=200?r<=299:!1}function dj(e,t){return{audit:e,env:t,protectedPids:()=>new Set,fetchOk:R6,now:()=>Date.now(),readyzTimeoutMs:1e4,readyzPollMs:50}}function I6(e){return e}function fw(e,t,r,n,i,o){e.audit(t,Object.fromEntries([["command",r],["args",n.map(I6)],["cwd",i]].concat(o.concat([["purpose","codex.app_server"]]))))}function sj(e,t){let r=t.pid;if(r==null){Tl(t,"SIGINT");return}let n=Um(r,"SIGINT",Vi,void 0,e.protectedPids());n.sparedPids.length!==0&&e.audit("process.group_signal_spared_listeners",Object.fromEntries([["pid",r],["signal","SIGINT"],["sparedPids",n.sparedPids.map(d=>d)],["purpose","codex.app_server"]]));let i=n.groupSignalError;if(i===void 0)return;let o=i.code,a;if(o!==void 0)switch(o){case"EPERM":a="process.group_signal_denied";break;case"ESRCH":a="process.group_signal_missing";break;default:a="process.group_signal_failed"}else a="process.group_signal_failed";let s=i.code;e.audit(a,Object.fromEntries([["pid",r],["signal","SIGINT"],["code",s!==void 0?s:null],["message",i.message],["fallback","child_signal"],["purpose","codex.app_server"]])),i.code==="EPERM"&&mr("codex app-server process-group SIGINT denied for pid "+r.toString()+`; falling back to direct child SIGINT
|
|
394
|
+
`),Tl(t,"SIGINT")}function $6(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}async function M6(e,t,r){let n=jP(t),i=n!==void 0?n:t,o=e.now()+e.readyzTimeoutMs,a;for(;mn(a);){let s=r();s!==void 0?a={TAG:"Error",_0:"codex app-server exited before readyz: "+s}:await e.fetchOk(i)?a={TAG:"Ok",_0:void 0}:e.now()>o?a={TAG:"Error",_0:"timed out waiting for codex app-server readyz"}:await $6(e.readyzPollMs)}return x(a,{TAG:"Error",_0:"timed out waiting for codex app-server readyz"})}async function uj(e,t,r,n,i,o,a){let s=await _R();if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0};let l="ws://127.0.0.1:"+s._0.toString(),d=PP(l,n),u={contents:""},c=aj(process.execPath,{command:t,args:d,pollIntervalMs:FP,protectedPidsDir:uR()});fw(e,"process.spawn",t,d,r,[]);let f=lj.spawn(c.command,c.args,{cwd:r,env:RP(e.env,i,o),stdio:IP,detached:!0}),p={contents:void 0},m=[],h=(S,A,R)=>{if(S!=null){S.on("data",W=>{let L=W.toString("utf8");R!==void 0&&R(L);let ae=f.pid;e.audit("process.output",Object.fromEntries([["pid",ae??null],["purpose","codex.app_server"],["stream",A],["chars",L.length],["output",L]]))});return}};h(f.stdout,"stdout",void 0),h(f.stderr,"stderr",S=>{u.contents=$P(u.contents+S)});let _=Wm({stop:()=>sj(e,f),pid:Dt(f.pid),ownProcessGroup:!0,kind:"codex.app_server"});f.once("exit",(S,A)=>{let R=S==null?A??"unknown":S.toString();p.contents=R,_.unregister();let W=f.pid;fw(e,"process.exit",t,d,r,[["pid",W??null],["code",S??null],["signal",A??null]]);let L=m.slice();m.splice(0,m.length),L.forEach(ae=>ae())}),f.on("error",S=>{p.contents=S.message,_.unregister()});let g=f.pid;fw(e,"process.spawned",t,d,r,[["pid",g??null]]);let b=()=>{_.unregister(),sj(e,f)},y=await M6(e,l,()=>p.contents);if(y.TAG==="Ok")return{TAG:"Ok",_0:{url:l,pid:Dt(f.pid),stop:b,onExit:S=>{if(p.contents!==void 0)return S();m.push(S)}}};let v=y._0;return b(),MP(v,u.contents,a)?(e.audit("process.spawn.retry",Object.fromEntries([["command",t],["cwd",r],["attempt",a],["reason","loopback_bind_in_use"],["purpose","codex.app_server"]])),await uj(e,t,r,n,i,o,a+1|0)):{TAG:"Error",_0:v}}function cj(e,t,r,n,i,o){return uj(e,t,r,n,i!==void 0?i:[],o!==void 0?o:!0,1)}import*as Ep from"node:http";import*as mj from"node:https";import*as pj from"node:crypto";var fj="x-linzumi-llm-proxy-token",z6="x-linzumi-debug-trace-id",N6=["host","connection","keep-alive","proxy-authenticate","proxy-authorization","te","trailer","transfer-encoding","upgrade","content-length"],G6=["connection","keep-alive","transfer-encoding","trailer","upgrade","content-length"];function F6(e){let t=e.length;for(;t>0&&e.slice(t-1|0,t)==="/";)t=t-1|0;return e.slice(0,t)}var D6='{"error":"not_found"}';function q6(e,t,r,n,i){let o=x(Dt(n.url),"");if(o===t||o.startsWith(t+"/")){let a=o===t?"/":o.slice(t.length,o.length),s=e+a,l={};Object.entries(n.headers).forEach(f=>{let p=f[1],m=f[0].toLowerCase();if(!(N6.includes(m)||m===fj||m===z6)){if(Array.isArray(p)){l[m]=$e(p,_=>{if(typeof _=="string")return _}).join(", ");return}if(typeof p==="string"){l[m]=p;return}else return}}),l[fj]=r;let d=x(Dt(n.method),"GET").toUpperCase(),u={method:d,headers:l},c=s.startsWith("https:")?mj.request(s,u):Ep.request(s,u);c.on("response",f=>{let p={};Object.entries(f.headers).forEach(m=>{let h=m[0];if(!G6.includes(h.toLowerCase())){p[h]=m[1];return}}),i.writeHead(x(Dt(f.statusCode),502),p),f.on("error",m=>{i.destroy()}),i.once("close",()=>{if(!i.writableEnded){f.destroy();return}}),f.pipe(i)}),c.on("error",f=>{let p=x(Dt(f.message),"upstream request error");i.headersSent?i.destroy():(i.writeHead(502,Object.fromEntries([["content-type","application/json"]])),i.end(JSON.stringify(Object.fromEntries([["error","llm_proxy_relay_upstream_error"],["message",p]]))))}),d==="GET"||d==="HEAD"?c.end():n.pipe(c);return}i.writeHead(404,Object.fromEntries([["content-type","application/json"]])),i.end(D6)}function hj(e,t){return new Promise((r,n)=>{let i=F6(e),o="/llm-proxy-session/"+pj.randomBytes(16).toString("hex"),a=Ep.createServer((d,u)=>{try{return q6(i,o,t,d,u)}catch{u.headersSent?u.destroy():(u.writeHead(502,{}),u.end(""));return}}),s=[];a.on("connection",d=>{s.push(d),d.once("close",()=>{let u=s.indexOf(d);if(u!==-1){s.splice(u,1);return}})});let l={contents:!1};a.once("error",d=>{if(!l.contents)return l.contents=!0,r({TAG:"Error",_0:x(Dt(d.message),"llm proxy credential relay failed to bind a loopback port")})}),a.listen(0,"127.0.0.1",()=>{let d=a.address();return d==null?l.contents?void 0:(l.contents=!0,a.close(()=>{}),r({TAG:"Error",_0:"llm proxy credential relay failed to bind a loopback port"})):l.contents?void 0:(l.contents=!0,r({TAG:"Ok",_0:{baseUrl:"http://127.0.0.1:"+d.port.toString()+o,close:()=>{a.close(()=>{}),s.forEach(u=>{u.destroy()})}}}))})})}function mw(e,t){let r=e[t];if(typeof r=="string")return r}function Pp(e){let t=G(e,r=>r.trim());if(t!==void 0&&t!=="")return t}function Zl(e){let t=Pp(mw(e,"modelProvider")),r=k(e.llmProxy,ke),n=k(r,a=>Pp(mw(a,"baseUrl"))),i=k(r,a=>Pp(mw(a,"token"))),o=n!==void 0&&i!==void 0?[n,i]:void 0;return t!==void 0?t!=="wafer"?{TAG:"ProviderError",_0:"model_provider_unsupported:"+t}:o!==void 0?{TAG:"Provider",_0:{provider:"wafer",llmProxyBaseUrl:o[0],llmProxyToken:o[1]}}:{TAG:"ProviderError",_0:"wafer_model_provider_missing_llm_proxy"}:o!==void 0?{TAG:"Provider",_0:{provider:"openai-proxy",llmProxyBaseUrl:o[0],llmProxyToken:o[1]}}:"NoProvider"}function U6(e){let t=e.length;for(;t>0&&e.slice(t-1|0,t)==="/";)t=t-1|0;return e.slice(0,t)}function _j(e){let t=U6(e.llmProxyBaseUrl)+"/v1";return e.provider==="openai-proxy"?{id:"linzumi",name:"Linzumi Proxy",baseUrl:t,envKey:"OPENAI_API_KEY",wireApi:"responses",httpHeaders:void 0,envHttpHeaders:Object.fromEntries([["x-linzumi-llm-proxy-token","LINZUMI_LLM_PROXY_TOKEN"]])}:{id:"linzumi",name:"Linzumi Proxy",baseUrl:t,envKey:"LINZUMI_LLM_PROXY_TOKEN",wireApi:"responses",httpHeaders:void 0,envHttpHeaders:void 0}}function gj(e,t){if(e.provider!=="openai-proxy")return{TAG:"Ok",_0:[["LINZUMI_LLM_PROXY_TOKEN",e.llmProxyToken]]};let n=Pp(t.OPENAI_API_KEY);return n!==void 0?{TAG:"Ok",_0:[["LINZUMI_LLM_PROXY_TOKEN",e.llmProxyToken],["OPENAI_API_KEY",n]]}:{TAG:"Error",_0:"codex llm proxy requires API-key auth (OPENAI_API_KEY in the environment or $CODEX_HOME/auth.json); ChatGPT OAuth credentials cannot be forwarded"}}function W6(e){if(process.send==null)return{TAG:"Error",_0:"no IPC channel"};try{return process.send(e),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n).message}}}function Sj(e,t){mr(JSON.stringify(Object.fromEntries([["worker_event",e],["payload",t]]))+`
|
|
395
|
+
`)}function Z6(e){let t=k(e.LINZUMI_DEV_SERVICES_PARENT_PID,r=>ga(r.trim(),void 0));return t!==void 0&&t>0?t:process.ppid}function V6(e){return rc(k(e.split(":").at(-1),jn),t=>isFinite(t)&&t>=1?t<=65535:!1)}async function pw(e,t,r){let n=dj(t,e),i=ij(e);if(i.TAG!=="Ok")return{TAG:"Error",_0:i._0.message};let o=i._0;r.provider!==void 0||await oj(o,e,void 0);let s=Gc(r.serviceUrl,r.token,r.agentMcpToken,new Date);if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0.summary};let l=s._0,d=Vc(process.execPath,process.argv[1],process.execArgv),u=wu(r.token),c=Zs({command:d.command,argsPrefix:d.argsPrefix,serviceUrl:r.serviceUrl,authFilePath:l.path,ownerUsername:u.actorUsername,operatingMode:"Text",cwd:r.cwd,threadId:r.threadId,agentSession:qt(r.agentMcpToken),devServices:{scope:r.devServicesScope,ownerPid:r.devServicesOwnerPid}}),f=r.provider,p=f!==void 0?gj(f,e):{TAG:"Ok",_0:[]};if(p.TAG==="Ok"){let m=r.provider,h;if(m!==void 0){let v=await hj(m.llmProxyBaseUrl,m.llmProxyToken);v.TAG==="Ok"?h=v._0:(Sj("llm_proxy_relay.worker_start_failed_fallback_to_env_token",Object.fromEntries([["message",v._0]])),h=void 0)}else h=void 0;let _=r.provider,g=_!==void 0&&h!==void 0?{provider:_.provider,llmProxyBaseUrl:h.baseUrl,llmProxyToken:_.llmProxyToken}:_,b=()=>{if(h!==void 0)return h.close()},y=await cj(n,r.codexBin,r.cwd,{model:r.model,reasoningEffort:r.reasoningEffort,fast:r.fast,mcpConfigArgs:[ux(c)],modelProvider:G(g,_j)},[["CODEX_HOME",o]].concat(p._0),void 0);if(y.TAG==="Ok"){let v=y._0;return v.onExit(()=>{b(),l.cleanup()}),{TAG:"Ok",_0:v}}return b(),l.cleanup(),{TAG:"Error",_0:y._0}}return l.cleanup(),{TAG:"Error",_0:p._0}}async function wj(e){let t=process.env,r=bj.homedir(),l=jI(e,{env:t,processCwd:()=>process.cwd(),home:r,resolveBaseCwd:d=>d!==void 0?vj.resolve(d):process.cwd(),fallbackCodexBin:()=>$m(void 0,Rm(),d=>{mr(d)},Im,t,void 0),warnStaleRoot:d=>{mr(MI(d))}});if(l.TAG==="Ok"){let d=l._0,u=d.options,c=Sj,f={contents:void 0},p={contents:void 0},m={contents:!1},h=()=>{if(m.contents)return;m.contents=!0;let U=p.contents;U!==void 0&&U.close();let B=f.contents;if(B!==void 0)return B.stop()},_=async()=>{let U=await pw(t,c,{codexBin:u.codexBin,cwd:u.cwd,serviceUrl:u.kandanUrl,token:u.token,agentMcpToken:u.linzumiAgentMcpToken,devServicesScope:d.runnerId,devServicesOwnerPid:Z6(t),threadId:u.kandanThreadId,model:k(u.runtimeDefaults,B=>B.model),reasoningEffort:k(u.runtimeDefaults,B=>B.reasoningEffort),fast:u.fast,provider:u.codexModelProvider});return U.TAG!=="Ok"?{TAG:"Error",_0:U._0}:(f.contents=U._0,{TAG:"Ok",_0:void 0})},g=async()=>{let U=f.contents;if(U===void 0)return{TAG:"Error",_0:"codex app-server was not started"};let B=await qm(U.url,void 0,void 0,void 0);if(B.TAG!=="Ok")return{TAG:"Error",_0:"codex app-server connect failed: "+B._0};let oe=await Lm(B._0,{audit:c,onWire:(V,M)=>{},keepaliveIntervalMs:3e4});if(oe.TAG!=="Ok")return{TAG:"Error",_0:"codex app-server handshake failed: "+oe._0};let Z=oe._0;return p.contents=Z,{TAG:"Ok",_0:$R(Z)}},y=process.send!=null?{send:W6,isConnected:()=>nn(Dt(process.connected),!1),onMessage:U=>{process.on("message",U)},onceDisconnect:U=>{process.once("disconnect",U)}}:void 0,L={preflightFailure:()=>CR(u.cwd,u.allowedCwds,OR(u.cwd,u.allowedCwds,U=>!1)),startAppServer:_,connectClient:g,onSessionClosed:U=>{let B=p.contents;if(B!==void 0)return B.onClose(U)},ipc:y,commanderManagedPorts:()=>{let U=f.contents;if(U===void 0)return[];let B=V6(U.url);return B!==void 0?[{port:B,pid:G(U.pid,oe=>oe),processName:"Codex app-server",processIconKey:"codex",agentProvider:"codex"}]:[]},log:c,writeStderr:U=>{mr(U)},waitForStop:()=>new Promise((U,B)=>{let oe={contents:!1},Z=()=>{if(!oe.contents)return oe.contents=!0,U()};process.once("disconnect",Z),process.once("SIGTERM",Z),process.once("SIGINT",Z);let V=f.contents;if(V!==void 0)return V.onExit(Z)}),stop:h},ae=await zI(u.kandanThreadId,L);return ae.TAG==="Ok"?typeof ae._0!="object"?0:1:(mr(ae._0+`
|
|
396
396
|
`),h(),1)}return mr(l._0+`
|
|
397
|
-
`),1}var
|
|
397
|
+
`),1}var H6=`<linzumi_markdown_media_guidance>
|
|
398
398
|
Some Linzumi users have opted into rich Markdown media rendering. When you are
|
|
399
399
|
writing a visible Linzumi message, channel message, or thread reply, you may use
|
|
400
400
|
these Markdown-compatible media directives:
|
|
@@ -497,7 +497,7 @@ Why bad: External image hosts are intentionally not auto-rendered; attach the im
|
|
|
497
497
|
Use media directives only after upload/attach returns a Linzumi download URL.
|
|
498
498
|
Keep "src" required, all other fields optional, and never exceed 10 embeds in one message.
|
|
499
499
|
</media_reminder>
|
|
500
|
-
</linzumi_markdown_media_guidance>`,
|
|
500
|
+
</linzumi_markdown_media_guidance>`,B6=`
|
|
501
501
|
<linzumi_markdown_media_guidance>
|
|
502
502
|
Linzumi messages can embed rich media (::audio / ::video / ::image directives
|
|
503
503
|
and Markdown images) - but ONLY with a Linzumi attachment download URL
|
|
@@ -505,7 +505,7 @@ returned by upload/attach, never external or local paths. BEFORE writing any
|
|
|
505
505
|
media directive, call the linzumi_media_guide tool once and follow the full
|
|
506
506
|
contract it returns.
|
|
507
507
|
</linzumi_markdown_media_guidance>
|
|
508
|
-
`;function Rp(e,t){let r=e[t];if(r!==void 0&&typeof r=="string"&&r.trim()!=="")return r.trim()}function
|
|
508
|
+
`;function Rp(e,t){let r=e[t];if(r!==void 0&&typeof r=="string"&&r.trim()!=="")return r.trim()}function K6(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&Ot(r))return r.toString()}function xj(e,t){if(e===void 0)return;let r=ke(e);if(r!==void 0){let n=Rp(r,"threadId"),i=Rp(r,"creatorUserId"),o=i!==void 0?i:K6(r,"creatorUserId"),a=Rp(r,"creatorUsername"),s=Rp(r,"conversationUrl");if(n!==void 0&&o!==void 0&&a!==void 0&&s!==void 0)return{threadId:n,creatorUserId:o,creatorUsername:a,conversationUrl:s};t("Ignoring invalid linzumiContext: linzumiContext must include threadId, creatorUserId, creatorUsername, and conversationUrl");return}t("Ignoring invalid linzumiContext: linzumiContext must be an object")}function Ip(e){return e.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">")}function J6(e){return`<linzumi_context>
|
|
509
509
|
<linzumi_thread_id>`+Ip(e.threadId)+`</linzumi_thread_id>
|
|
510
510
|
<linzumi_creator_user_id>`+Ip(e.creatorUserId)+`</linzumi_creator_user_id>
|
|
511
511
|
<linzumi_creator_username>`+Ip(e.creatorUsername)+`</linzumi_creator_username>
|
|
@@ -514,7 +514,7 @@ contract it returns.
|
|
|
514
514
|
|
|
515
515
|
<linzumi_pr_footer_instruction>
|
|
516
516
|
For any GitHub pull request you open from this session, include this Markdown footer link in the PR description: [Continue this on Linzumi](`+e.conversationUrl+`)
|
|
517
|
-
</linzumi_pr_footer_instruction>`}function
|
|
517
|
+
</linzumi_pr_footer_instruction>`}function Tj(e){let t=x(e.agentLabel,"Codex"),r=e.mcpAvailable,n=`For any job with several distinct steps - or where the
|
|
518
518
|
user benefits from watching progress - record the goal and a short plan with
|
|
519
519
|
linzumi_upsert_coding_job_plan BEFORE starting work, and keep it accurate as
|
|
520
520
|
you go: whenever you discover steps to add, steps that are no longer needed,
|
|
@@ -548,7 +548,7 @@ Recent work in this project:
|
|
|
548
548
|
`+p+`
|
|
549
549
|
</project_memory>
|
|
550
550
|
`:"",h=e.linzumiContext,_=h!==void 0?`
|
|
551
|
-
`+
|
|
551
|
+
`+J6(h)+`
|
|
552
552
|
`:"",g=e.devServicesAvailable?`
|
|
553
553
|
Managed dev services: to run a long-lived local dev server (npm run dev, vite,
|
|
554
554
|
storybook, docker compose up, a database), ALWAYS use linzumi_dev_service_start
|
|
@@ -670,7 +670,7 @@ user's decision; the agent only offers and acts on a clear yes.`:"",ae=y?`
|
|
|
670
670
|
Land accepted plans in the project task DAG, update existing tasks in place,
|
|
671
671
|
and never delete tasks you are not very confident are obsolete. After a
|
|
672
672
|
transfer, offer to start the ready tasks; launch them only on the user's
|
|
673
|
-
clear yes.`:"",U=r?
|
|
673
|
+
clear yes.`:"",U=r?B6:H6,B=r?`Use the Linzumi MCP server named "linzumi" when you need authenticated
|
|
674
674
|
workspace context or coding-job metadata tools.
|
|
675
675
|
`+o+`
|
|
676
676
|
When the coding-job scope changes materially, call linzumi_rename_coding_job
|
|
@@ -872,17 +872,17 @@ call an MCP message-posting tool to deliver that reply. When the task requires
|
|
|
872
872
|
files, code, commits, pull requests, previews, or verification output, report
|
|
873
873
|
the concrete artifact, command, result, and any exact blocker. Do not emit
|
|
874
874
|
machine-only JSON unless the user or tool explicitly requests it.
|
|
875
|
-
</output_format>`}var hw="rescript";function H6(){return new Promise((e,t)=>{setTimeout(()=>e(),0)})}function Gn(e){return e!==void 0?e:null}function $p(e,t){return k(e[t],ke)}function jr(e,t){let r=e[t];if(typeof r=="string")return r}function Vl(e,t){let r=e[t];if(typeof r=="number")return r}function Le(e,t){let r=G(jr(e,t),n=>n.trim());if(r!==void 0&&r!=="")return r}function Tj(e){let t=Dn(e);return t.TAG==="Ok"?t._0:e}function Aj(e,t){let r=G(e,o=>o.trim());if(r===void 0)return{TAG:"RefusedCwd",reason:"missing_cwd"};if(r==="")return{TAG:"RefusedCwd",reason:"missing_cwd"};let n=Tj(r),i=t.find(o=>{let a=Tj(o);return n===a?!0:n.startsWith(a+jp.sep)});return i!==void 0?{TAG:"AllowedCwd",cwd:n,matchedRoot:i}:{TAG:"RefusedCwd",reason:"cwd_not_allowed"}}function yw(e){let t=e.agentProvider;if(t===void 0||typeof t!="string")return"CodexProvider";let r=t.trim();switch(r){case"claude-code":return"ClaudeCodeProvider";case"":case"codex":return"CodexProvider";default:return{TAG:"UnsupportedProvider",_0:r}}}function Oj(e){return typeof e!="object"&&e!=="CodexProvider"?"claude-code":"codex"}function B6(e){return typeof e!="object"&&e!=="CodexProvider"?"Claude Code":"Codex"}function Cj(e){return typeof e!="object"&&e!=="CodexProvider"?"Claude Code is not available on this computer. Reconnect a local runner with Claude Code auth and try again.":"Codex is not available on this computer. Reconnect a local runner with Codex support and try again."}function K6(e,t){let r=ER(t,240);switch(e){case"StartingCodexSession":return"Codex did not create a session. Restart the local runner and try again. Detail: "+r;case"StartingClaudeCodeSession":return"Claude Code did not create a session. Restart the local runner and try again. Detail: "+r;case"BindingThread":return"Codex started, but Linzumi could not attach it to this thread. Try starting the agent again; if it repeats, share this failed message with the runner owner. Detail: "+r;case"StartingFirstTurn":return"Codex started, but the first prompt could not be delivered. Try sending the message again; if it repeats, reconnect the local runner. Detail: "+r}}var J6="start_instance first turn requires a session-owned dispatch (bound Kandan thread session + sourceSeq); the sessionless degraded turn/start fallback was removed (type-2 fallback audit)";function bw(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&Ot(r))return r}function ea(e){let t=bw(e,"sourceSeq");return t!==void 0?t:bw(e,"rootSeq")}function _w(e,t,r,n,i,o){let a=ea(e);if(a===void 0)return{TAG:"Ok",_0:void 0};let s=l=>{let d=e[l];return d!==void 0&&typeof d=="string"&&d.trim()!==""?{TAG:"Ok",_0:d.trim()}:{TAG:"Error",_0:t+" control missing "+l}};return he(s("workspace"),l=>he(s("channel"),d=>wt(s("threadId"),u=>{let c={};c.workspace=l,c.channel=d,c.thread_id=u,c.instance_id=i,c.seq=a,c.status=r,c.reason=n,o!==void 0&&(c[Nn]=o);let f=yw(e);return typeof f!="object"&&f!=="CodexProvider"&&(c.agent_provider="claude-code"),c})))}function Mp(e,t,r,n,i){let o=(l,d)=>{let u=e[l];return typeof u=="string"?u:d},a=o("sandbox",r),s=de(e.sandboxedApprovalNeverDefault,!0);return wt(Kv(o("approvalPolicy",t),a,{sandboxedNeverDefault:s}),l=>({settingsModel:o("model",n),settingsReasoningEffort:o("reasoningEffort",i),settingsApprovalPolicy:l,settingsSandbox:a,settingsSandboxedNeverDefault:s,settingsFast:de(e.fast,!0)}))}function Y6(e){let t=[],r=e.settingsModel;r!==void 0&&t.push(["model",r]);let n=e.settingsReasoningEffort;n!==void 0&&t.push(["reasoningEffort",n]);let i=e.settingsApprovalPolicy;if(i!==void 0){let a=Vm(i,e.settingsSandbox,{sandboxedNeverDefault:e.settingsSandboxedNeverDefault});a.TAG==="Ok"&&t.push(["approvalPolicy",a._0])}let o=e.settingsSandbox;return o!==void 0&&t.push(["sandbox",o]),e.settingsFast&&t.push(["serviceTier","fast"]),t}function X6(e){return jp.join(e,".linzumi","commanderImplFallback.json")}function Ej(e){let t=ta.homedir(),r=RI(fS(t),e),n;return n=r.TAG==="Ok",n&&e==="Ts"&&pn(X6(t)),n}function Q6(e){let t=G(e.LINZUMI_CODEX_START_REQUEST_TIMEOUT_MS,n=>n.trim());if(t===void 0)return 12e4;let r=jn(t);return r!==void 0&&r>0?r:12e4}async function Pj(e,t){let r=process.env,n=bP(e.commanderId),i="codex-"+gw.randomUUID(),o=wu(e.token),a=Q6(r),s={contents:!1},l=Hm(LR(e.commanderId,r),t,void 0,void 0),d=Hm(UR(e.commanderId,r),t,!0,void 0),u=KR(Hm(WR(e.commanderId,r),t,void 0,!0)),c=BR(l,d,t,e.commanderId,e.serviceUrl),f={contents:e.allowedCwds},p=[],m={contents:(S,A)=>{p.push([S,A])}},h=e.harnessBin;h!==void 0&&await zR(h,e.cwd);let _=await u$(e.serviceUrl,{TAG:"Token",_0:e.token},void 0,{controlCursorStore:a$(l),controlEpochStore:s$(c),onOperatorNotice:S=>{},auditEvent:(S,A)=>t(S,A)});if(_.TAG!=="Ok")return{TAG:"Error",_0:ri(_._0)};let g=_._0;g.onControl((S,A)=>m.contents(S,A));let b=()=>{let S={};return S.codexAppServer=!0,S.commander_pipeline="pipeline",S.startInstance=f.contents.length!==0,S.allowedCwds=f.contents.map(A=>A),S},y=()=>vP({clientId:e.commanderId,machineFingerprint:void 0,machineFingerprintV2:void 0,runnerPid:process.pid,version:ku(),hostname:ta.hostname(),cwd:e.cwd,workspace:e.workspaceSlug,channel:void 0,capabilities:b(),generationOverlapEpoch:void 0}),v=await g.join(n,y(),{rejoinPayload:y,registrationId:void 0});if(v.TAG==="Ok"){let S=x(ke(v._0),{}),A=$p(S,"runner_config");if(A!==void 0){let V=A.allowedCwds;Array.isArray(V)&&(f.contents=Rc(V),t("runner.config_updated",Object.fromEntries([["source","join"],["configVersion",x(A.configVersion,null)],["allowedCwdCount",f.contents.length]])));let M=jr(A,"commander_impl");if(M!==void 0){let j=M.trim()==="rescript"?"Rescript":"Ts",re=fS(ta.homedir()),se=PI(re);if(!de(se,j)){let Ae=Ej(j);t("runner.commander_impl_assigned",Object.fromEntries([["impl",El(j)],["previousCache",Gn(G(se,El))],["persisted",Ae],["runningImpl",hw]]))}}}let R=$p(S,"compute_node");if(R!==void 0){let V=Vl(R,"reset_generation");t("runner.compute_node",Object.fromEntries([["id",Gn(jr(R,"id"))],["name",Gn(jr(R,"name"))],["identityQuality",Gn(jr(R,"identity_quality"))],["resetGeneration",V!==void 0?V:null]]))}let W=$p(S,"roster");if(W!==void 0){let V=$e(x(k(W.threads,Qi),[]),ke),M=Op(Yu("thread_id"));t("kandan.roster_seeded",Object.fromEntries([["source","join"],["thread_count",V.length],["truncated",x(W.truncated,!1)],["skipped_entries",0],["threads",V.map(N=>{let j={};return j[Yu("thread_id")]=x(N[M],null),j.provider_session_key=x(N.provider_session_key,null),j.channel_id=x(N.channel_id,null),j.title=x(N.title,null),j.channel_slug=x(N.channel_slug,null),j.cwd=x(N.cwd,null),j})]]))}let L=XR();JR(S.resume_reconcile).forEach(V=>{let M=V.leaseEpoch;if(M!==void 0&&L.adopt(V.threadId,M))return t("runner.resume_reconcile_lease_adopted",Object.fromEntries([[Op(Yu("thread_id")),V.threadId],["leaseEpoch",M]]))});let U=globalThis.__linzumiCommanderChooserMarkJoined;if(U!==void 0){let V;try{V=Yt(U())}catch{V=void 0}V!==void 0&&t("commander.chooser.fallback_reported",x(ke(V),{}))}let B=async V=>{let M=await qm(V,void 0,void 0,void 0);if(M.TAG!=="Ok")return{TAG:"Error",_0:"codex app-server connect failed: "+M._0};let N=await Lm(M._0,{audit:(j,re)=>t(j,re),onWire:(j,re)=>{},keepaliveIntervalMs:3e4});return N.TAG==="Ok"?{TAG:"Ok",_0:N._0}:{TAG:"Error",_0:"codex app-server handshake failed: "+N._0}},oe=e.harnessUrl,Z;if(oe!==void 0){let V=await B(oe);Z=V.TAG==="Ok"?{TAG:"Ok",_0:[V._0,oe,void 0]}:{TAG:"Error",_0:V._0}}else{let V=e.harnessBin;if(V!==void 0){let M=await pw(r,(N,j)=>t(N,j),{codexBin:V,cwd:e.cwd,serviceUrl:e.serviceUrl,token:e.token,agentMcpToken:void 0,devServicesScope:e.commanderId,devServicesOwnerPid:process.pid,threadId:void 0,model:void 0,reasoningEffort:void 0,fast:!1,provider:void 0});if(M.TAG==="Ok"){let N=M._0,j=await B(N.url);j.TAG==="Ok"?Z={TAG:"Ok",_0:[j._0,N.url,N]}:(N.stop(),Z={TAG:"Error",_0:j._0})}else Z={TAG:"Error",_0:M._0}}else Z={TAG:"Error",_0:"the differential commander requires codexUrl (no spawned harness binary)"}}if(Z.TAG==="Ok"){let V=Z._0,M=V[2],N=V[1],j=V[0],re=new Map,se={contents:0},Ae={contents:0},Ue=O=>(Ae.contents=Ae.contents+1|0,zn(O.then(()=>{Ae.contents=Ae.contents-1|0}),X=>(Ae.contents=Ae.contents-1|0,Promise.resolve()))),Ge=(O,X)=>Ue((async()=>{let J=await g.push(n,O,X,void 0);if(J.TAG!=="Ok")return t("kandan.event_push_failed",Object.fromEntries([["event",O],["message",ri(J._0)]]))})()),ut=async O=>{if(de(e.approvalPolicy,"never")&&de(e.sandbox,"danger-full-access")&&(O.method==="item/commandExecution/requestApproval"||O.method==="item/fileChange/requestApproval"))return t("codex.server_request_auto_accepted",Object.fromEntries([["method",O.method],["turn_id",Gn(k(k(O.params,ke),J=>jr(J,"turnId")))]])),Object.fromEntries([["decision","accept"]])};j!==void 0&&(j.onNotification(O=>{se.contents=se.contents+1;let X=x(k(O.params,ke),{}),J={};J.instanceId=i,J.seq=se.contents,J.method=O.method,J.params=X,J.receivedAt=new Date().toISOString(),Ge("codex_notification",J),t("codex.notification",Object.fromEntries([["method",O.method]])),re.values().toArray().forEach(K=>K.routeNotification(O.method,X))}),j.onRequest(ut),j.onClose(O=>{if(!s.contents){t("codex.app_server_connection_lost",Object.fromEntries([["cause",O]])),re.values().toArray().forEach(X=>X.failOnHarnessDeath(O));return}}));let ze=()=>{let O={};return O.instanceId=i,O.clientId=e.commanderId,N!==void 0&&(O.codexUrl=N),O.cwd=e.cwd,O.hostname=ta.hostname(),O.workspace=e.workspaceSlug,O.channel=null,O},pt=ze();pt.codexThreads=[],pt.tuiLaunched=!1,await Ge("instance_started",pt),t("runner.instance_started",Object.fromEntries([["runnerId",e.commanderId],["hostname",ta.hostname()],["workspace",e.workspaceSlug],["version",ku()],["instanceId",i],["codexUrl",Gn(N)]])),await Ge("heartbeat",ze());let Xe=setInterval(()=>{Ge("heartbeat",ze())},15e3);Xe.unref(),g.onReconnect(async O=>await Ge("heartbeat",ze()));let He={contents:void 0},It=(async()=>{try{let O=await AP();He.contents=EI({sdk:O,audit:(X,J)=>t(X,J),env:r});return}catch{return t("kandan.cross_harness_switch_target_unavailable",Object.fromEntries([["target_harness","claude-code"],["reason","claude-agent-sdk module not resolvable"]]))}})(),Qe={targetHarness:"claude-code",model:void 0,targetAdapterAvailable:()=>Dt(He.contents)},q=async O=>await Ge("codex_response",O),Ee=async O=>{let X={};return X.instanceId=i,X.message=O,await Ge("codex_error",X)},ve=(O,X)=>VR(e.workspaceSlug,O,X),_e=async(O,X,J,K,w)=>{let C=Le(O,ls);if(C!==void 0){let I=Le(O,"threadId"),F=Le(O,"channel"),D=Le(O,"workspace"),ie=Le(O,"workDescription"),pe=Vl(O,"sourceSeq"),Fe=pe!==void 0?pe:Vl(O,"rootSeq"),Se=re.get(C),Ce;if(Se!==void 0)Ce={TAG:"Ok",_0:Se};else if(D!==void 0&&F!==void 0&&I!==void 0){let Pe=await dw({transport:g,commanderTopic:n,commanderId:e.commanderId,instanceId:i,harness:K,log:t,timers:ju,env:r,workspaceSlug:D,channelSlug:F,threadId:I,harnessSessionId:C,cwd:X,rootSeq:Vl(O,"rootSeq"),defaults:{approvalPolicy:e.approvalPolicy,sandbox:e.sandbox},actorSlug:o.actorUsername,actorUserId:o.actorUserId,leaseEpochFor:Oe=>L.current(Oe),commitAppliedSourceSeq:Oe=>{Au(u,ve(F,I),Oe,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",I],["channel",F],["sourceSeq",Oe]]))},switchProbe:Qe});if(Pe.TAG==="Ok"){let Oe=Pe._0;re.set(C,Oe),w&&K.onNotification(Wt=>Oe.routeNotification(Wt.method,x(k(Wt.params,ke),{}))),Ce={TAG:"Ok",_0:Oe}}else Ce={TAG:"Error",_0:Pe._0}}else Ce={TAG:"Error",_0:"cannot reconnect a Kandan thread without a session"};if(Ce.TAG!=="Ok")return{TAG:"Error",_0:Ce._0};let Ie=Ce._0;if(ie!==void 0){if(Fe===void 0)return{TAG:"Error",_0:"cannot reconnect a Kandan thread without a session"};if(F!==void 0&&I!==void 0?!Bm(u.initial(ve(F,I)),Fe):!1){t("kandan.reconnect_thread_seq_already_applied",Object.fromEntries([["source_seq",Fe],[Nn,C]]));let Nt={};return Nt.instanceId=i,Nt.controlType="reconnect_thread",Nt.cwd=X,Nt.matchedRoot=J,Nt[ls]=C,Nt.duplicate=!0,{TAG:"Ok",_0:Nt}}let Oe=(Nt,ar,Gt)=>(async()=>{let Ft=await g.push(Nt,ar,x(ke(Gt),{}),void 0);return Ft.TAG==="Ok"?{TAG:"Ok",_0:Ft._0}:{TAG:"Error",_0:ri(Ft._0)}})(),Wt={workspace:D,channel:F,threadId:I},zt=await t$((Nt,ar)=>K.request(Nt,ar),ju,a,C,YM({approvalPolicy:e.approvalPolicy,sandbox:e.sandbox}),{forceRehydrate:de(O.sessionRehydrate,!0),buildRehydrationText:async Nt=>{let ar=await JI(Oe,n,Wt,t);return{TAG:"Ok",_0:YI(ar,Nt)}},buildRehydrationItems:async Nt=>{let ar=await e$(Oe,n,Wt,t);if(ar===void 0)return{TAG:"Ok",_0:void 0};if(ar.nodes.length===0)return{TAG:"Ok",_0:void 0};let Gt=qI(ar.nodes.map(XI),G(ar.budget,QI),Nt,ar.threadTitle);return t("kandan.reconnect_thread_rehydration_ir_emitted",Object.fromEntries([["linzumi_thread_id",I!==void 0?I:null],["codex_thread_id",C],["emitted_nodes",Gt.emittedNodeCount],["omitted_nodes",Gt.omittedNodeCount],["redacted_reasoning",Gt.redactedReasoningCount],["emitted_token_estimate",Gt.emittedTokenEstimate],["max_emission_tokens",Gt.maxEmissionTokens]])),{TAG:"Ok",_0:Gt.items}},log:t});if(zt.TAG!=="Ok")return{TAG:"Error",_0:zt._0.message};typeof zt._0=="object"&&await Ie.publishRebuilt(Fe);let gr=await Ie.runClaimedTurn(Fe,ie);if(gr.TAG!=="Ok")return{TAG:"Error",_0:gr._0};let or={};return or.instanceId=i,or.controlType="reconnect_thread",or.cwd=X,or.matchedRoot=J,or[ls]=C,{TAG:"Ok",_0:or}}let ft={};return ft.instanceId=i,ft.controlType="reconnect_thread",ft.cwd=X,ft.matchedRoot=J,ft[ls]=C,{TAG:"Ok",_0:ft}}let P={};return P.instanceId=i,P.controlType="reconnect_thread",P.ok=!1,P.error="missing_codex_thread_id",{TAG:"Ok",_0:P}},Be=new Map,Jt=new Map,fn=async O=>{if(typeof O=="object"||O==="CodexProvider")return!0;let X=e.claudeCodeAvailable;return X!==void 0?X:(await It,Dt(He.contents))},ki=async(O,X,J,K,w)=>{let C=_w(O,X,J,K,i,w);if(C.TAG!=="Ok")return{TAG:"Error",_0:C._0};let P=C._0;return P!==void 0?(await Ge("message_state",P),{TAG:"Ok",_0:void 0}):{TAG:"Ok",_0:void 0}},Fn=async(O,X)=>{let J=ea(O);if(J===void 0)return;let K=Le(O,"workspace"),w=Le(O,"channel"),C=Le(O,"threadId");if(K===void 0||w===void 0||C===void 0)return;let P={};return P.workspace=K,P.channel=w,P.thread_id=C,P.instance_id=i,P.seq=J,P.status="failed",P.reason=X,P.allowed_cwds=f.contents.map(I=>I),await Ge("message_state",P)},ii=O=>{switch(O){case"StartingCodexSession":return"starting_codex_session";case"StartingClaudeCodeSession":return"starting_claude_code_session";case"BindingThread":return["binding_","kandan","_thread"].join("");case"StartingFirstTurn":return"starting_first_turn"}},Vr=async(O,X,J,K,w)=>{let C=X==="reconnect_thread"?"kandan.reconnect_thread_failed":"kandan.start_instance_failed",P=ea(O);return t(C,Object.fromEntries([["stage",ii(J)],["message",K],["thread_id",Gn(Le(O,"threadId"))],["source_seq",P!==void 0?P:null],[Nn,Gn(w)]])),await ki(O,X,"failed",K6(J,K),w),{TAG:"Error",_0:K}},_o=async(O,X,J,K,w,C)=>{let P=e.harnessBin;if(P===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let I=Mp(O,e.approvalPolicy,e.sandbox,e.defaultModel,e.defaultReasoningEffort);if(I.TAG!=="Ok")return{TAG:"Error",_0:I._0};let F=I._0,D=new Set,ie=[J].concat(f.contents).filter(Ft=>D.has(Ft)?!1:(D.add(Ft),!0)),pe=X==="start_instance"?pS(jr(O,"executionMode")):void 0,Fe=X==="start_instance"?hS(jr(O,"egressMode")):void 0,Se=X==="start_instance"?Le(O,"projectPublicId"):void 0,Ce=X==="start_instance"?Le(O,"goldenImagePublicId"):void 0,Ie=e.serviceUrl,ft=e.token,Pe=K,Oe=e.logFile,Wt=F.settingsFast,zt=[],br=e.codeServerBin,gr={model:F.settingsModel,reasoningEffort:F.settingsReasoningEffort,sandbox:F.settingsSandbox,approvalPolicy:F.settingsApprovalPolicy,allowPortForwardingByDefault:!0},or=k(k(O.linzumiAgent,ke),Ft=>Le(Ft,"mcpToken")),Nt={kandanUrl:Ie,token:ft,cwd:J,codexBin:P,kandanThreadId:w,workspaceSlug:Pe,logFile:Oe,debugTrace:void 0,fast:Wt,allowedCwds:ie,allowedForwardPorts:zt,codeServerBin:br,runtimeDefaults:gr,codexModelProvider:C,vmExecution:!1,executionMode:pe,egressMode:Fe,projectPublicId:Se,goldenImagePublicId:Ce,linzumiAgentMcpToken:or};t("runner.thread_process_starting",Object.fromEntries([["kandanThreadId",w],["cwd",J],["readyTimeoutMs",RR]]));let ar=await jR(Nt,(Ft,vr)=>t(Ft,vr));if(ar.TAG==="Ok"){let Ft=ar._0;Be.set(w,Ft);let vr=Ft.pid;return Ft.onExit(()=>{let Hr=Be.get(w);if(Hr!==void 0&&de(Hr.pid,vr)){Be.delete(w);return}}),Ft.client.onRequest(ut),t("runner.thread_process_started",Object.fromEntries([["kandanThreadId",w],["cwd",J]])),{TAG:"Ok",_0:Ft}}let Gt=ar._0;return t("runner.thread_process_start_failed",Object.fromEntries([["kandanThreadId",w],["cwd",J],["message",Gt]])),{TAG:"Error",_0:Gt}},ra=O=>rc(Be.get(O),X=>!X.client.isClosed()),tn=(O,X,J)=>{let K={};return K.instanceId=i,K.controlType=O,K.ok=!0,K.delegated=!0,K.threadProcess="already_started",K.kandanThreadId=X,K.cwd=J,K},H=async(O,X,J,K,w)=>{let C=Le(O,"developerPrompt"),P=kj(O.linzumiContext,vr=>{mr(vr+`
|
|
876
|
-
`)}),I=Mp(O,e.approvalPolicy,e.sandbox,e.defaultModel,e.defaultReasoningEffort);if(I.TAG!=="Ok")return await Vr(O,"start_instance","StartingCodexSession",I._0,void 0);let F=I._0,D=Le(O,"projectSharedInstructions"),ie=Le(O,"projectPersonalInstructions"),pe=Le(O,"projectMemory"),Fe=
|
|
875
|
+
</output_format>`}var hw="rescript";function X6(){return new Promise((e,t)=>{setTimeout(()=>e(),0)})}function Gn(e){return e!==void 0?e:null}function $p(e,t){return k(e[t],ke)}function jr(e,t){let r=e[t];if(typeof r=="string")return r}function Vl(e,t){let r=e[t];if(typeof r=="number")return r}function Le(e,t){let r=G(jr(e,t),n=>n.trim());if(r!==void 0&&r!=="")return r}function Aj(e){let t=Dn(e);return t.TAG==="Ok"?t._0:e}function Oj(e,t){let r=G(e,o=>o.trim());if(r===void 0)return{TAG:"RefusedCwd",reason:"missing_cwd"};if(r==="")return{TAG:"RefusedCwd",reason:"missing_cwd"};let n=Aj(r),i=t.find(o=>{let a=Aj(o);return n===a?!0:n.startsWith(a+jp.sep)});return i!==void 0?{TAG:"AllowedCwd",cwd:n,matchedRoot:i}:{TAG:"RefusedCwd",reason:"cwd_not_allowed"}}function yw(e){let t=e.agentProvider;if(t===void 0||typeof t!="string")return"CodexProvider";let r=t.trim();switch(r){case"claude-code":return"ClaudeCodeProvider";case"":case"codex":return"CodexProvider";default:return{TAG:"UnsupportedProvider",_0:r}}}function Cj(e){return typeof e!="object"&&e!=="CodexProvider"?"claude-code":"codex"}function Q6(e){return typeof e!="object"&&e!=="CodexProvider"?"Claude Code":"Codex"}function Ej(e){return typeof e!="object"&&e!=="CodexProvider"?"Claude Code is not available on this computer. Reconnect a local runner with Claude Code auth and try again.":"Codex is not available on this computer. Reconnect a local runner with Codex support and try again."}function e5(e,t){let r=ER(t,240);switch(e){case"StartingCodexSession":return"Codex did not create a session. Restart the local runner and try again. Detail: "+r;case"StartingClaudeCodeSession":return"Claude Code did not create a session. Restart the local runner and try again. Detail: "+r;case"BindingThread":return"Codex started, but Linzumi could not attach it to this thread. Try starting the agent again; if it repeats, share this failed message with the runner owner. Detail: "+r;case"StartingFirstTurn":return"Codex started, but the first prompt could not be delivered. Try sending the message again; if it repeats, reconnect the local runner. Detail: "+r}}var t5="start_instance first turn requires a session-owned dispatch (bound Kandan thread session + sourceSeq); the sessionless degraded turn/start fallback was removed (type-2 fallback audit)";function bw(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&Ot(r))return r}function ea(e){let t=bw(e,"sourceSeq");return t!==void 0?t:bw(e,"rootSeq")}function _w(e,t,r,n,i,o){let a=ea(e);if(a===void 0)return{TAG:"Ok",_0:void 0};let s=l=>{let d=e[l];return d!==void 0&&typeof d=="string"&&d.trim()!==""?{TAG:"Ok",_0:d.trim()}:{TAG:"Error",_0:t+" control missing "+l}};return he(s("workspace"),l=>he(s("channel"),d=>wt(s("threadId"),u=>{let c={};c.workspace=l,c.channel=d,c.thread_id=u,c.instance_id=i,c.seq=a,c.status=r,c.reason=n,o!==void 0&&(c[Nn]=o);let f=yw(e);return typeof f!="object"&&f!=="CodexProvider"&&(c.agent_provider="claude-code"),c})))}function Mp(e,t,r,n,i){let o=(l,d)=>{let u=e[l];return typeof u=="string"?u:d},a=o("sandbox",r),s=de(e.sandboxedApprovalNeverDefault,!0);return wt(Kv(o("approvalPolicy",t),a,{sandboxedNeverDefault:s}),l=>({settingsModel:o("model",n),settingsReasoningEffort:o("reasoningEffort",i),settingsApprovalPolicy:l,settingsSandbox:a,settingsSandboxedNeverDefault:s,settingsFast:de(e.fast,!0)}))}function r5(e){let t=[],r=e.settingsModel;r!==void 0&&t.push(["model",r]);let n=e.settingsReasoningEffort;n!==void 0&&t.push(["reasoningEffort",n]);let i=e.settingsApprovalPolicy;if(i!==void 0){let a=Vm(i,e.settingsSandbox,{sandboxedNeverDefault:e.settingsSandboxedNeverDefault});a.TAG==="Ok"&&t.push(["approvalPolicy",a._0])}let o=e.settingsSandbox;return o!==void 0&&t.push(["sandbox",o]),e.settingsFast&&t.push(["serviceTier","fast"]),t}function n5(e){return jp.join(e,".linzumi","commanderImplFallback.json")}function Pj(e){let t=ta.homedir(),r=RI(fS(t),e),n;return n=r.TAG==="Ok",n&&e==="Ts"&&pn(n5(t)),n}function i5(e){let t=G(e.LINZUMI_CODEX_START_REQUEST_TIMEOUT_MS,n=>n.trim());if(t===void 0)return 12e4;let r=jn(t);return r!==void 0&&r>0?r:12e4}async function Rj(e,t){let r=process.env,n=bP(e.commanderId),i="codex-"+gw.randomUUID(),o=wu(e.token),a=i5(r),s={contents:!1},l=Hm(LR(e.commanderId,r),t,void 0,void 0),d=Hm(UR(e.commanderId,r),t,!0,void 0),u=KR(Hm(WR(e.commanderId,r),t,void 0,!0)),c=BR(l,d,t,e.commanderId,e.serviceUrl),f={contents:e.allowedCwds},p=[],m={contents:(S,A)=>{p.push([S,A])}},h=e.harnessBin;h!==void 0&&await zR(h,e.cwd);let _=await u$(e.serviceUrl,{TAG:"Token",_0:e.token},void 0,{controlCursorStore:a$(l),controlEpochStore:s$(c),onOperatorNotice:S=>{},auditEvent:(S,A)=>t(S,A)});if(_.TAG!=="Ok")return{TAG:"Error",_0:ri(_._0)};let g=_._0;g.onControl((S,A)=>m.contents(S,A));let b=()=>{let S={};return S.codexAppServer=!0,S.commander_pipeline="pipeline",S.startInstance=f.contents.length!==0,S.allowedCwds=f.contents.map(A=>A),S},y=()=>vP({clientId:e.commanderId,machineFingerprint:void 0,machineFingerprintV2:void 0,runnerPid:process.pid,version:ku(),hostname:ta.hostname(),cwd:e.cwd,workspace:e.workspaceSlug,channel:void 0,capabilities:b(),generationOverlapEpoch:void 0}),v=await g.join(n,y(),{rejoinPayload:y,registrationId:void 0});if(v.TAG==="Ok"){let S=x(ke(v._0),{}),A=$p(S,"runner_config");if(A!==void 0){let V=A.allowedCwds;Array.isArray(V)&&(f.contents=Rc(V),t("runner.config_updated",Object.fromEntries([["source","join"],["configVersion",x(A.configVersion,null)],["allowedCwdCount",f.contents.length]])));let M=jr(A,"commander_impl");if(M!==void 0){let j=M.trim()==="rescript"?"Rescript":"Ts",re=fS(ta.homedir()),se=PI(re);if(!de(se,j)){let Ae=Pj(j);t("runner.commander_impl_assigned",Object.fromEntries([["impl",El(j)],["previousCache",Gn(G(se,El))],["persisted",Ae],["runningImpl",hw]]))}}}let R=$p(S,"compute_node");if(R!==void 0){let V=Vl(R,"reset_generation");t("runner.compute_node",Object.fromEntries([["id",Gn(jr(R,"id"))],["name",Gn(jr(R,"name"))],["identityQuality",Gn(jr(R,"identity_quality"))],["resetGeneration",V!==void 0?V:null]]))}let W=$p(S,"roster");if(W!==void 0){let V=$e(x(k(W.threads,Qi),[]),ke),M=Op(Yu("thread_id"));t("kandan.roster_seeded",Object.fromEntries([["source","join"],["thread_count",V.length],["truncated",x(W.truncated,!1)],["skipped_entries",0],["threads",V.map(N=>{let j={};return j[Yu("thread_id")]=x(N[M],null),j.provider_session_key=x(N.provider_session_key,null),j.channel_id=x(N.channel_id,null),j.title=x(N.title,null),j.channel_slug=x(N.channel_slug,null),j.cwd=x(N.cwd,null),j})]]))}let L=XR();JR(S.resume_reconcile).forEach(V=>{let M=V.leaseEpoch;if(M!==void 0&&L.adopt(V.threadId,M))return t("runner.resume_reconcile_lease_adopted",Object.fromEntries([[Op(Yu("thread_id")),V.threadId],["leaseEpoch",M]]))});let U=globalThis.__linzumiCommanderChooserMarkJoined;if(U!==void 0){let V;try{V=Dt(U())}catch{V=void 0}V!==void 0&&t("commander.chooser.fallback_reported",x(ke(V),{}))}let B=async V=>{let M=await qm(V,void 0,void 0,void 0);if(M.TAG!=="Ok")return{TAG:"Error",_0:"codex app-server connect failed: "+M._0};let N=await Lm(M._0,{audit:(j,re)=>t(j,re),onWire:(j,re)=>{},keepaliveIntervalMs:3e4});return N.TAG==="Ok"?{TAG:"Ok",_0:N._0}:{TAG:"Error",_0:"codex app-server handshake failed: "+N._0}},oe=e.harnessUrl,Z;if(oe!==void 0){let V=await B(oe);Z=V.TAG==="Ok"?{TAG:"Ok",_0:[V._0,oe,void 0]}:{TAG:"Error",_0:V._0}}else{let V=e.harnessBin;if(V!==void 0){let M=await pw(r,(N,j)=>t(N,j),{codexBin:V,cwd:e.cwd,serviceUrl:e.serviceUrl,token:e.token,agentMcpToken:void 0,devServicesScope:e.commanderId,devServicesOwnerPid:process.pid,threadId:void 0,model:void 0,reasoningEffort:void 0,fast:!1,provider:void 0});if(M.TAG==="Ok"){let N=M._0,j=await B(N.url);j.TAG==="Ok"?Z={TAG:"Ok",_0:[j._0,N.url,N]}:(N.stop(),Z={TAG:"Error",_0:j._0})}else Z={TAG:"Error",_0:M._0}}else Z={TAG:"Error",_0:"the differential commander requires codexUrl (no spawned harness binary)"}}if(Z.TAG==="Ok"){let V=Z._0,M=V[2],N=V[1],j=V[0],re=new Map,se={contents:0},Ae={contents:0},Ue=O=>(Ae.contents=Ae.contents+1|0,zn(O.then(()=>{Ae.contents=Ae.contents-1|0}),X=>(Ae.contents=Ae.contents-1|0,Promise.resolve()))),Ge=(O,X)=>Ue((async()=>{let J=await g.push(n,O,X,void 0);if(J.TAG!=="Ok")return t("kandan.event_push_failed",Object.fromEntries([["event",O],["message",ri(J._0)]]))})()),ut=async O=>{if(de(e.approvalPolicy,"never")&&de(e.sandbox,"danger-full-access")&&(O.method==="item/commandExecution/requestApproval"||O.method==="item/fileChange/requestApproval"))return t("codex.server_request_auto_accepted",Object.fromEntries([["method",O.method],["turn_id",Gn(k(k(O.params,ke),J=>jr(J,"turnId")))]])),Object.fromEntries([["decision","accept"]])};j!==void 0&&(j.onNotification(O=>{se.contents=se.contents+1;let X=x(k(O.params,ke),{}),J={};J.instanceId=i,J.seq=se.contents,J.method=O.method,J.params=X,J.receivedAt=new Date().toISOString(),Ge("codex_notification",J),t("codex.notification",Object.fromEntries([["method",O.method]])),re.values().toArray().forEach(K=>K.routeNotification(O.method,X))}),j.onRequest(ut),j.onClose(O=>{if(!s.contents){t("codex.app_server_connection_lost",Object.fromEntries([["cause",O]])),re.values().toArray().forEach(X=>X.failOnHarnessDeath(O));return}}));let ze=()=>{let O={};return O.instanceId=i,O.clientId=e.commanderId,N!==void 0&&(O.codexUrl=N),O.cwd=e.cwd,O.hostname=ta.hostname(),O.workspace=e.workspaceSlug,O.channel=null,O},pt=ze();pt.codexThreads=[],pt.tuiLaunched=!1,await Ge("instance_started",pt),t("runner.instance_started",Object.fromEntries([["runnerId",e.commanderId],["hostname",ta.hostname()],["workspace",e.workspaceSlug],["version",ku()],["instanceId",i],["codexUrl",Gn(N)]])),await Ge("heartbeat",ze());let Xe=setInterval(()=>{Ge("heartbeat",ze())},15e3);Xe.unref(),g.onReconnect(async O=>await Ge("heartbeat",ze()));let He={contents:void 0},It=(async()=>{try{let O=await AP();He.contents=EI({sdk:O,audit:(X,J)=>t(X,J),env:r});return}catch{return t("kandan.cross_harness_switch_target_unavailable",Object.fromEntries([["target_harness","claude-code"],["reason","claude-agent-sdk module not resolvable"]]))}})(),Qe={targetHarness:"claude-code",model:void 0,targetAdapterAvailable:()=>qt(He.contents)},q=async O=>await Ge("codex_response",O),Ee=async O=>{let X={};return X.instanceId=i,X.message=O,await Ge("codex_error",X)},ve=(O,X)=>VR(e.workspaceSlug,O,X),_e=async(O,X,J,K,w)=>{let C=Le(O,ls);if(C!==void 0){let I=Le(O,"threadId"),F=Le(O,"channel"),D=Le(O,"workspace"),ie=Le(O,"workDescription"),pe=Vl(O,"sourceSeq"),Fe=pe!==void 0?pe:Vl(O,"rootSeq"),Se=re.get(C),Ce;if(Se!==void 0)Ce={TAG:"Ok",_0:Se};else if(D!==void 0&&F!==void 0&&I!==void 0){let Pe=await dw({transport:g,commanderTopic:n,commanderId:e.commanderId,instanceId:i,harness:K,log:t,timers:ju,env:r,workspaceSlug:D,channelSlug:F,threadId:I,harnessSessionId:C,cwd:X,rootSeq:Vl(O,"rootSeq"),defaults:{approvalPolicy:e.approvalPolicy,sandbox:e.sandbox},actorSlug:o.actorUsername,actorUserId:o.actorUserId,leaseEpochFor:Oe=>L.current(Oe),commitAppliedSourceSeq:Oe=>{Au(u,ve(F,I),Oe,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",I],["channel",F],["sourceSeq",Oe]]))},switchProbe:Qe});if(Pe.TAG==="Ok"){let Oe=Pe._0;re.set(C,Oe),w&&K.onNotification(Zt=>Oe.routeNotification(Zt.method,x(k(Zt.params,ke),{}))),Ce={TAG:"Ok",_0:Oe}}else Ce={TAG:"Error",_0:Pe._0}}else Ce={TAG:"Error",_0:"cannot reconnect a Kandan thread without a session"};if(Ce.TAG!=="Ok")return{TAG:"Error",_0:Ce._0};let Ie=Ce._0;if(ie!==void 0){if(Fe===void 0)return{TAG:"Error",_0:"cannot reconnect a Kandan thread without a session"};if(F!==void 0&&I!==void 0?!Bm(u.initial(ve(F,I)),Fe):!1){t("kandan.reconnect_thread_seq_already_applied",Object.fromEntries([["source_seq",Fe],[Nn,C]]));let Nt={};return Nt.instanceId=i,Nt.controlType="reconnect_thread",Nt.cwd=X,Nt.matchedRoot=J,Nt[ls]=C,Nt.duplicate=!0,{TAG:"Ok",_0:Nt}}let Oe=(Nt,ar,Gt)=>(async()=>{let Ft=await g.push(Nt,ar,x(ke(Gt),{}),void 0);return Ft.TAG==="Ok"?{TAG:"Ok",_0:Ft._0}:{TAG:"Error",_0:ri(Ft._0)}})(),Zt={workspace:D,channel:F,threadId:I},zt=await t$((Nt,ar)=>K.request(Nt,ar),ju,a,C,XM({approvalPolicy:e.approvalPolicy,sandbox:e.sandbox}),{forceRehydrate:de(O.sessionRehydrate,!0),buildRehydrationText:async Nt=>{let ar=await JI(Oe,n,Zt,t);return{TAG:"Ok",_0:YI(ar,Nt)}},buildRehydrationItems:async Nt=>{let ar=await e$(Oe,n,Zt,t);if(ar===void 0)return{TAG:"Ok",_0:void 0};if(ar.nodes.length===0)return{TAG:"Ok",_0:void 0};let Gt=qI(ar.nodes.map(XI),G(ar.budget,QI),Nt,ar.threadTitle);return t("kandan.reconnect_thread_rehydration_ir_emitted",Object.fromEntries([["linzumi_thread_id",I!==void 0?I:null],["codex_thread_id",C],["emitted_nodes",Gt.emittedNodeCount],["omitted_nodes",Gt.omittedNodeCount],["redacted_reasoning",Gt.redactedReasoningCount],["emitted_token_estimate",Gt.emittedTokenEstimate],["max_emission_tokens",Gt.maxEmissionTokens]])),{TAG:"Ok",_0:Gt.items}},log:t});if(zt.TAG!=="Ok")return{TAG:"Error",_0:zt._0.message};typeof zt._0=="object"&&await Ie.publishRebuilt(Fe);let gr=await Ie.runClaimedTurn(Fe,ie);if(gr.TAG!=="Ok")return{TAG:"Error",_0:gr._0};let or={};return or.instanceId=i,or.controlType="reconnect_thread",or.cwd=X,or.matchedRoot=J,or[ls]=C,{TAG:"Ok",_0:or}}let ft={};return ft.instanceId=i,ft.controlType="reconnect_thread",ft.cwd=X,ft.matchedRoot=J,ft[ls]=C,{TAG:"Ok",_0:ft}}let P={};return P.instanceId=i,P.controlType="reconnect_thread",P.ok=!1,P.error="missing_codex_thread_id",{TAG:"Ok",_0:P}},Be=new Map,Yt=new Map,fn=async O=>{if(typeof O=="object"||O==="CodexProvider")return!0;let X=e.claudeCodeAvailable;return X!==void 0?X:(await It,qt(He.contents))},ki=async(O,X,J,K,w)=>{let C=_w(O,X,J,K,i,w);if(C.TAG!=="Ok")return{TAG:"Error",_0:C._0};let P=C._0;return P!==void 0?(await Ge("message_state",P),{TAG:"Ok",_0:void 0}):{TAG:"Ok",_0:void 0}},Fn=async(O,X)=>{let J=ea(O);if(J===void 0)return;let K=Le(O,"workspace"),w=Le(O,"channel"),C=Le(O,"threadId");if(K===void 0||w===void 0||C===void 0)return;let P={};return P.workspace=K,P.channel=w,P.thread_id=C,P.instance_id=i,P.seq=J,P.status="failed",P.reason=X,P.allowed_cwds=f.contents.map(I=>I),await Ge("message_state",P)},ii=O=>{switch(O){case"StartingCodexSession":return"starting_codex_session";case"StartingClaudeCodeSession":return"starting_claude_code_session";case"BindingThread":return["binding_","kandan","_thread"].join("");case"StartingFirstTurn":return"starting_first_turn"}},Vr=async(O,X,J,K,w)=>{let C=X==="reconnect_thread"?"kandan.reconnect_thread_failed":"kandan.start_instance_failed",P=ea(O);return t(C,Object.fromEntries([["stage",ii(J)],["message",K],["thread_id",Gn(Le(O,"threadId"))],["source_seq",P!==void 0?P:null],[Nn,Gn(w)]])),await ki(O,X,"failed",e5(J,K),w),{TAG:"Error",_0:K}},_o=async(O,X,J,K,w,C)=>{let P=e.harnessBin;if(P===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let I=Mp(O,e.approvalPolicy,e.sandbox,e.defaultModel,e.defaultReasoningEffort);if(I.TAG!=="Ok")return{TAG:"Error",_0:I._0};let F=I._0,D=new Set,ie=[J].concat(f.contents).filter(Ft=>D.has(Ft)?!1:(D.add(Ft),!0)),pe=X==="start_instance"?pS(jr(O,"executionMode")):void 0,Fe=X==="start_instance"?hS(jr(O,"egressMode")):void 0,Se=X==="start_instance"?Le(O,"projectPublicId"):void 0,Ce=X==="start_instance"?Le(O,"goldenImagePublicId"):void 0,Ie=e.serviceUrl,ft=e.token,Pe=K,Oe=e.logFile,Zt=F.settingsFast,zt=[],br=e.codeServerBin,gr={model:F.settingsModel,reasoningEffort:F.settingsReasoningEffort,sandbox:F.settingsSandbox,approvalPolicy:F.settingsApprovalPolicy,allowPortForwardingByDefault:!0},or=k(k(O.linzumiAgent,ke),Ft=>Le(Ft,"mcpToken")),Nt={kandanUrl:Ie,token:ft,cwd:J,codexBin:P,kandanThreadId:w,workspaceSlug:Pe,logFile:Oe,debugTrace:void 0,fast:Zt,allowedCwds:ie,allowedForwardPorts:zt,codeServerBin:br,runtimeDefaults:gr,codexModelProvider:C,vmExecution:!1,executionMode:pe,egressMode:Fe,projectPublicId:Se,goldenImagePublicId:Ce,linzumiAgentMcpToken:or};t("runner.thread_process_starting",Object.fromEntries([["kandanThreadId",w],["cwd",J],["readyTimeoutMs",RR]]));let ar=await jR(Nt,(Ft,vr)=>t(Ft,vr));if(ar.TAG==="Ok"){let Ft=ar._0;Be.set(w,Ft);let vr=Ft.pid;return Ft.onExit(()=>{let Hr=Be.get(w);if(Hr!==void 0&&de(Hr.pid,vr)){Be.delete(w);return}}),Ft.client.onRequest(ut),t("runner.thread_process_started",Object.fromEntries([["kandanThreadId",w],["cwd",J]])),{TAG:"Ok",_0:Ft}}let Gt=ar._0;return t("runner.thread_process_start_failed",Object.fromEntries([["kandanThreadId",w],["cwd",J],["message",Gt]])),{TAG:"Error",_0:Gt}},ra=O=>rc(Be.get(O),X=>!X.client.isClosed()),tn=(O,X,J)=>{let K={};return K.instanceId=i,K.controlType=O,K.ok=!0,K.delegated=!0,K.threadProcess="already_started",K.kandanThreadId=X,K.cwd=J,K},H=async(O,X,J,K,w)=>{let C=Le(O,"developerPrompt"),P=xj(O.linzumiContext,vr=>{mr(vr+`
|
|
876
|
+
`)}),I=Mp(O,e.approvalPolicy,e.sandbox,e.defaultModel,e.defaultReasoningEffort);if(I.TAG!=="Ok")return await Vr(O,"start_instance","StartingCodexSession",I._0,void 0);let F=I._0,D=Le(O,"projectSharedInstructions"),ie=Le(O,"projectPersonalInstructions"),pe=Le(O,"projectMemory"),Fe=qt(O.projectId)||qt(O.projectPublicId)||qt(D)||qt(ie)||qt(pe),Se=Tj({cwd:X,agentLabel:void 0,planTool:"LinzumiMcpPlanTool",mcpAvailable:!0,devServicesAvailable:!0,developerPrompt:C,projectSharedInstructions:D,projectPersonalInstructions:ie,projectMemory:pe,projectBound:Fe,linzumiContext:P}),Ce={};Ce.cwd=X,Ce.serviceName=GR,Ce.personality=FR,Ce.developerInstructions=Se,r5(F).forEach(vr=>{Ce[vr[0]]=vr[1]});let Ie=await wS(ju,a,"thread/start",K.request("thread/start",Ce));if(Ie.TAG!=="Ok")return await Vr(O,"start_instance","StartingCodexSession",Ie._0,void 0);let ft=Ie._0;if(ft.TAG!=="ResultReply")return await Vr(O,"start_instance","StartingCodexSession","thread/start failed: "+ft.message,void 0);let Pe=ft._0,Oe=k(k(ke(Pe),vr=>$p(vr,"thread")),vr=>Le(vr,"id")),Zt=Le(O,"workDescription");if(Oe!==void 0&&C!==void 0){let vr=Le(O,"workspace"),Hr=Le(O,"channel"),oi=Le(O,"threadId");if(vr!==void 0&&Hr!==void 0&&oi!==void 0){let ai={};ai.event_type="codex_start_instructions",ai[Nn]=Oe,ai.instructions_body=C;let Bl=Le(O,"modelProvider");Bl!==void 0&&(ai.model_provider=Bl);let Kl=Le(O,"model");Kl!==void 0&&(ai.model=Kl);let ds={};ds.workspace=vr,ds.channel=Hr,ds.thread_id=oi,ds.body=`Starting a new Codex thread with instructions:
|
|
877
877
|
|
|
878
|
-
`+C,ds.payload=Object.fromEntries([["metadata",Object.fromEntries([["local_codex_runner",ai]])]]),await Ge("session:post_thread_message",ds)}}let zt=Le(O,"workspace"),br=Le(O,"channel"),gr=Le(O,"threadId"),or;if(Oe!==void 0&&zt!==void 0&&br!==void 0&&gr!==void 0){let vr=await dw({transport:g,commanderTopic:n,commanderId:e.commanderId,instanceId:i,harness:K,log:t,timers:ju,env:r,workspaceSlug:zt,channelSlug:br,threadId:gr,harnessSessionId:Oe,cwd:X,rootSeq:bw(O,"rootSeq"),defaults:{approvalPolicy:e.approvalPolicy,sandbox:e.sandbox,model:F.settingsModel,reasoningEffort:F.settingsReasoningEffort},actorSlug:o.actorUsername,actorUserId:o.actorUserId,leaseEpochFor:Hr=>L.current(Hr),commitAppliedSourceSeq:Hr=>{Au(u,ve(br,gr),Hr,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",gr],["channel",br],["sourceSeq",Hr]]))},switchProbe:Qe});if(vr.TAG==="Ok"){let Hr=vr._0;re.set(Oe,Hr),w&&K.onNotification(oi=>Hr.routeNotification(oi.method,x(k(oi.params,ke),{}))),or={TAG:"Ok",_0:Hr}}else or={TAG:"Error",_0:vr._0}}else or={TAG:"Ok",_0:void 0};if(or.TAG!=="Ok")return await Vr(O,"start_instance","BindingThread",or._0,Oe);let Nt=or._0,ar=ea(O),Gt=Oe!==void 0&&Wt!==void 0?Nt!==void 0&&ar!==void 0?await Nt.runClaimedTurn(ar,Wt):{TAG:"Error",_0:J6}:{TAG:"Ok",_0:void 0};if(Gt.TAG!=="Ok")return await Vr(O,"start_instance","StartingFirstTurn",Gt._0,Oe);let Ft={};return Ft.instanceId=i,Ft.controlType="start_instance",Ft.cwd=X,Ft.matchedRoot=J,Ft.response=Pe,{TAG:"Ok",_0:Ft}},te=(O,X)=>{let J=Gc(e.serviceUrl,e.token,void 0,new Date);if(J.TAG==="Ok"){let K=J._0,w=Vc(process.execPath,process.argv[1],process.execArgv),C=wu(e.token),P=Zs({command:w.command,argsPrefix:w.argsPrefix,serviceUrl:e.serviceUrl,authFilePath:K.path,ownerUsername:C.actorUsername,operatingMode:"Text",cwd:O,threadId:X,devServices:{scope:e.commanderId,ownerPid:process.pid}});return{servers:cx(P),cleanup:K.cleanup}}t("claude_code.mcp_config_failed",Object.fromEntries([["message",J._0.summary],["thread_id",X]]))},ne=(O,X,J,K,w,C,P,I)=>({adapter:I,pushEvent:Ge,log:t,workspace:J,channel:K,threadId:w,cwd:X,sourceSeq:ea(O),model:P.settingsModel,approvalPolicy:P.settingsApprovalPolicy,sandbox:P.settingsSandbox,workDescription:C,mcp:te(X,w)}),Ke=O=>{let X=Le(O,"channel"),J=Le(O,"threadId"),K=ea(O);if(X!==void 0&&J!==void 0&&K!==void 0)return Au(u,ve(X,J),K,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",J],["channel",X],["sourceSeq",K]]))},tt=(O,X,J,K)=>{let w={};return w.instanceId=i,w.controlType=O,w.agentProvider="claude-code",w.cwd=X,w.matchedRoot=J,w.response=Object.fromEntries([["session",Object.fromEntries([["id",K]])]]),w},at=async(O,X,J)=>{await It;let K=Fe=>Vr(O,"start_instance","StartingClaudeCodeSession",Fe,void 0),w=He.contents;if(w===void 0)return await K("claude-agent-sdk module not resolvable");let C=Le(O,"workspace"),P=Le(O,"channel"),I=Le(O,"threadId"),F=Le(O,"workDescription");if(C===void 0)return await K("start_instance control missing workspace");if(P===void 0)return await K("start_instance control missing channel");if(I===void 0)return await K("start_instance control missing threadId");if(F===void 0)return await K("start_instance control missing workDescription");let D=Mp(O,e.approvalPolicy,e.sandbox,e.defaultModel,e.defaultReasoningEffort);if(D.TAG!=="Ok")return await K(D._0);let ie=await y$(ne(O,X,C,P,I,F,D._0,w));if(ie.TAG!=="Ok")return await K(ie._0);let pe=ie._0;return Jt.set(pe.harnessSessionId,pe),Ke(O),{TAG:"Ok",_0:tt("start_instance",X,J,pe.harnessSessionId)}},ct=async(O,X,J)=>{await It;let K=Le(O,ls);if(K!==void 0){let C=Pe=>Vr(O,"reconnect_thread","StartingClaudeCodeSession",Pe,K),P=He.contents;if(P===void 0)return await C("claude-agent-sdk module not resolvable");let I=Le(O,"workspace"),F=Le(O,"channel"),D=Le(O,"threadId"),ie=Le(O,"workDescription");if(I===void 0)return await C("start_instance control missing workDescription");if(F===void 0)return await C("start_instance control missing workDescription");if(D===void 0)return await C("start_instance control missing workDescription");if(ie===void 0)return await C("start_instance control missing workDescription");let pe=ea(O);if(pe!==void 0?!Bm(u.initial(ve(F,D)),pe):!1){let Pe=ea(O);t("claude_code.replayed_turn_already_applied_ignored",Object.fromEntries([["linzumi_thread_id",D],["claude_session_id",K],["source_seq",Pe!==void 0?Pe:null]]));let Oe={};return Oe.instanceId=i,Oe.controlType="reconnect_thread",Oe.agentProvider="claude-code",Oe.cwd=X,Oe.matchedRoot=J,Oe[ls]=K,Oe.queuedInput=!0,Oe.duplicate=!0,{TAG:"Ok",_0:Oe}}let Se=_w(O,"reconnect_thread","processing","resuming Claude Code session",i,K);if(Se.TAG==="Ok"){let Pe=Se._0;Pe!==void 0&&Ge("message_state",Pe)}let Ce=Mp(O,e.approvalPolicy,e.sandbox,e.defaultModel,e.defaultReasoningEffort);if(Ce.TAG!=="Ok")return await C(Ce._0);let Ie=await b$(ne(O,X,I,F,D,ie,Ce._0,P),K);if(Ie.TAG!=="Ok")return await C(Ie._0);let ft=Ie._0;return Jt.set(ft.harnessSessionId,ft),Ke(O),{TAG:"Ok",_0:tt("reconnect_thread",X,J,ft.harnessSessionId)}}let w={};return w.instanceId=i,w.controlType="reconnect_thread",w.ok=!1,w.error="missing_codex_thread_id",{TAG:"Ok",_0:w}},Pt=async O=>{let X=Aj(jr(O,"cwd"),f.contents);if(X.TAG==="AllowedCwd"){let J=X.matchedRoot,K=X.cwd,w=yw(O),C=await fn(w),P=0;if(typeof w!="object")P=1;else{let I={};return I.instanceId=i,I.controlType="reconnect_thread",I.ok=!1,I.error="agent_provider_unsupported:"+w._0,{TAG:"Ok",_0:I}}if(P===1)if(C){if(typeof w!="object"){if(w!=="CodexProvider")return await ct(O,K,J);if(e.harnessUrl!==void 0)return j!==void 0?await _e(O,K,J,j,!1):{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let F=Le(O,"workspace"),D=Le(O,"channel"),ie=Le(O,"threadId"),pe=0;if(F!==void 0&&D!==void 0&&ie!==void 0){if(ra(ie)!==void 0)return{TAG:"Ok",_0:tn("reconnect_thread",ie,K)};let Se=Zl(O),Ce=0;if(typeof Se!="object"||Se.TAG==="Provider")Ce=3;else{let Ie={};return Ie.instanceId=i,Ie.controlType="reconnect_thread",Ie.ok=!1,Ie.error=Se._0,Ie.kandanThreadId=ie,Ie.cwd=K,{TAG:"Ok",_0:Ie}}if(Ce===3){let Ie=Zl(O),ft;ft=typeof Ie!="object"||Ie.TAG!=="Provider"?void 0:Ie._0;let Pe=await _o(O,"reconnect_thread",K,F,ie,ft);return Pe.TAG==="Ok"?await _e(O,K,J,Pe._0.client,!0):{TAG:"Error",_0:Pe._0}}}else pe=2;if(pe===2)return j!==void 0?await _e(O,K,J,j,!1):{TAG:"Error",_0:"cannot reconnect a Kandan thread without a session"}}}else{await ki(O,"reconnect_thread","failed",Cj(w),void 0);let I={};return I.instanceId=i,I.controlType="reconnect_thread",I.ok=!1,I.error="agent_provider_unavailable:"+Oj(w),{TAG:"Ok",_0:I}}}else{let J=X.reason;await Fn(O,J);let K={};return K.instanceId=i,K.controlType="reconnect_thread",K.requestId=Gn(jr(O,"requestId")),K.ok=!1,K.error=J,K.allowedCwds=f.contents.map(w=>w),{TAG:"Ok",_0:K}}},vt={contents:void 0},Ct=async(O,X,J)=>{let K=async()=>{if(j===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let Se=Zl(O),Ce;if(typeof Se!="object")Ce=void 0;else if(Se.TAG==="Provider")if(Se._0.provider==="wafer")Ce="wafer_model_provider_requires_thread_worker";else{let Pe=G(r.OPENAI_API_KEY,Oe=>Oe.trim());Ce=Pe!==void 0&&Pe!==""?"llm_proxy_model_provider_requires_thread_worker":"codex llm proxy requires API-key auth (OPENAI_API_KEY in the environment or $CODEX_HOME/auth.json); ChatGPT OAuth credentials cannot be forwarded"}else Ce=Se._0;if(Ce===void 0)return await H(O,X,J,j,!1);await ki(O,"start_instance","failed",Ce,void 0);let Ie={};return Ie.instanceId=i,Ie.controlType="start_instance",Ie.ok=!1,Ie.error=Ce,{TAG:"Ok",_0:Ie}};if(e.harnessUrl!==void 0)return await K();let C=Le(O,"workspace"),P=Le(O,"channel"),I=Le(O,"threadId");if(C===void 0)return await K();if(P===void 0)return await K();if(I===void 0)return await K();if(ra(I)!==void 0)return{TAG:"Ok",_0:tn("start_instance",I,X)};let D=Zl(O);if(typeof D=="object"&&D.TAG!=="Provider"){let Se={};return Se.instanceId=i,Se.controlType="start_instance",Se.ok=!1,Se.error=D._0,Se.kandanThreadId=I,Se.cwd=X,{TAG:"Ok",_0:Se}}let ie=Zl(O),pe;pe=typeof ie!="object"||ie.TAG!=="Provider"?void 0:ie._0;let Fe=await _o(O,"start_instance",X,C,I,pe);return Fe.TAG==="Ok"?await H(O,X,X,Fe._0.client,!0):await Vr(O,"start_instance","StartingCodexSession",Fe._0,void 0)},go=()=>{let O=vt.contents;if(O!==void 0)return O;let X=(async()=>{s.contents=!0,clearInterval(Xe);let J=0,K=0;for(;J<3&&K<2e3;)K=K+1|0,J=Ae.contents===0?J+1|0:0,await H6();let w=re.values().toArray();for(let P=0,I=w.length;P<I;++P){let F=w[P];F!==void 0&&await F.close()}let C=Jt.values().toArray();for(let P=0,I=C.length;P<I;++P){let F=C[P];F!==void 0&&await F.stop()}return Be.values().toArray().forEach(P=>P.close()),j!==void 0&&j.close(),M!==void 0&&M.stop(),g.close(),l.flush(),d.flush()})();return vt.contents=X,X},na=async O=>{let X=Aj(jr(O,"cwd"),f.contents),J=yw(O);if(typeof J=="object"){let C={};return C.instanceId=i,C.controlType="start_instance",C.ok=!1,C.error="agent_provider_unsupported:"+J._0,{TAG:"Ok",_0:C}}if(X.TAG==="AllowedCwd"){let C=X.matchedRoot,P=X.cwd;if(await fn(J)){let F=_w(O,"start_instance","processing","starting "+B6(J)+" session",i,void 0);if(F.TAG!=="Ok")return{TAG:"Error",_0:F._0};let D=F._0;return D!==void 0&&Ge("message_state",D),typeof J!="object"?J==="CodexProvider"?await Ct(O,P,C):await at(O,P,C):await Ct(O,P,C)}await ki(O,"start_instance","failed",Cj(J),void 0);let I={};return I.instanceId=i,I.controlType="start_instance",I.ok=!1,I.error="agent_provider_unavailable:"+Oj(J),{TAG:"Ok",_0:I}}let K=X.reason;t("kandan.start_instance_cwd_rejected",Object.fromEntries([["thread_id",Gn(Le(O,"threadId"))],["reason",K],["allowedCwdCount",f.contents.length]])),await Fn(O,K);let w={};return w.instanceId=i,w.controlType="start_instance",w.requestId=Gn(jr(O,"requestId")),w.ok=!1,w.error=K,w.allowedCwds=f.contents.map(C=>C),{TAG:"Ok",_0:w}},Hl=async O=>{if(j===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let X={},J=jr(O,"threadId");J!==void 0&&(X.threadId=J);let K=O.input;K!==void 0&&(X.input=K);let w=await j.request("turn/start",X);if(w.TAG!=="Ok")return{TAG:"Error",_0:w._0};let C=w._0;if(C.TAG!=="ResultReply")return{TAG:"Error",_0:C.message};let P={};return P.instanceId=i,P.controlType="start_turn",P.response=C._0,{TAG:"Ok",_0:P}},kw=async O=>{let X=Le(O,"harnessSessionId");if(X===void 0)return{TAG:"Error",_0:"invoke_cross_harness_switch requires the source harness session id"};let J=re.get(X);if(J===void 0)return{TAG:"Error",_0:"no attached session for the requested cross-harness switch"};let K=Le(O,"targetHarness");if(K!==void 0&&K!=="claude-code")return{TAG:"Error",_0:"unsupported switch target for this session's harness: "+K};let w=Le(O,"model");if(w===void 0)return{TAG:"Error",_0:"invoke_cross_harness_switch requires an explicit model (D39)"};let C=Le(O,"targetSessionId"),P=C!==void 0?C:gw.randomUUID(),I=await J.invokeCrossHarnessSwitch(Vl(O,"sourceSeq"),w,P,He.contents,ta.homedir());if(I.TAG!=="Ok")return{TAG:"Error",_0:I._0};let F={};return F.instanceId=i,F.controlType="invoke_cross_harness_switch",F.harnessSessionId=X,Object.entries(I._0).forEach(D=>{F[D[0]]=D[1]}),{TAG:"Ok",_0:F}},zp=(O,X)=>VI(x(k(ke(O),J=>jr(J,"type")),"unknown"),()=>{let J=x(ke(O),{});t("kandan.control",Object.fromEntries([["control",O]]));let K=jr(J,"type");if(K===void 0)return{TAG:"Returned",_0:void 0};switch(K){case"replace_runner":return t("runner.replaced",Object.fromEntries([["runnerId",e.commanderId],["reason",x(J.reason,null)],["replacementRunnerId",x(J.replacementRunnerId,null)],["replacementVersion",x(J.replacementVersion,null)]])),go(),{TAG:"Returned",_0:void 0};case"set_commander_impl":let w=jr(J,"impl"),C=k(w,cS);if(C!==void 0){let pe=Ej(C),Fe=El(C)!==hw,Se=de(r.LINZUMI_SUPERVISED,"1")&&process.platform!=="win32";return t("runner.commander_impl_persisted",Object.fromEntries([["impl",El(C)],["persisted",pe],["runningImpl",hw],["restart",Fe?Se?"graceful_drain":"deferred_to_next_launch":"not_needed"]])),Fe&&Se&&Vi(process.pid,"SIGUSR2"),{TAG:"Returned",_0:void 0}}return t("runner.commander_impl_control_ignored",Object.fromEntries([["impl",Gn(w)],["reason","unknown_impl_value"]])),{TAG:"Returned",_0:void 0};default:let P=jr(J,"instanceId");if(P!==void 0&&P!==i)return t("kandan.control_ignored",Object.fromEntries([["reason","instance_id_mismatch"],["instanceId",i],["controlInstanceId",Gn(jr(J,"instanceId"))],["controlType",K]])),{TAG:"Returned",_0:void 0};let I=Vl(J,"control_seq"),F;if(K==="start_turn"&&I!==void 0){let pe=ZR(n,x(jr(J,"threadId"),"undefined"));F=WI(d.initial(pe),I)?"SkipReplayedStartTurn":{TAG:"Dispatch",commit:()=>ZI({onAdvance:d.onAdvance,flush:d.flush},pe,I)}}else F={TAG:"Dispatch",commit:void 0};if(typeof F!="object")return t("kandan.start_turn_replay_skipped",Object.fromEntries([["controlType",K],["controlSeq",x(J.control_seq,null)]])),{TAG:"Returned",_0:void 0};let D=F.commit,ie=(async()=>{let pe;switch(K){case"invoke_cross_harness_switch":pe=await kw(J);break;case"reconnect_thread":pe=await Pt(J);break;case"start_instance":pe=await na(J);break;case"start_turn":pe=await Hl(J);break;default:pe={TAG:"Error",_0:"unsupported control type for this commander: "+K}}return pe.TAG==="Ok"?(D!==void 0&&D(),await q(pe._0)):await Ee(pe._0),null})();return Ue(ie.then(pe=>{})),{TAG:"Pending",_0:ie}}},X,t,void 0);m.contents=zp;let xw=p.slice();return p.splice(0,p.length),xw.forEach(O=>zp(O[0],O[1])),{TAG:"Ok",_0:{close:()=>go()}}}return g.close(),{TAG:"Error",_0:Z._0}}return g.close(),{TAG:"Error",_0:ri(v._0)}}function Zi(e){mr("linzumi (rescript commander): "+e+`
|
|
879
|
-
`),Jl(1)}var
|
|
880
|
-
`,"utf8");return}catch{return}}function
|
|
878
|
+
`+C,ds.payload=Object.fromEntries([["metadata",Object.fromEntries([["local_codex_runner",ai]])]]),await Ge("session:post_thread_message",ds)}}let zt=Le(O,"workspace"),br=Le(O,"channel"),gr=Le(O,"threadId"),or;if(Oe!==void 0&&zt!==void 0&&br!==void 0&&gr!==void 0){let vr=await dw({transport:g,commanderTopic:n,commanderId:e.commanderId,instanceId:i,harness:K,log:t,timers:ju,env:r,workspaceSlug:zt,channelSlug:br,threadId:gr,harnessSessionId:Oe,cwd:X,rootSeq:bw(O,"rootSeq"),defaults:{approvalPolicy:e.approvalPolicy,sandbox:e.sandbox,model:F.settingsModel,reasoningEffort:F.settingsReasoningEffort},actorSlug:o.actorUsername,actorUserId:o.actorUserId,leaseEpochFor:Hr=>L.current(Hr),commitAppliedSourceSeq:Hr=>{Au(u,ve(br,gr),Hr,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",gr],["channel",br],["sourceSeq",Hr]]))},switchProbe:Qe});if(vr.TAG==="Ok"){let Hr=vr._0;re.set(Oe,Hr),w&&K.onNotification(oi=>Hr.routeNotification(oi.method,x(k(oi.params,ke),{}))),or={TAG:"Ok",_0:Hr}}else or={TAG:"Error",_0:vr._0}}else or={TAG:"Ok",_0:void 0};if(or.TAG!=="Ok")return await Vr(O,"start_instance","BindingThread",or._0,Oe);let Nt=or._0,ar=ea(O),Gt=Oe!==void 0&&Zt!==void 0?Nt!==void 0&&ar!==void 0?await Nt.runClaimedTurn(ar,Zt):{TAG:"Error",_0:t5}:{TAG:"Ok",_0:void 0};if(Gt.TAG!=="Ok")return await Vr(O,"start_instance","StartingFirstTurn",Gt._0,Oe);let Ft={};return Ft.instanceId=i,Ft.controlType="start_instance",Ft.cwd=X,Ft.matchedRoot=J,Ft.response=Pe,{TAG:"Ok",_0:Ft}},te=(O,X)=>{let J=Gc(e.serviceUrl,e.token,void 0,new Date);if(J.TAG==="Ok"){let K=J._0,w=Vc(process.execPath,process.argv[1],process.execArgv),C=wu(e.token),P=Zs({command:w.command,argsPrefix:w.argsPrefix,serviceUrl:e.serviceUrl,authFilePath:K.path,ownerUsername:C.actorUsername,operatingMode:"Text",cwd:O,threadId:X,devServices:{scope:e.commanderId,ownerPid:process.pid}});return{servers:cx(P),cleanup:K.cleanup}}t("claude_code.mcp_config_failed",Object.fromEntries([["message",J._0.summary],["thread_id",X]]))},ne=(O,X,J,K,w,C,P,I)=>({adapter:I,pushEvent:Ge,log:t,workspace:J,channel:K,threadId:w,cwd:X,sourceSeq:ea(O),model:P.settingsModel,approvalPolicy:P.settingsApprovalPolicy,sandbox:P.settingsSandbox,workDescription:C,mcp:te(X,w)}),Ke=O=>{let X=Le(O,"channel"),J=Le(O,"threadId"),K=ea(O);if(X!==void 0&&J!==void 0&&K!==void 0)return Au(u,ve(X,J),K,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",J],["channel",X],["sourceSeq",K]]))},tt=(O,X,J,K)=>{let w={};return w.instanceId=i,w.controlType=O,w.agentProvider="claude-code",w.cwd=X,w.matchedRoot=J,w.response=Object.fromEntries([["session",Object.fromEntries([["id",K]])]]),w},st=async(O,X,J)=>{await It;let K=Fe=>Vr(O,"start_instance","StartingClaudeCodeSession",Fe,void 0),w=He.contents;if(w===void 0)return await K("claude-agent-sdk module not resolvable");let C=Le(O,"workspace"),P=Le(O,"channel"),I=Le(O,"threadId"),F=Le(O,"workDescription");if(C===void 0)return await K("start_instance control missing workspace");if(P===void 0)return await K("start_instance control missing channel");if(I===void 0)return await K("start_instance control missing threadId");if(F===void 0)return await K("start_instance control missing workDescription");let D=Mp(O,e.approvalPolicy,e.sandbox,e.defaultModel,e.defaultReasoningEffort);if(D.TAG!=="Ok")return await K(D._0);let ie=await y$(ne(O,X,C,P,I,F,D._0,w));if(ie.TAG!=="Ok")return await K(ie._0);let pe=ie._0;return Yt.set(pe.harnessSessionId,pe),Ke(O),{TAG:"Ok",_0:tt("start_instance",X,J,pe.harnessSessionId)}},ct=async(O,X,J)=>{await It;let K=Le(O,ls);if(K!==void 0){let C=Pe=>Vr(O,"reconnect_thread","StartingClaudeCodeSession",Pe,K),P=He.contents;if(P===void 0)return await C("claude-agent-sdk module not resolvable");let I=Le(O,"workspace"),F=Le(O,"channel"),D=Le(O,"threadId"),ie=Le(O,"workDescription");if(I===void 0)return await C("start_instance control missing workDescription");if(F===void 0)return await C("start_instance control missing workDescription");if(D===void 0)return await C("start_instance control missing workDescription");if(ie===void 0)return await C("start_instance control missing workDescription");let pe=ea(O);if(pe!==void 0?!Bm(u.initial(ve(F,D)),pe):!1){let Pe=ea(O);t("claude_code.replayed_turn_already_applied_ignored",Object.fromEntries([["linzumi_thread_id",D],["claude_session_id",K],["source_seq",Pe!==void 0?Pe:null]]));let Oe={};return Oe.instanceId=i,Oe.controlType="reconnect_thread",Oe.agentProvider="claude-code",Oe.cwd=X,Oe.matchedRoot=J,Oe[ls]=K,Oe.queuedInput=!0,Oe.duplicate=!0,{TAG:"Ok",_0:Oe}}let Se=_w(O,"reconnect_thread","processing","resuming Claude Code session",i,K);if(Se.TAG==="Ok"){let Pe=Se._0;Pe!==void 0&&Ge("message_state",Pe)}let Ce=Mp(O,e.approvalPolicy,e.sandbox,e.defaultModel,e.defaultReasoningEffort);if(Ce.TAG!=="Ok")return await C(Ce._0);let Ie=await b$(ne(O,X,I,F,D,ie,Ce._0,P),K);if(Ie.TAG!=="Ok")return await C(Ie._0);let ft=Ie._0;return Yt.set(ft.harnessSessionId,ft),Ke(O),{TAG:"Ok",_0:tt("reconnect_thread",X,J,ft.harnessSessionId)}}let w={};return w.instanceId=i,w.controlType="reconnect_thread",w.ok=!1,w.error="missing_codex_thread_id",{TAG:"Ok",_0:w}},Pt=async O=>{let X=Oj(jr(O,"cwd"),f.contents);if(X.TAG==="AllowedCwd"){let J=X.matchedRoot,K=X.cwd,w=yw(O),C=await fn(w),P=0;if(typeof w!="object")P=1;else{let I={};return I.instanceId=i,I.controlType="reconnect_thread",I.ok=!1,I.error="agent_provider_unsupported:"+w._0,{TAG:"Ok",_0:I}}if(P===1)if(C){if(typeof w!="object"){if(w!=="CodexProvider")return await ct(O,K,J);if(e.harnessUrl!==void 0)return j!==void 0?await _e(O,K,J,j,!1):{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let F=Le(O,"workspace"),D=Le(O,"channel"),ie=Le(O,"threadId"),pe=0;if(F!==void 0&&D!==void 0&&ie!==void 0){if(ra(ie)!==void 0)return{TAG:"Ok",_0:tn("reconnect_thread",ie,K)};let Se=Zl(O),Ce=0;if(typeof Se!="object"||Se.TAG==="Provider")Ce=3;else{let Ie={};return Ie.instanceId=i,Ie.controlType="reconnect_thread",Ie.ok=!1,Ie.error=Se._0,Ie.kandanThreadId=ie,Ie.cwd=K,{TAG:"Ok",_0:Ie}}if(Ce===3){let Ie=Zl(O),ft;ft=typeof Ie!="object"||Ie.TAG!=="Provider"?void 0:Ie._0;let Pe=await _o(O,"reconnect_thread",K,F,ie,ft);return Pe.TAG==="Ok"?await _e(O,K,J,Pe._0.client,!0):{TAG:"Error",_0:Pe._0}}}else pe=2;if(pe===2)return j!==void 0?await _e(O,K,J,j,!1):{TAG:"Error",_0:"cannot reconnect a Kandan thread without a session"}}}else{await ki(O,"reconnect_thread","failed",Ej(w),void 0);let I={};return I.instanceId=i,I.controlType="reconnect_thread",I.ok=!1,I.error="agent_provider_unavailable:"+Cj(w),{TAG:"Ok",_0:I}}}else{let J=X.reason;await Fn(O,J);let K={};return K.instanceId=i,K.controlType="reconnect_thread",K.requestId=Gn(jr(O,"requestId")),K.ok=!1,K.error=J,K.allowedCwds=f.contents.map(w=>w),{TAG:"Ok",_0:K}}},vt={contents:void 0},Ct=async(O,X,J)=>{let K=async()=>{if(j===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let Se=Zl(O),Ce;if(typeof Se!="object")Ce=void 0;else if(Se.TAG==="Provider")if(Se._0.provider==="wafer")Ce="wafer_model_provider_requires_thread_worker";else{let Pe=G(r.OPENAI_API_KEY,Oe=>Oe.trim());Ce=Pe!==void 0&&Pe!==""?"llm_proxy_model_provider_requires_thread_worker":"codex llm proxy requires API-key auth (OPENAI_API_KEY in the environment or $CODEX_HOME/auth.json); ChatGPT OAuth credentials cannot be forwarded"}else Ce=Se._0;if(Ce===void 0)return await H(O,X,J,j,!1);await ki(O,"start_instance","failed",Ce,void 0);let Ie={};return Ie.instanceId=i,Ie.controlType="start_instance",Ie.ok=!1,Ie.error=Ce,{TAG:"Ok",_0:Ie}};if(e.harnessUrl!==void 0)return await K();let C=Le(O,"workspace"),P=Le(O,"channel"),I=Le(O,"threadId");if(C===void 0)return await K();if(P===void 0)return await K();if(I===void 0)return await K();if(ra(I)!==void 0)return{TAG:"Ok",_0:tn("start_instance",I,X)};let D=Zl(O);if(typeof D=="object"&&D.TAG!=="Provider"){let Se={};return Se.instanceId=i,Se.controlType="start_instance",Se.ok=!1,Se.error=D._0,Se.kandanThreadId=I,Se.cwd=X,{TAG:"Ok",_0:Se}}let ie=Zl(O),pe;pe=typeof ie!="object"||ie.TAG!=="Provider"?void 0:ie._0;let Fe=await _o(O,"start_instance",X,C,I,pe);return Fe.TAG==="Ok"?await H(O,X,X,Fe._0.client,!0):await Vr(O,"start_instance","StartingCodexSession",Fe._0,void 0)},go=()=>{let O=vt.contents;if(O!==void 0)return O;let X=(async()=>{s.contents=!0,clearInterval(Xe);let J=0,K=0;for(;J<3&&K<2e3;)K=K+1|0,J=Ae.contents===0?J+1|0:0,await X6();let w=re.values().toArray();for(let P=0,I=w.length;P<I;++P){let F=w[P];F!==void 0&&await F.close()}let C=Yt.values().toArray();for(let P=0,I=C.length;P<I;++P){let F=C[P];F!==void 0&&await F.stop()}return Be.values().toArray().forEach(P=>P.close()),j!==void 0&&j.close(),M!==void 0&&M.stop(),g.close(),l.flush(),d.flush()})();return vt.contents=X,X},na=async O=>{let X=Oj(jr(O,"cwd"),f.contents),J=yw(O);if(typeof J=="object"){let C={};return C.instanceId=i,C.controlType="start_instance",C.ok=!1,C.error="agent_provider_unsupported:"+J._0,{TAG:"Ok",_0:C}}if(X.TAG==="AllowedCwd"){let C=X.matchedRoot,P=X.cwd;if(await fn(J)){let F=_w(O,"start_instance","processing","starting "+Q6(J)+" session",i,void 0);if(F.TAG!=="Ok")return{TAG:"Error",_0:F._0};let D=F._0;return D!==void 0&&Ge("message_state",D),typeof J!="object"?J==="CodexProvider"?await Ct(O,P,C):await st(O,P,C):await Ct(O,P,C)}await ki(O,"start_instance","failed",Ej(J),void 0);let I={};return I.instanceId=i,I.controlType="start_instance",I.ok=!1,I.error="agent_provider_unavailable:"+Cj(J),{TAG:"Ok",_0:I}}let K=X.reason;t("kandan.start_instance_cwd_rejected",Object.fromEntries([["thread_id",Gn(Le(O,"threadId"))],["reason",K],["allowedCwdCount",f.contents.length]])),await Fn(O,K);let w={};return w.instanceId=i,w.controlType="start_instance",w.requestId=Gn(jr(O,"requestId")),w.ok=!1,w.error=K,w.allowedCwds=f.contents.map(C=>C),{TAG:"Ok",_0:w}},Hl=async O=>{if(j===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let X={},J=jr(O,"threadId");J!==void 0&&(X.threadId=J);let K=O.input;K!==void 0&&(X.input=K);let w=await j.request("turn/start",X);if(w.TAG!=="Ok")return{TAG:"Error",_0:w._0};let C=w._0;if(C.TAG!=="ResultReply")return{TAG:"Error",_0:C.message};let P={};return P.instanceId=i,P.controlType="start_turn",P.response=C._0,{TAG:"Ok",_0:P}},kw=async O=>{let X=Le(O,"harnessSessionId");if(X===void 0)return{TAG:"Error",_0:"invoke_cross_harness_switch requires the source harness session id"};let J=re.get(X);if(J===void 0)return{TAG:"Error",_0:"no attached session for the requested cross-harness switch"};let K=Le(O,"targetHarness");if(K!==void 0&&K!=="claude-code")return{TAG:"Error",_0:"unsupported switch target for this session's harness: "+K};let w=Le(O,"model");if(w===void 0)return{TAG:"Error",_0:"invoke_cross_harness_switch requires an explicit model (D39)"};let C=Le(O,"targetSessionId"),P=C!==void 0?C:gw.randomUUID(),I=await J.invokeCrossHarnessSwitch(Vl(O,"sourceSeq"),w,P,He.contents,ta.homedir());if(I.TAG!=="Ok")return{TAG:"Error",_0:I._0};let F={};return F.instanceId=i,F.controlType="invoke_cross_harness_switch",F.harnessSessionId=X,Object.entries(I._0).forEach(D=>{F[D[0]]=D[1]}),{TAG:"Ok",_0:F}},zp=(O,X)=>VI(x(k(ke(O),J=>jr(J,"type")),"unknown"),()=>{let J=x(ke(O),{});t("kandan.control",Object.fromEntries([["control",O]]));let K=jr(J,"type");if(K===void 0)return{TAG:"Returned",_0:void 0};switch(K){case"replace_runner":return t("runner.replaced",Object.fromEntries([["runnerId",e.commanderId],["reason",x(J.reason,null)],["replacementRunnerId",x(J.replacementRunnerId,null)],["replacementVersion",x(J.replacementVersion,null)]])),go(),{TAG:"Returned",_0:void 0};case"set_commander_impl":let w=jr(J,"impl"),C=k(w,cS);if(C!==void 0){let pe=Pj(C),Fe=El(C)!==hw,Se=de(r.LINZUMI_SUPERVISED,"1")&&process.platform!=="win32";return t("runner.commander_impl_persisted",Object.fromEntries([["impl",El(C)],["persisted",pe],["runningImpl",hw],["restart",Fe?Se?"graceful_drain":"deferred_to_next_launch":"not_needed"]])),Fe&&Se&&Vi(process.pid,"SIGUSR2"),{TAG:"Returned",_0:void 0}}return t("runner.commander_impl_control_ignored",Object.fromEntries([["impl",Gn(w)],["reason","unknown_impl_value"]])),{TAG:"Returned",_0:void 0};default:let P=jr(J,"instanceId");if(P!==void 0&&P!==i)return t("kandan.control_ignored",Object.fromEntries([["reason","instance_id_mismatch"],["instanceId",i],["controlInstanceId",Gn(jr(J,"instanceId"))],["controlType",K]])),{TAG:"Returned",_0:void 0};let I=Vl(J,"control_seq"),F;if(K==="start_turn"&&I!==void 0){let pe=ZR(n,x(jr(J,"threadId"),"undefined"));F=WI(d.initial(pe),I)?"SkipReplayedStartTurn":{TAG:"Dispatch",commit:()=>ZI({onAdvance:d.onAdvance,flush:d.flush},pe,I)}}else F={TAG:"Dispatch",commit:void 0};if(typeof F!="object")return t("kandan.start_turn_replay_skipped",Object.fromEntries([["controlType",K],["controlSeq",x(J.control_seq,null)]])),{TAG:"Returned",_0:void 0};let D=F.commit,ie=(async()=>{let pe;switch(K){case"invoke_cross_harness_switch":pe=await kw(J);break;case"reconnect_thread":pe=await Pt(J);break;case"start_instance":pe=await na(J);break;case"start_turn":pe=await Hl(J);break;default:pe={TAG:"Error",_0:"unsupported control type for this commander: "+K}}return pe.TAG==="Ok"?(D!==void 0&&D(),await q(pe._0)):await Ee(pe._0),null})();return Ue(ie.then(pe=>{})),{TAG:"Pending",_0:ie}}},X,t,void 0);m.contents=zp;let xw=p.slice();return p.splice(0,p.length),xw.forEach(O=>zp(O[0],O[1])),{TAG:"Ok",_0:{close:()=>go()}}}return g.close(),{TAG:"Error",_0:Z._0}}return g.close(),{TAG:"Error",_0:ri(v._0)}}function Zi(e){mr("linzumi (rescript commander): "+e+`
|
|
879
|
+
`),Jl(1)}var a5=["workspace","channel","api-url","linzumi-url","token","auth-file","cwd","allowed-cwd","codex-url","codex-bin","approval-policy","sandbox","code-server-bin","log-file","model","reasoning-effort","model-provider","llm-proxy-base-url"],s5=["version","help","launch-tui","fast","no-onboarding-discovery","allow-port-forwarding-by-default"];function l5(e){let t={},r={},n=[],i=0;for(;i<e.length;){let o=x(e[i],"");if(o.startsWith("--")){let a=o.slice(2,o.length),s=s5.includes(a),l=a5.includes(a);if(s)r[a]=!0,i=i+1|0;else if(l){let d=e[i+1|0];d!==void 0?t[a]=d:n.push(o+" (missing value)"),i=i+2|0}else n.push(o),i=i+1|0}else i=i+1|0}return{values:t,switches:r,unknown:n}}var Sw={};Av.forEach(e=>{Sw[e[0]]=e[1]});var ww={};Av.forEach(e=>{ww[e[1]]=e[0]});function d5(e,t,r){let n=jm(r),i=zm(n),o={};if(o.ts=new Date().toISOString(),o.event=t,Pv()){let a=Sw[t];if(a!==void 0)o.event_canonical=a;else{let s=ww[t];s!==void 0&&(o.event_legacy=s)}}Aw(i,(a,s)=>{o[s]=a});try{Ij.appendFileSync(e,JSON.stringify(o)+`
|
|
880
|
+
`,"utf8");return}catch{return}}function vne(e){return e.summary}async function vw(e){let t=l5(e),r=t.switches.version,n=0;if(r!==void 0){if(r){process.stdout.write(Ev()+`
|
|
881
881
|
`);return}n=1}else n=1;if(n===1){let i=t.switches.help,o=0;if(i!==void 0){if(i)return Zi("connect --help is not yet implemented in the rescript commander; run the ts impl (LINZUMI_COMMANDER_IMPL=ts) for the full guide");o=2}else o=2;if(o===2){if(t.unknown.length!==0)return Zi("these connect flags are not yet implemented in the rescript commander: "+t.unknown.join(", "));let a=process.env,s=x(cs(t.values["api-url"],t.values["linzumi-url"]),$s),l=t.values.workspace,d=jc(a),u=zc(d,s,void 0);if(u.TAG!=="Ok")return Zi("could not resolve the commander id: "+u._0.summary);let c=u._0,f=await Nc({serviceUrl:s,explicitToken:t.values.token,workspaceSlug:l,channelSlug:t.values.channel,requiredScopes:[],onboarding:void 0,authFilePath:t.values["auth-file"],callbackHost:void 0,authMode:void 0,reportRejectedCachedToken:L=>{mr(pk(L)+`
|
|
882
882
|
`)}},void 0);if(f.TAG!=="Ok")return Zi("authentication failed: "+f._0.summary);let p=f._0,m=t.values.cwd,h=m!==void 0?js(a,m):process.cwd(),_=t.values["allowed-cwd"],g;if(_!==void 0)g=_.split(",").map(L=>L.trim()).filter(L=>L!=="").map(L=>js(a,L));else{let L=tk(d,s);g=L.TAG==="Ok"?L._0.allowedCwds:[]}let b=Ve([h].concat(g),[],(L,ae)=>L.includes(ae)?L:L.concat([ae])),y=l!==void 0?l:aP(p);if(y===void 0)return Zi("connect requires a workspace (pass --workspace or use a workspace-scoped token)");let v=(L,ae)=>{process.stdout.write(L+" "+JSON.stringify(ae)+`
|
|
883
|
-
`)},S=t.values["log-file"],A;if(S!==void 0){let L=
|
|
884
|
-
`),A=(ae,U)=>{v(ae,U),
|
|
885
|
-
`);return}}}async function
|
|
883
|
+
`)},S=t.values["log-file"],A;if(S!==void 0){let L=Lt($j.dirname(S));L.TAG!=="Ok"&&mr("linzumi (rescript commander): could not create the --log-file directory ("+L._0.message+`); log writes will still be attempted
|
|
884
|
+
`),A=(ae,U)=>{v(ae,U),d5(S,ae,U)}}else A=v;let R=$m(G(t.values["codex-bin"],L=>js(a,L)),Rm(),L=>{mr(L)},Im,a,void 0);if(R.TAG!=="Ok")return Zi(R._0);let W=await Rj({serviceUrl:s,token:p,commanderId:c,workspaceSlug:y,cwd:h,harnessUrl:t.values["codex-url"],harnessBin:R._0.codexBin,allowedCwds:b,approvalPolicy:t.values["approval-policy"],sandbox:t.values.sandbox,logFile:t.values["log-file"],codeServerBin:t.values["code-server-bin"],defaultModel:t.values.model,defaultReasoningEffort:t.values["reasoning-effort"]},A);if(W.TAG!=="Ok")return Zi(W._0);process.stdout.write("Connected to Linzumi (rescript commander "+ku()+") as "+c+`
|
|
885
|
+
`);return}}}async function Sne(e){let t=e[0];if(t===void 0)return Zi("the first-run guide is not yet implemented in the rescript commander; pass connect arguments or run the ts impl (LINZUMI_COMMANDER_IMPL=ts)");switch(t){case"--version":process.stdout.write(Ev()+`
|
|
886
886
|
`);return;case"connect":case"local-codex-runner":break;case"mcp":let r=0,n;try{n=await JE(Dw(e)),r=2}catch(o){let a=ee(o);return mr("linzumi mcp server failed: "+gs(a)+`
|
|
887
887
|
`),Jl(1)}if(r===2)return n.TAG==="Ok"?void 0:(mr("linzumi mcp server failed: "+n._0+`
|
|
888
|
-
`),Jl(1));break;case"run":switch($I(process.env,!1)){case"ThreadWorkerRole":let o=await
|
|
888
|
+
`),Jl(1));break;case"run":switch($I(process.env,!1)){case"ThreadWorkerRole":let o=await wj(e.slice(1,e.length));return o===0?void 0:Jl(o);case"SupervisorRole":case"CommanderRole":return await vw(e.slice(1))}case"start":return await vw(e.slice(1));default:return Zi('the "'+t+'" subcommand is not yet implemented in the rescript commander; run the ts impl (LINZUMI_COMMANDER_IMPL=ts)')}return e.length>1?await vw(e.slice(1)):Zi("the first-run guide is not yet implemented in the rescript commander; pass connect arguments or run the ts impl (LINZUMI_COMMANDER_IMPL=ts)")}var wne=Sw,kne=ww;export{d5 as appendDriverLogLine,s5 as connectSwitchFlags,a5 as connectValueFlags,wne as logFileEventCanonicalByLegacy,kne as logFileEventLegacyByCanonical,Sne as main,l5 as parseConnectFlags,Zi as refuse,vw as runConnect,vne as schemaFailureMessage};
|