@linzumi/cli 1.0.139 → 1.0.140

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.
@@ -1,13 +1,13 @@
1
1
  import { createRequire } from 'node:module';
2
2
  const require = createRequire(import.meta.url);
3
- var wM=Object.create;var bp=Object.defineProperty;var kM=Object.getOwnPropertyDescriptor;var xM=Object.getOwnPropertyNames;var TM=Object.getPrototypeOf,AM=Object.prototype.hasOwnProperty;var fe=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),vp=(e,t)=>{for(var r in t)bp(e,r,{get:t[r],enumerable:!0})},OM=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of xM(t))!AM.call(e,i)&&i!==r&&bp(e,i,{get:()=>t[i],enumerable:!(n=kM(t,i))||n.enumerable});return e};var KS=(e,t,r)=>(r=e!=null?wM(TM(e)):{},OM(t||!e||!e.__esModule?bp(r,"default",{value:e,enumerable:!0}):r,e));var Dd=fe(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 Gd=class{};xt._CodeOrName=Gd;xt.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Ga=class extends Gd{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=Ga;var Bn=class extends Gd{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 Ga&&(r[n.str]=(r[n.str]||0)+1),r),{})}};xt._Code=Bn;xt.nil=new Bn("");function xA(e,...t){let r=[e[0]],n=0;for(;n<t.length;)dy(r,t[n]),r.push(e[++n]);return new Bn(r)}xt._=xA;var ly=new Bn("+");function TA(e,...t){let r=[Fd(e[0])],n=0;for(;n<t.length;)r.push(ly),dy(r,t[n]),r.push(ly,Fd(e[++n]));return WD(r),new Bn(r)}xt.str=TA;function dy(e,t){t instanceof Bn?e.push(...t._items):t instanceof Ga?e.push(t):e.push(BD(t))}xt.addCodeArg=dy;function WD(e){let t=1;for(;t<e.length-1;){if(e[t]===ly){let r=VD(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function VD(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof Ga||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 Ga))return`"${e}${t.slice(1)}`}function HD(e,t){return t.emptyStr()?e:e.emptyStr()?t:TA`${e}${t}`}xt.strConcat=HD;function BD(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Fd(Array.isArray(e)?e.join(","):e)}function KD(e){return new Bn(Fd(e))}xt.stringify=KD;function Fd(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}xt.safeStringify=Fd;function JD(e){return typeof e=="string"&&xt.IDENTIFIER.test(e)?new Bn(`.${e}`):xA`[${e}]`}xt.getProperty=JD;function YD(e){if(typeof e=="string"&&xt.IDENTIFIER.test(e))return new Bn(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}xt.getEsmExportName=YD;function XD(e){return new Bn(e.toString())}xt.regexpCode=XD});var fy=fe(Sn=>{"use strict";Object.defineProperty(Sn,"__esModule",{value:!0});Sn.ValueScope=Sn.ValueScopeName=Sn.Scope=Sn.varKinds=Sn.UsedValueState=void 0;var vn=Dd(),uy=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},Ef;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Ef||(Sn.UsedValueState=Ef={}));Sn.varKinds={const:new vn.Name("const"),let:new vn.Name("let"),var:new vn.Name("var")};var Pf=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof vn.Name?t:this.name(t)}name(t){return new vn.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}}};Sn.Scope=Pf;var Rf=class extends vn.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,vn._)`.${new vn.Name(r)}[${n}]`}};Sn.ValueScopeName=Rf;var QD=(0,vn._)`\n`,cy=class extends Pf{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?QD:vn.nil}}get(){return this._scope}name(t){return new Rf(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,vn._)`${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=vn.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,Ef.Started);let u=r(d);if(u){let c=this.opts.es5?Sn.varKinds.var:Sn.varKinds.const;o=(0,vn._)`${o}${c} ${d} = ${u};${this.opts._n}`}else if(u=i?.(d))o=(0,vn._)`${o}${u}${this.opts._n}`;else throw new uy(d);l.set(d,Ef.Completed)})}return o}};Sn.ValueScope=cy});var it=fe(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 vt=Dd(),mi=fy(),$o=Dd();Object.defineProperty(at,"_",{enumerable:!0,get:function(){return $o._}});Object.defineProperty(at,"str",{enumerable:!0,get:function(){return $o.str}});Object.defineProperty(at,"strConcat",{enumerable:!0,get:function(){return $o.strConcat}});Object.defineProperty(at,"nil",{enumerable:!0,get:function(){return $o.nil}});Object.defineProperty(at,"getProperty",{enumerable:!0,get:function(){return $o.getProperty}});Object.defineProperty(at,"stringify",{enumerable:!0,get:function(){return $o.stringify}});Object.defineProperty(at,"regexpCode",{enumerable:!0,get:function(){return $o.regexpCode}});Object.defineProperty(at,"Name",{enumerable:!0,get:function(){return $o.Name}});var jf=fy();Object.defineProperty(at,"Scope",{enumerable:!0,get:function(){return jf.Scope}});Object.defineProperty(at,"ValueScope",{enumerable:!0,get:function(){return jf.ValueScope}});Object.defineProperty(at,"ValueScopeName",{enumerable:!0,get:function(){return jf.ValueScopeName}});Object.defineProperty(at,"varKinds",{enumerable:!0,get:function(){return jf.varKinds}});at.operators={GT:new vt._Code(">"),GTE:new vt._Code(">="),LT:new vt._Code("<"),LTE:new vt._Code("<="),EQ:new vt._Code("==="),NEQ:new vt._Code("!=="),NOT:new vt._Code("!"),OR:new vt._Code("||"),AND:new vt._Code("&&"),ADD:new vt._Code("+")};var io=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},my=class extends io{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?mi.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=Ys(this.rhs,t,r)),this}get names(){return this.rhs instanceof vt._CodeOrName?this.rhs.names:{}}},If=class extends io{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 vt.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=Ys(this.rhs,t,r),this}get names(){let t=this.lhs instanceof vt.Name?{}:{...this.lhs.names};return Mf(t,this.rhs)}},py=class extends If{constructor(t,r,n,i){super(t,n,i),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},hy=class extends io{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},_y=class extends io{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},gy=class extends io{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},yy=class extends io{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=Ys(this.code,t,r),this}get names(){return this.code instanceof vt._CodeOrName?this.code.names:{}}},qd=class extends io{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)||(eq(t,o.names),n.splice(i,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>qa(t,r.names),{})}},oo=class extends qd{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},by=class extends qd{},Js=class extends oo{};Js.kind="else";var Fa=class e extends oo{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 Js(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(AA(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=Ys(this.condition,t,r),this}get names(){let t=super.names;return Mf(t,this.condition),this.else&&qa(t,this.else.names),t}};Fa.kind="if";var Da=class extends oo{};Da.kind="for";var vy=class extends Da{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=Ys(this.iteration,t,r),this}get names(){return qa(super.names,this.iteration.names)}},Sy=class extends Da{constructor(t,r,n,i){super(),this.varKind=t,this.name=r,this.from=n,this.to=i}render(t){let r=t.es5?mi.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=Mf(super.names,this.from);return Mf(t,this.to)}},$f=class extends Da{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=Ys(this.iterable,t,r),this}get names(){return qa(super.names,this.iterable.names)}},Ld=class extends oo{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)}};Ld.kind="func";var Ud=class extends qd{render(t){return"return "+super.render(t)}};Ud.kind="return";var wy=class extends oo{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&&qa(t,this.catch.names),this.finally&&qa(t,this.finally.names),t}},Zd=class extends oo{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};Zd.kind="catch";var Wd=class extends oo{render(t){return"finally"+super.render(t)}};Wd.kind="finally";var ky=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
4
- `:""},this._extScope=t,this._scope=new mi.Scope({parent:t}),this._nodes=[new by]}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 my(t,o,n)),o}const(t,r,n){return this._def(mi.varKinds.const,t,r,n)}let(t,r,n){return this._def(mi.varKinds.let,t,r,n)}var(t,r,n){return this._def(mi.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new If(t,r,n))}add(t,r){return this._leafNode(new py(t,at.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==vt.nil&&this._leafNode(new yy(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,vt.addCodeArg)(r,i));return r.push("}"),new vt._Code(r)}if(t,r,n){if(this._blockNode(new Fa(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 Fa(t))}else(){return this._elseNode(new Js)}endIf(){return this._endBlockNode(Fa,Js)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new vy(t),r)}forRange(t,r,n,i,o=this.opts.es5?mi.varKinds.var:mi.varKinds.let){let a=this._scope.toName(t);return this._for(new Sy(o,a,r,n),()=>i(a))}forOf(t,r,n,i=mi.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let a=r instanceof vt.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,vt._)`${a}.length`,s=>{this.var(o,(0,vt._)`${a}[${s}]`),n(o)})}return this._for(new $f("of",i,o,r),()=>n(o))}forIn(t,r,n,i=this.opts.es5?mi.varKinds.var:mi.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,vt._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new $f("in",i,o,r),()=>n(o))}endFor(){return this._endBlockNode(Da)}label(t){return this._leafNode(new hy(t))}break(t){return this._leafNode(new _y(t))}return(t){let r=new Ud;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Ud)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let i=new wy;if(this._blockNode(i),this.code(t),r){let o=this.name("e");this._currNode=i.catch=new Zd(o),r(o)}return n&&(this._currNode=i.finally=new Wd,this.code(n)),this._endBlockNode(Zd,Wd)}throw(t){return this._leafNode(new gy(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=vt.nil,n,i){return this._blockNode(new Ld(t,r,n)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(Ld)}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 Fa))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=ky;function qa(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Mf(e,t){return t instanceof vt._CodeOrName?qa(e,t.names):e}function Ys(e,t,r){if(e instanceof vt.Name)return n(e);if(!i(e))return e;return new vt._Code(e._items.reduce((o,a)=>(a instanceof vt.Name&&(a=n(a)),a instanceof vt._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 vt._Code&&o._items.some(a=>a instanceof vt.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function eq(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function AA(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,vt._)`!${xy(e)}`}at.not=AA;var tq=OA(at.operators.AND);function rq(...e){return e.reduce(tq)}at.and=rq;var nq=OA(at.operators.OR);function iq(...e){return e.reduce(nq)}at.or=iq;function OA(e){return(t,r)=>t===vt.nil?r:r===vt.nil?t:(0,vt._)`${xy(t)} ${e} ${xy(r)}`}function xy(e){return e instanceof vt.Name?e:(0,vt._)`(${e})`}});var Tt=fe(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 qt=it(),oq=Dd();function aq(e){let t={};for(let r of e)t[r]=!0;return t}dt.toHash=aq;function sq(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(PA(e,t),!RA(t,e.self.RULES.all))}dt.alwaysValidSchema=sq;function PA(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]||MA(e,`unknown keyword: "${o}"`)}dt.checkUnknownRules=PA;function RA(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}dt.schemaHasRules=RA;function lq(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=lq;function dq({topSchemaRef:e,schemaPath:t},r,n,i){if(!i){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,qt._)`${r}`}return(0,qt._)`${e}${t}${(0,qt.getProperty)(n)}`}dt.schemaRefOrVal=dq;function uq(e){return IA(decodeURIComponent(e))}dt.unescapeFragment=uq;function cq(e){return encodeURIComponent(Ay(e))}dt.escapeFragment=cq;function Ay(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}dt.escapeJsonPointer=Ay;function IA(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}dt.unescapeJsonPointer=IA;function fq(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}dt.eachItem=fq;function CA({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(i,o,a,s)=>{let l=a===void 0?o:a instanceof qt.Name?(o instanceof qt.Name?e(i,o,a):t(i,o,a),a):o instanceof qt.Name?(t(i,a,o),o):r(o,a);return s===qt.Name&&!(l instanceof qt.Name)?n(i,l):l}}dt.mergeEvaluated={props:CA({mergeNames:(e,t,r)=>e.if((0,qt._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,qt._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,qt._)`${r} || {}`).code((0,qt._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,qt._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,qt._)`${r} || {}`),Oy(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:$A}),items:CA({mergeNames:(e,t,r)=>e.if((0,qt._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,qt._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,qt._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,qt._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function $A(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,qt._)`{}`);return t!==void 0&&Oy(e,r,t),r}dt.evaluatedPropsToName=$A;function Oy(e,t,r){Object.keys(r).forEach(n=>e.assign((0,qt._)`${t}${(0,qt.getProperty)(n)}`,!0))}dt.setEvaluated=Oy;var EA={};function mq(e,t){return e.scopeValue("func",{ref:t,code:EA[t.code]||(EA[t.code]=new oq._Code(t.code))})}dt.useFunc=mq;var Ty;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(Ty||(dt.Type=Ty={}));function pq(e,t,r){if(e instanceof qt.Name){let n=t===Ty.Num;return r?n?(0,qt._)`"[" + ${e} + "]"`:(0,qt._)`"['" + ${e} + "']"`:n?(0,qt._)`"/" + ${e}`:(0,qt._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,qt.getProperty)(e).toString():"/"+Ay(e)}dt.getErrorPath=pq;function MA(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=MA});var ao=fe(Cy=>{"use strict";Object.defineProperty(Cy,"__esModule",{value:!0});var Jr=it(),hq={data:new Jr.Name("data"),valCxt:new Jr.Name("valCxt"),instancePath:new Jr.Name("instancePath"),parentData:new Jr.Name("parentData"),parentDataProperty:new Jr.Name("parentDataProperty"),rootData:new Jr.Name("rootData"),dynamicAnchors:new Jr.Name("dynamicAnchors"),vErrors:new Jr.Name("vErrors"),errors:new Jr.Name("errors"),this:new Jr.Name("this"),self:new Jr.Name("self"),scope:new Jr.Name("scope"),json:new Jr.Name("json"),jsonPos:new Jr.Name("jsonPos"),jsonLen:new Jr.Name("jsonLen"),jsonPart:new Jr.Name("jsonPart")};Cy.default=hq});var Vd=fe(Yr=>{"use strict";Object.defineProperty(Yr,"__esModule",{value:!0});Yr.extendErrors=Yr.resetErrorsCount=Yr.reportExtraError=Yr.reportError=Yr.keyword$DataError=Yr.keywordError=void 0;var wt=it(),zf=Tt(),an=ao();Yr.keywordError={message:({keyword:e})=>(0,wt.str)`must pass "${e}" keyword validation`};Yr.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,wt.str)`"${e}" keyword must be ${t} ($data)`:(0,wt.str)`"${e}" keyword is invalid ($data)`};function _q(e,t=Yr.keywordError,r,n){let{it:i}=e,{gen:o,compositeRule:a,allErrors:s}=i,l=NA(e,t,r);n??(a||s)?jA(o,l):zA(i,(0,wt._)`[${l}]`)}Yr.reportError=_q;function gq(e,t=Yr.keywordError,r){let{it:n}=e,{gen:i,compositeRule:o,allErrors:a}=n,s=NA(e,t,r);jA(i,s),o||a||zA(n,an.default.vErrors)}Yr.reportExtraError=gq;function yq(e,t){e.assign(an.default.errors,t),e.if((0,wt._)`${an.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,wt._)`${an.default.vErrors}.length`,t),()=>e.assign(an.default.vErrors,null)))}Yr.resetErrorsCount=yq;function bq({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,an.default.errors,s=>{e.const(a,(0,wt._)`${an.default.vErrors}[${s}]`),e.if((0,wt._)`${a}.instancePath === undefined`,()=>e.assign((0,wt._)`${a}.instancePath`,(0,wt.strConcat)(an.default.instancePath,o.errorPath))),e.assign((0,wt._)`${a}.schemaPath`,(0,wt.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0,wt._)`${a}.schema`,r),e.assign((0,wt._)`${a}.data`,n))})}Yr.extendErrors=bq;function jA(e,t){let r=e.const("err",t);e.if((0,wt._)`${an.default.vErrors} === null`,()=>e.assign(an.default.vErrors,(0,wt._)`[${r}]`),(0,wt._)`${an.default.vErrors}.push(${r})`),e.code((0,wt._)`${an.default.errors}++`)}function zA(e,t){let{gen:r,validateName:n,schemaEnv:i}=e;i.$async?r.throw((0,wt._)`new ${e.ValidationError}(${t})`):(r.assign((0,wt._)`${n}.errors`,t),r.return(!1))}var La={keyword:new wt.Name("keyword"),schemaPath:new wt.Name("schemaPath"),params:new wt.Name("params"),propertyName:new wt.Name("propertyName"),message:new wt.Name("message"),schema:new wt.Name("schema"),parentSchema:new wt.Name("parentSchema")};function NA(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,wt._)`{}`:vq(e,t,r)}function vq(e,t,r={}){let{gen:n,it:i}=e,o=[Sq(i,r),wq(e,r)];return kq(e,t,o),n.object(...o)}function Sq({errorPath:e},{instancePath:t}){let r=t?(0,wt.str)`${e}${(0,zf.getErrorPath)(t,zf.Type.Str)}`:e;return[an.default.instancePath,(0,wt.strConcat)(an.default.instancePath,r)]}function wq({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let i=n?t:(0,wt.str)`${t}/${e}`;return r&&(i=(0,wt.str)`${i}${(0,zf.getErrorPath)(r,zf.Type.Str)}`),[La.schemaPath,i]}function kq(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([La.keyword,i],[La.params,typeof t=="function"?t(e):t||(0,wt._)`{}`]),l.messages&&n.push([La.message,typeof r=="function"?r(e):r]),l.verbose&&n.push([La.schema,a],[La.parentSchema,(0,wt._)`${u}${c}`],[an.default.data,o]),d&&n.push([La.propertyName,d])}});var FA=fe(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.boolOrEmptySchema=Xs.topBoolOrEmptySchema=void 0;var xq=Vd(),Tq=it(),Aq=ao(),Oq={message:"boolean schema is false"};function Cq(e){let{gen:t,schema:r,validateName:n}=e;r===!1?GA(e,!1):typeof r=="object"&&r.$async===!0?t.return(Aq.default.data):(t.assign((0,Tq._)`${n}.errors`,null),t.return(!0))}Xs.topBoolOrEmptySchema=Cq;function Eq(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),GA(e)):r.var(t,!0)}Xs.boolOrEmptySchema=Eq;function GA(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,xq.reportError)(i,Oq,void 0,t)}});var Ey=fe(Qs=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});Qs.getRules=Qs.isJSONType=void 0;var Pq=["string","number","integer","boolean","null","object","array"],Rq=new Set(Pq);function Iq(e){return typeof e=="string"&&Rq.has(e)}Qs.isJSONType=Iq;function $q(){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:{}}}Qs.getRules=$q});var Py=fe(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});Mo.shouldUseRule=Mo.shouldUseGroup=Mo.schemaHasRulesForType=void 0;function Mq({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&DA(e,n)}Mo.schemaHasRulesForType=Mq;function DA(e,t){return t.rules.some(r=>qA(e,r))}Mo.shouldUseGroup=DA;function qA(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))}Mo.shouldUseRule=qA});var Hd=fe(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.reportTypeError=Xr.checkDataTypes=Xr.checkDataType=Xr.coerceAndCheckDataType=Xr.getJSONTypes=Xr.getSchemaTypes=Xr.DataType=void 0;var jq=Ey(),zq=Py(),Nq=Vd(),tt=it(),LA=Tt(),el;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(el||(Xr.DataType=el={}));function Gq(e){let t=UA(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}Xr.getSchemaTypes=Gq;function UA(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(jq.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}Xr.getJSONTypes=UA;function Fq(e,t){let{gen:r,data:n,opts:i}=e,o=Dq(t,i.coerceTypes),a=t.length>0&&!(o.length===0&&t.length===1&&(0,zq.schemaHasRulesForType)(e,t[0]));if(a){let s=Iy(t,n,i.strictNumbers,el.Wrong);r.if(s,()=>{o.length?qq(e,t,o):$y(e)})}return a}Xr.coerceAndCheckDataType=Fq;var ZA=new Set(["string","number","integer","boolean","null"]);function Dq(e,t){return t?e.filter(r=>ZA.has(r)||t==="array"&&r==="array"):[]}function qq(e,t,r){let{gen:n,data:i,opts:o}=e,a=n.let("dataType",(0,tt._)`typeof ${i}`),s=n.let("coerced",(0,tt._)`undefined`);o.coerceTypes==="array"&&n.if((0,tt._)`${a} == 'object' && Array.isArray(${i}) && ${i}.length == 1`,()=>n.assign(i,(0,tt._)`${i}[0]`).assign(a,(0,tt._)`typeof ${i}`).if(Iy(t,i,o.strictNumbers),()=>n.assign(s,i))),n.if((0,tt._)`${s} !== undefined`);for(let d of r)(ZA.has(d)||d==="array"&&o.coerceTypes==="array")&&l(d);n.else(),$y(e),n.endIf(),n.if((0,tt._)`${s} !== undefined`,()=>{n.assign(i,s),Lq(e,s)});function l(d){switch(d){case"string":n.elseIf((0,tt._)`${a} == "number" || ${a} == "boolean"`).assign(s,(0,tt._)`"" + ${i}`).elseIf((0,tt._)`${i} === null`).assign(s,(0,tt._)`""`);return;case"number":n.elseIf((0,tt._)`${a} == "boolean" || ${i} === null
5
- || (${a} == "string" && ${i} && ${i} == +${i})`).assign(s,(0,tt._)`+${i}`);return;case"integer":n.elseIf((0,tt._)`${a} === "boolean" || ${i} === null
6
- || (${a} === "string" && ${i} && ${i} == +${i} && !(${i} % 1))`).assign(s,(0,tt._)`+${i}`);return;case"boolean":n.elseIf((0,tt._)`${i} === "false" || ${i} === 0 || ${i} === null`).assign(s,!1).elseIf((0,tt._)`${i} === "true" || ${i} === 1`).assign(s,!0);return;case"null":n.elseIf((0,tt._)`${i} === "" || ${i} === 0 || ${i} === false`),n.assign(s,null);return;case"array":n.elseIf((0,tt._)`${a} === "string" || ${a} === "number"
7
- || ${a} === "boolean" || ${i} === null`).assign(s,(0,tt._)`[${i}]`)}}}function Lq({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,tt._)`${t} !== undefined`,()=>e.assign((0,tt._)`${t}[${r}]`,n))}function Ry(e,t,r,n=el.Correct){let i=n===el.Correct?tt.operators.EQ:tt.operators.NEQ,o;switch(e){case"null":return(0,tt._)`${t} ${i} null`;case"array":o=(0,tt._)`Array.isArray(${t})`;break;case"object":o=(0,tt._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":o=a((0,tt._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":o=a();break;default:return(0,tt._)`typeof ${t} ${i} ${e}`}return n===el.Correct?o:(0,tt.not)(o);function a(s=tt.nil){return(0,tt.and)((0,tt._)`typeof ${t} == "number"`,s,r?(0,tt._)`isFinite(${t})`:tt.nil)}}Xr.checkDataType=Ry;function Iy(e,t,r,n){if(e.length===1)return Ry(e[0],t,r,n);let i,o=(0,LA.toHash)(e);if(o.array&&o.object){let a=(0,tt._)`typeof ${t} != "object"`;i=o.null?a:(0,tt._)`!${t} || ${a}`,delete o.null,delete o.array,delete o.object}else i=tt.nil;o.number&&delete o.integer;for(let a in o)i=(0,tt.and)(i,Ry(a,t,r,n));return i}Xr.checkDataTypes=Iy;var Uq={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,tt._)`{type: ${e}}`:(0,tt._)`{type: ${t}}`};function $y(e){let t=Zq(e);(0,Nq.reportError)(t,Uq)}Xr.reportTypeError=$y;function Zq(e){let{gen:t,data:r,schema:n}=e,i=(0,LA.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:i,schemaValue:i,parentSchema:n,params:{},it:e}}});var VA=fe(Nf=>{"use strict";Object.defineProperty(Nf,"__esModule",{value:!0});Nf.assignDefaults=void 0;var tl=it(),Wq=Tt();function Vq(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let i in r)WA(e,i,r[i].default);else t==="array"&&Array.isArray(n)&&n.forEach((i,o)=>WA(e,o,i.default))}Nf.assignDefaults=Vq;function WA(e,t,r){let{gen:n,compositeRule:i,data:o,opts:a}=e;if(r===void 0)return;let s=(0,tl._)`${o}${(0,tl.getProperty)(t)}`;if(i){(0,Wq.checkStrictMode)(e,`default is ignored for: ${s}`);return}let l=(0,tl._)`${s} === undefined`;a.useDefaults==="empty"&&(l=(0,tl._)`${l} || ${s} === null || ${s} === ""`),n.if(l,(0,tl._)`${s} = ${(0,tl.stringify)(r)}`)}});var Kn=fe(Gt=>{"use strict";Object.defineProperty(Gt,"__esModule",{value:!0});Gt.validateUnion=Gt.validateArray=Gt.usePattern=Gt.callValidateCode=Gt.schemaProperties=Gt.allSchemaProperties=Gt.noPropertyInData=Gt.propertyInData=Gt.isOwnProperty=Gt.hasPropFunc=Gt.reportMissingProp=Gt.checkMissingProp=Gt.checkReportMissingProp=void 0;var rr=it(),My=Tt(),jo=ao(),Hq=Tt();function Bq(e,t){let{gen:r,data:n,it:i}=e;r.if(zy(r,n,t,i.opts.ownProperties),()=>{e.setParams({missingProperty:(0,rr._)`${t}`},!0),e.error()})}Gt.checkReportMissingProp=Bq;function Kq({gen:e,data:t,it:{opts:r}},n,i){return(0,rr.or)(...n.map(o=>(0,rr.and)(zy(e,t,o,r.ownProperties),(0,rr._)`${i} = ${o}`)))}Gt.checkMissingProp=Kq;function Jq(e,t){e.setParams({missingProperty:t},!0),e.error()}Gt.reportMissingProp=Jq;function HA(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,rr._)`Object.prototype.hasOwnProperty`})}Gt.hasPropFunc=HA;function jy(e,t,r){return(0,rr._)`${HA(e)}.call(${t}, ${r})`}Gt.isOwnProperty=jy;function Yq(e,t,r,n){let i=(0,rr._)`${t}${(0,rr.getProperty)(r)} !== undefined`;return n?(0,rr._)`${i} && ${jy(e,t,r)}`:i}Gt.propertyInData=Yq;function zy(e,t,r,n){let i=(0,rr._)`${t}${(0,rr.getProperty)(r)} === undefined`;return n?(0,rr.or)(i,(0,rr.not)(jy(e,t,r))):i}Gt.noPropertyInData=zy;function BA(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}Gt.allSchemaProperties=BA;function Xq(e,t){return BA(t).filter(r=>!(0,My.alwaysValidSchema)(e,t[r]))}Gt.schemaProperties=Xq;function Qq({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:i,errorPath:o},it:a},s,l,d){let u=d?(0,rr._)`${e}, ${t}, ${n}${i}`:t,c=[[jo.default.instancePath,(0,rr.strConcat)(jo.default.instancePath,o)],[jo.default.parentData,a.parentData],[jo.default.parentDataProperty,a.parentDataProperty],[jo.default.rootData,jo.default.rootData]];a.opts.dynamicRef&&c.push([jo.default.dynamicAnchors,jo.default.dynamicAnchors]);let f=(0,rr._)`${u}, ${r.object(...c)}`;return l!==rr.nil?(0,rr._)`${s}.call(${l}, ${f})`:(0,rr._)`${s}(${f})`}Gt.callValidateCode=Qq;var eL=(0,rr._)`new RegExp`;function tL({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,rr._)`${i.code==="new RegExp"?eL:(0,Hq.useFunc)(e,i)}(${r}, ${n})`})}Gt.usePattern=tL;function rL(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,rr._)`${r}.length`);t.forRange("i",0,l,d=>{e.subschema({keyword:n,dataProp:d,dataPropType:My.Type.Num},o),t.if((0,rr.not)(o),s)})}}Gt.validateArray=rL;function nL(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,My.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,rr._)`${a} || ${s}`),e.mergeValidEvaluated(u,s)||t.if((0,rr.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}Gt.validateUnion=nL});var YA=fe($i=>{"use strict";Object.defineProperty($i,"__esModule",{value:!0});$i.validateKeywordUsage=$i.validSchemaType=$i.funcKeywordCode=$i.macroKeywordCode=void 0;var sn=it(),Ua=ao(),iL=Kn(),oL=Vd();function aL(e,t){let{gen:r,keyword:n,schema:i,parentSchema:o,it:a}=e,s=t.macro.call(a.self,i,o,a),l=JA(r,n,s);a.opts.validateSchema!==!1&&a.self.validateSchema(s,!0);let d=r.name("valid");e.subschema({schema:s,schemaPath:sn.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:l,compositeRule:!0},d),e.pass(d,()=>e.error(!0))}$i.macroKeywordCode=aL;function sL(e,t){var r;let{gen:n,keyword:i,schema:o,parentSchema:a,$data:s,it:l}=e;dL(l,t);let d=!s&&t.compile?t.compile.call(l.self,o,a,l):t.validate,u=JA(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&&KA(e),_(()=>e.error());else{let g=t.async?p():m();t.modifying&&KA(e),_(()=>lL(e,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,sn._)`await `),b=>n.assign(c,!1).if((0,sn._)`${b} instanceof ${l.ValidationError}`,()=>n.assign(g,(0,sn._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,sn._)`${u}.errors`;return n.assign(g,null),h(sn.nil),g}function h(g=t.async?(0,sn._)`await `:sn.nil){let b=l.opts.passContext?Ua.default.this:Ua.default.self,y=!("compile"in t&&!s||t.schema===!1);n.assign(c,(0,sn._)`${g}${(0,iL.callValidateCode)(e,u,b,y)}`,t.modifying)}function _(g){var b;n.if((0,sn.not)((b=t.valid)!==null&&b!==void 0?b:c),g)}}$i.funcKeywordCode=sL;function KA(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,sn._)`${n.parentData}[${n.parentDataProperty}]`))}function lL(e,t){let{gen:r}=e;r.if((0,sn._)`Array.isArray(${t})`,()=>{r.assign(Ua.default.vErrors,(0,sn._)`${Ua.default.vErrors} === null ? ${t} : ${Ua.default.vErrors}.concat(${t})`).assign(Ua.default.errors,(0,sn._)`${Ua.default.vErrors}.length`),(0,oL.extendErrors)(e)},()=>e.error())}function dL({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function JA(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,sn.stringify)(r)})}function uL(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")}$i.validSchemaType=uL;function cL({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)}}$i.validateKeywordUsage=cL});var QA=fe(zo=>{"use strict";Object.defineProperty(zo,"__esModule",{value:!0});zo.extendSubschemaMode=zo.extendSubschemaData=zo.getSubschema=void 0;var Mi=it(),XA=Tt();function fL(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,Mi._)`${e.schemaPath}${(0,Mi.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:s[r],schemaPath:(0,Mi._)`${e.schemaPath}${(0,Mi.getProperty)(t)}${(0,Mi.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,XA.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')}zo.getSubschema=fL;function mL(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,Mi._)`${t.data}${(0,Mi.getProperty)(r)}`,!0);l(f),e.errorPath=(0,Mi.str)`${d}${(0,XA.getErrorPath)(r,n,c.jsPropertySyntax)}`,e.parentDataProperty=(0,Mi._)`${r}`,e.dataPathArr=[...u,e.parentDataProperty]}if(i!==void 0){let d=i instanceof Mi.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]}}zo.extendSubschemaData=mL;function pL(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}zo.extendSubschemaMode=pL});var Ny=fe((VX,eO)=>{"use strict";eO.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 rO=fe((HX,tO)=>{"use strict";var No=tO.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(){};Gf(t,n,i,e,"",e)};No.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};No.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};No.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};No.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 Gf(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 No.arrayKeywords)for(var f=0;f<c.length;f++)Gf(e,t,r,c[f],i+"/"+u+"/"+f,o,i,u,n,f)}else if(u in No.propsKeywords){if(c&&typeof c=="object")for(var p in c)Gf(e,t,r,c[p],i+"/"+u+"/"+hL(p),o,i,u,n,p)}else(u in No.keywords||e.allKeys&&!(u in No.skipKeywords))&&Gf(e,t,r,c,i+"/"+u,o,i,u,n)}r(n,i,o,a,s,l,d)}}function hL(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var Bd=fe(wn=>{"use strict";Object.defineProperty(wn,"__esModule",{value:!0});wn.getSchemaRefs=wn.resolveUrl=wn.normalizeId=wn._getFullPath=wn.getFullPath=wn.inlineRef=void 0;var _L=Tt(),gL=Ny(),yL=rO(),bL=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function vL(e,t=!0){return typeof e=="boolean"?!0:t===!0?!Gy(e):t?nO(e)<=t:!1}wn.inlineRef=vL;var SL=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Gy(e){for(let t in e){if(SL.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(Gy)||typeof r=="object"&&Gy(r))return!0}return!1}function nO(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!bL.has(r)&&(typeof e[r]=="object"&&(0,_L.eachItem)(e[r],n=>t+=nO(n)),t===1/0))return 1/0}return t}function iO(e,t="",r){r!==!1&&(t=rl(t));let n=e.parse(t);return oO(e,n)}wn.getFullPath=iO;function oO(e,t){return e.serialize(t).split("#")[0]+"#"}wn._getFullPath=oO;var wL=/#\/?$/;function rl(e){return e?e.replace(wL,""):""}wn.normalizeId=rl;function kL(e,t,r){return r=rl(r),e.resolve(t,r)}wn.resolveUrl=kL;var xL=/^[a-z_][-a-z0-9._]*$/i;function TL(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,i=rl(e[r]||t),o={"":i},a=iO(n,i,!1),s={},l=new Set;return yL(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=rl(_?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!==rl(h)&&(y[0]==="#"?(d(c,s[y],y),s[y]=c):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!xL.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),s;function d(c,f,p){if(f!==void 0&&!gL(c,f))throw u(p)}function u(c){return new Error(`reference "${c}" resolves to more than one schema`)}}wn.getSchemaRefs=TL});var Yd=fe(Go=>{"use strict";Object.defineProperty(Go,"__esModule",{value:!0});Go.getData=Go.KeywordCxt=Go.validateFunctionCode=void 0;var uO=FA(),aO=Hd(),Dy=Py(),Ff=Hd(),AL=VA(),Jd=YA(),Fy=QA(),Te=it(),Ue=ao(),OL=Bd(),so=Tt(),Kd=Vd();function CL(e){if(mO(e)&&(pO(e),fO(e))){RL(e);return}cO(e,()=>(0,uO.topBoolOrEmptySchema)(e))}Go.validateFunctionCode=CL;function cO({gen:e,validateName:t,schema:r,schemaEnv:n,opts:i},o){i.code.es5?e.func(t,(0,Te._)`${Ue.default.data}, ${Ue.default.valCxt}`,n.$async,()=>{e.code((0,Te._)`"use strict"; ${sO(r,i)}`),PL(e,i),e.code(o)}):e.func(t,(0,Te._)`${Ue.default.data}, ${EL(i)}`,n.$async,()=>e.code(sO(r,i)).code(o))}function EL(e){return(0,Te._)`{${Ue.default.instancePath}="", ${Ue.default.parentData}, ${Ue.default.parentDataProperty}, ${Ue.default.rootData}=${Ue.default.data}${e.dynamicRef?(0,Te._)`, ${Ue.default.dynamicAnchors}={}`:Te.nil}}={}`}function PL(e,t){e.if(Ue.default.valCxt,()=>{e.var(Ue.default.instancePath,(0,Te._)`${Ue.default.valCxt}.${Ue.default.instancePath}`),e.var(Ue.default.parentData,(0,Te._)`${Ue.default.valCxt}.${Ue.default.parentData}`),e.var(Ue.default.parentDataProperty,(0,Te._)`${Ue.default.valCxt}.${Ue.default.parentDataProperty}`),e.var(Ue.default.rootData,(0,Te._)`${Ue.default.valCxt}.${Ue.default.rootData}`),t.dynamicRef&&e.var(Ue.default.dynamicAnchors,(0,Te._)`${Ue.default.valCxt}.${Ue.default.dynamicAnchors}`)},()=>{e.var(Ue.default.instancePath,(0,Te._)`""`),e.var(Ue.default.parentData,(0,Te._)`undefined`),e.var(Ue.default.parentDataProperty,(0,Te._)`undefined`),e.var(Ue.default.rootData,Ue.default.data),t.dynamicRef&&e.var(Ue.default.dynamicAnchors,(0,Te._)`{}`)})}function RL(e){let{schema:t,opts:r,gen:n}=e;cO(e,()=>{r.$comment&&t.$comment&&_O(e),zL(e),n.let(Ue.default.vErrors,null),n.let(Ue.default.errors,0),r.unevaluated&&IL(e),hO(e),FL(e)})}function IL(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 sO(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 $L(e,t){if(mO(e)&&(pO(e),fO(e))){ML(e,t);return}(0,uO.boolOrEmptySchema)(e,t)}function fO({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 mO(e){return typeof e.schema!="boolean"}function ML(e,t){let{schema:r,gen:n,opts:i}=e;i.$comment&&r.$comment&&_O(e),NL(e),GL(e);let o=n.const("_errs",Ue.default.errors);hO(e,o),n.var(t,(0,Te._)`${o} === ${Ue.default.errors}`)}function pO(e){(0,so.checkUnknownRules)(e),jL(e)}function hO(e,t){if(e.opts.jtd)return lO(e,[],!1,t);let r=(0,aO.getSchemaTypes)(e.schema),n=(0,aO.coerceAndCheckDataType)(e,r);lO(e,r,!n,t)}function jL(e){let{schema:t,errSchemaPath:r,opts:n,self:i}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,so.schemaHasRulesButRef)(t,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function zL(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,so.checkStrictMode)(e,"default is ignored in the schema root")}function NL(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,OL.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function GL(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function _O({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:i}){let o=r.$comment;if(i.$comment===!0)e.code((0,Te._)`${Ue.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._)`${Ue.default.self}.opts.$comment(${o}, ${a}, ${s}.schema)`)}}function FL(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:i,opts:o}=e;r.$async?t.if((0,Te._)`${Ue.default.errors} === 0`,()=>t.return(Ue.default.data),()=>t.throw((0,Te._)`new ${i}(${Ue.default.vErrors})`)):(t.assign((0,Te._)`${n}.errors`,Ue.default.vErrors),o.unevaluated&&DL(e),t.return((0,Te._)`${Ue.default.errors} === 0`))}function DL({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 lO(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,so.schemaHasRulesButRef)(o,u))){i.block(()=>yO(e,"$ref",u.all.$ref.definition));return}l.jtd||qL(e,t),i.block(()=>{for(let f of u.rules)c(f);c(u.post)});function c(f){(0,Dy.shouldUseGroup)(o,f)&&(f.type?(i.if((0,Ff.checkDataType)(f.type,a,l.strictNumbers)),dO(e,f),t.length===1&&t[0]===f.type&&r&&(i.else(),(0,Ff.reportTypeError)(e)),i.endIf()):dO(e,f),s||i.if((0,Te._)`${Ue.default.errors} === ${n||0}`))}}function dO(e,t){let{gen:r,schema:n,opts:{useDefaults:i}}=e;i&&(0,AL.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0,Dy.shouldUseRule)(n,o)&&yO(e,o.keyword,o.definition,t.type)})}function qL(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(LL(e,t),e.opts.allowUnionTypes||UL(e,t),ZL(e,e.dataTypes))}function LL(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{gO(e.dataTypes,r)||qy(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),VL(e,t)}}function UL(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&qy(e,"use allowUnionTypes to allow union type keyword")}function ZL(e,t){let r=e.self.RULES.all;for(let n in r){let i=r[n];if(typeof i=="object"&&(0,Dy.shouldUseRule)(e.schema,i)){let{type:o}=i.definition;o.length&&!o.some(a=>WL(t,a))&&qy(e,`missing type "${o.join(",")}" for keyword "${n}"`)}}}function WL(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function gO(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function VL(e,t){let r=[];for(let n of e.dataTypes)gO(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function qy(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,so.checkStrictMode)(e,t,e.opts.strictTypes)}var Df=class{constructor(t,r,n){if((0,Jd.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,so.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",bO(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,Jd.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",Ue.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?Kd.reportExtraError:Kd.reportError)(this,this.def.error,r)}$dataError(){(0,Kd.reportError)(this,this.def.$dataError||Kd.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Kd.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,Ff.checkDataTypes)(l,r,o.opts.strictNumbers,Ff.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,Fy.getSubschema)(this.it,t);(0,Fy.extendSubschemaData)(n,this.it,t),(0,Fy.extendSubschemaMode)(n,t);let i={...this.it,...n,items:void 0,props:void 0};return $L(i,r),i}mergeEvaluated(t,r){let{it:n,gen:i}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=so.mergeEvaluated.props(i,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=so.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}};Go.KeywordCxt=Df;function yO(e,t,r,n){let i=new Df(e,r,t);"code"in r?r.code(i,n):i.$data&&r.validate?(0,Jd.funcKeywordCode)(i,r):"macro"in r?(0,Jd.macroKeywordCode)(i,r):(r.compile||r.validate)&&(0,Jd.funcKeywordCode)(i,r)}var HL=/^\/(?:[^~]|~0|~1)*$/,BL=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function bO(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let i,o;if(e==="")return Ue.default.rootData;if(e[0]==="/"){if(!HL.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);i=e,o=Ue.default.rootData}else{let d=BL.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,so.unescapeJsonPointer)(d))}`,a=(0,Te._)`${a} && ${o}`);return a;function l(d,u){return`Cannot access ${d} ${u} levels up, current level is ${t}`}}Go.getData=bO});var qf=fe(Uy=>{"use strict";Object.defineProperty(Uy,"__esModule",{value:!0});var Ly=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};Uy.default=Ly});var Xd=fe(Vy=>{"use strict";Object.defineProperty(Vy,"__esModule",{value:!0});var Zy=Bd(),Wy=class extends Error{constructor(t,r,n,i){super(i||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Zy.resolveUrl)(t,r,n),this.missingSchema=(0,Zy.normalizeId)((0,Zy.getFullPath)(t,this.missingRef))}};Vy.default=Wy});var Uf=fe(Jn=>{"use strict";Object.defineProperty(Jn,"__esModule",{value:!0});Jn.resolveSchema=Jn.getCompilingSchema=Jn.resolveRef=Jn.compileSchema=Jn.SchemaEnv=void 0;var pi=it(),KL=qf(),Za=ao(),hi=Bd(),vO=Tt(),JL=Yd(),nl=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,hi.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};Jn.SchemaEnv=nl;function By(e){let t=SO.call(this,e);if(t)return t;let r=(0,hi.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:i}=this.opts.code,{ownProperties:o}=this.opts,a=new pi.CodeGen(this.scope,{es5:n,lines:i,ownProperties:o}),s;e.$async&&(s=a.scopeValue("Error",{ref:KL.default,code:(0,pi._)`require("ajv/dist/runtime/validation_error").default`}));let l=a.scopeName("validate");e.validateName=l;let d={gen:a,allErrors:this.opts.allErrors,data:Za.default.data,parentData:Za.default.parentData,parentDataProperty:Za.default.parentDataProperty,dataNames:[Za.default.data],dataPathArr:[pi.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,pi.stringify)(e.schema)}:{ref:e.schema}),validateName:l,ValidationError:s,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:pi.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,pi._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(e),(0,JL.validateFunctionCode)(d),a.optimize(this.opts.code.optimize);let c=a.toString();u=`${a.scopeRefs(Za.default.scope)}return ${c}`,this.opts.code.process&&(u=this.opts.code.process(u,e));let p=new Function(`${Za.default.self}`,`${Za.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 pi.Name?void 0:m,items:h instanceof pi.Name?void 0:h,dynamicProps:m instanceof pi.Name,dynamicItems:h instanceof pi.Name},p.source&&(p.source.evaluated=(0,pi.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)}}Jn.compileSchema=By;function YL(e,t,r){var n;r=(0,hi.resolveUrl)(this.opts.uriResolver,t,r);let i=e.refs[r];if(i)return i;let o=eU.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 nl({schema:a,schemaId:s,root:e,baseId:t}))}if(o!==void 0)return e.refs[r]=XL.call(this,o)}Jn.resolveRef=YL;function XL(e){return(0,hi.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:By.call(this,e)}function SO(e){for(let t of this._compilations)if(QL(t,e))return t}Jn.getCompilingSchema=SO;function QL(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function eU(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||Lf.call(this,e,t)}function Lf(e,t){let r=this.opts.uriResolver.parse(t),n=(0,hi._getFullPath)(this.opts.uriResolver,r),i=(0,hi.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===i)return Hy.call(this,r,e);let o=(0,hi.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let s=Lf.call(this,e,a);return typeof s?.schema!="object"?void 0:Hy.call(this,r,s)}if(typeof a?.schema=="object"){if(a.validate||By.call(this,a),o===(0,hi.normalizeId)(t)){let{schema:s}=a,{schemaId:l}=this.opts,d=s[l];return d&&(i=(0,hi.resolveUrl)(this.opts.uriResolver,i,d)),new nl({schema:s,schemaId:l,root:e,baseId:i})}return Hy.call(this,r,a)}}Jn.resolveSchema=Lf;var tU=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Hy(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,vO.unescapeFragment)(s)];if(l===void 0)return;r=l;let d=typeof r=="object"&&r[this.opts.schemaId];!tU.has(s)&&d&&(t=(0,hi.resolveUrl)(this.opts.uriResolver,t,d))}let o;if(typeof r!="boolean"&&r.$ref&&!(0,vO.schemaHasRulesButRef)(r,this.RULES)){let s=(0,hi.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=Lf.call(this,n,s)}let{schemaId:a}=this.opts;if(o=o||new nl({schema:r,schemaId:a,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var wO=fe((QX,rU)=>{rU.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 Jy=fe((eQ,AO)=>{"use strict";var nU=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 Ky(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 iU=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function kO(e){return e.length=0,!0}function oU(e,t,r){if(e.length){let n=Ky(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function aU(e){let t=0,r={error:!1,address:"",zone:""},n=[],i=[],o=!1,a=!1,s=oU;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=kO}else{i.push(d);continue}}return i.length&&(s===kO?r.zone=i.join(""):a?n.push(i.join("")):n.push(Ky(i))),r.address=n.join(""),r}function TO(e){if(sU(e,":")<2)return{host:e,isIPV6:!1};let t=aU(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 sU(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function lU(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 dU(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 uU(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=TO(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}AO.exports={nonSimpleDomain:iU,recomposeAuthority:uU,normalizeComponentEncoding:dU,removeDotSegments:lU,isIPv4:xO,isUUID:nU,normalizeIPv6:TO,stringArrayToHexStripped:Ky}});var RO=fe((tQ,PO)=>{"use strict";var{isUUID:cU}=Jy(),fU=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,mU=["http","https","ws","wss","urn","urn:uuid"];function pU(e){return mU.indexOf(e)!==-1}function Yy(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 OO(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function CO(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 hU(e){return e.secure=Yy(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function _U(e){if((e.port===(Yy(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 gU(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(fU);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=Xy(i);e.path=void 0,o&&(e=o.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function yU(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=Xy(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 bU(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!cU(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function vU(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var EO={scheme:"http",domainHost:!0,parse:OO,serialize:CO},SU={scheme:"https",domainHost:EO.domainHost,parse:OO,serialize:CO},Zf={scheme:"ws",domainHost:!0,parse:hU,serialize:_U},wU={scheme:"wss",domainHost:Zf.domainHost,parse:Zf.parse,serialize:Zf.serialize},kU={scheme:"urn",parse:gU,serialize:yU,skipNormalize:!0},xU={scheme:"urn:uuid",parse:bU,serialize:vU,skipNormalize:!0},Wf={http:EO,https:SU,ws:Zf,wss:wU,urn:kU,"urn:uuid":xU};Object.setPrototypeOf(Wf,null);function Xy(e){return e&&(Wf[e]||Wf[e.toLowerCase()])||void 0}PO.exports={wsIsSecure:Yy,SCHEMES:Wf,isValidSchemeName:pU,getSchemeHandler:Xy}});var MO=fe((rQ,Hf)=>{"use strict";var{normalizeIPv6:TU,removeDotSegments:Qd,recomposeAuthority:AU,normalizeComponentEncoding:Vf,isIPv4:OU,nonSimpleDomain:CU}=Jy(),{SCHEMES:EU,getSchemeHandler:IO}=RO();function PU(e,t){return typeof e=="string"?e=ji(lo(e,t),t):typeof e=="object"&&(e=lo(ji(e,t),t)),e}function RU(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},i=$O(lo(e,n),lo(t,n),n,!0);return n.skipEscape=!0,ji(i,n)}function $O(e,t,r,n){let i={};return n||(e=lo(ji(e,r),r),t=lo(ji(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=Qd(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=Qd(t.path||""),i.query=t.query):(t.path?(t.path[0]==="/"?i.path=Qd(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=Qd(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 IU(e,t,r){return typeof e=="string"?(e=unescape(e),e=ji(Vf(lo(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=ji(Vf(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=ji(Vf(lo(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=ji(Vf(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function ji(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=IO(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=AU(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=Qd(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 $U=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function lo(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($U);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(OU(n.host)===!1){let l=TU(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=IO(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&i===!1&&CU(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 Qy={SCHEMES:EU,normalize:PU,resolve:RU,resolveComponent:$O,equal:IU,serialize:ji,parse:lo};Hf.exports=Qy;Hf.exports.default=Qy;Hf.exports.fastUri=Qy});var zO=fe(eb=>{"use strict";Object.defineProperty(eb,"__esModule",{value:!0});var jO=MO();jO.code='require("ajv/dist/runtime/uri").default';eb.default=jO});var ZO=fe(Ur=>{"use strict";Object.defineProperty(Ur,"__esModule",{value:!0});Ur.CodeGen=Ur.Name=Ur.nil=Ur.stringify=Ur.str=Ur._=Ur.KeywordCxt=void 0;var MU=Yd();Object.defineProperty(Ur,"KeywordCxt",{enumerable:!0,get:function(){return MU.KeywordCxt}});var il=it();Object.defineProperty(Ur,"_",{enumerable:!0,get:function(){return il._}});Object.defineProperty(Ur,"str",{enumerable:!0,get:function(){return il.str}});Object.defineProperty(Ur,"stringify",{enumerable:!0,get:function(){return il.stringify}});Object.defineProperty(Ur,"nil",{enumerable:!0,get:function(){return il.nil}});Object.defineProperty(Ur,"Name",{enumerable:!0,get:function(){return il.Name}});Object.defineProperty(Ur,"CodeGen",{enumerable:!0,get:function(){return il.CodeGen}});var jU=qf(),qO=Xd(),zU=Ey(),eu=Uf(),NU=it(),tu=Bd(),Bf=Hd(),rb=Tt(),NO=wO(),GU=zO(),LO=(e,t)=>new RegExp(e,t);LO.code="new RegExp";var FU=["removeAdditional","useDefaults","coerceTypes"],DU=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),qU={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."},LU={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},GO=200;function UU(e){var t,r,n,i,o,a,s,l,d,u,c,f,p,m,h,_,g,b,y,v,S,A,R,z,H;let ce=e.strict,ne=(t=e.code)===null||t===void 0?void 0:t.optimize,ie=ne===!0||ne===void 0?1:ne||0,le=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:LO,W=(i=e.uriResolver)!==null&&i!==void 0?i:GU.default;return{strictSchema:(a=(o=e.strictSchema)!==null&&o!==void 0?o:ce)!==null&&a!==void 0?a:!0,strictNumbers:(l=(s=e.strictNumbers)!==null&&s!==void 0?s:ce)!==null&&l!==void 0?l:!0,strictTypes:(u=(d=e.strictTypes)!==null&&d!==void 0?d:ce)!==null&&u!==void 0?u:"log",strictTuples:(f=(c=e.strictTuples)!==null&&c!==void 0?c:ce)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=e.strictRequired)!==null&&p!==void 0?p:ce)!==null&&m!==void 0?m:!1,code:e.code?{...e.code,optimize:ie,regExp:le}:{optimize:ie,regExp:le},loopRequired:(h=e.loopRequired)!==null&&h!==void 0?h:GO,loopEnum:(_=e.loopEnum)!==null&&_!==void 0?_:GO,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:(z=e.unicodeRegExp)!==null&&z!==void 0?z:!0,int32range:(H=e.int32range)!==null&&H!==void 0?H:!0,uriResolver:W}}var ru=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...UU(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new NU.ValueScope({scope:{},prefixes:DU,es5:r,lines:n}),this.logger=KU(t.logger);let i=t.validateFormats;t.validateFormats=!1,this.RULES=(0,zU.getRules)(),FO.call(this,qU,t,"NOT SUPPORTED"),FO.call(this,LU,t,"DEPRECATED","warn"),this._metaOpts=HU.call(this),t.formats&&WU.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&VU.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),ZU.call(this),t.validateFormats=i}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,i=NO;n==="id"&&(i={...NO},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 qO.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,tu.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=DO.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,i=new eu.SchemaEnv({schema:{},schemaId:n});if(r=eu.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=DO.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,tu.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(YU.call(this,n,r),!r)return(0,rb.eachItem)(n,o=>tb.call(this,o)),this;QU.call(this,r);let i={...r,type:(0,Bf.getJSONTypes)(r.type),schemaType:(0,Bf.getJSONTypes)(r.schemaType)};return(0,rb.eachItem)(n,i.type.length===0?o=>tb.call(this,o,i):o=>i.type.forEach(a=>tb.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]=UO(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,tu.normalizeId)(a||n);let d=tu.getSchemaRefs.call(this,t,n);return l=new eu.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):eu.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{eu.compileSchema.call(this,t)}finally{this.opts=r}}};ru.ValidationError=jU.default;ru.MissingRefError=qO.default;Ur.default=ru;function FO(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 DO(e){return e=(0,tu.normalizeId)(e),this.schemas[e]||this.refs[e]}function ZU(){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 WU(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function VU(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 HU(){let e={...this.opts};for(let t of FU)delete e[t];return e}var BU={log(){},warn(){},error(){}};function KU(e){if(e===!1)return BU;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 JU=/^[a-z_$][a-z0-9_$:-]*$/i;function YU(e,t){let{RULES:r}=this;if((0,rb.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!JU.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 tb(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,Bf.getJSONTypes)(t.type),schemaType:(0,Bf.getJSONTypes)(t.schemaType)}};t.before?XU.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 XU(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 QU(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=UO(t)),e.validateSchema=this.compile(t,!0))}var e2={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function UO(e){return{anyOf:[e,e2]}}});var WO=fe(nb=>{"use strict";Object.defineProperty(nb,"__esModule",{value:!0});var t2={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};nb.default=t2});var KO=fe(Wa=>{"use strict";Object.defineProperty(Wa,"__esModule",{value:!0});Wa.callRef=Wa.getValidate=void 0;var r2=Xd(),VO=Kn(),kn=it(),ol=ao(),HO=Uf(),Kf=Tt(),n2={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=HO.resolveRef.call(l,d,i,r);if(u===void 0)throw new r2.default(n.opts.uriResolver,i,r);if(u instanceof HO.SchemaEnv)return f(u);return p(u);function c(){if(o===d)return Jf(e,a,o,o.$async);let m=t.scopeValue("root",{ref:d});return Jf(e,(0,kn._)`${m}.validate`,d,d.$async)}function f(m){let h=BO(e,m);Jf(e,h,m,m.$async)}function p(m){let h=t.scopeValue("schema",s.code.source===!0?{ref:m,code:(0,kn.stringify)(m)}:{ref:m}),_=t.name("valid"),g=e.subschema({schema:m,dataTypes:[],schemaPath:kn.nil,topSchemaRef:h,errSchemaPath:r},_);e.mergeEvaluated(g),e.ok(_)}}};function BO(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,kn._)`${r.scopeValue("wrapper",{ref:t})}.validate`}Wa.getValidate=BO;function Jf(e,t,r,n){let{gen:i,it:o}=e,{allErrors:a,schemaEnv:s,opts:l}=o,d=l.passContext?ol.default.this:kn.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,kn._)`await ${(0,VO.callValidateCode)(e,t,d)}`),p(t),a||i.assign(m,!0)},h=>{i.if((0,kn._)`!(${h} instanceof ${o.ValidationError})`,()=>i.throw(h)),f(h),a||i.assign(m,!1)}),e.ok(m)}function c(){e.result((0,VO.callValidateCode)(e,t,d),()=>p(t),()=>f(t))}function f(m){let h=(0,kn._)`${m}.errors`;i.assign(ol.default.vErrors,(0,kn._)`${ol.default.vErrors} === null ? ${h} : ${ol.default.vErrors}.concat(${h})`),i.assign(ol.default.errors,(0,kn._)`${ol.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=Kf.mergeEvaluated.props(i,_.props,o.props));else{let g=i.var("props",(0,kn._)`${m}.evaluated.props`);o.props=Kf.mergeEvaluated.props(i,g,o.props,kn.Name)}if(o.items!==!0)if(_&&!_.dynamicItems)_.items!==void 0&&(o.items=Kf.mergeEvaluated.items(i,_.items,o.items));else{let g=i.var("items",(0,kn._)`${m}.evaluated.items`);o.items=Kf.mergeEvaluated.items(i,g,o.items,kn.Name)}}}Wa.callRef=Jf;Wa.default=n2});var JO=fe(ib=>{"use strict";Object.defineProperty(ib,"__esModule",{value:!0});var i2=WO(),o2=KO(),a2=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",i2.default,o2.default];ib.default=a2});var YO=fe(ob=>{"use strict";Object.defineProperty(ob,"__esModule",{value:!0});var Yf=it(),Fo=Yf.operators,Xf={maximum:{okStr:"<=",ok:Fo.LTE,fail:Fo.GT},minimum:{okStr:">=",ok:Fo.GTE,fail:Fo.LT},exclusiveMaximum:{okStr:"<",ok:Fo.LT,fail:Fo.GTE},exclusiveMinimum:{okStr:">",ok:Fo.GT,fail:Fo.LTE}},s2={message:({keyword:e,schemaCode:t})=>(0,Yf.str)`must be ${Xf[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,Yf._)`{comparison: ${Xf[e].okStr}, limit: ${t}}`},l2={keyword:Object.keys(Xf),type:"number",schemaType:"number",$data:!0,error:s2,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,Yf._)`${r} ${Xf[t].fail} ${n} || isNaN(${r})`)}};ob.default=l2});var XO=fe(ab=>{"use strict";Object.defineProperty(ab,"__esModule",{value:!0});var nu=it(),d2={message:({schemaCode:e})=>(0,nu.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,nu._)`{multipleOf: ${e}}`},u2={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:d2,code(e){let{gen:t,data:r,schemaCode:n,it:i}=e,o=i.opts.multipleOfPrecision,a=t.let("res"),s=o?(0,nu._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0,nu._)`${a} !== parseInt(${a})`;e.fail$data((0,nu._)`(${n} === 0 || (${a} = ${r}/${n}, ${s}))`)}};ab.default=u2});var eC=fe(sb=>{"use strict";Object.defineProperty(sb,"__esModule",{value:!0});function QO(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}sb.default=QO;QO.code='require("ajv/dist/runtime/ucs2length").default'});var tC=fe(lb=>{"use strict";Object.defineProperty(lb,"__esModule",{value:!0});var Va=it(),c2=Tt(),f2=eC(),m2={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,Va.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,Va._)`{limit: ${e}}`},p2={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:m2,code(e){let{keyword:t,data:r,schemaCode:n,it:i}=e,o=t==="maxLength"?Va.operators.GT:Va.operators.LT,a=i.opts.unicode===!1?(0,Va._)`${r}.length`:(0,Va._)`${(0,c2.useFunc)(e.gen,f2.default)}(${r})`;e.fail$data((0,Va._)`${a} ${o} ${n}`)}};lb.default=p2});var rC=fe(db=>{"use strict";Object.defineProperty(db,"__esModule",{value:!0});var h2=Kn(),Qf=it(),_2={message:({schemaCode:e})=>(0,Qf.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,Qf._)`{pattern: ${e}}`},g2={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:_2,code(e){let{data:t,$data:r,schema:n,schemaCode:i,it:o}=e,a=o.opts.unicodeRegExp?"u":"",s=r?(0,Qf._)`(new RegExp(${i}, ${a}))`:(0,h2.usePattern)(e,n);e.fail$data((0,Qf._)`!${s}.test(${t})`)}};db.default=g2});var nC=fe(ub=>{"use strict";Object.defineProperty(ub,"__esModule",{value:!0});var iu=it(),y2={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,iu.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,iu._)`{limit: ${e}}`},b2={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:y2,code(e){let{keyword:t,data:r,schemaCode:n}=e,i=t==="maxProperties"?iu.operators.GT:iu.operators.LT;e.fail$data((0,iu._)`Object.keys(${r}).length ${i} ${n}`)}};ub.default=b2});var iC=fe(cb=>{"use strict";Object.defineProperty(cb,"__esModule",{value:!0});var ou=Kn(),au=it(),v2=Tt(),S2={message:({params:{missingProperty:e}})=>(0,au.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,au._)`{missingProperty: ${e}}`},w2={keyword:"required",type:"object",schemaType:"array",$data:!0,error:S2,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,v2.checkStrictMode)(a,g,a.opts.strictRequired)}}function d(){if(l||o)e.block$data(au.nil,c);else for(let p of r)(0,ou.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,ou.checkMissingProp)(e,r,p)),(0,ou.reportMissingProp)(e,p),t.else()}function c(){t.forOf("prop",n,p=>{e.setParams({missingProperty:p}),t.if((0,ou.noPropertyInData)(t,i,p,s.ownProperties),()=>e.error())})}function f(p,m){e.setParams({missingProperty:p}),t.forOf(p,n,()=>{t.assign(m,(0,ou.propertyInData)(t,i,p,s.ownProperties)),t.if((0,au.not)(m),()=>{e.error(),t.break()})},au.nil)}}};cb.default=w2});var oC=fe(fb=>{"use strict";Object.defineProperty(fb,"__esModule",{value:!0});var su=it(),k2={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,su.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,su._)`{limit: ${e}}`},x2={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:k2,code(e){let{keyword:t,data:r,schemaCode:n}=e,i=t==="maxItems"?su.operators.GT:su.operators.LT;e.fail$data((0,su._)`${r}.length ${i} ${n}`)}};fb.default=x2});var em=fe(mb=>{"use strict";Object.defineProperty(mb,"__esModule",{value:!0});var aC=Ny();aC.code='require("ajv/dist/runtime/equal").default';mb.default=aC});var sC=fe(hb=>{"use strict";Object.defineProperty(hb,"__esModule",{value:!0});var pb=Hd(),Zr=it(),T2=Tt(),A2=em(),O2={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}}`},C2={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:O2,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,pb.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,pb.checkDataTypes)(d,_,s.opts.strictNumbers,pb.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,T2.useFunc)(t,A2.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)})))}}};hb.default=C2});var lC=fe(gb=>{"use strict";Object.defineProperty(gb,"__esModule",{value:!0});var _b=it(),E2=Tt(),P2=em(),R2={message:"must be equal to constant",params:({schemaCode:e})=>(0,_b._)`{allowedValue: ${e}}`},I2={keyword:"const",$data:!0,error:R2,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,E2.useFunc)(t,P2.default)}(${r}, ${i})`):e.fail((0,_b._)`${o} !== ${r}`)}};gb.default=I2});var dC=fe(yb=>{"use strict";Object.defineProperty(yb,"__esModule",{value:!0});var lu=it(),$2=Tt(),M2=em(),j2={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,lu._)`{allowedValues: ${e}}`},z2={keyword:"enum",schemaType:"array",$data:!0,error:j2,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,$2.useFunc)(t,M2.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,lu.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,lu._)`${d()}(${r}, ${p})`,()=>t.assign(u,!0).break()))}function f(p,m){let h=i[m];return typeof h=="object"&&h!==null?(0,lu._)`${d()}(${r}, ${p}[${m}])`:(0,lu._)`${r} === ${h}`}}};yb.default=z2});var uC=fe(bb=>{"use strict";Object.defineProperty(bb,"__esModule",{value:!0});var N2=YO(),G2=XO(),F2=tC(),D2=rC(),q2=nC(),L2=iC(),U2=oC(),Z2=sC(),W2=lC(),V2=dC(),H2=[N2.default,G2.default,F2.default,D2.default,q2.default,L2.default,U2.default,Z2.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},W2.default,V2.default];bb.default=H2});var Sb=fe(du=>{"use strict";Object.defineProperty(du,"__esModule",{value:!0});du.validateAdditionalItems=void 0;var Ha=it(),vb=Tt(),B2={message:({params:{len:e}})=>(0,Ha.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Ha._)`{limit: ${e}}`},K2={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:B2,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,vb.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}cC(e,n)}};function cC(e,t){let{gen:r,schema:n,data:i,keyword:o,it:a}=e;a.items=!0;let s=r.const("len",(0,Ha._)`${i}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,Ha._)`${s} <= ${t.length}`);else if(typeof n=="object"&&!(0,vb.alwaysValidSchema)(a,n)){let d=r.var("valid",(0,Ha._)`${s} <= ${t.length}`);r.if((0,Ha.not)(d),()=>l(d)),e.ok(d)}function l(d){r.forRange("i",t.length,s,u=>{e.subschema({keyword:o,dataProp:u,dataPropType:vb.Type.Num},d),a.allErrors||r.if((0,Ha.not)(d),()=>r.break())})}}du.validateAdditionalItems=cC;du.default=K2});var wb=fe(uu=>{"use strict";Object.defineProperty(uu,"__esModule",{value:!0});uu.validateTuple=void 0;var fC=it(),tm=Tt(),J2=Kn(),Y2={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return mC(e,"additionalItems",t);r.items=!0,!(0,tm.alwaysValidSchema)(r,t)&&e.ok((0,J2.validateArray)(e))}};function mC(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=tm.mergeEvaluated.items(n,r.length,s.items));let l=n.name("valid"),d=n.const("len",(0,fC._)`${o}.length`);r.forEach((c,f)=>{(0,tm.alwaysValidSchema)(s,c)||(n.if((0,fC._)`${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,tm.checkStrictMode)(s,_,f.strictTuples)}}}uu.validateTuple=mC;uu.default=Y2});var pC=fe(kb=>{"use strict";Object.defineProperty(kb,"__esModule",{value:!0});var X2=wb(),Q2={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,X2.validateTuple)(e,"items")};kb.default=Q2});var _C=fe(xb=>{"use strict";Object.defineProperty(xb,"__esModule",{value:!0});var hC=it(),eZ=Tt(),tZ=Kn(),rZ=Sb(),nZ={message:({params:{len:e}})=>(0,hC.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,hC._)`{limit: ${e}}`},iZ={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:nZ,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:i}=r;n.items=!0,!(0,eZ.alwaysValidSchema)(n,t)&&(i?(0,rZ.validateAdditionalItems)(e,i):e.ok((0,tZ.validateArray)(e)))}};xb.default=iZ});var gC=fe(Tb=>{"use strict";Object.defineProperty(Tb,"__esModule",{value:!0});var Yn=it(),rm=Tt(),oZ={message:({params:{min:e,max:t}})=>t===void 0?(0,Yn.str)`must contain at least ${e} valid item(s)`:(0,Yn.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,Yn._)`{minContains: ${e}}`:(0,Yn._)`{minContains: ${e}, maxContains: ${t}}`},aZ={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:oZ,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,Yn._)`${i}.length`);if(e.setParams({min:a,max:s}),s===void 0&&a===0){(0,rm.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(s!==void 0&&a>s){(0,rm.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,rm.alwaysValidSchema)(o,r)){let h=(0,Yn._)`${u} >= ${a}`;s!==void 0&&(h=(0,Yn._)`${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,Yn._)`${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:rm.Type.Num,compositeRule:!0},h),_()})}function m(h){t.code((0,Yn._)`${h}++`),s===void 0?t.if((0,Yn._)`${h} >= ${a}`,()=>t.assign(c,!0).break()):(t.if((0,Yn._)`${h} > ${s}`,()=>t.assign(c,!1).break()),a===1?t.assign(c,!0):t.if((0,Yn._)`${h} >= ${a}`,()=>t.assign(c,!0)))}}};Tb.default=aZ});var vC=fe(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.validateSchemaDeps=zi.validatePropertyDeps=zi.error=void 0;var Ab=it(),sZ=Tt(),cu=Kn();zi.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,Ab.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,Ab._)`{property: ${e},
3
+ var gj=Object.create;var Ip=Object.defineProperty;var yj=Object.getOwnPropertyDescriptor;var bj=Object.getOwnPropertyNames;var vj=Object.getPrototypeOf,Sj=Object.prototype.hasOwnProperty;var ce=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),$p=(e,t)=>{for(var r in t)Ip(e,r,{get:t[r],enumerable:!0})},wj=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of bj(t))!Sj.call(e,i)&&i!==r&&Ip(e,i,{get:()=>t[i],enumerable:!(n=yj(t,i))||n.enumerable});return e};var gw=(e,t,r)=>(r=e!=null?gj(vj(e)):{},wj(t||!e||!e.__esModule?Ip(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 Qn=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=Qn;xt.nil=new Qn("");function ZA(e,...t){let r=[e[0]],n=0;for(;n<t.length;)Sy(r,t[n]),r.push(e[++n]);return new Qn(r)}xt._=ZA;var vy=new Qn("+");function WA(e,...t){let r=[Hd(e[0])],n=0;for(;n<t.length;)r.push(vy),Sy(r,t[n]),r.push(vy,Hd(e[++n]));return Dq(r),new Qn(r)}xt.str=WA;function Sy(e,t){t instanceof Qn?e.push(...t._items):t instanceof qa?e.push(t):e.push(Uq(t))}xt.addCodeArg=Sy;function Dq(e){let t=1;for(;t<e.length-1;){if(e[t]===vy){let r=qq(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function qq(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 Lq(e,t){return t.emptyStr()?e:e.emptyStr()?t:WA`${e}${t}`}xt.strConcat=Lq;function Uq(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Hd(Array.isArray(e)?e.join(","):e)}function Zq(e){return new Qn(Hd(e))}xt.stringify=Zq;function Hd(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}xt.safeStringify=Hd;function Wq(e){return typeof e=="string"&&xt.IDENTIFIER.test(e)?new Qn(`.${e}`):ZA`[${e}]`}xt.getProperty=Wq;function Vq(e){if(typeof e=="string"&&xt.IDENTIFIER.test(e))return new Qn(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}xt.getEsmExportName=Vq;function Hq(e){return new Qn(e.toString())}xt.regexpCode=Hq});var xy=ce(On=>{"use strict";Object.defineProperty(On,"__esModule",{value:!0});On.ValueScope=On.ValueScopeName=On.Scope=On.varKinds=On.UsedValueState=void 0;var An=Bd(),wy=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},Gf;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Gf||(On.UsedValueState=Gf={}));On.varKinds={const:new An.Name("const"),let:new An.Name("let"),var:new An.Name("var")};var Ff=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof An.Name?t:this.name(t)}name(t){return new An.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}}};On.Scope=Ff;var Df=class extends An.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,An._)`.${new An.Name(r)}[${n}]`}};On.ValueScopeName=Df;var Bq=(0,An._)`\n`,ky=class extends Ff{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Bq:An.nil}}get(){return this._scope}name(t){return new Df(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,An._)`${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=An.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,Gf.Started);let u=r(d);if(u){let c=this.opts.es5?On.varKinds.var:On.varKinds.const;o=(0,An._)`${o}${c} ${d} = ${u};${this.opts._n}`}else if(u=i?.(d))o=(0,An._)`${o}${u}${this.opts._n}`;else throw new wy(d);l.set(d,Gf.Completed)})}return o}};On.ValueScope=ky});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=xy(),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 Zf=xy();Object.defineProperty(ot,"Scope",{enumerable:!0,get:function(){return Zf.Scope}});Object.defineProperty(ot,"ValueScope",{enumerable:!0,get:function(){return Zf.ValueScope}});Object.defineProperty(ot,"ValueScopeName",{enumerable:!0,get:function(){return Zf.ValueScopeName}});Object.defineProperty(ot,"varKinds",{enumerable:!0,get:function(){return Zf.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}},Ty=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:{}}},qf=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 Uf(t,this.rhs)}},Ay=class extends qf{constructor(t,r,n,i){super(t,n,i),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},Oy=class extends so{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},Cy=class extends so{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},Ey=class extends so{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},Py=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)||(Kq(t,o.names),n.splice(i,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>Za(t,r.names),{})}},lo=class extends Kd{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},Ry=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(VA(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 Uf(t,this.condition),this.else&&Za(t,this.else.names),t}};La.kind="if";var Ua=class extends lo{};Ua.kind="for";var Iy=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 Za(super.names,this.iteration.names)}},$y=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=Uf(super.names,this.from);return Uf(t,this.to)}},Lf=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 Za(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 My=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&&Za(t,this.catch.names),this.finally&&Za(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 jy=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 Ry]}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 Ty(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 qf(t,r,n))}add(t,r){return this._leafNode(new Ay(t,ot.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==bt.nil&&this._leafNode(new Py(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 Iy(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 $y(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 Lf("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 Lf("in",i,o,r),()=>n(o))}endFor(){return this._endBlockNode(Ua)}label(t){return this._leafNode(new Oy(t))}break(t){return this._leafNode(new Cy(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 My;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 Ey(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=jy;function Za(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Uf(e,t){return t instanceof bt._CodeOrName?Za(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 Kq(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function VA(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,bt._)`!${zy(e)}`}ot.not=VA;var Jq=HA(ot.operators.AND);function Yq(...e){return e.reduce(Jq)}ot.and=Yq;var Xq=HA(ot.operators.OR);function Qq(...e){return e.reduce(Xq)}ot.or=Qq;function HA(e){return(t,r)=>t===bt.nil?r:r===bt.nil?t:(0,bt._)`${zy(t)} ${e} ${zy(r)}`}function zy(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 Dt=it(),eL=Bd();function tL(e){let t={};for(let r of e)t[r]=!0;return t}dt.toHash=tL;function rL(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(JA(e,t),!YA(t,e.self.RULES.all))}dt.alwaysValidSchema=rL;function JA(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]||eO(e,`unknown keyword: "${o}"`)}dt.checkUnknownRules=JA;function YA(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}dt.schemaHasRules=YA;function nL(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=nL;function iL({topSchemaRef:e,schemaPath:t},r,n,i){if(!i){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,Dt._)`${r}`}return(0,Dt._)`${e}${t}${(0,Dt.getProperty)(n)}`}dt.schemaRefOrVal=iL;function oL(e){return XA(decodeURIComponent(e))}dt.unescapeFragment=oL;function aL(e){return encodeURIComponent(Gy(e))}dt.escapeFragment=aL;function Gy(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}dt.escapeJsonPointer=Gy;function XA(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}dt.unescapeJsonPointer=XA;function sL(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}dt.eachItem=sL;function BA({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(i,o,a,s)=>{let l=a===void 0?o:a instanceof Dt.Name?(o instanceof Dt.Name?e(i,o,a):t(i,o,a),a):o instanceof Dt.Name?(t(i,a,o),o):r(o,a);return s===Dt.Name&&!(l instanceof Dt.Name)?n(i,l):l}}dt.mergeEvaluated={props:BA({mergeNames:(e,t,r)=>e.if((0,Dt._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,Dt._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,Dt._)`${r} || {}`).code((0,Dt._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,Dt._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,Dt._)`${r} || {}`),Fy(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:QA}),items:BA({mergeNames:(e,t,r)=>e.if((0,Dt._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,Dt._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,Dt._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,Dt._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function QA(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,Dt._)`{}`);return t!==void 0&&Fy(e,r,t),r}dt.evaluatedPropsToName=QA;function Fy(e,t,r){Object.keys(r).forEach(n=>e.assign((0,Dt._)`${t}${(0,Dt.getProperty)(n)}`,!0))}dt.setEvaluated=Fy;var KA={};function lL(e,t){return e.scopeValue("func",{ref:t,code:KA[t.code]||(KA[t.code]=new eL._Code(t.code))})}dt.useFunc=lL;var Ny;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(Ny||(dt.Type=Ny={}));function dL(e,t,r){if(e instanceof Dt.Name){let n=t===Ny.Num;return r?n?(0,Dt._)`"[" + ${e} + "]"`:(0,Dt._)`"['" + ${e} + "']"`:n?(0,Dt._)`"/" + ${e}`:(0,Dt._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,Dt.getProperty)(e).toString():"/"+Gy(e)}dt.getErrorPath=dL;function eO(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=eO});var uo=ce(Dy=>{"use strict";Object.defineProperty(Dy,"__esModule",{value:!0});var Yr=it(),uL={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")};Dy.default=uL});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(),Wf=Tt(),dn=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=nO(e,t,r);n??(a||s)?tO(o,l):rO(i,(0,St._)`[${l}]`)}Xr.reportError=cL;function fL(e,t=Xr.keywordError,r){let{it:n}=e,{gen:i,compositeRule:o,allErrors:a}=n,s=nO(e,t,r);tO(i,s),o||a||rO(n,dn.default.vErrors)}Xr.reportExtraError=fL;function mL(e,t){e.assign(dn.default.errors,t),e.if((0,St._)`${dn.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,St._)`${dn.default.vErrors}.length`,t),()=>e.assign(dn.default.vErrors,null)))}Xr.resetErrorsCount=mL;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,dn.default.errors,s=>{e.const(a,(0,St._)`${dn.default.vErrors}[${s}]`),e.if((0,St._)`${a}.instancePath === undefined`,()=>e.assign((0,St._)`${a}.instancePath`,(0,St.strConcat)(dn.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 tO(e,t){let r=e.const("err",t);e.if((0,St._)`${dn.default.vErrors} === null`,()=>e.assign(dn.default.vErrors,(0,St._)`[${r}]`),(0,St._)`${dn.default.vErrors}.push(${r})`),e.code((0,St._)`${dn.default.errors}++`)}function rO(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 Wa={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 nO(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,St._)`{}`:hL(e,t,r)}function hL(e,t,r={}){let{gen:n,it:i}=e,o=[_L(i,r),gL(e,r)];return yL(e,t,o),n.object(...o)}function _L({errorPath:e},{instancePath:t}){let r=t?(0,St.str)`${e}${(0,Wf.getErrorPath)(t,Wf.Type.Str)}`:e;return[dn.default.instancePath,(0,St.strConcat)(dn.default.instancePath,r)]}function gL({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,Wf.getErrorPath)(r,Wf.Type.Str)}`),[Wa.schemaPath,i]}function yL(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([Wa.keyword,i],[Wa.params,typeof t=="function"?t(e):t||(0,St._)`{}`]),l.messages&&n.push([Wa.message,typeof r=="function"?r(e):r]),l.verbose&&n.push([Wa.schema,a],[Wa.parentSchema,(0,St._)`${u}${c}`],[dn.default.data,o]),d&&n.push([Wa.propertyName,d])}});var oO=ce(ol=>{"use strict";Object.defineProperty(ol,"__esModule",{value:!0});ol.boolOrEmptySchema=ol.topBoolOrEmptySchema=void 0;var bL=eu(),vL=it(),SL=uo(),wL={message:"boolean schema is false"};function kL(e){let{gen:t,schema:r,validateName:n}=e;r===!1?iO(e,!1):typeof r=="object"&&r.$async===!0?t.return(SL.default.data):(t.assign((0,vL._)`${n}.errors`,null),t.return(!0))}ol.topBoolOrEmptySchema=kL;function xL(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),iO(e)):r.var(t,!0)}ol.boolOrEmptySchema=xL;function iO(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,bL.reportError)(i,wL,void 0,t)}});var qy=ce(al=>{"use strict";Object.defineProperty(al,"__esModule",{value:!0});al.getRules=al.isJSONType=void 0;var TL=["string","number","integer","boolean","null","object","array"],AL=new Set(TL);function OL(e){return typeof e=="string"&&AL.has(e)}al.isJSONType=OL;function CL(){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=CL});var Ly=ce(No=>{"use strict";Object.defineProperty(No,"__esModule",{value:!0});No.shouldUseRule=No.shouldUseGroup=No.schemaHasRulesForType=void 0;function EL({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&aO(e,n)}No.schemaHasRulesForType=EL;function aO(e,t){return t.rules.some(r=>sO(e,r))}No.shouldUseGroup=aO;function sO(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=sO});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 PL=qy(),RL=Ly(),IL=eu(),et=it(),lO=Tt(),sl;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(sl||(Qr.DataType=sl={}));function $L(e){let t=dO(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=$L;function dO(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(PL.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}Qr.getJSONTypes=dO;function ML(e,t){let{gen:r,data:n,opts:i}=e,o=jL(t,i.coerceTypes),a=t.length>0&&!(o.length===0&&t.length===1&&(0,RL.schemaHasRulesForType)(e,t[0]));if(a){let s=Zy(t,n,i.strictNumbers,sl.Wrong);r.if(s,()=>{o.length?zL(e,t,o):Wy(e)})}return a}Qr.coerceAndCheckDataType=ML;var uO=new Set(["string","number","integer","boolean","null"]);function jL(e,t){return t?e.filter(r=>uO.has(r)||t==="array"&&r==="array"):[]}function zL(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(Zy(t,i,o.strictNumbers),()=>n.assign(s,i))),n.if((0,et._)`${s} !== undefined`);for(let d of r)(uO.has(d)||d==="array"&&o.coerceTypes==="array")&&l(d);n.else(),Wy(e),n.endIf(),n.if((0,et._)`${s} !== undefined`,()=>{n.assign(i,s),NL(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
+ || (${a} == "string" && ${i} && ${i} == +${i})`).assign(s,(0,et._)`+${i}`);return;case"integer":n.elseIf((0,et._)`${a} === "boolean" || ${i} === null
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 NL({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,et._)`${t} !== undefined`,()=>e.assign((0,et._)`${t}[${r}]`,n))}function Uy(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=Uy;function Zy(e,t,r,n){if(e.length===1)return Uy(e[0],t,r,n);let i,o=(0,lO.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,Uy(a,t,r,n));return i}Qr.checkDataTypes=Zy;var GL={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,et._)`{type: ${e}}`:(0,et._)`{type: ${t}}`};function Wy(e){let t=FL(e);(0,IL.reportError)(t,GL)}Qr.reportTypeError=Wy;function FL(e){let{gen:t,data:r,schema:n}=e,i=(0,lO.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:i,schemaValue:i,parentSchema:n,params:{},it:e}}});var fO=ce(Vf=>{"use strict";Object.defineProperty(Vf,"__esModule",{value:!0});Vf.assignDefaults=void 0;var ll=it(),DL=Tt();function qL(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let i in r)cO(e,i,r[i].default);else t==="array"&&Array.isArray(n)&&n.forEach((i,o)=>cO(e,o,i.default))}Vf.assignDefaults=qL;function cO(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,DL.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 ei=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(),Vy=Tt(),Go=uo(),LL=Tt();function UL(e,t){let{gen:r,data:n,it:i}=e;r.if(By(r,n,t,i.opts.ownProperties),()=>{e.setParams({missingProperty:(0,nr._)`${t}`},!0),e.error()})}jt.checkReportMissingProp=UL;function ZL({gen:e,data:t,it:{opts:r}},n,i){return(0,nr.or)(...n.map(o=>(0,nr.and)(By(e,t,o,r.ownProperties),(0,nr._)`${i} = ${o}`)))}jt.checkMissingProp=ZL;function WL(e,t){e.setParams({missingProperty:t},!0),e.error()}jt.reportMissingProp=WL;function mO(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,nr._)`Object.prototype.hasOwnProperty`})}jt.hasPropFunc=mO;function Hy(e,t,r){return(0,nr._)`${mO(e)}.call(${t}, ${r})`}jt.isOwnProperty=Hy;function VL(e,t,r,n){let i=(0,nr._)`${t}${(0,nr.getProperty)(r)} !== undefined`;return n?(0,nr._)`${i} && ${Hy(e,t,r)}`:i}jt.propertyInData=VL;function By(e,t,r,n){let i=(0,nr._)`${t}${(0,nr.getProperty)(r)} === undefined`;return n?(0,nr.or)(i,(0,nr.not)(Hy(e,t,r))):i}jt.noPropertyInData=By;function pO(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}jt.allSchemaProperties=pO;function HL(e,t){return pO(t).filter(r=>!(0,Vy.alwaysValidSchema)(e,t[r]))}jt.schemaProperties=HL;function BL({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=BL;var KL=(0,nr._)`new RegExp`;function JL({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"?KL:(0,LL.useFunc)(e,i)}(${r}, ${n})`})}jt.usePattern=JL;function YL(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:Vy.Type.Num},o),t.if((0,nr.not)(o),s)})}}jt.validateArray=YL;function XL(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,Vy.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=XL});var gO=ce(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.validateKeywordUsage=zi.validSchemaType=zi.funcKeywordCode=zi.macroKeywordCode=void 0;var un=it(),Va=uo(),QL=ei(),eU=eu();function tU(e,t){let{gen:r,keyword:n,schema:i,parentSchema:o,it:a}=e,s=t.macro.call(a.self,i,o,a),l=_O(r,n,s);a.opts.validateSchema!==!1&&a.self.validateSchema(s,!0);let d=r.name("valid");e.subschema({schema:s,schemaPath:un.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:l,compositeRule:!0},d),e.pass(d,()=>e.error(!0))}zi.macroKeywordCode=tU;function rU(e,t){var r;let{gen:n,keyword:i,schema:o,parentSchema:a,$data:s,it:l}=e;iU(l,t);let d=!s&&t.compile?t.compile.call(l.self,o,a,l):t.validate,u=_O(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&&hO(e),_(()=>e.error());else{let g=t.async?p():m();t.modifying&&hO(e),_(()=>nU(e,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,un._)`await `),b=>n.assign(c,!1).if((0,un._)`${b} instanceof ${l.ValidationError}`,()=>n.assign(g,(0,un._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,un._)`${u}.errors`;return n.assign(g,null),h(un.nil),g}function h(g=t.async?(0,un._)`await `:un.nil){let b=l.opts.passContext?Va.default.this:Va.default.self,y=!("compile"in t&&!s||t.schema===!1);n.assign(c,(0,un._)`${g}${(0,QL.callValidateCode)(e,u,b,y)}`,t.modifying)}function _(g){var b;n.if((0,un.not)((b=t.valid)!==null&&b!==void 0?b:c),g)}}zi.funcKeywordCode=rU;function hO(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,un._)`${n.parentData}[${n.parentDataProperty}]`))}function nU(e,t){let{gen:r}=e;r.if((0,un._)`Array.isArray(${t})`,()=>{r.assign(Va.default.vErrors,(0,un._)`${Va.default.vErrors} === null ? ${t} : ${Va.default.vErrors}.concat(${t})`).assign(Va.default.errors,(0,un._)`${Va.default.vErrors}.length`),(0,eU.extendErrors)(e)},()=>e.error())}function iU({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function _O(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,un.stringify)(r)})}function oU(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=oU;function aU({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=aU});var bO=ce(Fo=>{"use strict";Object.defineProperty(Fo,"__esModule",{value:!0});Fo.extendSubschemaMode=Fo.extendSubschemaData=Fo.getSubschema=void 0;var Ni=it(),yO=Tt();function sU(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,yO.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=sU;function lU(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,yO.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=lU;function dU(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=dU});var Ky=ce((See,vO)=>{"use strict";vO.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 wO=ce((wee,SO)=>{"use strict";var Do=SO.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(){};Hf(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 Hf(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++)Hf(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)Hf(e,t,r,c[p],i+"/"+u+"/"+uU(p),o,i,u,n,p)}else(u in Do.keywords||e.allKeys&&!(u in Do.skipKeywords))&&Hf(e,t,r,c,i+"/"+u,o,i,u,n)}r(n,i,o,a,s,l,d)}}function uU(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var ru=ce(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.getSchemaRefs=Cn.resolveUrl=Cn.normalizeId=Cn._getFullPath=Cn.getFullPath=Cn.inlineRef=void 0;var cU=Tt(),fU=Ky(),mU=wO(),pU=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function hU(e,t=!0){return typeof e=="boolean"?!0:t===!0?!Jy(e):t?kO(e)<=t:!1}Cn.inlineRef=hU;var _U=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Jy(e){for(let t in e){if(_U.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(Jy)||typeof r=="object"&&Jy(r))return!0}return!1}function kO(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,cU.eachItem)(e[r],n=>t+=kO(n)),t===1/0))return 1/0}return t}function xO(e,t="",r){r!==!1&&(t=dl(t));let n=e.parse(t);return TO(e,n)}Cn.getFullPath=xO;function TO(e,t){return e.serialize(t).split("#")[0]+"#"}Cn._getFullPath=TO;var gU=/#\/?$/;function dl(e){return e?e.replace(gU,""):""}Cn.normalizeId=dl;function yU(e,t,r){return r=dl(r),e.resolve(t,r)}Cn.resolveUrl=yU;var bU=/^[a-z_][-a-z0-9._]*$/i;function vU(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,i=dl(e[r]||t),o={"":i},a=xO(n,i,!1),s={},l=new Set;return mU(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(!bU.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),s;function d(c,f,p){if(f!==void 0&&!fU(c,f))throw u(p)}function u(c){return new Error(`reference "${c}" resolves to more than one schema`)}}Cn.getSchemaRefs=vU});var ou=ce(qo=>{"use strict";Object.defineProperty(qo,"__esModule",{value:!0});qo.getData=qo.KeywordCxt=qo.validateFunctionCode=void 0;var PO=oO(),AO=tu(),Xy=Ly(),Bf=tu(),SU=fO(),iu=gO(),Yy=bO(),Te=it(),Ze=uo(),wU=ru(),co=Tt(),nu=eu();function kU(e){if($O(e)&&(MO(e),IO(e))){AU(e);return}RO(e,()=>(0,PO.topBoolOrEmptySchema)(e))}qo.validateFunctionCode=kU;function RO({gen:e,validateName:t,schema:r,schemaEnv:n,opts:i},o){i.code.es5?e.func(t,(0,Te._)`${Ze.default.data}, ${Ze.default.valCxt}`,n.$async,()=>{e.code((0,Te._)`"use strict"; ${OO(r,i)}`),TU(e,i),e.code(o)}):e.func(t,(0,Te._)`${Ze.default.data}, ${xU(i)}`,n.$async,()=>e.code(OO(r,i)).code(o))}function xU(e){return(0,Te._)`{${Ze.default.instancePath}="", ${Ze.default.parentData}, ${Ze.default.parentDataProperty}, ${Ze.default.rootData}=${Ze.default.data}${e.dynamicRef?(0,Te._)`, ${Ze.default.dynamicAnchors}={}`:Te.nil}}={}`}function TU(e,t){e.if(Ze.default.valCxt,()=>{e.var(Ze.default.instancePath,(0,Te._)`${Ze.default.valCxt}.${Ze.default.instancePath}`),e.var(Ze.default.parentData,(0,Te._)`${Ze.default.valCxt}.${Ze.default.parentData}`),e.var(Ze.default.parentDataProperty,(0,Te._)`${Ze.default.valCxt}.${Ze.default.parentDataProperty}`),e.var(Ze.default.rootData,(0,Te._)`${Ze.default.valCxt}.${Ze.default.rootData}`),t.dynamicRef&&e.var(Ze.default.dynamicAnchors,(0,Te._)`${Ze.default.valCxt}.${Ze.default.dynamicAnchors}`)},()=>{e.var(Ze.default.instancePath,(0,Te._)`""`),e.var(Ze.default.parentData,(0,Te._)`undefined`),e.var(Ze.default.parentDataProperty,(0,Te._)`undefined`),e.var(Ze.default.rootData,Ze.default.data),t.dynamicRef&&e.var(Ze.default.dynamicAnchors,(0,Te._)`{}`)})}function AU(e){let{schema:t,opts:r,gen:n}=e;RO(e,()=>{r.$comment&&t.$comment&&zO(e),RU(e),n.let(Ze.default.vErrors,null),n.let(Ze.default.errors,0),r.unevaluated&&OU(e),jO(e),MU(e)})}function OU(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 OO(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 CU(e,t){if($O(e)&&(MO(e),IO(e))){EU(e,t);return}(0,PO.boolOrEmptySchema)(e,t)}function IO({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 $O(e){return typeof e.schema!="boolean"}function EU(e,t){let{schema:r,gen:n,opts:i}=e;i.$comment&&r.$comment&&zO(e),IU(e),$U(e);let o=n.const("_errs",Ze.default.errors);jO(e,o),n.var(t,(0,Te._)`${o} === ${Ze.default.errors}`)}function MO(e){(0,co.checkUnknownRules)(e),PU(e)}function jO(e,t){if(e.opts.jtd)return CO(e,[],!1,t);let r=(0,AO.getSchemaTypes)(e.schema),n=(0,AO.coerceAndCheckDataType)(e,r);CO(e,r,!n,t)}function PU(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 RU(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 IU(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,wU.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function $U(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function zO({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:i}){let o=r.$comment;if(i.$comment===!0)e.code((0,Te._)`${Ze.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._)`${Ze.default.self}.opts.$comment(${o}, ${a}, ${s}.schema)`)}}function MU(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:i,opts:o}=e;r.$async?t.if((0,Te._)`${Ze.default.errors} === 0`,()=>t.return(Ze.default.data),()=>t.throw((0,Te._)`new ${i}(${Ze.default.vErrors})`)):(t.assign((0,Te._)`${n}.errors`,Ze.default.vErrors),o.unevaluated&&jU(e),t.return((0,Te._)`${Ze.default.errors} === 0`))}function jU({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 CO(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(()=>GO(e,"$ref",u.all.$ref.definition));return}l.jtd||zU(e,t),i.block(()=>{for(let f of u.rules)c(f);c(u.post)});function c(f){(0,Xy.shouldUseGroup)(o,f)&&(f.type?(i.if((0,Bf.checkDataType)(f.type,a,l.strictNumbers)),EO(e,f),t.length===1&&t[0]===f.type&&r&&(i.else(),(0,Bf.reportTypeError)(e)),i.endIf()):EO(e,f),s||i.if((0,Te._)`${Ze.default.errors} === ${n||0}`))}}function EO(e,t){let{gen:r,schema:n,opts:{useDefaults:i}}=e;i&&(0,SU.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0,Xy.shouldUseRule)(n,o)&&GO(e,o.keyword,o.definition,t.type)})}function zU(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(NU(e,t),e.opts.allowUnionTypes||GU(e,t),FU(e,e.dataTypes))}function NU(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{NO(e.dataTypes,r)||Qy(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),qU(e,t)}}function GU(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&Qy(e,"use allowUnionTypes to allow union type keyword")}function FU(e,t){let r=e.self.RULES.all;for(let n in r){let i=r[n];if(typeof i=="object"&&(0,Xy.shouldUseRule)(e.schema,i)){let{type:o}=i.definition;o.length&&!o.some(a=>DU(t,a))&&Qy(e,`missing type "${o.join(",")}" for keyword "${n}"`)}}}function DU(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function NO(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function qU(e,t){let r=[];for(let n of e.dataTypes)NO(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function Qy(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,co.checkStrictMode)(e,t,e.opts.strictTypes)}var Kf=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",FO(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",Ze.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,Bf.checkDataTypes)(l,r,o.opts.strictNumbers,Bf.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,Yy.getSubschema)(this.it,t);(0,Yy.extendSubschemaData)(n,this.it,t),(0,Yy.extendSubschemaMode)(n,t);let i={...this.it,...n,items:void 0,props:void 0};return CU(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=Kf;function GO(e,t,r,n){let i=new Kf(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 LU=/^\/(?:[^~]|~0|~1)*$/,UU=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function FO(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let i,o;if(e==="")return Ze.default.rootData;if(e[0]==="/"){if(!LU.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);i=e,o=Ze.default.rootData}else{let d=UU.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=FO});var Jf=ce(tb=>{"use strict";Object.defineProperty(tb,"__esModule",{value:!0});var eb=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};tb.default=eb});var au=ce(ib=>{"use strict";Object.defineProperty(ib,"__esModule",{value:!0});var rb=ru(),nb=class extends Error{constructor(t,r,n,i){super(i||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,rb.resolveUrl)(t,r,n),this.missingSchema=(0,rb.normalizeId)((0,rb.getFullPath)(t,this.missingRef))}};ib.default=nb});var Xf=ce(ti=>{"use strict";Object.defineProperty(ti,"__esModule",{value:!0});ti.resolveSchema=ti.getCompilingSchema=ti.resolveRef=ti.compileSchema=ti.SchemaEnv=void 0;var yi=it(),ZU=Jf(),Ha=uo(),bi=ru(),DO=Tt(),WU=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={}}};ti.SchemaEnv=ul;function ab(e){let t=qO.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:ZU.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,WU.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)}}ti.compileSchema=ab;function VU(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=KU.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]=HU.call(this,o)}ti.resolveRef=VU;function HU(e){return(0,bi.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:ab.call(this,e)}function qO(e){for(let t of this._compilations)if(BU(t,e))return t}ti.getCompilingSchema=qO;function BU(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function KU(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||Yf.call(this,e,t)}function Yf(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 ob.call(this,r,e);let o=(0,bi.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let s=Yf.call(this,e,a);return typeof s?.schema!="object"?void 0:ob.call(this,r,s)}if(typeof a?.schema=="object"){if(a.validate||ab.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 ob.call(this,r,a)}}ti.resolveSchema=Yf;var JU=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function ob(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,DO.unescapeFragment)(s)];if(l===void 0)return;r=l;let d=typeof r=="object"&&r[this.opts.schemaId];!JU.has(s)&&d&&(t=(0,bi.resolveUrl)(this.opts.uriResolver,t,d))}let o;if(typeof r!="boolean"&&r.$ref&&!(0,DO.schemaHasRulesButRef)(r,this.RULES)){let s=(0,bi.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=Yf.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 LO=ce((Cee,YU)=>{YU.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 lb=ce((Eee,VO)=>{"use strict";var XU=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),ZO=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 sb(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 QU=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function UO(e){return e.length=0,!0}function e2(e,t,r){if(e.length){let n=sb(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function t2(e){let t=0,r={error:!1,address:"",zone:""},n=[],i=[],o=!1,a=!1,s=e2;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=UO}else{i.push(d);continue}}return i.length&&(s===UO?r.zone=i.join(""):a?n.push(i.join("")):n.push(sb(i))),r.address=n.join(""),r}function WO(e){if(r2(e,":")<2)return{host:e,isIPV6:!1};let t=t2(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 r2(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function n2(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 i2(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 o2(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!ZO(r)){let n=WO(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}VO.exports={nonSimpleDomain:QU,recomposeAuthority:o2,normalizeComponentEncoding:i2,removeDotSegments:n2,isIPv4:ZO,isUUID:XU,normalizeIPv6:WO,stringArrayToHexStripped:sb}});var YO=ce((Pee,JO)=>{"use strict";var{isUUID:a2}=lb(),s2=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,l2=["http","https","ws","wss","urn","urn:uuid"];function d2(e){return l2.indexOf(e)!==-1}function db(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 HO(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function BO(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 u2(e){return e.secure=db(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function c2(e){if((e.port===(db(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 f2(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(s2);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=ub(i);e.path=void 0,o&&(e=o.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function m2(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=ub(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||!a2(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function h2(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var KO={scheme:"http",domainHost:!0,parse:HO,serialize:BO},_2={scheme:"https",domainHost:KO.domainHost,parse:HO,serialize:BO},Qf={scheme:"ws",domainHost:!0,parse:u2,serialize:c2},g2={scheme:"wss",domainHost:Qf.domainHost,parse:Qf.parse,serialize:Qf.serialize},y2={scheme:"urn",parse:f2,serialize:m2,skipNormalize:!0},b2={scheme:"urn:uuid",parse:p2,serialize:h2,skipNormalize:!0},em={http:KO,https:_2,ws:Qf,wss:g2,urn:y2,"urn:uuid":b2};Object.setPrototypeOf(em,null);function ub(e){return e&&(em[e]||em[e.toLowerCase()])||void 0}JO.exports={wsIsSecure:db,SCHEMES:em,isValidSchemeName:d2,getSchemeHandler:ub}});var eC=ce((Ree,rm)=>{"use strict";var{normalizeIPv6:v2,removeDotSegments:su,recomposeAuthority:S2,normalizeComponentEncoding:tm,isIPv4:w2,nonSimpleDomain:k2}=lb(),{SCHEMES:x2,getSchemeHandler:XO}=YO();function T2(e,t){return typeof e=="string"?e=Gi(fo(e,t),t):typeof e=="object"&&(e=fo(Gi(e,t),t)),e}function A2(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},i=QO(fo(e,n),fo(t,n),n,!0);return n.skipEscape=!0,Gi(i,n)}function QO(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 O2(e,t,r){return typeof e=="string"?(e=unescape(e),e=Gi(tm(fo(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Gi(tm(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=Gi(tm(fo(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Gi(tm(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=XO(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=S2(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 C2=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\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(C2);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(w2(n.host)===!1){let l=v2(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=XO(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&i===!1&&k2(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 cb={SCHEMES:x2,normalize:T2,resolve:A2,resolveComponent:QO,equal:O2,serialize:Gi,parse:fo};rm.exports=cb;rm.exports.default=cb;rm.exports.fastUri=cb});var rC=ce(fb=>{"use strict";Object.defineProperty(fb,"__esModule",{value:!0});var tC=eC();tC.code='require("ajv/dist/runtime/uri").default';fb.default=tC});var uC=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 E2=ou();Object.defineProperty(Wr,"KeywordCxt",{enumerable:!0,get:function(){return E2.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 P2=Jf(),sC=au(),R2=qy(),lu=Xf(),I2=it(),du=ru(),nm=tu(),pb=Tt(),nC=LO(),$2=rC(),lC=(e,t)=>new RegExp(e,t);lC.code="new RegExp";var M2=["removeAdditional","useDefaults","coerceTypes"],j2=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),z2={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."},N2={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},iC=200;function G2(e){var t,r,n,i,o,a,s,l,d,u,c,f,p,m,h,_,g,b,y,v,S,A,R,Z,L;let ae=e.strict,U=(t=e.code)===null||t===void 0?void 0:t.optimize,K=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:lC,W=(i=e.uriResolver)!==null&&i!==void 0?i:$2.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:K,regExp:oe}:{optimize:K,regExp:oe},loopRequired:(h=e.loopRequired)!==null&&h!==void 0?h:iC,loopEnum:(_=e.loopEnum)!==null&&_!==void 0?_:iC,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:(Z=e.unicodeRegExp)!==null&&Z!==void 0?Z:!0,int32range:(L=e.int32range)!==null&&L!==void 0?L:!0,uriResolver:W}}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,...G2(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new I2.ValueScope({scope:{},prefixes:j2,es5:r,lines:n}),this.logger=Z2(t.logger);let i=t.validateFormats;t.validateFormats=!1,this.RULES=(0,R2.getRules)(),oC.call(this,z2,t,"NOT SUPPORTED"),oC.call(this,N2,t,"DEPRECATED","warn"),this._metaOpts=L2.call(this),t.formats&&D2.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&q2.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),F2.call(this),t.validateFormats=i}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,i=nC;n==="id"&&(i={...nC},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 sC.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=aC.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=aC.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(V2.call(this,n,r),!r)return(0,pb.eachItem)(n,o=>mb.call(this,o)),this;B2.call(this,r);let i={...r,type:(0,nm.getJSONTypes)(r.type),schemaType:(0,nm.getJSONTypes)(r.schemaType)};return(0,pb.eachItem)(n,i.type.length===0?o=>mb.call(this,o,i):o=>i.type.forEach(a=>mb.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]=dC(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=P2.default;uu.MissingRefError=sC.default;Wr.default=uu;function oC(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 aC(e){return e=(0,du.normalizeId)(e),this.schemas[e]||this.refs[e]}function F2(){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 D2(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function q2(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 L2(){let e={...this.opts};for(let t of M2)delete e[t];return e}var U2={log(){},warn(){},error(){}};function Z2(e){if(e===!1)return U2;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 W2=/^[a-z_$][a-z0-9_$:-]*$/i;function V2(e,t){let{RULES:r}=this;if((0,pb.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!W2.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 mb(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,nm.getJSONTypes)(t.type),schemaType:(0,nm.getJSONTypes)(t.schemaType)}};t.before?H2.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 H2(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 B2(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=dC(t)),e.validateSchema=this.compile(t,!0))}var K2={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function dC(e){return{anyOf:[e,K2]}}});var cC=ce(hb=>{"use strict";Object.defineProperty(hb,"__esModule",{value:!0});var J2={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};hb.default=J2});var hC=ce(Ba=>{"use strict";Object.defineProperty(Ba,"__esModule",{value:!0});Ba.callRef=Ba.getValidate=void 0;var Y2=au(),fC=ei(),En=it(),fl=uo(),mC=Xf(),im=Tt(),X2={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=mC.resolveRef.call(l,d,i,r);if(u===void 0)throw new Y2.default(n.opts.uriResolver,i,r);if(u instanceof mC.SchemaEnv)return f(u);return p(u);function c(){if(o===d)return om(e,a,o,o.$async);let m=t.scopeValue("root",{ref:d});return om(e,(0,En._)`${m}.validate`,d,d.$async)}function f(m){let h=pC(e,m);om(e,h,m,m.$async)}function p(m){let h=t.scopeValue("schema",s.code.source===!0?{ref:m,code:(0,En.stringify)(m)}:{ref:m}),_=t.name("valid"),g=e.subschema({schema:m,dataTypes:[],schemaPath:En.nil,topSchemaRef:h,errSchemaPath:r},_);e.mergeEvaluated(g),e.ok(_)}}};function pC(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,En._)`${r.scopeValue("wrapper",{ref:t})}.validate`}Ba.getValidate=pC;function om(e,t,r,n){let{gen:i,it:o}=e,{allErrors:a,schemaEnv:s,opts:l}=o,d=l.passContext?fl.default.this:En.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,En._)`await ${(0,fC.callValidateCode)(e,t,d)}`),p(t),a||i.assign(m,!0)},h=>{i.if((0,En._)`!(${h} instanceof ${o.ValidationError})`,()=>i.throw(h)),f(h),a||i.assign(m,!1)}),e.ok(m)}function c(){e.result((0,fC.callValidateCode)(e,t,d),()=>p(t),()=>f(t))}function f(m){let h=(0,En._)`${m}.errors`;i.assign(fl.default.vErrors,(0,En._)`${fl.default.vErrors} === null ? ${h} : ${fl.default.vErrors}.concat(${h})`),i.assign(fl.default.errors,(0,En._)`${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=im.mergeEvaluated.props(i,_.props,o.props));else{let g=i.var("props",(0,En._)`${m}.evaluated.props`);o.props=im.mergeEvaluated.props(i,g,o.props,En.Name)}if(o.items!==!0)if(_&&!_.dynamicItems)_.items!==void 0&&(o.items=im.mergeEvaluated.items(i,_.items,o.items));else{let g=i.var("items",(0,En._)`${m}.evaluated.items`);o.items=im.mergeEvaluated.items(i,g,o.items,En.Name)}}}Ba.callRef=om;Ba.default=X2});var _C=ce(_b=>{"use strict";Object.defineProperty(_b,"__esModule",{value:!0});var Q2=cC(),eZ=hC(),tZ=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Q2.default,eZ.default];_b.default=tZ});var gC=ce(gb=>{"use strict";Object.defineProperty(gb,"__esModule",{value:!0});var am=it(),Lo=am.operators,sm={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}},rZ={message:({keyword:e,schemaCode:t})=>(0,am.str)`must be ${sm[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,am._)`{comparison: ${sm[e].okStr}, limit: ${t}}`},nZ={keyword:Object.keys(sm),type:"number",schemaType:"number",$data:!0,error:rZ,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,am._)`${r} ${sm[t].fail} ${n} || isNaN(${r})`)}};gb.default=nZ});var yC=ce(yb=>{"use strict";Object.defineProperty(yb,"__esModule",{value:!0});var cu=it(),iZ={message:({schemaCode:e})=>(0,cu.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,cu._)`{multipleOf: ${e}}`},oZ={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:iZ,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}))`)}};yb.default=oZ});var vC=ce(bb=>{"use strict";Object.defineProperty(bb,"__esModule",{value:!0});function bC(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}bb.default=bC;bC.code='require("ajv/dist/runtime/ucs2length").default'});var SC=ce(vb=>{"use strict";Object.defineProperty(vb,"__esModule",{value:!0});var Ka=it(),aZ=Tt(),sZ=vC(),lZ={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}}`},dZ={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:lZ,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,aZ.useFunc)(e.gen,sZ.default)}(${r})`;e.fail$data((0,Ka._)`${a} ${o} ${n}`)}};vb.default=dZ});var wC=ce(Sb=>{"use strict";Object.defineProperty(Sb,"__esModule",{value:!0});var uZ=ei(),lm=it(),cZ={message:({schemaCode:e})=>(0,lm.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,lm._)`{pattern: ${e}}`},fZ={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:cZ,code(e){let{data:t,$data:r,schema:n,schemaCode:i,it:o}=e,a=o.opts.unicodeRegExp?"u":"",s=r?(0,lm._)`(new RegExp(${i}, ${a}))`:(0,uZ.usePattern)(e,n);e.fail$data((0,lm._)`!${s}.test(${t})`)}};Sb.default=fZ});var kC=ce(wb=>{"use strict";Object.defineProperty(wb,"__esModule",{value:!0});var fu=it(),mZ={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}}`},pZ={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:mZ,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}`)}};wb.default=pZ});var xC=ce(kb=>{"use strict";Object.defineProperty(kb,"__esModule",{value:!0});var mu=ei(),pu=it(),hZ=Tt(),_Z={message:({params:{missingProperty:e}})=>(0,pu.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,pu._)`{missingProperty: ${e}}`},gZ={keyword:"required",type:"object",schemaType:"array",$data:!0,error:_Z,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,hZ.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)}}};kb.default=gZ});var TC=ce(xb=>{"use strict";Object.defineProperty(xb,"__esModule",{value:!0});var hu=it(),yZ={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}}`},bZ={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:yZ,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}`)}};xb.default=bZ});var dm=ce(Tb=>{"use strict";Object.defineProperty(Tb,"__esModule",{value:!0});var AC=Ky();AC.code='require("ajv/dist/runtime/equal").default';Tb.default=AC});var OC=ce(Ob=>{"use strict";Object.defineProperty(Ob,"__esModule",{value:!0});var Ab=tu(),Vr=it(),vZ=Tt(),SZ=dm(),wZ={message:({params:{i:e,j:t}})=>(0,Vr.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,Vr._)`{i: ${e}, j: ${t}}`},kZ={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:wZ,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,Ab.getSchemaTypes)(o.items):[];e.block$data(l,u,(0,Vr._)`${a} === false`),e.ok(l);function u(){let m=t.let("i",(0,Vr._)`${r}.length`),h=t.let("j");e.setParams({i:m,j:h}),t.assign(l,!0),t.if((0,Vr._)`${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,Ab.checkDataTypes)(d,_,s.opts.strictNumbers,Ab.DataType.Wrong),b=t.const("indices",(0,Vr._)`{}`);t.for((0,Vr._)`;${m}--;`,()=>{t.let(_,(0,Vr._)`${r}[${m}]`),t.if(g,(0,Vr._)`continue`),d.length>1&&t.if((0,Vr._)`typeof ${_} == "string"`,(0,Vr._)`${_} += "_"`),t.if((0,Vr._)`typeof ${b}[${_}] == "number"`,()=>{t.assign(h,(0,Vr._)`${b}[${_}]`),e.error(),t.assign(l,!1).break()}).code((0,Vr._)`${b}[${_}] = ${m}`)})}function p(m,h){let _=(0,vZ.useFunc)(t,SZ.default),g=t.name("outer");t.label(g).for((0,Vr._)`;${m}--;`,()=>t.for((0,Vr._)`${h} = ${m}; ${h}--;`,()=>t.if((0,Vr._)`${_}(${r}[${m}], ${r}[${h}])`,()=>{e.error(),t.assign(l,!1).break(g)})))}}};Ob.default=kZ});var CC=ce(Eb=>{"use strict";Object.defineProperty(Eb,"__esModule",{value:!0});var Cb=it(),xZ=Tt(),TZ=dm(),AZ={message:"must be equal to constant",params:({schemaCode:e})=>(0,Cb._)`{allowedValue: ${e}}`},OZ={keyword:"const",$data:!0,error:AZ,code(e){let{gen:t,data:r,$data:n,schemaCode:i,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0,Cb._)`!${(0,xZ.useFunc)(t,TZ.default)}(${r}, ${i})`):e.fail((0,Cb._)`${o} !== ${r}`)}};Eb.default=OZ});var EC=ce(Pb=>{"use strict";Object.defineProperty(Pb,"__esModule",{value:!0});var _u=it(),CZ=Tt(),EZ=dm(),PZ={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,_u._)`{allowedValues: ${e}}`},RZ={keyword:"enum",schemaType:"array",$data:!0,error:PZ,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,CZ.useFunc)(t,EZ.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}`}}};Pb.default=RZ});var PC=ce(Rb=>{"use strict";Object.defineProperty(Rb,"__esModule",{value:!0});var IZ=gC(),$Z=yC(),MZ=SC(),jZ=wC(),zZ=kC(),NZ=xC(),GZ=TC(),FZ=OC(),DZ=CC(),qZ=EC(),LZ=[IZ.default,$Z.default,MZ.default,jZ.default,zZ.default,NZ.default,GZ.default,FZ.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},DZ.default,qZ.default];Rb.default=LZ});var $b=ce(gu=>{"use strict";Object.defineProperty(gu,"__esModule",{value:!0});gu.validateAdditionalItems=void 0;var Ja=it(),Ib=Tt(),UZ={message:({params:{len:e}})=>(0,Ja.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Ja._)`{limit: ${e}}`},ZZ={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:UZ,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,Ib.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}RC(e,n)}};function RC(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,Ib.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:Ib.Type.Num},d),a.allErrors||r.if((0,Ja.not)(d),()=>r.break())})}}gu.validateAdditionalItems=RC;gu.default=ZZ});var Mb=ce(yu=>{"use strict";Object.defineProperty(yu,"__esModule",{value:!0});yu.validateTuple=void 0;var IC=it(),um=Tt(),WZ=ei(),VZ={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return $C(e,"additionalItems",t);r.items=!0,!(0,um.alwaysValidSchema)(r,t)&&e.ok((0,WZ.validateArray)(e))}};function $C(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=um.mergeEvaluated.items(n,r.length,s.items));let l=n.name("valid"),d=n.const("len",(0,IC._)`${o}.length`);r.forEach((c,f)=>{(0,um.alwaysValidSchema)(s,c)||(n.if((0,IC._)`${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,um.checkStrictMode)(s,_,f.strictTuples)}}}yu.validateTuple=$C;yu.default=VZ});var MC=ce(jb=>{"use strict";Object.defineProperty(jb,"__esModule",{value:!0});var HZ=Mb(),BZ={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,HZ.validateTuple)(e,"items")};jb.default=BZ});var zC=ce(zb=>{"use strict";Object.defineProperty(zb,"__esModule",{value:!0});var jC=it(),KZ=Tt(),JZ=ei(),YZ=$b(),XZ={message:({params:{len:e}})=>(0,jC.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,jC._)`{limit: ${e}}`},QZ={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:XZ,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:i}=r;n.items=!0,!(0,KZ.alwaysValidSchema)(n,t)&&(i?(0,YZ.validateAdditionalItems)(e,i):e.ok((0,JZ.validateArray)(e)))}};zb.default=QZ});var NC=ce(Nb=>{"use strict";Object.defineProperty(Nb,"__esModule",{value:!0});var ri=it(),cm=Tt(),eW={message:({params:{min:e,max:t}})=>t===void 0?(0,ri.str)`must contain at least ${e} valid item(s)`:(0,ri.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,ri._)`{minContains: ${e}}`:(0,ri._)`{minContains: ${e}, maxContains: ${t}}`},tW={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:eW,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,ri._)`${i}.length`);if(e.setParams({min:a,max:s}),s===void 0&&a===0){(0,cm.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(s!==void 0&&a>s){(0,cm.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,cm.alwaysValidSchema)(o,r)){let h=(0,ri._)`${u} >= ${a}`;s!==void 0&&(h=(0,ri._)`${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,ri._)`${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:cm.Type.Num,compositeRule:!0},h),_()})}function m(h){t.code((0,ri._)`${h}++`),s===void 0?t.if((0,ri._)`${h} >= ${a}`,()=>t.assign(c,!0).break()):(t.if((0,ri._)`${h} > ${s}`,()=>t.assign(c,!1).break()),a===1?t.assign(c,!0):t.if((0,ri._)`${h} >= ${a}`,()=>t.assign(c,!0)))}}};Nb.default=tW});var DC=ce(Fi=>{"use strict";Object.defineProperty(Fi,"__esModule",{value:!0});Fi.validateSchemaDeps=Fi.validatePropertyDeps=Fi.error=void 0;var Gb=it(),rW=Tt(),bu=ei();Fi.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,Gb.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,Gb._)`{property: ${e},
8
8
  missingProperty: ${n},
9
9
  depsCount: ${t},
10
- deps: ${r}}`};var lZ={keyword:"dependencies",type:"object",schemaType:"object",error:zi.error,code(e){let[t,r]=dZ(e);yC(e,t),bC(e,r)}};function dZ({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 yC(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,cu.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,cu.checkReportMissingProp)(e,d)}):(r.if((0,Ab._)`${l} && (${(0,cu.checkMissingProp)(e,s,o)})`),(0,cu.reportMissingProp)(e,o),r.else())}}zi.validatePropertyDeps=yC;function bC(e,t=e.schema){let{gen:r,data:n,keyword:i,it:o}=e,a=r.name("valid");for(let s in t)(0,sZ.alwaysValidSchema)(o,t[s])||(r.if((0,cu.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))}zi.validateSchemaDeps=bC;zi.default=lZ});var wC=fe(Ob=>{"use strict";Object.defineProperty(Ob,"__esModule",{value:!0});var SC=it(),uZ=Tt(),cZ={message:"property name must be valid",params:({params:e})=>(0,SC._)`{propertyName: ${e.propertyName}}`},fZ={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:cZ,code(e){let{gen:t,schema:r,data:n,it:i}=e;if((0,uZ.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,SC.not)(o),()=>{e.error(!0),i.allErrors||t.break()})}),e.ok(o)}};Ob.default=fZ});var Eb=fe(Cb=>{"use strict";Object.defineProperty(Cb,"__esModule",{value:!0});var nm=Kn(),_i=it(),mZ=ao(),im=Tt(),pZ={message:"must NOT have additional properties",params:({params:e})=>(0,_i._)`{additionalProperty: ${e.additionalProperty}}`},hZ={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:pZ,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,im.alwaysValidSchema)(a,r))return;let d=(0,nm.allSchemaProperties)(n.properties),u=(0,nm.allSchemaProperties)(n.patternProperties);c(),e.ok((0,_i._)`${o} === ${mZ.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,im.schemaRefOrVal)(a,n.properties,"properties");g=(0,nm.isOwnProperty)(t,b,_)}else d.length?g=(0,_i.or)(...d.map(b=>(0,_i._)`${_} === ${b}`)):g=_i.nil;return u.length&&(g=(0,_i.or)(g,...u.map(b=>(0,_i._)`${(0,nm.usePattern)(e,b)}.test(${_})`))),(0,_i.not)(g)}function p(_){t.code((0,_i._)`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,im.alwaysValidSchema)(a,r)){let g=t.name("valid");l.removeAdditional==="failing"?(h(_,g,!1),t.if((0,_i.not)(g),()=>{e.reset(),p(_)})):(h(_,g),s||t.if((0,_i.not)(g),()=>t.break()))}}function h(_,g,b){let y={keyword:"additionalProperties",dataProp:_,dataPropType:im.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(y,g)}}};Cb.default=hZ});var TC=fe(Rb=>{"use strict";Object.defineProperty(Rb,"__esModule",{value:!0});var _Z=Yd(),kC=Kn(),Pb=Tt(),xC=Eb(),gZ={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 _Z.KeywordCxt(o,xC.default,"additionalProperties"));let a=(0,kC.allSchemaProperties)(r);for(let c of a)o.definedProperties.add(c);o.opts.unevaluated&&a.length&&o.props!==!0&&(o.props=Pb.mergeEvaluated.props(t,(0,Pb.toHash)(a),o.props));let s=a.filter(c=>!(0,Pb.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,kC.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)}}};Rb.default=gZ});var EC=fe(Ib=>{"use strict";Object.defineProperty(Ib,"__esModule",{value:!0});var AC=Kn(),om=it(),OC=Tt(),CC=Tt(),yZ={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,AC.allSchemaProperties)(r),l=s.filter(h=>(0,OC.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 om.Name)&&(o.props=(0,CC.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,OC.checkStrictMode)(o,`property ${_} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){t.forIn("key",n,_=>{t.if((0,om._)`${(0,AC.usePattern)(e,h)}.test(${_})`,()=>{let g=l.includes(h);g||e.subschema({keyword:"patternProperties",schemaProp:h,dataProp:_,dataPropType:CC.Type.Str},u),o.opts.unevaluated&&c!==!0?t.assign((0,om._)`${c}[${_}]`,!0):!g&&!o.allErrors&&t.if((0,om.not)(u),()=>t.break())})})}}};Ib.default=yZ});var PC=fe($b=>{"use strict";Object.defineProperty($b,"__esModule",{value:!0});var bZ=Tt(),vZ={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,bZ.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"}};$b.default=vZ});var RC=fe(Mb=>{"use strict";Object.defineProperty(Mb,"__esModule",{value:!0});var SZ=Kn(),wZ={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:SZ.validateUnion,error:{message:"must match a schema in anyOf"}};Mb.default=wZ});var IC=fe(jb=>{"use strict";Object.defineProperty(jb,"__esModule",{value:!0});var am=it(),kZ=Tt(),xZ={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,am._)`{passingSchemas: ${e.passing}}`},TZ={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:xZ,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,kZ.alwaysValidSchema)(i,u)?t.var(l,!0):f=e.subschema({keyword:"oneOf",schemaProp:c,compositeRule:!0},l),c>0&&t.if((0,am._)`${l} && ${a}`).assign(a,!1).assign(s,(0,am._)`[${s}, ${c}]`).else(),t.if(l,()=>{t.assign(a,!0),t.assign(s,c),f&&e.mergeEvaluated(f,am.Name)})})}}};jb.default=TZ});var $C=fe(zb=>{"use strict";Object.defineProperty(zb,"__esModule",{value:!0});var AZ=Tt(),OZ={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,AZ.alwaysValidSchema)(n,o))return;let s=e.subschema({keyword:"allOf",schemaProp:a},i);e.ok(i),e.mergeEvaluated(s)})}};zb.default=OZ});var zC=fe(Nb=>{"use strict";Object.defineProperty(Nb,"__esModule",{value:!0});var sm=it(),jC=Tt(),CZ={message:({params:e})=>(0,sm.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,sm._)`{failingKeyword: ${e.ifClause}}`},EZ={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:CZ,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,jC.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let i=MC(n,"then"),o=MC(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,sm.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,sm._)`${u}`):e.setParams({ifClause:u})}}}};function MC(e,t){let r=e.schema[t];return r!==void 0&&!(0,jC.alwaysValidSchema)(e,r)}Nb.default=EZ});var NC=fe(Gb=>{"use strict";Object.defineProperty(Gb,"__esModule",{value:!0});var PZ=Tt(),RZ={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,PZ.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};Gb.default=RZ});var GC=fe(Fb=>{"use strict";Object.defineProperty(Fb,"__esModule",{value:!0});var IZ=Sb(),$Z=pC(),MZ=wb(),jZ=_C(),zZ=gC(),NZ=vC(),GZ=wC(),FZ=Eb(),DZ=TC(),qZ=EC(),LZ=PC(),UZ=RC(),ZZ=IC(),WZ=$C(),VZ=zC(),HZ=NC();function BZ(e=!1){let t=[LZ.default,UZ.default,ZZ.default,WZ.default,VZ.default,HZ.default,GZ.default,FZ.default,NZ.default,DZ.default,qZ.default];return e?t.push($Z.default,jZ.default):t.push(IZ.default,MZ.default),t.push(zZ.default),t}Fb.default=BZ});var FC=fe(Db=>{"use strict";Object.defineProperty(Db,"__esModule",{value:!0});var wr=it(),KZ={message:({schemaCode:e})=>(0,wr.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,wr._)`{format: ${e}}`},JZ={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:KZ,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,wr._)`${m}[${a}]`),_=r.let("fType"),g=r.let("format");r.if((0,wr._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(_,(0,wr._)`${h}.type || "string"`).assign(g,(0,wr._)`${h}.validate`),()=>r.assign(_,(0,wr._)`"string"`).assign(g,h)),e.fail$data((0,wr.or)(b(),y()));function b(){return l.strictSchema===!1?wr.nil:(0,wr._)`${a} && !${g}`}function y(){let v=u.$async?(0,wr._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,wr._)`${g}(${n})`,S=(0,wr._)`(typeof ${g} == "function" ? ${v} : ${g}.test(${n}))`;return(0,wr._)`${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,wr.regexpCode)(S):l.code.formats?(0,wr._)`${l.code.formats}${(0,wr.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,wr._)`${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,wr._)`await ${g}(${n})`}return typeof _=="function"?(0,wr._)`${g}(${n})`:(0,wr._)`${g}.test(${n})`}}}};Db.default=JZ});var DC=fe(qb=>{"use strict";Object.defineProperty(qb,"__esModule",{value:!0});var YZ=FC(),XZ=[YZ.default];qb.default=XZ});var qC=fe(al=>{"use strict";Object.defineProperty(al,"__esModule",{value:!0});al.contentVocabulary=al.metadataVocabulary=void 0;al.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];al.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var UC=fe(Lb=>{"use strict";Object.defineProperty(Lb,"__esModule",{value:!0});var QZ=JO(),eW=uC(),tW=GC(),rW=DC(),LC=qC(),nW=[QZ.default,eW.default,(0,tW.default)(),rW.default,LC.metadataVocabulary,LC.contentVocabulary];Lb.default=nW});var WC=fe(lm=>{"use strict";Object.defineProperty(lm,"__esModule",{value:!0});lm.DiscrError=void 0;var ZC;(function(e){e.Tag="tag",e.Mapping="mapping"})(ZC||(lm.DiscrError=ZC={}))});var HC=fe(Zb=>{"use strict";Object.defineProperty(Zb,"__esModule",{value:!0});var sl=it(),Ub=WC(),VC=Uf(),iW=Xd(),oW=Tt(),aW={message:({params:{discrError:e,tagName:t}})=>e===Ub.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,sl._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},sW={keyword:"discriminator",type:"object",schemaType:"object",error:aW,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,sl._)`${r}${(0,sl.getProperty)(s)}`);t.if((0,sl._)`typeof ${d} == "string"`,()=>u(),()=>e.error(!1,{discrError:Ub.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,sl._)`${d} === ${m}`),t.assign(l,c(p[m]));t.else(),e.error(!1,{discrError:Ub.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,sl.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,oW.schemaHasRulesButRef)(S,o.self.RULES)){let R=S.$ref;if(S=VC.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,R),S instanceof VC.SchemaEnv&&(S=S.schema),S===void 0)throw new iW.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}}}};Zb.default=sW});var BC=fe((ZQ,lW)=>{lW.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 Vb=fe((nr,Wb)=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.MissingRefError=nr.ValidationError=nr.CodeGen=nr.Name=nr.nil=nr.stringify=nr.str=nr._=nr.KeywordCxt=nr.Ajv=void 0;var dW=ZO(),uW=UC(),cW=HC(),KC=BC(),fW=["/properties"],dm="http://json-schema.org/draft-07/schema",ll=class extends dW.default{_addVocabularies(){super._addVocabularies(),uW.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(cW.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(KC,fW):KC;this.addMetaSchema(t,dm,!1),this.refs["http://json-schema.org/schema"]=dm}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(dm)?dm:void 0)}};nr.Ajv=ll;Wb.exports=nr=ll;Wb.exports.Ajv=ll;Object.defineProperty(nr,"__esModule",{value:!0});nr.default=ll;var mW=Yd();Object.defineProperty(nr,"KeywordCxt",{enumerable:!0,get:function(){return mW.KeywordCxt}});var dl=it();Object.defineProperty(nr,"_",{enumerable:!0,get:function(){return dl._}});Object.defineProperty(nr,"str",{enumerable:!0,get:function(){return dl.str}});Object.defineProperty(nr,"stringify",{enumerable:!0,get:function(){return dl.stringify}});Object.defineProperty(nr,"nil",{enumerable:!0,get:function(){return dl.nil}});Object.defineProperty(nr,"Name",{enumerable:!0,get:function(){return dl.Name}});Object.defineProperty(nr,"CodeGen",{enumerable:!0,get:function(){return dl.CodeGen}});var pW=qf();Object.defineProperty(nr,"ValidationError",{enumerable:!0,get:function(){return pW.default}});var hW=Xd();Object.defineProperty(nr,"MissingRefError",{enumerable:!0,get:function(){return hW.default}})});var nE=fe(Gi=>{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.formatNames=Gi.fastFormats=Gi.fullFormats=void 0;function Ni(e,t){return{validate:e,compare:t}}Gi.fullFormats={date:Ni(QC,Jb),time:Ni(Bb(!0),Yb),"date-time":Ni(JC(!0),tE),"iso-time":Ni(Bb(),eE),"iso-date-time":Ni(JC(),rE),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:SW,"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:CW,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:wW,int32:{type:"number",validate:TW},int64:{type:"number",validate:AW},float:{type:"number",validate:XC},double:{type:"number",validate:XC},password:!0,binary:!0};Gi.fastFormats={...Gi.fullFormats,date:Ni(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Jb),time:Ni(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Yb),"date-time":Ni(/^\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,tE),"iso-time":Ni(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,eE),"iso-date-time":Ni(/^\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,rE),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};Gi.formatNames=Object.keys(Gi.fullFormats);function _W(e){return e%4===0&&(e%100!==0||e%400===0)}var gW=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,yW=[0,31,28,31,30,31,30,31,31,30,31,30,31];function QC(e){let t=gW.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&&_W(r)?29:yW[n])}function Jb(e,t){if(e&&t)return e>t?1:e<t?-1:0}var Hb=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Bb(e){return function(r){let n=Hb.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 Yb(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 eE(e,t){if(!(e&&t))return;let r=Hb.exec(e),n=Hb.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 Kb=/t|\s/i;function JC(e){let t=Bb(e);return function(n){let i=n.split(Kb);return i.length===2&&QC(i[0])&&t(i[1])}}function tE(e,t){if(!(e&&t))return;let r=new Date(e).valueOf(),n=new Date(t).valueOf();if(r&&n)return r-n}function rE(e,t){if(!(e&&t))return;let[r,n]=e.split(Kb),[i,o]=t.split(Kb),a=Jb(r,i);if(a!==void 0)return a||Yb(n,o)}var bW=/\/|:/,vW=/^(?:[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 SW(e){return bW.test(e)&&vW.test(e)}var YC=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function wW(e){return YC.lastIndex=0,YC.test(e)}var kW=-(2**31),xW=2**31-1;function TW(e){return Number.isInteger(e)&&e<=xW&&e>=kW}function AW(e){return Number.isInteger(e)}function XC(){return!0}var OW=/[^\\]\\Z/;function CW(e){if(OW.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var iE=fe(ul=>{"use strict";Object.defineProperty(ul,"__esModule",{value:!0});ul.formatLimitDefinition=void 0;var EW=Vb(),gi=it(),Do=gi.operators,um={formatMaximum:{okStr:"<=",ok:Do.LTE,fail:Do.GT},formatMinimum:{okStr:">=",ok:Do.GTE,fail:Do.LT},formatExclusiveMaximum:{okStr:"<",ok:Do.LT,fail:Do.GTE},formatExclusiveMinimum:{okStr:">",ok:Do.GT,fail:Do.LTE}},PW={message:({keyword:e,schemaCode:t})=>(0,gi.str)`should be ${um[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,gi._)`{comparison: ${um[e].okStr}, limit: ${t}}`};ul.formatLimitDefinition={keyword:Object.keys(um),type:"string",schemaType:"string",$data:!0,error:PW,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 EW.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,gi._)`${f}[${l.schemaCode}]`);e.fail$data((0,gi.or)((0,gi._)`typeof ${p} != "object"`,(0,gi._)`${p} instanceof RegExp`,(0,gi._)`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,gi._)`${a.code.formats}${(0,gi.getProperty)(f)}`:void 0});e.fail$data(c(m))}function c(f){return(0,gi._)`${f}.compare(${r}, ${n}) ${um[i].fail} 0`}},dependencies:["format"]};var RW=e=>(e.addKeyword(ul.formatLimitDefinition),e);ul.default=RW});var lE=fe((fu,sE)=>{"use strict";Object.defineProperty(fu,"__esModule",{value:!0});var cl=nE(),IW=iE(),Xb=it(),oE=new Xb.Name("fullFormats"),$W=new Xb.Name("fastFormats"),Qb=(e,t={keywords:!0})=>{if(Array.isArray(t))return aE(e,t,cl.fullFormats,oE),e;let[r,n]=t.mode==="fast"?[cl.fastFormats,$W]:[cl.fullFormats,oE],i=t.formats||cl.formatNames;return aE(e,i,r,n),t.keywords&&(0,IW.default)(e),e};Qb.get=(e,t="full")=>{let n=(t==="fast"?cl.fastFormats:cl.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function aE(e,t,r,n){var i,o;(i=(o=e.opts.code).formats)!==null&&i!==void 0||(o.formats=(0,Xb._)`require("ajv-formats/dist/formats").${n}`);for(let a of t)e.addFormat(a,r[a])}sE.exports=fu=Qb;Object.defineProperty(fu,"__esModule",{value:!0});fu.default=Qb});import*as vM from"node:fs";import*as SM from"node:path";function cr(e,t){delete e[t]}var JS=((e,t)=>{for(var r in e)t(e[r],r)});function qu(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 $r(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 ra(e,t){let r=e.indexOf(t);if(r!==-1)return r}function Ke(e,t,r){return e.reduce(r,t)}function Uu(e,t){let r=e.findIndex(t);if(r!==-1)return r}function ze(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 tw from"node:buffer";import*as Vu from"node:crypto";function gr(e){if(e.RE_EXN_ID==="JsExn")return Ze(e._1)}var Zu=(e=>t=>t&&typeof t[e]=="string"?t[e]:void 0),YS=Zu("stack"),Or=Zu("message"),iJ=Zu("name"),oJ=Zu("fileName");function Sp(e,t){if(e!==void 0&&t(ue(e)))return e}function xn(e,t,r){return e!==void 0?r(ue(e)):t}function D(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 ss(e,t){return e!==void 0?e:t}function Ft(e){return e!==void 0}function Nn(e){return e===void 0}function ls(e,t){return e===t?0:e<t?-1:1}var QS=(function(e,t){for(var r in e)t(r)});function se(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(!se(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)||!se(t[c],e[c])){l.contents=!1;return}};return QS(e,d),l.contents&&QS(t,u),l.contents}}else return!1}function Tn(e,t){return(typeof e=="number"||typeof e=="bigint")&&(typeof t=="number"||typeof t=="bigint")?e!==t:!se(e,t)}import*as ds from"node:fs/promises";import*as rw from"node:child_process";function IM(e){return e==null?!1:typeof e.RE_EXN_ID=="string"}function X(e){return IM(e)?e:{RE_EXN_ID:"JsExn",_1:e}}var wp={};function ew(e){let t=wp[e];if(t!==void 0){let r=t+1|0;return wp[e]=r,e+("/"+r)}return wp[e]=1,e}function Ge(e){let t=gr(e);if(t===void 0)return{code:void 0,message:"unknown error"};let r=ue(t);return{code:$r(r.code),message:x(Or(r),"unknown error")}}function ni(e,t){return se(e.code,t)}function or(e){try{return{TAG:"Ok",_0:rt.readFileSync(e,"utf8")}}catch(t){let r=X(t);return{TAG:"Error",_0:Ge(r)}}}function wi(e,t){try{return{TAG:"Ok",_0:(rt.writeFileSync(e,t,"utf8"),void 0)}}catch(r){let n=X(r);return{TAG:"Error",_0:Ge(n)}}}function ho(e,t,r){try{return{TAG:"Ok",_0:(rt.writeFileSync(e,t,r),void 0)}}catch(n){let i=X(n);return{TAG:"Error",_0:Ge(i)}}}function Dt(e){try{return{TAG:"Ok",_0:(rt.mkdirSync(e,{recursive:!0}),void 0)}}catch(t){let r=X(t);return{TAG:"Error",_0:Ge(r)}}}function us(e,t){try{return{TAG:"Ok",_0:(rt.chmodSync(e,t),void 0)}}catch(r){let n=X(r);return{TAG:"Error",_0:Ge(n)}}}function nw(e,t){try{return{TAG:"Ok",_0:(rt.linkSync(e,t),void 0)}}catch(r){let n=X(r);return{TAG:"Error",_0:Ge(n)}}}function iw(e){try{return{TAG:"Ok",_0:(rt.unlinkSync(e),void 0)}}catch(t){let r=X(t);return{TAG:"Error",_0:Ge(r)}}}function ii(e,t){try{return{TAG:"Ok",_0:(rt.renameSync(e,t),void 0)}}catch(r){let n=X(r);return{TAG:"Error",_0:Ge(n)}}}function un(e){try{return{TAG:"Ok",_0:(rt.rmSync(e,{force:!0}),void 0)}}catch(t){let r=X(t);return{TAG:"Error",_0:Ge(r)}}}function kp(e){try{return{TAG:"Ok",_0:(rt.rmSync(e,{force:!0,recursive:!0}),void 0)}}catch(t){let r=X(t);return{TAG:"Error",_0:Ge(r)}}}function Li(e){try{return{TAG:"Ok",_0:rt.realpathSync(e)}}catch(t){let r=X(t);return{TAG:"Error",_0:Ge(r)}}}function ow(e){try{return{TAG:"Ok",_0:rt.mkdtempSync(e)}}catch(t){let r=X(t);return{TAG:"Error",_0:Ge(r)}}}function aw(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=X(i);return{TAG:"Error",_0:Ge(o)}}}function Gn(e){return Vu.createHash("sha256").update(e).digest("hex")}async function xp(e,t){try{return await ds.appendFile(e,t,"utf8"),{TAG:"Ok",_0:void 0}}catch(r){let n=X(r);return{TAG:"Error",_0:Ge(n)}}}async function sw(e,t){try{return await ds.writeFile(e,t,"utf8"),{TAG:"Ok",_0:void 0}}catch(r){let n=X(r);return{TAG:"Error",_0:Ge(n)}}}async function Tp(e,t){try{return await ds.rename(e,t),{TAG:"Ok",_0:void 0}}catch(r){let n=X(r);return{TAG:"Error",_0:Ge(n)}}}function Hu(e){try{return Vu.randomBytes(e).toString("hex")}catch{return""}}function Dl(e){try{return{TAG:"Ok",_0:rt.readdirSync(e)}}catch(t){let r=X(t);return{TAG:"Error",_0:Ge(r)}}}function ql(e,t,r,n){try{return{TAG:"Ok",_0:rw.execFileSync(e,t,{encoding:"utf8",timeout:r,maxBuffer:n})}}catch(i){let o=X(i);return{TAG:"Error",_0:Ge(o)}}}function Vr(e){try{return process.stderr.write(e)}catch{return!1}}function na(e,t){return e[t]}function Ui(e,t){try{return process.kill(e,t),{TAG:"Ok",_0:void 0}}catch(r){let n=X(r);return{TAG:"Error",_0:Ge(n)}}}function Fn(e){try{return Ze(new URL(e))}catch{return}}function lw(e){return e.keys().toArray()}function Zi(e,t){try{return{TAG:"Ok",_0:new URL(e,t)}}catch(r){let n=X(r),i=gr(n);return{TAG:"Error",_0:i!==void 0?x(Or(ue(i)),"unknown error"):"unknown error"}}}function dw(e){return tw.Buffer.from(e,"utf8").toString("base64url")}var Nr={};Nr["api-url"]="ValueKind";Nr.token="ValueKind";Nr["auth-file"]="ValueKind";Nr["delegation-auth-file"]="ValueKind";Nr.workspace="ValueKind";Nr.channel="ValueKind";Nr["owner-username"]="ValueKind";Nr.mode="ValueKind";Nr.cwd="ValueKind";Nr["thread-id"]="ValueKind";Nr.format="ValueKind";Nr.command="ValueKind";Nr["tool-scope"]="ValueKind";Nr["agent-session"]="BooleanKind";Nr["include-token"]="BooleanKind";Nr.help="BooleanKind";function Bu(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=Nr[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 yr(e,t){let r=e[t];if(r===void 0||typeof r!="object")return;let n=r._0;if(n.trim()!=="")return n}function Ku(e,t){let r=e[t];return r!==void 0?typeof r!="object":!1}function Ju(e,t){let r=yr(e,t);return r!==void 0?{TAG:"Ok",_0:r}:{TAG:"Error",_0:"--"+t+" is required"}}function Yu(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 Ap(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 uw(e){return e[0]==="mcp"?e.slice(1):e}function Xu(){return`Linzumi MCP
10
+ deps: ${r}}`};var nW={keyword:"dependencies",type:"object",schemaType:"object",error:Fi.error,code(e){let[t,r]=iW(e);GC(e,t),FC(e,r)}};function iW({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 GC(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,Gb._)`${l} && (${(0,bu.checkMissingProp)(e,s,o)})`),(0,bu.reportMissingProp)(e,o),r.else())}}Fi.validatePropertyDeps=GC;function FC(e,t=e.schema){let{gen:r,data:n,keyword:i,it:o}=e,a=r.name("valid");for(let s in t)(0,rW.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=FC;Fi.default=nW});var LC=ce(Fb=>{"use strict";Object.defineProperty(Fb,"__esModule",{value:!0});var qC=it(),oW=Tt(),aW={message:"property name must be valid",params:({params:e})=>(0,qC._)`{propertyName: ${e.propertyName}}`},sW={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:aW,code(e){let{gen:t,schema:r,data:n,it:i}=e;if((0,oW.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,qC.not)(o),()=>{e.error(!0),i.allErrors||t.break()})}),e.ok(o)}};Fb.default=sW});var qb=ce(Db=>{"use strict";Object.defineProperty(Db,"__esModule",{value:!0});var fm=ei(),vi=it(),lW=uo(),mm=Tt(),dW={message:"must NOT have additional properties",params:({params:e})=>(0,vi._)`{additionalProperty: ${e.additionalProperty}}`},uW={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:dW,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,mm.alwaysValidSchema)(a,r))return;let d=(0,fm.allSchemaProperties)(n.properties),u=(0,fm.allSchemaProperties)(n.patternProperties);c(),e.ok((0,vi._)`${o} === ${lW.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,mm.schemaRefOrVal)(a,n.properties,"properties");g=(0,fm.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,fm.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,mm.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:mm.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(y,g)}}};Db.default=uW});var WC=ce(Ub=>{"use strict";Object.defineProperty(Ub,"__esModule",{value:!0});var cW=ou(),UC=ei(),Lb=Tt(),ZC=qb(),fW={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&&ZC.default.code(new cW.KeywordCxt(o,ZC.default,"additionalProperties"));let a=(0,UC.allSchemaProperties)(r);for(let c of a)o.definedProperties.add(c);o.opts.unevaluated&&a.length&&o.props!==!0&&(o.props=Lb.mergeEvaluated.props(t,(0,Lb.toHash)(a),o.props));let s=a.filter(c=>!(0,Lb.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,UC.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)}}};Ub.default=fW});var KC=ce(Zb=>{"use strict";Object.defineProperty(Zb,"__esModule",{value:!0});var VC=ei(),pm=it(),HC=Tt(),BC=Tt(),mW={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,VC.allSchemaProperties)(r),l=s.filter(h=>(0,HC.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 pm.Name)&&(o.props=(0,BC.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,HC.checkStrictMode)(o,`property ${_} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){t.forIn("key",n,_=>{t.if((0,pm._)`${(0,VC.usePattern)(e,h)}.test(${_})`,()=>{let g=l.includes(h);g||e.subschema({keyword:"patternProperties",schemaProp:h,dataProp:_,dataPropType:BC.Type.Str},u),o.opts.unevaluated&&c!==!0?t.assign((0,pm._)`${c}[${_}]`,!0):!g&&!o.allErrors&&t.if((0,pm.not)(u),()=>t.break())})})}}};Zb.default=mW});var JC=ce(Wb=>{"use strict";Object.defineProperty(Wb,"__esModule",{value:!0});var pW=Tt(),hW={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,pW.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"}};Wb.default=hW});var YC=ce(Vb=>{"use strict";Object.defineProperty(Vb,"__esModule",{value:!0});var _W=ei(),gW={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:_W.validateUnion,error:{message:"must match a schema in anyOf"}};Vb.default=gW});var XC=ce(Hb=>{"use strict";Object.defineProperty(Hb,"__esModule",{value:!0});var hm=it(),yW=Tt(),bW={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,hm._)`{passingSchemas: ${e.passing}}`},vW={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:bW,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,yW.alwaysValidSchema)(i,u)?t.var(l,!0):f=e.subschema({keyword:"oneOf",schemaProp:c,compositeRule:!0},l),c>0&&t.if((0,hm._)`${l} && ${a}`).assign(a,!1).assign(s,(0,hm._)`[${s}, ${c}]`).else(),t.if(l,()=>{t.assign(a,!0),t.assign(s,c),f&&e.mergeEvaluated(f,hm.Name)})})}}};Hb.default=vW});var QC=ce(Bb=>{"use strict";Object.defineProperty(Bb,"__esModule",{value:!0});var SW=Tt(),wW={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,SW.alwaysValidSchema)(n,o))return;let s=e.subschema({keyword:"allOf",schemaProp:a},i);e.ok(i),e.mergeEvaluated(s)})}};Bb.default=wW});var rE=ce(Kb=>{"use strict";Object.defineProperty(Kb,"__esModule",{value:!0});var _m=it(),tE=Tt(),kW={message:({params:e})=>(0,_m.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,_m._)`{failingKeyword: ${e.ifClause}}`},xW={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:kW,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,tE.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let i=eE(n,"then"),o=eE(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,_m.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,_m._)`${u}`):e.setParams({ifClause:u})}}}};function eE(e,t){let r=e.schema[t];return r!==void 0&&!(0,tE.alwaysValidSchema)(e,r)}Kb.default=xW});var nE=ce(Jb=>{"use strict";Object.defineProperty(Jb,"__esModule",{value:!0});var TW=Tt(),AW={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,TW.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};Jb.default=AW});var iE=ce(Yb=>{"use strict";Object.defineProperty(Yb,"__esModule",{value:!0});var OW=$b(),CW=MC(),EW=Mb(),PW=zC(),RW=NC(),IW=DC(),$W=LC(),MW=qb(),jW=WC(),zW=KC(),NW=JC(),GW=YC(),FW=XC(),DW=QC(),qW=rE(),LW=nE();function UW(e=!1){let t=[NW.default,GW.default,FW.default,DW.default,qW.default,LW.default,$W.default,MW.default,IW.default,jW.default,zW.default];return e?t.push(CW.default,PW.default):t.push(OW.default,EW.default),t.push(RW.default),t}Yb.default=UW});var oE=ce(Xb=>{"use strict";Object.defineProperty(Xb,"__esModule",{value:!0});var kr=it(),ZW={message:({schemaCode:e})=>(0,kr.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,kr._)`{format: ${e}}`},WW={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:ZW,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,kr._)`${m}[${a}]`),_=r.let("fType"),g=r.let("format");r.if((0,kr._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(_,(0,kr._)`${h}.type || "string"`).assign(g,(0,kr._)`${h}.validate`),()=>r.assign(_,(0,kr._)`"string"`).assign(g,h)),e.fail$data((0,kr.or)(b(),y()));function b(){return l.strictSchema===!1?kr.nil:(0,kr._)`${a} && !${g}`}function y(){let v=u.$async?(0,kr._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,kr._)`${g}(${n})`,S=(0,kr._)`(typeof ${g} == "function" ? ${v} : ${g}.test(${n}))`;return(0,kr._)`${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,kr.regexpCode)(S):l.code.formats?(0,kr._)`${l.code.formats}${(0,kr.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,kr._)`${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,kr._)`await ${g}(${n})`}return typeof _=="function"?(0,kr._)`${g}(${n})`:(0,kr._)`${g}.test(${n})`}}}};Xb.default=WW});var aE=ce(Qb=>{"use strict";Object.defineProperty(Qb,"__esModule",{value:!0});var VW=oE(),HW=[VW.default];Qb.default=HW});var sE=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 dE=ce(ev=>{"use strict";Object.defineProperty(ev,"__esModule",{value:!0});var BW=_C(),KW=PC(),JW=iE(),YW=aE(),lE=sE(),XW=[BW.default,KW.default,(0,JW.default)(),YW.default,lE.metadataVocabulary,lE.contentVocabulary];ev.default=XW});var cE=ce(gm=>{"use strict";Object.defineProperty(gm,"__esModule",{value:!0});gm.DiscrError=void 0;var uE;(function(e){e.Tag="tag",e.Mapping="mapping"})(uE||(gm.DiscrError=uE={}))});var mE=ce(rv=>{"use strict";Object.defineProperty(rv,"__esModule",{value:!0});var pl=it(),tv=cE(),fE=Xf(),QW=au(),eV=Tt(),tV={message:({params:{discrError:e,tagName:t}})=>e===tv.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}}`},rV={keyword:"discriminator",type:"object",schemaType:"object",error:tV,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:tv.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:tv.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,eV.schemaHasRulesButRef)(S,o.self.RULES)){let R=S.$ref;if(S=fE.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,R),S instanceof fE.SchemaEnv&&(S=S.schema),S===void 0)throw new QW.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}}}};rv.default=rV});var pE=ce((bte,nV)=>{nV.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 iv=ce((ir,nv)=>{"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 iV=uC(),oV=dE(),aV=mE(),hE=pE(),sV=["/properties"],ym="http://json-schema.org/draft-07/schema",hl=class extends iV.default{_addVocabularies(){super._addVocabularies(),oV.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(aV.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(hE,sV):hE;this.addMetaSchema(t,ym,!1),this.refs["http://json-schema.org/schema"]=ym}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ym)?ym:void 0)}};ir.Ajv=hl;nv.exports=ir=hl;nv.exports.Ajv=hl;Object.defineProperty(ir,"__esModule",{value:!0});ir.default=hl;var lV=ou();Object.defineProperty(ir,"KeywordCxt",{enumerable:!0,get:function(){return lV.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 dV=Jf();Object.defineProperty(ir,"ValidationError",{enumerable:!0,get:function(){return dV.default}});var uV=au();Object.defineProperty(ir,"MissingRefError",{enumerable:!0,get:function(){return uV.default}})});var kE=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(bE,lv),time:Di(av(!0),dv),"date-time":Di(_E(!0),SE),"iso-time":Di(av(),vE),"iso-date-time":Di(_E(),wE),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:kV,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:gV,int32:{type:"number",validate:vV},int64:{type:"number",validate:SV},float:{type:"number",validate:yE},double:{type:"number",validate:yE},password:!0,binary:!0};qi.fastFormats={...qi.fullFormats,date:Di(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,lv),time:Di(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,dv),"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,SE),"iso-time":Di(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,vE),"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,wE),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 fV=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,mV=[0,31,28,31,30,31,30,31,31,30,31,30,31];function bE(e){let t=fV.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:mV[n])}function lv(e,t){if(e&&t)return e>t?1:e<t?-1:0}var ov=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function av(e){return function(r){let n=ov.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 dv(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 vE(e,t){if(!(e&&t))return;let r=ov.exec(e),n=ov.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 sv=/t|\s/i;function _E(e){let t=av(e);return function(n){let i=n.split(sv);return i.length===2&&bE(i[0])&&t(i[1])}}function SE(e,t){if(!(e&&t))return;let r=new Date(e).valueOf(),n=new Date(t).valueOf();if(r&&n)return r-n}function wE(e,t){if(!(e&&t))return;let[r,n]=e.split(sv),[i,o]=t.split(sv),a=lv(r,i);if(a!==void 0)return a||dv(n,o)}var pV=/\/|:/,hV=/^(?:[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 pV.test(e)&&hV.test(e)}var gE=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function gV(e){return gE.lastIndex=0,gE.test(e)}var yV=-(2**31),bV=2**31-1;function vV(e){return Number.isInteger(e)&&e<=bV&&e>=yV}function SV(e){return Number.isInteger(e)}function yE(){return!0}var wV=/[^\\]\\Z/;function kV(e){if(wV.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var xE=ce(gl=>{"use strict";Object.defineProperty(gl,"__esModule",{value:!0});gl.formatLimitDefinition=void 0;var xV=iv(),Si=it(),Uo=Si.operators,bm={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}},TV={message:({keyword:e,schemaCode:t})=>(0,Si.str)`should be ${bm[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,Si._)`{comparison: ${bm[e].okStr}, limit: ${t}}`};gl.formatLimitDefinition={keyword:Object.keys(bm),type:"string",schemaType:"string",$data:!0,error:TV,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 xV.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}) ${bm[i].fail} 0`}},dependencies:["format"]};var AV=e=>(e.addKeyword(gl.formatLimitDefinition),e);gl.default=AV});var CE=ce((vu,OE)=>{"use strict";Object.defineProperty(vu,"__esModule",{value:!0});var yl=kE(),OV=xE(),uv=it(),TE=new uv.Name("fullFormats"),CV=new uv.Name("fastFormats"),cv=(e,t={keywords:!0})=>{if(Array.isArray(t))return AE(e,t,yl.fullFormats,TE),e;let[r,n]=t.mode==="fast"?[yl.fastFormats,CV]:[yl.fullFormats,TE],i=t.formats||yl.formatNames;return AE(e,i,r,n),t.keywords&&(0,OV.default)(e),e};cv.get=(e,t="full")=>{let n=(t==="fast"?yl.fastFormats:yl.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function AE(e,t,r,n){var i,o;(i=(o=e.opts.code).formats)!==null&&i!==void 0||(o.formats=(0,uv._)`require("ajv-formats/dist/formats").${n}`);for(let a of t)e.addFormat(a,r[a])}OE.exports=vu=cv;Object.defineProperty(vu,"__esModule",{value:!0});vu.default=cv});import*as hj from"node:fs";import*as _j from"node:path";function fr(e,t){delete e[t]}var yw=((e,t)=>{for(var r in e)t(e[r],r)});function Bu(e,t){return e<t?-1:e===t?0:1}function We(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 Rr(e){if(e!=null)return We(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 Ju(e,t){let r=e.findIndex(t);if(r!==-1)return r}function ze(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 kw from"node:buffer";import*as ec from"node:crypto";function yr(e){if(e.RE_EXN_ID==="JsExn")return We(e._1)}var Yu=(e=>t=>t&&typeof t[e]=="string"?t[e]:void 0),bw=Yu("stack"),Or=Yu("message"),$6=Yu("name"),M6=Yu("fileName");function Xu(e,t){if(e!==void 0&&t(ue(e)))return e}function nn(e,t,r){return e!==void 0?r(ue(e)):t}function G(e,t){if(e!==void 0)return We(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 Gt(e){return e!==void 0}function hn(e){return e===void 0}function fs(e,t){return e===t?0:e<t?-1:1}var Sw=(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 Sw(e,d),l.contents&&Sw(t,u),l.contents}}else return!1}function on(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 xw from"node:child_process";function Oj(e){return e==null?!1:typeof e.RE_EXN_ID=="string"}function ee(e){return Oj(e)?e:{RE_EXN_ID:"JsExn",_1:e}}var Mp={};function ww(e){let t=Mp[e];if(t!==void 0){let r=t+1|0;return Mp[e]=r,e+("/"+r)}return Mp[e]=1,e}function Ne(e){let t=yr(e);if(t===void 0)return{code:void 0,message:"unknown error"};let r=ue(t);return{code:Rr(r.code),message:x(Or(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 Ft(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 Tw(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 Aw(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 _n(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 jp(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 Ln(e){try{return{TAG:"Ok",_0:rt.realpathSync(e)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function Ow(e){try{return{TAG:"Ok",_0:rt.mkdtempSync(e)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function Cw(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 Un(e){return ec.createHash("sha256").update(e).digest("hex")}async function zp(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 Ew(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 Np(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 tc(e){try{return ec.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:xw.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 Zn(e){try{return We(new URL(e))}catch{return}}function Pw(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=yr(n);return{TAG:"Error",_0:i!==void 0?x(Or(ue(i)),"unknown error"):"unknown error"}}}function Rw(e){return kw.Buffer.from(e,"utf8").toString("base64url")}var Fr={};Fr["api-url"]="ValueKind";Fr.token="ValueKind";Fr["auth-file"]="ValueKind";Fr["delegation-auth-file"]="ValueKind";Fr.workspace="ValueKind";Fr.channel="ValueKind";Fr["owner-username"]="ValueKind";Fr.mode="ValueKind";Fr.cwd="ValueKind";Fr["thread-id"]="ValueKind";Fr.format="ValueKind";Fr.command="ValueKind";Fr["tool-scope"]="ValueKind";Fr["agent-session"]="BooleanKind";Fr["include-token"]="BooleanKind";Fr.help="BooleanKind";function rc(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=Fr[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 br(e,t){let r=e[t];if(r===void 0||typeof r!="object")return;let n=r._0;if(n.trim()!=="")return n}function nc(e,t){let r=e[t];return r!==void 0?typeof r!="object":!1}function ic(e,t){let r=br(e,t);return r!==void 0?{TAG:"Ok",_0:r}:{TAG:"Error",_0:"--"+t+" is required"}}function oc(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 Gp(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 Iw(e){return e[0]==="mcp"?e.slice(1):e}function ac(){return`Linzumi MCP
11
11
 
12
12
  Usage:
13
13
  linzumi mcp server --api-url <url> [--mode voice|text] [--workspace <slug> --channel <slug>]
@@ -101,25 +101,25 @@ 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 fw(e){throw e}function mw(e){throw e}function pw(e){throw e}function _r(e){throw new Error(e)}function cs(e){let t=gr(e);if(t===void 0)return"unknown error";let r=ue(t);return x(Or(r),String(r))}function $M(e,t){return fetch(e,t)}function MM(e,t){return fetch(e,t)}var Qu={json:$M,binary:MM};function hw(e){return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength|0)}function ec(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}function tc(e){process.exitCode=e}function ia(e){process.stdout.write(e)}import*as D0 from"node:os";import*as dh from"node:path";function $t(e,t){return e.TAG==="Ok"?{TAG:"Ok",_0:t(e._0)}:e}function Ce(e,t){return e.TAG==="Ok"?t(e._0):e}function zt(e,t){return e.TAG==="Ok"?e:{TAG:"Error",_0:t(e._0)}}var jp={},cc=[],NM=(e=>({...e}));function ws(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 GM(e){return e===""?[]:JSON.parse(e.split('"]["').join('","'))}function FM(e){return"["+ws(e)+"]"}function DM(e){let t=e.length;return t!==1?t!==0?e.map(FM).join(""):"":"["+ws(e[0])+"]"}var zp="sury",Np=Symbol(zp),Gp=Symbol(zp+":item"),hs="string",go="number",qM="bigint",ic="boolean",LM="symbol",_s="null",Dn="undefined",Pp="nan";var Fp="instance",Vi="array",Er="object",oi="union",Rp="never",Hl="unknown",Ip="ref",Dp=ew("Sury.Exn"),Oi="const";function UM(e){return e.type===Dn?!0:e.type===oi?Dn in e.has:!1}function ZM(e,t){return(e&t)!==0}var er={[Hl]:1,[hs]:2,[go]:4,[ic]:8,[Dn]:16,[_s]:32,[Er]:64,[Vi]:128,[oi]:256,[Ip]:512,[qM]:1024,[Pp]:2048,function:4096,[Fp]:8192,[Rp]:32768,[LM]:16384};function oc(e){let t=er[typeof e];if(t&16)return Dn;if(!(t&64))return t&2?'"'+e+'"':t&1024?e+"n":t&4096?"Function":e.toString();if(e===null)return _s;if(Array.isArray(e)){let i="[";for(let o=0,a=e.length;o<a;++o)o!==0&&(i=i+", "),i=i+oc(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+": "+oc(s)+"; "}return n+"}"}function vr(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 oc(n);let o=e.format,a=e.anyOf;if(a!==void 0)return a.map(vr).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"?vr(s)+"[]":"unknown[][]";let l=r.properties;return l===void 0?"unknown[][]":"["+Object.keys(l).map(u=>{let c=l[u];return vr(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===Er?"{ [key: string]: "+vr(s)+"; }":"{}":"{ "+d.map(u=>u+": "+vr(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!==Er)return"["+c.map(vr).join(", ")+"]";let f=vr(u);return(u.type===oi?"("+f+")":f)+"[]";default:return t}}}var sa=class extends Error{constructor(t){super();for(let r in t)this[r]=t[r]}},An=Object.defineProperty,Bl=sa.prototype;An(Bl,"message",{get(){return kw(this)}});An(Bl,"name",{value:"SuryError"});An(Bl,"s",{value:Np});An(Bl,"_1",{get(){return this}});An(Bl,"RE_EXN_ID",{value:Dp});var ww=1,qp=function(){},Lp=Object.create(null);An(Lp,"with",{get(){return(e,...t)=>e(this,...t)}});qp.prototype=Lp;function fc(e){if(e&&e.s===Np)return e;throw e}function kw(e){let t=e.path;return(t===""?"":"Failed at "+t+": ")+e.reason}var Ll={m:kw,d:void 0,a:"strip",f:0},ki={},_w={configurable:!0},gs="value",aa="r";function Cr(e,t){let r=new qp;return r.type=e,r.seq=ww++,t&&(ki[gs]=r,An(r,aa,ki)),r}function xw(e){return e}var Op={};function So(e,t,r){if(Op[e])return Op[e];let n=Cr(t,!0);return r(n),Op[e]=n,n}var Qt=Cr(Hl,!0);Qt.decoder=xw;var ai=(e=>{let t=new qp;for(let r in e)t[r]=e[r];return t.seq=ww++,t});function yo(e,t){let r=ai(e),n=r;for(;n.to;){let i=ai(n.to);n.to=i,n=i}return t(n),r}function xi(e,t){let r=e.g.e,n=r.length;return r[n]=t,"e["+n+"]"}function Kl(e,t){let r=er[t.type],n=t.const;return r&16?"void 0":r&2?ws(n):r&1024?n+"n":r&28672?xi(e,t.const):n}function la(e,t){let r='"'+t+'"',n=e[r];if(n!==void 0)return n;let i=ws(t);return e[r]=i,i}function Hr(){return this.i}function WM(){return this.b.v()}function VM(){return this.prev.v()}function fn(e){let t=e.v+1;return e.v=t,"v"+t}function ac(e,t){e.hd=e.hd===""?t:e.hd+","+t}function HM(){let e=this,t=fn(e.g);return e.cp="let "+t+"="+e.i+";",e.i=t,e.v=Hr,t}function $p(){let e=this,t=e.p;if(t.fz)return e.v=Hr,e.i;let r=fn(e.g);return ac(t,r+"="+e.i),e.v=Hr,e.i=r,r}function sc(){let e=this;if(e.fz)return e.v=Hr,e.i="("+e.i+")",e.i;let t=fn(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===""?ac(e,t):ac(e,t+"="+n)}return e.v=Hr,e.i=t,t}function BM(e,t,r,n){return{v:Hr,i:"i",s:e,e:t,f:0,cp:"",hd:"",path:"",g:{v:-1,o:r,e:[],d:n}}}function ua(e,t,r){let n=e.path,i="Can't decode "+vr(t)+" to "+vr(r)+". Use S.to to define a custom decoder",o={code:"unsupported_decode",path:n,reason:i,from:t,to:r};throw new sa(o)}function Ul(e,t,r){return xi(e,n=>{let i=t(n);throw new sa(i)})+"("+r+")"}function Tw(e,t,r,n,i,o,a){let s=a!==void 0?a:"Expected "+vr(e)+", received "+(i?oc(n):vr(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(`
104
+ `}function Mw(e){throw e}function jw(e){throw e}function zw(e){throw e}function gr(e){throw new Error(e)}function gs(e){let t=yr(e);if(t===void 0)return"unknown error";let r=ue(t);return x(Or(r),String(r))}function Cj(e,t){return fetch(e,t)}function Ej(e,t){return fetch(e,t)}var sc={json:Cj,binary:Ej};function Nw(e){return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength|0)}function lc(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}function Jl(e){process.exitCode=e}function aa(e){process.stdout.write(e)}import*as lk from"node:os";import*as Sh from"node:path";function wt(e,t){return e.TAG==="Ok"?{TAG:"Ok",_0:t(e._0)}:e}function _e(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 Hp={},yc=[],Ij=(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 $j(e){return e===""?[]:JSON.parse(e.split('"]["').join('","'))}function Mj(e){return"["+Cs(e)+"]"}function jj(e){let t=e.length;return t!==1?t!==0?e.map(Mj).join(""):"":"["+Cs(e[0])+"]"}var Bp="sury",Kp=Symbol(Bp),Jp=Symbol(Bp+":item"),Ss="string",vo="number",zj="bigint",cc="boolean",Nj="symbol",ws="null",Wn="undefined",Lp="nan";var Yp="instance",Ki="array",Ir="object",di="union",Up="never",rd="unknown",Zp="ref",Xp=ww("Sury.Exn"),Pi="const";function Gj(e){return e.type===Wn?!0:e.type===di?Wn in e.has:!1}function Fj(e,t){return(e&t)!==0}var tr={[rd]:1,[Ss]:2,[vo]:4,[cc]:8,[Wn]:16,[ws]:32,[Ir]:64,[Ki]:128,[di]:256,[Zp]:512,[zj]:1024,[Lp]:2048,function:4096,[Yp]:8192,[Up]:32768,[Nj]:16384};function fc(e){let t=tr[typeof e];if(t&16)return Wn;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+fc(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+": "+fc(s)+"; "}return n+"}"}function Sr(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 fc(n);let o=e.format,a=e.anyOf;if(a!==void 0)return a.map(Sr).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"?Sr(s)+"[]":"unknown[][]";let l=r.properties;return l===void 0?"unknown[][]":"["+Object.keys(l).map(u=>{let c=l[u];return Sr(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]: "+Sr(s)+"; }":"{}":"{ "+d.map(u=>u+": "+Sr(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(Sr).join(", ")+"]";let f=Sr(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]}},Pn=Object.defineProperty,nd=da.prototype;Pn(nd,"message",{get(){return Ww(this)}});Pn(nd,"name",{value:"SuryError"});Pn(nd,"s",{value:Kp});Pn(nd,"_1",{get(){return this}});Pn(nd,"RE_EXN_ID",{value:Xp});var Zw=1,Qp=function(){},eh=Object.create(null);Pn(eh,"with",{get(){return(e,...t)=>e(this,...t)}});Qp.prototype=eh;function bc(e){if(e&&e.s===Kp)return e;throw e}function Ww(e){let t=e.path;return(t===""?"":"Failed at "+t+": ")+e.reason}var Yl={m:Ww,d:void 0,a:"strip",f:0},Ai={},Gw={configurable:!0},ks="value",la="r";function Cr(e,t){let r=new Qp;return r.type=e,r.seq=Zw++,t&&(Ai[ks]=r,Pn(r,la,Ai)),r}function Vw(e){return e}var Fp={};function xo(e,t,r){if(Fp[e])return Fp[e];let n=Cr(t,!0);return r(n),Fp[e]=n,n}var er=Cr(rd,!0);er.decoder=Vw;var ui=(e=>{let t=new Qp;for(let r in e)t[r]=e[r];return t.seq=Zw++,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 Dj(){return this.b.v()}function qj(){return this.prev.v()}function yn(e){let t=e.v+1;return e.v=t,"v"+t}function mc(e,t){e.hd=e.hd===""?t:e.hd+","+t}function Lj(){let e=this,t=yn(e.g);return e.cp="let "+t+"="+e.i+";",e.i=t,e.v=Br,t}function Wp(){let e=this,t=e.p;if(t.fz)return e.v=Br,e.i;let r=yn(e.g);return mc(t,r+"="+e.i),e.v=Br,e.i=r,r}function pc(){let e=this;if(e.fz)return e.v=Br,e.i="("+e.i+")",e.i;let t=yn(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===""?mc(e,t):mc(e,t+"="+n)}return e.v=Br,e.i=t,t}function Uj(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 "+Sr(t)+" to "+Sr(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 Hw(e,t,r,n,i,o,a){let s=a!==void 0?a:"Expected "+Sr(e)+", received "+(i?fc(n):Sr(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 Up(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=>Tw(s,d,u,c,a,void 0,r)}}function Mr(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 Up(void 0,void 0,r,void 0)(e)}function Aw(e,t){let r=t!==void 0?t:e.e;return Ul(e,Up(r,void 0,void 0,void 0)(e),e.v())}function KM(e,t){let r=e.vc,n=r.length;if(n===1){let a=r[0];return a.c(t)+"||"+Ul(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+"||"+Ul(e,s(e),t)+";")}return i}function Ow(e){return e.t===!0?e.prev.t!==!0?e.cp==="":!1:!0}function Ti(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&&Ow(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===Mr?d=d?d+"&&"+p:p:i.e.noValidation!==!0&&(o=o+(p+"||"+Ul(i,f.f(i),s)+";"))}d&&(t.contents?t.contents=d+"&&"+t.contents:t.contents=d)}else i.e.noValidation!==!0&&(o=KM(i,r.v()));i.hd!==""&&(o=o+("let "+i.hd+";")),i.fz=!0,o=i.cp+o,n=o+n}return n}function qn(e,t,r,n){let i=n!==void 0?n:e.e;return{v:sc,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!==Hr,s={v:a?VM:Hr,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=Hr,d}}return s}function Zp(e,t){let r=e.vc;r!==void 0?r.push(t):e.vc=[t]}function Zl(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)Zp(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 Cw(e,t,r){if(!t.vc)return;let i="["+la(e.g,r)+"]";t.vc.forEach(o=>Zp(e,{c:a=>o.c(a+i),f:o.f})),t.vc=void 0}function Ew(e,t){let r=e.s.additionalItems,n;n=r!==void 0&&r!=="strip"&&r!=="strict"?r:Qt;let i=e.e.additionalItems,o;return o=i!==void 0&&i!=="strip"&&i!=="strict"?i:Qt,{p:e,v:HM,i:e.v()+"["+t+"]",s:n,e:o,f:e.f,cp:"",hd:"",path:"",g:e.g}}function _o(e,t,r){return qn(e,Kl(e,t),t,r)}function Pw(e,t){let r=qn(e,t,e.s,void 0);return r.f=1,r}function Ai(e,t,r){e.s.type===Vi?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+Ti(r,void 0),e.d[t]=r}function Rw(e,t,r){return e.v()+"["+t+"]="+r.i}function Hi(e){let t=e.v!==Hr,r={b:e,v:t?WM:Hr,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=Hr,i}}return r}function JM(e,t){throw new sa({code:"invalid_operation",path:e.path,reason:t})}function Wp(e,t,r,n){if(e.path===""&&r===void 0)return Ti(e,void 0);{let i=l=>{let d=t.path,u=d===""?"":ws(d)+"+";return l+".path="+u+(r!==void 0?`'["'+`+r+`+'"]'+`:"")+l+".path"},o=Ti(e,void 0);if(o===""&&!(e.f&1))return o+(n!==void 0?n():"");let a=fn(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 Iw(e){return e}Iw.embedded=cc;function Cp(e){return e+"<=2147483647&&"+e+">=-2147483648&&"+e+"%1===0"}function ys(e){return t=>"typeof "+t+'==="'+e+'"'}function ps(e){return"Number.isNaN("+e+")"}function lc(e){return"Array.isArray("+e+")"}function $w(e){return ys(Er)(e)+"&&"+e}function YM(e,t){return r=>r+" instanceof "+xi(e,t)}function XM(e){let t=er[e.s.type];if(t&1){let i=[{c:ys(go),f:Mr}],o=e.e.format,a=0;return o==="int32"?i.push({c:Cp,f:Mr}):a=1,a===1&&(e.g.o&2||i.push({c:s=>"!"+ps(s),f:Mr})),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:Cp,f:Mr}],void 0):e:ua(e,e.s,e.e);let r=fn(e.g),n=qn(e,r,e.e,void 0);return n.v=Hr,n.cp="let "+r+"=+"+e.v()+";",n.vc=[{c:i=>{let o=e.e.format;return o!==void 0&&o==="int32"?Cp(r):"!"+ps(r)},f:Mr}],n}function Vp(){return So(go,go,e=>{e.decoder=XM})}function QM(e){return qn(e,'""+'+e.i,ks(),void 0)}function ej(e){let t=er[e.s.type];if(t&1)return kt(e,e.e,[{c:ys(hs),f:Mr}],void 0);if(!(t&3132&&Oi in e.s))return t&1036?QM(e):t&2?e:ua(e,e.s,e.e);let r=""+e.s.const,n=Cr(hs,!1);return n.const=r,qn(e,'"'+r+'"',n,void 0)}function ks(){return So(hs,hs,e=>{e.decoder=ej})}function tj(e){let t=er[e.s.type];if(t&1)return kt(e,e.e,[{c:ys(ic),f:Mr}],void 0);if(!(t&2))return t&8?e:ua(e,e.s,e.e);let r=fn(e.g),n=qn(e,r,e.e,void 0);n.v=Hr;let i=e.v();return n.cp="let "+r+";("+n.i+"="+i+'==="true")||'+i+'==="false"||'+Aw(e,void 0)+";",n}function Hp(){return So(ic,ic,e=>{e.decoder=tj})}function Mw(e,t){e[er[t]&768?Hl:t]=!0}var oa="JSON";function bs(e){let t=e.e;if(t.noValidation&&!e.u)return _o(e,t,void 0);if(Oi in e.s)return e.s.const===t.const?e:_o(e,t,void 0);let r=er[t.type];if(!(er[e.s.type]&2&&r&3132))return r&2048?kt(e,t,[{c:ps,f:Mr}],void 0):kt(e,t,[{c:o=>o+"==="+Kl(e,t),f:Mr}],void 0);let n=Cr(hs,!1);n.const=""+t.const;let i=_o(e,n,n);return i.vc=[{c:o=>o+'==="'+n.const+'"',f:Mr}],_o(i,t,t)}function ca(){return So(Dn,Dn,e=>{e.const=void 0,e.decoder=bs})}function Jl(){return So(_s,_s,e=>{e.const=null,e.decoder=bs})}function jw(){return So(Pp,Pp,e=>{e.const=NaN,e.decoder=bs})}function Bp(e){if(e===null)return Jl();let t=typeof e;if(t===Dn)return ca();if(t===go&&Number.isNaN(e))return jw();if(t===Er){let n=Cr(Fp,!0);return n.class=e.constructor,n.const=e,n.decoder=bs,n}let r=Cr(t,!0);return r.const=e,r.decoder=bs,r}function fr(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=Hi(o),l=fr(s),d=Ti(l,void 0);t=s.i!==l.i||d!==""?qn(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!==Hl&&(t=a(o,o.e)),o!==t?r=a:(t=o.e.decoder(o),t.io||(t=Zl(t,t)))}}return t}function bo(e){for(;;){let t=e,r=t.to;if(r===void 0)return t;e=r}}function Wi(e){if(aa in e)return e[aa];let t,r=e;for(;r;){let i=ai(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(Wi));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]=Wi(m[S])}i.properties=g}typeof i.additionalItems===Er&&(i.additionalItems=Wi(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=Wi(S);b.push(A),Mw(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]=Wi(_[v])}i.$defs=g}t=i,r=o}let n=t;return ki[gs]=n,An(e,aa,ki),ki[gs]=e,An(n,aa,ki),n}function zw(e){try{return fr(e)}catch(t){let r=fc(t),n=e.p;throw r.path=(n!==void 0?n.path:"")+(e.path+"[]"+r.path),r}}function Nw(e,t,r,n){let i=BM(Oi in e?Qt:e,t,r,n),o=fr(i),a=Ti(o,void 0),s=ZM(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 Iw;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,Np);return f.embedded=i.g.e,f}function dc(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===go){let u=d|Ll.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=Ll.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=yo(r[f],m=>{m.to=p})}let c=Nw(u,u,i,0);return ki[gs]=c,An(l,d,ki),c}throw new Error("[Sury] No schema provided for decoder.")}var da="BS_PRIVATE_NESTED_SOME_NONE";function rj(e){let t=kt(e,void 0,void 0,Kp());return t.cp=Aw(e,void 0)+";",t}function Kp(){return So(Rp,Rp,e=>{e.decoder=rj})}function nj(e){let t=e.e.to;return qn(e,"{"+da+":"+bo(e.e).properties[da].const+"}",t,t)}function vs(e,t){return{v:sc,i:"",s:t.type===Vi?{type:Vi,decoder:Yl,additionalItems:"strict",items:[]}:{type:Er,decoder:xs,additionalItems:"strict",required:[],properties:{}},e:e.e,prev:e,f:0,d:{},cp:"",hd:"",t:!0,path:e.path,g:e.g}}function Jp(e){return mc(e,ca())}function xs(e){let t=e.u,r=e.e,n=er[e.s.type],i;if(n&65){let u=n&64,c;if(u)c=e.s;else{let p=Cr(Er,!1);p.properties=jp,p.additionalItems=Qt,c=p}let f=[];u||(f.push({c:$w,f:Mr}),r.additionalItems!=="strip"&&f.push({c:p=>"!"+lc(p),f:Mr})),i=f.length!==0?kt(e,c,f,void 0):kt(e,c,void 0,void 0)}else i=ua(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===Qt)d=i;else if(l){let u=i.v(),c=fn(i.g),f=Ew(i,c),p=zw(f),m=p.t,h=m?qn(i,"{}",r,void 0):kt(i,r,void 0,void 0),_=Wp(p,i,c,m?()=>Rw(h,c,p):void 0);if((m||_!=="")&&(h.cp=h.cp+("for(let "+c+" in "+u+"){"+_+"}")),p.f&1){let g=fn(h.g),b=fn(h.g),y=fn(h.g),v=fn(h.g),S=h.v();d=Pw(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=vs(i,r),c=Object.keys(i.s.properties);for(let f=0,p=c.length;f<p;++f){let m=c[f],h=Wl(i,m);h.e=a,h.io=!1,h.u=t,Ai(u,m,fr(h))}d=Ss(u)}else{let u=r.properties,c=Object.keys(u),f=c.length,p=vs(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===oa;for(let y=0;y<f;++y){let v=c[y],S=u[v],A=Wl(i,v);A.e=S,A.io=!1,A.u=t,g&&S.type===oi&&S.has[Dn]&&(A.i="("+A.i+"??null)");let R=fr(A);t&&Oi in S&&Cw(i,R,v),Ai(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=fn(p.g);if(ac(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+"!=="+la(i.g,A))}else p.cp=p.cp+"true";p.cp=p.cp+("){"+Ul(i,v=>({code:"unrecognized_keys",path:p.path,reason:'Unrecognized key "'+v+'"',keys:[v]}),y)+"}}")}if(h)d=Ss(p);else{let y=kt(i,void 0,void 0,void 0);y.cp=p.cp,y.d=p.d,d=y}}return Zl(d,i)}function ij(){let e=Bp(0),t={};return t[da]=e,{type:Er,serializer:r=>{let n=r.e.to;return _o(r,n,n)},decoder:xs,additionalItems:"strip",required:[da],properties:t}}function Yl(e){let t=e.u,r=e.e,n=er[e.s.type],i=r.items,o=i.length,a;if(n&129){let u=n&128,c=u?e.s:Xl(Qt),f=[];u||f.push({c:lc,f:Mr});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:Mr}):f.push({c:_=>_+".length==="+o,f:Mr}))}a=f.length!==0?kt(e,c,f,void 0):kt(e,c,void 0,void 0)}else a=ua(e,e.s,r);let s=r.additionalItems,l,d=0;if(s==="strip"||s==="strict")d=1;else if(s===Qt)l=a;else{let u=a.v(),c=fn(a.g),f=Ew(a,c),p=zw(f),m=p.t,h=m?qn(a,"new Array("+u+".length)",r,void 0):kt(a,r,void 0,void 0),_=Wp(p,a,c,m?()=>Rw(h,c,p):void 0);(m||_!=="")&&(h.cp=h.cp+("for(let "+c+"="+o+";"+c+"<"+u+".length;++"+c+"){"+_+"}")),l=p.f&1?Pw(h,"Promise.all("+h.i+")"):h}if(d===1){let u=vs(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(),_=Wl(a,h);_.e=m,_.io=!1,_.u=t;let g=fr(_);t&&Oi in m&&Cw(a,g,h),Ai(u,h,g),f||(f=g.t)}if(f)l=Ss(u);else{let p=kt(a,void 0,void 0,void 0);p.cp=u.cp,p.d=u.d,l=p}}return Zl(l,a)}function oj(e,t){let r=e.s.anyOf;return t.type===oi&&qw(t)===void 0&&Fw(t.anyOf,r)||!aj(r,t)?e:Dw(e,t)}function Gw(e){let t=e.e,r=t.anyOf,n=er[e.s.type],i=qw(t);if(e.s===t&&i===void 0&&r.every(rc)||n&256&&Fw(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=Qt);let o="";if(!(n&769)){let W=Ep(e.s),Z=!1,$=!1,N=r.length,M=0;for(;o===""&&M<N;){let te=r[M];Ep(te)===W?o=W:te.type===_s?Z=!0:te.type===Dn&&($=!0),M=M+1|0}o===""&&(n&16&&Z?o=_s:n&32&&$&&(o=Dn))}let a=o,s=e.i,l=W=>xi(e,function(){let Z=arguments,$=Tw(t,Qt,e.path,Z[0],!0,Z.length>1?Array.from(Z).slice(1):void 0,void 0);throw new sa($)})+"("+e.v()+W+")",d=kt(e,void 0,void 0,void 0),u=[],c={contents:""},f=(W,Z)=>{let $=W[0],N=W[1],M="",te="",oe=!1,Ae={contents:""},Le="",Ne={},ut=2,je=W.length-1|0;for(;ut<=je;){let ht=Hi(N);ht.u=!0,ht.t=N.t,ht.io=!1,ht.e=W[ut];let Ye=ut===je,We=ut===2,jt=We&&Ye,xr=!jt,Lt=!1,Xe="",F={contents:""};try{let _e=fr(ht);if(u.push(_e.s),Xe=Ti(_e,F),_e.t){d.t=!0,_e.f&1&&(d.f=d.f|1);let Ve=$.v();_e.i!==Ve&&(Xe=Xe+(Ve+"="+_e.i))}}catch(_e){let Ve=xi(ht,fc(_e));Le=Le+","+Ve,Z&&jt?(c.contents=Ve,Lt=!0):Ye?(xr=!1,Xe=Z?"throw "+Ve:l(Le)):Lt=!0}let Ee=F.contents,ve=Xe;if(!Lt&&Ee)if(ve){let _e=Ne[Ee];_e!==void 0?typeof _e=="string"?Ne[Ee]=[_e,ve]:_e.push(ve):Ne[Ee]=ve}else Ae.contents=Ae.contents?Ae.contents+"||"+Ee:Ee;if(!Lt&&(!Ee||Ye)){let _e=Object.keys(Ne);for(let Ve=0,Kt=_e.length;Ve<Kt;++Ve){let dn=_e[Ve];M=M+(oe?"else if":"if")+("("+dn+"){");let zn=Ne[dn];if(typeof zn=="string")M=M+zn+"}";else{let ti="";for(let Wr=0,po=zn.length;Wr<po;++Wr){let Xo=zn[Wr],en="e"+Wr;M=M+("try{"+Xo+"}catch("+en+"){"),ti=ti+","+en}M=M+l(ti)+"}".repeat(zn.length)+"}"}oe=!0}Ne={}}if(!Lt&&!Ee)if(ve)if(Ae.contents&&(M=M+(oe?"else if":"if")+("(!("+Ae.contents+")){"),te="}"+te,Ae.contents="",oe=!1),Ye&&(Z||!xr||We))M=M+((oe?"else{":"")+ve),te=(oe?"}":"")+te;else{let _e="e"+(ut-2|0);M=M+((oe?"else{":"")+"try{"+ve+"}catch("+_e+"){"),te=(oe?"}":"")+"}"+te,Le=Le+","+_e,oe=!1}else Ae.contents="",ut=je,xr=!1;if(Ye){if(Ae.contents)M||Le?M=M+(oe?"else if":"if")+("(!("+Ae.contents+")){"+l(Le)+"}"):Zp(N,{c:_e=>"("+Ae.contents+")",f:Mr});else if(xr){let _e=l(Le);M=M+(oe?"else{"+_e+"}":_e)}}ut=ut+1}return M+te},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},z=(W,Z,$)=>{if(Z===void 0)return W;let N=M=>{let te=$.contents;if(te!==void 0)return te;let oe=Z(M);return $.contents=oe,oe};return W!==void 0?M=>{let te=W(M),oe=N(M);for(let Ae=0,Le=oe.length;Ae<Le;++Ae)te.push(oe[Ae]);return te}:N},H=W=>{let Z=z(W.refiner,v,A);Z!==void 0&&(W.refiner=Z);let $=z(W.inputRefiner,S,R);if($!==void 0){W.inputRefiner=$;return}},ce;if(Oi in e.s){let W=[],Z=[];for(let $=0;$<=g;++$){let N=r[$];Oi in N&&N.const===e.s.const?W.push(N):Z.push(N)}ce=W.concat(Z)}else ce=r;for(let W=0;W<=g;++W){let Z=i!==void 0?yo(ce[W],te=>{H(te),te.to=i}):ce[W],$=Z.type,N=er[$],M=Ep(Z);if((a===""||a===M)&&!(N&16&&"fromDefault"in t)){let te=b[M];if(te!==void 0)N&64&&da in Z.properties?te.splice(te.length-1|0,0,Z):N&2096||te.push(Z);else{let oe=Hi(e),Ae;if(N&37633)Ae=Qt;else{let je=Cr(Z.type,!1);je.encoder=Z.encoder,N&8192?je.class=Z.class:N&64?(je.properties=jp,je.additionalItems=Qt):N&128?(je.additionalItems=Qt,je.items=cc):N&2096&&(je.const=Z.const),je.decoder=ht=>er[ht.s.type]&1?kt(ht,ht.e,[{c:Ye=>{let We=er[Z.type];if(We&64)return $w(Ye)+"&&!"+lc(Ye);if(We&128)return lc(Ye);if(We&8192)return YM(ht,Z.class)(Ye);if(!(We&4))return We&2048?ps(Ye):We&48?Ye+"==="+Kl(ht,Z):We&17418?ys(Z.type)(Ye):"";let jt=ys(go)(Ye);return ht.g.o&2?jt:jt+"&&!"+ps(Ye)},f:Mr}],void 0):Z.decoder(ht),Ae=je}oe.e=Ae;let Le;try{Le=fr(oe)}catch{oe.vc=void 0,Le=oe}gw(N,b)?y.unshift(M):y.push(M),b[M]=[oe,Le,Z];let Ne=!0,ut=Le;for(;ut!==void 0&&Ne;){let je=ut;ut=je.prev,Ne=!(je.vc&&Ow(je))}if(Ne){for(let je=0,ht=y.length;je<ht;++je){let Ye=y[je];if(!_){let We=b[Ye],jt=We[1],xr=f(We,!0),Lt=Ti(jt,void 0)+xr,Xe=c.contents;if(Xe)if(c.contents="",Lt){let F="e"+(W+je|0);p=p+("try{"+Lt+"throw "+Xe+"}catch("+F+"){"),m="}"+m,h=h+","+F}else h=h+","+Xe;else if(Lt){let F="e"+(W+je|0);p=p+("try{"+Lt+"}catch("+F+"){"),m="}"+m,h=h+","+F}else _=!0}}b={},y=[]}}}}let ne=b,ie=y;if(!_){let W=!1,Z="";for(let M=0,te=ie.length;M<te;++M){let oe=ne[ie[M]],Ae=oe[1],Le=oe[2],Ne=f(oe,!1),ut={contents:""},je=Ti(Ae,ut)+Ne,ht=ut.contents;je||gw(er[Le.type],ne)?(p=p+(W?"else if":"if")+("("+ht+"){"+je+"}"),W=!0):Z=Z?Z+"||"+ht:ht}let $=l(h),N;Z?N=(W?"else if":"if")+("(!("+Z+")){"+$+"}"):N=W?"else{"+$+"}":m===""?$+";":$,p=p+N}d.cp=d.cp+p+m,e.i!==d.i&&(d.i=e.i);let le=d.f&1?(d.i="Promise.resolve("+d.i+")",d.v=sc,d):d.v===Hr&&e.cp===""&&d.cp===""&&s==="i"?(e.hd="",e.v=sc,e.i=s,e):d;return le.s=u.length?vo(u):Kp(),le.e=i!==void 0?(le.io=!0,bo(i)):t,le}function Fw(e,t){return t.every((r,n)=>{let i=e[n];return i!==void 0&&!(er[r.type]&9152)&&r.type===i.type&&r.const===i.const?r.to===void 0:!1})}function Dw(e,t){return kt(e,Qt,void 0,yo(e.s,r=>{r.to=t}))}function aj(e,t){return!(er[bo(t).type]&512)&&!(t.type===oi&&t.anyOf.some(r=>er[r.type]&512))?!e.some(r=>r.to!==void 0||r.parser!==void 0?!0:er[r.type]&512):!1}function qw(e){if(e.parser!==void 0)return;let r=e.to;if(r!==void 0)return r}function Wl(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 Hi(i);let o=e.s.type===Er?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"?ua(e,e.s,e.e):e.s.type===Er&&u.type!==Hl&&!(er[u.type]&512)&&!UM(u)?Jp(u):u}let l="["+la(e.g,t)+"]",d={p:e,v:$p,i:Oi in a?Kl(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 Ss(e){let t=e.s.type===Vi,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+"["+la(e.g,c)+"]="+f.i+"}")}else r=r+(t?f.i:la(e.g,c)+":"+f.i)+","}if(e.i=t?"["+r+"]":"{"+r+"}",n){let d=Hi(e);d.io=!0;let u=fr(d),c=Ti(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 vo(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===oi&&s.to===void 0?(s.anyOf.forEach(l=>{n.add(l)}),Object.assign(r,s.has)):(n.add(s),Mw(r,s.type))}let i=Cr(oi,!1);return i.anyOf=Array.from(n),i.decoder=Gw,i.encoder=oj,i.has=r,i}throw new Error("[Sury] S.union requires at least one item")}function gw(e,t){return e&8320&&Er in t?!0:e&2048?go in t:!1}function Ep(e){return er[e.type]&8192?e.class.name:e.type}function rc(e){for(;;){let t=e,r=!1,n=!1,i=!1;if(t.to===void 0&&t.parser===void 0&&!(er[t.type]&512)){let a=t.anyOf;i=a!==void 0?a.every(rc):!0}if(i){let a=t.items;n=a!==void 0?a.every(rc):!0}if(n){let a=t.properties;r=a!==void 0?Object.values(a).every(rc):!0}if(!r)return!1;let o=t.additionalItems;if(o===void 0||o==="strip"||o==="strict")return!0;e=o}}function Xl(e){let t=Cr(Vi,e[aa]===e);return t.additionalItems=e,t.items=cc,t.decoder=Yl,t}function mc(e,t){let r=t!==void 0?t:ca(),n=bo(e);switch(n.type){case"undefined":return vo([r,yw(e)]);case"union":let o=n.has,a=n.anyOf;return yo(e,s=>{let l=NM(o),d=[];for(let u=0,c=a.length;u<c;++u){let f=a[u],p=bo(f),m=p.type,h;if(m==="undefined")l[r.type]=!0,d.push(r),h=yw(f);else{let _=p.properties;if(_!==void 0){let g=_[da];h=g!==void 0?yo(f,b=>{let y={},v={...g};v.const=g.const+1,y[da]=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 vo([e,r])}}function yw(e){return yo(e,t=>{t.to=ij(),t.parser=nj})}function Yp(e){let t=Cr(Er,e[aa]===e);return t.properties=jp,t.additionalItems=e,t.decoder=xs,t}function bw(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?xi(e,o)+('["'+l+'"]'):xi(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=_),_w[gs]=0,An(o,l,_w);let y=Nw(s,o,a,n);ki[gs]=y,An(o,l,ki),b=y;let v=o.hasTransform,S=o.isAsync;(v!==h||S!==_)&&(h=v,_=S,delete o[l],g=!0)}d=xi(e,b)}let c=o.hasTransform===!0,f=o.isAsync,p="",m;if(c||f){let h=fn(e.g);p="let "+h+";";let _=qn(e,h,t,t);_.v=Hr,_.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+Wp(m,e,void 0,void 0),m.fz=void 0,m.prev=e,m}An(Lp,"~standard",{get:function(){let e=this;return{version:1,vendor:zp,validate:t=>{try{return{value:dc(Qt,e)(t)}}catch(r){let n=fc(r);return{issues:[{message:n.reason,path:n.path===""?void 0:GM(n.path)}]}}}}}});function Lw(e,t){return dc(Qt,t)(e)}var sj="#/$defs/";function lj(e,t){return yo(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 Uw(e,t,r,n){let i=r!==void 0?r:"Refinement failed",o=n!==void 0?DM(n):"";return lj(e,a=>(s=>{let l=xi(s,t);return[{c:d=>l+"("+d+")",f:Up(void 0,o,i,void 0)}]}))}function Zw(){let e=ai(Jl());return e.to=ca(),e}function Ww(e,t){return yo(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=bo(m);h.type!=="undefined"&&(o.push(h),a.push(m))}let s=o.length,l;if(s!==1)if(s!==0)l=vo(o);else{let f="Can't set default for "+vr(r);throw new Error("[Sury] "+f)}else l=o[0];let d=a.length!==1?vo(a):a[0];if(t.TAG==="Value"){let f=t._0;try{dc(Qt,l)(f)}catch(p){let m=fc(p),h="Invalid default for "+vr(r)+": "+m.message;throw new Error("[Sury] "+h)}try{r.default=dc(Wi(d),void 0)(f)}catch{}}r.parser=f=>{let p=f.e.to,m=f.v(),h;return h=t.TAG==="Value"?Kl(f,Bp(t._0)):xi(f,t._0)+"()",qn(f,m+"===void 0?"+h+":"+m,p,p)};let u=ai(l),c=u.decoder;u.serializer=f=>{let p=Wi(d);return kt(c(f),p,void 0,p)},u.decoder=xw,r.to=u;return}let i="Can't set default for "+vr(r);throw new Error("[Sury] "+i)})}function Mp(e,t){let r=er[t.type];if(r&46)return fr(kt(e,Qt,void 0,t));if(r&2064){let i=ai(Jl());return i.to=t,fr(kt(e,Qt,void 0,i))}if(r&128){let i=Xl(Qt),o=fr(kt(e,Qt,void 0,i));return o.s.additionalItems=cn(),o.e=t,o.io=!1,o}if(r&64){let i=Yp(Qt),o=fr(kt(e,Qt,void 0,i));return o.s.additionalItems=cn(),o.e=t,o.io=!1,o}if(r&768)return e;let n=ai(ks());return n.to=t,fr(kt(e,Qt,void 0,n))}function ms(e){let t=er[e.type],r=!0;if(!(t&46||e.$ref===cn().$ref||t&256&&e.anyOf.every(ms))){let i=!1;if(t&128){let o=e.additionalItems,a;a=o==="strip"||o==="strict"?!0:ms(o),i=a}r=i&&e.items.every(ms)}if(r)return!0;let n=!1;if(t&64){let i=e.additionalItems,o;o=i==="strip"||i==="strict"?!0:ms(i),n=o}return n?Object.values(e.properties).every(ms):!1}function vw(e){let t=er[e.s.type];if(ms(e.s))return e;if(t&2064)return _o(e,Jl(),void 0);if(t&128){let r=Cr(Vi,!1);r.items=e.s.items.map(o=>cn()),r.decoder=Yl;let n=e.s.additionalItems,i;return i=n==="strip"||n==="strict"?n:cn(),r.additionalItems=i,r.to=e.e.to,fr(kt(e,void 0,void 0,r))}if(t&64){let r=e.s.additionalItems;if(!(r==="strip"||r==="strict")){let o=Yp(cn());return o.to=e.e.to,fr(kt(e,void 0,void 0,o))}let n=vs(e,e.s);n.e=cn(),e.e.to&&(n.e=ai(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=Wl(e,s);if(l.io=!1,l.s.type===oi&&l.s.has[Dn]){l.e=vo([ca(),cn()]);let d=fr(l);d.o=!0,Ai(n,s,d)}else l.e=cn(),Ai(n,s,fr(l))}return Ss(n)}if(t&512)return bw(e);if(t&256&&!(Dn in e.s.has))return fr(Dw(e,e.e));if(t&1)return e.e.to&&!e.e.parser?(e.s=cn(),Mp(e,e.e)):e.e.noValidation?(e.s=cn(),e):bw(e);try{let r=ai(ks());return r.to=e.e,e.e=r,fr(e)}catch{return ua(e,e.s,cn())}}function cn(){return So(oa,Ip,e=>{let t=Cr(Ip,!0);t.$ref=sj+oa,t.name=oa,t.decoder=vw,t.encoder=Mp,e.$ref=t.$ref,e.name=oa,e.decoder=vw,e.encoder=Mp;let r=[ks(),Hp(),Vp(),Jl(),Yp(t),Xl(t)],n={};r.forEach(a=>{n[a.type]=!0});let i=Cr(oi,!0);i.anyOf=r,i.has=n,i.decoder=Gw,i.name=oa,i.type=oi;let o={};o[oa]=i,e.$defs=o})}function dj(e){return e[Gp]}function Vl(e,t,r){let n=ai(bo(e));return n.from=t,r!==void 0&&(n.fromFlattened=r),new Proxy(n,{get:(i,o)=>{if(o===Gp)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 '+vr(i);throw new Error("[Sury] "+d)}return Vl(l,i.from.concat(o),i.fromFlattened)}})}function Vw(e,t,r){let n=vs(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();Ai(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];Ai(n,d,r(d,o[d]))}}else{let a="Don't know where the value is coming from: "+vr(t);throw new Error("[Sury] "+a)}}return Ss(n)}function Hw(e,t){let r=t.from,n=t.fromFlattened,i=n!==void 0?Hi(Sw(e.fv[n],t.from,0)):r!==void 0?Hi(Sw(e,r,0)):Oi in t?_o(e,t,void 0):Vw(e,t,(o,a)=>Hw(e,a));return i.prev=void 0,i.e=t,i}function Bw(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)Bw(e,i[o[a]])}function nc(e,t,r,n){let i=0;if(t!==void 0){let o=t.val;if(o!==void 0){let a=Hi(o);return a.t=!0,a.s=r,a.e=r,fr(a)}i=1}else i=1;if(i===1){if(Oi in r){let c=_o(e,r,r);return c.prev=void 0,c.p=e,c.v=$p,c.io=!0,fr(c)}let o=t===void 0?bo(r):r,a=vs(e,o);a.e=o,a.io=!0,a.prev=void 0,a.p=e,a.v=$p;let s=o.flattened,l=o.items,d=0,u=0;if(l!==void 0&&(t!==void 0||typeof o.additionalItems!==Er))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=la(e.g,p);Ai(a,p,nc(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!==Er)){if(s!==void 0&&t!==void 0){let p=t.flattened;p!==void 0&&p.forEach((m,h)=>{let g=nc(e,m,Wi(s[h]),n).d,b=Object.keys(g);for(let y=0,v=b.length;y<v;++y){let S=b[y];Ai(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=la(e.g,h);Ai(a,h,nc(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;JM(e,"Missing input for "+vr(r)+p)}return Ss(a)}}function Sw(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 uc(e,t){if(typeof e!==Er||e===null)return Bp(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=uc(e[l],t);e[l]=u}let s=Cr(Vi,!1);return s.items=e,s.additionalItems="strict",s.decoder=Yl,s}let n=e.constructor;if(n&&n!==Object){let s=Cr(Fp,!0);return s.class=n,s.const=e,s.decoder=bs,s}let i=Object.keys(e),o=i.length;for(let s=0;s<o;++s){let l=i[s],d=uc(e[l],t);e[l]=d}let a=Cr(Er,!1);return a.required=i,a.properties=e,a.additionalItems=Ll.a,a.decoder=xs,a}function uj(e){let t={};Bw(t,e);let r=e.e.to,n=nc(e,t,r,"");return n.t=!0,n.prev=e,n}function pc(e){return uc(e,t=>{if(t["~standard"])return t})}function Kw(e){let t=this,r="~"+e,n=t[r];if(n!==void 0)return ue(n);let i={},o=[],a=Cr(Er,!1);a.required=o,a.properties=i,a.additionalItems=Ll.a,a.decoder=xs;let s=t.f(e,a)[Gp],l=(p,m)=>{let h=ws(p);if(p in i)throw new Error("[Sury] "+("The field "+h+" defined twice"));return o.push(p),i[p]=m,Vl(m,s.from.concat(p),s.fromFlattened)},f={field:l,f:l,fieldOr:(p,m,h)=>{let _=mc(m,void 0);return l(p,Ww(_,{TAG:"Value",_0:h}))},tag:(p,m)=>{l(p,pc(m))},nested:Kw,flatten:p=>{if(p.type==="object"){let _=p.to,g=p.properties;if(_){let v="Unsupported nested flatten for transformed object schema "+vr(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 "+vr(p)+" schema";throw new Error("[Sury] "+h)}};return t[r]=f,f}function Jw(e){let t=ai(uc(e,dj));return t.serializer=uj,t}function Yw(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=Hi(e);u.e=s,u.io=!0,d=fr(u)}else{let u=Vw(e,s,(c,f)=>Wl(e,c));u.e=s,u.prev=void 0,d=Zl(u,u)}i.push(d),e.cp=e.cp+Ti(d,void 0)}e.fv=i}let r=e.e.to,n=Hw(e,r);return n.t=!0,n.prev=e,Zl(n,e)}function Xw(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 Vl(u,cc,h.push(u)-1|0)}let f="The '"+vr(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,Vl(c,[u],void 0)},l=e({field:i,f:i,fieldOr:(u,c,f)=>{let p=mc(c,void 0);return i(u,Ww(p,{TAG:"Value",_0:f}))},tag:(u,c)=>{i(u,pc(c))},nested:Kw,flatten:n}),d=Cr(Er,!1);return d.required=Object.keys(r),d.properties=r,d.additionalItems=Ll.a,d.decoder=xs,d.parser=Yw,d.to=Jw(l),t!==void 0&&(d.flattened=t),d}function Qw(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,Vl(l,[s.toString()],void 0)},o=e({item:r,tag:(s,l)=>{r(s,pc(l))}});for(let s=0,l=t.length;s<l;++s)t[s]||(t[s]=ca());let a=Cr(Vi,!1);return a.items=t,a.additionalItems="strict",a.decoder=Yl,a.parser=Yw,a.to=Jw(o),a}var cj=pc;function e0(e){return vo(e.map(cj))}function t0(e){return mc(e,Zw())}var r0=vo;var Ot=ks(),n0=Hp();var Ts=Vp();var i0=cn();var o0=Dp;var hc=Xl;var mr=Jp;var Xp=t0;var a0=r0,_c=e0;var Bi=Uw;var s0=Lw;var On=Xw;var l0=Qw;function mj(e){return{path:e.path,summary:e.message}}function we(e){return{path:"",summary:e}}function As(e,t){try{return{TAG:"Ok",_0:s0(e,t)}}catch(r){let n=X(r);if(n.RE_EXN_ID===o0)return{TAG:"Error",_0:mj(n._1)};throw n}}import*as td from"node:fs";import*as f0 from"node:os";import*as gc from"node:path";var pj="--api-url must be ws://, wss://, http://, or https://";function rn(e){let t=Fn(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:pj}}return $t(i,()=>{r.pathname="",r.search="",r.hash="";let o=r.toString();return o.endsWith("/")?o.slice(0,o.length-1|0):o})}var ed="wss://serve.linzumi.com";function rd(){return gc.join(f0.homedir(),".linzumi","auth.json")}var d0="Kandan auth cache must contain a JSON object",hj="Kandan auth cache local_codex_runner must be an object",_j="Kandan auth cache personal_agent_delegation must be an object";function u0(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 m0(e){let t;try{t=JSON.parse(e)}catch{t=void 0}if(t===void 0)return{TAG:"Error",_0:we(d0)};if(typeof t!="object"||t===null||Array.isArray(t))return{TAG:"Error",_0:we(d0)};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(hj)};if(!o)return{TAG:"Error",_0:we(_j)};let a;return a=typeof r=="object"&&r!==null&&!Array.isArray(r)?Object.fromEntries(ze(Object.entries(r),s=>{let l=s[0];return D(u0(s[1]),d=>[l,d])})):void 0,{TAG:"Ok",_0:{serverTokens:a,personalAgentDelegation:k(n,u0)}}}function p0(e){return td.existsSync(e)?Ce(zt(or(e),t=>we(t.message)),t=>$t(m0(t),r=>r)):{TAG:"Ok",_0:void 0}}function h0(e,t){return e!==void 0?new Date(e).getTime()<=t:!1}function yc(e,t,r){return td.existsSync(t)?Ce(p0(t),n=>$t(zt(rn(e),we),i=>k(k(k(n,o=>o.serverTokens),o=>o[i]),o=>{if(!(o.accessToken.trim()===""||h0(o.expiresAt,r)))return{accessToken:o.accessToken,serverBaseUrl:i,issuedAt:o.issuedAt,expiresAt:o.expiresAt}}))):{TAG:"Ok",_0:void 0}}function gj(e){return"missing personal-agent delegation auth file: "+e}var yj="personal-agent delegation auth file is missing access_token",bj="personal-agent delegation auth file token is expired";function _0(e,t){return td.existsSync(e)?Ce(p0(e),r=>{let n=k(r,i=>i.personalAgentDelegation);return n!==void 0&&n.accessToken.trim()!==""?h0(n.expiresAt,t)?{TAG:"Error",_0:we(bj)}:{TAG:"Ok",_0:n}:{TAG:"Error",_0:we(yj)}}):{TAG:"Error",_0:we(gj(e))}}function c0(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 vj(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],c0(i[1])])));let n=e.personalAgentDelegation;return n!==void 0&&(t.personal_agent_delegation=c0(n)),t}function bc(e,t,r,n,i){return Ce(zt(rn(e),we),o=>{let a=td.existsSync(n)?Ce(zt(or(n),s=>we(s.message)),m0):{TAG:"Ok",_0:{serverTokens:void 0,personalAgentDelegation:void 0}};return Ce(a,s=>{let l=i.toISOString(),d=D(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=vj({serverTokens:f,personalAgentDelegation:s.personalAgentDelegation}),m=JSON.stringify(p,void 0,2)+`
109
- `,h=n+".tmp."+process.pid.toString()+"."+Hu(6),_=g=>we(g.message);return Ce(zt(Dt(gc.dirname(n)),_),()=>{let g=Ce(ho(h,m,{encoding:"utf8",mode:384}),()=>ii(h,n));return g.TAG==="Ok"?{TAG:"Ok",_0:{accessToken:t,serverBaseUrl:o,issuedAt:l,expiresAt:d}}:(un(h),{TAG:"Error",_0:we(g._0.message)})})})})}function eh(e){let t=gr(e);return t!==void 0?x(Or(ue(t)),"unknown error"):"unknown error"}async function fa(e,t){try{return{TAG:"Ok",_0:await fetch(e,t)}}catch(r){let n=X(r);return{TAG:"Error",_0:{message:eh(n)}}}}async function Sj(e){try{return{TAG:"Ok",_0:await e.text()}}catch(t){let r=X(t);return{TAG:"Error",_0:{message:eh(r)}}}}async function nd(e){let t=await Sj(e);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};try{return{TAG:"Ok",_0:JSON.parse(t._0)}}catch(r){let n=X(r);return{TAG:"Error",_0:{message:eh(n)}}}}function wj(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}async function Os(e,t,r,n,i){let o=i!==void 0?i:[],a=zt(rn(e),we);if(a.TAG!=="Ok")return{TAG:"Error",_0:a._0};let s=Zi("/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 fa(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 nd(f);return m.TAG!=="Ok"?{TAG:"Error",_0:we(m._0.message)}:k(wj(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 N0 from"node:os";import*as kc from"node:fs";import*as ah from"node:os";import*as Gr from"node:path";import*as sh from"node:crypto";function ke(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function Ji(e){if(Array.isArray(e))return e}function Sr(e){if(typeof e!="string")return;let t=e.trim();if(t!=="")return t}function Rt(e){return isFinite(e)?Math.trunc(e)===e:!1}function ma(e){if(typeof e=="number"&&Rt(e))return e}function vc(e){return Array.isArray(e)?ze(e,Sr):[]}function pa(e){try{return ke(JSON.parse(e))}catch{return}}var kj=new RegExp("^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$","i"),xj=new RegExp("^[a-zA-Z0-9_.-]+$");function nh(e){return kj.test(e)}function wc(e){return xj.test(e)}var Tj=Bi(Ot,e=>e.trim()!=="","allowedCwds entries must be non-empty strings",void 0);function b0(e){return{version:1,machineId:e.f("machineId",mr(Bi(Ot,nh,"invalid machine id",void 0))),runnerId:e.f("runnerId",mr(Bi(Ot,wc,"invalid runner id",void 0))),allowedCwds:e.f("allowedCwds",hc(Tj))}}var Aj=On(b0),Oj=On(e=>(e.tag("version",1),b0(e)));function id(e){let t=new Set;return ze(e,r=>{let n=r.trim();if(!(n===""||t.has(n)))return t.add(n),n})}function v0(e){return{version:e.version,machineId:e.machineId,runnerId:e.runnerId,allowedCwds:id(e.allowedCwds)}}function ih(e){return $t(As(e,Oj),v0)}function S0(e){return $t(As(e,Aj),v0)}var Sc=mr(Bi(Ot,e=>e.trim()!=="","must be a non-empty string",void 0)),g0=mr(Bi(Ts,e=>Rt(e)?e>0:!1,"must be a positive integer",void 0));function Cj(e){return!Number.isNaN(new Date(e).getTime())}var y0=Bi(Ot,Cj,"must be a parseable date",void 0),A6=On(e=>({email:e.f("email",Bi(Ot,t=>t.trim()!=="","must be a non-empty string",void 0)),serviceUrl:e.f("service_url",Bi(Ot,t=>t.trim()!=="","must be a non-empty string",void 0)),accessToken:e.f("access_token",Sc),refreshToken:e.f("refresh_token",Sc),expiresInSeconds:e.f("expires_in_seconds",g0),userId:e.f("user_id",g0),workspaceSlug:e.f("workspace_slug",Sc),launchUrl:e.f("launch_url",Sc),createdAt:e.f("created_at",y0),updatedAt:e.f("updated_at",y0)}));var Ci="prod";function w0(e){let t=e!==void 0?e:process.env,r=na(t,"HOME");return r!==void 0&&r.trim()!==""?r:ah.homedir()}function Cs(e,t){let r=e!==void 0?e:process.env;return t==="~"?w0(r):t.startsWith("~/")?Gr.resolve(w0(r),t.slice(2)):t}function xc(e){let t=na(e,"LINZUMI_CONFIG_FILE");return t!==void 0&&t.trim()!==""?Gr.resolve(Cs(e,t)):Gr.resolve(ah.homedir(),".linzumi","config.json")}function od(e){let t=rn(e),r=rn(ed);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?Ci:n}:{TAG:"Error",_0:we(r._0)}}function Pj(e){return $t(od(e),t=>t===Ci?Ci:Buffer.from(t).toString("base64url"))}function Rj(e,t,r){let n=Gr.dirname(e),i=Gr.basename(e);return t!==void 0?Ce(od(t),o=>o===Ci?{TAG:"Ok",_0:Gr.join(n,i+"."+r)}:$t(Pj(t),a=>Gr.join(n,i+"."+a+"."+r))):{TAG:"Ok",_0:Gr.join(n,i+"."+r)}}function x0(e){if(kc.existsSync(e))return Ce(zt(or(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)?ih(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 Ij(){let e={};return e.allowedCwds=[],e}function oh(e,t){return Ce(x0(e),r=>{let n=t!==void 0?od(t):{TAG:"Ok",_0:Ci};return Ce(n,i=>{let o=i===Ci?r:x(r[i],Ij()),a=i===Ci?ih(o):S0(o);return zt(a,s=>we("invalid Linzumi config section "+i+": "+e))})})}function $j(e,t){let r=i=>we(i.message),n=kc.existsSync(e)?zt(us(e,384),r):{TAG:"Ok",_0:void 0};return Ce(Ce(n,()=>zt(ho(e,JSON.stringify(t,void 0,2)+`
110
- `,{encoding:"utf8",mode:384}),r)),()=>zt(us(e,384),r))}function Mj(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=id(e.allowedCwds).map(i=>i),t}function jj(e){let t=e.version===1,r=e.machineId,n=r!==void 0?nh(r):!0,i=e.runnerId,o=i!==void 0?wc(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 zj(e,t,r){return Ce(jj(e),()=>{let n=r!==void 0?od(r):{TAG:"Ok",_0:Ci};return Ce(n,i=>Ce(x0(t),o=>{let a=Object.fromEntries(Object.entries(o)),s=Mj(e);return i===Ci?(Object.entries(s).forEach(l=>{a[l[0]]=l[1]}),a.version=1):(a.version=1,a[i]=s),Ce(zt(Dt(Gr.dirname(t)),l=>we(l.message)),()=>$j(t,a))}))})}function k0(e,t,r){return Ce(zt(or(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 Nj(e,t,r,n){if(kc.existsSync(e))return k0(e,r,n);let i=t();if(!r(i))return{TAG:"Error",_0:we("invalid generated Linzumi "+n+": "+i)};let o=Gr.dirname(e),a=Gr.basename(e),s=Gr.join(o,"."+a+"."+process.pid.toString()+"."+sh.randomUUID()+".tmp"),l=d=>we(d.message);return Ce(Ce(zt(Dt(o),l),()=>zt(ho(s,i+`
111
- `,{encoding:"utf8",flag:"wx"}),l)),()=>{let d=nw(s,e),u;if(d.TAG==="Ok")u={TAG:"Ok",_0:i};else{let c=d._0;u=ni(c,"EEXIST")?k0(e,r,n):{TAG:"Error",_0:we(c.message)}}return iw(s),u})}function Gj(){return"runner-"+sh.randomUUID()}function Fj(e,t,r,n,i,o,a,s){let l=t!==void 0?$t(od(t),d=>{if(d!==Ci)return t}):{TAG:"Ok",_0:void 0};return Ce(l,d=>Ce(oh(e,d),u=>{let c=a(u);return c!==void 0?{TAG:"Ok",_0:c}:Ce(Rj(e,d,r),f=>Ce(Nj(f,n,i,o),p=>Ce(oh(e,d),m=>{let h=a(m);return h!==void 0?{TAG:"Ok",_0:h}:$t(zj(s(m,p),e,d),()=>p)})))}))}function Tc(e,t,r){return Fj(e,t,"runner-id",r!==void 0?r:Gj,wc,"runner id",i=>i.runnerId,(i,o)=>({version:i.version,machineId:i.machineId,runnerId:o,allowedCwds:i.allowedCwds}))}var Dj=["ENOENT","ENOTDIR","EACCES","ELOOP","EIO"];function qj(e){let t=e.code;return t!==void 0?Dj.includes(t):!1}function T0(e,t){return Ce(oh(e,t),r=>{let n=[],i=[],o={contents:void 0};r.allowedCwds.forEach(s=>{if(o.contents!==void 0)return;let d=Gr.resolve(Cs(void 0,s)),u=Li(d);if(u.TAG==="Ok"){let f=u._0;if(n.push(f),f===d)return;n.push(d);return}let c=u._0;qj(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:id(n),missingAllowedCwds:id(i)}}})}function O0(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e.error;if(typeof t=="string")return t}function C0(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 Es(e,t){let r=e[t];if(r!==void 0&&typeof r=="string"&&r.trim()!=="")return r}async function E0(e,t,r,n,i){let o=Zi("/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 fa(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 nd(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 _=Es(p,"device_code"),g=Es(p,"user_code"),b=Es(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=O0(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 Lj(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=Zi("/api/v2/local-codex-runner/device/token",e),l;if(l=s.TAG==="Ok"?await fa(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 nd(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=O0(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=Es(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:Es(f,"workspace"),channelSlug:Es(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 P0(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 Lj(e,t,l);return typeof d!="object"?await s():d._0};return await s()}var Zj=3600*1e3;function Wj(e,t,r,n){return e<=3?"DecidePrompt":r!==void 0&&t-r<Zj?n?"DecideRefreshLine":"DecideSilent":"DecideSummary"}function R0(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 Vj(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).
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 th(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=>Hw(s,d,u,c,a,void 0,r)}}function Nr(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 th(void 0,void 0,r,void 0)(e)}function Bw(e,t){let r=t!==void 0?t:e.e;return Xl(e,th(r,void 0,void 0,void 0)(e),e.v())}function Zj(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 Kw(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&&Kw(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===Nr?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=Zj(i,r.v()));i.hd!==""&&(o=o+("let "+i.hd+";")),i.fz=!0,o=i.cp+o,n=o+n}return n}function Vn(e,t,r,n){let i=n!==void 0?n:e.e;return{v:pc,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?qj: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 rh(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)rh(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 Jw(e,t,r){if(!t.vc)return;let i="["+ua(e.g,r)+"]";t.vc.forEach(o=>rh(e,{c:a=>o.c(a+i),f:o.f})),t.vc=void 0}function Yw(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:Lj,i:e.v()+"["+t+"]",s:n,e:o,f:e.f,cp:"",hd:"",path:"",g:e.g}}function bo(e,t,r){return Vn(e,id(e,t),t,r)}function Xw(e,t){let r=Vn(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 Qw(e,t,r){return e.v()+"["+t+"]="+r.i}function Ji(e){let t=e.v!==Br,r={b:e,v:t?Dj: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 Wj(e,t){throw new da({code:"invalid_operation",path:e.path,reason:t})}function nh(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=yn(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 e0(e){return e}e0.embedded=yc;function Dp(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 hc(e){return"Array.isArray("+e+")"}function t0(e){return xs(Ir)(e)+"&&"+e}function Vj(e,t){return r=>r+" instanceof "+Oi(e,t)}function Hj(e){let t=tr[e.s.type];if(t&1){let i=[{c:xs(vo),f:Nr}],o=e.e.format,a=0;return o==="int32"?i.push({c:Dp,f:Nr}):a=1,a===1&&(e.g.o&2||i.push({c:s=>"!"+vs(s),f:Nr})),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:Dp,f:Nr}],void 0):e:fa(e,e.s,e.e);let r=yn(e.g),n=Vn(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"?Dp(r):"!"+vs(r)},f:Nr}],n}function ih(){return xo(vo,vo,e=>{e.decoder=Hj})}function Bj(e){return Vn(e,'""+'+e.i,Es(),void 0)}function Kj(e){let t=tr[e.s.type];if(t&1)return kt(e,e.e,[{c:xs(Ss),f:Nr}],void 0);if(!(t&3132&&Pi in e.s))return t&1036?Bj(e):t&2?e:fa(e,e.s,e.e);let r=""+e.s.const,n=Cr(Ss,!1);return n.const=r,Vn(e,'"'+r+'"',n,void 0)}function Es(){return xo(Ss,Ss,e=>{e.decoder=Kj})}function Jj(e){let t=tr[e.s.type];if(t&1)return kt(e,e.e,[{c:xs(cc),f:Nr}],void 0);if(!(t&2))return t&8?e:fa(e,e.s,e.e);let r=yn(e.g),n=Vn(e,r,e.e,void 0);n.v=Br;let i=e.v();return n.cp="let "+r+";("+n.i+"="+i+'==="true")||'+i+'==="false"||'+Bw(e,void 0)+";",n}function oh(){return xo(cc,cc,e=>{e.decoder=Jj})}function r0(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:Nr}],void 0):kt(e,t,[{c:o=>o+"==="+id(e,t),f:Nr}],void 0);let n=Cr(Ss,!1);n.const=""+t.const;let i=bo(e,n,n);return i.vc=[{c:o=>o+'==="'+n.const+'"',f:Nr}],bo(i,t,t)}function ma(){return xo(Wn,Wn,e=>{e.const=void 0,e.decoder=Ts})}function od(){return xo(ws,ws,e=>{e.const=null,e.decoder=Ts})}function n0(){return xo(Lp,Lp,e=>{e.const=NaN,e.decoder=Ts})}function ah(e){if(e===null)return od();let t=typeof e;if(t===Wn)return ma();if(t===vo&&Number.isNaN(e))return n0();if(t===Ir){let n=Cr(Yp,!0);return n.class=e.constructor,n.const=e,n.decoder=Ts,n}let r=Cr(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!==""?Vn(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),r0(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,Pn(e,la,Ai),Ai[ks]=e,Pn(n,la,Ai),n}function i0(e){try{return pr(e)}catch(t){let r=bc(t),n=e.p;throw r.path=(n!==void 0?n.path:"")+(e.path+"[]"+r.path),r}}function o0(e,t,r,n){let i=Uj(Pi in e?er:e,t,r,n),o=pr(i),a=Ci(o,void 0),s=Fj(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 e0;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,Kp);return f.embedded=i.g.e,f}function _c(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=o0(u,u,i,0);return Ai[ks]=c,Pn(l,d,Ai),c}throw new Error("[Sury] No schema provided for decoder.")}var ca="BS_PRIVATE_NESTED_SOME_NONE";function Yj(e){let t=kt(e,void 0,void 0,sh());return t.cp=Bw(e,void 0)+";",t}function sh(){return xo(Up,Up,e=>{e.decoder=Yj})}function Xj(e){let t=e.e.to;return Vn(e,"{"+ca+":"+wo(e.e).properties[ca].const+"}",t,t)}function As(e,t){return{v:pc,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 lh(e){return vc(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=Cr(Ir,!1);p.properties=Hp,p.additionalItems=er,c=p}let f=[];u||(f.push({c:t0,f:Nr}),r.additionalItems!=="strip"&&f.push({c:p=>"!"+hc(p),f:Nr})),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=yn(i.g),f=Yw(i,c),p=i0(f),m=p.t,h=m?Vn(i,"{}",r,void 0):kt(i,r,void 0,void 0),_=nh(p,i,c,m?()=>Qw(h,c,p):void 0);if((m||_!=="")&&(h.cp=h.cp+("for(let "+c+" in "+u+"){"+_+"}")),p.f&1){let g=yn(h.g),b=yn(h.g),y=yn(h.g),v=yn(h.g),S=h.v();d=Xw(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[Wn]&&(A.i="("+A.i+"??null)");let R=pr(A);t&&Pi in S&&Jw(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=yn(p.g);if(mc(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 Qj(){let e=ah(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:hc,f:Nr});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:Nr}):f.push({c:_=>_+".length==="+o,f:Nr}))}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=yn(a.g),f=Yw(a,c),p=i0(f),m=p.t,h=m?Vn(a,"new Array("+u+".length)",r,void 0):kt(a,r,void 0,void 0),_=nh(p,a,c,m?()=>Qw(h,c,p):void 0);(m||_!=="")&&(h.cp=h.cp+("for(let "+c+"="+o+";"+c+"<"+u+".length;++"+c+"){"+_+"}")),l=p.f&1?Xw(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&&Jw(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 ez(e,t){let r=e.s.anyOf;return t.type===di&&d0(t)===void 0&&s0(t.anyOf,r)||!tz(r,t)?e:l0(e,t)}function a0(e){let t=e.e,r=t.anyOf,n=tr[e.s.type],i=d0(t);if(e.s===t&&i===void 0&&r.every(dc)||n&256&&s0(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 W=qp(e.s),V=!1,M=!1,N=r.length,j=0;for(;o===""&&j<N;){let re=r[j];qp(re)===W?o=W:re.type===ws?V=!0:re.type===Wn&&(M=!0),j=j+1|0}o===""&&(n&16&&V?o=ws:n&32&&M&&(o=Wn))}let a=o,s=e.i,l=W=>Oi(e,function(){let V=arguments,M=Hw(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()+W+")",d=kt(e,void 0,void 0,void 0),u=[],c={contents:""},f=(W,V)=>{let M=W[0],N=W[1],j="",re="",se=!1,Ae={contents:""},Ue="",Ge={},ut=2,je=W.length-1|0;for(;ut<=je;){let pt=Ji(N);pt.u=!0,pt.t=N.t,pt.io=!1,pt.e=W[ut];let Ye=ut===je,He=ut===2,It=He&&Ye,Tr=!It,qt=!1,Xe="",q={contents:""};try{let he=pr(pt);if(u.push(he.s),Xe=Ci(he,q),he.t){d.t=!0,he.f&1&&(d.f=d.f|1);let Be=M.v();he.i!==Be&&(Xe=Xe+(Be+"="+he.i))}}catch(he){let Be=Oi(pt,bc(he));Ue=Ue+","+Be,V&&It?(c.contents=Be,qt=!0):Ye?(Tr=!1,Xe=V?"throw "+Be:l(Ue)):qt=!0}let Ce=q.contents,Se=Xe;if(!qt&&Ce)if(Se){let he=Ge[Ce];he!==void 0?typeof he=="string"?Ge[Ce]=[he,Se]:he.push(Se):Ge[Ce]=Se}else Ae.contents=Ae.contents?Ae.contents+"||"+Ce:Ce;if(!qt&&(!Ce||Ye)){let he=Object.keys(Ge);for(let Be=0,Bt=he.length;Be<Bt;++Be){let mn=he[Be];j=j+(se?"else if":"if")+("("+mn+"){");let qn=Ge[mn];if(typeof qn=="string")j=j+qn+"}";else{let ai="";for(let Hr=0,_o=qn.length;Hr<_o;++Hr){let ra=qn[Hr],tn="e"+Hr;j=j+("try{"+ra+"}catch("+tn+"){"),ai=ai+","+tn}j=j+l(ai)+"}".repeat(qn.length)+"}"}se=!0}Ge={}}if(!qt&&!Ce)if(Se)if(Ae.contents&&(j=j+(se?"else if":"if")+("(!("+Ae.contents+")){"),re="}"+re,Ae.contents="",se=!1),Ye&&(V||!Tr||He))j=j+((se?"else{":"")+Se),re=(se?"}":"")+re;else{let he="e"+(ut-2|0);j=j+((se?"else{":"")+"try{"+Se+"}catch("+he+"){"),re=(se?"}":"")+"}"+re,Ue=Ue+","+he,se=!1}else Ae.contents="",ut=je,Tr=!1;if(Ye){if(Ae.contents)j||Ue?j=j+(se?"else if":"if")+("(!("+Ae.contents+")){"+l(Ue)+"}"):rh(N,{c:he=>"("+Ae.contents+")",f:Nr});else if(Tr){let he=l(Ue);j=j+(se?"else{"+he+"}":he)}}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},Z=(W,V,M)=>{if(V===void 0)return W;let N=j=>{let re=M.contents;if(re!==void 0)return re;let se=V(j);return M.contents=se,se};return W!==void 0?j=>{let re=W(j),se=N(j);for(let Ae=0,Ue=se.length;Ae<Ue;++Ae)re.push(se[Ae]);return re}:N},L=W=>{let V=Z(W.refiner,v,A);V!==void 0&&(W.refiner=V);let M=Z(W.inputRefiner,S,R);if(M!==void 0){W.inputRefiner=M;return}},ae;if(Pi in e.s){let W=[],V=[];for(let M=0;M<=g;++M){let N=r[M];Pi in N&&N.const===e.s.const?W.push(N):V.push(N)}ae=W.concat(V)}else ae=r;for(let W=0;W<=g;++W){let V=i!==void 0?So(ae[W],re=>{L(re),re.to=i}):ae[W],M=V.type,N=tr[M],j=qp(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 je=Cr(V.type,!1);je.encoder=V.encoder,N&8192?je.class=V.class:N&64?(je.properties=Hp,je.additionalItems=er):N&128?(je.additionalItems=er,je.items=yc):N&2096&&(je.const=V.const),je.decoder=pt=>tr[pt.s.type]&1?kt(pt,pt.e,[{c:Ye=>{let He=tr[V.type];if(He&64)return t0(Ye)+"&&!"+hc(Ye);if(He&128)return hc(Ye);if(He&8192)return Vj(pt,V.class)(Ye);if(!(He&4))return He&2048?vs(Ye):He&48?Ye+"==="+id(pt,V):He&17418?xs(V.type)(Ye):"";let It=xs(vo)(Ye);return pt.g.o&2?It:It+"&&!"+vs(Ye)},f:Nr}],void 0):V.decoder(pt),Ae=je}se.e=Ae;let Ue;try{Ue=pr(se)}catch{se.vc=void 0,Ue=se}Fw(N,b)?y.unshift(j):y.push(j),b[j]=[se,Ue,V];let Ge=!0,ut=Ue;for(;ut!==void 0&&Ge;){let je=ut;ut=je.prev,Ge=!(je.vc&&Kw(je))}if(Ge){for(let je=0,pt=y.length;je<pt;++je){let Ye=y[je];if(!_){let He=b[Ye],It=He[1],Tr=f(He,!0),qt=Ci(It,void 0)+Tr,Xe=c.contents;if(Xe)if(c.contents="",qt){let q="e"+(W+je|0);p=p+("try{"+qt+"throw "+Xe+"}catch("+q+"){"),m="}"+m,h=h+","+q}else h=h+","+Xe;else if(qt){let q="e"+(W+je|0);p=p+("try{"+qt+"}catch("+q+"){"),m="}"+m,h=h+","+q}else _=!0}}b={},y=[]}}}}let U=b,K=y;if(!_){let W=!1,V="";for(let j=0,re=K.length;j<re;++j){let se=U[K[j]],Ae=se[1],Ue=se[2],Ge=f(se,!1),ut={contents:""},je=Ci(Ae,ut)+Ge,pt=ut.contents;je||Fw(tr[Ue.type],U)?(p=p+(W?"else if":"if")+("("+pt+"){"+je+"}"),W=!0):V=V?V+"||"+pt:pt}let M=l(h),N;V?N=(W?"else if":"if")+("(!("+V+")){"+M+"}"):N=W?"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=pc,d):d.v===Br&&e.cp===""&&d.cp===""&&s==="i"?(e.hd="",e.v=pc,e.i=s,e):d;return oe.s=u.length?ko(u):sh(),oe.e=i!==void 0?(oe.io=!0,wo(i)):t,oe}function s0(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 l0(e,t){return kt(e,er,void 0,So(e.s,r=>{r.to=t}))}function tz(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 d0(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)&&!Gj(u)?lh(u):u}let l="["+ua(e.g,t)+"]",d={p:e,v:Wp,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),r0(r,s.type))}let i=Cr(di,!1);return i.anyOf=Array.from(n),i.decoder=a0,i.encoder=ez,i.has=r,i}throw new Error("[Sury] S.union requires at least one item")}function Fw(e,t){return e&8320&&Ir in t?!0:e&2048?vo in t:!1}function qp(e){return tr[e.type]&8192?e.class.name:e.type}function dc(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(dc):!0}if(i){let a=t.items;n=a!==void 0?a.every(dc):!0}if(n){let a=t.properties;r=a!==void 0?Object.values(a).every(dc):!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=Cr(Ki,e[la]===e);return t.additionalItems=e,t.items=yc,t.decoder=ad,t}function vc(e,t){let r=t!==void 0?t:ma(),n=wo(e);switch(n.type){case"undefined":return ko([r,Dw(e)]);case"union":let o=n.has,a=n.anyOf;return So(e,s=>{let l=Ij(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=Dw(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 Dw(e){return So(e,t=>{t.to=Qj(),t.parser=Xj})}function dh(e){let t=Cr(Ir,e[la]===e);return t.properties=Hp,t.additionalItems=e,t.decoder=Ps,t}function qw(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=_),Gw[ks]=0,Pn(o,l,Gw);let y=o0(s,o,a,n);Ai[ks]=y,Pn(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=yn(e.g);p="let "+h+";";let _=Vn(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+nh(m,e,void 0,void 0),m.fz=void 0,m.prev=e,m}Pn(eh,"~standard",{get:function(){let e=this;return{version:1,vendor:Bp,validate:t=>{try{return{value:_c(er,e)(t)}}catch(r){let n=bc(r);return{issues:[{message:n.reason,path:n.path===""?void 0:$j(n.path)}]}}}}}});function u0(e,t){return _c(er,t)(e)}var rz="#/$defs/";function nz(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 c0(e,t,r,n){let i=r!==void 0?r:"Refinement failed",o=n!==void 0?jj(n):"";return nz(e,a=>(s=>{let l=Oi(s,t);return[{c:d=>l+"("+d+")",f:th(void 0,o,i,void 0)}]}))}function f0(){let e=ui(od());return e.to=ma(),e}function m0(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 "+Sr(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{_c(er,l)(f)}catch(p){let m=bc(p),h="Invalid default for "+Sr(r)+": "+m.message;throw new Error("[Sury] "+h)}try{r.default=_c(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,ah(t._0)):Oi(f,t._0)+"()",Vn(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=Vw,r.to=u;return}let i="Can't set default for "+Sr(r);throw new Error("[Sury] "+i)})}function Vp(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=gn(),o.e=t,o.io=!1,o}if(r&64){let i=dh(er),o=pr(kt(e,er,void 0,i));return o.s.additionalItems=gn(),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===gn().$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 Lw(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=Cr(Ki,!1);r.items=e.s.items.map(o=>gn()),r.decoder=ad;let n=e.s.additionalItems,i;return i=n==="strip"||n==="strict"?n:gn(),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=dh(gn());return o.to=e.e.to,pr(kt(e,void 0,void 0,o))}let n=As(e,e.s);n.e=gn(),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[Wn]){l.e=ko([ma(),gn()]);let d=pr(l);d.o=!0,Ei(n,s,d)}else l.e=gn(),Ei(n,s,pr(l))}return Os(n)}if(t&512)return qw(e);if(t&256&&!(Wn in e.s.has))return pr(l0(e,e.e));if(t&1)return e.e.to&&!e.e.parser?(e.s=gn(),Vp(e,e.e)):e.e.noValidation?(e.s=gn(),e):qw(e);try{let r=ui(Es());return r.to=e.e,e.e=r,pr(e)}catch{return fa(e,e.s,gn())}}function gn(){return xo(sa,Zp,e=>{let t=Cr(Zp,!0);t.$ref=rz+sa,t.name=sa,t.decoder=Lw,t.encoder=Vp,e.$ref=t.$ref,e.name=sa,e.decoder=Lw,e.encoder=Vp;let r=[Es(),oh(),ih(),od(),dh(t),sd(t)],n={};r.forEach(a=>{n[a.type]=!0});let i=Cr(di,!0);i.anyOf=r,i.has=n,i.decoder=a0,i.name=sa,i.type=di;let o={};o[sa]=i,e.$defs=o})}function iz(e){return e[Jp]}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===Jp)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 '+Sr(i);throw new Error("[Sury] "+d)}return td(l,i.from.concat(o),i.fromFlattened)}})}function p0(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: "+Sr(t);throw new Error("[Sury] "+a)}}return Os(n)}function h0(e,t){let r=t.from,n=t.fromFlattened,i=n!==void 0?Ji(Uw(e.fv[n],t.from,0)):r!==void 0?Ji(Uw(e,r,0)):Pi in t?bo(e,t,void 0):p0(e,t,(o,a)=>h0(e,a));return i.prev=void 0,i.e=t,i}function _0(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)_0(e,i[o[a]])}function uc(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=Wp,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=Wp;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,uc(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=uc(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,uc(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;Wj(e,"Missing input for "+Sr(r)+p)}return Os(a)}}function Uw(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 gc(e,t){if(typeof e!==Ir||e===null)return ah(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=gc(e[l],t);e[l]=u}let s=Cr(Ki,!1);return s.items=e,s.additionalItems="strict",s.decoder=ad,s}let n=e.constructor;if(n&&n!==Object){let s=Cr(Yp,!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=gc(e[l],t);e[l]=d}let a=Cr(Ir,!1);return a.required=i,a.properties=e,a.additionalItems=Yl.a,a.decoder=Ps,a}function oz(e){let t={};_0(t,e);let r=e.e.to,n=uc(e,t,r,"");return n.t=!0,n.prev=e,n}function Sc(e){return gc(e,t=>{if(t["~standard"])return t})}function g0(e){let t=this,r="~"+e,n=t[r];if(n!==void 0)return ue(n);let i={},o=[],a=Cr(Ir,!1);a.required=o,a.properties=i,a.additionalItems=Yl.a,a.decoder=Ps;let s=t.f(e,a)[Jp],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 _=vc(m,void 0);return l(p,m0(_,{TAG:"Value",_0:h}))},tag:(p,m)=>{l(p,Sc(m))},nested:g0,flatten:p=>{if(p.type==="object"){let _=p.to,g=p.properties;if(_){let v="Unsupported nested flatten for transformed object schema "+Sr(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 "+Sr(p)+" schema";throw new Error("[Sury] "+h)}};return t[r]=f,f}function y0(e){let t=ui(gc(e,iz));return t.serializer=oz,t}function b0(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=p0(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=h0(e,r);return n.t=!0,n.prev=e,Ql(n,e)}function v0(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,yc,h.push(u)-1|0)}let f="The '"+Sr(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=vc(c,void 0);return i(u,m0(p,{TAG:"Value",_0:f}))},tag:(u,c)=>{i(u,Sc(c))},nested:g0,flatten:n}),d=Cr(Ir,!1);return d.required=Object.keys(r),d.properties=r,d.additionalItems=Yl.a,d.decoder=Ps,d.parser=b0,d.to=y0(l),t!==void 0&&(d.flattened=t),d}function S0(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,Sc(l))}});for(let s=0,l=t.length;s<l;++s)t[s]||(t[s]=ma());let a=Cr(Ki,!1);return a.items=t,a.additionalItems="strict",a.decoder=ad,a.parser=b0,a.to=y0(o),a}var az=Sc;function w0(e){return ko(e.map(az))}function k0(e){return vc(e,f0())}var x0=ko;var At=Es(),T0=oh();var Rs=ih();var A0=gn();var O0=Xp;var wc=sd;var hr=lh;var uh=k0;var C0=x0,kc=w0;var Yi=c0;var E0=u0;var Rn=v0;var P0=S0;function lz(e){return{path:e.path,summary:e.message}}function we(e){return{path:"",summary:e}}function Is(e,t){try{return{TAG:"Ok",_0:E0(e,t)}}catch(r){let n=ee(r);if(n.RE_EXN_ID===O0)return{TAG:"Error",_0:lz(n._1)};throw n}}import*as dd from"node:fs";import*as M0 from"node:os";import*as xc from"node:path";var dz="--api-url must be ws://, wss://, http://, or https://";function an(e){let t=Zn(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:dz}}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 xc.join(M0.homedir(),".linzumi","auth.json")}var R0="Kandan auth cache must contain a JSON object",uz="Kandan auth cache local_codex_runner must be an object",cz="Kandan auth cache personal_agent_delegation must be an object";function I0(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 j0(e){let t;try{t=JSON.parse(e)}catch{t=void 0}if(t===void 0)return{TAG:"Error",_0:we(R0)};if(typeof t!="object"||t===null||Array.isArray(t))return{TAG:"Error",_0:we(R0)};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(uz)};if(!o)return{TAG:"Error",_0:we(cz)};let a;return a=typeof r=="object"&&r!==null&&!Array.isArray(r)?Object.fromEntries(ze(Object.entries(r),s=>{let l=s[0];return G(I0(s[1]),d=>[l,d])})):void 0,{TAG:"Ok",_0:{serverTokens:a,personalAgentDelegation:k(n,I0)}}}function z0(e){return dd.existsSync(e)?_e($t(Qt(e),t=>we(t.message)),t=>wt(j0(t),r=>r)):{TAG:"Ok",_0:void 0}}function N0(e,t){return e!==void 0?new Date(e).getTime()<=t:!1}function Tc(e,t,r){return dd.existsSync(t)?_e(z0(t),n=>wt($t(an(e),we),i=>k(k(k(n,o=>o.serverTokens),o=>o[i]),o=>{if(!(o.accessToken.trim()===""||N0(o.expiresAt,r)))return{accessToken:o.accessToken,serverBaseUrl:i,issuedAt:o.issuedAt,expiresAt:o.expiresAt}}))):{TAG:"Ok",_0:void 0}}function fz(e){return"missing personal-agent delegation auth file: "+e}var mz="personal-agent delegation auth file is missing access_token",pz="personal-agent delegation auth file token is expired";function G0(e,t){return dd.existsSync(e)?_e(z0(e),r=>{let n=k(r,i=>i.personalAgentDelegation);return n!==void 0&&n.accessToken.trim()!==""?N0(n.expiresAt,t)?{TAG:"Error",_0:we(pz)}:{TAG:"Ok",_0:n}:{TAG:"Error",_0:we(mz)}}):{TAG:"Error",_0:we(fz(e))}}function $0(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 hz(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],$0(i[1])])));let n=e.personalAgentDelegation;return n!==void 0&&(t.personal_agent_delegation=$0(n)),t}function Ac(e,t,r,n,i){return _e($t(an(e),we),o=>{let a=dd.existsSync(n)?_e($t(Qt(n),s=>we(s.message)),j0):{TAG:"Ok",_0:{serverTokens:void 0,personalAgentDelegation:void 0}};return _e(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=hz({serverTokens:f,personalAgentDelegation:s.personalAgentDelegation}),m=JSON.stringify(p,void 0,2)+`
109
+ `,h=n+".tmp."+process.pid.toString()+"."+tc(6),_=g=>we(g.message);return _e($t(Ft(xc.dirname(n)),_),()=>{let g=_e(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}}:(_n(h),{TAG:"Error",_0:we(g._0.message)})})})})}function fh(e){let t=yr(e);return t!==void 0?x(Or(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:fh(n)}}}}async function _z(e){try{return{TAG:"Ok",_0:await e.text()}}catch(t){let r=ee(t);return{TAG:"Error",_0:{message:fh(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:fh(n)}}}}function gz(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(an(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(gz(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 ok from"node:os";import*as Pc from"node:fs";import*as yh from"node:os";import*as Dr from"node:path";import*as bh 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 wr(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 Oc(e){return Array.isArray(e)?ze(e,wr):[]}function _a(e){try{return ke(JSON.parse(e))}catch{return}}var yz=new RegExp("^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$","i"),bz=new RegExp("^[a-zA-Z0-9_.-]+$");function hh(e){return yz.test(e)}function Ec(e){return bz.test(e)}var vz=Yi(At,e=>e.trim()!=="","allowedCwds entries must be non-empty strings",void 0);function q0(e){return{version:1,machineId:e.f("machineId",hr(Yi(At,hh,"invalid machine id",void 0))),runnerId:e.f("runnerId",hr(Yi(At,Ec,"invalid runner id",void 0))),allowedCwds:e.f("allowedCwds",wc(vz))}}var Sz=Rn(q0),wz=Rn(e=>(e.tag("version",1),q0(e)));function fd(e){let t=new Set;return ze(e,r=>{let n=r.trim();if(!(n===""||t.has(n)))return t.add(n),n})}function L0(e){return{version:e.version,machineId:e.machineId,runnerId:e.runnerId,allowedCwds:fd(e.allowedCwds)}}function _h(e){return wt(Is(e,wz),L0)}function U0(e){return wt(Is(e,Sz),L0)}var Cc=hr(Yi(At,e=>e.trim()!=="","must be a non-empty string",void 0)),F0=hr(Yi(Rs,e=>Ot(e)?e>0:!1,"must be a positive integer",void 0));function kz(e){return!Number.isNaN(new Date(e).getTime())}var D0=Yi(At,kz,"must be a parseable date",void 0),t8=Rn(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",Cc),refreshToken:e.f("refresh_token",Cc),expiresInSeconds:e.f("expires_in_seconds",F0),userId:e.f("user_id",F0),workspaceSlug:e.f("workspace_slug",Cc),launchUrl:e.f("launch_url",Cc),createdAt:e.f("created_at",D0),updatedAt:e.f("updated_at",D0)}));var Ri="prod";function Z0(e){let t=e!==void 0?e:process.env,r=oa(t,"HOME");return r!==void 0&&r.trim()!==""?r:yh.homedir()}function js(e,t){let r=e!==void 0?e:process.env;return t==="~"?Z0(r):t.startsWith("~/")?Dr.resolve(Z0(r),t.slice(2)):t}function Rc(e){let t=oa(e,"LINZUMI_CONFIG_FILE");return t!==void 0&&t.trim()!==""?Dr.resolve(js(e,t)):Dr.resolve(yh.homedir(),".linzumi","config.json")}function md(e){let t=an(e),r=an($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 Tz(e){return wt(md(e),t=>t===Ri?Ri:Buffer.from(t).toString("base64url"))}function Az(e,t,r){let n=Dr.dirname(e),i=Dr.basename(e);return t!==void 0?_e(md(t),o=>o===Ri?{TAG:"Ok",_0:Dr.join(n,i+"."+r)}:wt(Tz(t),a=>Dr.join(n,i+"."+a+"."+r))):{TAG:"Ok",_0:Dr.join(n,i+"."+r)}}function V0(e){if(Pc.existsSync(e))return _e($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)?_h(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 Oz(){let e={};return e.allowedCwds=[],e}function gh(e,t){return _e(V0(e),r=>{let n=t!==void 0?md(t):{TAG:"Ok",_0:Ri};return _e(n,i=>{let o=i===Ri?r:x(r[i],Oz()),a=i===Ri?_h(o):U0(o);return $t(a,s=>we("invalid Linzumi config section "+i+": "+e))})})}function Cz(e,t){let r=i=>we(i.message),n=Pc.existsSync(e)?$t(ps(e,384),r):{TAG:"Ok",_0:void 0};return _e(_e(n,()=>$t(yo(e,JSON.stringify(t,void 0,2)+`
110
+ `,{encoding:"utf8",mode:384}),r)),()=>$t(ps(e,384),r))}function Ez(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 Pz(e){let t=e.version===1,r=e.machineId,n=r!==void 0?hh(r):!0,i=e.runnerId,o=i!==void 0?Ec(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 Rz(e,t,r){return _e(Pz(e),()=>{let n=r!==void 0?md(r):{TAG:"Ok",_0:Ri};return _e(n,i=>_e(V0(t),o=>{let a=Object.fromEntries(Object.entries(o)),s=Ez(e);return i===Ri?(Object.entries(s).forEach(l=>{a[l[0]]=l[1]}),a.version=1):(a.version=1,a[i]=s),_e($t(Ft(Dr.dirname(t)),l=>we(l.message)),()=>Cz(t,a))}))})}function W0(e,t,r){return _e($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 Iz(e,t,r,n){if(Pc.existsSync(e))return W0(e,r,n);let i=t();if(!r(i))return{TAG:"Error",_0:we("invalid generated Linzumi "+n+": "+i)};let o=Dr.dirname(e),a=Dr.basename(e),s=Dr.join(o,"."+a+"."+process.pid.toString()+"."+bh.randomUUID()+".tmp"),l=d=>we(d.message);return _e(_e($t(Ft(o),l),()=>$t(yo(s,i+`
111
+ `,{encoding:"utf8",flag:"wx"}),l)),()=>{let d=Tw(s,e),u;if(d.TAG==="Ok")u={TAG:"Ok",_0:i};else{let c=d._0;u=si(c,"EEXIST")?W0(e,r,n):{TAG:"Error",_0:we(c.message)}}return Aw(s),u})}function $z(){return"runner-"+bh.randomUUID()}function Mz(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 _e(l,d=>_e(gh(e,d),u=>{let c=a(u);return c!==void 0?{TAG:"Ok",_0:c}:_e(Az(e,d,r),f=>_e(Iz(f,n,i,o),p=>_e(gh(e,d),m=>{let h=a(m);return h!==void 0?{TAG:"Ok",_0:h}:wt(Rz(s(m,p),e,d),()=>p)})))}))}function Ic(e,t,r){return Mz(e,t,"runner-id",r!==void 0?r:$z,Ec,"runner id",i=>i.runnerId,(i,o)=>({version:i.version,machineId:i.machineId,runnerId:o,allowedCwds:i.allowedCwds}))}var jz=["ENOENT","ENOTDIR","EACCES","ELOOP","EIO"];function zz(e){let t=e.code;return t!==void 0?jz.includes(t):!1}function H0(e,t){return _e(gh(e,t),r=>{let n=[],i=[],o={contents:void 0};r.allowedCwds.forEach(s=>{if(o.contents!==void 0)return;let d=Dr.resolve(js(void 0,s)),u=Ln(d);if(u.TAG==="Ok"){let f=u._0;if(n.push(f),f===d)return;n.push(d);return}let c=u._0;zz(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 K0(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e.error;if(typeof t=="string")return t}function J0(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 Y0(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=K0(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 Nz(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:We(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=K0(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 X0(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 Nz(e,t,l);return typeof d!="object"?await s():d._0};return await s()}var Fz=3600*1e3;function Dz(e,t,r,n){return e<=3?"DecidePrompt":r!==void 0&&t-r<Fz?n?"DecideRefreshLine":"DecideSilent":"DecideSummary"}function Q0(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 qz(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+`
115
- `;case"Summary":return"Still waiting for authorization after "+R0(e.waitedMs)+" "+("("+e.cycle.toString()+` codes issued so far).
115
+ `;case"Summary":return"Still waiting for authorization after "+Q0(e.waitedMs)+" "+("("+e.cycle.toString()+` codes issued so far).
116
116
  `)+(`Authorize this computer:
117
117
  Code: `+e.userCode+`
118
118
  Open: `+e.verificationUri+`
119
- `);case"RefreshLine":return"\r\x1B[2KCode: "+e.userCode+" (waiting "+R0(e.waitedMs)+") - open "+e.verificationUri;case"TransientFailure":return"Device authorization poll hit a transient failure ("+e.reason+`); retrying with the same code.
119
+ `);case"RefreshLine":return"\r\x1B[2KCode: "+e.userCode+" (waiting "+Q0(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 Hj(e){return new Promise((t,r)=>{setTimeout(()=>t(),e|0)})}function Bj(e){return{startDeviceAuthorization:t=>E0(t.httpBaseUrl,t.workspaceSlug,t.channelSlug,t.onboarding,t.identity),pollDeviceCodeForToken:t=>P0(t.httpBaseUrl,t.deviceCode,t.expiresInSeconds,void 0),now:()=>Date.now(),sleep:Hj,report:e,log:(t,r)=>{}}}var Kj="local runner device authorization was denied - a signed-in user rejected this computer";async function I0(e,t,r,n,i,o,a,s){let l=o!==void 0?o:g=>{Vr(g)},d=s!==void 0?s:Bj(g=>l(Vj(g))),u=a!==void 0?a:se($r(process.stderr.isTTY),!0),c=zt(rn(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=Wj(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,z;z=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(z)}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(Kj)};case"Consumed":let z={};return z.cycle=m.cycle,z.outcome="consumed",d.log("device_wait.code_retired",z),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 z=A.httpStatus,H=A.reason;d.report({TAG:"TransientFailure",reason:C0(H,z),waitedMs:d.now()-p});let ce={};return ce.cycle=m.cycle,ce.reason=H!==void 0?H:null,ce.httpStatus=z,d.log("device_wait.code_rejected",ce),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 Ps(e,t){let r=t!==void 0?parseInt(e,t):parseInt(e);if(!(Number.isNaN(r)||r>2147483647||r<-2147483648))return r|0}var Yj="linzumi-machine-fingerprint:v1:";var $0={platform:void 0,execFile:void 0,readFile:void 0,username:void 0};function Xj(e,t){return ql(e,t,5e3,1024*1024)}var Qj=new RegExp('"IOPlatformUUID"\\s*=\\s*"([0-9A-Fa-f-]{36})"'),ez=new RegExp("^[0-9a-f]{32}$"),tz=["/etc/machine-id","/var/lib/dbus/machine-id"];function rz(e){let t=e!==void 0?e:$0,r=x(t.platform,process.platform),n=x(t.execFile,Xj),i=x(t.readFile,or);switch(r){case"darwin":let o=n("ioreg",["-rd1","-c","IOPlatformExpertDevice"]);if(o.TAG!=="Ok")return;let a=Qj.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 Ke(tz,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(ez.test(f))return f});default:return}}function M0(e){return D(rz(e!==void 0?e:$0),r=>"mfp-"+Gn(Yj+r).slice(0,32))}function j0(e){let t={};return e!==void 0&&(t.machineFingerprintV2=e),t}function G0(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 nz(e,t){return Ce(zt(rn(e),we),r=>{let n=Fn(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 iz="local runner browser OAuth is not available in this implementation yet; use --auth-mode device or supply --token";async function oz(e){let t=xc(process.env),r=Tc(t,e.serviceUrl,void 0);if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=r._0,i=M0(void 0),o=N0.hostname(),a={commanderId:n,machineFingerprint:i,hostname:o},s=await I0(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:rd();return $t(bc(e.serviceUrl,l.accessToken,l.expiresInSeconds,u,new Date),c=>l.accessToken)}async function az(e){let t=e.authMode;return typeof(t!==void 0?t:{TAG:"BrowserMode",callbackHost:e.callbackHost})!="object"?await oz(e):{TAG:"Error",_0:we(iz)}}function sz(){return{readCachedToken:(e,t)=>yc(e,t,Date.now()),validateToken:(e,t,r,n,i)=>Os(e,t,r,n,i),acquireAndCacheToken:az}}async function lz(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 Ce(nz(e.serviceUrl,e.workspaceSlug),i=>({TAG:"Error",_0:we(i)}))}}async function Ac(e,t){let r=t!==void 0?t:sz(),n=e.explicitToken;if(n!==void 0)return{TAG:"Ok",_0:n};let i=e.authFilePath,o=i!==void 0?i:rd(),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 lz(e,r,c);return p.TAG==="Ok"?{TAG:"Ok",_0:c}:{TAG:"Error",_0:p._0}}function lh(e){return we(e.message)}function q0(e,t,r,n){return Ce(zt(ow(dh.join(D0.tmpdir(),"linzumi-mcp-auth-")),lh),i=>Ce(zt(us(i,448),lh),()=>{let o=dh.join(i,"auth.json");return Ce(bc(e,r!==void 0?r:t,void 0,o,n),a=>$t(zt(us(o,384),lh),()=>({path:o,directory:i,cleanup:()=>{kp(i)}})))}))}function dz(){return{readCachedToken:(e,t)=>yc(e,t,Date.now()),validateTokenOutcome:(e,t,r,n)=>Os(e,t,r,n,void 0),resolveToken:e=>Ac(e,void 0)}}var uz="missing Linzumi MCP token; run linzumi auth or pass --token";function cz(e){return"Linzumi MCP token was rejected by the server and re-mint failed: "+e}async function L0(e,t,r,n,i,o){let a=o!==void 0?o:dz(),s=r!==void 0?r:rd(),l=t!==void 0?{TAG:"Ok",_0:t}:$t(a.readCachedToken(e,s),f=>D(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(uz)};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(cz(c._0.summary))}}var T={};vp(T,{BRAND:()=>Nz,DIRTY:()=>ha,EMPTY_PATH:()=>hz,INVALID:()=>$e,NEVER:()=>v1,OK:()=>Br,ParseStatus:()=>Fr,Schema:()=>nt,ZodAny:()=>xo,ZodArray:()=>eo,ZodBigInt:()=>ga,ZodBoolean:()=>ya,ZodBranded:()=>ld,ZodCatch:()=>Ea,ZodDate:()=>ba,ZodDefault:()=>Ca,ZodDiscriminatedUnion:()=>Ec,ZodEffects:()=>Un,ZodEnum:()=>Aa,ZodError:()=>mn,ZodFirstPartyTypeKind:()=>J,ZodFunction:()=>Rc,ZodIntersection:()=>ka,ZodIssueCode:()=>B,ZodLazy:()=>xa,ZodLiteral:()=>Ta,ZodMap:()=>zs,ZodNaN:()=>Gs,ZodNativeEnum:()=>Oa,ZodNever:()=>li,ZodNull:()=>Sa,ZodNullable:()=>Ri,ZodNumber:()=>_a,ZodObject:()=>hn,ZodOptional:()=>pn,ZodParsedType:()=>me,ZodPipeline:()=>dd,ZodPromise:()=>To,ZodReadonly:()=>Pa,ZodRecord:()=>Pc,ZodSchema:()=>nt,ZodSet:()=>Ns,ZodString:()=>ko,ZodSymbol:()=>Ms,ZodTransformer:()=>Un,ZodTuple:()=>Pi,ZodType:()=>nt,ZodUndefined:()=>va,ZodUnion:()=>wa,ZodUnknown:()=>Qi,ZodVoid:()=>js,addIssueToContext:()=>ae,any:()=>Vz,array:()=>Jz,bigint:()=>qz,boolean:()=>ek,coerce:()=>b1,custom:()=>Y0,date:()=>Lz,datetimeRegex:()=>K0,defaultErrorMap:()=>Yi,discriminatedUnion:()=>Qz,effect:()=>c1,enum:()=>l1,function:()=>o1,getErrorMap:()=>Rs,getParsedType:()=>Ei,instanceof:()=>Fz,intersection:()=>e1,isAborted:()=>Oc,isAsync:()=>Is,isDirty:()=>Cc,isValid:()=>wo,late:()=>Gz,lazy:()=>a1,literal:()=>s1,makeIssue:()=>sd,map:()=>n1,nan:()=>Dz,nativeEnum:()=>d1,never:()=>Bz,null:()=>Wz,nullable:()=>m1,number:()=>Q0,object:()=>mh,objectUtil:()=>uh,oboolean:()=>y1,onumber:()=>g1,optional:()=>f1,ostring:()=>_1,pipeline:()=>h1,preprocess:()=>p1,promise:()=>u1,quotelessJson:()=>fz,record:()=>r1,set:()=>i1,setErrorMap:()=>pz,strictObject:()=>Yz,string:()=>X0,symbol:()=>Uz,transformer:()=>c1,tuple:()=>t1,undefined:()=>Zz,union:()=>Xz,unknown:()=>Hz,util:()=>pt,void:()=>Kz});var pt;(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})(pt||(pt={}));var uh;(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(uh||(uh={}));var me=pt.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Ei=e=>{switch(typeof e){case"undefined":return me.undefined;case"string":return me.string;case"number":return Number.isNaN(e)?me.nan:me.number;case"boolean":return me.boolean;case"function":return me.function;case"bigint":return me.bigint;case"symbol":return me.symbol;case"object":return Array.isArray(e)?me.array:e===null?me.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?me.promise:typeof Map<"u"&&e instanceof Map?me.map:typeof Set<"u"&&e instanceof Set?me.set:typeof Date<"u"&&e instanceof Date?me.date:me.object;default:return me.unknown}};var B=pt.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"]),fz=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),mn=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,pt.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()}};mn.create=e=>new mn(e);var mz=(e,t)=>{let r;switch(e.code){case B.invalid_type:e.received===me.undefined?r="Required":r=`Expected ${e.expected}, received ${e.received}`;break;case B.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,pt.jsonStringifyReplacer)}`;break;case B.unrecognized_keys:r=`Unrecognized key(s) in object: ${pt.joinValues(e.keys,", ")}`;break;case B.invalid_union:r="Invalid input";break;case B.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${pt.joinValues(e.options)}`;break;case B.invalid_enum_value:r=`Invalid enum value. Expected ${pt.joinValues(e.options)}, received '${e.received}'`;break;case B.invalid_arguments:r="Invalid function arguments";break;case B.invalid_return_type:r="Invalid function return type";break;case B.invalid_date:r="Invalid date";break;case B.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}"`:pt.assertNever(e.validation):e.validation!=="regex"?r=`Invalid ${e.validation}`:r="Invalid";break;case B.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 B.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 B.custom:r="Invalid input";break;case B.invalid_intersection_types:r="Intersection results could not be merged";break;case B.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case B.not_finite:r="Number must be finite";break;default:r=t.defaultError,pt.assertNever(e)}return{message:r}},Yi=mz;var Z0=Yi;function pz(e){Z0=e}function Rs(){return Z0}var sd=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}},hz=[];function ae(e,t){let r=Rs(),n=sd({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,r,r===Yi?void 0:Yi].filter(i=>!!i)});e.common.issues.push(n)}var Fr=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 $e;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 $e;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}}},$e=Object.freeze({status:"aborted"}),ha=e=>({status:"dirty",value:e}),Br=e=>({status:"valid",value:e}),Oc=e=>e.status==="aborted",Cc=e=>e.status==="dirty",wo=e=>e.status==="valid",Is=e=>typeof Promise<"u"&&e instanceof Promise;var ge;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(ge||(ge={}));var Ln=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}},W0=(e,t)=>{if(wo(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 mn(e.common.issues);return this._error=r,this._error}}};function Je(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 Ei(t.data)}_getOrReturnCtx(t,r){return r||{common:t.parent.common,data:t.data,parsedType:Ei(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new Fr,ctx:{common:t.parent.common,data:t.data,parsedType:Ei(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let r=this._parse(t);if(Is(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:Ei(t)},i=this._parseSync({data:t,path:n.path,parent:n});return W0(n,i)}"~validate"(t){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ei(t)};if(!this["~standard"].async)try{let n=this._parseSync({data:t,path:[],parent:r});return wo(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=>wo(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:Ei(t)},i=this._parse({data:t,path:n.path,parent:n}),o=await(Is(i)?i:Promise.resolve(i));return W0(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:B.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 Un({schema:this,typeName:J.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 pn.create(this,this._def)}nullable(){return Ri.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return eo.create(this)}promise(){return To.create(this,this._def)}or(t){return wa.create([this,t],this._def)}and(t){return ka.create(this,t,this._def)}transform(t){return new Un({...Je(this._def),schema:this,typeName:J.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let r=typeof t=="function"?t:()=>t;return new Ca({...Je(this._def),innerType:this,defaultValue:r,typeName:J.ZodDefault})}brand(){return new ld({typeName:J.ZodBranded,type:this,...Je(this._def)})}catch(t){let r=typeof t=="function"?t:()=>t;return new Ea({...Je(this._def),innerType:this,catchValue:r,typeName:J.ZodCatch})}describe(t){let r=this.constructor;return new r({...this._def,description:t})}pipe(t){return dd.create(this,t)}readonly(){return Pa.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},_z=/^c[^\s-]{8,}$/i,gz=/^[0-9a-z]+$/,yz=/^[0-9A-HJKMNP-TV-Z]{26}$/i,bz=/^[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,vz=/^[a-z0-9_-]{21}$/i,Sz=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,wz=/^[-+]?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)?)??$/,kz=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,xz="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",ch,Tz=/^(?:(?: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])$/,Az=/^(?:(?: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])$/,Oz=/^(([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]))$/,Cz=/^(([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])$/,Ez=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Pz=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,H0="((\\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])))",Rz=new RegExp(`^${H0}$`);function B0(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 Iz(e){return new RegExp(`^${B0(e)}$`)}function K0(e){let t=`${H0}T${B0(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 $z(e,t){return!!((t==="v4"||!t)&&Tz.test(e)||(t==="v6"||!t)&&Oz.test(e))}function Mz(e,t){if(!Sz.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 jz(e,t){return!!((t==="v4"||!t)&&Az.test(e)||(t==="v6"||!t)&&Cz.test(e))}var ko=class e extends nt{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==me.string){let o=this._getOrReturnCtx(t);return ae(o,{code:B.invalid_type,expected:me.string,received:o.parsedType}),$e}let n=new Fr,i;for(let o of this._def.checks)if(o.kind==="min")t.data.length<o.value&&(i=this._getOrReturnCtx(t,i),ae(i,{code:B.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),ae(i,{code:B.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?ae(i,{code:B.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):s&&ae(i,{code:B.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),n.dirty())}else if(o.kind==="email")kz.test(t.data)||(i=this._getOrReturnCtx(t,i),ae(i,{validation:"email",code:B.invalid_string,message:o.message}),n.dirty());else if(o.kind==="emoji")ch||(ch=new RegExp(xz,"u")),ch.test(t.data)||(i=this._getOrReturnCtx(t,i),ae(i,{validation:"emoji",code:B.invalid_string,message:o.message}),n.dirty());else if(o.kind==="uuid")bz.test(t.data)||(i=this._getOrReturnCtx(t,i),ae(i,{validation:"uuid",code:B.invalid_string,message:o.message}),n.dirty());else if(o.kind==="nanoid")vz.test(t.data)||(i=this._getOrReturnCtx(t,i),ae(i,{validation:"nanoid",code:B.invalid_string,message:o.message}),n.dirty());else if(o.kind==="cuid")_z.test(t.data)||(i=this._getOrReturnCtx(t,i),ae(i,{validation:"cuid",code:B.invalid_string,message:o.message}),n.dirty());else if(o.kind==="cuid2")gz.test(t.data)||(i=this._getOrReturnCtx(t,i),ae(i,{validation:"cuid2",code:B.invalid_string,message:o.message}),n.dirty());else if(o.kind==="ulid")yz.test(t.data)||(i=this._getOrReturnCtx(t,i),ae(i,{validation:"ulid",code:B.invalid_string,message:o.message}),n.dirty());else if(o.kind==="url")try{new URL(t.data)}catch{i=this._getOrReturnCtx(t,i),ae(i,{validation:"url",code:B.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),ae(i,{validation:"regex",code:B.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),ae(i,{code:B.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),ae(i,{code:B.invalid_string,validation:{startsWith:o.value},message:o.message}),n.dirty()):o.kind==="endsWith"?t.data.endsWith(o.value)||(i=this._getOrReturnCtx(t,i),ae(i,{code:B.invalid_string,validation:{endsWith:o.value},message:o.message}),n.dirty()):o.kind==="datetime"?K0(o).test(t.data)||(i=this._getOrReturnCtx(t,i),ae(i,{code:B.invalid_string,validation:"datetime",message:o.message}),n.dirty()):o.kind==="date"?Rz.test(t.data)||(i=this._getOrReturnCtx(t,i),ae(i,{code:B.invalid_string,validation:"date",message:o.message}),n.dirty()):o.kind==="time"?Iz(o).test(t.data)||(i=this._getOrReturnCtx(t,i),ae(i,{code:B.invalid_string,validation:"time",message:o.message}),n.dirty()):o.kind==="duration"?wz.test(t.data)||(i=this._getOrReturnCtx(t,i),ae(i,{validation:"duration",code:B.invalid_string,message:o.message}),n.dirty()):o.kind==="ip"?$z(t.data,o.version)||(i=this._getOrReturnCtx(t,i),ae(i,{validation:"ip",code:B.invalid_string,message:o.message}),n.dirty()):o.kind==="jwt"?Mz(t.data,o.alg)||(i=this._getOrReturnCtx(t,i),ae(i,{validation:"jwt",code:B.invalid_string,message:o.message}),n.dirty()):o.kind==="cidr"?jz(t.data,o.version)||(i=this._getOrReturnCtx(t,i),ae(i,{validation:"cidr",code:B.invalid_string,message:o.message}),n.dirty()):o.kind==="base64"?Ez.test(t.data)||(i=this._getOrReturnCtx(t,i),ae(i,{validation:"base64",code:B.invalid_string,message:o.message}),n.dirty()):o.kind==="base64url"?Pz.test(t.data)||(i=this._getOrReturnCtx(t,i),ae(i,{validation:"base64url",code:B.invalid_string,message:o.message}),n.dirty()):pt.assertNever(o);return{status:n.value,value:t.data}}_regex(t,r,n){return this.refinement(i=>t.test(i),{validation:r,code:B.invalid_string,...ge.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...ge.errToObj(t)})}url(t){return this._addCheck({kind:"url",...ge.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...ge.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...ge.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...ge.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...ge.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...ge.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...ge.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...ge.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...ge.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...ge.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...ge.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...ge.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,...ge.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,...ge.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...ge.errToObj(t)})}regex(t,r){return this._addCheck({kind:"regex",regex:t,...ge.errToObj(r)})}includes(t,r){return this._addCheck({kind:"includes",value:t,position:r?.position,...ge.errToObj(r?.message)})}startsWith(t,r){return this._addCheck({kind:"startsWith",value:t,...ge.errToObj(r)})}endsWith(t,r){return this._addCheck({kind:"endsWith",value:t,...ge.errToObj(r)})}min(t,r){return this._addCheck({kind:"min",value:t,...ge.errToObj(r)})}max(t,r){return this._addCheck({kind:"max",value:t,...ge.errToObj(r)})}length(t,r){return this._addCheck({kind:"length",value:t,...ge.errToObj(r)})}nonempty(t){return this.min(1,ge.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}};ko.create=e=>new ko({checks:[],typeName:J.ZodString,coerce:e?.coerce??!1,...Je(e)});function zz(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 _a=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)!==me.number){let o=this._getOrReturnCtx(t);return ae(o,{code:B.invalid_type,expected:me.number,received:o.parsedType}),$e}let n,i=new Fr;for(let o of this._def.checks)o.kind==="int"?pt.isInteger(t.data)||(n=this._getOrReturnCtx(t,n),ae(n,{code:B.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),ae(n,{code:B.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),ae(n,{code:B.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="multipleOf"?zz(t.data,o.value)!==0&&(n=this._getOrReturnCtx(t,n),ae(n,{code:B.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):o.kind==="finite"?Number.isFinite(t.data)||(n=this._getOrReturnCtx(t,n),ae(n,{code:B.not_finite,message:o.message}),i.dirty()):pt.assertNever(o);return{status:i.value,value:t.data}}gte(t,r){return this.setLimit("min",t,!0,ge.toString(r))}gt(t,r){return this.setLimit("min",t,!1,ge.toString(r))}lte(t,r){return this.setLimit("max",t,!0,ge.toString(r))}lt(t,r){return this.setLimit("max",t,!1,ge.toString(r))}setLimit(t,r,n,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:ge.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:ge.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ge.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ge.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ge.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ge.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:ge.toString(r)})}finite(t){return this._addCheck({kind:"finite",message:ge.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ge.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ge.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"&&pt.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)}};_a.create=e=>new _a({checks:[],typeName:J.ZodNumber,coerce:e?.coerce||!1,...Je(e)});var ga=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)!==me.bigint)return this._getInvalidInput(t);let n,i=new Fr;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),ae(n,{code:B.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),ae(n,{code:B.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),ae(n,{code:B.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):pt.assertNever(o);return{status:i.value,value:t.data}}_getInvalidInput(t){let r=this._getOrReturnCtx(t);return ae(r,{code:B.invalid_type,expected:me.bigint,received:r.parsedType}),$e}gte(t,r){return this.setLimit("min",t,!0,ge.toString(r))}gt(t,r){return this.setLimit("min",t,!1,ge.toString(r))}lte(t,r){return this.setLimit("max",t,!0,ge.toString(r))}lt(t,r){return this.setLimit("max",t,!1,ge.toString(r))}setLimit(t,r,n,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:ge.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:ge.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ge.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ge.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ge.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:ge.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}};ga.create=e=>new ga({checks:[],typeName:J.ZodBigInt,coerce:e?.coerce??!1,...Je(e)});var ya=class extends nt{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==me.boolean){let n=this._getOrReturnCtx(t);return ae(n,{code:B.invalid_type,expected:me.boolean,received:n.parsedType}),$e}return Br(t.data)}};ya.create=e=>new ya({typeName:J.ZodBoolean,coerce:e?.coerce||!1,...Je(e)});var ba=class e extends nt{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==me.date){let o=this._getOrReturnCtx(t);return ae(o,{code:B.invalid_type,expected:me.date,received:o.parsedType}),$e}if(Number.isNaN(t.data.getTime())){let o=this._getOrReturnCtx(t);return ae(o,{code:B.invalid_date}),$e}let n=new Fr,i;for(let o of this._def.checks)o.kind==="min"?t.data.getTime()<o.value&&(i=this._getOrReturnCtx(t,i),ae(i,{code:B.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),ae(i,{code:B.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),n.dirty()):pt.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:ge.toString(r)})}max(t,r){return this._addCheck({kind:"max",value:t.getTime(),message:ge.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}};ba.create=e=>new ba({checks:[],coerce:e?.coerce||!1,typeName:J.ZodDate,...Je(e)});var Ms=class extends nt{_parse(t){if(this._getType(t)!==me.symbol){let n=this._getOrReturnCtx(t);return ae(n,{code:B.invalid_type,expected:me.symbol,received:n.parsedType}),$e}return Br(t.data)}};Ms.create=e=>new Ms({typeName:J.ZodSymbol,...Je(e)});var va=class extends nt{_parse(t){if(this._getType(t)!==me.undefined){let n=this._getOrReturnCtx(t);return ae(n,{code:B.invalid_type,expected:me.undefined,received:n.parsedType}),$e}return Br(t.data)}};va.create=e=>new va({typeName:J.ZodUndefined,...Je(e)});var Sa=class extends nt{_parse(t){if(this._getType(t)!==me.null){let n=this._getOrReturnCtx(t);return ae(n,{code:B.invalid_type,expected:me.null,received:n.parsedType}),$e}return Br(t.data)}};Sa.create=e=>new Sa({typeName:J.ZodNull,...Je(e)});var xo=class extends nt{constructor(){super(...arguments),this._any=!0}_parse(t){return Br(t.data)}};xo.create=e=>new xo({typeName:J.ZodAny,...Je(e)});var Qi=class extends nt{constructor(){super(...arguments),this._unknown=!0}_parse(t){return Br(t.data)}};Qi.create=e=>new Qi({typeName:J.ZodUnknown,...Je(e)});var li=class extends nt{_parse(t){let r=this._getOrReturnCtx(t);return ae(r,{code:B.invalid_type,expected:me.never,received:r.parsedType}),$e}};li.create=e=>new li({typeName:J.ZodNever,...Je(e)});var js=class extends nt{_parse(t){if(this._getType(t)!==me.undefined){let n=this._getOrReturnCtx(t);return ae(n,{code:B.invalid_type,expected:me.void,received:n.parsedType}),$e}return Br(t.data)}};js.create=e=>new js({typeName:J.ZodVoid,...Je(e)});var eo=class e extends nt{_parse(t){let{ctx:r,status:n}=this._processInputParams(t),i=this._def;if(r.parsedType!==me.array)return ae(r,{code:B.invalid_type,expected:me.array,received:r.parsedType}),$e;if(i.exactLength!==null){let a=r.data.length>i.exactLength.value,s=r.data.length<i.exactLength.value;(a||s)&&(ae(r,{code:a?B.too_big:B.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&&(ae(r,{code:B.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&&(ae(r,{code:B.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 Ln(r,a,r.path,s)))).then(a=>Fr.mergeArray(n,a));let o=[...r.data].map((a,s)=>i.type._parseSync(new Ln(r,a,r.path,s)));return Fr.mergeArray(n,o)}get element(){return this._def.type}min(t,r){return new e({...this._def,minLength:{value:t,message:ge.toString(r)}})}max(t,r){return new e({...this._def,maxLength:{value:t,message:ge.toString(r)}})}length(t,r){return new e({...this._def,exactLength:{value:t,message:ge.toString(r)}})}nonempty(t){return this.min(1,t)}};eo.create=(e,t)=>new eo({type:e,minLength:null,maxLength:null,exactLength:null,typeName:J.ZodArray,...Je(t)});function $s(e){if(e instanceof hn){let t={};for(let r in e.shape){let n=e.shape[r];t[r]=pn.create($s(n))}return new hn({...e._def,shape:()=>t})}else return e instanceof eo?new eo({...e._def,type:$s(e.element)}):e instanceof pn?pn.create($s(e.unwrap())):e instanceof Ri?Ri.create($s(e.unwrap())):e instanceof Pi?Pi.create(e.items.map(t=>$s(t))):e}var hn=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=pt.objectKeys(t);return this._cached={shape:t,keys:r},this._cached}_parse(t){if(this._getType(t)!==me.object){let d=this._getOrReturnCtx(t);return ae(d,{code:B.invalid_type,expected:me.object,received:d.parsedType}),$e}let{status:n,ctx:i}=this._processInputParams(t),{shape:o,keys:a}=this._getCached(),s=[];if(!(this._def.catchall instanceof li&&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 Ln(i,c,i.path,d)),alwaysSet:d in i.data})}if(this._def.catchall instanceof li){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&&(ae(i,{code:B.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 Ln(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=>Fr.mergeObjectSync(n,d)):Fr.mergeObjectSync(n,l)}get shape(){return this._def.shape()}strict(t){return ge.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:ge.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:J.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 pt.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 pt.objectKeys(this.shape))t[n]||(r[n]=this.shape[n]);return new e({...this._def,shape:()=>r})}deepPartial(){return $s(this)}partial(t){let r={};for(let n of pt.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 pt.objectKeys(this.shape))if(t&&!t[n])r[n]=this.shape[n];else{let o=this.shape[n];for(;o instanceof pn;)o=o._def.innerType;r[n]=o}return new e({...this._def,shape:()=>r})}keyof(){return J0(pt.objectKeys(this.shape))}};hn.create=(e,t)=>new hn({shape:()=>e,unknownKeys:"strip",catchall:li.create(),typeName:J.ZodObject,...Je(t)});hn.strictCreate=(e,t)=>new hn({shape:()=>e,unknownKeys:"strict",catchall:li.create(),typeName:J.ZodObject,...Je(t)});hn.lazycreate=(e,t)=>new hn({shape:e,unknownKeys:"strip",catchall:li.create(),typeName:J.ZodObject,...Je(t)});var wa=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 mn(s.ctx.common.issues));return ae(r,{code:B.invalid_union,unionErrors:a}),$e}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 mn(l));return ae(r,{code:B.invalid_union,unionErrors:s}),$e}}get options(){return this._def.options}};wa.create=(e,t)=>new wa({options:e,typeName:J.ZodUnion,...Je(t)});var Xi=e=>e instanceof xa?Xi(e.schema):e instanceof Un?Xi(e.innerType()):e instanceof Ta?[e.value]:e instanceof Aa?e.options:e instanceof Oa?pt.objectValues(e.enum):e instanceof Ca?Xi(e._def.innerType):e instanceof va?[void 0]:e instanceof Sa?[null]:e instanceof pn?[void 0,...Xi(e.unwrap())]:e instanceof Ri?[null,...Xi(e.unwrap())]:e instanceof ld||e instanceof Pa?Xi(e.unwrap()):e instanceof Ea?Xi(e._def.innerType):[],Ec=class e extends nt{_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==me.object)return ae(r,{code:B.invalid_type,expected:me.object,received:r.parsedType}),$e;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}):(ae(r,{code:B.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),$e)}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=Xi(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:J.ZodDiscriminatedUnion,discriminator:t,options:r,optionsMap:i,...Je(n)})}};function fh(e,t){let r=Ei(e),n=Ei(t);if(e===t)return{valid:!0,data:e};if(r===me.object&&n===me.object){let i=pt.objectKeys(t),o=pt.objectKeys(e).filter(s=>i.indexOf(s)!==-1),a={...e,...t};for(let s of o){let l=fh(e[s],t[s]);if(!l.valid)return{valid:!1};a[s]=l.data}return{valid:!0,data:a}}else if(r===me.array&&n===me.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=fh(a,s);if(!l.valid)return{valid:!1};i.push(l.data)}return{valid:!0,data:i}}else return r===me.date&&n===me.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}var ka=class extends nt{_parse(t){let{status:r,ctx:n}=this._processInputParams(t),i=(o,a)=>{if(Oc(o)||Oc(a))return $e;let s=fh(o.value,a.value);return s.valid?((Cc(o)||Cc(a))&&r.dirty(),{status:r.value,value:s.data}):(ae(n,{code:B.invalid_intersection_types}),$e)};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}))}};ka.create=(e,t,r)=>new ka({left:e,right:t,typeName:J.ZodIntersection,...Je(r)});var Pi=class e extends nt{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==me.array)return ae(n,{code:B.invalid_type,expected:me.array,received:n.parsedType}),$e;if(n.data.length<this._def.items.length)return ae(n,{code:B.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),$e;!this._def.rest&&n.data.length>this._def.items.length&&(ae(n,{code:B.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 Ln(n,a,n.path,s)):null}).filter(a=>!!a);return n.common.async?Promise.all(o).then(a=>Fr.mergeArray(r,a)):Fr.mergeArray(r,o)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};Pi.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Pi({items:e,typeName:J.ZodTuple,rest:null,...Je(t)})};var Pc=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!==me.object)return ae(n,{code:B.invalid_type,expected:me.object,received:n.parsedType}),$e;let i=[],o=this._def.keyType,a=this._def.valueType;for(let s in n.data)i.push({key:o._parse(new Ln(n,s,n.path,s)),value:a._parse(new Ln(n,n.data[s],n.path,s)),alwaysSet:s in n.data});return n.common.async?Fr.mergeObjectAsync(r,i):Fr.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:J.ZodRecord,...Je(n)}):new e({keyType:ko.create(),valueType:t,typeName:J.ZodRecord,...Je(r)})}},zs=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!==me.map)return ae(n,{code:B.invalid_type,expected:me.map,received:n.parsedType}),$e;let i=this._def.keyType,o=this._def.valueType,a=[...n.data.entries()].map(([s,l],d)=>({key:i._parse(new Ln(n,s,n.path,[d,"key"])),value:o._parse(new Ln(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 $e;(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 $e;(d.status==="dirty"||u.status==="dirty")&&r.dirty(),s.set(d.value,u.value)}return{status:r.value,value:s}}}};zs.create=(e,t,r)=>new zs({valueType:t,keyType:e,typeName:J.ZodMap,...Je(r)});var Ns=class e extends nt{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==me.set)return ae(n,{code:B.invalid_type,expected:me.set,received:n.parsedType}),$e;let i=this._def;i.minSize!==null&&n.data.size<i.minSize.value&&(ae(n,{code:B.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&&(ae(n,{code:B.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 $e;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 Ln(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:ge.toString(r)}})}max(t,r){return new e({...this._def,maxSize:{value:t,message:ge.toString(r)}})}size(t,r){return this.min(t,r).max(t,r)}nonempty(t){return this.min(1,t)}};Ns.create=(e,t)=>new Ns({valueType:e,minSize:null,maxSize:null,typeName:J.ZodSet,...Je(t)});var Rc=class e extends nt{constructor(){super(...arguments),this.validate=this.implement}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==me.function)return ae(r,{code:B.invalid_type,expected:me.function,received:r.parsedType}),$e;function n(s,l){return sd({data:s,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Rs(),Yi].filter(d=>!!d),issueData:{code:B.invalid_arguments,argumentsError:l}})}function i(s,l){return sd({data:s,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Rs(),Yi].filter(d=>!!d),issueData:{code:B.invalid_return_type,returnTypeError:l}})}let o={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof To){let s=this;return Br(async function(...l){let d=new mn([]),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 Br(function(...l){let d=s._def.args.safeParse(l,o);if(!d.success)throw new mn([n(l,d.error)]);let u=Reflect.apply(a,this,d.data),c=s._def.returns.safeParse(u,o);if(!c.success)throw new mn([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:Pi.create(t).rest(Qi.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||Pi.create([]).rest(Qi.create()),returns:r||Qi.create(),typeName:J.ZodFunction,...Je(n)})}},xa=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})}};xa.create=(e,t)=>new xa({getter:e,typeName:J.ZodLazy,...Je(t)});var Ta=class extends nt{_parse(t){if(t.data!==this._def.value){let r=this._getOrReturnCtx(t);return ae(r,{received:r.data,code:B.invalid_literal,expected:this._def.value}),$e}return{status:"valid",value:t.data}}get value(){return this._def.value}};Ta.create=(e,t)=>new Ta({value:e,typeName:J.ZodLiteral,...Je(t)});function J0(e,t){return new Aa({values:e,typeName:J.ZodEnum,...Je(t)})}var Aa=class e extends nt{_parse(t){if(typeof t.data!="string"){let r=this._getOrReturnCtx(t),n=this._def.values;return ae(r,{expected:pt.joinValues(n),received:r.parsedType,code:B.invalid_type}),$e}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 ae(r,{received:r.data,code:B.invalid_enum_value,options:n}),$e}return Br(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})}};Aa.create=J0;var Oa=class extends nt{_parse(t){let r=pt.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(t);if(n.parsedType!==me.string&&n.parsedType!==me.number){let i=pt.objectValues(r);return ae(n,{expected:pt.joinValues(i),received:n.parsedType,code:B.invalid_type}),$e}if(this._cache||(this._cache=new Set(pt.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){let i=pt.objectValues(r);return ae(n,{received:n.data,code:B.invalid_enum_value,options:i}),$e}return Br(t.data)}get enum(){return this._def.values}};Oa.create=(e,t)=>new Oa({values:e,typeName:J.ZodNativeEnum,...Je(t)});var To=class extends nt{unwrap(){return this._def.type}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==me.promise&&r.common.async===!1)return ae(r,{code:B.invalid_type,expected:me.promise,received:r.parsedType}),$e;let n=r.parsedType===me.promise?r.data:Promise.resolve(r.data);return Br(n.then(i=>this._def.type.parseAsync(i,{path:r.path,errorMap:r.common.contextualErrorMap})))}};To.create=(e,t)=>new To({type:e,typeName:J.ZodPromise,...Je(t)});var Un=class extends nt{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===J.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=>{ae(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 $e;let l=await this._def.schema._parseAsync({data:s,path:n.path,parent:n});return l.status==="aborted"?$e:l.status==="dirty"?ha(l.value):r.value==="dirty"?ha(l.value):l});{if(r.value==="aborted")return $e;let s=this._def.schema._parseSync({data:a,path:n.path,parent:n});return s.status==="aborted"?$e:s.status==="dirty"?ha(s.value):r.value==="dirty"?ha(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"?$e:(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"?$e:(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(!wo(a))return $e;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=>wo(a)?Promise.resolve(i.transform(a.value,o)).then(s=>({status:r.value,value:s})):$e);pt.assertNever(i)}};Un.create=(e,t,r)=>new Un({schema:e,typeName:J.ZodEffects,effect:t,...Je(r)});Un.createWithPreprocess=(e,t,r)=>new Un({schema:t,effect:{type:"preprocess",transform:e},typeName:J.ZodEffects,...Je(r)});var pn=class extends nt{_parse(t){return this._getType(t)===me.undefined?Br(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};pn.create=(e,t)=>new pn({innerType:e,typeName:J.ZodOptional,...Je(t)});var Ri=class extends nt{_parse(t){return this._getType(t)===me.null?Br(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};Ri.create=(e,t)=>new Ri({innerType:e,typeName:J.ZodNullable,...Je(t)});var Ca=class extends nt{_parse(t){let{ctx:r}=this._processInputParams(t),n=r.data;return r.parsedType===me.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Ca.create=(e,t)=>new Ca({innerType:e,typeName:J.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...Je(t)});var Ea=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 Is(i)?i.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new mn(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new mn(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Ea.create=(e,t)=>new Ea({innerType:e,typeName:J.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...Je(t)});var Gs=class extends nt{_parse(t){if(this._getType(t)!==me.nan){let n=this._getOrReturnCtx(t);return ae(n,{code:B.invalid_type,expected:me.nan,received:n.parsedType}),$e}return{status:"valid",value:t.data}}};Gs.create=e=>new Gs({typeName:J.ZodNaN,...Je(e)});var Nz=Symbol("zod_brand"),ld=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}},dd=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"?$e:o.status==="dirty"?(r.dirty(),ha(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"?$e: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:J.ZodPipeline})}},Pa=class extends nt{_parse(t){let r=this._def.innerType._parse(t),n=i=>(wo(i)&&(i.value=Object.freeze(i.value)),i);return Is(r)?r.then(i=>n(i)):n(r)}unwrap(){return this._def.innerType}};Pa.create=(e,t)=>new Pa({innerType:e,typeName:J.ZodReadonly,...Je(t)});function V0(e,t){let r=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof r=="string"?{message:r}:r}function Y0(e,t={},r){return e?xo.create().superRefine((n,i)=>{let o=e(n);if(o instanceof Promise)return o.then(a=>{if(!a){let s=V0(t,n),l=s.fatal??r??!0;i.addIssue({code:"custom",...s,fatal:l})}});if(!o){let a=V0(t,n),s=a.fatal??r??!0;i.addIssue({code:"custom",...a,fatal:s})}}):xo.create()}var Gz={object:hn.lazycreate},J;(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"})(J||(J={}));var Fz=(e,t={message:`Input not instance of ${e.name}`})=>Y0(r=>r instanceof e,t),X0=ko.create,Q0=_a.create,Dz=Gs.create,qz=ga.create,ek=ya.create,Lz=ba.create,Uz=Ms.create,Zz=va.create,Wz=Sa.create,Vz=xo.create,Hz=Qi.create,Bz=li.create,Kz=js.create,Jz=eo.create,mh=hn.create,Yz=hn.strictCreate,Xz=wa.create,Qz=Ec.create,e1=ka.create,t1=Pi.create,r1=Pc.create,n1=zs.create,i1=Ns.create,o1=Rc.create,a1=xa.create,s1=Ta.create,l1=Aa.create,d1=Oa.create,u1=To.create,c1=Un.create,f1=pn.create,m1=Ri.create,p1=Un.createWithPreprocess,h1=dd.create,_1=()=>X0().optional(),g1=()=>Q0().optional(),y1=()=>ek().optional(),b1={string:(e=>ko.create({...e,coerce:!0})),number:(e=>_a.create({...e,coerce:!0})),boolean:(e=>ya.create({...e,coerce:!0})),bigint:(e=>ga.create({...e,coerce:!0})),date:(e=>ba.create({...e,coerce:!0}))};var v1=$e;import*as dk from"node:os";import*as gn from"node:path";import*as Ao from"node:fs/promises";function rk(e,t){return"Kandan attachment path must resolve inside an allowed upload root ("+e+"): "+t}function nk(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 ok="LINZUMI_THREAD_RUNNER_KANDAN_THREAD_ID";var ak="Kandan attachment path must not be empty";function to(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function uk(e){if(Array.isArray(e))return e}function Kr(e){if(e!==void 0&&typeof e=="string"&&e.trim()!=="")return e.trim()}function S1(e){if(e!==void 0&&typeof e=="number"&&Number.isInteger(e))return e}function _n(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 w1="failed: ([a-z0-9_]+)(?: detail=(.+))?$";async function ph(e){let t;try{t=await e}catch(r){let n=X(r),i=cs(n),o=new RegExp(w1).exec(i);if(o==null){let c={};return c.error=i,_n(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 _n(d)}return _n(t)}function ck(e){let t=gr(e);if(t===void 0)return pw(e);let r=ue(t),n=Or(r);return n!==void 0&&n.includes("channel_required")?fw(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})):mw(r)}function ro(e){let t={};return Object.entries(e).forEach(r=>{t[r[0]]=r[1]}),t}function hh(e,t){if(Kr(e.thread_id)!==void 0||t===void 0)return e;let n=()=>{let a=ro(e);return a.thread_id=t,a},i=e.message_seq;if(i!==void 0&&typeof i<"u")return n();let o=Kr(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 di(e,t){if(Kr(e.thread_id)!==void 0||t===void 0)return e;let n=ro(e);return n.thread_id=t,n}function Ic(e,t){let r=Fn(t);if(r!==void 0)return ue(r).toString();let n=e.replace(new RegExp("^wss://"),"https://").replace(new RegExp("^ws://"),"http://"),i=Zi(t,n);return i.TAG==="Ok"?i._0.toString():_r(i._0)}function k1(e,t){let r=Kr(t.inline_url),n=Kr(t.carousel_url),i=ro(t);return r!==void 0&&(i.inline_url=Ic(e,r)),n!==void 0&&(i.carousel_url=Ic(e,n)),i}function x1(e,t){if(typeof t!="object"||t===null||Array.isArray(t))return t;let r=Kr(t.url),n=to(t.image_variants),i=ro(t);return r!==void 0&&(i.url=Ic(e,r)),n!==void 0&&(i.image_variants=k1(e,n)),i}function lk(e,t){let r=uk(t.attachments);if(r===void 0)return t;let n=ro(t);return n.attachments=r.map(i=>x1(e,i)),n}function _h(e,t){let r=to(t.message),n=to(t.target_message);if(r===void 0&&n===void 0)return t;let i=ro(t);return r!==void 0&&(i.message=lk(e,r)),n!==void 0&&(i.target_message=lk(e,n)),i}var T1=[".csv",".diff",".gif",".htm",".html",".jpeg",".jpg",".json",".jsonl",".log",".md",".mp4",".patch",".pdf",".png",".svg",".txt",".webm",".webp",".xml",".zip"];async function A1(e){let t=[{path:e,label:"runner cwd"}],r=D(process.env.HOME,o=>o.trim()),n=gn.resolve(r!==void 0&&r!==""?r:dk.homedir(),"Downloads"),i;try{i=await Ao.realpath(n)}catch{return t}return t.some(o=>o.path===i)||t.push({path:i,label:"~/Downloads"}),t}function O1(e,t){let r=gn.relative(e,t);return r===""?!0:r.startsWith("..")?!1:!gn.isAbsolute(r)}async function C1(e,t){if(t==="")return _r(ak);let r=gn.isAbsolute(t)?gn.resolve(t):gn.resolve(e,t);return await Ao.realpath(r)}function E1(e,t){let r=e.find(i=>O1(i.path,t));if(r!==void 0){if(gn.relative(r.path,t).split(new RegExp("[\\\\/]+","g")).find(s=>s!==void 0?s.startsWith("."):!1)!==void 0)return _r(nk(t));let a=gn.extname(t).toLowerCase();return T1.includes(a)?void 0:_r(ik(t))}let n=e.map(i=>i.label).join(", ");_r(rk(n,t))}function P1(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 fk(e,t){let r=await Ao.realpath(e),n=await A1(r),i=await C1(r,t);E1(n,i);let o=await Ao.stat(i);return o.isFile()?{path:i,fileName:gn.basename(i),contentType:P1(i),sizeBytes:o.size}:_r("Linzumi upload path is not a file: "+i)}async function mk(e,t,r,n,i){let o=await Ao.readFile(i),a={};return a["content-type"]=n,await Qu.binary(Ic(e,t),{method:r,headers:a,body:hw(o)})}async function pk(e){let t=await Promise.all(e.files.map(m=>fk(e.cwd,m))),r=Kr(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=uk(a.uploads),l=s!==void 0?s:[];l.length===t.length||_r("Linzumi upload prepare response count mismatch"),await Promise.all(t.map(async(m,h)=>{let _=to(l[h]),g=Kr(k(_,S=>S.upload_url)),b=Kr(k(_,S=>S.upload_method)),y=b!==void 0?b:"PUT";if(g===void 0)return _r("Linzumi upload prepare response missing upload_url");let v=await mk(e.serviceUrl,g,y,m.contentType,m.path);if(!v.ok)return _r("Linzumi upload failed for "+m.fileName+": "+v.status.toString()+" "+v.statusText)}));let d=l.map(m=>{let h=Kr(k(to(m),_=>_.file_id));return h!==void 0?h:_r("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 hk(e){let t=await fk(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=to(i.upload),a=Kr(k(o,m=>m.upload_url)),s=Kr(k(o,m=>m.upload_method)),l=s!==void 0?s:"PUT";if(a===void 0)return _r("Linzumi custom emoji prepare response missing upload_url");let d=await mk(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 _r("Linzumi custom emoji upload returned non-object JSON");let h=to(m.custom_emoji);if(h===void 0)return _r("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=Kr(m.asset_id);_.asset_id=b!==void 0?b:void 0;let y=S1(h.id);_.id=y!==void 0?y:void 0;let v=Kr(h.name);_.name=v!==void 0?v:void 0;let S=Kr(h.shortcode);_.shortcode=S!==void 0?S:void 0;let A=Kr(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 _r("Linzumi custom emoji upload failed: "+p)}import*as yn from"node:fs";import*as _k from"node:os";import*as gk from"node:net";import*as Zn from"node:path";import*as yk from"node:child_process";function bh(e,t){}function vh(e){return e==="DesiredRunning"?"running":"stopped"}function bk(e){switch(e){case"Running":return"running";case"Unhealthy":return"unhealthy";case"Exited":return"exited";case"Stopped":return"stopped"}}function I1(){let e=D(process.env.LINZUMI_DEV_SERVICES_DIR,t=>t.trim());return e!==void 0&&e!==""?e:Zn.join(_k.homedir(),".linzumi","dev-services")}function $1(e){let t=e.replace(new RegExp("[^A-Za-z0-9._-]+","g"),"-").replace(new RegExp("^[-.]+|[-.]+$","g"),"").slice(0,80),r=Gn(e).slice(0,8),n=t===""?"runner":t;return Zn.join(I1(),n+"."+r)}function $c(e){let t=e.trim().toLowerCase();if(new RegExp("^[a-z0-9][a-z0-9._-]{0,63}$").test(t)&&!t.includes(".."))return t}function Sh(e,t){return Zn.join(e,"services",t+".json")}function wh(e,t){return Zn.join(e,"exits",t+".json")}function vk(e,t){return Zn.join(e,"logs",t+".log")}function ud(e){if(typeof e=="string"&&e!=="")return e}function cd(e){if(e!==void 0&&typeof e=="number"&&isFinite(e))return e}function M1(e){return e!==void 0?Array.isArray(e)?ze(e,t=>{if(typeof t=="number"&&Number.isInteger(t)&&t>0&&t<=65535)return t}):[]:[]}function j1(e){if(typeof e!="object"||e===null||Array.isArray(e)||!se(e.version,1))return;let t=ud(e.name),r=k(t,$c),n=ud(e.command),i=ud(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=cd(e.updatedAtMs),l=ud(e.logPath),d=se(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:M1(e.ports),restartOnBranchChange:se(e.restartOnBranchChange,!0),desiredState:a,pid:cd(e.pid),ownerPid:cd(e.ownerPid),startedAtMs:cd(e.startedAtMs),updatedAtMs:s,lastBranch:ud(e.lastBranch),logPath:l}}function gh(e){return e!==void 0?e:null}function z1(e){return e!==void 0?e:null}function N1(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=vh(e.desiredState),t.pid=gh(e.pid),t.ownerPid=gh(e.ownerPid),t.startedAtMs=gh(e.startedAtMs),t.updatedAtMs=e.updatedAtMs,t.lastBranch=z1(e.lastBranch),t.logPath=e.logPath,t}function Sk(e,t,r){let n=Sh(e,t.name),i=Ce(Dt(Zn.dirname(n)),()=>{let a=n+".tmp";return Ce(wi(a,JSON.stringify(N1(t))+`
122
- `),()=>ii(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 kh(e,t){let r=$c(t);if(r===void 0)return;let n=or(Sh(e,r));if(n.TAG!=="Ok")return;let i;try{i=JSON.parse(n._0)}catch{return}return j1(i)}function G1(e){let t=Dl(Zn.join(e,"services"));return t.TAG==="Ok"?ze(t._0,r=>{if(r.endsWith(".json"))return kh(e,r.slice(0,r.length-5|0))}).toSorted((r,n)=>r.name.localeCompare(n.name)):[]}function wk(e,t){let r=or(wh(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=cd(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 F1(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 D1(e,t){return{command:e,args:["-e",`
121
+ `}}function Lz(e){return new Promise((t,r)=>{setTimeout(()=>t(),e|0)})}function Uz(e){return{startDeviceAuthorization:t=>Y0(t.httpBaseUrl,t.workspaceSlug,t.channelSlug,t.onboarding,t.identity),pollDeviceCodeForToken:t=>X0(t.httpBaseUrl,t.deviceCode,t.expiresInSeconds,void 0),now:()=>Date.now(),sleep:Lz,report:e,log:(t,r)=>{}}}var Zz="local runner device authorization was denied - a signed-in user rejected this computer";async function ek(e,t,r,n,i,o,a,s){let l=o!==void 0?o:g=>{mr(g)},d=s!==void 0?s:Uz(g=>l(qz(g))),u=a!==void 0?a:de(Rr(process.stderr.isTTY),!0),c=$t(an(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=Dz(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,Z;Z=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(Z)}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(Zz)};case"Consumed":let Z={};return Z.cycle=m.cycle,Z.outcome="consumed",d.log("device_wait.code_retired",Z),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 Z=A.httpStatus,L=A.reason;d.report({TAG:"TransientFailure",reason:J0(L,Z),waitedMs:d.now()-p});let ae={};return ae.cycle=m.cycle,ae.reason=L!==void 0?L:null,ae.httpStatus=Z,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 Vz="linzumi-machine-fingerprint:v1:";var tk={platform:void 0,execFile:void 0,readFile:void 0,username:void 0};function Hz(e,t){return _s(e,t,5e3,1024*1024)}var Bz=new RegExp('"IOPlatformUUID"\\s*=\\s*"([0-9A-Fa-f-]{36})"'),Kz=new RegExp("^[0-9a-f]{32}$"),Jz=["/etc/machine-id","/var/lib/dbus/machine-id"];function Yz(e){let t=e!==void 0?e:tk,r=x(t.platform,process.platform),n=x(t.execFile,Hz),i=x(t.readFile,Qt);switch(r){case"darwin":let o=n("ioreg",["-rd1","-c","IOPlatformExpertDevice"]);if(o.TAG!=="Ok")return;let a=Bz.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(Jz,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(Kz.test(f))return f});default:return}}function rk(e){return G(Yz(e!==void 0?e:tk),r=>"mfp-"+Un(Vz+r).slice(0,32))}function nk(e){let t={};return e!==void 0&&(t.machineFingerprintV2=e),t}function ak(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 Xz(e,t){return _e($t(an(e),we),r=>{let n=Zn(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 Qz="local runner browser OAuth is not available in this implementation yet; use --auth-mode device or supply --token";async function e1(e){let t=Rc(process.env),r=Ic(t,e.serviceUrl,void 0);if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=r._0,i=rk(void 0),o=ok.hostname(),a={commanderId:n,machineFingerprint:i,hostname:o},s=await ek(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(Ac(e.serviceUrl,l.accessToken,l.expiresInSeconds,u,new Date),c=>l.accessToken)}async function t1(e){let t=e.authMode;return typeof(t!==void 0?t:{TAG:"BrowserMode",callbackHost:e.callbackHost})!="object"?await e1(e):{TAG:"Error",_0:we(Qz)}}function r1(){return{readCachedToken:(e,t)=>Tc(e,t,Date.now()),validateToken:(e,t,r,n,i)=>Ms(e,t,r,n,i),acquireAndCacheToken:t1}}async function n1(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 _e(Xz(e.serviceUrl,e.workspaceSlug),i=>({TAG:"Error",_0:we(i)}))}}async function $c(e,t){let r=t!==void 0?t:r1(),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 n1(e,r,c);return p.TAG==="Ok"?{TAG:"Ok",_0:c}:{TAG:"Error",_0:p._0}}function vh(e){return we(e.message)}function Mc(e,t,r,n){return _e($t(Ow(Sh.join(lk.tmpdir(),"linzumi-mcp-auth-")),vh),i=>_e($t(ps(i,448),vh),()=>{let o=Sh.join(i,"auth.json");return _e(Ac(e,r!==void 0?r:t,void 0,o,n),a=>wt($t(ps(o,384),vh),()=>({path:o,directory:i,cleanup:()=>{jp(i)}})))}))}function i1(){return{readCachedToken:(e,t)=>Tc(e,t,Date.now()),validateTokenOutcome:(e,t,r,n)=>Ms(e,t,r,n,void 0),resolveToken:e=>$c(e,void 0)}}var o1="missing Linzumi MCP token; run linzumi auth or pass --token";function a1(e){return"Linzumi MCP token was rejected by the server and re-mint failed: "+e}async function dk(e,t,r,n,i,o){let a=o!==void 0?o:i1(),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(o1)};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(a1(c._0.summary))}}var T={};$p(T,{BRAND:()=>I1,DIRTY:()=>ya,EMPTY_PATH:()=>u1,INVALID:()=>$e,NEVER:()=>hN,OK:()=>Kr,ParseStatus:()=>qr,Schema:()=>nt,ZodAny:()=>Oo,ZodArray:()=>no,ZodBigInt:()=>va,ZodBoolean:()=>Sa,ZodBranded:()=>_d,ZodCatch:()=>Ia,ZodDate:()=>wa,ZodDefault:()=>Ra,ZodDiscriminatedUnion:()=>Nc,ZodEffects:()=>Bn,ZodEnum:()=>Ea,ZodError:()=>bn,ZodFirstPartyTypeKind:()=>Q,ZodFunction:()=>Fc,ZodIntersection:()=>Aa,ZodIssueCode:()=>Y,ZodLazy:()=>Oa,ZodLiteral:()=>Ca,ZodMap:()=>Ls,ZodNaN:()=>Zs,ZodNativeEnum:()=>Pa,ZodNever:()=>fi,ZodNull:()=>xa,ZodNullable:()=>Mi,ZodNumber:()=>ba,ZodObject:()=>Sn,ZodOptional:()=>vn,ZodParsedType:()=>fe,ZodPipeline:()=>gd,ZodPromise:()=>Co,ZodReadonly:()=>$a,ZodRecord:()=>Gc,ZodSchema:()=>nt,ZodSet:()=>Us,ZodString:()=>Ao,ZodSymbol:()=>Ds,ZodTransformer:()=>Bn,ZodTuple:()=>$i,ZodType:()=>nt,ZodUndefined:()=>ka,ZodUnion:()=>Ta,ZodUnknown:()=>ro,ZodVoid:()=>qs,addIssueToContext:()=>le,any:()=>q1,array:()=>W1,bigint:()=>z1,boolean:()=>vk,coerce:()=>pN,custom:()=>gk,date:()=>N1,datetimeRegex:()=>hk,defaultErrorMap:()=>eo,discriminatedUnion:()=>B1,effect:()=>aN,enum:()=>nN,function:()=>eN,getErrorMap:()=>Ns,getParsedType:()=>Ii,instanceof:()=>M1,intersection:()=>K1,isAborted:()=>jc,isAsync:()=>Gs,isDirty:()=>zc,isValid:()=>To,late:()=>$1,lazy:()=>tN,literal:()=>rN,makeIssue:()=>hd,map:()=>X1,nan:()=>j1,nativeEnum:()=>iN,never:()=>U1,null:()=>D1,nullable:()=>lN,number:()=>bk,object:()=>Ah,objectUtil:()=>kh,oboolean:()=>mN,onumber:()=>fN,optional:()=>sN,ostring:()=>cN,pipeline:()=>uN,preprocess:()=>dN,promise:()=>oN,quotelessJson:()=>s1,record:()=>Y1,set:()=>Q1,setErrorMap:()=>d1,strictObject:()=>V1,string:()=>yk,symbol:()=>G1,transformer:()=>aN,tuple:()=>J1,undefined:()=>F1,union:()=>H1,unknown:()=>L1,util:()=>mt,void:()=>Z1});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 kh;(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(kh||(kh={}));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"]),s1=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),bn=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()}};bn.create=e=>new bn(e);var l1=(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=l1;var uk=eo;function d1(e){uk=e}function Ns(){return uk}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}},u1=[];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 qr=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 $e;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 $e;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}}},$e=Object.freeze({status:"aborted"}),ya=e=>({status:"dirty",value:e}),Kr=e=>({status:"valid",value:e}),jc=e=>e.status==="aborted",zc=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 Hn=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}},ck=(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 bn(e.common.issues);return this._error=r,this._error}}};function Je(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 qr,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 ck(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 ck(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 Bn({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 vn.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 Bn({...Je(this._def),schema:this,typeName:Q.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let r=typeof t=="function"?t:()=>t;return new Ra({...Je(this._def),innerType:this,defaultValue:r,typeName:Q.ZodDefault})}brand(){return new _d({typeName:Q.ZodBranded,type:this,...Je(this._def)})}catch(t){let r=typeof t=="function"?t:()=>t;return new Ia({...Je(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,f1=/^[0-9a-z]+$/,m1=/^[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,h1=/^[a-z0-9_-]{21}$/i,_1=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,g1=/^[-+]?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)?)??$/,y1=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,b1="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",xh,v1=/^(?:(?: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])$/,S1=/^(?:(?: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])$/,w1=/^(([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]))$/,k1=/^(([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])$/,x1=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,T1=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,mk="((\\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])))",A1=new RegExp(`^${mk}$`);function pk(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 O1(e){return new RegExp(`^${pk(e)}$`)}function hk(e){let t=`${mk}T${pk(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 C1(e,t){return!!((t==="v4"||!t)&&v1.test(e)||(t==="v6"||!t)&&w1.test(e))}function E1(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 P1(e,t){return!!((t==="v4"||!t)&&S1.test(e)||(t==="v6"||!t)&&k1.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}),$e}let n=new qr,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")y1.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")xh||(xh=new RegExp(b1,"u")),xh.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")h1.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")f1.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")m1.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"?hk(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"?A1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{code:Y.invalid_string,validation:"date",message:o.message}),n.dirty()):o.kind==="time"?O1(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"?g1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"duration",code:Y.invalid_string,message:o.message}),n.dirty()):o.kind==="ip"?C1(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"?E1(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"?P1(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"?x1.test(t.data)||(i=this._getOrReturnCtx(t,i),le(i,{validation:"base64",code:Y.invalid_string,message:o.message}),n.dirty()):o.kind==="base64url"?T1.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,...Je(e)});function R1(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}),$e}let n,i=new qr;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"?R1(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,...Je(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 qr;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}),$e}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,...Je(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}),$e}return Kr(t.data)}};Sa.create=e=>new Sa({typeName:Q.ZodBoolean,coerce:e?.coerce||!1,...Je(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}),$e}if(Number.isNaN(t.data.getTime())){let o=this._getOrReturnCtx(t);return le(o,{code:Y.invalid_date}),$e}let n=new qr,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,...Je(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}),$e}return Kr(t.data)}};Ds.create=e=>new Ds({typeName:Q.ZodSymbol,...Je(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}),$e}return Kr(t.data)}};ka.create=e=>new ka({typeName:Q.ZodUndefined,...Je(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}),$e}return Kr(t.data)}};xa.create=e=>new xa({typeName:Q.ZodNull,...Je(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,...Je(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,...Je(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}),$e}};fi.create=e=>new fi({typeName:Q.ZodNever,...Je(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}),$e}return Kr(t.data)}};qs.create=e=>new qs({typeName:Q.ZodVoid,...Je(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}),$e;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 Hn(r,a,r.path,s)))).then(a=>qr.mergeArray(n,a));let o=[...r.data].map((a,s)=>i.type._parseSync(new Hn(r,a,r.path,s)));return qr.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,...Je(t)});function Fs(e){if(e instanceof Sn){let t={};for(let r in e.shape){let n=e.shape[r];t[r]=vn.create(Fs(n))}return new Sn({...e._def,shape:()=>t})}else return e instanceof no?new no({...e._def,type:Fs(e.element)}):e instanceof vn?vn.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 Sn=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}),$e}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 Hn(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 Hn(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=>qr.mergeObjectSync(n,d)):qr.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 vn;)o=o._def.innerType;r[n]=o}return new e({...this._def,shape:()=>r})}keyof(){return _k(mt.objectKeys(this.shape))}};Sn.create=(e,t)=>new Sn({shape:()=>e,unknownKeys:"strip",catchall:fi.create(),typeName:Q.ZodObject,...Je(t)});Sn.strictCreate=(e,t)=>new Sn({shape:()=>e,unknownKeys:"strict",catchall:fi.create(),typeName:Q.ZodObject,...Je(t)});Sn.lazycreate=(e,t)=>new Sn({shape:e,unknownKeys:"strip",catchall:fi.create(),typeName:Q.ZodObject,...Je(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 bn(s.ctx.common.issues));return le(r,{code:Y.invalid_union,unionErrors:a}),$e}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 bn(l));return le(r,{code:Y.invalid_union,unionErrors:s}),$e}}get options(){return this._def.options}};Ta.create=(e,t)=>new Ta({options:e,typeName:Q.ZodUnion,...Je(t)});var to=e=>e instanceof Oa?to(e.schema):e instanceof Bn?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 vn?[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):[],Nc=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}),$e;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]}),$e)}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,...Je(n)})}};function Th(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=Th(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=Th(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(jc(o)||jc(a))return $e;let s=Th(o.value,a.value);return s.valid?((zc(o)||zc(a))&&r.dirty(),{status:r.value,value:s.data}):(le(n,{code:Y.invalid_intersection_types}),$e)};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,...Je(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}),$e;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"}),$e;!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 Hn(n,a,n.path,s)):null}).filter(a=>!!a);return n.common.async?Promise.all(o).then(a=>qr.mergeArray(r,a)):qr.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,...Je(t)})};var Gc=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}),$e;let i=[],o=this._def.keyType,a=this._def.valueType;for(let s in n.data)i.push({key:o._parse(new Hn(n,s,n.path,s)),value:a._parse(new Hn(n,n.data[s],n.path,s)),alwaysSet:s in n.data});return n.common.async?qr.mergeObjectAsync(r,i):qr.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,...Je(n)}):new e({keyType:Ao.create(),valueType:t,typeName:Q.ZodRecord,...Je(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}),$e;let i=this._def.keyType,o=this._def.valueType,a=[...n.data.entries()].map(([s,l],d)=>({key:i._parse(new Hn(n,s,n.path,[d,"key"])),value:o._parse(new Hn(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 $e;(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 $e;(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,...Je(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}),$e;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 $e;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 Hn(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,...Je(t)});var Fc=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}),$e;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 bn([]),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 bn([n(l,d.error)]);let u=Reflect.apply(a,this,d.data),c=s._def.returns.safeParse(u,o);if(!c.success)throw new bn([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,...Je(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,...Je(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}),$e}return{status:"valid",value:t.data}}get value(){return this._def.value}};Ca.create=(e,t)=>new Ca({value:e,typeName:Q.ZodLiteral,...Je(t)});function _k(e,t){return new Ea({values:e,typeName:Q.ZodEnum,...Je(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}),$e}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}),$e}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=_k;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}),$e}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}),$e}return Kr(t.data)}get enum(){return this._def.values}};Pa.create=(e,t)=>new Pa({values:e,typeName:Q.ZodNativeEnum,...Je(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}),$e;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,...Je(t)});var Bn=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 $e;let l=await this._def.schema._parseAsync({data:s,path:n.path,parent:n});return l.status==="aborted"?$e:l.status==="dirty"?ya(l.value):r.value==="dirty"?ya(l.value):l});{if(r.value==="aborted")return $e;let s=this._def.schema._parseSync({data:a,path:n.path,parent:n});return s.status==="aborted"?$e: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"?$e:(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"?$e:(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 $e;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})):$e);mt.assertNever(i)}};Bn.create=(e,t,r)=>new Bn({schema:e,typeName:Q.ZodEffects,effect:t,...Je(r)});Bn.createWithPreprocess=(e,t,r)=>new Bn({schema:t,effect:{type:"preprocess",transform:e},typeName:Q.ZodEffects,...Je(r)});var vn=class extends nt{_parse(t){return this._getType(t)===fe.undefined?Kr(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};vn.create=(e,t)=>new vn({innerType:e,typeName:Q.ZodOptional,...Je(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,...Je(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,...Je(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 bn(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new bn(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,...Je(t)});var Zs=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}),$e}return{status:"valid",value:t.data}}};Zs.create=e=>new Zs({typeName:Q.ZodNaN,...Je(e)});var I1=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"?$e: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"?$e: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,...Je(t)});function fk(e,t){let r=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof r=="string"?{message:r}:r}function gk(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=fk(t,n),l=s.fatal??r??!0;i.addIssue({code:"custom",...s,fatal:l})}});if(!o){let a=fk(t,n),s=a.fatal??r??!0;i.addIssue({code:"custom",...a,fatal:s})}}):Oo.create()}var $1={object:Sn.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 M1=(e,t={message:`Input not instance of ${e.name}`})=>gk(r=>r instanceof e,t),yk=Ao.create,bk=ba.create,j1=Zs.create,z1=va.create,vk=Sa.create,N1=wa.create,G1=Ds.create,F1=ka.create,D1=xa.create,q1=Oo.create,L1=ro.create,U1=fi.create,Z1=qs.create,W1=no.create,Ah=Sn.create,V1=Sn.strictCreate,H1=Ta.create,B1=Nc.create,K1=Aa.create,J1=$i.create,Y1=Gc.create,X1=Ls.create,Q1=Us.create,eN=Fc.create,tN=Oa.create,rN=Ca.create,nN=Ea.create,iN=Pa.create,oN=Co.create,aN=Bn.create,sN=vn.create,lN=Mi.create,dN=Bn.createWithPreprocess,uN=gd.create,cN=()=>yk().optional(),fN=()=>bk().optional(),mN=()=>vk().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 hN=$e;import*as Ek from"node:os";import*as kn from"node:path";import*as Eo from"node:fs/promises";function wk(e,t){return"Kandan attachment path must resolve inside an allowed upload root ("+e+"): "+t}function kk(e){return"Kandan attachment upload path must not include hidden path segments: "+e}function xk(e){return"Kandan attachment upload path extension is not allowed: "+e}var Tk="LINZUMI_THREAD_RUNNER_KANDAN_THREAD_ID";var Ak="Kandan attachment path must not be empty";function io(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function Pk(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 wn(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 gN="failed: ([a-z0-9_]+)(?: detail=(.+))?$";async function Oh(e){let t;try{t=await e}catch(r){let n=ee(r),i=gs(n),o=new RegExp(gN).exec(i);if(o==null){let c={};return c.error=i,wn(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 wn(d)}return wn(t)}function Rk(e){let t=yr(e);if(t===void 0)return zw(e);let r=ue(t),n=Or(r);return n!==void 0&&n.includes("channel_required")?Mw(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})):jw(r)}function oo(e){let t={};return Object.entries(e).forEach(r=>{t[r[0]]=r[1]}),t}function Ch(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 Dc(e,t){let r=Zn(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():gr(i._0)}function yN(e,t){let r=Jr(t.inline_url),n=Jr(t.carousel_url),i=oo(t);return r!==void 0&&(i.inline_url=Dc(e,r)),n!==void 0&&(i.carousel_url=Dc(e,n)),i}function bN(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=Dc(e,r)),n!==void 0&&(i.image_variants=yN(e,n)),i}function Ck(e,t){let r=Pk(t.attachments);if(r===void 0)return t;let n=oo(t);return n.attachments=r.map(i=>bN(e,i)),n}function Eh(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=Ck(e,r)),n!==void 0&&(i.target_message=Ck(e,n)),i}var vN=[".csv",".diff",".gif",".htm",".html",".jpeg",".jpg",".json",".jsonl",".log",".md",".mp4",".patch",".pdf",".png",".svg",".txt",".webm",".webp",".xml",".zip"];async function SN(e){let t=[{path:e,label:"runner cwd"}],r=G(process.env.HOME,o=>o.trim()),n=kn.resolve(r!==void 0&&r!==""?r:Ek.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 wN(e,t){let r=kn.relative(e,t);return r===""?!0:r.startsWith("..")?!1:!kn.isAbsolute(r)}async function kN(e,t){if(t==="")return gr(Ak);let r=kn.isAbsolute(t)?kn.resolve(t):kn.resolve(e,t);return await Eo.realpath(r)}function xN(e,t){let r=e.find(i=>wN(i.path,t));if(r!==void 0){if(kn.relative(r.path,t).split(new RegExp("[\\\\/]+","g")).find(s=>s!==void 0?s.startsWith("."):!1)!==void 0)return gr(kk(t));let a=kn.extname(t).toLowerCase();return vN.includes(a)?void 0:gr(xk(t))}let n=e.map(i=>i.label).join(", ");gr(wk(n,t))}function TN(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 Ik(e,t){let r=await Eo.realpath(e),n=await SN(r),i=await kN(r,t);xN(n,i);let o=await Eo.stat(i);return o.isFile()?{path:i,fileName:kn.basename(i),contentType:TN(i),sizeBytes:o.size}:gr("Linzumi upload path is not a file: "+i)}async function $k(e,t,r,n,i){let o=await Eo.readFile(i),a={};return a["content-type"]=n,await sc.binary(Dc(e,t),{method:r,headers:a,body:Nw(o)})}async function Mk(e){let t=await Promise.all(e.files.map(m=>Ik(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=Pk(a.uploads),l=s!==void 0?s:[];l.length===t.length||gr("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 gr("Linzumi upload prepare response missing upload_url");let v=await $k(e.serviceUrl,g,y,m.contentType,m.path);if(!v.ok)return gr("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:gr("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 jk(e){let t=await Ik(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 gr("Linzumi custom emoji prepare response missing upload_url");let d=await $k(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 gr("Linzumi custom emoji upload returned non-object JSON");let h=io(m.custom_emoji);if(h===void 0)return gr("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 gr("Linzumi custom emoji upload failed: "+p)}import*as xn from"node:fs";import*as zk from"node:os";import*as Nk from"node:net";import*as Kn from"node:path";import*as Gk from"node:child_process";function Ih(e,t){}function $h(e){return e==="DesiredRunning"?"running":"stopped"}function Fk(e){switch(e){case"Running":return"running";case"Unhealthy":return"unhealthy";case"Exited":return"exited";case"Stopped":return"stopped"}}function ON(){let e=G(process.env.LINZUMI_DEV_SERVICES_DIR,t=>t.trim());return e!==void 0&&e!==""?e:Kn.join(zk.homedir(),".linzumi","dev-services")}function CN(e){let t=e.replace(new RegExp("[^A-Za-z0-9._-]+","g"),"-").replace(new RegExp("^[-.]+|[-.]+$","g"),"").slice(0,80),r=Un(e).slice(0,8),n=t===""?"runner":t;return Kn.join(ON(),n+"."+r)}function qc(e){let t=e.trim().toLowerCase();if(new RegExp("^[a-z0-9][a-z0-9._-]{0,63}$").test(t)&&!t.includes(".."))return t}function Mh(e,t){return Kn.join(e,"services",t+".json")}function jh(e,t){return Kn.join(e,"exits",t+".json")}function Dk(e,t){return Kn.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 EN(e){return e!==void 0?Array.isArray(e)?ze(e,t=>{if(typeof t=="number"&&Number.isInteger(t)&&t>0&&t<=65535)return t}):[]:[]}function PN(e){if(typeof e!="object"||e===null||Array.isArray(e)||!de(e.version,1))return;let t=yd(e.name),r=k(t,qc),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:EN(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 Ph(e){return e!==void 0?e:null}function RN(e){return e!==void 0?e:null}function IN(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=$h(e.desiredState),t.pid=Ph(e.pid),t.ownerPid=Ph(e.ownerPid),t.startedAtMs=Ph(e.startedAtMs),t.updatedAtMs=e.updatedAtMs,t.lastBranch=RN(e.lastBranch),t.logPath=e.logPath,t}function qk(e,t,r){let n=Mh(e,t.name),i=_e(Ft(Kn.dirname(n)),()=>{let a=n+".tmp";return _e(Ti(a,JSON.stringify(IN(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 zh(e,t){let r=qc(t);if(r===void 0)return;let n=Qt(Mh(e,r));if(n.TAG!=="Ok")return;let i;try{i=JSON.parse(n._0)}catch{return}return PN(i)}function $N(e){let t=hs(Kn.join(e,"services"));return t.TAG==="Ok"?ze(t._0,r=>{if(r.endsWith(".json"))return zh(e,r.slice(0,r.length-5|0))}).toSorted((r,n)=>r.name.localeCompare(n.name)):[]}function Lk(e,t){let r=Qt(jh(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 MN(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 jN(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(),F1(t)]}}function yh(e){if(e===void 0||e<=1)return!1;try{return process.kill(-e,0),!0}catch(t){let r=X(t);return se(Ge(r).code,"EPERM")}}function xh(e,t){let r=t.pid;if(r===void 0||r<=1)return!1;let n=wk(e,t.name),i=t.startedAtMs;return n!==void 0&&i!==void 0&&n.atMs>=i?!1:yh(t.pid)}function Th(e){return new Promise((t,r)=>{let n=gk.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 q1(e,t){let r=xh(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 Th(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:wk(e,t.name)}}async function Ah(e){let t=[],r=G1(e);for(let n=0,i=r.length;n<i;++n){let o=r[n];o!==void 0&&t.push(await q1(e,o))}return t}function L1(e){let t=D(e.SHELL,r=>r.trim());return t!==void 0&&t!==""?t:"/bin/sh"}async function kk(e,t,r){if(e===void 0||e<=1||Ui(-e|0,"SIGTERM").TAG!=="Ok")return;let i=Date.now()+3e3,o=yh(e);for(;o&&Date.now()<i;)await ec(100),o=yh(e);if(!o||Ui(-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:bh,n=$c(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:yn.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=kh(e.scopeDir,n);a!==void 0&&xh(e.scopeDir,a)&&await kk(a.pid,r,n);let s=e.nowMs,l=s!==void 0?s:Date.now(),d=vk(e.scopeDir,n),u=wh(e.scopeDir,n),c=Ce(Ce(Ce(Dt(Zn.dirname(d)),()=>Dt(Zn.join(e.scopeDir,"services"))),()=>Dt(Zn.dirname(u))),()=>{try{return{TAG:"Ok",_0:yn.openSync(d,"a")}}catch(W){let Z=X(W);return{TAG:"Error",_0:Ge(Z)}}});if(c.TAG!=="Ok")return{TAG:"Error",_0:"cannot open service log: "+c._0.message};let f=c._0;un(u);let p=e.shellPathOverride,m=p!==void 0?p:L1(process.env),h=e.nodeExecPath,_=e.watchdogPollIntervalMs,g=D1(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{yn.writeFileSync(f,`
178
+ `.trim(),MN(t)]}}function Rh(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 Nh(e,t){let r=t.pid;if(r===void 0||r<=1)return!1;let n=Lk(e,t.name),i=t.startedAtMs;return n!==void 0&&i!==void 0&&n.atMs>=i?!1:Rh(t.pid)}function Gh(e){return new Promise((t,r)=>{let n=Nk.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 zN(e,t){let r=Nh(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 Gh(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:Lk(e,t.name)}}async function Fh(e){let t=[],r=$N(e);for(let n=0,i=r.length;n<i;++n){let o=r[n];o!==void 0&&t.push(await zN(e,o))}return t}function NN(e){let t=G(e.SHELL,r=>r.trim());return t!==void 0&&t!==""?t:"/bin/sh"}async function Uk(e,t,r){if(e===void 0||e<=1||Vi(-e|0,"SIGTERM").TAG!=="Ok")return;let i=Date.now()+3e3,o=Rh(e);for(;o&&Date.now()<i;)await lc(100),o=Rh(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 Zk(e){let t=e.log,r=t!==void 0?t:Ih,n=qc(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:xn.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=zh(e.scopeDir,n);a!==void 0&&Nh(e.scopeDir,a)&&await Uk(a.pid,r,n);let s=e.nowMs,l=s!==void 0?s:Date.now(),d=Dk(e.scopeDir,n),u=jh(e.scopeDir,n),c=_e(_e(_e(Ft(Kn.dirname(d)),()=>Ft(Kn.join(e.scopeDir,"services"))),()=>Ft(Kn.dirname(u))),()=>{try{return{TAG:"Ok",_0:xn.openSync(d,"a")}}catch(W){let V=ee(W);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;_n(u);let p=e.shellPathOverride,m=p!==void 0?p:NN(process.env),h=e.nodeExecPath,_=e.watchdogPollIntervalMs,g=jN(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{xn.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(W=>{b[W[0]]=W[1]}),b.ELECTRON_RUN_AS_NODE="1";let y;try{let W=yk.spawn(g.command,g.args,{cwd:e.definition.cwd,detached:!0,stdio:["ignore",Number(f),Number(f)],env:b});W.unref(),y={TAG:"Ok",_0:$r(W.pid)}}catch(W){let Z=X(W);y={TAG:"Error",_0:"spawn failed: "+Ge(Z).message}}try{yn.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(W=>{if(!S.includes(W)){S.push(W);return}});let A=e.definition.cwd,R=S.toSorted((W,Z)=>W-Z),z=e.definition.restartOnBranchChange,H=v,ce=e.ownerPid,ie={name:n,command:i,cwd:A,ports:R,restartOnBranchChange:z,desiredState:"DesiredRunning",pid:H,ownerPid:ce,startedAtMs:l,updatedAtMs:l,lastBranch:void 0,logPath:d};Sk(e.scopeDir,ie,r);let le={};return le.name=n,le.pid=v,le.owner_pid=e.ownerPid,le.cwd=e.definition.cwd,le.ports=R.map(W=>W),r("dev_services.started",le),{TAG:"Ok",_0:ie}}async function Oh(e,t,r){let n=r!==void 0?r:bh,i=kh(e,t);if(i===void 0)return{TAG:"Error",_0:"unknown service: "+t};xh(e,i)&&await kk(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};Sk(e,m,n);let h={};return h.name=i.name,n("dev_services.stopped",h),{TAG:"Ok",_0:m}}async function Tk(e,t){let r=await Oh(e,t,bh);if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=r._0;return un(Sh(e,n.name)),un(wh(e,n.name)),{TAG:"Ok",_0:n}}function Ak(e,t,r){let n=$c(t);if(n===void 0)return;let i=vk(e,n),o;try{o=yn.openSync(i,"r")}catch{return}let a;try{let s=yn.fstatSync(o).size,l=Math.min(s,r),d=Buffer.alloc(l|0);yn.readSync(o,d,0,l|0,s-l),a=d.toString("utf8")}catch{a=void 0}try{yn.closeSync(o)}catch{}return a}function Ok(e){let t=D(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:$1(t),ownerPid:n}}var Ek=`<linzumi_markdown_media_guidance>
181
+ `)}catch{}let b={};Object.entries(process.env).forEach(W=>{b[W[0]]=W[1]}),b.ELECTRON_RUN_AS_NODE="1";let y;try{let W=Gk.spawn(g.command,g.args,{cwd:e.definition.cwd,detached:!0,stdio:["ignore",Number(f),Number(f)],env:b});W.unref(),y={TAG:"Ok",_0:Rr(W.pid)}}catch(W){let V=ee(W);y={TAG:"Error",_0:"spawn failed: "+Ne(V).message}}try{xn.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(W=>{if(!S.includes(W)){S.push(W);return}});let A=e.definition.cwd,R=S.toSorted((W,V)=>W-V),Z=e.definition.restartOnBranchChange,L=v,ae=e.ownerPid,K={name:n,command:i,cwd:A,ports:R,restartOnBranchChange:Z,desiredState:"DesiredRunning",pid:L,ownerPid:ae,startedAtMs:l,updatedAtMs:l,lastBranch:void 0,logPath:d};qk(e.scopeDir,K,r);let oe={};return oe.name=n,oe.pid=v,oe.owner_pid=e.ownerPid,oe.cwd=e.definition.cwd,oe.ports=R.map(W=>W),r("dev_services.started",oe),{TAG:"Ok",_0:K}}async function Dh(e,t,r){let n=r!==void 0?r:Ih,i=zh(e,t);if(i===void 0)return{TAG:"Error",_0:"unknown service: "+t};Nh(e,i)&&await Uk(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};qk(e,m,n);let h={};return h.name=i.name,n("dev_services.stopped",h),{TAG:"Ok",_0:m}}async function Wk(e,t){let r=await Dh(e,t,Ih);if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=r._0;return _n(Mh(e,n.name)),_n(jh(e,n.name)),{TAG:"Ok",_0:n}}function Vk(e,t,r){let n=qc(t);if(n===void 0)return;let i=Dk(e,n),o;try{o=xn.openSync(i,"r")}catch{return}let a;try{let s=xn.fstatSync(o).size,l=Math.min(s,r),d=Buffer.alloc(l|0);xn.readSync(o,d,0,l|0,s-l),a=d.toString("utf8")}catch{a=void 0}try{xn.closeSync(o)}catch{}return a}function Hk(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:CN(t),ownerPid:n}}var Kk=`<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 Z1(e){switch(e){case"All":return!0;case"Coding":case"OnboardingDiscovery":return!1}}function W1(e){return e==="Voice"}function V1(e){return e.trim().replace(new RegExp("^:+"),"").replace(new RegExp(":+$"),"").toLowerCase()}function Pk(){return T.string().min(1).refine(e=>V1(e).length<=64,{message:"Custom emoji shortcode name must be at most 64 characters after trimming surrounding colons."})}function Wt(){return T.string().optional().describe("Workspace slug. Omit to use the authenticated token scope.")}function Cn(){return T.string().optional().describe("Channel slug. Omit to use the authenticated token scope.")}function En(e){if(typeof e=="string")return e}function Rk(e,t,r){let n=to(e[t]);return n!==void 0?n:_r(r+" "+t+" must be an object")}function H1(e){return e!==void 0?Array.isArray(e)?ze(e,t=>{if(typeof t=="string")return t}):[]:[]}function B1(e){return e!==void 0?Array.isArray(e)?ze(e,t=>{if(typeof t=="number")return t}):[]:[]}function Ik(e){if(typeof e=="number")return e}function $k(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=vh(e.record.desiredState),t.liveness=bk(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 K1(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=En(n.name),o=i!==void 0?i:"",a=En(n.command),s=a!==void 0?a:"",l=En(n.cwd),d=await xk({scopeDir:r.scopeDir,definition:{name:o,command:s,cwd:l!==void 0?l:t,ports:B1(n.ports),restartOnBranchChange:se(n.restart_on_branch_change,!0)},ownerPid:r.ownerPid});if(d.TAG==="Ok"){let c=d._0,f=Ik(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=>Th(v|0)))).every(v=>v),m||await ec(250);let _=(await Ah(r.scopeDir)).find(y=>y.record.name===c.name),g={};g.ok=!0;let b;if(_!==void 0)b=$k(_);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."),_n(g)}let u={};return u.ok=!1,u.error=d._0,_n(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=En(n.name),o=i!==void 0?i:"",a=await Oh(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),_n(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 Ah(r.scopeDir),o={};return o.services=i.map(a=>$k(a)),_n(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=En(n.name),o=i!==void 0?i:"",a=Ik(n.max_bytes),s=Ak(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),_n(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=En(n.name),o=i!==void 0?i:"",a=await Tk(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),_n(s)})}function Mk(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=>_n(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",Wt()],["channel",Cn()],["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",Wt()],["channel",Cn()],["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",Wt()],["channel",Cn()],["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",Wt()],["channel",Cn()],["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",Wt()],["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",Wt()],["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 ph(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",Wt()]]),async f=>await ph(d.openUi(di(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",Wt()],["channel",Cn()],["thread_id",f()]]),async p=>await c(d.getCodingJobMetadata(di(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",Wt()],["channel",Cn()],["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(di(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",Wt()],["channel",Cn()],["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(di(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",Wt()],["channel",Cn()],["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(di(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",Wt()],["channel",Cn()],["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(di(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",Wt()],["channel",Cn()],["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(di(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",Wt()],["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=hh(Rk(p,"target","linzumi_upload_files"),o),h;try{h=await pk({client:d,cwd:s,serviceUrl:a,target:m,files:H1(p.files),workspace:En(p.workspace),channel:En(p.channel),body:En(p.body)})}catch(_){return ck(X(_))}return _n(_h(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",Wt()],["channel",Cn()],["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=ro(p);return m.target=hh(Rk(p,"target","linzumi_edit_message"),o),_n(_h(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",Wt()]]),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(di(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(di(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).")],["execution_mode",T.enum(["raw","local_vm"]).optional().describe("Execution placement override (optional).")]]),async f=>await c(d.agentStartCodingJob(di(f,o))));break;case"Coding":case"OnboardingDiscovery":break}switch(Z1(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",Pk().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",Wt()]]),async f=>{let p=En(f.name),m=En(f.file);return _n(await hk({client:d,cwd:s,serviceUrl:a,name:p!==void 0?p:"",file:m!==void 0?m:"",workspace:En(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",Pk().describe("New shortcode name, with or without surrounding colons.")],["workspace",Wt()]]),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=Ek;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",Wt()],["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",Wt()],["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",Wt()],["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"&&W1(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",Wt()],["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=En(f.owner_username),m=p!==void 0?p:i;if(m===void 0)return _r("owner_username is required for linzumi_dm_owner");let h=ro(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",Wt()],["channel",Cn()],["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",Wt()],["channel",Cn()],["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",Wt()],["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",Wt()],["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:K1(e,s,r);case"Coding":case"OnboardingDiscovery":return}}function Eh(e){return e==="Voice"?"voice":"text"}function Y1(e){switch(e){case"All":return"all";case"Coding":return"coding";case"OnboardingDiscovery":return"onboarding-discovery"}}function fd(e){return JSON.stringify(e)}function Mc(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?Eh(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(Y1(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 jk(e){return"["+e.map(fd).join(", ")+"]"}function X1(e){return"{ "+Object.entries(e).map(r=>r[0]+" = "+fd(r[1])).join(", ")+" }"}function zk(e){let t=["-c","mcp_servers."+e.name+".command="+fd(e.command),"-c","mcp_servers."+e.name+".args="+jk(e.args)];return Object.entries(e.env).forEach(r=>{t.push("-c"),t.push("mcp_servers."+e.name+".env."+r[0]+"="+fd(r[1]))}),t}function Q1(e){return["--require","-r","--import","--loader","--experimental-loader"].includes(e)}function eN(e){return["--require=","-r=","--import=","--loader=","--experimental-loader="].some(t=>e.startsWith(t))}function Ch(e,t){for(;;){let r=t,n=e[r];if(n===void 0)return[];if(Q1(n)){let i=e[r+1|0];if(i!==void 0)return[n,i].concat(Ch(e,r+2|0));t=r+1|0;continue}if(eN(n))return[n].concat(Ch(e,r+1|0));t=r+1|0}}function Nk(e,t,r){let n=t!==void 0?t.trim():"";return n===""?{command:"linzumi",argsPrefix:[]}:n.endsWith(".ts")||n.endsWith(".js")?{command:e,argsPrefix:Ch(r,0).concat([n])}:{command:n,argsPrefix:[]}}function Gk(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 Fk(e){let t=Object.entries(e.env).length===0?"":"env = "+X1(e.env)+`
284
+ </linzumi_markdown_media_guidance>`;function FN(e){switch(e){case"All":return!0;case"Coding":case"OnboardingDiscovery":return!1}}function DN(e){return e==="Voice"}function qN(e){return e.trim().replace(new RegExp("^:+"),"").replace(new RegExp(":+$"),"").toLowerCase()}function Jk(){return T.string().min(1).refine(e=>qN(e).length<=64,{message:"Custom emoji shortcode name must be at most 64 characters after trimming surrounding colons."})}function Zt(){return T.string().optional().describe("Workspace slug. Omit to use the authenticated token scope.")}function In(){return T.string().optional().describe("Channel slug. Omit to use the authenticated token scope.")}function $n(e){if(typeof e=="string")return e}function Yk(e,t,r){let n=io(e[t]);return n!==void 0?n:gr(r+" "+t+" must be an object")}function LN(e){return e!==void 0?Array.isArray(e)?ze(e,t=>{if(typeof t=="string")return t}):[]:[]}function UN(e){return e!==void 0?Array.isArray(e)?ze(e,t=>{if(typeof t=="number")return t}):[]:[]}function Xk(e){if(typeof e=="number")return e}function Qk(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=$h(e.record.desiredState),t.liveness=Fk(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 ZN(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=$n(n.name),o=i!==void 0?i:"",a=$n(n.command),s=a!==void 0?a:"",l=$n(n.cwd),d=await Zk({scopeDir:r.scopeDir,definition:{name:o,command:s,cwd:l!==void 0?l:t,ports:UN(n.ports),restartOnBranchChange:de(n.restart_on_branch_change,!0)},ownerPid:r.ownerPid});if(d.TAG==="Ok"){let c=d._0,f=Xk(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=>Gh(v|0)))).every(v=>v),m||await lc(250);let _=(await Fh(r.scopeDir)).find(y=>y.record.name===c.name),g={};g.ok=!0;let b;if(_!==void 0)b=Qk(_);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."),wn(g)}let u={};return u.ok=!1,u.error=d._0,wn(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=$n(n.name),o=i!==void 0?i:"",a=await Dh(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),wn(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 Fh(r.scopeDir),o={};return o.services=i.map(a=>Qk(a)),wn(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=$n(n.name),o=i!==void 0?i:"",a=Xk(n.max_bytes),s=Vk(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),wn(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=$n(n.name),o=i!==void 0?i:"",a=await Wk(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),wn(s)})}function ex(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=>wn(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",Zt()],["channel",In()],["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",Zt()],["channel",In()],["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",Zt()],["channel",In()],["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",Zt()],["channel",In()],["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",Zt()],["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",Zt()],["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 Oh(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",Zt()]]),async f=>await Oh(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",Zt()],["channel",In()],["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",Zt()],["channel",In()],["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",Zt()],["channel",In()],["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",Zt()],["channel",In()],["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",Zt()],["channel",In()],["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",Zt()],["channel",In()],["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",Zt()],["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=Ch(Yk(p,"target","linzumi_upload_files"),o),h;try{h=await Mk({client:d,cwd:s,serviceUrl:a,target:m,files:LN(p.files),workspace:$n(p.workspace),channel:$n(p.channel),body:$n(p.body)})}catch(_){return Rk(ee(_))}return wn(Eh(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",Zt()],["channel",In()],["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=Ch(Yk(p,"target","linzumi_edit_message"),o),wn(Eh(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",Zt()]]),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).")],["execution_mode",T.enum(["raw","local_vm"]).optional().describe("Execution placement override (optional).")]]),async f=>await c(d.agentStartCodingJob(mi(f,o))));break;case"Coding":case"OnboardingDiscovery":break}switch(FN(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",Jk().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",Zt()]]),async f=>{let p=$n(f.name),m=$n(f.file);return wn(await jk({client:d,cwd:s,serviceUrl:a,name:p!==void 0?p:"",file:m!==void 0?m:"",workspace:$n(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",Jk().describe("New shortcode name, with or without surrounding colons.")],["workspace",Zt()]]),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=Kk;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",Zt()],["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",Zt()],["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",Zt()],["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"&&DN(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",Zt()],["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=$n(f.owner_username),m=p!==void 0?p:i;if(m===void 0)return gr("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",Zt()],["channel",In()],["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",Zt()],["channel",In()],["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",Zt()],["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",Zt()],["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:ZN(e,s,r);case"Coding":case"OnboardingDiscovery":return}}function Lh(e){return e==="Voice"?"voice":"text"}function VN(e){switch(e){case"All":return"all";case"Coding":return"coding";case"OnboardingDiscovery":return"onboarding-discovery"}}function vd(e){return JSON.stringify(e)}function Ws(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?Lh(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(VN(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 tx(e){return"["+e.map(vd).join(", ")+"]"}function HN(e){return"{ "+Object.entries(e).map(r=>r[0]+" = "+vd(r[1])).join(", ")+" }"}function rx(e){let t=["-c","mcp_servers."+e.name+".command="+vd(e.command),"-c","mcp_servers."+e.name+".args="+tx(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 BN(e){return["--require","-r","--import","--loader","--experimental-loader"].includes(e)}function KN(e){return["--require=","-r=","--import=","--loader=","--experimental-loader="].some(t=>e.startsWith(t))}function qh(e,t){for(;;){let r=t,n=e[r];if(n===void 0)return[];if(BN(n)){let i=e[r+1|0];if(i!==void 0)return[n,i].concat(qh(e,r+2|0));t=r+1|0;continue}if(KN(n))return[n].concat(qh(e,r+1|0));t=r+1|0}}function Lc(e,t,r){let n=t!==void 0?t.trim():"";return n===""?{command:"linzumi",argsPrefix:[]}:n.endsWith(".ts")||n.endsWith(".js")?{command:e,argsPrefix:qh(r,0).concat([n])}:{command:n,argsPrefix:[]}}function nx(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 ix(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 ox(e){let t=Object.entries(e.env).length===0?"":"env = "+HN(e.env)+`
286
286
  `;return"[mcp_servers."+e.name+`]
287
- command = `+fd(e.command)+`
288
- args = `+jk(e.args)+`
289
- `+t}function tN(e){return typeof e==="undefined"?!0:e===null}function Rh(e){let t=rn(e.serviceUrl);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0,n=e.fetchImpl,i=n!==void 0?n:Qu,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?Eh(s):"text",d=async(u,c,f)=>{let p=Zi(c,r),m;m=p.TAG==="Ok"?p._0:_r(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(z=>{let H=z[1];if(!tN(H)){R.set(z[0],String(H));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 _r("Linzumi MCP API returned non-object JSON from "+c);let v=g.ok,S=se(y.ok,!0),A=0;if(v){if(S)return y;A=1}else A=1;if(A===1){let R=y.error,z,H=0;typeof R=="string"?z=R:H=2,H===2&&(z="HTTP "+g.status.toString());let ce=y.detail,ne=typeof ce=="string"?" detail="+ce:"";return _r("Linzumi MCP API "+c+" failed: "+z+ne)}};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 nN=Object.freeze({status:"aborted"});function j(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 no=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},jc={};function Pn(e){return e&&Object.assign(jc,e),jc}var _t={};vp(_t,{BIGINT_FORMAT_RANGES:()=>qk,Class:()=>$h,NUMBER_FORMAT_RANGES:()=>Dh,aborted:()=>Ia,allowsEval:()=>Nh,assert:()=>lN,assertEqual:()=>iN,assertIs:()=>aN,assertNever:()=>sN,assertNotEqual:()=>oN,assignProp:()=>zh,cached:()=>hd,captureStackTrace:()=>Nc,cleanEnum:()=>SN,cleanRegex:()=>gd,clone:()=>Rn,createTransparentProxy:()=>pN,defineLazy:()=>Vt,esc:()=>Ra,escapeRegex:()=>Oo,extend:()=>gN,finalizeIssue:()=>ui,floatSafeRemainder:()=>jh,getElementAtPath:()=>dN,getEnumValues:()=>pd,getLengthableOrigin:()=>yd,getParsedType:()=>mN,getSizableOrigin:()=>Lk,isObject:()=>Fs,isPlainObject:()=>Ds,issue:()=>qh,joinValues:()=>zc,jsonStringifyReplacer:()=>Mh,merge:()=>yN,normalizeParams:()=>Me,nullish:()=>_d,numKeys:()=>fN,omit:()=>_N,optionalKeys:()=>Fh,partial:()=>bN,pick:()=>hN,prefixIssues:()=>Ii,primitiveTypes:()=>Dk,promiseAllObject:()=>uN,propertyKeyTypes:()=>Gh,randomString:()=>cN,required:()=>vN,stringifyPrimitive:()=>Gc,unwrapMessage:()=>md});function iN(e){return e}function oN(e){return e}function aN(e){}function sN(e){throw new Error}function lN(e){}function pd(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 zc(e,t="|"){return e.map(r=>Gc(r)).join(t)}function Mh(e,t){return typeof t=="bigint"?t.toString():t}function hd(e){return{get value(){{let r=e();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function _d(e){return e==null}function gd(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function jh(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 Vt(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 zh(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function dN(e,t){return t?t.reduce((r,n)=>r?.[n],e):e}function uN(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 cN(e=10){let t="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<e;n++)r+=t[Math.floor(Math.random()*t.length)];return r}function Ra(e){return JSON.stringify(e)}var Nc=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{};function Fs(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var Nh=hd(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let e=Function;return new e(""),!0}catch{return!1}});function Ds(e){if(Fs(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;let r=t.prototype;return!(Fs(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function fN(e){let t=0;for(let r in e)Object.prototype.hasOwnProperty.call(e,r)&&t++;return t}var mN=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}`)}},Gh=new Set(["string","number","symbol"]),Dk=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Oo(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Rn(e,t,r){let n=new e._zod.constr(t??e._zod.def);return(!t||r?.parent)&&(n._zod.parent=e),n}function Me(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 pN(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 Gc(e){return typeof e=="bigint"?e.toString()+"n":typeof e=="string"?`"${e}"`:`${e}`}function Fh(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Dh={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]},qk={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function hN(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 Rn(e,{...e._zod.def,shape:r,checks:[]})}function _N(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 Rn(e,{...e._zod.def,shape:r,checks:[]})}function gN(e,t){if(!Ds(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 zh(this,"shape",n),n},checks:[]};return Rn(e,r)}function yN(e,t){return Rn(e,{...e._zod.def,get shape(){let r={...e._zod.def.shape,...t._zod.def.shape};return zh(this,"shape",r),r},catchall:t._zod.def.catchall,checks:[]})}function bN(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 Rn(t,{...t._zod.def,shape:i,checks:[]})}function vN(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 Rn(t,{...t._zod.def,shape:i,checks:[]})}function Ia(e,t=0){for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function Ii(e,t){return t.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function md(e){return typeof e=="string"?e:e?.message}function ui(e,t,r){let n={...e,path:e.path??[]};if(!e.message){let i=md(e.inst?._zod.def?.error?.(e))??md(t?.error?.(e))??md(r.customError?.(e))??md(r.localeError?.(e))??"Invalid input";n.message=i}return delete n.inst,delete n.continue,t?.reportInput||delete n.input,n}function Lk(e){return e instanceof Set?"set":e instanceof Map?"map":e instanceof File?"file":"unknown"}function yd(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function qh(...e){let[t,r,n]=e;return typeof t=="string"?{message:t,code:"custom",input:r,inst:n}:{...t}}function SN(e){return Object.entries(e).filter(([t,r])=>Number.isNaN(Number.parseInt(t,10))).map(t=>t[1])}var $h=class{constructor(...t){}};var Uk=(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,Mh,2)},enumerable:!0}),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Fc=j("$ZodError",Uk),bd=j("$ZodError",Uk,{Parent:Error});function Lh(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 Uh(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 Zh=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 no;if(a.issues.length){let s=new(i?.Err??e)(a.issues.map(l=>ui(l,o,Pn())));throw Nc(s,i?.callee),s}return a.value},Wh=Zh(bd),Vh=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=>ui(l,o,Pn())));throw Nc(s,i?.callee),s}return a.value},Hh=Vh(bd),Bh=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 no;return o.issues.length?{success:!1,error:new(e??Fc)(o.issues.map(a=>ui(a,i,Pn())))}:{success:!0,data:o.value}},$a=Bh(bd),Kh=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=>ui(a,i,Pn())))}:{success:!0,data:o.value}},Ma=Kh(bd);var Zk=/^[cC][^\s-]{8,}$/,Wk=/^[0-9a-z]+$/,Vk=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Hk=/^[0-9a-vA-V]{20}$/,Bk=/^[A-Za-z0-9]{27}$/,Kk=/^[a-zA-Z0-9_-]{21}$/,Jk=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Yk=/^([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})$/,Jh=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 Xk=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var kN="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Qk(){return new RegExp(kN,"u")}var ex=/^(?:(?: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])$/,tx=/^(([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})$/,rx=/^((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])$/,nx=/^(([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}=))?$/,Yh=/^[A-Za-z0-9_-]*$/,ox=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var ax=/^\+(?:[0-9]){6,14}[0-9]$/,sx="(?:(?:\\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])))",lx=new RegExp(`^${sx}$`);function dx(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 ux(e){return new RegExp(`^${dx(e)}$`)}function cx(e){let t=dx({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(`^${sx}T(?:${n})$`)}var fx=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var mx=/^\d+$/,px=/^-?\d+(?:\.\d+)?/i,hx=/true|false/i,_x=/null/i;var gx=/^[^A-Z]*$/,yx=/^[^a-z]*$/;var Dr=j("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),bx={number:"number",bigint:"bigint",object:"date"},Xh=j("$ZodCheckLessThan",(e,t)=>{Dr.init(e,t);let r=bx[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})}}),Qh=j("$ZodCheckGreaterThan",(e,t)=>{Dr.init(e,t);let r=bx[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})}}),vx=j("$ZodCheckMultipleOf",(e,t)=>{Dr.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):jh(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})}}),Sx=j("$ZodCheckNumberFormat",(e,t)=>{Dr.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[i,o]=Dh[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=mx)}),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 wx=j("$ZodCheckMaxLength",(e,t)=>{var r;Dr.init(e,t),(r=e._zod.def).when??(r.when=n=>{let i=n.value;return!_d(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=yd(i);n.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),kx=j("$ZodCheckMinLength",(e,t)=>{var r;Dr.init(e,t),(r=e._zod.def).when??(r.when=n=>{let i=n.value;return!_d(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=yd(i);n.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),xx=j("$ZodCheckLengthEquals",(e,t)=>{var r;Dr.init(e,t),(r=e._zod.def).when??(r.when=n=>{let i=n.value;return!_d(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=yd(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})}}),vd=j("$ZodCheckStringFormat",(e,t)=>{var r,n;Dr.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=()=>{})}),Tx=j("$ZodCheckRegex",(e,t)=>{vd.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})}}),Ax=j("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=gx),vd.init(e,t)}),Ox=j("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=yx),vd.init(e,t)}),Cx=j("$ZodCheckIncludes",(e,t)=>{Dr.init(e,t);let r=Oo(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})}}),Ex=j("$ZodCheckStartsWith",(e,t)=>{Dr.init(e,t);let r=new RegExp(`^${Oo(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})}}),Px=j("$ZodCheckEndsWith",(e,t)=>{Dr.init(e,t);let r=new RegExp(`.*${Oo(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 Rx=j("$ZodCheckOverwrite",(e,t)=>{Dr.init(e,t),e._zod.check=r=>{r.value=t.tx(r.value)}});var qc=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(`
287
+ command = `+vd(e.command)+`
288
+ args = `+tx(e.args)+`
289
+ `+t}function JN(e){return typeof e==="undefined"?!0:e===null}function Uh(e){let t=an(e.serviceUrl);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0,n=e.fetchImpl,i=n!==void 0?n:sc,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?Lh(s):"text",d=async(u,c,f)=>{let p=Hi(c,r),m;m=p.TAG==="Ok"?p._0:gr(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(Z=>{let L=Z[1];if(!JN(L)){R.set(Z[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 gr("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,Z,L=0;typeof R=="string"?Z=R:L=2,L===2&&(Z="HTTP "+g.status.toString());let ae=y.detail,U=typeof ae=="string"?" detail="+ae:"";return gr("Linzumi MCP API "+c+" failed: "+Z+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 XN=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.")}},Zc={};function Mn(e){return e&&Object.assign(Zc,e),Zc}var ht={};$p(ht,{BIGINT_FORMAT_RANGES:()=>sx,Class:()=>Wh,NUMBER_FORMAT_RANGES:()=>Xh,aborted:()=>ja,allowsEval:()=>Kh,assert:()=>nG,assertEqual:()=>QN,assertIs:()=>tG,assertNever:()=>rG,assertNotEqual:()=>eG,assignProp:()=>Bh,cached:()=>kd,captureStackTrace:()=>Vc,cleanEnum:()=>_G,cleanRegex:()=>Td,clone:()=>jn,createTransparentProxy:()=>dG,defineLazy:()=>Wt,esc:()=>Ma,escapeRegex:()=>Po,extend:()=>fG,finalizeIssue:()=>pi,floatSafeRemainder:()=>Hh,getElementAtPath:()=>iG,getEnumValues:()=>wd,getLengthableOrigin:()=>Ad,getParsedType:()=>lG,getSizableOrigin:()=>lx,isObject:()=>Vs,isPlainObject:()=>Hs,issue:()=>Qh,joinValues:()=>Wc,jsonStringifyReplacer:()=>Vh,merge:()=>mG,normalizeParams:()=>Me,nullish:()=>xd,numKeys:()=>sG,omit:()=>cG,optionalKeys:()=>Yh,partial:()=>pG,pick:()=>uG,prefixIssues:()=>ji,primitiveTypes:()=>ax,promiseAllObject:()=>oG,propertyKeyTypes:()=>Jh,randomString:()=>aG,required:()=>hG,stringifyPrimitive:()=>Hc,unwrapMessage:()=>Sd});function QN(e){return e}function eG(e){return e}function tG(e){}function rG(e){throw new Error}function nG(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 Wc(e,t="|"){return e.map(r=>Hc(r)).join(t)}function Vh(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 Hh(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 Wt(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 Bh(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function iG(e,t){return t?t.reduce((r,n)=>r?.[n],e):e}function oG(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 aG(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 Vc=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{};function Vs(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var Kh=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 sG(e){let t=0;for(let r in e)Object.prototype.hasOwnProperty.call(e,r)&&t++;return t}var lG=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}`)}},Jh=new Set(["string","number","symbol"]),ax=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Po(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function jn(e,t,r){let n=new e._zod.constr(t??e._zod.def);return(!t||r?.parent)&&(n._zod.parent=e),n}function Me(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 dG(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 Hc(e){return typeof e=="bigint"?e.toString()+"n":typeof e=="string"?`"${e}"`:`${e}`}function Yh(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Xh={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]},sx={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function uG(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 jn(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 jn(e,{...e._zod.def,shape:r,checks:[]})}function fG(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 Bh(this,"shape",n),n},checks:[]};return jn(e,r)}function mG(e,t){return jn(e,{...e._zod.def,get shape(){let r={...e._zod.def.shape,...t._zod.def.shape};return Bh(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 jn(t,{...t._zod.def,shape:i,checks:[]})}function hG(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 jn(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 lx(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 Qh(...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 Wh=class{constructor(...t){}};var dx=(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,Vh,2)},enumerable:!0}),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Bc=z("$ZodError",dx),Od=z("$ZodError",dx,{Parent:Error});function e_(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 t_(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 r_=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,Mn())));throw Vc(s,i?.callee),s}return a.value},n_=r_(Od),i_=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,Mn())));throw Vc(s,i?.callee),s}return a.value},o_=i_(Od),a_=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??Bc)(o.issues.map(a=>pi(a,i,Mn())))}:{success:!0,data:o.value}},za=a_(Od),s_=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,Mn())))}:{success:!0,data:o.value}},Na=s_(Od);var ux=/^[cC][^\s-]{8,}$/,cx=/^[0-9a-z]+$/,fx=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,mx=/^[0-9a-vA-V]{20}$/,px=/^[A-Za-z0-9]{27}$/,hx=/^[a-zA-Z0-9_-]{21}$/,_x=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var gx=/^([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})$/,l_=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 yx=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var yG="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function bx(){return new RegExp(yG,"u")}var vx=/^(?:(?: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])$/,Sx=/^(([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})$/,wx=/^((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])$/,kx=/^(([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])$/,xx=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,d_=/^[A-Za-z0-9_-]*$/,Tx=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Ax=/^\+(?:[0-9]){6,14}[0-9]$/,Ox="(?:(?:\\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])))",Cx=new RegExp(`^${Ox}$`);function Ex(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 Px(e){return new RegExp(`^${Ex(e)}$`)}function Rx(e){let t=Ex({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(`^${Ox}T(?:${n})$`)}var Ix=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var $x=/^\d+$/,Mx=/^-?\d+(?:\.\d+)?/i,jx=/true|false/i,zx=/null/i;var Nx=/^[^A-Z]*$/,Gx=/^[^a-z]*$/;var Lr=z("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),Fx={number:"number",bigint:"bigint",object:"date"},u_=z("$ZodCheckLessThan",(e,t)=>{Lr.init(e,t);let r=Fx[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})}}),c_=z("$ZodCheckGreaterThan",(e,t)=>{Lr.init(e,t);let r=Fx[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})}}),Dx=z("$ZodCheckMultipleOf",(e,t)=>{Lr.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):Hh(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})}}),qx=z("$ZodCheckNumberFormat",(e,t)=>{Lr.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[i,o]=Xh[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=$x)}),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 Lx=z("$ZodCheckMaxLength",(e,t)=>{var r;Lr.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})}}),Ux=z("$ZodCheckMinLength",(e,t)=>{var r;Lr.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})}}),Zx=z("$ZodCheckLengthEquals",(e,t)=>{var r;Lr.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;Lr.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=()=>{})}),Wx=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})}}),Vx=z("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Nx),Cd.init(e,t)}),Hx=z("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Gx),Cd.init(e,t)}),Bx=z("$ZodCheckIncludes",(e,t)=>{Lr.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})}}),Kx=z("$ZodCheckStartsWith",(e,t)=>{Lr.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})}}),Jx=z("$ZodCheckEndsWith",(e,t)=>{Lr.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 Yx=z("$ZodCheckOverwrite",(e,t)=>{Lr.init(e,t),e._zod.check=r=>{r.value=t.tx(r.value)}});var Jc=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 $x={major:4,minor:0,patch:0};var Nt=j("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=$x;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=Ia(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 no;if(d||f instanceof Promise)d=(d??Promise.resolve()).then(async()=>{await f,o.issues.length!==c&&(l||(l=Ia(o,c)))});else{if(o.issues.length===c)continue;l||(l=Ia(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 no;return s.then(l=>i(l,n,a))}return i(s,n,a)}}e["~standard"]={validate:i=>{try{let o=$a(e,i);return o.success?{value:o.data}:{issues:o.error?.issues}}catch{return Ma(e,i).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}}),Sd=j("$ZodString",(e,t)=>{Nt.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??fx(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}}),Ht=j("$ZodStringFormat",(e,t)=>{vd.init(e,t),Sd.init(e,t)}),t_=j("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Yk),Ht.init(e,t)}),r_=j("$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=Jh(n))}else t.pattern??(t.pattern=Jh());Ht.init(e,t)}),n_=j("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Xk),Ht.init(e,t)}),i_=j("$ZodURL",(e,t)=>{Ht.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:ox.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})}}}),o_=j("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Qk()),Ht.init(e,t)}),a_=j("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Kk),Ht.init(e,t)}),s_=j("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Zk),Ht.init(e,t)}),l_=j("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Wk),Ht.init(e,t)}),d_=j("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Vk),Ht.init(e,t)}),u_=j("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Hk),Ht.init(e,t)}),c_=j("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Bk),Ht.init(e,t)}),Ux=j("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=cx(t)),Ht.init(e,t)}),Zx=j("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=lx),Ht.init(e,t)}),Wx=j("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=ux(t)),Ht.init(e,t)}),Vx=j("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Jk),Ht.init(e,t)}),f_=j("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=ex),Ht.init(e,t),e._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),m_=j("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=tx),Ht.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})}}}),p_=j("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=rx),Ht.init(e,t)}),h_=j("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=nx),Ht.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 Hx(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var __=j("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=ix),Ht.init(e,t),e._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),e._zod.check=r=>{Hx(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function xN(e){if(!Yh.test(e))return!1;let t=e.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return Hx(r)}var g_=j("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Yh),Ht.init(e,t),e._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),e._zod.check=r=>{xN(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),y_=j("$ZodE164",(e,t)=>{t.pattern??(t.pattern=ax),Ht.init(e,t)});function TN(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 b_=j("$ZodJWT",(e,t)=>{Ht.init(e,t),e._zod.check=r=>{TN(r.value,t.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var Uc=j("$ZodNumber",(e,t)=>{Nt.init(e,t),e._zod.pattern=e._zod.bag.pattern??px,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}}),v_=j("$ZodNumber",(e,t)=>{Sx.init(e,t),Uc.init(e,t)}),S_=j("$ZodBoolean",(e,t)=>{Nt.init(e,t),e._zod.pattern=hx,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 w_=j("$ZodNull",(e,t)=>{Nt.init(e,t),e._zod.pattern=_x,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 k_=j("$ZodUnknown",(e,t)=>{Nt.init(e,t),e._zod.parse=r=>r}),x_=j("$ZodNever",(e,t)=>{Nt.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function Mx(e,t,r){e.issues.length&&t.issues.push(...Ii(r,e.issues)),t.value[r]=e.value}var T_=j("$ZodArray",(e,t)=>{Nt.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=>Mx(d,r,a))):Mx(l,r,a)}return o.length?Promise.all(o).then(()=>r):r}});function Lc(e,t,r){e.issues.length&&t.issues.push(...Ii(r,e.issues)),t.value[r]=e.value}function jx(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(...Ii(r,e.issues)):e.value===void 0?r in n&&(t.value[r]=void 0):t.value[r]=e.value}var Zc=j("$ZodObject",(e,t)=>{Nt.init(e,t);let r=hd(()=>{let c=Object.keys(t.shape);for(let p of c)if(!(t.shape[p]instanceof Nt))throw new Error(`Invalid element at key "${p}": expected a Zod schema`);let f=Fh(t.shape);return{shape:t.shape,keys:c,keySet:new Set(c),numKeys:c.length,optionalKeys:new Set(f)}});Vt(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 qc(["shape","payload","ctx"]),p=r.value,m=b=>{let y=Ra(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=Ra(b);f.write(`
291
+ `))}};var Qx={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=Qx;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()??Ix(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}}),Vt=z("$ZodStringFormat",(e,t)=>{Cd.init(e,t),Ed.init(e,t)}),m_=z("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=gx),Vt.init(e,t)}),p_=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=l_(n))}else t.pattern??(t.pattern=l_());Vt.init(e,t)}),h_=z("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=yx),Vt.init(e,t)}),__=z("$ZodURL",(e,t)=>{Vt.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:Tx.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})}}}),g_=z("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=bx()),Vt.init(e,t)}),y_=z("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=hx),Vt.init(e,t)}),b_=z("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=ux),Vt.init(e,t)}),v_=z("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=cx),Vt.init(e,t)}),S_=z("$ZodULID",(e,t)=>{t.pattern??(t.pattern=fx),Vt.init(e,t)}),w_=z("$ZodXID",(e,t)=>{t.pattern??(t.pattern=mx),Vt.init(e,t)}),k_=z("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=px),Vt.init(e,t)}),dT=z("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Rx(t)),Vt.init(e,t)}),uT=z("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Cx),Vt.init(e,t)}),cT=z("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Px(t)),Vt.init(e,t)}),fT=z("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=_x),Vt.init(e,t)}),x_=z("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=vx),Vt.init(e,t),e._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),T_=z("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Sx),Vt.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})}}}),A_=z("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=wx),Vt.init(e,t)}),O_=z("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=kx),Vt.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 mT(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var C_=z("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=xx),Vt.init(e,t),e._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),e._zod.check=r=>{mT(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function bG(e){if(!d_.test(e))return!1;let t=e.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return mT(r)}var E_=z("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=d_),Vt.init(e,t),e._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),e._zod.check=r=>{bG(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),P_=z("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Ax),Vt.init(e,t)});function vG(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 R_=z("$ZodJWT",(e,t)=>{Vt.init(e,t),e._zod.check=r=>{vG(r.value,t.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var Xc=z("$ZodNumber",(e,t)=>{Mt.init(e,t),e._zod.pattern=e._zod.bag.pattern??Mx,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}}),I_=z("$ZodNumber",(e,t)=>{qx.init(e,t),Xc.init(e,t)}),$_=z("$ZodBoolean",(e,t)=>{Mt.init(e,t),e._zod.pattern=jx,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 M_=z("$ZodNull",(e,t)=>{Mt.init(e,t),e._zod.pattern=zx,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 j_=z("$ZodUnknown",(e,t)=>{Mt.init(e,t),e._zod.parse=r=>r}),z_=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 eT(e,t,r){e.issues.length&&t.issues.push(...ji(r,e.issues)),t.value[r]=e.value}var N_=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=>eT(d,r,a))):eT(l,r,a)}return o.length?Promise.all(o).then(()=>r):r}});function Yc(e,t,r){e.issues.length&&t.issues.push(...ji(r,e.issues)),t.value[r]=e.value}function tT(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 Qc=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=Yh(t.shape);return{shape:t.shape,keys:c,keySet:new Set(c),numKeys:c.length,optionalKeys:new Set(f)}});Wt(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 Jc(["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) {
@@ -310,85 +310,91 @@ args = `+jk(e.args)+`
310
310
  `)}else{let y=h[b];f.write(`const ${y} = ${m(b)};`),f.write(`
311
311
  if (${y}.issues.length) payload.issues = payload.issues.concat(${y}.issues.map(iss => ({
312
312
  ...iss,
313
- path: iss.path ? [${Ra(b)}, ...iss.path] : [${Ra(b)}]
314
- })));`),f.write(`newResult[${Ra(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=Fs,a=!jc.jitless,l=a&&Nh.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(z=>R?jx(z,c,v,p):Lc(z,c,v))):R?jx(A,c,v,p):Lc(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=>Lc(S,c,y))):Lc(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 zx(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=>ui(o,n,Pn())))}),t}var Wc=j("$ZodUnion",(e,t)=>{Nt.init(e,t),Vt(e._zod,"optin",()=>t.options.some(r=>r._zod.optin==="optional")?"optional":void 0),Vt(e._zod,"optout",()=>t.options.some(r=>r._zod.optout==="optional")?"optional":void 0),Vt(e._zod,"values",()=>{if(t.options.every(r=>r._zod.values))return new Set(t.options.flatMap(r=>Array.from(r._zod.values)))}),Vt(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=>gd(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=>zx(a,r,e,n)):zx(o,r,e,n)}}),A_=j("$ZodDiscriminatedUnion",(e,t)=>{Wc.init(e,t);let r=e._zod.parse;Vt(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=hd(()=>{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(!Fs(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)}}),O_=j("$ZodIntersection",(e,t)=>{Nt.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])=>Nx(r,l,d)):Nx(r,o,a)}});function e_(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(Ds(e)&&Ds(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=e_(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=e_(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 Nx(e,t,r){if(t.issues.length&&e.issues.push(...t.issues),r.issues.length&&e.issues.push(...r.issues),Ia(e))return e;let n=e_(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 C_=j("$ZodRecord",(e,t)=>{Nt.init(e,t),e._zod.parse=(r,n)=>{let i=r.value;if(!Ds(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(...Ii(l,u.issues)),r.value[l]=u.value})):(d.issues.length&&r.issues.push(...Ii(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=>ui(d,n,Pn())),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(...Ii(a,d.issues)),r.value[s.value]=d.value})):(l.issues.length&&r.issues.push(...Ii(a,l.issues)),r.value[s.value]=l.value)}}return o.length?Promise.all(o).then(()=>r):r}});var E_=j("$ZodEnum",(e,t)=>{Nt.init(e,t);let r=pd(t.entries);e._zod.values=new Set(r),e._zod.pattern=new RegExp(`^(${r.filter(n=>Gh.has(typeof n)).map(n=>typeof n=="string"?Oo(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}}),P_=j("$ZodLiteral",(e,t)=>{Nt.init(e,t),e._zod.values=new Set(t.values),e._zod.pattern=new RegExp(`^(${t.values.map(r=>typeof r=="string"?Oo(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 R_=j("$ZodTransform",(e,t)=>{Nt.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 no;return r.value=i,r}}),I_=j("$ZodOptional",(e,t)=>{Nt.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Vt(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Vt(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${gd(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("$ZodNullable",(e,t)=>{Nt.init(e,t),Vt(e._zod,"optin",()=>t.innerType._zod.optin),Vt(e._zod,"optout",()=>t.innerType._zod.optout),Vt(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${gd(r.source)}|null)$`):void 0}),Vt(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)}),M_=j("$ZodDefault",(e,t)=>{Nt.init(e,t),e._zod.optin="optional",Vt(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=>Gx(o,t)):Gx(i,t)}});function Gx(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var j_=j("$ZodPrefault",(e,t)=>{Nt.init(e,t),e._zod.optin="optional",Vt(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))}),z_=j("$ZodNonOptional",(e,t)=>{Nt.init(e,t),Vt(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=>Fx(o,e)):Fx(i,e)}});function Fx(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 N_=j("$ZodCatch",(e,t)=>{Nt.init(e,t),e._zod.optin="optional",Vt(e._zod,"optout",()=>t.innerType._zod.optout),Vt(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=>ui(a,n,Pn()))},input:r.value}),r.issues=[]),r)):(r.value=i.value,i.issues.length&&(r.value=t.catchValue({...r,error:{issues:i.issues.map(o=>ui(o,n,Pn()))},input:r.value}),r.issues=[]),r)}});var G_=j("$ZodPipe",(e,t)=>{Nt.init(e,t),Vt(e._zod,"values",()=>t.in._zod.values),Vt(e._zod,"optin",()=>t.in._zod.optin),Vt(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=>Dx(o,t,n)):Dx(i,t,n)}});function Dx(e,t,r){return Ia(e)?e:t.out._zod.run({value:e.value,issues:e.issues},r)}var F_=j("$ZodReadonly",(e,t)=>{Nt.init(e,t),Vt(e._zod,"propValues",()=>t.innerType._zod.propValues),Vt(e._zod,"values",()=>t.innerType._zod.values),Vt(e._zod,"optin",()=>t.innerType._zod.optin),Vt(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(qx):qx(i)}});function qx(e){return e.value=Object.freeze(e.value),e}var D_=j("$ZodCustom",(e,t)=>{Dr.init(e,t),Nt.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=>Lx(o,r,n,e));Lx(i,r,n,e)}});function Lx(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(qh(i))}}var AN=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},ON=()=>{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 ${AN(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Gc(n.values[0])}`:`Invalid option: expected one of ${zc(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":""}: ${zc(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 Bx(){return{localeError:ON()}}var wd=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 Kx(){return new wd}var Co=Kx();function q_(e,t){return new e({type:"string",...Me(t)})}function L_(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...Me(t)})}function Vc(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...Me(t)})}function U_(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...Me(t)})}function Z_(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...Me(t)})}function W_(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...Me(t)})}function V_(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...Me(t)})}function H_(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...Me(t)})}function B_(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...Me(t)})}function K_(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...Me(t)})}function J_(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...Me(t)})}function Y_(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...Me(t)})}function X_(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...Me(t)})}function Q_(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...Me(t)})}function eg(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...Me(t)})}function tg(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...Me(t)})}function rg(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...Me(t)})}function ng(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...Me(t)})}function ig(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...Me(t)})}function og(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...Me(t)})}function ag(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...Me(t)})}function sg(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...Me(t)})}function lg(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...Me(t)})}function Jx(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Me(t)})}function Yx(e,t){return new e({type:"string",format:"date",check:"string_format",...Me(t)})}function Xx(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...Me(t)})}function Qx(e,t){return new e({type:"string",format:"duration",check:"string_format",...Me(t)})}function dg(e,t){return new e({type:"number",checks:[],...Me(t)})}function ug(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...Me(t)})}function cg(e,t){return new e({type:"boolean",...Me(t)})}function fg(e,t){return new e({type:"null",...Me(t)})}function mg(e){return new e({type:"unknown"})}function pg(e,t){return new e({type:"never",...Me(t)})}function Hc(e,t){return new Xh({check:"less_than",...Me(t),value:e,inclusive:!1})}function kd(e,t){return new Xh({check:"less_than",...Me(t),value:e,inclusive:!0})}function Bc(e,t){return new Qh({check:"greater_than",...Me(t),value:e,inclusive:!1})}function xd(e,t){return new Qh({check:"greater_than",...Me(t),value:e,inclusive:!0})}function Kc(e,t){return new vx({check:"multiple_of",...Me(t),value:e})}function Jc(e,t){return new wx({check:"max_length",...Me(t),maximum:e})}function qs(e,t){return new kx({check:"min_length",...Me(t),minimum:e})}function Yc(e,t){return new xx({check:"length_equals",...Me(t),length:e})}function hg(e,t){return new Tx({check:"string_format",format:"regex",...Me(t),pattern:e})}function _g(e){return new Ax({check:"string_format",format:"lowercase",...Me(e)})}function gg(e){return new Ox({check:"string_format",format:"uppercase",...Me(e)})}function yg(e,t){return new Cx({check:"string_format",format:"includes",...Me(t),includes:e})}function bg(e,t){return new Ex({check:"string_format",format:"starts_with",...Me(t),prefix:e})}function vg(e,t){return new Px({check:"string_format",format:"ends_with",...Me(t),suffix:e})}function ja(e){return new Rx({check:"overwrite",tx:e})}function Sg(e){return ja(t=>t.normalize(e))}function wg(){return ja(e=>e.trim())}function kg(){return ja(e=>e.toLowerCase())}function xg(){return ja(e=>e.toUpperCase())}function eT(e,t,r){return new e({type:"array",element:t,...Me(r)})}function Tg(e,t,r){let n=Me(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function Ag(e,t,r){return new e({type:"custom",check:"custom",fn:t,...Me(r)})}var Xc=class{constructor(t){this.counter=0,this.metadataRegistry=t?.metadata??Co,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=pd(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"&&Pr(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>
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=!Zc.jitless,l=a&&Kh.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(Z=>R?tT(Z,c,v,p):Yc(Z,c,v))):R?tT(A,c,v,p):Yc(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=>Yc(S,c,y))):Yc(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 rT(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,Mn())))}),t}var ef=z("$ZodUnion",(e,t)=>{Mt.init(e,t),Wt(e._zod,"optin",()=>t.options.some(r=>r._zod.optin==="optional")?"optional":void 0),Wt(e._zod,"optout",()=>t.options.some(r=>r._zod.optout==="optional")?"optional":void 0),Wt(e._zod,"values",()=>{if(t.options.every(r=>r._zod.values))return new Set(t.options.flatMap(r=>Array.from(r._zod.values)))}),Wt(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=>rT(a,r,e,n)):rT(o,r,e,n)}}),G_=z("$ZodDiscriminatedUnion",(e,t)=>{ef.init(e,t);let r=e._zod.parse;Wt(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)}}),F_=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])=>nT(r,l,d)):nT(r,o,a)}});function f_(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=f_(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=f_(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 nT(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=f_(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 D_=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,Mn())),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 q_=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=>Jh.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}}),L_=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 U_=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}}),Z_=z("$ZodOptional",(e,t)=>{Mt.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Wt(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Wt(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)}),W_=z("$ZodNullable",(e,t)=>{Mt.init(e,t),Wt(e._zod,"optin",()=>t.innerType._zod.optin),Wt(e._zod,"optout",()=>t.innerType._zod.optout),Wt(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${Td(r.source)}|null)$`):void 0}),Wt(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)}),V_=z("$ZodDefault",(e,t)=>{Mt.init(e,t),e._zod.optin="optional",Wt(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=>iT(o,t)):iT(i,t)}});function iT(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var H_=z("$ZodPrefault",(e,t)=>{Mt.init(e,t),e._zod.optin="optional",Wt(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))}),B_=z("$ZodNonOptional",(e,t)=>{Mt.init(e,t),Wt(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=>oT(o,e)):oT(i,e)}});function oT(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 K_=z("$ZodCatch",(e,t)=>{Mt.init(e,t),e._zod.optin="optional",Wt(e._zod,"optout",()=>t.innerType._zod.optout),Wt(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,Mn()))},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,Mn()))},input:r.value}),r.issues=[]),r)}});var J_=z("$ZodPipe",(e,t)=>{Mt.init(e,t),Wt(e._zod,"values",()=>t.in._zod.values),Wt(e._zod,"optin",()=>t.in._zod.optin),Wt(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=>aT(o,t,n)):aT(i,t,n)}});function aT(e,t,r){return ja(e)?e:t.out._zod.run({value:e.value,issues:e.issues},r)}var Y_=z("$ZodReadonly",(e,t)=>{Mt.init(e,t),Wt(e._zod,"propValues",()=>t.innerType._zod.propValues),Wt(e._zod,"values",()=>t.innerType._zod.values),Wt(e._zod,"optin",()=>t.innerType._zod.optin),Wt(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(sT):sT(i)}});function sT(e){return e.value=Object.freeze(e.value),e}var X_=z("$ZodCustom",(e,t)=>{Lr.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=>lT(o,r,n,e));lT(i,r,n,e)}});function lT(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(Qh(i))}}var SG=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},wG=()=>{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 ${SG(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Hc(n.values[0])}`:`Invalid option: expected one of ${Wc(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":""}: ${Wc(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 pT(){return{localeError:wG()}}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 hT(){return new Pd}var Ro=hT();function Q_(e,t){return new e({type:"string",...Me(t)})}function eg(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...Me(t)})}function tf(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...Me(t)})}function tg(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...Me(t)})}function rg(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...Me(t)})}function ng(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...Me(t)})}function ig(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...Me(t)})}function og(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...Me(t)})}function ag(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...Me(t)})}function sg(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...Me(t)})}function lg(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...Me(t)})}function dg(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...Me(t)})}function ug(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...Me(t)})}function cg(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...Me(t)})}function fg(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...Me(t)})}function mg(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...Me(t)})}function pg(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...Me(t)})}function hg(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...Me(t)})}function _g(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...Me(t)})}function gg(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...Me(t)})}function yg(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...Me(t)})}function bg(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...Me(t)})}function vg(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...Me(t)})}function _T(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Me(t)})}function gT(e,t){return new e({type:"string",format:"date",check:"string_format",...Me(t)})}function yT(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...Me(t)})}function bT(e,t){return new e({type:"string",format:"duration",check:"string_format",...Me(t)})}function Sg(e,t){return new e({type:"number",checks:[],...Me(t)})}function wg(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...Me(t)})}function kg(e,t){return new e({type:"boolean",...Me(t)})}function xg(e,t){return new e({type:"null",...Me(t)})}function Tg(e){return new e({type:"unknown"})}function Ag(e,t){return new e({type:"never",...Me(t)})}function rf(e,t){return new u_({check:"less_than",...Me(t),value:e,inclusive:!1})}function Rd(e,t){return new u_({check:"less_than",...Me(t),value:e,inclusive:!0})}function nf(e,t){return new c_({check:"greater_than",...Me(t),value:e,inclusive:!1})}function Id(e,t){return new c_({check:"greater_than",...Me(t),value:e,inclusive:!0})}function of(e,t){return new Dx({check:"multiple_of",...Me(t),value:e})}function af(e,t){return new Lx({check:"max_length",...Me(t),maximum:e})}function Bs(e,t){return new Ux({check:"min_length",...Me(t),minimum:e})}function sf(e,t){return new Zx({check:"length_equals",...Me(t),length:e})}function Og(e,t){return new Wx({check:"string_format",format:"regex",...Me(t),pattern:e})}function Cg(e){return new Vx({check:"string_format",format:"lowercase",...Me(e)})}function Eg(e){return new Hx({check:"string_format",format:"uppercase",...Me(e)})}function Pg(e,t){return new Bx({check:"string_format",format:"includes",...Me(t),includes:e})}function Rg(e,t){return new Kx({check:"string_format",format:"starts_with",...Me(t),prefix:e})}function Ig(e,t){return new Jx({check:"string_format",format:"ends_with",...Me(t),suffix:e})}function Ga(e){return new Yx({check:"overwrite",tx:e})}function $g(e){return Ga(t=>t.normalize(e))}function Mg(){return Ga(e=>e.trim())}function jg(){return Ga(e=>e.toLowerCase())}function zg(){return Ga(e=>e.toUpperCase())}function vT(e,t,r){return new e({type:"array",element:t,...Me(r)})}function Ng(e,t,r){let n=Me(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function Gg(e,t,r){return new e({type:"custom",check:"custom",fn:t,...Me(r)})}var lf=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 Og(e,t){if(e instanceof wd){let n=new Xc(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 Xc(t);return r.process(e),r.emit(e,t)}function Pr(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 Pr(i.element,r);case"object":{for(let o in i.shape)if(Pr(i.shape[o],r))return!0;return!1}case"union":{for(let o of i.options)if(Pr(o,r))return!0;return!1}case"intersection":return Pr(i.left,r)||Pr(i.right,r);case"tuple":{for(let o of i.items)if(Pr(o,r))return!0;return!!(i.rest&&Pr(i.rest,r))}case"record":return Pr(i.keyType,r)||Pr(i.valueType,r);case"map":return Pr(i.keyType,r)||Pr(i.valueType,r);case"set":return Pr(i.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Pr(i.innerType,r);case"lazy":return Pr(i.getter(),r);case"default":return Pr(i.innerType,r);case"prefault":return Pr(i.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Pr(i.in,r)||Pr(i.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${i.type}`)}var Td={};vp(Td,{ZodISODate:()=>nT,ZodISODateTime:()=>rT,ZodISODuration:()=>oT,ZodISOTime:()=>iT,date:()=>Eg,datetime:()=>Cg,duration:()=>Rg,time:()=>Pg});var rT=j("ZodISODateTime",(e,t)=>{Ux.init(e,t),sr.init(e,t)});function Cg(e){return Jx(rT,e)}var nT=j("ZodISODate",(e,t)=>{Zx.init(e,t),sr.init(e,t)});function Eg(e){return Yx(nT,e)}var iT=j("ZodISOTime",(e,t)=>{Wx.init(e,t),sr.init(e,t)});function Pg(e){return Xx(iT,e)}var oT=j("ZodISODuration",(e,t)=>{Vx.init(e,t),sr.init(e,t)});function Rg(e){return Qx(oT,e)}var aT=(e,t)=>{Fc.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:r=>Uh(e,r)},flatten:{value:r=>Lh(e,r)},addIssue:{value:r=>e.issues.push(r)},addIssues:{value:r=>e.issues.push(...r)},isEmpty:{get(){return e.issues.length===0}}})},U5=j("ZodError",aT),Ad=j("ZodError",aT,{Parent:Error});var sT=Zh(Ad),lT=Vh(Ad),dT=Bh(Ad),uT=Kh(Ad);var pr=j("ZodType",(e,t)=>(Nt.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)=>Rn(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e)),e.parse=(r,n)=>sT(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>dT(e,r,n),e.parseAsync=async(r,n)=>lT(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>uT(e,r,n),e.spa=e.safeParseAsync,e.refine=(r,n)=>e.check(rF(r,n)),e.superRefine=r=>e.check(nF(r)),e.overwrite=r=>e.check(ja(r)),e.optional=()=>dr(e),e.nullable=()=>mT(e),e.nullish=()=>dr(mT(e)),e.nonoptional=r=>KG(e,r),e.array=()=>yt(e),e.or=r=>tr([e,r]),e.and=r=>ef(e,r),e.transform=r=>$g(e,bT(r)),e.default=r=>VG(e,r),e.prefault=r=>BG(e,r),e.catch=r=>YG(e,r),e.pipe=r=>$g(e,r),e.readonly=()=>eF(e),e.describe=r=>{let n=e.clone();return Co.add(n,{description:r}),n},Object.defineProperty(e,"description",{get(){return Co.get(e)?.description},configurable:!0}),e.meta=(...r)=>{if(r.length===0)return Co.get(e);let n=e.clone();return Co.add(n,r[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),pT=j("_ZodString",(e,t)=>{Sd.init(e,t),pr.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(hg(...n)),e.includes=(...n)=>e.check(yg(...n)),e.startsWith=(...n)=>e.check(bg(...n)),e.endsWith=(...n)=>e.check(vg(...n)),e.min=(...n)=>e.check(qs(...n)),e.max=(...n)=>e.check(Jc(...n)),e.length=(...n)=>e.check(Yc(...n)),e.nonempty=(...n)=>e.check(qs(1,...n)),e.lowercase=n=>e.check(_g(n)),e.uppercase=n=>e.check(gg(n)),e.trim=()=>e.check(wg()),e.normalize=(...n)=>e.check(Sg(...n)),e.toLowerCase=()=>e.check(kg()),e.toUpperCase=()=>e.check(xg())}),pG=j("ZodString",(e,t)=>{Sd.init(e,t),pT.init(e,t),e.email=r=>e.check(L_(hG,r)),e.url=r=>e.check(H_(_G,r)),e.jwt=r=>e.check(lg(RG,r)),e.emoji=r=>e.check(B_(gG,r)),e.guid=r=>e.check(Vc(cT,r)),e.uuid=r=>e.check(U_(Qc,r)),e.uuidv4=r=>e.check(Z_(Qc,r)),e.uuidv6=r=>e.check(W_(Qc,r)),e.uuidv7=r=>e.check(V_(Qc,r)),e.nanoid=r=>e.check(K_(yG,r)),e.guid=r=>e.check(Vc(cT,r)),e.cuid=r=>e.check(J_(bG,r)),e.cuid2=r=>e.check(Y_(vG,r)),e.ulid=r=>e.check(X_(SG,r)),e.base64=r=>e.check(og(CG,r)),e.base64url=r=>e.check(ag(EG,r)),e.xid=r=>e.check(Q_(wG,r)),e.ksuid=r=>e.check(eg(kG,r)),e.ipv4=r=>e.check(tg(xG,r)),e.ipv6=r=>e.check(rg(TG,r)),e.cidrv4=r=>e.check(ng(AG,r)),e.cidrv6=r=>e.check(ig(OG,r)),e.e164=r=>e.check(sg(PG,r)),e.datetime=r=>e.check(Cg(r)),e.date=r=>e.check(Eg(r)),e.time=r=>e.check(Pg(r)),e.duration=r=>e.check(Rg(r))});function I(e){return q_(pG,e)}var sr=j("ZodStringFormat",(e,t)=>{Ht.init(e,t),pT.init(e,t)}),hG=j("ZodEmail",(e,t)=>{n_.init(e,t),sr.init(e,t)});var cT=j("ZodGUID",(e,t)=>{t_.init(e,t),sr.init(e,t)});var Qc=j("ZodUUID",(e,t)=>{r_.init(e,t),sr.init(e,t)});var _G=j("ZodURL",(e,t)=>{i_.init(e,t),sr.init(e,t)});var gG=j("ZodEmoji",(e,t)=>{o_.init(e,t),sr.init(e,t)});var yG=j("ZodNanoID",(e,t)=>{a_.init(e,t),sr.init(e,t)});var bG=j("ZodCUID",(e,t)=>{s_.init(e,t),sr.init(e,t)});var vG=j("ZodCUID2",(e,t)=>{l_.init(e,t),sr.init(e,t)});var SG=j("ZodULID",(e,t)=>{d_.init(e,t),sr.init(e,t)});var wG=j("ZodXID",(e,t)=>{u_.init(e,t),sr.init(e,t)});var kG=j("ZodKSUID",(e,t)=>{c_.init(e,t),sr.init(e,t)});var xG=j("ZodIPv4",(e,t)=>{f_.init(e,t),sr.init(e,t)});var TG=j("ZodIPv6",(e,t)=>{m_.init(e,t),sr.init(e,t)});var AG=j("ZodCIDRv4",(e,t)=>{p_.init(e,t),sr.init(e,t)});var OG=j("ZodCIDRv6",(e,t)=>{h_.init(e,t),sr.init(e,t)});var CG=j("ZodBase64",(e,t)=>{__.init(e,t),sr.init(e,t)});var EG=j("ZodBase64URL",(e,t)=>{g_.init(e,t),sr.init(e,t)});var PG=j("ZodE164",(e,t)=>{y_.init(e,t),sr.init(e,t)});var RG=j("ZodJWT",(e,t)=>{b_.init(e,t),sr.init(e,t)});var hT=j("ZodNumber",(e,t)=>{Uc.init(e,t),pr.init(e,t),e.gt=(n,i)=>e.check(Bc(n,i)),e.gte=(n,i)=>e.check(xd(n,i)),e.min=(n,i)=>e.check(xd(n,i)),e.lt=(n,i)=>e.check(Hc(n,i)),e.lte=(n,i)=>e.check(kd(n,i)),e.max=(n,i)=>e.check(kd(n,i)),e.int=n=>e.check(fT(n)),e.safe=n=>e.check(fT(n)),e.positive=n=>e.check(Bc(0,n)),e.nonnegative=n=>e.check(xd(0,n)),e.negative=n=>e.check(Hc(0,n)),e.nonpositive=n=>e.check(kd(0,n)),e.multipleOf=(n,i)=>e.check(Kc(n,i)),e.step=(n,i)=>e.check(Kc(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 It(e){return dg(hT,e)}var IG=j("ZodNumberFormat",(e,t)=>{v_.init(e,t),hT.init(e,t)});function fT(e){return ug(IG,e)}var $G=j("ZodBoolean",(e,t)=>{S_.init(e,t),pr.init(e,t)});function jr(e){return cg($G,e)}var MG=j("ZodNull",(e,t)=>{w_.init(e,t),pr.init(e,t)});function _T(e){return fg(MG,e)}var jG=j("ZodUnknown",(e,t)=>{k_.init(e,t),pr.init(e,t)});function lr(){return mg(jG)}var zG=j("ZodNever",(e,t)=>{x_.init(e,t),pr.init(e,t)});function NG(e){return pg(zG,e)}var GG=j("ZodArray",(e,t)=>{T_.init(e,t),pr.init(e,t),e.element=t.element,e.min=(r,n)=>e.check(qs(r,n)),e.nonempty=r=>e.check(qs(1,r)),e.max=(r,n)=>e.check(Jc(r,n)),e.length=(r,n)=>e.check(Yc(r,n)),e.unwrap=()=>e.element});function yt(e,t){return eT(GG,e,t)}var gT=j("ZodObject",(e,t)=>{Zc.init(e,t),pr.init(e,t),_t.defineLazy(e,"shape",()=>t.shape),e.keyof=()=>bn(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:lr()}),e.loose=()=>e.clone({...e._zod.def,catchall:lr()}),e.strict=()=>e.clone({...e._zod.def,catchall:NG()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=r=>_t.extend(e,r),e.merge=r=>_t.merge(e,r),e.pick=r=>_t.pick(e,r),e.omit=r=>_t.omit(e,r),e.partial=(...r)=>_t.partial(vT,e,r[0]),e.required=(...r)=>_t.required(ST,e,r[0])});function pe(e,t){let r={type:"object",get shape(){return _t.assignProp(this,"shape",{...e}),this.shape},..._t.normalizeParams(t)};return new gT(r)}function nn(e,t){return new gT({type:"object",get shape(){return _t.assignProp(this,"shape",{...e}),this.shape},catchall:lr(),..._t.normalizeParams(t)})}var yT=j("ZodUnion",(e,t)=>{Wc.init(e,t),pr.init(e,t),e.options=t.options});function tr(e,t){return new yT({type:"union",options:e,..._t.normalizeParams(t)})}var FG=j("ZodDiscriminatedUnion",(e,t)=>{yT.init(e,t),A_.init(e,t)});function Mg(e,t,r){return new FG({type:"union",options:t,discriminator:e,..._t.normalizeParams(r)})}var DG=j("ZodIntersection",(e,t)=>{O_.init(e,t),pr.init(e,t)});function ef(e,t){return new DG({type:"intersection",left:e,right:t})}var qG=j("ZodRecord",(e,t)=>{C_.init(e,t),pr.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function Bt(e,t,r){return new qG({type:"record",keyType:e,valueType:t,..._t.normalizeParams(r)})}var Ig=j("ZodEnum",(e,t)=>{E_.init(e,t),pr.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 Ig({...t,checks:[],..._t.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 Ig({...t,checks:[],..._t.normalizeParams(i),entries:o})}});function bn(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new Ig({type:"enum",entries:r,..._t.normalizeParams(t)})}var LG=j("ZodLiteral",(e,t)=>{P_.init(e,t),pr.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 LG({type:"literal",values:Array.isArray(e)?e:[e],..._t.normalizeParams(t)})}var UG=j("ZodTransform",(e,t)=>{R_.init(e,t),pr.init(e,t),e._zod.parse=(r,n)=>{r.addIssue=o=>{if(typeof o=="string")r.issues.push(_t.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(_t.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 bT(e){return new UG({type:"transform",transform:e})}var vT=j("ZodOptional",(e,t)=>{I_.init(e,t),pr.init(e,t),e.unwrap=()=>e._zod.def.innerType});function dr(e){return new vT({type:"optional",innerType:e})}var ZG=j("ZodNullable",(e,t)=>{$_.init(e,t),pr.init(e,t),e.unwrap=()=>e._zod.def.innerType});function mT(e){return new ZG({type:"nullable",innerType:e})}var WG=j("ZodDefault",(e,t)=>{M_.init(e,t),pr.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function VG(e,t){return new WG({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():t}})}var HG=j("ZodPrefault",(e,t)=>{j_.init(e,t),pr.init(e,t),e.unwrap=()=>e._zod.def.innerType});function BG(e,t){return new HG({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():t}})}var ST=j("ZodNonOptional",(e,t)=>{z_.init(e,t),pr.init(e,t),e.unwrap=()=>e._zod.def.innerType});function KG(e,t){return new ST({type:"nonoptional",innerType:e,..._t.normalizeParams(t)})}var JG=j("ZodCatch",(e,t)=>{N_.init(e,t),pr.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function YG(e,t){return new JG({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}var XG=j("ZodPipe",(e,t)=>{G_.init(e,t),pr.init(e,t),e.in=t.in,e.out=t.out});function $g(e,t){return new XG({type:"pipe",in:e,out:t})}var QG=j("ZodReadonly",(e,t)=>{F_.init(e,t),pr.init(e,t)});function eF(e){return new QG({type:"readonly",innerType:e})}var wT=j("ZodCustom",(e,t)=>{D_.init(e,t),pr.init(e,t)});function tF(e){let t=new Dr({check:"custom"});return t._zod.check=e,t}function kT(e,t){return Tg(wT,e??(()=>!0),t)}function rF(e,t={}){return Ag(wT,e,t)}function nF(e){let t=tF(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(_t.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(_t.issue(i))}},e(r.value,r)));return t}function jg(e,t){return $g(bT(e),t)}Pn(Bx());var Ng="2025-11-25";var xT=[Ng,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Eo="io.modelcontextprotocol/related-task",rf="2.0",Rr=kT(e=>e!==null&&(typeof e=="object"||typeof e=="function")),TT=tr([I(),It().int()]),AT=I(),n8=nn({ttl:It().optional(),pollInterval:It().optional()}),iF=pe({ttl:It().optional()}),oF=pe({taskId:I()}),Gg=nn({progressToken:TT.optional(),[Eo]:oF.optional()}),In=pe({_meta:Gg.optional()}),Od=In.extend({task:iF.optional()}),OT=e=>Od.safeParse(e).success,qr=pe({method:I(),params:In.loose().optional()}),Wn=pe({_meta:Gg.optional()}),Vn=pe({method:I(),params:Wn.loose().optional()}),Lr=nn({_meta:Gg.optional()}),nf=tr([I(),It().int()]),CT=pe({jsonrpc:xe(rf),id:nf,...qr.shape}).strict(),Fg=e=>CT.safeParse(e).success,ET=pe({jsonrpc:xe(rf),...Vn.shape}).strict(),PT=e=>ET.safeParse(e).success,Dg=pe({jsonrpc:xe(rf),id:nf,result:Lr}).strict(),Cd=e=>Dg.safeParse(e).success;var Pe;(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"})(Pe||(Pe={}));var qg=pe({jsonrpc:xe(rf),id:nf.optional(),error:pe({code:It().int(),message:I(),data:lr().optional()})}).strict();var RT=e=>qg.safeParse(e).success;var IT=tr([CT,ET,Dg,qg]),i8=tr([Dg,qg]),of=Lr.strict(),aF=Wn.extend({requestId:nf.optional(),reason:I().optional()}),af=Vn.extend({method:xe("notifications/cancelled"),params:aF}),sF=pe({src:I(),mimeType:I().optional(),sizes:yt(I()).optional(),theme:bn(["light","dark"]).optional()}),Ed=pe({icons:yt(sF).optional()}),Ls=pe({name:I(),title:I().optional()}),$T=Ls.extend({...Ls.shape,...Ed.shape,version:I(),websiteUrl:I().optional(),description:I().optional()}),lF=ef(pe({applyDefaults:jr().optional()}),Bt(I(),lr())),dF=jg(e=>e&&typeof e=="object"&&!Array.isArray(e)&&Object.keys(e).length===0?{form:{}}:e,ef(pe({form:lF.optional(),url:Rr.optional()}),Bt(I(),lr()).optional())),uF=nn({list:Rr.optional(),cancel:Rr.optional(),requests:nn({sampling:nn({createMessage:Rr.optional()}).optional(),elicitation:nn({create:Rr.optional()}).optional()}).optional()}),cF=nn({list:Rr.optional(),cancel:Rr.optional(),requests:nn({tools:nn({call:Rr.optional()}).optional()}).optional()}),fF=pe({experimental:Bt(I(),Rr).optional(),sampling:pe({context:Rr.optional(),tools:Rr.optional()}).optional(),elicitation:dF.optional(),roots:pe({listChanged:jr().optional()}).optional(),tasks:uF.optional(),extensions:Bt(I(),Rr).optional()}),mF=In.extend({protocolVersion:I(),capabilities:fF,clientInfo:$T}),Lg=qr.extend({method:xe("initialize"),params:mF});var pF=pe({experimental:Bt(I(),Rr).optional(),logging:Rr.optional(),completions:Rr.optional(),prompts:pe({listChanged:jr().optional()}).optional(),resources:pe({subscribe:jr().optional(),listChanged:jr().optional()}).optional(),tools:pe({listChanged:jr().optional()}).optional(),tasks:cF.optional(),extensions:Bt(I(),Rr).optional()}),hF=Lr.extend({protocolVersion:I(),capabilities:pF,serverInfo:$T,instructions:I().optional()}),Ug=Vn.extend({method:xe("notifications/initialized"),params:Wn.optional()});var sf=qr.extend({method:xe("ping"),params:In.optional()}),_F=pe({progress:It(),total:dr(It()),message:dr(I())}),gF=pe({...Wn.shape,..._F.shape,progressToken:TT}),lf=Vn.extend({method:xe("notifications/progress"),params:gF}),yF=In.extend({cursor:AT.optional()}),Pd=qr.extend({params:yF.optional()}),Rd=Lr.extend({nextCursor:AT.optional()}),bF=bn(["working","input_required","completed","failed","cancelled"]),Id=pe({taskId:I(),status:bF,ttl:tr([It(),_T()]),createdAt:I(),lastUpdatedAt:I(),pollInterval:dr(It()),statusMessage:dr(I())}),Us=Lr.extend({task:Id}),vF=Wn.merge(Id),$d=Vn.extend({method:xe("notifications/tasks/status"),params:vF}),df=qr.extend({method:xe("tasks/get"),params:In.extend({taskId:I()})}),uf=Lr.merge(Id),cf=qr.extend({method:xe("tasks/result"),params:In.extend({taskId:I()})}),o8=Lr.loose(),ff=Pd.extend({method:xe("tasks/list")}),mf=Rd.extend({tasks:yt(Id)}),pf=qr.extend({method:xe("tasks/cancel"),params:In.extend({taskId:I()})}),MT=Lr.merge(Id),jT=pe({uri:I(),mimeType:dr(I()),_meta:Bt(I(),lr()).optional()}),zT=jT.extend({text:I()}),Zg=I().refine(e=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),NT=jT.extend({blob:Zg}),Md=bn(["user","assistant"]),Zs=pe({audience:yt(Md).optional(),priority:It().min(0).max(1).optional(),lastModified:Td.datetime({offset:!0}).optional()}),GT=pe({...Ls.shape,...Ed.shape,uri:I(),description:dr(I()),mimeType:dr(I()),size:dr(It()),annotations:Zs.optional(),_meta:dr(nn({}))}),SF=pe({...Ls.shape,...Ed.shape,uriTemplate:I(),description:dr(I()),mimeType:dr(I()),annotations:Zs.optional(),_meta:dr(nn({}))}),Ws=Pd.extend({method:xe("resources/list")}),wF=Rd.extend({resources:yt(GT)}),Vs=Pd.extend({method:xe("resources/templates/list")}),kF=Rd.extend({resourceTemplates:yt(SF)}),Wg=In.extend({uri:I()}),xF=Wg,hf=qr.extend({method:xe("resources/read"),params:xF}),TF=Lr.extend({contents:yt(tr([zT,NT]))}),AF=Vn.extend({method:xe("notifications/resources/list_changed"),params:Wn.optional()}),OF=Wg,CF=qr.extend({method:xe("resources/subscribe"),params:OF}),EF=Wg,PF=qr.extend({method:xe("resources/unsubscribe"),params:EF}),RF=Wn.extend({uri:I()}),IF=Vn.extend({method:xe("notifications/resources/updated"),params:RF}),$F=pe({name:I(),description:dr(I()),required:dr(jr())}),MF=pe({...Ls.shape,...Ed.shape,description:dr(I()),arguments:dr(yt($F)),_meta:dr(nn({}))}),_f=Pd.extend({method:xe("prompts/list")}),jF=Rd.extend({prompts:yt(MF)}),zF=In.extend({name:I(),arguments:Bt(I(),I()).optional()}),gf=qr.extend({method:xe("prompts/get"),params:zF}),Vg=pe({type:xe("text"),text:I(),annotations:Zs.optional(),_meta:Bt(I(),lr()).optional()}),Hg=pe({type:xe("image"),data:Zg,mimeType:I(),annotations:Zs.optional(),_meta:Bt(I(),lr()).optional()}),Bg=pe({type:xe("audio"),data:Zg,mimeType:I(),annotations:Zs.optional(),_meta:Bt(I(),lr()).optional()}),NF=pe({type:xe("tool_use"),name:I(),id:I(),input:Bt(I(),lr()),_meta:Bt(I(),lr()).optional()}),GF=pe({type:xe("resource"),resource:tr([zT,NT]),annotations:Zs.optional(),_meta:Bt(I(),lr()).optional()}),FF=GT.extend({type:xe("resource_link")}),Kg=tr([Vg,Hg,Bg,FF,GF]),DF=pe({role:Md,content:Kg}),qF=Lr.extend({description:I().optional(),messages:yt(DF)}),LF=Vn.extend({method:xe("notifications/prompts/list_changed"),params:Wn.optional()}),UF=pe({title:I().optional(),readOnlyHint:jr().optional(),destructiveHint:jr().optional(),idempotentHint:jr().optional(),openWorldHint:jr().optional()}),ZF=pe({taskSupport:bn(["required","optional","forbidden"]).optional()}),FT=pe({...Ls.shape,...Ed.shape,description:I().optional(),inputSchema:pe({type:xe("object"),properties:Bt(I(),Rr).optional(),required:yt(I()).optional()}).catchall(lr()),outputSchema:pe({type:xe("object"),properties:Bt(I(),Rr).optional(),required:yt(I()).optional()}).catchall(lr()).optional(),annotations:UF.optional(),execution:ZF.optional(),_meta:Bt(I(),lr()).optional()}),yf=Pd.extend({method:xe("tools/list")}),WF=Rd.extend({tools:yt(FT)}),bf=Lr.extend({content:yt(Kg).default([]),structuredContent:Bt(I(),lr()).optional(),isError:jr().optional()}),a8=bf.or(Lr.extend({toolResult:lr()})),VF=Od.extend({name:I(),arguments:Bt(I(),lr()).optional()}),Hs=qr.extend({method:xe("tools/call"),params:VF}),HF=Vn.extend({method:xe("notifications/tools/list_changed"),params:Wn.optional()}),s8=pe({autoRefresh:jr().default(!0),debounceMs:It().int().nonnegative().default(300)}),jd=bn(["debug","info","notice","warning","error","critical","alert","emergency"]),BF=In.extend({level:jd}),Jg=qr.extend({method:xe("logging/setLevel"),params:BF}),KF=Wn.extend({level:jd,logger:I().optional(),data:lr()}),JF=Vn.extend({method:xe("notifications/message"),params:KF}),YF=pe({name:I().optional()}),XF=pe({hints:yt(YF).optional(),costPriority:It().min(0).max(1).optional(),speedPriority:It().min(0).max(1).optional(),intelligencePriority:It().min(0).max(1).optional()}),QF=pe({mode:bn(["auto","required","none"]).optional()}),eD=pe({type:xe("tool_result"),toolUseId:I().describe("The unique identifier for the corresponding tool call."),content:yt(Kg).default([]),structuredContent:pe({}).loose().optional(),isError:jr().optional(),_meta:Bt(I(),lr()).optional()}),tD=Mg("type",[Vg,Hg,Bg]),tf=Mg("type",[Vg,Hg,Bg,NF,eD]),rD=pe({role:Md,content:tr([tf,yt(tf)]),_meta:Bt(I(),lr()).optional()}),nD=Od.extend({messages:yt(rD),modelPreferences:XF.optional(),systemPrompt:I().optional(),includeContext:bn(["none","thisServer","allServers"]).optional(),temperature:It().optional(),maxTokens:It().int(),stopSequences:yt(I()).optional(),metadata:Rr.optional(),tools:yt(FT).optional(),toolChoice:QF.optional()}),iD=qr.extend({method:xe("sampling/createMessage"),params:nD}),zd=Lr.extend({model:I(),stopReason:dr(bn(["endTurn","stopSequence","maxTokens"]).or(I())),role:Md,content:tD}),Yg=Lr.extend({model:I(),stopReason:dr(bn(["endTurn","stopSequence","maxTokens","toolUse"]).or(I())),role:Md,content:tr([tf,yt(tf)])}),oD=pe({type:xe("boolean"),title:I().optional(),description:I().optional(),default:jr().optional()}),aD=pe({type:xe("string"),title:I().optional(),description:I().optional(),minLength:It().optional(),maxLength:It().optional(),format:bn(["email","uri","date","date-time"]).optional(),default:I().optional()}),sD=pe({type:bn(["number","integer"]),title:I().optional(),description:I().optional(),minimum:It().optional(),maximum:It().optional(),default:It().optional()}),lD=pe({type:xe("string"),title:I().optional(),description:I().optional(),enum:yt(I()),default:I().optional()}),dD=pe({type:xe("string"),title:I().optional(),description:I().optional(),oneOf:yt(pe({const:I(),title:I()})),default:I().optional()}),uD=pe({type:xe("string"),title:I().optional(),description:I().optional(),enum:yt(I()),enumNames:yt(I()).optional(),default:I().optional()}),cD=tr([lD,dD]),fD=pe({type:xe("array"),title:I().optional(),description:I().optional(),minItems:It().optional(),maxItems:It().optional(),items:pe({type:xe("string"),enum:yt(I())}),default:yt(I()).optional()}),mD=pe({type:xe("array"),title:I().optional(),description:I().optional(),minItems:It().optional(),maxItems:It().optional(),items:pe({anyOf:yt(pe({const:I(),title:I()}))}),default:yt(I()).optional()}),pD=tr([fD,mD]),hD=tr([uD,cD,pD]),_D=tr([hD,oD,aD,sD]),gD=Od.extend({mode:xe("form").optional(),message:I(),requestedSchema:pe({type:xe("object"),properties:Bt(I(),_D),required:yt(I()).optional()})}),yD=Od.extend({mode:xe("url"),message:I(),elicitationId:I(),url:I().url()}),bD=tr([gD,yD]),vD=qr.extend({method:xe("elicitation/create"),params:bD}),SD=Wn.extend({elicitationId:I()}),wD=Vn.extend({method:xe("notifications/elicitation/complete"),params:SD}),Bs=Lr.extend({action:bn(["accept","decline","cancel"]),content:jg(e=>e===null?void 0:e,Bt(I(),tr([I(),It(),jr(),yt(I())])).optional())}),kD=pe({type:xe("ref/resource"),uri:I()});var xD=pe({type:xe("ref/prompt"),name:I()}),TD=In.extend({ref:tr([xD,kD]),argument:pe({name:I(),value:I()}),context:pe({arguments:Bt(I(),I()).optional()}).optional()}),vf=qr.extend({method:xe("completion/complete"),params:TD});function DT(e){if(e.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${e.params.ref.type}`)}function qT(e){if(e.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${e.params.ref.type}`)}var AD=Lr.extend({completion:nn({values:yt(I()).max(100),total:dr(It().int()),hasMore:dr(jr())})}),OD=pe({uri:I().startsWith("file://"),name:I().optional(),_meta:Bt(I(),lr()).optional()}),CD=qr.extend({method:xe("roots/list"),params:In.optional()}),Xg=Lr.extend({roots:yt(OD)}),ED=Vn.extend({method:xe("notifications/roots/list_changed"),params:Wn.optional()}),l8=tr([sf,Lg,vf,Jg,gf,_f,Ws,Vs,hf,CF,PF,Hs,yf,df,cf,ff,pf]),d8=tr([af,lf,Ug,ED,$d]),u8=tr([of,zd,Yg,Bs,Xg,uf,mf,Us]),c8=tr([sf,iD,vD,CD,df,cf,ff,pf]),f8=tr([af,lf,JF,IF,AF,HF,LF,$d,wD]),m8=tr([of,hF,AD,qF,jF,wF,kF,TF,bf,WF,uf,mf,Us]),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===Pe.UrlElicitationRequired&&n){let i=n;if(i.elicitations)return new zg(i.elicitations,r)}return new e(t,r,n)}},zg=class extends be{constructor(t,r=`URL elicitation${t.length>1?"s":""} required`){super(Pe.UrlElicitationRequired,r,{elicitations:t})}get elicitations(){return this.data?.elicitations??[]}};var ID=j("ZodMiniType",(e,t)=>{if(!e._zod)throw new Error("Uninitialized schema in ZodMiniType.");Nt.init(e,t),e.def=t,e.parse=(r,n)=>Wh(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>$a(e,r,n),e.parseAsync=async(r,n)=>Hh(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>Ma(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)=>Rn(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e))});var $D=j("ZodMiniObject",(e,t)=>{Zc.init(e,t),ID.init(e,t),_t.defineLazy(e,"shape",()=>t.shape)});function Qg(e,t){let r={type:"object",get shape(){return _t.assignProp(this,"shape",{...e}),this.shape},..._t.normalizeParams(t)};return new $D(r)}function Hn(e){return!!e._zod}function Na(e){let t=Object.values(e);if(t.length===0)return Qg({});let r=t.every(Hn),n=t.every(i=>!Hn(i));if(r)return Qg(e);if(n)return mh(e);throw new Error("Mixed Zod versions detected in object shape.")}function Po(e,t){return Hn(e)?$a(e,t):e.safeParse(t)}async function Sf(e,t){return Hn(e)?await Ma(e,t):await e.safeParseAsync(t)}function Ro(e){if(!e)return;let t;if(Hn(e)?t=e._zod?.def?.shape:t=e.shape,!!t){if(typeof t=="function")try{return t()}catch{return}return t}}function Ks(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 Na(e)}}if(Hn(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 wf(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 LT(e){return e.description}function UT(e){if(Hn(e))return e._zod?.def?.type==="optional";let t=e;return typeof e.isOptional=="function"?e.isOptional():t._def?.typeName==="ZodOptional"}function kf(e){if(Hn(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 Io(e){return e==="completed"||e==="failed"||e==="cancelled"}var WT=Symbol("Let zodToJsonSchema decide on which parser to use");var ZT={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"},VT=e=>typeof e=="string"?{...ZT,name:e}:{...ZT,...e};var HT=e=>{let t=VT(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 ey(e,t,r,n){n?.errorMessages&&r&&(e.errorMessage={...e.errorMessage,[t]:r})}function bt(e,t,r,n,i){e[t]=r,ey(e,t,n,i)}var xf=(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 ur(e){if(e.target!=="openAi")return{};let t=[...e.basePath,e.definitionPath,e.openAiAnyTypeName];return e.flags.hasReferencedOpenAiAnyType=!0,{$ref:e.$refStrategy==="relative"?xf(t,e.currentPath):t.join("/")}}function BT(e,t){let r={type:"array"};return e.type?._def&&e.type?._def?.typeName!==J.ZodAny&&(r.items=Fe(e.type._def,{...t,currentPath:[...t.currentPath,"items"]})),e.minLength&&bt(r,"minItems",e.minLength.value,e.minLength.message,t),e.maxLength&&bt(r,"maxItems",e.maxLength.value,e.maxLength.message,t),e.exactLength&&(bt(r,"minItems",e.exactLength.value,e.exactLength.message,t),bt(r,"maxItems",e.exactLength.value,e.exactLength.message,t)),r}function KT(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?bt(r,"minimum",n.value,n.message,t):bt(r,"exclusiveMinimum",n.value,n.message,t):(n.inclusive||(r.exclusiveMinimum=!0),bt(r,"minimum",n.value,n.message,t));break;case"max":t.target==="jsonSchema7"?n.inclusive?bt(r,"maximum",n.value,n.message,t):bt(r,"exclusiveMaximum",n.value,n.message,t):(n.inclusive||(r.exclusiveMaximum=!0),bt(r,"maximum",n.value,n.message,t));break;case"multipleOf":bt(r,"multipleOf",n.value,n.message,t);break}return r}function JT(){return{type:"boolean"}}function Tf(e,t){return Fe(e.type._def,t)}var YT=(e,t)=>Fe(e.innerType._def,t);function ty(e,t,r){let n=r??t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((i,o)=>ty(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 jD(e,t)}}var jD=(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":bt(r,"minimum",n.value,n.message,t);break;case"max":bt(r,"maximum",n.value,n.message,t);break}return r};function XT(e,t){return{...Fe(e.innerType._def,t),default:e.defaultValue()}}function QT(e,t){return t.effectStrategy==="input"?Fe(e.schema._def,t):ur(t)}function eA(e){return{type:"string",enum:Array.from(e.values)}}var zD=e=>"type"in e&&e.type==="string"?!1:"allOf"in e;function tA(e,t){let r=[Fe(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),Fe(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(zD(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 rA(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 ry,ci={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:()=>(ry===void 0&&(ry=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),ry),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 Af(e,t){let r={type:"string"};if(e.checks)for(let n of e.checks)switch(n.kind){case"min":bt(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,t);break;case"max":bt(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":fi(r,"email",n.message,t);break;case"format:idn-email":fi(r,"idn-email",n.message,t);break;case"pattern:zod":on(r,ci.email,n.message,t);break}break;case"url":fi(r,"uri",n.message,t);break;case"uuid":fi(r,"uuid",n.message,t);break;case"regex":on(r,n.regex,n.message,t);break;case"cuid":on(r,ci.cuid,n.message,t);break;case"cuid2":on(r,ci.cuid2,n.message,t);break;case"startsWith":on(r,RegExp(`^${ny(n.value,t)}`),n.message,t);break;case"endsWith":on(r,RegExp(`${ny(n.value,t)}$`),n.message,t);break;case"datetime":fi(r,"date-time",n.message,t);break;case"date":fi(r,"date",n.message,t);break;case"time":fi(r,"time",n.message,t);break;case"duration":fi(r,"duration",n.message,t);break;case"length":bt(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,t),bt(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,t);break;case"includes":{on(r,RegExp(ny(n.value,t)),n.message,t);break}case"ip":{n.version!=="v6"&&fi(r,"ipv4",n.message,t),n.version!=="v4"&&fi(r,"ipv6",n.message,t);break}case"base64url":on(r,ci.base64url,n.message,t);break;case"jwt":on(r,ci.jwt,n.message,t);break;case"cidr":{n.version!=="v6"&&on(r,ci.ipv4Cidr,n.message,t),n.version!=="v4"&&on(r,ci.ipv6Cidr,n.message,t);break}case"emoji":on(r,ci.emoji(),n.message,t);break;case"ulid":{on(r,ci.ulid,n.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{fi(r,"binary",n.message,t);break}case"contentEncoding:base64":{bt(r,"contentEncoding","base64",n.message,t);break}case"pattern:zod":{on(r,ci.base64,n.message,t);break}}break}case"nanoid":on(r,ci.nanoid,n.message,t);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function ny(e,t){return t.patternStrategy==="escape"?GD(e):e}var ND=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function GD(e){let t="";for(let r=0;r<e.length;r++)ND.has(e[r])||(t+="\\"),t+=e[r];return t}function fi(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}}})):bt(e,"format",t,r,n)}function on(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:nA(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):bt(e,"pattern",nA(t,n),r,n)}function nA(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 Fg(e,t){if(e instanceof Pd){let n=new lf(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 lf(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={};$p($d,{ZodISODate:()=>kT,ZodISODateTime:()=>wT,ZodISODuration:()=>TT,ZodISOTime:()=>xT,date:()=>qg,datetime:()=>Dg,duration:()=>Ug,time:()=>Lg});var wT=z("ZodISODateTime",(e,t)=>{dT.init(e,t),sr.init(e,t)});function Dg(e){return _T(wT,e)}var kT=z("ZodISODate",(e,t)=>{uT.init(e,t),sr.init(e,t)});function qg(e){return gT(kT,e)}var xT=z("ZodISOTime",(e,t)=>{cT.init(e,t),sr.init(e,t)});function Lg(e){return yT(xT,e)}var TT=z("ZodISODuration",(e,t)=>{fT.init(e,t),sr.init(e,t)});function Ug(e){return bT(TT,e)}var AT=(e,t)=>{Bc.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:r=>t_(e,r)},flatten:{value:r=>e_(e,r)},addIssue:{value:r=>e.issues.push(r)},addIssues:{value:r=>e.issues.push(...r)},isEmpty:{get(){return e.issues.length===0}}})},y7=z("ZodError",AT),Md=z("ZodError",AT,{Parent:Error});var OT=r_(Md),CT=i_(Md),ET=a_(Md),PT=s_(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)=>jn(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e)),e.parse=(r,n)=>OT(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>ET(e,r,n),e.parseAsync=async(r,n)=>CT(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>PT(e,r,n),e.spa=e.safeParseAsync,e.refine=(r,n)=>e.check(YF(r,n)),e.superRefine=r=>e.check(XF(r)),e.overwrite=r=>e.check(Ga(r)),e.optional=()=>dr(e),e.nullable=()=>$T(e),e.nullish=()=>dr($T(e)),e.nonoptional=r=>ZF(e,r),e.array=()=>gt(e),e.or=r=>rr([e,r]),e.and=r=>uf(e,r),e.transform=r=>Wg(e,FT(r)),e.default=r=>qF(e,r),e.prefault=r=>UF(e,r),e.catch=r=>VF(e,r),e.pipe=r=>Wg(e,r),e.readonly=()=>KF(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)),MT=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(Og(...n)),e.includes=(...n)=>e.check(Pg(...n)),e.startsWith=(...n)=>e.check(Rg(...n)),e.endsWith=(...n)=>e.check(Ig(...n)),e.min=(...n)=>e.check(Bs(...n)),e.max=(...n)=>e.check(af(...n)),e.length=(...n)=>e.check(sf(...n)),e.nonempty=(...n)=>e.check(Bs(1,...n)),e.lowercase=n=>e.check(Cg(n)),e.uppercase=n=>e.check(Eg(n)),e.trim=()=>e.check(Mg()),e.normalize=(...n)=>e.check($g(...n)),e.toLowerCase=()=>e.check(jg()),e.toUpperCase=()=>e.check(zg())}),dF=z("ZodString",(e,t)=>{Ed.init(e,t),MT.init(e,t),e.email=r=>e.check(eg(uF,r)),e.url=r=>e.check(og(cF,r)),e.jwt=r=>e.check(vg(AF,r)),e.emoji=r=>e.check(ag(fF,r)),e.guid=r=>e.check(tf(RT,r)),e.uuid=r=>e.check(tg(df,r)),e.uuidv4=r=>e.check(rg(df,r)),e.uuidv6=r=>e.check(ng(df,r)),e.uuidv7=r=>e.check(ig(df,r)),e.nanoid=r=>e.check(sg(mF,r)),e.guid=r=>e.check(tf(RT,r)),e.cuid=r=>e.check(lg(pF,r)),e.cuid2=r=>e.check(dg(hF,r)),e.ulid=r=>e.check(ug(_F,r)),e.base64=r=>e.check(gg(kF,r)),e.base64url=r=>e.check(yg(xF,r)),e.xid=r=>e.check(cg(gF,r)),e.ksuid=r=>e.check(fg(yF,r)),e.ipv4=r=>e.check(mg(bF,r)),e.ipv6=r=>e.check(pg(vF,r)),e.cidrv4=r=>e.check(hg(SF,r)),e.cidrv6=r=>e.check(_g(wF,r)),e.e164=r=>e.check(bg(TF,r)),e.datetime=r=>e.check(Dg(r)),e.date=r=>e.check(qg(r)),e.time=r=>e.check(Lg(r)),e.duration=r=>e.check(Ug(r))});function $(e){return Q_(dF,e)}var sr=z("ZodStringFormat",(e,t)=>{Vt.init(e,t),MT.init(e,t)}),uF=z("ZodEmail",(e,t)=>{h_.init(e,t),sr.init(e,t)});var RT=z("ZodGUID",(e,t)=>{m_.init(e,t),sr.init(e,t)});var df=z("ZodUUID",(e,t)=>{p_.init(e,t),sr.init(e,t)});var cF=z("ZodURL",(e,t)=>{__.init(e,t),sr.init(e,t)});var fF=z("ZodEmoji",(e,t)=>{g_.init(e,t),sr.init(e,t)});var mF=z("ZodNanoID",(e,t)=>{y_.init(e,t),sr.init(e,t)});var pF=z("ZodCUID",(e,t)=>{b_.init(e,t),sr.init(e,t)});var hF=z("ZodCUID2",(e,t)=>{v_.init(e,t),sr.init(e,t)});var _F=z("ZodULID",(e,t)=>{S_.init(e,t),sr.init(e,t)});var gF=z("ZodXID",(e,t)=>{w_.init(e,t),sr.init(e,t)});var yF=z("ZodKSUID",(e,t)=>{k_.init(e,t),sr.init(e,t)});var bF=z("ZodIPv4",(e,t)=>{x_.init(e,t),sr.init(e,t)});var vF=z("ZodIPv6",(e,t)=>{T_.init(e,t),sr.init(e,t)});var SF=z("ZodCIDRv4",(e,t)=>{A_.init(e,t),sr.init(e,t)});var wF=z("ZodCIDRv6",(e,t)=>{O_.init(e,t),sr.init(e,t)});var kF=z("ZodBase64",(e,t)=>{C_.init(e,t),sr.init(e,t)});var xF=z("ZodBase64URL",(e,t)=>{E_.init(e,t),sr.init(e,t)});var TF=z("ZodE164",(e,t)=>{P_.init(e,t),sr.init(e,t)});var AF=z("ZodJWT",(e,t)=>{R_.init(e,t),sr.init(e,t)});var jT=z("ZodNumber",(e,t)=>{Xc.init(e,t),_r.init(e,t),e.gt=(n,i)=>e.check(nf(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(rf(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(IT(n)),e.safe=n=>e.check(IT(n)),e.positive=n=>e.check(nf(0,n)),e.nonnegative=n=>e.check(Id(0,n)),e.negative=n=>e.check(rf(0,n)),e.nonpositive=n=>e.check(Rd(0,n)),e.multipleOf=(n,i)=>e.check(of(n,i)),e.step=(n,i)=>e.check(of(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 Sg(jT,e)}var OF=z("ZodNumberFormat",(e,t)=>{I_.init(e,t),jT.init(e,t)});function IT(e){return wg(OF,e)}var CF=z("ZodBoolean",(e,t)=>{$_.init(e,t),_r.init(e,t)});function Gr(e){return kg(CF,e)}var EF=z("ZodNull",(e,t)=>{M_.init(e,t),_r.init(e,t)});function zT(e){return xg(EF,e)}var PF=z("ZodUnknown",(e,t)=>{j_.init(e,t),_r.init(e,t)});function lr(){return Tg(PF)}var RF=z("ZodNever",(e,t)=>{z_.init(e,t),_r.init(e,t)});function IF(e){return Ag(RF,e)}var $F=z("ZodArray",(e,t)=>{N_.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(af(r,n)),e.length=(r,n)=>e.check(sf(r,n)),e.unwrap=()=>e.element});function gt(e,t){return vT($F,e,t)}var NT=z("ZodObject",(e,t)=>{Qc.init(e,t),_r.init(e,t),ht.defineLazy(e,"shape",()=>t.shape),e.keyof=()=>Tn(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:lr()}),e.loose=()=>e.clone({...e._zod.def,catchall:lr()}),e.strict=()=>e.clone({...e._zod.def,catchall:IF()}),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(DT,e,r[0]),e.required=(...r)=>ht.required(qT,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 NT(r)}function sn(e,t){return new NT({type:"object",get shape(){return ht.assignProp(this,"shape",{...e}),this.shape},catchall:lr(),...ht.normalizeParams(t)})}var GT=z("ZodUnion",(e,t)=>{ef.init(e,t),_r.init(e,t),e.options=t.options});function rr(e,t){return new GT({type:"union",options:e,...ht.normalizeParams(t)})}var MF=z("ZodDiscriminatedUnion",(e,t)=>{GT.init(e,t),G_.init(e,t)});function Vg(e,t,r){return new MF({type:"union",options:t,discriminator:e,...ht.normalizeParams(r)})}var jF=z("ZodIntersection",(e,t)=>{F_.init(e,t),_r.init(e,t)});function uf(e,t){return new jF({type:"intersection",left:e,right:t})}var zF=z("ZodRecord",(e,t)=>{D_.init(e,t),_r.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function Ht(e,t,r){return new zF({type:"record",keyType:e,valueType:t,...ht.normalizeParams(r)})}var Zg=z("ZodEnum",(e,t)=>{q_.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 Zg({...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 Zg({...t,checks:[],...ht.normalizeParams(i),entries:o})}});function Tn(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new Zg({type:"enum",entries:r,...ht.normalizeParams(t)})}var NF=z("ZodLiteral",(e,t)=>{L_.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 NF({type:"literal",values:Array.isArray(e)?e:[e],...ht.normalizeParams(t)})}var GF=z("ZodTransform",(e,t)=>{U_.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 FT(e){return new GF({type:"transform",transform:e})}var DT=z("ZodOptional",(e,t)=>{Z_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType});function dr(e){return new DT({type:"optional",innerType:e})}var FF=z("ZodNullable",(e,t)=>{W_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType});function $T(e){return new FF({type:"nullable",innerType:e})}var DF=z("ZodDefault",(e,t)=>{V_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function qF(e,t){return new DF({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():t}})}var LF=z("ZodPrefault",(e,t)=>{H_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType});function UF(e,t){return new LF({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():t}})}var qT=z("ZodNonOptional",(e,t)=>{B_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType});function ZF(e,t){return new qT({type:"nonoptional",innerType:e,...ht.normalizeParams(t)})}var WF=z("ZodCatch",(e,t)=>{K_.init(e,t),_r.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function VF(e,t){return new WF({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}var HF=z("ZodPipe",(e,t)=>{J_.init(e,t),_r.init(e,t),e.in=t.in,e.out=t.out});function Wg(e,t){return new HF({type:"pipe",in:e,out:t})}var BF=z("ZodReadonly",(e,t)=>{Y_.init(e,t),_r.init(e,t)});function KF(e){return new BF({type:"readonly",innerType:e})}var LT=z("ZodCustom",(e,t)=>{X_.init(e,t),_r.init(e,t)});function JF(e){let t=new Lr({check:"custom"});return t._zod.check=e,t}function UT(e,t){return Ng(LT,e??(()=>!0),t)}function YF(e,t={}){return Gg(LT,e,t)}function XF(e){let t=JF(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 Hg(e,t){return Wg(FT(e),t)}Mn(pT());var Kg="2025-11-25";var ZT=[Kg,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Io="io.modelcontextprotocol/related-task",ff="2.0",Mr=UT(e=>e!==null&&(typeof e=="object"||typeof e=="function")),WT=rr([$(),Et().int()]),VT=$(),I7=sn({ttl:Et().optional(),pollInterval:Et().optional()}),QF=me({ttl:Et().optional()}),eD=me({taskId:$()}),Jg=sn({progressToken:WT.optional(),[Io]:eD.optional()}),zn=me({_meta:Jg.optional()}),jd=zn.extend({task:QF.optional()}),HT=e=>jd.safeParse(e).success,Ur=me({method:$(),params:zn.loose().optional()}),Jn=me({_meta:Jg.optional()}),Yn=me({method:$(),params:Jn.loose().optional()}),Zr=sn({_meta:Jg.optional()}),mf=rr([$(),Et().int()]),BT=me({jsonrpc:xe(ff),id:mf,...Ur.shape}).strict(),Yg=e=>BT.safeParse(e).success,KT=me({jsonrpc:xe(ff),...Yn.shape}).strict(),JT=e=>KT.safeParse(e).success,Xg=me({jsonrpc:xe(ff),id:mf,result:Zr}).strict(),zd=e=>Xg.safeParse(e).success;var Ee;(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"})(Ee||(Ee={}));var Qg=me({jsonrpc:xe(ff),id:mf.optional(),error:me({code:Et().int(),message:$(),data:lr().optional()})}).strict();var YT=e=>Qg.safeParse(e).success;var XT=rr([BT,KT,Xg,Qg]),$7=rr([Xg,Qg]),pf=Zr.strict(),tD=Jn.extend({requestId:mf.optional(),reason:$().optional()}),hf=Yn.extend({method:xe("notifications/cancelled"),params:tD}),rD=me({src:$(),mimeType:$().optional(),sizes:gt($()).optional(),theme:Tn(["light","dark"]).optional()}),Nd=me({icons:gt(rD).optional()}),Ks=me({name:$(),title:$().optional()}),QT=Ks.extend({...Ks.shape,...Nd.shape,version:$(),websiteUrl:$().optional(),description:$().optional()}),nD=uf(me({applyDefaults:Gr().optional()}),Ht($(),lr())),iD=Hg(e=>e&&typeof e=="object"&&!Array.isArray(e)&&Object.keys(e).length===0?{form:{}}:e,uf(me({form:nD.optional(),url:Mr.optional()}),Ht($(),lr()).optional())),oD=sn({list:Mr.optional(),cancel:Mr.optional(),requests:sn({sampling:sn({createMessage:Mr.optional()}).optional(),elicitation:sn({create:Mr.optional()}).optional()}).optional()}),aD=sn({list:Mr.optional(),cancel:Mr.optional(),requests:sn({tools:sn({call:Mr.optional()}).optional()}).optional()}),sD=me({experimental:Ht($(),Mr).optional(),sampling:me({context:Mr.optional(),tools:Mr.optional()}).optional(),elicitation:iD.optional(),roots:me({listChanged:Gr().optional()}).optional(),tasks:oD.optional(),extensions:Ht($(),Mr).optional()}),lD=zn.extend({protocolVersion:$(),capabilities:sD,clientInfo:QT}),ey=Ur.extend({method:xe("initialize"),params:lD});var dD=me({experimental:Ht($(),Mr).optional(),logging:Mr.optional(),completions:Mr.optional(),prompts:me({listChanged:Gr().optional()}).optional(),resources:me({subscribe:Gr().optional(),listChanged:Gr().optional()}).optional(),tools:me({listChanged:Gr().optional()}).optional(),tasks:aD.optional(),extensions:Ht($(),Mr).optional()}),uD=Zr.extend({protocolVersion:$(),capabilities:dD,serverInfo:QT,instructions:$().optional()}),ty=Yn.extend({method:xe("notifications/initialized"),params:Jn.optional()});var _f=Ur.extend({method:xe("ping"),params:zn.optional()}),cD=me({progress:Et(),total:dr(Et()),message:dr($())}),fD=me({...Jn.shape,...cD.shape,progressToken:WT}),gf=Yn.extend({method:xe("notifications/progress"),params:fD}),mD=zn.extend({cursor:VT.optional()}),Gd=Ur.extend({params:mD.optional()}),Fd=Zr.extend({nextCursor:VT.optional()}),pD=Tn(["working","input_required","completed","failed","cancelled"]),Dd=me({taskId:$(),status:pD,ttl:rr([Et(),zT()]),createdAt:$(),lastUpdatedAt:$(),pollInterval:dr(Et()),statusMessage:dr($())}),Js=Zr.extend({task:Dd}),hD=Jn.merge(Dd),qd=Yn.extend({method:xe("notifications/tasks/status"),params:hD}),yf=Ur.extend({method:xe("tasks/get"),params:zn.extend({taskId:$()})}),bf=Zr.merge(Dd),vf=Ur.extend({method:xe("tasks/result"),params:zn.extend({taskId:$()})}),M7=Zr.loose(),Sf=Gd.extend({method:xe("tasks/list")}),wf=Fd.extend({tasks:gt(Dd)}),kf=Ur.extend({method:xe("tasks/cancel"),params:zn.extend({taskId:$()})}),eA=Zr.merge(Dd),tA=me({uri:$(),mimeType:dr($()),_meta:Ht($(),lr()).optional()}),rA=tA.extend({text:$()}),ry=$().refine(e=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),nA=tA.extend({blob:ry}),Ld=Tn(["user","assistant"]),Ys=me({audience:gt(Ld).optional(),priority:Et().min(0).max(1).optional(),lastModified:$d.datetime({offset:!0}).optional()}),iA=me({...Ks.shape,...Nd.shape,uri:$(),description:dr($()),mimeType:dr($()),size:dr(Et()),annotations:Ys.optional(),_meta:dr(sn({}))}),_D=me({...Ks.shape,...Nd.shape,uriTemplate:$(),description:dr($()),mimeType:dr($()),annotations:Ys.optional(),_meta:dr(sn({}))}),Xs=Gd.extend({method:xe("resources/list")}),gD=Fd.extend({resources:gt(iA)}),Qs=Gd.extend({method:xe("resources/templates/list")}),yD=Fd.extend({resourceTemplates:gt(_D)}),ny=zn.extend({uri:$()}),bD=ny,xf=Ur.extend({method:xe("resources/read"),params:bD}),vD=Zr.extend({contents:gt(rr([rA,nA]))}),SD=Yn.extend({method:xe("notifications/resources/list_changed"),params:Jn.optional()}),wD=ny,kD=Ur.extend({method:xe("resources/subscribe"),params:wD}),xD=ny,TD=Ur.extend({method:xe("resources/unsubscribe"),params:xD}),AD=Jn.extend({uri:$()}),OD=Yn.extend({method:xe("notifications/resources/updated"),params:AD}),CD=me({name:$(),description:dr($()),required:dr(Gr())}),ED=me({...Ks.shape,...Nd.shape,description:dr($()),arguments:dr(gt(CD)),_meta:dr(sn({}))}),Tf=Gd.extend({method:xe("prompts/list")}),PD=Fd.extend({prompts:gt(ED)}),RD=zn.extend({name:$(),arguments:Ht($(),$()).optional()}),Af=Ur.extend({method:xe("prompts/get"),params:RD}),iy=me({type:xe("text"),text:$(),annotations:Ys.optional(),_meta:Ht($(),lr()).optional()}),oy=me({type:xe("image"),data:ry,mimeType:$(),annotations:Ys.optional(),_meta:Ht($(),lr()).optional()}),ay=me({type:xe("audio"),data:ry,mimeType:$(),annotations:Ys.optional(),_meta:Ht($(),lr()).optional()}),ID=me({type:xe("tool_use"),name:$(),id:$(),input:Ht($(),lr()),_meta:Ht($(),lr()).optional()}),$D=me({type:xe("resource"),resource:rr([rA,nA]),annotations:Ys.optional(),_meta:Ht($(),lr()).optional()}),MD=iA.extend({type:xe("resource_link")}),sy=rr([iy,oy,ay,MD,$D]),jD=me({role:Ld,content:sy}),zD=Zr.extend({description:$().optional(),messages:gt(jD)}),ND=Yn.extend({method:xe("notifications/prompts/list_changed"),params:Jn.optional()}),GD=me({title:$().optional(),readOnlyHint:Gr().optional(),destructiveHint:Gr().optional(),idempotentHint:Gr().optional(),openWorldHint:Gr().optional()}),FD=me({taskSupport:Tn(["required","optional","forbidden"]).optional()}),oA=me({...Ks.shape,...Nd.shape,description:$().optional(),inputSchema:me({type:xe("object"),properties:Ht($(),Mr).optional(),required:gt($()).optional()}).catchall(lr()),outputSchema:me({type:xe("object"),properties:Ht($(),Mr).optional(),required:gt($()).optional()}).catchall(lr()).optional(),annotations:GD.optional(),execution:FD.optional(),_meta:Ht($(),lr()).optional()}),Of=Gd.extend({method:xe("tools/list")}),DD=Fd.extend({tools:gt(oA)}),Cf=Zr.extend({content:gt(sy).default([]),structuredContent:Ht($(),lr()).optional(),isError:Gr().optional()}),j7=Cf.or(Zr.extend({toolResult:lr()})),qD=jd.extend({name:$(),arguments:Ht($(),lr()).optional()}),el=Ur.extend({method:xe("tools/call"),params:qD}),LD=Yn.extend({method:xe("notifications/tools/list_changed"),params:Jn.optional()}),z7=me({autoRefresh:Gr().default(!0),debounceMs:Et().int().nonnegative().default(300)}),Ud=Tn(["debug","info","notice","warning","error","critical","alert","emergency"]),UD=zn.extend({level:Ud}),ly=Ur.extend({method:xe("logging/setLevel"),params:UD}),ZD=Jn.extend({level:Ud,logger:$().optional(),data:lr()}),WD=Yn.extend({method:xe("notifications/message"),params:ZD}),VD=me({name:$().optional()}),HD=me({hints:gt(VD).optional(),costPriority:Et().min(0).max(1).optional(),speedPriority:Et().min(0).max(1).optional(),intelligencePriority:Et().min(0).max(1).optional()}),BD=me({mode:Tn(["auto","required","none"]).optional()}),KD=me({type:xe("tool_result"),toolUseId:$().describe("The unique identifier for the corresponding tool call."),content:gt(sy).default([]),structuredContent:me({}).loose().optional(),isError:Gr().optional(),_meta:Ht($(),lr()).optional()}),JD=Vg("type",[iy,oy,ay]),cf=Vg("type",[iy,oy,ay,ID,KD]),YD=me({role:Ld,content:rr([cf,gt(cf)]),_meta:Ht($(),lr()).optional()}),XD=jd.extend({messages:gt(YD),modelPreferences:HD.optional(),systemPrompt:$().optional(),includeContext:Tn(["none","thisServer","allServers"]).optional(),temperature:Et().optional(),maxTokens:Et().int(),stopSequences:gt($()).optional(),metadata:Mr.optional(),tools:gt(oA).optional(),toolChoice:BD.optional()}),QD=Ur.extend({method:xe("sampling/createMessage"),params:XD}),Zd=Zr.extend({model:$(),stopReason:dr(Tn(["endTurn","stopSequence","maxTokens"]).or($())),role:Ld,content:JD}),dy=Zr.extend({model:$(),stopReason:dr(Tn(["endTurn","stopSequence","maxTokens","toolUse"]).or($())),role:Ld,content:rr([cf,gt(cf)])}),eq=me({type:xe("boolean"),title:$().optional(),description:$().optional(),default:Gr().optional()}),tq=me({type:xe("string"),title:$().optional(),description:$().optional(),minLength:Et().optional(),maxLength:Et().optional(),format:Tn(["email","uri","date","date-time"]).optional(),default:$().optional()}),rq=me({type:Tn(["number","integer"]),title:$().optional(),description:$().optional(),minimum:Et().optional(),maximum:Et().optional(),default:Et().optional()}),nq=me({type:xe("string"),title:$().optional(),description:$().optional(),enum:gt($()),default:$().optional()}),iq=me({type:xe("string"),title:$().optional(),description:$().optional(),oneOf:gt(me({const:$(),title:$()})),default:$().optional()}),oq=me({type:xe("string"),title:$().optional(),description:$().optional(),enum:gt($()),enumNames:gt($()).optional(),default:$().optional()}),aq=rr([nq,iq]),sq=me({type:xe("array"),title:$().optional(),description:$().optional(),minItems:Et().optional(),maxItems:Et().optional(),items:me({type:xe("string"),enum:gt($())}),default:gt($()).optional()}),lq=me({type:xe("array"),title:$().optional(),description:$().optional(),minItems:Et().optional(),maxItems:Et().optional(),items:me({anyOf:gt(me({const:$(),title:$()}))}),default:gt($()).optional()}),dq=rr([sq,lq]),uq=rr([oq,aq,dq]),cq=rr([uq,eq,tq,rq]),fq=jd.extend({mode:xe("form").optional(),message:$(),requestedSchema:me({type:xe("object"),properties:Ht($(),cq),required:gt($()).optional()})}),mq=jd.extend({mode:xe("url"),message:$(),elicitationId:$(),url:$().url()}),pq=rr([fq,mq]),hq=Ur.extend({method:xe("elicitation/create"),params:pq}),_q=Jn.extend({elicitationId:$()}),gq=Yn.extend({method:xe("notifications/elicitation/complete"),params:_q}),tl=Zr.extend({action:Tn(["accept","decline","cancel"]),content:Hg(e=>e===null?void 0:e,Ht($(),rr([$(),Et(),Gr(),gt($())])).optional())}),yq=me({type:xe("ref/resource"),uri:$()});var bq=me({type:xe("ref/prompt"),name:$()}),vq=zn.extend({ref:rr([bq,yq]),argument:me({name:$(),value:$()}),context:me({arguments:Ht($(),$()).optional()}).optional()}),Ef=Ur.extend({method:xe("completion/complete"),params:vq});function aA(e){if(e.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${e.params.ref.type}`)}function sA(e){if(e.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${e.params.ref.type}`)}var Sq=Zr.extend({completion:sn({values:gt($()).max(100),total:dr(Et().int()),hasMore:dr(Gr())})}),wq=me({uri:$().startsWith("file://"),name:$().optional(),_meta:Ht($(),lr()).optional()}),kq=Ur.extend({method:xe("roots/list"),params:zn.optional()}),uy=Zr.extend({roots:gt(wq)}),xq=Yn.extend({method:xe("notifications/roots/list_changed"),params:Jn.optional()}),N7=rr([_f,ey,Ef,ly,Af,Tf,Xs,Qs,xf,kD,TD,el,Of,yf,vf,Sf,kf]),G7=rr([hf,gf,ty,xq,qd]),F7=rr([pf,Zd,dy,tl,uy,bf,wf,Js]),D7=rr([_f,QD,hq,kq,yf,vf,Sf,kf]),q7=rr([hf,gf,WD,OD,SD,LD,ND,qd,gq]),L7=rr([pf,uD,Sq,zD,PD,gD,yD,vD,Cf,DD,bf,wf,Js]),ve=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===Ee.UrlElicitationRequired&&n){let i=n;if(i.elicitations)return new Bg(i.elicitations,r)}return new e(t,r,n)}},Bg=class extends ve{constructor(t,r=`URL elicitation${t.length>1?"s":""} required`){super(Ee.UrlElicitationRequired,r,{elicitations:t})}get elicitations(){return this.data?.elicitations??[]}};var Oq=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)=>n_(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>za(e,r,n),e.parseAsync=async(r,n)=>o_(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)=>jn(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e))});var Cq=z("ZodMiniObject",(e,t)=>{Qc.init(e,t),Oq.init(e,t),ht.defineLazy(e,"shape",()=>t.shape)});function cy(e,t){let r={type:"object",get shape(){return ht.assignProp(this,"shape",{...e}),this.shape},...ht.normalizeParams(t)};return new Cq(r)}function Xn(e){return!!e._zod}function Da(e){let t=Object.values(e);if(t.length===0)return cy({});let r=t.every(Xn),n=t.every(i=>!Xn(i));if(r)return cy(e);if(n)return Ah(e);throw new Error("Mixed Zod versions detected in object shape.")}function $o(e,t){return Xn(e)?za(e,t):e.safeParse(t)}async function Pf(e,t){return Xn(e)?await Na(e,t):await e.safeParseAsync(t)}function Mo(e){if(!e)return;let t;if(Xn(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(Xn(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 Rf(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 lA(e){return e.description}function dA(e){if(Xn(e))return e._zod?.def?.type==="optional";let t=e;return typeof e.isOptional=="function"?e.isOptional():t._def?.typeName==="ZodOptional"}function If(e){if(Xn(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 cA=Symbol("Let zodToJsonSchema decide on which parser to use");var uA={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"},fA=e=>typeof e=="string"?{...uA,name:e}:{...uA,...e};var mA=e=>{let t=fA(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 fy(e,t,r,n){n?.errorMessages&&r&&(e.errorMessage={...e.errorMessage,[t]:r})}function yt(e,t,r,n,i){e[t]=r,fy(e,t,n,i)}var $f=(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 ur(e){if(e.target!=="openAi")return{};let t=[...e.basePath,e.definitionPath,e.openAiAnyTypeName];return e.flags.hasReferencedOpenAiAnyType=!0,{$ref:e.$refStrategy==="relative"?$f(t,e.currentPath):t.join("/")}}function pA(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 hA(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 _A(){return{type:"boolean"}}function Mf(e,t){return De(e.type._def,t)}var gA=(e,t)=>De(e.innerType._def,t);function my(e,t,r){let n=r??t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((i,o)=>my(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 Pq(e,t)}}var Pq=(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 yA(e,t){return{...De(e.innerType._def,t),default:e.defaultValue()}}function bA(e,t){return t.effectStrategy==="input"?De(e.schema._def,t):ur(t)}function vA(e){return{type:"string",enum:Array.from(e.values)}}var Rq=e=>"type"in e&&e.type==="string"?!1:"allOf"in e;function SA(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(Rq(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 wA(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 py,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:()=>(py===void 0&&(py=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),py),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 jf(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":ln(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":ln(r,n.regex,n.message,t);break;case"cuid":ln(r,hi.cuid,n.message,t);break;case"cuid2":ln(r,hi.cuid2,n.message,t);break;case"startsWith":ln(r,RegExp(`^${hy(n.value,t)}`),n.message,t);break;case"endsWith":ln(r,RegExp(`${hy(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":{ln(r,RegExp(hy(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":ln(r,hi.base64url,n.message,t);break;case"jwt":ln(r,hi.jwt,n.message,t);break;case"cidr":{n.version!=="v6"&&ln(r,hi.ipv4Cidr,n.message,t),n.version!=="v4"&&ln(r,hi.ipv6Cidr,n.message,t);break}case"emoji":ln(r,hi.emoji(),n.message,t);break;case"ulid":{ln(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":{ln(r,hi.base64,n.message,t);break}}break}case"nanoid":ln(r,hi.nanoid,n.message,t);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function hy(e,t){return t.patternStrategy==="escape"?$q(e):e}var Iq=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function $q(e){let t="";for(let r=0;r<e.length;r++)Iq.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 ln(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:kA(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):yt(e,"pattern",kA(t,n),r,n)}function kA(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 Of(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===J.ZodEnum)return{type:"object",required:e.keyType._def.values,properties:e.keyType._def.values.reduce((n,i)=>({...n,[i]:Fe(e.valueType._def,{...t,currentPath:[...t.currentPath,"properties",i]})??ur(t)}),{}),additionalProperties:t.rejectedAdditionalProperties};let r={type:"object",additionalProperties:Fe(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]})??t.allowedAdditionalProperties};if(t.target==="openApi3")return r;if(e.keyType?._def.typeName===J.ZodString&&e.keyType._def.checks?.length){let{type:n,...i}=Af(e.keyType._def,t);return{...r,propertyNames:i}}else{if(e.keyType?._def.typeName===J.ZodEnum)return{...r,propertyNames:{enum:e.keyType._def.values}};if(e.keyType?._def.typeName===J.ZodBranded&&e.keyType._def.type._def.typeName===J.ZodString&&e.keyType._def.type._def.checks?.length){let{type:n,...i}=Tf(e.keyType._def,t);return{...r,propertyNames:i}}}return r}function iA(e,t){if(t.mapStrategy==="record")return Of(e,t);let r=Fe(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||ur(t),n=Fe(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||ur(t);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function oA(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 aA(e){return e.target==="openAi"?void 0:{not:ur({...e,currentPath:[...e.currentPath,"not"]})}}function sA(e){return e.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Nd={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function dA(e,t){if(t.target==="openApi3")return lA(e,t);let r=e.options instanceof Map?Array.from(e.options.values()):e.options;if(r.every(n=>n._def.typeName in Nd&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((i,o)=>{let a=Nd[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 lA(e,t)}var lA=(e,t)=>{let r=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((n,i)=>Fe(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 uA(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:Nd[e.innerType._def.typeName],nullable:!0}:{type:[Nd[e.innerType._def.typeName],"null"]};if(t.target==="openApi3"){let n=Fe(e.innerType._def,{...t,currentPath:[...t.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=Fe(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function cA(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",ey(r,"type",n.message,t);break;case"min":t.target==="jsonSchema7"?n.inclusive?bt(r,"minimum",n.value,n.message,t):bt(r,"exclusiveMinimum",n.value,n.message,t):(n.inclusive||(r.exclusiveMinimum=!0),bt(r,"minimum",n.value,n.message,t));break;case"max":t.target==="jsonSchema7"?n.inclusive?bt(r,"maximum",n.value,n.message,t):bt(r,"exclusiveMaximum",n.value,n.message,t):(n.inclusive||(r.exclusiveMaximum=!0),bt(r,"maximum",n.value,n.message,t));break;case"multipleOf":bt(r,"multipleOf",n.value,n.message,t);break}return r}function fA(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=DD(l);d&&r&&(l._def.typeName==="ZodOptional"&&(l=l._def.innerType),l.isNullable()||(l=l.nullable()),d=!1);let u=Fe(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=FD(e,t);return a!==void 0&&(n.additionalProperties=a),n}function FD(e,t){if(e.catchall._def.typeName!=="ZodNever")return Fe(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 DD(e){try{return e.isOptional()}catch{return!0}}var mA=(e,t)=>{if(t.currentPath.toString()===t.propertyPath?.toString())return Fe(e.innerType._def,t);let r=Fe(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return r?{anyOf:[{not:ur(t)},r]}:ur(t)};var pA=(e,t)=>{if(t.pipeStrategy==="input")return Fe(e.in._def,t);if(t.pipeStrategy==="output")return Fe(e.out._def,t);let r=Fe(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),n=Fe(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(i=>i!==void 0)}};function hA(e,t){return Fe(e.type._def,t)}function _A(e,t){let n={type:"array",uniqueItems:!0,items:Fe(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};return e.minSize&&bt(n,"minItems",e.minSize.value,e.minSize.message,t),e.maxSize&&bt(n,"maxItems",e.maxSize.value,e.maxSize.message,t),n}function gA(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((r,n)=>Fe(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:Fe(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((r,n)=>Fe(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function yA(e){return{not:ur(e)}}function bA(e){return ur(e)}var vA=(e,t)=>Fe(e.innerType._def,t);var SA=(e,t,r)=>{switch(t){case J.ZodString:return Af(e,r);case J.ZodNumber:return cA(e,r);case J.ZodObject:return fA(e,r);case J.ZodBigInt:return KT(e,r);case J.ZodBoolean:return JT();case J.ZodDate:return ty(e,r);case J.ZodUndefined:return yA(r);case J.ZodNull:return sA(r);case J.ZodArray:return BT(e,r);case J.ZodUnion:case J.ZodDiscriminatedUnion:return dA(e,r);case J.ZodIntersection:return tA(e,r);case J.ZodTuple:return gA(e,r);case J.ZodRecord:return Of(e,r);case J.ZodLiteral:return rA(e,r);case J.ZodEnum:return eA(e);case J.ZodNativeEnum:return oA(e);case J.ZodNullable:return uA(e,r);case J.ZodOptional:return mA(e,r);case J.ZodMap:return iA(e,r);case J.ZodSet:return _A(e,r);case J.ZodLazy:return()=>e.getter()._def;case J.ZodPromise:return hA(e,r);case J.ZodNaN:case J.ZodNever:return aA(r);case J.ZodEffects:return QT(e,r);case J.ZodAny:return ur(r);case J.ZodUnknown:return bA(r);case J.ZodDefault:return XT(e,r);case J.ZodBranded:return Tf(e,r);case J.ZodReadonly:return vA(e,r);case J.ZodCatch:return YT(e,r);case J.ZodPipeline:return pA(e,r);case J.ZodFunction:case J.ZodVoid:case J.ZodSymbol:return;default:return(n=>{})(t)}};function Fe(e,t,r=!1){let n=t.seen.get(e);if(t.override){let s=t.override?.(e,t,n,r);if(s!==WT)return s}if(n&&!r){let s=qD(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=SA(e,e.typeName,t),a=typeof o=="function"?Fe(o(),t):o;if(a&&LD(e,t,a),t.postProcess){let s=t.postProcess(a,e,t);return i.jsonSchema=a,s}return i.jsonSchema=a,a}var qD=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:xf(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`),ur(t)):t.$refStrategy==="seen"?ur(t):void 0}},LD=(e,t,r)=>(e.description&&(r.description=e.description,t.markdownDescription&&(r.markdownDescription=e.description)),r);var iy=(e,t)=>{let r=HT(t),n=typeof t=="object"&&t.definitions?Object.entries(t.definitions).reduce((l,[d,u])=>({...l,[d]:Fe(u._def,{...r,currentPath:[...r.basePath,r.definitionPath,d]},!0)??ur(r)}),{}):void 0,i=typeof t=="string"?t:t?.nameStrategy==="title"?void 0:t?.name,o=Fe(e._def,i===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,i]},!1)??ur(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 UD(e){return!e||e==="jsonSchema7"||e==="draft-7"?"draft-7":e==="jsonSchema2019-09"||e==="draft-2020-12"?"draft-2020-12":"draft-7"}function oy(e,t){return Hn(e)?Og(e,{target:UD(t?.target),io:t?.pipeStrategy??"input"}):iy(e,{strictUnions:t?.strictUnions??!0,pipeStrategy:t?.pipeStrategy??"input"})}function ay(e){let r=Ro(e)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=kf(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function sy(e,t){let r=Po(e,t);if(!r.success)throw r.error;return r.data}var ZD=6e4,Cf=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(af,r=>{this._oncancel(r)}),this.setNotificationHandler(lf,r=>{this._onprogress(r)}),this.setRequestHandler(sf,r=>({})),this._taskStore=t?.taskStore,this._taskMessageQueue=t?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(df,async(r,n)=>{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new be(Pe.InvalidParams,"Failed to retrieve task: Task not found");return{...i}}),this.setRequestHandler(cf,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(Pe.InvalidParams,`Task not found: ${o}`);if(!Io(a.status))return await this._waitForTaskUpdate(o,n.signal),await i();if(Io(a.status)){let s=await this._taskStore.getTaskResult(o,n.sessionId);return this._clearTaskQueue(o),{...s,_meta:{...s._meta,[Eo]:{taskId:o}}}}return await i()};return await i()}),this.setRequestHandler(ff,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(Pe.InvalidParams,`Failed to list tasks: ${i instanceof Error?i.message:String(i)}`)}}),this.setRequestHandler(pf,async(r,n)=>{try{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new be(Pe.InvalidParams,`Task not found: ${r.params.taskId}`);if(Io(i.status))throw new be(Pe.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(Pe.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...o}}catch(i){throw i instanceof be?i:new be(Pe.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(Pe.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),Cd(o)||RT(o)?this._onresponse(o):Fg(o)?this._onrequest(o,a):PT(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(Pe.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?.[Eo]?.taskId;if(n===void 0){let u={jsonrpc:"2.0",id:t.id,error:{code:Pe.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=OT(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(Pe.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:Pe.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),Cd(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(Cd(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),Cd(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(Pe.InternalError,String(a))}}return}let o;try{let a=await this.request(t,Us,n);if(a.task)o=a.task.taskId,yield{type:"taskCreated",task:a.task};else throw new be(Pe.InternalError,"Task creation did not return a task");for(;;){let s=await this.getTask({taskId:o},n);if(yield{type:"taskStatus",task:s},Io(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(Pe.InternalError,`Task ${o} failed`)}:s.status==="cancelled"&&(yield{type:"error",error:new be(Pe.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(Pe.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||{},[Eo]: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(Pe.RequestTimeout,String(b));u(y)};this._responseHandlers.set(f,b=>{if(!n?.signal?.aborted){if(b instanceof Error)return u(b);try{let y=Po(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??ZD,_=()=>m(be.fromError(Pe.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},uf,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},mf,r)}async cancelTask(t,r){return this.request({method:"tasks/cancel",params:t},MT,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||{},[Eo]: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||{},[Eo]: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||{},[Eo]:r.relatedTask}}}),await this._transport.send(a,r)}setRequestHandler(t,r){let n=ay(t);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(i,o)=>{let a=sy(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=ay(t);this._notificationHandlers.set(n,i=>{let o=sy(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"&&Fg(i.message)){let o=i.message.id,a=this._requestResolvers.get(o);a?(a(new be(Pe.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(Pe.InvalidRequest,"Request cancelled"));return}let a=setTimeout(i,n);r.addEventListener("abort",()=>{clearTimeout(a),o(new be(Pe.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(Pe.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=$d.parse({method:"notifications/tasks/status",params:s});await this.notification(l),Io(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(Pe.InvalidParams,`Task "${i}" not found - it may have been cleaned up`);if(Io(s.status))throw new be(Pe.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=$d.parse({method:"notifications/tasks/status",params:l});await this.notification(d),Io(l.status)&&this._cleanupTaskProgressHandler(i)}},listTasks:i=>n.listTasks(i,r)}}};function wA(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function kA(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];wA(a)&&wA(o)?r[i]={...a,...o}:r[i]=o}return r}var dE=KS(Vb(),1),uE=KS(lE(),1);function MW(){let e=new dE.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,uE.default)(e),e}var cm=class{constructor(t){this._ajv=t??MW()}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 fm=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},zd,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},Bs,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 cE(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 fE(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 mm=class extends Cf{constructor(t,r){super(r),this._serverInfo=t,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(jd.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 cm,this.setRequestHandler(Lg,n=>this._oninitialize(n)),this.setNotificationHandler(Ug,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Jg,async(n,i)=>{let o=i.sessionId||i.requestInfo?.headers["mcp-session-id"]||void 0,{level:a}=n.params,s=jd.safeParse(a);return s.success&&this._loggingLevels.set(o,s.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new fm(this)}),this._experimental}registerCapabilities(t){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=kA(this._capabilities,t)}setRequestHandler(t,r){let i=Ro(t)?.method;if(!i)throw new Error("Schema is missing a method literal");let o;if(Hn(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=Po(Hs,l);if(!u.success){let m=u.error instanceof Error?u.error.message:String(u.error);throw new be(Pe.InvalidParams,`Invalid tools/call request: ${m}`)}let{params:c}=u.data,f=await Promise.resolve(r(l,d));if(c.task){let m=Po(Us,f);if(!m.success){let h=m.error instanceof Error?m.error.message:String(m.error);throw new be(Pe.InvalidParams,`Invalid task creation result: ${h}`)}return m.data}let p=Po(bf,f);if(!p.success){let m=p.error instanceof Error?p.error.message:String(p.error);throw new be(Pe.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){fE(this._clientCapabilities?.tasks?.requests,t,"Client")}assertTaskHandlerCapability(t){this._capabilities&&cE(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:Ng,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"},of)}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},Yg,r):this.request({method:"sampling/createMessage",params:t},zd,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},Bs,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},Bs,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(Pe.InvalidParams,`Elicitation response content does not match requested schema: ${s.errorMessage}`)}catch(a){throw a instanceof be?a:new be(Pe.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},Xg,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 pE=Symbol.for("mcp.completable");function ev(e){return!!e&&typeof e=="object"&&pE in e}function hE(e){return e[pE]?.complete}var mE;(function(e){e.Completable="McpCompletable"})(mE||(mE={}));var jW=/^[A-Za-z0-9._-]{1,128}$/;function zW(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"),!jW.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 NW(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 tv(e){let t=zW(e);return NW(e,t.warnings),t.isValid}var pm=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 hm=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 mm(t,r)}get experimental(){return this._experimental||(this._experimental={tasks:new pm(this)}),this._experimental}async connect(t){return await this.server.connect(t)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(qo(yf)),this.server.assertCanSetRequestHandler(qo(Hs)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(yf,()=>({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=Ks(r.inputSchema);return i?oy(i,{strictUnions:!0,pipeStrategy:"input"}):GW})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let i=Ks(r.outputSchema);i&&(n.outputSchema=oy(i,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(Hs,async(t,r)=>{try{let n=this._registeredTools[t.params.name];if(!n)throw new be(Pe.InvalidParams,`Tool ${t.params.name} not found`);if(!n.enabled)throw new be(Pe.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(Pe.InternalError,`Tool ${t.params.name} has taskSupport '${o}' but was not registered with registerToolTask`);if(o==="required"&&!i)throw new be(Pe.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===Pe.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=Ks(t.inputSchema)??t.inputSchema,a=await Sf(o,r);if(!a.success){let s="error"in a?a.error:"Unknown error",l=wf(s);throw new be(Pe.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(Pe.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let i=Ks(t.outputSchema),o=await Sf(i,r.structuredContent);if(!o.success){let a="error"in o?o.error:"Unknown error",s=wf(a);throw new be(Pe.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(Pe.InternalError,`Task ${l} not found during polling`);d=c}return await n.taskStore.getTaskResult(l)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(qo(vf)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(vf,async t=>{switch(t.params.ref.type){case"ref/prompt":return DT(t),this.handlePromptCompletion(t,t.params.ref);case"ref/resource":return qT(t),this.handleResourceCompletion(t,t.params.ref);default:throw new be(Pe.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(Pe.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new be(Pe.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return mu;let o=Ro(n.argsSchema)?.[t.params.argument.name];if(!ev(o))return mu;let a=hE(o);if(!a)return mu;let s=await a(t.params.argument.value,t.params.context);return gE(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 mu;throw new be(Pe.InvalidParams,`Resource template ${t.params.ref.uri} not found`)}let i=n.resourceTemplate.completeCallback(t.params.argument.name);if(!i)return mu;let o=await i(t.params.argument.value,t.params.context);return gE(o)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(qo(Ws)),this.server.assertCanSetRequestHandler(qo(Vs)),this.server.assertCanSetRequestHandler(qo(hf)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Ws,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(Vs,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(hf,async(t,r)=>{let n=new URL(t.params.uri),i=this._registeredResources[n.toString()];if(i){if(!i.enabled)throw new be(Pe.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(Pe.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(qo(_f)),this.server.assertCanSetRequestHandler(qo(gf)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(_f,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,t])=>t.enabled).map(([t,r])=>({name:t,title:r.title,description:r.description,arguments:r.argsSchema?FW(r.argsSchema):void 0}))})),this.server.setRequestHandler(gf,async(t,r)=>{let n=this._registeredPrompts[t.params.name];if(!n)throw new be(Pe.InvalidParams,`Prompt ${t.params.name} not found`);if(!n.enabled)throw new be(Pe.InvalidParams,`Prompt ${t.params.name} disabled`);if(n.argsSchema){let i=Ks(n.argsSchema),o=await Sf(i,t.params.arguments);if(!o.success){let l="error"in o?o.error:"Unknown error",d=wf(l);throw new be(Pe.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:Na(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=Na(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 pn?l._def?.innerType:l;return ev(d)})&&this.setCompletionRequestHandler(),a}_createRegisteredTool(t,r,n,i,o,a,s,l,d){tv(t);let u={title:r,description:n,inputSchema:_E(i),outputSchema:_E(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"&&tv(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=Na(c.paramsSchema)),typeof c.outputSchema<"u"&&(u.outputSchema=Na(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(rv(l))i=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!rv(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 GW={type:"object",properties:{}};function yE(e){return e!==null&&typeof e=="object"&&"parse"in e&&typeof e.parse=="function"&&"safeParse"in e&&typeof e.safeParse=="function"}function bE(e){return"_def"in e||"_zod"in e||yE(e)}function rv(e){return typeof e!="object"||e===null||bE(e)?!1:Object.keys(e).length===0?!0:Object.values(e).some(yE)}function _E(e){if(e){if(rv(e))return Na(e);if(!bE(e))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return e}}function FW(e){let t=Ro(e);return t?Object.entries(t).map(([r,n])=>{let i=LT(n),o=UT(n);return{name:r,description:i,required:!o}}):[]}function qo(e){let r=Ro(e)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=kf(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function gE(e){return{completion:{values:e.slice(0,100),total:e.length,hasMore:e.length>100}}}var mu={completion:{values:[],hasMore:!1}};import SE from"node:process";var _m=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),qW(r)}clear(){this._buffer=void 0}};function qW(e){return IT.parse(JSON.parse(e))}function vE(e){return JSON.stringify(e)+`
322
- `}var gm=class{constructor(t=SE.stdin,r=SE.stdout){this._stdin=t,this._stdout=r,this._readBuffer=new _m,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=vE(t);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};function UW(e){let t={};t.listChanged=!1;let r={};r.resources=t,e.server.registerCapabilities(r),e.server.setRequestHandler(Ws,()=>{let n={};return n.resources=[],n}),e.server.setRequestHandler(Vs,()=>{let n={};return n.resourceTemplates=[],n})}function ZW(e){return{registerTool:(t,r,n,i)=>{e.tool(t,r,n,i)}}}async function nv(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=_0(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 L0(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 iv(e,t){let r=yr(e,"token");return{serviceUrl:t,explicitToken:r!==void 0?r:process.env.LINZUMI_MCP_ACCESS_TOKEN,authFilePath:yr(e,"auth-file"),delegationAuthFilePath:yr(e,"delegation-auth-file"),workspaceSlug:yr(e,"workspace"),channelSlug:yr(e,"channel")}}async function WW(e){let t=Bu(e);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0;if(Ku(r,"help"))return ia(Xu()),{TAG:"Ok",_0:void 0};let n=Ju(r,"api-url");if(n.TAG!=="Ok")return{TAG:"Error",_0:n._0};let i=n._0,o=await nv(iv(r,i));if(o.TAG!=="Ok")return{TAG:"Error",_0:o._0};let a=o._0,s=Yu(yr(r,"mode")),l=Ap(yr(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=yr(r,"owner-username"),c=u!==void 0?u:process.env.LINZUMI_MCP_OWNER_USERNAME,f=yr(r,"cwd"),p=f!==void 0?f:process.cwd(),m=yr(r,"thread-id"),h=m!==void 0?m:process.env[ok],_=Rh({serviceUrl:i,accessToken:a.accessToken,authMode:a.mode,operatingMode:d});if(_.TAG!=="Ok")return{TAG:"Error",_0:_._0};let g=new hm({name:"linzumi",version:"0.1.0"});return UW(g),Mk(ZW(g),{client:_._0,toolScope:l._0,operatingMode:d,cwd:p,serviceUrl:i,defaultThreadId:h,ownerUsername:c,agentSession:Ku(r,"agent-session"),devServices:Ok(process.env)}),await g.connect(new gm),{TAG:"Ok",_0:void 0}}async function VW(e){let t=Bu(e);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0,n=Ju(r,"api-url");if(n.TAG!=="Ok")return{TAG:"Error",_0:n._0};let i=n._0,o=yr(r,"format"),a=o!==void 0?o:"codex",s=Yu(yr(r,"mode"));if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0};let l;if(Ku(r,"include-token")){let f=await nv(iv(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=Ap(yr(r,"tool-scope"));if(d.TAG!=="Ok")return{TAG:"Error",_0:d._0};let u=yr(r,"owner-username"),c=Mc({command:yr(r,"command"),serviceUrl:i,accessToken:l._0,delegationAuthFilePath:yr(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 ia(Gk(c)),{TAG:"Ok",_0:void 0};case"codex":return ia(Fk(c)),{TAG:"Ok",_0:void 0};default:return{TAG:"Error",_0:"--format must be codex or claude-code"}}}async function HW(e){let t=Bu(e);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0,n=Ju(r,"api-url");if(n.TAG!=="Ok")return{TAG:"Error",_0:n._0};let i=n._0,o=await nv(iv(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 Os(i,a.accessToken,yr(r,"workspace"),yr(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=Yu(yr(r,"mode"));if(d.TAG==="Ok"){let u=Rh({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=X(c);l={TAG:"Error",_0:cs(f)}}else l={TAG:"Error",_0:u._0}}else l={TAG:"Error",_0:d._0}}return l.TAG!=="Ok"?{TAG:"Error",_0:l._0}:(ia(`Linzumi MCP auth OK
323
- `),{TAG:"Ok",_0:void 0})}async function wE(e){let t=e.slice(1),r=e[0];if(r!==void 0)switch(r){case"--help":case"-h":return ia(Xu()),{TAG:"Ok",_0:void 0};case"config":return await VW(t);case"doctor":return await HW(t);case"server":return await WW(t);default:return{TAG:"Error",_0:"unknown linzumi mcp command: "+r}}else return ia(Xu()),{TAG:"Ok",_0:void 0}}function kE(e){if(typeof e=="number"&&e%1===0)return e}function KW(e){if(typeof e=="string")return e}function JW(e){let t=e.replaceAll("-","+").replaceAll("_","/");switch(t.length&3){case 2:return t+"==";case 3:return t+"=";default:return t}}function xE(e){let t=e.split(".")[1];if(t===void 0)return;let r=Buffer.from(JW(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 ym(e){let t=xE(e);if(t===void 0)return{actorUserId:void 0,actorUsername:void 0};let r=kE(t.actor_id);return{actorUserId:r!==void 0?r:kE(t.sub),actorUsername:KW(t.actor_username)}}function TE(e){let t=k(xE(e),n=>n.workspace_scope),r=t!==void 0?Array.isArray(t)?ze(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"]],AE=[["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"]],bm=[["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"]],sv=[["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 pu(){return x("1.0.139","0.0.0-unbundled")}function dv(){return"linzumi "+x("1.0.139","0.0.0-unbundled")}function fl(e,t){let r=e.indexOf(t);if(r!==-1)return r}function uv(){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 cv(e){let t={};return e.forEach(r=>{t[r[0]]=r[1]}),t}function YW(e){let t={};return e.forEach(r=>{t[r[1]]=r[0]}),t}var EE=cv(AE),PE=cv(bm),XW=cv(sv),QW=YW(sv);function eV(e){return e.endsWith("_canonical")?!0:e.endsWith("_legacy")}function RE(e,t){return t>=32?e:Array.isArray(e)?e.map(r=>RE(r,t+1|0)):e===null?e:typeof e==="object"?IE(e,t):e}function IE(e,t){let r=Object.keys(e),n={};return r.forEach(i=>{let o=e[i];if(o!==void 0){n[i]=RE(o,t+1|0);return}}),r.forEach(i=>{if(eV(i))return;let o=n[i];if(o===void 0)return;let a=EE[i];if(a!==void 0)n[a]=o;else{let c=PE[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=XW[s];if(l!==void 0){if(n[i+"_canonical"]!==void 0)return;n[i+"_canonical"]=l;return}let d=QW[s];if(!(d===void 0||n[i+"_legacy"]!==void 0)){n[i+"_legacy"]=d;return}}),n}function vm(e){return uv()?IE(e,0):e}function $E(e){let t=e.slice();return e.forEach(r=>{let n=EE[r];n!==void 0&&!t.includes(n)&&t.push(n);let i=PE[r];if(i!==void 0&&!t.includes(i)){t.push(i);return}}),t}var ml="<SENSITIVE_DATA>",tV=$E(["access_token","authorization","code","cookie","kandan_preview_ticket","refresh_token","token"]),rV=["--access-token","--api-key","--authorization","--cookie","--oauth-code","--password","--refresh-token","--secret","--token"],nV=new RegExp("^(authorization|cookie|set-cookie|password)$","i"),iV=new RegExp("(^|[_-])(access[_-]?token|api[_-]?key|auth[_-]?token|oauth[_-]?code|refresh[_-]?token|secret|token)$","i"),oV=new RegExp("\\beyJ[A-Za-z0-9_-]*\\.[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+\\b","g");function aV(e){return e!==void 0?nV.test(e)?!0:iV.test(e):!1}function ME(e){let t={contents:!1};return lw(e).forEach(r=>{if(tV.includes(r.toLowerCase())){e.set(r,ml),t.contents=!0;return}}),t.contents}function sV(e){let t=fl(e,"?"),r=fl(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 ME(a)?n+"?"+a.toString()+o:e}function lV(e){let t=Fn(e);if(t===void 0)return sV(e);let r=ue(t);return ME(r.searchParams),r.toString()}function jE(e){return lV(e).replace(oV,ml)}function dV(e){let t=fl(e,"=");return t!==void 0?[e.slice(0,t),e.slice(t+1|0)]:[e,void 0]}function mv(e,t){if(aV(t))return ml;if(Array.isArray(e))return t==="args"?uV(e):e.map(r=>mv(r,void 0));if(e===null)return e;switch(typeof e){case"string":return jE(e);case"object":return zE(e);default:return e}}function uV(e){let t={contents:!1};return e.map(r=>{if(typeof r=="string"){if(t.contents)return t.contents=!1,ml;let n=dV(r),i=n[0];return rV.includes(i)?n[1]!==void 0?i+"="+ml:(t.contents=!0,r):jE(r)}return t.contents=!1,mv(r,void 0)})}function zE(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"?ml:mv(o[1],a);return}}),i}var Sm=zE;import*as Yo from"node:os";import*as gp from"node:path";import*as US from"node:crypto";function yi(e){let t=parseFloat(e);if(!Number.isNaN(t))return t}function GE(e){return"local_runner:"+e}var cV="kandan-local-codex-runner",fV="rescript";function FE(e){let t={};t.clientName=cV,t.clientId=e.clientId;let r=e.machineFingerprint;t.machineFingerprint=r!==void 0?r:null,Object.entries(j0(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=fV,t}function DE(e,t,r){let n={};return n.last_seq=r,t!==void 0&&(n.runner_id=e,n.thread_id=t),n}function $n(e,t){return e.catch(r=>t(X(r)))}function LE(){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 UE(e){return import(e)}var pV="@anthropic-ai/claude-agent-sdk";function ZE(e){return LE()}function hV(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 WE(){let e=await UE(pV);return{query:t=>hV(e.query(t)),getSessionInfo:(t,r)=>e.getSessionInfo(t,r),listSessions:t=>e.listSessions(t),getSessionMessages:(t,r)=>e.getSessionMessages(t,r)}}var pv=["codex","claude-code","pi","opencode"];function Ba(e){return e}function wm(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 _V(e){switch(e){case"SocketOpen":return"open";case"SocketMessage":return"message";case"SocketClose":return"close";case"SocketError":return"error"}}function gV(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 yV(e){return{readyState:()=>e.readyState,send:t=>{e.send(t)},close:()=>{e.close()},on:(t,r)=>{e.addEventListener(_V(t),n=>r(gV(n)),{})}}}function km(e,t){return yV(new WebSocket(e,t))}var HE=0,Ka=1;var hv="file",_v=["mcp_oauth_credentials_store","cli_auth_credentials_store"],bV=_v.flatMap(e=>["-c",e+'="'+hv+'"']),vV=["-c","features.apps=false"];function co(e){return JSON.stringify(e)}function SV(e){let t=(r,n)=>r!==void 0?Object.entries(r).flatMap(i=>["-c","model_providers."+e.id+"."+n+"."+i[0]+"="+co(i[1])]):[];return[["-c","model_providers."+e.id+".name="+co(e.name),"-c","model_providers."+e.id+".base_url="+co(e.baseUrl),"-c","model_providers."+e.id+".env_key="+co(e.envKey),"-c","model_providers."+e.id+".wire_api="+co(e.wireApi)],t(e.httpHeaders,"http_headers"),t(e.envHttpHeaders,"env_http_headers"),["-c","model_provider="+co(e.id)]].flat()}function wV(e){let t=e.model,r=e.reasoningEffort,n=e.modelProvider;return[vV,bV,t!==void 0?["-c","model="+co(t)]:[],r!==void 0?["-c","model_reasoning_effort="+co(r)]:[],e.fast?["-c","service_tier="+co("fast")]:[],e.mcpConfigArgs.flat(),n!==void 0?SV(n):[]].flat()}function KE(e,t){return[["app-server"],wV(t),["--listen",e]].flat()}var kV=["LINZUMI_MCP_ACCESS_TOKEN","LINZUMI_MCP_OWNER_USERNAME"];function JE(e,t,r){let n=r?Object.fromEntries(Object.entries(e)):{};return kV.forEach(i=>cr(n,i)),t.forEach(i=>{let o=i[1],a=i[0];if(o!==void 0){n[a]=o;return}else return cr(n,a)}),n}var YE=["ignore","pipe","pipe"];function XE(e){let t=e.length;return t>12e3?e.slice(t-12e3|0,t):e}function QE(e,t,r){return r<3&&e.includes("codex app-server exited before readyz")&&t.includes("EADDRINUSE")?t.includes("listen"):!1}function eP(e){let t=Fn(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 xV="kandan-local-codex-runner",TV="0.0.1";function tP(){return Object.fromEntries([["clientInfo",Object.fromEntries([["name",xV],["version",TV]])],["capabilities",Object.fromEntries([["experimentalApi",!0]])]])}var AV=new RegExp("\\bsession\\b.+\\bis archived\\b","i");function rP(e){return AV.test(e)}var OV=new RegExp("^thread not found(?:\\s*:|\\b)","i");function nP(e){return OV.test(e.trim())}var iP=2e3;function CV(e){try{e.unref();return}catch{return}}var oP="codex app-server websocket closed",EV="codex app-server websocket is not open";function PV(e){let t=e.method;if(typeof t=="string")return t}function gv(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 Tm(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=X(o);return{TAG:"Error",_0:Ge(a).message}}}function dP(e,t,r){try{return t(r)}catch(n){let i=X(n);return e("codex.notification_callback_failed",Object.fromEntries([["purpose","codex.app_server"],["method",r.method],["message",Ge(i).message]]))}}function aP(e,t,r){try{return t(r)}catch(n){let i=X(n);return e("codex.close_callback_failed",Object.fromEntries([["purpose","codex.app_server"],["message",Ge(i).message]]))}}function RV(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 IV(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(;Nn(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=X(f);a={TAG:"Error",_0:[-32e3,Ge(p).message]}}u===1&&c!==void 0&&(a={TAG:"Ok",_0:c})}s=s+1|0}let l=x(a,i);Tm(t,r,"outgoing",RV(n.id,l))}function $V(e,t,r,n,i){let o;try{o=JSON.parse(i)}catch(p){let m=X(p);r("codex.app_server_frame_malformed",Object.fromEntries([["purpose","codex.app_server"],["message",Ge(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=Ft(a.id),l=s&&(Ft(a.result)||Ft(a.error)),d=PV(a);if(l){let p=x(a.id,null),m=JSON.stringify(p),h=e.pending[m];return h!==void 0?(cr(e.pending,m),h.resolvePending({TAG:"Ok",_0:gv(a)})):void 0}if(s)if(d!==void 0){$n(IV(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=>dP(r,p,c)):e.pendingNotifications.push(c)}function MV(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 sP(e,t){return Object.fromEntries(t!==void 0?[["jsonrpc","2.0"],["method",e],["params",t]]:[["jsonrpc","2.0"],["method",e]])}function lP(e,t,r,n,i,o){return t.socket.readyState()===Ka?new Promise((a,s)=>{e.pending[JSON.stringify(n)]={resolvePending:a};let l=Tm(t,r,"request",MV(n,i,o));l.TAG!=="Ok"&&(cr(e.pending,JSON.stringify(n)),a({TAG:"Error",_0:l._0}))}):Promise.resolve({TAG:"Error",_0:EV})}async function yv(e,t,r,n){let i=t!==void 0?t:u=>({socket:km(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(;Nn(l);){let u;try{u={TAG:"Ok",_0:i(e)}}catch(c){let f=X(c);u={TAG:"Error",_0:Ge(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 bv(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()===Ka)try{return d()}catch{return}},t.keepaliveIntervalMs);CV(o);let a=d=>{clearInterval(o);let u=Object.entries(r.pending);if(Object.entries(r.pending).forEach(p=>cr(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=>aP(n,p,d))};e.socket.on("SocketClose",d=>a(oP)),e.socket.on("SocketError",d=>a(oP)),e.socket.on("SocketMessage",d=>{let u=d.data;if(u!==void 0)return i("incoming",u),$V(r,e,n,i,u)});let s=await lP(r,e,i,"initialize","initialize",tP());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}:(Tm(e,i,"outgoing",sP("initialized",void 0)),{TAG:"Ok",_0:{request:(d,u)=>{let c=r.nextId;return r.nextId=r.nextId+1|0,lP(r,e,i,c,d,u)},notify:(d,u)=>{Tm(e,i,"outgoing",sP(d,u))},onNotification:d=>{r.notificationCallbacks.push(d);let u=r.pendingNotifications.slice();r.pendingNotifications.splice(0,r.pendingNotifications.length),u.forEach(c=>dP(n,d,c))},onRequest:d=>{r.requestCallbacks.push(d)},onClose:d=>{let u=r.closeError;if(u!==void 0)return aP(n,d,u);r.closeCallbacks.push(d)},isClosed:()=>Ft(r.closeError),close:()=>{clearInterval(o);try{return e.socket.close()}catch{return}}}})}function hu(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function Ja(e){if(e!==void 0&&typeof e=="string"&&e.trim()!=="")return e.trim()}function Am(e){if(e!==void 0&&typeof e=="number"&&Rt(e))return e}var jV="linzumi_thread_codex_worker_ready",zV="linzumi_thread_codex_worker_session_closed",NV="linzumi_thread_codex_worker_request",GV="linzumi_thread_codex_worker_notify",FV="linzumi_thread_codex_worker_response",DV="linzumi_thread_codex_worker_notification",qV="linzumi_thread_codex_worker_server_request",LV="linzumi_thread_codex_worker_server_request_response";function UV(e,t,r){let n={};return n.type=NV,n.id=e,n.method=t,r!==void 0&&(n.params=r),n}function ZV(e,t){let r={};return r.type=GV,r.method=e,t!==void 0&&(r.params=t),r}function Sv(e,t,r){let n={};return n.type=LV,n.id=e,t!==void 0&&(n.result=t),r!==void 0&&(n.error=r),n}function WV(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 VV(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 HV(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 BV(e){let t=hu(e);if(t===void 0)return;let r=t.type;if(r===void 0||typeof r!="string")return;if(r===FV){let o=Am(t.id);return o!==void 0?{TAG:"ChildResponse",id:o,response:WV(t.response),error:Ja(t.error)}:void 0}if(r===DV){let o=VV(t.notification);return o!==void 0?{TAG:"ChildNotification",notification:o}:void 0}if(r!==qV)return;let n=Am(t.id),i=HV(t.request);if(n!==void 0&&i!==void 0)return{TAG:"ChildServerRequest",id:n,request:i}}function cP(e){let t=hu(e);if(t===void 0)return;let r=t.type;if(typeof r=="string"&&r===zV)return[x(Ja(t.kandanThreadId),""),x(Ja(t.reason),"")]}var KV="thread Codex worker reported invalid ready payload";function JV(e){let t=Ja(e);if(t!==void 0)switch(t){case"claude-code":return"claude-code";case"codex":return"codex";default:return}}function YV(e){return e!==void 0?Array.isArray(e)?ze(e,t=>{let r=hu(t);if(r===void 0)return;let n=Am(r.port);if(n!==void 0&&n>=1&&n<=65535)return{port:n,pid:Am(r.pid),processName:Ja(r.processName),processIconKey:Ja(r.processIconKey),agentProvider:JV(r.agentProvider)}}):[]:[]}function fP(e,t){let r=hu(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!==jV)return{TAG:"Ok",_0:void 0};let i=Ja(r.kandanThreadId);return i!==void 0&&i===t?{TAG:"Ok",_0:{kandanThreadId:i,commanderManagedPorts:YV(r.commanderManagedPorts)}}:{TAG:"Error",_0:KV}}function XV(e,t){}var QV="linzumi.thread_runner";var uP="thread Codex worker IPC channel closed";var e4="thread Codex worker IPC client is closed",t4="thread Codex worker response missing body",r4="thread Codex worker IPC client closed";async function n4(e,t,r,n,i,o){let a=d=>{let u=e(d);if(u.TAG==="Ok")return;let c={};c.purpose=QV,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(Sv(t,c,void 0)))}else s=!0,a(Sv(t,void 0,u._0))}l=l+1|0}if(!s)return a(Sv(t,void 0,"unhandled Codex app-server request: "+n))}function i4(e){let t=hu(e);if(t===void 0)return"";let r=t.method;return typeof r=="string"?r:""}function mP(e,t){let r=t!==void 0?t:XV,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:e4};let g=e.send,b=e.isConnected();return g!==void 0&&b?g(_):{TAG:"Error",_0:uP}},c=_=>{let g=BV(_);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:t4})):void 0;case"ChildNotification":let A=g.notification;i.length!==0?i.forEach(H=>H(A)):a.push(A);return;case"ChildServerRequest":let z=g.request;n4(u,g.id,z,i4(z),o,r);return}},f=e.onMessage(c),p=()=>{l.contents=!0,d(uP)},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(UV(v,_,g));S.TAG!=="Ok"&&(n.delete(v),b({TAG:"Error",_0:S._0}))}),notify:(_,g)=>u(ZV(_,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(r4)}}}import*as Cv from"node:child_process";import*as hP from"node:os";import*as _P from"node:path";function gP(){return _P.join(hP.homedir(),".linzumi","protected-dev-listeners")}var o4=new RegExp("^(\\d+)\\s+(\\d+)$");function a4(e){return ze(e.split(`
324
- `),t=>{let r=o4.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=yi(i),s=yi(o);if(a!==void 0&&s!==void 0)return{pid:a,pgid:s}})}function s4(e){let t=ql("ps",["-axo","pid=,pgid="],5e3,16e6);if(t.TAG==="Ok")return a4(t._0).filter(r=>r.pgid===e).map(r=>r.pid)}function Om(e,t,r,n,i){let o=n!==void 0?n:s4,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(!se(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 vP={contents:(e,t)=>{}};var wv="SIGKILL",Ya={children:new Set,handlersInstalled:!1,removeHandlers:void 0};function _u(e,t,r,n,i){let o=e.pid;vP.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 l4(e,t,r,n){let i;try{e.stop(),i={TAG:"Ok",_0:void 0}}catch(l){i={TAG:"Error",_0:X(l)}}if(i.TAG!=="Ok"){let l=Ge(i._0);_u(e,n,"stop",l.code,l.message)}let o=e.pid;if(o===void 0)return;if(e.ownProcessGroup){let l=Om(o,wv,t,void 0,r);l.sparedPids.length!==0&&vP.contents("process.reap_spared_listeners",Object.fromEntries([["purpose",e.kind],["pid",o],["reason",n],["sparedPids",l.sparedPids.map(f=>f)]])),l.failures.forEach(f=>_u(e,n,"member_kill:"+f.pid.toString(),f.code,f.message));let d=l.groupSignalError;if(d===void 0||se(d.code,"ESRCH"))return;_u(e,n,"group_kill",d.code,d.message);let u=t(o,wv);if(u.TAG==="Ok")return;let c=u._0;return se(c.code,"ESRCH")?void 0:_u(e,n,"pid_kill",c.code,c.message)}let a=t(o,wv);if(a.TAG==="Ok")return;let s=a._0;if(!se(s.code,"ESRCH"))return _u(e,n,"pid_kill",s.code,s.message)}function kv(e,t,r){let n=e!==void 0?e:Ui,i=t!==void 0?t:new Set,o=r!==void 0?r:"exit",a=Array.from(Ya.children);return Ya.children.clear(),a.forEach(s=>l4(s,n,i,o)),a.length}function bP(e,t){let r;return r=typeof t=="string"?t:JSON.stringify(t),"linzumi commander "+e+": "+r+`
325
- `}function d4(){if(Ya.handlersInstalled)return;Ya.handlersInstalled=!0;let e=o=>{kv(void 0,void 0,"process_exit")};process.on("exit",e);let t=process.listenerCount("uncaughtException")===0,r=process.listenerCount("unhandledRejection")===0,n=o=>{kv(void 0,void 0,"uncaught_exception"),Vr(bP("uncaughtException",o)),process.exit(1)},i=o=>{kv(void 0,void 0,"unhandled_rejection"),Vr(bP("unhandledRejection",o)),process.exit(1)};t&&process.on("uncaughtException",n),r&&process.on("unhandledRejection",i),Ya.removeHandlers=()=>{if(process.off("exit",e),t&&process.off("uncaughtException",n),r){process.off("unhandledRejection",i);return}}}function Cm(e){return Ya.children.add(e),d4(),{unregister:()=>{Ya.children.delete(e)}}}import*as gu from"node:path";var wee=new RegExp("(\\d+\\.\\d+\\.\\d+)");import*as wP from"node:net";function _l(e,t){try{return e.kill(t)}catch{return!1}}function kP(){return new Promise((e,t)=>{let r=wP.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 kee=new RegExp("[^0-9A-Za-z._-]","g");var jee=new RegExp("[\\\\/]");var xP="cannot fork thread runner without current CLI script path";var zee=15*6e4,Nee=120*6e4,Gee=1440*6e4,Fee=2*6e4;var m4="this computer is updating its Linzumi runner",Dee=m4+" to a new version - nothing was started. Retry in a few minutes once the update finishes.";var qee=15*6e4;var TP="this computer restarted its Linzumi runner for an update",Lee=TP+" after waiting for this job past the drain timeout - the job was interrupted. Send your message again to continue.",Uee=TP+" 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 h4(e,t){}var Tv="linzumi.thread_runner";function AP(e,t){return e!==void 0&&e.trim()!==""?{TAG:"Ok",_0:gu.isAbsolute(e)?e:gu.resolve(t,e)}:{TAG:"Error",_0:xP}}function _4(e){return["--require","-r","--import","--loader","--experimental-loader"].includes(e)}function g4(e){return["--require=","-r=","--import=","--loader=","--experimental-loader="].some(t=>e.startsWith(t))}function y4(e){let t=[],r=0;for(;r<e.length;){let n=e[r];if(n!==void 0){let i=_4(n),o=g4(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 Av(e,t,r){return y4(r).concat([e].concat(t))}function ln(e,t){return t!==void 0?t!==""?[e,t]:[]:[]}function OP(e){let t=n=>{let i=n.join(",");if(i!=="")return i},r=e.codexModelProvider;return[["--api-url",e.kandanUrl],["--cwd",e.cwd],["--codex-bin",e.codexBin],ln("--workspace",e.workspaceSlug),ln("--log-file",e.logFile),ln("--debug-trace-dir",D(e.debugTrace,n=>n.dir)),ln("--debug-trace-content",k(e.debugTrace,n=>n.contentMode)),e.fast?["--fast"]:[],ln("--allowed-cwd",t(e.allowedCwds)),ln("--forward-port",t(e.allowedForwardPorts.map(n=>n.toString()))),ln("--code-server-bin",e.codeServerBin),ln("--model",k(e.runtimeDefaults,n=>n.model)),ln("--reasoning-effort",k(e.runtimeDefaults,n=>n.reasoningEffort)),ln("--sandbox",k(e.runtimeDefaults,n=>n.sandbox)),ln("--approval-policy",k(e.runtimeDefaults,n=>n.approvalPolicy)),r!==void 0?["--model-provider",r.provider,"--llm-proxy-base-url",r.llmProxyBaseUrl]:[],e.vmExecution?["--vm-execution"]:[],ln("--execution-mode",e.executionMode),ln("--egress-mode",e.egressMode),ln("--project-public-id",e.projectPublicId),ln("--golden-image-id",e.goldenImagePublicId),["--allow-port-forwarding-by-default"]].flat()}function CP(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 EP(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 PP(e){let t=e.length;return t>12e3?e.slice(t-12e3|0,t):e}function Em(e){let t=xn(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+`
326
- worker output: `+i}function RP(e,t){return"thread Codex worker did not report ready within "+t.toString()+"ms for Kandan thread "+e}var b4="thread runner ready timeout must be a non-negative number";function IP(e){let t=x(e,3e4);return isFinite(t)&&t>=0?{TAG:"Ok",_0:t}:{TAG:"Error",_0:b4}}var v4="thread worker start preflight failed";function S4(e){return e.split(`
327
- `).map(t=>t.trim()).find(t=>t.startsWith(v4))}var Wee=new RegExp("worker exited before ready|worker did not report ready within","i");function $P(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 w4(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}async function MP(e,t,r,n,i,o){let a=o!==void 0?o:h4,s=Math.max(1,x(t,2)),l=x(r,250),d=x(n,w4),u,c,f=1;for(;Nn(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=S4(_.capturedOutput),b=m<s&&Nn(g),y={};y.purpose=Tv,y.attempt=m,y.maxAttempts=s,y.code=xn(_.code,null,v=>v),y.signal=xn(_.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:Em(x(c,{code:void 0,signal:void 0,capturedOutput:""}))}}var jP=3e4;function k4(e){let t=ke(e);return t!==void 0?gv(t):{TAG:"ResultReply",_0:null}}function zP(e,t){let r={contents:void 0},n=[],i=(m,h)=>{try{return m(h)}catch(_){let g=X(_);return t("codex.close_callback_failed",Object.fromEntries([["purpose","codex.app_server"],["message",Ge(g).message]]))}};return{client:{request:(m,h)=>e.request(m,k(h,ke)).then(_=>$t(_,k4)),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=X(y);return{TAG:"Error",_0:Ge(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:()=>Ft(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 x4(e,t){try{return e.send(t),{TAG:"Ok",_0:void 0}}catch(r){let n=X(r);return{TAG:"Error",_0:Ge(n).message}}}function yu(e,t){try{e.kill(t);return}catch{return}}function T4(e){try{e.disconnect();return}catch{return}}function A4(e,t,r,n,i){return new Promise((o,a)=>{let s=Cv.spawn(process.execPath,e,{cwd:t,env:r,stdio:["inherit","pipe","pipe","ipc"]}),l=Cm({stop:()=>yu(s,"SIGTERM"),pid:$r(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=PP(d.contents+y)),g.write(y)});return}};p(s.stdout,process.stdout),p(s.stderr,process.stderr);let m=_=>{let g=fP(_,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}yu(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 GP(e,t){let r=AP(process.argv[1],process.cwd());if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=r._0,i=IP(void 0);if(i.TAG!=="Ok")return{TAG:"Error",_0:i._0};let o=i._0,a=["run"].concat(OP(e)),s=Av(n,a,process.execArgv),l=e.codexModelProvider,d;if(l!==void 0&&l.provider==="openai-proxy"){let _=D(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));EP(e,process.pid,d).forEach(_=>{u[_[0]]=_[1]}),t("process.spawn",Object.fromEntries([["command",process.execPath],["args",Av(n,CP(a),process.execArgv).map(_=>_)],["cwd",e.cwd],["purpose",Tv]]));let c={contents:void 0},f={contents:!1},p=(async()=>{let _=await MP(b=>A4(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:Em(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 yu(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&&yu(ue(b),"SIGKILL"),_({TAG:"Error",_0:RP(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=[],z=mP({send:ie=>x4(_,ie),isConnected:()=>Tn($r(_.connected),!1),onMessage:ie=>{_.on("message",ie);let le=()=>{_.off("message",ie)};return g.push(le),le},onceExit:ie=>{let le=(W,Z)=>ie();return _.once("exit",le),()=>{_.off("exit",le)}},onceDisconnect:ie=>{let le=()=>ie();return _.once("disconnect",le),()=>{_.off("disconnect",le)}}},t),H=zP(z,t);_.on("message",ie=>{let le=cP(ie);if(le!==void 0)return t("runner.thread_codex_worker_session_closed",Object.fromEntries([["kandanThreadId",le[0]],["reason",le[1]]]))});let ce=[],ne={contents:!1};return _.once("exit",(ie,le)=>{ne.contents=!0,H.signalClosed("codex thread worker exited");let W=ce.slice();ce.splice(0,ce.length),W.forEach(Z=>Z())}),{TAG:"Ok",_0:{client:H.client,pid:$r(_.pid),commanderManagedPorts:h.ports,onExit:ie=>{if(ne.contents)return ie();ce.push(ie)},close:()=>{z.close(),g.forEach(ie=>ie()),T4(_),yu(_,"SIGTERM")}}};case"WorkerExitedBeforeReady":return{TAG:"Error",_0:Em(h._0)};case"WorkerInvalidReady":return{TAG:"Error",_0:h._0}}}function FP(e,t){return new Promise((r,n)=>{let i;try{i={TAG:"Ok",_0:Cv.spawn(e,["login","status"],{cwd:t,env:process.env,stdio:["ignore","pipe","pipe"]})}}catch(l){let d=X(l);i={TAG:"Error",_0:Ge(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(()=>{_l(o,"SIGTERM"),s()},3e3),o.once("exit",(l,d)=>s()),o.on("error",l=>s())})}function Ev(e,t,r){let n=r.sandboxedNeverDefault&&se(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:se(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 Pm(e,t,r){return $t(Ev(e,t,r),n=>n==="on-failure"?"on-request":n)}function DP(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 qP="kandan-local-runner",LP="pragmatic";import*as ZP from"node:os";import*as Lo from"node:path";function Pv(e){let t=na(e,"LINZUMI_CONTROL_CURSOR_DIR");return t!==void 0&&t.trim()!==""?t.trim():Lo.join(ZP.homedir(),".linzumi","control-cursors")}var C4=new RegExp("[^A-Za-z0-9._-]+","g"),E4=new RegExp("^[-.]+|[-.]+$","g");function Rv(e){let t=e.replace(C4,"-").replace(E4,"").slice(0,80),r=Gn(e).slice(0,8);return(t===""?"runner":t)+"."+r}function WP(e,t){return Lo.join(Pv(t),Rv(e)+".json")}function VP(e,t){return Lo.join(Pv(t),Rv(e)+".start-turn.json")}function HP(e,t){return Lo.join(Pv(t),Rv(e)+".source-seq.json")}function BP(e,t){return e+" "+t}function KP(e,t,r){return e+" "+t+" "+r}var JP="__control_epoch";function P4(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===JP)if(typeof o=="string"&&o!==""){n.contents=o;return}else return;else if(typeof o=="number"&&Rt(o)&&o>=0){r[a]=o;return}else return}),{TAG:"Ok",_0:{cursors:r,epoch:n.contents}}}function R4(e,t){let r=or(e);if(r.TAG==="Ok"){let i=P4(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 ni(n,"ENOENT")||t("control_cursor_store.read_failed",Object.fromEntries([["path",e],["message",n.message]])),{cursors:{},epoch:void 0}}function I4(e,t){let r={};return t!==void 0&&(r[JP]=t),Object.entries(e).forEach(n=>{r[n[0]]=n[1]}),JSON.stringify(r)+`
328
- `}function Rm(e,t,r,n){let i=r!==void 0?r:!1,o=n!==void 0?n:!1,a=R4(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=I4(s,l.contents),h=e+".tmp",_=Ce(Dt(Lo.dirname(e)),()=>o?aw(h,e,Lo.dirname(e),m):Ce(wi(h,m),()=>ii(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(!se(s[m],h))return s[m]=h,f()},flush:p,epoch:()=>l.contents,adoptEpoch:m=>{if(se(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=>cr(s,g[0]))),f(),(h||_)&&p(),h}}}function YP(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 Vee=1800*1e3;var Hee=new RegExp("[^A-Za-z0-9._-]+","g"),Bee=new RegExp("^[-.]+|[-.]+$","g");function XP(e){return{initial:t=>e.initial(t),onAdvance:(t,r)=>e.onAdvance(t,r),flush:()=>e.flush()}}function Im(e,t){return e!==void 0?t>e:!0}function bu(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 QP(e){return e!==void 0?Array.isArray(e)?ze(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"&&Rt(o)?o:void 0,s=t.leaseEpoch,l=s!==void 0&&typeof s=="number"&&Rt(s)?s:void 0;return{channelId:i,threadId:r,highestProcessedSourceSeq:a,leaseEpoch:l}}):[]:[]}function tR(){let e=new Map;return{current:t=>e.get(t),adopt:(t,r)=>{if(!Rt(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 $m(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function N4(e,t){let r=e[t];if(typeof r=="string")return r}function Uo(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&isFinite(r)&&Math.round(r)===r)return r}function Iv(e){return D($m(e,"usage"),t=>({inputTokens:Uo(t,"input_tokens"),outputTokens:Uo(t,"output_tokens"),cacheCreationInputTokens:Uo(t,"cache_creation_input_tokens"),cacheReadInputTokens:Uo(t,"cache_read_input_tokens")}))}function iR(){return{completed:{inputTokens:0,outputTokens:0,cacheCreationInputTokens:0,cacheReadInputTokens:0},current:void 0,lastEmittedKey:void 0}}function rR(e,t){let r=n=>t!==void 0?n(t):0;return{inputTokens:x(Uo(e,"input_tokens"),r(n=>n.inputTokens)),outputTokens:x(Uo(e,"output_tokens"),r(n=>n.outputTokens)),cacheCreationInputTokens:x(Uo(e,"cache_creation_input_tokens"),r(n=>n.cacheCreationInputTokens)),cacheReadInputTokens:x(Uo(e,"cache_read_input_tokens"),r(n=>n.cacheReadInputTokens))}}function nR(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(!se(e.lastEmittedKey,a))return e.lastEmittedKey=a,{inputTokens:r,outputTokens:n,cacheCreationInputTokens:i,cacheReadInputTokens:o}}function oR(e,t){let r=k(t,n=>N4(n,"type"));if(r!==void 0)switch(r){case"message_delta":let n=k(t,a=>$m(a,"usage"));return n!==void 0?(e.current=rR(n,e.current),nR(e)):void 0;case"message_start":let i=k(k(t,a=>$m(a,"message")),a=>$m(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=rR(i,void 0),nR(e);default:return}}function vu(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 Mv(e){return e==="Text"?"text":"thinking"}function lR(){return{activeMessageId:void 0,syntheticMessageCounter:0,completedMessageIds:[],consumedAssistantMessageIds:new Set,blocksByMessageId:{}}}function $v(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function Zo(e,t){let r=e[t];if(typeof r=="string")return r}function sR(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&isFinite(r)&&Math.round(r)===r)return r|0}function jv(e,t){return e.syntheticMessageCounter=e.syntheticMessageCounter+1|0,"synthetic-claude-message:"+t+":"+e.syntheticMessageCounter.toString()}function F4(e,t){let r=e.activeMessageId;if(r!==void 0)return r;let n=jv(e,t);return e.activeMessageId=n,n}function zv(e,t){return"claude-message:"+e+":content-block:"+t.toString()}function Mm(e,t,r,n){if(r===void 0)return;let i=F4(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 dR(e,t){let r=k(t,n=>Zo(n,"type"));if(r!==void 0)switch(r){case"content_block_delta":let n=k(t,c=>$v(c,"delta")),i=k(t,c=>sR(c,"index")),o=k(n,c=>Zo(c,"type"));if(o!==void 0)switch(o){case"text_delta":Mm(e,"Text",i,k(n,c=>Zo(c,"text")));break;case"thinking_delta":Mm(e,"Thinking",i,k(n,c=>Zo(c,"thinking")));break}return e.activeMessageId;case"content_block_start":let a=k(t,c=>$v(c,"content_block")),s=k(t,c=>sR(c,"index")),l=k(a,c=>Zo(c,"type"));if(l!==void 0)switch(l){case"text":Mm(e,"Text",s,k(a,c=>Zo(c,"text")));break;case"thinking":Mm(e,"Thinking",s,k(a,c=>Zo(c,"thinking")));break}return e.activeMessageId;case"message_start":let d=k(k(t,c=>$v(c,"message")),c=>Zo(c,"id"));e.activeMessageId=d!==void 0?d:jv(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 uR(e,t){if(t!==void 0){e.consumedAssistantMessageIds.add(t);let n=ra(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):jv(e,"missing-assistant-frame-id")}function cR(e,t){let r=e.blocksByMessageId[t];return r!==void 0?(cr(e.blocksByMessageId,t),r.toSorted((n,i)=>qu(n.index,i.index))):[]}function fR(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function Nv(e,t){let r=e[t];if(typeof r=="string")return r}function Gv(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&isFinite(r))return r}function q4(e){if(e===void 0||e<0)return;let t=e<=1?e*100:e;return Math.min(100,Math.round(t))}function L4(e){if(e!==void 0&&e>0)return e>1e12?Math.round(e):Math.round(e*1e3)}function Fv(e){let t=Nv(e,"status"),r=Nv(e,"rateLimitType"),n=r!==void 0?r:Nv(e,"rate_limit_type"),i=q4(Gv(e,"utilization")),o=Gv(e,"resetsAt"),a=L4(o!==void 0?o:Gv(e,"resets_at"));if(!(t===void 0&&i===void 0&&a===void 0))return{status:t,windowLabel:n,utilizationPercent:i,resetsAtMs:a}}function mR(e){let t=fR(e,"rate_limit_info");if(t!==void 0)return Fv(t);let r=fR(e,"rate_limit");return Fv(r!==void 0?r:e)}var Z4="edge_blocked";function W4(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 hR(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 V4=[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")],H4=[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")],B4=new RegExp('"error"\\s*:\\s*\\{[^{}]*?"message"\\s*:\\s*"((?:[^"\\\\]|\\\\.){1,500})"');function pR(e,t){return Ke(e,void 0,(r,n)=>r!==void 0?r:hR(n,t))}function K4(e){let t;try{t=JSON.parse('"'+e+'"')}catch{return e}return typeof t=="string"?t:e}function J4(e){let t=hR(B4,e),n=(t!==void 0?K4(t):e).trim();return n.length<=200?n:n.slice(0,199)+"\u2026"}function _R(e){return{status:k(pR(V4,e),t=>Ps(t,void 0)),requestId:pR(H4,e),edgeBlocked:W4(e),message:J4(e)}}function Dv(e){return Ft(e.status)||Ft(e.requestId)?!0:e.edgeBlocked}function gR(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="+Z4+"]")),r.length!==0?e+" ("+r.join(", ")+")":e}function yR(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 SR(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:iR(),identity:lR()}}function gl(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function Mt(e,t){let r=e[t];if(typeof r=="string")return r}function bR(e,t){let r=e[t];if(typeof r=="boolean")return r}function qv(e,t){let r=e[t];if(Array.isArray(r))return r}function Wo(e){if(e===void 0)return;let t=e.trim();if(t!=="")return t}function X4(e){let t=Mt(e,"session_id"),r=t!==void 0?t:Mt(e,"sessionId");if(r!==void 0)return r;let n=gl(e,"message");if(n===void 0)return;let i=Mt(n,"session_id");return i!==void 0?i:Mt(n,"sessionId")}function Q4(e,t){if(e.sessionAnnounced)return!1;let r=X4(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 Su(e,t){return e.startedTurns.has(t)?!e.terminalTurns.has(t):!1}var wR=Su;function kR(e){let t=e.activeTurnId;return t!==void 0?Su(e,t):!1}function xR(e,t){e.mintedTurnCount=e.mintedTurnCount+1|0;let r="claude:"+t+":turn:"+e.mintedTurnCount.toString();return e.pendingTurnIds.push(r),r}function yl(e){let t=e.activeTurnId;if(t!==void 0&&Su(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 Lv(e,t){if(e.terminalTurns.add(t),se(e.activeTurnId,t)){e.activeTurnId=void 0;return}}function vR(e){return e.turnId+"/"+e.itemId+"/"+e.streamKind}function Uv(e,t){if(!e.startedItems.has(vR(t)))return e.startedItems.add(vR(t)),e.emitEvent({TAG:"ItemStarted",item:t})}function Zv(e,t,r){Uv(e,t),e.emitEvent({TAG:"ItemCompleted",item:t,content:r})}function eH(e,t,r){Uv(e,t),e.emitEvent({TAG:"ItemDelta",item:t,delta:r})}function Xa(e,t){let r=e.activeTurnId;if(x(D(r,n=>Su(e,n)),!0))return e.emitEvent({TAG:"ActivityPulse",turnId:r,signalKind:t})}function tH(e,t){let r=ze(x(qv(e,"errors"),[]),a=>{if(typeof a=="string")return Wo(a)}).join("; "),n=Wo(r);if(n!==void 0)return n;let i=Wo(Mt(e,"result"));if(i!==void 0)return i;let o=Wo(Mt(e,"error"));return o!==void 0?o:x(t,"error")}function rH(e){let t=Mt(e,"subtype"),r=x(bR(e,"is_error"),!1),n=se(t,"interrupt")||se(t,"error_interrupted")||x(bR(e,"is_interrupt"),!1),i=r||se(t,"error_max_turns")||se(t,"error_during_execution");return n?"Interrupted":i?{TAG:"Errored",reason:tH(e,t)}:"Success"}function nH(e,t){let r=_R(t),n=r.status;return{fate:e!==void 0?e==="error_max_turns"?"deterministic":n!==void 0?vu(n):"transient_upstream":n!==void 0?vu(n):"transient_upstream",reason:Dv(r)?gR("Claude Code failed: "+t,r):"Claude Code failed: "+t,providerDetail:Dv(r)?yR(r):void 0}}function iH(e,t){let r=Mt(e,"id");if(r!==void 0)return r;let n=Mt(e,"tool_use_id");return n!==void 0?n:"content-block-"+t.toString()}function oH(e){return e==="Text"?"assistant":"reasoning"}function aH(e){let t={};t.type=Mv(e.kind);let r=e.kind,n;return n=r==="Text"?"text":"thinking",t[n]=e.content,t}function sH(e,t){let r=yl(e),n=gl(t,"message"),i=x(k(n,y=>qv(y,"content")),[]),o=uR(e.identity,k(n,y=>Mt(y,"id"))),s=cR(e.identity,o).filter(y=>y.content.trim()!==""),l={};s.forEach(y=>{let v=Mv(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)?Mt(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=ra(S,v);A!==void 0&&S.splice(A,1);let R=x(l[y],[]),z=R[0];if(z!==void 0&&v<z)return R.shift(),!0;let H=ra(R,v);if(H!==void 0)return R.splice(H,1),!0;let ce=Uu(R,ne=>!S.includes(ne));return ce!==void 0?(R.splice(ce,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:zv(o,y),streamKind:v}),m=[];s.forEach(y=>{m.push({index:y.index,events:[[p(y.index,oH(y.kind)),aH(y)]]})}),i.forEach((y,v)=>{if(typeof y!="object"||y===null||Array.isArray(y))return;let S=Mt(y,"type");if(S!==void 0)switch(S){case"text":if(c("text",v))return;if(Wo(Mt(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(Wo(Mt(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:iH(y,v),streamKind:"command_output"},y]]});return;default:return}});let h=i.some(y=>typeof y=="object"&&y!==null&&!Array.isArray(y)?se(Mt(y,"type"),"text"):!1),_=s.some(y=>y.kind==="Text"),g=h||_,b=Wo(Mt(t,"text"));return g||b===void 0||m.push({index:i.length,events:[[p(f(i.length),"assistant"),b]]}),m.toSorted((y,v)=>qu(y.index,v.index)).flatMap(y=>y.events)}function lH(e){if(e!==void 0&&e!=="")return e}function dH(e,t){let r=gl(t,"event"),n=oR(e.usage,r),i=dR(e.identity,r),o={contents:!1};if(n!==void 0){let d=yl(e);e.emitEvent({TAG:"UsageUpdated",turnId:d,usage:n}),o.contents=!0}let a=(d,u)=>D(i,c=>({turnId:yl(e),itemId:zv(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=>Mt(d,"type"));if(l!==void 0)switch(l){case"content_block_delta":let d=k(r,b=>gl(b,"delta")),u=k(r,s),c=(b,y)=>{let v=lH(y);if(u===void 0||v===void 0)return;let S=a(u,b);if(S!==void 0){eH(e,S,v),o.contents=!0;return}},f=k(d,b=>Mt(b,"type")),p=0;f==="thinking_delta"?c("reasoning",k(d,b=>Mt(b,"thinking"))):p=1,p===1&&c("assistant",k(d,b=>Mt(b,"text")));break;case"content_block_start":let m=k(r,b=>gl(b,"content_block")),h=k(r,s),_=(b,y,v)=>{let S=Wo(y);if(h===void 0||S===void 0)return;let A=a(h,b);if(A!==void 0){Zv(e,A,v),o.contents=!0;return}},g=k(m,b=>Mt(b,"type"));if(g!==void 0)switch(g){case"text":_("assistant",k(m,b=>Mt(b,"text")),x(D(m,b=>b),null));break;case"thinking":_("reasoning",k(m,b=>Mt(b,"thinking")),x(D(m,b=>b),null));break}break}if(!o.contents)return Xa(e,"stream_event")}function uH(e,t){let r=gl(t,"message"),n=x(k(r,o=>qv(o,"content")),[]),i={contents:!1};if(n.forEach((o,a)=>{if(typeof o!="object"||o===null||Array.isArray(o)||!se(Mt(o,"type"),"tool_result"))return;let s=yl(e),l=Mt(o,"tool_use_id"),d;if(l!==void 0)d=l;else{let u=Mt(o,"id");d=u!==void 0?u:"content-block-"+a.toString()}Zv(e,{turnId:s,itemId:d,streamKind:"command_output"},o),i.contents=!0}),!i.contents)return Xa(e,"user")}function cH(e,t){Lv(e,t),e.emitEvent({TAG:"TurnCompleted",turnId:t})}function fH(e,t,r){Lv(e,t),e.emitEvent({TAG:"TurnInterrupted",turnId:t,reason:r})}function mH(e,t,r){Lv(e,t),e.emitEvent({TAG:"TurnFailed",turnId:t,failure:r})}function pH(e,t){let r=rH(t);if(typeof r!="object"){if(r==="Success"){let i=yl(e),o=Iv(t);return o!==void 0&&e.emitEvent({TAG:"UsageUpdated",turnId:i,usage:o}),cH(e,i)}let n=e.activeTurnId;return n!==void 0&&Su(e,n)?fH(e,n,void 0):void 0}else{let n=yl(e),i=Iv(t);return i!==void 0&&e.emitEvent({TAG:"UsageUpdated",turnId:n,usage:i}),mH(e,n,nH(Mt(t,"subtype"),r.reason))}}function TR(e,t){if(typeof t!="object"||t===null||Array.isArray(t))return;let r=Q4(e,t),n=Mt(t,"type");if(n!==void 0)switch(n){case"assistant":sH(e,t).forEach(a=>{let s=a[0];return s.streamKind==="command_output"?Uv(e,s):Zv(e,s,a[1])});return;case"rate_limit_event":let i=mR(t);return i!==void 0?e.emitEvent({TAG:"RateLimitUpdated",rateLimit:i}):Xa(e,"rate_limit_event");case"result":return pH(e,t);case"stream_event":return dH(e,t);case"system":let o=Mt(t,"subtype");return o!==void 0?o==="init"?r?void 0:Xa(e,"system:init"):Xa(e,"system:"+o):Xa(e,"system");case"user":return uH(e,t);default:return Xa(e,n)}}var _H=["liveModelSwitch","liveEffortSwitch","sessionHistoryListing","slashCommandCatalog"];function bl(e){let t=gr(e);return t!==void 0?x(Or(ue(t)),"unknown error"):"unknown error"}function AR(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 ER(e){let t=D(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 gH(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 yH(e,t,r){let n={};return n.tool_name=e,n.input=t,r!==void 0&&(n.suggestions=r),n}function bH(e,t){let r={};return r.behavior="allow",r.toolUseID=e,r.updatedInput=t,r}function PR(e,t){let r={};return r.behavior="deny",r.message=x(t,"denied by the approval bridge"),r.toolUseID=e,r}function OR(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(s){let l=X(s);r={TAG:"Error",_0:{fate:"transient_local",reason:"setModel failed: "+bl(l),providerDetail:void 0}}}if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=ER(t.reasoningEffort),i;if(typeof n!="object")if(n==="ClearEffort"&&Ft(e.currentEffort))try{let s={};s.effortLevel=null,await e.connection.applyFlagSettings(s),e.currentEffort=void 0,i={TAG:"Ok",_0:void 0}}catch(s){let l=X(s);i={TAG:"Error",_0:{fate:"transient_local",reason:"applyFlagSettings failed: "+bl(l),providerDetail:void 0}}}else i={TAG:"Ok",_0:void 0};else{let s=n._0;if(Tn(s,e.currentEffort))try{let l={};l.effortLevel=s,await e.connection.applyFlagSettings(l),e.currentEffort=s,i={TAG:"Ok",_0:void 0}}catch(l){let d=X(l);i={TAG:"Error",_0:{fate:"transient_local",reason:"applyFlagSettings failed: "+bl(d),providerDetail:void 0}}}else i={TAG:"Ok",_0:void 0}}if(i.TAG!=="Ok")return{TAG:"Error",_0:i._0};let o=xR(e.projector,e.harnessSessionId);if(e.input.push(gH(t.input)))return{TAG:"Ok",_0:{turnId:o}};let a=ra(e.projector.pendingTurnIds,o);return a!==void 0&&e.projector.pendingTurnIds.splice(a,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(!wR(e.projector,t))return{TAG:"Ok",_0:void 0};try{return await e.connection.interrupt(),{TAG:"Ok",_0:void 0}}catch(r){let n=X(r);return{TAG:"Error",_0:{fate:"transient_local",reason:"interrupt failed: "+bl(n),providerDetail:void 0}}}},respondToApproval:(t,r)=>{let n=Uu(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=bH(t,a!==void 0?a:i.toolInput)}else o=PR(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 CR(e,t,r,n,i){let o=ZE(),a={contents:void 0},s=ne=>{let ie=a.contents;if(!(ie!==void 0&&ie.stopped))return i(ne)},l={contents:void 0},d=new Promise((ne,ie)=>{l.contents=ne}),u=ne=>{let ie=l.contents;if(ie!==void 0)return l.contents=void 0,ie(ne)},c=SR(n,ne=>u({TAG:"Ok",_0:ne}),s),f=(ne,ie,le)=>new Promise((W,Z)=>{let $=le.toolUseID,N=a.contents;return N!==void 0?(N.pendingApprovals.push({requestId:$,toolInput:ie,resolveDecision:W}),s({TAG:"ApprovalRequested",request:{requestId:$,turnId:c.activeTurnId,kind:"canUseTool",summary:ne,payload:yH(ne,ie,$r(le.suggestions))}})):W(PR($,"approval bridge not ready"))}),p=ER(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 ne={};h!==void 0?Object.entries(h).forEach(ie=>{ne[ie[0]]=ie[1]}):Object.entries(process.env).forEach(ie=>{ne[ie[0]]=ie[1]}),Object.entries(t.environment).forEach(ie=>{ne[ie[0]]=ie[1]}),g=ne}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,tools:y,settingSources:["user","project","local"],systemPrompt:v,resume:n,permissionMode:r,allowDangerouslySkipPermissions:A,effort:m,env:g,canUseTool:f}}),z={harnessSessionId:x(n,""),currentModel:t.model,currentEffort:m,input:o,connection:R,projector:c,pendingApprovals:[],stopped:!1,diedReported:!1};a.contents=z;let H=ne=>{if(!(z.stopped||z.diedReported))return z.diedReported=!0,e.audit("claude.sdk_stream_died",Object.fromEntries([["reason",ne]])),s({TAG:"HarnessDied",failure:{fate:"transient_local",reason:ne,providerDetail:void 0}})};return(async()=>{let ne=!0;for(;ne;){let ie;try{ie=await z.connection.next()}catch(le){let W=X(le);ne=!1;let Z="Claude Code SDK stream threw: "+bl(W);u({TAG:"Error",_0:{fate:"transient_local",reason:Z,providerDetail:void 0}}),H(Z),ie=void 0}if(ie!==void 0)if(ie.done){ne=!1;let le=kR(z.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}}),H(le)}else TR(z.projector,ie.value)}})(),{state:z,started:d}}function RR(e){let t=[];return{harness:"claude-code",capabilities:_H,startSession:async(i,o)=>{let a=AR(i.approvalPolicy);if(a.TAG!=="Ok")return{TAG:"Error",_0:{fate:"deterministic",reason:a._0,providerDetail:void 0}};let s=CR(e,i,a._0,void 0,o),l=await s.started;return l.TAG==="Ok"?(s.state.harnessSessionId=l._0,t.push(s.state),{TAG:"Ok",_0:OR(s.state)}):(s.state.input.close(),s.state.connection.close(),{TAG:"Error",_0:l._0})},attachSession:async(i,o,a)=>{let s=AR(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 f=await e.sdk.getSessionInfo(i,l);d={TAG:"Ok",_0:Ft(f==null?void 0:Ze(f))}}catch(f){let p=X(f);d={TAG:"Error",_0:{fate:"transient_local",reason:"getSessionInfo failed: "+bl(p),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=CR(e,o,s._0,i,a),c=await u.started;return c.TAG==="Ok"?(u.state.harnessSessionId=c._0,t.push(u.state),{TAG:"Ok",_0:OR(u.state)}):(u.state.input.close(),u.state.connection.close(),{TAG:"Error",_0:c._0})},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 jm from"node:path";function Wv(e){switch(e){case"rescript":return"Rescript";case"ts":return"Ts";default:return}}function vl(e){return e==="Ts"?"ts":"rescript"}function Vv(e){return jm.join(e,".linzumi","commanderImpl")}function IR(e){let t=or(e);if(t.TAG==="Ok")return Wv(t._0.trim())}function $R(e,t){let r=e+".tmp."+process.pid.toString()+"."+Hu(6);return Ce(Dt(jm.dirname(e)),()=>{let n=Ce(wi(r,vl(t)+`
329
- `),()=>ii(r,e));return n.TAG==="Ok"?{TAG:"Ok",_0:void 0}:(un(r),{TAG:"Error",_0:n._0})})}function MR(e){if(e!==void 0)switch(e){case"local_vm":return"local_vm";case"raw":return"raw";default:return}}function jR(e){if(e!==void 0)switch(e){case"hardened":return"hardened";case"open":return"open";default:return}}function Hv(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function Xn(e,t){let r=e[t];if(typeof r=="string")return r}function Qa(e,t){let r=e[t];if(Array.isArray(r))return r}function wu(e){return ze(e,t=>{if(typeof t!="object"||t===null||Array.isArray(t))return;if(Xn(t,"type")==="text")return Xn(t,"text")}).join(`
330
- `)}function Bv(e,t,r,n){return e+":"+t+":"+r+":"+n}function ku(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 Kv(e,t){return{threadId:e,threadTitle:void 0,nodes:t,hasMore:!1,cursor:void 0,budget:void 0,session:void 0}}var nte="codex";function NR(e){return Math.ceil(e.length/4)}function Nm(e){if(e===void 0||typeof e!="string")return;let t=e.trim();if(t!=="")return t}function wH(e){if(e!==void 0&&typeof e=="number"&&Rt(e))return e}function Jv(e){let t=e.structured;if(typeof t=="object"&&t!==null&&!Array.isArray(t))return t}function Sl(e,t){return k(Jv(e),r=>Nm(r[t]))}function GR(e){return x(e.split(`
331
- `)[0],e)}function FR(e,t){let r=Math.max(1e3,t*4)|0,n=e.body.trim();return n.length<=r?n:`[...truncated...]
332
- `+n.slice(n.length-r|0)}function kH(e,t){return e.length<=t?e:"[...truncated...]"+e.slice(e.length-t|0)}function xH(e){let t=Jv(e);if(t===void 0)return[];let r=Nm(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=ze(i,s=>{let l=Nm(s);return l!==void 0?l:typeof s=="object"&&s!==null&&!Array.isArray(s)?Nm(s.path):void 0});return r!==void 0?[r].concat(a):a}function TH(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"&&xH(i).forEach(a=>{t.add(a)}),i.kind!=="command_execution")return;let o=Sl(i,"command");if(o!==void 0){r.add(GR(o));return}}),{filesTouched:t.values().toArray().slice(0,100),commandsRun:r.values().toArray().slice(0,100),errorCount:n.contents}}function AH(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=NR(FR(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:TH(e)}}function Fi(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 OH(e){return se(Sl(e,"phase"),"commentary")?"commentary":"final_answer"}function CH(e,t){let r=e.attachments.length;return r!==0?t+`
333
- [`+r.toString()+" attachment(s) in the original message]":t}function DR(e,t){return"linzumi_replay_"+e.seq.toString()+"_"+t.toString()}function EH(e){let t=e.replace(/[^a-zA-Z0-9_-]/g,"_").slice(0,64);return t===""?"linzumi_replayed_tool":t}function PH(e,t,r){let n=DR(e,r),i=Sl(e,"command"),o=Sl(e,"cwd"),a=k(Jv(e),c=>wH(c.exit_code)),s=x(Sl(e,"output"),t),l={};l.command=x(i,GR(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()+`
334
- `+s:s,[d,u]}function RH(e,t,r){let n=DR(e,r),i=EH(x(Sl(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 IH(e,t){let r={};r.type="input_text",r.text=CH(e,t);let n={};return n.type="message",n.role="user",n.content=[r],n}function $H(e,t,r){let n=FR(e,t),i=e.kind;switch(i){case"agent_status":return[Fi("[status] "+n,"commentary")];case"approval_request":return[Fi("[approval] "+n,"commentary")];case"assistant_message":return[Fi(n,OH(e))];case"command_execution":return PH(e,n,r);case"error":return[Fi("[error] "+n,"commentary")];case"file_change":return[Fi(`[file change]
335
- `+n,"commentary")];case"reasoning":return[];case"system_notice":return[Fi("[notice] "+n,"commentary")];case"terminal_input":return[Fi(`[terminal input]
336
- `+n,"commentary")];case"tool_call":return RH(e,n,r);case"tool_result":return[Fi(`[tool result]
337
- `+n,"commentary")];case"user_message":return[IH(e,n)];default:return[Fi("["+i+"] "+n,"commentary")]}}function MH(e,t,r,n){let i=e.trim(),o=r.artifacts,a=D(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===""?".":" ("+kH(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(`
338
- `)}function qR(e,t,r,n){let i=t!==void 0?t.maxEmissionTokens:76800,o=AH(e,i),a=MH(r,n,o,o.tail.length===0),s=[Fi(a,"commentary")],l={contents:0};o.tail.forEach(u=>{l.contents=l.contents+1|0,$H(u,i,l.contents).forEach(c=>{s.push(c)})});let d=Ke(s,0,(u,c)=>u+NR(JSON.stringify(c)));return{items:s,emittedNodeCount:o.tail.length,omittedNodeCount:o.omittedNodeCount,redactedReasoningCount:o.redactedReasoningCount,emittedTokenEstimate:d,maxEmissionTokens:i}}function ZR(e,t){return e!==void 0?t<=e:!1}function WR(e,t,r){e.onAdvance(t,r),e.flush()}function UR(e){let t=gr(e);if(t===void 0)return String(e);let r=ue(t),n=Or(r);return n!==void 0?n:String(r)}function VR(e,t,r,n,i){let o;try{o={TAG:"Ok",_0:t()}}catch(a){o={TAG:"Error",_0:X(a)}}if(o.TAG==="Ok"){let a=o._0;if(a.TAG==="Returned")return r();$n(a._0.then(s=>r()),s=>{let l=D(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",UR(s)]])),Promise.resolve()});return}n("kandan.control_handler_threw",Object.fromEntries([["controlType",e],["message",UR(o._0)]])),r()}function fo(e,t){return k(e[t],Sr)}function Vo(e,t){return k(e[t],ma)}function Gm(e,t){return k(e[t],ke)}function BR(e,t){return k(e[t],Ji)}function KR(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 zH(e){let t=ke(e);if(t===void 0)return;let r=x(Gm(t,"payload"),{}),n=fo(t,"body"),i;if(n!==void 0)i=n;else{let s=k(r.body,Sr);i=s!==void 0?s:k(r.text,Sr)}let o=Vo(t,"seq");if(o===void 0||i===void 0)return;let a=x(Gm(t,"actor"),{});return{seq:o,messageType:x(fo(t,"type"),"thread.message"),actorKind:x(k(a.kind,Sr),"unknown"),actorSlug:k(a.slug,Sr),actorUserId:Vo(t,"actor_user_id"),body:i,payload:r}}function NH(e){return e!==void 0?Array.isArray(e)?ze(e,zH):[]:[]}async function JR(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=KR(d);return u!==void 0?NH(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 HR(e,t){return e.length<=t?e:`[...truncated...]
339
- `+e.slice(e.length-t|0,e.length)}function GH(e){return k(k(k(k(k(k(e.metadata,ke),t=>t.local_codex_runner),ke),t=>t.event_type),Sr),t=>{if(t.trim()!=="")return t.trim()})}var FH=[/^Runner port \d+ is open in (Kandan|Linzumi):/,/^.+ on port \d+ is ready in Linzumi\. \[Open\]\(/];function DH(e){let t=e.body.trim();return t.startsWith("Codex reconnected.")||t.startsWith("[codex reconnected")||t.startsWith("Codex is ready.")?!0:FH.some(r=>r.test(t))}function qH(e){return e.filter(t=>{let r=t.body.trim(),n=GH(t.payload);return r!==""&&t.actorKind!=="system"&&(n===void 0||n==="codex_output")?!DH(t):!1})}function LH(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(`
340
- `)}function YR(e,t){let r=qH(e),n=Math.max(0,r.length-12|0),i=r.slice(n,r.length),o=r.length-i.length|0,a=HR(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(`
341
- `);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=HR(i.map(LH).join(`
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 zf(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]})??ur(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}=jf(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}=Mf(e.keyType._def,t);return{...r,propertyNames:i}}}return r}function xA(e,t){if(t.mapStrategy==="record")return zf(e,t);let r=De(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||ur(t),n=De(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||ur(t);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function TA(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 AA(e){return e.target==="openAi"?void 0:{not:ur({...e,currentPath:[...e.currentPath,"not"]})}}function OA(e){return e.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Wd={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function EA(e,t){if(t.target==="openApi3")return CA(e,t);let r=e.options instanceof Map?Array.from(e.options.values()):e.options;if(r.every(n=>n._def.typeName in Wd&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((i,o)=>{let a=Wd[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 CA(e,t)}var CA=(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 PA(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:Wd[e.innerType._def.typeName],nullable:!0}:{type:[Wd[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 RA(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",fy(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 IA(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=jq(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=Mq(e,t);return a!==void 0&&(n.additionalProperties=a),n}function Mq(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 jq(e){try{return e.isOptional()}catch{return!0}}var $A=(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:ur(t)},r]}:ur(t)};var MA=(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 jA(e,t){return De(e.type._def,t)}function zA(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 NA(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 GA(e){return{not:ur(e)}}function FA(e){return ur(e)}var DA=(e,t)=>De(e.innerType._def,t);var qA=(e,t,r)=>{switch(t){case Q.ZodString:return jf(e,r);case Q.ZodNumber:return RA(e,r);case Q.ZodObject:return IA(e,r);case Q.ZodBigInt:return hA(e,r);case Q.ZodBoolean:return _A();case Q.ZodDate:return my(e,r);case Q.ZodUndefined:return GA(r);case Q.ZodNull:return OA(r);case Q.ZodArray:return pA(e,r);case Q.ZodUnion:case Q.ZodDiscriminatedUnion:return EA(e,r);case Q.ZodIntersection:return SA(e,r);case Q.ZodTuple:return NA(e,r);case Q.ZodRecord:return zf(e,r);case Q.ZodLiteral:return wA(e,r);case Q.ZodEnum:return vA(e);case Q.ZodNativeEnum:return TA(e);case Q.ZodNullable:return PA(e,r);case Q.ZodOptional:return $A(e,r);case Q.ZodMap:return xA(e,r);case Q.ZodSet:return zA(e,r);case Q.ZodLazy:return()=>e.getter()._def;case Q.ZodPromise:return jA(e,r);case Q.ZodNaN:case Q.ZodNever:return AA(r);case Q.ZodEffects:return bA(e,r);case Q.ZodAny:return ur(r);case Q.ZodUnknown:return FA(r);case Q.ZodDefault:return yA(e,r);case Q.ZodBranded:return Mf(e,r);case Q.ZodReadonly:return DA(e,r);case Q.ZodCatch:return gA(e,r);case Q.ZodPipeline:return MA(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!==cA)return s}if(n&&!r){let s=zq(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=qA(e,e.typeName,t),a=typeof o=="function"?De(o(),t):o;if(a&&Nq(e,t,a),t.postProcess){let s=t.postProcess(a,e,t);return i.jsonSchema=a,s}return i.jsonSchema=a,a}var zq=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:$f(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`),ur(t)):t.$refStrategy==="seen"?ur(t):void 0}},Nq=(e,t,r)=>(e.description&&(r.description=e.description,t.markdownDescription&&(r.markdownDescription=e.description)),r);var _y=(e,t)=>{let r=mA(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)??ur(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)??ur(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 Gq(e){return!e||e==="jsonSchema7"||e==="draft-7"?"draft-7":e==="jsonSchema2019-09"||e==="draft-2020-12"?"draft-2020-12":"draft-7"}function gy(e,t){return Xn(e)?Fg(e,{target:Gq(t?.target),io:t?.pipeStrategy??"input"}):_y(e,{strictUnions:t?.strictUnions??!0,pipeStrategy:t?.pipeStrategy??"input"})}function yy(e){let r=Mo(e)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=If(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function by(e,t){let r=$o(e,t);if(!r.success)throw r.error;return r.data}var Fq=6e4,Nf=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(hf,r=>{this._oncancel(r)}),this.setNotificationHandler(gf,r=>{this._onprogress(r)}),this.setRequestHandler(_f,r=>({})),this._taskStore=t?.taskStore,this._taskMessageQueue=t?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(yf,async(r,n)=>{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new ve(Ee.InvalidParams,"Failed to retrieve task: Task not found");return{...i}}),this.setRequestHandler(vf,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 ve(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 ve(Ee.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(Sf,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 ve(Ee.InvalidParams,`Failed to list tasks: ${i instanceof Error?i.message:String(i)}`)}}),this.setRequestHandler(kf,async(r,n)=>{try{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new ve(Ee.InvalidParams,`Task not found: ${r.params.taskId}`);if(jo(i.status))throw new ve(Ee.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 ve(Ee.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...o}}catch(i){throw i instanceof ve?i:new ve(Ee.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),ve.fromError(Ee.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)||YT(o)?this._onresponse(o):Yg(o)?this._onrequest(o,a):JT(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=ve.fromError(Ee.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:Ee.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=HT(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 ve(Ee.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:Ee.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 ve(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=ve.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 ve?a:new ve(Ee.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 ve(Ee.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 ve(Ee.InternalError,`Task ${o} failed`)}:s.status==="cancelled"&&(yield{type:"error",error:new ve(Ee.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 ve?a:new ve(Ee.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 ve?b:new ve(Ee.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??Fq,_=()=>m(ve.fromError(Ee.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},bf,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},wf,r)}async cancelTask(t,r){return this.request({method:"tasks/cancel",params:t},eA,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=yy(t);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(i,o)=>{let a=by(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=yy(t);this._notificationHandlers.set(n,i=>{let o=by(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"&&Yg(i.message)){let o=i.message.id,a=this._requestResolvers.get(o);a?(a(new ve(Ee.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 ve(Ee.InvalidRequest,"Request cancelled"));return}let a=setTimeout(i,n);r.addEventListener("abort",()=>{clearTimeout(a),o(new ve(Ee.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 ve(Ee.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 ve(Ee.InvalidParams,`Task "${i}" not found - it may have been cleaned up`);if(jo(s.status))throw new ve(Ee.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 LA(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function UA(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];LA(a)&&LA(o)?r[i]={...a,...o}:r[i]=o}return r}var EE=gw(iv(),1),PE=gw(CE(),1);function EV(){let e=new EE.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,PE.default)(e),e}var vm=class{constructor(t){this._ajv=t??EV()}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 Sm=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},Zd,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 RE(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 IE(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 wm=class extends Nf{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 vm,this.setRequestHandler(ey,n=>this._oninitialize(n)),this.setNotificationHandler(ty,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(ly,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 Sm(this)}),this._experimental}registerCapabilities(t){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=UA(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(Xn(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 ve(Ee.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 ve(Ee.InvalidParams,`Invalid task creation result: ${h}`)}return m.data}let p=$o(Cf,f);if(!p.success){let m=p.error instanceof Error?p.error.message:String(p.error);throw new ve(Ee.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){IE(this._clientCapabilities?.tasks?.requests,t,"Client")}assertTaskHandlerCapability(t){this._capabilities&&RE(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:ZT.includes(r)?r:Kg,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"},pf)}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},dy,r):this.request({method:"sampling/createMessage",params:t},Zd,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 ve(Ee.InvalidParams,`Elicitation response content does not match requested schema: ${s.errorMessage}`)}catch(a){throw a instanceof ve?a:new ve(Ee.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},uy,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 ME=Symbol.for("mcp.completable");function fv(e){return!!e&&typeof e=="object"&&ME in e}function jE(e){return e[ME]?.complete}var $E;(function(e){e.Completable="McpCompletable"})($E||($E={}));var PV=/^[A-Za-z0-9._-]{1,128}$/;function RV(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"),!PV.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 IV(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 mv(e){let t=RV(e);return IV(e,t.warnings),t.isValid}var km=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 xm=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 wm(t,r)}get experimental(){return this._experimental||(this._experimental={tasks:new km(this)}),this._experimental}async connect(t){return await this.server.connect(t)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Zo(Of)),this.server.assertCanSetRequestHandler(Zo(el)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(Of,()=>({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?gy(i,{strictUnions:!0,pipeStrategy:"input"}):$V})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let i=rl(r.outputSchema);i&&(n.outputSchema=gy(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 ve(Ee.InvalidParams,`Tool ${t.params.name} not found`);if(!n.enabled)throw new ve(Ee.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 ve(Ee.InternalError,`Tool ${t.params.name} has taskSupport '${o}' but was not registered with registerToolTask`);if(o==="required"&&!i)throw new ve(Ee.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 ve&&n.code===Ee.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 Pf(o,r);if(!a.success){let s="error"in a?a.error:"Unknown error",l=Rf(s);throw new ve(Ee.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 ve(Ee.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let i=rl(t.outputSchema),o=await Pf(i,r.structuredContent);if(!o.success){let a="error"in o?o.error:"Unknown error",s=Rf(a);throw new ve(Ee.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 ve(Ee.InternalError,`Task ${l} not found during polling`);d=c}return await n.taskStore.getTaskResult(l)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Zo(Ef)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Ef,async t=>{switch(t.params.ref.type){case"ref/prompt":return aA(t),this.handlePromptCompletion(t,t.params.ref);case"ref/resource":return sA(t),this.handleResourceCompletion(t,t.params.ref);default:throw new ve(Ee.InvalidParams,`Invalid completion reference: ${t.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(t,r){let n=this._registeredPrompts[r.name];if(!n)throw new ve(Ee.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new ve(Ee.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return Su;let o=Mo(n.argsSchema)?.[t.params.argument.name];if(!fv(o))return Su;let a=jE(o);if(!a)return Su;let s=await a(t.params.argument.value,t.params.context);return NE(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 ve(Ee.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 NE(o)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Zo(Xs)),this.server.assertCanSetRequestHandler(Zo(Qs)),this.server.assertCanSetRequestHandler(Zo(xf)),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(xf,async(t,r)=>{let n=new URL(t.params.uri),i=this._registeredResources[n.toString()];if(i){if(!i.enabled)throw new ve(Ee.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 ve(Ee.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Zo(Tf)),this.server.assertCanSetRequestHandler(Zo(Af)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Tf,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,t])=>t.enabled).map(([t,r])=>({name:t,title:r.title,description:r.description,arguments:r.argsSchema?MV(r.argsSchema):void 0}))})),this.server.setRequestHandler(Af,async(t,r)=>{let n=this._registeredPrompts[t.params.name];if(!n)throw new ve(Ee.InvalidParams,`Prompt ${t.params.name} not found`);if(!n.enabled)throw new ve(Ee.InvalidParams,`Prompt ${t.params.name} disabled`);if(n.argsSchema){let i=rl(n.argsSchema),o=await Pf(i,t.params.arguments);if(!o.success){let l="error"in o?o.error:"Unknown error",d=Rf(l);throw new ve(Ee.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 vn?l._def?.innerType:l;return fv(d)})&&this.setCompletionRequestHandler(),a}_createRegisteredTool(t,r,n,i,o,a,s,l,d){mv(t);let u={title:r,description:n,inputSchema:zE(i),outputSchema:zE(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"&&mv(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(pv(l))i=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!pv(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 $V={type:"object",properties:{}};function GE(e){return e!==null&&typeof e=="object"&&"parse"in e&&typeof e.parse=="function"&&"safeParse"in e&&typeof e.safeParse=="function"}function FE(e){return"_def"in e||"_zod"in e||GE(e)}function pv(e){return typeof e!="object"||e===null||FE(e)?!1:Object.keys(e).length===0?!0:Object.values(e).some(GE)}function zE(e){if(e){if(pv(e))return Da(e);if(!FE(e))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return e}}function MV(e){let t=Mo(e);return t?Object.entries(t).map(([r,n])=>{let i=lA(n),o=dA(n);return{name:r,description:i,required:!o}}):[]}function Zo(e){let r=Mo(e)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=If(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function NE(e){return{completion:{values:e.slice(0,100),total:e.length,hasMore:e.length>100}}}var Su={completion:{values:[],hasMore:!1}};import qE from"node:process";var Tm=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),zV(r)}clear(){this._buffer=void 0}};function zV(e){return XT.parse(JSON.parse(e))}function DE(e){return JSON.stringify(e)+`
322
+ `}var Am=class{constructor(t=qE.stdin,r=qE.stdout){this._stdin=t,this._stdout=r,this._readBuffer=new Tm,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=DE(t);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};function GV(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 FV(e){return{registerTool:(t,r,n,i)=>{e.tool(t,r,n,i)}}}async function hv(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=G0(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 dk(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 _v(e,t){let r=br(e,"token");return{serviceUrl:t,explicitToken:r!==void 0?r:process.env.LINZUMI_MCP_ACCESS_TOKEN,authFilePath:br(e,"auth-file"),delegationAuthFilePath:br(e,"delegation-auth-file"),workspaceSlug:br(e,"workspace"),channelSlug:br(e,"channel")}}async function DV(e){let t=rc(e);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0;if(nc(r,"help"))return aa(ac()),{TAG:"Ok",_0:void 0};let n=ic(r,"api-url");if(n.TAG!=="Ok")return{TAG:"Error",_0:n._0};let i=n._0,o=await hv(_v(r,i));if(o.TAG!=="Ok")return{TAG:"Error",_0:o._0};let a=o._0,s=oc(br(r,"mode")),l=Gp(br(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=br(r,"owner-username"),c=u!==void 0?u:process.env.LINZUMI_MCP_OWNER_USERNAME,f=br(r,"cwd"),p=f!==void 0?f:process.cwd(),m=br(r,"thread-id"),h=m!==void 0?m:process.env[Tk],_=Uh({serviceUrl:i,accessToken:a.accessToken,authMode:a.mode,operatingMode:d});if(_.TAG!=="Ok")return{TAG:"Error",_0:_._0};let g=new xm({name:"linzumi",version:"0.1.0"});return GV(g),ex(FV(g),{client:_._0,toolScope:l._0,operatingMode:d,cwd:p,serviceUrl:i,defaultThreadId:h,ownerUsername:c,agentSession:nc(r,"agent-session"),devServices:Hk(process.env)}),await g.connect(new Am),{TAG:"Ok",_0:void 0}}async function qV(e){let t=rc(e);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0,n=ic(r,"api-url");if(n.TAG!=="Ok")return{TAG:"Error",_0:n._0};let i=n._0,o=br(r,"format"),a=o!==void 0?o:"codex",s=oc(br(r,"mode"));if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0};let l;if(nc(r,"include-token")){let f=await hv(_v(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=Gp(br(r,"tool-scope"));if(d.TAG!=="Ok")return{TAG:"Error",_0:d._0};let u=br(r,"owner-username"),c=Ws({command:br(r,"command"),serviceUrl:i,accessToken:l._0,delegationAuthFilePath:br(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(ix(c)),{TAG:"Ok",_0:void 0};case"codex":return aa(ox(c)),{TAG:"Ok",_0:void 0};default:return{TAG:"Error",_0:"--format must be codex or claude-code"}}}async function LV(e){let t=rc(e);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0,n=ic(r,"api-url");if(n.TAG!=="Ok")return{TAG:"Error",_0:n._0};let i=n._0,o=await hv(_v(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,br(r,"workspace"),br(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=oc(br(r,"mode"));if(d.TAG==="Ok"){let u=Uh({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 LE(e){let t=e.slice(1),r=e[0];if(r!==void 0)switch(r){case"--help":case"-h":return aa(ac()),{TAG:"Ok",_0:void 0};case"config":return await qV(t);case"doctor":return await LV(t);case"server":return await DV(t);default:return{TAG:"Error",_0:"unknown linzumi mcp command: "+r}}else return aa(ac()),{TAG:"Ok",_0:void 0}}import*as WE from"node:fs";import*as VE from"node:url";import*as cn from"node:path";import*as HE from"node:module";var ZV=[["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 BE(e,t){return G(ZV.find(r=>r[0]===e?r[1]===t:!1),r=>r[2])}function WV(e){try{return HE.createRequire(import.meta.url).resolve(e)}catch{return}}function VV(e){let t=hs(e);return t.TAG==="Ok"?t._0:[]}function Om(){return{platform:process.platform,arch:process.arch,fileExists:e=>WE.existsSync(e),listDirectory:VV,resolveModulePath:WV,moduleDir:cn.dirname(VE.fileURLToPath(import.meta.url))}}function KE(e,t,r){let n=t;for(;;){let i=n,o=cn.join(...[i,"node_modules"].concat(e.split("/")));if(r(cn.join(o,"package.json")))return o;let a=cn.dirname(i);if(a===i)return;n=a}}function gv(e,t){let r=t.resolveModulePath(e+"/package.json");return r!==void 0?cn.dirname(r):KE(e,t.moduleDir,t.fileExists)}function HV(e,t,r){let i=r.platform==="win32"?"codex.exe":"codex",o=cn.join(e,t),s=[cn.join(o,"codex",i),cn.join(o,"bin",i),cn.join(o,i)].find(l=>r.fileExists(l));return s!==void 0?s:r.listDirectory(o).map(l=>cn.join(o,l,i)).find(l=>r.fileExists(l))}function BV(e){let t=BE(e.platform,e.arch);if(t===void 0)return;let r=[],n=gv(t.packageName,e);n!==void 0&&r.push(cn.join(n,"vendor"));let i=gv("@openai/codex",e);return i!==void 0&&r.push(cn.join(i,"vendor")),Ve(r,void 0,(o,a)=>o!==void 0?o:HV(a,t.triple,e))}function KV(e){let t=gv("@openai/codex",e);if(t===void 0)return;let r=Qt(cn.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 JV=new RegExp("(\\d+\\.\\d+\\.\\d+)");function Cm(e){let t=_s(e,["--version"],1e4,1048576);if(t.TAG!=="Ok")return;let r=JV.exec(t._0);if(r!=null)return k(r.slice(1)[0],n=>n)}function YV(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 XV(e){switch(e.TAG){case"Match":return"match";case"Mismatch":return"mismatch";case"Unverified":return"unverified"}}var yv="LINZUMI_ALLOW_HARNESS_MISMATCH",UE={contents:!1};var QV="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 e4(e){if(!UE.contents)return UE.contents=!0,e(QV)}function ZE(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 "+yv+"=1 to accept the skew.")}function t4(e,t){return"Warning: proceeding with the PATH codex "+e+" despite the CLI pinning engine "+t+" ("+yv+`=1). Engine/CLI version skew can break the wire protocol.
324
+ `}function r4(e,t){}function Em(e,t,r,n,i,o){let a=o!==void 0?o:r4;if(e!==void 0)return{TAG:"Ok",_0:{codexBin:e,source:"ExplicitFlag"}};let s=BV(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"}}}e4(r);let l=KV(t),d=l!==void 0?n("codex"):void 0,u=YV(d,l),c={};switch(c.codex_bin_path="codex",c.codex_bin_source="path-fallback",c.harness_version_check=XV(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=nn(u.pathVersion,null,f=>f),c.pinned_harness_version=nn(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[yv];return m===void 0?{TAG:"Error",_0:ZE(p,f)}:m!=="1"?{TAG:"Error",_0:ZE(p,f)}:(r(t4(p,f)),{TAG:"Ok",_0:{codexBin:"codex",source:"PathFallback"}});case"Match":case"Unverified":return{TAG:"Ok",_0:{codexBin:"codex",source:"PathFallback"}}}}function JE(e){if(typeof e=="number"&&e%1===0)return e}function n4(e){if(typeof e=="string")return e}function i4(e){let t=e.replaceAll("-","+").replaceAll("_","/");switch(t.length&3){case 2:return t+"==";case 3:return t+"=";default:return t}}function YE(e){let t=e.split(".")[1];if(t===void 0)return;let r=Buffer.from(i4(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=YE(e);if(t===void 0)return{actorUserId:void 0,actorUsername:void 0};let r=JE(t.actor_id);return{actorUserId:r!==void 0?r:JE(t.sub),actorUsername:n4(t.actor_username)}}function XE(e){let t=k(YE(e),n=>n.workspace_scope),r=t!==void 0?Array.isArray(t)?ze(t,n=>{if(typeof n=="string"&&n.trim()!=="")return n}):[]:[];if(r.length===1)return r[0]}var Sv=[["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"]],QE=[["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"]],Pm=[["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"]],wv=[["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.140","0.0.0-unbundled")}function xv(){return"linzumi "+x("1.0.140","0.0.0-unbundled")}function bl(e,t){let r=e.indexOf(t);if(r!==-1)return r}function Tv(){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 Av(e){let t={};return e.forEach(r=>{t[r[0]]=r[1]}),t}function o4(e){let t={};return e.forEach(r=>{t[r[1]]=r[0]}),t}var rP=Av(QE),nP=Av(Pm),a4=Av(wv),s4=o4(wv);function l4(e){return e.endsWith("_canonical")?!0:e.endsWith("_legacy")}function iP(e,t){return t>=32?e:Array.isArray(e)?e.map(r=>iP(r,t+1|0)):e===null?e:typeof e==="object"?oP(e,t):e}function oP(e,t){let r=Object.keys(e),n={};return r.forEach(i=>{let o=e[i];if(o!==void 0){n[i]=iP(o,t+1|0);return}}),r.forEach(i=>{if(l4(i))return;let o=n[i];if(o===void 0)return;let a=rP[i];if(a!==void 0)n[a]=o;else{let c=nP[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=a4[s];if(l!==void 0){if(n[i+"_canonical"]!==void 0)return;n[i+"_canonical"]=l;return}let d=s4[s];if(!(d===void 0||n[i+"_legacy"]!==void 0)){n[i+"_legacy"]=d;return}}),n}function Rm(e){return Tv()?oP(e,0):e}function aP(e){let t=e.slice();return e.forEach(r=>{let n=rP[r];n!==void 0&&!t.includes(n)&&t.push(n);let i=nP[r];if(i!==void 0&&!t.includes(i)){t.push(i);return}}),t}var vl="<SENSITIVE_DATA>",d4=aP(["access_token","authorization","code","cookie","kandan_preview_ticket","refresh_token","token"]),u4=["--access-token","--api-key","--authorization","--cookie","--oauth-code","--password","--refresh-token","--secret","--token"],c4=new RegExp("^(authorization|cookie|set-cookie|password)$","i"),f4=new RegExp("(^|[_-])(access[_-]?token|api[_-]?key|auth[_-]?token|oauth[_-]?code|refresh[_-]?token|secret|token)$","i"),m4=new RegExp("\\beyJ[A-Za-z0-9_-]*\\.[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+\\b","g");function p4(e){return e!==void 0?c4.test(e)?!0:f4.test(e):!1}function sP(e){let t={contents:!1};return Pw(e).forEach(r=>{if(d4.includes(r.toLowerCase())){e.set(r,vl),t.contents=!0;return}}),t.contents}function h4(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 sP(a)?n+"?"+a.toString()+o:e}function _4(e){let t=Zn(e);if(t===void 0)return h4(e);let r=ue(t);return sP(r.searchParams),r.toString()}function lP(e){return _4(e).replace(m4,vl)}function g4(e){let t=bl(e,"=");return t!==void 0?[e.slice(0,t),e.slice(t+1|0)]:[e,void 0]}function Cv(e,t){if(p4(t))return vl;if(Array.isArray(e))return t==="args"?y4(e):e.map(r=>Cv(r,void 0));if(e===null)return e;switch(typeof e){case"string":return lP(e);case"object":return dP(e);default:return e}}function y4(e){let t={contents:!1};return e.map(r=>{if(typeof r=="string"){if(t.contents)return t.contents=!1,vl;let n=g4(r),i=n[0];return u4.includes(i)?n[1]!==void 0?i+"="+vl:(t.contents=!0,r):lP(r)}return t.contents=!1,Cv(r,void 0)})}function dP(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:Cv(o[1],a);return}}),i}var Im=dP;import*as ta from"node:os";import*as Pp from"node:path";import*as dw from"node:crypto";function Nn(e){let t=parseFloat(e);if(!Number.isNaN(t))return t}function cP(e){return"local_runner:"+e}var b4="kandan-local-codex-runner",v4="rescript";function fP(e){let t={};t.clientName=b4,t.clientId=e.clientId;let r=e.machineFingerprint;t.machineFingerprint=r!==void 0?r:null,Object.entries(nk(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=v4,t}function mP(e,t,r){let n={};return n.last_seq=r,t!==void 0&&(n.runner_id=e,n.thread_id=t),n}function Gn(e,t){return e.catch(r=>t(ee(r)))}function hP(){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 _P(e){return import(e)}var w4="@anthropic-ai/claude-agent-sdk";function gP(e){return hP()}function k4(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 yP(){let e=await _P(w4);return{query:t=>k4(e.query(t)),getSessionInfo:(t,r)=>e.getSessionInfo(t,r),listSessions:t=>e.listSessions(t),getSessionMessages:(t,r)=>e.getSessionMessages(t,r)}}var Ev=["codex","claude-code","pi","opencode"];function Ya(e){return e}function $m(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 x4(e){switch(e){case"SocketOpen":return"open";case"SocketMessage":return"message";case"SocketClose":return"close";case"SocketError":return"error"}}function T4(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 A4(e){return{readyState:()=>e.readyState,send:t=>{e.send(t)},close:()=>{e.close()},on:(t,r)=>{e.addEventListener(x4(t),n=>r(T4(n)),{})}}}function Mm(e,t){return A4(new WebSocket(e,t))}var vP=0,Xa=1;var Pv="file",Rv=["mcp_oauth_credentials_store","cli_auth_credentials_store"],O4=Rv.flatMap(e=>["-c",e+'="'+Pv+'"']),C4=["-c","features.apps=false"];function po(e){return JSON.stringify(e)}function E4(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 P4(e){let t=e.model,r=e.reasoningEffort,n=e.modelProvider;return[C4,O4,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?E4(n):[]].flat()}function wP(e,t){return[["app-server"],P4(t),["--listen",e]].flat()}var R4=["LINZUMI_MCP_ACCESS_TOKEN","LINZUMI_MCP_OWNER_USERNAME"];function kP(e,t,r){let n=r?Object.fromEntries(Object.entries(e)):{};return R4.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 xP=["ignore","pipe","pipe"];function TP(e){let t=e.length;return t>12e3?e.slice(t-12e3|0,t):e}function AP(e,t,r){return r<3&&e.includes("codex app-server exited before readyz")&&t.includes("EADDRINUSE")?t.includes("listen"):!1}function OP(e){let t=Zn(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 I4="kandan-local-codex-runner",$4="0.0.1";function CP(){return Object.fromEntries([["clientInfo",Object.fromEntries([["name",I4],["version",$4]])],["capabilities",Object.fromEntries([["experimentalApi",!0]])]])}var M4=new RegExp("\\bsession\\b.+\\bis archived\\b","i");function EP(e){return M4.test(e)}var j4=new RegExp("^thread not found(?:\\s*:|\\b)","i");function PP(e){return j4.test(e.trim())}var RP=2e3;function z4(e){try{e.unref();return}catch{return}}var IP="codex app-server websocket closed",N4="codex app-server websocket is not open";function G4(e){let t=e.method;if(typeof t=="string")return t}function Iv(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 zm(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 zP(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 $P(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 F4(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 D4(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(;hn(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);zm(t,r,"outgoing",F4(n.id,l))}function q4(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=Gt(a.id),l=s&&(Gt(a.result)||Gt(a.error)),d=G4(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:Iv(a)})):void 0}if(s)if(d!==void 0){Gn(D4(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=>zP(r,p,c)):e.pendingNotifications.push(c)}function L4(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 MP(e,t){return Object.fromEntries(t!==void 0?[["jsonrpc","2.0"],["method",e],["params",t]]:[["jsonrpc","2.0"],["method",e]])}function jP(e,t,r,n,i,o){return t.socket.readyState()===Xa?new Promise((a,s)=>{e.pending[JSON.stringify(n)]={resolvePending:a};let l=zm(t,r,"request",L4(n,i,o));l.TAG!=="Ok"&&(fr(e.pending,JSON.stringify(n)),a({TAG:"Error",_0:l._0}))}):Promise.resolve({TAG:"Error",_0:N4})}async function Nm(e,t,r,n){let i=t!==void 0?t:u=>({socket:Mm(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(;hn(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 Gm(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);z4(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=>$P(n,p,d))};e.socket.on("SocketClose",d=>a(IP)),e.socket.on("SocketError",d=>a(IP)),e.socket.on("SocketMessage",d=>{let u=d.data;if(u!==void 0)return i("incoming",u),q4(r,e,n,i,u)});let s=await jP(r,e,i,"initialize","initialize",CP());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}:(zm(e,i,"outgoing",MP("initialized",void 0)),{TAG:"Ok",_0:{request:(d,u)=>{let c=r.nextId;return r.nextId=r.nextId+1|0,jP(r,e,i,c,d,u)},notify:(d,u)=>{zm(e,i,"outgoing",MP(d,u))},onNotification:d=>{r.notificationCallbacks.push(d);let u=r.pendingNotifications.slice();r.pendingNotifications.splice(0,r.pendingNotifications.length),u.forEach(c=>zP(n,d,c))},onRequest:d=>{r.requestCallbacks.push(d)},onClose:d=>{let u=r.closeError;if(u!==void 0)return $P(n,d,u);r.closeCallbacks.push(d)},isClosed:()=>Gt(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 NP(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}var GP="linzumi_thread_codex_worker_ready",FP="linzumi_thread_codex_worker_session_closed",DP="linzumi_thread_codex_worker_request",qP="linzumi_thread_codex_worker_notify",zv="linzumi_thread_codex_worker_response",LP="linzumi_thread_codex_worker_notification",UP="linzumi_thread_codex_worker_server_request",ZP="linzumi_thread_codex_worker_server_request_response";function WP(e,t){let r={};return r.type=GP,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 VP(e,t){let r={};return r.type=FP,r.kandanThreadId=e,r.reason=t,r}function U4(e,t,r){let n={};return n.type=DP,n.id=e,n.method=t,r!==void 0&&(n.params=r),n}function Z4(e,t){let r={};return r.type=qP,r.method=e,t!==void 0&&(r.params=t),r}function W4(e,t){let r={};return r.type=zv,r.id=e,r.response=t,r}function V4(e,t){let r={};return r.type=zv,r.id=e,r.error=t,r}function H4(e){let t={};return t.type=LP,t.notification=e,t}function B4(e,t){let r={};return r.type=UP,r.id=e,r.request=t,r}function Mv(e,t,r){let n={};return n.type=ZP,n.id=e,t!==void 0&&(n.result=t),r!==void 0&&(n.error=r),n}function K4(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 J4(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 Y4(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 X4(e){let t=xl(e);if(t===void 0)return;let r=t.type;if(r===void 0||typeof r!="string")return;if(r===DP){let i=kl(t.id),o=Li(t.method);return i!==void 0&&o!==void 0?{TAG:"ParentRequest",id:i,method_:o,params:NP(t.params)}:void 0}if(r===qP){let i=Li(t.method);return i!==void 0?{TAG:"ParentNotify",method_:i,params:NP(t.params)}:void 0}if(r!==ZP)return;let n=kl(t.id);if(n!==void 0)return{TAG:"ParentServerRequestResponse",id:n,result:t.result,error:Li(t.error)}}function Q4(e){let t=xl(e);if(t===void 0)return;let r=t.type;if(r===void 0||typeof r!="string")return;if(r===zv){let o=kl(t.id);return o!==void 0?{TAG:"ChildResponse",id:o,response:K4(t.response),error:Li(t.error)}:void 0}if(r===LP){let o=J4(t.notification);return o!==void 0?{TAG:"ChildNotification",notification:o}:void 0}if(r!==UP)return;let n=kl(t.id),i=Y4(t.request);if(n!==void 0&&i!==void 0)return{TAG:"ChildServerRequest",id:n,request:i}}function HP(e){let t=xl(e);if(t===void 0)return;let r=t.type;if(typeof r=="string"&&r===FP)return[x(Li(t.kandanThreadId),""),x(Li(t.reason),"")]}var eH="thread Codex worker reported invalid ready payload";function tH(e){let t=Li(e);if(t!==void 0)switch(t){case"claude-code":return"claude-code";case"codex":return"codex";default:return}}function rH(e){return e!==void 0?Array.isArray(e)?ze(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:tH(r.agentProvider)}}):[]:[]}function BP(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!==GP)return{TAG:"Ok",_0:void 0};let i=Li(r.kandanThreadId);return i!==void 0&&i===t?{TAG:"Ok",_0:{kandanThreadId:i,commanderManagedPorts:rH(r.commanderManagedPorts)}}:{TAG:"Error",_0:eH}}function KP(e,t){}var JP="linzumi.thread_runner",nH="thread Codex worker requires a codex client with onRequest",jv="thread Codex worker IPC channel closed";function YP(e,t,r){let n=r!==void 0?r:KP,i=e.onRequest;if(i===void 0)return{TAG:"Error",_0:nH};let o=new Map,a={contents:1},s={contents:!1},l=u=>{if(s.contents)return;s.contents=!0;let c={};c.purpose=JP,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=X4(u);if(c!==void 0)switch(c.TAG){case"ParentRequest":let f=c.id;e.request(c.method_,c.params).then(_=>_.TAG==="Ok"?d(W4(f,_._0)):d(V4(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(H4(u))),i(u=>new Promise((c,f)=>{let p=a.contents;a.contents=p+1,o.set(p,c),d(B4(p,u))})),t.onceDisconnect(()=>{o.forEach(u=>u({TAG:"Error",_0:jv})),o.clear()}),{TAG:"Ok",_0:void 0}}var iH="thread Codex worker IPC client is closed",oH="thread Codex worker response missing body",aH="thread Codex worker IPC client closed";async function sH(e,t,r,n,i,o){let a=d=>{let u=e(d);if(u.TAG==="Ok")return;let c={};c.purpose=JP,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(Mv(t,c,void 0)))}else s=!0,a(Mv(t,void 0,u._0))}l=l+1|0}if(!s)return a(Mv(t,void 0,"unhandled Codex app-server request: "+n))}function lH(e){let t=xl(e);if(t===void 0)return"";let r=t.method;return typeof r=="string"?r:""}function XP(e,t){let r=t!==void 0?t:KP,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:iH};let g=e.send,b=e.isConnected();return g!==void 0&&b?g(_):{TAG:"Error",_0:jv}},c=_=>{let g=Q4(_);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:oH})):void 0;case"ChildNotification":let A=g.notification;i.length!==0?i.forEach(L=>L(A)):a.push(A);return;case"ChildServerRequest":let Z=g.request;sH(u,g.id,Z,lH(Z),o,r);return}},f=e.onMessage(c),p=()=>{l.contents=!0,d(jv)},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(U4(v,_,g));S.TAG!=="Ok"&&(n.delete(v),b({TAG:"Error",_0:S._0}))}),notify:(_,g)=>u(Z4(_,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(aH)}}}import*as Uv from"node:child_process";import*as eR from"node:os";import*as tR from"node:path";function rR(){return tR.join(eR.homedir(),".linzumi","protected-dev-listeners")}var dH=new RegExp("^(\\d+)\\s+(\\d+)$");function uH(e){return ze(e.split(`
325
+ `),t=>{let r=dH.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=Nn(i),s=Nn(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 uH(t._0).filter(r=>r.pgid===e).map(r=>r.pid)}function Fm(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 oR={contents:(e,t)=>{}};var Nv="SIGKILL",Qa={children:new Set,handlersInstalled:!1,removeHandlers:void 0};function xu(e,t,r,n,i){let o=e.pid;oR.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 fH(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=Fm(o,Nv,t,void 0,r);l.sparedPids.length!==0&&oR.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,Nv);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,Nv);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 Gv(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=>fH(s,n,i,o)),a.length}function iR(e,t){let r;return r=typeof t=="string"?t:JSON.stringify(t),"linzumi commander "+e+": "+r+`
326
+ `}function mH(){if(Qa.handlersInstalled)return;Qa.handlersInstalled=!0;let e=o=>{Gv(void 0,void 0,"process_exit")};process.on("exit",e);let t=process.listenerCount("uncaughtException")===0,r=process.listenerCount("unhandledRejection")===0,n=o=>{Gv(void 0,void 0,"uncaught_exception"),mr(iR("uncaughtException",o)),process.exit(1)},i=o=>{Gv(void 0,void 0,"unhandled_rejection"),mr(iR("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 Dm(e){return Qa.children.add(e),mH(),{unregister:()=>{Qa.children.delete(e)}}}import*as Wo from"node:path";import*as sR from"node:net";function Tl(e,t){try{return e.kill(t)}catch{return!1}}function lR(){return new Promise((e,t)=>{let r=sR.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 Yte=new RegExp("[^0-9A-Za-z._-]","g");var sre=new RegExp("[\\\\/]");var dR="cannot fork thread runner without current CLI script path";var lre=15*6e4,dre=120*6e4,ure=1440*6e4,cre=2*6e4;var _H="this computer is updating its Linzumi runner",fre=_H+" to a new version - nothing was started. Retry in a few minutes once the update finishes.";var mre=15*6e4;var uR="this computer restarted its Linzumi runner for an update",pre=uR+" after waiting for this job past the drain timeout - the job was interrupted. Send your message again to continue.",hre=uR+" 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 yH(e,t){}var Dv="linzumi.thread_runner";function cR(e,t){return e!==void 0&&e.trim()!==""?{TAG:"Ok",_0:Wo.isAbsolute(e)?e:Wo.resolve(t,e)}:{TAG:"Error",_0:dR}}function bH(e){return["--require","-r","--import","--loader","--experimental-loader"].includes(e)}function vH(e){return["--require=","-r=","--import=","--loader=","--experimental-loader="].some(t=>e.startsWith(t))}function SH(e){let t=[],r=0;for(;r<e.length;){let n=e[r];if(n!==void 0){let i=bH(n),o=vH(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 qv(e,t,r){return SH(r).concat([e].concat(t))}function fn(e,t){return t!==void 0?t!==""?[e,t]:[]:[]}function fR(e){let t=n=>{let i=n.join(",");if(i!=="")return i},r=e.codexModelProvider;return[["--api-url",e.kandanUrl],["--cwd",e.cwd],["--codex-bin",e.codexBin],fn("--workspace",e.workspaceSlug),fn("--log-file",e.logFile),fn("--debug-trace-dir",G(e.debugTrace,n=>n.dir)),fn("--debug-trace-content",k(e.debugTrace,n=>n.contentMode)),e.fast?["--fast"]:[],fn("--allowed-cwd",t(e.allowedCwds)),fn("--forward-port",t(e.allowedForwardPorts.map(n=>n.toString()))),fn("--code-server-bin",e.codeServerBin),fn("--model",k(e.runtimeDefaults,n=>n.model)),fn("--reasoning-effort",k(e.runtimeDefaults,n=>n.reasoningEffort)),fn("--sandbox",k(e.runtimeDefaults,n=>n.sandbox)),fn("--approval-policy",k(e.runtimeDefaults,n=>n.approvalPolicy)),r!==void 0?["--model-provider",r.provider,"--llm-proxy-base-url",r.llmProxyBaseUrl]:[],e.vmExecution?["--vm-execution"]:[],fn("--execution-mode",e.executionMode),fn("--egress-mode",e.egressMode),fn("--project-public-id",e.projectPublicId),fn("--golden-image-id",e.goldenImagePublicId),["--allow-port-forwarding-by-default"]].flat()}function mR(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 pR(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 hR(e){let t=e.length;return t>12e3?e.slice(t-12e3|0,t):e}function qm(e){let t=nn(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 _R(e,t){return"thread Codex worker did not report ready within "+t.toString()+"ms for Kandan thread "+e}var wH="thread runner ready timeout must be a non-negative number";function gR(e){let t=x(e,3e4);return isFinite(t)&&t>=0?{TAG:"Ok",_0:t}:{TAG:"Error",_0:wH}}var yR="thread worker start preflight failed";function kH(e){return Wo.isAbsolute(e)||new RegExp("^[A-Za-z]:[\\\\/]").test(e)?!0:e.startsWith("\\\\")}function xH(e){return e===""?!0:!kH(e)&&e!==".."&&!e.startsWith("../")&&!e.startsWith("..\\")&&!e.includes("/../")?!e.includes("\\..\\"):!1}function bR(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=Ln(Wo.resolve(e));if(i.TAG!=="Ok")return{TAG:"CwdRefused",reason:"cwd_not_found"};let o=i._0,a=t.find(s=>xH(Wo.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 vR(e,t,r){if(r.TAG==="CwdAllowed")return;let n=r.reason,o=t.length!==0?t.join(", "):"none";return{reason:n,message:yR+" ("+n+"): working directory "+e+" cannot start a coding session on this runner (allowed roots: "+o+")"}}function TH(e){return e.split(`
328
+ `).map(t=>t.trim()).find(t=>t.startsWith(yR))}var gre=new RegExp("worker exited before ready|worker did not report ready within","i");function SR(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 AH(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}async function wR(e,t,r,n,i,o){let a=o!==void 0?o:yH,s=Math.max(1,x(t,2)),l=x(r,250),d=x(n,AH),u,c,f=1;for(;hn(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=TH(_.capturedOutput),b=m<s&&hn(g),y={};y.purpose=Dv,y.attempt=m,y.maxAttempts=s,y.code=nn(_.code,null,v=>v),y.signal=nn(_.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:qm(x(c,{code:void 0,signal:void 0,capturedOutput:""}))}}var kR=3e4;function OH(e){let t=ke(e);return t!==void 0?Iv(t):{TAG:"ResultReply",_0:null}}function xR(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(_,OH)),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:()=>Gt(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 TR(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 CH(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 EH(e){try{e.disconnect();return}catch{return}}function PH(e,t,r,n,i){return new Promise((o,a)=>{let s=Uv.spawn(process.execPath,e,{cwd:t,env:r,stdio:["inherit","pipe","pipe","ipc"]}),l=Dm({stop:()=>Tu(s,"SIGTERM"),pid:Rr(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=hR(d.contents+y)),g.write(y)});return}};p(s.stdout,process.stdout),p(s.stderr,process.stderr);let m=_=>{let g=BP(_,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:We(_),signal:g==null?void 0:We(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 OR(e,t){let r=cR(process.argv[1],process.cwd());if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=r._0,i=gR(void 0);if(i.TAG!=="Ok")return{TAG:"Error",_0:i._0};let o=i._0,a=["run"].concat(fR(e)),s=qv(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));pR(e,process.pid,d).forEach(_=>{u[_[0]]=_[1]}),t("process.spawn",Object.fromEntries([["command",process.execPath],["args",qv(n,mR(a),process.execArgv).map(_=>_)],["cwd",e.cwd],["purpose",Dv]]));let c={contents:void 0},f={contents:!1},p=(async()=>{let _=await wR(b=>PH(s,e.cwd,u,e.kandanThreadId,y=>{c.contents=We(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:qm(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:_R(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=[],Z=XP({send:K=>CH(_,K),isConnected:()=>on(Rr(_.connected),!1),onMessage:K=>{_.on("message",K);let oe=()=>{_.off("message",K)};return g.push(oe),oe},onceExit:K=>{let oe=(W,V)=>K();return _.once("exit",oe),()=>{_.off("exit",oe)}},onceDisconnect:K=>{let oe=()=>K();return _.once("disconnect",oe),()=>{_.off("disconnect",oe)}}},t),L=xR(Z,t);_.on("message",K=>{let oe=HP(K);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",(K,oe)=>{U.contents=!0,L.signalClosed("codex thread worker exited");let W=ae.slice();ae.splice(0,ae.length),W.forEach(V=>V())}),{TAG:"Ok",_0:{client:L.client,pid:Rr(_.pid),commanderManagedPorts:h.ports,onExit:K=>{if(U.contents)return K();ae.push(K)},close:()=>{Z.close(),g.forEach(K=>K()),EH(_),Tu(_,"SIGTERM")}}};case"WorkerExitedBeforeReady":return{TAG:"Error",_0:qm(h._0)};case"WorkerInvalidReady":return{TAG:"Error",_0:h._0}}}function CR(e,t){return new Promise((r,n)=>{let i;try{i={TAG:"Ok",_0:Uv.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 Zv(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 Lm(e,t,r){return wt(Zv(e,t,r),n=>n==="on-failure"?"on-request":n)}function ER(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 PR="kandan-local-runner",RR="pragmatic";import*as $R from"node:os";import*as Vo from"node:path";function Wv(e){let t=oa(e,"LINZUMI_CONTROL_CURSOR_DIR");return t!==void 0&&t.trim()!==""?t.trim():Vo.join($R.homedir(),".linzumi","control-cursors")}var IH=new RegExp("[^A-Za-z0-9._-]+","g"),$H=new RegExp("^[-.]+|[-.]+$","g");function Vv(e){let t=e.replace(IH,"-").replace($H,"").slice(0,80),r=Un(e).slice(0,8);return(t===""?"runner":t)+"."+r}function MR(e,t){return Vo.join(Wv(t),Vv(e)+".json")}function jR(e,t){return Vo.join(Wv(t),Vv(e)+".start-turn.json")}function zR(e,t){return Vo.join(Wv(t),Vv(e)+".source-seq.json")}function NR(e,t){return e+" "+t}function GR(e,t,r){return e+" "+t+" "+r}var FR="__control_epoch";function MH(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===FR)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 jH(e,t){let r=Qt(e);if(r.TAG==="Ok"){let i=MH(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 zH(e,t){let r={};return t!==void 0&&(r[FR]=t),Object.entries(e).forEach(n=>{r[n[0]]=n[1]}),JSON.stringify(r)+`
329
+ `}function Um(e,t,r,n){let i=r!==void 0?r:!1,o=n!==void 0?n:!1,a=jH(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=zH(s,l.contents),h=e+".tmp",_=_e(Ft(Vo.dirname(e)),()=>o?Cw(h,e,Vo.dirname(e),m):_e(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=We(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 DR(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 yre=1800*1e3;var bre=new RegExp("[^A-Za-z0-9._-]+","g"),vre=new RegExp("^[-.]+|[-.]+$","g");function qR(e){return{initial:t=>e.initial(t),onAdvance:(t,r)=>e.onAdvance(t,r),flush:()=>e.flush()}}function Zm(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 LR(e){return e!==void 0?Array.isArray(e)?ze(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 ZR(){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 Wm(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function qH(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 Hv(e){return G(Wm(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 HR(){return{completed:{inputTokens:0,outputTokens:0,cacheCreationInputTokens:0,cacheReadInputTokens:0},current:void 0,lastEmittedKey:void 0}}function WR(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 VR(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 BR(e,t){let r=k(t,n=>qH(n,"type"));if(r!==void 0)switch(r){case"message_delta":let n=k(t,a=>Wm(a,"usage"));return n!==void 0?(e.current=WR(n,e.current),VR(e)):void 0;case"message_start":let i=k(k(t,a=>Wm(a,"message")),a=>Wm(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=WR(i,void 0),VR(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 Kv(e){return e==="Text"?"text":"thinking"}function YR(){return{activeMessageId:void 0,syntheticMessageCounter:0,completedMessageIds:[],consumedAssistantMessageIds:new Set,blocksByMessageId:{}}}function Bv(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 JR(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&isFinite(r)&&Math.round(r)===r)return r|0}function Jv(e,t){return e.syntheticMessageCounter=e.syntheticMessageCounter+1|0,"synthetic-claude-message:"+t+":"+e.syntheticMessageCounter.toString()}function UH(e,t){let r=e.activeMessageId;if(r!==void 0)return r;let n=Jv(e,t);return e.activeMessageId=n,n}function Yv(e,t){return"claude-message:"+e+":content-block:"+t.toString()}function Vm(e,t,r,n){if(r===void 0)return;let i=UH(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 XR(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=>Bv(c,"delta")),i=k(t,c=>JR(c,"index")),o=k(n,c=>Bo(c,"type"));if(o!==void 0)switch(o){case"text_delta":Vm(e,"Text",i,k(n,c=>Bo(c,"text")));break;case"thinking_delta":Vm(e,"Thinking",i,k(n,c=>Bo(c,"thinking")));break}return e.activeMessageId;case"content_block_start":let a=k(t,c=>Bv(c,"content_block")),s=k(t,c=>JR(c,"index")),l=k(a,c=>Bo(c,"type"));if(l!==void 0)switch(l){case"text":Vm(e,"Text",s,k(a,c=>Bo(c,"text")));break;case"thinking":Vm(e,"Thinking",s,k(a,c=>Bo(c,"thinking")));break}return e.activeMessageId;case"message_start":let d=k(k(t,c=>Bv(c,"message")),c=>Bo(c,"id"));e.activeMessageId=d!==void 0?d:Jv(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 QR(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):Jv(e,"missing-assistant-frame-id")}function eI(e,t){let r=e.blocksByMessageId[t];return r!==void 0?(fr(e.blocksByMessageId,t),r.toSorted((n,i)=>Bu(n.index,i.index))):[]}function tI(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function Xv(e,t){let r=e[t];if(typeof r=="string")return r}function Qv(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&isFinite(r))return r}function WH(e){if(e===void 0||e<0)return;let t=e<=1?e*100:e;return Math.min(100,Math.round(t))}function VH(e){if(e!==void 0&&e>0)return e>1e12?Math.round(e):Math.round(e*1e3)}function eS(e){let t=Xv(e,"status"),r=Xv(e,"rateLimitType"),n=r!==void 0?r:Xv(e,"rate_limit_type"),i=WH(Qv(e,"utilization")),o=Qv(e,"resetsAt"),a=VH(o!==void 0?o:Qv(e,"resets_at"));if(!(t===void 0&&i===void 0&&a===void 0))return{status:t,windowLabel:n,utilizationPercent:i,resetsAtMs:a}}function rI(e){let t=tI(e,"rate_limit_info");if(t!==void 0)return eS(t);let r=tI(e,"rate_limit");return eS(r!==void 0?r:e)}var BH="edge_blocked";function KH(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 iI(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 JH=[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")],YH=[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")],XH=new RegExp('"error"\\s*:\\s*\\{[^{}]*?"message"\\s*:\\s*"((?:[^"\\\\]|\\\\.){1,500})"');function nI(e,t){return Ve(e,void 0,(r,n)=>r!==void 0?r:iI(n,t))}function QH(e){let t;try{t=JSON.parse('"'+e+'"')}catch{return e}return typeof t=="string"?t:e}function e3(e){let t=iI(XH,e),n=(t!==void 0?QH(t):e).trim();return n.length<=200?n:n.slice(0,199)+"\u2026"}function oI(e){return{status:k(nI(JH,e),t=>ga(t,void 0)),requestId:nI(YH,e),edgeBlocked:KH(e),message:e3(e)}}function tS(e){return Gt(e.status)||Gt(e.requestId)?!0:e.edgeBlocked}function aI(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="+BH+"]")),r.length!==0?e+" ("+r.join(", ")+")":e}function sI(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 uI(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:HR(),identity:YR()}}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 lI(e,t){let r=e[t];if(typeof r=="boolean")return r}function rS(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 r3(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 n3(e,t){if(e.sessionAnnounced)return!1;let r=r3(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 cI=Cu;function fI(e){let t=e.activeTurnId;return t!==void 0?Cu(e,t):!1}function mI(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 nS(e,t){if(e.terminalTurns.add(t),de(e.activeTurnId,t)){e.activeTurnId=void 0;return}}function dI(e){return e.turnId+"/"+e.itemId+"/"+e.streamKind}function iS(e,t){if(!e.startedItems.has(dI(t)))return e.startedItems.add(dI(t)),e.emitEvent({TAG:"ItemStarted",item:t})}function oS(e,t,r){iS(e,t),e.emitEvent({TAG:"ItemCompleted",item:t,content:r})}function i3(e,t,r){iS(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 o3(e,t){let r=ze(x(rS(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 a3(e){let t=Rt(e,"subtype"),r=x(lI(e,"is_error"),!1),n=de(t,"interrupt")||de(t,"error_interrupted")||x(lI(e,"is_interrupt"),!1),i=r||de(t,"error_max_turns")||de(t,"error_during_execution");return n?"Interrupted":i?{TAG:"Errored",reason:o3(e,t)}:"Success"}function s3(e,t){let r=oI(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:tS(r)?aI("Claude Code failed: "+t,r):"Claude Code failed: "+t,providerDetail:tS(r)?sI(r):void 0}}function l3(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 d3(e){return e==="Text"?"assistant":"reasoning"}function u3(e){let t={};t.type=Kv(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=>rS(y,"content")),[]),o=QR(e.identity,k(n,y=>Rt(y,"id"))),s=eI(e.identity,o).filter(y=>y.content.trim()!==""),l={};s.forEach(y=>{let v=Kv(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],[]),Z=R[0];if(Z!==void 0&&v<Z)return R.shift(),!0;let L=ia(R,v);if(L!==void 0)return R.splice(L,1),!0;let ae=Ju(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:Yv(o,y),streamKind:v}),m=[];s.forEach(y=>{m.push({index:y.index,events:[[p(y.index,d3(y.kind)),u3(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:l3(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)=>Bu(y.index,v.index)).flatMap(y=>y.events)}function f3(e){if(e!==void 0&&e!=="")return e}function m3(e,t){let r=Al(t,"event"),n=BR(e.usage,r),i=XR(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:Yv(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=f3(y);if(u===void 0||v===void 0)return;let S=a(u,b);if(S!==void 0){i3(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){oS(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=>rS(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()}oS(e,{turnId:s,itemId:d,streamKind:"command_output"},o),i.contents=!0}),!i.contents)return es(e,"user")}function h3(e,t){nS(e,t),e.emitEvent({TAG:"TurnCompleted",turnId:t})}function _3(e,t,r){nS(e,t),e.emitEvent({TAG:"TurnInterrupted",turnId:t,reason:r})}function g3(e,t,r){nS(e,t),e.emitEvent({TAG:"TurnFailed",turnId:t,failure:r})}function y3(e,t){let r=a3(t);if(typeof r!="object"){if(r==="Success"){let i=Ol(e),o=Hv(t);return o!==void 0&&e.emitEvent({TAG:"UsageUpdated",turnId:i,usage:o}),h3(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=Hv(t);return i!==void 0&&e.emitEvent({TAG:"UsageUpdated",turnId:n,usage:i}),g3(e,n,s3(Rt(t,"subtype"),r.reason))}}function pI(e,t){if(typeof t!="object"||t===null||Array.isArray(t))return;let r=n3(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"?iS(e,s):oS(e,s,a[1])});return;case"rate_limit_event":let i=rI(t);return i!==void 0?e.emitEvent({TAG:"RateLimitUpdated",rateLimit:i}):es(e,"rate_limit_event");case"result":return y3(e,t);case"stream_event":return m3(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 v3=["liveModelSwitch","liveEffortSwitch","sessionHistoryListing","slashCommandCatalog"];function Cl(e){let t=yr(e);return t!==void 0?x(Or(ue(t)),"unknown error"):"unknown error"}function hI(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 bI(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 _I(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 S3(e,t,r){let n={};return n.tool_name=e,n.input=t,r!==void 0&&(n.suggestions=r),n}function w3(e,t){let r={};return r.behavior="allow",r.toolUseID=e,r.updatedInput=t,r}function vI(e,t){let r={};return r.behavior="deny",r.message=x(t,"denied by the approval bridge"),r.toolUseID=e,r}function gI(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=bI(t.reasoningEffort),i;if(typeof n!="object")if(n==="ClearEffort"&&Gt(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(on(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:mI(e.projector,e.harnessSessionId)});if(e.harnessSessionId===""){if(!e.input.push(_I(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(_I(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(!cI(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=Ju(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=w3(t,a!==void 0?a:i.toolInput)}else o=vI(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 yI(e,t,r,n,i){let o=gP(),a={contents:void 0},s=U=>{let K=a.contents;if(!(K!==void 0&&K.stopped))return i(U)},l={contents:void 0},d=new Promise((U,K)=>{l.contents=U}),u=U=>{let K=l.contents;if(K!==void 0)return l.contents=void 0,K(U)},c=uI(n,U=>u({TAG:"Ok",_0:U}),s),f=(U,K,oe)=>new Promise((W,V)=>{let M=oe.toolUseID,N=a.contents;return N!==void 0?(N.pendingApprovals.push({requestId:M,toolInput:K,resolveDecision:W}),s({TAG:"ApprovalRequested",request:{requestId:M,turnId:c.activeTurnId,kind:"canUseTool",summary:U,payload:S3(U,K,Rr(oe.suggestions))}})):W(vI(M,"approval bridge not ready"))}),p=bI(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(K=>{U[K[0]]=K[1]}):Object.entries(process.env).forEach(K=>{U[K[0]]=K[1]}),Object.entries(t.environment).forEach(K=>{U[K[0]]=K[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}}),Z={harnessSessionId:x(n,""),currentModel:t.model,currentEffort:m,input:o,connection:R,projector:c,pendingApprovals:[],stopped:!1,diedReported:!1,adoption:d};a.contents=Z;let L=U=>{if(!(Z.stopped||Z.diedReported))return Z.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 K;try{K=await Z.connection.next()}catch(oe){let W=ee(oe);U=!1;let V="Claude Code SDK stream threw: "+Cl(W);u({TAG:"Error",_0:{fate:"transient_local",reason:V,providerDetail:void 0}}),L(V),K=void 0}if(K!==void 0)if(K.done){U=!1;let oe=fI(Z.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 pI(Z.projector,K.value)}})(),{state:Z,started:d}}function SI(e){let t=[];return{harness:"claude-code",capabilities:v3,startSession:async(i,o)=>{let a=hI(i.approvalPolicy);if(a.TAG!=="Ok")return{TAG:"Error",_0:{fate:"deterministic",reason:a._0,providerDetail:void 0}};let s=yI(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:gI(s.state)}},attachSession:async(i,o,a)=>{let s=hI(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:Gt(c==null?void 0:We(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=yI(e,o,s._0,i,a);return t.push(u.state),{TAG:"Ok",_0:gI(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 Hm from"node:path";function aS(e){switch(e){case"rescript":return"Rescript";case"ts":return"Ts";default:return}}function El(e){return e==="Ts"?"ts":"rescript"}function sS(e){return Hm.join(e,".linzumi","commanderImpl")}function wI(e){let t=Qt(e);if(t.TAG==="Ok")return aS(t._0.trim())}function kI(e,t){let r=e+".tmp."+process.pid.toString()+"."+tc(6);return _e(Ft(Hm.dirname(e)),()=>{let n=_e(Ti(r,El(t)+`
330
+ `),()=>li(r,e));return n.TAG==="Ok"?{TAG:"Ok",_0:void 0}:(_n(r),{TAG:"Error",_0:n._0})})}import*as Bm from"node:path";function AI(e,t){return e.LINZUMI_THREAD_RUNNER_ROLE==="thread"?"ThreadWorkerRole":t&&on(e.LINZUMI_SUPERVISED,"1")?"SupervisorRole":"CommanderRole"}var T3=[["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"],["token","ValueFlag"]];function A3(e){let t={},r,n=0;for(;hn(r)&&n<e.length;){let o=e[n];if(o!==void 0)if(o.startsWith("--")){let a=o.slice(2,o.length),s=T3.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 Er(e,t){let r=e[t];if(r===void 0||typeof r!="object")return;let n=r._0;if(n.trim()!=="")return n}function xI(e,t){let r=e[t];return r!==void 0?typeof r!="object":!1}var O3="use only one of --api-url or --linzumi-url";function C3(e){let t=Er(e,"api-url"),r=Er(e,"linzumi-url");return t!==void 0?r!==void 0&&t!==r?{TAG:"Error",_0:O3}:{TAG:"Ok",_0:t}:{TAG:"Ok",_0:r}}function E3(e){return e!==void 0?e.split(",").map(t=>t.trim()).filter(t=>t!==""):[]}function P3(e){return"invalid --forward-port: "+e+" is not a TCP port"}function R3(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!==""&&hn(r.contents)))return;let a=x(Nn(o),NaN),s=!Ot(a)||a<1||a>65535,l=t.includes(a);if(s){r.contents=P3(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 lS(e,t){let r=e==="~",n=e.startsWith("~/");return r?t:n?Bm.resolve(t,e.slice(2,e.length)):e}function I3(e){if(e===void 0)return!1;switch(e){case"ELOOP":case"ENOENT":case"ENOTDIR":return!0;default:return!1}}function $3(e,t){let r=[],n=[];e.forEach(o=>{let a=Bm.resolve(lS(o,t)),s=Ln(a);if(s.TAG!=="Ok"){I3(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 M3(e){return"invalid requested cwd: "+e+" does not exist"}function j3(e,t){let r=Bm.resolve(lS(e,t)),n=Ln(r);if(n.TAG!=="Ok")return{TAG:"Error",_0:M3(e)};let i=n._0;return{TAG:"Ok",_0:i===r?[i]:[i,r]}}function OI(e){return"Warning: ignoring allowed cwd root "+e+`: it does not exist (dropped from this runner's advertised roots)
331
+ `}function dS(e){if(e!==void 0)switch(e){case"local_vm":return"local_vm";case"raw":return"raw";default:return}}function uS(e){if(e!==void 0)switch(e){case"hardened":return"hardened";case"open":return"open";default:return}}function TI(e){if(e!==void 0&&e.trim()!=="")return e.trim()}function z3(e){return"invalid --debug-trace-content: expected summary or full, got "+e}function N3(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:z3(e)}}}var G3="thread runner is missing LINZUMI_THREAD_RUNNER_KANDAN_THREAD_ID",F3="thread runner is missing LINZUMI_THREAD_RUNNER_TOKEN";function D3(e){let t=e.LINZUMI_THREAD_RUNNER_KANDAN_THREAD_ID;return t!==void 0&&t.trim()!==""?{TAG:"Ok",_0:t}:{TAG:"Error",_0:G3}}function q3(e){let t=e.LINZUMI_THREAD_RUNNER_TOKEN;return t!==void 0&&t.trim()!==""?{TAG:"Ok",_0:t}:{TAG:"Error",_0:F3}}function L3(e){let t=e.LINZUMI_THREAD_RUNNER_AGENT_MCP_TOKEN;if(t!==void 0&&t.trim()!=="")return t.trim()}function U3(e){return"unsupported --model-provider: "+e}function Z3(e){return"--model-provider "+e+" requires --llm-proxy-base-url"}function W3(e){return"--model-provider "+e+" requires the LINZUMI_LLM_PROXY_TOKEN env credential"}function V3(e,t){let r=Er(e,"model-provider");if(r===void 0)return{TAG:"Ok",_0:void 0};if(r!=="wafer"&&r!=="openai-proxy")return{TAG:"Error",_0:U3(r)};let n=Er(e,"llm-proxy-base-url");if(n===void 0)return{TAG:"Error",_0:Z3(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:W3(r)}}function CI(e,t){return _e(A3(e),r=>_e(C3(r),n=>{let i=x(n,$s),o=t.resolveBaseCwd(lS(x(Er(r,"cwd"),t.processCwd()),t.home)),s=r["allowed-cwd"]!==void 0?$3(E3(Er(r,"allowed-cwd")),t.home):{allowed:[],missing:[]};s.missing.forEach(t.warnStaleRoot);let l=s.allowed,d=l.length!==0?{TAG:"Ok",_0:l}:j3(o,t.home);return _e(d,u=>_e(D3(t.env),c=>_e(q3(t.env),f=>_e(R3(Er(r,"forward-port")),p=>_e(V3(r,t.env),m=>{let h=Er(r,"debug-trace-dir");return _e(h!==void 0?wt(N3(Er(r,"debug-trace-content")),_=>({dir:h,contentMode:_})):{TAG:"Ok",_0:void 0},_=>{let g=Er(r,"codex-bin"),b=g!==void 0?{TAG:"Ok",_0:[g,void 0]}:wt(t.fallbackCodexBin(),y=>[y.codexBin,y.source]);return wt(b,y=>({options:{kandanUrl:i,token:f,cwd:o,codexBin:y[0],kandanThreadId:c,workspaceSlug:Er(r,"workspace"),logFile:Er(r,"log-file"),debugTrace:_,fast:xI(r,"fast"),allowedCwds:u,allowedForwardPorts:p,codeServerBin:void 0,runtimeDefaults:{model:Er(r,"model"),reasoningEffort:Er(r,"reasoning-effort"),sandbox:Er(r,"sandbox"),approvalPolicy:Er(r,"approval-policy"),allowPortForwardingByDefault:!0},codexModelProvider:m,vmExecution:xI(r,"vm-execution"),executionMode:dS(Er(r,"execution-mode")),egressMode:uS(Er(r,"egress-mode")),projectPublicId:TI(Er(r,"project-public-id")),goldenImagePublicId:TI(Er(r,"golden-image-id")),linzumiAgentMcpToken:L3(t.env)},runnerId:"thread-codex-worker:"+c,missingAllowedCwds:s.missing,codexBinSource:y[1]}))})})))))}))}var H3="thread Codex worker requires an IPC channel";async function EI(e,t){let r=t.ipc;if(r===void 0)return{TAG:"Error",_0:H3};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
+ `),{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=YP(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(VP(e,l)),t.stop()});let s=r.send;return s!==void 0&&s(WP(e,t.commanderManagedPorts())),await t.waitForStop(),t.stop(),{TAG:"Ok",_0:"Stopped"}}function fS(e,t){let r=e[t];if(typeof r=="object"&&r!==null&&!Array.isArray(r))return r}function ni(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 ze(e,t=>{if(typeof t!="object"||t===null||Array.isArray(t))return;if(ni(t,"type")==="text")return ni(t,"text")}).join(`
333
+ `)}function mS(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 pS(e,t){return{threadId:e,threadTitle:void 0,nodes:t,hasMore:!1,cursor:void 0,budget:void 0,session:void 0}}var Are="codex";function PI(e){return Math.ceil(e.length/4)}function Jm(e){if(e===void 0||typeof e!="string")return;let t=e.trim();if(t!=="")return t}function B3(e){if(e!==void 0&&typeof e=="number"&&Ot(e))return e}function hS(e){let t=e.structured;if(typeof t=="object"&&t!==null&&!Array.isArray(t))return t}function Pl(e,t){return k(hS(e),r=>Jm(r[t]))}function RI(e){return x(e.split(`
334
+ `)[0],e)}function II(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 K3(e,t){return e.length<=t?e:"[...truncated...]"+e.slice(e.length-t|0)}function J3(e){let t=hS(e);if(t===void 0)return[];let r=Jm(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=ze(i,s=>{let l=Jm(s);return l!==void 0?l:typeof s=="object"&&s!==null&&!Array.isArray(s)?Jm(s.path):void 0});return r!==void 0?[r].concat(a):a}function Y3(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"&&J3(i).forEach(a=>{t.add(a)}),i.kind!=="command_execution")return;let o=Pl(i,"command");if(o!==void 0){r.add(RI(o));return}}),{filesTouched:t.values().toArray().slice(0,100),commandsRun:r.values().toArray().slice(0,100),errorCount:n.contents}}function X3(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=PI(II(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:Y3(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 Q3(e){return de(Pl(e,"phase"),"commentary")?"commentary":"final_answer"}function eB(e,t){let r=e.attachments.length;return r!==0?t+`
336
+ [`+r.toString()+" attachment(s) in the original message]":t}function $I(e,t){return"linzumi_replay_"+e.seq.toString()+"_"+t.toString()}function tB(e){let t=e.replace(/[^a-zA-Z0-9_-]/g,"_").slice(0,64);return t===""?"linzumi_replayed_tool":t}function rB(e,t,r){let n=$I(e,r),i=Pl(e,"command"),o=Pl(e,"cwd"),a=k(hS(e),c=>B3(c.exit_code)),s=x(Pl(e,"output"),t),l={};l.command=x(i,RI(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 nB(e,t,r){let n=$I(e,r),i=tB(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 iB(e,t){let r={};r.type="input_text",r.text=eB(e,t);let n={};return n.type="message",n.role="user",n.content=[r],n}function oB(e,t,r){let n=II(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,Q3(e))];case"command_execution":return rB(e,n,r);case"error":return[Ui("[error] "+n,"commentary")];case"file_change":return[Ui(`[file change]
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 nB(e,n,r);case"tool_result":return[Ui(`[tool result]
340
+ `+n,"commentary")];case"user_message":return[iB(e,n)];default:return[Ui("["+i+"] "+n,"commentary")]}}function aB(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===""?".":" ("+K3(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 MI(e,t,r,n){let i=t!==void 0?t.maxEmissionTokens:76800,o=X3(e,i),a=aB(r,n,o,o.tail.length===0),s=[Ui(a,"commentary")],l={contents:0};o.tail.forEach(u=>{l.contents=l.contents+1|0,oB(u,i,l.contents).forEach(c=>{s.push(c)})});let d=Ve(s,0,(u,c)=>u+PI(JSON.stringify(c)));return{items:s,emittedNodeCount:o.tail.length,omittedNodeCount:o.omittedNodeCount,redactedReasoningCount:o.redactedReasoningCount,emittedTokenEstimate:d,maxEmissionTokens:i}}function NI(e,t){return e!==void 0?t<=e:!1}function GI(e,t,r){e.onAdvance(t,r),e.flush()}function zI(e){let t=yr(e);if(t===void 0)return String(e);let r=ue(t),n=Or(r);return n!==void 0?n:String(r)}function FI(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();Gn(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",zI(s)]])),Promise.resolve()});return}n("kandan.control_handler_threw",Object.fromEntries([["controlType",e],["message",zI(o._0)]])),r()}function ho(e,t){return k(e[t],wr)}function Jo(e,t){return k(e[t],ha)}function Ym(e,t){return k(e[t],ke)}function qI(e,t){return k(e[t],Qi)}function LI(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 lB(e){let t=ke(e);if(t===void 0)return;let r=x(Ym(t,"payload"),{}),n=ho(t,"body"),i;if(n!==void 0)i=n;else{let s=k(r.body,wr);i=s!==void 0?s:k(r.text,wr)}let o=Jo(t,"seq");if(o===void 0||i===void 0)return;let a=x(Ym(t,"actor"),{});return{seq:o,messageType:x(ho(t,"type"),"thread.message"),actorKind:x(k(a.kind,wr),"unknown"),actorSlug:k(a.slug,wr),actorUserId:Jo(t,"actor_user_id"),body:i,payload:r}}function dB(e){return e!==void 0?Array.isArray(e)?ze(e,lB):[]:[]}async function UI(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=LI(d);return u!==void 0?dB(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 DI(e,t){return e.length<=t?e:`[...truncated...]
342
+ `+e.slice(e.length-t|0,e.length)}function uB(e){return k(k(k(k(k(k(e.metadata,ke),t=>t.local_codex_runner),ke),t=>t.event_type),wr),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 fB(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 mB(e){return e.filter(t=>{let r=t.body.trim(),n=uB(t.payload);return r!==""&&t.actorKind!=="system"&&(n===void 0||n==="codex_output")?!fB(t):!1})}function pB(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 ZI(e,t){let r=mB(e),n=Math.max(0,r.length-12|0),i=r.slice(n,r.length),o=r.length-i.length|0,a=DI(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=DI(i.map(pB).join(`
342
345
 
343
346
  ---
344
347
 
345
348
  `),d);return[s,l,u].join(`
346
- `)}function XR(e){return{kind:e.kind,seq:e.seq,at:e.at,harness:e.harness,body:e.body,structured:D(e.structured,t=>t),actor:D(e.actor,t=>t),attachments:e.attachments,sourceSeq:e.sourceSeq,streamKey:e.streamKey}}function QR(e){return{model:e.model,contextWindow:e.contextWindow,maxEmissionTokens:e.maxEmissionTokens}}function UH(e){let t=ke(e);if(t===void 0)return;let r=fo(t,"kind"),n=Vo(t,"seq");if(r!==void 0&&n!==void 0)return{kind:r,seq:n,at:fo(t,"at"),harness:x(fo(t,"engine"),"none"),body:x(fo(t,"body"),""),structured:Gm(t,"structured"),actor:Gm(t,"actor"),attachments:x(BR(t,"attachments"),[]),sourceSeq:Vo(t,"source_seq"),streamKey:fo(t,"stream_key")}}function ZH(e){let t=ke(e);if(t===void 0)return;let r=Vo(t,"context_window"),n=Vo(t,"max_emission_tokens");if(r!==void 0&&n!==void 0&&n>0)return{model:fo(t,"model"),contextWindow:r,maxEmissionTokens:n}}function WH(e){let t=Vo(e,"ir_version"),r=BR(e,"nodes");if(t===void 0||r===void 0)return;let n=e.has_more,i;return i=n===!0,{threadTitle:fo(e,"thread_title"),nodes:ze(r,UH),hasMore:i,cursor:Vo(e,"cursor"),budget:k(e.budget,ZH)}}async function eI(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(;Nn(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=KR(y);if(v!==void 0){let S=WH(v);if(S!==void 0){l=ss(l,S.budget),d=ss(d,S.threadTitle),s=S.nodes.concat(s),c=c+Ke(S.nodes,0,(z,H)=>H.kind==="reasoning"?z:z+H.body.length);let A=l,R=A!==void 0?c/4>=A.maxEmissionTokens:!1;!S.hasMore||Nn(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 VH(e,t){return"Codex "+e+" did not reply within "+t.toString()+"ms (start request timed out)"}function Fm(e,t,r,n){return t<=0?n:new Promise((i,o)=>{let a=e.setTimer(()=>i({TAG:"Error",_0:VH(r,t)}),t);n.then(s=>(e.clearTimer(a),i(s),Promise.resolve()))})}function Yv(e){return e==="ResumeArchived"?"resume_archived":"forced_inject_not_found"}var HH="the server marked the durable engine session dead after an acknowledged-but-unexecuted turn";async function tI(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)=>Fm(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",Yv(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",Yv(m)]])),{TAG:"Ok",_0:"Resumed"};let b=g._0;o.log("kandan.reconnect_thread_unarchive_failed",Object.fromEntries([["codex_thread_id",n],["discovered_by",Yv(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 H=await g(m);H.TAG==="Ok"?b=H._0:(o.log("kandan.reconnect_thread_rehydration_items_failed",Object.fromEntries([["codex_thread_id",n],["message",H._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 H=await o.buildRehydrationText(m);y=H.TAG==="Ok"?{TAG:"Ok",_0:[Object.fromEntries([["type","agentMessage"],["text",H._0]])]}:{TAG:"Error",_0:H._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 H=await l("thread/resume",s);if(H.TAG!=="Ok")return{TAG:"Error",_0:H._0};let ce=H._0;return ce.TAG==="ResultReply"?{TAG:"Ok",_0:void 0}:{TAG:"Error",_0:"rehydrated thread/resume failed: "+ce.message}}let R=A.message;if(!(o.forceRehydrate&&nP(R)))return{TAG:"Error",_0:"thread/inject_items failed: "+R};let z=await d("ForcedInjectNotFound",R);return z.TAG==="Ok"?{TAG:"Ok",_0:z._0}:{TAG:"Error",_0:z._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(HH);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 rP(p)?await d("ResumeArchived",p):await u(p)}var JH=l0(e=>({joinRef:e.item(0,Xp(Ot)),ref:e.item(1,Xp(Ot)),topic:e.item(2,Ot),event:e.item(3,Ot),payload:e.item(4,i0)}));function rI(e){return As(e,JH)}function qm(e){let t=gr(e);return t!==void 0?x(Or(ue(t)),"unknown error"):"unknown error"}function XH(e){let t=k(gr(e),r=>YS(r));return t!==void 0?t:null}function Qn(e){return e.TAG==="Transport"?e._0.message:e.message}function QH(e,t){return{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"TimeoutReason",message:"phoenix push timed out after "+e.toString()+"ms waiting for connection: "+t}}}function e3(e,t){return{TAG:"Transport",_0:{phase:"Reply",reason:"TimeoutReason",message:"phoenix push timed out after "+e.toString()+"ms: "+t}}}function oI(e){return e.TAG==="Transport"?e._0.phase==="WaitForConnection":!1}function aI(e){return{initial:t=>e.initial(t),onAdvance:(t,r)=>e.onAdvance(t,r),reset:(t,r)=>e.reset(t,r)}}function sI(e){return{current:t=>e.current(),adopt:(t,r)=>e.adopt(t,r)}}var t3="base64url.bearer.phx.";function r3(e){let t;t=typeof e=="object"&&e!==null&&!Array.isArray(e)?Sm(e):e;let r=JSON.stringify(t);return r.length<=400?r:r.slice(0,400)+"\u2026"}var n3=new RegExp("/$");function i3(e){let t=Fn(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(n3,"")+"/socket/websocket",r.searchParams.set("vsn","2.0.0"),{TAG:"Ok",_0:r.toString()}}function o3(e){return[t3+dw(e),"phoenix"]}function nI(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 a3(e){let t;try{t={TAG:"Ok",_0:JSON.parse(e)}}catch(n){let i=X(n);t={TAG:"Error",_0:qm(i)}}if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=rI(t._0);return r.TAG==="Ok"?{TAG:"Ok",_0:r._0}:{TAG:"Error",_0:"invalid Phoenix frame"}}function lI(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function Um(e,t){return k(e,r=>{let n=r[t];if(typeof n=="object"&&n!==null&&!Array.isArray(n))return n})}function wl(e,t){return k(e,r=>{let n=r[t];if(typeof n=="string")return n})}function Dm(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 s3(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?Tn(e.status,"ok"):!1}function l3(e){return typeof e!="object"||e===null||Array.isArray(e)?!1:typeof e.type=="string"}function Lm(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&Rt(r))return r}function iI(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return Lm(e,"control_seq")}function d3(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"&&Rt(n)?{event:t,payload:r,controlSeq:n}:void 0:{event:t,payload:r,controlSeq:void 0}}var u3="npm install -g @linzumi/cli@latest",c3=new RegExp("^npm install -g @linzumi\\/cli(@[0-9A-Za-z^~.-]{1,32})?$"),f3=new RegExp("^\\d+\\.\\d+\\.\\d+(?:[-+][0-9A-Za-z.-]{1,32})?$");function m3(e){return e!==void 0&&typeof e=="string"&&e.length<=100&&c3.test(e)?e:u3}function p3(e){return e!==void 0&&typeof e=="string"&&e.length<=64&&f3.test(e)?"@linzumi/cli "+e+" or newer":"a newer @linzumi/cli"}function Xv(e){let t=lI(e),r=Um(t,"response"),n=wl(r,"error");if(n!==void 0)return n;let i=wl(r,"reason");if(i!==void 0)return i;let o=wl(r,"message");if(o!==void 0)return o;let a=wl(t,"error");return t!==void 0?a!==void 0?a:"unknown":"invalid reply"}function h3(e){let t=Um(lI(e),"response");if(t===void 0||!se(t.error,"commander_version_too_old"))return Xv(e);let r=p3(t.min_version),n=m3(t.upgrade_command);return"commander_version_too_old: this Linzumi server requires "+r+". Update with: "+n}function _3(e){let t=e;if(wl(t,"agent_provider")==="claude-code")return"claude-code-sdk";let n=Um(t,"metadata"),i=Um(n,"local_codex_runner");return wl(i,"agent_provider")==="claude-code"?"claude-code-sdk":"codex-app-server"}function g3(e,t){let r;try{r=e.initial(t)}catch{r=void 0}if(r!==void 0&&Rt(r)&&r>=0)return r}function y3(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 dI(e,t,r,n){let i=n!==void 0?n:{},o=r!==void 0?r:km,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 E=s.contents;return E!==void 0?{TAG:"Ok",_0:E}:{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,E)=>{},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={},z={},H={},ce=new Set,ne={contents:1},ie=[],le=[],W=[],Z=[],$={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 E=Object.entries(b);E.forEach(P=>cr(b,P[0])),E.forEach(P=>{let G=P[1];clearTimeout(G.timer),G.settle({TAG:"Error",_0:w})})},M=()=>{if($.settleReady!==void 0)return;let E={contents:void 0};$.ready=new Promise((P,G)=>{E.contents=P}),$.settleReady=E.contents},te=()=>{let w=$.settleReady;w!==void 0&&w({TAG:"Ok",_0:void 0}),$.settleReady=void 0},oe=w=>{let E=$.settleReady;E!==void 0&&E({TAG:"Error",_0:w}),$.settleReady=void 0},Ae=()=>{let w=$.heartbeatTimer;if(w!==void 0){clearInterval(ue(w)),$.heartbeatTimer=void 0;return}},Le=()=>{let w=$.backoffResetTimer;if(w!==void 0){clearTimeout(ue(w)),$.backoffResetTimer=void 0;return}},Ne=w=>{$.closed=!0;let E=$.reconnectTimer;E!==void 0&&(clearTimeout(ue(E)),$.reconnectTimer=void 0),Ae(),Le();let P=$.websocket;P!==void 0&&P.close(),oe(w),N({TAG:"Transport",_0:{phase:"Reply",reason:"ClientClosed",message:"phoenix client closed"}})},ut=w=>x(H[w],0),je=w=>{cr(S,w),cr(A,w),cr(R,w),cr(z,w),H[w]=ut(w)+1|0},ht=(w,E)=>{let P=S[w];if(P!==void 0){if(E===P+1){let q=P+1,Y=A[w];if(Y!==void 0)for(;Y.has(q+1);)q=q+1,Y.delete(q);S[w]=q;return}let G=A[w],L;if(G!==void 0)L=G;else{let q=new Set;A[w]=q,L=q}L.add(E);return}S[w]=E},Ye=(w,E)=>{let P=iI(E);if(P===void 0)return!0;let G=S[w],L=G!==void 0?P<=G:!1,q=A[w],Y=q!==void 0?q.has(P):!1;return L||Y?!1:(ht(w,P),!0)},We=(w,E)=>{if(_!==void 0)try{return _.onAdvance(w,E)}catch{return}},jt=(w,E)=>{if(!w.startsWith("local_runner:"))return;let P=Lm(E,"control_high_water");if(P===void 0)return;let G=S[w];if(G!==void 0&&P<G){je(w);let L=0;if(_===void 0)return;let q=_.reset;if(q===void 0)return;try{return q(w,L)}catch{return}}},xr=(w,E)=>{let P=w.startsWith("local_runner:");if(g===void 0||!P)return!1;let G=E.control_epoch;if(G===void 0||typeof G!="string"||G==="")return!1;let L;try{L=g.adopt(w,G)}catch{L=!1}return L&&je(w),L},Lt=w=>{let E=S[w];if(E!==void 0)return E;if(_===void 0)return;let P=g3(_,w);return P!==void 0?(S[w]=P,P):0},Xe=new Set,F=(w,E,P,G)=>{try{let L=!1;if(w.startsWith("local_runner:")&&E==="control"&&l3(G)){let q;if(Ye(w,G)){let Y=iI(G);if(Y!==void 0){let Oe=R[w],Ie;if(Oe!==void 0)Ie=Oe;else{let Qe=new Set;R[w]=Qe,Ie=Qe}Ie.add(Y)}let Re=ut(w),Se=Y!==void 0?()=>{if(Re!==ut(w))return;let Oe=R[w];Oe!==void 0&&Oe.delete(Y);let Ie=z[w];Ie!==void 0&&Y<=Ie||(z[w]=Y);let Qe=k(Oe,ir=>Ke(ir.values().toArray(),void 0,(Jt,Yt)=>Jt!==void 0&&Jt<=Yt?Jt:Yt)),Be=Qe!==void 0?Qe-1:z[w];if(Be===void 0)return;let he=S[w],ft=he!==void 0&&he<Be?he:Be;We(w,ft)}:()=>{};ie.forEach(Oe=>Oe(G,Se)),q=!1}else q=!0;L=q}if(!L&&P===void 0&&E!=="phx_reply"&&E!=="phx_error"){le.forEach(q=>q(w,E,G));return}else return}catch(L){let q=X(L),Y=qm(q);try{f("phoenix.pushed_frame_dispatch_failed",Object.fromEntries([["topic",w],["frame",E],["message",Y],["stack",XH(q)],["payloadSnippet",r3(G)],["dropped",!0]]))}catch{}if(Xe.has(E))return;Xe.add(E);try{return u('linzumi: dropped a pushed "'+E+'" frame on '+w+" whose dispatch failed ("+Y+"); see the CLI audit log for the payload snippet.")}catch{return}}},Ee=(w,E)=>{let P=S[w],G={contents:P!==void 0&&P>=E?P:E},L=A[w];if(L!==void 0)for(L.values().toArray().forEach(q=>{if(q<=G.contents){L.delete(q);return}});L.has(G.contents+1);)G.contents=G.contents+1,L.delete(G.contents);S[w]=G.contents},ve=w=>{let E=S[w];if(E===void 0)return;let P=R[w],G=P!==void 0&&P.size>0?D(Ke(P.values().toArray(),void 0,(L,q)=>L!==void 0&&L<=q?L:q),L=>L-1):void 0;We(w,G!==void 0&&G<E?G:E)},_e=(w,E)=>{if(w.startsWith("chat:")){let P=E.events;return P===void 0?{TAG:"Ok",_0:void 0}:P===null?{TAG:"Ok",_0:void 0}:Array.isArray(P)?(P.forEach(G=>{le.forEach(L=>L(w,"event",G))}),{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=E.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(L=>{let q=d3(L);if(q===void 0)return;let Y={};Object.entries(q.payload).forEach(Se=>{Y[Se[0]]=Se[1]}),Y.replayed=!0;let Re=q.controlSeq;Re!==void 0&&(Y.control_seq=Re),F(w,q.event,void 0,Y)});let G=Lm(E,"controls_advance_to");if(G!==void 0){let L=E.control_high_water;typeof L=="number"&&G>L||Ee(w,G)}return ve(w),{TAG:"Ok",_0:void 0}}},Ve=(w,E,P,G,L)=>{let q=$.websocket;if(q===void 0)return Promise.resolve({TAG:"Error",_0:{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"SocketNotOpen",message:"phoenix websocket is not open"}}});if(q.readyState()!==Ka)return Promise.resolve({TAG:"Error",_0:{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"SocketNotOpen",message:"phoenix websocket is not open"}}});let Y=$.nextRef.toString();$.nextRef=$.nextRef+1|0,E==="phx_join"&&(v[w]=Y);let Re=E==="phx_join"?Y:v[w],Se=vm(P),Be=nI({joinRef:Re,ref:Y,topic:w,event:E,payload:Se}),he=Math.max(0,Math.ceil(G))|0;return new Promise((ft,ir)=>{let Jt=setTimeout(()=>{if(b[Y]!==void 0)return cr(b,Y),ft({TAG:"Error",_0:e3(he,E)})},he);b[Y]={event:E,timer:Jt,settle:ft};try{m({provider:_3(Se),rawFrameText:Be,topic:w,event:E,payload:Se})}catch{}let Yt;try{Yt={TAG:"Ok",_0:q.send(Be)}}catch(Ut){let Ct=X(Ut);Yt={TAG:"Error",_0:qm(Ct)}}return Yt.TAG==="Ok"?L!==void 0?L():void 0:ft({TAG:"Error",_0:{TAG:"Failed",message:Yt._0}})})},Kt=(w,E)=>{let P={};if(E.forEach(G=>{Object.entries(G).forEach(L=>{let q=L[1],Y=L[0],Re=Y==="last_seq",Se=P[Y];if(Re&&typeof Se=="number"&&typeof q=="number"){P[Y]=q<Se?q:Se;return}if(Se===void 0){P[Y]=q;return}})}),w.startsWith("local_runner:")){let G=Lt(w);G!==void 0&&(P.last_control_seq=G);let L=y3(g,w);L!==void 0&&(P.last_control_epoch=L)}return P},dn=w=>Object.entries(w).map(E=>E[1].payload()),vi=async w=>{let E=0,P=0,G=!0;for(;G;){let L=y[w];if(L!==void 0){let q=Lt(w),Y=await Ve(w,"phx_join",Kt(w,dn(L)),h,void 0);if(E=E+1|0,Y.TAG==="Ok"){let Re=Dm(Y._0);if(Re!==void 0){let Se=Re.controls,Oe=Array.isArray(Se)?Se.length:0;P=P+Oe|0;let Ie=se(Re.controls_truncated,!0),Qe=Lt(w),Be;if(Ie){let he=Lm(Re,"control_high_water");Be=he!==void 0&&Qe!==void 0?he-Qe>0?he-Qe:0:void 0}else Be=0;if(f("phoenix.control_backlog_fetch_progress",Object.fromEntries([["topic",w],["fetches",E],["fetched",P],["remaining_estimate",Be!==void 0?Be:null],["truncated",Ie]])),Ie)if(se(Qe,q)){let he=Qe!==void 0?Qe.toString():"undefined";u("phoenix.control_backlog_fetch_stalled topic="+w+" fetches="+E.toString()+" fetched="+P.toString()+" cursor="+he+"; a truncated reply made no cursor progress - stopping this fetch loop (a server paging bug; the next reconnect resumes from the watermark)"),G=!1}else{if(E%20===0){let ft=Be!==void 0?Be.toString():"unknown";u("phoenix.control_backlog_cap_exceeded topic="+w+" fetches="+E.toString()+" fetched="+P.toString()+" remaining_estimate="+ft+"; continuing the paginated backlog fetch (a healthy connection never reconnects, so nothing is deferred)")}await new Promise((ft,ir)=>{setImmediate(()=>ft())})}else G=!1}else G=!1}else G=!1}else G=!1}},zn=w=>{if(!ce.has(w)){ce.add(w),$n(vi(w).then(()=>{ce.delete(w)}),E=>(ce.delete(w),Promise.resolve()));return}},ti={},Wr=async()=>{Object.entries(ti).forEach(L=>cr(ti,L[0]));let w=Object.entries(y),E,P=0;for(;E===void 0&&P<w.length;){let L=w[P];if(L!==void 0){let q=L[0],Y=await Ve(q,"phx_join",Kt(q,dn(L[1])),h,void 0);if(Y.TAG==="Ok"){let Re=Dm(Y._0);Re!==void 0?ti[q]=Re:E={TAG:"Failed",message:"phoenix rejoin failed for "+q}}else E=Y._0}P=P+1|0}let G=E;return G!==void 0?{TAG:"Error",_0:G}:{TAG:"Ok",_0:void 0}},po={contents:()=>Promise.resolve()},Xo=()=>{let w=$.closed,E=$.reconnectTimer;if(w||E!==void 0)return;M();let P=Math.min(1e4,250*2**$.reconnectAttempts);$.reconnectAttempts=$.reconnectAttempts+1|0,$.reconnectTimer=Ze(setTimeout(()=>{$.reconnectTimer=void 0,po.contents()},Math.random()*P|0))},en=(w,E,P)=>{let G=$.connected,L=$.connectedAt;$.connectedAt=void 0,$.connected=!1;let q=$.websocket;if($.websocket=void 0,Ae(),Le(),q!==void 0&&(q.readyState()===HE||q.readyState()===Ka))try{q.close()}catch{}if(N(w),Xo(),!G)return;let Y;Y=P!==void 0&&P!==""?P:void 0;let Re=D(L,Ie=>Math.max(0,Date.now()-Ie)),Se=$.reconnectAttempts,Oe={closeCode:E,closeReason:Y,previousSessionDurationMs:Re,reconnectCount:Se};Z.forEach(Ie=>{try{return Ie(Oe)}catch{return}})},U=()=>{Ae(),$.heartbeatTimer=Ze(setInterval(()=>{let w=$.websocket;if(w===void 0||w.readyState()!==Ka)return;let E=$.nextRef.toString();$.nextRef=$.nextRef+1|0;let L={joinRef:void 0,ref:E,topic:"phoenix",event:"heartbeat",payload:{}};try{return w.send(nI(L))}catch{return}},3e4))},Q=()=>{Le();let w=setTimeout(()=>{if($.backoffResetTimer=void 0,$.connected){$.reconnectAttempts=0;return}},3e4);w.unref(),$.backoffResetTimer=Ze(w)},re=(w,E)=>new Promise((P,G)=>{let L={contents:void 0},q=Y=>{let Re=L.contents;Re!==void 0&&(clearTimeout(ue(Re)),L.contents=void 0),P(Y)};w.on("SocketOpen",Y=>q({TAG:"Ok",_0:void 0})),w.on("SocketError",Y=>q({TAG:"Error",_0:"websocket open failed"})),w.on("SocketClose",Y=>q({TAG:"Error",_0:"websocket closed before open"})),L.contents=Ze(setTimeout(()=>{L.contents=void 0,q({TAG:"Error",_0:"websocket open timed out after "+E.toString()+"ms"})},E))}),He=async()=>{if($.closed)return;let w=l(),E=i3(e),P;if(w.TAG==="Ok")if(E.TAG==="Ok"){let q;try{q={TAG:"Ok",_0:o(E._0,o3(w._0))}}catch(Y){let Re=X(Y);q={TAG:"Error",_0:{TAG:"Failed",message:qm(Re)}}}P=q.TAG==="Ok"?{TAG:"Ok",_0:q._0}:{TAG:"Error",_0:q._0}}else P={TAG:"Error",_0:{TAG:"Failed",message:E._0}};else P={TAG:"Error",_0:w._0};if(P.TAG==="Ok"){let q=P._0;$.websocket=q,q.on("SocketMessage",he=>{let ft=$.websocket;if(ft!==void 0&&ft===q){let ir=a3(x(he.data,"undefined"));if(ir.TAG==="Ok"){let Jt=ir._0,Yt=Jt.payload,Ut=Jt.event,Ct=Jt.topic,At=Jt.ref;if(At!==void 0&&(Ut==="phx_reply"||Ut==="phx_error")){let hr=b[At];if(hr!==void 0){cr(b,At),clearTimeout(hr.timer);let Ar=Ut==="phx_error",zr=s3(Yt)&&hr.event!=="phx_join";if(Ar)hr.settle({TAG:"Error",_0:{TAG:"Failed",message:"phoenix push failed"}});else if(zr)hr.settle({TAG:"Error",_0:{TAG:"Failed",message:"phoenix push failed: "+Xv(Yt)}});else{let ri=y[Ct],tn=Dm(Yt),ta;if(ri!==void 0&&tn!==void 0&&hr.event==="phx_join"){let Fl=xr(Ct,tn);jt(Ct,tn);let qi=Fl?{TAG:"Ok",_0:void 0}:_e(Ct,tn);qi.TAG==="Ok"?(Ct.startsWith("local_runner:")&&(se(tn.controls_truncated,!0)||Fl)&&zn(Ct),ta=!1):(hr.settle({TAG:"Error",_0:{TAG:"Failed",message:qi._0}}),ta=!0)}else ta=!1;ta||hr.settle({TAG:"Ok",_0:Yt})}}}return F(Ct,Ut,At,Yt)}else return f("phoenix.frame_decode_failed",Object.fromEntries([["message",ir._0],["dropped",!0]]))}}),q.on("SocketClose",he=>{let ft=$.websocket;if(ft!==void 0&&ft===q)return en({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},he.code,he.reason)}),q.on("SocketError",he=>{let ft=$.websocket;if(ft!==void 0&&ft===q)return en({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},void 0,void 0)});let Y=await re(q,h),Re=()=>{if($.closed)return!0;let he=$.websocket;return he!==void 0?he!==q:!1},Se;if(Y.TAG==="Ok")if(Re())Se={TAG:"Ok",_0:!1};else{$.connectionGeneration=$.connectionGeneration+1|0;let he=await Wr();Se=he.TAG==="Ok"?Re()?{TAG:"Ok",_0:!1}:{TAG:"Ok",_0:!0}:{TAG:"Error",_0:he._0}}else Se={TAG:"Error",_0:{TAG:"Failed",message:Y._0}};if(Se.TAG==="Ok"){if(!Se._0||($.connected=!0,$.connectedAt=Date.now(),$.hasEverConnected=!0,Q(),U(),te(),$.connectionGeneration<=1))return;let he={};Object.entries(ti).forEach(ir=>{he[ir[0]]=ir[1]});let ft={contents:!1};return W.forEach(ir=>{if(ft.contents)return;let Jt;try{Jt={TAG:"Ok",_0:ir(he)}}catch{Jt={TAG:"Error",_0:void 0}}if(Jt.TAG!=="Ok"){ft.contents=!0;return}$n(Jt._0,Yt=>Promise.resolve())}),ft.contents&&!$.closed?en({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket reconnect failed"}},void 0,void 0):void 0}let Oe=$.websocket,Ie=Oe!==void 0?Oe!==q:!1,Qe=$.closed||Ie,Be=$.hasEverConnected;return Qe?void 0:Be?en({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket reconnect failed"}},void 0,void 0):Ne(Se._0)}let G=$.closed,L=$.hasEverConnected;if(!G)return L?en({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket reconnect failed"}},void 0,void 0):Ne(P._0)};po.contents=He;let ot=(w,E)=>{let P=$.ready;return new Promise((G,L)=>{let q=setTimeout(()=>G({TAG:"Error",_0:QH(h,w)}),Math.max(0,E-Date.now())|0);P.then(Y=>{clearTimeout(q),G(Y)})})},st=async(w,E,P,G)=>{let L=Date.now()+h,q=await ot(E,L);return q.TAG==="Ok"?await Ve(w,E,P,L-Date.now(),G):{TAG:"Error",_0:q._0}},ct=async(w,E,P)=>{let G=P.registrationId,L;if(G!==void 0)L=G;else{let Jt="join-registration-"+ne.contents.toString();ne.contents=ne.contents+1|0,L=Jt}let q=y[w],Y=q!==void 0?dn(q):[],Re=await st(w,"phx_join",Kt(w,Y.concat([E])),void 0);if(Re.TAG!=="Ok")return{TAG:"Error",_0:Re._0};let Se=Re._0,Oe=Dm(Se);if(Oe===void 0)return{TAG:"Error",_0:{TAG:"Failed",message:"phoenix join failed: "+h3(Se)}};let Ie=y[w],Qe=Ie!==void 0?Ie:{},Be=Object.entries(Qe).length===0,he=P.rejoinPayload;if(Qe[L]={payload:he!==void 0?he:()=>E},y[w]=Qe,!(Be&&w.startsWith("local_runner:")))return{TAG:"Ok",_0:Oe};let ft=xr(w,Oe);jt(w,Oe);let ir=ft?{TAG:"Ok",_0:void 0}:_e(w,Oe);return ir.TAG!=="Ok"?{TAG:"Error",_0:{TAG:"Failed",message:ir._0}}:((se(Oe.controls_truncated,!0)||ft)&&zn(w),{TAG:"Ok",_0:Oe})},V={join:(w,E,P)=>ct(w,E,x(P,{rejoinPayload:void 0,registrationId:void 0})),unregisterJoin:(w,E)=>{let P=y[w];if(!(P===void 0||(cr(P,E),Object.entries(P).length!==0)))return cr(y,w),cr(v,w)},push:st,pushIfConnected:(w,E,P)=>$.connected?Ve(w,E,P,h,void 0):Promise.resolve({TAG:"Error",_0:{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"NotConnected",message:"phoenix client is not connected"}}}),onControl:w=>{ie.push(w)},onEvent:w=>{le.push(w)},onReconnect:w=>{W.push(w)},onDisconnect:w=>{Z.push(w)},forceReconnect:w=>$.closed||!$.connected?!1:(en({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},void 0,x(w,"forced_stale_reconnect")),!0),hardReset:w=>{if($.closed)return!1;en({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},void 0,x(w,"hard_reset"));let E=$.reconnectTimer;return E!==void 0&&(clearTimeout(ue(E)),$.reconnectTimer=void 0),He(),!0},close:()=>Ne({TAG:"Transport",_0:{phase:"WaitForConnection",reason:"ClientClosed",message:"phoenix client closed"}})};M(),He();let de=await $.ready;return de.TAG==="Ok"?{TAG:"Ok",_0:V}:{TAG:"Error",_0:de._0}}function b3(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 uI(e){let t=D(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 b3(t)?"sonnet":t}}function xu(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 cI(e){return{cwd:e.cwd,model:x(uI(e.model),""),reasoningEffort:void 0,developerInstructions:void 0,approvalPolicy:e.approvalPolicy,sandboxPolicy:e.sandbox,environment:{}}}var v3=["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 fI(e){return[e,""].concat(v3).join(`
347
- `)}function mI(e){return{model:x(uI(e.model),""),reasoningEffort:void 0,input:{text:fI(e.workDescription),attachments:[]}}}var eS={contents:0};function S3(){let e=Date.now()*1e3,t=eS.contents>=e?eS.contents+1:e;return eS.contents=t,t}function Zm(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=S3(),i.entryType=r,i.payload=n,e.pushEvent("claude_session_store_append",i)}function pI(e,t){return r=>{switch(e.log("claude_code.session_event",Object.fromEntries([["thread_id",e.threadId],["kind",wm(r)]])),r.TAG){case"SessionStarted":let n=r.harnessSessionId;t.contents=n;let i=e.sourceSeq;return Zm(e,n,"session_started",Object.fromEntries([["prompt",fI(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?Zm(e,a,"assistant_message",Object.fromEntries([["itemKey",o.itemId],["body",r.content]])):void 0;case"TurnCompleted":let s=t.contents;s!==void 0&&(Zm(e,s,"turn_completed",{}),Zm(e,s,"session_completed",{})),xu(e,"processed",void 0,t.contents);return;case"TurnFailed":xu(e,"failed",r.failure.reason,t.contents);return;case"TurnInterrupted":xu(e,"interrupted","Claude Code interrupted by Linzumi",t.contents);return;case"HarnessDied":xu(e,"failed",r.failure.reason,t.contents);return;default:return}}}function hI(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 _I(e,t){return xu(e,"processing","starting turn",t)}async function gI(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=await e.adapter.startSession(cI(e),pI(e,t));if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0.reason};let n=r._0;t.contents=n.harnessSessionId,await hI(e,n.harnessSessionId);let i=await n.dispatchTurn(mI(e));return i.TAG==="Ok"?(await _I(e,n.harnessSessionId),{TAG:"Ok",_0:{harnessSessionId:n.harnessSessionId,session:n,stop:()=>n.stopSession()}}):(await n.stopSession(),{TAG:"Error",_0:i._0.reason})}async function yI(e,t){let r={contents:t},n=await e.adapter.attachSession(t,cI(e),pI(e,r));if(n.TAG!=="Ok")return{TAG:"Error",_0:n._0.reason};let i=n._0;await hI(e,i.harnessSessionId);let o=await i.dispatchTurn(mI(e));return o.TAG==="Ok"?(await _I(e,i.harnessSessionId),{TAG:"Ok",_0:{harnessSessionId:i.harnessSessionId,session:i,stop:()=>i.stopSession()}}):(await i.stopSession(),{TAG:"Error",_0:o._0.reason})}var ite=10*6e4;function k3(e,t){let r=setTimeout(e,t);return r.unref(),r}function x3(e){clearTimeout(e)}var kl={setTimer:k3,clearTimer:x3};var A3=["deterministic","transient_upstream","transient_local","rate_limited","needs_approval","needs_decision"],bI=_c(A3);function Wm(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 O3(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 rS(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 iS(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 vI(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 C3=15*6e4,E3=30*6e4;function tS(e,t){let r=D(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 Tu(e){return{maxRecoveryRungs:tS(e.LINZUMI_FATE_LADDER_MAX_RECOVERY_RUNGS,4),maxLadderMs:tS(e.LINZUMI_FATE_LADDER_BUDGET_MS,C3),maxRateLimitHoldMs:tS(e.LINZUMI_FATE_LADDER_MAX_HOLD_MS,E3)}}function P3(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 oS(e,t){return{fate:e,startedAtMs:t,rungCursor:0,cursorAttempts:0,recoveryRungsAttempted:0,holdCommitted:!1,holdDispatched:!1,userSwitchInvoked:!1,entries:[],historyTruncated:!1}}function Qr(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 R3(e){switch(e){case"budget_rungs_exhausted":case"budget_wall_clock_exhausted":case"rungs_exhausted":case"grant_unavailable":return!0;default:return!1}}function SI(e,t,r){if(e!=="transient_local"||r===void 0||!(r.backendDead&&R3(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 I3(e,t){switch(t){case"in_place_resume":return e.inPlaceResume;case"redispatch":return e.redispatch;case"worker_rebuild":return e.workerRebuild}}function wI(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=vI(o),s=e.run,l=s!==void 0?s:oS(o,i);if(typeof a!="object")switch(a){case"HoldUntilResetPolicy":if(l.holdCommitted)return{TAG:"Red",cause:"hold_already_committed",run:Qr(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:Qr(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:Qr(l,{rung:"HoldStep",outcome:"breaker_held",atMs:i,detail:p,resetAtMs:void 0})}}if(f===2)return{TAG:"HoldUntilReset",resetAtMs:d,run:Qr({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:Qr(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:Qr(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:Qr({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:Qr(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:Qr(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:Qr(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:Qr(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?!I3(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:Qr(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:Qr(l,{rung:{TAG:"RungStep",_0:m.rung},outcome:"breaker_held",atMs:i,detail:_,resetAtMs:void 0})}}return{TAG:"ExecuteRung",rung:m.rung,run:Qr({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 kI(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:Qr({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:rS(r),resetAtMs:void 0,userSwitch:r})}}function aS(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 Qr(e,{rung:"UserSwitchStep",outcome:o,atMs:r,detail:i!==void 0?rS(n)+" - "+i:rS(n),resetAtMs:void 0,userSwitch:n})}function Vm(e,t,r,n){let i=n!==void 0?ue(n):void 0,o=vI(t),a=c=>{let f={};f.rung=P3(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=O3(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=iS(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 xI="switching this job to another harness at the user's request";function M3(e){let t=e.item,n=(typeof t=="object"&&t!==null&&!Array.isArray(t)?t:e).type,i=n!==void 0?Sr(n):void 0;if(i!==void 0)switch(i){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 sS(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":M3(t)}}var z3=On(e=>({decision:e.f("decision",Ot),label:e.f("label",Ot),description:e.f("description",mr(Ot))})),N3=On(e=>({requestId:e.f("requestId",Ot),kind:e.f("kind",Ot),summary:e.f("summary",Ot),reason:e.f("reason",mr(Ot)),port:e.f("port",mr(Ts)),pid:e.f("pid",mr(Ts)),command:e.f("command",mr(Ot)),cwd:e.f("cwd",mr(Ot)),processName:e.f("processName",mr(Ot)),processIconKey:e.f("processIconKey",mr(Ot)),processIconPath:e.f("processIconPath",mr(Ot)),choices:e.f("choices",mr(hc(z3))),allowedActorSlug:e.f("allowedActorSlug",mr(Ot)),allowedActorUserId:e.f("allowedActorUserId",mr(Ts))})),G3=_c(["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","awaiting approval"]),ote=a0([On(e=>(e.tag("status","queued"),{TAG:"Queued",reason:e.f("reason",mr(Ot))})),On(e=>(e.tag("status","processed"),{TAG:"Processed",reason:e.f("reason",mr(Ot))})),On(e=>(e.tag("status","processing"),{TAG:"Processing",reason:e.f("reason",G3),approval:e.f("approval",mr(N3))})),On(e=>(e.tag("status","ignored"),{TAG:"Ignored",reason:e.f("reason",Ot)})),On(e=>(e.tag("status","failed"),{TAG:"Failed",reason:e.f("reason",Ot),retryable:e.f("retryable",mr(n0)),fate:e.f("fate",mr(bI))})),On(e=>(e.tag("status","interrupted"),{TAG:"Interrupted",reason:e.f("reason",Ot)}))]);function D3(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(`
348
- `)}function TI(e){let t=e.body.trimStart();return t.startsWith("!")?t:D3(e)}var OI="codex";function U3(e,t,r){return Bv(OI,e,t,r)}function Z3(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 AI(e){return ze(e,t=>{if(typeof t=="string")return t})}function W3(e){let t=Xn(e,"type");if(t===void 0)return"";switch(t){case"collabAgentToolCall":return x(Xn(e,"prompt"),"");case"commandExecution":return x(Xn(e,"aggregatedOutput"),"");case"dynamicToolCall":return xn(Qa(e,"contentItems"),"",wu);case"fileChange":return xn(Qa(e,"changes"),[],i=>ze(i,o=>{if(typeof o=="object"&&o!==null&&!Array.isArray(o))return Xn(o,"path")})).join(`
349
- `);case"mcpToolCall":return xn(k(Hv(e,"result"),i=>Qa(i,"content")),"",wu);case"reasoning":let r=xn(Qa(e,"summary"),[],AI),n=xn(Qa(e,"content"),[],AI);return r.concat(n).filter(i=>i!=="").join(`
349
+ `)}function WI(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 VI(e){return{model:e.model,contextWindow:e.contextWindow,maxEmissionTokens:e.maxEmissionTokens}}function hB(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:Ym(t,"structured"),actor:Ym(t,"actor"),attachments:x(qI(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 gB(e){let t=Jo(e,"ir_version"),r=qI(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:ze(r,hB),hasMore:i,cursor:Jo(e,"cursor"),budget:k(e.budget,_B)}}async function HI(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(;hn(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=LI(y);if(v!==void 0){let S=gB(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,(Z,L)=>L.kind==="reasoning"?Z:Z+L.body.length);let A=l,R=A!==void 0?c/4>=A.maxEmissionTokens:!1;!S.hasMore||hn(S.cursor)||R?p=We({nodes:s,budget:l,threadTitle:d}):(u=S.cursor,f=f+1|0)}else p=We(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=We(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=We(void 0)}let m=p;return m!==void 0?ue(m):{nodes:s,budget:l,threadTitle:d}}function yB(e,t){return"Codex "+e+" did not reply within "+t.toString()+"ms (start request timed out)"}function Xm(e,t,r,n){return t<=0?n:new Promise((i,o)=>{let a=e.setTimer(()=>i({TAG:"Error",_0:yB(r,t)}),t);n.then(s=>(e.clearTimer(a),i(s),Promise.resolve()))})}function _S(e){return e==="ResumeArchived"?"resume_archived":"forced_inject_not_found"}var bB="the server marked the durable engine session dead after an acknowledged-but-unexecuted turn";async function BI(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)=>Xm(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",_S(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",_S(m)]])),{TAG:"Ok",_0:"Resumed"};let b=g._0;o.log("kandan.reconnect_thread_unarchive_failed",Object.fromEntries([["codex_thread_id",n],["discovered_by",_S(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&&PP(R)))return{TAG:"Error",_0:"thread/inject_items failed: "+R};let Z=await d("ForcedInjectNotFound",R);return Z.TAG==="Ok"?{TAG:"Ok",_0:Z._0}:{TAG:"Error",_0:Z._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(bB);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 EP(p)?await d("ResumeArchived",p):await u(p)}var wB=P0(e=>({joinRef:e.item(0,uh(At)),ref:e.item(1,uh(At)),topic:e.item(2,At),event:e.item(3,At),payload:e.item(4,A0)}));function KI(e){return Is(e,wB)}function ep(e){let t=yr(e);return t!==void 0?x(Or(ue(t)),"unknown error"):"unknown error"}function xB(e){let t=k(yr(e),r=>bw(r));return t!==void 0?t:null}function ii(e){return e.TAG==="Transport"?e._0.message:e.message}function TB(e,t){return{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"TimeoutReason",message:"phoenix push timed out after "+e.toString()+"ms waiting for connection: "+t}}}function AB(e,t){return{TAG:"Transport",_0:{phase:"Reply",reason:"TimeoutReason",message:"phoenix push timed out after "+e.toString()+"ms: "+t}}}function XI(e){return e.TAG==="Transport"?e._0.phase==="WaitForConnection":!1}function QI(e){return{initial:t=>e.initial(t),onAdvance:(t,r)=>e.onAdvance(t,r),reset:(t,r)=>e.reset(t,r)}}function e$(e){return{current:t=>e.current(),adopt:(t,r)=>e.adopt(t,r)}}var OB="base64url.bearer.phx.";function CB(e){let t;t=typeof e=="object"&&e!==null&&!Array.isArray(e)?Im(e):e;let r=JSON.stringify(t);return r.length<=400?r:r.slice(0,400)+"\u2026"}var EB=new RegExp("/$");function PB(e){let t=Zn(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(EB,"")+"/socket/websocket",r.searchParams.set("vsn","2.0.0"),{TAG:"Ok",_0:r.toString()}}function RB(e){return[OB+Rw(e),"phoenix"]}function JI(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 IB(e){let t;try{t={TAG:"Ok",_0:JSON.parse(e)}}catch(n){let i=ee(n);t={TAG:"Error",_0:ep(i)}}if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=KI(t._0);return r.TAG==="Ok"?{TAG:"Ok",_0:r._0}:{TAG:"Error",_0:"invalid Phoenix frame"}}function t$(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function rp(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 Qm(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 $B(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?on(e.status,"ok"):!1}function MB(e){return typeof e!="object"||e===null||Array.isArray(e)?!1:typeof e.type=="string"}function tp(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&Ot(r))return r}function YI(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return tp(e,"control_seq")}function jB(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 zB="npm install -g @linzumi/cli@latest",NB=new RegExp("^npm install -g @linzumi\\/cli(@[0-9A-Za-z^~.-]{1,32})?$"),GB=new RegExp("^\\d+\\.\\d+\\.\\d+(?:[-+][0-9A-Za-z.-]{1,32})?$");function FB(e){return e!==void 0&&typeof e=="string"&&e.length<=100&&NB.test(e)?e:zB}function DB(e){return e!==void 0&&typeof e=="string"&&e.length<=64&&GB.test(e)?"@linzumi/cli "+e+" or newer":"a newer @linzumi/cli"}function gS(e){let t=t$(e),r=rp(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 qB(e){let t=rp(t$(e),"response");if(t===void 0||!de(t.error,"commander_version_too_old"))return gS(e);let r=DB(t.min_version),n=FB(t.upgrade_command);return"commander_version_too_old: this Linzumi server requires "+r+". Update with: "+n}function LB(e){let t=e;if(Rl(t,"agent_provider")==="claude-code")return"claude-code-sdk";let n=rp(t,"metadata"),i=rp(n,"local_codex_runner");return Rl(i,"agent_provider")==="claude-code"?"claude-code-sdk":"codex-app-server"}function UB(e,t){let r;try{r=e.initial(t)}catch{r=void 0}if(r!==void 0&&Ot(r)&&r>=0)return r}function ZB(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 r$(e,t,r,n){let i=n!==void 0?n:{},o=r!==void 0?r:Mm,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={},Z={},L={},ae=new Set,U={contents:1},K=[],oe=[],W=[],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),je=w=>{fr(S,w),fr(A,w),fr(R,w),fr(Z,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},Ye=(w,C)=>{let P=YI(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=tp(C,"control_high_water");if(P===void 0)return;let I=S[w];if(I!==void 0&&P<I){je(w);let F=0;if(_===void 0)return;let D=_.reset;if(D===void 0)return;try{return D(w,F)}catch{return}}},Tr=(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&&je(w),F},qt=w=>{let C=S[w];if(C!==void 0)return C;if(_===void 0)return;let P=UB(_,w);return P!==void 0?(S[w]=P,P):0},Xe=new Set,q=(w,C,P,I)=>{try{let F=!1;if(w.startsWith("local_runner:")&&C==="control"&&MB(I)){let D;if(Ye(w,I)){let ie=YI(I);if(ie!==void 0){let Pe=R[w],Re;if(Pe!==void 0)Re=Pe;else{let Ie=new Set;R[w]=Ie,Re=Ie}Re.add(ie)}let pe=ut(w),Fe=ie!==void 0?()=>{if(pe!==ut(w))return;let Pe=R[w];Pe!==void 0&&Pe.delete(ie);let Re=Z[w];Re!==void 0&&ie<=Re||(Z[w]=ie);let Ie=k(Pe,zt=>Ve(zt.values().toArray(),void 0,(Lt,cr)=>Lt!==void 0&&Lt<=cr?Lt:cr)),st=Ie!==void 0?Ie-1:Z[w];if(st===void 0)return;let Oe=S[w],ge=Oe!==void 0&&Oe<st?Oe:st;He(w,ge)}:()=>{};K.forEach(Pe=>Pe(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=ep(D);try{f("phoenix.pushed_frame_dispatch_failed",Object.fromEntries([["topic",w],["frame",C],["message",ie],["stack",xB(D)],["payloadSnippet",CB(I)],["dropped",!0]]))}catch{}if(Xe.has(C))return;Xe.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}}},Ce=(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},Se=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)},he=(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=jB(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=tp(C,"controls_advance_to");if(I!==void 0){let F=C.control_high_water;typeof F=="number"&&I>F||Ce(w,I)}return Se(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=Rm(P),st=JI({joinRef:pe,ref:ie,topic:w,event:C,payload:Fe}),Oe=Math.max(0,Math.ceil(I))|0;return new Promise((ge,zt)=>{let Lt=setTimeout(()=>{if(b[ie]!==void 0)return fr(b,ie),ge({TAG:"Error",_0:AB(Oe,C)})},Oe);b[ie]={event:C,timer:Lt,settle:ge};try{m({provider:LB(Fe),rawFrameText:st,topic:w,event:C,payload:Fe})}catch{}let cr;try{cr={TAG:"Ok",_0:D.send(st)}}catch(zr){let Kt=ee(zr);cr={TAG:"Error",_0:ep(Kt)}}return cr.TAG==="Ok"?F!==void 0?F():void 0:ge({TAG:"Error",_0:{TAG:"Failed",message:cr._0}})})},Bt=(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=qt(w);I!==void 0&&(P.last_control_seq=I);let F=ZB(g,w);F!==void 0&&(P.last_control_epoch=F)}return P},mn=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=qt(w),ie=await Be(w,"phx_join",Bt(w,mn(F)),h,void 0);if(C=C+1|0,ie.TAG==="Ok"){let pe=Qm(ie._0);if(pe!==void 0){let Fe=pe.controls,Pe=Array.isArray(Fe)?Fe.length:0;P=P+Pe|0;let Re=de(pe.controls_truncated,!0),Ie=qt(w),st;if(Re){let Oe=tp(pe,"control_high_water");st=Oe!==void 0&&Ie!==void 0?Oe-Ie>0?Oe-Ie:0:void 0}else st=0;if(f("phoenix.control_backlog_fetch_progress",Object.fromEntries([["topic",w],["fetches",C],["fetched",P],["remaining_estimate",st!==void 0?st:null],["truncated",Re]])),Re)if(de(Ie,D)){let Oe=Ie!==void 0?Ie.toString():"undefined";u("phoenix.control_backlog_fetch_stalled topic="+w+" fetches="+C.toString()+" fetched="+P.toString()+" cursor="+Oe+"; 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 ge=st!==void 0?st.toString():"unknown";u("phoenix.control_backlog_cap_exceeded topic="+w+" fetches="+C.toString()+" fetched="+P.toString()+" remaining_estimate="+ge+"; continuing the paginated backlog fetch (a healthy connection never reconnects, so nothing is deferred)")}await new Promise((ge,zt)=>{setImmediate(()=>ge())})}else I=!1}else I=!1}else I=!1}else I=!1}},qn=w=>{if(!ae.has(w)){ae.add(w),Gn(ki(w).then(()=>{ae.delete(w)}),C=>(ae.delete(w),Promise.resolve()));return}},ai={},Hr=async()=>{Object.entries(ai).forEach(F=>fr(ai,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",Bt(D,mn(F[1])),h,void 0);if(ie.TAG==="Ok"){let pe=Qm(ie._0);pe!==void 0?ai[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=We(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()===vP||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,Re=>Math.max(0,Date.now()-Re)),Fe=M.reconnectAttempts,Pe={closeCode:C,closeReason:ie,previousSessionDurationMs:pe,reconnectCount:Fe};V.forEach(Re=>{try{return Re(Pe)}catch{return}})},H=()=>{Ae(),M.heartbeatTimer=We(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(JI(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=We(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=We(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=PB(e),P;if(w.TAG==="Ok")if(C.TAG==="Ok"){let D;try{D={TAG:"Ok",_0:o(C._0,RB(w._0))}}catch(ie){let pe=ee(ie);D={TAG:"Error",_0:{TAG:"Failed",message:ep(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",Oe=>{let ge=M.websocket;if(ge!==void 0&&ge===D){let zt=IB(x(Oe.data,"undefined"));if(zt.TAG==="Ok"){let Lt=zt._0,cr=Lt.payload,zr=Lt.event,Kt=Lt.topic,Jt=Lt.ref;if(Jt!==void 0&&(zr==="phx_reply"||zr==="phx_error")){let Nt=b[Jt];if(Nt!==void 0){fr(b,Jt),clearTimeout(Nt.timer);let Yt=zr==="phx_error",or=$B(cr)&&Nt.event!=="phx_join";if(Yt)Nt.settle({TAG:"Error",_0:{TAG:"Failed",message:"phoenix push failed"}});else if(or)Nt.settle({TAG:"Error",_0:{TAG:"Failed",message:"phoenix push failed: "+gS(cr)}});else{let Ar=y[Kt],rn=Qm(cr),pn;if(Ar!==void 0&&rn!==void 0&&Nt.event==="phx_join"){let Bl=Tr(Kt,rn);It(Kt,rn);let Kl=Bl?{TAG:"Ok",_0:void 0}:he(Kt,rn);Kl.TAG==="Ok"?(Kt.startsWith("local_runner:")&&(de(rn.controls_truncated,!0)||Bl)&&qn(Kt),pn=!1):(Nt.settle({TAG:"Error",_0:{TAG:"Failed",message:Kl._0}}),pn=!0)}else pn=!1;pn||Nt.settle({TAG:"Ok",_0:cr})}}}return q(Kt,zr,Jt,cr)}else return f("phoenix.frame_decode_failed",Object.fromEntries([["message",zt._0],["dropped",!0]]))}}),D.on("SocketClose",Oe=>{let ge=M.websocket;if(ge!==void 0&&ge===D)return tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},Oe.code,Oe.reason)}),D.on("SocketError",Oe=>{let ge=M.websocket;if(ge!==void 0&&ge===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 Oe=M.websocket;return Oe!==void 0?Oe!==D:!1},Fe;if(ie.TAG==="Ok")if(pe())Fe={TAG:"Ok",_0:!1};else{M.connectionGeneration=M.connectionGeneration+1|0;let Oe=await Hr();Fe=Oe.TAG==="Ok"?pe()?{TAG:"Ok",_0:!1}:{TAG:"Ok",_0:!0}:{TAG:"Error",_0:Oe._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 Oe={};Object.entries(ai).forEach(zt=>{Oe[zt[0]]=zt[1]});let ge={contents:!1};return W.forEach(zt=>{if(ge.contents)return;let Lt;try{Lt={TAG:"Ok",_0:zt(Oe)}}catch{Lt={TAG:"Error",_0:void 0}}if(Lt.TAG!=="Ok"){ge.contents=!0;return}Gn(Lt._0,cr=>Promise.resolve())}),ge.contents&&!M.closed?tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket reconnect failed"}},void 0,void 0):void 0}let Pe=M.websocket,Re=Pe!==void 0?Pe!==D:!1,Ie=M.closed||Re,st=M.hasEverConnected;return Ie?void 0:st?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:TB(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 Lt="join-registration-"+U.contents.toString();U.contents=U.contents+1|0,F=Lt}let D=y[w],ie=D!==void 0?mn(D):[],pe=await at(w,"phx_join",Bt(w,ie.concat([C])),void 0);if(pe.TAG!=="Ok")return{TAG:"Error",_0:pe._0};let Fe=pe._0,Pe=Qm(Fe);if(Pe===void 0)return{TAG:"Error",_0:{TAG:"Failed",message:"phoenix join failed: "+qB(Fe)}};let Re=y[w],Ie=Re!==void 0?Re:{},st=Object.entries(Ie).length===0,Oe=P.rejoinPayload;if(Ie[F]={payload:Oe!==void 0?Oe:()=>C},y[w]=Ie,!(st&&w.startsWith("local_runner:")))return{TAG:"Ok",_0:Pe};let ge=Tr(w,Pe);It(w,Pe);let zt=ge?{TAG:"Ok",_0:void 0}:he(w,Pe);return zt.TAG!=="Ok"?{TAG:"Error",_0:{TAG:"Failed",message:zt._0}}:((de(Pe.controls_truncated,!0)||ge)&&qn(w),{TAG:"Ok",_0:Pe})},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=>{K.push(w)},onEvent:w=>{oe.push(w)},onReconnect:w=>{W.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 B=await M.ready;return B.TAG==="Ok"?{TAG:"Ok",_0:J}:{TAG:"Error",_0:B._0}}function WB(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 n$(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 WB(t)?"sonnet":t}}function Ru(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 i$(e){return{cwd:e.cwd,model:x(n$(e.model),""),reasoningEffort:void 0,developerInstructions:void 0,approvalPolicy:e.approvalPolicy,sandboxPolicy:e.sandbox,environment:{},mcpServers:G(e.mcp,t=>t.servers)}}var VB=["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 o$(e){return[e,""].concat(VB).join(`
350
+ `)}function a$(e){return{model:x(n$(e.model),""),reasoningEffort:void 0,input:{text:o$(e.workDescription),attachments:[]}}}var bS={contents:0};function HB(){let e=Date.now()*1e3,t=bS.contents>=e?bS.contents+1:e;return bS.contents=t,t}function np(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=HB(),i.entryType=r,i.payload=n,e.pushEvent("claude_session_store_append",i)}function s$(e,t){return r=>{switch(e.log("claude_code.session_event",Object.fromEntries([["thread_id",e.threadId],["kind",$m(r)]])),r.TAG){case"SessionStarted":let n=r.harnessSessionId;t.contents=n;let i=e.sourceSeq;return np(e,n,"session_started",Object.fromEntries([["prompt",o$(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?np(e,a,"assistant_message",Object.fromEntries([["itemKey",o.itemId],["body",r.content]])):void 0;case"TurnCompleted":let s=t.contents;s!==void 0&&(np(e,s,"turn_completed",{}),np(e,s,"session_completed",{})),Ru(e,"processed",void 0,t.contents);return;case"TurnFailed":Ru(e,"failed",r.failure.reason,t.contents);return;case"TurnInterrupted":Ru(e,"interrupted","Claude Code interrupted by Linzumi",t.contents);return;case"HarnessDied":Ru(e,"failed",r.failure.reason,t.contents);return;default:return}}}function l$(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 d$(e,t){return Ru(e,"processing","starting turn",t)}function rs(e){let t=e.mcp;if(t!==void 0)return t.cleanup()}async function u$(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=s$(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(i$(e),a);if(s.TAG==="Ok"){let l=s._0,d=await l.dispatchTurn(a$(e));if(d.TAG==="Ok"){let u=await n;if(u.TAG==="Ok"){let c=u._0;return t.contents=c,await l$(e,c),await d$(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 c$(e,t){let r={contents:t},n=await e.adapter.attachSession(t,i$(e),s$(e,r));if(n.TAG==="Ok"){let i=n._0;await l$(e,i.harnessSessionId);let o=await i.dispatchTurn(a$(e));return o.TAG==="Ok"?(await d$(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 Ore=10*6e4;function KB(e,t){let r=setTimeout(e,t);return r.unref(),r}function JB(e){clearTimeout(e)}var Il={setTimer:KB,clearTimer:JB};var XB=["deterministic","transient_upstream","transient_local","rate_limited","needs_approval","needs_decision"],f$=kc(XB);function ip(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 QB(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 SS(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 kS(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 m$(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 eK=15*6e4,tK=30*6e4;function vS(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 Iu(e){return{maxRecoveryRungs:vS(e.LINZUMI_FATE_LADDER_MAX_RECOVERY_RUNGS,4),maxLadderMs:vS(e.LINZUMI_FATE_LADDER_BUDGET_MS,eK),maxRateLimitHoldMs:vS(e.LINZUMI_FATE_LADDER_MAX_HOLD_MS,tK)}}function rK(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 xS(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 nK(e){switch(e){case"budget_rungs_exhausted":case"budget_wall_clock_exhausted":case"rungs_exhausted":case"grant_unavailable":return!0;default:return!1}}function p$(e,t,r){if(e!=="transient_local"||r===void 0||!(r.backendDead&&nK(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 iK(e,t){switch(t){case"in_place_resume":return e.inPlaceResume;case"redispatch":return e.redispatch;case"worker_rebuild":return e.workerRebuild}}function h$(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=m$(o),s=e.run,l=s!==void 0?s:xS(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?!iK(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 _$(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:SS(r),resetAtMs:void 0,userSwitch:r})}}function TS(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?SS(n)+" - "+i:SS(n),resetAtMs:void 0,userSwitch:n})}function op(e,t,r,n){let i=n!==void 0?ue(n):void 0,o=m$(t),a=c=>{let f={};f.rung=rK(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=QB(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=kS(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 g$="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?wr(n):void 0;if(i!==void 0)switch(i){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 AS(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 lK=Rn(e=>({decision:e.f("decision",At),label:e.f("label",At),description:e.f("description",hr(At))})),dK=Rn(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(wc(lK))),allowedActorSlug:e.f("allowedActorSlug",hr(At)),allowedActorUserId:e.f("allowedActorUserId",hr(Rs))})),uK=kc(["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","awaiting approval"]),Cre=C0([Rn(e=>(e.tag("status","queued"),{TAG:"Queued",reason:e.f("reason",hr(At))})),Rn(e=>(e.tag("status","processed"),{TAG:"Processed",reason:e.f("reason",hr(At))})),Rn(e=>(e.tag("status","processing"),{TAG:"Processing",reason:e.f("reason",uK),approval:e.f("approval",hr(dK))})),Rn(e=>(e.tag("status","ignored"),{TAG:"Ignored",reason:e.f("reason",At)})),Rn(e=>(e.tag("status","failed"),{TAG:"Failed",reason:e.f("reason",At),retryable:e.f("retryable",hr(T0)),fate:e.f("fate",hr(f$))})),Rn(e=>(e.tag("status","interrupted"),{TAG:"Interrupted",reason:e.f("reason",At)}))]);function fK(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 y$(e){let t=e.body.trimStart();return t.startsWith("!")?t:fK(e)}var v$="codex";function hK(e,t,r){return mS(v$,e,t,r)}function _K(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 b$(e){return ze(e,t=>{if(typeof t=="string")return t})}function gK(e){let t=ni(e,"type");if(t===void 0)return"";switch(t){case"collabAgentToolCall":return x(ni(e,"prompt"),"");case"commandExecution":return x(ni(e,"aggregatedOutput"),"");case"dynamicToolCall":return nn(ts(e,"contentItems"),"",Eu);case"fileChange":return nn(ts(e,"changes"),[],i=>ze(i,o=>{if(typeof o=="object"&&o!==null&&!Array.isArray(o))return ni(o,"path")})).join(`
352
+ `);case"mcpToolCall":return nn(k(fS(e,"result"),i=>ts(i,"content")),"",Eu);case"reasoning":let r=nn(ts(e,"summary"),[],b$),n=nn(ts(e,"content"),[],b$);return r.concat(n).filter(i=>i!=="").join(`
350
353
 
351
- `);case"subAgentActivity":return x(Xn(e,"agentPath"),"");case"agentMessage":case"plan":case"terminalInput":return x(Xn(e,"text"),"");case"userMessage":return xn(Qa(e,"content"),"",wu);default:return""}}function V3(e){return new Date(e).toISOString()}function CI(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(Xn(a,"id"),"");r.push({kind:Z3(Xn(a,"type")),seq:r.length+1|0,at:D(i.completedAtMs,V3),harness:OI,body:W3(a),structured:i.item,actor:void 0,attachments:[],sourceSeq:void 0,streamKey:U3(t.harnessSessionId,n.turnId,s)})})}),Kv(e,r)}var ste="claude-code";var K3="claude-code";function J3(e){return"rehydrated-"+e.toString()}var Y3="rehydrated-marker";function X3(e,t){switch(e){case"agent_status":return"[status] "+t;case"approval_request":return"[approval] "+t;case"command_execution":return`[command]
354
+ `);case"subAgentActivity":return x(ni(e,"agentPath"),"");case"agentMessage":case"plan":case"terminalInput":return x(ni(e,"text"),"");case"userMessage":return nn(ts(e,"content"),"",Eu);default:return""}}function yK(e){return new Date(e).toISOString()}function S$(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(ni(a,"id"),"");r.push({kind:_K(ni(a,"type")),seq:r.length+1|0,at:G(i.completedAtMs,yK),harness:v$,body:gK(a),structured:i.item,actor:void 0,attachments:[],sourceSeq:void 0,streamKey:hK(t.harnessSessionId,n.turnId,s)})})}),pS(e,r)}var Pre="claude-code";var SK="claude-code";function wK(e){return"rehydrated-"+e.toString()}var kK="rehydrated-marker";function xK(e,t){switch(e){case"agent_status":return"[status] "+t;case"approval_request":return"[approval] "+t;case"command_execution":return`[command]
352
355
  `+t;case"error":return"[error] "+t;case"file_change":return`[file change]
353
356
  `+t;case"system_notice":return"[notice] "+t;case"terminal_input":return`[terminal input]
354
357
  `+t;case"tool_call":return`[tool call]
355
358
  `+t;case"tool_result":return`[tool result]
356
- `+t;default:return"["+e+"] "+t}}function EI(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 Q3(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 PI(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=ze(pv.map(Ba),b=>D(k(h.streamKey,y=>ku(b,y)),y=>[b,y.keySessionId]))[0];if(g!==void 0){let b=g[1],y=g[0];if(y===K3)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",X3(_,h.body)]}let b=g[0],y=J3(h.seq);u.push({sourceSeq:h.seq,sourceKind:_,uuid:y,role:b}),c.push(EI(b,e,y,g[1]))});let m=[EI("user",e,Y3,Q3(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 lS from"node:path";function tB(e){return e.replace(/[^a-zA-Z0-9]/g,"-")}function rB(e,t){return lS.join(e,".claude","projects",tB(t))}var nB="0.0.0-linzumi-cross-harness-switch";function RI(e,t,r,n,i){let o=Li(t);if(o.TAG!=="Ok")return{TAG:"Error",_0:"the thread's working directory is not resolvable: "+t};let a=o._0,s=rB(e,a),l=Dt(s);if(l.TAG!=="Ok")return{TAG:"Error",_0:"session store dir creation failed: "+l._0.message};let d=lS.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=nB,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(`
359
+ `+t;default:return"["+e+"] "+t}}function w$(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 TK(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 k$(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=ze(Ev.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===SK)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",xK(_,h.body)]}let b=g[0],y=wK(h.seq);u.push({sourceSeq:h.seq,sourceKind:_,uuid:y,role:b}),c.push(w$(b,e,y,g[1]))});let m=[w$("user",e,kK,TK(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 OS from"node:path";function OK(e){return e.replace(/[^a-zA-Z0-9]/g,"-")}function CK(e,t){return OS.join(e,".claude","projects",OK(t))}var EK="0.0.0-linzumi-cross-harness-switch";function x$(e,t,r,n,i){let o=Ln(t);if(o.TAG!=="Ok")return{TAG:"Error",_0:"the thread's working directory is not resolvable: "+t};let a=o._0,s=CK(e,a),l=Ft(s);if(l.TAG!=="Ok")return{TAG:"Error",_0:"session store dir creation failed: "+l._0.message};let d=OS.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=EK,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(`
357
360
  `)+`
358
- `,p=wi(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 II(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 $I(e){return e.reason}function MI(e){switch(e.TAG){case"SeedFailed":case"DispatchFailed":return!1;default:return!0}}async function jI(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(Ke(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=CI(t,{harnessSessionId:e.harnessSessionId,turns:u}),p=PI(r,f);if(p.TAG!=="Ok")return{TAG:"Error",_0:{TAG:"TranspileRefused",reason:p._0}};let m=p._0,h=RI(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 BI from"node:url";import*as Au from"node:path";function NI(e){return e==="MustAck"?"must_ack":"best_effort"}function uS(e,t){let r=t.replace(new RegExp("[^A-Za-z0-9._-]+","g"),"-").replace(new RegExp("^[-.]+|[-.]+$","g"),"").slice(0,80),n=Gn(t).slice(0,8);return Au.join(e,(r===""?"thread":r)+"."+n+".outbox.jsonl")}function es(e){return JSON.stringify(e)+`
359
- `}function zI(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=NI(t.resolution),r.atMs=t.enqueuedAtMs,es(r)}function Hm(e,t){return es(Object.fromEntries([["t",e],["seq",t]]))}function dS(e){if(typeof e=="string")return e}function Tl(e,t){return e!==void 0&&typeof e=="number"&&Rt(e)?e:t}function aB(e){let t=e.seq,r=t!==void 0&&typeof t=="number"&&Rt(t)?t:void 0,n=dS(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:dS(e.coalesceKey),resolution:s,attempts:0,enqueuedAtMs:d}}function sB(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"&&Rt(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=Tl(e.enqueued,0)|0,o.totalAcked=Tl(e.acked,0)|0,o.totalDroppedBestEffort=Tl(e.dropped,0)|0,o.totalPermanentFailures=Tl(e.failed,0)|0,o.totalExpiredOnRecovery=Tl(e.expired,0)|0,a(Tl(e.lastSeq,0));case"item_seq":return;case"kv":let h=dS(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=aB(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"||!Rt(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 GI(e,t){let r={pendingEntries:[],kv:new Map,counters:{totalEnqueued:0,totalAcked:0,totalDroppedBestEffort:0,totalPermanentFailures:0,totalExpiredOnRecovery:0,lastEntrySeq:0}},n=or(e);if(n.TAG==="Ok"){let o=new Map,a=n._0.split(`
360
- `),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 sB(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 ni(i,"ENOENT")||t("outbox_journal_read_failed",Object.fromEntries([["path",e],["error",i.message]])),r}function lB(e){return Ke(e,0,(t,r)=>(t+r.split(`
361
- `).length|0)-1|0)}function FI(e,t,r,n,i){let o=n!==void 0?n:256,a=i!==void 0?i:3,s={contents:e};Dt(Au.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=lB(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 z={};A.kv.forEach((le,W)=>{z[W]=le});let H=[es(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]])),es(Object.fromEntries([["t","context"],["kv",z]]))].concat(A.pendingEntries.map(le=>zI("pending",le))),ce=s.contents+".tmp",ne=await sw(ce,H.join("")),ie;return ie=ne.TAG==="Ok"?await Tp(ce,s.contents):{TAG:"Error",_0:ne._0},ie.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:ie._0.message})},y=async()=>{u.contents=!1;let A;if(l.contents.length!==0){let R=l.contents.join("");l.contents=[];let z=await xp(s.contents,R);z.TAG==="Ok"?A={TAG:"Ok",_0:void 0}:(l.contents=[R].concat(l.contents),A={TAG:"Error",_0:z._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(zI("enqueue",A),!1),appendCoalesce:(A,R)=>S(es(Object.fromEntries([["t","coalesce"],["seq",A],["data",R]])),!1),appendAck:A=>S(Hm("ack",A),!0),appendSkip:(A,R)=>S(es(Object.fromEntries([["t","skip"],["seq",A],["reason",R]])),!0),appendDrop:A=>S(Hm("drop",A),!0),appendFail:A=>S(Hm("fail",A),!0),appendExpired:A=>S(Hm("expired",A),!0),appendKv:(A,R)=>S(es(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,z=Dt(Au.dirname(A)),H;if(H=z.TAG==="Ok"?await Tp(R,A):{TAG:"Error",_0:z._0},H.TAG==="Ok")return s.contents=A,r("outbox_journal_rekeyed",Object.fromEntries([["from",R],["to",A]]));let ce=H._0;return ni(ce,"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",ce.message]]))})},close:async()=>{if(f.contents=!0,await d.contents,l.contents.length===0)return;let A=l.contents.join(""),R=await xp(s.contents,A);return R.TAG!=="Ok"?_(R._0.message):(l.contents=[],g())}}}function qI(e){let t=e.itemId,r=t!==void 0?t:"index:"+e.itemIndex.toString();return e.turnId+":"+e.streamKind+":"+r}function Al(e){switch(e.TAG){case"HarnessNotification":return"codex";case"CompletionSnapshot":return"snapshot";case"Lifecycle":return"lifecycle"}}function LI(e){return e}function cS(e){return e!==void 0?e!=="streaming":!1}var Ou="pipeline.post_streamed_row",Cu="pipeline.stream_snapshot",ts="pipeline.finalize_row",Eu="pipeline.post_completed_row",Ol="pipeline.message_state";function dB(e){return e}function kr(e,t){return e[t]}function C(e,t){return k(e[t],Sr)}function De(e,t){return k(e[t],ke)}function Ym(e,t){return k(e[t],Ji)}function rs(e,t){return k(e[t],ma)}function Bm(e,t){let r=e[t];return r!==void 0?vc(r):[]}function mS(e){if(typeof e=="string"&&e.trim()!=="")return e}function gt(e,t){return k(e[t],mS)}var uB="phoenix_insert_body_limit",Km="\0",Jm="\uFFFD";function cB(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:(e.slice(0,i)+" "+n).slice(0,t),truncated:!0}}var UI=`
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 T$(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 A$(e){return e.reason}function O$(e){switch(e.TAG){case"SeedFailed":case"DispatchFailed":return!1;default:return!0}}async function C$(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=S$(t,{harnessSessionId:e.harnessSessionId,turns:u}),p=k$(r,f);if(p.TAG!=="Ok")return{TAG:"Error",_0:{TAG:"TranspileRefused",reason:p._0}};let m=p._0,h=x$(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 q$ from"node:url";import*as $u from"node:path";function P$(e){return e==="MustAck"?"must_ack":"best_effort"}function ES(e,t){let r=t.replace(new RegExp("[^A-Za-z0-9._-]+","g"),"-").replace(new RegExp("^[-.]+|[-.]+$","g"),"").slice(0,80),n=Un(t).slice(0,8);return $u.join(e,(r===""?"thread":r)+"."+n+".outbox.jsonl")}function ns(e){return JSON.stringify(e)+`
362
+ `}function E$(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=P$(t.resolution),r.atMs=t.enqueuedAtMs,ns(r)}function ap(e,t){return ns(Object.fromEntries([["t",e],["seq",t]]))}function CS(e){if(typeof e=="string")return e}function Ml(e,t){return e!==void 0&&typeof e=="number"&&Ot(e)?e:t}function IK(e){let t=e.seq,r=t!==void 0&&typeof t=="number"&&Ot(t)?t:void 0,n=CS(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:CS(e.coalesceKey),resolution:s,attempts:0,enqueuedAtMs:d}}function $K(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=Ml(e.enqueued,0)|0,o.totalAcked=Ml(e.acked,0)|0,o.totalDroppedBestEffort=Ml(e.dropped,0)|0,o.totalPermanentFailures=Ml(e.failed,0)|0,o.totalExpiredOnRecovery=Ml(e.expired,0)|0,a(Ml(e.lastSeq,0));case"item_seq":return;case"kv":let h=CS(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=IK(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 R$(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 $K(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 MK(e){return Ve(e,0,(t,r)=>(t+r.split(`
364
+ `).length|0)-1|0)}function I$(e,t,r,n,i){let o=n!==void 0?n:256,a=i!==void 0?i:3,s={contents:e};Ft($u.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=MK(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 Z={};A.kv.forEach((oe,W)=>{Z[W]=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",Z]]))].concat(A.pendingEntries.map(oe=>E$("pending",oe))),ae=s.contents+".tmp",U=await Ew(ae,L.join("")),K;return K=U.TAG==="Ok"?await Np(ae,s.contents):{TAG:"Error",_0:U._0},K.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:K._0.message})},y=async()=>{u.contents=!1;let A;if(l.contents.length!==0){let R=l.contents.join("");l.contents=[];let Z=await zp(s.contents,R);Z.TAG==="Ok"?A={TAG:"Ok",_0:void 0}:(l.contents=[R].concat(l.contents),A={TAG:"Error",_0:Z._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(E$("enqueue",A),!1),appendCoalesce:(A,R)=>S(ns(Object.fromEntries([["t","coalesce"],["seq",A],["data",R]])),!1),appendAck:A=>S(ap("ack",A),!0),appendSkip:(A,R)=>S(ns(Object.fromEntries([["t","skip"],["seq",A],["reason",R]])),!0),appendDrop:A=>S(ap("drop",A),!0),appendFail:A=>S(ap("fail",A),!0),appendExpired:A=>S(ap("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,Z=Ft($u.dirname(A)),L;if(L=Z.TAG==="Ok"?await Np(R,A):{TAG:"Error",_0:Z._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 zp(s.contents,A);return R.TAG!=="Ok"?_(R._0.message):(l.contents=[],g())}}}function M$(e){let t=e.itemId,r=t!==void 0?t:"index:"+e.itemIndex.toString();return e.turnId+":"+e.streamKind+":"+r}function jl(e){switch(e.TAG){case"HarnessNotification":return"codex";case"CompletionSnapshot":return"snapshot";case"Lifecycle":return"lifecycle"}}function j$(e){return e}function PS(e){return e!==void 0?e!=="streaming":!1}var Mu="pipeline.post_streamed_row",ju="pipeline.stream_snapshot",is="pipeline.finalize_row",zu="pipeline.post_completed_row",zl="pipeline.message_state";function jK(e){return e}function xr(e,t){return e[t]}function E(e,t){return k(e[t],wr)}function qe(e,t){return k(e[t],ke)}function up(e,t){return k(e[t],Qi)}function os(e,t){return k(e[t],ha)}function sp(e,t){let r=e[t];return r!==void 0?Oc(r):[]}function IS(e){if(typeof e=="string"&&e.trim()!=="")return e}function _t(e,t){return k(e[t],IS)}var zK="phoenix_insert_body_limit",lp="\0",dp="\uFFFD";function NK(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:(e.slice(0,i)+" "+n).slice(0,t),truncated:!0}}var z$=`
362
365
 
363
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.]
364
367
 
365
- `;function fB(e){if(e.length<=48e3)return{text:e,truncated:!1};let t=Math.max(0,48e3-UI.length|0),r=Math.min(2e3,Math.floor(t/3)|0),n=t-r|0,i=e.slice(0,r),o=e.slice(e.length-n|0);return{text:(i+UI+o).slice(0,48e3),truncated:!0}}var ZI=`
368
+ `;function GK(e){if(e.length<=48e3)return{text:e,truncated:!1};let t=Math.max(0,48e3-z$.length|0),r=Math.min(2e3,Math.floor(t/3)|0),n=t-r|0,i=e.slice(0,r),o=e.slice(e.length-n|0);return{text:(i+z$+o).slice(0,48e3),truncated:!0}}var N$=`
366
369
 
367
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.]
368
371
 
369
- `;function KI(e){if(e.length<=48e3)return e;let t=Math.max(0,48e3-ZI.length|0),r=Math.min(2e3,Math.floor(t/3)|0),n=t-r|0,i=e.slice(0,r),o=e.slice(e.length-n|0);return(i+ZI+o).slice(0,48e3)}function Iu(e,t){let r=t!==void 0?e+`
372
+ `;function L$(e){if(e.length<=48e3)return e;let t=Math.max(0,48e3-N$.length|0),r=Math.min(2e3,Math.floor(t/3)|0),n=t-r|0,i=e.slice(0,r),o=e.slice(e.length-n|0);return(i+N$+o).slice(0,48e3)}function Fu(e,t){let r=t!==void 0?e+`
370
373
 
371
- `+t:e;return KI(r.replaceAll(Km,Jm))}function $u(e){return D(e,t=>KI(t.replaceAll(Km,Jm)))}function pS(e){let t=k(e,Sr);if(t===void 0)return"info";switch(t){case"error":return"error";case"warning":return"warning";default:return"info"}}function hS(e){let t=k(e,Sr);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 WI(e){let t=De(e,"rawProviderMetadata");return t!==void 0?t:De(e,"raw_provider_metadata")}function _S(e,t){return["$ "+e,t].filter(r=>r.trim()!=="").join(`
374
+ `+t:e;return L$(r.replaceAll(lp,dp))}function Du(e){return G(e,t=>L$(t.replaceAll(lp,dp)))}function $S(e){let t=k(e,wr);if(t===void 0)return"info";switch(t){case"error":return"error";case"warning":return"warning";default:return"info"}}function MS(e){let t=k(e,wr);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 G$(e){let t=qe(e,"rawProviderMetadata");return t!==void 0?t:qe(e,"raw_provider_metadata")}function jS(e,t){return["$ "+e,t].filter(r=>r.trim()!=="").join(`
372
375
 
373
- `)}function gS(e,t){let r=cB(e.replaceAll(Km,Jm),512,"command label"),n=fB(t.replaceAll(Km,Jm));return{command:r.text,output:n.text,body:_S(r.text,n.text),truncated:r.truncated||n.truncated,originalLength:t.length}}function JI(e){return e.truncated?[["output_truncated",!0],["output_original_length",e.originalLength],["output_max_chars",48e3],["output_truncation_reason",uB]]:[]}function YI(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 XI(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 QI(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(JI(n)))}function yS(e,t,r,n,i){return QI(e,n,i,gS(t,r))}function mB(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 VI(e,t){return t!==void 0&&t.path.trim()!==""?e.concat([t]):e}function pB(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(`
374
- `)}function hB(e){let t={contents:[]},r={contents:void 0};return e.split(`
375
- `).forEach(n=>{let i=mB(n);if(i!==void 0){t.contents=VI(t.contents,r.contents),r.contents={path:i.headerPath,kind:i.headerKind,movePath:"",diffLines:[]};return}else if(n.startsWith("*** Move to: ")){r.contents=D(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=D(r.contents,o=>({path:o.path,kind:o.kind,movePath:o.movePath,diffLines:o.diffLines.concat([n])}));return}}),VI(t.contents,r.contents).map(n=>Object.fromEntries([["path",n.path],["diff",pB(n.diffLines)],["kind",n.kind],["move_path",n.movePath]]))}function bS(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",hB(t)]])}function e$(e){return Ke(e,[],(t,r)=>r!==void 0&&r.trim()!==""&&!t.includes(r)?t.concat([r]):t)}function vS(e){let t=e$(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(`
376
- `)}function t$(e,t,r){return Object.fromEntries([["kind","codex_reasoning"],["item_id",e],["transcript_unit_id","codex_reasoning:"+e],["stream_state",r],["content",vS(t)],["summary_parts",[]]])}function _B(e){let t=De(e,"action");return e$([C(e,"query"),k(t,r=>C(r,"query"))].concat(Bm(e,"queries").map(r=>r).concat(t!==void 0?Bm(t,"queries").map(r=>r):[])))}function SS(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 wS(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 r$(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=C(t,"text");if(i!==void 0)return i;let o=C(t,"content");if(o!==void 0)return o;let a=C(t,"delta");return a!==void 0?a:C(t,"message")}let r=C(e,"text");if(r!==void 0)return r;let n=C(e,"content");return n!==void 0?n:C(e,"message")}function Xm(e){let t=r$(e);if(t!==void 0&&t!=="")return t}function n$(e){let t=gt(e,"deltaBase64"),r=t!==void 0?Buffer.from(t,"base64").toString("utf8"):r$(e);if(r===void 0||r==="")return;let n=De(e,"item"),i=gt(e,"command"),o;if(i!==void 0)o=i;else{let s=gt(e,"cmd");if(s!==void 0)o=s;else{let l=k(n,d=>gt(d,"command"));o=l!==void 0?l:k(n,d=>gt(d,"cmd"))}}let a=C(e,"processId");return{commandProcessId:a!==void 0?a:C(e,"process_id"),command:o,stream:x(C(e,"stream"),"stdout"),commandDelta:r}}function i$(e){let t=gt(e,"stdin"),r;if(t!==void 0)r=t;else{let n=gt(e,"inputText");if(n!==void 0)r=n;else{let i=gt(e,"input");r=i!==void 0?i:gt(e,"text")}}return D(r,n=>{let i=C(e,"processId");return{terminalProcessId:i!==void 0?i:C(e,"process_id"),inputText:n}})}var o$=Xm;function fS(e){let t=k(e,mS);if(t!==void 0){let o=pa(t);if(o===void 0)return t;let a=gt(o,"patch");if(a!==void 0)return a;let s=gt(o,"input");if(s!==void 0)return s;let l=gt(o,"text");return l!==void 0?l:t}let r=k(e,ke);if(r===void 0)return;let n=gt(r,"patch");if(n!==void 0)return n;let i=gt(r,"input");return i!==void 0?i:gt(r,"text")}function a$(e){return ze(e,ke).map(t=>{let r=t.kind,n=k(r,ke),i=n!==void 0?x(C(n,"type"),""):x(k(r,Sr),""),o=k(k(r,ke),l=>{let d=C(l,"move_path");return d!==void 0?d:C(l,"movePath")}),a=C(t,"move_path"),s;if(a!==void 0)s=a;else{let l=C(t,"movePath");s=l!==void 0?l:x(o,"")}return Object.fromEntries([["path",x(C(t,"path"),"")],["diff",x(gt(t,"diff"),"")],["kind",i],["move_path",s]])})}function gB(e){let t=C(e,"type");if(t===void 0)return!1;switch(t){case"fileChange":case"file_change":return!0;default:return!1}}function yB(e){if(e.length===0)return;let t=e.flatMap(r=>{let n=C(r,"path");if(n===void 0)return[];if(n.trim()==="")return[];let i=C(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=gt(r,"diff");return a!==void 0?[o,a]:[o]}).join(`
376
+ `)}function zS(e,t){let r=NK(e.replaceAll(lp,dp),512,"command label"),n=GK(t.replaceAll(lp,dp));return{command:r.text,output:n.text,body:jS(r.text,n.text),truncated:r.truncated||n.truncated,originalLength:t.length}}function U$(e){return e.truncated?[["output_truncated",!0],["output_original_length",e.originalLength],["output_max_chars",48e3],["output_truncation_reason",zK]]:[]}function Z$(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 W$(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 V$(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(U$(n)))}function NS(e,t,r,n,i){return V$(e,n,i,zS(t,r))}function FK(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 F$(e,t){return t!==void 0&&t.path.trim()!==""?e.concat([t]):e}function DK(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 qK(e){let t={contents:[]},r={contents:void 0};return e.split(`
378
+ `).forEach(n=>{let i=FK(n);if(i!==void 0){t.contents=F$(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}}),F$(t.contents,r.contents).map(n=>Object.fromEntries([["path",n.path],["diff",DK(n.diffLines)],["kind",n.kind],["move_path",n.movePath]]))}function GS(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",qK(t)]])}function H$(e){return Ve(e,[],(t,r)=>r!==void 0&&r.trim()!==""&&!t.includes(r)?t.concat([r]):t)}function FS(e){let t=H$(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 B$(e,t,r){return Object.fromEntries([["kind","codex_reasoning"],["item_id",e],["transcript_unit_id","codex_reasoning:"+e],["stream_state",r],["content",FS(t)],["summary_parts",[]]])}function LK(e){let t=qe(e,"action");return H$([E(e,"query"),k(t,r=>E(r,"query"))].concat(sp(e,"queries").map(r=>r).concat(t!==void 0?sp(t,"queries").map(r=>r):[])))}function DS(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 qS(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 K$(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 cp(e){let t=K$(e);if(t!==void 0&&t!=="")return t}function J$(e){let t=_t(e,"deltaBase64"),r=t!==void 0?Buffer.from(t,"base64").toString("utf8"):K$(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 Y$(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 X$=cp;function RS(e){let t=k(e,IS);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 Q$(e){return ze(e,ke).map(t=>{let r=t.kind,n=k(r,ke),i=n!==void 0?x(E(n,"type"),""):x(k(r,wr),""),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 UK(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 ZK(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(`
377
380
  `);if(t!=="")return`*** Begin Patch
378
381
  `+t+`
379
382
  *** End Patch
380
- `}function s$(e){let t=De(e,"item"),r;if(t!==void 0)r=t;else{let o=De(e,"payload");r=o!==void 0?o:e}let n=C(r,"status");if(gB(r)&&(n===void 0||se(n,"completed"))){let o=a$(x(Ym(r,"changes"),[])),a=gt(r,"patchText");if(a!==void 0)return a;let s=gt(r,"patch");return s!==void 0?s:yB(o)}if(!(se(C(r,"type"),"custom_tool_call")&&se(C(r,"name"),"apply_patch")&&(n===void 0||se(n,"completed"))))return;let i=fS(r.input);return i!==void 0?i:fS(r.arguments)}function kS(e){let t=x(De(e,"item"),e),r=C(t,"type");if(r===void 0)return;switch(r){case"webSearch":case"webSearchCall":case"web_search_call":break;default:return}let n=_B(t);if(n.length!==0)return{queries:n}}function Ru(e,t,r){return Object.fromEntries([["kind",e],["item_id",t],["transcript_unit_id",e+":"+t],["stream_state","completed"]].concat(r))}function bB(e){return ze(x(Ym(e,"content"),[]),ke).flatMap(t=>{let r=C(t,"type");if(r===void 0)return[];switch(r){case"input_text":case"output_text":case"text":break;default:return[]}let n=gt(t,"text");if(n!==void 0)return[n];let i=gt(t,"content");if(i!==void 0)return[i];let o=gt(t,"output_text");return o!==void 0?[o]:[]}).join(`
383
+ `}function eM(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(UK(r)&&(n===void 0||de(n,"completed"))){let o=Q$(x(up(r,"changes"),[])),a=_t(r,"patchText");if(a!==void 0)return a;let s=_t(r,"patch");return s!==void 0?s:ZK(o)}if(!(de(E(r,"type"),"custom_tool_call")&&de(E(r,"name"),"apply_patch")&&(n===void 0||de(n,"completed"))))return;let i=RS(r.input);return i!==void 0?i:RS(r.arguments)}function LS(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=LK(t);if(n.length!==0)return{queries:n}}function Gu(e,t,r){return Object.fromEntries([["kind",e],["item_id",t],["transcript_unit_id",e+":"+t],["stream_state","completed"]].concat(r))}function WK(e){return ze(x(up(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(`
381
384
 
382
- `)}function vB(e){let t=bB(e);if(t!=="")return t;let r=C(e,"reply"),n;if(r!==void 0)n=r;else{let d=C(e,"summary");if(d!==void 0)n=d;else{let u=C(e,"content");n=u!==void 0?u:x(C(e,"text"),"")}}let i=pa(n);if(i===void 0)return n;let o=C(i,"reply");if(o!==void 0)return o;let a=C(i,"summary");if(a!==void 0)return a;let s=C(i,"content");if(s!==void 0)return s;let l=C(i,"message");return l!==void 0?l:x(C(i,"output_text"),n)}var SB=new RegExp("^https?:\\/\\/","i"),wB=new RegExp("^data:","i"),kB=new RegExp("^file:\\/\\/","i");function xB(e){if(!(SB.test(e)||wB.test(e))){if(!kB.test(e))return e;try{return BI.fileURLToPath(e)}catch{return}}}function TB(e){return ze(x(Ym(e,"content"),[]),ke).flatMap(t=>{let r=D(C(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=C(t,"path"),i;if(n!==void 0)i=n;else{let a=C(t,"file_path");if(a!==void 0)i=a;else{let s=C(t,"filePath");if(s!==void 0)i=s;else{let l=C(t,"image_url");if(l!==void 0)i=l;else{let d=C(t,"imageUrl");i=d!==void 0?d:C(t,"url")}}}}let o=k(i,xB);return o!==void 0?[o]:[]})}function AB(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(`
385
+ `)}function VK(e){let t=WK(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 HK=new RegExp("^https?:\\/\\/","i"),BK=new RegExp("^data:","i"),KK=new RegExp("^file:\\/\\/","i");function JK(e){if(!(HK.test(e)||BK.test(e))){if(!KK.test(e))return e;try{return q$.fileURLToPath(e)}catch{return}}}function YK(e){return ze(x(up(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,JK);return o!==void 0?[o]:[]})}function XK(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(`
383
386
  `);return e.trim()===""?n:[e,"",n].join(`
384
- `)}function HI(e,t){let r=vB(e),n=TB(e);return[{body:AB(r,n),structured:Ru("codex_assistant_message",t,[["content",r],["phase",x(C(e,"phase"),"final_answer")]])}]}function Qm(e,t){let r=x(C(e,"id"),"item-"+t.toString()),n=C(e,"type");if(n===void 0)return[];switch(n){case"agentMessage":return HI(e,r);case"agentStatus":let i=x(gt(e,"title"),"Agent status"),o=$u(gt(e,"body")),a=pS(e.severity),s=gt(e,"provider"),l=rs(e,"occurredAtMs"),d=WI(e),u={title:i,body:o,severity:a,provider:s,occurredAtMs:l,rawProviderMetadata:d};return[{body:Iu(i,o),structured:SS(r,u,"completed")}];case"agentTaskUpdate":let c=x(gt(e,"title"),"Agent task"),f=$u(gt(e,"body")),p=gt(e,"progressLabel"),m=hS(e.state),h=gt(e,"provider"),_=rs(e,"occurredAtMs"),g=WI(e),b={title:c,body:f,state:m,progressLabel:p,provider:h,occurredAtMs:_,rawProviderMetadata:g};return[{body:Iu(c,f!==void 0?f:p),structured:wS(r,b,"completed")}];case"commandExecution":let y=x(C(e,"command"),"command"),v=x(gt(e,"aggregatedOutput"),""),S=gS(y,v),A=C(e,"toolName"),R=rs(e,"durationMs"),z=rs(e,"exitCode");return[{body:S.body,structured:Ru("codex_command_execution",r,[["command",S.command],["tool_name",A!==void 0?A:null],["cwd",x(C(e,"cwd"),"")],["status",x(C(e,"status"),"")],["process_id",x(C(e,"processId"),"")],["duration_ms",R!==void 0?R:null],["exit_code",z!==void 0?z:null],["output",S.output]].concat(JI(S)))}];case"fileChange":let H=a$(x(Ym(e,"changes"),[])),ce=gt(e,"patchText"),ne=ce!==void 0?ce:x(gt(e,"patch"),"");return[{body:ne.trim()!==""?ne:H.map(te=>x(C(te,"path"),"")).join(`
385
- `),structured:Ru("codex_file_change",r,[["status",x(C(e,"status"),"")],["patch_text",ne],["changes",H.map(te=>te)]])}];case"message":let le=C(e,"role");return le!==void 0?le==="assistant"?HI(e,r):[]:[];case"reasoning":let W=Bm(e,"content").join(`
386
- `),Z=Bm(e,"summary");return[{body:W.trim()!==""?W:Z.join(`
387
- `),structured:Ru("codex_reasoning",r,[["content",W],["summary_parts",Z.map(dB)]])}];case"terminalInput":let N=gt(e,"inputText"),M;if(N!==void 0)M=N;else{let te=gt(e,"input");M=te!==void 0?te:x(gt(e,"text"),"")}return[{body:M,structured:Ru("codex_terminal_input",r,[["process_id",x(C(e,"processId"),"")],["input_text",M]])}];default:return[]}}var l$=LI;var Cl={cwd:void 0,status:void 0,processId:void 0,durationMs:void 0,exitCode:void 0,stream:void 0};function ns(e){let t=e!==void 0?e:"";return t===""?{parts:[],cached:"",joinedCount:0}:{parts:[t],cached:t,joinedCount:1}}function xS(e,t){t!==""&&e.parts.push(t)}function TS(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 OB(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 El(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 d$(e){return e.itemId}function tp(e){let t=C(e,"itemId");if(t!==void 0)return t;let r=C(e,"item_id");return r!==void 0?r:k(De(e,"item"),n=>C(n,"id"))}function u$(e,t){let r=tp(t);switch(e){case"item/agentMessage/delta":return D(Xm(t),n=>({TAG:"AssistantDelta",itemId:r,text:n}));case"command/exec/outputDelta":case"item/commandExecution/outputDelta":break;case"item/commandExecution/terminalInteraction":return D(i$(t),n=>({TAG:"TerminalInputDelta",itemId:r,processId:n.terminalProcessId,inputText:n.inputText}));case"item/fileChange/outputDelta":return D(o$(t),n=>({TAG:"FileChangeDelta",itemId:r,patchText:n}));case"item/reasoning/textDelta":return D(Xm(t),n=>({TAG:"ReasoningDelta",itemId:r,text:n}));case"item/started":return D(kS(t),n=>({TAG:"WebSearchDelta",itemId:r,queries:n.queries}));default:return}return D(n$(t),n=>({TAG:"CommandOutputDelta",itemId:r,processId:n.commandProcessId,command:n.command,stream:n.stream,text:n.commandDelta}))}function c$(e){switch(e){case"assistant":return{TAG:"AssistantContent",text:ns(void 0)};case"reasoning":return{TAG:"ReasoningContent",text:ns(void 0)};case"commandOutput":return{TAG:"CommandOutputContent",command:"",processId:void 0,chunks:[]};case"fileChange":return{TAG:"FileChangeContent",patchText:ns(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 CB(e,t){return Ke(t,e.slice(),(r,n)=>r.includes(n)?r:r.concat([n]))}function f$(e,t){if(OB(e)!==El(t))return e;switch(e.TAG){case"AssistantContent":return t.TAG!=="AssistantDelta"||xS(e.text,t.text),e;case"ReasoningContent":return t.TAG!=="ReasoningDelta"||xS(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"||xS(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:CB(e.queries,t.queries)}:e;case"AgentStatusContent":case"AgentTaskUpdateContent":return e}}function EB(e){return e.map(t=>t.text).join("")}function m$(e){let t=C(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 C(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 p$(e){let t=kS(e);if(t!==void 0)return{completedStreamKind:"webSearch",completedItemId:tp(e),completedContent:{TAG:"WebSearchContent",queries:t.queries}};let r=x(De(e,"item"),e),n=s$(e);if(n!==void 0){let s=C(r,"call_id");return{completedStreamKind:"fileChange",completedItemId:s!==void 0?s:C(r,"id"),completedContent:{TAG:"FileChangeContent",patchText:ns(n),status:"completed"}}}let i=m$(r);if(i===void 0)return;let o=Qm(r,0)[0];if(o===void 0)return;let a=C(r,"id");switch(i){case"assistant":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"AssistantContent",text:ns(x(C(o.structured,"content"),o.body))}};case"reasoning":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"ReasoningContent",text:ns(x(C(o.structured,"content"),o.body))}};case"commandOutput":let s=kr(o.structured,"output"),l;return l=typeof s=="string"?s:"",{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"CommandOutputContent",command:x(C(o.structured,"command"),""),processId:C(o.structured,"process_id"),chunks:[{stream:"",text:l}]}};case"fileChange":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"FileChangeContent",patchText:ns(x(C(o.structured,"patch_text"),o.body)),status:"completed"}};case"terminalInput":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"TerminalInputContent",processId:C(o.structured,"process_id"),inputText:x(C(o.structured,"input_text"),o.body)}};case"webSearch":return;case"agentStatus":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"AgentStatusContent",_0:{title:x(C(o.structured,"title"),o.body),body:C(o.structured,"body"),severity:pS(kr(o.structured,"severity")),provider:C(o.structured,"agent_provider"),occurredAtMs:rs(o.structured,"occurred_at_ms"),rawProviderMetadata:De(o.structured,"raw_provider_metadata")}}};case"agentTaskUpdate":return{completedStreamKind:i,completedItemId:a,completedContent:{TAG:"AgentTaskUpdateContent",_0:{title:x(C(o.structured,"title"),o.body),body:C(o.structured,"body"),state:hS(kr(o.structured,"state")),progressLabel:C(o.structured,"progress_label"),provider:C(o.structured,"agent_provider"),occurredAtMs:rs(o.structured,"occurred_at_ms"),rawProviderMetadata:De(o.structured,"raw_provider_metadata")}}}}}function Pl(e,t,r){switch(t.TAG){case"AssistantContent":let n=TS(t.text);return{renderedBody:n,renderedStructured:YI(e,n,r)};case"ReasoningContent":let i=TS(t.text);return{renderedBody:i,renderedStructured:XI(e,i,r)};case"CommandOutputContent":let o=t.chunks,a=o[o.length-1|0],s=yS(e,t.command,EB(o),{cwd:Cl.cwd,status:Cl.status,processId:t.processId,durationMs:Cl.durationMs,exitCode:Cl.exitCode,stream:x(D(a,y=>y.stream),"")},r),l=x(C(s,"command"),""),d=kr(s,"output");return{renderedBody:_S(l,typeof d=="string"?d:""),renderedStructured:s};case"FileChangeContent":let c=TS(t.patchText),f;return f=r==="completed"||t.status!=="started"?"completed":"started",{renderedBody:c,renderedStructured:bS(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",l$(r)],["process_id",x(t.processId,"")],["input_text",p]])};case"WebSearchContent":let m=t.queries;return{renderedBody:vS(m),renderedStructured:t$(e,m,r)};case"AgentStatusContent":let h=t._0,_=$u(h.body);return{renderedBody:Iu(h.title,_),renderedStructured:SS(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=$u(g.body);return{renderedBody:Iu(g.title,b!==void 0?b:g.progressLabel),renderedStructured:wS(e,{title:g.title,body:b,state:g.state,progressLabel:g.progressLabel,provider:g.provider,occurredAtMs:g.occurredAtMs,rawProviderMetadata:g.rawProviderMetadata},r)}}}function h$(e){return e.flatMap((t,r)=>{let n=ke(t);if(n===void 0)return[];let i=m$(n);return i!==void 0?i==="webSearch"?[]:Qm(n,r).filter(o=>o.body.trim()!=="").map(o=>({snapshotIndex:r,projItemId:C(n,"id"),projStreamKind:i,projBody:o.body,projStructured:o.structured})):[]})}function AS(e,t){let r=x(C(e,"kind"),"codex_output"),n=Object.assign({},e);return n.item_id=t,n.transcript_unit_id=r+":"+t,n}function OS(e,t,r,n){if(r==="webSearch")return"local-codex-search-"+Gn(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-"+Gn(e+":"+t+":"+i+n).slice(0,32)}function Mu(e){let t=De(e,"turn"),r=De(e,"item"),n=k(r,d=>De(d,"turn")),i=k(t,d=>C(d,"id"));if(i!==void 0)return i;let o=C(e,"turnId");if(o!==void 0)return o;let a=C(e,"turn_id");if(a!==void 0)return a;let s=k(r,d=>C(d,"turnId"));if(s!==void 0)return s;let l=k(r,d=>C(d,"turn_id"));return l!==void 0?l:k(n,d=>C(d,"id"))}function bi(e){return e!==void 0?e:null}var zu="pipeline/turnMappingReady",Il="pipeline/turnMappingFailed",g$="Codex completed without producing a response.",PB="linzumi_agent_reply",RB="The agent ended its turn after narrating an intent without posting a reply or taking any action.",IB="agent narrated intent but posted no reply and took no action",$B="Stopped after repeated empty responses in a row";function MB(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 w$="Codex emitted unsupported tool call";function jB(e){return e!==void 0?e.startsWith(w$):!1}function y$(e){switch(e){case"assistant":case"reasoning":case"webSearch":return!1;default:return!0}}function zB(e){if(e===void 0)return;let t=C(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(!se(C(e,"status"),"completed"))return;let n=kr(e,"error"),i=0;if(n!==void 0){if(n!==null)return;i=2}else i=2;if(i===2){let o=kr(e,"success"),a=0;if(typeof o=="boolean"){if(!o)return;a=3}else a=3;if(a===3){let s=x(C(e,"tool"),""),l=s.split("__");return x(l[l.length-1|0],s)===PB?"ReplyEvidence":"ActionEvidence"}}}}}function k$(e,t){let r=zB(t);if(r!==void 0){r==="ReplyEvidence"?e.agentReplyToolCallSeen=!0:e.agentActionToolCallSeen=!0;return}}function NB(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 x$(e){if(e===void 0)return;let t=C(e,"codex_protocol_failure_reason"),r=t!==void 0?t:C(e,"protocolFailureReason");if(r!==void 0)return r;let n=C(e,"type");if(n===void 0)return;switch(n){case"custom_tool_call_output":case"function_call_output":break;default:return}let i=C(e,"output"),o;if(i!==void 0)o=i;else{let a=C(e,"result");if(a!==void 0)o=a;else{let s=C(e,"text");o=s!==void 0?s:C(e,"content")}}return D(NB(o),a=>w$+": "+a)}function GB(e){return Ke(e,void 0,(t,r)=>t!==void 0?t:x$(ke(r)))}function T$(){return{phase:"running",turns:new Map,terminalTurnIds:new Set,bufferedTurns:new Map,consecutiveEmptyTurns:0,lastUpstreamErrorSummary:void 0,consecutiveIsolatedRejections:0,costCap402Seen:!1}}function FB(e){switch(e){case"turn/aborted":case"turn/canceled":case"turn/cancelled":return"interrupted";case"turn/failed":return"failed";default:return}}function DB(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 qB(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 LB=new RegExp("<[^>]*>","g"),UB=new RegExp(`data:[^"' )]+`,"g"),ZB=new RegExp("\\s+","g");function Bo(e){if(e===void 0)return;let t=e.replace(LB," ").replace(UB,"").replace(ZB," ").trim().slice(0,180);if(t!=="")return t}function Ho(e){if(e!==void 0&&typeof e=="number"&&isFinite(e))return e}function ap(e){let t=k(De(e,"diagnostic_payload"),o=>De(o,"error")),r=k(t,o=>De(o,"codexErrorInfo")),n=k(r,o=>De(o,"responseStreamDisconnected")),i=[Ho(k(n,o=>kr(o,"httpStatusCode"))),Ho(k(r,o=>kr(o,"httpStatusCode"))),Ho(k(r,o=>kr(o,"statusCode"))),Ho(k(r,o=>kr(o,"status"))),Ho(k(t,o=>kr(o,"httpStatusCode"))),Ho(k(t,o=>kr(o,"statusCode"))),Ho(k(t,o=>kr(o,"status")))];return Ke(i,void 0,(o,a)=>o!==void 0?o:a)}function WB(e){let t=C(e,"diagnostic_summary"),r=t!==void 0?t:k(k(De(e,"diagnostic_payload"),o=>De(o,"error")),o=>C(o,"message")),n=k(r,o=>Bo(o));if(n===void 0)return;let i=ap(e);return i!==void 0?"Model gateway error (HTTP "+i.toString()+"): "+n:"Model gateway error: "+n}var VB=new RegExp("(?:<!doctype\\s+html|<html(?:\\s|>))","i"),HB=new RegExp("cloudflare|cf-ray|\\bblocked\\b|access denied|\\bchallenge\\b|attention required","i"),BB=new RegExp("cloudflare|cf-ray","i"),KB=new RegExp("\\bblocked\\b|access denied","i"),JB=new RegExp("attention required","i");function YB(e){let t=ap(e);if(t===void 0||t!==401&&t!==403)return;let r=k(De(e,"diagnostic_payload"),i=>De(i,"error")),n=Ke([C(e,"diagnostic_summary"),k(r,i=>C(i,"message")),C(e,"message")],void 0,(i,o)=>i!==void 0?i:o!==void 0&&VB.test(o)&&HB.test(o)?o:void 0);return D(n,i=>{let o=BB.test(i),a=KB.test(i),s=JB.test(i);return{edgeStatus:t,edgeSignature:o?"cloudflare":a?"blocked":s?"attention_required":"challenge"}})}function XB(e){return e!==void 0?e===402||e===408||e===425||e===429?!0:e>=500?e<=599:!1:!1}function QB(e){return e!==void 0&&e>=400&&e<=499&&e!==402&&e!==408&&e!==425?e!==429:!1}function eK(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(D(t,o=>o.trim()),"");return i===""?n:n+" Upstream said: "+i}function tK(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 rK(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(D(e,n=>n.trim()),"");return r===""?"Tool execution failed: "+t:"Tool execution failed ("+r+"): "+t}function Nu(e){let t=k(De(e,"diagnostic_payload"),i=>De(i,"error")),r=C(e,"message"),n;if(r!==void 0)n=r;else{let i=C(e,"reason");if(i!==void 0)n=i;else{let o=k(De(e,"error"),a=>C(a,"message"));if(o!==void 0)n=o;else{let a=C(e,"error");if(a!==void 0)n=a;else{let s=C(e,"diagnostic");if(s!==void 0)n=s;else{let l=k(t,d=>C(d,"message"));n=l!==void 0?l:k(k(t,d=>De(d,"error")),d=>C(d,"message"))}}}}}return Bo(n)}var nK=new RegExp("^(?:model_request_rejected|invalid_request_error|invalid_request|request_rejected|content_policy_violation|content_filter|input_validation_error)$","i"),iK=new RegExp("\\bmodel request was rejected\\b|\\bmodel_request_rejected\\b","i");function oK(e){let t=k(De(e,"diagnostic_payload"),o=>De(o,"error")),r=k(t,o=>De(o,"error")),n=De(e,"error"),i=[[k(t,o=>C(o,"code")),k(t,o=>C(o,"message"))],[k(t,o=>C(o,"type")),k(t,o=>C(o,"message"))],[k(r,o=>C(o,"code")),k(r,o=>C(o,"message"))],[k(r,o=>C(o,"type")),k(r,o=>C(o,"message"))],[k(n,o=>C(o,"code")),k(n,o=>C(o,"message"))],[k(n,o=>C(o,"type")),k(n,o=>C(o,"message"))],[C(e,"code"),C(e,"message")],[C(e,"type"),C(e,"message")]];return Ke(i,void 0,(o,a)=>{if(o!==void 0)return o;let s=D(a[0],l=>l.trim());if(s!==void 0&&s!==""&&nK.test(s))return{colocatedMessage:a[1]}})}function aK(e){let t=oK(e),r=Nu(e),n=r!==void 0?iK.test(r):!1;if(t===void 0&&!n)return;let i=Bo(k(t,o=>o.colocatedMessage));return i!==void 0?i:r!==void 0?r:""}function sK(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(D(e,n=>n.trim()),"");return r===""?"The model request was rejected: "+t:"The model request was rejected ("+r+"): "+t}var lK=new RegExp("^provider_outage$","i"),dK=new RegExp("rejecting requests|experiencing an outage|provider outage","i");function uK(e){let t=k(De(e,"diagnostic_payload"),d=>De(d,"error")),r=k(t,d=>De(d,"error")),n=De(e,"error");if(![k(t,d=>C(d,"code")),k(t,d=>C(d,"type")),k(r,d=>C(d,"code")),k(r,d=>C(d,"type")),k(n,d=>C(d,"code")),k(n,d=>C(d,"type")),C(e,"code"),C(e,"type")].some(d=>{let u=D(d,c=>c.trim());return u!==void 0&&u!==""?lK.test(u):!1}))return;let a=[k(t,d=>C(d,"message")),k(r,d=>C(d,"message")),k(n,d=>C(d,"message")),C(e,"message"),C(e,"reason")],s=Ke(a,void 0,(d,u)=>{if(d!==void 0)return d;let c=Bo(u);if(c!==void 0&&dK.test(c))return c});if(s!==void 0)return s;let l=Nu(e);return l!==void 0?l:""}function cK(e){let t=x(D(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 fK(e){let t="the model provider rejected this request and produced no response (a one-off retry did not help).",r=x(D(e,n=>n.trim()),"");return r===""?"The model request was rejected: "+t:"The model request was rejected ("+r+"): "+t}function mK(e,t,r,n){return e?{dispositionKind:"storm",dispositionRetryable:!1,dispositionReason:cK(r)}:t<1?{dispositionKind:"isolated_retry",dispositionRetryable:!0,dispositionReason:sK(n)}:{dispositionKind:"isolated_terminal",dispositionRetryable:!1,dispositionReason:fK(n)}}var pK=new RegExp("\\bapply_patch\\b[^]*\\bincompatible\\b|\\bin-flight tool future\\b[^]*\\bfail","i"),hK=new RegExp("\\btools::router\\b[^]*\\bfatal\\b|\\bresponse\\.failed\\b","i"),_K=new RegExp("(tool.*fatal|fatal.*tool|response[._]failed|tool_failure)","i");function gK(e){return pK.test(e)?!0:hK.test(e)}function yK(e){let t=C(e,"kind"),r;if(t!==void 0)r=t;else{let a=C(e,"type");if(a!==void 0)r=a;else{let s=k(De(e,"error"),l=>C(l,"kind"));r=s!==void 0?s:k(De(e,"error"),l=>C(l,"type"))}}let n=r!==void 0?_K.test(r):!1,i=Nu(e),o=i!==void 0?gK(i):!1;if(n||o)return i!==void 0?i:""}function b$(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 bK(e){if(e===void 0)return;let t=fl(e,"{");if(t===void 0)return;let r=pa(e.slice(t)),n=r!==void 0?r:pa(e.slice(t,e.lastIndexOf("}")+1|0));if(n===void 0||!se(C(n,"type"),"error"))return;let i=De(n,"error");if(i===void 0)return;let o=C(i,"type");return{envelopeStatus:Ho(kr(n,"status")),envelopeErrorType:o!==void 0?o:C(i,"code"),envelopeMessage:C(i,"message")}}function vK(e){let t=De(e,"error"),r=k(De(e,"diagnostic_payload"),h=>De(h,"error")),n=k(r,h=>De(h,"error")),i=ap(e),o=k(t,h=>C(h,"type")),a;if(o!==void 0)a=o;else{let h=k(t,_=>C(_,"code"));if(h!==void 0)a=h;else{let _=k(r,g=>C(g,"type"));if(_!==void 0)a=_;else{let g=k(r,b=>C(b,"code"));if(g!==void 0)a=g;else{let b=k(n,y=>C(y,"type"));if(b!==void 0)a=b;else{let y=k(n,v=>C(v,"code"));if(y!==void 0)a=y;else{let v=b$(k(t,S=>kr(S,"codexErrorInfo")));a=v!==void 0?v:b$(k(r,S=>kr(S,"codexErrorInfo")))}}}}}}let s=Bo(k(t,h=>C(h,"message"))),l;if(s!==void 0)l=s;else{let h=Bo(k(n,_=>C(_,"message")));if(h!==void 0)l=h;else{let _=Bo(k(r,g=>C(g,"message")));l=_!==void 0?_:Nu(e)}}if(i===void 0&&a===void 0){let h=Ke([k(t,_=>C(_,"message")),k(n,_=>C(_,"message")),k(r,_=>C(_,"message")),C(e,"message"),C(e,"reason"),C(e,"error"),C(e,"diagnostic"),C(e,"diagnostic_summary")],void 0,(_,g)=>_!==void 0?_:bK(g));if(h!==void 0){i=h.envelopeStatus,a=h.envelopeErrorType;let _=Bo(h.envelopeMessage);l=_!==void 0?_:l}}let c=D(a,h=>h.trim()),f;f=c!==void 0&&c!==""?c:void 0;let p=ze([D(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 v$(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 A$(e){return e===429||e>=500&&e<=599?"TransientRetryClass":"DeterministicRetryClass"}var SK=new RegExp("upstream model stream stalled","i"),wK=new RegExp("\\(HTTP (\\d{3})\\)");function O$(e){let t=wK.exec(e);if(t!=null)return k(k(t.slice(1)[0],r=>r),yi)}function kK(e){let t=O$(e);return t!==void 0?A$(t):SK.test(e)?"TransientRetryClass":"DeterministicRetryClass"}function CS(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,A$(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,kK(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 S$(e){return e.swLastUpstreamErrorHttpStatus===429?!0:[e.swLastUpstreamErrorReason,e.swLastErrorDiagnosticText].some(r=>r!==void 0?se(O$(r),429):!1)}var xK=" (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 TK(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 AK(e){return" (An automatic resume was attempted at "+new Date(e).toISOString()+" after the stream stalled; it did not complete.)"}var C$=" (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 E$(e){return e>0?" ("+e.toString()+" automatic "+(e===1?"retry":"retries")+" did not help.)":""}var ES={autoRetryPreFirstByteStall:!1,messageStateRetryable:!1,costCapAutoRetrySuppressed:!1,messageStateFate:void 0,autoResumeMidStreamStall:!1,midStreamResumeRateLimitSuppressed:!1,midStreamResumeAttemptBurnedAtMs:void 0};function rp(e,t){return kr(e,t)===!0}function OK(e){let t=kr(e,"fate");if(typeof t=="string")return Wm(t)}function CK(e,t,r,n){let i=e==="turn/failed"&&se(k(De(t,"error"),y=>C(y,"code")),"idle_stream_timeout"),o=e==="turn/failed"&&rp(t,"retryable"),a=e==="turn/failed"?OK(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=CS(r)!=="deterministic",u=rp(t,"preFirstByteStall")&&d,c=rp(t,"midStreamResumableStall"),f=c&&S$(r),p=CS({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:S$(r)?"rate_limited":"transient_upstream",autoResumeMidStreamStall:g,midStreamResumeRateLimitSuppressed:b,midStreamResumeAttemptBurnedAtMs:l?s:void 0}}function EK(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 sp(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 lp(e){let t=e.turns.values().toArray().filter(n=>n.phase==="ActiveTurnPhase");return t.length!==1?void 0:t[0].turnId}function ip(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 ju(e){let t=e.nextStreamSnapshotIndex;return e.nextStreamSnapshotIndex=e.nextStreamSnapshotIndex+1|0,t}function Rl(e){let t=C(e,"reason");if(t!==void 0)return t;let r=C(e,"message");if(r!==void 0)return r;let n=k(De(e,"error"),i=>C(i,"message"));return n!==void 0?n:x(C(e,"error"),"codex_turn_aborted")}function PK(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 RK(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 op(e,t,r,n,i,o,a,s){let l;if(s.autoRetryPreFirstByteStall||s.costCapAutoRetrySuppressed){let _=o.autoRetryAttemptsForSeq;l=n+E$(_!==void 0?_(t.sourceSeq):0)+(s.costCapAutoRetrySuppressed?C$:"")}else l=n;if(s.midStreamResumeRateLimitSuppressed&&(l=l+xK),r==="failed"){let _=s.midStreamResumeAttemptBurnedAtMs;if(_!==void 0)l=l+TK(_);else{let g=k(o.midStreamResumeAttemptAtMsForSeq,b=>b(t.sourceSeq));g!==void 0&&(l=l+AK(g))}}t.items.forEach(_=>{if(!_.posted||cS(_.emittedStreamState))return;let g=Pl(_.wireItemKey,_.content,a),b=Object.fromEntries(ip(o,t,_,g).concat([["stream_snapshot_index",ju(_)],["terminal_outcome",r],["reason",n]])),y={TAG:"Enqueue",kind:ts,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:Ol,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),sp(e,t.turnId)}function P$(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=qI(c),p=x(l,f),m={identity:c,itemKey:f,wireItemKey:p,clientMessageId:OS(n.instanceId,e.turnId,t,p),content:c$(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?se(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 R$(e,t,r,n,i,o){let a=Pl(t.wireItemKey,t.content,n);if(t.posted){let u=Object.fromEntries(ip(i,e,t,a).concat([["delta_index",r],["stream_snapshot_index",ju(t)]])),c=t.itemKey,f={TAG:"Enqueue",kind:Cu,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(ip(i,e,t,a).concat([["delta_index",r],["stream_snapshot_index",ju(t)]])),d={TAG:"Enqueue",kind:Ou,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 np(e,t,r,n){if(e.phase==="ActiveTurnPhase"){let l=P$(e,El(t),d$(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=f$(l.content,t);let d=l.nextDeltaIndex;l.nextDeltaIndex=l.nextDeltaIndex+1|0;let u=El(t),c;return c=u==="terminalInput"?"completed":"streaming",R$(e,l,d,c,r,n)}let o=[["turn_id",e.turnId],["stream_kind",El(t)]],s={TAG:"Log",event:"pipeline.loop.delta_for_completing_turn",fields:Object.fromEntries(o)};n.push(s)}function IK(e,t,r,n){t.errorNotificationCount=t.errorNotificationCount+1|0;let i=yK(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=aK(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=uK(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=ap(r),l=YB(r);if(l!==void 0&&(t.edgeBlockEvidence=l),s!==void 0){let m=t.lastUpstreamErrorHttpStatus;m!==void 0&&s<=m||(t.lastUpstreamErrorHttpStatus=s)}if(se(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=WB(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=Nu(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=vK(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 $K(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 MK(e,t,r,n){let i=De(t,"item");i!==void 0&&e.protocolFailureReason===void 0&&(e.protocolFailureReason=x$(i)),k$(e,i!==void 0?i:t);let o=p$(t);if(o===void 0)return;if(o.completedStreamKind==="webSearch"){let c=o.completedContent,f;return f=c.TAG==="WebSearchContent"?c.queries:[],np(e,{TAG:"WebSearchDelta",itemId:o.completedItemId,queries:f},r,n)}if(e.phase==="ActiveTurnPhase"){let c=P$(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=Pl(c.wireItemKey,c.content,"streaming");return c.posted&&se(p.renderedBody,c.lastEmittedBody)?void 0:R$(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 jK(e,t,r,n){let i=C(t,"turnId"),o=x(C(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 op(e,a,"failed",o,n,r,"failed",ES);let s=e.bufferedTurns.get(i);e.bufferedTurns.delete(i);let l=[["level","warn"],["turn_id",i],["buffered_event_count",x(D(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}),sp(e,i)}function zK(e,t,r,n,i){let o=kr(r,"items"),a=o!==void 0?Array.isArray(o)?o:[]:[];t.protocolFailureReason===void 0&&(t.protocolFailureReason=GB(a)),a.forEach(F=>k$(t,ke(F)));let s=h$(a),l=new Set,d=new Map;s.forEach((F,Ee)=>{let ve=F.projItemId;if(ve===void 0)return;let _e=t.items.find(Ve=>Ve.posted&&!l.has(Ve.itemKey)&&Ve.identity.streamKind===F.projStreamKind?se(Ve.identity.itemId,ve):!1);if(_e!==void 0){l.add(_e.itemKey),d.set(Ee,_e);return}});let u=new Map;t.items.forEach(F=>{if(!(F.posted&&!l.has(F.itemKey)&&F.identity.itemId===void 0))return;let Ee=F.identity.streamKind;u.set(Ee,x(u.get(Ee),0)+1|0)});let c=new Map;s.forEach((F,Ee)=>{if(d.has(Ee))return;let ve=F.projStreamKind;c.set(ve,x(c.get(ve),0)+1|0)});let f=(F,Ee)=>{let ve=Pl(F.wireItemKey,F.content,"completed").renderedBody.trim(),_e=Ee.projBody.trim();return _e.startsWith(ve)?!0:ve.startsWith(_e)};s.forEach((F,Ee)=>{if(d.has(Ee))return;let ve=F.projStreamKind,_e=se(c.get(ve),u.get(ve));if(F.projItemId!==void 0&&!_e)return;let Ve=t.items.find(Kt=>Kt.posted&&!l.has(Kt.itemKey)&&Kt.identity.streamKind===F.projStreamKind?Kt.identity.itemId===void 0:!1);if(Ve!==void 0&&(F.projItemId===void 0||f(Ve,F))){l.add(Ve.itemKey),d.set(Ee,Ve);return}});let p=d.entries().toArray();t.items.forEach(F=>{let Ee=p.find(Kt=>Kt[1].itemKey===F.itemKey);if(Ee!==void 0){let Kt=s[Ee[0]];if(Kt===void 0)return;let dn=Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["item_key",F.itemKey],["item_id",F.wireItemKey],["stream_kind",F.identity.streamKind],["item_index",F.identity.itemIndex],["source_seq",t.sourceSeq],["client_message_id",F.clientMessageId],["body",Kt.projBody],["structured",AS(Kt.projStructured,F.wireItemKey)],["stream_snapshot_index",ju(F)],["terminal_outcome","completed"]]),vi={TAG:"Enqueue",kind:ts,data:dn,coalesceKey:void 0,resolution:"MustAck"};i.push(vi),F.emittedStreamState="completed",F.lastEmittedBody=Kt.projBody;return}if(!F.posted||cS(F.emittedStreamState))return;let ve=Pl(F.wireItemKey,F.content,"completed"),_e=Object.fromEntries(ip(n,t,F,ve).concat([["stream_snapshot_index",ju(F)],["terminal_outcome","completed"]])),Ve={TAG:"Enqueue",kind:ts,data:_e,coalesceKey:void 0,resolution:"MustAck"};i.push(Ve),F.emittedStreamState="completed",F.lastEmittedBody=ve.renderedBody}),s.forEach((F,Ee)=>{if(d.has(Ee))return;let ve=F.projItemId,_e=ve!==void 0?ve:t.turnId+":"+F.projStreamKind+":snapshot:"+F.snapshotIndex.toString(),Ve=F.projItemId,Kt=Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["item_key",t.turnId+":"+F.projStreamKind+":"+(Ve!==void 0?Ve:"snapshot:"+F.snapshotIndex.toString())],["item_id",_e],["stream_kind",F.projStreamKind],["snapshot_index",F.snapshotIndex],["source_seq",t.sourceSeq],["client_message_id",OS(n.instanceId,t.turnId,F.projStreamKind,_e)],["body",F.projBody],["structured",AS(F.projStructured,_e)],["stream_snapshot_index",1]]),dn={TAG:"Enqueue",kind:Eu,data:Kt,coalesceKey:void 0,resolution:"MustAck"};i.push(dn)});let m=t.items.some(F=>F.identity.streamKind==="assistant"?F.posted:!1)||s.some(F=>F.projStreamKind==="assistant"),h=t.agentActionToolCallSeen||t.items.some(F=>F.posted?y$(F.identity.streamKind):!1)||s.some(F=>y$(F.projStreamKind)),_=n.linzumiAgentSession&&m&&!t.agentReplyToolCallSeen&&!h,g=m&&!_,b=t.protocolFailureReason,y=jB(b)&&g,v=y?void 0:b,S;if(!g&&b===void 0&&t.lastUpstreamErrorReason===void 0){let F;if(_)F={cause:IB};else{let Ee=t.lastUpstreamErrorSummary;F=EK(t,s.length,Ee!==void 0?Ee:e.lastUpstreamErrorSummary)}S=F}else S=void 0;let A=!g&&v===void 0&&t.upstreamRejectedSeen,R=!g&&v===void 0&&t.providerOutageFlaggedSeen,z=QB(t.lastUpstreamErrorHttpStatus),H=!g&&v===void 0&&t.edgeBlockEvidence!==void 0,ce=A&&!R&&!z,ne=R||ce?mK(R,e.consecutiveIsolatedRejections,t.providerOutageDetail,t.upstreamRejectedDetail):void 0,ie;if(ne!==void 0)switch(ne.dispositionKind){case"isolated_retry":ie=!0;break;case"storm":case"isolated_terminal":ie=!1;break}else ie=!1;ce?e.consecutiveIsolatedRejections=e.consecutiveIsolatedRejections+1|0:e.consecutiveIsolatedRejections=0;let le=!g&&v===void 0&&t.lastUpstreamErrorReason===void 0&&t.lastErrorDiagnosticText===void 0&&!A&&XB(t.lastUpstreamErrorHttpStatus),W=!g&&v===void 0&&t.lastUpstreamErrorReason===void 0&&z,Z=!g&&v===void 0&&t.lastUpstreamErrorReason===void 0&&!A&&!le&&!W&&t.toolFatalSeen,$;if(ne!==void 0)$=ne.dispositionReason;else if(W){let F=t.upstreamRejectedDetail;$=eK(t.lastUpstreamErrorHttpStatus,F!==void 0?F:t.lastErrorDiagnosticText)}else if(le)$=tK(t.lastUpstreamErrorHttpStatus);else if(Z)$=rK(t.toolFatalDetail);else{let F=t.lastUpstreamErrorReason;$=F!==void 0?F:_?RB:S!==void 0?g$+" ["+S.cause+"]":g$}let N=S!==void 0&&v===void 0&&t.modelInteractionSeen&&t.lastErrorDiagnosticText===void 0&&!A&&!le&&!W&&!Z;N?e.consecutiveEmptyTurns=e.consecutiveEmptyTurns+1|0:e.consecutiveEmptyTurns=0;let M=N&&e.consecutiveEmptyTurns>3,te=N&&!M||ie,oe=n.autoRetryAttemptsForSeq,Ae=oe!==void 0?oe(t.sourceSeq):0,Le=te&&e.costCap402Seen&&Ae<2,Ne=te&&!Le;if(H){let F=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",F!==void 0?F.edgeStatus:null],["signature",Ee!==void 0?Ee.edgeSignature:null]])};i.push(_e)}let ut=M?$B+" ("+e.consecutiveEmptyTurns.toString()+" in a row"+(S!==void 0?": "+S.cause:"")+").":void 0,je=v!==void 0?v:g?void 0:ut!==void 0?ut:$,ht=N&&!M?Ae:0,Ye=D(je,F=>F+E$(ht)+(Le?C$:"")),We=S!==void 0&&!M&&!A&&!le&&!W&&!Z||ie||H,jt;if(We||R)jt="transient_upstream";else if(le){let F=t.lastUpstreamErrorHttpStatus;jt=F!==void 0?vu(F):"transient_upstream"}else jt="deterministic";if(Le){let F=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["reason",bi(je)],["isolated_rejection_retry_suppressed",ie]],ve={TAG:"Log",event:"codex.empty_turn_auto_retry_suppressed_cost_cap",fields:Object.fromEntries(F)};i.push(ve)}if(M){let F=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",bi(D(S,Ve=>Ve.cause))],["last_upstream_error",bi(F!==void 0?F:e.lastUpstreamErrorSummary)]],_e={TAG:"Log",event:"codex.empty_turn_loop_guard_tripped",fields:Object.fromEntries(Ee)};i.push(_e)}if(y){let F=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["reason",bi(b)]],ve={TAG:"Log",event:"codex.turn_completed_with_unsupported_tool_call_ignored",fields:Object.fromEntries(F)};i.push(ve)}else if(b!==void 0){let F=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["reason",bi(b)]],ve={TAG:"Log",event:"codex.turn_completed_with_protocol_failure",fields:Object.fromEntries(F)};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",We],["empty_turn_loop_guard_tripped",M]])};i.push(Ee)}if(!m){let F=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",bi(t.lastErrorDiagnosticText)],["last_upstream_error_reason",bi(t.lastUpstreamErrorReason)],["last_upstream_error_summary",bi(t.lastUpstreamErrorSummary)],["empty_turn_cause",bi(D(S,Ve=>Ve.cause))],["tool_fatal_seen",Z],["tool_fatal_detail",bi(t.toolFatalDetail)],["upstream_rejected_seen",A],["upstream_rejected_detail",bi(t.upstreamRejectedDetail)],["upstream_terminal_4xx",W],["last_upstream_error_http_status",F!==void 0?F:null],["provider_outage_flagged",R],["isolated_rejection_retry_granted",ie],["rejection_disposition",ne!==void 0?ne.dispositionKind:null],["consecutive_isolated_rejections",e.consecutiveIsolatedRejections],["retryable_empty_turn",We],["empty_turn_loop_guard_tripped",M],["cost_cap_auto_retry_suppressed",Le]],_e={TAG:"Log",event:"codex.turn_completed_without_assistant_output",fields:Object.fromEntries(Ee)};i.push(_e)}let xr;if(Ye!==void 0){let F=k(n.ladderHistoryForSeq,_e=>_e(t.sourceSeq,jt)),Ee=t.lastUpstreamErrorSummary,ve;if(Ee!==void 0)ve=[["upstream_error",Ee]];else{let _e=e.lastUpstreamErrorSummary;ve=_e!==void 0?[["upstream_error",_e]]:[]}xr=[["status","failed"],["reason",Ye]].concat((We?[["retryable",!0]]:[]).concat([["fate",jt]])).concat((F!==void 0?[["ladder",F]]:[]).concat(H?[["failure_class","edge_blocked"]]:[]).concat(ve))}else xr=[["status","processed"]];let Lt=Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["seq",t.sourceSeq]].concat(xr)),Xe={TAG:"Enqueue",kind:Ol,data:Lt,coalesceKey:void 0,resolution:"MustAck"};i.push(Xe),Ye===void 0&&(e.lastUpstreamErrorSummary=void 0),i.push(Ye!==void 0?{TAG:"TurnTerminal",turnId:t.turnId,outcome:"failed",reason:Ye,retryableEmptyTurn:Ne,autoResumeMidStreamStall:!1,fate:jt}:{TAG:"TurnTerminal",turnId:t.turnId,outcome:"completed",reason:void 0,retryableEmptyTurn:!1,autoResumeMidStreamStall:!1,fate:void 0}),e.turns.delete(t.turnId),sp(e,t.turnId)}function NK(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 zK(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 GK(e,t,r,n){let i=t.method,o=x(t.params,{});if(i===zu)return;if(i===Il)return jK(e,o,r,n);if(!DB(i))return;let a=Mu(o),s=a!==void 0?a:lp(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?PK(e,s,b):void 0}if(c===void 0)return $K(e,s,{TAG:"HarnessNotification",_0:t},n);if(c.notificationCount=c.notificationCount+1|0,qB(i)&&(c.modelInteractionSeen=!0),i==="turn/started")return;if(i==="turn/completed")return RK(c,n);let f=FB(i);if(f!==void 0){let b=CK(i,o,v$(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",Rl(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",Rl(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",Rl(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",Rl(o)],["evidence_class",CS(v$(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",Rl(o)],["flavor",rp(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 op(e,c,f,Rl(o),n,r,y,b)}if(i==="error")return IK(e,c,o,n);if(i==="item/completed"||i==="response_item")return MK(c,o,r,n);let p=u$(i,o);if(p===void 0)return;if(c.phase!=="ActiveTurnPhase")return np(c,p,r,n);if(El(p)!=="reasoning")return c.reasoningStepsWithoutProgress=0,np(c,p,r,n);if(c.reasoningStepsWithoutProgress=c.reasoningStepsWithoutProgress+1|0,c.reasoningStepsWithoutProgress<=64)return np(c,p,r,n);let h=MB(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),op(e,c,"failed",h,n,r,"interrupted",ES)}let d={TAG:"Log",event:"pipeline.loop.notification_without_turn",fields:Object.fromEntries([["method",i]])};n.push(d)}function FK(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=>op(e,u,"failed",r,i,n,"interrupted",ES)),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}),sp(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 I$(e,t,r,n){switch(t.TAG){case"HarnessNotification":case"CompletionSnapshot":break;case"Lifecycle":return FK(e,t.kind,t.reason,r,n)}switch(e.phase){case"running":switch(t.TAG){case"HarnessNotification":return GK(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 NK(e,c,t.snapshot,r,n);case"Lifecycle":return}case"closing":let o=[["source",Al(t)]],s={TAG:"Log",event:"pipeline.loop.event_after_close",fields:Object.fromEntries(o)};n.push(s);return;case"dead":let l=[["source",Al(t)]],u={TAG:"Log",event:"pipeline.loop.event_after_death",fields:Object.fromEntries(l)};n.push(u);return}}function DK(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=>I$(e,l,t,r))})}function $$(e,t,r){let n=[];return e.phase==="running"&&DK(e,r,n),I$(e,t,r,n),n}var PS=2;var qK=[500,1e3,2500,5e3,1e4,3e4],LK=1440*60*1e3;function dp(e,t){return e+"\0"+t}function M$(e,t){let r=Math.max(1,Math.ceil(t*e.length)|0);return x(e[r-1|0],0)}function UK(e){if(e.length===0)return;let t=e.toSorted((r,n)=>r-n);return{p50Ms:M$(t,.5),p95Ms:M$(t,.95),maxMs:x(t[t.length-1|0],0),ackedInWindow:t.length}}function ZK(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}function j$(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,qK.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},z={contents:void 0},H={contents:void 0},ce=Math.max(1,x(e.maxInFlightPushes,1)),ne={contents:0},ie={contents:[]},le={contents:Promise.resolve()},W=()=>s.contents[l.contents],Z=()=>({totalEnqueued:p.contents,totalAcked:m.contents,totalDroppedBestEffort:_.contents,totalPermanentFailures:g.contents,totalExpiredOnRecovery:b.contents,lastEntrySeq:f.contents-1}),$=e.persistDir;if($!==void 0){let U=uS($,i.contents),Q=GI(U,t),re=x(e.journalRecoveryMaxAgeMs,LK),He=o(),ot=[];Q.pendingEntries.forEach(ct=>{if(He-ct.enqueuedAtMs>re){ot.push(ct);return}let Et={entry:ct,state:"EntryQueued",outcome:void 0,retryTimer:void 0};s.contents.push(Et);let St=ct.coalesceKey;if(St!==void 0){d.set(dp(ct.kind,St),Et);return}}),u.contents=Q.kv,p.contents=Q.counters.totalEnqueued,m.contents=Q.counters.totalAcked,_.contents=Q.counters.totalDroppedBestEffort,g.contents=Q.counters.totalPermanentFailures,b.contents=Q.counters.totalExpiredOnRecovery+ot.length|0,f.contents=Q.counters.lastEntrySeq+1;let st=FI(U,()=>({pendingEntries:s.contents.slice(l.contents).map(ct=>ct.entry),kv:u.contents,counters:Z()}),t,e.journalCompactionThreshold,void 0);if(H.contents=st,ot.length!==0){ot.forEach(St=>st.appendExpired(St.entrySeq));let ct=ot.map(St=>Math.max(0,He-St.enqueuedAtMs)),Et=new Set(ot.map(St=>St.kind));t("outbox_recovery_expired",Object.fromEntries([["level","warn"],["threadKey",i.contents],["expiredEntries",ot.length],["survivingEntries",s.contents.length-l.contents|0],["maxAgeMs",re],["oldestAgeMs",Ke(ct,0,(St,Pt)=>Math.max(St,Pt))],["newestAgeMs",Ke(ct,Number.POSITIVE_INFINITY,(St,Pt)=>Math.min(St,Pt))],["kinds",Et.values().toArray().map(St=>St)]]))}(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 te={remember:(U,Q)=>{u.contents.set(U,Q);let re=H.contents;if(re!==void 0)return re.appendKv(U,Q)},recall:U=>u.contents.get(U)},oe=()=>{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 U=W(),Q=c.length-1|0;for(;Q>=0;){let re=c[Q];if(re!==void 0&&(U!==void 0?U.entry.entrySeq>re.upToSeq:!0)){c.splice(Q,1);let ot=re.timer;ot!==void 0&&clearTimeout(ue(ot)),re.resolve({TAG:"Ok",_0:void 0})}Q=Q-1|0}},Le=U=>{let Q=U.entry.coalesceKey;if(Q===void 0)return;let re=dp(U.entry.kind,Q),He=d.get(re);if(He!==void 0&&He===U){d.delete(re);return}},Ne=(U,Q)=>{let re=U.entry;switch(Q.TAG){case"OutcomeAck":let He=n[re.kind];if(He!==void 0){let St=He.onReply;if(St!==void 0){let Pt;try{St(re.data,Q._0,te),Pt={TAG:"Ok",_0:void 0}}catch(Qo){let ea=X(Qo);Pt={TAG:"Error",_0:Ge(ea)}}Pt.TAG!=="Ok"&&t("outbox_on_reply_failed",Object.fromEntries([["threadKey",i.contents],["entrySeq",re.entrySeq],["kind",re.kind],["error",Pt._0.message]]))}}let ot=H.contents;ot!==void 0&&ot.appendAck(re.entrySeq);break;case"OutcomeSkip":let st=Q._0;t("outbox_entry_skipped",Object.fromEntries([["threadKey",i.contents],["entrySeq",re.entrySeq],["kind",re.kind],["reason",st]]));let ct=H.contents;ct!==void 0&&ct.appendSkip(re.entrySeq,st);break;case"OutcomeFail":if(re.resolution==="MustAck"){let St=H.contents;St!==void 0&&St.appendFail(re.entrySeq);let Pt;try{r(re,Q._0),Pt={TAG:"Ok",_0:void 0}}catch(Qo){let ea=X(Qo);Pt={TAG:"Error",_0:Ge(ea)}}Pt.TAG!=="Ok"&&t("outbox_permanent_failure_callback_failed",Object.fromEntries([["threadKey",i.contents],["entrySeq",re.entrySeq],["error",Pt._0.message]]))}else{let St=H.contents;St!==void 0&&St.appendDrop(re.entrySeq)}break}Le(U),oe(),Ae()},ut=()=>{let U=!0;for(;U;){let Q=W();if(Q!==void 0){let re=Q.outcome;re!==void 0?Ne(Q,re):U=!1}else U=!1}},je=(U,Q)=>{let re=U.entry;switch(Q.TAG){case"OutcomeAck":case"OutcomeSkip":break;case"OutcomeFail":let He=Q._0;re.resolution==="MustAck"?(g.contents=g.contents+1|0,t("outbox_permanent_failure",Object.fromEntries([["threadKey",i.contents],["entrySeq",re.entrySeq],["kind",re.kind],["attempts",re.attempts],["error",He]]))):(_.contents=_.contents+1|0,t("outbox_dropped_best_effort",Object.fromEntries([["threadKey",i.contents],["entrySeq",re.entrySeq],["kind",re.kind],["attempts",re.attempts],["error",He]])));break}U.outcome=Q,U.state="EntryQueued"},ht=U=>{y.length<256?y.push(U):y[v.contents]=U;let Q=v.contents+1|0;v.contents=Q>=256?0:Q},Ye=U=>{let Q=U.retryTimer;if(Q!==void 0){clearTimeout(ue(Q)),U.retryTimer=void 0;return}},We=()=>{if(ne.contents>0)return;let U=ie.contents;ie.contents=[],U.forEach(Q=>Q())},jt=()=>{let U=W();return U===void 0||U.state!=="EntryQueued"||U.outcome!==void 0?!1:U.retryTimer!==void 0},xr={contents:()=>{}},Lt=(U,Q)=>{Ye(U);let re=setTimeout(()=>{if(U.retryTimer=void 0,!(R.contents||S.contents||U.outcome!==void 0))return xr.contents()},Q|0);re.unref(),U.retryTimer=Ze(re)},Xe=async(U,Q,re)=>{let He=U.entry,ot=o(),st;try{st=await e.push(Q[0],Q[1],Q[2],re)}catch(St){let Pt=X(St);st={TAG:"PushFailed",message:Ge(Pt).message,budgetExempt:!1}}if(st.TAG==="Acked")return re(),ht(Math.max(0,o()-ot)),m.contents=m.contents+1|0,je(U,{TAG:"OutcomeAck",_0:st._0});let ct=st.message;if(re(),U.state="EntryQueued",st.budgetExempt)return He.attempts=He.attempts-1|0,h.contents=h.contents+1|0,t("outbox_push_connection_wait",Object.fromEntries([["threadKey",i.contents],["entrySeq",He.entrySeq],["kind",He.kind],["error",ct]])),!R.contents&&!S.contents?Lt(U,1e3):void 0;let Et=a[He.attempts-1|0];return Et!==void 0?(h.contents=h.contents+1|0,t("outbox_push_retry",Object.fromEntries([["threadKey",i.contents],["entrySeq",He.entrySeq],["kind",He.kind],["attempt",He.attempts],["delayMs",Et],["error",ct]])),!R.contents&&!S.contents?Lt(U,Et):void 0):je(U,{TAG:"OutcomeFail",_0:ct})},F=async U=>{let Q=U.entry,re=le.contents,He={contents:()=>{}};le.contents=new Promise((Et,St)=>{He.contents=Et});let ot={contents:!1},st=()=>{if(!ot.contents)return ot.contents=!0,He.contents()};if(U.state="EntryPushing",ne.contents=ne.contents+1|0,await re,R.contents||S.contents||U.outcome!==void 0){U.state="EntryQueued",st(),ne.contents=ne.contents-1|0;return}let ct=n[Q.kind];if(ct!==void 0){let Et;try{Et=ct.build(Q.data,te)}catch(St){let Pt=X(St);Et={TAG:"BuildFailed",_0:Ge(Pt).message}}switch(Et.TAG){case"BuildPush":Q.attempts=Q.attempts+1|0,await Xe(U,[Et.event,Et.payload,Et.timeoutMs],st),ne.contents=ne.contents-1|0;return;case"BuildSkip":st(),je(U,{TAG:"OutcomeSkip",_0:Et._0}),ne.contents=ne.contents-1|0;return;case"BuildFailed":st(),je(U,{TAG:"OutcomeFail",_0:Et._0}),ne.contents=ne.contents-1|0;return}}else{st(),je(U,{TAG:"OutcomeFail",_0:"no outbox builder registered for kind "+Q.kind}),ne.contents=ne.contents-1|0;return}},Ee=()=>{if(ut(),R.contents||S.contents||jt())return We();let U=l.contents;for(;U<s.contents.length&&ne.contents<ce;){let Q=s.contents[U];Q!==void 0&&Q.state==="EntryQueued"&&Q.outcome===void 0&&(Q.retryTimer!==void 0||$n(F(Q).then(()=>Ee()),st=>(t("outbox_drain_loop_error",Object.fromEntries([["threadKey",i.contents]])),Ee(),Promise.resolve()))),U=U+1|0}We()};xr.contents=Ee;let ve=()=>{if(S.contents||R.contents)return;if(W()!==void 0){Promise.resolve().then(()=>{if(!R.contents&&!S.contents)return Ee()});return}},_e=U=>{let Q=f.contents-1,re=W();return(re!==void 0?re.entry.entrySeq>Q:!0)?Promise.resolve({TAG:"Ok",_0:void 0}):new Promise((ot,st)=>{let ct={upToSeq:Q,resolve:ot,timer:void 0};U!==void 0&&(ct.timer=Ze(setTimeout(()=>{let Et=c.indexOf(ct);Et===-1||c.splice(Et,1),ot({TAG:"Error",_0:"outbox flush for "+i.contents+" timed out after "+U.toString()+"ms with "+(s.contents.length-l.contents|0).toString()+" entries pending"})},U|0))),c.push(ct)})},Ve=async U=>{A.contents=!1;let Q=await _e(U);Q.TAG!=="Ok"&&t("outbox_close_flush_timeout",Object.fromEntries([["threadKey",i.contents],["depth",s.contents.length-l.contents|0],["error",Q._0]])),R.contents=!0;let re=l.contents;for(;re<s.contents.length;){let st=s.contents[re];st!==void 0&&Ye(st),re=re+1|0}ne.contents>0&&await Promise.race([new Promise((st,ct)=>{ie.contents.push(()=>st())}),ZK(1e3)]);let He=c.slice();c.splice(0,c.length),He.forEach(st=>{let ct=st.timer;ct!==void 0&&clearTimeout(ue(ct)),st.resolve({TAG:"Error",_0:"outbox for "+i.contents+" closed"})});let ot=H.contents;if(ot!==void 0)return await ot.close()},Kt=(U,Q,re)=>{if(U===void 0)return re;let He=U.coalesce;if(He===void 0)return re;let ot;try{ot={TAG:"Ok",_0:He(Q.data,re)}}catch(st){let ct=X(st);ot={TAG:"Error",_0:Ge(ct)}}return ot.TAG==="Ok"?ot._0:(t("outbox_coalesce_failed",Object.fromEntries([["threadKey",i.contents],["entrySeq",Q.entrySeq],["kind",Q.kind],["error",ot._0.message]])),re)},en={enqueue:U=>{if(!A.contents)return{TAG:"Error",_0:"outbox for "+i.contents+" is closed"};p.contents=p.contents+1|0;let Q=U.coalesceKey,re;if(Q!==void 0){let St=dp(U.kind,Q),Pt=d.get(St);if(Pt!==void 0)if(Pt.state==="EntryQueued")if(Pt.outcome!==void 0)re=void 0;else{Pt.entry.data=Kt(n[U.kind],Pt.entry,U.data);let Gl=H.contents;Gl!==void 0&&Gl.appendCoalesce(Pt.entry.entrySeq,Pt.entry.data),re=Pt.entry.entrySeq}else re=void 0;else re=void 0}else re=void 0;if(re!==void 0)return{TAG:"Ok",_0:re};let He=f.contents;f.contents=f.contents+1;let ot={entrySeq:He,kind:U.kind,data:U.data,coalesceKey:U.coalesceKey,resolution:U.resolution,attempts:0,enqueuedAtMs:o()},st={entry:ot,state:"EntryQueued",outcome:void 0,retryTimer:void 0};s.contents.push(st);let ct=U.coalesceKey;ct!==void 0&&d.set(dp(U.kind,ct),st);let Et=H.contents;return Et!==void 0&&Et.appendEnqueue(ot),ve(),{TAG:"Ok",_0:He}},flush:_e,pause:()=>{S.contents=!0},resume:()=>{if(!S.contents)return;S.contents=!1;let U=l.contents;for(;U<s.contents.length;){let Q=s.contents[U];Q!==void 0&&(Q.entry.attempts=0,Ye(Q)),U=U+1|0}ve()},metrics:()=>{let U=W(),Q=D(H.contents,re=>re.status());return{depth:s.contents.length-l.contents|0,oldestEntryAgeMs:D(U,re=>Math.max(0,o()-re.entry.enqueuedAtMs)),totalEnqueued:p.contents,totalAcked:m.contents,totalRetried:h.contents,totalDroppedBestEffort:_.contents,totalPermanentFailures:g.contents,totalExpiredOnRecovery:b.contents,totalJournalWriteFailures:x(D(Q,re=>re.totalWriteFailures),0),journalDegraded:x(D(Q,re=>re.degraded),!1),paused:S.contents,pushLatency:UK(y)}},close:U=>{let Q=z.contents;if(Q!==void 0)return Q;let re=Ve(x(U,3e4));return z.contents=re,re},journalSettled:()=>{let U=H.contents;return U!==void 0?U.settled():Promise.resolve()},rekeyJournal:U=>{if(U===i.contents)return;i.contents=U;let Q=e.persistDir,re=H.contents;if(Q!==void 0&&re!==void 0)return re.rekey(uS(Q,U))}};return ve(),en}var VK=10*6e4;function HK(e){switch(e){case"collabAgentToolCall":case"commandExecution":case"dynamicToolCall":case"mcpToolCall":case"terminalInput":return!0;default:return!1}}function is(e){let t=gr(e);return t!==void 0?x(Or(ue(t)),"unknown error"):"unknown error"}function z$(e){let t=T$(),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,VK),b=x(e.bufferedTurnMaxEvents,1e4),y=x(e.bufferedTurnSweepIntervalMs,3e4),v={contents:!1},S={contents:!0},A={contents:void 0},R=(N,M)=>{try{return e.log(N,Object.fromEntries(M))}catch{return}},z=N=>t.turns.has(N)?!0:t.bufferedTurns.has(N),H=()=>{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(!z(N)){m.delete(N);return}}),h.keys().toArray().forEach(N=>{if(!z(N)){h.delete(N);return}})},ce=(N,M)=>{if(z(N)){m.set(N,{atMs:c(),activityKind:M});return}},ne=N=>{switch(N.TAG){case"HarnessNotification":let M=N._0,te=M.method;if(te===zu||te===Il)return;let oe=Mu(x(M.params,{})),Ae=oe!==void 0?oe:lp(t);return Ae!==void 0?ce(Ae,te):void 0;case"CompletionSnapshot":case"Lifecycle":return}},ie=N=>{switch(N.TAG){case"HarnessNotification":let M=N._0,te=M.method;if(te!=="item/started"&&te!=="item/completed"&&te!=="response_item")return;let oe=x(M.params,{}),Ae=Mu(oe),Le=Ae!==void 0?Ae:lp(t);if(Le===void 0||!z(Le))return;let Ne=tp(oe);if(Ne===void 0||Ne==="")return;if(te==="item/started"){let je=k(De(oe,"item"),We=>C(We,"type"));if(je===void 0||!HK(je))return;let ht=h.get(Le),Ye;if(ht!==void 0)Ye=ht;else{let We=new Map;h.set(Le,We),Ye=We}Ye.set(Ne,{kind:je,startedAtMs:c()});return}let ut=h.get(Le);if(ut!==void 0){ut.delete(Ne);return}else return;case"CompletionSnapshot":case"Lifecycle":return}},le=()=>{if(!S.contents||t.phase!=="running")return!1;let N=c(),M={contents:!1};return t.bufferedTurns.entries().toArray().forEach(te=>{let oe=te[0];if(_.has(oe))return;let Ae=te[1],Le=N-x(p.get(oe),N),Ne=Le>g,ut=Ae.length>b;if(Ne||ut){_.add(oe),R("pipeline.loop.buffered_turn_overdue",[["level","warn"],["thread_key",e.threadKey],["turn_id",oe],["buffered_event_count",Ae.length],["age_ms",Le],["max_age_ms",g],["max_events",b]]),u.push({TAG:"HarnessNotification",_0:{method:Il,params:Object.fromEntries([["turnId",oe],["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"]])}}),M.contents=!0;return}}),M.contents},W=()=>{if(v.contents)return;v.contents=!0;let N=!0;for(;N;){let M=u.shift();if(M!==void 0){let te;try{te=$$(t,M,d)}catch(oe){let Ae=X(oe);R("pipeline.loop.event_processing_failed",[["thread_key",e.threadKey],["source",Al(M)],["message",is(Ae)]]),te=void 0}te!==void 0&&(H(),ne(M),ie(M),te.forEach(oe=>{try{switch(oe.TAG){case"Enqueue":return e.outboxEnqueue({kind:oe.kind,data:oe.data,coalesceKey:oe.coalesceKey,resolution:oe.resolution});case"RequestSnapshot":return e.requestSnapshot(oe.turnId);case"TurnTerminal":return e.onTurnTerminal(oe.turnId,oe.outcome,oe.reason,oe.retryableEmptyTurn,oe.autoResumeMidStreamStall,oe.fate);case"Log":try{return e.log(oe.event,oe.fields)}catch{return}}}catch(Ae){let Le=X(Ae),Ne;switch(oe.TAG){case"Enqueue":Ne="enqueue";break;case"RequestSnapshot":Ne="requestSnapshot";break;case"TurnTerminal":Ne="turnTerminal";break;case"Log":Ne="log";break}return R("pipeline.loop.effect_failed",[["thread_key",e.threadKey],["effect",Ne],["message",is(Le)]])}}),le())}else N=!1}v.contents=!1},Z;if(y>0){let N=setInterval(()=>{if(le())return W()},y);N.unref(),Z=Ze(N)}else Z=void 0;let $=N=>{let M=h.get(N);return M!==void 0?M.values().toArray().map(te=>({kind:te.kind,startedAtMs:te.startedAtMs})):[]};return{submit:N=>{try{return S.contents?(u.push(N),W()):R("pipeline.loop.event_after_drain",[["thread_key",e.threadKey],["source",Al(N)]])}catch(M){let te=X(M);return R("pipeline.loop.submit_failed",[["thread_key",e.threadKey],["message",is(te)]])}},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:D(m.get(N.turnId),M=>M.atMs),lastActivityKind:D(m.get(N.turnId),M=>M.activityKind),openItems:$(N.turnId)})),bufferedTurns:t.bufferedTurns.entries().toArray().map(N=>{let M=N[0];return{turnId:M,bufferedEventCount:N[1].length,firstBufferedAtMs:x(p.get(M),c()),lastActivityAtMs:D(m.get(M),te=>te.atMs),lastActivityKind:D(m.get(M),te=>te.activityKind),openItems:$(M)}})}),noteTurnActivity:(N,M)=>{try{return ce(N,M)}catch(te){let oe=X(te);return R("pipeline.loop.note_activity_failed",[["thread_key",e.threadKey],["message",is(oe)]])}},drainAndClose:N=>{let M=A.contents;if(M!==void 0)return M;let te=(async()=>{S.contents=!1,Z!==void 0&&clearInterval(ue(Z)),await Promise.resolve(),W();let oe;try{oe=await e.outboxFlush(N)}catch(Ae){let Le=X(Ae);return R("pipeline.loop.drain_flush_failed",[["thread_key",e.threadKey],["message",is(Le)]])}if(oe.TAG!=="Ok")return R("pipeline.loop.drain_flush_failed",[["thread_key",e.threadKey],["message",oe._0]])})();return A.contents=te,te}}}var BK=10*6e4,KK={emittedTotalEnqueued:0,emittedTotalAcked:0,emittedTotalRetried:0,emittedTotalDroppedBestEffort:0,emittedTotalPermanentFailures:0,emittedTotalExpiredOnRecovery:0,emittedTotalJournalWriteFailures:0,emittedJournalDegraded:!1};function JK(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 YK(e){return Ke(e,void 0,(t,r)=>t!==void 0&&t<=r.startedAtMs?t:r.startedAtMs)}function XK(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 QK(e){return Ke(e,void 0,(t,r)=>t!==void 0&&t.startedAtMs<=r.startedAtMs?t:r)}function IS(e){return e}function $S(e){return new Set(e).values().toArray().toSorted(ls)}function G$(e){let t=x(e.now,()=>Date.now()),r=x(e.intervalMs,3e4),n=x(e.turnStalledThresholdMs,BK),i={contents:KK},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=$S(p.filter(z=>z.waitTurnId===_.candidateTurnId).map(z=>z.waitKind));if(v.length===0){a.delete(_.candidateTurnId);let z=_.candidateOpenItems.length!==0?n*2:n;if(!(y>=z&&!o.has(_.candidateTurnId)))return;let H=YK(_.candidateOpenItems);o.add(_.candidateTurnId);let ce=_.candidateSourceSeq,ne=_.candidateLastActivityKind,ie=_.candidateLastActivityAtMs,le=f.oldestEntryAgeMs;return e.log("pipeline.turn_stalled",Object.fromEntries([["level","warn"],["thread_key",e.threadKey],["turn_id",_.candidateTurnId],["source_seq",ce!==void 0?ce:null],["buffered",_.buffered],["turn_age_ms",g],["quiet_ms",y],["last_activity_kind",ne!==void 0?ne:null],["last_activity_age_ms",ie!==void 0?Math.max(0,m-ie):null],["threshold_ms",n],["effective_threshold_ms",z],["open_item_count",_.candidateOpenItems.length],["open_item_kinds",$S(_.candidateOpenItems.map(W=>W.kind)).map(IS)],["open_item_oldest_age_ms",H!==void 0?Math.max(0,m-H):null],["outbox_depth",f.depth],["oldest_entry_age_ms",le!==void 0?le: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(IS)],["open_item_count",_.candidateOpenItems.length],["open_item_kinds",$S(_.candidateOpenItems.map(z=>z.kind)).map(IS)]]))})},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=X(v);e.log("pipeline.stats_sample_failed",Object.fromEntries([["thread_key",e.threadKey],["message",is(S)]])),c=void 0}if(c===void 0)return;let f=c[1],p=c[0],m=t();if(l(JK(f),p,c[2],m),!XK(p,f,i.contents))return;let h=QK(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(D(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 t9=[1e3,5e3];function ei(e,t){return k(e[t],Sr)}function Fu(e,t){return k(e[t],ma)}function $l(e,t){return k(e[t],ke)}function MS(e,t){Object.entries(t).forEach(r=>{e[r[0]]=r[1]})}function Gu(e){let t={};return MS(t,e),t}function r9(e){let t=e.body;return typeof t=="string"?t:""}function n9(e){return x($l(e,"structured"),{})}function i9(e){return e===Ou||e===Cu||e===ts?!0:e===Eu}function o9(e,t){let r=ei(t,"turn_id");r!==void 0&&(e.turn_id=r);let n=ei(t,"item_key");n!==void 0&&(e.item_key=n);let i=Fu(t,"delta_index");i!==void 0&&(e.delta_index=i);let o=Fu(t,"stream_snapshot_index");if(o!==void 0){e.stream_snapshot_index=o;return}}function q$(e,t,r){let n=t.traceparentForThread(r);if(n!==void 0){e.traceparent=n;return}}function a9(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=ei(t,"client_message_id");if(a===void 0)return{TAG:"BuildSkip",_0:"missing_client_message_id"};let s=ei(t,"turn_id"),l=Fu(t,"source_seq"),d={};s!==void 0&&(d.turn_id=s),d.stream_key=a;let u=Gu(d),c=$l(t,"local_runner_runtime_metadata");c!==void 0&&MS(u,c);let f=Gu(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),MS(f,d);let m=Gu(n9(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=r9(t),h.payload=f,h.client_message_id=a,o9(h,t),q$(h,e,i),{TAG:"BuildPush",event:"session:stream_thread_message",payload:h,timeoutMs:void 0}},onReply:void 0,coalesce:void 0}}function s9(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=Fu(t,"seq"),a=ei(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=se(t.suppress_terminal_for_recovered_turn,!0),l=ei(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=ei(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"&&Ft(Wm(h))&&(c.fate=h);let _=$l(t,"ladder");_!==void 0&&(c.ladder=_),t.failure_class==="edge_blocked"&&(c.failure_class="edge_blocked");let b=ei(t,"upstream_error");b!==void 0&&(c.upstream_error=b);let y=ei(t,"turn_id");y!==void 0&&(c.turn_id=y);let v=n.leaseEpoch;return v!==void 0&&(c.lease_epoch=v),q$(c,e,i),{TAG:"BuildPush",event:"message_state",payload:c,timeoutMs:void 0}},onReply:void 0,coalesce:void 0}}function l9(e){let t=a9(e);return Object.fromEntries([[Ou,t],[Cu,t],[ts,t],[Eu,t],[Ol,s9(e)]])}function L$(e,t){if(e.error!==void 0)return[];let n=k($l(e,"result"),a=>$l(a,"thread")),i=x(k(k(n,a=>a.turns),Ji),[]),o=ze(i,ke).find(a=>{let s=a.id;return typeof s=="string"?s===t:!1});return ze(x(k(k(o,a=>a.items),Ji),[]),ke)}var _te=new RegExp("^item-\\d+$");var U$=oI;function d9(e){return new Promise((t,r)=>{setTimeout(()=>t(),e|0)})}function F$(e){let t=gr(e);return t!==void 0?x(Or(ue(t)),"unknown error"):"unknown error"}function D$(e){return e!==void 0?e:null}function Z$(e){let t=l9({instanceId:e.instanceId,wire:e.wire,rowEnvelope:e.rowEnvelope,isRecoveredTurn:e.isRecoveredTurn,traceparentForThread:e.traceparentForThread}),r=j$({threadKey:e.threadKey,push:e.push,builders:t,persistDir:e.persistDir,retryDelaysMs:D(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",D$(ei(f.data,"item_key"))],["turn_id",D$(ei(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===Ol){let b=ei(f.data,"turn_id"),y=e.isRecoveredTurn;p=b!==void 0&&y!==void 0?y(b)===!0:!1}if(p){let b=Gu(f.data);return b.suppress_terminal_for_recovered_turn=!0,{kind:f.kind,data:b,coalesceKey:f.coalesceKey,resolution:f.resolution}}if(!i9(f.kind))return f;let m=Fu(f.data,"source_seq"),h=$l(f.data,"local_runner_runtime_metadata"),_=h!==void 0?h:k(e.runtimeMetadataForSourceSeq,b=>b(m));if(_===void 0)return f;let g=Gu(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,d9),l=async f=>{let p=x(e.snapshotRetryDelaysMs,t9),m=0,h=!1;for(;!h;){let _;try{_=await e.resolveSnapshot(f)}catch(g){let b=X(g);_={TAG:"Error",_0:F$(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=z$({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=>{$n(l(f),p=>(e.log("pipeline.snapshot_request_failed",Object.fromEntries([["thread_key",e.threadKey],["turn_id",f],["message",F$(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=G$({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:zu,params:Object.fromEntries([["turnId",f]])}}),notifyTurnMappingFailed:(f,p)=>d.submit({TAG:"HarnessNotification",_0:{method:Il,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 up(e){return e.split("_").map((t,r)=>r!==0?t.slice(0,1).toUpperCase()+t.slice(1,t.length):t).join("")}function Du(e){return x(D(bm.find(t=>t[0]===e),t=>t[1]),e)}var Mn=Du("harness_session_id"),os=up(Mn);function Di(e,t){let r=e[t];if(typeof r=="string")return r}function jS(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 c9(e,t){let r=k(t.error,ke),n=k(t.item,ke),i=d=>Ke(d,void 0,(u,c)=>u!==void 0?u:c),o=i([jS(t,"code"),k(r,d=>jS(d,"code")),jS(t,"status")]),a=i([Di(t,"message"),Di(t,"detail"),Di(t,"reason"),k(r,d=>Di(d,"message")),k(r,d=>Di(d,"detail")),k(r,d=>Di(d,"reason"))]),s=o!==void 0?e+" "+o:e,l=a!==void 0?a:D(k(n,d=>Di(d,"type")),d=>"item.type="+d);return D(l,d=>s+": "+d)}function f9(e,t){switch(e){case"error":case"warning":break;default:return t}let r=c9(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(ls).map(i=>i),n}var m9=["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 W$(e){let t=TI(e);return t.trimStart().startsWith("!")?t:[t,""].concat(m9).join(`
388
- `)}var p9={sandboxedNeverDefault:!1};function V$(e){let t=Pm(e.approvalPolicy,e.sandbox,p9);return t.TAG==="Ok"?t._0:"on-request"}function H$(e){let t={};t.approvalPolicy=V$(e);let r=e.sandbox;return r!==void 0&&(t.sandbox=r),t}function h9(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=V$(n);let s=n.sandbox;if(s!==void 0){let l=DP(s,r);l.TAG==="Ok"&&(i.sandboxPolicy=l._0)}return i}async function Ml(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[Mn]=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",Qn(l._0)]]))}async function Ko(e,t,r){return e.processingReason=r,e.processingSeq=t,await Ml(e,t,"processing",r)}function _9(e){let t=D(e.LINZUMI_TYPING_HEARTBEAT_MS,n=>n.trim());if(t===void 0||t==="")return 5e3;let r=yi(t);return r!==void 0&&isFinite(r)&&r>0?Math.trunc(r):5e3}function B$(e){let t={};return t.workspace=e.workspaceSlug,t.channel=e.channelSlug,t.thread_id=e.threadId,t.instance_id=e.instanceId,t[Mn]=e.harnessSessionId,t}async function g9(e){let t=e.processingSeq,r=e.processingReason;if(t!==void 0&&r!==void 0)return await Ml(e,t,"processing",r)}function K$(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",B$(r),void 0);i.TAG!=="Ok"&&r.log("kandan.optional_push_failed",Object.fromEntries([["event","session:typing_start"],["message",Qn(i._0)]])),t&&await g9(e)}catch(i){let o=X(i);r.log("kandan.typing_heartbeat_failed",Object.fromEntries([["message",Ge(o).message]]))}e.typingHeartbeatInFlight=!1})()}function J$(e,t){e.typingHeartbeatTimer=Ze(e.deps.timers.setTimer(()=>{if(e.typingActive)return K$(e,!0),J$(e,t)},t))}function y9(e){if(e.typingActive=!0,K$(e,!1),e.typingHeartbeatTimer===void 0)return J$(e,_9(e.deps.env))}function Y$(e){let t=e.typingHeartbeatTimer;if(t!==void 0){e.deps.timers.clearTimer(ue(t)),e.typingHeartbeatTimer=void 0;return}}function b9(e,t){if(Y$(e),!e.typingActive)return;e.typingActive=!1;let r=e.deps;(async()=>{let i=await r.transport.push(r.commanderTopic,"session:typing_stop",B$(r),void 0);if(i.TAG!=="Ok")return r.log("kandan.typing_stop_after_completion_failed",Object.fromEntries([["turn_id",t],["message",Qn(i._0)]]))})()}function v9(e,t,r){switch(t){case"item/completed":let n=k(r.item,ke);if(n===void 0||!Ft(Di(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=>Di(l,"id"));if(s!==void 0){e.activityJournalTurns.push({turnId:s,items:[]});return}else return;default:return}}function S9(e){if(e.TAG==="ResultReply")return k(k(k(ke(e._0),t=>t.turn),ke),t=>Di(t,"id"))}async function X$(e,t){let r=e.deps;r.log("codex.turn_starting",Object.fromEntries([["queued_seq",t.seq],["thread_id",r.threadId],[Mn,r.harnessSessionId]])),await Ko(e,t.seq,"starting turn"),await Ko(e,t.seq,"starting turn"),y9(e),e.dispatchingTurnStart=!0,e.pendingStartingPaints=[];let n,i=0,o;try{o=await r.harness.request("turn/start",h9(r.harnessSessionId,W$(t),r.cwd,r.defaults)),i=1}catch(a){let s=X(a);e.pendingStartingPaints=[],n={TAG:"Error",_0:"turn/start failed: "+Ge(s).message}}if(i===1)if(o.TAG==="Ok"){let a=o._0;if(a.TAG==="ResultReply"){let s=S9(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&&Tn(e.processingReason,u.reason)){Ko(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 w9(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",PS]])),r.timers.setTimer(()=>{(async()=>{await Ko(e,t,"retrying empty turn");let o=await X$(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 k9(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,b9(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)<PS,c=i&&u,f=u&&!a.harness.isClosed(),p={inPlaceResume:c,redispatch:f,workerRebuild:!1},m=wI({fate:o,run:e.fateLadderRuns.get(s),nowMs:Date.now(),budgets:Tu(a.env),breaker:(R,z)=>"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":w9(e,s);break;case"redispatch":case"worker_rebuild":break}let b=a.switchProbe;if(m.TAG!=="Red"||b===void 0)return;let y=SI(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",iS(y)]]));let v={};v.workspace=a.workspaceSlug,v.channel=a.channelSlug,v.thread_id=a.threadId,v.instance_id=a.instanceId,v[Mn]=a.harnessSessionId,v.seq=s,v.status="failed",n!==void 0&&(v.reason=n),v.fate=o,v.ladder=Vm(e.fateLadderRuns.get(s),o,Tu(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 zS(e){let t="chat:"+e.workspaceSlug+":"+e.channelSlug,r=await e.transport.join(t,DE(e.commanderId,e.threadId,0),{rejoinPayload:void 0,registrationId:void 0});if(r.TAG!=="Ok")return{TAG:"Error",_0:"chat join failed: "+Qn(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[Mn]=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",Qn(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=Z$({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:Qn(g),budgetExempt:U$(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,_[Mn]=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(Vm(a.fateLadderRuns.get(f),p,Tu(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:L$(h,f).map(_=>_)}},onTurnTerminal:(f,p,m,h,_,g)=>k9(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)=>{v9(a,f,p);let m=a.active;if(m!==void 0){let h=k(p.turnId,Sr);if(h!==void 0?h===m.turnId:!0){let g=sS(f,p);if(g!==void 0){let b=g;Tn(a.processingReason,b)&&Ko(a,m.sourceSeq,b)}}}else{let h=a.dispatchingTurnStart,_=k(p.turnId,Sr),g=sS(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,f9(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],[Mn,e.harnessSessionId]])),await Ml(a,f,"queued",void 0),await X$(a,b)},publishRebuilt:async f=>await Ko(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:Ke(a.failoverOffers.keys().toArray(),void 0,(Xe,F)=>F),b=k(g,Xe=>D(a.failoverOffers.get(Xe),F=>[Xe,F]));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:oS("transient_local",Date.now()),R=y.sourceHarness,z=y.targetHarness,ce={sourceHarness:R,targetHarness:z,model:p},ne=kI(A,Date.now(),ce);if(ne.TAG!=="Ok")return{TAG:"Error",_0:ne._0};let ie=ne._0;a.fateLadderRuns.set(v,ie),e.log("codex.user_cross_harness_switch_invoked",Object.fromEntries([["queued_seq",v],["source_harness",R],["target_harness",z],["model",p]])),await Ko(a,v,xI);let le=e.harnessSessionId,W=a.activityJournalTurns,Z={harnessSessionId:le,turns:W},$=e.cwd,N=e.defaults.approvalPolicy,te={cwd:$,model:p,reasoningEffort:void 0,developerInstructions:void 0,approvalPolicy:N,sandboxPolicy:void 0,environment:{}},oe=a.retryCandidates.get(v),Le={text:oe!==void 0?W$(oe):"Continue where the previous harness session left off.",attachments:[]},Ne={model:p,reasoningEffort:void 0,input:Le},ut=await jI(Z,e.threadId,m,e.cwd,_,Date.now(),h,te,Ne,Xe=>{switch(e.log("kandan.switch_target_event",Object.fromEntries([["queued_seq",v],["kind",wm(Xe)]])),Xe.TAG){case"TurnCompleted":Ml(a,v,"processed",void 0);return;case"TurnFailed":Ml(a,v,"failed",Xe.failure.reason);return;default:return}}),je=Tu(e.env),ht=Xe=>Vm(Xe,"transient_local",je,Ze(y));if(ut.TAG==="Ok"){let Xe=ut._0;a.switchedTargetSession=Xe.session;let F={...ce},Ee=aS(ie,"switch_dispatched",Date.now(),(F.redactedReasoningCount=Xe.redactedReasoningCount,F.transpiledItemCount=Xe.transpiledItemCount,F),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",z],["model",p],["target_session_id",Xe.targetSessionId],["transpiled_item_count",Xe.transpiledItemCount],["redacted_reasoning_count",Xe.redactedReasoningCount]])),await Ko(a,v,"continuing this job on the "+y.targetHarness+" harness after a user-invoked switch");let ve={};ve.ok=!0,ve.target_session_id=Xe.targetSessionId,ve.turn_id=Xe.turnId;let _e=Xe.sessionFile;return _e!==void 0&&(ve.session_file=_e),ve.transpiled_item_count=Xe.transpiledItemCount,ve.redacted_reasoning_count=Xe.redactedReasoningCount,ve.ladder=ht(Ee),{TAG:"Ok",_0:ve}}let Ye=ut._0,We=II(Ye),jt=$I(Ye),xr=aS(ie,MI(Ye)?"switch_refused":"switch_failed",Date.now(),ce,We+": "+jt);a.fateLadderRuns.set(v,xr),e.log("codex.user_cross_harness_switch_not_dispatched",Object.fromEntries([["queued_seq",v],["refusal",We],["reason",jt]])),await Ml(a,v,"failed","cross-harness switch "+We+": "+jt);let Lt={};return Lt.ok=!1,Lt.refusal=We,Lt.reason=jt,Lt.ladder=ht(xr),{TAG:"Ok",_0:Lt}},close:async()=>{Y$(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 GS from"node:os";import*as jl from"node:path";var T9="LINZUMI_CODEX_HOME";function A9(e){let t=D(e[T9],r=>r.trim());return t!==void 0&&t!==""?t:jl.join(GS.homedir(),".linzumi","codex-home")}function O9(e){let t=D(e.CODEX_HOME,r=>r.trim());return t!==void 0&&t!==""?t:jl.join(GS.homedir(),".codex")}var C9=["# 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(_v.map(e=>e+' = "'+hv+'"')).concat([""]).join(`
389
- `);function Q$(e){let t=A9(e),r=Dt(t);if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=ho(jl.join(t,"config.toml"),C9,{encoding:"utf8",flag:"wx"});if(n.TAG==="Ok")return{TAG:"Ok",_0:t};let i=n._0;return ni(i,"EEXIST")?{TAG:"Ok",_0:t}:{TAG:"Error",_0:i}}var E9={beforeCommit:()=>Promise.resolve()},NS={contents:0},cp={contents:0};async function eM(e,t,r){let n=r!==void 0?r:E9,i=O9(t);if(i===e)return"SkippedSelfCopy";NS.contents=NS.contents+1|0;let o=NS.contents,a=jl.join(i,"auth.json"),s=jl.join(e,"auth.json"),l=s+".tmp-"+o.toString(),d=or(a);if(d.TAG==="Ok"){let c=Dt(e);if(c.TAG!=="Ok")return{TAG:"InstallFailed",stage:"mkdir",code:c._0.code};let f=un(l);if(f.TAG!=="Ok")return{TAG:"InstallFailed",stage:"clear_tmp",code:f._0.code};let p=ho(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 un(l),{TAG:"SkippedStale",generation:o,committedGeneration:cp.contents};let m=ii(l,s);return m.TAG==="Ok"?(cp.contents<o&&(cp.contents=o),{TAG:"Installed",generation:o}):(un(l),{TAG:"InstallFailed",stage:"rename",code:m._0.code})}let u=d._0;return ni(u,"ENOENT")?"SkippedLoggedOut":{TAG:"InstallFailed",stage:"read_source",code:u.code}}import*as nM from"node:child_process";function R9(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 I9=["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 tM(e,t){return{command:e,args:["-e",I9.join(`
390
- `),R9(t)]}}async function M9(e){let t=await fa(e,{});if(t.TAG!=="Ok")return!1;let r=t._0.status;return r>=200?r<=299:!1}function iM(e,t){return{audit:e,env:t,protectedPids:()=>new Set,fetchOk:M9,now:()=>Date.now(),readyzTimeoutMs:1e4,readyzPollMs:50}}function j9(e){return e}function FS(e,t,r,n,i,o){e.audit(t,Object.fromEntries([["command",r],["args",n.map(j9)],["cwd",i]].concat(o.concat([["purpose","codex.app_server"]]))))}function rM(e,t){let r=t.pid;if(r==null){_l(t,"SIGINT");return}let n=Om(r,"SIGINT",Ui,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"&&Vr("codex app-server process-group SIGINT denied for pid "+r.toString()+`; falling back to direct child SIGINT
391
- `),_l(t,"SIGINT")}function z9(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}async function N9(e,t,r){let n=eP(t),i=n!==void 0?n:t,o=e.now()+e.readyzTimeoutMs,a;for(;Nn(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 z9(e.readyzPollMs)}return x(a,{TAG:"Error",_0:"timed out waiting for codex app-server readyz"})}async function oM(e,t,r,n,i,o,a){let s=await kP();if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0};let l="ws://127.0.0.1:"+s._0.toString(),d=KE(l,n),u={contents:""},c=tM(process.execPath,{command:t,args:d,pollIntervalMs:iP,protectedPidsDir:gP()});FS(e,"process.spawn",t,d,r,[]);let f=nM.spawn(c.command,c.args,{cwd:r,env:JE(e.env,i,o),stdio:YE,detached:!0}),p={contents:void 0},m=[],h=(S,A,R)=>{if(S!=null){S.on("data",z=>{let H=z.toString("utf8");R!==void 0&&R(H);let ce=f.pid;e.audit("process.output",Object.fromEntries([["pid",ce??null],["purpose","codex.app_server"],["stream",A],["chars",H.length],["output",H]]))});return}};h(f.stdout,"stdout",void 0),h(f.stderr,"stderr",S=>{u.contents=XE(u.contents+S)});let _=Cm({stop:()=>rM(e,f),pid:$r(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 z=f.pid;FS(e,"process.exit",t,d,r,[["pid",z??null],["code",S??null],["signal",A??null]]);let H=m.slice();m.splice(0,m.length),H.forEach(ce=>ce())}),f.on("error",S=>{p.contents=S.message,_.unregister()});let g=f.pid;FS(e,"process.spawned",t,d,r,[["pid",g??null]]);let b=()=>{_.unregister(),rM(e,f)},y=await N9(e,l,()=>p.contents);if(y.TAG==="Ok")return{TAG:"Ok",_0:{url:l,pid:$r(f.pid),stop:b,onExit:S=>{if(p.contents!==void 0)return S();m.push(S)}}};let v=y._0;return b(),QE(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 oM(e,t,r,n,i,o,a+1|0)):{TAG:"Error",_0:v}}function aM(e,t,r,n,i,o){return oM(e,t,r,n,i!==void 0?i:[],o!==void 0?o:!0,1)}function DS(e,t){let r=e[t];if(typeof r=="string")return r}function fp(e){let t=D(e,r=>r.trim());if(t!==void 0&&t!=="")return t}function zl(e){let t=fp(DS(e,"modelProvider")),r=k(e.llmProxy,ke),n=k(r,a=>fp(DS(a,"baseUrl"))),i=k(r,a=>fp(DS(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 F9(e){let t=e.length;for(;t>0&&e.slice(t-1|0,t)==="/";)t=t-1|0;return e.slice(0,t)}function sM(e){let t=F9(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 lM(e,t){if(e.provider!=="openai-proxy")return{TAG:"Ok",_0:[["LINZUMI_LLM_PROXY_TOKEN",e.llmProxyToken]]};let n=fp(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"}}async function uM(e,t,r){let n=iM(t,e),i=Q$(e);if(i.TAG!=="Ok")return{TAG:"Error",_0:i._0.message};let o=i._0;r.provider!==void 0||await eM(o,e,void 0);let s=q0(r.serviceUrl,r.token,r.agentMcpToken,new Date);if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0.summary};let l=s._0,d=Nk(process.execPath,process.argv[1],process.execArgv),u=ym(r.token),c=Mc({command:d.command,argsPrefix:d.argsPrefix,serviceUrl:r.serviceUrl,authFilePath:l.path,ownerUsername:u.actorUsername,operatingMode:"Text",cwd:r.cwd,threadId:r.threadId,agentSession:Ft(r.agentMcpToken),devServices:{scope:r.devServicesScope,ownerPid:r.devServicesOwnerPid}}),f=r.provider,p=f!==void 0?lM(f,e):{TAG:"Ok",_0:[]};if(p.TAG==="Ok"){let m=await aM(n,r.codexBin,r.cwd,{model:r.model,reasoningEffort:r.reasoningEffort,fast:r.fast,mcpConfigArgs:[zk(c)],modelProvider:D(r.provider,sM)},[["CODEX_HOME",o]].concat(p._0),void 0);if(m.TAG==="Ok"){let h=m._0;return h.onExit(()=>l.cleanup()),{TAG:"Ok",_0:h}}return l.cleanup(),{TAG:"Error",_0:m._0}}return l.cleanup(),{TAG:"Error",_0:p._0}}var q9=`<linzumi_markdown_media_guidance>
387
+ `)}function D$(e,t){let r=VK(e),n=YK(e);return[{body:XK(r,n),structured:Gu("codex_assistant_message",t,[["content",r],["phase",x(E(e,"phase"),"final_answer")]])}]}function fp(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 D$(e,r);case"agentStatus":let i=x(_t(e,"title"),"Agent status"),o=Du(_t(e,"body")),a=$S(e.severity),s=_t(e,"provider"),l=os(e,"occurredAtMs"),d=G$(e),u={title:i,body:o,severity:a,provider:s,occurredAtMs:l,rawProviderMetadata:d};return[{body:Fu(i,o),structured:DS(r,u,"completed")}];case"agentTaskUpdate":let c=x(_t(e,"title"),"Agent task"),f=Du(_t(e,"body")),p=_t(e,"progressLabel"),m=MS(e.state),h=_t(e,"provider"),_=os(e,"occurredAtMs"),g=G$(e),b={title:c,body:f,state:m,progressLabel:p,provider:h,occurredAtMs:_,rawProviderMetadata:g};return[{body:Fu(c,f!==void 0?f:p),structured:qS(r,b,"completed")}];case"commandExecution":let y=x(E(e,"command"),"command"),v=x(_t(e,"aggregatedOutput"),""),S=zS(y,v),A=E(e,"toolName"),R=os(e,"durationMs"),Z=os(e,"exitCode");return[{body:S.body,structured:Gu("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",Z!==void 0?Z:null],["output",S.output]].concat(U$(S)))}];case"fileChange":let L=Q$(x(up(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
+ `),structured:Gu("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"?D$(e,r):[]:[];case"reasoning":let W=sp(e,"content").join(`
389
+ `),V=sp(e,"summary");return[{body:W.trim()!==""?W:V.join(`
390
+ `),structured:Gu("codex_reasoning",r,[["content",W],["summary_parts",V.map(jK)]])}];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:Gu("codex_terminal_input",r,[["process_id",x(E(e,"processId"),"")],["input_text",j]])}];default:return[]}}var tM=j$;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 US(e,t){t!==""&&e.parts.push(t)}function ZS(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 QK(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 rM(e){return e.itemId}function pp(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 nM(e,t){let r=pp(t);switch(e){case"item/agentMessage/delta":return G(cp(t),n=>({TAG:"AssistantDelta",itemId:r,text:n}));case"command/exec/outputDelta":case"item/commandExecution/outputDelta":break;case"item/commandExecution/terminalInteraction":return G(Y$(t),n=>({TAG:"TerminalInputDelta",itemId:r,processId:n.terminalProcessId,inputText:n.inputText}));case"item/fileChange/outputDelta":return G(X$(t),n=>({TAG:"FileChangeDelta",itemId:r,patchText:n}));case"item/reasoning/textDelta":return G(cp(t),n=>({TAG:"ReasoningDelta",itemId:r,text:n}));case"item/started":return G(LS(t),n=>({TAG:"WebSearchDelta",itemId:r,queries:n.queries}));default:return}return G(J$(t),n=>({TAG:"CommandOutputDelta",itemId:r,processId:n.commandProcessId,command:n.command,stream:n.stream,text:n.commandDelta}))}function iM(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 e9(e,t){return Ve(t,e.slice(),(r,n)=>r.includes(n)?r:r.concat([n]))}function oM(e,t){if(QK(e)!==Gl(t))return e;switch(e.TAG){case"AssistantContent":return t.TAG!=="AssistantDelta"||US(e.text,t.text),e;case"ReasoningContent":return t.TAG!=="ReasoningDelta"||US(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"||US(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:e9(e.queries,t.queries)}:e;case"AgentStatusContent":case"AgentTaskUpdateContent":return e}}function t9(e){return e.map(t=>t.text).join("")}function aM(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 sM(e){let t=LS(e);if(t!==void 0)return{completedStreamKind:"webSearch",completedItemId:pp(e),completedContent:{TAG:"WebSearchContent",queries:t.queries}};let r=x(qe(e,"item"),e),n=eM(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=aM(r);if(i===void 0)return;let o=fp(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=xr(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:$S(xr(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:MS(xr(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=ZS(t.text);return{renderedBody:n,renderedStructured:Z$(e,n,r)};case"ReasoningContent":let i=ZS(t.text);return{renderedBody:i,renderedStructured:W$(e,i,r)};case"CommandOutputContent":let o=t.chunks,a=o[o.length-1|0],s=NS(e,t.command,t9(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=xr(s,"output");return{renderedBody:jS(l,typeof d=="string"?d:""),renderedStructured:s};case"FileChangeContent":let c=ZS(t.patchText),f;return f=r==="completed"||t.status!=="started"?"completed":"started",{renderedBody:c,renderedStructured:GS(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",tM(r)],["process_id",x(t.processId,"")],["input_text",p]])};case"WebSearchContent":let m=t.queries;return{renderedBody:FS(m),renderedStructured:B$(e,m,r)};case"AgentStatusContent":let h=t._0,_=Du(h.body);return{renderedBody:Fu(h.title,_),renderedStructured:DS(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=Du(g.body);return{renderedBody:Fu(g.title,b!==void 0?b:g.progressLabel),renderedStructured:qS(e,{title:g.title,body:b,state:g.state,progressLabel:g.progressLabel,provider:g.provider,occurredAtMs:g.occurredAtMs,rawProviderMetadata:g.rawProviderMetadata},r)}}}function lM(e){return e.flatMap((t,r)=>{let n=ke(t);if(n===void 0)return[];let i=aM(n);return i!==void 0?i==="webSearch"?[]:fp(n,r).filter(o=>o.body.trim()!=="").map(o=>({snapshotIndex:r,projItemId:E(n,"id"),projStreamKind:i,projBody:o.body,projStructured:o.structured})):[]})}function WS(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 VS(e,t,r,n){if(r==="webSearch")return"local-codex-search-"+Un(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-"+Un(e+":"+t+":"+i+n).slice(0,32)}function qu(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 Uu="pipeline/turnMappingReady",ql="pipeline/turnMappingFailed",uM="Codex completed without producing a response.",r9="linzumi_agent_reply",n9="The agent ended its turn after narrating an intent without posting a reply or taking any action.",i9="agent narrated intent but posted no reply and took no action",o9="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 hM="Codex emitted unsupported tool call";function s9(e){return e!==void 0?e.startsWith(hM):!1}function cM(e){switch(e){case"assistant":case"reasoning":case"webSearch":return!1;default:return!0}}function l9(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=xr(e,"error"),i=0;if(n!==void 0){if(n!==null)return;i=2}else i=2;if(i===2){let o=xr(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)===r9?"ReplyEvidence":"ActionEvidence"}}}}}function _M(e,t){let r=l9(t);if(r!==void 0){r==="ReplyEvidence"?e.agentReplyToolCallSeen=!0:e.agentActionToolCallSeen=!0;return}}function d9(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 gM(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(d9(o),a=>hM+": "+a)}function u9(e){return Ve(e,void 0,(t,r)=>t!==void 0?t:gM(ke(r)))}function yM(){return{phase:"running",turns:new Map,terminalTurnIds:new Set,bufferedTurns:new Map,consecutiveEmptyTurns:0,lastUpstreamErrorSummary:void 0,consecutiveIsolatedRejections:0,costCap402Seen:!1}}function c9(e){switch(e){case"turn/aborted":case"turn/canceled":case"turn/cancelled":return"interrupted";case"turn/failed":return"failed";default:return}}function f9(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 p9=new RegExp("<[^>]*>","g"),h9=new RegExp(`data:[^"' )]+`,"g"),_9=new RegExp("\\s+","g");function Xo(e){if(e===void 0)return;let t=e.replace(p9," ").replace(h9,"").replace(_9," ").trim().slice(0,180);if(t!=="")return t}function Yo(e){if(e!==void 0&&typeof e=="number"&&isFinite(e))return e}function bp(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=>xr(o,"httpStatusCode"))),Yo(k(r,o=>xr(o,"httpStatusCode"))),Yo(k(r,o=>xr(o,"statusCode"))),Yo(k(r,o=>xr(o,"status"))),Yo(k(t,o=>xr(o,"httpStatusCode"))),Yo(k(t,o=>xr(o,"statusCode"))),Yo(k(t,o=>xr(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=bp(e);return i!==void 0?"Model gateway error (HTTP "+i.toString()+"): "+n:"Model gateway error: "+n}var y9=new RegExp("(?:<!doctype\\s+html|<html(?:\\s|>))","i"),b9=new RegExp("cloudflare|cf-ray|\\bblocked\\b|access denied|\\bchallenge\\b|attention required","i"),v9=new RegExp("cloudflare|cf-ray","i"),S9=new RegExp("\\bblocked\\b|access denied","i"),w9=new RegExp("attention required","i");function k9(e){let t=bp(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&&y9.test(o)&&b9.test(o)?o:void 0);return G(n,i=>{let o=v9.test(i),a=S9.test(i),s=w9.test(i);return{edgeStatus:t,edgeSignature:o?"cloudflare":a?"blocked":s?"attention_required":"challenge"}})}function x9(e){return e!==void 0?e===402||e===408||e===425||e===429?!0:e>=500?e<=599:!1:!1}function T9(e){return e!==void 0&&e>=400&&e<=499&&e!==402&&e!==408&&e!==425?e!==429:!1}function A9(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 O9(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 C9(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 Zu(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 E9=new RegExp("^(?:model_request_rejected|invalid_request_error|invalid_request|request_rejected|content_policy_violation|content_filter|input_validation_error)$","i"),P9=new RegExp("\\bmodel request was rejected\\b|\\bmodel_request_rejected\\b","i");function R9(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!==""&&E9.test(s))return{colocatedMessage:a[1]}})}function I9(e){let t=R9(e),r=Zu(e),n=r!==void 0?P9.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 $9(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 M9=new RegExp("^provider_outage$","i"),j9=new RegExp("rejecting requests|experiencing an outage|provider outage","i");function z9(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!==""?M9.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&&j9.test(c))return c});if(s!==void 0)return s;let l=Zu(e);return l!==void 0?l:""}function N9(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 G9(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 F9(e,t,r,n){return e?{dispositionKind:"storm",dispositionRetryable:!1,dispositionReason:N9(r)}:t<1?{dispositionKind:"isolated_retry",dispositionRetryable:!0,dispositionReason:$9(n)}:{dispositionKind:"isolated_terminal",dispositionRetryable:!1,dispositionReason:G9(n)}}var D9=new RegExp("\\bapply_patch\\b[^]*\\bincompatible\\b|\\bin-flight tool future\\b[^]*\\bfail","i"),q9=new RegExp("\\btools::router\\b[^]*\\bfatal\\b|\\bresponse\\.failed\\b","i"),L9=new RegExp("(tool.*fatal|fatal.*tool|response[._]failed|tool_failure)","i");function U9(e){return D9.test(e)?!0:q9.test(e)}function Z9(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?L9.test(r):!1,i=Zu(e),o=i!==void 0?U9(i):!1;if(n||o)return i!==void 0?i:""}function fM(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 W9(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(xr(n,"status")),envelopeErrorType:o!==void 0?o:E(i,"code"),envelopeMessage:E(i,"message")}}function V9(e){let t=qe(e,"error"),r=k(qe(e,"diagnostic_payload"),h=>qe(h,"error")),n=k(r,h=>qe(h,"error")),i=bp(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=fM(k(t,S=>xr(S,"codexErrorInfo")));a=v!==void 0?v:fM(k(r,S=>xr(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?_:Zu(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?_:W9(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=ze([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 mM(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 bM(e){return e===429||e>=500&&e<=599?"TransientRetryClass":"DeterministicRetryClass"}var H9=new RegExp("upstream model stream stalled","i"),B9=new RegExp("\\(HTTP (\\d{3})\\)");function vM(e){let t=B9.exec(e);if(t!=null)return k(k(t.slice(1)[0],r=>r),Nn)}function K9(e){let t=vM(e);return t!==void 0?bM(t):H9.test(e)?"TransientRetryClass":"DeterministicRetryClass"}function HS(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,bM(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,K9(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 pM(e){return e.swLastUpstreamErrorHttpStatus===429?!0:[e.swLastUpstreamErrorReason,e.swLastErrorDiagnosticText].some(r=>r!==void 0?de(vM(r),429):!1)}var J9=" (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 Y9(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 X9(e){return" (An automatic resume was attempted at "+new Date(e).toISOString()+" after the stream stalled; it did not complete.)"}var SM=" (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 wM(e){return e>0?" ("+e.toString()+" automatic "+(e===1?"retry":"retries")+" did not help.)":""}var BS={autoRetryPreFirstByteStall:!1,messageStateRetryable:!1,costCapAutoRetrySuppressed:!1,messageStateFate:void 0,autoResumeMidStreamStall:!1,midStreamResumeRateLimitSuppressed:!1,midStreamResumeAttemptBurnedAtMs:void 0};function hp(e,t){return xr(e,t)===!0}function Q9(e){let t=xr(e,"fate");if(typeof t=="string")return ip(t)}function eJ(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"&&hp(t,"retryable"),a=e==="turn/failed"?Q9(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=HS(r)!=="deterministic",u=hp(t,"preFirstByteStall")&&d,c=hp(t,"midStreamResumableStall"),f=c&&pM(r),p=HS({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:pM(r)?"rate_limited":"transient_upstream",autoResumeMidStreamStall:g,midStreamResumeRateLimitSuppressed:b,midStreamResumeAttemptBurnedAtMs:l?s:void 0}}function tJ(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 vp(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 Sp(e){let t=e.turns.values().toArray().filter(n=>n.phase==="ActiveTurnPhase");return t.length!==1?void 0:t[0].turnId}function gp(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 Lu(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 rJ(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 nJ(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 yp(e,t,r,n,i,o,a,s){let l;if(s.autoRetryPreFirstByteStall||s.costCapAutoRetrySuppressed){let _=o.autoRetryAttemptsForSeq;l=n+wM(_!==void 0?_(t.sourceSeq):0)+(s.costCapAutoRetrySuppressed?SM:"")}else l=n;if(s.midStreamResumeRateLimitSuppressed&&(l=l+J9),r==="failed"){let _=s.midStreamResumeAttemptBurnedAtMs;if(_!==void 0)l=l+Y9(_);else{let g=k(o.midStreamResumeAttemptAtMsForSeq,b=>b(t.sourceSeq));g!==void 0&&(l=l+X9(g))}}t.items.forEach(_=>{if(!_.posted||PS(_.emittedStreamState))return;let g=Fl(_.wireItemKey,_.content,a),b=Object.fromEntries(gp(o,t,_,g).concat([["stream_snapshot_index",Lu(_)],["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:zl,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),vp(e,t.turnId)}function kM(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=M$(c),p=x(l,f),m={identity:c,itemKey:f,wireItemKey:p,clientMessageId:VS(n.instanceId,e.turnId,t,p),content:iM(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 xM(e,t,r,n,i,o){let a=Fl(t.wireItemKey,t.content,n);if(t.posted){let u=Object.fromEntries(gp(i,e,t,a).concat([["delta_index",r],["stream_snapshot_index",Lu(t)]])),c=t.itemKey,f={TAG:"Enqueue",kind:ju,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(gp(i,e,t,a).concat([["delta_index",r],["stream_snapshot_index",Lu(t)]])),d={TAG:"Enqueue",kind:Mu,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 _p(e,t,r,n){if(e.phase==="ActiveTurnPhase"){let l=kM(e,Gl(t),rM(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=oM(l.content,t);let d=l.nextDeltaIndex;l.nextDeltaIndex=l.nextDeltaIndex+1|0;let u=Gl(t),c;return c=u==="terminalInput"?"completed":"streaming",xM(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 iJ(e,t,r,n){t.errorNotificationCount=t.errorNotificationCount+1|0;let i=Z9(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=I9(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=z9(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=bp(r),l=k9(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=Zu(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=V9(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 oJ(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=gM(i)),_M(e,i!==void 0?i:t);let o=sM(t);if(o===void 0)return;if(o.completedStreamKind==="webSearch"){let c=o.completedContent,f;return f=c.TAG==="WebSearchContent"?c.queries:[],_p(e,{TAG:"WebSearchDelta",itemId:o.completedItemId,queries:f},r,n)}if(e.phase==="ActiveTurnPhase"){let c=kM(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:xM(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 sJ(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 yp(e,a,"failed",o,n,r,"failed",BS);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}),vp(e,i)}function lJ(e,t,r,n,i){let o=xr(r,"items"),a=o!==void 0?Array.isArray(o)?o:[]:[];t.protocolFailureReason===void 0&&(t.protocolFailureReason=u9(a)),a.forEach(q=>_M(t,ke(q)));let s=lM(a),l=new Set,d=new Map;s.forEach((q,Ce)=>{let Se=q.projItemId;if(Se===void 0)return;let he=t.items.find(Be=>Be.posted&&!l.has(Be.itemKey)&&Be.identity.streamKind===q.projStreamKind?de(Be.identity.itemId,Se):!1);if(he!==void 0){l.add(he.itemKey),d.set(Ce,he);return}});let u=new Map;t.items.forEach(q=>{if(!(q.posted&&!l.has(q.itemKey)&&q.identity.itemId===void 0))return;let Ce=q.identity.streamKind;u.set(Ce,x(u.get(Ce),0)+1|0)});let c=new Map;s.forEach((q,Ce)=>{if(d.has(Ce))return;let Se=q.projStreamKind;c.set(Se,x(c.get(Se),0)+1|0)});let f=(q,Ce)=>{let Se=Fl(q.wireItemKey,q.content,"completed").renderedBody.trim(),he=Ce.projBody.trim();return he.startsWith(Se)?!0:Se.startsWith(he)};s.forEach((q,Ce)=>{if(d.has(Ce))return;let Se=q.projStreamKind,he=de(c.get(Se),u.get(Se));if(q.projItemId!==void 0&&!he)return;let Be=t.items.find(Bt=>Bt.posted&&!l.has(Bt.itemKey)&&Bt.identity.streamKind===q.projStreamKind?Bt.identity.itemId===void 0:!1);if(Be!==void 0&&(q.projItemId===void 0||f(Be,q))){l.add(Be.itemKey),d.set(Ce,Be);return}});let p=d.entries().toArray();t.items.forEach(q=>{let Ce=p.find(Bt=>Bt[1].itemKey===q.itemKey);if(Ce!==void 0){let Bt=s[Ce[0]];if(Bt===void 0)return;let mn=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",Bt.projBody],["structured",WS(Bt.projStructured,q.wireItemKey)],["stream_snapshot_index",Lu(q)],["terminal_outcome","completed"]]),ki={TAG:"Enqueue",kind:is,data:mn,coalesceKey:void 0,resolution:"MustAck"};i.push(ki),q.emittedStreamState="completed",q.lastEmittedBody=Bt.projBody;return}if(!q.posted||PS(q.emittedStreamState))return;let Se=Fl(q.wireItemKey,q.content,"completed"),he=Object.fromEntries(gp(n,t,q,Se).concat([["stream_snapshot_index",Lu(q)],["terminal_outcome","completed"]])),Be={TAG:"Enqueue",kind:is,data:he,coalesceKey:void 0,resolution:"MustAck"};i.push(Be),q.emittedStreamState="completed",q.lastEmittedBody=Se.renderedBody}),s.forEach((q,Ce)=>{if(d.has(Ce))return;let Se=q.projItemId,he=Se!==void 0?Se:t.turnId+":"+q.projStreamKind+":snapshot:"+q.snapshotIndex.toString(),Be=q.projItemId,Bt=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",he],["stream_kind",q.projStreamKind],["snapshot_index",q.snapshotIndex],["source_seq",t.sourceSeq],["client_message_id",VS(n.instanceId,t.turnId,q.projStreamKind,he)],["body",q.projBody],["structured",WS(q.projStructured,he)],["stream_snapshot_index",1]]),mn={TAG:"Enqueue",kind:zu,data:Bt,coalesceKey:void 0,resolution:"MustAck"};i.push(mn)});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?cM(q.identity.streamKind):!1)||s.some(q=>cM(q.projStreamKind)),_=n.linzumiAgentSession&&m&&!t.agentReplyToolCallSeen&&!h,g=m&&!_,b=t.protocolFailureReason,y=s9(b)&&g,v=y?void 0:b,S;if(!g&&b===void 0&&t.lastUpstreamErrorReason===void 0){let q;if(_)q={cause:i9};else{let Ce=t.lastUpstreamErrorSummary;q=tJ(t,s.length,Ce!==void 0?Ce:e.lastUpstreamErrorSummary)}S=q}else S=void 0;let A=!g&&v===void 0&&t.upstreamRejectedSeen,R=!g&&v===void 0&&t.providerOutageFlaggedSeen,Z=T9(t.lastUpstreamErrorHttpStatus),L=!g&&v===void 0&&t.edgeBlockEvidence!==void 0,ae=A&&!R&&!Z,U=R||ae?F9(R,e.consecutiveIsolatedRejections,t.providerOutageDetail,t.upstreamRejectedDetail):void 0,K;if(U!==void 0)switch(U.dispositionKind){case"isolated_retry":K=!0;break;case"storm":case"isolated_terminal":K=!1;break}else K=!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&&x9(t.lastUpstreamErrorHttpStatus),W=!g&&v===void 0&&t.lastUpstreamErrorReason===void 0&&Z,V=!g&&v===void 0&&t.lastUpstreamErrorReason===void 0&&!A&&!oe&&!W&&t.toolFatalSeen,M;if(U!==void 0)M=U.dispositionReason;else if(W){let q=t.upstreamRejectedDetail;M=A9(t.lastUpstreamErrorHttpStatus,q!==void 0?q:t.lastErrorDiagnosticText)}else if(oe)M=O9(t.lastUpstreamErrorHttpStatus);else if(V)M=C9(t.toolFatalDetail);else{let q=t.lastUpstreamErrorReason;M=q!==void 0?q:_?n9:S!==void 0?uM+" ["+S.cause+"]":uM}let N=S!==void 0&&v===void 0&&t.modelInteractionSeen&&t.lastErrorDiagnosticText===void 0&&!A&&!oe&&!W&&!V;N?e.consecutiveEmptyTurns=e.consecutiveEmptyTurns+1|0:e.consecutiveEmptyTurns=0;let j=N&&e.consecutiveEmptyTurns>3,re=N&&!j||K,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,Ce=t.edgeBlockEvidence,he={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",Ce!==void 0?Ce.edgeSignature:null]])};i.push(he)}let ut=j?o9+" ("+e.consecutiveEmptyTurns.toString()+" in a row"+(S!==void 0?": "+S.cause:"")+").":void 0,je=v!==void 0?v:g?void 0:ut!==void 0?ut:M,pt=N&&!j?Ae:0,Ye=G(je,q=>q+wM(pt)+(Ue?SM:"")),He=S!==void 0&&!j&&!A&&!oe&&!W&&!V||K||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(je)],["isolated_rejection_retry_suppressed",K]],Se={TAG:"Log",event:"codex.empty_turn_auto_retry_suppressed_cost_cap",fields:Object.fromEntries(q)};i.push(Se)}if(j){let q=t.lastUpstreamErrorSummary,Ce=[["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)]],he={TAG:"Log",event:"codex.empty_turn_loop_guard_tripped",fields:Object.fromEntries(Ce)};i.push(he)}if(y){let q=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["reason",wi(b)]],Se={TAG:"Log",event:"codex.turn_completed_with_unsupported_tool_call_ignored",fields:Object.fromEntries(q)};i.push(Se)}else if(b!==void 0){let q=[["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["reason",wi(b)]],Se={TAG:"Log",event:"codex.turn_completed_with_protocol_failure",fields:Object.fromEntries(q)};i.push(Se)}if(_){let Ce={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(Ce)}if(!m){let q=t.lastUpstreamErrorHttpStatus,Ce=[["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",W],["last_upstream_error_http_status",q!==void 0?q:null],["provider_outage_flagged",R],["isolated_rejection_retry_granted",K],["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]],he={TAG:"Log",event:"codex.turn_completed_without_assistant_output",fields:Object.fromEntries(Ce)};i.push(he)}let Tr;if(Ye!==void 0){let q=k(n.ladderHistoryForSeq,he=>he(t.sourceSeq,It)),Ce=t.lastUpstreamErrorSummary,Se;if(Ce!==void 0)Se=[["upstream_error",Ce]];else{let he=e.lastUpstreamErrorSummary;Se=he!==void 0?[["upstream_error",he]]:[]}Tr=[["status","failed"],["reason",Ye]].concat((He?[["retryable",!0]]:[]).concat([["fate",It]])).concat((q!==void 0?[["ladder",q]]:[]).concat(L?[["failure_class","edge_blocked"]]:[]).concat(Se))}else Tr=[["status","processed"]];let qt=Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["seq",t.sourceSeq]].concat(Tr)),Xe={TAG:"Enqueue",kind:zl,data:qt,coalesceKey:void 0,resolution:"MustAck"};i.push(Xe),Ye===void 0&&(e.lastUpstreamErrorSummary=void 0),i.push(Ye!==void 0?{TAG:"TurnTerminal",turnId:t.turnId,outcome:"failed",reason:Ye,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),vp(e,t.turnId)}function dJ(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 lJ(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 uJ(e,t,r,n){let i=t.method,o=x(t.params,{});if(i===Uu)return;if(i===ql)return sJ(e,o,r,n);if(!f9(i))return;let a=qu(o),s=a!==void 0?a:Sp(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?rJ(e,s,b):void 0}if(c===void 0)return oJ(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 nJ(c,n);let f=c9(i);if(f!==void 0){let b=eJ(i,o,mM(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",HS(mM(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",hp(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 yp(e,c,f,Dl(o),n,r,y,b)}if(i==="error")return iJ(e,c,o,n);if(i==="item/completed"||i==="response_item")return aJ(c,o,r,n);let p=nM(i,o);if(p===void 0)return;if(c.phase!=="ActiveTurnPhase")return _p(c,p,r,n);if(Gl(p)!=="reasoning")return c.reasoningStepsWithoutProgress=0,_p(c,p,r,n);if(c.reasoningStepsWithoutProgress=c.reasoningStepsWithoutProgress+1|0,c.reasoningStepsWithoutProgress<=64)return _p(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),yp(e,c,"failed",h,n,r,"interrupted",BS)}let d={TAG:"Log",event:"pipeline.loop.notification_without_turn",fields:Object.fromEntries([["method",i]])};n.push(d)}function cJ(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=>yp(e,u,"failed",r,i,n,"interrupted",BS)),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}),vp(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 TM(e,t,r,n){switch(t.TAG){case"HarnessNotification":case"CompletionSnapshot":break;case"Lifecycle":return cJ(e,t.kind,t.reason,r,n)}switch(e.phase){case"running":switch(t.TAG){case"HarnessNotification":return uJ(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 dJ(e,c,t.snapshot,r,n);case"Lifecycle":return}case"closing":let o=[["source",jl(t)]],s={TAG:"Log",event:"pipeline.loop.event_after_close",fields:Object.fromEntries(o)};n.push(s);return;case"dead":let l=[["source",jl(t)]],u={TAG:"Log",event:"pipeline.loop.event_after_death",fields:Object.fromEntries(l)};n.push(u);return}}function fJ(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=>TM(e,l,t,r))})}function AM(e,t,r){let n=[];return e.phase==="running"&&fJ(e,r,n),TM(e,t,r,n),n}var KS=2;var mJ=[500,1e3,2500,5e3,1e4,3e4],pJ=1440*60*1e3;function wp(e,t){return e+"\0"+t}function OM(e,t){let r=Math.max(1,Math.ceil(t*e.length)|0);return x(e[r-1|0],0)}function hJ(e){if(e.length===0)return;let t=e.toSorted((r,n)=>r-n);return{p50Ms:OM(t,.5),p95Ms:OM(t,.95),maxMs:x(t[t.length-1|0],0),ackedInWindow:t.length}}function _J(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}function CM(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,mJ.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},Z={contents:void 0},L={contents:void 0},ae=Math.max(1,x(e.maxInFlightPushes,1)),U={contents:0},K={contents:[]},oe={contents:Promise.resolve()},W=()=>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=ES(M,i.contents),te=R$(H,t),ne=x(e.journalRecoveryMaxAgeMs,pJ),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(wp(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=I$(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=W(),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=wp(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=W();if(te!==void 0){let ne=te.outcome;ne!==void 0?Ge(te,ne):H=!1}else H=!1}},je=(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},Ye=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=K.contents;K.contents=[],H.forEach(te=>te())},It=()=>{let H=W();return H===void 0||H.state!=="EntryQueued"||H.outcome!==void 0?!1:H.retryTimer!==void 0},Tr={contents:()=>{}},qt=(H,te)=>{Ye(H);let ne=setTimeout(()=>{if(H.retryTimer=void 0,!(R.contents||S.contents||H.outcome!==void 0))return Tr.contents()},te|0);ne.unref(),H.retryTimer=We(ne)},Xe=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,je(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?qt(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?qt(H,Pt):void 0):je(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 Xe(H,[Pt.event,Pt.payload,Pt.timeoutMs],at),U.contents=U.contents-1|0;return;case"BuildSkip":at(),je(H,{TAG:"OutcomeSkip",_0:Pt._0}),U.contents=U.contents-1|0;return;case"BuildFailed":at(),je(H,{TAG:"OutcomeFail",_0:Pt._0}),U.contents=U.contents-1|0;return}}else{at(),je(H,{TAG:"OutcomeFail",_0:"no outbox builder registered for kind "+te.kind}),U.contents=U.contents-1|0;return}},Ce=()=>{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||Gn(q(te).then(()=>Ce()),at=>(t("outbox_drain_loop_error",Object.fromEntries([["threadKey",i.contents]])),Ce(),Promise.resolve()))),H=H+1|0}He()};Tr.contents=Ce;let Se=()=>{if(S.contents||R.contents)return;if(W()!==void 0){Promise.resolve().then(()=>{if(!R.contents&&!S.contents)return Ce()});return}},he=H=>{let te=f.contents-1,ne=W();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=We(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 he(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&&Ye(at),ne=ne+1|0}U.contents>0&&await Promise.race([new Promise((at,ct)=>{K.contents.push(()=>at())}),_J(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()},Bt=(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=wp(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=Bt(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(wp(H.kind,ct),at);let Pt=L.contents;return Pt!==void 0&&Pt.appendEnqueue(tt),Se(),{TAG:"Ok",_0:Ke}},flush:he,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,Ye(te)),H=H+1|0}Se()},metrics:()=>{let H=W(),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:hJ(y)}},close:H=>{let te=Z.contents;if(te!==void 0)return te;let ne=Be(x(H,3e4));return Z.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(ES(te,H))}};return Se(),tn}var yJ=10*6e4;function bJ(e){switch(e){case"collabAgentToolCall":case"commandExecution":case"dynamicToolCall":case"mcpToolCall":case"terminalInput":return!0;default:return!1}}function ss(e){let t=yr(e);return t!==void 0?x(Or(ue(t)),"unknown error"):"unknown error"}function EM(e){let t=yM(),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,yJ),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}},Z=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(!Z(N)){m.delete(N);return}}),h.keys().toArray().forEach(N=>{if(!Z(N)){h.delete(N);return}})},ae=(N,j)=>{if(Z(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===Uu||re===ql)return;let se=qu(x(j.params,{})),Ae=se!==void 0?se:Sp(t);return Ae!==void 0?ae(Ae,re):void 0;case"CompletionSnapshot":case"Lifecycle":return}},K=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=qu(se),Ue=Ae!==void 0?Ae:Sp(t);if(Ue===void 0||!Z(Ue))return;let Ge=pp(se);if(Ge===void 0||Ge==="")return;if(re==="item/started"){let je=k(qe(se,"item"),He=>E(He,"type"));if(je===void 0||!bJ(je))return;let pt=h.get(Ue),Ye;if(pt!==void 0)Ye=pt;else{let He=new Map;h.set(Ue,He),Ye=He}Ye.set(Ge,{kind:je,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},W=()=>{if(v.contents)return;v.contents=!0;let N=!0;for(;N;){let j=u.shift();if(j!==void 0){let re;try{re=AM(t,j,d)}catch(se){let Ae=ee(se);R("pipeline.loop.event_processing_failed",[["thread_key",e.threadKey],["source",jl(j)],["message",ss(Ae)]]),re=void 0}re!==void 0&&(L(),U(j),K(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 W()},y);N.unref(),V=We(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),W()):R("pipeline.loop.event_after_drain",[["thread_key",e.threadKey],["source",jl(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(),W();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 vJ=10*6e4,SJ={emittedTotalEnqueued:0,emittedTotalAcked:0,emittedTotalRetried:0,emittedTotalDroppedBestEffort:0,emittedTotalPermanentFailures:0,emittedTotalExpiredOnRecovery:0,emittedTotalJournalWriteFailures:0,emittedJournalDegraded:!1};function wJ(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 kJ(e){return Ve(e,void 0,(t,r)=>t!==void 0&&t<=r.startedAtMs?t:r.startedAtMs)}function xJ(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 TJ(e){return Ve(e,void 0,(t,r)=>t!==void 0&&t.startedAtMs<=r.startedAtMs?t:r)}function YS(e){return e}function XS(e){return new Set(e).values().toArray().toSorted(fs)}function RM(e){let t=x(e.now,()=>Date.now()),r=x(e.intervalMs,3e4),n=x(e.turnStalledThresholdMs,vJ),i={contents:SJ},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=XS(p.filter(Z=>Z.waitTurnId===_.candidateTurnId).map(Z=>Z.waitKind));if(v.length===0){a.delete(_.candidateTurnId);let Z=_.candidateOpenItems.length!==0?n*2:n;if(!(y>=Z&&!o.has(_.candidateTurnId)))return;let L=kJ(_.candidateOpenItems);o.add(_.candidateTurnId);let ae=_.candidateSourceSeq,U=_.candidateLastActivityKind,K=_.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",K!==void 0?Math.max(0,m-K):null],["threshold_ms",n],["effective_threshold_ms",Z],["open_item_count",_.candidateOpenItems.length],["open_item_kinds",XS(_.candidateOpenItems.map(W=>W.kind)).map(YS)],["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(YS)],["open_item_count",_.candidateOpenItems.length],["open_item_kinds",XS(_.candidateOpenItems.map(Z=>Z.kind)).map(YS)]]))})},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(wJ(f),p,c[2],m),!xJ(p,f,i.contents))return;let h=TJ(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=We(c)}else u=void 0;return{sample:d,stop:()=>{if(s.contents=!0,u!==void 0){clearInterval(ue(u));return}}}}var OJ=[1e3,5e3];function oi(e,t){return k(e[t],wr)}function Vu(e,t){return k(e[t],ha)}function Ll(e,t){return k(e[t],ke)}function QS(e,t){Object.entries(t).forEach(r=>{e[r[0]]=r[1]})}function Wu(e){let t={};return QS(t,e),t}function CJ(e){let t=e.body;return typeof t=="string"?t:""}function EJ(e){return x(Ll(e,"structured"),{})}function PJ(e){return e===Mu||e===ju||e===is?!0:e===zu}function RJ(e,t){let r=oi(t,"turn_id");r!==void 0&&(e.turn_id=r);let n=oi(t,"item_key");n!==void 0&&(e.item_key=n);let i=Vu(t,"delta_index");i!==void 0&&(e.delta_index=i);let o=Vu(t,"stream_snapshot_index");if(o!==void 0){e.stream_snapshot_index=o;return}}function MM(e,t,r){let n=t.traceparentForThread(r);if(n!==void 0){e.traceparent=n;return}}function IJ(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=oi(t,"client_message_id");if(a===void 0)return{TAG:"BuildSkip",_0:"missing_client_message_id"};let s=oi(t,"turn_id"),l=Vu(t,"source_seq"),d={};s!==void 0&&(d.turn_id=s),d.stream_key=a;let u=Wu(d),c=Ll(t,"local_runner_runtime_metadata");c!==void 0&&QS(u,c);let f=Wu(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),QS(f,d);let m=Wu(EJ(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=CJ(t),h.payload=f,h.client_message_id=a,RJ(h,t),MM(h,e,i),{TAG:"BuildPush",event:"session:stream_thread_message",payload:h,timeoutMs:void 0}},onReply:void 0,coalesce:void 0}}function $J(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=Vu(t,"seq"),a=oi(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=oi(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=oi(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"&&Gt(ip(h))&&(c.fate=h);let _=Ll(t,"ladder");_!==void 0&&(c.ladder=_),t.failure_class==="edge_blocked"&&(c.failure_class="edge_blocked");let b=oi(t,"upstream_error");b!==void 0&&(c.upstream_error=b);let y=oi(t,"turn_id");y!==void 0&&(c.turn_id=y);let v=n.leaseEpoch;return v!==void 0&&(c.lease_epoch=v),MM(c,e,i),{TAG:"BuildPush",event:"message_state",payload:c,timeoutMs:void 0}},onReply:void 0,coalesce:void 0}}function MJ(e){let t=IJ(e);return Object.fromEntries([[Mu,t],[ju,t],[is,t],[zu,t],[zl,$J(e)]])}function jM(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=ze(i,ke).find(a=>{let s=a.id;return typeof s=="string"?s===t:!1});return ze(x(k(k(o,a=>a.items),Qi),[]),ke)}var Fre=new RegExp("^item-\\d+$");var zM=XI;function jJ(e){return new Promise((t,r)=>{setTimeout(()=>t(),e|0)})}function IM(e){let t=yr(e);return t!==void 0?x(Or(ue(t)),"unknown error"):"unknown error"}function $M(e){return e!==void 0?e:null}function NM(e){let t=MJ({instanceId:e.instanceId,wire:e.wire,rowEnvelope:e.rowEnvelope,isRecoveredTurn:e.isRecoveredTurn,traceparentForThread:e.traceparentForThread}),r=CM({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",$M(oi(f.data,"item_key"))],["turn_id",$M(oi(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===zl){let b=oi(f.data,"turn_id"),y=e.isRecoveredTurn;p=b!==void 0&&y!==void 0?y(b)===!0:!1}if(p){let b=Wu(f.data);return b.suppress_terminal_for_recovered_turn=!0,{kind:f.kind,data:b,coalesceKey:f.coalesceKey,resolution:f.resolution}}if(!PJ(f.kind))return f;let m=Vu(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=Wu(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,jJ),l=async f=>{let p=x(e.snapshotRetryDelaysMs,OJ),m=0,h=!1;for(;!h;){let _;try{_=await e.resolveSnapshot(f)}catch(g){let b=ee(g);_={TAG:"Error",_0:IM(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=EM({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=>{Gn(l(f),p=>(e.log("pipeline.snapshot_request_failed",Object.fromEntries([["thread_key",e.threadKey],["turn_id",f],["message",IM(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=RM({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:Uu,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 kp(e){return e.split("_").map((t,r)=>r!==0?t.slice(0,1).toUpperCase()+t.slice(1,t.length):t).join("")}function Hu(e){return x(G(Pm.find(t=>t[0]===e),t=>t[1]),e)}var Fn=Hu("harness_session_id"),ls=kp(Fn);function Zi(e,t){let r=e[t];if(typeof r=="string")return r}function ew(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 NJ(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([ew(t,"code"),k(r,d=>ew(d,"code")),ew(t,"status")]),a=i([Zi(t,"message"),Zi(t,"detail"),Zi(t,"reason"),k(r,d=>Zi(d,"message")),k(r,d=>Zi(d,"detail")),k(r,d=>Zi(d,"reason"))]),s=o!==void 0?e+" "+o:e,l=a!==void 0?a:G(k(n,d=>Zi(d,"type")),d=>"item.type="+d);return G(l,d=>s+": "+d)}function GJ(e,t){switch(e){case"error":case"warning":break;default:return t}let r=NJ(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 FJ=["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 GM(e){let t=y$(e);return t.trimStart().startsWith("!")?t:[t,""].concat(FJ).join(`
391
+ `)}var DJ={sandboxedNeverDefault:!1};function FM(e){let t=Lm(e.approvalPolicy,e.sandbox,DJ);return t.TAG==="Ok"?t._0:"on-request"}function DM(e){let t={};t.approvalPolicy=FM(e);let r=e.sandbox;return r!==void 0&&(t.sandbox=r),t}function qJ(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=FM(n);let s=n.sandbox;if(s!==void 0){let l=ER(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[Fn]=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",ii(l._0)]]))}async function Qo(e,t,r){return e.processingReason=r,e.processingSeq=t,await Ul(e,t,"processing",r)}function LJ(e){let t=G(e.LINZUMI_TYPING_HEARTBEAT_MS,n=>n.trim());if(t===void 0||t==="")return 5e3;let r=Nn(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[Fn]=e.harnessSessionId,t}async function UJ(e){let t=e.processingSeq,r=e.processingReason;if(t!==void 0&&r!==void 0)return await Ul(e,t,"processing",r)}function LM(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",ii(i._0)]])),t&&await UJ(e)}catch(i){let o=ee(i);r.log("kandan.typing_heartbeat_failed",Object.fromEntries([["message",Ne(o).message]]))}e.typingHeartbeatInFlight=!1})()}function UM(e,t){e.typingHeartbeatTimer=We(e.deps.timers.setTimer(()=>{if(e.typingActive)return LM(e,!0),UM(e,t)},t))}function ZJ(e){if(e.typingActive=!0,LM(e,!1),e.typingHeartbeatTimer===void 0)return UM(e,LJ(e.deps.env))}function ZM(e){let t=e.typingHeartbeatTimer;if(t!==void 0){e.deps.timers.clearTimer(ue(t)),e.typingHeartbeatTimer=void 0;return}}function WJ(e,t){if(ZM(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",ii(i._0)]]))})()}function VJ(e,t,r){switch(t){case"item/completed":let n=k(r.item,ke);if(n===void 0||!Gt(Zi(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=>Zi(l,"id"));if(s!==void 0){e.activityJournalTurns.push({turnId:s,items:[]});return}else return;default:return}}function HJ(e){if(e.TAG==="ResultReply")return k(k(k(ke(e._0),t=>t.turn),ke),t=>Zi(t,"id"))}async function WM(e,t){let r=e.deps;r.log("codex.turn_starting",Object.fromEntries([["queued_seq",t.seq],["thread_id",r.threadId],[Fn,r.harnessSessionId]])),await Qo(e,t.seq,"starting turn"),await Qo(e,t.seq,"starting turn"),ZJ(e),e.dispatchingTurnStart=!0,e.pendingStartingPaints=[];let n,i=0,o;try{o=await r.harness.request("turn/start",qJ(r.harnessSessionId,GM(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=HJ(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&&on(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 BJ(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",KS]])),r.timers.setTimer(()=>{(async()=>{await Qo(e,t,"retrying empty turn");let o=await WM(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 KJ(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,WJ(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)<KS,c=i&&u,f=u&&!a.harness.isClosed(),p={inPlaceResume:c,redispatch:f,workerRebuild:!1},m=h$({fate:o,run:e.fateLadderRuns.get(s),nowMs:Date.now(),budgets:Iu(a.env),breaker:(R,Z)=>"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":BJ(e,s);break;case"redispatch":case"worker_rebuild":break}let b=a.switchProbe;if(m.TAG!=="Red"||b===void 0)return;let y=p$(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",kS(y)]]));let v={};v.workspace=a.workspaceSlug,v.channel=a.channelSlug,v.thread_id=a.threadId,v.instance_id=a.instanceId,v[Fn]=a.harnessSessionId,v.seq=s,v.status="failed",n!==void 0&&(v.reason=n),v.fate=o,v.ladder=op(e.fateLadderRuns.get(s),o,Iu(a.env),We(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 tw(e){let t="chat:"+e.workspaceSlug+":"+e.channelSlug,r=await e.transport.join(t,mP(e.commanderId,e.threadId,0),{rejoinPayload:void 0,registrationId:void 0});if(r.TAG!=="Ok")return{TAG:"Error",_0:"chat join failed: "+ii(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[Fn]=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",ii(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=NM({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:ii(g),budgetExempt:zM(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,_[Fn]=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(op(a.fateLadderRuns.get(f),p,Iu(e.env),We(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:jM(h,f).map(_=>_)}},onTurnTerminal:(f,p,m,h,_,g)=>KJ(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)=>{VJ(a,f,p);let m=a.active;if(m!==void 0){let h=k(p.turnId,wr);if(h!==void 0?h===m.turnId:!0){let g=AS(f,p);if(g!==void 0){let b=g;on(a.processingReason,b)&&Qo(a,m.sourceSeq,b)}}}else{let h=a.dispatchingTurnStart,_=k(p.turnId,wr),g=AS(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,GJ(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],[Fn,e.harnessSessionId]])),await Ul(a,f,"queued",void 0),await WM(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,(Xe,q)=>q),b=k(g,Xe=>G(a.failoverOffers.get(Xe),q=>[Xe,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:xS("transient_local",Date.now()),R=y.sourceHarness,Z=y.targetHarness,ae={sourceHarness:R,targetHarness:Z,model:p},U=_$(A,Date.now(),ae);if(U.TAG!=="Ok")return{TAG:"Error",_0:U._0};let K=U._0;a.fateLadderRuns.set(v,K),e.log("codex.user_cross_harness_switch_invoked",Object.fromEntries([["queued_seq",v],["source_harness",R],["target_harness",Z],["model",p]])),await Qo(a,v,g$);let oe=e.harnessSessionId,W=a.activityJournalTurns,V={harnessSessionId:oe,turns:W},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?GM(se):"Continue where the previous harness session left off.",attachments:[]},Ge={model:p,reasoningEffort:void 0,input:Ue},ut=await C$(V,e.threadId,m,e.cwd,_,Date.now(),h,re,Ge,Xe=>{switch(e.log("kandan.switch_target_event",Object.fromEntries([["queued_seq",v],["kind",$m(Xe)]])),Xe.TAG){case"TurnCompleted":Ul(a,v,"processed",void 0);return;case"TurnFailed":Ul(a,v,"failed",Xe.failure.reason);return;default:return}}),je=Iu(e.env),pt=Xe=>op(Xe,"transient_local",je,We(y));if(ut.TAG==="Ok"){let Xe=ut._0;a.switchedTargetSession=Xe.session;let q={...ae},Ce=TS(K,"switch_dispatched",Date.now(),(q.redactedReasoningCount=Xe.redactedReasoningCount,q.transpiledItemCount=Xe.transpiledItemCount,q),void 0);a.fateLadderRuns.set(v,Ce),e.log("codex.user_cross_harness_switch_dispatched",Object.fromEntries([["queued_seq",v],["source_harness",R],["target_harness",Z],["model",p],["target_session_id",Xe.targetSessionId],["transpiled_item_count",Xe.transpiledItemCount],["redacted_reasoning_count",Xe.redactedReasoningCount]])),await Qo(a,v,"continuing this job on the "+y.targetHarness+" harness after a user-invoked switch");let Se={};Se.ok=!0,Se.target_session_id=Xe.targetSessionId,Se.turn_id=Xe.turnId;let he=Xe.sessionFile;return he!==void 0&&(Se.session_file=he),Se.transpiled_item_count=Xe.transpiledItemCount,Se.redacted_reasoning_count=Xe.redactedReasoningCount,Se.ladder=pt(Ce),{TAG:"Ok",_0:Se}}let Ye=ut._0,He=T$(Ye),It=A$(Ye),Tr=TS(K,O$(Ye)?"switch_refused":"switch_failed",Date.now(),ae,He+": "+It);a.fateLadderRuns.set(v,Tr),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 qt={};return qt.ok=!1,qt.refusal=He,qt.reason=It,qt.ladder=pt(Tr),{TAG:"Ok",_0:qt}},close:async()=>{ZM(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 nj from"node:os";import*as ij from"node:path";import*as nw from"node:os";import*as Zl from"node:path";var YJ="LINZUMI_CODEX_HOME";function XJ(e){let t=G(e[YJ],r=>r.trim());return t!==void 0&&t!==""?t:Zl.join(nw.homedir(),".linzumi","codex-home")}function QJ(e){let t=G(e.CODEX_HOME,r=>r.trim());return t!==void 0&&t!==""?t:Zl.join(nw.homedir(),".codex")}var e6=["# 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(Rv.map(e=>e+' = "'+Pv+'"')).concat([""]).join(`
392
+ `);function VM(e){let t=XJ(e),r=Ft(t);if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=yo(Zl.join(t,"config.toml"),e6,{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 t6={beforeCommit:()=>Promise.resolve()},rw={contents:0},xp={contents:0};async function HM(e,t,r){let n=r!==void 0?r:t6,i=QJ(t);if(i===e)return"SkippedSelfCopy";rw.contents=rw.contents+1|0;let o=rw.contents,a=Zl.join(i,"auth.json"),s=Zl.join(e,"auth.json"),l=s+".tmp-"+o.toString(),d=Qt(a);if(d.TAG==="Ok"){let c=Ft(e);if(c.TAG!=="Ok")return{TAG:"InstallFailed",stage:"mkdir",code:c._0.code};let f=_n(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(),xp.contents>o)return _n(l),{TAG:"SkippedStale",generation:o,committedGeneration:xp.contents};let m=li(l,s);return m.TAG==="Ok"?(xp.contents<o&&(xp.contents=o),{TAG:"Installed",generation:o}):(_n(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 JM from"node:child_process";function n6(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 i6=["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 BM(e,t){return{command:e,args:["-e",i6.join(`
393
+ `),n6(t)]}}async function a6(e){let t=await pa(e,{});if(t.TAG!=="Ok")return!1;let r=t._0.status;return r>=200?r<=299:!1}function YM(e,t){return{audit:e,env:t,protectedPids:()=>new Set,fetchOk:a6,now:()=>Date.now(),readyzTimeoutMs:1e4,readyzPollMs:50}}function s6(e){return e}function iw(e,t,r,n,i,o){e.audit(t,Object.fromEntries([["command",r],["args",n.map(s6)],["cwd",i]].concat(o.concat([["purpose","codex.app_server"]]))))}function KM(e,t){let r=t.pid;if(r==null){Tl(t,"SIGINT");return}let n=Fm(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 l6(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}async function d6(e,t,r){let n=OP(t),i=n!==void 0?n:t,o=e.now()+e.readyzTimeoutMs,a;for(;hn(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 l6(e.readyzPollMs)}return x(a,{TAG:"Error",_0:"timed out waiting for codex app-server readyz"})}async function XM(e,t,r,n,i,o,a){let s=await lR();if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0};let l="ws://127.0.0.1:"+s._0.toString(),d=wP(l,n),u={contents:""},c=BM(process.execPath,{command:t,args:d,pollIntervalMs:RP,protectedPidsDir:rR()});iw(e,"process.spawn",t,d,r,[]);let f=JM.spawn(c.command,c.args,{cwd:r,env:kP(e.env,i,o),stdio:xP,detached:!0}),p={contents:void 0},m=[],h=(S,A,R)=>{if(S!=null){S.on("data",Z=>{let L=Z.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=TP(u.contents+S)});let _=Dm({stop:()=>KM(e,f),pid:Rr(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 Z=f.pid;iw(e,"process.exit",t,d,r,[["pid",Z??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;iw(e,"process.spawned",t,d,r,[["pid",g??null]]);let b=()=>{_.unregister(),KM(e,f)},y=await d6(e,l,()=>p.contents);if(y.TAG==="Ok")return{TAG:"Ok",_0:{url:l,pid:Rr(f.pid),stop:b,onExit:S=>{if(p.contents!==void 0)return S();m.push(S)}}};let v=y._0;return b(),AP(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 XM(e,t,r,n,i,o,a+1|0)):{TAG:"Error",_0:v}}function QM(e,t,r,n,i,o){return XM(e,t,r,n,i!==void 0?i:[],o!==void 0?o:!0,1)}function ow(e,t){let r=e[t];if(typeof r=="string")return r}function Tp(e){let t=G(e,r=>r.trim());if(t!==void 0&&t!=="")return t}function Wl(e){let t=Tp(ow(e,"modelProvider")),r=k(e.llmProxy,ke),n=k(r,a=>Tp(ow(a,"baseUrl"))),i=k(r,a=>Tp(ow(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 c6(e){let t=e.length;for(;t>0&&e.slice(t-1|0,t)==="/";)t=t-1|0;return e.slice(0,t)}function ej(e){let t=c6(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 tj(e,t){if(e.provider!=="openai-proxy")return{TAG:"Ok",_0:[["LINZUMI_LLM_PROXY_TOKEN",e.llmProxyToken]]};let n=Tp(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 f6(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 m6(e,t){mr(JSON.stringify(Object.fromEntries([["worker_event",e],["payload",t]]))+`
395
+ `)}function p6(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 h6(e){return Xu(k(e.split(":").at(-1),Nn),t=>isFinite(t)&&t>=1?t<=65535:!1)}async function aw(e,t,r){let n=YM(t,e),i=VM(e);if(i.TAG!=="Ok")return{TAG:"Error",_0:i._0.message};let o=i._0;r.provider!==void 0||await HM(o,e,void 0);let s=Mc(r.serviceUrl,r.token,r.agentMcpToken,new Date);if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0.summary};let l=s._0,d=Lc(process.execPath,process.argv[1],process.execArgv),u=wu(r.token),c=Ws({command:d.command,argsPrefix:d.argsPrefix,serviceUrl:r.serviceUrl,authFilePath:l.path,ownerUsername:u.actorUsername,operatingMode:"Text",cwd:r.cwd,threadId:r.threadId,agentSession:Gt(r.agentMcpToken),devServices:{scope:r.devServicesScope,ownerPid:r.devServicesOwnerPid}}),f=r.provider,p=f!==void 0?tj(f,e):{TAG:"Ok",_0:[]};if(p.TAG==="Ok"){let m=await QM(n,r.codexBin,r.cwd,{model:r.model,reasoningEffort:r.reasoningEffort,fast:r.fast,mcpConfigArgs:[rx(c)],modelProvider:G(r.provider,ej)},[["CODEX_HOME",o]].concat(p._0),void 0);if(m.TAG==="Ok"){let h=m._0;return h.onExit(()=>l.cleanup()),{TAG:"Ok",_0:h}}return l.cleanup(),{TAG:"Error",_0:m._0}}return l.cleanup(),{TAG:"Error",_0:p._0}}async function oj(e){let t=process.env,r=nj.homedir(),l=CI(e,{env:t,processCwd:()=>process.cwd(),home:r,resolveBaseCwd:d=>d!==void 0?ij.resolve(d):process.cwd(),fallbackCodexBin:()=>Em(void 0,Om(),d=>{mr(d)},Cm,t,void 0),warnStaleRoot:d=>{mr(OI(d))}});if(l.TAG==="Ok"){let d=l._0,u=d.options,c=m6,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 K=f.contents;if(K!==void 0)return K.stop()},_=async()=>{let U=await aw(t,c,{codexBin:u.codexBin,cwd:u.cwd,serviceUrl:u.kandanUrl,token:u.token,agentMcpToken:u.linzumiAgentMcpToken,devServicesScope:d.runnerId,devServicesOwnerPid:p6(t),threadId:u.kandanThreadId,model:k(u.runtimeDefaults,K=>K.model),reasoningEffort:k(u.runtimeDefaults,K=>K.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 K=await Nm(U.url,void 0,void 0,void 0);if(K.TAG!=="Ok")return{TAG:"Error",_0:"codex app-server connect failed: "+K._0};let oe=await Gm(K._0,{audit:c,onWire:(V,M)=>{},keepaliveIntervalMs:3e4});if(oe.TAG!=="Ok")return{TAG:"Error",_0:"codex app-server handshake failed: "+oe._0};let W=oe._0;return p.contents=W,{TAG:"Ok",_0:TR(W)}},y=process.send!=null?{send:f6,isConnected:()=>on(Rr(process.connected),!1),onMessage:U=>{process.on("message",U)},onceDisconnect:U=>{process.once("disconnect",U)}}:void 0,L={preflightFailure:()=>vR(u.cwd,u.allowedCwds,bR(u.cwd,u.allowedCwds,U=>!1)),startAppServer:_,connectClient:g,onSessionClosed:U=>{let K=p.contents;if(K!==void 0)return K.onClose(U)},ipc:y,commanderManagedPorts:()=>{let U=f.contents;if(U===void 0)return[];let K=h6(U.url);return K!==void 0?[{port:K,pid:G(U.pid,oe=>oe),processName:"Codex app-server",processIconKey:"codex",agentProvider:"codex"}]:[]},log:c,writeStderr:U=>{mr(U)},waitForStop:()=>new Promise((U,K)=>{let oe={contents:!1},W=()=>{if(!oe.contents)return oe.contents=!0,U()};process.once("disconnect",W),process.once("SIGTERM",W),process.once("SIGINT",W);let V=f.contents;if(V!==void 0)return V.onExit(W)}),stop:h},ae=await EI(u.kandanThreadId,L);return ae.TAG==="Ok"?typeof ae._0!="object"?0:1:(mr(ae._0+`
396
+ `),h(),1)}return mr(l._0+`
397
+ `),1}var _6=`<linzumi_markdown_media_guidance>
392
398
  Some Linzumi users have opted into rich Markdown media rendering. When you are
393
399
  writing a visible Linzumi message, channel message, or thread reply, you may use
394
400
  these Markdown-compatible media directives:
@@ -491,7 +497,7 @@ Why bad: External image hosts are intentionally not auto-rendered; attach the im
491
497
  Use media directives only after upload/attach returns a Linzumi download URL.
492
498
  Keep "src" required, all other fields optional, and never exceed 10 embeds in one message.
493
499
  </media_reminder>
494
- </linzumi_markdown_media_guidance>`,L9=`
500
+ </linzumi_markdown_media_guidance>`,g6=`
495
501
  <linzumi_markdown_media_guidance>
496
502
  Linzumi messages can embed rich media (::audio / ::video / ::image directives
497
503
  and Markdown images) - but ONLY with a Linzumi attachment download URL
@@ -499,16 +505,16 @@ returned by upload/attach, never external or local paths. BEFORE writing any
499
505
  media directive, call the linzumi_media_guide tool once and follow the full
500
506
  contract it returns.
501
507
  </linzumi_markdown_media_guidance>
502
- `;function mp(e,t){let r=e[t];if(r!==void 0&&typeof r=="string"&&r.trim()!=="")return r.trim()}function U9(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&Rt(r))return r.toString()}function cM(e,t){if(e===void 0)return;let r=ke(e);if(r!==void 0){let n=mp(r,"threadId"),i=mp(r,"creatorUserId"),o=i!==void 0?i:U9(r,"creatorUserId"),a=mp(r,"creatorUsername"),s=mp(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 pp(e){return e.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;")}function Z9(e){return`<linzumi_context>
503
- <linzumi_thread_id>`+pp(e.threadId)+`</linzumi_thread_id>
504
- <linzumi_creator_user_id>`+pp(e.creatorUserId)+`</linzumi_creator_user_id>
505
- <linzumi_creator_username>`+pp(e.creatorUsername)+`</linzumi_creator_username>
506
- <linzumi_conversation_url>`+pp(e.conversationUrl)+`</linzumi_conversation_url>
508
+ `;function Ap(e,t){let r=e[t];if(r!==void 0&&typeof r=="string"&&r.trim()!=="")return r.trim()}function y6(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&Ot(r))return r.toString()}function sj(e,t){if(e===void 0)return;let r=ke(e);if(r!==void 0){let n=Ap(r,"threadId"),i=Ap(r,"creatorUserId"),o=i!==void 0?i:y6(r,"creatorUserId"),a=Ap(r,"creatorUsername"),s=Ap(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 Op(e){return e.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;")}function b6(e){return`<linzumi_context>
509
+ <linzumi_thread_id>`+Op(e.threadId)+`</linzumi_thread_id>
510
+ <linzumi_creator_user_id>`+Op(e.creatorUserId)+`</linzumi_creator_user_id>
511
+ <linzumi_creator_username>`+Op(e.creatorUsername)+`</linzumi_creator_username>
512
+ <linzumi_conversation_url>`+Op(e.conversationUrl)+`</linzumi_conversation_url>
507
513
  </linzumi_context>
508
514
 
509
515
  <linzumi_pr_footer_instruction>
510
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+`)
511
- </linzumi_pr_footer_instruction>`}function fM(e){let t=x(e.agentLabel,"Codex"),r=e.mcpAvailable,n=`For any job with several distinct steps - or where the
517
+ </linzumi_pr_footer_instruction>`}function lj(e){let t=x(e.agentLabel,"Codex"),r=e.mcpAvailable,n=`For any job with several distinct steps - or where the
512
518
  user benefits from watching progress - record the goal and a short plan with
513
519
  linzumi_upsert_coding_job_plan BEFORE starting work, and keep it accurate as
514
520
  you go: whenever you discover steps to add, steps that are no longer needed,
@@ -528,9 +534,9 @@ for the plan steps.`:"",l=e.developerPrompt,d=l!==void 0?`
528
534
  <invoker_developer_prompt>
529
535
  `+l+`
530
536
  </invoker_developer_prompt>
531
- `:"",u=ze([D(e.projectSharedInstructions,le=>`Shared guidance for everyone working in this project:
532
- `+le),D(e.projectPersonalInstructions,le=>`Personal guidance from the invoking user for their jobs in this project:
533
- `+le)],le=>le),f=u.length!==0?`
537
+ `:"",u=ze([G(e.projectSharedInstructions,oe=>`Shared guidance for everyone working in this project:
538
+ `+oe),G(e.projectPersonalInstructions,oe=>`Personal guidance from the invoking user for their jobs in this project:
539
+ `+oe)],oe=>oe),f=u.length!==0?`
534
540
  <project_instructions>
535
541
  `+u.join(`
536
542
 
@@ -542,7 +548,7 @@ Recent work in this project:
542
548
  `+p+`
543
549
  </project_memory>
544
550
  `:"",h=e.linzumiContext,_=h!==void 0?`
545
- `+Z9(h)+`
551
+ `+b6(h)+`
546
552
  `:"",g=e.devServicesAvailable?`
547
553
  Managed dev services: to run a long-lived local dev server (npm run dev, vite,
548
554
  storybook, docker compose up, a database), ALWAYS use linzumi_dev_service_start
@@ -614,7 +620,7 @@ linzumi_start_coding_job - pass its project_task_id so the task links to its
614
620
  job and flips to active, write the work_description from the task's title and
615
621
  description, and omit channel, runner_key, and cwd to reuse this job's own
616
622
  channel, computer, and folder. Then report which tasks started and which
617
- stayed blocked or could not start.`:"",z=y?`
623
+ stayed blocked or could not start.`:"",Z=y?`
618
624
  Before creating or reorganizing project tasks, you MUST review the current
619
625
  project state with linzumi_get_project_tasks.
620
626
  You MUST update existing project tasks in place instead of deleting and
@@ -629,7 +635,7 @@ ready tasks and wait for the user's answer.
629
635
  You MUST NOT start project tasks with linzumi_start_coding_job unless the
630
636
  user clearly accepted that offer in this conversation.
631
637
  When you start a coding job for a task item, you MUST pass its
632
- project_task_id so the task links to the job and flips to active.`:"",H=y?`
638
+ project_task_id so the task links to the job and flips to active.`:"",L=y?`
633
639
 
634
640
  GOOD project task DAG transfer:
635
641
  - linzumi_get_project_tasks shows group "Checkout revamp" already tracking a
@@ -660,11 +666,11 @@ BAD auto-start offer:
660
666
  - Transfer the plan and immediately start coding jobs for every task that
661
667
  "looked ready" without asking.
662
668
  Why bad: Starting jobs costs real compute and attention. Starting is the
663
- user's decision; the agent only offers and acts on a clear yes.`:"",ce=y?`
669
+ user's decision; the agent only offers and acts on a clear yes.`:"",ae=y?`
664
670
  Land accepted plans in the project task DAG, update existing tasks in place,
665
671
  and never delete tasks you are not very confident are obsolete. After a
666
672
  transfer, offer to start the ready tasks; launch them only on the user's
667
- clear yes.`:"",ne=r?L9:q9,ie=r?`Use the Linzumi MCP server named "linzumi" when you need authenticated
673
+ clear yes.`:"",U=r?g6:_6,K=r?`Use the Linzumi MCP server named "linzumi" when you need authenticated
668
674
  workspace context or coding-job metadata tools.
669
675
  `+o+`
670
676
  When the coding-job scope changes materially, call linzumi_rename_coding_job
@@ -707,7 +713,7 @@ deployments in the metadata overview.`+v+`
707
713
  Work only in the approved project folder unless the human explicitly asks for
708
714
  something else in the Linzumi thread. Start, inspect, and modify the local app
709
715
  from that folder. Report concise progress and exact blockers in the thread.
710
- `+ie+R+`
716
+ `+K+R+`
711
717
  Before stopping, confirm the metadata overview tells the truth for a user who
712
718
  only sees that overview: completed work is completed, active work is really
713
719
  active, blocked work says why, and no stale in-progress step is left behind.
@@ -787,7 +793,7 @@ user's clear yes. Updating a PR the job is already driving is always fine.
787
793
  When several Linzumi Codex sessions work in the same repository, create or use
788
794
  a separate checkout or git worktree for this task before making changes, unless
789
795
  the human explicitly asks you to share the current checkout. Do not overwrite or
790
- revert another session's work or the user's own uncommitted work.`+z+`
796
+ revert another session's work or the user's own uncommitted work.`+Z+`
791
797
  </rules>
792
798
 
793
799
  <examples>
@@ -849,14 +855,14 @@ BAD response to the same request:
849
855
  - Classify the Storybook diffs as semantic, then run "git restore -- ..." and
850
856
  "rm -f" the untracked files anyway because the request sounded broad.
851
857
  Why bad: Semantic uncommitted work and untracked files were destroyed without
852
- confirmation. Untracked deletions have no git recovery at all.`+H+`
858
+ confirmation. Untracked deletions have no git recovery at all.`+L+`
853
859
  </examples>
854
860
  `+_+`
855
- `+m+f+d+ne+`
861
+ `+m+f+d+U+`
856
862
  <task_reminder>
857
863
  You are the Commander-launched Linzumi `+t+` session. Do the implementation
858
864
  work in the approved project folder, keep preview servers reachable through the
859
- secure tunnel, and keep the Linzumi thread and coding-job metadata truthful.`+ce+`
865
+ secure tunnel, and keep the Linzumi thread and coding-job metadata truthful.`+ae+`
860
866
  </task_reminder>
861
867
 
862
868
  <output_format>
@@ -866,17 +872,17 @@ call an MCP message-posting tool to deliver that reply. When the task requires
866
872
  files, code, commits, pull requests, previews, or verification output, report
867
873
  the concrete artifact, command, result, and any exact blocker. Do not emit
868
874
  machine-only JSON unless the user or tool explicitly requests it.
869
- </output_format>`}var qS="rescript";function V9(){return new Promise((e,t)=>{setTimeout(()=>e(),0)})}function jn(e){return e!==void 0?e:null}function hp(e,t){return k(e[t],ke)}function Ir(e,t){let r=e[t];if(typeof r=="string")return r}function Nl(e,t){let r=e[t];if(typeof r=="number")return r}function qe(e,t){let r=D(Ir(e,t),n=>n.trim());if(r!==void 0&&r!=="")return r}function mM(e){let t=Li(e);return t.TAG==="Ok"?t._0:e}function pM(e,t){let r=D(e,o=>o.trim());if(r===void 0)return{TAG:"RefusedCwd",reason:"missing_cwd"};if(r==="")return{TAG:"RefusedCwd",reason:"missing_cwd"};let n=mM(r),i=t.find(o=>{let a=mM(o);return n===a?!0:n.startsWith(a+gp.sep)});return i!==void 0?{TAG:"AllowedCwd",cwd:n,matchedRoot:i}:{TAG:"RefusedCwd",reason:"cwd_not_allowed"}}function ZS(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 hM(e){return typeof e!="object"&&e!=="CodexProvider"?"claude-code":"codex"}function H9(e){return typeof e!="object"&&e!=="CodexProvider"?"Claude Code":"Codex"}function _M(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 B9(e,t){let r=$P(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}}function WS(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&Rt(r))return r}function Jo(e){let t=WS(e,"sourceSeq");return t!==void 0?t:WS(e,"rootSeq")}function LS(e,t,r,n,i,o){let a=Jo(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 Ce(s("workspace"),l=>Ce(s("channel"),d=>$t(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[Mn]=o);let f=ZS(e);return typeof f!="object"&&f!=="CodexProvider"&&(c.agent_provider="claude-code"),c})))}function _p(e,t,r){let n=(a,s)=>{let l=e[a];return typeof l=="string"?l:s},i=n("sandbox",r),o=se(e.sandboxedApprovalNeverDefault,!0);return $t(Ev(n("approvalPolicy",t),i,{sandboxedNeverDefault:o}),a=>({settingsModel:n("model",void 0),settingsReasoningEffort:n("reasoningEffort",void 0),settingsApprovalPolicy:a,settingsSandbox:i,settingsSandboxedNeverDefault:o,settingsFast:se(e.fast,!0)}))}function K9(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=Pm(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 J9(e){return gp.join(e,".linzumi","commanderImplFallback.json")}function gM(e){let t=Yo.homedir(),r=$R(Vv(t),e),n;return n=r.TAG==="Ok",n&&e==="Ts"&&un(J9(t)),n}function Y9(e){let t=D(e.LINZUMI_CODEX_START_REQUEST_TIMEOUT_MS,n=>n.trim());if(t===void 0)return 12e4;let r=yi(t);return r!==void 0&&r>0?r:12e4}async function yM(e,t){let r=process.env,n=GE(e.commanderId),i="codex-"+US.randomUUID(),o=ym(e.token),a=Y9(r),s={contents:!1},l=Rm(WP(e.commanderId,r),t,void 0,void 0),d=Rm(VP(e.commanderId,r),t,!0,void 0),u=XP(Rm(HP(e.commanderId,r),t,void 0,!0)),c=YP(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 FP(h,e.cwd);let _=await dI(e.serviceUrl,{TAG:"Token",_0:e.token},void 0,{controlCursorStore:aI(l),controlEpochStore:sI(c),onOperatorNotice:S=>{},auditEvent:(S,A)=>t(S,A)});if(_.TAG!=="Ok")return{TAG:"Error",_0:Qn(_._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=()=>FE({clientId:e.commanderId,machineFingerprint:void 0,machineFingerprintV2:void 0,runnerPid:process.pid,version:pu(),hostname:Yo.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=hp(S,"runner_config");if(A!==void 0){let Z=A.allowedCwds;Array.isArray(Z)&&(f.contents=vc(Z),t("runner.config_updated",Object.fromEntries([["source","join"],["configVersion",x(A.configVersion,null)],["allowedCwdCount",f.contents.length]])));let $=Ir(A,"commander_impl");if($!==void 0){let M=$.trim()==="rescript"?"Rescript":"Ts",te=Vv(Yo.homedir()),oe=IR(te);if(!se(oe,M)){let Ae=gM(M);t("runner.commander_impl_assigned",Object.fromEntries([["impl",vl(M)],["previousCache",jn(D(oe,vl))],["persisted",Ae],["runningImpl",qS]]))}}}let R=hp(S,"compute_node");if(R!==void 0){let Z=Nl(R,"reset_generation");t("runner.compute_node",Object.fromEntries([["id",jn(Ir(R,"id"))],["name",jn(Ir(R,"name"))],["identityQuality",jn(Ir(R,"identity_quality"))],["resetGeneration",Z!==void 0?Z:null]]))}let z=hp(S,"roster");if(z!==void 0){let Z=ze(x(k(z.threads,Ji),[]),ke),$=up(Du("thread_id"));t("kandan.roster_seeded",Object.fromEntries([["source","join"],["thread_count",Z.length],["truncated",x(z.truncated,!1)],["skipped_entries",0],["threads",Z.map(N=>{let M={};return M[Du("thread_id")]=x(N[$],null),M.provider_session_key=x(N.provider_session_key,null),M.channel_id=x(N.channel_id,null),M.title=x(N.title,null),M.channel_slug=x(N.channel_slug,null),M.cwd=x(N.cwd,null),M})]]))}let H=tR();QP(S.resume_reconcile).forEach(Z=>{let $=Z.leaseEpoch;if($!==void 0&&H.adopt(Z.threadId,$))return t("runner.resume_reconcile_lease_adopted",Object.fromEntries([[up(Du("thread_id")),Z.threadId],["leaseEpoch",$]]))});let ne=globalThis.__linzumiCommanderChooserMarkJoined;if(ne!==void 0){let Z;try{Z=$r(ne())}catch{Z=void 0}Z!==void 0&&t("commander.chooser.fallback_reported",x(ke(Z),{}))}let ie=async Z=>{let $=await yv(Z,void 0,void 0,void 0);if($.TAG!=="Ok")return{TAG:"Error",_0:"codex app-server connect failed: "+$._0};let N=await bv($._0,{audit:(M,te)=>t(M,te),onWire:(M,te)=>{},keepaliveIntervalMs:3e4});return N.TAG==="Ok"?{TAG:"Ok",_0:N._0}:{TAG:"Error",_0:"codex app-server handshake failed: "+N._0}},le=e.harnessUrl,W;if(le!==void 0){let Z=await ie(le);W=Z.TAG==="Ok"?{TAG:"Ok",_0:[Z._0,le,void 0]}:{TAG:"Error",_0:Z._0}}else{let Z=e.harnessBin;if(Z!==void 0){let $=await uM(r,(N,M)=>t(N,M),{codexBin:Z,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($.TAG==="Ok"){let N=$._0,M=await ie(N.url);M.TAG==="Ok"?W={TAG:"Ok",_0:[M._0,N.url,N]}:(N.stop(),W={TAG:"Error",_0:M._0})}else W={TAG:"Error",_0:$._0}}else W={TAG:"Error",_0:"the differential commander requires codexUrl (no spawned harness binary)"}}if(W.TAG==="Ok"){let Z=W._0,$=Z[2],N=Z[1],M=Z[0],te=new Map,oe={contents:0},Ae={contents:0},Le=O=>(Ae.contents=Ae.contents+1|0,$n(O.then(()=>{Ae.contents=Ae.contents-1|0}),ee=>(Ae.contents=Ae.contents-1|0,Promise.resolve()))),Ne=(O,ee)=>Le((async()=>{let K=await g.push(n,O,ee,void 0);if(K.TAG!=="Ok")return t("kandan.event_push_failed",Object.fromEntries([["event",O],["message",Qn(K._0)]]))})()),ut=async O=>{if(se(e.approvalPolicy,"never")&&se(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",jn(k(k(O.params,ke),K=>Ir(K,"turnId")))]])),Object.fromEntries([["decision","accept"]])};M!==void 0&&(M.onNotification(O=>{oe.contents=oe.contents+1;let ee=x(k(O.params,ke),{}),K={};K.instanceId=i,K.seq=oe.contents,K.method=O.method,K.params=ee,K.receivedAt=new Date().toISOString(),Ne("codex_notification",K),t("codex.notification",Object.fromEntries([["method",O.method]])),te.values().toArray().forEach(V=>V.routeNotification(O.method,ee))}),M.onRequest(ut),M.onClose(O=>{if(!s.contents){t("codex.app_server_connection_lost",Object.fromEntries([["cause",O]])),te.values().toArray().forEach(ee=>ee.failOnHarnessDeath(O));return}}));let je=()=>{let O={};return O.instanceId=i,O.clientId=e.commanderId,N!==void 0&&(O.codexUrl=N),O.cwd=e.cwd,O.hostname=Yo.hostname(),O.workspace=e.workspaceSlug,O.channel=null,O},ht=je();ht.codexThreads=[],ht.tuiLaunched=!1,await Ne("instance_started",ht),t("runner.instance_started",Object.fromEntries([["runnerId",e.commanderId],["hostname",Yo.hostname()],["workspace",e.workspaceSlug],["version",pu()],["instanceId",i],["codexUrl",jn(N)]])),await Ne("heartbeat",je());let Ye=setInterval(()=>{Ne("heartbeat",je())},15e3);Ye.unref(),g.onReconnect(async O=>await Ne("heartbeat",je()));let We={contents:void 0},jt=(async()=>{try{let O=await WE();We.contents=RR({sdk:O,audit:(ee,K)=>t(ee,K),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"]]))}})(),Xe={targetHarness:"claude-code",model:void 0,targetAdapterAvailable:()=>Ft(We.contents)},F=async O=>await Ne("codex_response",O),Ee=async O=>{let ee={};return ee.instanceId=i,ee.message=O,await Ne("codex_error",ee)},ve=(O,ee)=>KP(e.workspaceSlug,O,ee),_e=async(O,ee,K,V,de)=>{let w=qe(O,os);if(w!==void 0){let P=qe(O,"threadId"),G=qe(O,"channel"),L=qe(O,"workspace"),q=qe(O,"workDescription"),Y=Nl(O,"sourceSeq"),Re=Y!==void 0?Y:Nl(O,"rootSeq"),Se=te.get(w),Oe;if(Se!==void 0)Oe={TAG:"Ok",_0:Se};else if(L!==void 0&&G!==void 0&&P!==void 0){let Be=await zS({transport:g,commanderTopic:n,commanderId:e.commanderId,instanceId:i,harness:V,log:t,timers:kl,env:r,workspaceSlug:L,channelSlug:G,threadId:P,harnessSessionId:w,cwd:ee,rootSeq:Nl(O,"rootSeq"),defaults:{approvalPolicy:e.approvalPolicy,sandbox:e.sandbox},actorSlug:o.actorUsername,actorUserId:o.actorUserId,leaseEpochFor:he=>H.current(he),commitAppliedSourceSeq:he=>{bu(u,ve(G,P),he,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",P],["channel",G],["sourceSeq",he]]))},switchProbe:Xe});if(Be.TAG==="Ok"){let he=Be._0;te.set(w,he),de&&V.onNotification(ft=>he.routeNotification(ft.method,x(k(ft.params,ke),{}))),Oe={TAG:"Ok",_0:he}}else Oe={TAG:"Error",_0:Be._0}}else Oe={TAG:"Error",_0:"cannot reconnect a Kandan thread without a session"};if(Oe.TAG!=="Ok")return{TAG:"Error",_0:Oe._0};let Ie=Oe._0;if(q!==void 0){if(Re===void 0)return{TAG:"Error",_0:"cannot reconnect a Kandan thread without a session"};if(G!==void 0&&P!==void 0?!Im(u.initial(ve(G,P)),Re):!1){t("kandan.reconnect_thread_seq_already_applied",Object.fromEntries([["source_seq",Re],[Mn,w]]));let Ct={};return Ct.instanceId=i,Ct.controlType="reconnect_thread",Ct.cwd=ee,Ct.matchedRoot=K,Ct[os]=w,Ct.duplicate=!0,{TAG:"Ok",_0:Ct}}let he=(Ct,At,Tr)=>(async()=>{let hr=await g.push(Ct,At,x(ke(Tr),{}),void 0);return hr.TAG==="Ok"?{TAG:"Ok",_0:hr._0}:{TAG:"Error",_0:Qn(hr._0)}})(),ft={workspace:L,channel:G,threadId:P},ir=await tI((Ct,At)=>V.request(Ct,At),kl,a,w,H$({approvalPolicy:e.approvalPolicy,sandbox:e.sandbox}),{forceRehydrate:se(O.sessionRehydrate,!0),buildRehydrationText:async Ct=>{let At=await JR(he,n,ft,t);return{TAG:"Ok",_0:YR(At,Ct)}},buildRehydrationItems:async Ct=>{let At=await eI(he,n,ft,t);if(At===void 0)return{TAG:"Ok",_0:void 0};if(At.nodes.length===0)return{TAG:"Ok",_0:void 0};let Tr=qR(At.nodes.map(XR),D(At.budget,QR),Ct,At.threadTitle);return t("kandan.reconnect_thread_rehydration_ir_emitted",Object.fromEntries([["linzumi_thread_id",P!==void 0?P:null],["codex_thread_id",w],["emitted_nodes",Tr.emittedNodeCount],["omitted_nodes",Tr.omittedNodeCount],["redacted_reasoning",Tr.redactedReasoningCount],["emitted_token_estimate",Tr.emittedTokenEstimate],["max_emission_tokens",Tr.maxEmissionTokens]])),{TAG:"Ok",_0:Tr.items}},log:t});if(ir.TAG!=="Ok")return{TAG:"Error",_0:ir._0.message};typeof ir._0=="object"&&await Ie.publishRebuilt(Re);let Yt=await Ie.runClaimedTurn(Re,q);if(Yt.TAG!=="Ok")return{TAG:"Error",_0:Yt._0};let Ut={};return Ut.instanceId=i,Ut.controlType="reconnect_thread",Ut.cwd=ee,Ut.matchedRoot=K,Ut[os]=w,{TAG:"Ok",_0:Ut}}let Qe={};return Qe.instanceId=i,Qe.controlType="reconnect_thread",Qe.cwd=ee,Qe.matchedRoot=K,Qe[os]=w,{TAG:"Ok",_0:Qe}}let E={};return E.instanceId=i,E.controlType="reconnect_thread",E.ok=!1,E.error="missing_codex_thread_id",{TAG:"Ok",_0:E}},Ve=new Map,Kt=new Map,dn=async O=>{if(typeof O=="object"||O==="CodexProvider")return!0;let ee=e.claudeCodeAvailable;return ee!==void 0?ee:(await jt,Ft(We.contents))},vi=async(O,ee,K,V,de)=>{let w=LS(O,ee,K,V,i,de);if(w.TAG!=="Ok")return{TAG:"Error",_0:w._0};let E=w._0;return E!==void 0?(await Ne("message_state",E),{TAG:"Ok",_0:void 0}):{TAG:"Ok",_0:void 0}},zn=async(O,ee)=>{let K=Jo(O);if(K===void 0)return;let V=qe(O,"workspace"),de=qe(O,"channel"),w=qe(O,"threadId");if(V===void 0||de===void 0||w===void 0)return;let E={};return E.workspace=V,E.channel=de,E.thread_id=w,E.instance_id=i,E.seq=K,E.status="failed",E.reason=ee,E.allowed_cwds=f.contents.map(P=>P),await Ne("message_state",E)},ti=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"}},Wr=async(O,ee,K,V,de)=>{let w=ee==="reconnect_thread"?"kandan.reconnect_thread_failed":"kandan.start_instance_failed",E=Jo(O);return t(w,Object.fromEntries([["stage",ti(K)],["message",V],["thread_id",jn(qe(O,"threadId"))],["source_seq",E!==void 0?E:null],[Mn,jn(de)]])),await vi(O,ee,"failed",B9(K,V),de),{TAG:"Error",_0:V}},po=async(O,ee,K,V,de,w)=>{let E=e.harnessBin;if(E===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let P=_p(O,e.approvalPolicy,e.sandbox);if(P.TAG!=="Ok")return{TAG:"Error",_0:P._0};let G=P._0,L=new Set,q=[K].concat(f.contents).filter(At=>L.has(At)?!1:(L.add(At),!0)),Y=ee==="start_instance"?MR(Ir(O,"executionMode")):void 0,Re=ee==="start_instance"?jR(Ir(O,"egressMode")):void 0,Se=ee==="start_instance"?qe(O,"projectPublicId"):void 0,Oe=ee==="start_instance"?qe(O,"goldenImagePublicId"):void 0,Ie=e.serviceUrl,Qe=e.token,Be=V,he=G.settingsFast,ft=[],ir={model:G.settingsModel,reasoningEffort:G.settingsReasoningEffort,sandbox:G.settingsSandbox,approvalPolicy:G.settingsApprovalPolicy,allowPortForwardingByDefault:!0},Jt=k(k(O.linzumiAgent,ke),At=>qe(At,"mcpToken")),Yt={kandanUrl:Ie,token:Qe,cwd:K,codexBin:E,kandanThreadId:de,workspaceSlug:Be,logFile:void 0,debugTrace:void 0,fast:he,allowedCwds:q,allowedForwardPorts:ft,codeServerBin:void 0,runtimeDefaults:ir,codexModelProvider:w,vmExecution:!1,executionMode:Y,egressMode:Re,projectPublicId:Se,goldenImagePublicId:Oe,linzumiAgentMcpToken:Jt};t("runner.thread_process_starting",Object.fromEntries([["kandanThreadId",de],["cwd",K],["readyTimeoutMs",jP]]));let Ut=await GP(Yt,(At,Tr)=>t(At,Tr));if(Ut.TAG==="Ok"){let At=Ut._0;Ve.set(de,At);let Tr=At.pid;return At.onExit(()=>{let hr=Ve.get(de);if(hr!==void 0&&se(hr.pid,Tr)){Ve.delete(de);return}}),At.client.onRequest(ut),t("runner.thread_process_started",Object.fromEntries([["kandanThreadId",de],["cwd",K]])),{TAG:"Ok",_0:At}}let Ct=Ut._0;return t("runner.thread_process_start_failed",Object.fromEntries([["kandanThreadId",de],["cwd",K],["message",Ct]])),{TAG:"Error",_0:Ct}},Xo=O=>Sp(Ve.get(O),ee=>!ee.client.isClosed()),en=(O,ee,K)=>{let V={};return V.instanceId=i,V.controlType=O,V.ok=!0,V.delegated=!0,V.threadProcess="already_started",V.kandanThreadId=ee,V.cwd=K,V},U=async(O,ee,K,V,de)=>{let w=qe(O,"developerPrompt"),E=cM(O.linzumiContext,Ar=>{Vr(Ar+`
870
- `)}),P=_p(O,e.approvalPolicy,e.sandbox);if(P.TAG!=="Ok")return await Wr(O,"start_instance","StartingCodexSession",P._0,void 0);let G=P._0,L=qe(O,"projectSharedInstructions"),q=qe(O,"projectPersonalInstructions"),Y=qe(O,"projectMemory"),Re=Ft(O.projectId)||Ft(O.projectPublicId)||Ft(L)||Ft(q)||Ft(Y),Se=fM({cwd:ee,agentLabel:void 0,planTool:"LinzumiMcpPlanTool",mcpAvailable:!0,devServicesAvailable:!0,developerPrompt:w,projectSharedInstructions:L,projectPersonalInstructions:q,projectMemory:Y,projectBound:Re,linzumiContext:E}),Oe={};Oe.cwd=ee,Oe.serviceName=qP,Oe.personality=LP,Oe.developerInstructions=Se,K9(G).forEach(Ar=>{Oe[Ar[0]]=Ar[1]});let Ie=await Fm(kl,a,"thread/start",V.request("thread/start",Oe));if(Ie.TAG!=="Ok")return await Wr(O,"start_instance","StartingCodexSession",Ie._0,void 0);let Qe=Ie._0;if(Qe.TAG!=="ResultReply")return await Wr(O,"start_instance","StartingCodexSession","thread/start failed: "+Qe.message,void 0);let Be=Qe._0,he=k(k(ke(Be),Ar=>hp(Ar,"thread")),Ar=>qe(Ar,"id")),ft=qe(O,"workDescription");if(he!==void 0&&w!==void 0){let Ar=qe(O,"workspace"),zr=qe(O,"channel"),ri=qe(O,"threadId");if(Ar!==void 0&&zr!==void 0&&ri!==void 0){let tn={};tn.event_type="codex_start_instructions",tn[Mn]=he,tn.instructions_body=w;let ta=qe(O,"modelProvider");ta!==void 0&&(tn.model_provider=ta);let Fl=qe(O,"model");Fl!==void 0&&(tn.model=Fl);let qi={};qi.workspace=Ar,qi.channel=zr,qi.thread_id=ri,qi.body=`Starting a new Codex thread with instructions:
871
-
872
- `+w,qi.payload=Object.fromEntries([["metadata",Object.fromEntries([["local_codex_runner",tn]])]]),await Ne("session:post_thread_message",qi)}}let ir=qe(O,"workspace"),Jt=qe(O,"channel"),Yt=qe(O,"threadId"),Ut;if(he!==void 0&&ir!==void 0&&Jt!==void 0&&Yt!==void 0){let Ar=await zS({transport:g,commanderTopic:n,commanderId:e.commanderId,instanceId:i,harness:V,log:t,timers:kl,env:r,workspaceSlug:ir,channelSlug:Jt,threadId:Yt,harnessSessionId:he,cwd:ee,rootSeq:WS(O,"rootSeq"),defaults:{approvalPolicy:e.approvalPolicy,sandbox:e.sandbox,model:G.settingsModel,reasoningEffort:G.settingsReasoningEffort},actorSlug:o.actorUsername,actorUserId:o.actorUserId,leaseEpochFor:zr=>H.current(zr),commitAppliedSourceSeq:zr=>{bu(u,ve(Jt,Yt),zr,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",Yt],["channel",Jt],["sourceSeq",zr]]))},switchProbe:Xe});if(Ar.TAG==="Ok"){let zr=Ar._0;te.set(he,zr),de&&V.onNotification(ri=>zr.routeNotification(ri.method,x(k(ri.params,ke),{}))),Ut={TAG:"Ok",_0:zr}}else Ut={TAG:"Error",_0:Ar._0}}else Ut={TAG:"Ok",_0:void 0};if(Ut.TAG!=="Ok")return await Wr(O,"start_instance","BindingThread",Ut._0,he);let Ct=Ut._0,At=Jo(O),Tr;if(he!==void 0&&ft!==void 0){let Ar=0;if(Ct!==void 0&&At!==void 0?Tr=await Ct.runClaimedTurn(At,ft):Ar=1,Ar===1){let zr={};zr.threadId=he,zr.input=[Object.fromEntries([["type","text"],["text",ft]])];let ri=await Fm(kl,a,"turn/start",V.request("turn/start",zr));if(ri.TAG==="Ok"){let tn=ri._0;Tr=tn.TAG==="ResultReply"?{TAG:"Ok",_0:void 0}:{TAG:"Error",_0:tn.message}}else Tr={TAG:"Error",_0:ri._0}}}else Tr={TAG:"Ok",_0:void 0};if(Tr.TAG!=="Ok")return await Wr(O,"start_instance","StartingFirstTurn",Tr._0,he);let hr={};return hr.instanceId=i,hr.controlType="start_instance",hr.cwd=ee,hr.matchedRoot=K,hr.response=Be,{TAG:"Ok",_0:hr}},Q=(O,ee,K,V,de,w,E,P)=>({adapter:P,pushEvent:Ne,log:t,workspace:K,channel:V,threadId:de,cwd:ee,sourceSeq:Jo(O),model:E.settingsModel,approvalPolicy:E.settingsApprovalPolicy,sandbox:E.settingsSandbox,workDescription:w}),re=O=>{let ee=qe(O,"channel"),K=qe(O,"threadId"),V=Jo(O);if(ee!==void 0&&K!==void 0&&V!==void 0)return bu(u,ve(ee,K),V,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",K],["channel",ee],["sourceSeq",V]]))},He=(O,ee,K,V)=>{let de={};return de.instanceId=i,de.controlType=O,de.agentProvider="claude-code",de.cwd=ee,de.matchedRoot=K,de.response=Object.fromEntries([["session",Object.fromEntries([["id",V]])]]),de},ot=async(O,ee,K)=>{await jt;let V=Re=>Wr(O,"start_instance","StartingClaudeCodeSession",Re,void 0),de=We.contents;if(de===void 0)return await V("claude-agent-sdk module not resolvable");let w=qe(O,"workspace"),E=qe(O,"channel"),P=qe(O,"threadId"),G=qe(O,"workDescription");if(w===void 0)return await V("start_instance control missing workspace");if(E===void 0)return await V("start_instance control missing channel");if(P===void 0)return await V("start_instance control missing threadId");if(G===void 0)return await V("start_instance control missing workDescription");let L=_p(O,e.approvalPolicy,e.sandbox);if(L.TAG!=="Ok")return await V(L._0);let q=await gI(Q(O,ee,w,E,P,G,L._0,de));if(q.TAG!=="Ok")return await V(q._0);let Y=q._0;return Kt.set(Y.harnessSessionId,Y),re(O),{TAG:"Ok",_0:He("start_instance",ee,K,Y.harnessSessionId)}},st=async(O,ee,K)=>{await jt;let V=qe(O,os);if(V!==void 0){let w=Be=>Wr(O,"reconnect_thread","StartingClaudeCodeSession",Be,V),E=We.contents;if(E===void 0)return await w("claude-agent-sdk module not resolvable");let P=qe(O,"workspace"),G=qe(O,"channel"),L=qe(O,"threadId"),q=qe(O,"workDescription");if(P===void 0)return await w("start_instance control missing workDescription");if(G===void 0)return await w("start_instance control missing workDescription");if(L===void 0)return await w("start_instance control missing workDescription");if(q===void 0)return await w("start_instance control missing workDescription");let Y=Jo(O);if(Y!==void 0?!Im(u.initial(ve(G,L)),Y):!1){let Be=Jo(O);t("claude_code.replayed_turn_already_applied_ignored",Object.fromEntries([["linzumi_thread_id",L],["claude_session_id",V],["source_seq",Be!==void 0?Be:null]]));let he={};return he.instanceId=i,he.controlType="reconnect_thread",he.agentProvider="claude-code",he.cwd=ee,he.matchedRoot=K,he[os]=V,he.queuedInput=!0,he.duplicate=!0,{TAG:"Ok",_0:he}}let Se=LS(O,"reconnect_thread","processing","resuming Claude Code session",i,V);if(Se.TAG==="Ok"){let Be=Se._0;Be!==void 0&&Ne("message_state",Be)}let Oe=_p(O,e.approvalPolicy,e.sandbox);if(Oe.TAG!=="Ok")return await w(Oe._0);let Ie=await yI(Q(O,ee,P,G,L,q,Oe._0,E),V);if(Ie.TAG!=="Ok")return await w(Ie._0);let Qe=Ie._0;return Kt.set(Qe.harnessSessionId,Qe),re(O),{TAG:"Ok",_0:He("reconnect_thread",ee,K,Qe.harnessSessionId)}}let de={};return de.instanceId=i,de.controlType="reconnect_thread",de.ok=!1,de.error="missing_codex_thread_id",{TAG:"Ok",_0:de}},ct=async O=>{let ee=pM(Ir(O,"cwd"),f.contents);if(ee.TAG==="AllowedCwd"){let K=ee.matchedRoot,V=ee.cwd,de=ZS(O),w=await dn(de),E=0;if(typeof de!="object")E=1;else{let P={};return P.instanceId=i,P.controlType="reconnect_thread",P.ok=!1,P.error="agent_provider_unsupported:"+de._0,{TAG:"Ok",_0:P}}if(E===1)if(w){if(typeof de!="object"){if(de!=="CodexProvider")return await st(O,V,K);if(e.harnessUrl!==void 0)return M!==void 0?await _e(O,V,K,M,!1):{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let G=qe(O,"workspace"),L=qe(O,"channel"),q=qe(O,"threadId"),Y=0;if(G!==void 0&&L!==void 0&&q!==void 0){if(Xo(q)!==void 0)return{TAG:"Ok",_0:en("reconnect_thread",q,V)};let Se=zl(O),Oe=0;if(typeof Se!="object"||Se.TAG==="Provider")Oe=3;else{let Ie={};return Ie.instanceId=i,Ie.controlType="reconnect_thread",Ie.ok=!1,Ie.error=Se._0,Ie.kandanThreadId=q,Ie.cwd=V,{TAG:"Ok",_0:Ie}}if(Oe===3){let Ie=zl(O),Qe;Qe=typeof Ie!="object"||Ie.TAG!=="Provider"?void 0:Ie._0;let Be=await po(O,"reconnect_thread",V,G,q,Qe);return Be.TAG==="Ok"?await _e(O,V,K,Be._0.client,!0):{TAG:"Error",_0:Be._0}}}else Y=2;if(Y===2)return M!==void 0?await _e(O,V,K,M,!1):{TAG:"Error",_0:"cannot reconnect a Kandan thread without a session"}}}else{await vi(O,"reconnect_thread","failed",_M(de),void 0);let P={};return P.instanceId=i,P.controlType="reconnect_thread",P.ok=!1,P.error="agent_provider_unavailable:"+hM(de),{TAG:"Ok",_0:P}}}else{let K=ee.reason;await zn(O,K);let V={};return V.instanceId=i,V.controlType="reconnect_thread",V.requestId=jn(Ir(O,"requestId")),V.ok=!1,V.error=K,V.allowedCwds=f.contents.map(de=>de),{TAG:"Ok",_0:V}}},Et={contents:void 0},St=async(O,ee,K)=>{let V=async()=>{if(M===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let Se=zl(O),Oe;if(typeof Se!="object")Oe=void 0;else if(Se.TAG==="Provider")if(Se._0.provider==="wafer")Oe="wafer_model_provider_requires_thread_worker";else{let Be=D(r.OPENAI_API_KEY,he=>he.trim());Oe=Be!==void 0&&Be!==""?"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 Oe=Se._0;if(Oe===void 0)return await U(O,ee,K,M,!1);await vi(O,"start_instance","failed",Oe,void 0);let Ie={};return Ie.instanceId=i,Ie.controlType="start_instance",Ie.ok=!1,Ie.error=Oe,{TAG:"Ok",_0:Ie}};if(e.harnessUrl!==void 0)return await V();let w=qe(O,"workspace"),E=qe(O,"channel"),P=qe(O,"threadId");if(w===void 0)return await V();if(E===void 0)return await V();if(P===void 0)return await V();if(Xo(P)!==void 0)return{TAG:"Ok",_0:en("start_instance",P,ee)};let L=zl(O);if(typeof L=="object"&&L.TAG!=="Provider"){let Se={};return Se.instanceId=i,Se.controlType="start_instance",Se.ok=!1,Se.error=L._0,Se.kandanThreadId=P,Se.cwd=ee,{TAG:"Ok",_0:Se}}let q=zl(O),Y;Y=typeof q!="object"||q.TAG!=="Provider"?void 0:q._0;let Re=await po(O,"start_instance",ee,w,P,Y);return Re.TAG==="Ok"?await U(O,ee,ee,Re._0.client,!0):await Wr(O,"start_instance","StartingCodexSession",Re._0,void 0)},Pt=()=>{let O=Et.contents;if(O!==void 0)return O;let ee=(async()=>{s.contents=!0,clearInterval(Ye);let K=0,V=0;for(;K<3&&V<2e3;)V=V+1|0,K=Ae.contents===0?K+1|0:0,await V9();let de=te.values().toArray();for(let E=0,P=de.length;E<P;++E){let G=de[E];G!==void 0&&await G.close()}let w=Kt.values().toArray();for(let E=0,P=w.length;E<P;++E){let G=w[E];G!==void 0&&await G.stop()}return Ve.values().toArray().forEach(E=>E.close()),M!==void 0&&M.close(),$!==void 0&&$.stop(),g.close(),l.flush(),d.flush()})();return Et.contents=ee,ee},Qo=async O=>{let ee=pM(Ir(O,"cwd"),f.contents),K=ZS(O);if(typeof K=="object"){let w={};return w.instanceId=i,w.controlType="start_instance",w.ok=!1,w.error="agent_provider_unsupported:"+K._0,{TAG:"Ok",_0:w}}if(ee.TAG==="AllowedCwd"){let w=ee.matchedRoot,E=ee.cwd;if(await dn(K)){let G=LS(O,"start_instance","processing","starting "+H9(K)+" session",i,void 0);if(G.TAG!=="Ok")return{TAG:"Error",_0:G._0};let L=G._0;return L!==void 0&&Ne("message_state",L),typeof K!="object"?K==="CodexProvider"?await St(O,E,w):await ot(O,E,w):await St(O,E,w)}await vi(O,"start_instance","failed",_M(K),void 0);let P={};return P.instanceId=i,P.controlType="start_instance",P.ok=!1,P.error="agent_provider_unavailable:"+hM(K),{TAG:"Ok",_0:P}}let V=ee.reason;t("kandan.start_instance_cwd_rejected",Object.fromEntries([["thread_id",jn(qe(O,"threadId"))],["reason",V],["allowedCwdCount",f.contents.length]])),await zn(O,V);let de={};return de.instanceId=i,de.controlType="start_instance",de.requestId=jn(Ir(O,"requestId")),de.ok=!1,de.error=V,de.allowedCwds=f.contents.map(w=>w),{TAG:"Ok",_0:de}},ea=async O=>{let ee=qe(O,"harnessSessionId");if(ee===void 0)return{TAG:"Error",_0:"invoke_cross_harness_switch requires the source harness session id"};let K=te.get(ee);if(K===void 0)return{TAG:"Error",_0:"no attached session for the requested cross-harness switch"};let V=qe(O,"targetHarness");if(V!==void 0&&V!=="claude-code")return{TAG:"Error",_0:"unsupported switch target for this session's harness: "+V};let de=qe(O,"model");if(de===void 0)return{TAG:"Error",_0:"invoke_cross_harness_switch requires an explicit model (D39)"};let w=qe(O,"targetSessionId"),E=w!==void 0?w:US.randomUUID(),P=await K.invokeCrossHarnessSwitch(Nl(O,"sourceSeq"),de,E,We.contents,Yo.homedir());if(P.TAG!=="Ok")return{TAG:"Error",_0:P._0};let G={};return G.instanceId=i,G.controlType="invoke_cross_harness_switch",G.harnessSessionId=ee,Object.entries(P._0).forEach(L=>{G[L[0]]=L[1]}),{TAG:"Ok",_0:G}},Gl=async O=>{if(M===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let ee={},K=Ir(O,"threadId");K!==void 0&&(ee.threadId=K);let V=O.input;V!==void 0&&(ee.input=V);let de=await M.request("turn/start",ee);if(de.TAG!=="Ok")return{TAG:"Error",_0:de._0};let w=de._0;if(w.TAG!=="ResultReply")return{TAG:"Error",_0:w.message};let E={};return E.instanceId=i,E.controlType="start_turn",E.response=w._0,{TAG:"Ok",_0:E}},yp=(O,ee)=>VR(x(k(ke(O),K=>Ir(K,"type")),"unknown"),()=>{let K=x(ke(O),{});t("kandan.control",Object.fromEntries([["control",O]]));let V=Ir(K,"type");if(V===void 0)return{TAG:"Returned",_0:void 0};switch(V){case"replace_runner":return t("runner.replaced",Object.fromEntries([["runnerId",e.commanderId],["reason",x(K.reason,null)],["replacementRunnerId",x(K.replacementRunnerId,null)],["replacementVersion",x(K.replacementVersion,null)]])),Pt(),{TAG:"Returned",_0:void 0};case"set_commander_impl":let de=Ir(K,"impl"),w=k(de,Wv);if(w!==void 0){let Y=gM(w),Re=vl(w)!==qS,Se=se(r.LINZUMI_SUPERVISED,"1")&&process.platform!=="win32";return t("runner.commander_impl_persisted",Object.fromEntries([["impl",vl(w)],["persisted",Y],["runningImpl",qS],["restart",Re?Se?"graceful_drain":"deferred_to_next_launch":"not_needed"]])),Re&&Se&&Ui(process.pid,"SIGUSR2"),{TAG:"Returned",_0:void 0}}return t("runner.commander_impl_control_ignored",Object.fromEntries([["impl",jn(de)],["reason","unknown_impl_value"]])),{TAG:"Returned",_0:void 0};default:let E=Ir(K,"instanceId");if(E!==void 0&&E!==i)return t("kandan.control_ignored",Object.fromEntries([["reason","instance_id_mismatch"],["instanceId",i],["controlInstanceId",jn(Ir(K,"instanceId"))],["controlType",V]])),{TAG:"Returned",_0:void 0};let P=Nl(K,"control_seq"),G;if(V==="start_turn"&&P!==void 0){let Y=BP(n,x(Ir(K,"threadId"),"undefined"));G=ZR(d.initial(Y),P)?"SkipReplayedStartTurn":{TAG:"Dispatch",commit:()=>WR({onAdvance:d.onAdvance,flush:d.flush},Y,P)}}else G={TAG:"Dispatch",commit:void 0};if(typeof G!="object")return t("kandan.start_turn_replay_skipped",Object.fromEntries([["controlType",V],["controlSeq",x(K.control_seq,null)]])),{TAG:"Returned",_0:void 0};let L=G.commit,q=(async()=>{let Y;switch(V){case"invoke_cross_harness_switch":Y=await ea(K);break;case"reconnect_thread":Y=await ct(K);break;case"start_instance":Y=await Qo(K);break;case"start_turn":Y=await Gl(K);break;default:Y={TAG:"Error",_0:"unsupported control type for this commander: "+V}}return Y.TAG==="Ok"?(L!==void 0&&L(),await F(Y._0)):await Ee(Y._0),null})();return Le(q.then(Y=>{})),{TAG:"Pending",_0:q}}},ee,t,void 0);m.contents=yp;let BS=p.slice();return p.splice(0,p.length),BS.forEach(O=>yp(O[0],O[1])),{TAG:"Ok",_0:{close:()=>Pt()}}}return g.close(),{TAG:"Error",_0:W._0}}return g.close(),{TAG:"Error",_0:Qn(v._0)}}function mo(e){Vr("linzumi (rescript commander): "+e+`
873
- `),tc(1)}var Q9=["workspace","channel","api-url","linzumi-url","token","auth-file","cwd","allowed-cwd","codex-url","codex-bin","approval-policy","sandbox","code-server-bin","log-file"],eJ=["version","help","launch-tui","fast","no-onboarding-discovery"];function tJ(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=eJ.includes(a),l=Q9.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 VS={};av.forEach(e=>{VS[e[0]]=e[1]});var HS={};av.forEach(e=>{HS[e[1]]=e[0]});function rJ(e,t,r){let n=vm(r),i=Sm(n),o={};if(o.ts=new Date().toISOString(),o.event=t,uv()){let a=VS[t];if(a!==void 0)o.event_canonical=a;else{let s=HS[t];s!==void 0&&(o.event_legacy=s)}}JS(i,(a,s)=>{o[s]=a});try{vM.appendFileSync(e,JSON.stringify(o)+`
874
- `,"utf8");return}catch{return}}function Tte(e){return e.summary}async function bM(e){let t=tJ(e),r=t.switches.version,n=0;if(r!==void 0){if(r){process.stdout.write(dv()+`
875
- `);return}n=1}else n=1;if(n===1){let i=t.switches.help,o=0;if(i!==void 0){if(i)return mo("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 mo("these connect flags are not yet implemented in the rescript commander: "+t.unknown.join(", "));let a=process.env,s=x(ss(t.values["api-url"],t.values["linzumi-url"]),ed),l=t.values.workspace,d=xc(a),u=Tc(d,s,void 0);if(u.TAG!=="Ok")return mo("could not resolve the commander id: "+u._0.summary);let c=u._0,f=await Ac({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:z=>{Vr(G0(z)+`
876
- `)}},void 0);if(f.TAG!=="Ok")return mo("authentication failed: "+f._0.summary);let p=f._0,m=t.values.cwd,h=m!==void 0?Cs(a,m):process.cwd(),_=t.values["allowed-cwd"],g;if(_!==void 0)g=_.split(",").map(z=>z.trim()).filter(z=>z!=="").map(z=>Cs(a,z));else{let z=T0(d,s);g=z.TAG==="Ok"?z._0.allowedCwds:[]}let b=Ke([h].concat(g),[],(z,H)=>z.includes(H)?z:z.concat([H])),y=l!==void 0?l:TE(p);if(y===void 0)return mo("connect requires a workspace (pass --workspace or use a workspace-scoped token)");let v=(z,H)=>{process.stdout.write(z+" "+JSON.stringify(H)+`
877
- `)},S=t.values["log-file"],A;if(S!==void 0){let z=Dt(SM.dirname(S));z.TAG!=="Ok"&&Vr("linzumi (rescript commander): could not create the --log-file directory ("+z._0.message+`); log writes will still be attempted
878
- `),A=(H,ce)=>{v(H,ce),rJ(S,H,ce)}}else A=v;let R=await yM({serviceUrl:s,token:p,commanderId:c,workspaceSlug:y,cwd:h,harnessUrl:t.values["codex-url"],harnessBin:D(t.values["codex-bin"],z=>Cs(a,z)),allowedCwds:b,approvalPolicy:t.values["approval-policy"],sandbox:t.values.sandbox},A);if(R.TAG!=="Ok")return mo(R._0);process.stdout.write("Connected to Linzumi (rescript commander "+pu()+") as "+c+`
879
- `);return}}}async function Ate(e){let t=e[0];if(t===void 0)return mo("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(dv()+`
880
- `);return;case"connect":case"local-codex-runner":break;case"mcp":let r=0,n;try{n=await wE(uw(e)),r=2}catch(i){let o=X(i);return Vr("linzumi mcp server failed: "+cs(o)+`
881
- `),tc(1)}if(r===2)return n.TAG==="Ok"?void 0:(Vr("linzumi mcp server failed: "+n._0+`
882
- `),tc(1));break;case"run":case"start":return await bM(e.slice(1));default:return mo('the "'+t+'" subcommand is not yet implemented in the rescript commander; run the ts impl (LINZUMI_COMMANDER_IMPL=ts)')}return e.length>1?await bM(e.slice(1)):mo("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 Ote=VS,Cte=HS;export{rJ as appendDriverLogLine,eJ as connectSwitchFlags,Q9 as connectValueFlags,Ote as logFileEventCanonicalByLegacy,Cte as logFileEventLegacyByCanonical,Ate as main,tJ as parseConnectFlags,mo as refuse,bM as runConnect,Tte as schemaFailureMessage};
875
+ </output_format>`}var sw="rescript";function S6(){return new Promise((e,t)=>{setTimeout(()=>e(),0)})}function Dn(e){return e!==void 0?e:null}function Cp(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 dj(e){let t=Ln(e);return t.TAG==="Ok"?t._0:e}function uj(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=dj(r),i=t.find(o=>{let a=dj(o);return n===a?!0:n.startsWith(a+Pp.sep)});return i!==void 0?{TAG:"AllowedCwd",cwd:n,matchedRoot:i}:{TAG:"RefusedCwd",reason:"cwd_not_allowed"}}function uw(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 w6(e){return typeof e!="object"&&e!=="CodexProvider"?"Claude Code":"Codex"}function fj(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=SR(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}}function cw(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&Ot(r))return r}function ea(e){let t=cw(e,"sourceSeq");return t!==void 0?t:cw(e,"rootSeq")}function lw(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 _e(s("workspace"),l=>_e(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[Fn]=o);let f=uw(e);return typeof f!="object"&&f!=="CodexProvider"&&(c.agent_provider="claude-code"),c})))}function Ep(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(Zv(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 x6(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=Lm(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 T6(e){return Pp.join(e,".linzumi","commanderImplFallback.json")}function mj(e){let t=ta.homedir(),r=kI(sS(t),e),n;return n=r.TAG==="Ok",n&&e==="Ts"&&_n(T6(t)),n}function A6(e){let t=G(e.LINZUMI_CODEX_START_REQUEST_TIMEOUT_MS,n=>n.trim());if(t===void 0)return 12e4;let r=Nn(t);return r!==void 0&&r>0?r:12e4}async function pj(e,t){let r=process.env,n=cP(e.commanderId),i="codex-"+dw.randomUUID(),o=wu(e.token),a=A6(r),s={contents:!1},l=Um(MR(e.commanderId,r),t,void 0,void 0),d=Um(jR(e.commanderId,r),t,!0,void 0),u=qR(Um(zR(e.commanderId,r),t,void 0,!0)),c=DR(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 CR(h,e.cwd);let _=await r$(e.serviceUrl,{TAG:"Token",_0:e.token},void 0,{controlCursorStore:QI(l),controlEpochStore:e$(c),onOperatorNotice:S=>{},auditEvent:(S,A)=>t(S,A)});if(_.TAG!=="Ok")return{TAG:"Error",_0:ii(_._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=()=>fP({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=Cp(S,"runner_config");if(A!==void 0){let V=A.allowedCwds;Array.isArray(V)&&(f.contents=Oc(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=sS(ta.homedir()),se=wI(re);if(!de(se,j)){let Ae=mj(j);t("runner.commander_impl_assigned",Object.fromEntries([["impl",El(j)],["previousCache",Dn(G(se,El))],["persisted",Ae],["runningImpl",sw]]))}}}let R=Cp(S,"compute_node");if(R!==void 0){let V=Vl(R,"reset_generation");t("runner.compute_node",Object.fromEntries([["id",Dn(jr(R,"id"))],["name",Dn(jr(R,"name"))],["identityQuality",Dn(jr(R,"identity_quality"))],["resetGeneration",V!==void 0?V:null]]))}let Z=Cp(S,"roster");if(Z!==void 0){let V=ze(x(k(Z.threads,Qi),[]),ke),M=kp(Hu("thread_id"));t("kandan.roster_seeded",Object.fromEntries([["source","join"],["thread_count",V.length],["truncated",x(Z.truncated,!1)],["skipped_entries",0],["threads",V.map(N=>{let j={};return j[Hu("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=ZR();LR(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([[kp(Hu("thread_id")),V.threadId],["leaseEpoch",M]]))});let U=globalThis.__linzumiCommanderChooserMarkJoined;if(U!==void 0){let V;try{V=Rr(U())}catch{V=void 0}V!==void 0&&t("commander.chooser.fallback_reported",x(ke(V),{}))}let K=async V=>{let M=await Nm(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 Gm(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,W;if(oe!==void 0){let V=await K(oe);W=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 aw(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 K(N.url);j.TAG==="Ok"?W={TAG:"Ok",_0:[j._0,N.url,N]}:(N.stop(),W={TAG:"Error",_0:j._0})}else W={TAG:"Error",_0:M._0}}else W={TAG:"Error",_0:"the differential commander requires codexUrl (no spawned harness binary)"}}if(W.TAG==="Ok"){let V=W._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,Gn(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",ii(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",Dn(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(B=>B.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 je=()=>{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=je();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",Dn(N)]])),await Ge("heartbeat",je());let Ye=setInterval(()=>{Ge("heartbeat",je())},15e3);Ye.unref(),g.onReconnect(async O=>await Ge("heartbeat",je()));let He={contents:void 0},It=(async()=>{try{let O=await yP();He.contents=SI({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"]]))}})(),Xe={targetHarness:"claude-code",model:void 0,targetAdapterAvailable:()=>Gt(He.contents)},q=async O=>await Ge("codex_response",O),Ce=async O=>{let X={};return X.instanceId=i,X.message=O,await Ge("codex_error",X)},Se=(O,X)=>GR(e.workspaceSlug,O,X),he=async(O,X,J,B,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"),Pe=re.get(C),Re;if(Pe!==void 0)Re={TAG:"Ok",_0:Pe};else if(D!==void 0&&F!==void 0&&I!==void 0){let Oe=await tw({transport:g,commanderTopic:n,commanderId:e.commanderId,instanceId:i,harness:B,log:t,timers:Il,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:ge=>L.current(ge),commitAppliedSourceSeq:ge=>{Au(u,Se(F,I),ge,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",I],["channel",F],["sourceSeq",ge]]))},switchProbe:Xe});if(Oe.TAG==="Ok"){let ge=Oe._0;re.set(C,ge),w&&B.onNotification(zt=>ge.routeNotification(zt.method,x(k(zt.params,ke),{}))),Re={TAG:"Ok",_0:ge}}else Re={TAG:"Error",_0:Oe._0}}else Re={TAG:"Error",_0:"cannot reconnect a Kandan thread without a session"};if(Re.TAG!=="Ok")return{TAG:"Error",_0:Re._0};let Ie=Re._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?!Zm(u.initial(Se(F,I)),Fe):!1){t("kandan.reconnect_thread_seq_already_applied",Object.fromEntries([["source_seq",Fe],[Fn,C]]));let Jt={};return Jt.instanceId=i,Jt.controlType="reconnect_thread",Jt.cwd=X,Jt.matchedRoot=J,Jt[ls]=C,Jt.duplicate=!0,{TAG:"Ok",_0:Jt}}let ge=(Jt,Pr,Nt)=>(async()=>{let Yt=await g.push(Jt,Pr,x(ke(Nt),{}),void 0);return Yt.TAG==="Ok"?{TAG:"Ok",_0:Yt._0}:{TAG:"Error",_0:ii(Yt._0)}})(),zt={workspace:D,channel:F,threadId:I},Lt=await BI((Jt,Pr)=>B.request(Jt,Pr),Il,a,C,DM({approvalPolicy:e.approvalPolicy,sandbox:e.sandbox}),{forceRehydrate:de(O.sessionRehydrate,!0),buildRehydrationText:async Jt=>{let Pr=await UI(ge,n,zt,t);return{TAG:"Ok",_0:ZI(Pr,Jt)}},buildRehydrationItems:async Jt=>{let Pr=await HI(ge,n,zt,t);if(Pr===void 0)return{TAG:"Ok",_0:void 0};if(Pr.nodes.length===0)return{TAG:"Ok",_0:void 0};let Nt=MI(Pr.nodes.map(WI),G(Pr.budget,VI),Jt,Pr.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",Nt.emittedNodeCount],["omitted_nodes",Nt.omittedNodeCount],["redacted_reasoning",Nt.redactedReasoningCount],["emitted_token_estimate",Nt.emittedTokenEstimate],["max_emission_tokens",Nt.maxEmissionTokens]])),{TAG:"Ok",_0:Nt.items}},log:t});if(Lt.TAG!=="Ok")return{TAG:"Error",_0:Lt._0.message};typeof Lt._0=="object"&&await Ie.publishRebuilt(Fe);let zr=await Ie.runClaimedTurn(Fe,ie);if(zr.TAG!=="Ok")return{TAG:"Error",_0:zr._0};let Kt={};return Kt.instanceId=i,Kt.controlType="reconnect_thread",Kt.cwd=X,Kt.matchedRoot=J,Kt[ls]=C,{TAG:"Ok",_0:Kt}}let st={};return st.instanceId=i,st.controlType="reconnect_thread",st.cwd=X,st.matchedRoot=J,st[ls]=C,{TAG:"Ok",_0:st}}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,Bt=new Map,mn=async O=>{if(typeof O=="object"||O==="CodexProvider")return!0;let X=e.claudeCodeAvailable;return X!==void 0?X:(await It,Gt(He.contents))},ki=async(O,X,J,B,w)=>{let C=lw(O,X,J,B,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}},qn=async(O,X)=>{let J=ea(O);if(J===void 0)return;let B=Le(O,"workspace"),w=Le(O,"channel"),C=Le(O,"threadId");if(B===void 0||w===void 0||C===void 0)return;let P={};return P.workspace=B,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)},ai=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"}},Hr=async(O,X,J,B,w)=>{let C=X==="reconnect_thread"?"kandan.reconnect_thread_failed":"kandan.start_instance_failed",P=ea(O);return t(C,Object.fromEntries([["stage",ai(J)],["message",B],["thread_id",Dn(Le(O,"threadId"))],["source_seq",P!==void 0?P:null],[Fn,Dn(w)]])),await ki(O,X,"failed",k6(J,B),w),{TAG:"Error",_0:B}},_o=async(O,X,J,B,w,C)=>{let P=e.harnessBin;if(P===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let I=Ep(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(Yt=>D.has(Yt)?!1:(D.add(Yt),!0)),pe=X==="start_instance"?dS(jr(O,"executionMode")):void 0,Fe=X==="start_instance"?uS(jr(O,"egressMode")):void 0,Pe=X==="start_instance"?Le(O,"projectPublicId"):void 0,Re=X==="start_instance"?Le(O,"goldenImagePublicId"):void 0,Ie=e.serviceUrl,st=e.token,Oe=B,ge=e.logFile,zt=F.settingsFast,Lt=[],cr=e.codeServerBin,zr={model:F.settingsModel,reasoningEffort:F.settingsReasoningEffort,sandbox:F.settingsSandbox,approvalPolicy:F.settingsApprovalPolicy,allowPortForwardingByDefault:!0},Kt=k(k(O.linzumiAgent,ke),Yt=>Le(Yt,"mcpToken")),Jt={kandanUrl:Ie,token:st,cwd:J,codexBin:P,kandanThreadId:w,workspaceSlug:Oe,logFile:ge,debugTrace:void 0,fast:zt,allowedCwds:ie,allowedForwardPorts:Lt,codeServerBin:cr,runtimeDefaults:zr,codexModelProvider:C,vmExecution:!1,executionMode:pe,egressMode:Fe,projectPublicId:Pe,goldenImagePublicId:Re,linzumiAgentMcpToken:Kt};t("runner.thread_process_starting",Object.fromEntries([["kandanThreadId",w],["cwd",J],["readyTimeoutMs",kR]]));let Pr=await OR(Jt,(Yt,or)=>t(Yt,or));if(Pr.TAG==="Ok"){let Yt=Pr._0;Be.set(w,Yt);let or=Yt.pid;return Yt.onExit(()=>{let Ar=Be.get(w);if(Ar!==void 0&&de(Ar.pid,or)){Be.delete(w);return}}),Yt.client.onRequest(ut),t("runner.thread_process_started",Object.fromEntries([["kandanThreadId",w],["cwd",J]])),{TAG:"Ok",_0:Yt}}let Nt=Pr._0;return t("runner.thread_process_start_failed",Object.fromEntries([["kandanThreadId",w],["cwd",J],["message",Nt]])),{TAG:"Error",_0:Nt}},ra=O=>Xu(Be.get(O),X=>!X.client.isClosed()),tn=(O,X,J)=>{let B={};return B.instanceId=i,B.controlType=O,B.ok=!0,B.delegated=!0,B.threadProcess="already_started",B.kandanThreadId=X,B.cwd=J,B},H=async(O,X,J,B,w)=>{let C=Le(O,"developerPrompt"),P=sj(O.linzumiContext,or=>{mr(or+`
876
+ `)}),I=Ep(O,e.approvalPolicy,e.sandbox,e.defaultModel,e.defaultReasoningEffort);if(I.TAG!=="Ok")return await Hr(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=Gt(O.projectId)||Gt(O.projectPublicId)||Gt(D)||Gt(ie)||Gt(pe),Pe=lj({cwd:X,agentLabel:void 0,planTool:"LinzumiMcpPlanTool",mcpAvailable:!0,devServicesAvailable:!0,developerPrompt:C,projectSharedInstructions:D,projectPersonalInstructions:ie,projectMemory:pe,projectBound:Fe,linzumiContext:P}),Re={};Re.cwd=X,Re.serviceName=PR,Re.personality=RR,Re.developerInstructions=Pe,x6(F).forEach(or=>{Re[or[0]]=or[1]});let Ie=await Xm(Il,a,"thread/start",B.request("thread/start",Re));if(Ie.TAG!=="Ok")return await Hr(O,"start_instance","StartingCodexSession",Ie._0,void 0);let st=Ie._0;if(st.TAG!=="ResultReply")return await Hr(O,"start_instance","StartingCodexSession","thread/start failed: "+st.message,void 0);let Oe=st._0,ge=k(k(ke(Oe),or=>Cp(or,"thread")),or=>Le(or,"id")),zt=Le(O,"workDescription");if(ge!==void 0&&C!==void 0){let or=Le(O,"workspace"),Ar=Le(O,"channel"),rn=Le(O,"threadId");if(or!==void 0&&Ar!==void 0&&rn!==void 0){let pn={};pn.event_type="codex_start_instructions",pn[Fn]=ge,pn.instructions_body=C;let Bl=Le(O,"modelProvider");Bl!==void 0&&(pn.model_provider=Bl);let Kl=Le(O,"model");Kl!==void 0&&(pn.model=Kl);let ds={};ds.workspace=or,ds.channel=Ar,ds.thread_id=rn,ds.body=`Starting a new Codex thread with instructions:
877
+
878
+ `+C,ds.payload=Object.fromEntries([["metadata",Object.fromEntries([["local_codex_runner",pn]])]]),await Ge("session:post_thread_message",ds)}}let Lt=Le(O,"workspace"),cr=Le(O,"channel"),zr=Le(O,"threadId"),Kt;if(ge!==void 0&&Lt!==void 0&&cr!==void 0&&zr!==void 0){let or=await tw({transport:g,commanderTopic:n,commanderId:e.commanderId,instanceId:i,harness:B,log:t,timers:Il,env:r,workspaceSlug:Lt,channelSlug:cr,threadId:zr,harnessSessionId:ge,cwd:X,rootSeq:cw(O,"rootSeq"),defaults:{approvalPolicy:e.approvalPolicy,sandbox:e.sandbox,model:F.settingsModel,reasoningEffort:F.settingsReasoningEffort},actorSlug:o.actorUsername,actorUserId:o.actorUserId,leaseEpochFor:Ar=>L.current(Ar),commitAppliedSourceSeq:Ar=>{Au(u,Se(cr,zr),Ar,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",zr],["channel",cr],["sourceSeq",Ar]]))},switchProbe:Xe});if(or.TAG==="Ok"){let Ar=or._0;re.set(ge,Ar),w&&B.onNotification(rn=>Ar.routeNotification(rn.method,x(k(rn.params,ke),{}))),Kt={TAG:"Ok",_0:Ar}}else Kt={TAG:"Error",_0:or._0}}else Kt={TAG:"Ok",_0:void 0};if(Kt.TAG!=="Ok")return await Hr(O,"start_instance","BindingThread",Kt._0,ge);let Jt=Kt._0,Pr=ea(O),Nt;if(ge!==void 0&&zt!==void 0){let or=0;if(Jt!==void 0&&Pr!==void 0?Nt=await Jt.runClaimedTurn(Pr,zt):or=1,or===1){let Ar={};Ar.threadId=ge,Ar.input=[Object.fromEntries([["type","text"],["text",zt]])];let rn=await Xm(Il,a,"turn/start",B.request("turn/start",Ar));if(rn.TAG==="Ok"){let pn=rn._0;Nt=pn.TAG==="ResultReply"?{TAG:"Ok",_0:void 0}:{TAG:"Error",_0:pn.message}}else Nt={TAG:"Error",_0:rn._0}}}else Nt={TAG:"Ok",_0:void 0};if(Nt.TAG!=="Ok")return await Hr(O,"start_instance","StartingFirstTurn",Nt._0,ge);let Yt={};return Yt.instanceId=i,Yt.controlType="start_instance",Yt.cwd=X,Yt.matchedRoot=J,Yt.response=Oe,{TAG:"Ok",_0:Yt}},te=(O,X)=>{let J=Mc(e.serviceUrl,e.token,void 0,new Date);if(J.TAG==="Ok"){let B=J._0,w=Lc(process.execPath,process.argv[1],process.execArgv),C=wu(e.token),P=Ws({command:w.command,argsPrefix:w.argsPrefix,serviceUrl:e.serviceUrl,authFilePath:B.path,ownerUsername:C.actorUsername,operatingMode:"Text",cwd:O,threadId:X,devServices:{scope:e.commanderId,ownerPid:process.pid}});return{servers:nx(P),cleanup:B.cleanup}}t("claude_code.mcp_config_failed",Object.fromEntries([["message",J._0.summary],["thread_id",X]]))},ne=(O,X,J,B,w,C,P,I)=>({adapter:I,pushEvent:Ge,log:t,workspace:J,channel:B,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"),B=ea(O);if(X!==void 0&&J!==void 0&&B!==void 0)return Au(u,Se(X,J),B,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",J],["channel",X],["sourceSeq",B]]))},tt=(O,X,J,B)=>{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",B]])]]),w},at=async(O,X,J)=>{await It;let B=Fe=>Hr(O,"start_instance","StartingClaudeCodeSession",Fe,void 0),w=He.contents;if(w===void 0)return await B("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 B("start_instance control missing workspace");if(P===void 0)return await B("start_instance control missing channel");if(I===void 0)return await B("start_instance control missing threadId");if(F===void 0)return await B("start_instance control missing workDescription");let D=Ep(O,e.approvalPolicy,e.sandbox,e.defaultModel,e.defaultReasoningEffort);if(D.TAG!=="Ok")return await B(D._0);let ie=await u$(ne(O,X,C,P,I,F,D._0,w));if(ie.TAG!=="Ok")return await B(ie._0);let pe=ie._0;return Bt.set(pe.harnessSessionId,pe),Ke(O),{TAG:"Ok",_0:tt("start_instance",X,J,pe.harnessSessionId)}},ct=async(O,X,J)=>{await It;let B=Le(O,ls);if(B!==void 0){let C=Oe=>Hr(O,"reconnect_thread","StartingClaudeCodeSession",Oe,B),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?!Zm(u.initial(Se(F,D)),pe):!1){let Oe=ea(O);t("claude_code.replayed_turn_already_applied_ignored",Object.fromEntries([["linzumi_thread_id",D],["claude_session_id",B],["source_seq",Oe!==void 0?Oe:null]]));let ge={};return ge.instanceId=i,ge.controlType="reconnect_thread",ge.agentProvider="claude-code",ge.cwd=X,ge.matchedRoot=J,ge[ls]=B,ge.queuedInput=!0,ge.duplicate=!0,{TAG:"Ok",_0:ge}}let Pe=lw(O,"reconnect_thread","processing","resuming Claude Code session",i,B);if(Pe.TAG==="Ok"){let Oe=Pe._0;Oe!==void 0&&Ge("message_state",Oe)}let Re=Ep(O,e.approvalPolicy,e.sandbox,e.defaultModel,e.defaultReasoningEffort);if(Re.TAG!=="Ok")return await C(Re._0);let Ie=await c$(ne(O,X,I,F,D,ie,Re._0,P),B);if(Ie.TAG!=="Ok")return await C(Ie._0);let st=Ie._0;return Bt.set(st.harnessSessionId,st),Ke(O),{TAG:"Ok",_0:tt("reconnect_thread",X,J,st.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=uj(jr(O,"cwd"),f.contents);if(X.TAG==="AllowedCwd"){let J=X.matchedRoot,B=X.cwd,w=uw(O),C=await mn(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,B,J);if(e.harnessUrl!==void 0)return j!==void 0?await he(O,B,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,B)};let Pe=Wl(O),Re=0;if(typeof Pe!="object"||Pe.TAG==="Provider")Re=3;else{let Ie={};return Ie.instanceId=i,Ie.controlType="reconnect_thread",Ie.ok=!1,Ie.error=Pe._0,Ie.kandanThreadId=ie,Ie.cwd=B,{TAG:"Ok",_0:Ie}}if(Re===3){let Ie=Wl(O),st;st=typeof Ie!="object"||Ie.TAG!=="Provider"?void 0:Ie._0;let Oe=await _o(O,"reconnect_thread",B,F,ie,st);return Oe.TAG==="Ok"?await he(O,B,J,Oe._0.client,!0):{TAG:"Error",_0:Oe._0}}}else pe=2;if(pe===2)return j!==void 0?await he(O,B,J,j,!1):{TAG:"Error",_0:"cannot reconnect a Kandan thread without a session"}}}else{await ki(O,"reconnect_thread","failed",fj(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 qn(O,J);let B={};return B.instanceId=i,B.controlType="reconnect_thread",B.requestId=Dn(jr(O,"requestId")),B.ok=!1,B.error=J,B.allowedCwds=f.contents.map(w=>w),{TAG:"Ok",_0:B}}},vt={contents:void 0},Ct=async(O,X,J)=>{let B=async()=>{if(j===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let Pe=Wl(O),Re;if(typeof Pe!="object")Re=void 0;else if(Pe.TAG==="Provider")if(Pe._0.provider==="wafer")Re="wafer_model_provider_requires_thread_worker";else{let Oe=G(r.OPENAI_API_KEY,ge=>ge.trim());Re=Oe!==void 0&&Oe!==""?"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 Re=Pe._0;if(Re===void 0)return await H(O,X,J,j,!1);await ki(O,"start_instance","failed",Re,void 0);let Ie={};return Ie.instanceId=i,Ie.controlType="start_instance",Ie.ok=!1,Ie.error=Re,{TAG:"Ok",_0:Ie}};if(e.harnessUrl!==void 0)return await B();let C=Le(O,"workspace"),P=Le(O,"channel"),I=Le(O,"threadId");if(C===void 0)return await B();if(P===void 0)return await B();if(I===void 0)return await B();if(ra(I)!==void 0)return{TAG:"Ok",_0:tn("start_instance",I,X)};let D=Wl(O);if(typeof D=="object"&&D.TAG!=="Provider"){let Pe={};return Pe.instanceId=i,Pe.controlType="start_instance",Pe.ok=!1,Pe.error=D._0,Pe.kandanThreadId=I,Pe.cwd=X,{TAG:"Ok",_0:Pe}}let ie=Wl(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 Hr(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(Ye);let J=0,B=0;for(;J<3&&B<2e3;)B=B+1|0,J=Ae.contents===0?J+1|0:0,await S6();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=Bt.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=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 B=Le(O,"targetHarness");if(B!==void 0&&B!=="claude-code")return{TAG:"Error",_0:"unsupported switch target for this session's harness: "+B};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:dw.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}},Hl=async O=>{let X=uj(jr(O,"cwd"),f.contents),J=uw(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 mn(J)){let F=lw(O,"start_instance","processing","starting "+w6(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",fj(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 B=X.reason;t("kandan.start_instance_cwd_rejected",Object.fromEntries([["thread_id",Dn(Le(O,"threadId"))],["reason",B],["allowedCwdCount",f.contents.length]])),await qn(O,B);let w={};return w.instanceId=i,w.controlType="start_instance",w.requestId=Dn(jr(O,"requestId")),w.ok=!1,w.error=B,w.allowedCwds=f.contents.map(C=>C),{TAG:"Ok",_0:w}},hw=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 B=O.input;B!==void 0&&(X.input=B);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}},Rp=(O,X)=>FI(x(k(ke(O),J=>jr(J,"type")),"unknown"),()=>{let J=x(ke(O),{});t("kandan.control",Object.fromEntries([["control",O]]));let B=jr(J,"type");if(B===void 0)return{TAG:"Returned",_0:void 0};switch(B){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,aS);if(C!==void 0){let pe=mj(C),Fe=El(C)!==sw,Pe=de(r.LINZUMI_SUPERVISED,"1")&&process.platform!=="win32";return t("runner.commander_impl_persisted",Object.fromEntries([["impl",El(C)],["persisted",pe],["runningImpl",sw],["restart",Fe?Pe?"graceful_drain":"deferred_to_next_launch":"not_needed"]])),Fe&&Pe&&Vi(process.pid,"SIGUSR2"),{TAG:"Returned",_0:void 0}}return t("runner.commander_impl_control_ignored",Object.fromEntries([["impl",Dn(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",Dn(jr(J,"instanceId"))],["controlType",B]])),{TAG:"Returned",_0:void 0};let I=Vl(J,"control_seq"),F;if(B==="start_turn"&&I!==void 0){let pe=NR(n,x(jr(J,"threadId"),"undefined"));F=NI(d.initial(pe),I)?"SkipReplayedStartTurn":{TAG:"Dispatch",commit:()=>GI({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",B],["controlSeq",x(J.control_seq,null)]])),{TAG:"Returned",_0:void 0};let D=F.commit,ie=(async()=>{let pe;switch(B){case"invoke_cross_harness_switch":pe=await na(J);break;case"reconnect_thread":pe=await Pt(J);break;case"start_instance":pe=await Hl(J);break;case"start_turn":pe=await hw(J);break;default:pe={TAG:"Error",_0:"unsupported control type for this commander: "+B}}return pe.TAG==="Ok"?(D!==void 0&&D(),await q(pe._0)):await Ce(pe._0),null})();return Ue(ie.then(pe=>{})),{TAG:"Pending",_0:ie}}},X,t,void 0);m.contents=Rp;let _w=p.slice();return p.splice(0,p.length),_w.forEach(O=>Rp(O[0],O[1])),{TAG:"Ok",_0:{close:()=>go()}}}return g.close(),{TAG:"Error",_0:W._0}}return g.close(),{TAG:"Error",_0:ii(v._0)}}function Wi(e){mr("linzumi (rescript commander): "+e+`
879
+ `),Jl(1)}var C6=["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"],E6=["version","help","launch-tui","fast","no-onboarding-discovery","allow-port-forwarding-by-default"];function P6(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=E6.includes(a),l=C6.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 mw={};Sv.forEach(e=>{mw[e[0]]=e[1]});var pw={};Sv.forEach(e=>{pw[e[1]]=e[0]});function R6(e,t,r){let n=Rm(r),i=Im(n),o={};if(o.ts=new Date().toISOString(),o.event=t,Tv()){let a=mw[t];if(a!==void 0)o.event_canonical=a;else{let s=pw[t];s!==void 0&&(o.event_legacy=s)}}yw(i,(a,s)=>{o[s]=a});try{hj.appendFileSync(e,JSON.stringify(o)+`
880
+ `,"utf8");return}catch{return}}function Lre(e){return e.summary}async function fw(e){let t=P6(e),r=t.switches.version,n=0;if(r!==void 0){if(r){process.stdout.write(xv()+`
881
+ `);return}n=1}else n=1;if(n===1){let i=t.switches.help,o=0;if(i!==void 0){if(i)return Wi("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 Wi("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=Rc(a),u=Ic(d,s,void 0);if(u.TAG!=="Ok")return Wi("could not resolve the commander id: "+u._0.summary);let c=u._0,f=await $c({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(ak(L)+`
882
+ `)}},void 0);if(f.TAG!=="Ok")return Wi("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=H0(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:XE(p);if(y===void 0)return Wi("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=Ft(_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),R6(S,ae,U)}}else A=v;let R=Em(G(t.values["codex-bin"],L=>js(a,L)),Om(),L=>{mr(L)},Cm,a,void 0);if(R.TAG!=="Ok")return Wi(R._0);let Z=await pj({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(Z.TAG!=="Ok")return Wi(Z._0);process.stdout.write("Connected to Linzumi (rescript commander "+ku()+") as "+c+`
885
+ `);return}}}async function Ure(e){let t=e[0];if(t===void 0)return Wi("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(xv()+`
886
+ `);return;case"connect":case"local-codex-runner":break;case"mcp":let r=0,n;try{n=await LE(Iw(e)),r=2}catch(o){let a=ee(o);return mr("linzumi mcp server failed: "+gs(a)+`
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(AI(process.env,!1)){case"ThreadWorkerRole":let o=await oj(e.slice(1,e.length));return o===0?void 0:Jl(o);case"SupervisorRole":case"CommanderRole":return await fw(e.slice(1))}case"start":return await fw(e.slice(1));default:return Wi('the "'+t+'" subcommand is not yet implemented in the rescript commander; run the ts impl (LINZUMI_COMMANDER_IMPL=ts)')}return e.length>1?await fw(e.slice(1)):Wi("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 Zre=mw,Wre=pw;export{R6 as appendDriverLogLine,E6 as connectSwitchFlags,C6 as connectValueFlags,Zre as logFileEventCanonicalByLegacy,Wre as logFileEventLegacyByCanonical,Ure as main,P6 as parseConnectFlags,Wi as refuse,fw as runConnect,Lre as schemaFailureMessage};