@linzumi/cli 1.0.140 → 1.0.142
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/impl-res/index.js +78 -78
- package/dist/impl-res/mcp-server.mjs +1 -1
- package/dist/impl-ts/index.js +381 -378
- package/dist/impl-ts/mcp-server.mjs +1 -1
- package/dist/mcp-server.mjs +1 -1
- package/package.json +1 -1
package/dist/impl-res/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';
|
|
2
2
|
const require = createRequire(import.meta.url);
|
|
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
|
|
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 yw=(e,t,r)=>(r=e!=null?gj(vj(e)):{},wj(t||!e||!e.__esModule?Ip(r,"default",{value:e,enumerable:!0}):r,e));var Hd=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 Wd=class{};xt._CodeOrName=Wd;xt.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var qa=class extends Wd{constructor(t){if(super(),!xt.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};xt.Name=qa;var Yn=class extends Wd{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof qa&&(r[n.str]=(r[n.str]||0)+1),r),{})}};xt._Code=Yn;xt.nil=new Yn("");function WA(e,...t){let r=[e[0]],n=0;for(;n<t.length;)Sy(r,t[n]),r.push(e[++n]);return new Yn(r)}xt._=WA;var vy=new Yn("+");function VA(e,...t){let r=[Vd(e[0])],n=0;for(;n<t.length;)r.push(vy),Sy(r,t[n]),r.push(vy,Vd(e[++n]));return Dq(r),new Yn(r)}xt.str=VA;function Sy(e,t){t instanceof Yn?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:VA`${e}${t}`}xt.strConcat=Lq;function Uq(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Vd(Array.isArray(e)?e.join(","):e)}function Zq(e){return new Yn(Vd(e))}xt.stringify=Zq;function Vd(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}xt.safeStringify=Vd;function Wq(e){return typeof e=="string"&&xt.IDENTIFIER.test(e)?new Yn(`.${e}`):WA`[${e}]`}xt.getProperty=Wq;function Vq(e){if(typeof e=="string"&&xt.IDENTIFIER.test(e))return new Yn(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}xt.getEsmExportName=Vq;function Hq(e){return new Yn(e.toString())}xt.regexpCode=Hq});var xy=ce(Tn=>{"use strict";Object.defineProperty(Tn,"__esModule",{value:!0});Tn.ValueScope=Tn.ValueScopeName=Tn.Scope=Tn.varKinds=Tn.UsedValueState=void 0;var xn=Hd(),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||(Tn.UsedValueState=Gf={}));Tn.varKinds={const:new xn.Name("const"),let:new xn.Name("let"),var:new xn.Name("var")};var Ff=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof xn.Name?t:this.name(t)}name(t){return new xn.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Tn.Scope=Ff;var Df=class extends xn.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,xn._)`.${new xn.Name(r)}[${n}]`}};Tn.ValueScopeName=Df;var Bq=(0,xn._)`\n`,ky=class extends Ff{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Bq:xn.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,xn._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,i=>{if(i.value===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return i.value.code},r,n)}_reduceValues(t,r,n={},i){let o=xn.nil;for(let a in t){let s=t[a];if(!s)continue;let l=n[a]=n[a]||new Map;s.forEach(d=>{if(l.has(d))return;l.set(d,Gf.Started);let u=r(d);if(u){let c=this.opts.es5?Tn.varKinds.var:Tn.varKinds.const;o=(0,xn._)`${o}${c} ${d} = ${u};${this.opts._n}`}else if(u=i?.(d))o=(0,xn._)`${o}${u}${this.opts._n}`;else throw new wy(d);l.set(d,Gf.Completed)})}return o}};Tn.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=Hd(),gi=xy(),zo=Hd();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:{}}},Bd=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 Bd{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},Ry=class extends Bd{},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(HA(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)}},Kd=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)}};Kd.kind="func";var Jd=class extends Bd{render(t){return"return "+super.render(t)}};Jd.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}},Yd=class extends lo{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};Yd.kind="catch";var Xd=class extends lo{render(t){return"finally"+super.render(t)}};Xd.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 Jd;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Jd)}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 Yd(o),r(o)}return n&&(this._currNode=i.finally=new Xd,this.code(n)),this._endBlockNode(Yd,Xd)}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 Kd(t,r,n)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(Kd)}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 HA(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,bt._)`!${zy(e)}`}ot.not=HA;var Jq=BA(ot.operators.AND);function Yq(...e){return e.reduce(Jq)}ot.and=Yq;var Xq=BA(ot.operators.OR);function Qq(...e){return e.reduce(Xq)}ot.or=Qq;function BA(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 Gt=it(),eL=Hd();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:(YA(e,t),!XA(t,e.self.RULES.all))}dt.alwaysValidSchema=rL;function YA(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]||tO(e,`unknown keyword: "${o}"`)}dt.checkUnknownRules=YA;function XA(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}dt.schemaHasRules=XA;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,Gt._)`${r}`}return(0,Gt._)`${e}${t}${(0,Gt.getProperty)(n)}`}dt.schemaRefOrVal=iL;function oL(e){return QA(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 QA(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}dt.unescapeJsonPointer=QA;function sL(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}dt.eachItem=sL;function KA({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(i,o,a,s)=>{let l=a===void 0?o:a instanceof Gt.Name?(o instanceof Gt.Name?e(i,o,a):t(i,o,a),a):o instanceof Gt.Name?(t(i,a,o),o):r(o,a);return s===Gt.Name&&!(l instanceof Gt.Name)?n(i,l):l}}dt.mergeEvaluated={props:KA({mergeNames:(e,t,r)=>e.if((0,Gt._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,Gt._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,Gt._)`${r} || {}`).code((0,Gt._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,Gt._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,Gt._)`${r} || {}`),Fy(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:eO}),items:KA({mergeNames:(e,t,r)=>e.if((0,Gt._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,Gt._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,Gt._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,Gt._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function eO(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,Gt._)`{}`);return t!==void 0&&Fy(e,r,t),r}dt.evaluatedPropsToName=eO;function Fy(e,t,r){Object.keys(r).forEach(n=>e.assign((0,Gt._)`${t}${(0,Gt.getProperty)(n)}`,!0))}dt.setEvaluated=Fy;var JA={};function lL(e,t){return e.scopeValue("func",{ref:t,code:JA[t.code]||(JA[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 Gt.Name){let n=t===Ny.Num;return r?n?(0,Gt._)`"[" + ${e} + "]"`:(0,Gt._)`"['" + ${e} + "']"`:n?(0,Gt._)`"/" + ${e}`:(0,Gt._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,Gt.getProperty)(e).toString():"/"+Gy(e)}dt.getErrorPath=dL;function tO(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=tO});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 Qd=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(),ln=uo();Xr.keywordError={message:({keyword:e})=>(0,St.str)`must pass "${e}" keyword validation`};Xr.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,St.str)`"${e}" keyword must be ${t} ($data)`:(0,St.str)`"${e}" keyword is invalid ($data)`};function cL(e,t=Xr.keywordError,r,n){let{it:i}=e,{gen:o,compositeRule:a,allErrors:s}=i,l=iO(e,t,r);n??(a||s)?rO(o,l):nO(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=iO(e,t,r);rO(i,s),o||a||nO(n,ln.default.vErrors)}Xr.reportExtraError=fL;function mL(e,t){e.assign(ln.default.errors,t),e.if((0,St._)`${ln.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,St._)`${ln.default.vErrors}.length`,t),()=>e.assign(ln.default.vErrors,null)))}Xr.resetErrorsCount=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,ln.default.errors,s=>{e.const(a,(0,St._)`${ln.default.vErrors}[${s}]`),e.if((0,St._)`${a}.instancePath === undefined`,()=>e.assign((0,St._)`${a}.instancePath`,(0,St.strConcat)(ln.default.instancePath,o.errorPath))),e.assign((0,St._)`${a}.schemaPath`,(0,St.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0,St._)`${a}.schema`,r),e.assign((0,St._)`${a}.data`,n))})}Xr.extendErrors=pL;function rO(e,t){let r=e.const("err",t);e.if((0,St._)`${ln.default.vErrors} === null`,()=>e.assign(ln.default.vErrors,(0,St._)`[${r}]`),(0,St._)`${ln.default.vErrors}.push(${r})`),e.code((0,St._)`${ln.default.errors}++`)}function nO(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 iO(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[ln.default.instancePath,(0,St.strConcat)(ln.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}`],[ln.default.data,o]),d&&n.push([Wa.propertyName,d])}});var aO=ce(ol=>{"use strict";Object.defineProperty(ol,"__esModule",{value:!0});ol.boolOrEmptySchema=ol.topBoolOrEmptySchema=void 0;var bL=Qd(),vL=it(),SL=uo(),wL={message:"boolean schema is false"};function kL(e){let{gen:t,schema:r,validateName:n}=e;r===!1?oO(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),oO(e)):r.var(t,!0)}ol.boolOrEmptySchema=xL;function oO(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&&sO(e,n)}No.schemaHasRulesForType=EL;function sO(e,t){return t.rules.some(r=>lO(e,r))}No.shouldUseGroup=sO;function lO(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=lO});var eu=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=Qd(),et=it(),dO=Tt(),sl;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(sl||(Qr.DataType=sl={}));function $L(e){let t=uO(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 uO(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=uO;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 cO=new Set(["string","number","integer","boolean","null"]);function jL(e,t){return t?e.filter(r=>cO.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)(cO.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
5
|
|| (${a} == "string" && ${i} && ${i} == +${i})`).assign(s,(0,et._)`+${i}`);return;case"integer":n.elseIf((0,et._)`${a} === "boolean" || ${i} === null
|
|
6
6
|
|| (${a} === "string" && ${i} && ${i} == +${i} && !(${i} % 1))`).assign(s,(0,et._)`+${i}`);return;case"boolean":n.elseIf((0,et._)`${i} === "false" || ${i} === 0 || ${i} === null`).assign(s,!1).elseIf((0,et._)`${i} === "true" || ${i} === 1`).assign(s,!0);return;case"null":n.elseIf((0,et._)`${i} === "" || ${i} === 0 || ${i} === false`),n.assign(s,null);return;case"array":n.elseIf((0,et._)`${a} === "string" || ${a} === "number"
|
|
7
|
-
|| ${a} === "boolean" || ${i} === null`).assign(s,(0,et._)`[${i}]`)}}}function 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},
|
|
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,dO.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,dO.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:i,schemaValue:i,parentSchema:n,params:{},it:e}}});var mO=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)fO(e,i,r[i].default);else t==="array"&&Array.isArray(n)&&n.forEach((i,o)=>fO(e,o,i.default))}Vf.assignDefaults=qL;function fO(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 Xn=ce(jt=>{"use strict";Object.defineProperty(jt,"__esModule",{value:!0});jt.validateUnion=jt.validateArray=jt.usePattern=jt.callValidateCode=jt.schemaProperties=jt.allSchemaProperties=jt.noPropertyInData=jt.propertyInData=jt.isOwnProperty=jt.hasPropFunc=jt.reportMissingProp=jt.checkMissingProp=jt.checkReportMissingProp=void 0;var rr=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,rr._)`${t}`},!0),e.error()})}jt.checkReportMissingProp=UL;function ZL({gen:e,data:t,it:{opts:r}},n,i){return(0,rr.or)(...n.map(o=>(0,rr.and)(By(e,t,o,r.ownProperties),(0,rr._)`${i} = ${o}`)))}jt.checkMissingProp=ZL;function WL(e,t){e.setParams({missingProperty:t},!0),e.error()}jt.reportMissingProp=WL;function pO(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,rr._)`Object.prototype.hasOwnProperty`})}jt.hasPropFunc=pO;function Hy(e,t,r){return(0,rr._)`${pO(e)}.call(${t}, ${r})`}jt.isOwnProperty=Hy;function VL(e,t,r,n){let i=(0,rr._)`${t}${(0,rr.getProperty)(r)} !== undefined`;return n?(0,rr._)`${i} && ${Hy(e,t,r)}`:i}jt.propertyInData=VL;function By(e,t,r,n){let i=(0,rr._)`${t}${(0,rr.getProperty)(r)} === undefined`;return n?(0,rr.or)(i,(0,rr.not)(Hy(e,t,r))):i}jt.noPropertyInData=By;function hO(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}jt.allSchemaProperties=hO;function HL(e,t){return hO(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,rr._)`${e}, ${t}, ${n}${i}`:t,c=[[Go.default.instancePath,(0,rr.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,rr._)`${u}, ${r.object(...c)}`;return l!==rr.nil?(0,rr._)`${s}.call(${l}, ${f})`:(0,rr._)`${s}(${f})`}jt.callValidateCode=BL;var KL=(0,rr._)`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,rr._)`${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,rr._)`${r}.length`);t.forRange("i",0,l,d=>{e.subschema({keyword:n,dataProp:d,dataPropType:Vy.Type.Num},o),t.if((0,rr.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,rr._)`${a} || ${s}`),e.mergeValidEvaluated(u,s)||t.if((0,rr.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}jt.validateUnion=XL});var yO=ce(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.validateKeywordUsage=zi.validSchemaType=zi.funcKeywordCode=zi.macroKeywordCode=void 0;var dn=it(),Va=uo(),QL=Xn(),eU=Qd();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=gO(r,n,s);a.opts.validateSchema!==!1&&a.self.validateSchema(s,!0);let d=r.name("valid");e.subschema({schema:s,schemaPath:dn.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:l,compositeRule:!0},d),e.pass(d,()=>e.error(!0))}zi.macroKeywordCode=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=gO(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&&_O(e),_(()=>e.error());else{let g=t.async?p():m();t.modifying&&_O(e),_(()=>nU(e,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,dn._)`await `),b=>n.assign(c,!1).if((0,dn._)`${b} instanceof ${l.ValidationError}`,()=>n.assign(g,(0,dn._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,dn._)`${u}.errors`;return n.assign(g,null),h(dn.nil),g}function h(g=t.async?(0,dn._)`await `:dn.nil){let b=l.opts.passContext?Va.default.this:Va.default.self,y=!("compile"in t&&!s||t.schema===!1);n.assign(c,(0,dn._)`${g}${(0,QL.callValidateCode)(e,u,b,y)}`,t.modifying)}function _(g){var b;n.if((0,dn.not)((b=t.valid)!==null&&b!==void 0?b:c),g)}}zi.funcKeywordCode=rU;function _O(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,dn._)`${n.parentData}[${n.parentDataProperty}]`))}function nU(e,t){let{gen:r}=e;r.if((0,dn._)`Array.isArray(${t})`,()=>{r.assign(Va.default.vErrors,(0,dn._)`${Va.default.vErrors} === null ? ${t} : ${Va.default.vErrors}.concat(${t})`).assign(Va.default.errors,(0,dn._)`${Va.default.vErrors}.length`),(0,eU.extendErrors)(e)},()=>e.error())}function iU({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function gO(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,dn.stringify)(r)})}function 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 vO=ce(Fo=>{"use strict";Object.defineProperty(Fo,"__esModule",{value:!0});Fo.extendSubschemaMode=Fo.extendSubschemaData=Fo.getSubschema=void 0;var Ni=it(),bO=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,bO.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,bO.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((wee,SO)=>{"use strict";SO.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 kO=ce((kee,wO)=>{"use strict";var Do=wO.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 tu=ce(An=>{"use strict";Object.defineProperty(An,"__esModule",{value:!0});An.getSchemaRefs=An.resolveUrl=An.normalizeId=An._getFullPath=An.getFullPath=An.inlineRef=void 0;var cU=Tt(),fU=Ky(),mU=kO(),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?xO(e)<=t:!1}An.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 xO(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+=xO(n)),t===1/0))return 1/0}return t}function TO(e,t="",r){r!==!1&&(t=dl(t));let n=e.parse(t);return AO(e,n)}An.getFullPath=TO;function AO(e,t){return e.serialize(t).split("#")[0]+"#"}An._getFullPath=AO;var gU=/#\/?$/;function dl(e){return e?e.replace(gU,""):""}An.normalizeId=dl;function yU(e,t,r){return r=dl(r),e.resolve(t,r)}An.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=TO(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`)}}An.getSchemaRefs=vU});var iu=ce(qo=>{"use strict";Object.defineProperty(qo,"__esModule",{value:!0});qo.getData=qo.KeywordCxt=qo.validateFunctionCode=void 0;var RO=aO(),OO=eu(),Xy=Ly(),Bf=eu(),SU=mO(),nu=yO(),Yy=vO(),Te=it(),Ze=uo(),wU=tu(),co=Tt(),ru=Qd();function kU(e){if(MO(e)&&(jO(e),$O(e))){AU(e);return}IO(e,()=>(0,RO.topBoolOrEmptySchema)(e))}qo.validateFunctionCode=kU;function IO({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"; ${CO(r,i)}`),TU(e,i),e.code(o)}):e.func(t,(0,Te._)`${Ze.default.data}, ${xU(i)}`,n.$async,()=>e.code(CO(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;IO(e,()=>{r.$comment&&t.$comment&&NO(e),RU(e),n.let(Ze.default.vErrors,null),n.let(Ze.default.errors,0),r.unevaluated&&OU(e),zO(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 CO(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(MO(e)&&(jO(e),$O(e))){EU(e,t);return}(0,RO.boolOrEmptySchema)(e,t)}function $O({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 EU(e,t){let{schema:r,gen:n,opts:i}=e;i.$comment&&r.$comment&&NO(e),IU(e),$U(e);let o=n.const("_errs",Ze.default.errors);zO(e,o),n.var(t,(0,Te._)`${o} === ${Ze.default.errors}`)}function jO(e){(0,co.checkUnknownRules)(e),PU(e)}function zO(e,t){if(e.opts.jtd)return EO(e,[],!1,t);let r=(0,OO.getSchemaTypes)(e.schema),n=(0,OO.coerceAndCheckDataType)(e,r);EO(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 NO({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 EO(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(()=>FO(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)),PO(e,f),t.length===1&&t[0]===f.type&&r&&(i.else(),(0,Bf.reportTypeError)(e)),i.endIf()):PO(e,f),s||i.if((0,Te._)`${Ze.default.errors} === ${n||0}`))}}function PO(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)&&FO(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=>{GO(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 GO(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function qU(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,co.checkStrictMode)(e,t,e.opts.strictTypes)}var Kf=class{constructor(t,r,n){if((0,nu.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",DO(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,nu.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?ru.reportExtraError:ru.reportError)(this,this.def.error,r)}$dataError(){(0,ru.reportError)(this,this.def.$dataError||ru.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,ru.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 FO(e,t,r,n){let i=new Kf(e,r,t);"code"in r?r.code(i,n):i.$data&&r.validate?(0,nu.funcKeywordCode)(i,r):"macro"in r?(0,nu.macroKeywordCode)(i,r):(r.compile||r.validate)&&(0,nu.funcKeywordCode)(i,r)}var LU=/^\/(?:[^~]|~0|~1)*$/,UU=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function DO(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=DO});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 ou=ce(ib=>{"use strict";Object.defineProperty(ib,"__esModule",{value:!0});var rb=tu(),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(Qn=>{"use strict";Object.defineProperty(Qn,"__esModule",{value:!0});Qn.resolveSchema=Qn.getCompilingSchema=Qn.resolveRef=Qn.compileSchema=Qn.SchemaEnv=void 0;var yi=it(),ZU=Jf(),Ha=uo(),bi=tu(),qO=Tt(),WU=iu(),ul=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,bi.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};Qn.SchemaEnv=ul;function ab(e){let t=LO.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)}}Qn.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)}Qn.resolveRef=VU;function HU(e){return(0,bi.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:ab.call(this,e)}function LO(e){for(let t of this._compilations)if(BU(t,e))return t}Qn.getCompilingSchema=LO;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)}}Qn.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,qO.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,qO.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 UO=ce((Eee,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((Pee,HO)=>{"use strict";var XU=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),WO=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 ZO(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=ZO}else{i.push(d);continue}}return i.length&&(s===ZO?r.zone=i.join(""):a?n.push(i.join("")):n.push(sb(i))),r.address=n.join(""),r}function VO(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(!WO(r)){let n=VO(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}HO.exports={nonSimpleDomain:QU,recomposeAuthority:o2,normalizeComponentEncoding:i2,removeDotSegments:n2,isIPv4:WO,isUUID:XU,normalizeIPv6:VO,stringArrayToHexStripped:sb}});var XO=ce((Ree,YO)=>{"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 BO(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function KO(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 JO={scheme:"http",domainHost:!0,parse:BO,serialize:KO},_2={scheme:"https",domainHost:JO.domainHost,parse:BO,serialize:KO},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:JO,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}YO.exports={wsIsSecure:db,SCHEMES:em,isValidSchemeName:d2,getSchemeHandler:ub}});var tC=ce((Iee,rm)=>{"use strict";var{normalizeIPv6:v2,removeDotSegments:au,recomposeAuthority:S2,normalizeComponentEncoding:tm,isIPv4:w2,nonSimpleDomain:k2}=lb(),{SCHEMES:x2,getSchemeHandler:QO}=XO();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=eC(fo(e,n),fo(t,n),n,!0);return n.skipEscape=!0,Gi(i,n)}function eC(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=au(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=au(t.path||""),i.query=t.query):(t.path?(t.path[0]==="/"?i.path=au(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=au(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=QO(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=au(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=QO(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:eC,equal:O2,serialize:Gi,parse:fo};rm.exports=cb;rm.exports.default=cb;rm.exports.fastUri=cb});var nC=ce(fb=>{"use strict";Object.defineProperty(fb,"__esModule",{value:!0});var rC=tC();rC.code='require("ajv/dist/runtime/uri").default';fb.default=rC});var cC=ce(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.CodeGen=Zr.Name=Zr.nil=Zr.stringify=Zr.str=Zr._=Zr.KeywordCxt=void 0;var E2=iu();Object.defineProperty(Zr,"KeywordCxt",{enumerable:!0,get:function(){return E2.KeywordCxt}});var cl=it();Object.defineProperty(Zr,"_",{enumerable:!0,get:function(){return cl._}});Object.defineProperty(Zr,"str",{enumerable:!0,get:function(){return cl.str}});Object.defineProperty(Zr,"stringify",{enumerable:!0,get:function(){return cl.stringify}});Object.defineProperty(Zr,"nil",{enumerable:!0,get:function(){return cl.nil}});Object.defineProperty(Zr,"Name",{enumerable:!0,get:function(){return cl.Name}});Object.defineProperty(Zr,"CodeGen",{enumerable:!0,get:function(){return cl.CodeGen}});var P2=Jf(),lC=ou(),R2=qy(),su=Xf(),I2=it(),lu=tu(),nm=eu(),pb=Tt(),iC=UO(),$2=nC(),dC=(e,t)=>new RegExp(e,t);dC.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.'},oC=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,B=U===!0||U===void 0?1:U||0,oe=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:dC,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:B,regExp:oe}:{optimize:B,regExp:oe},loopRequired:(h=e.loopRequired)!==null&&h!==void 0?h:oC,loopEnum:(_=e.loopEnum)!==null&&_!==void 0?_:oC,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 du=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)(),aC.call(this,z2,t,"NOT SUPPORTED"),aC.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=iC;n==="id"&&(i={...iC},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 lC.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,lu.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=sC.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,i=new su.SchemaEnv({schema:{},schemaId:n});if(r=su.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=sC.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,lu.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]=uC(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,lu.normalizeId)(a||n);let d=lu.getSchemaRefs.call(this,t,n);return l=new su.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):su.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{su.compileSchema.call(this,t)}finally{this.opts=r}}};du.ValidationError=P2.default;du.MissingRefError=lC.default;Zr.default=du;function aC(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 sC(e){return e=(0,lu.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=uC(t)),e.validateSchema=this.compile(t,!0))}var K2={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function uC(e){return{anyOf:[e,K2]}}});var fC=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 _C=ce(Ba=>{"use strict";Object.defineProperty(Ba,"__esModule",{value:!0});Ba.callRef=Ba.getValidate=void 0;var Y2=ou(),mC=Xn(),On=it(),fl=uo(),pC=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=pC.resolveRef.call(l,d,i,r);if(u===void 0)throw new Y2.default(n.opts.uriResolver,i,r);if(u instanceof pC.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,On._)`${m}.validate`,d,d.$async)}function f(m){let h=hC(e,m);om(e,h,m,m.$async)}function p(m){let h=t.scopeValue("schema",s.code.source===!0?{ref:m,code:(0,On.stringify)(m)}:{ref:m}),_=t.name("valid"),g=e.subschema({schema:m,dataTypes:[],schemaPath:On.nil,topSchemaRef:h,errSchemaPath:r},_);e.mergeEvaluated(g),e.ok(_)}}};function hC(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,On._)`${r.scopeValue("wrapper",{ref:t})}.validate`}Ba.getValidate=hC;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:On.nil;n?u():c();function u(){if(!s.$async)throw new Error("async schema referenced by sync schema");let m=i.let("valid");i.try(()=>{i.code((0,On._)`await ${(0,mC.callValidateCode)(e,t,d)}`),p(t),a||i.assign(m,!0)},h=>{i.if((0,On._)`!(${h} instanceof ${o.ValidationError})`,()=>i.throw(h)),f(h),a||i.assign(m,!1)}),e.ok(m)}function c(){e.result((0,mC.callValidateCode)(e,t,d),()=>p(t),()=>f(t))}function f(m){let h=(0,On._)`${m}.errors`;i.assign(fl.default.vErrors,(0,On._)`${fl.default.vErrors} === null ? ${h} : ${fl.default.vErrors}.concat(${h})`),i.assign(fl.default.errors,(0,On._)`${fl.default.vErrors}.length`)}function p(m){var h;if(!o.opts.unevaluated)return;let _=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(o.props!==!0)if(_&&!_.dynamicProps)_.props!==void 0&&(o.props=im.mergeEvaluated.props(i,_.props,o.props));else{let g=i.var("props",(0,On._)`${m}.evaluated.props`);o.props=im.mergeEvaluated.props(i,g,o.props,On.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,On._)`${m}.evaluated.items`);o.items=im.mergeEvaluated.items(i,g,o.items,On.Name)}}}Ba.callRef=om;Ba.default=X2});var gC=ce(_b=>{"use strict";Object.defineProperty(_b,"__esModule",{value:!0});var Q2=fC(),eZ=_C(),tZ=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Q2.default,eZ.default];_b.default=tZ});var yC=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 bC=ce(yb=>{"use strict";Object.defineProperty(yb,"__esModule",{value:!0});var uu=it(),iZ={message:({schemaCode:e})=>(0,uu.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,uu._)`{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,uu._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0,uu._)`${a} !== parseInt(${a})`;e.fail$data((0,uu._)`(${n} === 0 || (${a} = ${r}/${n}, ${s}))`)}};yb.default=oZ});var SC=ce(bb=>{"use strict";Object.defineProperty(bb,"__esModule",{value:!0});function vC(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=vC;vC.code='require("ajv/dist/runtime/ucs2length").default'});var wC=ce(vb=>{"use strict";Object.defineProperty(vb,"__esModule",{value:!0});var Ka=it(),aZ=Tt(),sZ=SC(),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 kC=ce(Sb=>{"use strict";Object.defineProperty(Sb,"__esModule",{value:!0});var uZ=Xn(),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 xC=ce(wb=>{"use strict";Object.defineProperty(wb,"__esModule",{value:!0});var cu=it(),mZ={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,cu.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,cu._)`{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"?cu.operators.GT:cu.operators.LT;e.fail$data((0,cu._)`Object.keys(${r}).length ${i} ${n}`)}};wb.default=pZ});var TC=ce(kb=>{"use strict";Object.defineProperty(kb,"__esModule",{value:!0});var fu=Xn(),mu=it(),hZ=Tt(),_Z={message:({params:{missingProperty:e}})=>(0,mu.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,mu._)`{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(mu.nil,c);else for(let p of r)(0,fu.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,fu.checkMissingProp)(e,r,p)),(0,fu.reportMissingProp)(e,p),t.else()}function c(){t.forOf("prop",n,p=>{e.setParams({missingProperty:p}),t.if((0,fu.noPropertyInData)(t,i,p,s.ownProperties),()=>e.error())})}function f(p,m){e.setParams({missingProperty:p}),t.forOf(p,n,()=>{t.assign(m,(0,fu.propertyInData)(t,i,p,s.ownProperties)),t.if((0,mu.not)(m),()=>{e.error(),t.break()})},mu.nil)}}};kb.default=gZ});var AC=ce(xb=>{"use strict";Object.defineProperty(xb,"__esModule",{value:!0});var pu=it(),yZ={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,pu.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,pu._)`{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"?pu.operators.GT:pu.operators.LT;e.fail$data((0,pu._)`${r}.length ${i} ${n}`)}};xb.default=bZ});var dm=ce(Tb=>{"use strict";Object.defineProperty(Tb,"__esModule",{value:!0});var OC=Ky();OC.code='require("ajv/dist/runtime/equal").default';Tb.default=OC});var CC=ce(Ob=>{"use strict";Object.defineProperty(Ob,"__esModule",{value:!0});var Ab=eu(),Wr=it(),vZ=Tt(),SZ=dm(),wZ={message:({params:{i:e,j:t}})=>(0,Wr.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,Wr._)`{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,Wr._)`${a} === false`),e.ok(l);function u(){let m=t.let("i",(0,Wr._)`${r}.length`),h=t.let("j");e.setParams({i:m,j:h}),t.assign(l,!0),t.if((0,Wr._)`${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,Wr._)`{}`);t.for((0,Wr._)`;${m}--;`,()=>{t.let(_,(0,Wr._)`${r}[${m}]`),t.if(g,(0,Wr._)`continue`),d.length>1&&t.if((0,Wr._)`typeof ${_} == "string"`,(0,Wr._)`${_} += "_"`),t.if((0,Wr._)`typeof ${b}[${_}] == "number"`,()=>{t.assign(h,(0,Wr._)`${b}[${_}]`),e.error(),t.assign(l,!1).break()}).code((0,Wr._)`${b}[${_}] = ${m}`)})}function p(m,h){let _=(0,vZ.useFunc)(t,SZ.default),g=t.name("outer");t.label(g).for((0,Wr._)`;${m}--;`,()=>t.for((0,Wr._)`${h} = ${m}; ${h}--;`,()=>t.if((0,Wr._)`${_}(${r}[${m}], ${r}[${h}])`,()=>{e.error(),t.assign(l,!1).break(g)})))}}};Ob.default=kZ});var EC=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 PC=ce(Pb=>{"use strict";Object.defineProperty(Pb,"__esModule",{value:!0});var hu=it(),CZ=Tt(),EZ=dm(),PZ={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,hu._)`{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,hu.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,hu._)`${d()}(${r}, ${p})`,()=>t.assign(u,!0).break()))}function f(p,m){let h=i[m];return typeof h=="object"&&h!==null?(0,hu._)`${d()}(${r}, ${p}[${m}])`:(0,hu._)`${r} === ${h}`}}};Pb.default=RZ});var RC=ce(Rb=>{"use strict";Object.defineProperty(Rb,"__esModule",{value:!0});var IZ=yC(),$Z=bC(),MZ=wC(),jZ=kC(),zZ=xC(),NZ=TC(),GZ=AC(),FZ=CC(),DZ=EC(),qZ=PC(),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(_u=>{"use strict";Object.defineProperty(_u,"__esModule",{value:!0});_u.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}IC(e,n)}};function IC(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())})}}_u.validateAdditionalItems=IC;_u.default=ZZ});var Mb=ce(gu=>{"use strict";Object.defineProperty(gu,"__esModule",{value:!0});gu.validateTuple=void 0;var $C=it(),um=Tt(),WZ=Xn(),VZ={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,um.alwaysValidSchema)(r,t)&&e.ok((0,WZ.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=um.mergeEvaluated.items(n,r.length,s.items));let l=n.name("valid"),d=n.const("len",(0,$C._)`${o}.length`);r.forEach((c,f)=>{(0,um.alwaysValidSchema)(s,c)||(n.if((0,$C._)`${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)}}}gu.validateTuple=MC;gu.default=VZ});var jC=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 NC=ce(zb=>{"use strict";Object.defineProperty(zb,"__esModule",{value:!0});var zC=it(),KZ=Tt(),JZ=Xn(),YZ=$b(),XZ={message:({params:{len:e}})=>(0,zC.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,zC._)`{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 GC=ce(Nb=>{"use strict";Object.defineProperty(Nb,"__esModule",{value:!0});var ei=it(),cm=Tt(),eW={message:({params:{min:e,max:t}})=>t===void 0?(0,ei.str)`must contain at least ${e} valid item(s)`:(0,ei.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,ei._)`{minContains: ${e}}`:(0,ei._)`{minContains: ${e}, maxContains: ${t}}`},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,ei._)`${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,ei._)`${u} >= ${a}`;s!==void 0&&(h=(0,ei._)`${h} && ${u} <= ${s}`),e.pass(h);return}o.items=!0;let c=t.name("valid");s===void 0&&a===1?p(c,()=>t.if(c,()=>t.break())):a===0?(t.let(c,!0),s!==void 0&&t.if((0,ei._)`${i}.length > 0`,f)):(t.let(c,!1),f()),e.result(c,()=>e.reset());function f(){let h=t.name("_valid"),_=t.let("count",0);p(h,()=>t.if(h,()=>m(_)))}function p(h,_){t.forRange("i",0,u,g=>{e.subschema({keyword:"contains",dataProp:g,dataPropType:cm.Type.Num,compositeRule:!0},h),_()})}function m(h){t.code((0,ei._)`${h}++`),s===void 0?t.if((0,ei._)`${h} >= ${a}`,()=>t.assign(c,!0).break()):(t.if((0,ei._)`${h} > ${s}`,()=>t.assign(c,!1).break()),a===1?t.assign(c,!0):t.if((0,ei._)`${h} >= ${a}`,()=>t.assign(c,!0)))}}};Nb.default=tW});var qC=ce(Fi=>{"use strict";Object.defineProperty(Fi,"__esModule",{value:!0});Fi.validateSchemaDeps=Fi.validatePropertyDeps=Fi.error=void 0;var Gb=it(),rW=Tt(),yu=Xn();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 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
|
|
10
|
+
deps: ${r}}`};var nW={keyword:"dependencies",type:"object",schemaType:"object",error:Fi.error,code(e){let[t,r]=iW(e);FC(e,t),DC(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 FC(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,yu.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,yu.checkReportMissingProp)(e,d)}):(r.if((0,Gb._)`${l} && (${(0,yu.checkMissingProp)(e,s,o)})`),(0,yu.reportMissingProp)(e,o),r.else())}}Fi.validatePropertyDeps=FC;function DC(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,yu.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=DC;Fi.default=nW});var UC=ce(Fb=>{"use strict";Object.defineProperty(Fb,"__esModule",{value:!0});var LC=it(),oW=Tt(),aW={message:"property name must be valid",params:({params:e})=>(0,LC._)`{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,LC.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=Xn(),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 VC=ce(Ub=>{"use strict";Object.defineProperty(Ub,"__esModule",{value:!0});var cW=iu(),ZC=Xn(),Lb=Tt(),WC=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&&WC.default.code(new cW.KeywordCxt(o,WC.default,"additionalProperties"));let a=(0,ZC.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,ZC.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 JC=ce(Zb=>{"use strict";Object.defineProperty(Zb,"__esModule",{value:!0});var HC=Xn(),pm=it(),BC=Tt(),KC=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,HC.allSchemaProperties)(r),l=s.filter(h=>(0,BC.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,KC.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,BC.checkStrictMode)(o,`property ${_} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){t.forIn("key",n,_=>{t.if((0,pm._)`${(0,HC.usePattern)(e,h)}.test(${_})`,()=>{let g=l.includes(h);g||e.subschema({keyword:"patternProperties",schemaProp:h,dataProp:_,dataPropType:KC.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 YC=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 XC=ce(Vb=>{"use strict";Object.defineProperty(Vb,"__esModule",{value:!0});var _W=Xn(),gW={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:_W.validateUnion,error:{message:"must match a schema in anyOf"}};Vb.default=gW});var QC=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 eE=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 nE=ce(Kb=>{"use strict";Object.defineProperty(Kb,"__esModule",{value:!0});var _m=it(),rE=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,rE.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let i=tE(n,"then"),o=tE(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 tE(e,t){let r=e.schema[t];return r!==void 0&&!(0,rE.alwaysValidSchema)(e,r)}Kb.default=xW});var iE=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 oE=ce(Yb=>{"use strict";Object.defineProperty(Yb,"__esModule",{value:!0});var OW=$b(),CW=jC(),EW=Mb(),PW=NC(),RW=GC(),IW=qC(),$W=UC(),MW=qb(),jW=VC(),zW=JC(),NW=YC(),GW=XC(),FW=QC(),DW=eE(),qW=nE(),LW=iE();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 aE=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 sE=ce(Qb=>{"use strict";Object.defineProperty(Qb,"__esModule",{value:!0});var VW=aE(),HW=[VW.default];Qb.default=HW});var lE=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 uE=ce(ev=>{"use strict";Object.defineProperty(ev,"__esModule",{value:!0});var BW=gC(),KW=RC(),JW=oE(),YW=sE(),dE=lE(),XW=[BW.default,KW.default,(0,JW.default)(),YW.default,dE.metadataVocabulary,dE.contentVocabulary];ev.default=XW});var fE=ce(gm=>{"use strict";Object.defineProperty(gm,"__esModule",{value:!0});gm.DiscrError=void 0;var cE;(function(e){e.Tag="tag",e.Mapping="mapping"})(cE||(gm.DiscrError=cE={}))});var pE=ce(rv=>{"use strict";Object.defineProperty(rv,"__esModule",{value:!0});var pl=it(),tv=fE(),mE=Xf(),QW=ou(),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=mE.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,R),S instanceof mE.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 hE=ce((vte,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((nr,nv)=>{"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 iV=cC(),oV=uE(),aV=pE(),_E=hE(),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(_E,sV):_E;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)}};nr.Ajv=hl;nv.exports=nr=hl;nv.exports.Ajv=hl;Object.defineProperty(nr,"__esModule",{value:!0});nr.default=hl;var lV=iu();Object.defineProperty(nr,"KeywordCxt",{enumerable:!0,get:function(){return lV.KeywordCxt}});var _l=it();Object.defineProperty(nr,"_",{enumerable:!0,get:function(){return _l._}});Object.defineProperty(nr,"str",{enumerable:!0,get:function(){return _l.str}});Object.defineProperty(nr,"stringify",{enumerable:!0,get:function(){return _l.stringify}});Object.defineProperty(nr,"nil",{enumerable:!0,get:function(){return _l.nil}});Object.defineProperty(nr,"Name",{enumerable:!0,get:function(){return _l.Name}});Object.defineProperty(nr,"CodeGen",{enumerable:!0,get:function(){return _l.CodeGen}});var dV=Jf();Object.defineProperty(nr,"ValidationError",{enumerable:!0,get:function(){return dV.default}});var uV=ou();Object.defineProperty(nr,"MissingRefError",{enumerable:!0,get:function(){return uV.default}})});var xE=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(vE,lv),time:Di(av(!0),dv),"date-time":Di(gE(!0),wE),"iso-time":Di(av(),SE),"iso-date-time":Di(gE(),kE),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:bE},double:{type:"number",validate:bE},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,wE),"iso-time":Di(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,SE),"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,kE),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 vE(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 SE(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 gE(e){let t=av(e);return function(n){let i=n.split(sv);return i.length===2&&vE(i[0])&&t(i[1])}}function wE(e,t){if(!(e&&t))return;let r=new Date(e).valueOf(),n=new Date(t).valueOf();if(r&&n)return r-n}function kE(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 yE=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function gV(e){return yE.lastIndex=0,yE.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 bE(){return!0}var wV=/[^\\]\\Z/;function kV(e){if(wV.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var TE=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 EE=ce((bu,CE)=>{"use strict";Object.defineProperty(bu,"__esModule",{value:!0});var yl=xE(),OV=TE(),uv=it(),AE=new uv.Name("fullFormats"),CV=new uv.Name("fastFormats"),cv=(e,t={keywords:!0})=>{if(Array.isArray(t))return OE(e,t,yl.fullFormats,AE),e;let[r,n]=t.mode==="fast"?[yl.fastFormats,CV]:[yl.fullFormats,AE],i=t.formats||yl.formatNames;return OE(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 OE(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])}CE.exports=bu=cv;Object.defineProperty(bu,"__esModule",{value:!0});bu.default=cv});import*as hj from"node:fs";import*as _j from"node:path";function cr(e,t){delete e[t]}var bw=((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 Pr(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 xw 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),vw=Yu("stack"),Ar=Yu("message"),M6=Yu("name"),j6=Yu("fileName");function Xu(e,t){if(e!==void 0&&t(ue(e)))return e}function rn(e,t,r){return e!==void 0?r(ue(e)):t}function G(e,t){if(e!==void 0)return 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 zt(e){return e!==void 0}function mn(e){return e===void 0}function fs(e,t){return e===t?0:e<t?-1:1}var ww=(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 ww(e,d),l.contents&&ww(t,u),l.contents}}else return!1}function nn(e,t){return(typeof e=="number"||typeof e=="bigint")&&(typeof t=="number"||typeof t=="bigint")?e!==t:!de(e,t)}import*as ms from"node:fs/promises";import*as Tw 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 kw(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:Pr(r.code),message:x(Ar(r),"unknown error")}}function si(e,t){return de(e.code,t)}function Xt(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 Nt(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 Aw(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 Ow(e){try{return{TAG:"Ok",_0:(rt.unlinkSync(e),void 0)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function li(e,t){try{return{TAG:"Ok",_0:(rt.renameSync(e,t),void 0)}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function pn(e){try{return{TAG:"Ok",_0:(rt.rmSync(e,{force:!0}),void 0)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function 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 Dn(e){try{return{TAG:"Ok",_0:rt.realpathSync(e)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function Cw(e){try{return{TAG:"Ok",_0:rt.mkdtempSync(e)}}catch(t){let r=ee(t);return{TAG:"Error",_0:Ne(r)}}}function Ew(e,t,r,n){try{let i=rt.openSync(e,"w");try{rt.writeFileSync(i,n,"utf8"),rt.fsyncSync(i),rt.closeSync(i)}catch(a){throw rt.closeSync(i),a}rt.renameSync(e,t);let o=rt.openSync(r,"r");try{rt.fsyncSync(o),rt.closeSync(o)}catch(a){throw rt.closeSync(o),a}return{TAG:"Ok",_0:void 0}}catch(i){let o=ee(i);return{TAG:"Error",_0:Ne(o)}}}function qn(e){return 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 Pw(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:Tw.execFileSync(e,t,{encoding:"utf8",timeout:r,maxBuffer:n})}}catch(i){let o=ee(i);return{TAG:"Error",_0:Ne(o)}}}function fr(e){try{return process.stderr.write(e)}catch{return!1}}function oa(e,t){return e[t]}function Vi(e,t){try{return process.kill(e,t),{TAG:"Ok",_0:void 0}}catch(r){let n=ee(r);return{TAG:"Error",_0:Ne(n)}}}function Ln(e){try{return We(new URL(e))}catch{return}}function Rw(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(Ar(ue(i)),"unknown error"):"unknown error"}}}function Iw(e){return xw.Buffer.from(e,"utf8").toString("base64url")}var Gr={};Gr["api-url"]="ValueKind";Gr.token="ValueKind";Gr["auth-file"]="ValueKind";Gr["delegation-auth-file"]="ValueKind";Gr.workspace="ValueKind";Gr.channel="ValueKind";Gr["owner-username"]="ValueKind";Gr.mode="ValueKind";Gr.cwd="ValueKind";Gr["thread-id"]="ValueKind";Gr.format="ValueKind";Gr.command="ValueKind";Gr["tool-scope"]="ValueKind";Gr["agent-session"]="BooleanKind";Gr["include-token"]="BooleanKind";Gr.help="BooleanKind";function 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=Gr[a];if(s!==void 0)if(s==="ValueKind"){let l=e[n+1|0];l!==void 0?l.startsWith("--")?r="--"+a+" requires a value":(t[a]={TAG:"ValueFlag",_0:l},n=n+2|0):r="--"+a+" requires a value"}else t[a]="BoolFlag",n=n+1|0;else r="unsupported option --"+a}else r="unexpected argument "+o;else n=n+1|0}let i=r;return i!==void 0?{TAG:"Error",_0:i}:{TAG:"Ok",_0:t}}function 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 $w(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
|
|
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",
|
|
104
|
+
`}function jw(e){throw e}function zw(e){throw e}function Nw(e){throw e}function _r(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(Ar(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 Gw(e){return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength|0)}function lc(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}function Kl(e){process.exitCode=e}function aa(e){process.stdout.write(e)}import*as dk 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 he(e,t){return e.TAG==="Ok"?t(e._0):e}function $t(e,t){return e.TAG==="Ok"?e:{TAG:"Error",_0:t(e._0)}}var 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",Un="undefined",Lp="nan";var Yp="instance",Ki="array",Rr="object",di="union",Up="never",td="unknown",Zp="ref",Xp=kw("Sury.Exn"),Pi="const";function Gj(e){return e.type===Un?!0:e.type===di?Un in e.has:!1}function Fj(e,t){return(e&t)!==0}var er={[td]:1,[Ss]:2,[vo]:4,[cc]:8,[Un]:16,[ws]:32,[Rr]:64,[Ki]:128,[di]:256,[Zp]:512,[zj]:1024,[Lp]:2048,function:4096,[Yp]:8192,[Up]:32768,[Nj]:16384};function fc(e){let t=er[typeof e];if(t&16)return Un;if(!(t&64))return t&2?'"'+e+'"':t&1024?e+"n":t&4096?"Function":e.toString();if(e===null)return ws;if(Array.isArray(e)){let i="[";for(let o=0,a=e.length;o<a;++o)o!==0&&(i=i+", "),i=i+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===Rr?"{ [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!==Rr)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]}},Cn=Object.defineProperty,rd=da.prototype;Cn(rd,"message",{get(){return Vw(this)}});Cn(rd,"name",{value:"SuryError"});Cn(rd,"s",{value:Kp});Cn(rd,"_1",{get(){return this}});Cn(rd,"RE_EXN_ID",{value:Xp});var Ww=1,Qp=function(){},eh=Object.create(null);Cn(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 Vw(e){let t=e.path;return(t===""?"":"Failed at "+t+": ")+e.reason}var Jl={m:Vw,d:void 0,a:"strip",f:0},Ai={},Fw={configurable:!0},ks="value",la="r";function Or(e,t){let r=new Qp;return r.type=e,r.seq=Ww++,t&&(Ai[ks]=r,Cn(r,la,Ai)),r}function Hw(e){return e}var Fp={};function xo(e,t,r){if(Fp[e])return Fp[e];let n=Or(t,!0);return r(n),Fp[e]=n,n}var Qt=Or(td,!0);Qt.decoder=Hw;var ui=(e=>{let t=new Qp;for(let r in e)t[r]=e[r];return t.seq=Ww++,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 nd(e,t){let r=er[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 _n(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=_n(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=_n(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=_n(e.g);if(e.prev!==void 0){let n=e.i;n===""?e.cp="let "+t+";"+e.cp:e.cp=e.cp+("let "+t+"="+n+";")}else{let n=e.i;n===""?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 Yl(e,t,r){return Oi(e,n=>{let i=t(n);throw new da(i)})+"("+r+")"}function Bw(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 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
|
|
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=
|
|
111
|
-
`,{encoding:"utf8",flag:"wx"}),l)),()=>{let d=
|
|
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=>Bw(s,d,u,c,a,void 0,r)}}function zr(e){let t=e.e.errorMessage,r;if(t!==void 0){let n=t.type;r=n!==void 0?n:t._}else r=void 0;return th(void 0,void 0,r,void 0)(e)}function Kw(e,t){let r=t!==void 0?t:e.e;return Yl(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)+"||"+Yl(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+"||"+Yl(e,s(e),t)+";")}return i}function Jw(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&&Jw(i)){let s=r.v(),l=i.vc,d="";for(let u=0,c=l.length;u<c;++u){let f=l[u],p=f.c(s);f.f===zr?d=d?d+"&&"+p:p:i.e.noValidation!==!0&&(o=o+(p+"||"+Yl(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 Zn(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 Xl(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 Yw(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 Xw(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:Lj,i:e.v()+"["+t+"]",s:n,e:o,f:e.f,cp:"",hd:"",path:"",g:e.g}}function bo(e,t,r){return Zn(e,nd(e,t),t,r)}function Qw(e,t){let r=Zn(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 e0(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=_n(e.g),s=i(a)+";throw "+a;return e.f&1&&(e.i=e.i+".catch("+a+"=>{"+s+"})"),"try{"+o+(n!==void 0?n():"")+"}catch("+a+"){"+s+"}"}}function t0(e){return e}t0.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 r0(e){return xs(Rr)(e)+"&&"+e}function Vj(e,t){return r=>r+" instanceof "+Oi(e,t)}function Hj(e){let t=er[e.s.type];if(t&1){let i=[{c:xs(vo),f:zr}],o=e.e.format,a=0;return o==="int32"?i.push({c:Dp,f:zr}):a=1,a===1&&(e.g.o&2||i.push({c:s=>"!"+vs(s),f:zr})),kt(e,e.e,i,void 0)}if(!(t&2))return t&4?e.s.format!==e.e.format&&e.e.format==="int32"?kt(e,e.e,[{c:Dp,f:zr}],void 0):e:fa(e,e.s,e.e);let r=_n(e.g),n=Zn(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:zr}],n}function ih(){return xo(vo,vo,e=>{e.decoder=Hj})}function Bj(e){return Zn(e,'""+'+e.i,Es(),void 0)}function Kj(e){let t=er[e.s.type];if(t&1)return kt(e,e.e,[{c:xs(Ss),f:zr}],void 0);if(!(t&3132&&Pi in e.s))return t&1036?Bj(e):t&2?e:fa(e,e.s,e.e);let r=""+e.s.const,n=Or(Ss,!1);return n.const=r,Zn(e,'"'+r+'"',n,void 0)}function Es(){return xo(Ss,Ss,e=>{e.decoder=Kj})}function Jj(e){let t=er[e.s.type];if(t&1)return kt(e,e.e,[{c:xs(cc),f:zr}],void 0);if(!(t&2))return t&8?e:fa(e,e.s,e.e);let r=_n(e.g),n=Zn(e,r,e.e,void 0);n.v=Br;let i=e.v();return n.cp="let "+r+";("+n.i+"="+i+'==="true")||'+i+'==="false"||'+Kw(e,void 0)+";",n}function oh(){return xo(cc,cc,e=>{e.decoder=Jj})}function n0(e,t){e[er[t]&768?td: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=er[t.type];if(!(er[e.s.type]&2&&r&3132))return r&2048?kt(e,t,[{c:vs,f:zr}],void 0):kt(e,t,[{c:o=>o+"==="+nd(e,t),f:zr}],void 0);let n=Or(Ss,!1);n.const=""+t.const;let i=bo(e,n,n);return i.vc=[{c:o=>o+'==="'+n.const+'"',f:zr}],bo(i,t,t)}function ma(){return xo(Un,Un,e=>{e.const=void 0,e.decoder=Ts})}function id(){return xo(ws,ws,e=>{e.const=null,e.decoder=Ts})}function i0(){return xo(Lp,Lp,e=>{e.const=NaN,e.decoder=Ts})}function ah(e){if(e===null)return id();let t=typeof e;if(t===Un)return ma();if(t===vo&&Number.isNaN(e))return i0();if(t===Rr){let n=Or(Yp,!0);return n.class=e.constructor,n.const=e,n.decoder=Ts,n}let r=Or(t,!0);return r.const=e,r.decoder=Ts,r}function mr(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=mr(s),d=Ci(l,void 0);t=s.i!==l.i||d!==""?Zn(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!==td&&(t=a(o,o.e)),o!==t?r=a:(t=o.e.decoder(o),t.io||(t=Xl(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===Rr&&(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),n0(g,A.type)}i.has=g,i.anyOf=b}let _=i.$defs;if(_!==void 0){let g={};for(let b=0,y=Object.keys(_).length;b<y;++b){let v=Object.keys(_)[b];g[v]=Bi(_[v])}i.$defs=g}t=i,r=o}let n=t;return Ai[ks]=n,Cn(e,la,Ai),Ai[ks]=e,Cn(n,la,Ai),n}function o0(e){try{return mr(e)}catch(t){let r=bc(t),n=e.p;throw r.path=(n!==void 0?n.path:"")+(e.path+"[]"+r.path),r}}function a0(e,t,r,n){let i=Uj(Pi in e?Qt:e,t,r,n),o=mr(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 t0;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|Jl.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=Jl.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=a0(u,u,i,0);return Ai[ks]=c,Cn(l,d,Ai),c}throw new Error("[Sury] No schema provided for decoder.")}var ca="BS_PRIVATE_NESTED_SOME_NONE";function Yj(e){let t=kt(e,void 0,void 0,sh());return t.cp=Kw(e,void 0)+";",t}function sh(){return xo(Up,Up,e=>{e.decoder=Yj})}function Xj(e){let t=e.e.to;return Zn(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:od,additionalItems:"strict",items:[]}:{type:Rr,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=er[e.s.type],i;if(n&65){let u=n&64,c;if(u)c=e.s;else{let p=Or(Rr,!1);p.properties=Hp,p.additionalItems=Qt,c=p}let f=[];u||(f.push({c:r0,f:zr}),r.additionalItems!=="strip"&&f.push({c:p=>"!"+hc(p),f:zr})),i=f.length!==0?kt(e,c,f,void 0):kt(e,c,void 0,void 0)}else i=fa(e,e.s,r);let o=r.additionalItems,a;a=o==="strip"||o==="strict"?void 0:o;let s=i.s.additionalItems,l;l=s!=="strip"&&s!=="strict";let d;if(a!==void 0)if(a===Qt)d=i;else if(l){let u=i.v(),c=_n(i.g),f=Xw(i,c),p=o0(f),m=p.t,h=m?Zn(i,"{}",r,void 0):kt(i,r,void 0,void 0),_=nh(p,i,c,m?()=>e0(h,c,p):void 0);if((m||_!=="")&&(h.cp=h.cp+("for(let "+c+" in "+u+"){"+_+"}")),p.f&1){let g=_n(h.g),b=_n(h.g),y=_n(h.g),v=_n(h.g),S=h.v();d=Qw(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=Ql(i,m);h.e=a,h.io=!1,h.u=t,Ei(u,m,mr(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=Ql(i,v);A.e=S,A.io=!1,A.u=t,g&&S.type===di&&S.has[Un]&&(A.i="("+A.i+"??null)");let R=mr(A);t&&Pi in S&&Yw(i,R,v),Ei(p,v,R),h||(h=R.t)}let b=!1;if(r.additionalItems==="strict"){let y=i.s.additionalItems,v;v=y!=="strip"&&y!=="strict",b=v}if(b){let y=_n(p.g);if(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+("){"+Yl(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 Xl(d,i)}function Qj(){let e=ah(0),t={};return t[ca]=e,{type:Rr,serializer:r=>{let n=r.e.to;return bo(r,n,n)},decoder:Ps,additionalItems:"strip",required:[ca],properties:t}}function od(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:ad(Qt),f=[];u||f.push({c:hc,f:zr});let p=c.additionalItems,m;if(m=p==="strip"||p==="strict"?c.items.length===o:!1,!m){let h=r.additionalItems;(h==="strip"||h==="strict")&&(h==="strip"?f.push({c:_=>_+".length>="+o,f:zr}):f.push({c:_=>_+".length==="+o,f:zr}))}a=f.length!==0?kt(e,c,f,void 0):kt(e,c,void 0,void 0)}else a=fa(e,e.s,r);let s=r.additionalItems,l,d=0;if(s==="strip"||s==="strict")d=1;else if(s===Qt)l=a;else{let u=a.v(),c=_n(a.g),f=Xw(a,c),p=o0(f),m=p.t,h=m?Zn(a,"new Array("+u+".length)",r,void 0):kt(a,r,void 0,void 0),_=nh(p,a,c,m?()=>e0(h,c,p):void 0);(m||_!=="")&&(h.cp=h.cp+("for(let "+c+"="+o+";"+c+"<"+u+".length;++"+c+"){"+_+"}")),l=p.f&1?Qw(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(),_=Ql(a,h);_.e=m,_.io=!1,_.u=t;let g=mr(_);t&&Pi in m&&Yw(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 Xl(l,a)}function ez(e,t){let r=e.s.anyOf;return t.type===di&&u0(t)===void 0&&l0(t.anyOf,r)||!tz(r,t)?e:d0(e,t)}function s0(e){let t=e.e,r=t.anyOf,n=er[e.s.type],i=u0(t);if(e.s===t&&i===void 0&&r.every(dc)||n&256&&l0(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=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===Un&&(M=!0),j=j+1|0}o===""&&(n&16&&V?o=ws:n&32&&M&&(o=Un))}let a=o,s=e.i,l=W=>Oi(e,function(){let V=arguments,M=Bw(t,Qt,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,Ft=!1,Xe="",q={contents:""};try{let _e=mr(pt);if(u.push(_e.s),Xe=Ci(_e,q),_e.t){d.t=!0,_e.f&1&&(d.f=d.f|1);let Be=M.v();_e.i!==Be&&(Xe=Xe+(Be+"="+_e.i))}}catch(_e){let Be=Oi(pt,bc(_e));Ue=Ue+","+Be,V&&It?(c.contents=Be,Ft=!0):Ye?(Tr=!1,Xe=V?"throw "+Be:l(Ue)):Ft=!0}let Ce=q.contents,Se=Xe;if(!Ft&&Ce)if(Se){let _e=Ge[Ce];_e!==void 0?typeof _e=="string"?Ge[Ce]=[_e,Se]:_e.push(Se):Ge[Ce]=Se}else Ae.contents=Ae.contents?Ae.contents+"||"+Ce:Ce;if(!Ft&&(!Ce||Ye)){let _e=Object.keys(Ge);for(let Be=0,Ht=_e.length;Be<Ht;++Be){let fn=_e[Be];j=j+(se?"else if":"if")+("("+fn+"){");let Fn=Ge[fn];if(typeof Fn=="string")j=j+Fn+"}";else{let ii="";for(let Vr=0,_o=Fn.length;Vr<_o;++Vr){let ra=Fn[Vr],tn="e"+Vr;j=j+("try{"+ra+"}catch("+tn+"){"),ii=ii+","+tn}j=j+l(ii)+"}".repeat(Fn.length)+"}"}se=!0}Ge={}}if(!Ft&&!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 _e="e"+(ut-2|0);j=j+((se?"else{":"")+"try{"+Se+"}catch("+_e+"){"),re=(se?"}":"")+"}"+re,Ue=Ue+","+_e,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:_e=>"("+Ae.contents+")",f:zr});else if(Tr){let _e=l(Ue);j=j+(se?"else{"+_e+"}":_e)}}ut=ut+1}return j+re},p="",m="",h="",_=!1,g=r.length-1|0,b={},y=[],v=t.refiner,S=t.inputRefiner,A={contents:void 0},R={contents:void 0},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=er[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=Qt;else{let je=Or(V.type,!1);je.encoder=V.encoder,N&8192?je.class=V.class:N&64?(je.properties=Hp,je.additionalItems=Qt):N&128?(je.additionalItems=Qt,je.items=yc):N&2096&&(je.const=V.const),je.decoder=pt=>er[pt.s.type]&1?kt(pt,pt.e,[{c:Ye=>{let He=er[V.type];if(He&64)return r0(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+"==="+nd(pt,V):He&17418?xs(V.type)(Ye):"";let It=xs(vo)(Ye);return pt.g.o&2?It:It+"&&!"+vs(Ye)},f:zr}],void 0):V.decoder(pt),Ae=je}se.e=Ae;let Ue;try{Ue=mr(se)}catch{se.vc=void 0,Ue=se}Dw(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&&Jw(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),Ft=Ci(It,void 0)+Tr,Xe=c.contents;if(Xe)if(c.contents="",Ft){let q="e"+(W+je|0);p=p+("try{"+Ft+"throw "+Xe+"}catch("+q+"){"),m="}"+m,h=h+","+q}else h=h+","+Xe;else if(Ft){let q="e"+(W+je|0);p=p+("try{"+Ft+"}catch("+q+"){"),m="}"+m,h=h+","+q}else _=!0}}b={},y=[]}}}}let U=b,B=y;if(!_){let W=!1,V="";for(let j=0,re=B.length;j<re;++j){let se=U[B[j]],Ae=se[1],Ue=se[2],Ge=f(se,!1),ut={contents:""},je=Ci(Ae,ut)+Ge,pt=ut.contents;je||Dw(er[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 l0(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 d0(e,t){return kt(e,Qt,void 0,So(e.s,r=>{r.to=t}))}function tz(e,t){return!(er[wo(t).type]&512)&&!(t.type===di&&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 u0(e){if(e.parser!==void 0)return;let r=e.to;if(r!==void 0)return r}function Ql(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===Rr?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===Rr&&u.type!==td&&!(er[u.type]&512)&&!Gj(u)?lh(u):u}let l="["+ua(e.g,t)+"]",d={p:e,v:Wp,i:Pi in a?nd(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=mr(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),n0(r,s.type))}let i=Or(di,!1);return i.anyOf=Array.from(n),i.decoder=s0,i.encoder=ez,i.has=r,i}throw new Error("[Sury] S.union requires at least one item")}function Dw(e,t){return e&8320&&Rr in t?!0:e&2048?vo in t:!1}function qp(e){return er[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&&!(er[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 ad(e){let t=Or(Ki,e[la]===e);return t.additionalItems=e,t.items=yc,t.decoder=od,t}function vc(e,t){let r=t!==void 0?t:ma(),n=wo(e);switch(n.type){case"undefined":return ko([r,qw(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=qw(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 qw(e){return So(e,t=>{t.to=Qj(),t.parser=Xj})}function dh(e){let t=Or(Rr,e[la]===e);return t.properties=Hp,t.additionalItems=e,t.decoder=Ps,t}function Lw(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=_),Fw[ks]=0,Cn(o,l,Fw);let y=a0(s,o,a,n);Ai[ks]=y,Cn(o,l,Ai),b=y;let v=o.hasTransform,S=o.isAsync;(v!==h||S!==_)&&(h=v,_=S,delete o[l],g=!0)}d=Oi(e,b)}let c=o.hasTransform===!0,f=o.isAsync,p="",m;if(c||f){let h=_n(e.g);p="let "+h+";";let _=Zn(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}Cn(eh,"~standard",{get:function(){let e=this;return{version:1,vendor:Bp,validate:t=>{try{return{value:_c(Qt,e)(t)}}catch(r){let n=bc(r);return{issues:[{message:n.reason,path:n.path===""?void 0:$j(n.path)}]}}}}}});function c0(e,t){return _c(Qt,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 f0(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 m0(){let e=ui(id());return e.to=ma(),e}function p0(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(Qt,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"?nd(f,ah(t._0)):Oi(f,t._0)+"()",Zn(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=Hw,r.to=u;return}let i="Can't set default for "+Sr(r);throw new Error("[Sury] "+i)})}function Vp(e,t){let r=er[t.type];if(r&46)return mr(kt(e,Qt,void 0,t));if(r&2064){let i=ui(id());return i.to=t,mr(kt(e,Qt,void 0,i))}if(r&128){let i=ad(Qt),o=mr(kt(e,Qt,void 0,i));return o.s.additionalItems=hn(),o.e=t,o.io=!1,o}if(r&64){let i=dh(Qt),o=mr(kt(e,Qt,void 0,i));return o.s.additionalItems=hn(),o.e=t,o.io=!1,o}if(r&768)return e;let n=ui(Es());return n.to=t,mr(kt(e,Qt,void 0,n))}function bs(e){let t=er[e.type],r=!0;if(!(t&46||e.$ref===hn().$ref||t&256&&e.anyOf.every(bs))){let i=!1;if(t&128){let o=e.additionalItems,a;a=o==="strip"||o==="strict"?!0:bs(o),i=a}r=i&&e.items.every(bs)}if(r)return!0;let n=!1;if(t&64){let i=e.additionalItems,o;o=i==="strip"||i==="strict"?!0:bs(i),n=o}return n?Object.values(e.properties).every(bs):!1}function Uw(e){let t=er[e.s.type];if(bs(e.s))return e;if(t&2064)return bo(e,id(),void 0);if(t&128){let r=Or(Ki,!1);r.items=e.s.items.map(o=>hn()),r.decoder=od;let n=e.s.additionalItems,i;return i=n==="strip"||n==="strict"?n:hn(),r.additionalItems=i,r.to=e.e.to,mr(kt(e,void 0,void 0,r))}if(t&64){let r=e.s.additionalItems;if(!(r==="strip"||r==="strict")){let o=dh(hn());return o.to=e.e.to,mr(kt(e,void 0,void 0,o))}let n=As(e,e.s);n.e=hn(),e.e.to&&(n.e=ui(n.e),n.e.to=e.e.to);let i=Object.keys(e.s.properties);for(let o=0,a=i.length;o<a;++o){let s=i[o],l=Ql(e,s);if(l.io=!1,l.s.type===di&&l.s.has[Un]){l.e=ko([ma(),hn()]);let d=mr(l);d.o=!0,Ei(n,s,d)}else l.e=hn(),Ei(n,s,mr(l))}return Os(n)}if(t&512)return Lw(e);if(t&256&&!(Un in e.s.has))return mr(d0(e,e.e));if(t&1)return e.e.to&&!e.e.parser?(e.s=hn(),Vp(e,e.e)):e.e.noValidation?(e.s=hn(),e):Lw(e);try{let r=ui(Es());return r.to=e.e,e.e=r,mr(e)}catch{return fa(e,e.s,hn())}}function hn(){return xo(sa,Zp,e=>{let t=Or(Zp,!0);t.$ref=rz+sa,t.name=sa,t.decoder=Uw,t.encoder=Vp,e.$ref=t.$ref,e.name=sa,e.decoder=Uw,e.encoder=Vp;let r=[Es(),oh(),ih(),id(),dh(t),ad(t)],n={};r.forEach(a=>{n[a.type]=!0});let i=Or(di,!0);i.anyOf=r,i.has=n,i.decoder=s0,i.name=sa,i.type=di;let o={};o[sa]=i,e.$defs=o})}function iz(e){return e[Jp]}function ed(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 ed(l,i.from.concat(o),i.fromFlattened)}})}function h0(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 _0(e,t){let r=t.from,n=t.fromFlattened,i=n!==void 0?Ji(Zw(e.fv[n],t.from,0)):r!==void 0?Ji(Zw(e,r,0)):Pi in t?bo(e,t,void 0):h0(e,t,(o,a)=>_0(e,a));return i.prev=void 0,i.e=t,i}function g0(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)g0(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,mr(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,mr(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!==Rr))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!==Rr)){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 Zw(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!==Rr||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=Or(Ki,!1);return s.items=e,s.additionalItems="strict",s.decoder=od,s}let n=e.constructor;if(n&&n!==Object){let s=Or(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=Or(Rr,!1);return a.required=i,a.properties=e,a.additionalItems=Jl.a,a.decoder=Ps,a}function oz(e){let t={};g0(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 y0(e){let t=this,r="~"+e,n=t[r];if(n!==void 0)return ue(n);let i={},o=[],a=Or(Rr,!1);a.required=o,a.properties=i,a.additionalItems=Jl.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,ed(m,s.from.concat(p),s.fromFlattened)},f={field:l,f:l,fieldOr:(p,m,h)=>{let _=vc(m,void 0);return l(p,p0(_,{TAG:"Value",_0:h}))},tag:(p,m)=>{l(p,Sc(m))},nested:y0,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 b0(e){let t=ui(gc(e,iz));return t.serializer=oz,t}function v0(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=mr(u)}else{let u=h0(e,s,(c,f)=>Ql(e,c));u.e=s,u.prev=void 0,d=Xl(u,u)}i.push(d),e.cp=e.cp+Ci(d,void 0)}e.fv=i}let r=e.e.to,n=_0(e,r);return n.t=!0,n.prev=e,Xl(n,e)}function S0(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 ed(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,ed(c,[u],void 0)},l=e({field:i,f:i,fieldOr:(u,c,f)=>{let p=vc(c,void 0);return i(u,p0(p,{TAG:"Value",_0:f}))},tag:(u,c)=>{i(u,Sc(c))},nested:y0,flatten:n}),d=Or(Rr,!1);return d.required=Object.keys(r),d.properties=r,d.additionalItems=Jl.a,d.decoder=Ps,d.parser=v0,d.to=b0(l),t!==void 0&&(d.flattened=t),d}function w0(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,ed(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=Or(Ki,!1);return a.items=t,a.additionalItems="strict",a.decoder=od,a.parser=v0,a.to=b0(o),a}var az=Sc;function k0(e){return ko(e.map(az))}function x0(e){return vc(e,m0())}var T0=ko;var At=Es(),A0=oh();var Rs=ih();var O0=hn();var C0=Xp;var wc=ad;var pr=lh;var uh=x0;var E0=T0,kc=k0;var Yi=f0;var P0=c0;var En=S0;var R0=w0;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:P0(e,t)}}catch(r){let n=ee(r);if(n.RE_EXN_ID===C0)return{TAG:"Error",_0:lz(n._1)};throw n}}import*as ld from"node:fs";import*as j0 from"node:os";import*as xc from"node:path";var dz="--api-url must be ws://, wss://, http://, or https://";function on(e){let t=Ln(e);if(t===void 0)return{TAG:"Error",_0:"invalid URL: "+e};let r=ue(t),n=r.protocol,i;switch(n){case"http:":case"https:":i={TAG:"Ok",_0:void 0};break;case"ws:":r.protocol="http:",i={TAG:"Ok",_0:void 0};break;case"wss:":r.protocol="https:",i={TAG:"Ok",_0:void 0};break;default:i={TAG:"Error",_0: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 dd(){return xc.join(j0.homedir(),".linzumi","auth.json")}var I0="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 $0(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 z0(e){let t;try{t=JSON.parse(e)}catch{t=void 0}if(t===void 0)return{TAG:"Error",_0:we(I0)};if(typeof t!="object"||t===null||Array.isArray(t))return{TAG:"Error",_0:we(I0)};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($0(s[1]),d=>[l,d])})):void 0,{TAG:"Ok",_0:{serverTokens:a,personalAgentDelegation:k(n,$0)}}}function N0(e){return ld.existsSync(e)?he($t(Xt(e),t=>we(t.message)),t=>wt(z0(t),r=>r)):{TAG:"Ok",_0:void 0}}function G0(e,t){return e!==void 0?new Date(e).getTime()<=t:!1}function Tc(e,t,r){return ld.existsSync(t)?he(N0(t),n=>wt($t(on(e),we),i=>k(k(k(n,o=>o.serverTokens),o=>o[i]),o=>{if(!(o.accessToken.trim()===""||G0(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 F0(e,t){return ld.existsSync(e)?he(N0(e),r=>{let n=k(r,i=>i.personalAgentDelegation);return n!==void 0&&n.accessToken.trim()!==""?G0(n.expiresAt,t)?{TAG:"Error",_0:we(pz)}:{TAG:"Ok",_0:n}:{TAG:"Error",_0:we(mz)}}):{TAG:"Error",_0:we(fz(e))}}function M0(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],M0(i[1])])));let n=e.personalAgentDelegation;return n!==void 0&&(t.personal_agent_delegation=M0(n)),t}function Ac(e,t,r,n,i){return he($t(on(e),we),o=>{let a=ld.existsSync(n)?he($t(Xt(n),s=>we(s.message)),z0):{TAG:"Ok",_0:{serverTokens:void 0,personalAgentDelegation:void 0}};return he(a,s=>{let l=i.toISOString(),d=G(r,g=>new Date(i.getTime()+g*1e3).toISOString()),u={accessToken:t,issuedAt:l,expiresAt:d},c=s.serverTokens,f=c!==void 0?Object.fromEntries(Object.entries(c)):{};f[o]=u;let p=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 he($t(Nt(xc.dirname(n)),_),()=>{let g=he(yo(h,m,{encoding:"utf8",mode:384}),()=>li(h,n));return g.TAG==="Ok"?{TAG:"Ok",_0:{accessToken:t,serverBaseUrl:o,issuedAt:l,expiresAt:d}}:(pn(h),{TAG:"Error",_0:we(g._0.message)})})})})}function fh(e){let t=yr(e);return t!==void 0?x(Ar(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 ud(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(on(e),we);if(a.TAG!=="Ok")return{TAG:"Error",_0:a._0};let s=Hi("/api/v2/local-codex-runner/oauth/validate",a._0);if(s.TAG!=="Ok")return{TAG:"Error",_0:we(s._0)};let l=s._0,d=l.searchParams;r!==void 0&&d.set("workspace",r),n!==void 0&&d.set("channel",n),o.forEach(m=>{d.append("required_scope",m)});let u={};u.authorization="Bearer "+t;let c=await pa(l.toString(),{method:"GET",headers:u});if(c.TAG!=="Ok")return{TAG:"Error",_0:we(c._0.message)};let f=c._0,p=f.status;if(p>404||p<401){if(p===200){let m=await ud(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 ak from"node:os";import*as Pc from"node:fs";import*as yh from"node:os";import*as Fr 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 L0(e){return{version:1,machineId:e.f("machineId",pr(Yi(At,hh,"invalid machine id",void 0))),runnerId:e.f("runnerId",pr(Yi(At,Ec,"invalid runner id",void 0))),allowedCwds:e.f("allowedCwds",wc(vz))}}var Sz=En(L0),wz=En(e=>(e.tag("version",1),L0(e)));function cd(e){let t=new Set;return ze(e,r=>{let n=r.trim();if(!(n===""||t.has(n)))return t.add(n),n})}function U0(e){return{version:e.version,machineId:e.machineId,runnerId:e.runnerId,allowedCwds:cd(e.allowedCwds)}}function _h(e){return wt(Is(e,wz),U0)}function Z0(e){return wt(Is(e,Sz),U0)}var Cc=pr(Yi(At,e=>e.trim()!=="","must be a non-empty string",void 0)),D0=pr(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 q0=Yi(At,kz,"must be a parseable date",void 0),r8=En(e=>({email:e.f("email",Yi(At,t=>t.trim()!=="","must be a non-empty string",void 0)),serviceUrl:e.f("service_url",Yi(At,t=>t.trim()!=="","must be a non-empty string",void 0)),accessToken:e.f("access_token",Cc),refreshToken:e.f("refresh_token",Cc),expiresInSeconds:e.f("expires_in_seconds",D0),userId:e.f("user_id",D0),workspaceSlug:e.f("workspace_slug",Cc),launchUrl:e.f("launch_url",Cc),createdAt:e.f("created_at",q0),updatedAt:e.f("updated_at",q0)}));var Ri="prod";function W0(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==="~"?W0(r):t.startsWith("~/")?Fr.resolve(W0(r),t.slice(2)):t}function Rc(e){let t=oa(e,"LINZUMI_CONFIG_FILE");return t!==void 0&&t.trim()!==""?Fr.resolve(js(e,t)):Fr.resolve(yh.homedir(),".linzumi","config.json")}function fd(e){let t=on(e),r=on($s);if(t.TAG!=="Ok")return{TAG:"Error",_0:we(t._0)};let n=t._0;return r.TAG==="Ok"?{TAG:"Ok",_0:n===r._0?Ri:n}:{TAG:"Error",_0:we(r._0)}}function Tz(e){return wt(fd(e),t=>t===Ri?Ri:Buffer.from(t).toString("base64url"))}function Az(e,t,r){let n=Fr.dirname(e),i=Fr.basename(e);return t!==void 0?he(fd(t),o=>o===Ri?{TAG:"Ok",_0:Fr.join(n,i+"."+r)}:wt(Tz(t),a=>Fr.join(n,i+"."+a+"."+r))):{TAG:"Ok",_0:Fr.join(n,i+"."+r)}}function H0(e){if(Pc.existsSync(e))return he($t(Xt(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 he(H0(e),r=>{let n=t!==void 0?fd(t):{TAG:"Ok",_0:Ri};return he(n,i=>{let o=i===Ri?r:x(r[i],Oz()),a=i===Ri?_h(o):Z0(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 he(he(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=cd(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 he(Pz(e),()=>{let n=r!==void 0?fd(r):{TAG:"Ok",_0:Ri};return he(n,i=>he(H0(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),he($t(Nt(Fr.dirname(t)),l=>we(l.message)),()=>Cz(t,a))}))})}function V0(e,t,r){return he($t(Xt(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 V0(e,r,n);let i=t();if(!r(i))return{TAG:"Error",_0:we("invalid generated Linzumi "+n+": "+i)};let o=Fr.dirname(e),a=Fr.basename(e),s=Fr.join(o,"."+a+"."+process.pid.toString()+"."+bh.randomUUID()+".tmp"),l=d=>we(d.message);return he(he($t(Nt(o),l),()=>$t(yo(s,i+`
|
|
111
|
+
`,{encoding:"utf8",flag:"wx"}),l)),()=>{let d=Aw(s,e),u;if(d.TAG==="Ok")u={TAG:"Ok",_0:i};else{let c=d._0;u=si(c,"EEXIST")?V0(e,r,n):{TAG:"Error",_0:we(c.message)}}return Ow(s),u})}function $z(){return"runner-"+bh.randomUUID()}function Mz(e,t,r,n,i,o,a,s){let l=t!==void 0?wt(fd(t),d=>{if(d!==Ri)return t}):{TAG:"Ok",_0:void 0};return he(l,d=>he(gh(e,d),u=>{let c=a(u);return c!==void 0?{TAG:"Ok",_0:c}:he(Az(e,d,r),f=>he(Iz(f,n,i,o),p=>he(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 B0(e,t){return he(gh(e,t),r=>{let n=[],i=[],o={contents:void 0};r.allowedCwds.forEach(s=>{if(o.contents!==void 0)return;let d=Fr.resolve(js(void 0,s)),u=Dn(d);if(u.TAG==="Ok"){let f=u._0;if(n.push(f),f===d)return;n.push(d);return}let c=u._0;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:cd(n),missingAllowedCwds:cd(i)}}})}function J0(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e.error;if(typeof t=="string")return t}function Y0(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 X0(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 ud(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=J0(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 ud(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=J0(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 Q0(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 ek(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 "+
|
|
115
|
+
`;case"Summary":return"Still waiting for authorization after "+ek(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 "+
|
|
119
|
+
`);case"RefreshLine":return"\r\x1B[2KCode: "+e.userCode+" (waiting "+ek(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 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=
|
|
121
|
+
`}}function Lz(e){return new Promise((t,r)=>{setTimeout(()=>t(),e|0)})}function Uz(e){return{startDeviceAuthorization:t=>X0(t.httpBaseUrl,t.workspaceSlug,t.channelSlug,t.onboarding,t.identity),pollDeviceCodeForToken:t=>Q0(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 tk(e,t,r,n,i,o,a,s){let l=o!==void 0?o:g=>{fr(g)},d=s!==void 0?s:Uz(g=>l(qz(g))),u=a!==void 0?a:de(Pr(process.stderr.isTTY),!0),c=$t(on(e),we);if(c.TAG!=="Ok")return{TAG:"Error",_0:c._0};let f=c._0,p=d.now(),m={cycle:0,lastLoudPromptAtMs:void 0,startFailures:0},h=async g=>{let b=await d.pollDeviceCodeForToken({httpBaseUrl:f,deviceCode:g.deviceCode,expiresInSeconds:g.expiresInSeconds});if(typeof b!="object"||b.TAG!=="Transient")return b;let y=b.httpStatus,v=b.reason;d.report({TAG:"TransientFailure",reason:v,waitedMs:d.now()-p});let S={};return S.cycle=m.cycle,S.reason=v,S.httpStatus=y!==void 0?y:null,d.log("device_wait.transient_poll_failure",S),await d.sleep(5e3),await h(g)},_=async()=>{let g=await d.startDeviceAuthorization({httpBaseUrl:f,workspaceSlug:t,channelSlug:r,onboarding:n,identity:i});if(g.TAG==="Ok"){let b=g._0;m.startFailures=0,m.cycle=m.cycle+1|0;let y=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:Y0(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 rk={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:rk,r=x(t.platform,process.platform),n=x(t.execFile,Hz),i=x(t.readFile,Xt);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 nk(e){return G(Yz(e!==void 0?e:rk),r=>"mfp-"+qn(Vz+r).slice(0,32))}function ik(e){let t={};return e!==void 0&&(t.machineFingerprintV2=e),t}function sk(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 he($t(on(e),we),r=>{let n=Ln(r);return n===void 0?{TAG:"Error",_0:we("invalid URL: "+r)}:{TAG:"Ok",_0:"Workspace '"+(t!==void 0?t:"undefined")+"' was not found on "+ue(n).host+". Sign in to the web app to create it, then re-run connect."}})}var 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=nk(void 0),o=ak.hostname(),a={commanderId:n,machineFingerprint:i,hostname:o},s=await tk(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:dd();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 he(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:dd(),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 he($t(Cw(Sh.join(dk.tmpdir(),"linzumi-mcp-auth-")),vh),i=>he($t(ps(i,448),vh),()=>{let o=Sh.join(i,"auth.json");return he(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 uk(e,t,r,n,i,o){let a=o!==void 0?o:i1(),s=r!==void 0?r:dd(),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:()=>Dr,Schema:()=>nt,ZodAny:()=>Oo,ZodArray:()=>no,ZodBigInt:()=>va,ZodBoolean:()=>Sa,ZodBranded:()=>hd,ZodCatch:()=>Ia,ZodDate:()=>wa,ZodDefault:()=>Ra,ZodDiscriminatedUnion:()=>Nc,ZodEffects:()=>Vn,ZodEnum:()=>Ea,ZodError:()=>gn,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:()=>bn,ZodOptional:()=>yn,ZodParsedType:()=>fe,ZodPipeline:()=>_d,ZodPromise:()=>Co,ZodReadonly:()=>$a,ZodRecord:()=>Gc,ZodSchema:()=>nt,ZodSet:()=>Us,ZodString:()=>Ao,ZodSymbol:()=>Ds,ZodTransformer:()=>Vn,ZodTuple:()=>$i,ZodType:()=>nt,ZodUndefined:()=>ka,ZodUnion:()=>Ta,ZodUnknown:()=>ro,ZodVoid:()=>qs,addIssueToContext:()=>le,any:()=>q1,array:()=>W1,bigint:()=>z1,boolean:()=>Sk,coerce:()=>pN,custom:()=>yk,date:()=>N1,datetimeRegex:()=>_k,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:()=>pd,map:()=>X1,nan:()=>j1,nativeEnum:()=>iN,never:()=>U1,null:()=>D1,nullable:()=>lN,number:()=>vk,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:()=>bk,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:"),gn=class e extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=t}format(t){let r=t||function(o){return o.message},n={_errors:[]},i=o=>{for(let a of o.issues)if(a.code==="invalid_union")a.unionErrors.map(i);else if(a.code==="invalid_return_type")i(a.returnTypeError);else if(a.code==="invalid_arguments")i(a.argumentsError);else if(a.path.length===0)n._errors.push(r(a));else{let s=n,l=0;for(;l<a.path.length;){let d=a.path[l];l===a.path.length-1?(s[d]=s[d]||{_errors:[]},s[d]._errors.push(r(a))):s[d]=s[d]||{_errors:[]},s=s[d],l++}}};return i(this),n}static assert(t){if(!(t instanceof e))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,mt.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=r=>r.message){let r={},n=[];for(let i of this.issues)if(i.path.length>0){let o=i.path[0];r[o]=r[o]||[],r[o].push(t(i))}else n.push(t(i));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};gn.create=e=>new gn(e);var 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 ck=eo;function d1(e){ck=e}function Ns(){return ck}var pd=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=pd({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,r,r===eo?void 0:eo].filter(i=>!!i)});e.common.issues.push(n)}var Dr=class e{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,r){let n=[];for(let i of r){if(i.status==="aborted")return $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 ge;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(ge||(ge={}));var Wn=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}},fk=(e,t)=>{if(To(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new gn(e.common.issues);return this._error=r,this._error}}};function 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 Dr,ctx:{common:t.parent.common,data:t.data,parsedType:Ii(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let r=this._parse(t);if(Gs(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(t){let r=this._parse(t);return Promise.resolve(r)}parse(t,r){let n=this.safeParse(t,r);if(n.success)return n.data;throw n.error}safeParse(t,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ii(t)},i=this._parseSync({data:t,path:n.path,parent:n});return fk(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 fk(n,o)}refine(t,r){let n=i=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(i):r;return this._refinement((i,o)=>{let a=t(i),s=()=>o.addIssue({code:Y.custom,...n(i)});return typeof Promise<"u"&&a instanceof Promise?a.then(l=>l?!0:(s(),!1)):a?!0:(s(),!1)})}refinement(t,r){return this._refinement((n,i)=>t(n)?!0:(i.addIssue(typeof r=="function"?r(n,i):r),!1))}_refinement(t){return new Vn({schema:this,typeName:Q.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return yn.create(this,this._def)}nullable(){return Mi.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return no.create(this)}promise(){return Co.create(this,this._def)}or(t){return Ta.create([this,t],this._def)}and(t){return Aa.create(this,t,this._def)}transform(t){return new Vn({...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 hd({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 _d.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}(=)?))?$/,pk="((\\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(`^${pk}$`);function hk(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(`^${hk(e)}$`)}function _k(e){let t=`${pk}T${hk(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 Dr,i;for(let o of this._def.checks)if(o.kind==="min")t.data.length<o.value&&(i=this._getOrReturnCtx(t,i),le(i,{code:Y.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),n.dirty());else if(o.kind==="max")t.data.length>o.value&&(i=this._getOrReturnCtx(t,i),le(i,{code:Y.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),n.dirty());else if(o.kind==="length"){let a=t.data.length>o.value,s=t.data.length<o.value;(a||s)&&(i=this._getOrReturnCtx(t,i),a?le(i,{code:Y.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):s&&le(i,{code:Y.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),n.dirty())}else if(o.kind==="email")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"?_k(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,...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}};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 Dr;for(let o of this._def.checks)o.kind==="int"?mt.isInteger(t.data)||(n=this._getOrReturnCtx(t,n),le(n,{code:Y.invalid_type,expected:"integer",received:"float",message:o.message}),i.dirty()):o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="multipleOf"?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,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"&&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 Dr;for(let o of this._def.checks)o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="multipleOf"?t.data%o.value!==BigInt(0)&&(n=this._getOrReturnCtx(t,n),le(n,{code:Y.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):mt.assertNever(o);return{status:i.value,value:t.data}}_getInvalidInput(t){let r=this._getOrReturnCtx(t);return le(r,{code:Y.invalid_type,expected:fe.bigint,received:r.parsedType}),$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}};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 Dr,i;for(let o of this._def.checks)o.kind==="min"?t.data.getTime()<o.value&&(i=this._getOrReturnCtx(t,i),le(i,{code:Y.too_small,message:o.message,inclusive:!0,exact:!1,minimum:o.value,type:"date"}),n.dirty()):o.kind==="max"?t.data.getTime()>o.value&&(i=this._getOrReturnCtx(t,i),le(i,{code:Y.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),n.dirty()):mt.assertNever(o);return{status:n.value,value:new Date(t.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(t,r){return this._addCheck({kind:"min",value:t.getTime(),message: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}};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 Wn(r,a,r.path,s)))).then(a=>Dr.mergeArray(n,a));let o=[...r.data].map((a,s)=>i.type._parseSync(new Wn(r,a,r.path,s)));return Dr.mergeArray(n,o)}get element(){return this._def.type}min(t,r){return new e({...this._def,minLength:{value:t,message: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)}};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 bn){let t={};for(let r in e.shape){let n=e.shape[r];t[r]=yn.create(Fs(n))}return new bn({...e._def,shape:()=>t})}else return e instanceof no?new no({...e._def,type:Fs(e.element)}):e instanceof yn?yn.create(Fs(e.unwrap())):e instanceof Mi?Mi.create(Fs(e.unwrap())):e instanceof $i?$i.create(e.items.map(t=>Fs(t))):e}var bn=class e extends nt{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let t=this._def.shape(),r=mt.objectKeys(t);return this._cached={shape:t,keys:r},this._cached}_parse(t){if(this._getType(t)!==fe.object){let d=this._getOrReturnCtx(t);return le(d,{code:Y.invalid_type,expected:fe.object,received:d.parsedType}),$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 Wn(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 Wn(i,c,i.path,u)),alwaysSet:u in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let d=[];for(let u of l){let c=await u.key,f=await u.value;d.push({key:c,value:f,alwaysSet:u.alwaysSet})}return d}).then(d=>Dr.mergeObjectSync(n,d)):Dr.mergeObjectSync(n,l)}get shape(){return this._def.shape()}strict(t){return 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:Q.ZodObject})}setKey(t,r){return this.augment({[t]:r})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let r={};for(let n of mt.objectKeys(t))t[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new e({...this._def,shape:()=>r})}omit(t){let r={};for(let n of mt.objectKeys(this.shape))t[n]||(r[n]=this.shape[n]);return new e({...this._def,shape:()=>r})}deepPartial(){return Fs(this)}partial(t){let r={};for(let n of mt.objectKeys(this.shape)){let i=this.shape[n];t&&!t[n]?r[n]=i:r[n]=i.optional()}return new e({...this._def,shape:()=>r})}required(t){let r={};for(let n of mt.objectKeys(this.shape))if(t&&!t[n])r[n]=this.shape[n];else{let o=this.shape[n];for(;o instanceof yn;)o=o._def.innerType;r[n]=o}return new e({...this._def,shape:()=>r})}keyof(){return gk(mt.objectKeys(this.shape))}};bn.create=(e,t)=>new bn({shape:()=>e,unknownKeys:"strip",catchall:fi.create(),typeName:Q.ZodObject,...Je(t)});bn.strictCreate=(e,t)=>new bn({shape:()=>e,unknownKeys:"strict",catchall:fi.create(),typeName:Q.ZodObject,...Je(t)});bn.lazycreate=(e,t)=>new bn({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 gn(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 gn(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 Vn?to(e.innerType()):e instanceof Ca?[e.value]:e instanceof Ea?e.options:e instanceof Pa?mt.objectValues(e.enum):e instanceof Ra?to(e._def.innerType):e instanceof ka?[void 0]:e instanceof xa?[null]:e instanceof yn?[void 0,...to(e.unwrap())]:e instanceof Mi?[null,...to(e.unwrap())]:e instanceof hd||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 Wn(n,a,n.path,s)):null}).filter(a=>!!a);return n.common.async?Promise.all(o).then(a=>Dr.mergeArray(r,a)):Dr.mergeArray(r,o)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};$i.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new $i({items:e,typeName:Q.ZodTuple,rest:null,...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 Wn(n,s,n.path,s)),value:a._parse(new Wn(n,n.data[s],n.path,s)),alwaysSet:s in n.data});return n.common.async?Dr.mergeObjectAsync(r,i):Dr.mergeObjectSync(r,i)}get element(){return this._def.valueType}static create(t,r,n){return r instanceof nt?new e({keyType:t,valueType:r,typeName:Q.ZodRecord,...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 Wn(n,s,n.path,[d,"key"])),value:o._parse(new Wn(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 Wn(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)}};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 pd({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 pd({data:s,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ns(),eo].filter(d=>!!d),issueData:{code:Y.invalid_return_type,returnTypeError:l}})}let o={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof Co){let s=this;return Kr(async function(...l){let d=new gn([]),u=await s._def.args.parseAsync(l,o).catch(p=>{throw d.addIssue(n(l,p)),d}),c=await Reflect.apply(a,this,u);return await s._def.returns._def.type.parseAsync(c,o).catch(p=>{throw d.addIssue(i(c,p)),d})})}else{let s=this;return Kr(function(...l){let d=s._def.args.safeParse(l,o);if(!d.success)throw new gn([n(l,d.error)]);let u=Reflect.apply(a,this,d.data),c=s._def.returns.safeParse(u,o);if(!c.success)throw new gn([i(u,c.error)]);return c.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:$i.create(t).rest(ro.create())})}returns(t){return new e({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,r,n){return new e({args:t||$i.create([]).rest(ro.create()),returns:r||ro.create(),typeName:Q.ZodFunction,...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 gk(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=gk;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 Vn=class extends nt{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===Q.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){let{status:r,ctx:n}=this._processInputParams(t),i=this._def.effect||null,o={addIssue:a=>{le(n,a),a.fatal?r.abort():r.dirty()},get path(){return n.path}};if(o.addIssue=o.addIssue.bind(o),i.type==="preprocess"){let a=i.transform(n.data,o);if(n.common.async)return Promise.resolve(a).then(async s=>{if(r.value==="aborted")return $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)}};Vn.create=(e,t,r)=>new Vn({schema:e,typeName:Q.ZodEffects,effect:t,...Je(r)});Vn.createWithPreprocess=(e,t,r)=>new Vn({schema:t,effect:{type:"preprocess",transform:e},typeName:Q.ZodEffects,...Je(r)});var yn=class extends nt{_parse(t){return this._getType(t)===fe.undefined?Kr(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};yn.create=(e,t)=>new yn({innerType:e,typeName:Q.ZodOptional,...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 gn(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new gn(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Ia.create=(e,t)=>new Ia({innerType:e,typeName:Q.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...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"),hd=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}},_d=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 mk(e,t){let r=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof r=="string"?{message:r}:r}function yk(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=mk(t,n),l=s.fatal??r??!0;i.addIssue({code:"custom",...s,fatal:l})}});if(!o){let a=mk(t,n),s=a.fatal??r??!0;i.addIssue({code:"custom",...a,fatal:s})}}):Oo.create()}var $1={object:bn.lazycreate},Q;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(Q||(Q={}));var M1=(e,t={message:`Input not instance of ${e.name}`})=>yk(r=>r instanceof e,t),bk=Ao.create,vk=ba.create,j1=Zs.create,z1=va.create,Sk=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=bn.create,V1=bn.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=Vn.create,sN=yn.create,lN=Mi.create,dN=Vn.createWithPreprocess,uN=_d.create,cN=()=>bk().optional(),fN=()=>vk().optional(),mN=()=>Sk().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 Pk from"node:os";import*as Sn from"node:path";import*as Eo from"node:fs/promises";function kk(e,t){return"Kandan attachment path must resolve inside an allowed upload root ("+e+"): "+t}function xk(e){return"Kandan attachment upload path must not include hidden path segments: "+e}function Tk(e){return"Kandan attachment upload path extension is not allowed: "+e}var Ak="LINZUMI_THREAD_RUNNER_KANDAN_THREAD_ID";var Ok="Kandan attachment path must not be empty";function io(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function Rk(e){if(Array.isArray(e))return e}function Jr(e){if(e!==void 0&&typeof e=="string"&&e.trim()!=="")return e.trim()}function _N(e){if(e!==void 0&&typeof e=="number"&&Number.isInteger(e))return e}function vn(e){let t={};t.type="text",t.text=JSON.stringify(e,void 0,2);let r={};return r.content=[t],r.structuredContent=e,r}var 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,vn(c)}let a=o.slice(1),s=a[0],l;if(s!==void 0){let c=ue(s);l=c!==void 0?c:i}else l=i;let d={};d.error=l;let u=a[1];if(u!==void 0){let c=ue(u);c!==void 0&&(d.detail=c)}return vn(d)}return vn(t)}function Ik(e){let t=yr(e);if(t===void 0)return Nw(e);let r=ue(t),n=Ar(r);return n!==void 0&&n.includes("channel_required")?jw(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})):zw(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=Ln(t);if(r!==void 0)return ue(r).toString();let n=e.replace(new RegExp("^wss://"),"https://").replace(new RegExp("^ws://"),"http://"),i=Hi(t,n);return i.TAG==="Ok"?i._0.toString():_r(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 Ek(e,t){let r=Rk(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=Ek(e,r)),n!==void 0&&(i.target_message=Ek(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=Sn.resolve(r!==void 0&&r!==""?r:Pk.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=Sn.relative(e,t);return r===""?!0:r.startsWith("..")?!1:!Sn.isAbsolute(r)}async function kN(e,t){if(t==="")return _r(Ok);let r=Sn.isAbsolute(t)?Sn.resolve(t):Sn.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(Sn.relative(r.path,t).split(new RegExp("[\\\\/]+","g")).find(s=>s!==void 0?s.startsWith("."):!1)!==void 0)return _r(xk(t));let a=Sn.extname(t).toLowerCase();return vN.includes(a)?void 0:_r(Tk(t))}let n=e.map(i=>i.label).join(", ");_r(kk(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 $k(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:Sn.basename(i),contentType:TN(i),sizeBytes:o.size}:_r("Linzumi upload path is not a file: "+i)}async function Mk(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:Gw(o)})}async function jk(e){let t=await Promise.all(e.files.map(m=>$k(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=Rk(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 _=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 _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=Jr(k(io(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 zk(e){let t=await $k(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 _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=io(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=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 _r("Linzumi custom emoji upload failed: "+p)}import*as wn from"node:fs";import*as Nk from"node:os";import*as Gk from"node:net";import*as Hn from"node:path";import*as Fk from"node:child_process";function Ih(e,t){}function $h(e){return e==="DesiredRunning"?"running":"stopped"}function Dk(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:Hn.join(Nk.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=qn(e).slice(0,8),n=t===""?"runner":t;return Hn.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 Hn.join(e,"services",t+".json")}function jh(e,t){return Hn.join(e,"exits",t+".json")}function qk(e,t){return Hn.join(e,"logs",t+".log")}function gd(e){if(typeof e=="string"&&e!=="")return e}function yd(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=gd(e.name),r=k(t,qc),n=gd(e.command),i=gd(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=yd(e.updatedAtMs),l=gd(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:yd(e.pid),ownerPid:yd(e.ownerPid),startedAtMs:yd(e.startedAtMs),updatedAtMs:s,lastBranch:gd(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 Lk(e,t,r){let n=Mh(e,t.name),i=he(Nt(Hn.dirname(n)),()=>{let a=n+".tmp";return he(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=Xt(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(Hn.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 Uk(e,t){let r=Xt(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=yd(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(),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=
|
|
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=Uk(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=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 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:Uk(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 Zk(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 Wk(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:wn.statSync(e.definition.cwd).isDirectory()}}catch{o={TAG:"Error",_0:"cwd does not exist: "+e.definition.cwd}}if(o.TAG!=="Ok")return{TAG:"Error",_0:o._0};if(!o._0)return{TAG:"Error",_0:"cwd is not a directory: "+e.definition.cwd};let a=zh(e.scopeDir,n);a!==void 0&&Nh(e.scopeDir,a)&&await Zk(a.pid,r,n);let s=e.nowMs,l=s!==void 0?s:Date.now(),d=qk(e.scopeDir,n),u=jh(e.scopeDir,n),c=he(he(he(Nt(Hn.dirname(d)),()=>Nt(Hn.join(e.scopeDir,"services"))),()=>Nt(Hn.dirname(u))),()=>{try{return{TAG:"Ok",_0:wn.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;pn(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{wn.writeFileSync(f,`
|
|
179
179
|
--- linzumi dev-service "`+n+'" starting at '+new Date(l).toISOString()+" (owner pid "+e.ownerPid.toString()+`) ---
|
|
180
180
|
$ `+i+`
|
|
181
|
-
`)}catch{}let b={};Object.entries(process.env).forEach(W=>{b[W[0]]=W[1]}),b.ELECTRON_RUN_AS_NODE="1";let y;try{let W=
|
|
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=Fk.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:Pr(W.pid)}}catch(W){let V=ee(W);y={TAG:"Error",_0:"spawn failed: "+Ne(V).message}}try{wn.closeSync(f)}catch{}if(y.TAG!=="Ok")return{TAG:"Error",_0:y._0};let v=y._0;if(v===void 0)return{TAG:"Error",_0:"spawn failed: no pid"};let S=[];e.definition.ports.forEach(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,B={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};Lk(e.scopeDir,B,r);let oe={};return oe.name=n,oe.pid=v,oe.owner_pid=e.ownerPid,oe.cwd=e.definition.cwd,oe.ports=R.map(W=>W),r("dev_services.started",oe),{TAG:"Ok",_0:B}}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 Zk(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};Lk(e,m,n);let h={};return h.name=i.name,n("dev_services.stopped",h),{TAG:"Ok",_0:m}}async function Vk(e,t){let r=await Dh(e,t,Ih);if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=r._0;return pn(Mh(e,n.name)),pn(jh(e,n.name)),{TAG:"Ok",_0:n}}function Hk(e,t,r){let n=qc(t);if(n===void 0)return;let i=qk(e,n),o;try{o=wn.openSync(i,"r")}catch{return}let a;try{let s=wn.fstatSync(o).size,l=Math.min(s,r),d=Buffer.alloc(l|0);wn.readSync(o,d,0,l|0,s-l),a=d.toString("utf8")}catch{a=void 0}try{wn.closeSync(o)}catch{}return a}function Bk(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 Jk=`<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 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
|
|
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 Yk(){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 Ut(){return T.string().optional().describe("Workspace slug. Omit to use the authenticated token scope.")}function Pn(){return T.string().optional().describe("Channel slug. Omit to use the authenticated token scope.")}function Rn(e){if(typeof e=="string")return e}function Xk(e,t,r){let n=io(e[t]);return n!==void 0?n:_r(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 Qk(e){if(typeof e=="number")return e}function ex(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=Dk(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=Rn(n.name),o=i!==void 0?i:"",a=Rn(n.command),s=a!==void 0?a:"",l=Rn(n.cwd),d=await Wk({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=Qk(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=ex(_);else{let y={};y.name=c.name,b=y}return g.service=b,_!==void 0&&_.liveness!=="Running"&&(g.hint="The service is not (fully) serving its declared ports yet. Check linzumi_dev_service_logs before assuming it works."),vn(g)}let u={};return u.ok=!1,u.error=d._0,vn(u)}),e.registerTool("linzumi_dev_service_stop","Stop a managed dev service (SIGTERM, then SIGKILL after a grace period). The registration is kept so linzumi_dev_service_start can bring it back.",Object.fromEntries([["name",T.string().min(1).describe("Service name to stop.")]]),async n=>{let i=Rn(n.name),o=i!==void 0?i:"",a=await 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),vn(s)}),e.registerTool("linzumi_dev_service_status","List every managed dev service with liveness (running / unhealthy / exited / stopped), per-port health probes, and last exit. Live state - always check this before concluding a dev server is up or down.",{},async n=>{let i=await Fh(r.scopeDir),o={};return o.services=i.map(a=>ex(a)),vn(o)}),e.registerTool("linzumi_dev_service_logs","Read the tail of a managed dev service's combined stdout/stderr log.",Object.fromEntries([["name",T.string().min(1).describe("Service name.")],["max_bytes",T.number().int().min(256).max(65536).optional().describe("Tail size in bytes (default 16384).")]]),async n=>{let i=Rn(n.name),o=i!==void 0?i:"",a=Qk(n.max_bytes),s=Hk(r.scopeDir,o,a!==void 0?a:16384),l={};return s!==void 0?(l.ok=!0,l.name=o,l.log_tail=s):(l.ok=!1,l.error="no log for service: "+o),vn(l)}),e.registerTool("linzumi_dev_service_remove","Stop a managed dev service AND delete its registration (it will not be resurrected on runner restart). Use stop instead when the user may want it back.",Object.fromEntries([["name",T.string().min(1).describe("Service name to remove.")]]),async n=>{let i=Rn(n.name),o=i!==void 0?i:"",a=await Vk(r.scopeDir,o),s={};return a.TAG==="Ok"?(s.ok=!0,s.name=a._0.name,s.removed=!0):(s.ok=!1,s.error=a._0),vn(s)})}function tx(e,t){let r=t.devServices,n=t.agentSession,i=t.ownerUsername,o=t.defaultThreadId,a=t.serviceUrl,s=t.cwd,l=t.toolScope,d=t.client,u;switch(l){case"All":case"Coding":u=!0;break;case"OnboardingDiscovery":u=!1;break}let c=async f=>vn(await f);switch(n&&(e.registerTool("linzumi_agent_reply","Post your single @linzumi reply for the current turn into the surface where you were mentioned. Call EXACTLY ONCE per turn with your final answer; the reply links to this working session automatically. Fails with already_replied on a second call and no_active_asker_binding when no turn is active.",Object.fromEntries([["body",T.string().min(1).describe("Plain-text reply body to post.")]]),async f=>{let p={},m=f.body;return p.body=m!==void 0?m:void 0,await c(d.agentReply(p))}),e.registerTool("linzumi_list_coding_jobs","List the coding jobs the current asker can see in this workspace: runner connections (online and recent) with their bound job threads. Live state - never answered from search.",{},async f=>await c(d.agentListCodingJobs({}))),e.registerTool("linzumi_start_coding_job","Start a coding job exactly as if the asking user clicked start: same runner/channel authorization, same pipeline. Returns status 'unavailable' with a reason when the runner cannot take the job (relay that honestly).",Object.fromEntries([["channel",T.string().describe("Channel slug to host the job thread.")],["runner_key",T.string().describe("Runner (computer) to run the job on.")],["cwd",T.string().describe("Working directory on the runner.")],["work_description",T.string().min(1).describe("What the job should do - the initial instruction.")],["model",T.string().optional().describe("Model override (optional).")],["model_provider",T.string().optional().describe("Model provider override, e.g. 'wafer' (optional).")],["execution_mode",T.enum(["raw","local_vm"]).optional().describe("Execution placement override (optional).")],["project_task_id",T.string().optional().describe("Project task item to bind the job to (task_id from linzumi_get_project_tasks). The task flips todo -> active and links to the new job.")]]),async f=>await c(d.agentStartCodingJob(f))),e.registerTool("linzumi_interrupt_coding_job","Interrupt a coding job: mode 'steer' (default) discards its queued follow-ups so your next message lands first; mode 'stop' terminates the current turn.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the job thread.")],["thread_id",T.string().uuid().describe("The job thread UUID.")],["mode",T.enum(["steer","stop"]).optional().describe("Interrupt mode; defaults to 'steer'.")]]),async f=>await c(d.agentInterruptCodingJob(f))),e.registerTool("linzumi_send_coding_job_message","Send a message into a coding job thread as the asking user (the job processes it like any human follow-up).",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the job thread.")],["thread_id",T.string().uuid().describe("The job thread UUID.")],["body",T.string().min(1).describe("Message body to send.")]]),async f=>await c(d.agentSendCodingJobMessage(f))),e.registerTool("linzumi_read_coding_job_thread","Read a coding job's thread (asker-visible history) plus its workflow status metadata.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the job thread.")],["thread_id",T.string().uuid().describe("The job thread UUID.")],["limit",T.number().int().min(1).max(100).optional().describe("Maximum replies to return.")],["before_seq",T.number().int().positive().optional().describe("Return replies before this channel seq.")]]),async f=>await c(d.agentReadCodingJobThread(f))),e.registerTool("linzumi_resolve_job_approval","Resolve a coding job's pending approval request with the asking user's decision ('approve' or 'deny'). Only relays the asker's authority - never approve without their explicit instruction.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the job thread.")],["thread_id",T.string().uuid().describe("The job thread UUID.")],["source_seq",T.number().int().positive().describe("Channel seq of the message the approval request rides on.")],["request_id",T.string().describe("The approval request id.")],["decision",T.enum(["approve","deny"]).describe("The asker's decision.")]]),async f=>await c(d.agentResolveJobApproval(f))),e.registerTool("linzumi_archive_coding_job","Archive a coding job's thread (or any thread the asking user owns) so it leaves the active list; history is preserved. Do this when the asker says to archive a job or thread - never just promise it.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the thread.")],["thread_id",T.string().uuid().describe("The thread UUID to archive.")]]),async f=>await c(d.agentArchiveCodingJob(f))),e.registerTool("linzumi_unarchive_coding_job","Unarchive a previously archived coding job thread the asking user owns, returning it to the active list.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the thread.")],["thread_id",T.string().uuid().describe("The thread UUID to unarchive.")]]),async f=>await c(d.agentUnarchiveCodingJob(f))),e.registerTool("linzumi_set_thread_status","Set a thread's lifecycle status as the asking user: 'closed' marks it done, 'open' reopens it. Works on threads the asker owns.",Object.fromEntries([["channel",T.string().describe("Channel slug hosting the thread.")],["thread_id",T.string().uuid().describe("The thread UUID.")],["status",T.enum(["open","closed"]).describe("Replacement lifecycle status ('closed' = done).")]]),async f=>await c(d.agentSetThreadStatus(f))),e.registerTool("linzumi_create_channel","Create a new public channel in this workspace as the asking user. The slug is derived from the name.",Object.fromEntries([["name",T.string().min(1).describe("Channel name to create.")]]),async f=>await c(d.agentCreateChannel(f))),e.registerTool("linzumi_rename_channel","Rename a channel's display name as the asking user. The channel's URL slug stays stable.",Object.fromEntries([["channel",T.string().describe("Current channel slug to rename.")],["name",T.string().min(1).describe("New display name.")]]),async f=>await c(d.agentRenameChannel(f))),e.registerTool("linzumi_archive_channel","Archive a channel in this workspace as the asking user. History is preserved; the channel leaves the active sidebar.",Object.fromEntries([["channel",T.string().describe("Channel slug to archive.")]]),async f=>await c(d.agentArchiveChannel(f))),e.registerTool("linzumi_unarchive_channel","Unarchive a previously archived channel as the asking user.",Object.fromEntries([["channel",T.string().describe("Channel slug to unarchive.")]]),async f=>await c(d.agentUnarchiveChannel(f))),e.registerTool("linzumi_add_reaction","Add an emoji reaction to a channel message as the asking user. Accepts unicode emoji or a workspace :shortcode:.",Object.fromEntries([["channel",T.string().describe("Channel slug containing the message.")],["message_seq",T.number().int().positive().describe("Channel seq of the message to react to.")],["emoji",T.string().min(1).describe("Emoji to add (unicode or :shortcode:).")]]),async f=>await c(d.agentAddReaction(f))),e.registerTool("linzumi_remove_reaction","Remove the asking user's emoji reaction from a channel message.",Object.fromEntries([["channel",T.string().describe("Channel slug containing the message.")],["message_seq",T.number().int().positive().describe("Channel seq of the reacted message.")],["emoji",T.string().min(1).describe("Emoji to remove (unicode or :shortcode:).")]]),async f=>await c(d.agentRemoveReaction(f))),e.registerTool("linzumi_pin_message","Pin a channel message as the asking user. Thread replies re-point to their root message.",Object.fromEntries([["channel",T.string().describe("Channel slug containing the message.")],["message_seq",T.number().int().positive().describe("Channel seq of the message to pin.")]]),async f=>await c(d.agentPinMessage(f))),e.registerTool("linzumi_unpin_message","Remove a pin from a channel message as the asking user.",Object.fromEntries([["channel",T.string().describe("Channel slug containing the message.")],["message_seq",T.number().int().positive().describe("Channel seq of the pinned message.")]]),async f=>await c(d.agentUnpinMessage(f)))),l){case"All":e.registerTool("linzumi_get_message","Read one Linzumi message by scoped message_seq/message_id or a Linzumi message URL, with optional bounded before/after context.",Object.fromEntries([["workspace",Ut()],["channel",Pn()],["message_id",T.union([T.string(),T.number()]).optional().describe("Message seq inside the scoped channel.")],["message_seq",T.union([T.string(),T.number()]).optional().describe("Alias for message_id.")],["message_url",T.string().optional().describe("Full Linzumi message URL with #message-<seq>.")],["before",T.number().int().min(0).max(100).optional().describe("Number of visible messages before the target.")],["after",T.number().int().min(0).max(100).optional().describe("Number of visible messages after the target.")]]),async f=>await c(d.getMessage(f))),e.registerTool("linzumi_get_thread","Read one Linzumi thread by thread_id in the scoped channel, including the parent message and bounded replies.",Object.fromEntries([["workspace",Ut()],["channel",Pn()],["thread_id",T.string().uuid().describe("Linzumi thread UUID.")],["limit",T.number().int().min(1).max(100).optional().describe("Maximum replies to return.")],["before_seq",T.number().int().positive().optional().describe("Return replies before this channel seq.")]]),async f=>await c(d.getThread(f))),e.registerTool("linzumi_get_thread_transcript","Read a Linzumi thread's full transcript as canonical IR nodes (user/assistant messages, command executions, file changes, tool calls, statuses), cursor-paginated over the complete history. Use the returned cursor with has_more to walk older pages.",Object.fromEntries([["workspace",Ut()],["channel",Pn()],["thread_id",T.string().uuid().describe("Linzumi thread UUID.")],["limit",T.number().int().min(1).max(500).optional().describe("Maximum transcript nodes per page (default 200).")],["cursor",T.number().int().positive().optional().describe("Return nodes below this seq (the previous page reply cursor).")]]),async f=>await c(d.getThreadTranscript(f))),e.registerTool("linzumi_get_channel","Read scoped Linzumi channel metadata and bounded recent channel messages.",Object.fromEntries([["workspace",Ut()],["channel",Pn()],["limit",T.number().int().min(1).max(100).optional().describe("Maximum messages to return.")],["before_seq",T.number().int().positive().optional().describe("Return messages before this channel seq.")]]),async f=>await c(d.getChannel(f))),e.registerTool("linzumi_search_workspace","Search the Linzumi workspace with hybrid lexical+semantic retrieval, scoped to what the authorizing user can access. Returns scored content chunks with provenance (channel, thread, authored time) and a permalink to cite.",Object.fromEntries([["workspace",Ut()],["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",Ut()],["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",Ut()]]),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",Ut()],["channel",Pn()],["thread_id",f()]]),async p=>await c(d.getCodingJobMetadata(mi(p,o)))),e.registerTool("linzumi_rename_coding_job","Update the current coding job thread title and workflow-facing title. Use this when the job scope changes materially so the Linzumi thread list and metadata overview stay accurate.",Object.fromEntries([["workspace",Ut()],["channel",Pn()],["thread_id",f()],["title",T.string().min(1).max(100).describe("Concise user-visible title for this coding job.")]]),async p=>await c(d.renameCodingJob(mi(p,o)))),e.registerTool("linzumi_upsert_coding_job_plan","Set or update the current coding job goal. Use this at job start and whenever the goal changes materially.",Object.fromEntries([["workspace",Ut()],["channel",Pn()],["thread_id",f()],["goal",T.string().min(1).max(1e4).describe("Concrete user-visible goal for this coding job.")]]),async p=>await c(d.upsertCodingJobPlan(mi(p,o)))),e.registerTool("linzumi_replace_coding_job_plan_steps","Replace the ordered coding job plan steps. Use this for the initial plan and for substantial rewrites when the old plan no longer fits the work.",Object.fromEntries([["workspace",Ut()],["channel",Pn()],["thread_id",f()],["goal",T.string().min(1).max(1e4).optional().describe("Required when no plan exists yet; updates the current coding job goal.")],["steps",T.array(T.object(Object.fromEntries([["title",T.string().min(1).max(255)],["description",T.string().min(1).max(1e4)],["status",T.enum(["pending","active","completed","blocked","canceled"])],["status_note",T.string().min(1).max(4e3).optional()],["completed_debrief",T.string().min(1).max(2e4).optional()]]))).min(1).max(50).describe("Ordered user-visible plan steps. Completed steps must include completed_debrief.")]]),async p=>await c(d.replaceCodingJobPlanSteps(mi(p,o)))),e.registerTool("linzumi_update_coding_job_plan_step","Update one coding job plan step status or note. Read metadata first and pass the current step lock_version.",Object.fromEntries([["workspace",Ut()],["channel",Pn()],["thread_id",f()],["step_id",T.string().uuid().describe("Step id returned by linzumi_get_coding_job_metadata.")],["lock_version",T.number().int().positive().describe("Current step lock_version from metadata.")],["status",T.enum(["pending","active","completed","blocked","canceled"])],["status_note",T.string().min(1).max(4e3).optional()],["completed_debrief",T.string().min(1).max(2e4).optional().describe("Required when marking a step completed.")]]),async p=>await c(d.updateCodingJobPlanStep(mi(p,o)))),e.registerTool("linzumi_link_coding_job_pull_request","Link the active coding job to its primary GitHub pull request so PR comments, files, commits, checks, deployments, and reviews can flow into the metadata view.",Object.fromEntries([["workspace",Ut()],["channel",Pn()],["thread_id",f()],["github_repo_owner",T.string().min(1).max(255)],["github_repo_name",T.string().min(1).max(255)],["github_pr_number",T.number().int().positive()],["github_pr_url",T.string().url()],["title",T.string().min(1).max(255)],["body",T.string().min(1).max(1e5).optional()],["head_branch",T.string().min(1).max(255)],["head_sha",T.string().min(7).max(64)],["base_branch",T.string().min(1).max(255)],["base_sha",T.string().min(7).max(64)],["state",T.enum(["draft","open","closed","merged"]).optional()],["is_draft",T.boolean().optional()],["review_status",T.enum(["unknown","review_required","approved","changes_requested"]).optional()],["source_remote_url",T.string().min(1).max(1e3).describe("Git remote URL for the local job worktree; required when this job has no repo workspace yet.")],["runtime_worktree_root",T.string().min(1).max(1e3).describe("Absolute local worktree path for the coding job; required when this job has no repo workspace yet.")],["dirty_status",T.enum(["unknown","clean","dirty"]).optional()],["dirty_summary",T.string().min(1).max(2e3).optional()]]),async p=>await c(d.linkCodingJobPullRequest(mi(p,o)))),e.registerTool("linzumi_upload_files",["Upload local files to Linzumi and attach them to a new, exact, or latest assistant message. Use silently; do not mention this tool in the visible reply.","The JSON result includes message.attachments[].url as an absolute URL. Use those returned URLs when writing rich media directives such as ::audio, ::video, ::image, or Markdown images. Do not guess attachment URLs before upload.","For a message that should both attach files and show inline rich media, use a two-step flow: first upload/attach the files to create or target the message, then edit the same target message with body text that references the returned absolute URLs. When the result has target_seq, use target.kind=message_seq and message_seq=target_seq for that follow-up edit; result.message is the edit event that carries the new attachments, and target_message is the original target."].join(" "),Object.fromEntries([["target",T.object(Object.fromEntries([["kind",T.enum(["new_message","message_seq","latest_assistant_message"]).describe("new_message creates a message; message_seq edits an exact message; latest_assistant_message edits the latest assistant message in the scoped thread/channel.")],["message_seq",T.union([T.string(),T.number()]).optional().describe("Required when kind is message_seq.")],["thread_id",T.string().optional().describe("Thread UUID. Defaults to the active Linzumi thread when the MCP server was launched with one.")]])).describe("Attachment target. Do not guess; use new_message when there is no previous assistant message. To reference uploaded files in the message body, upload first, then edit message_seq/latest_assistant_message with the returned absolute attachment URLs. If the upload result includes target_seq, use message_seq=target_seq for that follow-up edit.")],["files",T.array(T.string().min(1)).min(1).max(16).describe("Local file paths to upload. Paths must be non-hidden supported file types inside the approved workspace or Downloads.")],["body",T.string().min(1).max(2e4).optional().describe("Required for new_message. Optional replacement body for message_seq/latest_assistant_message; when omitted, the existing message body is preserved. Rich media directives in body must use Linzumi attachment download URLs returned by this tool.")],["workspace",Ut()],["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(Xk(p,"target","linzumi_upload_files"),o),h;try{h=await jk({client:d,cwd:s,serviceUrl:a,target:m,files:LN(p.files),workspace:Rn(p.workspace),channel:Rn(p.channel),body:Rn(p.body)})}catch(_){return Ik(ee(_))}return vn(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",Ut()],["channel",Pn()],["target",T.object(Object.fromEntries([["message_seq",T.union([T.string(),T.number()]).describe("Exact message seq to edit. After linzumi_upload_files returns target_seq, pass that value here.")],["thread_id",T.string().optional().describe("Thread UUID when editing a thread message. Use the upload result target_message.thread_id when present.")]])).describe("Exact message target for the body edit.")],["body",T.string().min(1).max(2e4).describe("Replacement Markdown body. Rich media src/poster values must be Linzumi attachment download URLs returned by linzumi_upload_files.")]]),async p=>{let m=oo(p);return m.target=Ch(Xk(p,"target","linzumi_edit_message"),o),vn(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",Ut()]]),async f=>await c(d.listProjects(f))),e.registerTool("linzumi_get_project_tasks",`Read a project's full task graph: task GROUPS (kind "group", organizational containers, exactly one level deep) and ISSUES (kind "issue", the executable work items), each with status (todo/active/blocked/review/done/canceled), DERIVED work_state readiness (ready = todo with every dependency satisfied; blocked = todo with unsatisfied dependencies; running/stalled = active with/without a connected job), parent group, assignee, lock_version, and dependency edges (depends_on_task_ids / unblocks_task_ids). Always read this before reorganizing. Inside a project-bound coding job the project is inferred automatically; otherwise pass project_id from linzumi_list_projects.`,Object.fromEntries([["project_id",T.string().optional().describe("Project id from linzumi_list_projects. Omit inside a coding job started from a project to use that project.")]]),async f=>await c(d.getProjectTasks(mi(f,o)))),e.registerTool("linzumi_create_project_task",'Create a task group (kind "group") or issue (kind "issue", the default) in a project. Groups organize issues and are exactly one level deep: a parent_id must name a GROUP, and groups themselves can never have a parent. New tasks default to status "todo" and append to the end unless position is given. Inside a project-bound coding job the project is inferred; otherwise pass project_id.',Object.fromEntries([["project_id",T.string().optional().describe("Project id from linzumi_list_projects. Omit inside a coding job started from a project to use that project.")],["title",T.string().min(1).describe("Task title.")],["kind",T.enum(["issue","group"]).optional().describe('What to create: "issue" (executable work item, default) or "group" (organizational container).')],["description",T.string().optional().describe("Detailed description of the work - written so an engineer (or coding agent) could execute the task from it.")],["status",T.enum(["todo","active","blocked","review","done","canceled"]).optional().describe('Initial status. Defaults to "todo".')],["parent_id",T.string().optional().describe("task_id of the GROUP to place an issue in. Only issues can have a parent.")],["assignee",T.string().optional().describe("Username of a workspace member to assign.")],["position",T.number().int().min(0).optional().describe("Sort position. Defaults to appending at the end.")]]),async f=>await c(d.createProjectTask(mi(f,o)))),e.registerTool("linzumi_update_project_task",'Update a task group or issue: retitle, edit description/status_note, transition status (todo/active/blocked/review/done/canceled), reassign, reorder (position), or reorganize (parent_id moves an issue into a group; clear_parent moves it to top level). Only the fields you pass change; description and status_note accept null to clear. Prefer updating existing tasks over delete-and-recreate. Pass the lock_version from your last read to fail loudly ("stale") instead of overwriting a concurrent edit.',Object.fromEntries([["task_id",T.string().describe("task_id of the group or issue to update.")],["title",T.string().min(1).optional().describe("New title.")],["description",T.string().nullable().optional().describe("New description. Pass null to clear it.")],["status",T.enum(["todo","active","blocked","review","done","canceled"]).optional().describe('New status. "done"/"canceled" satisfy dependent tasks; "blocked" is a manual hold.')],["status_note",T.string().nullable().optional().describe("Short human-readable note about the current status. Pass null to clear it.")],["position",T.number().int().min(0).optional().describe("New sort position among siblings.")],["parent_id",T.string().optional().describe("task_id of the GROUP to move this issue into. Do not combine with clear_parent.")],["clear_parent",T.boolean().optional().describe("true moves the issue to the top level (no group). Do not combine with parent_id.")],["assignee",T.string().optional().describe("Username of a workspace member to assign. Do not combine with clear_assignee.")],["clear_assignee",T.boolean().optional().describe("true removes the assignee. Do not combine with assignee.")],["lock_version",T.number().int().positive().optional().describe("The task's lock_version from your last read, for compare-and-swap safety.")]]),async f=>await c(d.updateProjectTask(f))),e.registerTool("linzumi_delete_project_task",`Permanently delete a task group or issue. Dependency edges on the task are removed with it (dependents may become ready). Deletion is normally the USER's call - prefer status "canceled" or an update unless you are certain the entry is obsolete.`,Object.fromEntries([["task_id",T.string().describe("task_id of the group or issue to delete.")]]),async f=>await c(d.deleteProjectTask(f))),e.registerTool("linzumi_add_project_task_dependency",'Add the dependency edge "task_id is blocked by depends_on_task_id" between two ISSUES in the same project (groups cannot have dependencies). The dependent stays blocked until the prerequisite reaches done or canceled. The graph must stay acyclic: an edge that would create a cycle is refused with reason "would_create_cycle" and the offending cycle_path so you can restructure. Duplicate and self edges are rejected.',Object.fromEntries([["task_id",T.string().describe("task_id of the DEPENDENT issue (the one that must wait).")],["depends_on_task_id",T.string().describe("task_id of the PREREQUISITE issue (the one that must finish first).")]]),async f=>await c(d.addProjectTaskDependency(f))),e.registerTool("linzumi_remove_project_task_dependency",'Remove the dependency edge "task_id is blocked by depends_on_task_id". The dependent issue may become ready if that was its last unsatisfied dependency.',Object.fromEntries([["task_id",T.string().describe("task_id of the DEPENDENT issue.")],["depends_on_task_id",T.string().describe("task_id of the PREREQUISITE issue the edge points at.")]]),async f=>await c(d.removeProjectTaskDependency(f))),e.registerTool("linzumi_get_call_transcript","Read the full transcript of a completed Linzumi notetaker call: call metadata (title, platform, started/ended/transcribed times), participants, and every spoken segment in order with speaker names and millisecond offsets. Pass the call_id embedded in the request (or copied from the call card). Errors: call_not_found (missing or not visible to you), call_transcript_not_ready (call still connecting, in progress, or transcribing - retry later).",Object.fromEntries([["call_id",T.string().describe("The call id from the call card or the launching message (a CallRecording id - the opaque GraphQL id and the bare uuid both work).")]]),async f=>await c(d.getCallTranscript(f))),n||e.registerTool("linzumi_start_coding_job","Start a coding job as the invoking user (same authorization and pipeline as clicking start). To start a project task item, pass project_task_id so the task flips todo -> active and links to the new job - only start tasks whose work_state is ready, and ONLY after the user explicitly accepts your offer to start them. Omit channel, runner_key, and cwd to reuse this job's own channel, computer, and folder. Returns status 'unavailable' with a reason when the runner cannot take the job (relay that honestly).",Object.fromEntries([["work_description",T.string().min(1).describe("What the job should do - the initial instruction. For a task item, write it from the task title and description.")],["project_task_id",T.string().optional().describe("Project task item to bind the job to (task_id from linzumi_get_project_tasks). The task flips todo -> active and links to the new job.")],["channel",T.string().optional().describe("Channel slug to host the job thread. Omit to use this job's own channel.")],["runner_key",T.string().optional().describe("Runner (computer) to run the job on. Omit to use this job's own computer.")],["cwd",T.string().optional().describe("Working directory on the runner. Omit to use this job's own folder.")],["model",T.string().optional().describe("Model override (optional).")],["model_provider",T.string().optional().describe("Model provider override, e.g. 'wafer' (optional).")],["agent_provider",T.string().optional().describe("Agent provider override, e.g. 'codex' (optional).")],["reasoning_effort",T.enum(["default","low","medium","high","xhigh","ultra"]).optional().describe("Reasoning effort override (optional).")],["approval_policy",T.enum(["default","on-request","on-failure","never"]).optional().describe("Approval policy override (optional).")],["sandbox",T.enum(["default","workspace-write","read-only","danger-full-access"]).optional().describe("Sandbox override (optional).")],["fast",T.boolean().optional().describe("Fast-mode override (optional).")],["allow_port_forwarding_by_default",T.boolean().optional().describe("Default port-forwarding override (optional).")],["execution_mode",T.enum(["raw","local_vm"]).optional().describe("Execution placement override (optional).")],["egress_mode",T.enum(["open","hardened"]).optional().describe("Local-VM egress override (optional).")]]),async f=>await c(d.agentStartCodingJob(mi(f,o))));break;case"Coding":case"OnboardingDiscovery":break}switch(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",Yk().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",Ut()]]),async f=>{let p=Rn(f.name),m=Rn(f.file);return vn(await zk({client:d,cwd:s,serviceUrl:a,name:p!==void 0?p:"",file:m!==void 0?m:"",workspace:Rn(f.workspace)}))}),e.registerTool("linzumi_rename_custom_emoji","Rename an existing workspace custom emoji. The new name may include surrounding colons; Linzumi stores the normalized shortcode without colons.",Object.fromEntries([["emoji_id",T.union([T.string(),T.number().int().positive()]).describe("Workspace custom emoji id returned by linzumi_upload_custom_emoji or workspace emoji listings.")],["name",Yk().describe("New shortcode name, with or without surrounding colons.")],["workspace",Ut()]]),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=Jk;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",Ut()],["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",Ut()],["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",Ut()],["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",Ut()],["channel",T.string().optional().describe("Source channel slug used to verify owner visibility.")],["body",T.string().min(1).max(2e4).describe("Plain-text message body to DM.")]]),async f=>{let p=Rn(f.owner_username),m=p!==void 0?p:i;if(m===void 0)return _r("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",Ut()],["channel",Pn()],["body",T.string().min(1).max(2e4).describe("Markdown message body to post. Rich media src/poster values must be Linzumi attachment download URLs, not third-party URLs, /relative paths, or local filesystem paths.")]]),async f=>await c(d.sendChannelMessage(f))),e.registerTool("linzumi_send_thread_reply","Post a Markdown reply into some OTHER existing Linzumi thread as the authenticated local-runner user. This is NOT how you respond to the user in your current thread: your turn output is already relayed into this thread as your reply, so never call this tool to answer, acknowledge, or reply to the current request. Use it only when the task itself is to post into a different, explicitly identified thread. Requires thread.write. Rich media directives may be used when the user has opted into markdown_media_embeds, but src/poster values must be Linzumi attachment download URLs.",Object.fromEntries([["workspace",Ut()],["channel",Pn()],["thread_id",T.string().uuid().describe("Existing Linzumi thread UUID.")],["body",T.string().min(1).max(2e4).describe("Markdown reply body to post. Rich media src/poster values must be Linzumi attachment download URLs, not third-party URLs, /relative paths, or local filesystem paths.")]]),async f=>await c(d.sendThreadReply(f))),e.registerTool("linzumi_send_dm","Send a plain-text DM as the authenticated local-runner user to a visible user in the scoped workspace/channel. Requires dm.write.",Object.fromEntries([["workspace",Ut()],["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",Ut()],["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 bd(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 rx(e){return"["+e.map(bd).join(", ")+"]"}function HN(e){return"{ "+Object.entries(e).map(r=>r[0]+" = "+bd(r[1])).join(", ")+" }"}function nx(e){let t=["-c","mcp_servers."+e.name+".command="+bd(e.command),"-c","mcp_servers."+e.name+".args="+rx(e.args)];return Object.entries(e.env).forEach(r=>{t.push("-c"),t.push("mcp_servers."+e.name+".env."+r[0]+"="+bd(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 ix(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 ox(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 ax(e){let t=Object.entries(e.env).length===0?"":"env = "+HN(e.env)+`
|
|
286
286
|
`;return"[mcp_servers."+e.name+`]
|
|
287
|
-
command = `+
|
|
288
|
-
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(`
|
|
287
|
+
command = `+bd(e.command)+`
|
|
288
|
+
args = `+rx(e.args)+`
|
|
289
|
+
`+t}function JN(e){return typeof e==="undefined"?!0:e===null}function Uh(e){let t=on(e.serviceUrl);if(t.TAG!=="Ok")return{TAG:"Error",_0:t._0};let r=t._0,n=e.fetchImpl,i=n!==void 0?n: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:_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 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 _r("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 _r("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 In(e){return e&&Object.assign(Zc,e),Zc}var ht={};$p(ht,{BIGINT_FORMAT_RANGES:()=>lx,Class:()=>Wh,NUMBER_FORMAT_RANGES:()=>Xh,aborted:()=>ja,allowsEval:()=>Kh,assert:()=>nG,assertEqual:()=>QN,assertIs:()=>tG,assertNever:()=>rG,assertNotEqual:()=>eG,assignProp:()=>Bh,cached:()=>wd,captureStackTrace:()=>Vc,cleanEnum:()=>_G,cleanRegex:()=>xd,clone:()=>$n,createTransparentProxy:()=>dG,defineLazy:()=>Zt,esc:()=>Ma,escapeRegex:()=>Po,extend:()=>fG,finalizeIssue:()=>pi,floatSafeRemainder:()=>Hh,getElementAtPath:()=>iG,getEnumValues:()=>Sd,getLengthableOrigin:()=>Td,getParsedType:()=>lG,getSizableOrigin:()=>dx,isObject:()=>Vs,isPlainObject:()=>Hs,issue:()=>Qh,joinValues:()=>Wc,jsonStringifyReplacer:()=>Vh,merge:()=>mG,normalizeParams:()=>Me,nullish:()=>kd,numKeys:()=>sG,omit:()=>cG,optionalKeys:()=>Yh,partial:()=>pG,pick:()=>uG,prefixIssues:()=>ji,primitiveTypes:()=>sx,promiseAllObject:()=>oG,propertyKeyTypes:()=>Jh,randomString:()=>aG,required:()=>hG,stringifyPrimitive:()=>Hc,unwrapMessage:()=>vd});function QN(e){return e}function eG(e){return e}function tG(e){}function rG(e){throw new Error}function nG(e){}function Sd(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 wd(e){return{get value(){{let r=e();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function kd(e){return e==null}function xd(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 Zt(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=wd(()=>{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"]),sx=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Po(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function $n(e,t,r){let n=new e._zod.constr(t??e._zod.def);return(!t||r?.parent)&&(n._zod.parent=e),n}function 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]},lx={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 $n(e,{...e._zod.def,shape:r,checks:[]})}function cG(e,t){let r={...e._zod.def.shape},n=e._zod.def;for(let i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&delete r[i]}return $n(e,{...e._zod.def,shape:r,checks:[]})}function 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 $n(e,r)}function mG(e,t){return $n(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 $n(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 $n(t,{...t._zod.def,shape:i,checks:[]})}function ja(e,t=0){for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function ji(e,t){return t.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function vd(e){return typeof e=="string"?e:e?.message}function pi(e,t,r){let n={...e,path:e.path??[]};if(!e.message){let i=vd(e.inst?._zod.def?.error?.(e))??vd(t?.error?.(e))??vd(r.customError?.(e))??vd(r.localeError?.(e))??"Invalid input";n.message=i}return delete n.inst,delete n.continue,t?.reportInput||delete n.input,n}function dx(e){return e instanceof Set?"set":e instanceof Map?"map":e instanceof File?"file":"unknown"}function Td(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 ux=(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",ux),Ad=z("$ZodError",ux,{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,In())));throw Vc(s,i?.callee),s}return a.value},n_=r_(Ad),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,In())));throw Vc(s,i?.callee),s}return a.value},o_=i_(Ad),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,In())))}:{success:!0,data:o.value}},za=a_(Ad),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,In())))}:{success:!0,data:o.value}},Na=s_(Ad);var cx=/^[cC][^\s-]{8,}$/,fx=/^[0-9a-z]+$/,mx=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,px=/^[0-9a-vA-V]{20}$/,hx=/^[A-Za-z0-9]{27}$/,_x=/^[a-zA-Z0-9_-]{21}$/,gx=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var yx=/^([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 bx=/^(?!\.)(?!.*\.\.)([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 vx(){return new RegExp(yG,"u")}var Sx=/^(?:(?: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])$/,wx=/^(([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})$/,kx=/^((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])$/,xx=/^(([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])$/,Tx=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,d_=/^[A-Za-z0-9_-]*$/,Ax=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Ox=/^\+(?:[0-9]){6,14}[0-9]$/,Cx="(?:(?:\\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])))",Ex=new RegExp(`^${Cx}$`);function Px(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 Rx(e){return new RegExp(`^${Px(e)}$`)}function Ix(e){let t=Px({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(`^${Cx}T(?:${n})$`)}var $x=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var Mx=/^\d+$/,jx=/^-?\d+(?:\.\d+)?/i,zx=/true|false/i,Nx=/null/i;var Gx=/^[^A-Z]*$/,Fx=/^[^a-z]*$/;var qr=z("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),Dx={number:"number",bigint:"bigint",object:"date"},u_=z("$ZodCheckLessThan",(e,t)=>{qr.init(e,t);let r=Dx[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)=>{qr.init(e,t);let r=Dx[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})}}),qx=z("$ZodCheckMultipleOf",(e,t)=>{qr.init(e,t),e._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=r=>{if(typeof r.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%t.value===BigInt(0):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})}}),Lx=z("$ZodCheckNumberFormat",(e,t)=>{qr.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[i,o]=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=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 Ux=z("$ZodCheckMaxLength",(e,t)=>{var r;qr.init(e,t),(r=e._zod.def).when??(r.when=n=>{let i=n.value;return!kd(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=Td(i);n.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Zx=z("$ZodCheckMinLength",(e,t)=>{var r;qr.init(e,t),(r=e._zod.def).when??(r.when=n=>{let i=n.value;return!kd(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=Td(i);n.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Wx=z("$ZodCheckLengthEquals",(e,t)=>{var r;qr.init(e,t),(r=e._zod.def).when??(r.when=n=>{let i=n.value;return!kd(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=Td(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})}}),Od=z("$ZodCheckStringFormat",(e,t)=>{var r,n;qr.init(e,t),e._zod.onattach.push(i=>{let o=i._zod.bag;o.format=t.format,t.pattern&&(o.patterns??(o.patterns=new Set),o.patterns.add(t.pattern))}),t.pattern?(r=e._zod).check??(r.check=i=>{t.pattern.lastIndex=0,!t.pattern.test(i.value)&&i.issues.push({origin:"string",code:"invalid_format",format:t.format,input:i.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(n=e._zod).check??(n.check=()=>{})}),Vx=z("$ZodCheckRegex",(e,t)=>{Od.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})}}),Hx=z("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Gx),Od.init(e,t)}),Bx=z("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Fx),Od.init(e,t)}),Kx=z("$ZodCheckIncludes",(e,t)=>{qr.init(e,t);let r=Po(t.includes),n=new RegExp(typeof t.position=="number"?`^.{${t.position}}${r}`:r);t.pattern=n,e._zod.onattach.push(i=>{let o=i._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=i=>{i.value.includes(t.includes,t.position)||i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:i.value,inst:e,continue:!t.abort})}}),Jx=z("$ZodCheckStartsWith",(e,t)=>{qr.init(e,t);let r=new RegExp(`^${Po(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Yx=z("$ZodCheckEndsWith",(e,t)=>{qr.init(e,t);let r=new RegExp(`.*${Po(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});var Xx=z("$ZodCheckOverwrite",(e,t)=>{qr.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
|
|
291
|
+
`))}};var eT={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=eT;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}}),Cd=z("$ZodString",(e,t)=>{Mt.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??$x(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}}),Wt=z("$ZodStringFormat",(e,t)=>{Od.init(e,t),Cd.init(e,t)}),m_=z("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=yx),Wt.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_());Wt.init(e,t)}),h_=z("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=bx),Wt.init(e,t)}),__=z("$ZodURL",(e,t)=>{Wt.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:Ax.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=vx()),Wt.init(e,t)}),y_=z("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=_x),Wt.init(e,t)}),b_=z("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=cx),Wt.init(e,t)}),v_=z("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=fx),Wt.init(e,t)}),S_=z("$ZodULID",(e,t)=>{t.pattern??(t.pattern=mx),Wt.init(e,t)}),w_=z("$ZodXID",(e,t)=>{t.pattern??(t.pattern=px),Wt.init(e,t)}),k_=z("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=hx),Wt.init(e,t)}),uT=z("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Ix(t)),Wt.init(e,t)}),cT=z("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Ex),Wt.init(e,t)}),fT=z("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Rx(t)),Wt.init(e,t)}),mT=z("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=gx),Wt.init(e,t)}),x_=z("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Sx),Wt.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=wx),Wt.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=kx),Wt.init(e,t)}),O_=z("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=xx),Wt.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 pT(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=Tx),Wt.init(e,t),e._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),e._zod.check=r=>{pT(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 pT(r)}var E_=z("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=d_),Wt.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=Ox),Wt.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)=>{Wt.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??jx,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)=>{Lx.init(e,t),Xc.init(e,t)}),$_=z("$ZodBoolean",(e,t)=>{Mt.init(e,t),e._zod.pattern=zx,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=Nx,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 tT(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=>tT(d,r,a))):tT(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 rT(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=wd(()=>{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)}});Zt(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) {
|
|
@@ -311,34 +311,34 @@ args = `+tx(e.args)+`
|
|
|
311
311
|
if (${y}.issues.length) payload.issues = payload.issues.concat(${y}.issues.map(iss => ({
|
|
312
312
|
...iss,
|
|
313
313
|
path: iss.path ? [${Ma(b)}, ...iss.path] : [${Ma(b)}]
|
|
314
|
-
})));`),f.write(`newResult[${Ma(b)}] = ${y}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let g=f.compile();return(b,y)=>g(c,b,y)},i,o=Vs,a=!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>
|
|
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?rT(Z,c,v,p):Yc(Z,c,v))):R?rT(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 nT(e,t,r,n){for(let i of e)if(i.issues.length===0)return t.value=i.value,t;return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(i=>i.issues.map(o=>pi(o,n,In())))}),t}var ef=z("$ZodUnion",(e,t)=>{Mt.init(e,t),Zt(e._zod,"optin",()=>t.options.some(r=>r._zod.optin==="optional")?"optional":void 0),Zt(e._zod,"optout",()=>t.options.some(r=>r._zod.optout==="optional")?"optional":void 0),Zt(e._zod,"values",()=>{if(t.options.every(r=>r._zod.values))return new Set(t.options.flatMap(r=>Array.from(r._zod.values)))}),Zt(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=>xd(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=>nT(a,r,e,n)):nT(o,r,e,n)}}),G_=z("$ZodDiscriminatedUnion",(e,t)=>{ef.init(e,t);let r=e._zod.parse;Zt(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=wd(()=>{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])=>iT(r,l,d)):iT(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 iT(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,In())),input:a,path:[a],inst:e}),r.value[s.value]=s.value;continue}let l=t.valueType._zod.run({value:i[a],issues:[]},n);l instanceof Promise?o.push(l.then(d=>{d.issues.length&&r.issues.push(...ji(a,d.issues)),r.value[s.value]=d.value})):(l.issues.length&&r.issues.push(...ji(a,l.issues)),r.value[s.value]=l.value)}}return o.length?Promise.all(o).then(()=>r):r}});var q_=z("$ZodEnum",(e,t)=>{Mt.init(e,t);let r=Sd(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",Zt(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Zt(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${xd(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),Zt(e._zod,"optin",()=>t.innerType._zod.optin),Zt(e._zod,"optout",()=>t.innerType._zod.optout),Zt(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${xd(r.source)}|null)$`):void 0}),Zt(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",Zt(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=>oT(o,t)):oT(i,t)}});function oT(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",Zt(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),Zt(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=>aT(o,e)):aT(i,e)}});function aT(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",Zt(e._zod,"optout",()=>t.innerType._zod.optout),Zt(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{let i=t.innerType._zod.run(r,n);return i instanceof Promise?i.then(o=>(r.value=o.value,o.issues.length&&(r.value=t.catchValue({...r,error:{issues:o.issues.map(a=>pi(a,n,In()))},input:r.value}),r.issues=[]),r)):(r.value=i.value,i.issues.length&&(r.value=t.catchValue({...r,error:{issues:i.issues.map(o=>pi(o,n,In()))},input:r.value}),r.issues=[]),r)}});var J_=z("$ZodPipe",(e,t)=>{Mt.init(e,t),Zt(e._zod,"values",()=>t.in._zod.values),Zt(e._zod,"optin",()=>t.in._zod.optin),Zt(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=>sT(o,t,n)):sT(i,t,n)}});function sT(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),Zt(e._zod,"propValues",()=>t.innerType._zod.propValues),Zt(e._zod,"values",()=>t.innerType._zod.values),Zt(e._zod,"optin",()=>t.innerType._zod.optin),Zt(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(lT):lT(i)}});function lT(e){return e.value=Object.freeze(e.value),e}var X_=z("$ZodCustom",(e,t)=>{qr.init(e,t),Mt.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=r=>{let n=r.value,i=t.fn(n);if(i instanceof Promise)return i.then(o=>dT(o,r,n,e));dT(i,r,n,e)}});function dT(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 hT(){return{localeError:wG()}}var Ed=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 _T(){return new Ed}var Ro=_T();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 gT(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Me(t)})}function yT(e,t){return new e({type:"string",format:"date",check:"string_format",...Me(t)})}function bT(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...Me(t)})}function vT(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 Pd(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 Rd(e,t){return new c_({check:"greater_than",...Me(t),value:e,inclusive:!0})}function of(e,t){return new qx({check:"multiple_of",...Me(t),value:e})}function af(e,t){return new Ux({check:"max_length",...Me(t),maximum:e})}function Bs(e,t){return new Zx({check:"min_length",...Me(t),minimum:e})}function sf(e,t){return new Wx({check:"length_equals",...Me(t),length:e})}function Og(e,t){return new Vx({check:"string_format",format:"regex",...Me(t),pattern:e})}function Cg(e){return new Hx({check:"string_format",format:"lowercase",...Me(e)})}function Eg(e){return new Bx({check:"string_format",format:"uppercase",...Me(e)})}function Pg(e,t){return new Kx({check:"string_format",format:"includes",...Me(t),includes:e})}function Rg(e,t){return new Jx({check:"string_format",format:"starts_with",...Me(t),prefix:e})}function Ig(e,t){return new Yx({check:"string_format",format:"ends_with",...Me(t),suffix:e})}function Ga(e){return new Xx({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 ST(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=Sd(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"&&Ir(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 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
|
|
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 Ed){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 Ir(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 Ir(i.element,r);case"object":{for(let o in i.shape)if(Ir(i.shape[o],r))return!0;return!1}case"union":{for(let o of i.options)if(Ir(o,r))return!0;return!1}case"intersection":return Ir(i.left,r)||Ir(i.right,r);case"tuple":{for(let o of i.items)if(Ir(o,r))return!0;return!!(i.rest&&Ir(i.rest,r))}case"record":return Ir(i.keyType,r)||Ir(i.valueType,r);case"map":return Ir(i.keyType,r)||Ir(i.valueType,r);case"set":return Ir(i.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Ir(i.innerType,r);case"lazy":return Ir(i.getter(),r);case"default":return Ir(i.innerType,r);case"prefault":return Ir(i.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Ir(i.in,r)||Ir(i.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${i.type}`)}var Id={};$p(Id,{ZodISODate:()=>xT,ZodISODateTime:()=>kT,ZodISODuration:()=>AT,ZodISOTime:()=>TT,date:()=>qg,datetime:()=>Dg,duration:()=>Ug,time:()=>Lg});var kT=z("ZodISODateTime",(e,t)=>{uT.init(e,t),or.init(e,t)});function Dg(e){return gT(kT,e)}var xT=z("ZodISODate",(e,t)=>{cT.init(e,t),or.init(e,t)});function qg(e){return yT(xT,e)}var TT=z("ZodISOTime",(e,t)=>{fT.init(e,t),or.init(e,t)});function Lg(e){return bT(TT,e)}var AT=z("ZodISODuration",(e,t)=>{mT.init(e,t),or.init(e,t)});function Ug(e){return vT(AT,e)}var OT=(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}}})},b7=z("ZodError",OT),$d=z("ZodError",OT,{Parent:Error});var CT=r_($d),ET=i_($d),PT=a_($d),RT=s_($d);var hr=z("ZodType",(e,t)=>(Mt.init(e,t),e.def=t,Object.defineProperty(e,"_def",{value:t}),e.check=(...r)=>e.clone({...t,checks:[...t.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),e.clone=(r,n)=>$n(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e)),e.parse=(r,n)=>CT(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>PT(e,r,n),e.parseAsync=async(r,n)=>ET(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>RT(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=()=>sr(e),e.nullable=()=>MT(e),e.nullish=()=>sr(MT(e)),e.nonoptional=r=>ZF(e,r),e.array=()=>gt(e),e.or=r=>tr([e,r]),e.and=r=>uf(e,r),e.transform=r=>Wg(e,DT(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)),jT=z("_ZodString",(e,t)=>{Cd.init(e,t),hr.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)=>{Cd.init(e,t),jT.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(IT,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(IT,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 or=z("ZodStringFormat",(e,t)=>{Wt.init(e,t),jT.init(e,t)}),uF=z("ZodEmail",(e,t)=>{h_.init(e,t),or.init(e,t)});var IT=z("ZodGUID",(e,t)=>{m_.init(e,t),or.init(e,t)});var df=z("ZodUUID",(e,t)=>{p_.init(e,t),or.init(e,t)});var cF=z("ZodURL",(e,t)=>{__.init(e,t),or.init(e,t)});var fF=z("ZodEmoji",(e,t)=>{g_.init(e,t),or.init(e,t)});var mF=z("ZodNanoID",(e,t)=>{y_.init(e,t),or.init(e,t)});var pF=z("ZodCUID",(e,t)=>{b_.init(e,t),or.init(e,t)});var hF=z("ZodCUID2",(e,t)=>{v_.init(e,t),or.init(e,t)});var _F=z("ZodULID",(e,t)=>{S_.init(e,t),or.init(e,t)});var gF=z("ZodXID",(e,t)=>{w_.init(e,t),or.init(e,t)});var yF=z("ZodKSUID",(e,t)=>{k_.init(e,t),or.init(e,t)});var bF=z("ZodIPv4",(e,t)=>{x_.init(e,t),or.init(e,t)});var vF=z("ZodIPv6",(e,t)=>{T_.init(e,t),or.init(e,t)});var SF=z("ZodCIDRv4",(e,t)=>{A_.init(e,t),or.init(e,t)});var wF=z("ZodCIDRv6",(e,t)=>{O_.init(e,t),or.init(e,t)});var kF=z("ZodBase64",(e,t)=>{C_.init(e,t),or.init(e,t)});var xF=z("ZodBase64URL",(e,t)=>{E_.init(e,t),or.init(e,t)});var TF=z("ZodE164",(e,t)=>{P_.init(e,t),or.init(e,t)});var AF=z("ZodJWT",(e,t)=>{R_.init(e,t),or.init(e,t)});var zT=z("ZodNumber",(e,t)=>{Xc.init(e,t),hr.init(e,t),e.gt=(n,i)=>e.check(nf(n,i)),e.gte=(n,i)=>e.check(Rd(n,i)),e.min=(n,i)=>e.check(Rd(n,i)),e.lt=(n,i)=>e.check(rf(n,i)),e.lte=(n,i)=>e.check(Pd(n,i)),e.max=(n,i)=>e.check(Pd(n,i)),e.int=n=>e.check($T(n)),e.safe=n=>e.check($T(n)),e.positive=n=>e.check(nf(0,n)),e.nonnegative=n=>e.check(Rd(0,n)),e.negative=n=>e.check(rf(0,n)),e.nonpositive=n=>e.check(Pd(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(zT,e)}var OF=z("ZodNumberFormat",(e,t)=>{I_.init(e,t),zT.init(e,t)});function $T(e){return wg(OF,e)}var CF=z("ZodBoolean",(e,t)=>{$_.init(e,t),hr.init(e,t)});function Nr(e){return kg(CF,e)}var EF=z("ZodNull",(e,t)=>{M_.init(e,t),hr.init(e,t)});function NT(e){return xg(EF,e)}var PF=z("ZodUnknown",(e,t)=>{j_.init(e,t),hr.init(e,t)});function ar(){return Tg(PF)}var RF=z("ZodNever",(e,t)=>{z_.init(e,t),hr.init(e,t)});function IF(e){return Ag(RF,e)}var $F=z("ZodArray",(e,t)=>{N_.init(e,t),hr.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 ST($F,e,t)}var GT=z("ZodObject",(e,t)=>{Qc.init(e,t),hr.init(e,t),ht.defineLazy(e,"shape",()=>t.shape),e.keyof=()=>kn(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:ar()}),e.loose=()=>e.clone({...e._zod.def,catchall:ar()}),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(qT,e,r[0]),e.required=(...r)=>ht.required(LT,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 GT(r)}function an(e,t){return new GT({type:"object",get shape(){return ht.assignProp(this,"shape",{...e}),this.shape},catchall:ar(),...ht.normalizeParams(t)})}var FT=z("ZodUnion",(e,t)=>{ef.init(e,t),hr.init(e,t),e.options=t.options});function tr(e,t){return new FT({type:"union",options:e,...ht.normalizeParams(t)})}var MF=z("ZodDiscriminatedUnion",(e,t)=>{FT.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),hr.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),hr.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function Vt(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),hr.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 kn(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),hr.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),hr.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 DT(e){return new GF({type:"transform",transform:e})}var qT=z("ZodOptional",(e,t)=>{Z_.init(e,t),hr.init(e,t),e.unwrap=()=>e._zod.def.innerType});function sr(e){return new qT({type:"optional",innerType:e})}var FF=z("ZodNullable",(e,t)=>{W_.init(e,t),hr.init(e,t),e.unwrap=()=>e._zod.def.innerType});function MT(e){return new FF({type:"nullable",innerType:e})}var DF=z("ZodDefault",(e,t)=>{V_.init(e,t),hr.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),hr.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 LT=z("ZodNonOptional",(e,t)=>{B_.init(e,t),hr.init(e,t),e.unwrap=()=>e._zod.def.innerType});function ZF(e,t){return new LT({type:"nonoptional",innerType:e,...ht.normalizeParams(t)})}var WF=z("ZodCatch",(e,t)=>{K_.init(e,t),hr.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),hr.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),hr.init(e,t)});function KF(e){return new BF({type:"readonly",innerType:e})}var UT=z("ZodCustom",(e,t)=>{X_.init(e,t),hr.init(e,t)});function JF(e){let t=new qr({check:"custom"});return t._zod.check=e,t}function ZT(e,t){return Ng(UT,e??(()=>!0),t)}function YF(e,t={}){return Gg(UT,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(DT(e),t)}In(hT());var Kg="2025-11-25";var WT=[Kg,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Io="io.modelcontextprotocol/related-task",ff="2.0",$r=ZT(e=>e!==null&&(typeof e=="object"||typeof e=="function")),VT=tr([$(),Et().int()]),HT=$(),$7=an({ttl:Et().optional(),pollInterval:Et().optional()}),QF=me({ttl:Et().optional()}),eD=me({taskId:$()}),Jg=an({progressToken:VT.optional(),[Io]:eD.optional()}),Mn=me({_meta:Jg.optional()}),Md=Mn.extend({task:QF.optional()}),BT=e=>Md.safeParse(e).success,Lr=me({method:$(),params:Mn.loose().optional()}),Bn=me({_meta:Jg.optional()}),Kn=me({method:$(),params:Bn.loose().optional()}),Ur=an({_meta:Jg.optional()}),mf=tr([$(),Et().int()]),KT=me({jsonrpc:xe(ff),id:mf,...Lr.shape}).strict(),Yg=e=>KT.safeParse(e).success,JT=me({jsonrpc:xe(ff),...Kn.shape}).strict(),YT=e=>JT.safeParse(e).success,Xg=me({jsonrpc:xe(ff),id:mf,result:Ur}).strict(),jd=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:ar().optional()})}).strict();var XT=e=>Qg.safeParse(e).success;var QT=tr([KT,JT,Xg,Qg]),M7=tr([Xg,Qg]),pf=Ur.strict(),tD=Bn.extend({requestId:mf.optional(),reason:$().optional()}),hf=Kn.extend({method:xe("notifications/cancelled"),params:tD}),rD=me({src:$(),mimeType:$().optional(),sizes:gt($()).optional(),theme:kn(["light","dark"]).optional()}),zd=me({icons:gt(rD).optional()}),Ks=me({name:$(),title:$().optional()}),eA=Ks.extend({...Ks.shape,...zd.shape,version:$(),websiteUrl:$().optional(),description:$().optional()}),nD=uf(me({applyDefaults:Nr().optional()}),Vt($(),ar())),iD=Hg(e=>e&&typeof e=="object"&&!Array.isArray(e)&&Object.keys(e).length===0?{form:{}}:e,uf(me({form:nD.optional(),url:$r.optional()}),Vt($(),ar()).optional())),oD=an({list:$r.optional(),cancel:$r.optional(),requests:an({sampling:an({createMessage:$r.optional()}).optional(),elicitation:an({create:$r.optional()}).optional()}).optional()}),aD=an({list:$r.optional(),cancel:$r.optional(),requests:an({tools:an({call:$r.optional()}).optional()}).optional()}),sD=me({experimental:Vt($(),$r).optional(),sampling:me({context:$r.optional(),tools:$r.optional()}).optional(),elicitation:iD.optional(),roots:me({listChanged:Nr().optional()}).optional(),tasks:oD.optional(),extensions:Vt($(),$r).optional()}),lD=Mn.extend({protocolVersion:$(),capabilities:sD,clientInfo:eA}),ey=Lr.extend({method:xe("initialize"),params:lD});var dD=me({experimental:Vt($(),$r).optional(),logging:$r.optional(),completions:$r.optional(),prompts:me({listChanged:Nr().optional()}).optional(),resources:me({subscribe:Nr().optional(),listChanged:Nr().optional()}).optional(),tools:me({listChanged:Nr().optional()}).optional(),tasks:aD.optional(),extensions:Vt($(),$r).optional()}),uD=Ur.extend({protocolVersion:$(),capabilities:dD,serverInfo:eA,instructions:$().optional()}),ty=Kn.extend({method:xe("notifications/initialized"),params:Bn.optional()});var _f=Lr.extend({method:xe("ping"),params:Mn.optional()}),cD=me({progress:Et(),total:sr(Et()),message:sr($())}),fD=me({...Bn.shape,...cD.shape,progressToken:VT}),gf=Kn.extend({method:xe("notifications/progress"),params:fD}),mD=Mn.extend({cursor:HT.optional()}),Nd=Lr.extend({params:mD.optional()}),Gd=Ur.extend({nextCursor:HT.optional()}),pD=kn(["working","input_required","completed","failed","cancelled"]),Fd=me({taskId:$(),status:pD,ttl:tr([Et(),NT()]),createdAt:$(),lastUpdatedAt:$(),pollInterval:sr(Et()),statusMessage:sr($())}),Js=Ur.extend({task:Fd}),hD=Bn.merge(Fd),Dd=Kn.extend({method:xe("notifications/tasks/status"),params:hD}),yf=Lr.extend({method:xe("tasks/get"),params:Mn.extend({taskId:$()})}),bf=Ur.merge(Fd),vf=Lr.extend({method:xe("tasks/result"),params:Mn.extend({taskId:$()})}),j7=Ur.loose(),Sf=Nd.extend({method:xe("tasks/list")}),wf=Gd.extend({tasks:gt(Fd)}),kf=Lr.extend({method:xe("tasks/cancel"),params:Mn.extend({taskId:$()})}),tA=Ur.merge(Fd),rA=me({uri:$(),mimeType:sr($()),_meta:Vt($(),ar()).optional()}),nA=rA.extend({text:$()}),ry=$().refine(e=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),iA=rA.extend({blob:ry}),qd=kn(["user","assistant"]),Ys=me({audience:gt(qd).optional(),priority:Et().min(0).max(1).optional(),lastModified:Id.datetime({offset:!0}).optional()}),oA=me({...Ks.shape,...zd.shape,uri:$(),description:sr($()),mimeType:sr($()),size:sr(Et()),annotations:Ys.optional(),_meta:sr(an({}))}),_D=me({...Ks.shape,...zd.shape,uriTemplate:$(),description:sr($()),mimeType:sr($()),annotations:Ys.optional(),_meta:sr(an({}))}),Xs=Nd.extend({method:xe("resources/list")}),gD=Gd.extend({resources:gt(oA)}),Qs=Nd.extend({method:xe("resources/templates/list")}),yD=Gd.extend({resourceTemplates:gt(_D)}),ny=Mn.extend({uri:$()}),bD=ny,xf=Lr.extend({method:xe("resources/read"),params:bD}),vD=Ur.extend({contents:gt(tr([nA,iA]))}),SD=Kn.extend({method:xe("notifications/resources/list_changed"),params:Bn.optional()}),wD=ny,kD=Lr.extend({method:xe("resources/subscribe"),params:wD}),xD=ny,TD=Lr.extend({method:xe("resources/unsubscribe"),params:xD}),AD=Bn.extend({uri:$()}),OD=Kn.extend({method:xe("notifications/resources/updated"),params:AD}),CD=me({name:$(),description:sr($()),required:sr(Nr())}),ED=me({...Ks.shape,...zd.shape,description:sr($()),arguments:sr(gt(CD)),_meta:sr(an({}))}),Tf=Nd.extend({method:xe("prompts/list")}),PD=Gd.extend({prompts:gt(ED)}),RD=Mn.extend({name:$(),arguments:Vt($(),$()).optional()}),Af=Lr.extend({method:xe("prompts/get"),params:RD}),iy=me({type:xe("text"),text:$(),annotations:Ys.optional(),_meta:Vt($(),ar()).optional()}),oy=me({type:xe("image"),data:ry,mimeType:$(),annotations:Ys.optional(),_meta:Vt($(),ar()).optional()}),ay=me({type:xe("audio"),data:ry,mimeType:$(),annotations:Ys.optional(),_meta:Vt($(),ar()).optional()}),ID=me({type:xe("tool_use"),name:$(),id:$(),input:Vt($(),ar()),_meta:Vt($(),ar()).optional()}),$D=me({type:xe("resource"),resource:tr([nA,iA]),annotations:Ys.optional(),_meta:Vt($(),ar()).optional()}),MD=oA.extend({type:xe("resource_link")}),sy=tr([iy,oy,ay,MD,$D]),jD=me({role:qd,content:sy}),zD=Ur.extend({description:$().optional(),messages:gt(jD)}),ND=Kn.extend({method:xe("notifications/prompts/list_changed"),params:Bn.optional()}),GD=me({title:$().optional(),readOnlyHint:Nr().optional(),destructiveHint:Nr().optional(),idempotentHint:Nr().optional(),openWorldHint:Nr().optional()}),FD=me({taskSupport:kn(["required","optional","forbidden"]).optional()}),aA=me({...Ks.shape,...zd.shape,description:$().optional(),inputSchema:me({type:xe("object"),properties:Vt($(),$r).optional(),required:gt($()).optional()}).catchall(ar()),outputSchema:me({type:xe("object"),properties:Vt($(),$r).optional(),required:gt($()).optional()}).catchall(ar()).optional(),annotations:GD.optional(),execution:FD.optional(),_meta:Vt($(),ar()).optional()}),Of=Nd.extend({method:xe("tools/list")}),DD=Gd.extend({tools:gt(aA)}),Cf=Ur.extend({content:gt(sy).default([]),structuredContent:Vt($(),ar()).optional(),isError:Nr().optional()}),z7=Cf.or(Ur.extend({toolResult:ar()})),qD=Md.extend({name:$(),arguments:Vt($(),ar()).optional()}),el=Lr.extend({method:xe("tools/call"),params:qD}),LD=Kn.extend({method:xe("notifications/tools/list_changed"),params:Bn.optional()}),N7=me({autoRefresh:Nr().default(!0),debounceMs:Et().int().nonnegative().default(300)}),Ld=kn(["debug","info","notice","warning","error","critical","alert","emergency"]),UD=Mn.extend({level:Ld}),ly=Lr.extend({method:xe("logging/setLevel"),params:UD}),ZD=Bn.extend({level:Ld,logger:$().optional(),data:ar()}),WD=Kn.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:kn(["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:Nr().optional(),_meta:Vt($(),ar()).optional()}),JD=Vg("type",[iy,oy,ay]),cf=Vg("type",[iy,oy,ay,ID,KD]),YD=me({role:qd,content:tr([cf,gt(cf)]),_meta:Vt($(),ar()).optional()}),XD=Md.extend({messages:gt(YD),modelPreferences:HD.optional(),systemPrompt:$().optional(),includeContext:kn(["none","thisServer","allServers"]).optional(),temperature:Et().optional(),maxTokens:Et().int(),stopSequences:gt($()).optional(),metadata:$r.optional(),tools:gt(aA).optional(),toolChoice:BD.optional()}),QD=Lr.extend({method:xe("sampling/createMessage"),params:XD}),Ud=Ur.extend({model:$(),stopReason:sr(kn(["endTurn","stopSequence","maxTokens"]).or($())),role:qd,content:JD}),dy=Ur.extend({model:$(),stopReason:sr(kn(["endTurn","stopSequence","maxTokens","toolUse"]).or($())),role:qd,content:tr([cf,gt(cf)])}),eq=me({type:xe("boolean"),title:$().optional(),description:$().optional(),default:Nr().optional()}),tq=me({type:xe("string"),title:$().optional(),description:$().optional(),minLength:Et().optional(),maxLength:Et().optional(),format:kn(["email","uri","date","date-time"]).optional(),default:$().optional()}),rq=me({type:kn(["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=tr([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=tr([sq,lq]),uq=tr([oq,aq,dq]),cq=tr([uq,eq,tq,rq]),fq=Md.extend({mode:xe("form").optional(),message:$(),requestedSchema:me({type:xe("object"),properties:Vt($(),cq),required:gt($()).optional()})}),mq=Md.extend({mode:xe("url"),message:$(),elicitationId:$(),url:$().url()}),pq=tr([fq,mq]),hq=Lr.extend({method:xe("elicitation/create"),params:pq}),_q=Bn.extend({elicitationId:$()}),gq=Kn.extend({method:xe("notifications/elicitation/complete"),params:_q}),tl=Ur.extend({action:kn(["accept","decline","cancel"]),content:Hg(e=>e===null?void 0:e,Vt($(),tr([$(),Et(),Nr(),gt($())])).optional())}),yq=me({type:xe("ref/resource"),uri:$()});var bq=me({type:xe("ref/prompt"),name:$()}),vq=Mn.extend({ref:tr([bq,yq]),argument:me({name:$(),value:$()}),context:me({arguments:Vt($(),$()).optional()}).optional()}),Ef=Lr.extend({method:xe("completion/complete"),params:vq});function sA(e){if(e.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${e.params.ref.type}`)}function lA(e){if(e.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${e.params.ref.type}`)}var Sq=Ur.extend({completion:an({values:gt($()).max(100),total:sr(Et().int()),hasMore:sr(Nr())})}),wq=me({uri:$().startsWith("file://"),name:$().optional(),_meta:Vt($(),ar()).optional()}),kq=Lr.extend({method:xe("roots/list"),params:Mn.optional()}),uy=Ur.extend({roots:gt(wq)}),xq=Kn.extend({method:xe("notifications/roots/list_changed"),params:Bn.optional()}),G7=tr([_f,ey,Ef,ly,Af,Tf,Xs,Qs,xf,kD,TD,el,Of,yf,vf,Sf,kf]),F7=tr([hf,gf,ty,xq,Dd]),D7=tr([pf,Ud,dy,tl,uy,bf,wf,Js]),q7=tr([_f,QD,hq,kq,yf,vf,Sf,kf]),L7=tr([hf,gf,WD,OD,SD,LD,ND,Dd,gq]),U7=tr([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)=>$n(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 Jn(e){return!!e._zod}function Da(e){let t=Object.values(e);if(t.length===0)return cy({});let r=t.every(Jn),n=t.every(i=>!Jn(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 Jn(e)?za(e,t):e.safeParse(t)}async function Pf(e,t){return Jn(e)?await Na(e,t):await e.safeParseAsync(t)}function Mo(e){if(!e)return;let t;if(Jn(e)?t=e._zod?.def?.shape:t=e.shape,!!t){if(typeof t=="function")try{return t()}catch{return}return t}}function rl(e){if(e){if(typeof e=="object"){let t=e,r=e;if(!t._def&&!r._zod){let n=Object.values(e);if(n.length>0&&n.every(i=>typeof i=="object"&&i!==null&&(i._def!==void 0||i._zod!==void 0||typeof i.parse=="function")))return Da(e)}}if(Jn(e)){let r=e._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return e}else if(e.shape!==void 0)return e}}function 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 dA(e){return e.description}function uA(e){if(Jn(e))return e._zod?.def?.type==="optional";let t=e;return typeof e.isOptional=="function"?e.isOptional():t._def?.typeName==="ZodOptional"}function If(e){if(Jn(e)){let o=e._zod?.def;if(o){if(o.value!==void 0)return o.value;if(Array.isArray(o.values)&&o.values.length>0)return o.values[0]}}let r=e._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=e.value;if(n!==void 0)return n}function jo(e){return e==="completed"||e==="failed"||e==="cancelled"}var fA=Symbol("Let zodToJsonSchema decide on which parser to use");var cA={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"},mA=e=>typeof e=="string"?{...cA,name:e}:{...cA,...e};var pA=e=>{let t=mA(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 lr(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 hA(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 _A(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 gA(){return{type:"boolean"}}function Mf(e,t){return De(e.type._def,t)}var yA=(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 bA(e,t){return{...De(e.innerType._def,t),default:e.defaultValue()}}function vA(e,t){return t.effectStrategy==="input"?De(e.schema._def,t):lr(t)}function SA(e){return{type:"string",enum:Array.from(e.values)}}var Rq=e=>"type"in e&&e.type==="string"?!1:"allOf"in e;function wA(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 kA(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":sn(r,hi.email,n.message,t);break}break;case"url":_i(r,"uri",n.message,t);break;case"uuid":_i(r,"uuid",n.message,t);break;case"regex":sn(r,n.regex,n.message,t);break;case"cuid":sn(r,hi.cuid,n.message,t);break;case"cuid2":sn(r,hi.cuid2,n.message,t);break;case"startsWith":sn(r,RegExp(`^${hy(n.value,t)}`),n.message,t);break;case"endsWith":sn(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":{sn(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":sn(r,hi.base64url,n.message,t);break;case"jwt":sn(r,hi.jwt,n.message,t);break;case"cidr":{n.version!=="v6"&&sn(r,hi.ipv4Cidr,n.message,t),n.version!=="v4"&&sn(r,hi.ipv6Cidr,n.message,t);break}case"emoji":sn(r,hi.emoji(),n.message,t);break;case"ulid":{sn(r,hi.ulid,n.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{_i(r,"binary",n.message,t);break}case"contentEncoding:base64":{yt(r,"contentEncoding","base64",n.message,t);break}case"pattern:zod":{sn(r,hi.base64,n.message,t);break}}break}case"nanoid":sn(r,hi.nanoid,n.message,t);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function 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 sn(e,t,r,n){e.pattern||e.allOf?.some(i=>i.pattern)?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern,...e.errorMessage&&n.errorMessages&&{errorMessage:{pattern:e.errorMessage.pattern}}}),delete e.pattern,e.errorMessage&&(delete e.errorMessage.pattern,Object.keys(e.errorMessage).length===0&&delete e.errorMessage)),e.allOf.push({pattern:xA(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):yt(e,"pattern",xA(t,n),r,n)}function xA(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 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
|
|
322
|
-
`}var Am=class{constructor(t=
|
|
323
|
-
`),{TAG:"Ok",_0:void 0})}async function
|
|
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=
|
|
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"),
|
|
327
|
-
worker output: `+i}function
|
|
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}:(
|
|
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=
|
|
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=
|
|
333
|
-
`)}function mS(e,t,r,n){return e+":"+t+":"+r+":"+n}function
|
|
320
|
+
]`;continue}i+=n[l],n[l]==="\\"?o=!0:a&&n[l]==="]"?a=!1:!a&&n[l]==="["&&(a=!0)}try{new RegExp(i)}catch{return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return i}function 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]})??lr(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 TA(e,t){if(t.mapStrategy==="record")return zf(e,t);let r=De(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||lr(t),n=De(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||lr(t);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function AA(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 OA(e){return e.target==="openAi"?void 0:{not:lr({...e,currentPath:[...e.currentPath,"not"]})}}function CA(e){return e.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Zd={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function PA(e,t){if(t.target==="openApi3")return EA(e,t);let r=e.options instanceof Map?Array.from(e.options.values()):e.options;if(r.every(n=>n._def.typeName in Zd&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((i,o)=>{let a=Zd[o._def.typeName];return a&&!i.includes(a)?[...i,a]:i},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((i,o)=>{let a=typeof o._def.value;switch(a){case"string":case"number":case"boolean":return[...i,a];case"bigint":return[...i,"integer"];case"object":if(o._def.value===null)return[...i,"null"];default:return i}},[]);if(n.length===r.length){let i=n.filter((o,a,s)=>s.indexOf(o)===a);return{type:i.length>1?i:i[0],enum:r.reduce((o,a)=>o.includes(a._def.value)?o:[...o,a._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,i)=>[...n,...i._def.values.filter(o=>!n.includes(o))],[])};return EA(e,t)}var EA=(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 RA(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return t.target==="openApi3"?{type:Zd[e.innerType._def.typeName],nullable:!0}:{type:[Zd[e.innerType._def.typeName],"null"]};if(t.target==="openApi3"){let n=De(e.innerType._def,{...t,currentPath:[...t.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=De(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function IA(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 $A(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 MA=(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:lr(t)},r]}:lr(t)};var jA=(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 zA(e,t){return De(e.type._def,t)}function NA(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 GA(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 FA(e){return{not:lr(e)}}function DA(e){return lr(e)}var qA=(e,t)=>De(e.innerType._def,t);var LA=(e,t,r)=>{switch(t){case Q.ZodString:return jf(e,r);case Q.ZodNumber:return IA(e,r);case Q.ZodObject:return $A(e,r);case Q.ZodBigInt:return _A(e,r);case Q.ZodBoolean:return gA();case Q.ZodDate:return my(e,r);case Q.ZodUndefined:return FA(r);case Q.ZodNull:return CA(r);case Q.ZodArray:return hA(e,r);case Q.ZodUnion:case Q.ZodDiscriminatedUnion:return PA(e,r);case Q.ZodIntersection:return wA(e,r);case Q.ZodTuple:return GA(e,r);case Q.ZodRecord:return zf(e,r);case Q.ZodLiteral:return kA(e,r);case Q.ZodEnum:return SA(e);case Q.ZodNativeEnum:return AA(e);case Q.ZodNullable:return RA(e,r);case Q.ZodOptional:return MA(e,r);case Q.ZodMap:return TA(e,r);case Q.ZodSet:return NA(e,r);case Q.ZodLazy:return()=>e.getter()._def;case Q.ZodPromise:return zA(e,r);case Q.ZodNaN:case Q.ZodNever:return OA(r);case Q.ZodEffects:return vA(e,r);case Q.ZodAny:return lr(r);case Q.ZodUnknown:return DA(r);case Q.ZodDefault:return bA(e,r);case Q.ZodBranded:return Mf(e,r);case Q.ZodReadonly:return qA(e,r);case Q.ZodCatch:return yA(e,r);case Q.ZodPipeline:return jA(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!==fA)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=LA(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`),lr(t)):t.$refStrategy==="seen"?lr(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=pA(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)??lr(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)??lr(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 Jn(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),jd(o)||XT(o)?this._onresponse(o):Yg(o)?this._onrequest(o,a):YT(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=BT(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),jd(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(jd(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),jd(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},tA,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=Dd.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=Dd.parse({method:"notifications/tasks/status",params:l});await this.notification(d),jo(l.status)&&this._cleanupTaskProgressHandler(i)}},listTasks:i=>n.listTasks(i,r)}}};function UA(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function ZA(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];UA(a)&&UA(o)?r[i]={...a,...o}:r[i]=o}return r}var PE=yw(iv(),1),RE=yw(EE(),1);function EV(){let e=new PE.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,RE.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},Ud,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 IE(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 $E(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(Ld.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=Ld.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=ZA(this._capabilities,t)}setRequestHandler(t,r){let i=Mo(t)?.method;if(!i)throw new Error("Schema is missing a method literal");let o;if(Jn(i)){let s=i;o=s._zod?.def?.value??s.value}else{let s=i;o=s._def?.value??s.value}if(typeof o!="string")throw new Error("Schema method literal must be a string");if(o==="tools/call"){let s=async(l,d)=>{let u=$o(el,l);if(!u.success){let m=u.error instanceof Error?u.error.message:String(u.error);throw new 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){$E(this._clientCapabilities?.tasks?.requests,t,"Client")}assertTaskHandlerCapability(t){this._capabilities&&IE(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:WT.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},Ud,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 jE=Symbol.for("mcp.completable");function fv(e){return!!e&&typeof e=="object"&&jE in e}function zE(e){return e[jE]?.complete}var ME;(function(e){e.Completable="McpCompletable"})(ME||(ME={}));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 sA(t),this.handlePromptCompletion(t,t.params.ref);case"ref/resource":return lA(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 vu;let o=Mo(n.argsSchema)?.[t.params.argument.name];if(!fv(o))return vu;let a=zE(o);if(!a)return vu;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 vu;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 vu;let o=await i(t.params.argument.value,t.params.context);return GE(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 yn?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:NE(i),outputSchema:NE(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 FE(e){return e!==null&&typeof e=="object"&&"parse"in e&&typeof e.parse=="function"&&"safeParse"in e&&typeof e.safeParse=="function"}function DE(e){return"_def"in e||"_zod"in e||FE(e)}function pv(e){return typeof e!="object"||e===null||DE(e)?!1:Object.keys(e).length===0?!0:Object.values(e).some(FE)}function NE(e){if(e){if(pv(e))return Da(e);if(!DE(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=dA(n),o=uA(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 GE(e){return{completion:{values:e.slice(0,100),total:e.length,hasMore:e.length>100}}}var vu={completion:{values:[],hasMore:!1}};import LE 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 QT.parse(JSON.parse(e))}function qE(e){return JSON.stringify(e)+`
|
|
322
|
+
`}var Am=class{constructor(t=LE.stdin,r=LE.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=qE(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=F0(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 uk(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[Ak],_=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),tx(FV(g),{client:_._0,toolScope:l._0,operatingMode:d,cwd:p,serviceUrl:i,defaultThreadId:h,ownerUsername:c,agentSession:nc(r,"agent-session"),devServices:Bk(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(ox(c)),{TAG:"Ok",_0:void 0};case"codex":return aa(ax(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 UE(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 VE from"node:fs";import*as HE from"node:url";import*as un from"node:path";import*as BE 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 KE(e,t){return G(ZV.find(r=>r[0]===e?r[1]===t:!1),r=>r[2])}function WV(e){try{return BE.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=>VE.existsSync(e),listDirectory:VV,resolveModulePath:WV,moduleDir:un.dirname(HE.fileURLToPath(import.meta.url))}}function JE(e,t,r){let n=t;for(;;){let i=n,o=un.join(...[i,"node_modules"].concat(e.split("/")));if(r(un.join(o,"package.json")))return o;let a=un.dirname(i);if(a===i)return;n=a}}function gv(e,t){let r=t.resolveModulePath(e+"/package.json");return r!==void 0?un.dirname(r):JE(e,t.moduleDir,t.fileExists)}function HV(e,t,r){let i=r.platform==="win32"?"codex.exe":"codex",o=un.join(e,t),s=[un.join(o,"codex",i),un.join(o,"bin",i),un.join(o,i)].find(l=>r.fileExists(l));return s!==void 0?s:r.listDirectory(o).map(l=>un.join(o,l,i)).find(l=>r.fileExists(l))}function BV(e){let t=KE(e.platform,e.arch);if(t===void 0)return;let r=[],n=gv(t.packageName,e);n!==void 0&&r.push(un.join(n,"vendor"));let i=gv("@openai/codex",e);return i!==void 0&&r.push(un.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=Xt(un.join(t,"package.json"));if(r.TAG!=="Ok")return;let n;try{n=JSON.parse(r._0)}catch{n=void 0}if(n===void 0||typeof n!="object"||n===null||Array.isArray(n))return;let i=n.version;if(i!==void 0&&typeof i=="string"&&i.trim()!=="")return i.trim()}var 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",ZE={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(!ZE.contents)return ZE.contents=!0,e(QV)}function WE(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=rn(u.pathVersion,null,f=>f),c.pinned_harness_version=rn(u.pinnedVersion,null,f=>f);break}switch(a("codex.binary.resolved",c),u.TAG){case"Mismatch":let f=u.pinnedVersion,p=u.pathVersion,m=i[yv];return m===void 0?{TAG:"Error",_0:WE(p,f)}:m!=="1"?{TAG:"Error",_0:WE(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 YE(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 XE(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 Su(e){let t=XE(e);if(t===void 0)return{actorUserId:void 0,actorUsername:void 0};let r=YE(t.actor_id);return{actorUserId:r!==void 0?r:YE(t.sub),actorUsername:n4(t.actor_username)}}function QE(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 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"]],eP=[["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 wu(){return x("1.0.142","0.0.0-unbundled")}function xv(){return"linzumi "+x("1.0.142","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 nP=Av(eP),iP=Av(Pm),a4=Av(wv),s4=o4(wv);function l4(e){return e.endsWith("_canonical")?!0:e.endsWith("_legacy")}function oP(e,t){return t>=32?e:Array.isArray(e)?e.map(r=>oP(r,t+1|0)):e===null?e:typeof e==="object"?aP(e,t):e}function aP(e,t){let r=Object.keys(e),n={};return r.forEach(i=>{let o=e[i];if(o!==void 0){n[i]=oP(o,t+1|0);return}}),r.forEach(i=>{if(l4(i))return;let o=n[i];if(o===void 0)return;let a=nP[i];if(a!==void 0)n[a]=o;else{let c=iP[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()?aP(e,0):e}function sP(e){let t=e.slice();return e.forEach(r=>{let n=nP[r];n!==void 0&&!t.includes(n)&&t.push(n);let i=iP[r];if(i!==void 0&&!t.includes(i)){t.push(i);return}}),t}var vl="<SENSITIVE_DATA>",d4=sP(["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 lP(e){let t={contents:!1};return Rw(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 lP(a)?n+"?"+a.toString()+o:e}function _4(e){let t=Ln(e);if(t===void 0)return h4(e);let r=ue(t);return lP(r.searchParams),r.toString()}function dP(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 dP(e);case"object":return uP(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):dP(r)}return t.contents=!1,Cv(r,void 0)})}function uP(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=uP;import*as ta from"node:os";import*as Pp from"node:path";import*as uw from"node:crypto";function jn(e){let t=parseFloat(e);if(!Number.isNaN(t))return t}function fP(e){return"local_runner:"+e}var b4="kandan-local-codex-runner",v4="rescript";function mP(e){let t={};t.clientName=b4,t.clientId=e.clientId;let r=e.machineFingerprint;t.machineFingerprint=r!==void 0?r:null,Object.entries(ik(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 pP(e,t,r){let n={};return n.last_seq=r,t!==void 0&&(n.runner_id=e,n.thread_id=t),n}function zn(e,t){return e.catch(r=>t(ee(r)))}function _P(){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 gP(e){return import(e)}var w4="@anthropic-ai/claude-agent-sdk";function yP(e){return _P()}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 bP(){let e=await gP(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 SP=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 kP(e,t){return[["app-server"],P4(t),["--listen",e]].flat()}var R4=["LINZUMI_MCP_ACCESS_TOKEN","LINZUMI_MCP_OWNER_USERNAME"];function xP(e,t,r){let n=r?Object.fromEntries(Object.entries(e)):{};return R4.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 TP=["ignore","pipe","pipe"];function AP(e){let t=e.length;return t>12e3?e.slice(t-12e3|0,t):e}function OP(e,t,r){return r<3&&e.includes("codex app-server exited before readyz")&&t.includes("EADDRINUSE")?t.includes("listen"):!1}function CP(e){let t=Ln(e);if(t===void 0)return;let r=ue(t),i=r.protocol==="wss:"?"https:":"http:";return r.protocol=i,r.pathname="/readyz",r.search="",r.hash="",r.toString()}var I4="kandan-local-codex-runner",$4="0.0.1";function EP(){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 PP(e){return M4.test(e)}var j4=new RegExp("^thread not found(?:\\s*:|\\b)","i");function RP(e){return j4.test(e.trim())}var IP=2e3;function z4(e){try{e.unref();return}catch{return}}var $P="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 NP(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 MP(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(;mn(a)&&s<o.length;){let d=o[s];if(d!==void 0){let u=0,c;try{c=await d(n),u=1}catch(f){let p=ee(f);a={TAG:"Error",_0:[-32e3,Ne(p).message]}}u===1&&c!==void 0&&(a={TAG:"Ok",_0:c})}s=s+1|0}let l=x(a,i);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=zt(a.id),l=s&&(zt(a.result)||zt(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?(cr(e.pending,m),h.resolvePending({TAG:"Ok",_0:Iv(a)})):void 0}if(s)if(d!==void 0){zn(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=>NP(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 jP(e,t){return Object.fromEntries(t!==void 0?[["jsonrpc","2.0"],["method",e],["params",t]]:[["jsonrpc","2.0"],["method",e]])}function zP(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"&&(cr(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(;mn(l);){let u;try{u={TAG:"Ok",_0:i(e)}}catch(c){let f=ee(c);u={TAG:"Error",_0:Ne(f).message}}if(u.TAG==="Ok"){let c=u._0;if(await new Promise((f,p)=>{c.socket.on("SocketOpen",m=>f(!0)),c.socket.on("SocketError",m=>f(!1))}))l={TAG:"Ok",_0:c};else{try{c.socket.close()}catch{}a()>s&&(l={TAG:"Error",_0:d})}}else d=u._0,a()>s&&(l={TAG:"Error",_0:d})}return x(l,{TAG:"Error",_0:d})}async function 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=>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=>MP(n,p,d))};e.socket.on("SocketClose",d=>a($P)),e.socket.on("SocketError",d=>a($P)),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 zP(r,e,i,"initialize","initialize",EP());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",jP("initialized",void 0)),{TAG:"Ok",_0:{request:(d,u)=>{let c=r.nextId;return r.nextId=r.nextId+1|0,zP(r,e,i,c,d,u)},notify:(d,u)=>{zm(e,i,"outgoing",jP(d,u))},onNotification:d=>{r.notificationCallbacks.push(d);let u=r.pendingNotifications.slice();r.pendingNotifications.splice(0,r.pendingNotifications.length),u.forEach(c=>NP(n,d,c))},onRequest:d=>{r.requestCallbacks.push(d)},onClose:d=>{let u=r.closeError;if(u!==void 0)return MP(n,d,u);r.closeCallbacks.push(d)},isClosed:()=>zt(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 GP(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}var FP="linzumi_thread_codex_worker_ready",DP="linzumi_thread_codex_worker_session_closed",qP="linzumi_thread_codex_worker_request",LP="linzumi_thread_codex_worker_notify",zv="linzumi_thread_codex_worker_response",UP="linzumi_thread_codex_worker_notification",ZP="linzumi_thread_codex_worker_server_request",WP="linzumi_thread_codex_worker_server_request_response";function VP(e,t){let r={};return r.type=FP,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 HP(e,t){let r={};return r.type=DP,r.kandanThreadId=e,r.reason=t,r}function U4(e,t,r){let n={};return n.type=qP,n.id=e,n.method=t,r!==void 0&&(n.params=r),n}function Z4(e,t){let r={};return r.type=LP,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=UP,t.notification=e,t}function B4(e,t){let r={};return r.type=ZP,r.id=e,r.request=t,r}function Mv(e,t,r){let n={};return n.type=WP,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===qP){let i=kl(t.id),o=Li(t.method);return i!==void 0&&o!==void 0?{TAG:"ParentRequest",id:i,method_:o,params:GP(t.params)}:void 0}if(r===LP){let i=Li(t.method);return i!==void 0?{TAG:"ParentNotify",method_:i,params:GP(t.params)}:void 0}if(r!==WP)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===UP){let o=J4(t.notification);return o!==void 0?{TAG:"ChildNotification",notification:o}:void 0}if(r!==ZP)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 BP(e){let t=xl(e);if(t===void 0)return;let r=t.type;if(typeof r=="string"&&r===DP)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 KP(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!==FP)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 JP(e,t){}var YP="linzumi.thread_runner",nH="thread Codex worker requires a codex client with onRequest",jv="thread Codex worker IPC channel closed";function XP(e,t,r){let n=r!==void 0?r:JP,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=YP,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=YP,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 QP(e,t){let r=t!==void 0?t:JP,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 tR from"node:os";import*as rR from"node:path";function nR(){return rR.join(tR.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=jn(i),s=jn(o);if(a!==void 0&&s!==void 0)return{pid:a,pgid:s}})}function cH(e){let t=_s("ps",["-axo","pid=,pgid="],5e3,16e6);if(t.TAG==="Ok")return 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 aR={contents:(e,t)=>{}};var Nv="SIGKILL",Qa={children:new Set,handlersInstalled:!1,removeHandlers:void 0};function ku(e,t,r,n,i){let o=e.pid;aR.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);ku(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&&aR.contents("process.reap_spared_listeners",Object.fromEntries([["purpose",e.kind],["pid",o],["reason",n],["sparedPids",l.sparedPids.map(f=>f)]])),l.failures.forEach(f=>ku(e,n,"member_kill:"+f.pid.toString(),f.code,f.message));let d=l.groupSignalError;if(d===void 0||de(d.code,"ESRCH"))return;ku(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:ku(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 ku(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 oR(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"),fr(oR("uncaughtException",o)),process.exit(1)},i=o=>{Gv(void 0,void 0,"unhandled_rejection"),fr(oR("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 lR from"node:net";function Tl(e,t){try{return e.kill(t)}catch{return!1}}function dR(){return new Promise((e,t)=>{let r=lR.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 Xte=new RegExp("[^0-9A-Za-z._-]","g");var lre=new RegExp("[\\\\/]");var uR="cannot fork thread runner without current CLI script path";var dre=15*6e4,ure=120*6e4,cre=1440*6e4,fre=2*6e4;var _H="this computer is updating its Linzumi runner",mre=_H+" to a new version - nothing was started. Retry in a few minutes once the update finishes.";var pre=15*6e4;var cR="this computer restarted its Linzumi runner for an update",hre=cR+" after waiting for this job past the drain timeout - the job was interrupted. Send your message again to continue.",_re=cR+" 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 fR(e,t){return e!==void 0&&e.trim()!==""?{TAG:"Ok",_0:Wo.isAbsolute(e)?e:Wo.resolve(t,e)}:{TAG:"Error",_0:uR}}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 cn(e,t){return t!==void 0?t!==""?[e,t]:[]:[]}function mR(e){let t=i=>{let o=i.join(",");if(o!=="")return o},r=e.codexModelProvider,n=e.runtimeDefaults;return[["--api-url",e.kandanUrl],["--cwd",e.cwd],["--codex-bin",e.codexBin],cn("--workspace",e.workspaceSlug),cn("--log-file",e.logFile),cn("--debug-trace-dir",G(e.debugTrace,i=>i.dir)),cn("--debug-trace-content",k(e.debugTrace,i=>i.contentMode)),e.fast?["--fast"]:[],cn("--allowed-cwd",t(e.allowedCwds)),cn("--forward-port",t(e.allowedForwardPorts.map(i=>i.toString()))),cn("--code-server-bin",e.codeServerBin),cn("--model",k(e.runtimeDefaults,i=>i.model)),cn("--reasoning-effort",k(e.runtimeDefaults,i=>i.reasoningEffort)),cn("--sandbox",k(e.runtimeDefaults,i=>i.sandbox)),cn("--approval-policy",k(e.runtimeDefaults,i=>i.approvalPolicy)),r!==void 0?["--model-provider",r.provider,"--llm-proxy-base-url",r.llmProxyBaseUrl]:[],e.vmExecution?["--vm-execution"]:[],cn("--execution-mode",e.executionMode),cn("--egress-mode",e.egressMode),cn("--project-public-id",e.projectPublicId),cn("--golden-image-id",e.goldenImagePublicId),n!==void 0?n.allowPortForwardingByDefault?["--allow-port-forwarding-by-default"]:["--no-allow-port-forwarding-by-default"]:[]].flat()}function pR(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 hR(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 _R(e){let t=e.length;return t>12e3?e.slice(t-12e3|0,t):e}function qm(e){let t=rn(e.code,"null",o=>o.toString()),r=x(e.signal,"null"),n="thread Codex worker exited before ready: code="+t+" signal="+r,i=e.capturedOutput.trim();return i===""?n:n+`
|
|
327
|
+
worker output: `+i}function gR(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 yR(e){let t=x(e,3e4);return isFinite(t)&&t>=0?{TAG:"Ok",_0:t}:{TAG:"Error",_0:wH}}var bR="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 vR(e,t,r){if(e===void 0)return{TAG:"CwdRefused",reason:"missing_cwd"};if(e.trim()==="")return{TAG:"CwdRefused",reason:"missing_cwd"};if(t.length===0)return{TAG:"CwdRefused",reason:"no_allowed_cwd"};let i=Dn(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 SR(e,t,r){if(r.TAG==="CwdAllowed")return;let n=r.reason,o=t.length!==0?t.join(", "):"none";return{reason:n,message:bR+" ("+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(bR))}var yre=new RegExp("worker exited before ready|worker did not report ready within","i");function wR(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 kR(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(;mn(u)&&f<=s;){let m=f,h=await e(m);if(h.TAG==="Ready")u={TAG:"Ok",_0:h._0};else{let _=h._0;c=_;let g=TH(_.capturedOutput),b=m<s&&mn(g),y={};y.purpose=Dv,y.attempt=m,y.maxAttempts=s,y.code=rn(_.code,null,v=>v),y.signal=rn(_.signal,null,v=>v),y.capturedOutput=_.capturedOutput,y.willRespawn=b,g!==void 0&&(y.deterministicPreflightFailure=g),a("runner.thread_runner_exited_before_ready",y),g!==void 0?u={TAG:"Error",_0:g}:(b&&(i!==void 0&&i({attemptNumber:m+1|0,previous:_}),l>0&&await d(l)),f=m+1|0)}}let p=u;return p!==void 0?p:{TAG:"Error",_0:qm(x(c,{code:void 0,signal:void 0,capturedOutput:""}))}}var xR=3e4;function OH(e){let t=ke(e);return t!==void 0?Iv(t):{TAG:"ResultReply",_0:null}}function TR(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:()=>zt(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 AR(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 xu(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:()=>xu(s,"SIGTERM"),pid:Pr(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=_R(d.contents+y)),g.write(y)});return}};p(s.stdout,process.stdout),p(s.stderr,process.stderr);let m=_=>{let g=KP(_,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}xu(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 CR(e,t){let r=fR(process.argv[1],process.cwd());if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=r._0,i=yR(void 0);if(i.TAG!=="Ok")return{TAG:"Error",_0:i._0};let o=i._0,a=["run"].concat(mR(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));hR(e,process.pid,d).forEach(_=>{u[_[0]]=_[1]}),t("process.spawn",Object.fromEntries([["command",process.execPath],["args",qv(n,pR(a),process.execArgv).map(_=>_)],["cwd",e.cwd],["purpose",Dv]]));let c={contents:void 0},f={contents:!1},p=(async()=>{let _=await kR(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 xu(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&&xu(ue(b),"SIGKILL"),_({TAG:"Error",_0:gR(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=QP({send:B=>CH(_,B),isConnected:()=>nn(Pr(_.connected),!1),onMessage:B=>{_.on("message",B);let oe=()=>{_.off("message",B)};return g.push(oe),oe},onceExit:B=>{let oe=(W,V)=>B();return _.once("exit",oe),()=>{_.off("exit",oe)}},onceDisconnect:B=>{let oe=()=>B();return _.once("disconnect",oe),()=>{_.off("disconnect",oe)}}},t),L=TR(Z,t);_.on("message",B=>{let oe=BP(B);if(oe!==void 0)return t("runner.thread_codex_worker_session_closed",Object.fromEntries([["kandanThreadId",oe[0]],["reason",oe[1]]]))});let ae=[],U={contents:!1};return _.once("exit",(B,oe)=>{U.contents=!0,L.signalClosed("codex thread worker exited");let W=ae.slice();ae.splice(0,ae.length),W.forEach(V=>V())}),{TAG:"Ok",_0:{client:L.client,pid:Pr(_.pid),commanderManagedPorts:h.ports,onExit:B=>{if(U.contents)return B();ae.push(B)},close:()=>{Z.close(),g.forEach(B=>B()),EH(_),xu(_,"SIGTERM")}}};case"WorkerExitedBeforeReady":return{TAG:"Error",_0:qm(h._0)};case"WorkerInvalidReady":return{TAG:"Error",_0:h._0}}}function ER(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 PR(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 RR="kandan-local-runner",IR="pragmatic";import*as MR 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(MR.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=qn(e).slice(0,8);return(t===""?"runner":t)+"."+r}function jR(e,t){return Vo.join(Wv(t),Vv(e)+".json")}function zR(e,t){return Vo.join(Wv(t),Vv(e)+".start-turn.json")}function NR(e,t){return Vo.join(Wv(t),Vv(e)+".source-seq.json")}function GR(e,t){return e+" "+t}function FR(e,t,r){return e+" "+t+" "+r}var DR="__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===DR)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=Xt(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[DR]=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",_=he(Nt(Vo.dirname(e)),()=>o?Ew(h,e,Vo.dirname(e),m):he(Ti(h,m),()=>li(h,e)));if(_.TAG!=="Ok")return t("control_cursor_store.write_failed",Object.fromEntries([["path",e],["message",_._0.message]]))},f=()=>{if(d.contents=!0,u.contents!==void 0)return;let h=setTimeout(()=>{u.contents=void 0,c()},250);h.unref(),u.contents=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=>cr(s,g[0]))),f(),(h||_)&&p(),h}}}function qR(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 bre=1800*1e3;var vre=new RegExp("[^A-Za-z0-9._-]+","g"),Sre=new RegExp("^[-.]+|[-.]+$","g");function LR(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 Tu(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 UR(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 WR(){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 BR(){return{completed:{inputTokens:0,outputTokens:0,cacheCreationInputTokens:0,cacheReadInputTokens:0},current:void 0,lastEmittedKey:void 0}}function VR(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 HR(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 KR(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=VR(n,e.current),HR(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=VR(i,void 0),HR(e);default:return}}function Au(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 XR(){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 YR(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 QR(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=>YR(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=>YR(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 eI(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 tI(e,t){let r=e.blocksByMessageId[t];return r!==void 0?(cr(e.blocksByMessageId,t),r.toSorted((n,i)=>Bu(n.index,i.index))):[]}function rI(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 nI(e){let t=rI(e,"rate_limit_info");if(t!==void 0)return eS(t);let r=rI(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 oI(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 iI(e,t){return Ve(e,void 0,(r,n)=>r!==void 0?r:oI(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=oI(XH,e),n=(t!==void 0?QH(t):e).trim();return n.length<=200?n:n.slice(0,199)+"\u2026"}function aI(e){return{status:k(iI(JH,e),t=>ga(t,void 0)),requestId:iI(YH,e),edgeBlocked:KH(e),message:e3(e)}}function tS(e){return zt(e.status)||zt(e.requestId)?!0:e.edgeBlocked}function sI(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 lI(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 cI(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:BR(),identity:XR()}}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 dI(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 Ou(e,t){return e.startedTurns.has(t)?!e.terminalTurns.has(t):!1}var fI=Ou;function mI(e){let t=e.activeTurnId;return t!==void 0?Ou(e,t):!1}function pI(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&&Ou(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 uI(e){return e.turnId+"/"+e.itemId+"/"+e.streamKind}function iS(e,t){if(!e.startedItems.has(uI(t)))return e.startedItems.add(uI(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=>Ou(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(dI(e,"is_error"),!1),n=de(t,"interrupt")||de(t,"error_interrupted")||x(dI(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=aI(t),n=r.status;return{fate:e!==void 0?e==="error_max_turns"?"deterministic":n!==void 0?Au(n):"transient_upstream":n!==void 0?Au(n):"transient_upstream",reason:tS(r)?sI("Claude Code failed: "+t,r):"Claude Code failed: "+t,providerDetail:tS(r)?lI(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=eI(e.identity,k(n,y=>Rt(y,"id"))),s=tI(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=KR(e.usage,r),i=QR(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&&Ou(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 hI(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=nI(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(Ar(ue(t)),"unknown error"):"unknown error"}function _I(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 vI(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 gI(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 SI(e,t){let r={};return r.behavior="deny",r.message=x(t,"denied by the approval bridge"),r.toolUseID=e,r}function yI(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=vI(t.reasoningEffort),i;if(typeof n!="object")if(n==="ClearEffort"&&zt(e.currentEffort))try{let l={};l.effortLevel=null,await e.connection.applyFlagSettings(l),e.currentEffort=void 0,i={TAG:"Ok",_0:void 0}}catch(l){let d=ee(l);i={TAG:"Error",_0:{fate:"transient_local",reason:"applyFlagSettings failed: "+Cl(d),providerDetail:void 0}}}else i={TAG:"Ok",_0:void 0};else{let l=n._0;if(nn(l,e.currentEffort))try{let d={};d.effortLevel=l,await e.connection.applyFlagSettings(d),e.currentEffort=l,i={TAG:"Ok",_0:void 0}}catch(d){let u=ee(d);i={TAG:"Error",_0:{fate:"transient_local",reason:"applyFlagSettings failed: "+Cl(u),providerDetail:void 0}}}else i={TAG:"Ok",_0:void 0}}if(i.TAG!=="Ok")return{TAG:"Error",_0:i._0};let o=()=>({turnId:pI(e.projector,e.harnessSessionId)});if(e.harnessSessionId===""){if(!e.input.push(gI(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(gI(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(!fI(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=SI(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 bI(e,t,r,n,i){let o=yP(),a={contents:void 0},s=U=>{let B=a.contents;if(!(B!==void 0&&B.stopped))return i(U)},l={contents:void 0},d=new Promise((U,B)=>{l.contents=U}),u=U=>{let B=l.contents;if(B!==void 0)return l.contents=void 0,B(U)},c=cI(n,U=>u({TAG:"Ok",_0:U}),s),f=(U,B,oe)=>new Promise((W,V)=>{let M=oe.toolUseID,N=a.contents;return N!==void 0?(N.pendingApprovals.push({requestId:M,toolInput:B,resolveDecision:W}),s({TAG:"ApprovalRequested",request:{requestId:M,turnId:c.activeTurnId,kind:"canUseTool",summary:U,payload:S3(U,B,Pr(oe.suggestions))}})):W(SI(M,"approval bridge not ready"))}),p=vI(t.reasoningEffort),m;m=typeof p!="object"?void 0:p._0;let h=e.env,_=Object.entries(t.environment).length,g,b=0;if(h!==void 0||_!==0?b=1:g=void 0,b===1){let U={};h!==void 0?Object.entries(h).forEach(B=>{U[B[0]]=B[1]}):Object.entries(process.env).forEach(B=>{U[B[0]]=B[1]}),Object.entries(t.environment).forEach(B=>{U[B[0]]=B[1]}),g=U}let y={};y.type="preset",y.preset="claude_code";let v={};v.type="preset",v.preset="claude_code";let S=t.developerInstructions;S!==void 0&&(v.append=S);let A;A=r==="bypassPermissions"?!0:void 0;let R=e.sdk.query({prompt:o.iterable,options:{cwd:t.cwd,model:t.model,persistSession:!0,includePartialMessages:!0,includeHookEvents:!0,tools:y,settingSources:["user","project","local"],systemPrompt:v,mcpServers:t.mcpServers,resume:n,permissionMode:r,allowDangerouslySkipPermissions:A,effort:m,env:g,canUseTool:f}}),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 B;try{B=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),B=void 0}if(B!==void 0)if(B.done){U=!1;let oe=mI(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 hI(Z.projector,B.value)}})(),{state:Z,started:d}}function wI(e){let t=[];return{harness:"claude-code",capabilities:v3,startSession:async(i,o)=>{let a=_I(i.approvalPolicy);if(a.TAG!=="Ok")return{TAG:"Error",_0:{fate:"deterministic",reason:a._0,providerDetail:void 0}};let s=bI(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:yI(s.state)}},attachSession:async(i,o,a)=>{let s=_I(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:zt(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=bI(e,o,s._0,i,a);return t.push(u.state),{TAG:"Ok",_0:yI(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 kI(e){let t=Xt(e);if(t.TAG==="Ok")return aS(t._0.trim())}function xI(e,t){let r=e+".tmp."+process.pid.toString()+"."+tc(6);return he(Nt(Hm.dirname(e)),()=>{let n=he(Ti(r,El(t)+`
|
|
330
|
+
`),()=>li(r,e));return n.TAG==="Ok"?{TAG:"Ok",_0:void 0}:(pn(r),{TAG:"Error",_0:n._0})})}import*as Km from"node:path";function AI(e,t){return e.LINZUMI_THREAD_RUNNER_ROLE==="thread"?"ThreadWorkerRole":t&&nn(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"],["no-allow-port-forwarding-by-default","BooleanFlag"],["token","ValueFlag"]];function A3(e){let t={},r,n=0;for(;mn(r)&&n<e.length;){let o=e[n];if(o!==void 0)if(o.startsWith("--")){let a=o.slice(2,o.length),s=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 Cr(e,t){let r=e[t];if(r===void 0||typeof r!="object")return;let n=r._0;if(n.trim()!=="")return n}function Bm(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=Cr(e,"api-url"),r=Cr(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!==""&&mn(r.contents)))return;let a=x(jn(o),NaN),s=!Ot(a)||a<1||a>65535,l=t.includes(a);if(s){r.contents=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?Km.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=Km.resolve(lS(o,t)),s=Dn(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=Km.resolve(lS(e,t)),n=Dn(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=Cr(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=Cr(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 he(A3(e),r=>{let n=Bm(r,"allow-port-forwarding-by-default"),i=Bm(r,"no-allow-port-forwarding-by-default");return he(n?i?{TAG:"Error",_0:"use only one of --allow-port-forwarding-by-default or --no-allow-port-forwarding-by-default"}:{TAG:"Ok",_0:!0}:i?{TAG:"Ok",_0:!1}:{TAG:"Ok",_0:!0},a=>he(C3(r),s=>{let l=x(s,$s),d=t.resolveBaseCwd(lS(x(Cr(r,"cwd"),t.processCwd()),t.home)),c=r["allowed-cwd"]!==void 0?$3(E3(Cr(r,"allowed-cwd")),t.home):{allowed:[],missing:[]};c.missing.forEach(t.warnStaleRoot);let f=c.allowed,p=f.length!==0?{TAG:"Ok",_0:f}:j3(d,t.home);return he(p,m=>he(D3(t.env),h=>he(q3(t.env),_=>he(R3(Cr(r,"forward-port")),g=>he(V3(r,t.env),b=>{let y=Cr(r,"debug-trace-dir");return he(y!==void 0?wt(N3(Cr(r,"debug-trace-content")),v=>({dir:y,contentMode:v})):{TAG:"Ok",_0:void 0},v=>{let S=Cr(r,"codex-bin"),A=S!==void 0?{TAG:"Ok",_0:[S,void 0]}:wt(t.fallbackCodexBin(),R=>[R.codexBin,R.source]);return wt(A,R=>({options:{kandanUrl:l,token:_,cwd:d,codexBin:R[0],kandanThreadId:h,workspaceSlug:Cr(r,"workspace"),logFile:Cr(r,"log-file"),debugTrace:v,fast:Bm(r,"fast"),allowedCwds:m,allowedForwardPorts:g,codeServerBin:void 0,runtimeDefaults:{model:Cr(r,"model"),reasoningEffort:Cr(r,"reasoning-effort"),sandbox:Cr(r,"sandbox"),approvalPolicy:Cr(r,"approval-policy"),allowPortForwardingByDefault:a},codexModelProvider:b,vmExecution:Bm(r,"vm-execution"),executionMode:dS(Cr(r,"execution-mode")),egressMode:uS(Cr(r,"egress-mode")),projectPublicId:TI(Cr(r,"project-public-id")),goldenImagePublicId:TI(Cr(r,"golden-image-id")),linzumiAgentMcpToken:L3(t.env)},runnerId:"thread-codex-worker:"+h,missingAllowedCwds:c.missing,codexBinSource:R[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=XP(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(HP(e,l)),t.stop()});let s=r.send;return s!==void 0&&s(VP(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 ti(e,t){let r=e[t];if(typeof r=="string")return r}function ts(e,t){let r=e[t];if(Array.isArray(r))return r}function Cu(e){return ze(e,t=>{if(typeof t!="object"||t===null||Array.isArray(t))return;if(ti(t,"type")==="text")return ti(t,"text")}).join(`
|
|
333
|
+
`)}function mS(e,t,r,n){return e+":"+t+":"+r+":"+n}function Eu(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 Ore="codex";function PI(e){return Math.ceil(e.length/4)}function Ym(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=>Ym(r[t]))}function RI(e){return x(e.split(`
|
|
334
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=
|
|
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=Ym(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=Ym(s);return l!==void 0?l:typeof s=="object"&&s!==null&&!Array.isArray(s)?Ym(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
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
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
338
|
`+n,"commentary")];case"reasoning":return[];case"system_notice":return[Ui("[notice] "+n,"commentary")];case"terminal_input":return[Ui(`[terminal input]
|
|
339
339
|
`+n,"commentary")];case"tool_call":return nB(e,n,r);case"tool_result":return[Ui(`[tool result]
|
|
340
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=
|
|
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=Ar(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();zn(a._0.then(s=>r()),s=>{let l=G(i,u=>u(s)),d=0;return l!==void 0&&l!=="Withhold"?r():d=1,d===1&&n("kandan.control_ack_withheld_on_failure",Object.fromEntries([["controlType",e],["message",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 Xm(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(Xm(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(Xm(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
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
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
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(`
|
|
@@ -346,22 +346,22 @@ worker output: `+i}function _R(e,t){return"thread Codex worker did not report re
|
|
|
346
346
|
---
|
|
347
347
|
|
|
348
348
|
`),d);return[s,l,u].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=
|
|
352
|
-
`);case"mcpToolCall":return
|
|
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:Xm(t,"structured"),actor:Xm(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(;mn(p)&&f<20;){let h={};h.workspace=i,h.channel=o,h.thread_id=a;let _=u;_!==void 0&&(h.cursor=_);let b=await e(t,"session:thread_transcript",h);if(b.TAG==="Ok"){let y=b._0,v=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||mn(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 gS(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)=>gS(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&&RP(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 PP(p)?await d("ResumeArchived",p):await u(p)}var wB=R0(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,O0)}));function KI(e){return Is(e,wB)}function ep(e){let t=yr(e);return t!==void 0?x(Ar(ue(t)),"unknown error"):"unknown error"}function xB(e){let t=k(yr(e),r=>vw(r));return t!==void 0?t:null}function ri(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=Ln(e);if(t===void 0)return{TAG:"Error",_0:"Invalid URL"};let r=ue(t);switch(r.protocol){case"http:":r.protocol="ws:";break;case"https:":r.protocol="wss:";break}return r.pathname=r.pathname.replace(EB,"")+"/socket/websocket",r.searchParams.set("vsn","2.0.0"),{TAG:"Ok",_0:r.toString()}}function RB(e){return[OB+Iw(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)?nn(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 yS(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 yS(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},B=[],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=>cr(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=>{cr(S,w),cr(A,w),cr(R,w),cr(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},Ft=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,Dt=>Ve(Dt.values().toArray(),void 0,(qt,dr)=>qt!==void 0&&qt<=dr?qt:dr)),st=Ie!==void 0?Ie-1:Z[w];if(st===void 0)return;let Oe=S[w],ye=Oe!==void 0&&Oe<st?Oe:st;He(w,ye)}:()=>{};B.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)},_e=(w,C)=>{if(w.startsWith("chat:")){let P=C.events;return P===void 0?{TAG:"Ok",_0:void 0}:P===null?{TAG:"Ok",_0:void 0}:Array.isArray(P)?(P.forEach(I=>{oe.forEach(F=>F(w,"event",I))}),{TAG:"Ok",_0:void 0}):{TAG:"Error",_0:"phoenix rejoin returned invalid events for "+w}}else{if(!w.startsWith("local_runner:"))return{TAG:"Ok",_0:void 0};let P=C.controls;if(P===void 0)return{TAG:"Ok",_0:void 0};if(P===null)return{TAG:"Ok",_0:void 0};if(!Array.isArray(P))return{TAG:"Error",_0:"phoenix rejoin returned invalid controls for "+w};P.forEach(F=>{let D=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((ye,Dt)=>{let qt=setTimeout(()=>{if(b[ie]!==void 0)return cr(b,ie),ye({TAG:"Error",_0:AB(Oe,C)})},Oe);b[ie]={event:C,timer:qt,settle:ye};try{m({provider:LB(Fe),rawFrameText:st,topic:w,event:C,payload:Fe})}catch{}let dr;try{dr={TAG:"Ok",_0:D.send(st)}}catch(jr){let Bt=ee(jr);dr={TAG:"Error",_0:ep(Bt)}}return dr.TAG==="Ok"?F!==void 0?F():void 0:ye({TAG:"Error",_0:{TAG:"Failed",message:dr._0}})})},Ht=(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=Ft(w);I!==void 0&&(P.last_control_seq=I);let F=ZB(g,w);F!==void 0&&(P.last_control_epoch=F)}return P},fn=w=>Object.entries(w).map(C=>C[1].payload()),ki=async w=>{let C=0,P=0,I=!0;for(;I;){let F=y[w];if(F!==void 0){let D=Ft(w),ie=await Be(w,"phx_join",Ht(w,fn(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=Ft(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 ye=st!==void 0?st.toString():"unknown";u("phoenix.control_backlog_cap_exceeded topic="+w+" fetches="+C.toString()+" fetched="+P.toString()+" remaining_estimate="+ye+"; continuing the paginated backlog fetch (a healthy connection never reconnects, so nothing is deferred)")}await new Promise((ye,Dt)=>{setImmediate(()=>ye())})}else I=!1}else I=!1}else I=!1}else I=!1}},Fn=w=>{if(!ae.has(w)){ae.add(w),zn(ki(w).then(()=>{ae.delete(w)}),C=>(ae.delete(w),Promise.resolve()));return}},ii={},Vr=async()=>{Object.entries(ii).forEach(F=>cr(ii,F[0]));let w=Object.entries(y),C,P=0;for(;C===void 0&&P<w.length;){let F=w[P];if(F!==void 0){let D=F[0],ie=await Be(D,"phx_join",Ht(D,fn(F[1])),h,void 0);if(ie.TAG==="Ok"){let pe=Qm(ie._0);pe!==void 0?ii[D]=pe:C={TAG:"Failed",message:"phoenix rejoin failed for "+D}}else C=ie._0}P=P+1|0}let I=C;return I!==void 0?{TAG:"Error",_0:I}:{TAG:"Ok",_0:void 0}},_o={contents:()=>Promise.resolve()},ra=()=>{let w=M.closed,C=M.reconnectTimer;if(w||C!==void 0)return;j();let P=Math.min(1e4,250*2**M.reconnectAttempts);M.reconnectAttempts=M.reconnectAttempts+1|0,M.reconnectTimer=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()===SP||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 ye=M.websocket;if(ye!==void 0&&ye===D){let Dt=IB(x(Oe.data,"undefined"));if(Dt.TAG==="Ok"){let qt=Dt._0,dr=qt.payload,jr=qt.event,Bt=qt.topic,Kt=qt.ref;if(Kt!==void 0&&(jr==="phx_reply"||jr==="phx_error")){let ur=b[Kt];if(ur!==void 0){cr(b,Kt),clearTimeout(ur.timer);let Jt=jr==="phx_error",gr=$B(dr)&&ur.event!=="phx_join";if(Jt)ur.settle({TAG:"Error",_0:{TAG:"Failed",message:"phoenix push failed"}});else if(gr)ur.settle({TAG:"Error",_0:{TAG:"Failed",message:"phoenix push failed: "+yS(dr)}});else{let Hr=y[Bt],oi=Qm(dr),ai;if(Hr!==void 0&&oi!==void 0&&ur.event==="phx_join"){let Hl=Tr(Bt,oi);It(Bt,oi);let Bl=Hl?{TAG:"Ok",_0:void 0}:_e(Bt,oi);Bl.TAG==="Ok"?(Bt.startsWith("local_runner:")&&(de(oi.controls_truncated,!0)||Hl)&&Fn(Bt),ai=!1):(ur.settle({TAG:"Error",_0:{TAG:"Failed",message:Bl._0}}),ai=!0)}else ai=!1;ai||ur.settle({TAG:"Ok",_0:dr})}}}return q(Bt,jr,Kt,dr)}else return f("phoenix.frame_decode_failed",Object.fromEntries([["message",Dt._0],["dropped",!0]]))}}),D.on("SocketClose",Oe=>{let ye=M.websocket;if(ye!==void 0&&ye===D)return tn({TAG:"Transport",_0:{phase:"Reply",reason:"SocketClosedReason",message:"phoenix websocket closed"}},Oe.code,Oe.reason)}),D.on("SocketError",Oe=>{let ye=M.websocket;if(ye!==void 0&&ye===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 Vr();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(ii).forEach(Dt=>{Oe[Dt[0]]=Dt[1]});let ye={contents:!1};return W.forEach(Dt=>{if(ye.contents)return;let qt;try{qt={TAG:"Ok",_0:Dt(Oe)}}catch{qt={TAG:"Error",_0:void 0}}if(qt.TAG!=="Ok"){ye.contents=!0;return}zn(qt._0,dr=>Promise.resolve())}),ye.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 qt="join-registration-"+U.contents.toString();U.contents=U.contents+1|0,F=qt}let D=y[w],ie=D!==void 0?fn(D):[],pe=await at(w,"phx_join",Ht(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 ye=Tr(w,Pe);It(w,Pe);let Dt=ye?{TAG:"Ok",_0:void 0}:_e(w,Pe);return Dt.TAG!=="Ok"?{TAG:"Error",_0:{TAG:"Failed",message:Dt._0}}:((de(Pe.controls_truncated,!0)||ye)&&Fn(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||(cr(P,C),Object.entries(P).length!==0)))return cr(y,w),cr(v,w)},push:at,pushIfConnected:(w,C,P)=>M.connected?Be(w,C,P,h,void 0):Promise.resolve({TAG:"Error",_0:{TAG:"Transport",_0:{phase:"WaitForConnection",reason:"NotConnected",message:"phoenix client is not connected"}}}),onControl:w=>{B.push(w)},onEvent:w=>{oe.push(w)},onReconnect:w=>{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 K=await M.ready;return K.TAG==="Ok"?{TAG:"Ok",_0:J}:{TAG:"Error",_0:K._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 Pu(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 vS={contents:0};function HB(){let e=Date.now()*1e3,t=vS.contents>=e?vS.contents+1:e;return vS.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",{})),Pu(e,"processed",void 0,t.contents);return;case"TurnFailed":Pu(e,"failed",r.failure.reason,t.contents);return;case"TurnInterrupted":Pu(e,"interrupted","Claude Code interrupted by Linzumi",t.contents);return;case"HarnessDied":Pu(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 Pu(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 Cre=10*6e4;function KB(e,t){let r=setTimeout(e,t);return r.unref(),r}function JB(e){clearTimeout(e)}var Ru={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 wS(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 xS(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 SS(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:SS(e.LINZUMI_FATE_LADDER_MAX_RECOVERY_RUNGS,4),maxLadderMs:SS(e.LINZUMI_FATE_LADDER_BUDGET_MS,eK),maxRateLimitHoldMs:SS(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 TS(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:TS(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:wS(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 en(e,{rung:"UserSwitchStep",outcome:o,atMs:r,detail:i!==void 0?wS(n)+" - "+i:wS(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=xS(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 OS(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=En(e=>({decision:e.f("decision",At),label:e.f("label",At),description:e.f("description",pr(At))})),dK=En(e=>({requestId:e.f("requestId",At),kind:e.f("kind",At),summary:e.f("summary",At),reason:e.f("reason",pr(At)),port:e.f("port",pr(Rs)),pid:e.f("pid",pr(Rs)),command:e.f("command",pr(At)),cwd:e.f("cwd",pr(At)),processName:e.f("processName",pr(At)),processIconKey:e.f("processIconKey",pr(At)),processIconPath:e.f("processIconPath",pr(At)),choices:e.f("choices",pr(wc(lK))),allowedActorSlug:e.f("allowedActorSlug",pr(At)),allowedActorUserId:e.f("allowedActorUserId",pr(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"]),Ere=E0([En(e=>(e.tag("status","queued"),{TAG:"Queued",reason:e.f("reason",pr(At))})),En(e=>(e.tag("status","processed"),{TAG:"Processed",reason:e.f("reason",pr(At))})),En(e=>(e.tag("status","processing"),{TAG:"Processing",reason:e.f("reason",uK),approval:e.f("approval",pr(dK))})),En(e=>(e.tag("status","ignored"),{TAG:"Ignored",reason:e.f("reason",At)})),En(e=>(e.tag("status","failed"),{TAG:"Failed",reason:e.f("reason",At),retryable:e.f("retryable",pr(A0)),fate:e.f("fate",pr(f$))})),En(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=ti(e,"type");if(t===void 0)return"";switch(t){case"collabAgentToolCall":return x(ti(e,"prompt"),"");case"commandExecution":return x(ti(e,"aggregatedOutput"),"");case"dynamicToolCall":return rn(ts(e,"contentItems"),"",Cu);case"fileChange":return rn(ts(e,"changes"),[],i=>ze(i,o=>{if(typeof o=="object"&&o!==null&&!Array.isArray(o))return ti(o,"path")})).join(`
|
|
352
|
+
`);case"mcpToolCall":return rn(k(fS(e,"result"),i=>ts(i,"content")),"",Cu);case"reasoning":let r=rn(ts(e,"summary"),[],b$),n=rn(ts(e,"content"),[],b$);return r.concat(n).filter(i=>i!=="").join(`
|
|
353
353
|
|
|
354
|
-
`);case"subAgentActivity":return x(
|
|
354
|
+
`);case"subAgentActivity":return x(ti(e,"agentPath"),"");case"agentMessage":case"plan":case"terminalInput":return x(ti(e,"text"),"");case"userMessage":return rn(ts(e,"content"),"",Cu);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(ti(a,"id"),"");r.push({kind:_K(ti(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 Rre="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]
|
|
355
355
|
`+t;case"error":return"[error] "+t;case"file_change":return`[file change]
|
|
356
356
|
`+t;case"system_notice":return"[notice] "+t;case"terminal_input":return`[terminal input]
|
|
357
357
|
`+t;case"tool_call":return`[tool call]
|
|
358
358
|
`+t;case"tool_result":return`[tool result]
|
|
359
|
-
`+t;default:return"["+e+"] "+t}}function 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=>
|
|
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=>Eu(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 CS from"node:path";function OK(e){return e.replace(/[^a-zA-Z0-9]/g,"-")}function CK(e,t){return CS.join(e,".claude","projects",OK(t))}var EK="0.0.0-linzumi-cross-harness-switch";function x$(e,t,r,n,i){let o=Dn(t);if(o.TAG!=="Ok")return{TAG:"Error",_0:"the thread's working directory is not resolvable: "+t};let a=o._0,s=CK(e,a),l=Nt(s);if(l.TAG!=="Ok")return{TAG:"Error",_0:"session store dir creation failed: "+l._0.message};let d=CS.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(`
|
|
360
360
|
`)+`
|
|
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
|
|
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
|
|
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 PS(e,t){let r=t.replace(new RegExp("[^A-Za-z0-9._-]+","g"),"-").replace(new RegExp("^[-.]+|[-.]+$","g"),"").slice(0,80),n=qn(t).slice(0,8);return $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 ES(e){if(typeof e=="string")return e}function $l(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=ES(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:ES(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=$l(e.enqueued,0)|0,o.totalAcked=$l(e.acked,0)|0,o.totalDroppedBestEffort=$l(e.dropped,0)|0,o.totalPermanentFailures=$l(e.failed,0)|0,o.totalExpiredOnRecovery=$l(e.expired,0)|0,a($l(e.lastSeq,0));case"item_seq":return;case"kv":let h=ES(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=Xt(e);if(n.TAG==="Ok"){let o=new Map,a=n._0.split(`
|
|
363
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};
|
|
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};Nt($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 Pw(ae,L.join("")),B;return B=U.TAG==="Ok"?await Np(ae,s.contents):{TAG:"Error",_0:U._0},B.TAG==="Ok"?(r("outbox_journal_compacted",Object.fromEntries([["path",s.contents],["pendingEntries",A.pendingEntries.length]])),{TAG:"Ok",_0:void 0}):(l.contents=R.concat(l.contents),c.contents=o,{TAG:"Error",_0:B._0.message})},y=async()=>{u.contents=!1;let A;if(l.contents.length!==0){let R=l.contents.join("");l.contents=[];let 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=Nt($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 Ml(e){switch(e.TAG){case"HarnessNotification":return"codex";case"CompletionSnapshot":return"snapshot";case"Lifecycle":return"lifecycle"}}function j$(e){return e}function RS(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",jl="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 $S(e){if(typeof e=="string"&&e.trim()!=="")return e}function _t(e,t){return k(e[t],$S)}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$=`
|
|
365
365
|
|
|
366
366
|
[Linzumi truncated command output: output was too large to persist fully. Owners should search runner logs for codex.command_output_truncated failure_class=phoenix_insert_body_limit.]
|
|
367
367
|
|
|
@@ -371,29 +371,29 @@ worker output: `+i}function _R(e,t){return"thread Codex worker did not report re
|
|
|
371
371
|
|
|
372
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+`
|
|
373
373
|
|
|
374
|
-
`+t:e;return L$(r.replaceAll(lp,dp))}function Du(e){return G(e,t=>L$(t.replaceAll(lp,dp)))}function
|
|
374
|
+
`+t:e;return L$(r.replaceAll(lp,dp))}function Du(e){return G(e,t=>L$(t.replaceAll(lp,dp)))}function MS(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 jS(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 zS(e,t){return["$ "+e,t].filter(r=>r.trim()!=="").join(`
|
|
375
375
|
|
|
376
|
-
`)}function
|
|
376
|
+
`)}function NS(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:zS(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 GS(e,t,r,n,i){return V$(e,n,i,NS(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
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
|
|
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",
|
|
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 FS(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 DS(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",DS(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 qS(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 LS(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 IS(e){let t=k(e,$S);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(`
|
|
380
380
|
`);if(t!=="")return`*** Begin Patch
|
|
381
381
|
`+t+`
|
|
382
382
|
*** End Patch
|
|
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=
|
|
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=IS(r.input);return i!==void 0?i:IS(r.arguments)}function US(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(`
|
|
384
384
|
|
|
385
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(`
|
|
386
386
|
`);return e.trim()===""?n:[e,"",n].join(`
|
|
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
|
|
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=MS(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:qS(r,u,"completed")}];case"agentTaskUpdate":let c=x(_t(e,"title"),"Agent task"),f=Du(_t(e,"body")),p=_t(e,"progressLabel"),m=jS(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:LS(r,b,"completed")}];case"commandExecution":let y=x(E(e,"command"),"command"),v=x(_t(e,"aggregatedOutput"),""),S=NS(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
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
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=
|
|
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
|
|
394
|
-
`),Tl(t,"SIGINT")}function l6(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}async function d6(e,t,r){let n=
|
|
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),
|
|
396
|
-
`),h(),1)}return
|
|
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 zl={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 ZS(e,t){t!==""&&e.parts.push(t)}function WS(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 Nl(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(US(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)!==Nl(t))return e;switch(e.TAG){case"AssistantContent":return t.TAG!=="AssistantDelta"||ZS(e.text,t.text),e;case"ReasoningContent":return t.TAG!=="ReasoningDelta"||ZS(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"||ZS(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=US(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:MS(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:jS(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 Gl(e,t,r){switch(t.TAG){case"AssistantContent":let n=WS(t.text);return{renderedBody:n,renderedStructured:Z$(e,n,r)};case"ReasoningContent":let i=WS(t.text);return{renderedBody:i,renderedStructured:W$(e,i,r)};case"CommandOutputContent":let o=t.chunks,a=o[o.length-1|0],s=GS(e,t.command,t9(o),{cwd:zl.cwd,status:zl.status,processId:t.processId,durationMs:zl.durationMs,exitCode:zl.exitCode,stream:x(G(a,y=>y.stream),"")},r),l=x(E(s,"command"),""),d=xr(s,"output");return{renderedBody:zS(l,typeof d=="string"?d:""),renderedStructured:s};case"FileChangeContent":let c=WS(t.patchText),f;return f=r==="completed"||t.status!=="started"?"completed":"started",{renderedBody:c,renderedStructured:FS(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:DS(m),renderedStructured:B$(e,m,r)};case"AgentStatusContent":let h=t._0,_=Du(h.body);return{renderedBody:Fu(h.title,_),renderedStructured:qS(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:LS(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 VS(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 HS(e,t,r,n){if(r==="webSearch")return"local-codex-search-"+qn(e+":"+t+":web-search").slice(0,32);let i;switch(r){case"reasoning":i="reasoning:";break;case"commandOutput":i="command:";break;case"fileChange":i="file-change:";break;case"terminalInput":i="terminal:";break;case"assistant":case"webSearch":i="";break;case"agentStatus":i="agent-status:";break;case"agentTaskUpdate":i="agent-task:";break}return"local-codex-stream-"+qn(e+":"+t+":"+i+n).slice(0,32)}function 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",Dl="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),jn)}function K9(e){let t=vM(e);return t!==void 0?bM(t):H9.test(e)?"TransientRetryClass":"DeterministicRetryClass"}function BS(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 KS={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=BS(r)!=="deterministic",u=hp(t,"preFirstByteStall")&&d,c=hp(t,"midStreamResumableStall"),f=c&&pM(r),p=BS({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 Fl(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||RS(_.emittedStreamState))return;let g=Gl(_.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:jl,data:m,coalesceKey:void 0,resolution:"MustAck"};i.push(h),i.push({TAG:"TurnTerminal",turnId:t.turnId,outcome:r,reason:l,retryableEmptyTurn:s.autoRetryPreFirstByteStall,autoResumeMidStreamStall:s.autoResumeMidStreamStall,fate:s.messageStateFate}),e.turns.delete(t.turnId),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:HS(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=Gl(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,Nl(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=Nl(t),c;return c=u==="terminalInput"?"completed":"streaming",xM(e,l,d,c,r,n)}let o=[["turn_id",e.turnId],["stream_kind",Nl(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=Gl(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",KS);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 _e=t.items.find(Be=>Be.posted&&!l.has(Be.itemKey)&&Be.identity.streamKind===q.projStreamKind?de(Be.identity.itemId,Se):!1);if(_e!==void 0){l.add(_e.itemKey),d.set(Ce,_e);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=Gl(q.wireItemKey,q.content,"completed").renderedBody.trim(),_e=Ce.projBody.trim();return _e.startsWith(Se)?!0:Se.startsWith(_e)};s.forEach((q,Ce)=>{if(d.has(Ce))return;let Se=q.projStreamKind,_e=de(c.get(Se),u.get(Se));if(q.projItemId!==void 0&&!_e)return;let Be=t.items.find(Ht=>Ht.posted&&!l.has(Ht.itemKey)&&Ht.identity.streamKind===q.projStreamKind?Ht.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(Ht=>Ht[1].itemKey===q.itemKey);if(Ce!==void 0){let Ht=s[Ce[0]];if(Ht===void 0)return;let fn=Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["item_key",q.itemKey],["item_id",q.wireItemKey],["stream_kind",q.identity.streamKind],["item_index",q.identity.itemIndex],["source_seq",t.sourceSeq],["client_message_id",q.clientMessageId],["body",Ht.projBody],["structured",VS(Ht.projStructured,q.wireItemKey)],["stream_snapshot_index",Lu(q)],["terminal_outcome","completed"]]),ki={TAG:"Enqueue",kind:is,data:fn,coalesceKey:void 0,resolution:"MustAck"};i.push(ki),q.emittedStreamState="completed",q.lastEmittedBody=Ht.projBody;return}if(!q.posted||RS(q.emittedStreamState))return;let Se=Gl(q.wireItemKey,q.content,"completed"),_e=Object.fromEntries(gp(n,t,q,Se).concat([["stream_snapshot_index",Lu(q)],["terminal_outcome","completed"]])),Be={TAG:"Enqueue",kind:is,data:_e,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,_e=Se!==void 0?Se:t.turnId+":"+q.projStreamKind+":snapshot:"+q.snapshotIndex.toString(),Be=q.projItemId,Ht=Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["item_key",t.turnId+":"+q.projStreamKind+":"+(Be!==void 0?Be:"snapshot:"+q.snapshotIndex.toString())],["item_id",_e],["stream_kind",q.projStreamKind],["snapshot_index",q.snapshotIndex],["source_seq",t.sourceSeq],["client_message_id",HS(n.instanceId,t.turnId,q.projStreamKind,_e)],["body",q.projBody],["structured",VS(q.projStructured,_e)],["stream_snapshot_index",1]]),fn={TAG:"Enqueue",kind:zu,data:Ht,coalesceKey:void 0,resolution:"MustAck"};i.push(fn)});let m=t.items.some(q=>q.identity.streamKind==="assistant"?q.posted:!1)||s.some(q=>q.projStreamKind==="assistant"),h=t.agentActionToolCallSeen||t.items.some(q=>q.posted?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,B;if(U!==void 0)switch(U.dispositionKind){case"isolated_retry":B=!0;break;case"storm":case"isolated_terminal":B=!1;break}else B=!1;ae?e.consecutiveIsolatedRejections=e.consecutiveIsolatedRejections+1|0:e.consecutiveIsolatedRejections=0;let oe=!g&&v===void 0&&t.lastUpstreamErrorReason===void 0&&t.lastErrorDiagnosticText===void 0&&!A&&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||B,se=n.autoRetryAttemptsForSeq,Ae=se!==void 0?se(t.sourceSeq):0,Ue=re&&e.costCap402Seen&&Ae<2,Ge=re&&!Ue;if(L){let q=t.edgeBlockEvidence,Ce=t.edgeBlockEvidence,_e={TAG:"Log",event:"codex.edge_blocked_captured",fields:Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["source_seq",t.sourceSeq],["http_status",q!==void 0?q.edgeStatus:null],["signature",Ce!==void 0?Ce.edgeSignature:null]])};i.push(_e)}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||B||L,It;if(He||R)It="transient_upstream";else if(oe){let q=t.lastUpstreamErrorHttpStatus;It=q!==void 0?Au(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",B]],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)]],_e={TAG:"Log",event:"codex.empty_turn_loop_guard_tripped",fields:Object.fromEntries(Ce)};i.push(_e)}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",B],["rejection_disposition",U!==void 0?U.dispositionKind:null],["consecutive_isolated_rejections",e.consecutiveIsolatedRejections],["retryable_empty_turn",He],["empty_turn_loop_guard_tripped",j],["cost_cap_auto_retry_suppressed",Ue]],_e={TAG:"Log",event:"codex.turn_completed_without_assistant_output",fields:Object.fromEntries(Ce)};i.push(_e)}let Tr;if(Ye!==void 0){let q=k(n.ladderHistoryForSeq,_e=>_e(t.sourceSeq,It)),Ce=t.lastUpstreamErrorSummary,Se;if(Ce!==void 0)Se=[["upstream_error",Ce]];else{let _e=e.lastUpstreamErrorSummary;Se=_e!==void 0?[["upstream_error",_e]]:[]}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 Ft=Object.fromEntries([["thread_key",n.threadKey],["turn_id",t.turnId],["seq",t.sourceSeq]].concat(Tr)),Xe={TAG:"Enqueue",kind:jl,data:Ft,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===Dl)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",Fl(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",Fl(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",Fl(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",Fl(o)],["evidence_class",BS(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",Fl(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,Fl(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(Nl(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",KS)}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",KS)),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",Ml(t)]],s={TAG:"Log",event:"pipeline.loop.event_after_close",fields:Object.fromEntries(o)};n.push(s);return;case"dead":let l=[["source",Ml(t)]],u={TAG:"Log",event:"pipeline.loop.event_after_death",fields:Object.fromEntries(l)};n.push(u);return}}function 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 JS=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},B={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=PS(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=B.contents;B.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:()=>{}},Ft=(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?Ft(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?Ft(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||zn(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}},_e=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 _e(H);te.TAG!=="Ok"&&t("outbox_close_flush_timeout",Object.fromEntries([["threadKey",i.contents],["depth",s.contents.length-l.contents|0],["error",te._0]])),R.contents=!0;let ne=l.contents;for(;ne<s.contents.length;){let at=s.contents[ne];at!==void 0&&Ye(at),ne=ne+1|0}U.contents>0&&await Promise.race([new Promise((at,ct)=>{B.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()},Ht=(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=Ht(n[H.kind],Ct.entry,H.data);let Vl=L.contents;Vl!==void 0&&Vl.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:_e,pause:()=>{S.contents=!0},resume:()=>{if(!S.contents)return;S.contents=!1;let H=l.contents;for(;H<s.contents.length;){let te=s.contents[H];te!==void 0&&(te.entry.attempts=0,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(PS(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(Ar(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===Dl)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}},B=N=>{switch(N.TAG){case"HarnessNotification":let j=N._0,re=j.method;if(re!=="item/started"&&re!=="item/completed"&&re!=="response_item")return;let se=x(j.params,{}),Ae=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:Dl,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",Ml(j)],["message",ss(Ae)]]),re=void 0}re!==void 0&&(L(),U(j),B(j),re.forEach(se=>{try{switch(se.TAG){case"Enqueue":return e.outboxEnqueue({kind:se.kind,data:se.data,coalesceKey:se.coalesceKey,resolution:se.resolution});case"RequestSnapshot":return e.requestSnapshot(se.turnId);case"TurnTerminal":return e.onTurnTerminal(se.turnId,se.outcome,se.reason,se.retryableEmptyTurn,se.autoResumeMidStreamStall,se.fate);case"Log":try{return e.log(se.event,se.fields)}catch{return}}}catch(Ae){let Ue=ee(Ae),Ge;switch(se.TAG){case"Enqueue":Ge="enqueue";break;case"RequestSnapshot":Ge="requestSnapshot";break;case"TurnTerminal":Ge="turnTerminal";break;case"Log":Ge="log";break}return R("pipeline.loop.effect_failed",[["thread_key",e.threadKey],["effect",Ge],["message",ss(Ue)]])}}),oe())}else N=!1}v.contents=!1},V;if(y>0){let N=setInterval(()=>{if(oe())return 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",Ml(N)]])}catch(j){let re=ee(j);return R("pipeline.loop.submit_failed",[["thread_key",e.threadKey],["message",ss(re)]])}},metrics:()=>({queueDepth:u.length,phase:t.phase,activeTurns:t.turns.values().toArray().map(N=>({turnId:N.turnId,sourceSeq:N.sourceSeq,startedAtMs:x(f.get(N.turnId),c()),lastActivityAtMs:G(m.get(N.turnId),j=>j.atMs),lastActivityKind:G(m.get(N.turnId),j=>j.activityKind),openItems:M(N.turnId)})),bufferedTurns:t.bufferedTurns.entries().toArray().map(N=>{let j=N[0];return{turnId:j,bufferedEventCount:N[1].length,firstBufferedAtMs:x(p.get(j),c()),lastActivityAtMs:G(m.get(j),re=>re.atMs),lastActivityKind:G(m.get(j),re=>re.activityKind),openItems:M(j)}})}),noteTurnActivity:(N,j)=>{try{return ae(N,j)}catch(re){let se=ee(re);return R("pipeline.loop.note_activity_failed",[["thread_key",e.threadKey],["message",ss(se)]])}},drainAndClose:N=>{let j=A.contents;if(j!==void 0)return j;let re=(async()=>{S.contents=!1,V!==void 0&&clearInterval(ue(V)),await Promise.resolve(),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 XS(e){return e}function QS(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=QS(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,B=_.candidateLastActivityAtMs,oe=f.oldestEntryAgeMs;return e.log("pipeline.turn_stalled",Object.fromEntries([["level","warn"],["thread_key",e.threadKey],["turn_id",_.candidateTurnId],["source_seq",ae!==void 0?ae:null],["buffered",_.buffered],["turn_age_ms",g],["quiet_ms",y],["last_activity_kind",U!==void 0?U:null],["last_activity_age_ms",B!==void 0?Math.max(0,m-B):null],["threshold_ms",n],["effective_threshold_ms",Z],["open_item_count",_.candidateOpenItems.length],["open_item_kinds",QS(_.candidateOpenItems.map(W=>W.kind)).map(XS)],["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(XS)],["open_item_count",_.candidateOpenItems.length],["open_item_kinds",QS(_.candidateOpenItems.map(Z=>Z.kind)).map(XS)]]))})},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 ni(e,t){return k(e[t],wr)}function Vu(e,t){return k(e[t],ha)}function ql(e,t){return k(e[t],ke)}function ew(e,t){Object.entries(t).forEach(r=>{e[r[0]]=r[1]})}function Wu(e){let t={};return ew(t,e),t}function CJ(e){let t=e.body;return typeof t=="string"?t:""}function EJ(e){return x(ql(e,"structured"),{})}function PJ(e){return e===Mu||e===ju||e===is?!0:e===zu}function RJ(e,t){let r=ni(t,"turn_id");r!==void 0&&(e.turn_id=r);let n=ni(t,"item_key");n!==void 0&&(e.item_key=n);let i=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=ni(t,"client_message_id");if(a===void 0)return{TAG:"BuildSkip",_0:"missing_client_message_id"};let s=ni(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=ql(t,"local_runner_runtime_metadata");c!==void 0&&ew(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),ew(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=ni(t,"status");if(o===void 0)return{TAG:"BuildSkip",_0:"malformed_message_state_entry"};if(a===void 0)return{TAG:"BuildSkip",_0:"malformed_message_state_entry"};let s=de(t.suppress_terminal_for_recovered_turn,!0),l=ni(t,"turn_id"),d=e.isRecoveredTurn,u=l!==void 0&&d!==void 0?d(l)===!0:!1;if(s||u)return{TAG:"BuildSkip",_0:"terminal_for_recovered_turn"};let c={};c.workspace=n.workspaceSlug,c.channel=n.channelSlug,c.thread_id=i,c.instance_id=e.instanceId;let f=n.harnessSessionId;f!==void 0&&(c.codex_thread_id=f),c.seq=o,c.status=a;let p=ni(t,"reason");p!==void 0&&(c.reason=p);let m=t.retryable;typeof m=="boolean"&&m&&(c.retryable=!0);let h=t.fate;typeof h=="string"&&zt(ip(h))&&(c.fate=h);let _=ql(t,"ladder");_!==void 0&&(c.ladder=_),t.failure_class==="edge_blocked"&&(c.failure_class="edge_blocked");let b=ni(t,"upstream_error");b!==void 0&&(c.upstream_error=b);let y=ni(t,"turn_id");y!==void 0&&(c.turn_id=y);let v=n.leaseEpoch;return v!==void 0&&(c.lease_epoch=v),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],[jl,$J(e)]])}function jM(e,t){if(e.error!==void 0)return[];let n=k(ql(e,"result"),a=>ql(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 Dre=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(Ar(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(ni(f.data,"item_key"))],["turn_id",$M(ni(f.data,"turn_id"))],["message",p]])),log:e.log,now:void 0,maxInFlightPushes:x(e.outboxMaxInFlightPushes,16),journalCompactionThreshold:void 0,journalRecoveryMaxAgeMs:e.journalRecoveryMaxAgeMs}),n=f=>{let p=!1;if(f.kind===jl){let b=ni(f.data,"turn_id"),y=e.isRecoveredTurn;p=b!==void 0&&y!==void 0?y(b)===!0:!1}if(p){let b=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=ql(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=>{zn(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:Dl,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 Nn=Hu("harness_session_id"),ls=kp(Nn);function Zi(e,t){let r=e[t];if(typeof r=="string")return r}function tw(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([tw(t,"code"),k(r,d=>tw(d,"code")),tw(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=PR(s,r);l.TAG==="Ok"&&(i.sandboxPolicy=l._0)}return i}async function Ll(e,t,r,n){let i=e.deps,o={};o.workspace=i.workspaceSlug,o.channel=i.channelSlug,o.thread_id=i.threadId,o.instance_id=i.instanceId,o[Nn]=i.harnessSessionId,o.seq=t,o.status=r,n!==void 0&&(o.reason=n);let a=i.actorSlug;a!==void 0&&(o.actor_slug=a);let s=i.actorUserId;s!==void 0&&(o.actor_user_id=s);let l=await i.transport.push(i.commanderTopic,"message_state",o,void 0);if(l.TAG!=="Ok")return i.log("kandan.message_state_push_failed",Object.fromEntries([["seq",t],["status",r],["message",ri(l._0)]]))}async function Qo(e,t,r){return e.processingReason=r,e.processingSeq=t,await Ll(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=jn(t);return r!==void 0&&isFinite(r)&&r>0?Math.trunc(r):5e3}function qM(e){let t={};return t.workspace=e.workspaceSlug,t.channel=e.channelSlug,t.thread_id=e.threadId,t.instance_id=e.instanceId,t[Nn]=e.harnessSessionId,t}async function UJ(e){let t=e.processingSeq,r=e.processingReason;if(t!==void 0&&r!==void 0)return await Ll(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",ri(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",ri(i._0)]]))})()}function VJ(e,t,r){switch(t){case"item/completed":let n=k(r.item,ke);if(n===void 0||!zt(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],[Nn,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&&nn(e.processingReason,u.reason)){Qo(e,t.seq,u.reason);return}}),r.log("codex.turn_started",Object.fromEntries([["turn_id",s]]));let d=e.pipeline;d!==void 0&&d.notifyTurnMappingReady(s),n={TAG:"Ok",_0:void 0}}else n={TAG:"Error",_0:"turn/start reply carried no turn id"}}else n={TAG:"Error",_0:"turn/start failed: "+a.message}}else n={TAG:"Error",_0:"turn/start failed: "+o._0};return e.dispatchingTurnStart=!1,n}function 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",JS]])),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)<JS,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",xS(y)]]));let v={};v.workspace=a.workspaceSlug,v.channel=a.channelSlug,v.thread_id=a.threadId,v.instance_id=a.instanceId,v[Nn]=a.harnessSessionId,v.seq=s,v.status="failed",n!==void 0&&(v.reason=n),v.fate=o,v.ladder=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 rw(e){let t="chat:"+e.workspaceSlug+":"+e.channelSlug,r=await e.transport.join(t,pP(e.commanderId,e.threadId,0),{rejoinPayload:void 0,registrationId:void 0});if(r.TAG!=="Ok")return{TAG:"Error",_0:"chat join failed: "+ri(r._0)};let n={};n.workspace=e.workspaceSlug,n.channel=e.channelSlug,n.thread_id=e.threadId,await e.transport.push(e.commanderTopic,"session:thread_context",n,void 0);let i={};i.workspace=e.workspaceSlug,i.channel=e.channelSlug,i.thread_id=e.threadId,i[Nn]=e.harnessSessionId;let o=await e.transport.push(e.commanderTopic,"session:bind",i,void 0);o.TAG!=="Ok"&&e.log("kandan.session_bind_push_failed",Object.fromEntries([["thread_id",e.threadId],["message",ri(o._0)]]));let a={deps:e,turnSeqs:new Map,pipeline:void 0,active:void 0,processingReason:void 0,processingSeq:void 0,typingActive:!1,typingHeartbeatInFlight:!1,typingHeartbeatTimer:void 0,dispatchingTurnStart:!1,pendingStartingPaints:[],autoRetryAttempts:new Map,retryCandidates:new Map,fateLadderRuns:new Map,activityJournalTurns:[],activityJournalItemCount:0,failoverOffers:new Map,switchedTargetSession:void 0},s=e.workspaceSlug+":"+e.channelSlug+":"+e.threadId,l=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:ri(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,_[Nn]=p,m!==void 0&&(_.source_message_seq=m),h!==void 0&&(_.metadata=h),_},runtimeMetadataForSourceSeq:void 0,sourceSeqForTurn:f=>a.turnSeqs.get(f),autoRetryAttemptsForSeq:f=>x(a.autoRetryAttempts.get(f),0),midStreamResumeAttemptAtMsForSeq:void 0,ladderHistoryForSeq:(f,p)=>ke(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=OS(f,p);if(g!==void 0){let b=g;nn(a.processingReason,b)&&Qo(a,m.sourceSeq,b)}}}else{let h=a.dispatchingTurnStart,_=k(p.turnId,wr),g=OS(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],[Nn,e.harnessSessionId]])),await Ll(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:TS("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 B=U._0;a.fateLadderRuns.set(v,B),e.log("codex.user_cross_harness_switch_invoked",Object.fromEntries([["queued_seq",v],["source_harness",R],["target_harness",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":Ll(a,v,"processed",void 0);return;case"TurnFailed":Ll(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=AS(B,"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 _e=Xe.sessionFile;return _e!==void 0&&(Se.session_file=_e),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=AS(B,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 Ll(a,v,"failed","cross-harness switch "+He+": "+It);let Ft={};return Ft.ok=!1,Ft.refusal=He,Ft.reason=It,Ft.ladder=pt(Tr),{TAG:"Ok",_0:Ft}},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 iw from"node:os";import*as Ul 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:Ul.join(iw.homedir(),".linzumi","codex-home")}function QJ(e){let t=G(e.CODEX_HOME,r=>r.trim());return t!==void 0&&t!==""?t:Ul.join(iw.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=Nt(t);if(r.TAG!=="Ok")return{TAG:"Error",_0:r._0};let n=yo(Ul.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()},nw={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";nw.contents=nw.contents+1|0;let o=nw.contents,a=Ul.join(i,"auth.json"),s=Ul.join(e,"auth.json"),l=s+".tmp-"+o.toString(),d=Xt(a);if(d.TAG==="Ok"){let c=Nt(e);if(c.TAG!=="Ok")return{TAG:"InstallFailed",stage:"mkdir",code:c._0.code};let f=pn(l);if(f.TAG!=="Ok")return{TAG:"InstallFailed",stage:"clear_tmp",code:f._0.code};let p=yo(l,d._0,{encoding:"utf8",mode:384,flag:"wx"});if(p.TAG!=="Ok")return{TAG:"InstallFailed",stage:"write_tmp",code:p._0.code};if(await n.beforeCommit(),xp.contents>o)return pn(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}):(pn(l),{TAG:"InstallFailed",stage:"rename",code:m._0.code})}let u=d._0;return si(u,"ENOENT")?"SkippedLoggedOut":{TAG:"InstallFailed",stage:"read_source",code:u.code}}import*as 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 ow(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"&&fr("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=CP(t),i=n!==void 0?n:t,o=e.now()+e.readyzTimeoutMs,a;for(;mn(a);){let s=r();s!==void 0?a={TAG:"Error",_0:"codex app-server exited before readyz: "+s}:await e.fetchOk(i)?a={TAG:"Ok",_0:void 0}:e.now()>o?a={TAG:"Error",_0:"timed out waiting for codex app-server readyz"}:await 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 dR();if(s.TAG!=="Ok")return{TAG:"Error",_0:s._0};let l="ws://127.0.0.1:"+s._0.toString(),d=kP(l,n),u={contents:""},c=BM(process.execPath,{command:t,args:d,pollIntervalMs:IP,protectedPidsDir:nR()});ow(e,"process.spawn",t,d,r,[]);let f=JM.spawn(c.command,c.args,{cwd:r,env:xP(e.env,i,o),stdio:TP,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=AP(u.contents+S)});let _=Dm({stop:()=>KM(e,f),pid:Pr(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;ow(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;ow(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:Pr(f.pid),stop:b,onExit:S=>{if(p.contents!==void 0)return S();m.push(S)}}};let v=y._0;return b(),OP(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 aw(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 Zl(e){let t=Tp(aw(e,"modelProvider")),r=k(e.llmProxy,ke),n=k(r,a=>Tp(aw(a,"baseUrl"))),i=k(r,a=>Tp(aw(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){fr(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),jn),t=>isFinite(t)&&t>=1?t<=65535:!1)}async function sw(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=Su(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:zt(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:[nx(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=>{fr(d)},Cm,t,void 0),warnStaleRoot:d=>{fr(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 B=f.contents;if(B!==void 0)return B.stop()},_=async()=>{let U=await sw(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,B=>B.model),reasoningEffort:k(u.runtimeDefaults,B=>B.reasoningEffort),fast:u.fast,provider:u.codexModelProvider});return U.TAG!=="Ok"?{TAG:"Error",_0:U._0}:(f.contents=U._0,{TAG:"Ok",_0:void 0})},g=async()=>{let U=f.contents;if(U===void 0)return{TAG:"Error",_0:"codex app-server was not started"};let B=await Nm(U.url,void 0,void 0,void 0);if(B.TAG!=="Ok")return{TAG:"Error",_0:"codex app-server connect failed: "+B._0};let oe=await Gm(B._0,{audit:c,onWire:(V,M)=>{},keepaliveIntervalMs:3e4});if(oe.TAG!=="Ok")return{TAG:"Error",_0:"codex app-server handshake failed: "+oe._0};let W=oe._0;return p.contents=W,{TAG:"Ok",_0:AR(W)}},y=process.send!=null?{send:f6,isConnected:()=>nn(Pr(process.connected),!1),onMessage:U=>{process.on("message",U)},onceDisconnect:U=>{process.once("disconnect",U)}}:void 0,L={preflightFailure:()=>SR(u.cwd,u.allowedCwds,vR(u.cwd,u.allowedCwds,U=>!1)),startAppServer:_,connectClient:g,onSessionClosed:U=>{let B=p.contents;if(B!==void 0)return B.onClose(U)},ipc:y,commanderManagedPorts:()=>{let U=f.contents;if(U===void 0)return[];let B=h6(U.url);return B!==void 0?[{port:B,pid:G(U.pid,oe=>oe),processName:"Codex app-server",processIconKey:"codex",agentProvider:"codex"}]:[]},log:c,writeStderr:U=>{fr(U)},waitForStop:()=>new Promise((U,B)=>{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:(fr(ae._0+`
|
|
396
|
+
`),h(),1)}return fr(l._0+`
|
|
397
397
|
`),1}var _6=`<linzumi_markdown_media_guidance>
|
|
398
398
|
Some Linzumi users have opted into rich Markdown media rendering. When you are
|
|
399
399
|
writing a visible Linzumi message, channel message, or thread reply, you may use
|
|
@@ -670,7 +670,7 @@ user's decision; the agent only offers and acts on a clear yes.`:"",ae=y?`
|
|
|
670
670
|
Land accepted plans in the project task DAG, update existing tasks in place,
|
|
671
671
|
and never delete tasks you are not very confident are obsolete. After a
|
|
672
672
|
transfer, offer to start the ready tasks; launch them only on the user's
|
|
673
|
-
clear yes.`:"",U=r?g6:_6,
|
|
673
|
+
clear yes.`:"",U=r?g6:_6,B=r?`Use the Linzumi MCP server named "linzumi" when you need authenticated
|
|
674
674
|
workspace context or coding-job metadata tools.
|
|
675
675
|
`+o+`
|
|
676
676
|
When the coding-job scope changes materially, call linzumi_rename_coding_job
|
|
@@ -713,7 +713,7 @@ deployments in the metadata overview.`+v+`
|
|
|
713
713
|
Work only in the approved project folder unless the human explicitly asks for
|
|
714
714
|
something else in the Linzumi thread. Start, inspect, and modify the local app
|
|
715
715
|
from that folder. Report concise progress and exact blockers in the thread.
|
|
716
|
-
`+
|
|
716
|
+
`+B+R+`
|
|
717
717
|
Before stopping, confirm the metadata overview tells the truth for a user who
|
|
718
718
|
only sees that overview: completed work is completed, active work is really
|
|
719
719
|
active, blocked work says why, and no stale in-progress step is left behind.
|
|
@@ -872,17 +872,17 @@ call an MCP message-posting tool to deliver that reply. When the task requires
|
|
|
872
872
|
files, code, commits, pull requests, previews, or verification output, report
|
|
873
873
|
the concrete artifact, command, result, and any exact blocker. Do not emit
|
|
874
874
|
machine-only JSON unless the user or tool explicitly requests it.
|
|
875
|
-
</output_format>`}var 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
|
|
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
|
-
`),
|
|
880
|
-
`,"utf8");return}catch{return}}function
|
|
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=>{
|
|
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=
|
|
883
|
-
`)},S=t.values["log-file"],A;if(S!==void 0){let L=
|
|
884
|
-
`),A=(ae,U)=>{v(ae,U),
|
|
885
|
-
`);return}}}async function
|
|
886
|
-
`);return;case"connect":case"local-codex-runner":break;case"mcp":let r=0,n;try{n=await
|
|
887
|
-
`),
|
|
888
|
-
`),
|
|
875
|
+
</output_format>`}var lw="rescript";function S6(){return new Promise((e,t)=>{setTimeout(()=>e(),0)})}function Gn(e){return e!==void 0?e:null}function Cp(e,t){return k(e[t],ke)}function Mr(e,t){let r=e[t];if(typeof r=="string")return r}function Wl(e,t){let r=e[t];if(typeof r=="number")return r}function Le(e,t){let r=G(Mr(e,t),n=>n.trim());if(r!==void 0&&r!=="")return r}function dj(e){let t=Dn(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 cw(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=wR(t,240);switch(e){case"StartingCodexSession":return"Codex did not create a session. Restart the local runner and try again. Detail: "+r;case"StartingClaudeCodeSession":return"Claude Code did not create a session. Restart the local runner and try again. Detail: "+r;case"BindingThread":return"Codex started, but Linzumi could not attach it to this thread. Try starting the agent again; if it repeats, share this failed message with the runner owner. Detail: "+r;case"StartingFirstTurn":return"Codex started, but the first prompt could not be delivered. Try sending the message again; if it repeats, reconnect the local runner. Detail: "+r}}var x6="start_instance first turn requires a session-owned dispatch (bound Kandan thread session + sourceSeq); the sessionless degraded turn/start fallback was removed (type-2 fallback audit)";function fw(e,t){let r=e[t];if(r!==void 0&&typeof r=="number"&&Ot(r))return r}function ea(e){let t=fw(e,"sourceSeq");return t!==void 0?t:fw(e,"rootSeq")}function dw(e,t,r,n,i,o){let a=ea(e);if(a===void 0)return{TAG:"Ok",_0:void 0};let s=l=>{let d=e[l];return d!==void 0&&typeof d=="string"&&d.trim()!==""?{TAG:"Ok",_0:d.trim()}:{TAG:"Error",_0:t+" control missing "+l}};return he(s("workspace"),l=>he(s("channel"),d=>wt(s("threadId"),u=>{let c={};c.workspace=l,c.channel=d,c.thread_id=u,c.instance_id=i,c.seq=a,c.status=r,c.reason=n,o!==void 0&&(c[Nn]=o);let f=cw(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 T6(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 A6(e){return Pp.join(e,".linzumi","commanderImplFallback.json")}function mj(e){let t=ta.homedir(),r=xI(sS(t),e),n;return n=r.TAG==="Ok",n&&e==="Ts"&&pn(A6(t)),n}function O6(e){let t=G(e.LINZUMI_CODEX_START_REQUEST_TIMEOUT_MS,n=>n.trim());if(t===void 0)return 12e4;let r=jn(t);return r!==void 0&&r>0?r:12e4}async function pj(e,t){let r=process.env,n=fP(e.commanderId),i="codex-"+uw.randomUUID(),o=Su(e.token),a=O6(r),s={contents:!1},l=Um(jR(e.commanderId,r),t,void 0,void 0),d=Um(zR(e.commanderId,r),t,!0,void 0),u=LR(Um(NR(e.commanderId,r),t,void 0,!0)),c=qR(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 ER(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:ri(_._0)};let g=_._0;g.onControl((S,A)=>m.contents(S,A));let b=()=>{let S={};return S.codexAppServer=!0,S.commander_pipeline="pipeline",S.startInstance=f.contents.length!==0,S.allowedCwds=f.contents.map(A=>A),S},y=()=>mP({clientId:e.commanderId,machineFingerprint:void 0,machineFingerprintV2:void 0,runnerPid:process.pid,version:wu(),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=Mr(A,"commander_impl");if(M!==void 0){let j=M.trim()==="rescript"?"Rescript":"Ts",re=sS(ta.homedir()),se=kI(re);if(!de(se,j)){let Ae=mj(j);t("runner.commander_impl_assigned",Object.fromEntries([["impl",El(j)],["previousCache",Gn(G(se,El))],["persisted",Ae],["runningImpl",lw]]))}}}let R=Cp(S,"compute_node");if(R!==void 0){let V=Wl(R,"reset_generation");t("runner.compute_node",Object.fromEntries([["id",Gn(Mr(R,"id"))],["name",Gn(Mr(R,"name"))],["identityQuality",Gn(Mr(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=WR();UR(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=Pr(U())}catch{V=void 0}V!==void 0&&t("commander.chooser.fallback_reported",x(ke(V),{}))}let B=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 B(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 sw(r,(N,j)=>t(N,j),{codexBin:V,cwd:e.cwd,serviceUrl:e.serviceUrl,token:e.token,agentMcpToken:void 0,devServicesScope:e.commanderId,devServicesOwnerPid:process.pid,threadId:void 0,model:void 0,reasoningEffort:void 0,fast:!1,provider:void 0});if(M.TAG==="Ok"){let N=M._0,j=await B(N.url);j.TAG==="Ok"?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,zn(O.then(()=>{Ae.contents=Ae.contents-1|0}),X=>(Ae.contents=Ae.contents-1|0,Promise.resolve()))),Ge=(O,X)=>Ue((async()=>{let J=await g.push(n,O,X,void 0);if(J.TAG!=="Ok")return t("kandan.event_push_failed",Object.fromEntries([["event",O],["message",ri(J._0)]]))})()),ut=async O=>{if(de(e.approvalPolicy,"never")&&de(e.sandbox,"danger-full-access")&&(O.method==="item/commandExecution/requestApproval"||O.method==="item/fileChange/requestApproval"))return t("codex.server_request_auto_accepted",Object.fromEntries([["method",O.method],["turn_id",Gn(k(k(O.params,ke),J=>Mr(J,"turnId")))]])),Object.fromEntries([["decision","accept"]])};j!==void 0&&(j.onNotification(O=>{se.contents=se.contents+1;let X=x(k(O.params,ke),{}),J={};J.instanceId=i,J.seq=se.contents,J.method=O.method,J.params=X,J.receivedAt=new Date().toISOString(),Ge("codex_notification",J),t("codex.notification",Object.fromEntries([["method",O.method]])),re.values().toArray().forEach(K=>K.routeNotification(O.method,X))}),j.onRequest(ut),j.onClose(O=>{if(!s.contents){t("codex.app_server_connection_lost",Object.fromEntries([["cause",O]])),re.values().toArray().forEach(X=>X.failOnHarnessDeath(O));return}}));let 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",wu()],["instanceId",i],["codexUrl",Gn(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 bP();He.contents=wI({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:()=>zt(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)=>FR(e.workspaceSlug,O,X),_e=async(O,X,J,K,w)=>{let C=Le(O,ls);if(C!==void 0){let I=Le(O,"threadId"),F=Le(O,"channel"),D=Le(O,"workspace"),ie=Le(O,"workDescription"),pe=Wl(O,"sourceSeq"),Fe=pe!==void 0?pe:Wl(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 rw({transport:g,commanderTopic:n,commanderId:e.commanderId,instanceId:i,harness:K,log:t,timers:Ru,env:r,workspaceSlug:D,channelSlug:F,threadId:I,harnessSessionId:C,cwd:X,rootSeq:Wl(O,"rootSeq"),defaults:{approvalPolicy:e.approvalPolicy,sandbox:e.sandbox},actorSlug:o.actorUsername,actorUserId:o.actorUserId,leaseEpochFor:ye=>L.current(ye),commitAppliedSourceSeq:ye=>{Tu(u,Se(F,I),ye,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",I],["channel",F],["sourceSeq",ye]]))},switchProbe:Xe});if(Oe.TAG==="Ok"){let ye=Oe._0;re.set(C,ye),w&&K.onNotification(Dt=>ye.routeNotification(Dt.method,x(k(Dt.params,ke),{}))),Re={TAG:"Ok",_0:ye}}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],[Nn,C]]));let Kt={};return Kt.instanceId=i,Kt.controlType="reconnect_thread",Kt.cwd=X,Kt.matchedRoot=J,Kt[ls]=C,Kt.duplicate=!0,{TAG:"Ok",_0:Kt}}let ye=(Kt,Er,ur)=>(async()=>{let Jt=await g.push(Kt,Er,x(ke(ur),{}),void 0);return Jt.TAG==="Ok"?{TAG:"Ok",_0:Jt._0}:{TAG:"Error",_0:ri(Jt._0)}})(),Dt={workspace:D,channel:F,threadId:I},qt=await BI((Kt,Er)=>K.request(Kt,Er),Ru,a,C,DM({approvalPolicy:e.approvalPolicy,sandbox:e.sandbox}),{forceRehydrate:de(O.sessionRehydrate,!0),buildRehydrationText:async Kt=>{let Er=await UI(ye,n,Dt,t);return{TAG:"Ok",_0:ZI(Er,Kt)}},buildRehydrationItems:async Kt=>{let Er=await HI(ye,n,Dt,t);if(Er===void 0)return{TAG:"Ok",_0:void 0};if(Er.nodes.length===0)return{TAG:"Ok",_0:void 0};let ur=MI(Er.nodes.map(WI),G(Er.budget,VI),Kt,Er.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",ur.emittedNodeCount],["omitted_nodes",ur.omittedNodeCount],["redacted_reasoning",ur.redactedReasoningCount],["emitted_token_estimate",ur.emittedTokenEstimate],["max_emission_tokens",ur.maxEmissionTokens]])),{TAG:"Ok",_0:ur.items}},log:t});if(qt.TAG!=="Ok")return{TAG:"Error",_0:qt._0.message};typeof qt._0=="object"&&await Ie.publishRebuilt(Fe);let jr=await Ie.runClaimedTurn(Fe,ie);if(jr.TAG!=="Ok")return{TAG:"Error",_0:jr._0};let Bt={};return Bt.instanceId=i,Bt.controlType="reconnect_thread",Bt.cwd=X,Bt.matchedRoot=J,Bt[ls]=C,{TAG:"Ok",_0:Bt}}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,Ht=new Map,fn=async O=>{if(typeof O=="object"||O==="CodexProvider")return!0;let X=e.claudeCodeAvailable;return X!==void 0?X:(await It,zt(He.contents))},ki=async(O,X,J,K,w)=>{let C=dw(O,X,J,K,i,w);if(C.TAG!=="Ok")return{TAG:"Error",_0:C._0};let P=C._0;return P!==void 0?(await Ge("message_state",P),{TAG:"Ok",_0:void 0}):{TAG:"Ok",_0:void 0}},Fn=async(O,X)=>{let J=ea(O);if(J===void 0)return;let K=Le(O,"workspace"),w=Le(O,"channel"),C=Le(O,"threadId");if(K===void 0||w===void 0||C===void 0)return;let P={};return P.workspace=K,P.channel=w,P.thread_id=C,P.instance_id=i,P.seq=J,P.status="failed",P.reason=X,P.allowed_cwds=f.contents.map(I=>I),await Ge("message_state",P)},ii=O=>{switch(O){case"StartingCodexSession":return"starting_codex_session";case"StartingClaudeCodeSession":return"starting_claude_code_session";case"BindingThread":return["binding_","kandan","_thread"].join("");case"StartingFirstTurn":return"starting_first_turn"}},Vr=async(O,X,J,K,w)=>{let C=X==="reconnect_thread"?"kandan.reconnect_thread_failed":"kandan.start_instance_failed",P=ea(O);return t(C,Object.fromEntries([["stage",ii(J)],["message",K],["thread_id",Gn(Le(O,"threadId"))],["source_seq",P!==void 0?P:null],[Nn,Gn(w)]])),await ki(O,X,"failed",k6(J,K),w),{TAG:"Error",_0:K}},_o=async(O,X,J,K,w,C)=>{let P=e.harnessBin;if(P===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let I=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(Jt=>D.has(Jt)?!1:(D.add(Jt),!0)),pe=X==="start_instance"?dS(Mr(O,"executionMode")):void 0,Fe=X==="start_instance"?uS(Mr(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=K,ye=e.logFile,Dt=F.settingsFast,qt=[],dr=e.codeServerBin,jr={model:F.settingsModel,reasoningEffort:F.settingsReasoningEffort,sandbox:F.settingsSandbox,approvalPolicy:F.settingsApprovalPolicy,allowPortForwardingByDefault:!0},Bt=k(k(O.linzumiAgent,ke),Jt=>Le(Jt,"mcpToken")),Kt={kandanUrl:Ie,token:st,cwd:J,codexBin:P,kandanThreadId:w,workspaceSlug:Oe,logFile:ye,debugTrace:void 0,fast:Dt,allowedCwds:ie,allowedForwardPorts:qt,codeServerBin:dr,runtimeDefaults:jr,codexModelProvider:C,vmExecution:!1,executionMode:pe,egressMode:Fe,projectPublicId:Pe,goldenImagePublicId:Re,linzumiAgentMcpToken:Bt};t("runner.thread_process_starting",Object.fromEntries([["kandanThreadId",w],["cwd",J],["readyTimeoutMs",xR]]));let Er=await CR(Kt,(Jt,gr)=>t(Jt,gr));if(Er.TAG==="Ok"){let Jt=Er._0;Be.set(w,Jt);let gr=Jt.pid;return Jt.onExit(()=>{let Hr=Be.get(w);if(Hr!==void 0&&de(Hr.pid,gr)){Be.delete(w);return}}),Jt.client.onRequest(ut),t("runner.thread_process_started",Object.fromEntries([["kandanThreadId",w],["cwd",J]])),{TAG:"Ok",_0:Jt}}let ur=Er._0;return t("runner.thread_process_start_failed",Object.fromEntries([["kandanThreadId",w],["cwd",J],["message",ur]])),{TAG:"Error",_0:ur}},ra=O=>Xu(Be.get(O),X=>!X.client.isClosed()),tn=(O,X,J)=>{let K={};return K.instanceId=i,K.controlType=O,K.ok=!0,K.delegated=!0,K.threadProcess="already_started",K.kandanThreadId=X,K.cwd=J,K},H=async(O,X,J,K,w)=>{let C=Le(O,"developerPrompt"),P=sj(O.linzumiContext,gr=>{fr(gr+`
|
|
876
|
+
`)}),I=Ep(O,e.approvalPolicy,e.sandbox,e.defaultModel,e.defaultReasoningEffort);if(I.TAG!=="Ok")return await Vr(O,"start_instance","StartingCodexSession",I._0,void 0);let F=I._0,D=Le(O,"projectSharedInstructions"),ie=Le(O,"projectPersonalInstructions"),pe=Le(O,"projectMemory"),Fe=zt(O.projectId)||zt(O.projectPublicId)||zt(D)||zt(ie)||zt(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=RR,Re.personality=IR,Re.developerInstructions=Pe,T6(F).forEach(gr=>{Re[gr[0]]=gr[1]});let Ie=await gS(Ru,a,"thread/start",K.request("thread/start",Re));if(Ie.TAG!=="Ok")return await Vr(O,"start_instance","StartingCodexSession",Ie._0,void 0);let st=Ie._0;if(st.TAG!=="ResultReply")return await Vr(O,"start_instance","StartingCodexSession","thread/start failed: "+st.message,void 0);let Oe=st._0,ye=k(k(ke(Oe),gr=>Cp(gr,"thread")),gr=>Le(gr,"id")),Dt=Le(O,"workDescription");if(ye!==void 0&&C!==void 0){let gr=Le(O,"workspace"),Hr=Le(O,"channel"),oi=Le(O,"threadId");if(gr!==void 0&&Hr!==void 0&&oi!==void 0){let ai={};ai.event_type="codex_start_instructions",ai[Nn]=ye,ai.instructions_body=C;let Hl=Le(O,"modelProvider");Hl!==void 0&&(ai.model_provider=Hl);let Bl=Le(O,"model");Bl!==void 0&&(ai.model=Bl);let ds={};ds.workspace=gr,ds.channel=Hr,ds.thread_id=oi,ds.body=`Starting a new Codex thread with instructions:
|
|
877
|
+
|
|
878
|
+
`+C,ds.payload=Object.fromEntries([["metadata",Object.fromEntries([["local_codex_runner",ai]])]]),await Ge("session:post_thread_message",ds)}}let qt=Le(O,"workspace"),dr=Le(O,"channel"),jr=Le(O,"threadId"),Bt;if(ye!==void 0&&qt!==void 0&&dr!==void 0&&jr!==void 0){let gr=await rw({transport:g,commanderTopic:n,commanderId:e.commanderId,instanceId:i,harness:K,log:t,timers:Ru,env:r,workspaceSlug:qt,channelSlug:dr,threadId:jr,harnessSessionId:ye,cwd:X,rootSeq:fw(O,"rootSeq"),defaults:{approvalPolicy:e.approvalPolicy,sandbox:e.sandbox,model:F.settingsModel,reasoningEffort:F.settingsReasoningEffort},actorSlug:o.actorUsername,actorUserId:o.actorUserId,leaseEpochFor:Hr=>L.current(Hr),commitAppliedSourceSeq:Hr=>{Tu(u,Se(dr,jr),Hr,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",jr],["channel",dr],["sourceSeq",Hr]]))},switchProbe:Xe});if(gr.TAG==="Ok"){let Hr=gr._0;re.set(ye,Hr),w&&K.onNotification(oi=>Hr.routeNotification(oi.method,x(k(oi.params,ke),{}))),Bt={TAG:"Ok",_0:Hr}}else Bt={TAG:"Error",_0:gr._0}}else Bt={TAG:"Ok",_0:void 0};if(Bt.TAG!=="Ok")return await Vr(O,"start_instance","BindingThread",Bt._0,ye);let Kt=Bt._0,Er=ea(O),ur=ye!==void 0&&Dt!==void 0?Kt!==void 0&&Er!==void 0?await Kt.runClaimedTurn(Er,Dt):{TAG:"Error",_0:x6}:{TAG:"Ok",_0:void 0};if(ur.TAG!=="Ok")return await Vr(O,"start_instance","StartingFirstTurn",ur._0,ye);let Jt={};return Jt.instanceId=i,Jt.controlType="start_instance",Jt.cwd=X,Jt.matchedRoot=J,Jt.response=Oe,{TAG:"Ok",_0:Jt}},te=(O,X)=>{let J=Mc(e.serviceUrl,e.token,void 0,new Date);if(J.TAG==="Ok"){let K=J._0,w=Lc(process.execPath,process.argv[1],process.execArgv),C=Su(e.token),P=Ws({command:w.command,argsPrefix:w.argsPrefix,serviceUrl:e.serviceUrl,authFilePath:K.path,ownerUsername:C.actorUsername,operatingMode:"Text",cwd:O,threadId:X,devServices:{scope:e.commanderId,ownerPid:process.pid}});return{servers:ix(P),cleanup:K.cleanup}}t("claude_code.mcp_config_failed",Object.fromEntries([["message",J._0.summary],["thread_id",X]]))},ne=(O,X,J,K,w,C,P,I)=>({adapter:I,pushEvent:Ge,log:t,workspace:J,channel:K,threadId:w,cwd:X,sourceSeq:ea(O),model:P.settingsModel,approvalPolicy:P.settingsApprovalPolicy,sandbox:P.settingsSandbox,workDescription:C,mcp:te(X,w)}),Ke=O=>{let X=Le(O,"channel"),J=Le(O,"threadId"),K=ea(O);if(X!==void 0&&J!==void 0&&K!==void 0)return Tu(u,Se(X,J),K,void 0),t("runner.live_worker_source_seq_committed",Object.fromEntries([["thread_id",J],["channel",X],["sourceSeq",K]]))},tt=(O,X,J,K)=>{let w={};return w.instanceId=i,w.controlType=O,w.agentProvider="claude-code",w.cwd=X,w.matchedRoot=J,w.response=Object.fromEntries([["session",Object.fromEntries([["id",K]])]]),w},at=async(O,X,J)=>{await It;let K=Fe=>Vr(O,"start_instance","StartingClaudeCodeSession",Fe,void 0),w=He.contents;if(w===void 0)return await K("claude-agent-sdk module not resolvable");let C=Le(O,"workspace"),P=Le(O,"channel"),I=Le(O,"threadId"),F=Le(O,"workDescription");if(C===void 0)return await K("start_instance control missing workspace");if(P===void 0)return await K("start_instance control missing channel");if(I===void 0)return await K("start_instance control missing threadId");if(F===void 0)return await K("start_instance control missing workDescription");let D=Ep(O,e.approvalPolicy,e.sandbox,e.defaultModel,e.defaultReasoningEffort);if(D.TAG!=="Ok")return await K(D._0);let ie=await u$(ne(O,X,C,P,I,F,D._0,w));if(ie.TAG!=="Ok")return await K(ie._0);let pe=ie._0;return Ht.set(pe.harnessSessionId,pe),Ke(O),{TAG:"Ok",_0:tt("start_instance",X,J,pe.harnessSessionId)}},ct=async(O,X,J)=>{await It;let K=Le(O,ls);if(K!==void 0){let C=Oe=>Vr(O,"reconnect_thread","StartingClaudeCodeSession",Oe,K),P=He.contents;if(P===void 0)return await C("claude-agent-sdk module not resolvable");let I=Le(O,"workspace"),F=Le(O,"channel"),D=Le(O,"threadId"),ie=Le(O,"workDescription");if(I===void 0)return await C("start_instance control missing workDescription");if(F===void 0)return await C("start_instance control missing workDescription");if(D===void 0)return await C("start_instance control missing workDescription");if(ie===void 0)return await C("start_instance control missing workDescription");let pe=ea(O);if(pe!==void 0?!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",K],["source_seq",Oe!==void 0?Oe:null]]));let ye={};return ye.instanceId=i,ye.controlType="reconnect_thread",ye.agentProvider="claude-code",ye.cwd=X,ye.matchedRoot=J,ye[ls]=K,ye.queuedInput=!0,ye.duplicate=!0,{TAG:"Ok",_0:ye}}let Pe=dw(O,"reconnect_thread","processing","resuming Claude Code session",i,K);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),K);if(Ie.TAG!=="Ok")return await C(Ie._0);let st=Ie._0;return Ht.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(Mr(O,"cwd"),f.contents);if(X.TAG==="AllowedCwd"){let J=X.matchedRoot,K=X.cwd,w=cw(O),C=await fn(w),P=0;if(typeof w!="object")P=1;else{let I={};return I.instanceId=i,I.controlType="reconnect_thread",I.ok=!1,I.error="agent_provider_unsupported:"+w._0,{TAG:"Ok",_0:I}}if(P===1)if(C){if(typeof w!="object"){if(w!=="CodexProvider")return await ct(O,K,J);if(e.harnessUrl!==void 0)return j!==void 0?await _e(O,K,J,j,!1):{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let F=Le(O,"workspace"),D=Le(O,"channel"),ie=Le(O,"threadId"),pe=0;if(F!==void 0&&D!==void 0&&ie!==void 0){if(ra(ie)!==void 0)return{TAG:"Ok",_0:tn("reconnect_thread",ie,K)};let Pe=Zl(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=K,{TAG:"Ok",_0:Ie}}if(Re===3){let Ie=Zl(O),st;st=typeof Ie!="object"||Ie.TAG!=="Provider"?void 0:Ie._0;let Oe=await _o(O,"reconnect_thread",K,F,ie,st);return Oe.TAG==="Ok"?await _e(O,K,J,Oe._0.client,!0):{TAG:"Error",_0:Oe._0}}}else pe=2;if(pe===2)return j!==void 0?await _e(O,K,J,j,!1):{TAG:"Error",_0:"cannot reconnect a Kandan thread without a session"}}}else{await ki(O,"reconnect_thread","failed",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 Fn(O,J);let K={};return K.instanceId=i,K.controlType="reconnect_thread",K.requestId=Gn(Mr(O,"requestId")),K.ok=!1,K.error=J,K.allowedCwds=f.contents.map(w=>w),{TAG:"Ok",_0:K}}},vt={contents:void 0},Ct=async(O,X,J)=>{let K=async()=>{if(j===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let Pe=Zl(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,ye=>ye.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 K();let C=Le(O,"workspace"),P=Le(O,"channel"),I=Le(O,"threadId");if(C===void 0)return await K();if(P===void 0)return await K();if(I===void 0)return await K();if(ra(I)!==void 0)return{TAG:"Ok",_0:tn("start_instance",I,X)};let D=Zl(O);if(typeof D=="object"&&D.TAG!=="Provider"){let 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=Zl(O),pe;pe=typeof ie!="object"||ie.TAG!=="Provider"?void 0:ie._0;let Fe=await _o(O,"start_instance",X,C,I,pe);return Fe.TAG==="Ok"?await H(O,X,X,Fe._0.client,!0):await Vr(O,"start_instance","StartingCodexSession",Fe._0,void 0)},go=()=>{let O=vt.contents;if(O!==void 0)return O;let X=(async()=>{s.contents=!0,clearInterval(Ye);let J=0,K=0;for(;J<3&&K<2e3;)K=K+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=Ht.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=>{if(j===void 0)return{TAG:"Error",_0:"shared codex app-server connection is unavailable"};let X={},J=Mr(O,"threadId");J!==void 0&&(X.threadId=J);let K=O.input;K!==void 0&&(X.input=K);let w=await j.request("turn/start",X);if(w.TAG!=="Ok")return{TAG:"Error",_0:w._0};let C=w._0;if(C.TAG!=="ResultReply")return{TAG:"Error",_0:C.message};let P={};return P.instanceId=i,P.controlType="start_turn",P.response=C._0,{TAG:"Ok",_0:P}},Vl=async O=>{let X=uj(Mr(O,"cwd"),f.contents),J=cw(O);if(typeof J=="object"){let C={};return C.instanceId=i,C.controlType="start_instance",C.ok=!1,C.error="agent_provider_unsupported:"+J._0,{TAG:"Ok",_0:C}}if(X.TAG==="AllowedCwd"){let C=X.matchedRoot,P=X.cwd;if(await fn(J)){let F=dw(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 K=X.reason;t("kandan.start_instance_cwd_rejected",Object.fromEntries([["thread_id",Gn(Le(O,"threadId"))],["reason",K],["allowedCwdCount",f.contents.length]])),await Fn(O,K);let w={};return w.instanceId=i,w.controlType="start_instance",w.requestId=Gn(Mr(O,"requestId")),w.ok=!1,w.error=K,w.allowedCwds=f.contents.map(C=>C),{TAG:"Ok",_0:w}},_w=async O=>{let X=Le(O,"harnessSessionId");if(X===void 0)return{TAG:"Error",_0:"invoke_cross_harness_switch requires the source harness session id"};let J=re.get(X);if(J===void 0)return{TAG:"Error",_0:"no attached session for the requested cross-harness switch"};let K=Le(O,"targetHarness");if(K!==void 0&&K!=="claude-code")return{TAG:"Error",_0:"unsupported switch target for this session's harness: "+K};let w=Le(O,"model");if(w===void 0)return{TAG:"Error",_0:"invoke_cross_harness_switch requires an explicit model (D39)"};let C=Le(O,"targetSessionId"),P=C!==void 0?C:uw.randomUUID(),I=await J.invokeCrossHarnessSwitch(Wl(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}},Rp=(O,X)=>FI(x(k(ke(O),J=>Mr(J,"type")),"unknown"),()=>{let J=x(ke(O),{});t("kandan.control",Object.fromEntries([["control",O]]));let K=Mr(J,"type");if(K===void 0)return{TAG:"Returned",_0:void 0};switch(K){case"replace_runner":return t("runner.replaced",Object.fromEntries([["runnerId",e.commanderId],["reason",x(J.reason,null)],["replacementRunnerId",x(J.replacementRunnerId,null)],["replacementVersion",x(J.replacementVersion,null)]])),go(),{TAG:"Returned",_0:void 0};case"set_commander_impl":let w=Mr(J,"impl"),C=k(w,aS);if(C!==void 0){let pe=mj(C),Fe=El(C)!==lw,Pe=de(r.LINZUMI_SUPERVISED,"1")&&process.platform!=="win32";return t("runner.commander_impl_persisted",Object.fromEntries([["impl",El(C)],["persisted",pe],["runningImpl",lw],["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",Gn(w)],["reason","unknown_impl_value"]])),{TAG:"Returned",_0:void 0};default:let P=Mr(J,"instanceId");if(P!==void 0&&P!==i)return t("kandan.control_ignored",Object.fromEntries([["reason","instance_id_mismatch"],["instanceId",i],["controlInstanceId",Gn(Mr(J,"instanceId"))],["controlType",K]])),{TAG:"Returned",_0:void 0};let I=Wl(J,"control_seq"),F;if(K==="start_turn"&&I!==void 0){let pe=GR(n,x(Mr(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",K],["controlSeq",x(J.control_seq,null)]])),{TAG:"Returned",_0:void 0};let D=F.commit,ie=(async()=>{let pe;switch(K){case"invoke_cross_harness_switch":pe=await _w(J);break;case"reconnect_thread":pe=await Pt(J);break;case"start_instance":pe=await Vl(J);break;case"start_turn":pe=await na(J);break;default:pe={TAG:"Error",_0:"unsupported control type for this commander: "+K}}return pe.TAG==="Ok"?(D!==void 0&&D(),await q(pe._0)):await Ce(pe._0),null})();return Ue(ie.then(pe=>{})),{TAG:"Pending",_0:ie}}},X,t,void 0);m.contents=Rp;let gw=p.slice();return p.splice(0,p.length),gw.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:ri(v._0)}}function Wi(e){fr("linzumi (rescript commander): "+e+`
|
|
879
|
+
`),Kl(1)}var E6=["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"],P6=["version","help","launch-tui","fast","no-onboarding-discovery","allow-port-forwarding-by-default"];function R6(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=P6.includes(a),l=E6.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 pw={};Sv.forEach(e=>{pw[e[0]]=e[1]});var hw={};Sv.forEach(e=>{hw[e[1]]=e[0]});function I6(e,t,r){let n=Rm(r),i=Im(n),o={};if(o.ts=new Date().toISOString(),o.event=t,Tv()){let a=pw[t];if(a!==void 0)o.event_canonical=a;else{let s=hw[t];s!==void 0&&(o.event_legacy=s)}}bw(i,(a,s)=>{o[s]=a});try{hj.appendFileSync(e,JSON.stringify(o)+`
|
|
880
|
+
`,"utf8");return}catch{return}}function Ure(e){return e.summary}async function mw(e){let t=R6(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=>{fr(sk(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=B0(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:QE(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=Nt(_j.dirname(S));L.TAG!=="Ok"&&fr("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),I6(S,ae,U)}}else A=v;let R=Em(G(t.values["codex-bin"],L=>js(a,L)),Om(),L=>{fr(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 "+wu()+") as "+c+`
|
|
885
|
+
`);return}}}async function Zre(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 UE($w(e)),r=2}catch(o){let a=ee(o);return fr("linzumi mcp server failed: "+gs(a)+`
|
|
887
|
+
`),Kl(1)}if(r===2)return n.TAG==="Ok"?void 0:(fr("linzumi mcp server failed: "+n._0+`
|
|
888
|
+
`),Kl(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:Kl(o);case"SupervisorRole":case"CommanderRole":return await mw(e.slice(1))}case"start":return await mw(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 mw(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 Wre=pw,Vre=hw;export{I6 as appendDriverLogLine,P6 as connectSwitchFlags,E6 as connectValueFlags,Wre as logFileEventCanonicalByLegacy,Vre as logFileEventLegacyByCanonical,Zre as main,R6 as parseConnectFlags,Wi as refuse,mw as runConnect,Ure as schemaFailureMessage};
|