howtofixcli 0.4.4 → 0.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/main.js +77 -77
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -1,46 +1,46 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
var
|
|
2
|
+
var rS=Object.defineProperty;var m=(e,t,n)=>()=>{if(n)throw n[0];try{return e&&(t=e(e=0)),t}catch(r){throw n=[r],r}};var Ot=(e,t)=>{for(var n in t)rS(e,n,{get:t[n],enumerable:!0})};var Et,jr,Ol,Ml,vo=m(()=>{Et="HowToFix",jr="0.4.5",Ol=["You are HowToFix, a coding agent. The user wants the actual fix, not a tour of the problem.","Lead with the diagnosis in one or two sentences, then change the code. Prefer the smallest correct change over a rewrite.","When you edit files, say which file and why in a short line. Do not narrate tool calls. Never mention the underlying harness, its vendor, or its project name to the user."].join(`
|
|
3
3
|
`),Ml=["# Project notes","","## What this is","","## Commands","- build:","- test:","","## Conventions","-",""].join(`
|
|
4
|
-
`)});var Fl={};Ot(Fl,{AGENTS_STORE_DIR:()=>Fr,AGENT_DIR:()=>Xe,CUBENCE_CACHE_PATH:()=>
|
|
5
|
-
`)}catch{return 0}return o}function
|
|
6
|
-
`)}catch{return!1}return!0}function Ys(e){let t=e.trim();return t.length<=10?"***":`${t.slice(0,6)}\u2026${t.slice(-4)}`}function
|
|
4
|
+
`)});var Fl={};Ot(Fl,{AGENTS_STORE_DIR:()=>Fr,AGENT_DIR:()=>Xe,CUBENCE_CACHE_PATH:()=>au,WORKFLOWS_DIR:()=>mu,pinAgentDir:()=>uu});import{homedir as oS}from"node:os";import{join as Hs}from"node:path";function uu(){process.env.PI_CODING_AGENT_DIR=Xe}var Xe,Fr,au,mu,qn=m(()=>{Xe=process.env.HOWTOFIX_CODING_AGENT_DIR?.trim()||Hs(oS(),".howtofix","agent"),Fr=Hs(Xe,"agents"),au=Hs(Xe,"cubence-cache.json"),mu=Hs(Xe,"workflows")});var Gl={};Ot(Gl,{DEFAULT_CONTEXT_WINDOW:()=>Ul,HOWTOFIX_BASE_URL:()=>Vs,HOWTOFIX_CONSOLE_URL:()=>Js,HOWTOFIX_MODEL_COMPAT:()=>lu,HOWTOFIX_PROVIDERS:()=>pu,HTTP_IDLE_TIMEOUT_MS:()=>_l,applyCompat:()=>Xs,checkAccount:()=>hu,countNewModels:()=>gu,ensureGatewaySettings:()=>mS,isHowtofixProvider:()=>So,looksLikeToken:()=>du,maskToken:()=>Ys,mergeModels:()=>fu,newProviderEntry:()=>cu,parseModelIds:()=>Kl,probeModel:()=>xu,repairGatewayModels:()=>aS});import{existsSync as sS,mkdirSync as iS,readFileSync as Dl,writeFileSync as Nl}from"node:fs";import{join as ql}from"node:path";function cu(){return{baseUrl:Vs,api:"openai-completions"}}function aS(e){let t=ql(e,"models.json"),n;try{n=JSON.parse(Dl(t,"utf8"))}catch{return 0}let r=n.providers;if(!r||typeof r!="object")return 0;let o=0;for(let i of pu){let a=r[i];if(!a||!Array.isArray(a.models))continue;let p=Xs(a.models);p.changed!==0&&(a.models=p.models,o+=p.changed)}if(o===0)return 0;try{Nl(t,`${JSON.stringify(n,null,2)}
|
|
5
|
+
`)}catch{return 0}return o}function mS(e){let t=ql(e,"settings.json"),n={};try{let r=Dl(t,"utf8"),o=JSON.parse(r);o&&typeof o=="object"&&!Array.isArray(o)&&(n=o)}catch{if(sS(t))return!1}if("httpIdleTimeoutMs"in n)return!1;n.httpIdleTimeoutMs=_l;try{iS(e,{recursive:!0}),Nl(t,`${JSON.stringify(n,null,2)}
|
|
6
|
+
`)}catch{return!1}return!0}function Ys(e){let t=e.trim();return t.length<=10?"***":`${t.slice(0,6)}\u2026${t.slice(-4)}`}function du(e){return/^sk-[A-Za-z0-9_-]{8,}$/.test(e.trim())}function Kl(e){let t=(()=>{if(Array.isArray(e))return e;if(e&&typeof e=="object"){let r=e;if(Array.isArray(r.data))return r.data;if(Array.isArray(r.models))return r.models}return[]})(),n=[];for(let r of t){let o=typeof r=="string"?r:r&&typeof r=="object"&&typeof r.id=="string"?r.id:void 0;o&&!n.includes(o)&&n.push(o)}return n}function So(e){return pu.includes(e)}function fu(e,t){let n=new Set(e.map(o=>o.id)),r=[...e];for(let o of t)n.has(o)||(n.add(o),r.push({id:o,contextWindow:Ul,compat:{...lu}}));return r}function Xs(e){let t=0;return{models:e.map(r=>r.compat?.supportsDeveloperRole===!1?r:(t++,{...r,compat:{...r.compat,...lu}})),changed:t}}function gu(e,t){let n=new Set(e.map(r=>r.id));return t.filter(r=>!n.has(r)).length}async function xu(e,t,n){let r=(n?.baseUrl??Vs).replace(/\/+$/,""),o=n?.fetchImpl??fetch,i=n?.timeoutMs??1e4,a=new AbortController,p=setTimeout(()=>a.abort(),i);try{let c=await o(`${r}/chat/completions`,{method:"POST",headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"},body:JSON.stringify({model:e,messages:[{role:"user",content:"hi"}],max_tokens:1}),signal:a.signal});if(c.ok)return{ok:!0,detail:"ok"};let x=await c.text().catch(()=>"");return{ok:!1,detail:/"message"\s*:\s*"([^"]{0,80})/.exec(x)?.[1]??`HTTP ${c.status}`}}catch(c){return{ok:!1,detail:c instanceof Error&&c.name==="AbortError"?"timed out":"unreachable"}}finally{clearTimeout(p)}}async function hu(e,t){let n=(t?.baseUrl??Vs).replace(/\/+$/,""),r=t?.fetchImpl??fetch,o=t?.timeoutMs??15e3,i=e.trim();if(!i)return{ok:!1,models:[],message:"no token given"};let a=new AbortController,p=setTimeout(()=>a.abort(),o);try{let c=await r(`${n}/models`,{headers:{Authorization:`Bearer ${i}`},signal:a.signal});if(c.status===401)return{ok:!1,models:[],message:"the gateway rejected that token (401). Check it in the Console, or make a new one."};if(c.status===403)return{ok:!1,models:[],message:"that token is not allowed to list models (403). The Console shows what a token may call."};if(!c.ok)return{ok:!1,models:[],message:`the gateway answered ${c.status}`};let x=Kl(await c.json());return x.length===0?{ok:!1,models:[],message:"the token works but the gateway listed no models"}:{ok:!0,models:x,message:`${x.length} models available to this token`}}catch(c){let x=c instanceof Error&&c.name==="AbortError";return{ok:!1,models:[],message:x?`the gateway did not answer within ${Math.round(o/1e3)}s`:"could not reach the gateway"}}finally{clearTimeout(p)}}var Vs,Js,pu,_l,lu,Ul,yu=m(()=>{Vs="https://api.howtofix.id/v1",Js="https://howtofix.id/console/token",pu=["howtofix","howtofix-free"];_l=9e4;lu={supportsDeveloperRole:!1},Ul=128e3});var Wl={};Ot(Wl,{expandFileReferences:()=>bu});import{readFileSync as uS,statSync as pS}from"node:fs";import{isAbsolute as cS,resolve as lS}from"node:path";function bu(e,t){return e.replace(/(^|\s)@([^\s]+)/g,(n,r,o)=>{let i=o.replace(/[),.;:]+$/,""),a=o.slice(i.length),p=cS(i)?i:lS(t,i);try{let c=pS(p);if(!c.isFile()||c.size===0||c.size>dS)return n;let x=uS(p);return x.includes(0)?n:`${r}<file name="${p}">
|
|
7
7
|
${x.toString("utf8").trimEnd()}
|
|
8
|
-
</file>${a}`}catch{return n}})}var gS,$u=m(()=>{gS=64*1024});function hS(e){let t=new WeakSet,n=r=>{if(r===null||typeof r!="object")return r;if(t.has(r))return"[circular]";if(t.add(r),Array.isArray(r))return r.map(n);let o=r,i={};for(let a of Object.keys(o).sort())i[a]=n(o[a]);return i};try{return JSON.stringify(n(e))??""}catch{return""}}function zl(e,t){if(xS.has(e))return;let n=`${e}\0${hS(t)}`,r=Po&&Po.signature===n?Po.count+1:1;return Po={signature:n,count:r},r>=3?{repeats:r}:void 0}function Bl(){Po=void 0}function Hl(e,t){return`Refused: ${e} has been called ${t} times in a row with identical arguments, so the last attempt cannot have changed anything. Do not repeat it. Either use different arguments, use a different tool, or stop and report what you found and what is blocking you.`}var xS,Po,wu=m(()=>{xS=new Set(["think"])});function Vl(e,t){switch(t){case"number":return/^\d+$/.test(e);case"string":return!0;default:return!1}}function IS(e,t,n){let r=t;for(;r<e.length;){let o=e[r];if(!o){r++;continue}if(o==="--")break;if(yS.test(o)){let i=o.includes("="),[a="",...p]=o.split("="),c=n.safeFlags[a];if(!c)return!1;if(c==="none"){if(i)return!1;r++;continue}if(c==="optional"){r++;continue}if(i){if(!Vl(p.join("="),c))return!1;r++;continue}let x=e[r+1];if(x===void 0||!Vl(x,c))return!1;r+=2;continue}if(n.allowPositional===!1)return!1;r++}return!0}function ES(e){if(!/\$\(|`|\$\{|>|</.test(e)&&!/(?<!&)&(?!&)/.test(e))return e.split(/\|\||&&|;|\|/).map(t=>t.trim()).filter(t=>t.length>0)}function vS(e){let t=e.some(r=>/^cd\b/.test(r)),n=e.some(r=>/^git\b/.test(r));return t&&n}function SS(e){let t=[],n=/'[^']*'|"[^"]*"|\S+/g;for(let r of e.match(n)??[])t.push(r.length>=2&&/^['"]/.test(r)?r.slice(1,-1):r);return t}function PS(e){if(e.length===0)return;let[t="",n=""]=e,r=`${t} ${n}`;if(t==="git"&&n==="config"){let o=e[2];return o==="--get"||o==="--get-all"||o==="--get-regexp"||o==="-l"||o==="--list"?{name:"git config --get",rest:e.slice(3)}:void 0}return t==="git"&&n==="stash"?e[2]==="list"?{name:"git stash list",rest:e.slice(3)}:void 0:t==="git"&&n==="worktree"?e[2]==="list"?{name:"git worktree list",rest:e.slice(3)}:void 0:t==="git"&&Yl[`git ${n}`]?{name:`git ${n}`,rest:e.slice(2)}:Xl[r]?{name:r,rest:e.slice(2)}:{name:t,rest:e.slice(1)}}function AS(e){let t=SS(e),n=PS(t);if(!n)return!1;let{name:r,rest:o}=n;if(RS.has(r)&&o.some(a=>a.includes("$")||a.includes("`")))return!1;let i=Yl[r]??kS[r]??Xl[r];return i?i.dangerous?.(o)?!1:IS(o,0,i):!!(wS.includes(r)||TS.includes(r))}function ti(e){let t=ES(e);return!t||t.length===0||vS(t)?!1:t.every(AS)}var yS,bS,Zs,Qs,ku,ei,Tu,Jl,$S,Yl,wS,kS,Xl,TS,RS,Eu=m(()=>{yS=/^-[a-zA-Z0-9_-]/;bS={"--all":"none","--branches":"none","--tags":"none","--remotes":"none"},Zs={"--oneline":"none","--graph":"none","--decorate":"none","--no-decorate":"none","--date":"string","--relative-date":"none"},Qs={"--max-count":"number","-n":"number"},ku={"--stat":"none","--numstat":"none","--shortstat":"none","--name-only":"none","--name-status":"none"},ei={"--color":"none","--no-color":"none"},Tu={"--patch":"none","-p":"none","--no-patch":"none","--no-ext-diff":"none","-s":"none"},Jl={"--author":"string","--committer":"string","--grep":"string"},$S={"-l":"none","--list":"none","-a":"none","-r":"none","-v":"none","-vv":"none","-i":"none"},Yl={"git status":{safeFlags:{"-s":"none","--short":"none","-b":"none","--branch":"none","-u":"optional","--untracked-files":"optional","--porcelain":"optional","--ignored":"none","--long":"none","--no-renames":"none",...ei}},"git diff":{safeFlags:{...ku,...ei,...Tu,"--cached":"none","--staged":"none","--word-diff":"none","--check":"none","--quiet":"none","--exit-code":"none","--no-renames":"none","--diff-filter":"string","--relative":"string","--full-index":"none","--binary":"none","--abbrev":"number","--unified":"number","-U":"number","--ignore-all-space":"none","--ignore-space-change":"none","--ignore-blank-lines":"none"}},"git log":{safeFlags:{...Zs,...Qs,...ku,...ei,...Tu,...Jl,...bS,"--since":"string","--after":"string","--until":"string","--before":"string","--follow":"none","--no-merges":"none","--merges":"none","--first-parent":"none","--reverse":"none","--skip":"number","--all":"none","--format":"string","--pretty":"string","--abbrev-commit":"none","--no-abbrev-commit":"none","--left-right":"none"}},"git show":{safeFlags:{...ku,...ei,...Tu,...Zs,"--format":"string","--pretty":"string","--abbrev-commit":"none","--no-patch":"none","-q":"none"}},"git shortlog":{safeFlags:{...Qs,"-s":"none","--summary":"none","-n":"none","--numbered":"none","-e":"none","--email":"none","-sn":"none","-ns":"none","--all":"none"}},"git reflog":{safeFlags:{...Qs,...Zs,...Jl,"--all":"none","--date":"string"}},"git blame":{safeFlags:{"-L":"string","-w":"none","-c":"none","-n":"none","-s":"none","-e":"none","-p":"none","--porcelain":"none","--line-porcelain":"none","--date":"string","--since":"string","-C":"none","-M":"none"}},"git ls-files":{safeFlags:{"-m":"none","--modified":"none","-o":"none","--others":"none","-i":"none","--ignored":"none","-s":"none","--stage":"none","-d":"none","--deleted":"none","-c":"none","--cached":"none","-u":"none","--unmerged":"none","--exclude-standard":"none","--error-unmatch":"none","-z":"none"}},"git ls-remote":{safeFlags:{"--heads":"none","--tags":"none","--refs":"none","--symref":"none"}},"git rev-parse":{safeFlags:{"--short":"optional","--abbrev-ref":"none","--verify":"none","--quiet":"none","--git-dir":"none","--show-toplevel":"none","--show-cdup":"none","--is-inside-work-tree":"none","--is-bare-repository":"none","--symbolic-full-name":"none","--abbrev":"optional"}},"git rev-list":{safeFlags:{...Qs,"--count":"none","--all":"none","--objects":"none","--reverse":"none","--max-parents":"number","--min-parents":"number","--no-merges":"none","--first-parent":"none","--abbrev-commit":"none"}},"git describe":{safeFlags:{"--tags":"none","--all":"none","--long":"none","--always":"none","--dirty":"none","--abbrev":"number","--match":"string","--exclude":"string","--first-parent":"none"}},"git cat-file":{safeFlags:{"-p":"none","-t":"none","-s":"none","-e":"none","--batch-check":"none"}},"git for-each-ref":{safeFlags:{"--format":"string","--count":"number","--sort":"string","--points-at":"string","--merged":"string","--no-merged":"string"}},"git grep":{safeFlags:{"-n":"none","--line-number":"none","-i":"none","--ignore-case":"none","-l":"none","--files-with-matches":"none","-c":"none","--count":"none","-w":"none","--word-regexp":"none","-E":"none","--extended-regexp":"none","-F":"none","--fixed-strings":"none","--cached":"none","--untracked":"none","-e":"string","--and":"none","--or":"none","--not":"none"}},"git merge-base":{safeFlags:{"--all":"none","--is-ancestor":"none","--fork-point":"none","--octopus":"none"}},"git stash list":{safeFlags:{...Zs}},"git worktree list":{safeFlags:{"--porcelain":"none","-v":"none","--verbose":"none","-z":"none"}},"git branch":{safeFlags:{...$S,"--merged":"string","--no-merged":"string","--contains":"string","--no-contains":"string","--sort":"string","--format":"string","--points-at":"string","--column":"none"},dangerous:e=>{let t=new Set(["--merged","--no-merged","--contains","--no-contains","--sort","--format","--points-at"]),n=!1;for(let r of e){if(n){n=!1;continue}if(t.has(r)){n=!0;continue}if(!r.startsWith("-"))return!0}return!1}},"git tag":{safeFlags:{"-l":"none","--list":"none","-n":"number","--contains":"string","--no-contains":"string","--merged":"string","--sort":"string","--points-at":"string","--column":"none"},dangerous:e=>{let t=new Set(["--contains","--no-contains","--merged","--sort","--points-at"]),n=!1;for(let r of e){if(n){n=!1;continue}if(t.has(r)){n=!0;continue}if(!r.startsWith("-"))return!0}return!1}},"git remote":{safeFlags:{"-v":"none","--verbose":"none"},dangerous:e=>e.some(t=>!t.startsWith("-"))},"git config --get":{safeFlags:{"--local":"none","--global":"none","--system":"none","--get-all":"none","--get-regexp":"none","--list":"none","-l":"none","--show-origin":"none","--null":"none","-z":"none"}}},wS=["ls","pwd","cat","head","tail","wc","which","whoami","date","echo","sleep","true","false","type","test","seq","basename","dirname","realpath","stat","file","du","df","tree","uname","hostname","id","groups","tty","cal","uptime","free","locale","printf","grep","rg","fd","jq","bat","column","paste","nl","expand","fold","fmt"],kS={find:{safeFlags:{"-name":"string","-iname":"string","-type":"string","-maxdepth":"number","-mindepth":"number","-newer":"string","-path":"string","-not":"none","-print":"none","-print0":"none","-empty":"none","-size":"string","-mtime":"number","-atime":"number","-perm":"string","-L":"none","-H":"none","-P":"none"},dangerous:e=>e.some(t=>/^-(delete|exec|execdir|ok|okdir|fprint0?|fls|fprintf)$/.test(t))},sort:{safeFlags:{"-n":"none","-r":"none","-u":"none","-k":"string","-t":"string","-f":"none","-h":"none","-V":"none","-s":"none","-c":"none","-m":"none","-b":"none","-z":"none"}},uniq:{safeFlags:{"-c":"none","-d":"none","-u":"none","-i":"none","-f":"number","-s":"number","-w":"number"}},cut:{safeFlags:{"-d":"string","-f":"string","-c":"string","-b":"string","-s":"none","--complement":"none","-z":"none"}},tr:{safeFlags:{"-d":"none","-s":"none","-c":"none"}},node:{safeFlags:{"-v":"none","--version":"none"},allowPositional:!1},python:{safeFlags:{"--version":"none"},allowPositional:!1},python3:{safeFlags:{"--version":"none"},allowPositional:!1},npm:{safeFlags:{"--version":"none","-v":"none"},allowPositional:!1},sed:{safeFlags:{"-n":"none","--quiet":"none","-e":"string","-E":"none","-r":"none","--regexp-extended":"none","-s":"none","-u":"none","-z":"none","--posix":"none"},dangerous:e=>e.some(t=>/^-i|^--in-place/.test(t)||/\b[we]\s/.test(t)||/^[we]$/.test(t))},awk:{safeFlags:{"-F":"string","-v":"string","-f":"string"},dangerous:e=>e.some(t=>/\bsystem\s*\(|\|\s*"|>\s*"/.test(t))}},Xl={"npm ls":{safeFlags:{"--depth":"number","--json":"none","--long":"none","--parseable":"none","--all":"none","--prod":"none","--dev":"none","--omit":"string","--link":"none","--global":"none","-g":"none","--silent":"none"}},"npm view":{safeFlags:{"--json":"none","--registry":"string"}},"docker ps":{safeFlags:{"-a":"none","--all":"none","-q":"none","--quiet":"none","--no-trunc":"none","--format":"string","-n":"number","--last":"number","-s":"none","--size":"none","--filter":"string"}},"docker images":{safeFlags:{"-a":"none","--all":"none","-q":"none","--quiet":"none","--no-trunc":"none","--format":"string","--filter":"string","--digests":"none"}},"docker inspect":{safeFlags:{"--format":"string","-f":"string","-s":"none","--size":"none","--type":"string"}},"kubectl get":{safeFlags:{"-o":"string","--output":"string","-n":"string","--namespace":"string","-A":"none","--all-namespaces":"none","--no-headers":"none","-l":"string","--selector":"string","--show-labels":"none","-w":"none","--watch":"none","--sort-by":"string"}},"kubectl describe":{safeFlags:{"-n":"string","--namespace":"string","-l":"string","--selector":"string"}},"cargo tree":{safeFlags:{"--depth":"number","-e":"string","--edges":"string","--no-dev-dependencies":"none","--prefix":"string","-i":"string","--invert":"string","-p":"string","--package":"string"}},"go version":{safeFlags:{}}},TS=["cd","alias","history","arch","ip addr","ifconfig"];RS=new Set(["echo","printf"])});var sd={};Ot(sd,{APPROVAL_LABELS:()=>ni,APPROVAL_MODES:()=>Dr,MODE_MAX_TIER:()=>Zl,TIER_RANK:()=>vu,createPermissionExtension:()=>Au,criticalCommand:()=>ed,decideToolCall:()=>nd,describeToolCall:()=>rd,formatApprovalPrompt:()=>od,getApprovalMode:()=>LS,isApprovalMode:()=>OS,isReadOnlyCommand:()=>ti,resolveTier:()=>Ql,setApprovalMode:()=>Pu,setApprovalPrompt:()=>Ru});function OS(e){return Dr.includes(e)}function Ql(e){let t=MS[e];return t||(e.startsWith("mcp__")?"write":"exec")}function ed(e){for(let{pattern:t,reason:n}of CS)if(t.test(e))return n}function Pu(e){Su=e}function LS(){return Su}function Ru(e){td=e}function nd(e,t,n){let r=typeof n?.command=="string"?n.command:"";if(t==="bash"||t==="powershell"){let i=ed(r);if(i)return{action:"deny",reason:`Refused in every mode: ${i}.`};if(ti(r))return{action:"run"}}let o=Ql(t);return vu[o]<=vu[Zl[e]]?{action:"run"}:{action:"prompt",reason:`this is a ${o}-tier tool`}}function rd(e,t){if(t&&typeof t=="object"){let n=t;if((e==="bash"||e==="powershell")&&typeof n.command=="string")return n.command;if((e==="edit"||e==="write")&&typeof n.path=="string"){let r=Array.isArray(n.edits)?` (${n.edits.length} edits)`:"";return`${n.path}${r}`}try{let r=JSON.stringify(n);if(r&&r!=="{}")return r.length>300?`${r.slice(0,297)}...`:r}catch{}}return e}function od(e,t,n){let r=[`Allow tool: ${e}`];e.startsWith("mcp__")&&r.push("Origin: MCP server tool"),r.push(`Reason: ${n}`);let o=rd(e,t);return o!==e&&r.push(o),r.join(`
|
|
9
|
-
`)}function Au(){return e=>{e.on("tool_call",async t=>{let n=zl(t.toolName,t.input);if(n)return{block:!0,reason:Hl(t.toolName,n.repeats)};let r=Su,o=nd(r,t.toolName,t.input);if(o.action==="run")return;if(o.action==="deny")return{block:!0,reason:o.reason};if(!await td(`${t.toolName} wants to run`,od(t.toolName,t.input,o.reason)))return{block:!0,reason:`Blocked by the user (approval mode: ${r}).`}})}}var Dr,ni,vu,Zl,MS,CS,Su,td,ri=m(()=>{wu();Eu();Eu();Dr=["suggest","auto-edit","full-auto"],ni={suggest:"suggest: ask before every edit and command","auto-edit":"auto-edit: edits run, commands ask","full-auto":"full-auto: nothing asks"};vu={read:0,write:1,exec:2},Zl={suggest:"read","auto-edit":"write","full-auto":"exec"},MS={read:"read",grep:"read",find:"read",ls:"read",think:"read",ask:"read",todo:"read",context:"read",workflow:"exec",goal:"read",enter_plan_mode:"read",exit_plan_mode:"read",edit:"write",write:"write",bash:"exec",powershell:"exec",task:"exec"};CS=[{pattern:/\brm\s+(?:-[a-zA-Z]+\s+)*(?:\/|\/\*|~|\$HOME)(?:\s|$)/,reason:"recursive delete of the filesystem root or home"},{pattern:/\bmkfs(?:\.[a-z0-9]+)?\b/,reason:"filesystem format"},{pattern:/\bdd\b[^|;]*\bof=\/dev\/(?:sd|nvme|hd|vd)/,reason:"raw write to a block device"},{pattern:/:\s*\(\s*\)\s*\{.*\}\s*;\s*:/,reason:"fork bomb"},{pattern:/>\s*\/etc\/(?:passwd|shadow|sudoers)/,reason:"overwrite of a system account file"},{pattern:/\b(?:shutdown|reboot|halt|poweroff)\b/,reason:"host shutdown"}];Su="auto-edit",td=async()=>!1});function jS(e){return e.replace(/operating inside pi, a coding agent harness/gi,"operating as HowToFix, a coding agent harness").replace(/^Pi documentation \(read only when the user asks about[^\n]*\):?$/gim,"Harness documentation (internal reference; the user is never told the harness name):").replace(/\bpi itself\b/gi,"the harness itself").replace(/^- When reading pi docs or examples/m,"- When reading harness docs or examples").replace(/^- When working on pi topics/m,"- When working on harness topics").replace(/^- Always read pi \.md files/m,"- Always read the harness .md files").replace(/\bpi packages\b/gi,"harness packages").replace(/\bpi \.md files\b/gi,"harness .md files").replace(/\bpi docs\b/gi,"harness docs").replace(/^-\s*You can inspect PI_\* environment variables/m,"- You can inspect the harness's environment variables")}function DS(e){if(!e)return;let t=!1,n={...e};for(let r of FS){let o=n[r];if(typeof o!="string")continue;let i=jS(o);i!==o&&(n[r]=i,t=!0)}return t?n:void 0}function id(){return e=>{e.on("context_with_system",async t=>{let n=t.messages[0];if(!n||n.role!=="system")return;let r=DS(n.sections);return r?{messages:t.messages.map(i=>i===n?{...n,sections:r}:i)}:void 0})}}var FS,ad=m(()=>{FS=["preamble","rules","docs","addendum"]});import{Type as Nr}from"@earendil-works/pi-ai";import{defineTool as md}from"@earendil-works/pi-coding-agent";function ud(e){Ou=e}var Ou,pd,cd,Mu=m(()=>{pd=md({name:"think",label:"think",description:"Private scratchpad. The text is not shown to the user. Use it before a non-obvious step.",promptSnippet:"think: private notes, not shown to the user",parameters:Nr.Object({thoughts:Nr.String({description:"Private notes"})}),async execute(){return{content:[{type:"text",text:"noted"}],details:{recorded:!0}}}}),cd=md({name:"ask",label:"ask",description:"Ask the user one question and wait for a selected answer. Use this instead of guessing when a choice blocks the task.",promptSnippet:"ask: ask the user to pick one option",parameters:Nr.Object({question:Nr.String(),options:Nr.Array(Nr.String(),{minItems:2})}),async execute(e,t){if(!Ou)return{content:[{type:"text",text:"cancelled"}],details:{answer:"cancelled"}};let n=await Ou(t.question,t.options);return{content:[{type:"text",text:n}],details:{answer:n}}}})});var Yt,mr=m(()=>{Yt={assign:0,create:0,clone:0,discard:0,update:0}});function ur(e,t,n){return e>=t&&e<=n}function fd(e){return e===8205}function NS(e){return ur(e,55296,56319)}function ld(e){return ur(e,127462,127487)}function gd(e){return ur(e,65024,65039)}function xd(e){return ur(e,768,879)||ur(e,6832,6911)||ur(e,7616,7679)||ur(e,65056,65071)}function oi(e){return e>65535?2:1}function dd(e,t){for(;t<e.length;){let n=e.codePointAt(t);if(xd(n)||gd(n))t+=oi(n);else break}return t}function Cu(e,t){let n=e.codePointAt(t),r=t+oi(n);for(r=dd(e,r);r<e.length-1&&fd(e.codePointAt(r));){let o=e.codePointAt(r+1);r+=1+oi(o),r=dd(e,r)}return ld(n)&&r<e.length&&ld(e.codePointAt(r))&&(r+=oi(e.codePointAt(r))),r}function hd(e){return e>=768&&(NS(e)||xd(e)||gd(e)||fd(e))}function yd(e){let t=0,n=0;for(;n<e.length;)n=Cu(e,n),t++;return t}function qS(e,t){let n=0,r=0;for(;r<e.length;)if(r=Cu(e,r),++n>=t)return!0;return!1}function _S(e,t){let n=0,r=0;for(;r<e.length;)if(r=Cu(e,r),++n>t)return!1;return!0}function Id(e,t){if(t===0)return!0;if(e.length<t)return!1;let n=0;for(;;){if(hd(e.charCodeAt(n)))return qS(e,t);if(++n>=t)return!0}}function bd(e,t){if(e.length<=t)return!0;let n=0;for(;;){if(hd(e.charCodeAt(n)))return _S(e,t);if(++n>t)return!1}}var $d=m(()=>{});var u={};Ot(u,{Counted:()=>nP,Entries:()=>sP,EntriesRegExp:()=>oP,Every:()=>ZS,EveryAll:()=>QS,GraphemeCount:()=>JS,HasPropertyKey:()=>rP,IsArray:()=>Ao,IsBigInt:()=>Ro,IsBoolean:()=>wd,IsClassInstance:()=>VS,IsConstructor:()=>GS,IsDeepEqual:()=>Fu,IsEqual:()=>te,IsFunction:()=>kd,IsGreaterEqualThan:()=>Ed,IsGreaterThan:()=>zS,IsInteger:()=>Lu,IsLessEqualThan:()=>Td,IsLessThan:()=>BS,IsMaxLength:()=>YS,IsMinLength:()=>XS,IsMultipleOf:()=>HS,IsNull:()=>ii,IsNumber:()=>ai,IsObject:()=>Oo,IsObjectNotArray:()=>KS,IsString:()=>mi,IsSymbol:()=>WS,IsUndefined:()=>ju,IsUnsafePropertyKey:()=>Sd,IsValueLike:()=>vd,Keys:()=>si,ShiftLeft:()=>ui,Some:()=>eP,SomeAll:()=>tP,Symbols:()=>iP,Values:()=>aP});function Ao(e){return Array.isArray(e)}function Ro(e){return te(typeof e,"bigint")}function wd(e){return te(typeof e,"boolean")}function GS(e){if(ju(e)||!kd(e))return!1;let t=Function.prototype.toString.call(e);return!!(/^class\s/.test(t)||/\[native code\]/.test(t))}function kd(e){return te(typeof e,"function")}function Lu(e){return Number.isInteger(e)}function ii(e){return te(e,null)}function ai(e){return Number.isFinite(e)}function KS(e){return Oo(e)&&!Ao(e)}function Oo(e){return te(typeof e,"object")&&!ii(e)}function mi(e){return te(typeof e,"string")}function WS(e){return te(typeof e,"symbol")}function ju(e){return te(e,void 0)}function te(e,t){return e===t}function zS(e,t){return e>t}function BS(e,t){return e<t}function Td(e,t){return e<=t}function Ed(e,t){return e>=t}function HS(e,t){if(Ro(e)||Ro(t))return BigInt(e)%BigInt(t)===0n;let n=1e-10;if(!ai(e)||Lu(e)&&1/t%1===0)return!0;let r=e%t;return Math.min(Math.abs(r),Math.abs(r-t),Math.abs(r+t))<n}function VS(e){if(!Oo(e))return!1;let t=globalThis.Object.getPrototypeOf(e);return ii(t)?!1:te(typeof t.constructor,"function")&&!(te(t.constructor,globalThis.Object)||te(t.constructor.name,"Object"))}function vd(e){return Ro(e)||wd(e)||ii(e)||ai(e)||mi(e)||ju(e)}function JS(e){return yd(e)}function YS(e,t){return bd(e,t)}function XS(e,t){return Id(e,t)}function ZS(e,t,n){return e.every((r,o)=>o<t||n(r,o))}function QS(e,t,n){let r=!0;return e.forEach((o,i)=>{i>=t&&!n(o,i)&&(r=!1)}),r}function eP(e,t){return e.some((n,r)=>t(n,r))}function tP(e,t){let n=!1;return e.forEach((r,o)=>{t(r,o)&&(n=!0)}),n}function nP(e,t){return e.reduce((n,r,o)=>t(r,o)?++n:n,0)}function ui(e,t,n){return te(e.length,0)?n():t(e[0],e.slice(1))}function Sd(e){return te(e,"__proto__")||te(e,"constructor")||te(e,"prototype")}function rP(e,t){return Sd(t)?Object.prototype.hasOwnProperty.call(e,t):t in e}function oP(e){return si(e).map(t=>[new RegExp(`^${t}$`),e[t]])}function sP(e){return Object.entries(e)}function si(e){return Object.getOwnPropertyNames(e)}function iP(e){return Object.getOwnPropertySymbols(e)}function aP(e){return Object.values(e)}function mP(e,t){if(!Oo(t))return!1;let n=si(e);return te(n.length,si(t).length)&&n.every(r=>Fu(e[r],t[r]))}function uP(e,t){return Ao(t)&&te(e.length,t.length)&&e.every((n,r)=>Fu(e[r],t[r]))}function Fu(e,t){return Ao(e)?uP(e,t):Oo(e)?mP(e,t):te(e,t)}var qr=m(()=>{$d()});var Pd=m(()=>{qr()});var _n={};Ot(_n,{IsBigInt64Array:()=>TP,IsBigUint64Array:()=>EP,IsBoolean:()=>cP,IsDate:()=>SP,IsFloat32Array:()=>wP,IsFloat64Array:()=>kP,IsInt16Array:()=>yP,IsInt32Array:()=>bP,IsInt8Array:()=>gP,IsMap:()=>RP,IsNumber:()=>lP,IsRegExp:()=>vP,IsSet:()=>PP,IsString:()=>dP,IsTypeArray:()=>fP,IsUint16Array:()=>IP,IsUint32Array:()=>$P,IsUint8Array:()=>xP,IsUint8ClampedArray:()=>hP});function cP(e){return e instanceof Boolean}function lP(e){return e instanceof Number}function dP(e){return e instanceof String}function fP(e){return globalThis.ArrayBuffer.isView(e)}function gP(e){return e instanceof globalThis.Int8Array}function xP(e){return e instanceof globalThis.Uint8Array}function hP(e){return e instanceof globalThis.Uint8ClampedArray}function yP(e){return e instanceof globalThis.Int16Array}function IP(e){return e instanceof globalThis.Uint16Array}function bP(e){return e instanceof globalThis.Int32Array}function $P(e){return e instanceof globalThis.Uint32Array}function wP(e){return e instanceof globalThis.Float32Array}function kP(e){return e instanceof globalThis.Float64Array}function TP(e){return e instanceof globalThis.BigInt64Array}function EP(e){return e instanceof globalThis.BigUint64Array}function vP(e){return e instanceof globalThis.RegExp}function SP(e){return e instanceof globalThis.Date}function PP(e){return e instanceof globalThis.Set}function RP(e){return e instanceof globalThis.Map}var Rd=m(()=>{});var Ad=m(()=>{qr()});var v=m(()=>{Pd();Rd();Ad();qr();qr()});var Xt={};Ot(Xt,{Get:()=>CP,Reset:()=>OP,Set:()=>MP});function OP(){pn.immutableTypes=!1,pn.maxErrors=8,pn.maxInstantiationCount=128,pn.useAcceleration=!0,pn.exactOptionalPropertyTypes=!1,pn.enumerableKind=!1,pn.correctiveParse=!1,pn.unionPrioritySort=!0}function MP(e){for(let t of u.Keys(e)){let n=e[t];n!==void 0&&Object.defineProperty(pn,t,{value:n})}}function CP(){return pn}var pn,Od=m(()=>{v();pn={immutableTypes:!1,maxErrors:8,maxInstantiationCount:128,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0}});var pr=m(()=>{Od()});function Un(e){return Xt.Get().immutableTypes?Object.freeze(e):e}var Mo=m(()=>{pr()});function LP(e,t){return Yt.assign+=1,Un({...e,...t})}var Md=m(()=>{mr();Mo()});function jP(e){return u.HasPropertyKey(e,"~kind")||u.HasPropertyKey(e,"~unsafe")}function FP(e){let t={};for(let n of u.Keys(e)){if(u.IsUnsafePropertyKey(n))continue;let r=Object.getOwnPropertyDescriptor(e,n);r.value=cr(r.value),u.IsEqual(r.enumerable,!0)?t[n]=r.value:Object.defineProperty(t,n,r)}return t}function DP(e){let t={};for(let n of u.Keys(e))u.IsUnsafePropertyKey(n)||(t[n]=cr(e[n]));for(let n of u.Symbols(e))t[n]=cr(e[n]);return t}function NP(e){return u.IsClassInstance(e)?e:jP(e)?FP(e):DP(e)}function qP(e){return e.map(t=>cr(t))}function _P(e){return e.slice()}function UP(e){return new RegExp(e.source,e.flags)}function GP(e){return new Map(cr([...e.entries()]))}function KP(e){return new Set(cr([...e.values()]))}function cr(e){return _n.IsTypeArray(e)?_P(e):_n.IsRegExp(e)?UP(e):_n.IsMap(e)?GP(e):_n.IsSet(e)?KP(e):u.IsArray(e)?qP(e):u.IsObject(e)?NP(e):e}function Co(e){return Yt.clone+=1,cr(e)}var pi=m(()=>{v();mr()});function WP(e,t){for(let n of Object.keys(t))Object.defineProperty(e,n,{configurable:!0,writable:!0,enumerable:!1,value:t[n]});return e}function Cd(e,t){return{...e,...t}}function zP(e,t,n={}){Yt.create+=1;let r=Cd(t,n),o=Xt.Get().enumerableKind?Cd(r,e):WP(r,e);return Un(o)}var Ld=m(()=>{pr();mr();Mo()});function BP(e,t){Yt.discard+=1;let n={};for(let r of u.Keys(e)){if(t.includes(r))continue;let o=Object.getOwnPropertyDescriptor(e,r);o.value=Co(o.value),Object.defineProperty(n,r,o)}return Un(n)}var jd=m(()=>{v();mr();Mo();pi()});function HP(e,t,n){Yt.update+=1;let r=Xt.Get(),o=Co(e);for(let i of Object.keys(t))Object.defineProperty(o,i,{configurable:!0,writable:!0,enumerable:r.enumerableKind,value:t[i]});for(let i of Object.keys(n))Object.defineProperty(o,i,{configurable:!0,enumerable:!0,writable:!0,value:n[i]});return Un(o)}var Fd=m(()=>{pr();mr();Mo();pi()});var l={};Ot(l,{Assign:()=>LP,Clone:()=>Co,Create:()=>zP,Discard:()=>BP,Metrics:()=>Yt,Update:()=>HP});var Dd=m(()=>{Md();pi();Ld();jd();mr();Fd()});var k=m(()=>{Dd()});function P(e,t){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.IsEqual(e["~kind"],t)}function je(e){return u.IsObject(e)}var W=m(()=>{v()});function M(e,t,n){return l.Create({"~kind":"Deferred"},{type:"deferred",action:e,parameters:t,options:n},{})}function Gn(e){return P(e,"Deferred")}var ie=m(()=>{k();W()});function VP(e){return l.Update(e,{"~readonly":!0},{})}function Lo(e,t){return l.Update(VP(e),{},t)}function Nd(e,t,n,r){let o=$(e,t,n);return Lo(o,r)}var ci=m(()=>{k();D()});function JP(e){return l.Update(e,{"~optional":!0},{})}function jo(e,t){return l.Update(JP(e),{},t)}function qd(e,t,n,r){let o=$(e,t,n);return jo(o,r)}var li=m(()=>{k();D()});function Mt(e,t){return l.Create({"~kind":"Array"},{type:"array",items:e},t)}function $e(e){return P(e,"Array")}function di(e){return l.Discard(e,["~kind","type","items"])}var pt=m(()=>{k();W()});function cn(e,t,n={}){return l.Create({"~kind":"Constructor"},{type:"constructor",parameters:e,instanceType:t},n)}function _e(e){return P(e,"Constructor")}function _d(e){return l.Discard(e,["~kind","type","parameters","instanceType"])}var Nt=m(()=>{k();W()});function ln(e,t,n={}){return l.Create({"~kind":"Function"},{type:"function",parameters:e,returnType:t},n)}function Ue(e){return P(e,"Function")}function Ud(e){return l.Discard(e,["~kind","type","parameters","returnType"])}var qt=m(()=>{k();W()});function Mn(e,t){return l.Create({"~kind":"Ref"},{$ref:e},t)}function Ge(e){return P(e,"Ref")}var _t=m(()=>{k();W()});function Kn(e,t){return l.Create({"~kind":"Generic"},{type:"generic",parameters:e,expression:t})}function _r(e){return P(e,"Generic")}var Fo=m(()=>{k();W()});function Ur(e){return l.Create({"~kind":"Any"},{},e)}function Te(e){return P(e,"Any")}var ht=m(()=>{k();W()});function le(e){return l.Create({"~kind":"Never"},{not:{}},e)}function Zt(e){return P(e,"Never")}var Gd,Be=m(()=>{k();W();Gd="(?!)"});function dn(e,t={}){return M("AddOptional",[e],t)}function lr(e,t={}){return jo(e,t)}var Do=m(()=>{ie();li()});function Kd(e){return lr(e)}function rt(e){return je(e)&&u.HasPropertyKey(e,"~optional")}var Wn=m(()=>{v();W();Do()});function Wd(e){return u.Keys(e).filter(t=>!rt(e[t]))}function fi(e){return u.Keys(e)}function gi(e){return u.Values(e)}var dr=m(()=>{v();Wn()});function _(e,t={}){let n=Wd(e),r=n.length>0?{required:n}:{};return l.Create({"~kind":"Object"},{type:"object",...r,properties:e},t)}function me(e){return P(e,"Object")}function zd(e){return l.Discard(e,["~kind","type","properties","required"])}var ce=m(()=>{k();W();dr()});function He(e){return l.Create({"~kind":"Unknown"},{},e)}function Re(e){return P(e,"Unknown")}var Ze=m(()=>{k();W()});function fn(e,t,n){let r=u.Keys(e).reduce((o,i)=>({...o,[i]:l.Update(e[i],{},{$id:i})}),{});return l.Create({"~kind":"Cyclic"},{$defs:r,$ref:t},n)}function Qe(e){return P(e,"Cyclic")}var yt=m(()=>{v();k();W()});function Bd(e){return l.Update(e,{"~unsafe":null},{})}function xi(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"~unsafe")&&u.IsNull(e["~unsafe"])}var hi=m(()=>{v();k()});var gn={};Ot(gn,{Match:()=>YP});function YP(e,t){return t[e.length]?.(...e)??(()=>{throw Error("Invalid Arguments")})()}var Hd=m(()=>{});var Gr=m(()=>{Hd()});function No(...e){let[t,n]=gn.Match(e,{2:(r,o)=>[r,o,o],1:r=>[r,He(),He()]});return l.Create({"~kind":"Infer"},{type:"infer",name:t,extends:n},{})}function Ae(e){return P(e,"Infer")}var Ut=m(()=>{Gr();k();W();Ze()});function fr(e,t,n,r={}){return l.Create({"~kind":"Dependent"},{if:e,then:t,else:n},r)}function ve(e){return P(e,"Dependent")}function Vd(e){return l.Discard(e,["~kind","if","then","else"])}var St=m(()=>{k();W()});function Jd(e){return u.IsObjectNotArray(e)}function Yd(e){return u.Keys(e).filter(n=>isNaN(n)).reduce((n,r)=>[...n,e[r]],[])}var yi=m(()=>{v()});function Xd(e){return u.IsString(e)||u.IsNumber(e)}function Zd(e,t){let n=Jd(e)?Yd(e):e;return l.Create({"~kind":"Enum"},{enum:n},t)}function et(e){return P(e,"Enum")}var Qt=m(()=>{v();k();W();yi();yi()});function It(e,t={}){return l.Create({"~kind":"Intersect"},{allOf:e},t)}function Y(e){return P(e,"Intersect")}function Qd(e){return l.Discard(e,["~kind","allOf"])}var Fe=m(()=>{k();W()});var ef=m(()=>{pr();v()});var tf=m(()=>{ef()});var nf=m(()=>{tf()});function De(){throw new Error("Unreachable")}var Du=m(()=>{});var xn=m(()=>{Du()});var rf,TN,EN,vN,SN,of,PN,RN,AN,sf=m(()=>{xn();v();(function(e){e[e.Array=0]="Array",e[e.BigInt=1]="BigInt",e[e.Boolean=2]="Boolean",e[e.Date=3]="Date",e[e.Constructor=4]="Constructor",e[e.Function=5]="Function",e[e.Null=6]="Null",e[e.Number=7]="Number",e[e.Object=8]="Object",e[e.RegExp=9]="RegExp",e[e.String=10]="String",e[e.Symbol=11]="Symbol",e[e.TypeArray=12]="TypeArray",e[e.Undefined=13]="Undefined"})(rf||(rf={}));TN=BigInt("14695981039346656037"),[EN,vN]=[BigInt("1099511628211"),BigInt("18446744073709551616")],SN=Array.from({length:256}).map((e,t)=>BigInt(t)),of=new Float64Array(1),PN=new DataView(of.buffer),RN=new Uint8Array(of.buffer),AN=new TextEncoder});var af=m(()=>{sf()});var Nu=m(()=>{});var mf=m(()=>{Nu()});var uf=m(()=>{});var pf=m(()=>{});var cf=m(()=>{});var lf=m(()=>{});var df=m(()=>{});var ff=m(()=>{});var gf=m(()=>{});var xf=m(()=>{});var hf=m(()=>{});var yf=m(()=>{});var If=m(()=>{});var qu=m(()=>{});var bf=m(()=>{});var $f=m(()=>{});var wf=m(()=>{});var kf=m(()=>{});var Tf=m(()=>{});var Ef=m(()=>{});var vf=m(()=>{});var Sf=m(()=>{});var Pf=m(()=>{});var Rf=m(()=>{});var Af=m(()=>{});var Of=m(()=>{});var Mf=m(()=>{});var Cf=m(()=>{});var Lf=m(()=>{});var jf=m(()=>{});var Ff=m(()=>{});var Df=m(()=>{});var Nf=m(()=>{});var qf=m(()=>{});var _f=m(()=>{});var Uf=m(()=>{});var Gf=m(()=>{});var Kf=m(()=>{});var Wf=m(()=>{});var zf=m(()=>{mf();uf();pf();cf();lf();df();Nu();ff();gf();xf();hf();yf();If();qu();qu();bf();$f();wf();kf();Tf();Ef();vf();Sf();Pf();Rf();Af();Of();Mf();Cf();Lf();jf();Ff();Df();Nf();qf();_f();Uf();Gf();Kf();Wf()});var Bf=m(()=>{zf()});var qo=m(()=>{Gr();nf();af();Bf();k();pr()});var Vf=m(()=>{qo();qo();qo()});function bi(e){return new Uo(e)}function Jf(e,t){return bi(e).Decode(t).Encode(()=>{throw Error("Encode not implemented")})}function Yf(e,t){return bi(e).Decode(()=>{throw Error("Decode not implemented")}).Encode(t)}function Ii(e){return je(e)&&u.HasPropertyKey(e,"~codec")&&u.IsObject(e["~codec"])&&u.HasPropertyKey(e["~codec"],"encode")&&u.HasPropertyKey(e["~codec"],"decode")}var _o,Uo,_u=m(()=>{Vf();v();W();_o=class{constructor(t,n){this.type=t,this.decode=n}Encode(t){let n=this.type,r=Ii(n)?a=>this.decode(n["~codec"].decode(a)):this.decode,o=Ii(n)?a=>n["~codec"].encode(t(a)):t,i={decode:r,encode:o};return l.Update(this.type,{"~codec":i},{})}},Uo=class{constructor(t){this.type=t}Decode(t){return new _o(this.type,t)}}});function Xf(e){return Kr(e)}function gr(e){return je(e)&&u.HasPropertyKey(e,"~immutable")}var Go=m(()=>{v();W();Ko()});function hn(e,t={}){return M("AddReadonly",[e],t)}function xr(e,t={}){return Lo(e,t)}var Wo=m(()=>{ie();ci()});function Zf(e){return xr(e)}function hr(e){return je(e)&&u.HasPropertyKey(e,"~readonly")}var zo=m(()=>{v();W();Wo()});function eR(e,t){let n=Uu(e)?[...e["~refine"],t]:[t];return l.Update(e,{"~refine":n},{})}function Qf(...e){let[t,n,r]=gn.Match(e,{3:(o,i,a)=>[o,i,a],2:(o,i)=>[o,i,()=>"Refine Error"]});return eR(t,{check:n,error:r})}function tR(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"check")&&u.HasPropertyKey(e,"error")&&u.IsFunction(e.check)&&u.IsFunction(e.error)}function Uu(e){return je(e)&&u.HasPropertyKey(e,"~refine")&&u.IsArray(e["~refine"])&&u.Every(e["~refine"],0,t=>tR(t))}var Gu=m(()=>{Gr();k();v();W()});function Bo(e){return l.Create({"~kind":"BigInt"},{type:"bigint"},e)}function yn(e){return P(e,"BigInt")}var eg,yr=m(()=>{k();W();eg="-?(?:0|[1-9][0-9]*)n"});function $i(e){return l.Create({"~kind":"Boolean"},{type:"boolean"},e)}function Gt(e){return P(e,"Boolean")}var zn=m(()=>{k();W()});function Ho(e){return l.Create({"~kind":"Identifier"},{name:e})}function tg(e){return P(e,"Identifier")}var Ku=m(()=>{k();W()});function Ir(e){return l.Create({"~kind":"Integer"},{type:"integer"},e)}function ct(e){return P(e,"Integer")}var wi,In=m(()=>{k();W();wi="-?(?:0|[1-9][0-9]*)"});function nR(e){return u.IsBigInt(e)?"bigint":u.IsBoolean(e)?"boolean":u.IsNumber(e)?"number":u.IsString(e)?"string":(()=>{throw new Wu(e)})()}function X(e,t){return l.Create({"~kind":"Literal"},{type:nR(e),const:e},t)}function ki(e){return u.IsBigInt(e)||u.IsBoolean(e)||u.IsNumber(e)||u.IsString(e)}function ng(e){return ue(e)&&u.IsNumber(e.const)}function rg(e){return ue(e)&&u.IsString(e.const)}function ue(e){return P(e,"Literal")}var Wu,Me=m(()=>{k();v();W();Wu=class extends Error{constructor(t){super("Invalid Literal value"),Object.defineProperty(this,"cause",{value:{value:t},writable:!1,configurable:!1,enumerable:!1})}}});function Wr(e){return l.Create({"~kind":"Null"},{type:"null"},e)}function zr(e){return P(e,"Null")}var Br=m(()=>{k();W()});function Pt(e){return l.Create({"~kind":"Number"},{type:"number"},e)}function Ce(e){return P(e,"Number")}var Ti,lt=m(()=>{k();W();Ti="-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?"});function Hr(e){return l.Create({"~kind":"Symbol"},{type:"symbol"},e)}function Bn(e){return P(e,"Symbol")}var br=m(()=>{k();W()});function $r(...e){let[t,n,r]=gn.Match(e,{3:(o,i,a)=>[o,i,a],2:(o,i)=>[o,i,i],1:o=>[o,He(),He()]});return l.Create({"~kind":"Parameter"},{name:t,extends:n,equals:r},{})}function og(e){return P(e,"Parameter")}var zu=m(()=>{Gr();k();W();Ze()});function Kt(e){return l.Create({"~kind":"String"},{type:"string"},e)}function dt(e){return P(e,"String")}var Ei,Wt=m(()=>{k();W();Ei=".*"});function H(e,t={}){return l.Create({"~kind":"Union"},{anyOf:e},t)}function O(e){return P(e,"Union")}function sg(e){return l.Discard(e,["~kind","anyOf"])}var V=m(()=>{k();W()});function Vo(e){let t=ig(e);return u.IsEqual(t.length,2)?t[0]:[]}var Jo=m(()=>{v();vi()});function rR(e){return!0}function ag(e){return u.ShiftLeft(e,(t,n)=>oR(t)?ag(n):!1,()=>!0)}function mg(e){return u.IsEqual(e.length,0)?!1:ag(e)}function oR(e){return O(e)?mg(e.anyOf):ue(e)?rR(e.const):!1}function Si(e){return mg(e)}var Pi=m(()=>{v();Me();V()});function Ri(e){return l.Create({"~kind":"TemplateLiteral"},{type:"string",pattern:e},{})}var Ai=m(()=>{k()});function ug(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>ug(o,t,[...n,`${r}${t}`]),()=>n)}function sR(e,t){return u.IsEqual(e.length,0)?[`${t}`]:ug(e,t)}function pg(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>pg(e,o,[...n,...cg(e,r)]),()=>n)}function cg(e,t){return O(t)?pg(e,t.anyOf):ue(t)?sR(e,t.const):De()}function lg(e,t){return u.ShiftLeft(t,(n,r)=>lg(cg(e,n),r),()=>e)}function iR(e){return e.map(t=>X(t))}function aR(e){let t=lg([],e),n=iR(t);return H(n)}function mR(e){return u.IsEqual(e.length,0)?De():u.IsEqual(e.length,1)&&ue(e[0])?e[0]:aR(e)}function Bu(e){let t=Vo(e);return u.IsEqual(t.length,0)?Kt():Si(t)?mR(t):Ri(e)}function dg(e){let t=Bu(e);return Se(t)?Kt():t}var Oi=m(()=>{v();xn();Me();Wt();bt();V();Jo();Pi();Ai()});function $t(e,t){let n="object",r={[e]:t};return l.Create({"~kind":"Record"},{type:n,patternProperties:r})}var Hn=m(()=>{k()});function fg(e){return $t(en,e)}var gg=m(()=>{Ve();Hn()});function xg(e){return _({true:e,false:e})}var hg=m(()=>{ce()});function Le(e,t={}){let[n,r,o]=[e,e.length,!1];return l.Create({"~kind":"Tuple"},{type:"array",additionalItems:o,items:n,minItems:r},t)}function fe(e){return P(e,"Tuple")}function yg(e){return l.Discard(e,["~kind","type","items","minItems","additionalItems"])}var Ne=m(()=>{k();W()});function uR(e){return l.Discard(e,["~readonly"])}function Hu(e,t){return l.Update(uR(e),{},t)}function Ig(e,t,n,r){let o=$(e,t,n);return Hu(o,r)}var Vu=m(()=>{k();D()});function bg(e,t={}){return M("RemoveReadonly",[e],t)}function $g(e,t={}){return Hu(e,t)}var Ju=m(()=>{ie();Vu()});function pR(e){return l.Discard(e,["~optional"])}function Yu(e,t){return l.Update(pR(e),{},t)}function wg(e,t,n,r){let o=$(e,t,n);return Yu(o,r)}var Xu=m(()=>{k();D()});function kg(e,t={}){return M("RemoveOptional",[e],t)}function Mi(e,t={}){return Yu(e,t)}var Ci=m(()=>{ie();Xu()});function Zu(e){return e.reduceRight((n,r,o)=>({[o]:r,...n}),{})}function Tg(e){let t=Zu(e.items);return _(t)}var Qu=m(()=>{ce()});function ep(e){return me(e)||fe(e)}function cR(e,t){return hr(e)?!!hr(t):!1}function lR(e,t){return rt(e)?!!rt(t):!1}function dR(e,t){let n=cR(e,t),r=lR(e,t),o=we([e,t]),i=$g(Mi(o));return n&&r?xr(lr(i)):n&&!r?xr(i):!n&&r?lr(i):i}function fR(e,t,n){return n in e?n in t?dR(e[n],t[n]):e[n]:n in t?t[n]:le()}function gR(e,t){return[...new Set([...u.Keys(e),...u.Keys(t)])].reduce((o,i)=>({...o,[i]:fR(e,t,i)}),{})}function Eg(e){return me(e)?e.properties:fe(e)?Zu(e.items):{}}function vg(e,t){let n=Eg(e),r=Eg(t),o=gR(n,r);return _(o)}var tp=m(()=>{v();zo();Wn();ce();Be();Ne();Wo();Do();Ju();Ci();Qu();B()});function xR(e,t){let n=Zo(e,t);return u.IsEqual(n,Xo)?e:u.IsEqual(n,Li)||u.IsEqual(n,Yo)?t:le()}function hR(e,t){let n=ep(e),r=ep(t);return n&&r?vg(e,t):n&&!r?e:!n&&r?t:xR(e,t)}function Sg(e,t){return Zt(e)||Te(e)?e:Re(e)||Zt(t)||Te(t)?t:Re(t)?e:hR(e,t)}var np=m(()=>{v();ht();Be();Ze();Qo();tp()});function yR(e,t){return O(e)||O(t)}function IR(e,t){let n=zt(e),r=zt(t);return yR(n,r)?we([n,r]):Sg(n,r)}function Pg(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>Pg(e,o,[...n,IR(r,e)]),()=>u.IsEqual(n.length,0)?[e]:n)}function Rg(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Rg(o,t,[...n,...es([r],t)]),()=>n)}function es(e,t=[]){return u.ShiftLeft(e,(n,r)=>O(n)?es(r,Rg(n.anyOf,t)):es(r,Pg(n,t)),()=>t)}var rp=m(()=>{v();V();np();B();B()});function bR(e,t){let n=tt({},e,t);return U.IsExtendsTrueLike(n)?[]:[e]}function Ag(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Ag(o,t,[...n,...bR(r,t)]),()=>n)}function ji(e,t){let n=zt(e),r=O(n)?n.anyOf:[n],o=Ag(r,t);return wt(o)}var op=m(()=>{v();V();bn();B();B()});function tn(e,t,n){let r=we([e,t]),o=ji(n,e);return wt([r,o])}function ft(e,t=[]){return u.ShiftLeft(e,(n,r)=>ft(r,[...t,X(n)]),()=>wt(t))}function we(e){let t=es(e),n=sp(t);return wt(n)}function ot(e){let t=dg(e);return zt(t)}function wt(e){let t=sp(e);return Vn(t)}function zt(e){return ve(e)?tn(e.if,e.then,e.else):et(e)?ft(e.enum):Y(e)?we(e.allOf):Se(e)?ot(e.pattern):O(e)?wt(e.anyOf):e}function Vn(e){return u.IsEqual(e.length,1)?e[0]:u.IsEqual(e.length,0)?le():H(e)}var B=m(()=>{v();St();Qt();Fe();Me();Be();bt();V();rp();ip();op();Oi()});function Og(e,t){let n=ft(e);return Jn(n,t)}var Mg=m(()=>{ts();B()});function Cg(e,t){return $t(Yn,t)}var Lg=m(()=>{Ve();Hn()});function jg(e,t){let n=we(e);return Jn(n,t)}var Fg=m(()=>{B();ts()});function Dg(e,t){return u.IsString(e)||u.IsNumber(e)?_({[e]:t}):u.IsEqual(e,!1)?_({false:t}):u.IsEqual(e,!0)?_({true:t}):_({})}var Ng=m(()=>{v();ce()});function qg(e,t){return $t(Vr,t)}var _g=m(()=>{Ve();Hn()});function Ug(e,t){return u.HasPropertyKey(e,"pattern")&&(u.IsString(e.pattern)||e.pattern instanceof RegExp)?$t(e.pattern.toString(),t):$t(en,t)}var Gg=m(()=>{v();Ve();Hn()});function Kg(e,t){let n=Vo(e);return Si(n)?Jn(ot(e),t):$t(e,t)}var Wg=m(()=>{ts();Jo();Pi();B();Hn()});function $R(e){return O(e)?Jr(e.anyOf):[e]}function Jr(e,t=[]){return u.ShiftLeft(e,(n,r)=>Jr(r,[...t,...$R(n)]),()=>t)}var Fi=m(()=>{v();V()});function wR(e){return e.some(t=>dt(t)||Ce(t)||ct(t))}function kR(e,t){return u.IsEqual(wR(e),!0)?$t(en,t):void 0}function TR(e,t){return e.reduce((n,r)=>ue(r)&&(u.IsString(r.const)||u.IsNumber(r.const))?{...n,[r.const]:t}:n,{})}function ER(e,t){let n=TR(e,t);return _(n)}function zg(e,t){let n=Jr(e),r=kR(n,t);return je(r)?r:ER(n,t)}var Bg=m(()=>{v();W();Me();lt();In();ce();Wt();Ve();Fi();Hn()});function Jn(e,t){return Te(e)?fg(t):Gt(e)?xg(t):et(e)?Og(e.enum,t):ct(e)?Cg(e,t):Y(e)?jg(e.allOf,t):ue(e)?Dg(e.const,t):Ce(e)?qg(e,t):O(e)?zg(e.anyOf,t):dt(e)?Ug(e,t):Se(e)?Kg(e.pattern,t):_({})}var ts=m(()=>{ht();zn();Qt();Fe();In();Me();lt();ce();Wt();bt();V();gg();hg();Mg();Lg();Fg();Ng();_g();Gg();Wg();Bg()});function ap(e,t,n){return K([e])?l.Update(Jn(e,t),{},n):Ni(e,t,n)}function Hg(e,t,n,r,o){let i=$(e,t,n),a=$(e,t,r);return ap(i,a,o)}var Di=m(()=>{k();Ve();ts();D()});function Ni(e,t,n={}){return M("Record",[e,t],n)}function qi(e,t,n={}){return ap(e,t,n)}function Vg(e,t){return $t(e,t)}function _i(e){return u.IsEqual(e,en)?Kt():u.IsEqual(e,Yn)?Ir():u.IsEqual(e,Vr)?Pt():Bu(e)}function Bt(e){return u.Keys(e.patternProperties)[0]}function Yr(e){let t=Bt(e);return _i(t)}function gt(e){return e.patternProperties[Bt(e)]}function nt(e){return P(e,"Record")}var Yn,Vr,en,Ve=m(()=>{k();v();W();In();lt();Wt();ie();Oi();Hn();Di();Yn=`^${wi}$`,Vr=`^${Ti}$`,en=`^${Ei}$`});function wr(e){return l.Create({"~kind":"Rest"},{type:"rest",items:e},{})}function Xn(e){return P(e,"Rest")}var Xr=m(()=>{k();W()});var Jg=m(()=>{});function Ui(e){return l.Create({"~kind":"This"},{$ref:"#"},e)}function Gi(e){return P(e,"This")}var Ki=m(()=>{k();W()});function Zr(e){return l.Create({"~kind":"Undefined"},{type:"undefined"},e)}function Qr(e){return P(e,"Undefined")}var eo=m(()=>{k();W()});function Wi(e){return l.Create({"~kind":"Void"},{type:"void"},e)}function $n(e){return P(e,"Void")}var kr=m(()=>{k();W()});var zi=m(()=>{_u();Go();Wn();zo();Gu();ht();pt();yr();zn();to();Nt();yt();ie();Qt();qt();Fo();Ku();St();Ut();In();Fe();Me();Be();Br();lt();Ze();br();ce();zu();dr();Ve();_t();Xr();W();Jg();Wt();br();bt();Ki();Ne();eo();V();Ze();hi();kr()});function SR(e,t){return u.IsEqual(e,"Array")?Mt(t[0]):u.IsEqual(e,"Capitalize")?Hi(t[0]):u.IsEqual(e,"ConstructorParameters")?Zi(t[0]):u.IsEqual(e,"Evaluate")?Xh(t[0]):u.IsEqual(e,"Exclude")?Qi(t[0],t[1]):u.IsEqual(e,"Extract")?ea(t[0],t[1]):u.IsEqual(e,"Index")?ss(t[0],t[1]):u.IsEqual(e,"InstanceType")?ta(t[0]):u.IsEqual(e,"Lowercase")?Vi(t[0]):u.IsEqual(e,"NonNullable")?na(t[0]):u.IsEqual(e,"Omit")?ra(t[0],t[1]):u.IsEqual(e,"Parameters")?oa(t[0]):u.IsEqual(e,"Partial")?sa(t[0]):u.IsEqual(e,"Pick")?ia(t[0],t[1]):u.IsEqual(e,"Readonly")?aa(t[0]):u.IsEqual(e,"KeyOf")?is(t[0]):u.IsEqual(e,"Record")?Ni(t[0],t[1]):u.IsEqual(e,"Required")?ma(t[0]):u.IsEqual(e,"ReturnType")?ua(t[0]):u.IsEqual(e,"Uncapitalize")?Ji(t[0]):u.IsEqual(e,"Uppercase")?Yi(t[0]):os(Mn(e),t)}function Tr(){throw Error("Unreachable")}function ex(e,t=[]){return u.ShiftLeft(e,(n,r)=>ex(r,[...t,n[1]]),()=>t)}function Cn(e){return u.IsEqual(e.length,3)?[e[0],...ex(e[1])]:[]}function tx(e){return $r(e[0],e[2],e[4])}function nx(e){return $r(e[0],e[2],e[2])}function rx(e){return $r(e[0],He(),e[2])}function ox(e){return $r(e,He(),He())}function sx(e){return Cn(e)}function ix(e){return e[1]}function ax(e){return Cn(e)}function mx(e){return e[1]}function ux(e){return SR(e[0],e[1])}function px(e){return null}function cx(e){return Kt()}function lx(e){return Pt()}function dx(e){return $i()}function fx(e){return Zr()}function gx(e){return Wr()}function xx(e){return Ir()}function hx(e){return Bo()}function yx(e){return He()}function Ix(e){return Ur()}function bx(e){return _({})}function $x(e){return le()}function wx(e){return Hr()}function kx(e){return Wi()}function Tx(e){return Ui()}function Ex(e){return X(BigInt(e))}function vx(e){return X(u.IsEqual(e,"true"))}function Sx(e){return X(parseFloat(e))}function Px(e){return X(e)}function Rx(e){return e[1]}function Ax(e){return X(e)}function Ox(e){return u.IsEqual(e.length,3)?[e[0],e[1],...e[2]]:[e[0]]}function Mx(e){return e[1]}function Cx(e){return Bi(e)}function Lx(e){return u.IsEqual(e.length,6)?fr(e[1],e[3],e[5]):fr(e[1],e[3],He())}function jx(e){return e.length>0}function Fx(e){return e.reduce((t,n)=>u.IsEqual(n.length,3)?[...t,[n[1]]]:[...t,[]],[])}function Dx(e){return u.IsEqual(e.length,6)?[e[1],e[3],e[5]]:[]}function Nx(e){return u.IsArray(e)&&u.IsEqual(e.length,3)?e[1]:e}function qx(e){return u.IsEqual(e.length,2)?e[1]:[]}function Yg(e,t){return t.reduce((n,r)=>{let o=r;return u.IsEqual(o.length,1)?ss(n,o[0]):u.IsEqual(o.length,0)?Mt(n):Tr()},e)}function Xg(e,t){return u.IsEqual(t.length,3)?Xi(e,t[0],t[1],t[2]):e}function PR(e,t){return u.IsArray(t)&&u.IsEqual(t.length,0)?e:pa(e,t)}function _x(e){let[t,n,r,o,i]=e;return PR(Xg(t?is(Yg(n,r)):Yg(n,r),o),i)}function mp(e,t){return u.IsEqual(t.length,3)?(()=>{let[n,r,o]=t,i=mp(r,o);if(u.IsEqual(n,"&"))return Y(i)?It([e,...i.allOf]):It([e,i]);if(u.IsEqual(n,"|"))return O(i)?H([e,...i.anyOf]):H([e,i]);Tr()})():e}function Ux(e){let[t,n]=e;return mp(t,n)}function Gx(e){let[t,n]=e;return mp(t,n)}function Kx(e){return Yh(e[1])}function Wx(e){return e[1]}function zx(e){return Kn(e[0],e[2])}function Bx(e){return u.IsEqual(e.length,4)?No(e[1],e[3]):u.IsEqual(e.length,2)?No(e[1],He()):Tr()}function Hx(e){return`${e}`}function Vx(e){return ct(e[3])?Yn:Ce(e[3])?Vr:Bn(e[3])?en:dt(e[3])?en:Tr()}function Jx(e){return e.length>0}function Yx(e){return e.length>0}function Xx(e){let[t,n,r,o,i]=e;return{[n]:t&&r?hn(dn(i)):t&&!r?hn(i):!t&&r?dn(i):i}}function Zx(e){return Cn(e)}function Qx(e){return e.reduce((t,n)=>u.HasPropertyKey(n,Yn)||u.HasPropertyKey(n,Vr)||u.HasPropertyKey(n,en)?[t[0],l.Assign(t[1],n)]:[l.Assign(t[0],n),t[1]],[{},{}])}function eh(e){return Qx(e[1])}function th(e){let[t,n]=e,r=u.IsEqual(u.Keys(n).length,0)?{}:{patternProperties:n};return _(t,r)}function nh(e){return u.IsEqual(e.length,5)?hn(dn(e[4])):u.IsEqual(e.length,3)?e[2]:u.IsEqual(e.length,4)?u.IsEqual(e[2],"readonly")?hn(e[3]):dn(e[3]):Tr()}function rh(e){if(!u.IsArray(e)||!u.IsEqual(e.length,3))return e;let[t,n,r]=e;return t&&r?hn(dn(n)):t&&!r?hn(n):!t&&r?dn(n):n}function oh(e){return u.IsEqual(e.length,2)?wr(e[1]):u.IsEqual(e.length,1)?e[0]:Tr()}function sh(e){return Cn(e)}function ih(e){return Le(e[1])}function ah(e){return hn(dn(e[4]))}function mh(e){return hn(e[3])}function uh(e){return dn(e[3])}function ph(e){return e[2]}function ch(e){return u.IsEqual(e.length,2)?wr(e[1]):u.IsEqual(e.length,1)?e[0]:Tr()}function lh(e){return Cn(e)}function dh(e){return ln(e[1],e[4])}function fh(e){return cn(e[2],e[5])}function Zg(e,t){return u.IsEqual(e,"remove")?bg(t):u.IsEqual(e,"add")?hn(t):t}function gh(e){return u.IsEqual(e.length,2)&&u.IsEqual(e[0],"-")?"remove":u.IsEqual(e.length,2)&&u.IsEqual(e[0],"+")||u.IsEqual(e.length,1)?"add":"none"}function Qg(e,t){return u.IsEqual(e,"remove")?kg(t):u.IsEqual(e,"add")?dn(t):t}function xh(e){return u.IsEqual(e.length,2)&&u.IsEqual(e[0],"-")?"remove":u.IsEqual(e.length,2)&&u.IsEqual(e[0],"+")||u.IsEqual(e.length,1)?"add":"none"}function hh(e){return u.IsEqual(e.length,2)?[e[1]]:[]}function yh(e){return u.IsArray(e[6])&&u.IsEqual(e[6].length,1)?ns(Ho(e[3]),e[5],e[6][0],Zg(e[1],Qg(e[8],e[10]))):ns(Ho(e[3]),e[5],Mn(e[3]),Zg(e[1],Qg(e[8],e[10])))}function Ih(e){return Mn(e)}function bh(e){return BigInt(e)}function $h(e){return parseFloat(e)}function wh(e){return u.IsEqual(e,"true")}function kh(e){return null}function Th(e){return{[e[0]]:e[2]}}function Eh(e){return Cn(e)}function RR(e){return e.reduce((t,n)=>l.Assign(t,n),{})}function vh(e){return RR(e[1])}function Sh(e){return Cn(e)}function Ph(e){return e[1]}function Rh(e){return Bo()}function Ah(e){return Kt()}function Oh(e){return Pt()}function Mh(e){return Ir()}function Ch(e){return le()}function Lh(e){return X(e)}function jh(e){return H(e[1])}function Fh(e){return e.length===3?[...e[0],...e[2]]:e.length===1?[...e[0]]:[]}function Dh(e){return[e[0],...e[1]]}function Nh(e){return e[1]}function qh(e){return Cn(e)}function _h(e){return u.IsEqual(e.length,2)?e[1]:[]}function Uh(e){let t=e[2],n=e[3],[r,o]=e[4],i=u.IsEqual(u.Keys(o).length,0)?{}:{patternProperties:o};return{[e[1]]:Kn(t,rs(n,r,i))}}function Gh(e){let t=e[2],[n,r]=e[3],o=u.IsEqual(u.Keys(r).length,0)?{}:{patternProperties:r};return{[e[1]]:rs(t,n,o)}}function Kh(e){return{[e[1]]:Kn(e[2],e[4])}}function Wh(e){return{[e[1]]:e[3]}}function zh(e){return null}function Bh(e){return Cn(e)}function Hh(e){return e[1]}function Vh(e){let[t,n]=[e[0],e[1]];return Zh(l.Assign(t,Qx(n)[0]))}var Jh=m(()=>{k();v();zi();no()});var Ln=m(()=>{qr()});function as(e){return te(e.length,2)}function J(e,t,n){return as(e)?t(e[0],e[1]):n()}var Rt=m(()=>{Ln()});function MR(e,t){return te(t.indexOf(e),0)?[e,t.slice(e.length)]:[]}function Ee(e,t){for(let n=0;n<e.length;n++){let r=MR(e[n],t);if(as(r))return r}return[]}var wn=m(()=>{Rt();Ln()});function up(e,t){return Array.from({length:t-e+1},(n,r)=>String.fromCharCode(e+r))}var Qh,pp,cp,ro,ey,oo,Zn,ca,ty,la,st=m(()=>{Qh=[...up(97,122),...up(65,90)],pp="0",cp=up(49,57),ro=[pp,...cp],ey=" ",oo=`
|
|
10
|
-
`,Zn="_",ca=".",ty="$",la="-"});function oy(e){let t=e.indexOf(LR);return te(t,-1)?"":e.slice(t+2)}function sy(e){let t=e.indexOf(oo);return te(t,-1)?"":e.slice(t)}function jR(e){return e.replace(/^[ \t\r\f\v]+/,"")}function da(e){let t=jR(e);return t.startsWith(ry)?da(oy(t.slice(2))):t.startsWith(ny)?da(sy(t.slice(2))):t}function Je(e){let t=e.trimStart();return t.startsWith(ry)?Je(oy(t.slice(2))):t.startsWith(ny)?Je(sy(t.slice(2))):t}var ny,ry,LR,kn=m(()=>{Ln();st();ny="//",ry="/*",LR="*/"});function fa(e,t){return J(Ee([e],t),(n,r)=>[n,r],()=>["",t])}var lp=m(()=>{Rt();wn()});function FR(e,t){return e.includes(t)}function so(e,t,n,r=""){return J(Ee(e,n),(o,i)=>FR(t,o)?so(e,t,i,r):so(e,t,i,`${r}${o}`),()=>[r,n])}var dp=m(()=>{Rt();wn()});function DR(e){return Ee(cp,e)}function qR(e){return so(NR,[Zn],e)}function _R(e){return J(Ee([pp],e),(t,n)=>[t,n],()=>J(DR(e),(t,n)=>J(qR(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[]))}function ga(e){return _R(Je(e))}var NR,xa=m(()=>{Rt();kn();wn();dp();st();st();st();st();NR=[...ro,Zn]});function UR(e){return fa(la,e)}function GR(e){return J(UR(e),(t,n)=>J(ga(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function iy(e){return GR(Je(e))}var fp=m(()=>{Rt();kn();lp();st();xa()});function KR(e){return J(iy(e),(t,n)=>J(Ee(["n"],n),(r,o)=>[`${t}`,o],()=>[]),()=>[])}function gp(e){return KR(e)}var ay=m(()=>{Rt();wn();fp()});function xp(e,t){return Ee([e],t)}function f(e,t){return te(e,"")?["",t]:e.startsWith(oo)?xp(e,da(t)):e.startsWith(ey)?xp(e,t):xp(e,Je(t))}var my=m(()=>{Ln();kn();kn();wn();st();st()});function WR(e){return Ee(uy,e)}function py(e,t=""){return J(Ee(zR,e),(n,r)=>py(r,`${t}${n}`),()=>[t,e])}function BR(e){return J(WR(e),(t,n)=>J(py(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Pe(e){return BR(Je(e))}var uy,zR,cy=m(()=>{Rt();kn();wn();st();st();st();st();uy=[...Qh,Zn,ty];zR=[...uy,...ro]});function VR(e){return as(Ee([ca],e))}function ly(e){return J(so(HR,[Zn],e),(t,n)=>te(t,"")?[]:[t,n],()=>[])}function JR(e){return J(Ee([ca],e),(t,n)=>J(ly(n),(r,o)=>[`0${t}${r}`,o],()=>[]),()=>[])}function YR(e){return J(ga(e),(t,n)=>J(Ee([ca],n),(r,o)=>J(ly(o),(i,a)=>[`${t}${r}${i}`,a],()=>[`${t}`,o]),()=>[`${t}`,n]),()=>[])}function XR(e){return VR(e)?JR(e):YR(e)}function dy(e){return XR(Je(e))}var HR,hp=m(()=>{Ln();Rt();kn();wn();dp();st();st();xa();HR=[...ro,Zn]});function ZR(e){return fa(la,e)}function QR(e){return J(ZR(e),(t,n)=>J(dy(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function ha(e){return QR(Je(e))}var fy=m(()=>{Rt();kn();lp();st();hp()});var gy=m(()=>{Ln()});function eA(e){return te(e,"")?[]:[e.slice(0,1),e.slice(1)]}function xy(e,t){return ui(e,(n,r)=>t.startsWith(n)?!0:xy(r,t),()=>!1)}function Qn(e,t,n=""){return J(eA(t),(r,o)=>xy(e,t)?[n,t]:Qn(e,o,`${n}${r}`),()=>[])}var ya=m(()=>{Rt();Ln()});function tA(e,t,n){return J(Ee([e],n),(r,o)=>J(Qn([t],o),(i,a)=>J(Ee([t],a),(p,c)=>[`${i}`,c],()=>[]),()=>[]),()=>[])}function nA(e,t,n){return J(Ee([e],n),(r,o)=>J(Qn([oo,t],o),(i,a)=>J(Ee([t],a),(p,c)=>[`${i}`,c],()=>[]),()=>[]),()=>[])}function hy(e,t,n,r){return n?tA(e,t,Je(r)):nA(e,t,Je(r))}var yp=m(()=>{Rt();kn();st();wn();ya()});function rA(e,t){return Ee(e,t)}function oA(e,t){return hy(e,e,!1,t)}function sA(e,t){return J(rA(e,t),(n,r)=>oA(n,`${n}${r}`),()=>[])}function Ia(e,t){return sA(e,Je(t))}var yy=m(()=>{Rt();wn();kn();yp()});function Iy(e,t){return J(Qn(e,t),(n,r)=>te(n,"")?[]:[n,r],()=>[])}var by=m(()=>{Ln();Rt();ya()});var $y=m(()=>{ay();my();cy();fp();fy();gy();yp();yy();xa();hp();by();ya()});var s,aA,mA,uA,pA,Ty,Ey,cA,$p,vy,lA,dA,fA,Sy,Py,Ry,gA,xA,hA,Ay,yA,IA,bA,$A,wA,Oy,kA,TA,EA,Ip,My,wp,vA,SA,PA,RA,AA,OA,MA,Cy,CA,LA,jA,FA,Ly,jy,Fy,Dy,ba,DA,NA,qA,_A,ne,UA,GA,KA,WA,Ny,qy,_y,Uy,$a,Gy,zA,kp,BA,HA,wy,Ky,Wy,VA,JA,YA,XA,ZA,QA,ky,zy,By,Hy,eO,tO,nO,rO,oO,sO,iO,aO,mO,uO,pO,cO,lO,Vy,Jy,dO,Yy,Xy,fO,gO,Tp,xO,hO,yO,IO,bO,$O,wO,kO,Zy,bp,Ep,ig,Qy,TO,eI,EO,vO,SO,PO,RO,tI,nI,AO,vp,OO,rI,vi=m(()=>{Jh();$y();s=(e,t,n=()=>[])=>e.length===2?t(e):n(),aA=e=>s(s(Pe(e),([t,n])=>s(f("extends",n),([r,o])=>s(ne(o),([i,a])=>s(f("=",a),([p,c])=>s(ne(c),([x,y])=>[[t,r,i,p,x],y]))))),([t,n])=>[tx(t),n]),mA=e=>s(s(Pe(e),([t,n])=>s(f("extends",n),([r,o])=>s(ne(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[nx(t),n]),uA=e=>s(s(Pe(e),([t,n])=>s(f("=",n),([r,o])=>s(ne(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[rx(t),n]),pA=e=>s(Pe(e),([t,n])=>[ox(t),n]),Ty=e=>s(s(aA(e),([t,n])=>[t,n],()=>s(mA(e),([t,n])=>[t,n],()=>s(uA(e),([t,n])=>[t,n],()=>s(pA(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),Ey=(e,t=[])=>s(s(f(",",e),([n,r])=>s(Ty(r),([o,i])=>[[n,o],i])),([n,r])=>Ey(r,[...t,n]),()=>[t,e]),cA=e=>s(s(s(Ty(e),([t,n])=>s(Ey(n),([r,o])=>s(s(f(",",o),([i,a])=>[[i],a],()=>[[],o]),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[sx(t),n]),$p=e=>s(s(f("<",e),([t,n])=>s(cA(n),([r,o])=>s(f(">",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[ix(t),n]),vy=(e,t=[])=>s(s(f(",",e),([n,r])=>s(ne(r),([o,i])=>[[n,o],i])),([n,r])=>vy(r,[...t,n]),()=>[t,e]),lA=e=>s(s(s(ne(e),([t,n])=>s(vy(n),([r,o])=>s(s(f(",",o),([i,a])=>[[i],a],()=>[[],o]),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[ax(t),n]),dA=e=>s(s(f("<",e),([t,n])=>s(lA(n),([r,o])=>s(f(">",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[mx(t),n]),fA=e=>s(s(Pe(e),([t,n])=>s(dA(n),([r,o])=>[[t,r],o])),([t,n])=>[ux(t),n]),Sy=e=>s(s(s(f(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[px(t),n]),Py=e=>s(f("string",e),([t,n])=>[cx(t),n]),Ry=e=>s(f("number",e),([t,n])=>[lx(t),n]),gA=e=>s(f("boolean",e),([t,n])=>[dx(t),n]),xA=e=>s(f("undefined",e),([t,n])=>[fx(t),n]),hA=e=>s(f("null",e),([t,n])=>[gx(t),n]),Ay=e=>s(f("integer",e),([t,n])=>[xx(t),n]),yA=e=>s(f("bigint",e),([t,n])=>[hx(t),n]),IA=e=>s(f("unknown",e),([t,n])=>[yx(t),n]),bA=e=>s(f("any",e),([t,n])=>[Ix(t),n]),$A=e=>s(f("object",e),([t,n])=>[bx(t),n]),wA=e=>s(f("never",e),([t,n])=>[$x(t),n]),Oy=e=>s(f("symbol",e),([t,n])=>[wx(t),n]),kA=e=>s(f("void",e),([t,n])=>[kx(t),n]),TA=e=>s(f("this",e),([t,n])=>[Tx(t),n]),EA=e=>s(s(f("${",e),([t,n])=>s(ne(n),([r,o])=>s(f("}",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[Rx(t),n]),Ip=e=>s(Qn(["${","`"],e),([t,n])=>[Ax(t),n]),My=e=>s(s(s(Ip(e),([t,n])=>s(EA(n),([r,o])=>s(My(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s(s(Ip(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s(s(Ip(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[Ox(t),n]),wp=e=>s(s(f("`",e),([t,n])=>s(My(n),([r,o])=>s(f("`",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[Mx(t),n]),vA=e=>s(wp(e),([t,n])=>[Cx(t),n]),SA=e=>s(s(s(f("if",e),([t,n])=>s(ne(n),([r,o])=>s(f("then",o),([i,a])=>s(ne(a),([p,c])=>s(f("else",c),([x,y])=>s(ne(y),([S,R])=>[[t,r,i,p,x,S],R])))))),([t,n])=>[t,n],()=>s(s(f("if",e),([t,n])=>s(ne(n),([r,o])=>s(f("then",o),([i,a])=>s(ne(a),([p,c])=>[[t,r,i,p],c])))),([t,n])=>[t,n],()=>[])),([t,n])=>[Lx(t),n]),PA=e=>s(gp(e),([t,n])=>[Ex(t),n]),RA=e=>s(s(f("true",e),([t,n])=>[t,n],()=>s(f("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[vx(t),n]),AA=e=>s(ha(e),([t,n])=>[Sx(t),n]),OA=e=>s(Ia(["'",'"'],e),([t,n])=>[Px(t),n]),MA=e=>s(s(s(f("keyof",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[jx(t),n]),Cy=(e,t=[])=>s(s(s(f("[",e),([n,r])=>s(ne(r),([o,i])=>s(f("]",i),([a,p])=>[[n,o,a],p]))),([n,r])=>[n,r],()=>s(s(f("[",e),([n,r])=>s(f("]",r),([o,i])=>[[n,o],i])),([n,r])=>[n,r],()=>[])),([n,r])=>Cy(r,[...t,n]),()=>[t,e]),CA=e=>s(Cy(e),([t,n])=>[Fx(t),n]),LA=e=>s(s(s(f("extends",e),([t,n])=>s(ne(n),([r,o])=>s(f("?",o),([i,a])=>s(ne(a),([p,c])=>s(f(":",c),([x,y])=>s(ne(y),([S,R])=>[[t,r,i,p,x,S],R])))))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Dx(t),n]),jA=e=>s(s(s(f("(",e),([t,n])=>s(ne(n),([r,o])=>s(f(")",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s(Py(e),([t,n])=>[t,n],()=>s(Ry(e),([t,n])=>[t,n],()=>s(gA(e),([t,n])=>[t,n],()=>s(xA(e),([t,n])=>[t,n],()=>s(hA(e),([t,n])=>[t,n],()=>s(Ay(e),([t,n])=>[t,n],()=>s(yA(e),([t,n])=>[t,n],()=>s(IA(e),([t,n])=>[t,n],()=>s(bA(e),([t,n])=>[t,n],()=>s($A(e),([t,n])=>[t,n],()=>s(wA(e),([t,n])=>[t,n],()=>s(Oy(e),([t,n])=>[t,n],()=>s(kA(e),([t,n])=>[t,n],()=>s(TA(e),([t,n])=>[t,n],()=>s(PA(e),([t,n])=>[t,n],()=>s(RA(e),([t,n])=>[t,n],()=>s(AA(e),([t,n])=>[t,n],()=>s(OA(e),([t,n])=>[t,n],()=>s(vA(e),([t,n])=>[t,n],()=>s(SA(e),([t,n])=>[t,n],()=>s(BA(e),([t,n])=>[t,n],()=>s(JA(e),([t,n])=>[t,n],()=>s(tO(e),([t,n])=>[t,n],()=>s(eO(e),([t,n])=>[t,n],()=>s(sO(e),([t,n])=>[t,n],()=>s(fA(e),([t,n])=>[t,n],()=>s(iO(e),([t,n])=>[t,n],()=>[])))))))))))))))))))))))))))),([t,n])=>[Nx(t),n]),FA=e=>s(s(s(f("with",e),([t,n])=>s(Yy(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[qx(t),n]),Ly=e=>s(s(MA(e),([t,n])=>s(jA(n),([r,o])=>s(CA(o),([i,a])=>s(LA(a),([p,c])=>s(FA(c),([x,y])=>[[t,r,i,p,x],y]))))),([t,n])=>[_x(t),n]),jy=e=>s(s(s(f("&",e),([t,n])=>s(Ly(n),([r,o])=>s(jy(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),Fy=e=>s(s(Ly(e),([t,n])=>s(jy(n),([r,o])=>[[t,r],o])),([t,n])=>[Ux(t),n]),Dy=e=>s(s(s(f("|",e),([t,n])=>s(Fy(n),([r,o])=>s(Dy(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),ba=e=>s(s(Fy(e),([t,n])=>s(Dy(n),([r,o])=>[[t,r],o])),([t,n])=>[Gx(t),n]),DA=e=>s(s(f("readonly",e),([t,n])=>s(ba(n),([r,o])=>[[t,r],o])),([t,n])=>[Kx(t),n]),NA=e=>s(s(f("|",e),([t,n])=>s(ba(n),([r,o])=>[[t,r],o])),([t,n])=>[Wx(t),n]),qA=e=>s(s($p(e),([t,n])=>s(f("=",n),([r,o])=>s(ne(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[zx(t),n]),_A=e=>s(s(s(f("infer",e),([t,n])=>s(Pe(n),([r,o])=>s(f("extends",o),([i,a])=>s(ba(a),([p,c])=>[[t,r,i,p],c])))),([t,n])=>[t,n],()=>s(s(f("infer",e),([t,n])=>s(Pe(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>[])),([t,n])=>[Bx(t),n]),ne=e=>s(s(_A(e),([t,n])=>[t,n],()=>s(NA(e),([t,n])=>[t,n],()=>s(DA(e),([t,n])=>[t,n],()=>s(ba(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),UA=e=>s(ha(e),([t,n])=>[Hx(t),n]),GA=e=>s(Pe(e),([t,n])=>[t,n]),KA=e=>s(Ia(["'",'"'],e),([t,n])=>[t,n]),WA=e=>s(s(f("[",e),([t,n])=>s(Pe(n),([r,o])=>s(f(":",o),([i,a])=>s(s(Ay(a),([p,c])=>[p,c],()=>s(Ry(a),([p,c])=>[p,c],()=>s(Py(a),([p,c])=>[p,c],()=>s(Oy(a),([p,c])=>[p,c],()=>[])))),([p,c])=>s(f("]",c),([x,y])=>[[t,r,i,p,x],y]))))),([t,n])=>[Vx(t),n]),Ny=e=>s(s(UA(e),([t,n])=>[t,n],()=>s(GA(e),([t,n])=>[t,n],()=>s(KA(e),([t,n])=>[t,n],()=>s(WA(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),qy=e=>s(s(s(f("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Jx(t),n]),_y=e=>s(s(s(f("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Yx(t),n]),Uy=e=>s(s(qy(e),([t,n])=>s(Ny(n),([r,o])=>s(_y(o),([i,a])=>s(f(":",a),([p,c])=>s(ne(c),([x,y])=>[[t,r,i,p,x],y]))))),([t,n])=>[Xx(t),n]),$a=e=>s(s(s(f(",",e),([t,n])=>s(f(`
|
|
8
|
+
</file>${a}`}catch{return n}})}var dS,Iu=m(()=>{dS=64*1024});function gS(e){let t=new WeakSet,n=r=>{if(r===null||typeof r!="object")return r;if(t.has(r))return"[circular]";if(t.add(r),Array.isArray(r))return r.map(n);let o=r,i={};for(let a of Object.keys(o).sort())i[a]=n(o[a]);return i};try{return JSON.stringify(n(e))??""}catch{return""}}function zl(e,t){if(fS.has(e))return;let n=`${e}\0${gS(t)}`,r=Po&&Po.signature===n?Po.count+1:1;return Po={signature:n,count:r},r>=3?{repeats:r}:void 0}function Bl(){Po=void 0}function Hl(e,t){return`Refused: ${e} has been called ${t} times in a row with identical arguments, so the last attempt cannot have changed anything. Do not repeat it. Either use different arguments, use a different tool, or stop and report what you found and what is blocking you.`}var fS,Po,$u=m(()=>{fS=new Set(["think"])});function Vl(e,t){switch(t){case"number":return/^\d+$/.test(e);case"string":return!0;default:return!1}}function hS(e,t,n){let r=t;for(;r<e.length;){let o=e[r];if(!o){r++;continue}if(o==="--")break;if(xS.test(o)){let i=o.includes("="),[a="",...p]=o.split("="),c=n.safeFlags[a];if(!c)return!1;if(c==="none"){if(i)return!1;r++;continue}if(c==="optional"){r++;continue}if(i){if(!Vl(p.join("="),c))return!1;r++;continue}let x=e[r+1];if(x===void 0||!Vl(x,c))return!1;r+=2;continue}if(n.allowPositional===!1)return!1;r++}return!0}function kS(e){if(!/\$\(|`|\$\{|>|</.test(e)&&!/(?<!&)&(?!&)/.test(e))return e.split(/\|\||&&|;|\|/).map(t=>t.trim()).filter(t=>t.length>0)}function TS(e){let t=e.some(r=>/^cd\b/.test(r)),n=e.some(r=>/^git\b/.test(r));return t&&n}function ES(e){let t=[],n=/'[^']*'|"[^"]*"|\S+/g;for(let r of e.match(n)??[])t.push(r.length>=2&&/^['"]/.test(r)?r.slice(1,-1):r);return t}function vS(e){if(e.length===0)return;let[t="",n=""]=e,r=`${t} ${n}`;if(t==="git"&&n==="config"){let o=e[2];return o==="--get"||o==="--get-all"||o==="--get-regexp"||o==="-l"||o==="--list"?{name:"git config --get",rest:e.slice(3)}:void 0}return t==="git"&&n==="stash"?e[2]==="list"?{name:"git stash list",rest:e.slice(3)}:void 0:t==="git"&&n==="worktree"?e[2]==="list"?{name:"git worktree list",rest:e.slice(3)}:void 0:t==="git"&&Yl[`git ${n}`]?{name:`git ${n}`,rest:e.slice(2)}:Xl[r]?{name:r,rest:e.slice(2)}:{name:t,rest:e.slice(1)}}function PS(e){let t=ES(e),n=vS(t);if(!n)return!1;let{name:r,rest:o}=n;if(SS.has(r)&&o.some(a=>a.includes("$")||a.includes("`")))return!1;let i=Yl[r]??$S[r]??Xl[r];return i?i.dangerous?.(o)?!1:hS(o,0,i):!!(IS.includes(r)||wS.includes(r))}function ti(e){let t=kS(e);return!t||t.length===0||TS(t)?!1:t.every(PS)}var xS,yS,Zs,Qs,wu,ei,ku,Jl,bS,Yl,IS,$S,Xl,wS,SS,Tu=m(()=>{xS=/^-[a-zA-Z0-9_-]/;yS={"--all":"none","--branches":"none","--tags":"none","--remotes":"none"},Zs={"--oneline":"none","--graph":"none","--decorate":"none","--no-decorate":"none","--date":"string","--relative-date":"none"},Qs={"--max-count":"number","-n":"number"},wu={"--stat":"none","--numstat":"none","--shortstat":"none","--name-only":"none","--name-status":"none"},ei={"--color":"none","--no-color":"none"},ku={"--patch":"none","-p":"none","--no-patch":"none","--no-ext-diff":"none","-s":"none"},Jl={"--author":"string","--committer":"string","--grep":"string"},bS={"-l":"none","--list":"none","-a":"none","-r":"none","-v":"none","-vv":"none","-i":"none"},Yl={"git status":{safeFlags:{"-s":"none","--short":"none","-b":"none","--branch":"none","-u":"optional","--untracked-files":"optional","--porcelain":"optional","--ignored":"none","--long":"none","--no-renames":"none",...ei}},"git diff":{safeFlags:{...wu,...ei,...ku,"--cached":"none","--staged":"none","--word-diff":"none","--check":"none","--quiet":"none","--exit-code":"none","--no-renames":"none","--diff-filter":"string","--relative":"string","--full-index":"none","--binary":"none","--abbrev":"number","--unified":"number","-U":"number","--ignore-all-space":"none","--ignore-space-change":"none","--ignore-blank-lines":"none"}},"git log":{safeFlags:{...Zs,...Qs,...wu,...ei,...ku,...Jl,...yS,"--since":"string","--after":"string","--until":"string","--before":"string","--follow":"none","--no-merges":"none","--merges":"none","--first-parent":"none","--reverse":"none","--skip":"number","--all":"none","--format":"string","--pretty":"string","--abbrev-commit":"none","--no-abbrev-commit":"none","--left-right":"none"}},"git show":{safeFlags:{...wu,...ei,...ku,...Zs,"--format":"string","--pretty":"string","--abbrev-commit":"none","--no-patch":"none","-q":"none"}},"git shortlog":{safeFlags:{...Qs,"-s":"none","--summary":"none","-n":"none","--numbered":"none","-e":"none","--email":"none","-sn":"none","-ns":"none","--all":"none"}},"git reflog":{safeFlags:{...Qs,...Zs,...Jl,"--all":"none","--date":"string"}},"git blame":{safeFlags:{"-L":"string","-w":"none","-c":"none","-n":"none","-s":"none","-e":"none","-p":"none","--porcelain":"none","--line-porcelain":"none","--date":"string","--since":"string","-C":"none","-M":"none"}},"git ls-files":{safeFlags:{"-m":"none","--modified":"none","-o":"none","--others":"none","-i":"none","--ignored":"none","-s":"none","--stage":"none","-d":"none","--deleted":"none","-c":"none","--cached":"none","-u":"none","--unmerged":"none","--exclude-standard":"none","--error-unmatch":"none","-z":"none"}},"git ls-remote":{safeFlags:{"--heads":"none","--tags":"none","--refs":"none","--symref":"none"}},"git rev-parse":{safeFlags:{"--short":"optional","--abbrev-ref":"none","--verify":"none","--quiet":"none","--git-dir":"none","--show-toplevel":"none","--show-cdup":"none","--is-inside-work-tree":"none","--is-bare-repository":"none","--symbolic-full-name":"none","--abbrev":"optional"}},"git rev-list":{safeFlags:{...Qs,"--count":"none","--all":"none","--objects":"none","--reverse":"none","--max-parents":"number","--min-parents":"number","--no-merges":"none","--first-parent":"none","--abbrev-commit":"none"}},"git describe":{safeFlags:{"--tags":"none","--all":"none","--long":"none","--always":"none","--dirty":"none","--abbrev":"number","--match":"string","--exclude":"string","--first-parent":"none"}},"git cat-file":{safeFlags:{"-p":"none","-t":"none","-s":"none","-e":"none","--batch-check":"none"}},"git for-each-ref":{safeFlags:{"--format":"string","--count":"number","--sort":"string","--points-at":"string","--merged":"string","--no-merged":"string"}},"git grep":{safeFlags:{"-n":"none","--line-number":"none","-i":"none","--ignore-case":"none","-l":"none","--files-with-matches":"none","-c":"none","--count":"none","-w":"none","--word-regexp":"none","-E":"none","--extended-regexp":"none","-F":"none","--fixed-strings":"none","--cached":"none","--untracked":"none","-e":"string","--and":"none","--or":"none","--not":"none"}},"git merge-base":{safeFlags:{"--all":"none","--is-ancestor":"none","--fork-point":"none","--octopus":"none"}},"git stash list":{safeFlags:{...Zs}},"git worktree list":{safeFlags:{"--porcelain":"none","-v":"none","--verbose":"none","-z":"none"}},"git branch":{safeFlags:{...bS,"--merged":"string","--no-merged":"string","--contains":"string","--no-contains":"string","--sort":"string","--format":"string","--points-at":"string","--column":"none"},dangerous:e=>{let t=new Set(["--merged","--no-merged","--contains","--no-contains","--sort","--format","--points-at"]),n=!1;for(let r of e){if(n){n=!1;continue}if(t.has(r)){n=!0;continue}if(!r.startsWith("-"))return!0}return!1}},"git tag":{safeFlags:{"-l":"none","--list":"none","-n":"number","--contains":"string","--no-contains":"string","--merged":"string","--sort":"string","--points-at":"string","--column":"none"},dangerous:e=>{let t=new Set(["--contains","--no-contains","--merged","--sort","--points-at"]),n=!1;for(let r of e){if(n){n=!1;continue}if(t.has(r)){n=!0;continue}if(!r.startsWith("-"))return!0}return!1}},"git remote":{safeFlags:{"-v":"none","--verbose":"none"},dangerous:e=>e.some(t=>!t.startsWith("-"))},"git config --get":{safeFlags:{"--local":"none","--global":"none","--system":"none","--get-all":"none","--get-regexp":"none","--list":"none","-l":"none","--show-origin":"none","--null":"none","-z":"none"}}},IS=["ls","pwd","cat","head","tail","wc","which","whoami","date","echo","sleep","true","false","type","test","seq","basename","dirname","realpath","stat","file","du","df","tree","uname","hostname","id","groups","tty","cal","uptime","free","locale","printf","grep","rg","fd","jq","bat","column","paste","nl","expand","fold","fmt"],$S={find:{safeFlags:{"-name":"string","-iname":"string","-type":"string","-maxdepth":"number","-mindepth":"number","-newer":"string","-path":"string","-not":"none","-print":"none","-print0":"none","-empty":"none","-size":"string","-mtime":"number","-atime":"number","-perm":"string","-L":"none","-H":"none","-P":"none"},dangerous:e=>e.some(t=>/^-(delete|exec|execdir|ok|okdir|fprint0?|fls|fprintf)$/.test(t))},sort:{safeFlags:{"-n":"none","-r":"none","-u":"none","-k":"string","-t":"string","-f":"none","-h":"none","-V":"none","-s":"none","-c":"none","-m":"none","-b":"none","-z":"none"}},uniq:{safeFlags:{"-c":"none","-d":"none","-u":"none","-i":"none","-f":"number","-s":"number","-w":"number"}},cut:{safeFlags:{"-d":"string","-f":"string","-c":"string","-b":"string","-s":"none","--complement":"none","-z":"none"}},tr:{safeFlags:{"-d":"none","-s":"none","-c":"none"}},node:{safeFlags:{"-v":"none","--version":"none"},allowPositional:!1},python:{safeFlags:{"--version":"none"},allowPositional:!1},python3:{safeFlags:{"--version":"none"},allowPositional:!1},npm:{safeFlags:{"--version":"none","-v":"none"},allowPositional:!1},sed:{safeFlags:{"-n":"none","--quiet":"none","-e":"string","-E":"none","-r":"none","--regexp-extended":"none","-s":"none","-u":"none","-z":"none","--posix":"none"},dangerous:e=>e.some(t=>/^-i|^--in-place/.test(t)||/\b[we]\s/.test(t)||/^[we]$/.test(t))},awk:{safeFlags:{"-F":"string","-v":"string","-f":"string"},dangerous:e=>e.some(t=>/\bsystem\s*\(|\|\s*"|>\s*"/.test(t))}},Xl={"npm ls":{safeFlags:{"--depth":"number","--json":"none","--long":"none","--parseable":"none","--all":"none","--prod":"none","--dev":"none","--omit":"string","--link":"none","--global":"none","-g":"none","--silent":"none"}},"npm view":{safeFlags:{"--json":"none","--registry":"string"}},"docker ps":{safeFlags:{"-a":"none","--all":"none","-q":"none","--quiet":"none","--no-trunc":"none","--format":"string","-n":"number","--last":"number","-s":"none","--size":"none","--filter":"string"}},"docker images":{safeFlags:{"-a":"none","--all":"none","-q":"none","--quiet":"none","--no-trunc":"none","--format":"string","--filter":"string","--digests":"none"}},"docker inspect":{safeFlags:{"--format":"string","-f":"string","-s":"none","--size":"none","--type":"string"}},"kubectl get":{safeFlags:{"-o":"string","--output":"string","-n":"string","--namespace":"string","-A":"none","--all-namespaces":"none","--no-headers":"none","-l":"string","--selector":"string","--show-labels":"none","-w":"none","--watch":"none","--sort-by":"string"}},"kubectl describe":{safeFlags:{"-n":"string","--namespace":"string","-l":"string","--selector":"string"}},"cargo tree":{safeFlags:{"--depth":"number","-e":"string","--edges":"string","--no-dev-dependencies":"none","--prefix":"string","-i":"string","--invert":"string","-p":"string","--package":"string"}},"go version":{safeFlags:{}}},wS=["cd","alias","history","arch","ip addr","ifconfig"];SS=new Set(["echo","printf"])});var sd={};Ot(sd,{APPROVAL_LABELS:()=>ni,APPROVAL_MODES:()=>Dr,MODE_MAX_TIER:()=>Zl,TIER_RANK:()=>Eu,createPermissionExtension:()=>Au,criticalCommand:()=>ed,decideToolCall:()=>nd,describeToolCall:()=>rd,formatApprovalPrompt:()=>od,getApprovalMode:()=>MS,isApprovalMode:()=>AS,isReadOnlyCommand:()=>ti,resolveTier:()=>Ql,setApprovalMode:()=>Su,setApprovalPrompt:()=>Pu});function AS(e){return Dr.includes(e)}function Ql(e){let t=RS[e];return t||(e.startsWith("mcp__")?"write":"exec")}function ed(e){for(let{pattern:t,reason:n}of OS)if(t.test(e))return n}function Su(e){vu=e}function MS(){return vu}function Pu(e){td=e}function nd(e,t,n){let r=typeof n?.command=="string"?n.command:"";if(t==="bash"||t==="powershell"){let i=ed(r);if(i)return{action:"deny",reason:`Refused in every mode: ${i}.`};if(ti(r))return{action:"run"}}let o=Ql(t);return Eu[o]<=Eu[Zl[e]]?{action:"run"}:{action:"prompt",reason:`this is a ${o}-tier tool`}}function rd(e,t){if(t&&typeof t=="object"){let n=t;if((e==="bash"||e==="powershell")&&typeof n.command=="string")return n.command;if((e==="edit"||e==="write")&&typeof n.path=="string"){let r=Array.isArray(n.edits)?` (${n.edits.length} edits)`:"";return`${n.path}${r}`}try{let r=JSON.stringify(n);if(r&&r!=="{}")return r.length>300?`${r.slice(0,297)}...`:r}catch{}}return e}function od(e,t,n){let r=[`Allow tool: ${e}`];e.startsWith("mcp__")&&r.push("Origin: MCP server tool"),r.push(`Reason: ${n}`);let o=rd(e,t);return o!==e&&r.push(o),r.join(`
|
|
9
|
+
`)}function Au(){return e=>{e.on("tool_call",async t=>{let n=zl(t.toolName,t.input);if(n)return{block:!0,reason:Hl(t.toolName,n.repeats)};let r=vu,o=nd(r,t.toolName,t.input);if(o.action==="run")return;if(o.action==="deny")return{block:!0,reason:o.reason};if(!await td(`${t.toolName} wants to run`,od(t.toolName,t.input,o.reason)))return{block:!0,reason:`Blocked by the user (approval mode: ${r}).`}})}}var Dr,ni,Eu,Zl,RS,OS,vu,td,ri=m(()=>{$u();Tu();Tu();Dr=["suggest","auto-edit","full-auto"],ni={suggest:"suggest: ask before every edit and command","auto-edit":"auto-edit: edits run, commands ask","full-auto":"full-auto: nothing asks"};Eu={read:0,write:1,exec:2},Zl={suggest:"read","auto-edit":"write","full-auto":"exec"},RS={read:"read",grep:"read",find:"read",ls:"read",think:"read",ask:"read",todo:"read",context:"read",workflow:"exec",goal:"read",enter_plan_mode:"read",exit_plan_mode:"read",edit:"write",write:"write",bash:"exec",powershell:"exec",task:"exec"};OS=[{pattern:/\brm\s+(?:-[a-zA-Z]+\s+)*(?:\/|\/\*|~|\$HOME)(?:\s|$)/,reason:"recursive delete of the filesystem root or home"},{pattern:/\bmkfs(?:\.[a-z0-9]+)?\b/,reason:"filesystem format"},{pattern:/\bdd\b[^|;]*\bof=\/dev\/(?:sd|nvme|hd|vd)/,reason:"raw write to a block device"},{pattern:/:\s*\(\s*\)\s*\{.*\}\s*;\s*:/,reason:"fork bomb"},{pattern:/>\s*\/etc\/(?:passwd|shadow|sudoers)/,reason:"overwrite of a system account file"},{pattern:/\b(?:shutdown|reboot|halt|poweroff)\b/,reason:"host shutdown"}];vu="auto-edit",td=async()=>!1});function CS(e){return e.replace(/operating inside pi, a coding agent harness/gi,"operating as HowToFix, a coding agent harness").replace(/^Pi documentation \(read only when the user asks about[^\n]*\):?$/gim,"Harness documentation (internal reference; the user is never told the harness name):").replace(/\bpi itself\b/gi,"the harness itself").replace(/^- When reading pi docs or examples/m,"- When reading harness docs or examples").replace(/^- When working on pi topics/m,"- When working on harness topics").replace(/^- Always read pi \.md files/m,"- Always read the harness .md files").replace(/\bpi packages\b/gi,"harness packages").replace(/\bpi \.md files\b/gi,"harness .md files").replace(/\bpi docs\b/gi,"harness docs").replace(/^-\s*You can inspect PI_\* environment variables/m,"- You can inspect the harness's environment variables")}function jS(e){if(!e)return;let t=!1,n={...e};for(let r of LS){let o=n[r];if(typeof o!="string")continue;let i=CS(o);i!==o&&(n[r]=i,t=!0)}return t?n:void 0}function id(){return e=>{e.on("context_with_system",async t=>{let n=t.messages[0];if(!n||n.role!=="system")return;let r=jS(n.sections);return r?{messages:t.messages.map(i=>i===n?{...n,sections:r}:i)}:void 0})}}var LS,ad=m(()=>{LS=["preamble","rules","docs","addendum"]});import{Type as Nr}from"@earendil-works/pi-ai";import{defineTool as md}from"@earendil-works/pi-coding-agent";function ud(e){Ru=e}var Ru,pd,cd,Ou=m(()=>{pd=md({name:"think",label:"think",description:"Private scratchpad. The text is not shown to the user. Use it before a non-obvious step.",promptSnippet:"think: private notes, not shown to the user",parameters:Nr.Object({thoughts:Nr.String({description:"Private notes"})}),async execute(){return{content:[{type:"text",text:"noted"}],details:{recorded:!0}}}}),cd=md({name:"ask",label:"ask",description:"Ask the user one question and wait for a selected answer. Use this instead of guessing when a choice blocks the task.",promptSnippet:"ask: ask the user to pick one option",parameters:Nr.Object({question:Nr.String(),options:Nr.Array(Nr.String(),{minItems:2})}),async execute(e,t){if(!Ru)return{content:[{type:"text",text:"cancelled"}],details:{answer:"cancelled"}};let n=await Ru(t.question,t.options);return{content:[{type:"text",text:n}],details:{answer:n}}}})});var Yt,mr=m(()=>{Yt={assign:0,create:0,clone:0,discard:0,update:0}});function ur(e,t,n){return e>=t&&e<=n}function fd(e){return e===8205}function FS(e){return ur(e,55296,56319)}function ld(e){return ur(e,127462,127487)}function gd(e){return ur(e,65024,65039)}function xd(e){return ur(e,768,879)||ur(e,6832,6911)||ur(e,7616,7679)||ur(e,65056,65071)}function oi(e){return e>65535?2:1}function dd(e,t){for(;t<e.length;){let n=e.codePointAt(t);if(xd(n)||gd(n))t+=oi(n);else break}return t}function Mu(e,t){let n=e.codePointAt(t),r=t+oi(n);for(r=dd(e,r);r<e.length-1&&fd(e.codePointAt(r));){let o=e.codePointAt(r+1);r+=1+oi(o),r=dd(e,r)}return ld(n)&&r<e.length&&ld(e.codePointAt(r))&&(r+=oi(e.codePointAt(r))),r}function hd(e){return e>=768&&(FS(e)||xd(e)||gd(e)||fd(e))}function yd(e){let t=0,n=0;for(;n<e.length;)n=Mu(e,n),t++;return t}function DS(e,t){let n=0,r=0;for(;r<e.length;)if(r=Mu(e,r),++n>=t)return!0;return!1}function NS(e,t){let n=0,r=0;for(;r<e.length;)if(r=Mu(e,r),++n>t)return!1;return!0}function bd(e,t){if(t===0)return!0;if(e.length<t)return!1;let n=0;for(;;){if(hd(e.charCodeAt(n)))return DS(e,t);if(++n>=t)return!0}}function Id(e,t){if(e.length<=t)return!0;let n=0;for(;;){if(hd(e.charCodeAt(n)))return NS(e,t);if(++n>t)return!1}}var $d=m(()=>{});var u={};Ot(u,{Counted:()=>eP,Entries:()=>rP,EntriesRegExp:()=>nP,Every:()=>YS,EveryAll:()=>XS,GraphemeCount:()=>HS,HasPropertyKey:()=>tP,IsArray:()=>Ro,IsBigInt:()=>Ao,IsBoolean:()=>wd,IsClassInstance:()=>BS,IsConstructor:()=>_S,IsDeepEqual:()=>ju,IsEqual:()=>te,IsFunction:()=>kd,IsGreaterEqualThan:()=>Ed,IsGreaterThan:()=>GS,IsInteger:()=>Cu,IsLessEqualThan:()=>Td,IsLessThan:()=>WS,IsMaxLength:()=>VS,IsMinLength:()=>JS,IsMultipleOf:()=>zS,IsNull:()=>ii,IsNumber:()=>ai,IsObject:()=>Oo,IsObjectNotArray:()=>US,IsString:()=>mi,IsSymbol:()=>KS,IsUndefined:()=>Lu,IsUnsafePropertyKey:()=>Sd,IsValueLike:()=>vd,Keys:()=>si,ShiftLeft:()=>ui,Some:()=>ZS,SomeAll:()=>QS,Symbols:()=>oP,Values:()=>sP});function Ro(e){return Array.isArray(e)}function Ao(e){return te(typeof e,"bigint")}function wd(e){return te(typeof e,"boolean")}function _S(e){if(Lu(e)||!kd(e))return!1;let t=Function.prototype.toString.call(e);return!!(/^class\s/.test(t)||/\[native code\]/.test(t))}function kd(e){return te(typeof e,"function")}function Cu(e){return Number.isInteger(e)}function ii(e){return te(e,null)}function ai(e){return Number.isFinite(e)}function US(e){return Oo(e)&&!Ro(e)}function Oo(e){return te(typeof e,"object")&&!ii(e)}function mi(e){return te(typeof e,"string")}function KS(e){return te(typeof e,"symbol")}function Lu(e){return te(e,void 0)}function te(e,t){return e===t}function GS(e,t){return e>t}function WS(e,t){return e<t}function Td(e,t){return e<=t}function Ed(e,t){return e>=t}function zS(e,t){if(Ao(e)||Ao(t))return BigInt(e)%BigInt(t)===0n;let n=1e-10;if(!ai(e)||Cu(e)&&1/t%1===0)return!0;let r=e%t;return Math.min(Math.abs(r),Math.abs(r-t),Math.abs(r+t))<n}function BS(e){if(!Oo(e))return!1;let t=globalThis.Object.getPrototypeOf(e);return ii(t)?!1:te(typeof t.constructor,"function")&&!(te(t.constructor,globalThis.Object)||te(t.constructor.name,"Object"))}function vd(e){return Ao(e)||wd(e)||ii(e)||ai(e)||mi(e)||Lu(e)}function HS(e){return yd(e)}function VS(e,t){return Id(e,t)}function JS(e,t){return bd(e,t)}function YS(e,t,n){return e.every((r,o)=>o<t||n(r,o))}function XS(e,t,n){let r=!0;return e.forEach((o,i)=>{i>=t&&!n(o,i)&&(r=!1)}),r}function ZS(e,t){return e.some((n,r)=>t(n,r))}function QS(e,t){let n=!1;return e.forEach((r,o)=>{t(r,o)&&(n=!0)}),n}function eP(e,t){return e.reduce((n,r,o)=>t(r,o)?++n:n,0)}function ui(e,t,n){return te(e.length,0)?n():t(e[0],e.slice(1))}function Sd(e){return te(e,"__proto__")||te(e,"constructor")||te(e,"prototype")}function tP(e,t){return Sd(t)?Object.prototype.hasOwnProperty.call(e,t):t in e}function nP(e){return si(e).map(t=>[new RegExp(`^${t}$`),e[t]])}function rP(e){return Object.entries(e)}function si(e){return Object.getOwnPropertyNames(e)}function oP(e){return Object.getOwnPropertySymbols(e)}function sP(e){return Object.values(e)}function iP(e,t){if(!Oo(t))return!1;let n=si(e);return te(n.length,si(t).length)&&n.every(r=>ju(e[r],t[r]))}function aP(e,t){return Ro(t)&&te(e.length,t.length)&&e.every((n,r)=>ju(e[r],t[r]))}function ju(e,t){return Ro(e)?aP(e,t):Oo(e)?iP(e,t):te(e,t)}var qr=m(()=>{$d()});var Pd=m(()=>{qr()});var _n={};Ot(_n,{IsBigInt64Array:()=>wP,IsBigUint64Array:()=>kP,IsBoolean:()=>uP,IsDate:()=>EP,IsFloat32Array:()=>IP,IsFloat64Array:()=>$P,IsInt16Array:()=>xP,IsInt32Array:()=>yP,IsInt8Array:()=>dP,IsMap:()=>SP,IsNumber:()=>pP,IsRegExp:()=>TP,IsSet:()=>vP,IsString:()=>cP,IsTypeArray:()=>lP,IsUint16Array:()=>hP,IsUint32Array:()=>bP,IsUint8Array:()=>fP,IsUint8ClampedArray:()=>gP});function uP(e){return e instanceof Boolean}function pP(e){return e instanceof Number}function cP(e){return e instanceof String}function lP(e){return globalThis.ArrayBuffer.isView(e)}function dP(e){return e instanceof globalThis.Int8Array}function fP(e){return e instanceof globalThis.Uint8Array}function gP(e){return e instanceof globalThis.Uint8ClampedArray}function xP(e){return e instanceof globalThis.Int16Array}function hP(e){return e instanceof globalThis.Uint16Array}function yP(e){return e instanceof globalThis.Int32Array}function bP(e){return e instanceof globalThis.Uint32Array}function IP(e){return e instanceof globalThis.Float32Array}function $P(e){return e instanceof globalThis.Float64Array}function wP(e){return e instanceof globalThis.BigInt64Array}function kP(e){return e instanceof globalThis.BigUint64Array}function TP(e){return e instanceof globalThis.RegExp}function EP(e){return e instanceof globalThis.Date}function vP(e){return e instanceof globalThis.Set}function SP(e){return e instanceof globalThis.Map}var Ad=m(()=>{});var Rd=m(()=>{qr()});var v=m(()=>{Pd();Ad();Rd();qr();qr()});var Xt={};Ot(Xt,{Get:()=>OP,Reset:()=>AP,Set:()=>RP});function AP(){un.immutableTypes=!1,un.maxErrors=8,un.maxInstantiationCount=128,un.useAcceleration=!0,un.exactOptionalPropertyTypes=!1,un.enumerableKind=!1,un.correctiveParse=!1,un.unionPrioritySort=!0}function RP(e){for(let t of u.Keys(e)){let n=e[t];n!==void 0&&Object.defineProperty(un,t,{value:n})}}function OP(){return un}var un,Od=m(()=>{v();un={immutableTypes:!1,maxErrors:8,maxInstantiationCount:128,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0}});var pr=m(()=>{Od()});function Un(e){return Xt.Get().immutableTypes?Object.freeze(e):e}var Mo=m(()=>{pr()});function MP(e,t){return Yt.assign+=1,Un({...e,...t})}var Md=m(()=>{mr();Mo()});function CP(e){return u.HasPropertyKey(e,"~kind")||u.HasPropertyKey(e,"~unsafe")}function LP(e){let t={};for(let n of u.Keys(e)){if(u.IsUnsafePropertyKey(n))continue;let r=Object.getOwnPropertyDescriptor(e,n);r.value=cr(r.value),u.IsEqual(r.enumerable,!0)?t[n]=r.value:Object.defineProperty(t,n,r)}return t}function jP(e){let t={};for(let n of u.Keys(e))u.IsUnsafePropertyKey(n)||(t[n]=cr(e[n]));for(let n of u.Symbols(e))t[n]=cr(e[n]);return t}function FP(e){return u.IsClassInstance(e)?e:CP(e)?LP(e):jP(e)}function DP(e){return e.map(t=>cr(t))}function NP(e){return e.slice()}function qP(e){return new RegExp(e.source,e.flags)}function _P(e){return new Map(cr([...e.entries()]))}function UP(e){return new Set(cr([...e.values()]))}function cr(e){return _n.IsTypeArray(e)?NP(e):_n.IsRegExp(e)?qP(e):_n.IsMap(e)?_P(e):_n.IsSet(e)?UP(e):u.IsArray(e)?DP(e):u.IsObject(e)?FP(e):e}function Co(e){return Yt.clone+=1,cr(e)}var pi=m(()=>{v();mr()});function KP(e,t){for(let n of Object.keys(t))Object.defineProperty(e,n,{configurable:!0,writable:!0,enumerable:!1,value:t[n]});return e}function Cd(e,t){return{...e,...t}}function GP(e,t,n={}){Yt.create+=1;let r=Cd(t,n),o=Xt.Get().enumerableKind?Cd(r,e):KP(r,e);return Un(o)}var Ld=m(()=>{pr();mr();Mo()});function WP(e,t){Yt.discard+=1;let n={};for(let r of u.Keys(e)){if(t.includes(r))continue;let o=Object.getOwnPropertyDescriptor(e,r);o.value=Co(o.value),Object.defineProperty(n,r,o)}return Un(n)}var jd=m(()=>{v();mr();Mo();pi()});function zP(e,t,n){Yt.update+=1;let r=Xt.Get(),o=Co(e);for(let i of Object.keys(t))Object.defineProperty(o,i,{configurable:!0,writable:!0,enumerable:r.enumerableKind,value:t[i]});for(let i of Object.keys(n))Object.defineProperty(o,i,{configurable:!0,enumerable:!0,writable:!0,value:n[i]});return Un(o)}var Fd=m(()=>{pr();mr();Mo();pi()});var l={};Ot(l,{Assign:()=>MP,Clone:()=>Co,Create:()=>GP,Discard:()=>WP,Metrics:()=>Yt,Update:()=>zP});var Dd=m(()=>{Md();pi();Ld();jd();mr();Fd()});var k=m(()=>{Dd()});function P(e,t){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.IsEqual(e["~kind"],t)}function je(e){return u.IsObject(e)}var W=m(()=>{v()});function M(e,t,n){return l.Create({"~kind":"Deferred"},{type:"deferred",action:e,parameters:t,options:n},{})}function Kn(e){return P(e,"Deferred")}var se=m(()=>{k();W()});function BP(e){return l.Update(e,{"~readonly":!0},{})}function Lo(e,t){return l.Update(BP(e),{},t)}function Nd(e,t,n,r){let o=$(e,t,n);return Lo(o,r)}var ci=m(()=>{k();D()});function HP(e){return l.Update(e,{"~optional":!0},{})}function jo(e,t){return l.Update(HP(e),{},t)}function qd(e,t,n,r){let o=$(e,t,n);return jo(o,r)}var li=m(()=>{k();D()});function Mt(e,t){return l.Create({"~kind":"Array"},{type:"array",items:e},t)}function $e(e){return P(e,"Array")}function di(e){return l.Discard(e,["~kind","type","items"])}var pt=m(()=>{k();W()});function pn(e,t,n={}){return l.Create({"~kind":"Constructor"},{type:"constructor",parameters:e,instanceType:t},n)}function _e(e){return P(e,"Constructor")}function _d(e){return l.Discard(e,["~kind","type","parameters","instanceType"])}var qt=m(()=>{k();W()});function cn(e,t,n={}){return l.Create({"~kind":"Function"},{type:"function",parameters:e,returnType:t},n)}function Ue(e){return P(e,"Function")}function Ud(e){return l.Discard(e,["~kind","type","parameters","returnType"])}var _t=m(()=>{k();W()});function Mn(e,t){return l.Create({"~kind":"Ref"},{$ref:e},t)}function Ke(e){return P(e,"Ref")}var Ut=m(()=>{k();W()});function Gn(e,t){return l.Create({"~kind":"Generic"},{type:"generic",parameters:e,expression:t})}function _r(e){return P(e,"Generic")}var Fo=m(()=>{k();W()});function Ur(e){return l.Create({"~kind":"Any"},{},e)}function Te(e){return P(e,"Any")}var ht=m(()=>{k();W()});function le(e){return l.Create({"~kind":"Never"},{not:{}},e)}function Zt(e){return P(e,"Never")}var Kd,Be=m(()=>{k();W();Kd="(?!)"});function ln(e,t={}){return M("AddOptional",[e],t)}function lr(e,t={}){return jo(e,t)}var Do=m(()=>{se();li()});function Gd(e){return lr(e)}function rt(e){return je(e)&&u.HasPropertyKey(e,"~optional")}var Wn=m(()=>{v();W();Do()});function Wd(e){return u.Keys(e).filter(t=>!rt(e[t]))}function fi(e){return u.Keys(e)}function gi(e){return u.Values(e)}var dr=m(()=>{v();Wn()});function _(e,t={}){let n=Wd(e),r=n.length>0?{required:n}:{};return l.Create({"~kind":"Object"},{type:"object",...r,properties:e},t)}function ae(e){return P(e,"Object")}function zd(e){return l.Discard(e,["~kind","type","properties","required"])}var ce=m(()=>{k();W();dr()});function He(e){return l.Create({"~kind":"Unknown"},{},e)}function Ae(e){return P(e,"Unknown")}var Ze=m(()=>{k();W()});function dn(e,t,n){let r=u.Keys(e).reduce((o,i)=>({...o,[i]:l.Update(e[i],{},{$id:i})}),{});return l.Create({"~kind":"Cyclic"},{$defs:r,$ref:t},n)}function Qe(e){return P(e,"Cyclic")}var yt=m(()=>{v();k();W()});function Bd(e){return l.Update(e,{"~unsafe":null},{})}function xi(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"~unsafe")&&u.IsNull(e["~unsafe"])}var hi=m(()=>{v();k()});var fn={};Ot(fn,{Match:()=>VP});function VP(e,t){return t[e.length]?.(...e)??(()=>{throw Error("Invalid Arguments")})()}var Hd=m(()=>{});var Kr=m(()=>{Hd()});function No(...e){let[t,n]=fn.Match(e,{2:(r,o)=>[r,o,o],1:r=>[r,He(),He()]});return l.Create({"~kind":"Infer"},{type:"infer",name:t,extends:n},{})}function Re(e){return P(e,"Infer")}var Kt=m(()=>{Kr();k();W();Ze()});function fr(e,t,n,r={}){return l.Create({"~kind":"Dependent"},{if:e,then:t,else:n},r)}function ve(e){return P(e,"Dependent")}function Vd(e){return l.Discard(e,["~kind","if","then","else"])}var vt=m(()=>{k();W()});function Jd(e){return u.IsObjectNotArray(e)}function Yd(e){return u.Keys(e).filter(n=>isNaN(n)).reduce((n,r)=>[...n,e[r]],[])}var yi=m(()=>{v()});function Xd(e){return u.IsString(e)||u.IsNumber(e)}function Zd(e,t){let n=Jd(e)?Yd(e):e;return l.Create({"~kind":"Enum"},{enum:n},t)}function et(e){return P(e,"Enum")}var Qt=m(()=>{v();k();W();yi();yi()});function bt(e,t={}){return l.Create({"~kind":"Intersect"},{allOf:e},t)}function Y(e){return P(e,"Intersect")}function Qd(e){return l.Discard(e,["~kind","allOf"])}var Fe=m(()=>{k();W()});var ef=m(()=>{pr();v()});var tf=m(()=>{ef()});var nf=m(()=>{tf()});function De(){throw new Error("Unreachable")}var Fu=m(()=>{});var gn=m(()=>{Fu()});var rf,kN,TN,EN,vN,of,SN,PN,AN,sf=m(()=>{gn();v();(function(e){e[e.Array=0]="Array",e[e.BigInt=1]="BigInt",e[e.Boolean=2]="Boolean",e[e.Date=3]="Date",e[e.Constructor=4]="Constructor",e[e.Function=5]="Function",e[e.Null=6]="Null",e[e.Number=7]="Number",e[e.Object=8]="Object",e[e.RegExp=9]="RegExp",e[e.String=10]="String",e[e.Symbol=11]="Symbol",e[e.TypeArray=12]="TypeArray",e[e.Undefined=13]="Undefined"})(rf||(rf={}));kN=BigInt("14695981039346656037"),[TN,EN]=[BigInt("1099511628211"),BigInt("18446744073709551616")],vN=Array.from({length:256}).map((e,t)=>BigInt(t)),of=new Float64Array(1),SN=new DataView(of.buffer),PN=new Uint8Array(of.buffer),AN=new TextEncoder});var af=m(()=>{sf()});var Du=m(()=>{});var mf=m(()=>{Du()});var uf=m(()=>{});var pf=m(()=>{});var cf=m(()=>{});var lf=m(()=>{});var df=m(()=>{});var ff=m(()=>{});var gf=m(()=>{});var xf=m(()=>{});var hf=m(()=>{});var yf=m(()=>{});var bf=m(()=>{});var Nu=m(()=>{});var If=m(()=>{});var $f=m(()=>{});var wf=m(()=>{});var kf=m(()=>{});var Tf=m(()=>{});var Ef=m(()=>{});var vf=m(()=>{});var Sf=m(()=>{});var Pf=m(()=>{});var Af=m(()=>{});var Rf=m(()=>{});var Of=m(()=>{});var Mf=m(()=>{});var Cf=m(()=>{});var Lf=m(()=>{});var jf=m(()=>{});var Ff=m(()=>{});var Df=m(()=>{});var Nf=m(()=>{});var qf=m(()=>{});var _f=m(()=>{});var Uf=m(()=>{});var Kf=m(()=>{});var Gf=m(()=>{});var Wf=m(()=>{});var zf=m(()=>{mf();uf();pf();cf();lf();df();Du();ff();gf();xf();hf();yf();bf();Nu();Nu();If();$f();wf();kf();Tf();Ef();vf();Sf();Pf();Af();Rf();Of();Mf();Cf();Lf();jf();Ff();Df();Nf();qf();_f();Uf();Kf();Gf();Wf()});var Bf=m(()=>{zf()});var qo=m(()=>{Kr();nf();af();Bf();k();pr()});var Vf=m(()=>{qo();qo();qo()});function Ii(e){return new Uo(e)}function Jf(e,t){return Ii(e).Decode(t).Encode(()=>{throw Error("Encode not implemented")})}function Yf(e,t){return Ii(e).Decode(()=>{throw Error("Decode not implemented")}).Encode(t)}function bi(e){return je(e)&&u.HasPropertyKey(e,"~codec")&&u.IsObject(e["~codec"])&&u.HasPropertyKey(e["~codec"],"encode")&&u.HasPropertyKey(e["~codec"],"decode")}var _o,Uo,qu=m(()=>{Vf();v();W();_o=class{constructor(t,n){this.type=t,this.decode=n}Encode(t){let n=this.type,r=bi(n)?a=>this.decode(n["~codec"].decode(a)):this.decode,o=bi(n)?a=>n["~codec"].encode(t(a)):t,i={decode:r,encode:o};return l.Update(this.type,{"~codec":i},{})}},Uo=class{constructor(t){this.type=t}Decode(t){return new _o(this.type,t)}}});function Xf(e){return Gr(e)}function gr(e){return je(e)&&u.HasPropertyKey(e,"~immutable")}var Ko=m(()=>{v();W();Go()});function xn(e,t={}){return M("AddReadonly",[e],t)}function xr(e,t={}){return Lo(e,t)}var Wo=m(()=>{se();ci()});function Zf(e){return xr(e)}function hr(e){return je(e)&&u.HasPropertyKey(e,"~readonly")}var zo=m(()=>{v();W();Wo()});function ZP(e,t){let n=_u(e)?[...e["~refine"],t]:[t];return l.Update(e,{"~refine":n},{})}function Qf(...e){let[t,n,r]=fn.Match(e,{3:(o,i,a)=>[o,i,a],2:(o,i)=>[o,i,()=>"Refine Error"]});return ZP(t,{check:n,error:r})}function QP(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"check")&&u.HasPropertyKey(e,"error")&&u.IsFunction(e.check)&&u.IsFunction(e.error)}function _u(e){return je(e)&&u.HasPropertyKey(e,"~refine")&&u.IsArray(e["~refine"])&&u.Every(e["~refine"],0,t=>QP(t))}var Uu=m(()=>{Kr();k();v();W()});function Bo(e){return l.Create({"~kind":"BigInt"},{type:"bigint"},e)}function hn(e){return P(e,"BigInt")}var eg,yr=m(()=>{k();W();eg="-?(?:0|[1-9][0-9]*)n"});function $i(e){return l.Create({"~kind":"Boolean"},{type:"boolean"},e)}function Gt(e){return P(e,"Boolean")}var zn=m(()=>{k();W()});function Ho(e){return l.Create({"~kind":"Identifier"},{name:e})}function tg(e){return P(e,"Identifier")}var Ku=m(()=>{k();W()});function br(e){return l.Create({"~kind":"Integer"},{type:"integer"},e)}function ct(e){return P(e,"Integer")}var wi,yn=m(()=>{k();W();wi="-?(?:0|[1-9][0-9]*)"});function eA(e){return u.IsBigInt(e)?"bigint":u.IsBoolean(e)?"boolean":u.IsNumber(e)?"number":u.IsString(e)?"string":(()=>{throw new Gu(e)})()}function X(e,t){return l.Create({"~kind":"Literal"},{type:eA(e),const:e},t)}function ki(e){return u.IsBigInt(e)||u.IsBoolean(e)||u.IsNumber(e)||u.IsString(e)}function ng(e){return me(e)&&u.IsNumber(e.const)}function rg(e){return me(e)&&u.IsString(e.const)}function me(e){return P(e,"Literal")}var Gu,Me=m(()=>{k();v();W();Gu=class extends Error{constructor(t){super("Invalid Literal value"),Object.defineProperty(this,"cause",{value:{value:t},writable:!1,configurable:!1,enumerable:!1})}}});function Wr(e){return l.Create({"~kind":"Null"},{type:"null"},e)}function zr(e){return P(e,"Null")}var Br=m(()=>{k();W()});function St(e){return l.Create({"~kind":"Number"},{type:"number"},e)}function Ce(e){return P(e,"Number")}var Ti,lt=m(()=>{k();W();Ti="-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?"});function Hr(e){return l.Create({"~kind":"Symbol"},{type:"symbol"},e)}function Bn(e){return P(e,"Symbol")}var Ir=m(()=>{k();W()});function $r(...e){let[t,n,r]=fn.Match(e,{3:(o,i,a)=>[o,i,a],2:(o,i)=>[o,i,i],1:o=>[o,He(),He()]});return l.Create({"~kind":"Parameter"},{name:t,extends:n,equals:r},{})}function og(e){return P(e,"Parameter")}var Wu=m(()=>{Kr();k();W();Ze()});function Wt(e){return l.Create({"~kind":"String"},{type:"string"},e)}function dt(e){return P(e,"String")}var Ei,zt=m(()=>{k();W();Ei=".*"});function H(e,t={}){return l.Create({"~kind":"Union"},{anyOf:e},t)}function R(e){return P(e,"Union")}function sg(e){return l.Discard(e,["~kind","anyOf"])}var V=m(()=>{k();W()});function Vo(e){let t=ig(e);return u.IsEqual(t.length,2)?t[0]:[]}var Jo=m(()=>{v();vi()});function tA(e){return!0}function ag(e){return u.ShiftLeft(e,(t,n)=>nA(t)?ag(n):!1,()=>!0)}function mg(e){return u.IsEqual(e.length,0)?!1:ag(e)}function nA(e){return R(e)?mg(e.anyOf):me(e)?tA(e.const):!1}function Si(e){return mg(e)}var Pi=m(()=>{v();Me();V()});function Ai(e){return l.Create({"~kind":"TemplateLiteral"},{type:"string",pattern:e},{})}var Ri=m(()=>{k()});function ug(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>ug(o,t,[...n,`${r}${t}`]),()=>n)}function rA(e,t){return u.IsEqual(e.length,0)?[`${t}`]:ug(e,t)}function pg(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>pg(e,o,[...n,...cg(e,r)]),()=>n)}function cg(e,t){return R(t)?pg(e,t.anyOf):me(t)?rA(e,t.const):De()}function lg(e,t){return u.ShiftLeft(t,(n,r)=>lg(cg(e,n),r),()=>e)}function oA(e){return e.map(t=>X(t))}function sA(e){let t=lg([],e),n=oA(t);return H(n)}function iA(e){return u.IsEqual(e.length,0)?De():u.IsEqual(e.length,1)&&me(e[0])?e[0]:sA(e)}function zu(e){let t=Vo(e);return u.IsEqual(t.length,0)?Wt():Si(t)?iA(t):Ai(e)}function dg(e){let t=zu(e);return Se(t)?Wt():t}var Oi=m(()=>{v();gn();Me();zt();It();V();Jo();Pi();Ri()});function $t(e,t){let n="object",r={[e]:t};return l.Create({"~kind":"Record"},{type:n,patternProperties:r})}var Hn=m(()=>{k()});function fg(e){return $t(en,e)}var gg=m(()=>{Ve();Hn()});function xg(e){return _({true:e,false:e})}var hg=m(()=>{ce()});function Le(e,t={}){let[n,r,o]=[e,e.length,!1];return l.Create({"~kind":"Tuple"},{type:"array",additionalItems:o,items:n,minItems:r},t)}function fe(e){return P(e,"Tuple")}function yg(e){return l.Discard(e,["~kind","type","items","minItems","additionalItems"])}var Ne=m(()=>{k();W()});function aA(e){return l.Discard(e,["~readonly"])}function Bu(e,t){return l.Update(aA(e),{},t)}function bg(e,t,n,r){let o=$(e,t,n);return Bu(o,r)}var Hu=m(()=>{k();D()});function Ig(e,t={}){return M("RemoveReadonly",[e],t)}function $g(e,t={}){return Bu(e,t)}var Vu=m(()=>{se();Hu()});function mA(e){return l.Discard(e,["~optional"])}function Ju(e,t){return l.Update(mA(e),{},t)}function wg(e,t,n,r){let o=$(e,t,n);return Ju(o,r)}var Yu=m(()=>{k();D()});function kg(e,t={}){return M("RemoveOptional",[e],t)}function Mi(e,t={}){return Ju(e,t)}var Ci=m(()=>{se();Yu()});function Xu(e){return e.reduceRight((n,r,o)=>({[o]:r,...n}),{})}function Tg(e){let t=Xu(e.items);return _(t)}var Zu=m(()=>{ce()});function Qu(e){return ae(e)||fe(e)}function uA(e,t){return hr(e)?!!hr(t):!1}function pA(e,t){return rt(e)?!!rt(t):!1}function cA(e,t){let n=uA(e,t),r=pA(e,t),o=we([e,t]),i=$g(Mi(o));return n&&r?xr(lr(i)):n&&!r?xr(i):!n&&r?lr(i):i}function lA(e,t,n){return n in e?n in t?cA(e[n],t[n]):e[n]:n in t?t[n]:le()}function dA(e,t){return[...new Set([...u.Keys(e),...u.Keys(t)])].reduce((o,i)=>({...o,[i]:lA(e,t,i)}),{})}function Eg(e){return ae(e)?e.properties:fe(e)?Xu(e.items):{}}function vg(e,t){let n=Eg(e),r=Eg(t),o=dA(n,r);return _(o)}var ep=m(()=>{v();zo();Wn();ce();Be();Ne();Wo();Do();Vu();Ci();Zu();B()});function fA(e,t){let n=Zo(e,t);return u.IsEqual(n,Xo)?e:u.IsEqual(n,Li)||u.IsEqual(n,Yo)?t:le()}function gA(e,t){let n=Qu(e),r=Qu(t);return n&&r?vg(e,t):n&&!r?e:!n&&r?t:fA(e,t)}function Sg(e,t){return Zt(e)||Te(e)?e:Ae(e)||Zt(t)||Te(t)?t:Ae(t)?e:gA(e,t)}var tp=m(()=>{v();ht();Be();Ze();Qo();ep()});function xA(e,t){return R(e)||R(t)}function hA(e,t){let n=Bt(e),r=Bt(t);return xA(n,r)?we([n,r]):Sg(n,r)}function Pg(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>Pg(e,o,[...n,hA(r,e)]),()=>u.IsEqual(n.length,0)?[e]:n)}function Ag(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Ag(o,t,[...n,...es([r],t)]),()=>n)}function es(e,t=[]){return u.ShiftLeft(e,(n,r)=>R(n)?es(r,Ag(n.anyOf,t)):es(r,Pg(n,t)),()=>t)}var np=m(()=>{v();V();tp();B();B()});function yA(e,t){let n=tt({},e,t);return U.IsExtendsTrueLike(n)?[]:[e]}function Rg(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Rg(o,t,[...n,...yA(r,t)]),()=>n)}function ji(e,t){let n=Bt(e),r=R(n)?n.anyOf:[n],o=Rg(r,t);return wt(o)}var rp=m(()=>{v();V();bn();B();B()});function tn(e,t,n){let r=we([e,t]),o=ji(n,e);return wt([r,o])}function ft(e,t=[]){return u.ShiftLeft(e,(n,r)=>ft(r,[...t,X(n)]),()=>wt(t))}function we(e){let t=es(e),n=op(t);return wt(n)}function ot(e){let t=dg(e);return Bt(t)}function wt(e){let t=op(e);return Vn(t)}function Bt(e){return ve(e)?tn(e.if,e.then,e.else):et(e)?ft(e.enum):Y(e)?we(e.allOf):Se(e)?ot(e.pattern):R(e)?wt(e.anyOf):e}function Vn(e){return u.IsEqual(e.length,1)?e[0]:u.IsEqual(e.length,0)?le():H(e)}var B=m(()=>{v();vt();Qt();Fe();Me();Be();It();V();np();sp();rp();Oi()});function Og(e,t){let n=ft(e);return Jn(n,t)}var Mg=m(()=>{ts();B()});function Cg(e,t){return $t(Yn,t)}var Lg=m(()=>{Ve();Hn()});function jg(e,t){let n=we(e);return Jn(n,t)}var Fg=m(()=>{B();ts()});function Dg(e,t){return u.IsString(e)||u.IsNumber(e)?_({[e]:t}):u.IsEqual(e,!1)?_({false:t}):u.IsEqual(e,!0)?_({true:t}):_({})}var Ng=m(()=>{v();ce()});function qg(e,t){return $t(Vr,t)}var _g=m(()=>{Ve();Hn()});function Ug(e,t){return u.HasPropertyKey(e,"pattern")&&(u.IsString(e.pattern)||e.pattern instanceof RegExp)?$t(e.pattern.toString(),t):$t(en,t)}var Kg=m(()=>{v();Ve();Hn()});function Gg(e,t){let n=Vo(e);return Si(n)?Jn(ot(e),t):$t(e,t)}var Wg=m(()=>{ts();Jo();Pi();B();Hn()});function bA(e){return R(e)?Jr(e.anyOf):[e]}function Jr(e,t=[]){return u.ShiftLeft(e,(n,r)=>Jr(r,[...t,...bA(n)]),()=>t)}var Fi=m(()=>{v();V()});function IA(e){return e.some(t=>dt(t)||Ce(t)||ct(t))}function $A(e,t){return u.IsEqual(IA(e),!0)?$t(en,t):void 0}function wA(e,t){return e.reduce((n,r)=>me(r)&&(u.IsString(r.const)||u.IsNumber(r.const))?{...n,[r.const]:t}:n,{})}function kA(e,t){let n=wA(e,t);return _(n)}function zg(e,t){let n=Jr(e),r=$A(n,t);return je(r)?r:kA(n,t)}var Bg=m(()=>{v();W();Me();lt();yn();ce();zt();Ve();Fi();Hn()});function Jn(e,t){return Te(e)?fg(t):Gt(e)?xg(t):et(e)?Og(e.enum,t):ct(e)?Cg(e,t):Y(e)?jg(e.allOf,t):me(e)?Dg(e.const,t):Ce(e)?qg(e,t):R(e)?zg(e.anyOf,t):dt(e)?Ug(e,t):Se(e)?Gg(e.pattern,t):_({})}var ts=m(()=>{ht();zn();Qt();Fe();yn();Me();lt();ce();zt();It();V();gg();hg();Mg();Lg();Fg();Ng();_g();Kg();Wg();Bg()});function ip(e,t,n){return G([e])?l.Update(Jn(e,t),{},n):Ni(e,t,n)}function Hg(e,t,n,r,o){let i=$(e,t,n),a=$(e,t,r);return ip(i,a,o)}var Di=m(()=>{k();Ve();ts();D()});function Ni(e,t,n={}){return M("Record",[e,t],n)}function qi(e,t,n={}){return ip(e,t,n)}function Vg(e,t){return $t(e,t)}function _i(e){return u.IsEqual(e,en)?Wt():u.IsEqual(e,Yn)?br():u.IsEqual(e,Vr)?St():zu(e)}function Ht(e){return u.Keys(e.patternProperties)[0]}function Yr(e){let t=Ht(e);return _i(t)}function gt(e){return e.patternProperties[Ht(e)]}function nt(e){return P(e,"Record")}var Yn,Vr,en,Ve=m(()=>{k();v();W();yn();lt();zt();se();Oi();Hn();Di();Yn=`^${wi}$`,Vr=`^${Ti}$`,en=`^${Ei}$`});function wr(e){return l.Create({"~kind":"Rest"},{type:"rest",items:e},{})}function Xn(e){return P(e,"Rest")}var Xr=m(()=>{k();W()});var Jg=m(()=>{});function Ui(e){return l.Create({"~kind":"This"},{$ref:"#"},e)}function Ki(e){return P(e,"This")}var Gi=m(()=>{k();W()});function Zr(e){return l.Create({"~kind":"Undefined"},{type:"undefined"},e)}function Qr(e){return P(e,"Undefined")}var eo=m(()=>{k();W()});function Wi(e){return l.Create({"~kind":"Void"},{type:"void"},e)}function In(e){return P(e,"Void")}var kr=m(()=>{k();W()});var zi=m(()=>{qu();Ko();Wn();zo();Uu();ht();pt();yr();zn();to();qt();yt();se();Qt();_t();Fo();Ku();vt();Kt();yn();Fe();Me();Be();Br();lt();Ze();Ir();ce();Wu();dr();Ve();Ut();Xr();W();Jg();zt();Ir();It();Gi();Ne();eo();V();Ze();hi();kr()});function EA(e,t){return u.IsEqual(e,"Array")?Mt(t[0]):u.IsEqual(e,"Capitalize")?Hi(t[0]):u.IsEqual(e,"ConstructorParameters")?Zi(t[0]):u.IsEqual(e,"Evaluate")?Xh(t[0]):u.IsEqual(e,"Exclude")?Qi(t[0],t[1]):u.IsEqual(e,"Extract")?ea(t[0],t[1]):u.IsEqual(e,"Index")?ss(t[0],t[1]):u.IsEqual(e,"InstanceType")?ta(t[0]):u.IsEqual(e,"Lowercase")?Vi(t[0]):u.IsEqual(e,"NonNullable")?na(t[0]):u.IsEqual(e,"Omit")?ra(t[0],t[1]):u.IsEqual(e,"Parameters")?oa(t[0]):u.IsEqual(e,"Partial")?sa(t[0]):u.IsEqual(e,"Pick")?ia(t[0],t[1]):u.IsEqual(e,"Readonly")?aa(t[0]):u.IsEqual(e,"KeyOf")?is(t[0]):u.IsEqual(e,"Record")?Ni(t[0],t[1]):u.IsEqual(e,"Required")?ma(t[0]):u.IsEqual(e,"ReturnType")?ua(t[0]):u.IsEqual(e,"Uncapitalize")?Ji(t[0]):u.IsEqual(e,"Uppercase")?Yi(t[0]):os(Mn(e),t)}function Tr(){throw Error("Unreachable")}function ex(e,t=[]){return u.ShiftLeft(e,(n,r)=>ex(r,[...t,n[1]]),()=>t)}function Cn(e){return u.IsEqual(e.length,3)?[e[0],...ex(e[1])]:[]}function tx(e){return $r(e[0],e[2],e[4])}function nx(e){return $r(e[0],e[2],e[2])}function rx(e){return $r(e[0],He(),e[2])}function ox(e){return $r(e,He(),He())}function sx(e){return Cn(e)}function ix(e){return e[1]}function ax(e){return Cn(e)}function mx(e){return e[1]}function ux(e){return EA(e[0],e[1])}function px(e){return null}function cx(e){return Wt()}function lx(e){return St()}function dx(e){return $i()}function fx(e){return Zr()}function gx(e){return Wr()}function xx(e){return br()}function hx(e){return Bo()}function yx(e){return He()}function bx(e){return Ur()}function Ix(e){return _({})}function $x(e){return le()}function wx(e){return Hr()}function kx(e){return Wi()}function Tx(e){return Ui()}function Ex(e){return X(BigInt(e))}function vx(e){return X(u.IsEqual(e,"true"))}function Sx(e){return X(parseFloat(e))}function Px(e){return X(e)}function Ax(e){return e[1]}function Rx(e){return X(e)}function Ox(e){return u.IsEqual(e.length,3)?[e[0],e[1],...e[2]]:[e[0]]}function Mx(e){return e[1]}function Cx(e){return Bi(e)}function Lx(e){return u.IsEqual(e.length,6)?fr(e[1],e[3],e[5]):fr(e[1],e[3],He())}function jx(e){return e.length>0}function Fx(e){return e.reduce((t,n)=>u.IsEqual(n.length,3)?[...t,[n[1]]]:[...t,[]],[])}function Dx(e){return u.IsEqual(e.length,6)?[e[1],e[3],e[5]]:[]}function Nx(e){return u.IsArray(e)&&u.IsEqual(e.length,3)?e[1]:e}function qx(e){return u.IsEqual(e.length,2)?e[1]:[]}function Yg(e,t){return t.reduce((n,r)=>{let o=r;return u.IsEqual(o.length,1)?ss(n,o[0]):u.IsEqual(o.length,0)?Mt(n):Tr()},e)}function Xg(e,t){return u.IsEqual(t.length,3)?Xi(e,t[0],t[1],t[2]):e}function vA(e,t){return u.IsArray(t)&&u.IsEqual(t.length,0)?e:pa(e,t)}function _x(e){let[t,n,r,o,i]=e;return vA(Xg(t?is(Yg(n,r)):Yg(n,r),o),i)}function ap(e,t){return u.IsEqual(t.length,3)?(()=>{let[n,r,o]=t,i=ap(r,o);if(u.IsEqual(n,"&"))return Y(i)?bt([e,...i.allOf]):bt([e,i]);if(u.IsEqual(n,"|"))return R(i)?H([e,...i.anyOf]):H([e,i]);Tr()})():e}function Ux(e){let[t,n]=e;return ap(t,n)}function Kx(e){let[t,n]=e;return ap(t,n)}function Gx(e){return Yh(e[1])}function Wx(e){return e[1]}function zx(e){return Gn(e[0],e[2])}function Bx(e){return u.IsEqual(e.length,4)?No(e[1],e[3]):u.IsEqual(e.length,2)?No(e[1],He()):Tr()}function Hx(e){return`${e}`}function Vx(e){return ct(e[3])?Yn:Ce(e[3])?Vr:Bn(e[3])?en:dt(e[3])?en:Tr()}function Jx(e){return e.length>0}function Yx(e){return e.length>0}function Xx(e){let[t,n,r,o,i]=e;return{[n]:t&&r?xn(ln(i)):t&&!r?xn(i):!t&&r?ln(i):i}}function Zx(e){return Cn(e)}function Qx(e){return e.reduce((t,n)=>u.HasPropertyKey(n,Yn)||u.HasPropertyKey(n,Vr)||u.HasPropertyKey(n,en)?[t[0],l.Assign(t[1],n)]:[l.Assign(t[0],n),t[1]],[{},{}])}function eh(e){return Qx(e[1])}function th(e){let[t,n]=e,r=u.IsEqual(u.Keys(n).length,0)?{}:{patternProperties:n};return _(t,r)}function nh(e){return u.IsEqual(e.length,5)?xn(ln(e[4])):u.IsEqual(e.length,3)?e[2]:u.IsEqual(e.length,4)?u.IsEqual(e[2],"readonly")?xn(e[3]):ln(e[3]):Tr()}function rh(e){if(!u.IsArray(e)||!u.IsEqual(e.length,3))return e;let[t,n,r]=e;return t&&r?xn(ln(n)):t&&!r?xn(n):!t&&r?ln(n):n}function oh(e){return u.IsEqual(e.length,2)?wr(e[1]):u.IsEqual(e.length,1)?e[0]:Tr()}function sh(e){return Cn(e)}function ih(e){return Le(e[1])}function ah(e){return xn(ln(e[4]))}function mh(e){return xn(e[3])}function uh(e){return ln(e[3])}function ph(e){return e[2]}function ch(e){return u.IsEqual(e.length,2)?wr(e[1]):u.IsEqual(e.length,1)?e[0]:Tr()}function lh(e){return Cn(e)}function dh(e){return cn(e[1],e[4])}function fh(e){return pn(e[2],e[5])}function Zg(e,t){return u.IsEqual(e,"remove")?Ig(t):u.IsEqual(e,"add")?xn(t):t}function gh(e){return u.IsEqual(e.length,2)&&u.IsEqual(e[0],"-")?"remove":u.IsEqual(e.length,2)&&u.IsEqual(e[0],"+")||u.IsEqual(e.length,1)?"add":"none"}function Qg(e,t){return u.IsEqual(e,"remove")?kg(t):u.IsEqual(e,"add")?ln(t):t}function xh(e){return u.IsEqual(e.length,2)&&u.IsEqual(e[0],"-")?"remove":u.IsEqual(e.length,2)&&u.IsEqual(e[0],"+")||u.IsEqual(e.length,1)?"add":"none"}function hh(e){return u.IsEqual(e.length,2)?[e[1]]:[]}function yh(e){return u.IsArray(e[6])&&u.IsEqual(e[6].length,1)?ns(Ho(e[3]),e[5],e[6][0],Zg(e[1],Qg(e[8],e[10]))):ns(Ho(e[3]),e[5],Mn(e[3]),Zg(e[1],Qg(e[8],e[10])))}function bh(e){return Mn(e)}function Ih(e){return BigInt(e)}function $h(e){return parseFloat(e)}function wh(e){return u.IsEqual(e,"true")}function kh(e){return null}function Th(e){return{[e[0]]:e[2]}}function Eh(e){return Cn(e)}function SA(e){return e.reduce((t,n)=>l.Assign(t,n),{})}function vh(e){return SA(e[1])}function Sh(e){return Cn(e)}function Ph(e){return e[1]}function Ah(e){return Bo()}function Rh(e){return Wt()}function Oh(e){return St()}function Mh(e){return br()}function Ch(e){return le()}function Lh(e){return X(e)}function jh(e){return H(e[1])}function Fh(e){return e.length===3?[...e[0],...e[2]]:e.length===1?[...e[0]]:[]}function Dh(e){return[e[0],...e[1]]}function Nh(e){return e[1]}function qh(e){return Cn(e)}function _h(e){return u.IsEqual(e.length,2)?e[1]:[]}function Uh(e){let t=e[2],n=e[3],[r,o]=e[4],i=u.IsEqual(u.Keys(o).length,0)?{}:{patternProperties:o};return{[e[1]]:Gn(t,rs(n,r,i))}}function Kh(e){let t=e[2],[n,r]=e[3],o=u.IsEqual(u.Keys(r).length,0)?{}:{patternProperties:r};return{[e[1]]:rs(t,n,o)}}function Gh(e){return{[e[1]]:Gn(e[2],e[4])}}function Wh(e){return{[e[1]]:e[3]}}function zh(e){return null}function Bh(e){return Cn(e)}function Hh(e){return e[1]}function Vh(e){let[t,n]=[e[0],e[1]];return Zh(l.Assign(t,Qx(n)[0]))}var Jh=m(()=>{k();v();zi();no()});var Ln=m(()=>{qr()});function as(e){return te(e.length,2)}function J(e,t,n){return as(e)?t(e[0],e[1]):n()}var Pt=m(()=>{Ln()});function RA(e,t){return te(t.indexOf(e),0)?[e,t.slice(e.length)]:[]}function Ee(e,t){for(let n=0;n<e.length;n++){let r=RA(e[n],t);if(as(r))return r}return[]}var $n=m(()=>{Pt();Ln()});function mp(e,t){return Array.from({length:t-e+1},(n,r)=>String.fromCharCode(e+r))}var Qh,up,pp,ro,ey,oo,Zn,ca,ty,la,st=m(()=>{Qh=[...mp(97,122),...mp(65,90)],up="0",pp=mp(49,57),ro=[up,...pp],ey=" ",oo=`
|
|
10
|
+
`,Zn="_",ca=".",ty="$",la="-"});function oy(e){let t=e.indexOf(MA);return te(t,-1)?"":e.slice(t+2)}function sy(e){let t=e.indexOf(oo);return te(t,-1)?"":e.slice(t)}function CA(e){return e.replace(/^[ \t\r\f\v]+/,"")}function da(e){let t=CA(e);return t.startsWith(ry)?da(oy(t.slice(2))):t.startsWith(ny)?da(sy(t.slice(2))):t}function Je(e){let t=e.trimStart();return t.startsWith(ry)?Je(oy(t.slice(2))):t.startsWith(ny)?Je(sy(t.slice(2))):t}var ny,ry,MA,wn=m(()=>{Ln();st();ny="//",ry="/*",MA="*/"});function fa(e,t){return J(Ee([e],t),(n,r)=>[n,r],()=>["",t])}var cp=m(()=>{Pt();$n()});function LA(e,t){return e.includes(t)}function so(e,t,n,r=""){return J(Ee(e,n),(o,i)=>LA(t,o)?so(e,t,i,r):so(e,t,i,`${r}${o}`),()=>[r,n])}var lp=m(()=>{Pt();$n()});function jA(e){return Ee(pp,e)}function DA(e){return so(FA,[Zn],e)}function NA(e){return J(Ee([up],e),(t,n)=>[t,n],()=>J(jA(e),(t,n)=>J(DA(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[]))}function ga(e){return NA(Je(e))}var FA,xa=m(()=>{Pt();wn();$n();lp();st();st();st();st();FA=[...ro,Zn]});function qA(e){return fa(la,e)}function _A(e){return J(qA(e),(t,n)=>J(ga(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function iy(e){return _A(Je(e))}var dp=m(()=>{Pt();wn();cp();st();xa()});function UA(e){return J(iy(e),(t,n)=>J(Ee(["n"],n),(r,o)=>[`${t}`,o],()=>[]),()=>[])}function fp(e){return UA(e)}var ay=m(()=>{Pt();$n();dp()});function gp(e,t){return Ee([e],t)}function f(e,t){return te(e,"")?["",t]:e.startsWith(oo)?gp(e,da(t)):e.startsWith(ey)?gp(e,t):gp(e,Je(t))}var my=m(()=>{Ln();wn();wn();$n();st();st()});function KA(e){return Ee(uy,e)}function py(e,t=""){return J(Ee(GA,e),(n,r)=>py(r,`${t}${n}`),()=>[t,e])}function WA(e){return J(KA(e),(t,n)=>J(py(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Pe(e){return WA(Je(e))}var uy,GA,cy=m(()=>{Pt();wn();$n();st();st();st();st();uy=[...Qh,Zn,ty];GA=[...uy,...ro]});function BA(e){return as(Ee([ca],e))}function ly(e){return J(so(zA,[Zn],e),(t,n)=>te(t,"")?[]:[t,n],()=>[])}function HA(e){return J(Ee([ca],e),(t,n)=>J(ly(n),(r,o)=>[`0${t}${r}`,o],()=>[]),()=>[])}function VA(e){return J(ga(e),(t,n)=>J(Ee([ca],n),(r,o)=>J(ly(o),(i,a)=>[`${t}${r}${i}`,a],()=>[`${t}`,o]),()=>[`${t}`,n]),()=>[])}function JA(e){return BA(e)?HA(e):VA(e)}function dy(e){return JA(Je(e))}var zA,xp=m(()=>{Ln();Pt();wn();$n();lp();st();st();xa();zA=[...ro,Zn]});function YA(e){return fa(la,e)}function XA(e){return J(YA(e),(t,n)=>J(dy(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function ha(e){return XA(Je(e))}var fy=m(()=>{Pt();wn();cp();st();xp()});var gy=m(()=>{Ln()});function ZA(e){return te(e,"")?[]:[e.slice(0,1),e.slice(1)]}function xy(e,t){return ui(e,(n,r)=>t.startsWith(n)?!0:xy(r,t),()=>!1)}function Qn(e,t,n=""){return J(ZA(t),(r,o)=>xy(e,t)?[n,t]:Qn(e,o,`${n}${r}`),()=>[])}var ya=m(()=>{Pt();Ln()});function QA(e,t,n){return J(Ee([e],n),(r,o)=>J(Qn([t],o),(i,a)=>J(Ee([t],a),(p,c)=>[`${i}`,c],()=>[]),()=>[]),()=>[])}function eR(e,t,n){return J(Ee([e],n),(r,o)=>J(Qn([oo,t],o),(i,a)=>J(Ee([t],a),(p,c)=>[`${i}`,c],()=>[]),()=>[]),()=>[])}function hy(e,t,n,r){return n?QA(e,t,Je(r)):eR(e,t,Je(r))}var hp=m(()=>{Pt();wn();st();$n();ya()});function tR(e,t){return Ee(e,t)}function nR(e,t){return hy(e,e,!1,t)}function rR(e,t){return J(tR(e,t),(n,r)=>nR(n,`${n}${r}`),()=>[])}function ba(e,t){return rR(e,Je(t))}var yy=m(()=>{Pt();$n();wn();hp()});function by(e,t){return J(Qn(e,t),(n,r)=>te(n,"")?[]:[n,r],()=>[])}var Iy=m(()=>{Ln();Pt();ya()});var $y=m(()=>{ay();my();cy();dp();fy();gy();hp();yy();xa();xp();Iy();ya()});var s,sR,iR,aR,mR,Ty,Ey,uR,Ip,vy,pR,cR,lR,Sy,Py,Ay,dR,fR,gR,Ry,xR,hR,yR,bR,IR,Oy,$R,wR,kR,yp,My,$p,TR,ER,vR,SR,PR,AR,RR,Cy,OR,MR,CR,LR,Ly,jy,Fy,Dy,Ia,jR,FR,DR,NR,ne,qR,_R,UR,KR,Ny,qy,_y,Uy,$a,Ky,GR,wp,WR,zR,wy,Gy,Wy,BR,HR,VR,JR,YR,XR,ky,zy,By,Hy,ZR,QR,eO,tO,nO,rO,oO,sO,iO,aO,mO,uO,pO,Vy,Jy,cO,Yy,Xy,lO,dO,kp,fO,gO,xO,hO,yO,bO,IO,$O,Zy,bp,Tp,ig,Qy,wO,eb,kO,TO,EO,vO,SO,tb,nb,PO,Ep,AO,rb,vi=m(()=>{Jh();$y();s=(e,t,n=()=>[])=>e.length===2?t(e):n(),sR=e=>s(s(Pe(e),([t,n])=>s(f("extends",n),([r,o])=>s(ne(o),([i,a])=>s(f("=",a),([p,c])=>s(ne(c),([x,y])=>[[t,r,i,p,x],y]))))),([t,n])=>[tx(t),n]),iR=e=>s(s(Pe(e),([t,n])=>s(f("extends",n),([r,o])=>s(ne(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[nx(t),n]),aR=e=>s(s(Pe(e),([t,n])=>s(f("=",n),([r,o])=>s(ne(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[rx(t),n]),mR=e=>s(Pe(e),([t,n])=>[ox(t),n]),Ty=e=>s(s(sR(e),([t,n])=>[t,n],()=>s(iR(e),([t,n])=>[t,n],()=>s(aR(e),([t,n])=>[t,n],()=>s(mR(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),Ey=(e,t=[])=>s(s(f(",",e),([n,r])=>s(Ty(r),([o,i])=>[[n,o],i])),([n,r])=>Ey(r,[...t,n]),()=>[t,e]),uR=e=>s(s(s(Ty(e),([t,n])=>s(Ey(n),([r,o])=>s(s(f(",",o),([i,a])=>[[i],a],()=>[[],o]),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[sx(t),n]),Ip=e=>s(s(f("<",e),([t,n])=>s(uR(n),([r,o])=>s(f(">",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[ix(t),n]),vy=(e,t=[])=>s(s(f(",",e),([n,r])=>s(ne(r),([o,i])=>[[n,o],i])),([n,r])=>vy(r,[...t,n]),()=>[t,e]),pR=e=>s(s(s(ne(e),([t,n])=>s(vy(n),([r,o])=>s(s(f(",",o),([i,a])=>[[i],a],()=>[[],o]),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[ax(t),n]),cR=e=>s(s(f("<",e),([t,n])=>s(pR(n),([r,o])=>s(f(">",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[mx(t),n]),lR=e=>s(s(Pe(e),([t,n])=>s(cR(n),([r,o])=>[[t,r],o])),([t,n])=>[ux(t),n]),Sy=e=>s(s(s(f(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[px(t),n]),Py=e=>s(f("string",e),([t,n])=>[cx(t),n]),Ay=e=>s(f("number",e),([t,n])=>[lx(t),n]),dR=e=>s(f("boolean",e),([t,n])=>[dx(t),n]),fR=e=>s(f("undefined",e),([t,n])=>[fx(t),n]),gR=e=>s(f("null",e),([t,n])=>[gx(t),n]),Ry=e=>s(f("integer",e),([t,n])=>[xx(t),n]),xR=e=>s(f("bigint",e),([t,n])=>[hx(t),n]),hR=e=>s(f("unknown",e),([t,n])=>[yx(t),n]),yR=e=>s(f("any",e),([t,n])=>[bx(t),n]),bR=e=>s(f("object",e),([t,n])=>[Ix(t),n]),IR=e=>s(f("never",e),([t,n])=>[$x(t),n]),Oy=e=>s(f("symbol",e),([t,n])=>[wx(t),n]),$R=e=>s(f("void",e),([t,n])=>[kx(t),n]),wR=e=>s(f("this",e),([t,n])=>[Tx(t),n]),kR=e=>s(s(f("${",e),([t,n])=>s(ne(n),([r,o])=>s(f("}",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[Ax(t),n]),yp=e=>s(Qn(["${","`"],e),([t,n])=>[Rx(t),n]),My=e=>s(s(s(yp(e),([t,n])=>s(kR(n),([r,o])=>s(My(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s(s(yp(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s(s(yp(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[Ox(t),n]),$p=e=>s(s(f("`",e),([t,n])=>s(My(n),([r,o])=>s(f("`",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[Mx(t),n]),TR=e=>s($p(e),([t,n])=>[Cx(t),n]),ER=e=>s(s(s(f("if",e),([t,n])=>s(ne(n),([r,o])=>s(f("then",o),([i,a])=>s(ne(a),([p,c])=>s(f("else",c),([x,y])=>s(ne(y),([S,A])=>[[t,r,i,p,x,S],A])))))),([t,n])=>[t,n],()=>s(s(f("if",e),([t,n])=>s(ne(n),([r,o])=>s(f("then",o),([i,a])=>s(ne(a),([p,c])=>[[t,r,i,p],c])))),([t,n])=>[t,n],()=>[])),([t,n])=>[Lx(t),n]),vR=e=>s(fp(e),([t,n])=>[Ex(t),n]),SR=e=>s(s(f("true",e),([t,n])=>[t,n],()=>s(f("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[vx(t),n]),PR=e=>s(ha(e),([t,n])=>[Sx(t),n]),AR=e=>s(ba(["'",'"'],e),([t,n])=>[Px(t),n]),RR=e=>s(s(s(f("keyof",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[jx(t),n]),Cy=(e,t=[])=>s(s(s(f("[",e),([n,r])=>s(ne(r),([o,i])=>s(f("]",i),([a,p])=>[[n,o,a],p]))),([n,r])=>[n,r],()=>s(s(f("[",e),([n,r])=>s(f("]",r),([o,i])=>[[n,o],i])),([n,r])=>[n,r],()=>[])),([n,r])=>Cy(r,[...t,n]),()=>[t,e]),OR=e=>s(Cy(e),([t,n])=>[Fx(t),n]),MR=e=>s(s(s(f("extends",e),([t,n])=>s(ne(n),([r,o])=>s(f("?",o),([i,a])=>s(ne(a),([p,c])=>s(f(":",c),([x,y])=>s(ne(y),([S,A])=>[[t,r,i,p,x,S],A])))))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Dx(t),n]),CR=e=>s(s(s(f("(",e),([t,n])=>s(ne(n),([r,o])=>s(f(")",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s(Py(e),([t,n])=>[t,n],()=>s(Ay(e),([t,n])=>[t,n],()=>s(dR(e),([t,n])=>[t,n],()=>s(fR(e),([t,n])=>[t,n],()=>s(gR(e),([t,n])=>[t,n],()=>s(Ry(e),([t,n])=>[t,n],()=>s(xR(e),([t,n])=>[t,n],()=>s(hR(e),([t,n])=>[t,n],()=>s(yR(e),([t,n])=>[t,n],()=>s(bR(e),([t,n])=>[t,n],()=>s(IR(e),([t,n])=>[t,n],()=>s(Oy(e),([t,n])=>[t,n],()=>s($R(e),([t,n])=>[t,n],()=>s(wR(e),([t,n])=>[t,n],()=>s(vR(e),([t,n])=>[t,n],()=>s(SR(e),([t,n])=>[t,n],()=>s(PR(e),([t,n])=>[t,n],()=>s(AR(e),([t,n])=>[t,n],()=>s(TR(e),([t,n])=>[t,n],()=>s(ER(e),([t,n])=>[t,n],()=>s(WR(e),([t,n])=>[t,n],()=>s(HR(e),([t,n])=>[t,n],()=>s(QR(e),([t,n])=>[t,n],()=>s(ZR(e),([t,n])=>[t,n],()=>s(rO(e),([t,n])=>[t,n],()=>s(lR(e),([t,n])=>[t,n],()=>s(oO(e),([t,n])=>[t,n],()=>[])))))))))))))))))))))))))))),([t,n])=>[Nx(t),n]),LR=e=>s(s(s(f("with",e),([t,n])=>s(Yy(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[qx(t),n]),Ly=e=>s(s(RR(e),([t,n])=>s(CR(n),([r,o])=>s(OR(o),([i,a])=>s(MR(a),([p,c])=>s(LR(c),([x,y])=>[[t,r,i,p,x],y]))))),([t,n])=>[_x(t),n]),jy=e=>s(s(s(f("&",e),([t,n])=>s(Ly(n),([r,o])=>s(jy(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),Fy=e=>s(s(Ly(e),([t,n])=>s(jy(n),([r,o])=>[[t,r],o])),([t,n])=>[Ux(t),n]),Dy=e=>s(s(s(f("|",e),([t,n])=>s(Fy(n),([r,o])=>s(Dy(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),Ia=e=>s(s(Fy(e),([t,n])=>s(Dy(n),([r,o])=>[[t,r],o])),([t,n])=>[Kx(t),n]),jR=e=>s(s(f("readonly",e),([t,n])=>s(Ia(n),([r,o])=>[[t,r],o])),([t,n])=>[Gx(t),n]),FR=e=>s(s(f("|",e),([t,n])=>s(Ia(n),([r,o])=>[[t,r],o])),([t,n])=>[Wx(t),n]),DR=e=>s(s(Ip(e),([t,n])=>s(f("=",n),([r,o])=>s(ne(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[zx(t),n]),NR=e=>s(s(s(f("infer",e),([t,n])=>s(Pe(n),([r,o])=>s(f("extends",o),([i,a])=>s(Ia(a),([p,c])=>[[t,r,i,p],c])))),([t,n])=>[t,n],()=>s(s(f("infer",e),([t,n])=>s(Pe(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>[])),([t,n])=>[Bx(t),n]),ne=e=>s(s(NR(e),([t,n])=>[t,n],()=>s(FR(e),([t,n])=>[t,n],()=>s(jR(e),([t,n])=>[t,n],()=>s(Ia(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),qR=e=>s(ha(e),([t,n])=>[Hx(t),n]),_R=e=>s(Pe(e),([t,n])=>[t,n]),UR=e=>s(ba(["'",'"'],e),([t,n])=>[t,n]),KR=e=>s(s(f("[",e),([t,n])=>s(Pe(n),([r,o])=>s(f(":",o),([i,a])=>s(s(Ry(a),([p,c])=>[p,c],()=>s(Ay(a),([p,c])=>[p,c],()=>s(Py(a),([p,c])=>[p,c],()=>s(Oy(a),([p,c])=>[p,c],()=>[])))),([p,c])=>s(f("]",c),([x,y])=>[[t,r,i,p,x],y]))))),([t,n])=>[Vx(t),n]),Ny=e=>s(s(qR(e),([t,n])=>[t,n],()=>s(_R(e),([t,n])=>[t,n],()=>s(UR(e),([t,n])=>[t,n],()=>s(KR(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),qy=e=>s(s(s(f("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Jx(t),n]),_y=e=>s(s(s(f("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Yx(t),n]),Uy=e=>s(s(qy(e),([t,n])=>s(Ny(n),([r,o])=>s(_y(o),([i,a])=>s(f(":",a),([p,c])=>s(ne(c),([x,y])=>[[t,r,i,p,x],y]))))),([t,n])=>[Xx(t),n]),$a=e=>s(s(s(f(",",e),([t,n])=>s(f(`
|
|
11
11
|
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>s(s(f(";",e),([t,n])=>s(f(`
|
|
12
12
|
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>s(s(f(",",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s(s(f(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s(s(f(`
|
|
13
|
-
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))))),([t,n])=>[t,n]),
|
|
13
|
+
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))))),([t,n])=>[t,n]),Ky=(e,t=[])=>s(s($a(e),([n,r])=>s(Uy(r),([o,i])=>[[n,o],i])),([n,r])=>Ky(r,[...t,n]),()=>[t,e]),GR=e=>s(s(s(Uy(e),([t,n])=>s(Ky(n),([r,o])=>s(s($a(o),([i,a])=>[[i],a],()=>[[],o]),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Zx(t),n]),wp=e=>s(s(f("{",e),([t,n])=>s(GR(n),([r,o])=>s(f("}",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[eh(t),n]),WR=e=>s(wp(e),([t,n])=>[th(t),n]),zR=e=>s(s(s(Pe(e),([t,n])=>s(f("?",n),([r,o])=>s(f(":",o),([i,a])=>s(f("readonly",a),([p,c])=>s(ne(c),([x,y])=>[[t,r,i,p,x],y]))))),([t,n])=>[t,n],()=>s(s(Pe(e),([t,n])=>s(f(":",n),([r,o])=>s(f("readonly",o),([i,a])=>s(ne(a),([p,c])=>[[t,r,i,p],c])))),([t,n])=>[t,n],()=>s(s(Pe(e),([t,n])=>s(f("?",n),([r,o])=>s(f(":",o),([i,a])=>s(ne(a),([p,c])=>[[t,r,i,p],c])))),([t,n])=>[t,n],()=>s(s(Pe(e),([t,n])=>s(f(":",n),([r,o])=>s(ne(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>[])))),([t,n])=>[nh(t),n]),wy=e=>s(s(zR(e),([t,n])=>[t,n],()=>s(s(qy(e),([t,n])=>s(ne(n),([r,o])=>s(_y(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>[])),([t,n])=>[rh(t),n]),Gy=e=>s(s(s(f("...",e),([t,n])=>s(wy(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>s(s(wy(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[])),([t,n])=>[oh(t),n]),Wy=(e,t=[])=>s(s(f(",",e),([n,r])=>s(Gy(r),([o,i])=>[[n,o],i])),([n,r])=>Wy(r,[...t,n]),()=>[t,e]),BR=e=>s(s(s(Gy(e),([t,n])=>s(Wy(n),([r,o])=>s(s(f(",",o),([i,a])=>[[i],a],()=>[[],o]),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[sh(t),n]),HR=e=>s(s(f("[",e),([t,n])=>s(BR(n),([r,o])=>s(f("]",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[ih(t),n]),VR=e=>s(s(Pe(e),([t,n])=>s(f("?",n),([r,o])=>s(f(":",o),([i,a])=>s(f("readonly",a),([p,c])=>s(ne(c),([x,y])=>[[t,r,i,p,x],y]))))),([t,n])=>[ah(t),n]),JR=e=>s(s(Pe(e),([t,n])=>s(f(":",n),([r,o])=>s(f("readonly",o),([i,a])=>s(ne(a),([p,c])=>[[t,r,i,p],c])))),([t,n])=>[mh(t),n]),YR=e=>s(s(Pe(e),([t,n])=>s(f("?",n),([r,o])=>s(f(":",o),([i,a])=>s(ne(a),([p,c])=>[[t,r,i,p],c])))),([t,n])=>[uh(t),n]),XR=e=>s(s(Pe(e),([t,n])=>s(f(":",n),([r,o])=>s(ne(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[ph(t),n]),ky=e=>s(s(VR(e),([t,n])=>[t,n],()=>s(JR(e),([t,n])=>[t,n],()=>s(YR(e),([t,n])=>[t,n],()=>s(XR(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),zy=e=>s(s(s(f("...",e),([t,n])=>s(ky(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>s(s(ky(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[])),([t,n])=>[ch(t),n]),By=(e,t=[])=>s(s(f(",",e),([n,r])=>s(zy(r),([o,i])=>[[n,o],i])),([n,r])=>By(r,[...t,n]),()=>[t,e]),Hy=e=>s(s(s(zy(e),([t,n])=>s(By(n),([r,o])=>s(s(f(",",o),([i,a])=>[[i],a],()=>[[],o]),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[lh(t),n]),ZR=e=>s(s(f("(",e),([t,n])=>s(Hy(n),([r,o])=>s(f(")",o),([i,a])=>s(f("=>",a),([p,c])=>s(ne(c),([x,y])=>[[t,r,i,p,x],y]))))),([t,n])=>[dh(t),n]),QR=e=>s(s(f("new",e),([t,n])=>s(f("(",n),([r,o])=>s(Hy(o),([i,a])=>s(f(")",a),([p,c])=>s(f("=>",c),([x,y])=>s(ne(y),([S,A])=>[[t,r,i,p,x,S],A])))))),([t,n])=>[fh(t),n]),eO=e=>s(s(s(f("+",e),([t,n])=>s(f("readonly",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>s(s(f("-",e),([t,n])=>s(f("readonly",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>s(s(f("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])))),([t,n])=>[gh(t),n]),tO=e=>s(s(s(f("+",e),([t,n])=>s(f("?",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>s(s(f("-",e),([t,n])=>s(f("?",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>s(s(f("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])))),([t,n])=>[xh(t),n]),nO=e=>s(s(s(f("as",e),([t,n])=>s(ne(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[hh(t),n]),rO=e=>s(s(f("{",e),([t,n])=>s(eO(n),([r,o])=>s(f("[",o),([i,a])=>s(Pe(a),([p,c])=>s(f("in",c),([x,y])=>s(ne(y),([S,A])=>s(nO(A),([C,F])=>s(f("]",F),([q,re])=>s(tO(re),([ee,ge])=>s(f(":",ge),([ke,We])=>s(ne(We),([jt,xe])=>s(Sy(xe),([Z,E])=>s(f("}",E),([ze,Ft])=>[[t,r,i,p,x,S,C,q,ee,ke,jt,Z,ze],Ft]))))))))))))),([t,n])=>[yh(t),n]),oO=e=>s(Pe(e),([t,n])=>[bh(t),n]),sO=e=>s(fp(e),([t,n])=>[Ih(t),n]),iO=e=>s(ha(e),([t,n])=>[$h(t),n]),aO=e=>s(s(f("true",e),([t,n])=>[t,n],()=>s(f("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[wh(t),n]),mO=e=>s(ba(['"',"'"],e),([t,n])=>[t,n]),uO=e=>s(f("null",e),([t,n])=>[kh(t),n]),pO=e=>s(f("undefined",e),([t,n])=>[void 0,n]),Vy=e=>s(s(Ny(e),([t,n])=>s(f(":",n),([r,o])=>s(kp(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[Th(t),n]),Jy=(e,t=[])=>s(s($a(e),([n,r])=>s(Vy(r),([o,i])=>[[n,o],i])),([n,r])=>Jy(r,[...t,n]),()=>[t,e]),cO=e=>s(s(s(Vy(e),([t,n])=>s(Jy(n),([r,o])=>s(s($a(o),([i,a])=>[[i],a],()=>[[],o]),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Eh(t),n]),Yy=e=>s(s(f("{",e),([t,n])=>s(cO(n),([r,o])=>s(f("}",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[vh(t),n]),Xy=(e,t=[])=>s(s(f(",",e),([n,r])=>s(kp(r),([o,i])=>[[n,o],i])),([n,r])=>Xy(r,[...t,n]),()=>[t,e]),lO=e=>s(s(s(kp(e),([t,n])=>s(Xy(n),([r,o])=>s(s(f(",",o),([i,a])=>[[i],a],()=>[[],o]),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Sh(t),n]),dO=e=>s(s(f("[",e),([t,n])=>s(lO(n),([r,o])=>s(f("]",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[Ph(t),n]),kp=e=>s(s(sO(e),([t,n])=>[t,n],()=>s(iO(e),([t,n])=>[t,n],()=>s(aO(e),([t,n])=>[t,n],()=>s(mO(e),([t,n])=>[t,n],()=>s(uO(e),([t,n])=>[t,n],()=>s(pO(e),([t,n])=>[t,n],()=>s(Yy(e),([t,n])=>[t,n],()=>s(dO(e),([t,n])=>[t,n],()=>[])))))))),([t,n])=>[t,n]),fO=e=>s(f("-?(?:0|[1-9][0-9]*)n",e),([t,n])=>[Ah(t),n]),gO=e=>s(f(".*",e),([t,n])=>[Rh(t),n]),xO=e=>s(f("-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?",e),([t,n])=>[Oh(t),n]),hO=e=>s(f("-?(?:0|[1-9][0-9]*)",e),([t,n])=>[Mh(t),n]),yO=e=>s(f("(?!)",e),([t,n])=>[Ch(t),n]),bO=e=>s(by(["-?(?:0|[1-9][0-9]*)n",".*","-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?","-?(?:0|[1-9][0-9]*)","(?!)","(",")","$","|"],e),([t,n])=>[Lh(t),n]),IO=e=>s(s(fO(e),([t,n])=>[t,n],()=>s(gO(e),([t,n])=>[t,n],()=>s(xO(e),([t,n])=>[t,n],()=>s(hO(e),([t,n])=>[t,n],()=>s(yO(e),([t,n])=>[t,n],()=>s($O(e),([t,n])=>[t,n],()=>s(bO(e),([t,n])=>[t,n],()=>[]))))))),([t,n])=>[t,n]),$O=e=>s(s(f("(",e),([t,n])=>s(Tp(n),([r,o])=>s(f(")",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[jh(t),n]),Zy=e=>s(s(s(bp(e),([t,n])=>s(f("|",n),([r,o])=>s(Zy(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s(s(bp(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[]))),([t,n])=>[Fh(t),n]),bp=e=>s(s(IO(e),([t,n])=>s(Tp(n),([r,o])=>[[t,r],o])),([t,n])=>[Dh(t),n]),Tp=e=>s(s(Zy(e),([t,n])=>[t,n],()=>s(bp(e),([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),ig=e=>s(s(f("^",e),([t,n])=>s(Tp(n),([r,o])=>s(f("$",o),([i,a])=>[[t,r,i],a]))),([t,n])=>[Nh(t),n]),Qy=(e,t=[])=>s(s(f(",",e),([n,r])=>s(ne(r),([o,i])=>[[n,o],i])),([n,r])=>Qy(r,[...t,n]),()=>[t,e]),wO=e=>s(s(s(ne(e),([t,n])=>s(Qy(n),([r,o])=>s(s(f(",",o),([i,a])=>[[i],a],()=>[[],o]),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[qh(t),n]),eb=e=>s(s(s(f("extends",e),([t,n])=>s(wO(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[_h(t),n]),kO=e=>s(s(f("interface",e),([t,n])=>s(Pe(n),([r,o])=>s(Ip(o),([i,a])=>s(eb(a),([p,c])=>s(wp(c),([x,y])=>[[t,r,i,p,x],y]))))),([t,n])=>[Uh(t),n]),TO=e=>s(s(f("interface",e),([t,n])=>s(Pe(n),([r,o])=>s(eb(o),([i,a])=>s(wp(a),([p,c])=>[[t,r,i,p],c])))),([t,n])=>[Kh(t),n]),EO=e=>s(s(f("type",e),([t,n])=>s(Pe(n),([r,o])=>s(Ip(o),([i,a])=>s(f("=",a),([p,c])=>s(ne(c),([x,y])=>[[t,r,i,p,x],y]))))),([t,n])=>[Gh(t),n]),vO=e=>s(s(f("type",e),([t,n])=>s(Pe(n),([r,o])=>s(f("=",o),([i,a])=>s(ne(a),([p,c])=>[[t,r,i,p],c])))),([t,n])=>[Wh(t),n]),SO=e=>s(s(s(f("export",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[zh(t),n]),tb=e=>s(s(s(f(";",e),([t,n])=>s(f(`
|
|
14
14
|
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>s(s(f(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>s(s(f(`
|
|
15
|
-
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n]),nI=(e,t=[])=>s(s(tI(e),([n,r])=>s(vp(r),([o,i])=>[[n,o],i])),([n,r])=>nI(r,[...t,n]),()=>[t,e]),AO=e=>s(s(s(vp(e),([t,n])=>s(nI(n),([r,o])=>s(s(tI(o),([i,a])=>[[i],a],()=>[[],o]),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Bh(t),n]),vp=e=>s(s(RO(e),([t,n])=>s(s(EO(n),([r,o])=>[r,o],()=>s(vO(n),([r,o])=>[r,o],()=>s(SO(n),([r,o])=>[r,o],()=>s(PO(n),([r,o])=>[r,o],()=>[])))),([r,o])=>s(Sy(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[Hh(t),n]),OO=e=>s(s(vp(e),([t,n])=>s(AO(n),([r,o])=>[[t,r],o])),([t,n])=>[Vh(t),n]),rI=e=>s(s(OO(e),([t,n])=>[t,n],()=>s(qA(e),([t,n])=>[t,n],()=>s(ne(e),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n])});function oI(e){let t=wp(`\`${e}\``);return u.IsEqual(t.length,2)?t[0]:De()}var Sp=m(()=>{xn();v();vi()});function CO(e){return e.join("|")}function LO(e){return e.slice(1,e.length-1)}function jO(e,t,n){return er(t,`${n}${e}`)}function FO(e,t){return er(e,`${t}${eg}`)}function DO(e,t){return er(e,`${t}${wi}`)}function NO(e,t){return er(e,`${t}${Ti}`)}function qO(e,t){return ms(H([X("false"),X("true")]),e,t)}function _O(e,t){return er(e,`${t}${Ei}`)}function UO(e,t,n){return er(t,`${n}${LO(e)}`)}function GO(e,t,n){let r=us(e,{});return ms(r,t,n)}function KO(e,t,n){let r=ft(e);return ms(r,t,n)}function sI(e,t,n,r=[]){return u.ShiftLeft(e,(o,i)=>sI(i,t,n,[...r,ms(o,[],"")]),()=>er(t,`${n}(${CO(r)})`))}function ms(e,t,n){return et(e)?KO(e.enum,t,n):ct(e)?DO(t,n):ue(e)?jO(e.const,t,n):yn(e)?FO(t,n):Gt(e)?qO(t,n):Ce(e)?NO(t,n):dt(e)?_O(t,n):Se(e)?UO(e.pattern,t,n):aI(e)?GO(e.parameters[0],t,n):O(e)?sI(e.anyOf,t,n):Gd}function er(e,t){return u.ShiftLeft(e,(n,r)=>ms(n,r,t),()=>t)}function WO(e){return`^${er(e,"")}$`}function iI(e){let t=WO(e);return Ri(t)}var Pp=m(()=>{v();Qt();Me();V();bt();yr();Wt();lt();In();zn();Be();Ai();B();wa()});function us(e,t){return K(e)?l.Update(iI(e),{},t):Bi(e,t)}function mI(e,t,n,r){let o=Ct(e,t,n);return us(o,r)}var wa=m(()=>{k();bt();Pp();D()});function Bi(e,t={}){return M("TemplateLiteral",[e],t)}function aI(e){return je(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"TemplateLiteral")}function uI(e){return us(e,{})}function zO(e){let t=oI(e);return uI(t)}function pI(e,t={}){let n=u.IsString(e)?zO(e):uI(e);return l.Update(n,{},t)}function Se(e){return P(e,"TemplateLiteral")}var bt=m(()=>{qo();v();W();ie();Sp();wa()});var U={};Ot(U,{ExtendsFalse:()=>G,ExtendsTrue:()=>T,ExtendsUnion:()=>Rp,IsExtendsFalse:()=>BO,IsExtendsTrue:()=>lI,IsExtendsTrueLike:()=>io,IsExtendsUnion:()=>cI,Match:()=>Ie});function Rp(e){return l.Create({"~kind":"ExtendsUnion"},{inferred:e})}function cI(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"inferred")&&u.IsEqual(e["~kind"],"ExtendsUnion")&&u.IsObject(e.inferred)}function T(e){return l.Create({"~kind":"ExtendsTrue"},{inferred:e})}function lI(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"inferred")&&u.IsEqual(e["~kind"],"ExtendsTrue")&&u.IsObject(e.inferred)}function G(){return l.Create({"~kind":"ExtendsFalse"},{})}function BO(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.IsEqual(e["~kind"],"ExtendsFalse")}function io(e){return cI(e)||lI(e)}function Ie(e,t,n){return io(e)?t(e.inferred):n()}var he=m(()=>{v();k()});function HO(e,t,n,r){return Ie(Q(e,n,r),o=>T(l.Assign(l.Assign(e,o),{[t]:n})),()=>G())}function VO(e,t){return T(e)}function JO(e,t,n,r,o){return Ie(Q(e,t,n),i=>Ie(Q(i,t,r),a=>T(a),()=>G()),()=>Ie(Q(e,t,o),i=>T(i),()=>G()))}function YO(e,t,n){let r=ft(n);return Q(e,t,r)}function dI(e,t,n){return u.ShiftLeft(n,(r,o)=>Ie(Q(e,t,r),i=>dI(i,t,o),()=>G()),()=>T(e))}function XO(e,t,n){let r=ot(n);return Q(e,t,r)}function fI(e,t,n){return u.ShiftLeft(n,(r,o)=>Ie(Q(e,t,r),i=>T(i),()=>fI(e,t,o)),()=>G())}function pe(e,t,n){return Te(n)?VO(e,t):ve(n)?JO(e,t,n.if,n.then,n.else):et(n)?YO(e,t,n.enum):Ae(n)?HO(e,n.name,t,n.extends):Y(n)?dI(e,t,n.allOf):Se(n)?XO(e,t,n.pattern):O(n)?fI(e,t,n.anyOf):Re(n)?T(e):G()}var it=m(()=>{v();k();ht();St();Qt();Ut();Fe();bt();V();Ze();kt();he();B();B()});function gI(e,t,n){return Ae(n)?pe(e,t,n):Te(n)?T(e):Re(n)?T(e):Rp(e)}var xI=m(()=>{Ut();ht();Ze();it();he()});function ZO(e,t){let n=gr(e),r=gr(t);return n&&r||!n&&r?!0:!(n&&!r)}function hI(e,t,n,r){return $e(r)?ZO(t,r)?Q(e,n,r.items):G():pe(e,t,r)}var yI=m(()=>{pt();Go();it();kt();he()});function II(e,t,n){return yn(n)?T(e):pe(e,t,n)}var bI=m(()=>{yr();it();he()});function $I(e,t,n){return Gt(n)?T(e):pe(e,t,n)}var wI=m(()=>{zn();it();he()});function QO(e,t,n,r,o){let i=Ae(r)?t:r,a=Ae(r)?r:t,p=rt(t),c=rt(r);return!p&&c?G():Ie(Q(e,i,a),x=>ps(x,n,o),()=>G())}function eM(e,t,n,r){return u.ShiftLeft(r,(o,i)=>QO(e,t,n,o,i),()=>rt(t)?T(e):G())}function tM(e,t,n){return u.ShiftLeft(t,(r,o)=>eM(e,r,o,n),()=>T(e))}function ps(e,t,n){return tM(e,t,n)}var Ap=m(()=>{v();Ut();Wn();kt();he()});function ka(e,t,n){return $n(n)?T(e):Q(e,t,n)}var Op=m(()=>{kr();kt();he()});function kI(e,t,n,r){return Te(r)?T(e):Re(r)?T(e):_e(r)?Ie(ps(e,t,r.parameters),o=>ka(o,n,r.instanceType),()=>G()):G()}var TI=m(()=>{ht();Nt();Ze();he();Ap();Op()});function EI(e,t,n,r,o){return Ie(Q(e,t,o),()=>Q(e,n,o),()=>Q(e,r,o))}var vI=m(()=>{kt();he()});function SI(e,t,n){let r=ft(t);return Q(e,r,n)}var PI=m(()=>{kt();B()});function RI(e,t,n,r){return Te(r)?T(e):Re(r)?T(e):Ue(r)?Ie(ps(e,t,r.parameters),o=>ka(o,n,r.returnType),()=>G()):G()}var AI=m(()=>{ht();qt();Ze();he();Ap();Op()});function OI(e,t,n){return ct(n)?T(e):Ce(n)?T(e):pe(e,t,n)}var MI=m(()=>{In();lt();it();he()});function CI(e,t,n){let r=we(t);return Q(e,r,n)}var LI=m(()=>{kt();cs()});function Ta(e,t,n){return t===n?T(e):G()}function nM(e,t,n){return ue(n)?Ta(e,t,n.const):yn(n)?T(e):pe(e,X(t),n)}function rM(e,t,n){return ue(n)?Ta(e,t,n.const):Gt(n)?T(e):pe(e,X(t),n)}function oM(e,t,n){return ue(n)?Ta(e,t,n.const):Ce(n)?T(e):pe(e,X(t),n)}function sM(e,t,n){return ue(n)?Ta(e,t,n.const):dt(n)?T(e):pe(e,X(t),n)}function jI(e,t,n){return u.IsBigInt(t.const)?nM(e,t.const,n):u.IsBoolean(t.const)?rM(e,t.const,n):u.IsNumber(t.const)?oM(e,t.const,n):u.IsString(t.const)?sM(e,t.const,n):De()}var FI=m(()=>{v();Du();Me();yr();zn();lt();Wt();it();he()});function DI(e,t,n){return Ae(n)?pe(e,t,n):T(e)}var NI=m(()=>{Ut();it();he()});function qI(e,t,n){return zr(n)?T(e):pe(e,t,n)}var _I=m(()=>{Br();it();he()});function UI(e,t,n){return Ce(n)?T(e):pe(e,t,n)}var GI=m(()=>{lt();it();he()});function iM(e,t,n){return rt(t)?rt(n)?T(e):G():T(e)}function aM(e,t,n){return Ae(n)&&Zt(n.extends)?G():Ie(Q(e,t,n),r=>iM(r,t,n),()=>G())}function mM(e,t){return e.reduce((n,r)=>r in t?io(t[r])?{...n,...t[r].inferred}:De():De(),{})}function uM(e,t,n){let r={};for(let a of u.Keys(n))r[a]=a in t?aM({},t[a],n[a]):rt(n[a])?Ae(n[a])?T(l.Assign(e,{[n[a].name]:n[a].extends})):T(e):G();let o=u.Values(r).every(a=>io(a)),i=o?mM(u.Keys(r),r):{};return o?T(i):G()}function pM(e,t,n){let r=uM(e,t,n);return io(r)?T(l.Assign(e,r.inferred)):G()}function cM(e,t,n){return pM(e,t,n)}function lM(e,t){return u.Keys(t).reduce((n,r)=>({...n,[r]:u.HasPropertyKey(e,r)?O(n[r])?H([...n[r].anyOf,t[r]]):H([e[r],t[r]]):t[r]}),e)}function KI(e,t,n,r){return u.ShiftLeft(t,(o,i)=>Ie(Q({},e[o],n),a=>KI(e,i,n,lM(r,a)),()=>G()),()=>T(r))}function dM(e,t,n,r){let o=u.Keys(t);return KI(t,o,r,e)}function WI(e,t,n){return nt(n)?dM(e,t,Bt(n),gt(n)):me(n)?cM(e,t,n.properties):pe(e,_(t),n)}var zI=m(()=>{xn();k();v();Wn();Ut();Be();ce();Ve();V();kt();it();he()});function fM(e,t){return u.IsEqual(u.Keys(t).length,0)?T(e):G()}function gM(e,t,n,r,o){return Q(e,n,o)}function BI(e,t,n,r){return nt(r)?gM(e,_i(t),n,_i(Bt(r)),gt(r)):me(r)?fM(e,r.properties):Te(r)?T(e):Re(r)?T(e):G()}var HI=m(()=>{v();ht();Ze();ce();Ve();kt();he()});function VI(e,t,n){return dt(n)?T(e):pe(e,t,n)}var JI=m(()=>{Wt();it();he()});function YI(e,t,n){return Bn(n)?T(e):pe(e,t,n)}var XI=m(()=>{br();it();he()});function ZI(e,t,n){let r=ot(t);return Q(e,r,n)}var QI=m(()=>{kt();B()});function Mp(e,t){return l.Create({"~kind":"Inferrable"},{name:e,type:t},{})}function ls(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"name")&&u.HasPropertyKey(e,"type")&&u.IsEqual(e["~kind"],"Inferrable")&&u.IsString(e.name)&&u.IsObject(e.type)}function Cp(e){return Xn(e)?Ae(e.items)?$e(e.items.extends)?Mp(e.items.name,e.items.extends.items):Re(e.items.extends)?Mp(e.items.name,e.items.extends):void 0:De():void 0}function Ea(e){return Ae(e)?Mp(e.name,e.extends):void 0}function Lp(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Ie(Q({},r,t),()=>Lp(o,t,[...n,r]),()=>{}),()=>n)}function eb(e,t,n,r){let o=Lp(n,r);return u.IsArray(o)?T(l.Assign(e,{[t]:Le(o)})):G()}function va(e,t,n,r){let o=Lp(n,r);return u.IsArray(o)?T(l.Assign(e,{[t]:H(o)})):G()}var jp=m(()=>{xn();k();v();pt();Ze();Ne();kt();V();Ut();Xr();he()});function xM(e){return[...e].reverse()}function Fp(e,t){return t?xM(e):e}function hM(e){let t=e.length>0?e[0]:void 0,n=je(t)?Cp(t):void 0;return je(n)}function yM(e,t,n,r,o,i){return Ie(Q(e,n,o),a=>tb(a,t,r,i),()=>G())}function IM(e,t,n,r,o){let i=Cp(r);return ls(i)?eb(e,i.name,Fp(n,t),i.type):u.ShiftLeft(n,(a,p)=>yM(e,t,a,p,r,o),()=>G())}function bM(e,t,n,r){return u.ShiftLeft(r,(o,i)=>IM(e,t,n,o,i),()=>u.IsEqual(n.length,0)?T(e):G())}function tb(e,t,n,r){return bM(e,t,n,r)}function $M(e,t,n){let r=tr(e,ye([],[]),n),o=hM(r);return tb(e,o,Fp(t,o),Fp(r,o))}function nb(e,t,n){let r=Ea(n);return ls(r)?va(e,r.name,t,r.type):u.ShiftLeft(t,(o,i)=>Ie(Q(e,o,n),a=>nb(a,i,n),()=>G()),()=>T(e))}function rb(e,t,n){let r=tr(e,ye([],[]),t);return fe(n)?$M(e,r,n.items):$e(n)?nb(e,r,n.items):pe(e,Le(r),n)}var ob=m(()=>{v();W();pt();Ne();kt();it();he();D();D();jp()});function sb(e,t,n){return $n(n)?T(e):Qr(n)?T(e):pe(e,t,n)}var ib=m(()=>{eo();kr();it();he()});function ab(e,t,n){return u.ShiftLeft(n,(r,o)=>Ie(Q(e,t,r),i=>T(i),()=>ab(e,t,o)),()=>G())}function Dp(e,t,n){return u.ShiftLeft(t,(r,o)=>Ie(ab(e,r,n),i=>Dp(i,o,n),()=>G()),()=>T(e))}function mb(e,t,n){let r=Ea(n);return ls(r)?va(e,r.name,t,r.type):O(n)?Dp(e,t,n.anyOf):Dp(e,t,[n])}var ub=m(()=>{v();V();kt();he();jp()});function pb(e,t,n){return Ae(n)?pe(e,t,n):Te(n)?T(e):Re(n)?T(e):G()}var cb=m(()=>{ht();Ze();Ut();it();he()});function lb(e,t,n){return $n(n)?T(e):pe(e,t,n)}var db=m(()=>{kr();it();he()});function Q(e,t,n){return Te(t)?gI(e,t,n):$e(t)?hI(e,t,t.items,n):yn(t)?II(e,t,n):Gt(t)?$I(e,t,n):_e(t)?kI(e,t.parameters,t.instanceType,n):ve(t)?EI(e,t.if,t.then,t.else,n):et(t)?SI(e,t.enum,n):Ue(t)?RI(e,t.parameters,t.returnType,n):ct(t)?OI(e,t,n):Y(t)?CI(e,t.allOf,n):ue(t)?jI(e,t,n):Zt(t)?DI(e,t,n):zr(t)?qI(e,t,n):Ce(t)?UI(e,t,n):me(t)?WI(e,t.properties,n):nt(t)?BI(e,Bt(t),gt(t),n):dt(t)?VI(e,t,n):Bn(t)?YI(e,t,n):Se(t)?ZI(e,t.pattern,n):fe(t)?rb(e,t.items,n):Qr(t)?sb(e,t,n):O(t)?mb(e,t.anyOf,n):Re(t)?pb(e,t,n):$n(t)?lb(e,t,n):G()}var kt=m(()=>{xI();yI();bI();wI();TI();vI();PI();AI();MI();LI();FI();NI();_I();GI();zI();HI();JI();XI();QI();ob();ib();ub();cb();db();ht();pt();yr();zn();Nt();St();Qt();qt();In();Fe();Me();Be();Br();lt();ce();Ve();Wt();br();bt();Ne();eo();Ze();V();kr();he()});function wM(e,t){return we([...e,_(t)])}function Np(e,t,n){return K(e)?l.Update(wM(e,t),{},n):rs(e,t,n)}function fb(e,t,n,r,o){let i=Ct(e,t,n),a=ds(e,t,r);return Np(i,a,o)}var Sa=m(()=>{k();ce();B();no();D();D();D()});function rs(e,t,n={}){return M("Interface",[e,t],n)}function ao(e){return je(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"Interface")}function gb(e,t,n={}){return Np(e,t,n)}var fs=m(()=>{v();W();ie();Sa()});function kM(e,t,n){return e.includes(n)?!0:gs([...e,n],t,t[n])}function xb(e,t,n){let r=gi(n);return Er(e,t,r)}function Er(e,t,n){return u.ShiftLeft(n,(r,o)=>gs(e,t,r)?!0:Er(e,t,o),()=>!1)}function gs(e,t,n){return Ge(n)?kM(e,t,n.$ref):$e(n)?gs(e,t,n.items):_e(n)?Er(e,t,[...n.parameters,n.instanceType]):Ue(n)?Er(e,t,[...n.parameters,n.returnType]):ao(n)?xb(e,t,n.parameters[1]):Y(n)?Er(e,t,n.allOf):me(n)?xb(e,t,n.properties):O(n)?Er(e,t,n.anyOf):fe(n)?Er(e,t,n.items):nt(n)?gs(e,t,gt(n)):!1}function hb(e,t,n){return gs(e,t,n)}var qp=m(()=>{v();pt();Nt();qt();Fe();ce();dr();Ve();Ne();V();_t();fs()});function TM(e,t){return t.reduce((n,r)=>hb([r],e,e[r])?[...n,r]:n,[])}function yb(e){let t=fi(e);return TM(e,t)}var _p=m(()=>{dr();qp()});function EM(e,t,n){return n.includes(t)?n:t in e?xs(e,e[t],[...n,t]):De()}function Ib(e,t,n){let r=gi(t);return mo(e,r,n)}function mo(e,t,n){return t.reduce((r,o)=>xs(e,o,r),n)}function xs(e,t,n){return Ge(t)?EM(e,t.$ref,n):$e(t)?xs(e,t.items,n):_e(t)?mo(e,[...t.parameters,t.instanceType],n):Ue(t)?mo(e,[...t.parameters,t.returnType],n):ao(t)?Ib(e,t.parameters[1],n):Y(t)?mo(e,t.allOf,n):me(t)?Ib(e,t.properties,n):O(t)?mo(e,t.anyOf,n):fe(t)?mo(e,t.items,n):nt(t)?xs(e,gt(t),n):n}function bb(e,t,n){return xs(e,n,[t])}var Up=m(()=>{xn();pt();Nt();qt();Fe();ce();dr();Ve();Ne();V();_t();fs()});function vM(e){return Ur()}function SM(e){return u.Keys(e).reduce((t,n)=>({...t,[n]:vr(e[n])}),{})}function hs(e){return e.reduce((t,n)=>[...t,vr(n)],[])}function vr(e){return Ge(e)?vM(e.$ref):$e(e)?Mt(vr(e.items),di(e)):_e(e)?cn(hs(e.parameters),vr(e.instanceType)):Ue(e)?ln(hs(e.parameters),vr(e.returnType)):Y(e)?It(hs(e.allOf)):me(e)?_(SM(e.properties)):nt(e)?qi(Yr(e),vr(gt(e))):O(e)?H(hs(e.anyOf)):fe(e)?Le(hs(e.items)):e}function PM(e,t){return t in e?vr(e[t]):He()}function $b(e){return PM(e.$defs,e.$ref)}var wb=m(()=>{v();ht();pt();Nt();qt();Fe();ce();Ve();_t();Ne();V();Ze()});function RM(e,t,n){let r=Ct(e,ye([],[]),t),o=ds({},ye([],[]),n);return we([...r,_(o)])}function AM(e,t){return u.Keys(e).filter(r=>t.includes(r)).reduce((r,o)=>{let i=e[o],a=ao(i)?RM(e,i.parameters[0],i.parameters[1]):i;return{...r,[o]:a}},{})}function kb(e,t,n){let r=bb(e,t,n),o=AM(e,r);return fn(o,t)}var Gp=m(()=>{v();yt();ce();Up();no();D();D();D();B()});function Tb(e,t){return t in e?Ge(e[t])?Tb(e,e[t].$ref):e[t]:le()}function Tn(e,t){return Tb(e,t)}var Sr=m(()=>{Be();_t()});var Kp=m(()=>{_p();qp();Up();wb();Gp();Sr()});function Eb(e){return Qe(e)?$b(e):xi(e)?He():e}function tt(e,t,n){let r=Eb(t),o=Eb(n);return Q(e,r,o)}var vb=m(()=>{yt();Ze();hi();kt();Kp()});var bn=m(()=>{vb();he()});function Zo(e,t){let n=[tt({},e,t),tt({},t,e)];return U.IsExtendsTrueLike(n[0])&&U.IsExtendsTrueLike(n[1])?Yo:U.IsExtendsTrueLike(n[0])&&U.IsExtendsFalse(n[1])?Xo:U.IsExtendsFalse(n[0])&&U.IsExtendsTrueLike(n[1])?Li:Pa}var Yo,Pa,Xo,Li,Qo=m(()=>{bn();Yo=0,Pa=1,Xo=2,Li=3});function Wp(e,t,n=[],r=t){return u.ShiftLeft(t,(o,i)=>{let a=Zo(e,o);return u.IsEqual(a,Xo)||u.IsEqual(a,Yo)?r:u.IsEqual(a,Pa)?Wp(e,i,[...n,o],r):Wp(e,i,n,r)},()=>[...n,e])}function OM(e,t,n){let r=zt(e);return Te(r)?[r]:Re(r)?[r]:Zt(r)?Ra(t,n):me(r)?Ra(t,[...n,r]):Ra(t,Wp(r,n))}function Ra(e,t=[]){return u.ShiftLeft(e,(n,r)=>OM(n,r,t),()=>t)}function sp(e){let t=Ra(e);return Jr(t)}var ip=m(()=>{v();ht();Be();ce();Ze();Qo();Fi();B()});function zp(e,t){return l.Update(zt(e),{},t)}function Sb(e,t,n,r){let o=$(e,t,n);return zp(o,r)}var Aa=m(()=>{k();D();B()});var cs=m(()=>{ip();Qo();tp();rp();B();Fi();Aa();np()});function ys(e,t=[]){return Gn(e)&&u.IsEqual(e.action,"Conditional")?Ge(e.parameters[0])?ys(e.parameters[2],ys(e.parameters[3],[...t,e.parameters[0].$ref])):ys(e.parameters[2],ys(e.parameters[3],t)):Gn(e)&&u.IsEqual(e.action,"Mapped")&&Gn(e.parameters[1])&&u.IsEqual(e.parameters[1].action,"KeyOf")&&Ge(e.parameters[1].parameters[0])?[...t,e.parameters[1].parameters[0].$ref]:t}function MM(e,t){return e.reduce((n,r)=>[...n,t.includes(r.name)],[])}function Ab(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>u.ShiftLeft(t,(i,a)=>Ab(o,a,[...n,[i,r]]),()=>n),()=>n)}function CM(e){return Se(e)?ot(e.pattern):et(e)?ft(e.enum):e}function LM(e){let t=CM(e);return O(t)?[...t.anyOf]:[t]}function jM(e,t){return e.reduce((n,r)=>[...n,[...r,t]],[])}function Pb(e,t){return t.reduce((n,r)=>[...n,...jM(e,r)],[])}function Rb(e){return e.reduce((t,n)=>u.IsEqual(n[0],!0)?Pb(t,LM(n[1])):Pb(t,[n[1]]),[[]])}function Ob(e,t,n){let r=ys(n),o=MM(e,r),i=Ab(t,o);return Gn(n)&&u.IsEqual(n.action,"Conditional")||Gn(n)&&u.IsEqual(n.action,"Mapped")?Rb(i):[t]}var Mb=m(()=>{v();V();ie();Qt();bt();_t();B();B()});function FM(){return["(not-resolvable)",le()]}function DM(){return["(not-generic)",le()]}function NM(e,t,n){return[e,Kn(t,n)]}function qM(e,t,n){return t in e?Cb(e,t,e[t],n):FM()}function Cb(e,t,n,r){return _r(n)?NM(t,n.parameters,n.expression):Ge(n)?qM(e,n.$ref,r):DM()}function Lb(e,t,n){return Cb(e,"(anonymous)",t,n)}var jb=m(()=>{Fo();_t();Be()});function _M(e,t,n){if(Ae(t)||uo(t)||U.IsExtendsTrueLike(tt({},t,n)))return;let r={parameter:e,expect:n,actual:t};throw new Error(`Argument for parameter ${e} does not satisfy constraint`,{cause:r})}function Fb(e,t,n,r,o){let i=$(e,t,o);return _M(n,i,r),l.Assign(e,{[n]:i})}function UM(e,t,n,r,o){let i=$(e,t,n.extends),a=$(e,t,n.equals);return u.ShiftLeft(o,(p,c)=>Bp(Fb(e,t,n.name,i,p),t,r,c),()=>Bp(Fb(e,t,n.name,i,a),t,r,[]))}function Bp(e,t,n,r){return u.ShiftLeft(n,(o,i)=>UM(e,t,o,i,r),()=>e)}function Db(e,t,n,r){return Bp(e,t,n,r)}var Nb=m(()=>{v();k();D();bn();Ut();to()});function GM(){if(!u.IsLessThan(Vp,Xt.Get().maxInstantiationCount))throw Error("Type instantiation is excessively deep and possibly infinite")}function KM(){GM(),Vp++,Hp++}function WM(){Hp--,u.IsEqual(Hp,0)&&(Vp=0)}function zM(e){return u.IsGreaterThan(e.callstack.length,0)?e.callstack[e.callstack.length-1]:""}function BM(e,t){return u.IsEqual(zM(e),t)}function HM(e,t,n,r,o,i){KM();try{let a=Db(e,t,r,i),p=$(a,ye([...t.callstack,n.$ref],t.visited),o);return $(a,ye([],[]),p)}finally{WM()}}function VM(e,t,n,r,o,i){return i.reduce((a,p)=>{let c=HM(e,t,n,r,o,p);return[...a,c]},[])}function JM(e,t,n,r,o,i){let a=Ob(r,i,o),p=VM(e,t,n,r,o,a);return u.IsEqual(p.length,1)?p[0]:wt(p)}function Oa(e,t,n,r){let o=Ct(e,t,r),i=Lb(e,n,r),a=i[0],p=i[1];return _r(p)?BM(t,a)?os(Mn(a),o):JM(e,t,Mn(a),p.parameters,p.expression,o):os(n,o)}var Hp,Vp,Jp=m(()=>{pr();v();to();_t();Fo();cs();D();D();D();Mb();jb();Nb();Hp=0,Vp=0});function os(e,t){return l.Create({"~kind":"Call"},{type:"call",target:e,arguments:t},{})}function qb(e,t){return Oa({},ye([],[]),e,t)}function uo(e){return P(e,"Call")}var to=m(()=>{k();W();Jp();D()});function YM(e){return l.Discard(e,["~immutable"])}function _b(e,t){return l.Update(YM(e),{},t)}function Ub(e,t,n,r){let o=$(e,t,n);return _b(o,r)}var Yp=m(()=>{k();D()});function Gb(e,t){return e(t)}var Kb=m(()=>{});function Wb(e,t){return u.IsString(t)?X(Gb(e,t)):X(t)}var zb=m(()=>{v();Me();Kb()});function Bb(e,t){let n=ot(t);return jn(e,n)}var Hb=m(()=>{Ma();cs()});function Vb(e,t){let n=t.map(r=>jn(e,r));return H(n)}var Jb=m(()=>{V();Ma()});function jn(e,t){return ue(t)?Wb(e,t.const):Se(t)?Bb(e,t.pattern):O(t)?Vb(e,t.anyOf):t}var Ma=m(()=>{Me();bt();V();zb();Hb();Jb()});function Hi(e,t={}){return M("Capitalize",[e],t)}function Yb(e,t={}){return Xp(e,t)}var Ca=m(()=>{ie();En()});function Vi(e,t={}){return M("Lowercase",[e],t)}function Xb(e,t={}){return Zp(e,t)}var La=m(()=>{ie();En()});function Ji(e,t={}){return M("Uncapitalize",[e],t)}function Zb(e,t={}){return Qp(e,t)}var ja=m(()=>{ie();En()});function Yi(e,t={}){return M("Uppercase",[e],t)}function Qb(e,t={}){return ec(e,t)}var Fa=m(()=>{ie();En()});function Xp(e,t){return K([e])?l.Update(jn(XM,e),{},t):Hi(e,t)}function Zp(e,t){return K([e])?l.Update(jn(ZM,e),{},t):Vi(e,t)}function Qp(e,t){return K([e])?l.Update(jn(QM,e),{},t):Ji(e,t)}function ec(e,t){return K([e])?l.Update(jn(eC,e),{},t):Yi(e,t)}function e$(e,t,n,r){let o=$(e,t,n);return Xp(o,r)}function t$(e,t,n,r){let o=$(e,t,n);return Zp(o,r)}function n$(e,t,n,r){let o=$(e,t,n);return Qp(o,r)}function r$(e,t,n,r){let o=$(e,t,n);return ec(o,r)}var XM,ZM,QM,eC,En=m(()=>{k();Ma();D();Ca();La();ja();Fa();XM=e=>e[0].toUpperCase()+e.slice(1),ZM=e=>e.toLowerCase(),QM=e=>e[0].toLowerCase()+e.slice(1),eC=e=>e.toUpperCase()});function Xi(e,t,n,r,o={}){return M("Conditional",[e,t,n,r],o)}function o$(e,t,n,r,o={}){return tc({},ye([],[]),e,t,n,r,o)}var Da=m(()=>{ie();nc();D()});function tC(e,t,n,r,o,i){let a=tt(e,n,r);return U.IsExtendsUnion(a)?H([$(a.inferred,t,o),$(e,t,i)]):U.IsExtendsTrue(a)?$(a.inferred,t,o):$(e,t,i)}function tc(e,t,n,r,o,i,a){return K([n,r])?l.Update(tC(e,t,n,r,o,i),{},a):Xi(n,r,o,i,a)}function s$(e,t,n,r,o,i,a){let p=$(e,t,n),c=$(e,t,r);return tc(e,t,p,c,o,i,a)}var nc=m(()=>{k();V();bn();D();Da()});var rc=m(()=>{nc()});function Zi(e,t={}){return M("ConstructorParameters",[e],t)}function i$(e,t={}){return oc(e,t)}var Na=m(()=>{ie();qa()});function nC(e){let t=_e(e)?e.parameters:[],n=tr({},ye([],[]),t);return Le(n)}function oc(e,t){return K([e])?l.Update(nC(e),{},t):Zi(e,t)}function a$(e,t,n,r){let o=$(e,t,n);return oc(o,r)}var qa=m(()=>{k();Nt();Ne();Na();D();D();D()});function Qi(e,t,n={}){return M("Exclude",[e,t],n)}function m$(e,t,n={}){return Is(e,t,n)}var _a=m(()=>{ie();bs()});function Is(e,t,n){return K([e,t])?l.Update(ji(e,t),{},n):Qi(e,t,n)}function u$(e,t,n,r,o){let i=$(e,t,n),a=$(e,t,r);return Is(i,a,o)}var bs=m(()=>{k();D();_a();op()});function ea(e,t,n={}){return M("Extract",[e,t],n)}function p$(e,t,n={}){return sc(e,t,n)}var Ua=m(()=>{ie();Ga()});function rC(e,t){let n=tt({},e,t);return U.IsExtendsTrueLike(n)?[e]:[]}function c$(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>c$(o,t,[...n,...rC(r,t)]),()=>n)}function l$(e,t){let n=zt(e),r=O(n)?n.anyOf:[n],o=c$(r,t);return wt(o)}var d$=m(()=>{v();V();bn();B();B()});function sc(e,t,n){return K([e,t])?l.Update(l$(e,t),{},n):ea(e,t,n)}function f$(e,t,n,r,o){let i=$(e,t,n),a=$(e,t,r);return sc(i,a,o)}var Ga=m(()=>{k();D();Ua();d$()});function oC(e){return e.reduce((t,n)=>ki(n)?[...t,X(n)]:t,[])}function po(e){let t=oC(e);return H(t)}var $s=m(()=>{Me();V()});function ss(e,t,n={}){return M("Index",[e,t],n)}function g$(e,t,n={}){let r=u.IsArray(t)?po(t):t;return ac(e,r,n)}var ic=m(()=>{v();ie();$s();Ka()});function x$(e,t){let n=Tn(e,t);return Lt(n)}var h$=m(()=>{Pr();Sr()});function y$(e,t,n){let r=tn(e,t,n);return Lt(r)}var I$=m(()=>{Pr();B()});function sC(e,t){let n=u.Keys(e).filter(y=>!u.HasPropertyKey(t,y)),r=u.Keys(t).filter(y=>!u.HasPropertyKey(e,y)),o=u.Keys(e).filter(y=>u.HasPropertyKey(t,y)),i=n.reduce((y,S)=>({...y,[S]:e[S]}),{}),a=r.reduce((y,S)=>({...y,[S]:t[S]}),{}),p=o.reduce((y,S)=>({...y,[S]:we([e[S],t[S]])}),{}),c=l.Assign(i,a);return l.Assign(c,p)}function b$(e){return e.reduce((t,n)=>sC(t,Lt(n)),{})}var $$=m(()=>{k();v();Pr();B()});var w$=m(()=>{});function k$(e){let t=Tg(Le(e));return Lt(t)}var T$=m(()=>{Ne();Qu();Pr()});function iC(e,t){return u.Keys(e).filter(o=>o in t).reduce((o,i)=>({...o,[i]:wt([e[i],t[i]])}),{})}function E$(e,t){return u.ShiftLeft(e,(n,r)=>E$(r,iC(t,Lt(n))),()=>t)}function v$(e){return u.ShiftLeft(e,(t,n)=>E$(n,Lt(t)),()=>De())}var S$=m(()=>{v();xn();B();Pr()});function Lt(e){return Qe(e)?x$(e.$defs,e.$ref):ve(e)?y$(e.if,e.then,e.else):Y(e)?b$(e.allOf):O(e)?v$(e.anyOf):fe(e)?k$(e.items):me(e)?e.properties:{}}var Pr=m(()=>{yt();St();Fe();ce();Ne();V();h$();I$();$$();w$();T$();S$()});function co(e){let t=Lt(e);return _(t)}var P$=m(()=>{ce();Pr()});var ws=m(()=>{P$()});function lo(e){let t=`${e}`;return aC.test(t)?parseInt(t):e}var aC,ks=m(()=>{aC=new RegExp("^(?:0|[1-9][0-9]*)$")});function mC(e){return X(lo(e))}function R$(e){return e.map(t=>A$(t))}function A$(e){return Y(e)?It(R$(e.allOf)):O(e)?H(R$(e.anyOf)):ue(e)?mC(e.const):e}function O$(e,t){let n=A$(t),r=tt({},n,Pt());return U.IsExtendsTrueLike(r)?e:ue(t)&&u.IsEqual(t.const,"length")?Pt():le()}var M$=m(()=>{v();Fe();V();Me();lt();Be();bn();ks()});function C$(e,t){let n=Tn(e,t);return At(n)}var L$=m(()=>{nr();Sr()});function j$(e,t,n){let r=tn(e,t,n);return At(r)}var F$=m(()=>{nr();B()});function D$(e){let t=ft(e);return At(t)}var N$=m(()=>{nr();B()});function q$(e){let t=we(e);return At(t)}var _$=m(()=>{B();nr()});function U$(e){return[`${e}`]}var G$=m(()=>{});function K$(e){let t=ot(e);return At(t)}var W$=m(()=>{nr();B()});function z$(e){return e.reduce((t,n)=>[...t,...At(n)],[])}var B$=m(()=>{nr()});function At(e){return Qe(e)?C$(e.$defs,e.$ref):ve(e)?j$(e.if,e.then,e.else):et(e)?D$(e.enum):Y(e)?q$(e.allOf):ue(e)?U$(e.const):Se(e)?K$(e.pattern):O(e)?z$(e.anyOf):[]}var nr=m(()=>{yt();St();Qt();Fe();Me();bt();V();L$();F$();N$();_$();G$();W$();B$()});function fo(e){return At(e)}var Wa=m(()=>{nr()});function Ts(e,t){return t.map(n=>Es(e,n))}function Es(e,t){return $e(t)?Mt(Es(e,t.items)):_e(t)?cn(Ts(e,t.parameters),Es(e,t.instanceType)):Ue(t)?ln(Ts(e,t.parameters),Es(e,t.returnType)):fe(t)?Le(Ts(e,t.items)):O(t)?H(Ts(e,t.anyOf)):Y(t)?It(Ts(e,t.allOf)):Gi(t)?_(e):t}function H$(e,t){return Es(e,t)}var V$=m(()=>{pt();Nt();qt();Fe();ce();Ne();Ki();V()});function uC(e,t){let n=t in e?e[t]:le();return H$(e,n)}function J$(e,t){return t.reduce((n,r)=>[...n,uC(e,r)],[])}function pC(e,t){let n=fo(t),r=J$(e,n);return wt(r)}function lC(e){return e.filter(n=>cC.test(n))}function dC(e){let t=fi(e),n=lC(t),r=J$(e,n);return wt(r)}function Y$(e,t){return Ce(t)?dC(e):pC(e,t)}var cC,X$=m(()=>{lt();Be();dr();B();Wa();Ve();V$();cC=new RegExp(Yn)});function fC(e){return X(lo(e))}function Z$(e){return e.map(t=>mc(t))}function mc(e){return Y(e)?It(Z$(e.allOf)):O(e)?H(Z$(e.anyOf)):ue(e)?fC(e.const):e}var Q$=m(()=>{V();Fe();Me();ks()});function gC(e,t){return e.reduceRight((n,r,o)=>{let i=tt({},X(o),t);return U.IsExtendsTrueLike(i)?[r,...n]:n},[])}function xC(e,t){let n=mc(t),r=gC(e,n);return Vn(r)}function hC(e){return Vn(e)}function ew(e,t){return ue(t)&&u.IsEqual(t.const,"length")?X(e.length):Ce(t)||ct(t)?hC(e):xC(e,t)}var tw=m(()=>{v();Me();lt();In();B();bn();Q$()});function nw(e,t){return $e(e)?O$(e.items,t):me(e)?Y$(e.properties,t):fe(e)?ew(e.items,t):le()}var rw=m(()=>{pt();Be();ce();Ne();M$();X$();tw()});function yC(e){return Qe(e)||ve(e)||Y(e)||O(e)?co(e):e}function ac(e,t,n){return K([e,t])?l.Update(nw(yC(e),t),{},n):ss(e,t,n)}function ow(e,t,n,r,o){let i=$(e,t,n),a=$(e,t,r);return ac(i,a,o)}var Ka=m(()=>{k();yt();St();Fe();V();D();ic();ws();rw()});function ta(e,t={}){return M("InstanceType",[e],t)}function sw(e,t={}){return uc(e,t)}var za=m(()=>{ie();Ba()});function IC(e){return _e(e)?e.instanceType:le()}function uc(e,t){return K([e])?l.Update(IC(e),{},t):ta(e,t)}function iw(e,t,n,r={}){let o=$(e,t,n);return uc(o,r)}var Ba=m(()=>{k();Nt();Be();za();D()});function is(e,t={}){return M("KeyOf",[e],t)}function aw(e,t={}){return pc(e,t)}var Ha=m(()=>{ie();Va()});function mw(){return H([Pt(),Kt(),Hr()])}var uw=m(()=>{lt();Wt();br();V()});function pw(e){return Pt()}var cw=m(()=>{lt()});function bC(e){return e.reduce((n,r)=>ki(r)?[...n,X(lo(r))]:De(),[])}function lw(e){let t=u.Keys(e),n=bC(t);return Vn(n)}var dw=m(()=>{xn();v();Me();ks();B()});function fw(e){return Yr(e)}var gw=m(()=>{Ve()});function xw(e){let t=e.map((n,r)=>X(r));return Vn(t)}var hw=m(()=>{Me();B()});function yw(e){return Te(e)?mw():$e(e)?pw(e.items):me(e)?lw(e.properties):nt(e)?fw(e):fe(e)?xw(e.items):le()}var Iw=m(()=>{ht();pt();Be();ce();Ve();Ne();uw();cw();dw();gw();hw()});function $C(e){return Qe(e)||ve(e)||Y(e)||O(e)?co(e):e}function pc(e,t){return K([e])?l.Update(yw($C(e)),{},t):is(e,t)}function bw(e,t,n,r){let o=$(e,t,n);return pc(o,r)}var Va=m(()=>{k();yt();St();Fe();V();Ha();D();ws();Iw()});function ns(e,t,n,r,o={}){return M("Mapped",[e,t,n,r],o)}function $w(e,t,n,r,o={}){return cc({},ye([],[]),e,t,n,r,o)}var Ja=m(()=>{ie();Ya();D()});function wC(e){let t=ot(e);return Xa(t)}function kC(e){return e.reduce((t,n)=>[...t,...Xa(n)],[])}function TC(e){let t=ft(e);return Xa(t)}function EC(e){return u.IsNumber(e)?[X(`${e}`)]:[X(e)]}function Xa(e){return et(e)?TC(e.enum):ue(e)?EC(e.const):Se(e)?wC(e.pattern):O(e)?kC(e.anyOf):[e]}function ww(e){return Xa(e)}var kw=m(()=>{v();Me();Qt();bt();V();B();B()});function vC(e){return Se(e)?ot(e.pattern):e}function SC(e,t,n,r,o,i){let a=l.Assign(e,{[n.name]:r}),p=$(a,t,o),c=vC(p),x=$(a,t,i);return ng(c)||rg(c)?{[c.const]:x}:{}}function PC(e,t,n,r,o,i){return r.reduce((a,p)=>[...a,SC(e,t,n,p,o,i)],[])}function RC(e){return e.reduce((t,n)=>[...t,_(n)],[])}function Tw(e,t,n,r,o,i){let a=ww(r),p=PC(e,t,n,a,o,i),c=RC(p);return we(c)}var Ew=m(()=>{k();Me();ce();bt();D();B();B();kw()});function cc(e,t,n,r,o,i,a){return K([r])?l.Update(Tw(e,t,n,r,o,i),{},a):ns(n,r,o,i,a)}function vw(e,t,n,r,o,i,a){let p=$(e,t,r);return cc(e,t,n,p,o,i,a)}var Ya=m(()=>{k();Ja();D();Ew()});function AC(e,t,n){let r=l.Assign(e,t);return u.Keys(t).filter(i=>n.includes(i)).reduce((i,a)=>({...i,[a]:kb(r,a,t[a])}),{})}function OC(e,t,n){let r=l.Assign(e,t);return u.Keys(t).filter(i=>!n.includes(i)).reduce((i,a)=>({...i,[a]:$(r,ye([],[]),t[a])}),{})}function MC(e,t,n){let r=yb(t),o=AC(e,t,r),i=OC(e,t,r),a={...o,...i};return l.Update(a,{},n)}function Za(e,t,n,r){return MC(e,n,r)}var Qa=m(()=>{v();k();D();_p();Gp();D()});function na(e,t={}){return M("NonNullable",[e],t)}function Sw(e,t={}){return lc(e,t)}var em=m(()=>{ie();tm()});function CC(e){let t=H([Wr(),Zr()]);return Is(e,t,{})}function lc(e,t){return K([e])?l.Update(CC(e),{},t):na(e,t)}function Pw(e,t,n,r){let o=$(e,t,n);return lc(o,r)}var tm=m(()=>{k();Br();eo();V();bs();em();D()});function ra(e,t,n={}){return M("Omit",[e,t],n)}function Rw(e,t,n={}){let r=u.IsArray(t)?po(t):t;return dc(e,r,n)}var nm=m(()=>{v();ie();$s();rm()});function om(e){let t=co(e);return me(t)?t.properties:De()}var fc=m(()=>{xn();ce();ws()});function LC(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?r:{...r,[o]:e[o]},{})}function Aw(e,t){let n=om(e),r=fo(t),o=LC(n,r);return _(o)}var Ow=m(()=>{v();ce();Wa();fc()});function dc(e,t,n){return K([e,t])?l.Update(Aw(e,t),{},n):ra(e,t,n)}function Mw(e,t,n,r,o){let i=$(e,t,n),a=$(e,t,r);return dc(i,a,o)}var rm=m(()=>{k();nm();D();Ow()});function oa(e,t={}){return M("Parameters",[e],t)}function Cw(e,t={}){return gc(e,t)}var sm=m(()=>{ie();im()});function jC(e){let t=Ue(e)?e.parameters:[],n=tr({},ye([],[]),t);return Le(n)}function gc(e,t){return K([e])?l.Update(jC(e),{},t):oa(e,t)}function Lw(e,t,n,r){let o=$(e,t,n);return gc(o,r)}var im=m(()=>{k();qt();Ne();sm();D();D();D()});function sa(e,t={}){return M("Partial",[e],t)}function jw(e,t={}){return xc(e,t)}var am=m(()=>{ie();mm()});function Fw(e,t){let n=Tn(e,t),r=vn(n);return fn(l.Assign(e,{[t]:r}),t)}var Dw=m(()=>{k();yt();go();Sr()});function Nw(e,t,n){let r=tn(e,t,n);return vn(r)}var qw=m(()=>{go();B()});function _w(e){let t=we(e);return vn(t)}var Uw=m(()=>{go();B()});function Gw(e){let t=e.map(n=>vn(n));return H(t)}var Kw=m(()=>{V();go()});function Ww(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:lr(e[o])}),{});return _(t)}var zw=m(()=>{v();ce();Do()});function vn(e){return Qe(e)?Fw(e.$defs,e.$ref):ve(e)?Nw(e.if,e.then,e.else):Y(e)?_w(e.allOf):O(e)?Gw(e.anyOf):me(e)?Ww(e.properties):_({})}var go=m(()=>{yt();St();Fe();ce();V();Dw();qw();Uw();Kw();zw()});function xc(e,t){return K([e])?l.Update(vn(e),{},t):sa(e,t)}function Bw(e,t,n,r){let o=$(e,t,n);return xc(o,r)}var mm=m(()=>{k();am();go();D()});function ia(e,t,n={}){return M("Pick",[e,t],n)}function Hw(e,t,n={}){let r=u.IsArray(t)?po(t):t;return hc(e,r,n)}var um=m(()=>{v();ie();$s();pm()});function FC(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?l.Assign(r,{[o]:e[o]}):r,{})}function Vw(e,t){let n=om(e),r=fo(t),o=FC(n,r);return _(o)}var Jw=m(()=>{k();v();ce();Wa();fc()});function hc(e,t,n){return K([e,t])?l.Update(Vw(e,t),{},n):ia(e,t,n)}function Yw(e,t,n,r,o){let i=$(e,t,n),a=$(e,t,r);return hc(i,a,o)}var pm=m(()=>{k();um();D();Jw()});function aa(e,t={}){return M("ReadonlyObject",[e],t)}function yc(e,t={}){return Ic(e,t)}var Xw,cm=m(()=>{ie();lm();Xw=yc});function Zw(e){return Kr(Mt(e))}var Qw=m(()=>{pt();Ko()});function ek(e,t){let n=Tn(e,t),r=Sn(n);return fn(l.Assign(e,{[t]:r}),t)}var tk=m(()=>{k();yt();xo();Sr()});function nk(e,t,n){let r=tn(e,t,n);return Sn(r)}var rk=m(()=>{xo();B()});function ok(e){let t=we(e);return Sn(t)}var sk=m(()=>{xo();B()});function ik(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:xr(e[o])}),{});return _(t)}var ak=m(()=>{v();ce();Wo()});function mk(e){return Kr(Le(e))}var uk=m(()=>{Ne();Ko()});function pk(e){let t=e.map(n=>Sn(n));return H(t)}var ck=m(()=>{V();xo()});function Sn(e){return $e(e)?Zw(e.items):Qe(e)?ek(e.$defs,e.$ref):ve(e)?nk(e.if,e.then,e.else):Y(e)?ok(e.allOf):me(e)?ik(e.properties):fe(e)?mk(e.items):O(e)?pk(e.anyOf):e}var xo=m(()=>{pt();yt();St();Fe();ce();Ne();V();Qw();tk();rk();sk();ak();uk();ck()});function Ic(e,t){return K([e])?l.Update(Sn(e),{},t):aa(e)}function lk(e,t,n,r){let o=$(e,t,n);return Ic(o,r)}var lm=m(()=>{k();cm();xo();D()});function dk(e,t,n,r){return t.visited.includes(r)?n:r in e?$(e,ye(t.callstack,[...t.visited,r]),e[r]):n}var bc=m(()=>{D();D()});function fk(e,t){let n=Tn(e,t),r=Pn(n);return fn(l.Assign(e,{[t]:r}),t)}var gk=m(()=>{k();yt();ho();Sr()});function xk(e,t,n){let r=tn(e,t,n);return Pn(r)}var hk=m(()=>{ho();B()});function yk(e){let t=we(e);return Pn(t)}var Ik=m(()=>{ho();B()});function bk(e){let t=e.map(n=>Pn(n));return H(t)}var $k=m(()=>{V();ho()});function wk(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:Mi(e[o])}),{});return _(t)}var kk=m(()=>{v();ce();Ci()});function Pn(e){return Qe(e)?fk(e.$defs,e.$ref):ve(e)?xk(e.if,e.then,e.else):Y(e)?yk(e.allOf):O(e)?bk(e.anyOf):me(e)?wk(e.properties):_({})}var ho=m(()=>{yt();St();Fe();ce();V();gk();hk();Ik();$k();kk()});function ma(e,t={}){return M("Required",[e],t)}function Tk(e,t={}){return $c(e,t)}var dm=m(()=>{ie();fm()});function $c(e,t){return K([e])?l.Update(Pn(e),{},t):ma(e,t)}function Ek(e,t,n,r){let o=$(e,t,n);return $c(o,r)}var fm=m(()=>{k();ho();dm();D()});function ua(e,t={}){return M("ReturnType",[e],t)}function vk(e,t={}){return wc(e,t)}var gm=m(()=>{ie();xm()});function DC(e){return Ue(e)?e.returnType:le()}function wc(e,t){return K([e])?l.Update(DC(e),{},t):ua(e,t)}function Sk(e,t,n,r={}){let o=$(e,t,n);return wc(o,r)}var xm=m(()=>{k();qt();Be();gm();D()});function pa(e,t){return M("With",[e,t],{})}function Pk(e,t){return kc(e,t)}var hm=m(()=>{ie();ym()});function kc(e,t){return K([e])?l.Update(e,{},t):pa(e,t)}function Rk(e,t,n,r){let o=$(e,t,n);return kc(o,r)}var ym=m(()=>{k();D();hm()});function NC(e){return Xn(e)?fe(e.items)?Tc(e.items.items):Ae(e.items)?[e]:Ge(e.items)?[e]:[le()]:[e]}function Tc(e){return e.reduce((n,r)=>[...n,...NC(r)],[])}var Ak=m(()=>{Ut();Be();Xr();_t();Ne()});var Ok=m(()=>{Ak()});function ye(e,t){return{callstack:e,visited:t}}function K(e){return u.ShiftLeft(e,(t,n)=>Ge(t)?!1:K(n),()=>!0)}function ds(e,t,n){return u.Keys(n).reduce((r,o)=>({...r,[o]:$(e,t,n[o])}),{})}function tr(e,t,n){let r=Ct(e,t,n);return Tc(r)}function Ct(e,t,n){return n.map(r=>$(e,t,r))}function qC(e,t){let n=rt(e)?jo(t,{}):t,r=hr(e)?Lo(n,{}):n;return gr(e)?vs(r,{}):r}function _C(e,t,n,r,o){return u.IsEqual(n,"AddImmutable")?Mk(e,t,r[0],o):u.IsEqual(n,"RemoveImmutable")?Ub(e,t,r[0],o):u.IsEqual(n,"AddReadonly")?Nd(e,t,r[0],o):u.IsEqual(n,"RemoveReadonly")?Ig(e,t,r[0],o):u.IsEqual(n,"AddOptional")?qd(e,t,r[0],o):u.IsEqual(n,"RemoveOptional")?wg(e,t,r[0],o):u.IsEqual(n,"Capitalize")?e$(e,t,r[0],o):u.IsEqual(n,"Conditional")?s$(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"ConstructorParameters")?a$(e,t,r[0],o):u.IsEqual(n,"Evaluate")?Sb(e,t,r[0],o):u.IsEqual(n,"Exclude")?u$(e,t,r[0],r[1],o):u.IsEqual(n,"Extract")?f$(e,t,r[0],r[1],o):u.IsEqual(n,"Index")?ow(e,t,r[0],r[1],o):u.IsEqual(n,"InstanceType")?iw(e,t,r[0],o):u.IsEqual(n,"Interface")?fb(e,t,r[0],r[1],o):u.IsEqual(n,"KeyOf")?bw(e,t,r[0],o):u.IsEqual(n,"Lowercase")?t$(e,t,r[0],o):u.IsEqual(n,"Mapped")?vw(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"Module")?Za(e,t,r[0],o):u.IsEqual(n,"NonNullable")?Pw(e,t,r[0],o):u.IsEqual(n,"Pick")?Yw(e,t,r[0],r[1],o):u.IsEqual(n,"Parameters")?Lw(e,t,r[0],o):u.IsEqual(n,"Partial")?Bw(e,t,r[0],o):u.IsEqual(n,"Omit")?Mw(e,t,r[0],r[1],o):u.IsEqual(n,"ReadonlyObject")?lk(e,t,r[0],o):u.IsEqual(n,"Record")?Hg(e,t,r[0],r[1],o):u.IsEqual(n,"Required")?Ek(e,t,r[0],o):u.IsEqual(n,"ReturnType")?Sk(e,t,r[0],o):u.IsEqual(n,"TemplateLiteral")?mI(e,t,r[0],o):u.IsEqual(n,"Uncapitalize")?n$(e,t,r[0],o):u.IsEqual(n,"Uppercase")?r$(e,t,r[0],o):u.IsEqual(n,"With")?Rk(e,t,r[0],r[1]):M(n,r,o)}function UC(e,t,n){let r=Ge(n)?dk(e,t,n,n.$ref):$e(n)?Mt($(e,t,n.items),di(n)):uo(n)?Oa(e,t,n.target,n.arguments):_e(n)?cn(Ct(e,t,n.parameters),$(e,t,n.instanceType),_d(n)):Ue(n)?ln(Ct(e,t,n.parameters),$(e,t,n.returnType),Ud(n)):ve(n)?fr($(e,t,n.if),$(e,t,n.then),$(e,t,n.else),Vd(n)):Y(n)?It(Ct(e,t,n.allOf),Qd(n)):me(n)?_(ds(e,t,n.properties),zd(n)):nt(n)?Vg(Bt(n),$(e,t,gt(n))):Xn(n)?wr($(e,t,n.items)):fe(n)?Le(tr(e,t,n.items),yg(n)):O(n)?H(Ct(e,t,n.anyOf),sg(n)):n;return qC(n,r)}function $(e,t,n){return Gn(n)?_C(e,t,n.action,n.parameters,n.options):UC(e,t,n)}function Ec(e,t){return $(e,ye([],[]),t)}var D=m(()=>{v();Im();ci();li();pt();Nt();ie();qt();to();St();Fe();ce();Ve();Ne();V();_t();Xr();Im();Yp();ci();Vu();li();Xu();Wn();Go();zo();Jp();En();rc();qa();Aa();bs();Ga();Ka();Ba();Sa();Va();En();Ya();Qa();tm();rm();im();mm();pm();lm();Di();bc();fm();xm();wa();En();En();ym();Ok()});function GC(e){return l.Update(e,{"~immutable":!0},{})}function vs(e,t){return l.Update(GC(e),{},t)}function Mk(e,t,n,r){let o=$(e,t,n);return vs(o,r)}var Im=m(()=>{k();D()});function Yh(e,t={}){return M("AddImmutable",[e],t)}function Kr(e,t={}){return vs(e,t)}var Ko=m(()=>{ie();Im()});var Ck=m(()=>{ie();Yp()});function Xh(e,t={}){return M("Evaluate",[e],t)}function Lk(e,t={}){return zp(e,t)}var vc=m(()=>{ie();Aa()});function Zh(e,t={}){return M("Module",[e],t)}function jk(e,t={}){return Za({},ye([],[]),e,t)}var Sc=m(()=>{ie();D();Qa()});var no=m(()=>{Ko();Wo();Do();Ck();Ju();Ci();Ca();Da();Na();vc();_a();Ua();ic();za();fs();Ha();La();Ja();Sc();em();nm();sm();am();um();cm();dm();gm();ja();Fa();hm()});var Fk=m(()=>{qa()});var Dk=m(()=>{yi()});var Nk=m(()=>{bs()});var qk=m(()=>{Ga()});var _k=m(()=>{});var Uk=m(()=>{$s();ks();_k()});var Gk=m(()=>{Ka()});var Kk=m(()=>{Ba()});var Wk=m(()=>{Sa()});var zk=m(()=>{En()});var Bk=m(()=>{Va()});var Hk=m(()=>{Ya()});var Vk=m(()=>{Qa()});var Jk=m(()=>{tm()});var Yk=m(()=>{rm()});var Xk=m(()=>{im()});var Zk=m(()=>{Jo();Sp()});var Qk=m(()=>{mm()});var eT=m(()=>{pm()});var tT=m(()=>{v();Qo()});var nT=m(()=>{tT()});var rT=m(()=>{lm()});var oT=m(()=>{Di()});var sT=m(()=>{bc()});var iT=m(()=>{fm()});var aT=m(()=>{xm()});var mT=m(()=>{});var uT=m(()=>{v();Jo()});var pT=m(()=>{Ai();Oi();Pp();mT();Pi();uT()});var cT=m(()=>{ym()});var lT=m(()=>{D();rc();Fk();Kp();Dk();cs();Nk();qk();Uk();Gk();Kk();Wk();zk();Bk();Hk();Vk();Jk();ws();Yk();Xk();Zk();Qk();eT();nT();rT();oT();sT();iT();aT();pT();cT()});function dT(...e){let[t,n,r]=gn.Match(e,{2:(a,p)=>u.IsString(a)?[{},a,p]:[a,p,{}],3:(a,p,c)=>[a,p,c],1:a=>[{},a,{}]}),o=rI(n),i=u.IsArray(o)&&u.IsEqual(o.length,2)?$(t,ye([],[]),o[0]):le();return l.Update(i,{},r)}var fT=m(()=>{Gr();k();v();zi();D();D();vi()});var Pc=m(()=>{fT()});var ae={};Ot(ae,{Any:()=>Ur,Array:()=>Mt,BigInt:()=>Bo,Boolean:()=>$i,Call:()=>qb,Capitalize:()=>Yb,Codec:()=>bi,Conditional:()=>o$,Constructor:()=>cn,ConstructorParameters:()=>i$,Cyclic:()=>fn,Decode:()=>Jf,DecodeBuilder:()=>Uo,Dependent:()=>fr,Encode:()=>Yf,EncodeBuilder:()=>_o,Enum:()=>Zd,Evaluate:()=>Lk,Exclude:()=>m$,Extends:()=>tt,ExtendsResult:()=>U,Extract:()=>p$,Function:()=>ln,Generic:()=>Kn,Identifier:()=>Ho,Immutable:()=>Xf,Index:()=>g$,Infer:()=>No,InstanceType:()=>sw,Instantiate:()=>Ec,Integer:()=>Ir,Interface:()=>gb,Intersect:()=>It,IsAny:()=>Te,IsArray:()=>$e,IsBigInt:()=>yn,IsBoolean:()=>Gt,IsCall:()=>uo,IsCodec:()=>Ii,IsConstructor:()=>_e,IsCyclic:()=>Qe,IsDependent:()=>ve,IsEnum:()=>et,IsEnumValue:()=>Xd,IsFunction:()=>Ue,IsGeneric:()=>_r,IsIdentifier:()=>tg,IsImmutable:()=>gr,IsInfer:()=>Ae,IsInteger:()=>ct,IsIntersect:()=>Y,IsKind:()=>P,IsLiteral:()=>ue,IsNever:()=>Zt,IsNull:()=>zr,IsNumber:()=>Ce,IsObject:()=>me,IsOptional:()=>rt,IsParameter:()=>og,IsReadonly:()=>hr,IsRecord:()=>nt,IsRef:()=>Ge,IsRefine:()=>Uu,IsRest:()=>Xn,IsSchema:()=>je,IsString:()=>dt,IsSymbol:()=>Bn,IsTemplateLiteral:()=>Se,IsThis:()=>Gi,IsTuple:()=>fe,IsUndefined:()=>Qr,IsUnion:()=>O,IsUnknown:()=>Re,IsUnsafe:()=>xi,IsVoid:()=>$n,KeyOf:()=>aw,Literal:()=>X,Lowercase:()=>Xb,Mapped:()=>$w,Module:()=>jk,Never:()=>le,NonNullable:()=>Sw,Null:()=>Wr,Number:()=>Pt,Object:()=>_,Omit:()=>Rw,Optional:()=>Kd,Parameter:()=>$r,Parameters:()=>Cw,Partial:()=>jw,Pick:()=>Hw,Readonly:()=>Zf,ReadonlyObject:()=>yc,ReadonlyType:()=>Xw,Record:()=>qi,RecordKey:()=>Yr,RecordPattern:()=>Bt,RecordValue:()=>gt,Ref:()=>Mn,Refine:()=>Qf,Required:()=>Tk,Rest:()=>wr,ReturnType:()=>vk,Script:()=>dT,String:()=>Kt,Symbol:()=>Hr,TemplateLiteral:()=>pI,This:()=>Ui,Tuple:()=>Le,Uncapitalize:()=>Zb,Undefined:()=>Zr,Union:()=>H,Unknown:()=>He,Unsafe:()=>Bd,Uppercase:()=>Qb,Void:()=>Wi,With:()=>Pk});var Rc=m(()=>{D();bn();Pc();Ca();Da();Na();vc();_a();Ua();no();za();fs();Ha();La();Ja();Sc();em();nm();sm();am();um();cm();dm();gm();ja();Fa();hm();_u();Go();Wn();zo();Gu();ht();pt();yr();zn();to();Nt();yt();Qt();qt();Fo();Ku();St();Ut();In();Fe();Me();Be();Br();lt();ce();zu();Ve();_t();Xr();W();Wt();br();bt();Ki();Ne();eo();V();Ze();hi();kr()});var yo=m(()=>{no();lT();bn();Pc();zi();Rc();Rc()});import{StringEnum as KC}from"@earendil-works/pi-ai";import{defineTool as WC}from"@earendil-works/pi-coding-agent";function gT(e){if(e.length===0)return"Todo list is empty.";let t=e.filter(o=>o.status==="completed").length,n=e.map(o=>`${zC[o.status]} ${o.content}`),r=e.filter(o=>o.status==="pending"||o.status==="in_progress").length;return[`${t}/${e.length} done, ${r} open`,...n].join(`
|
|
16
|
-
`)}function
|
|
17
|
-
${gT(a)}`:gT(a)}],details:c,...p?{isError:!0}:{}}}})});import{StringEnum as
|
|
18
|
-
`)}function
|
|
19
|
-
`)};if(!t)return{text:"Error: key is required",error:"key required"};if(t.length>hT)return{text:`Error: key longer than ${hT} characters`,error:"key too long"};if(e==="forget")return{text:Fn.delete(t)?`Removed ${t}`:`No note named ${t}`};if(e==="set"){if(!n)return{text:"Error: value is required for set",error:"value required"};let r=n.length>xT?`${n.slice(0,xT)}\u2026`:n;return Fn.set(t,r),{text:`Recorded ${t} (${Fn.size} note${Fn.size===1?"":"s"} held)`}}return{text:`Error: unknown op ${JSON.stringify(e)}`,error:"unknown op"}}var Fn,xT,hT,$m,wm=m(()=>{yo();Fn=new Map,xT=2e3,hT=80;$m=
|
|
15
|
+
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n]),nb=(e,t=[])=>s(s(tb(e),([n,r])=>s(Ep(r),([o,i])=>[[n,o],i])),([n,r])=>nb(r,[...t,n]),()=>[t,e]),PO=e=>s(s(s(Ep(e),([t,n])=>s(nb(n),([r,o])=>s(s(tb(o),([i,a])=>[[i],a],()=>[[],o]),([i,a])=>[[t,r,i],a]))),([t,n])=>[t,n],()=>s([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Bh(t),n]),Ep=e=>s(s(SO(e),([t,n])=>s(s(kO(n),([r,o])=>[r,o],()=>s(TO(n),([r,o])=>[r,o],()=>s(EO(n),([r,o])=>[r,o],()=>s(vO(n),([r,o])=>[r,o],()=>[])))),([r,o])=>s(Sy(o),([i,a])=>[[t,r,i],a]))),([t,n])=>[Hh(t),n]),AO=e=>s(s(Ep(e),([t,n])=>s(PO(n),([r,o])=>[[t,r],o])),([t,n])=>[Vh(t),n]),rb=e=>s(s(AO(e),([t,n])=>[t,n],()=>s(DR(e),([t,n])=>[t,n],()=>s(ne(e),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n])});function ob(e){let t=$p(`\`${e}\``);return u.IsEqual(t.length,2)?t[0]:De()}var vp=m(()=>{gn();v();vi()});function OO(e){return e.join("|")}function MO(e){return e.slice(1,e.length-1)}function CO(e,t,n){return er(t,`${n}${e}`)}function LO(e,t){return er(e,`${t}${eg}`)}function jO(e,t){return er(e,`${t}${wi}`)}function FO(e,t){return er(e,`${t}${Ti}`)}function DO(e,t){return ms(H([X("false"),X("true")]),e,t)}function NO(e,t){return er(e,`${t}${Ei}`)}function qO(e,t,n){return er(t,`${n}${MO(e)}`)}function _O(e,t,n){let r=us(e,{});return ms(r,t,n)}function UO(e,t,n){let r=ft(e);return ms(r,t,n)}function sb(e,t,n,r=[]){return u.ShiftLeft(e,(o,i)=>sb(i,t,n,[...r,ms(o,[],"")]),()=>er(t,`${n}(${OO(r)})`))}function ms(e,t,n){return et(e)?UO(e.enum,t,n):ct(e)?jO(t,n):me(e)?CO(e.const,t,n):hn(e)?LO(t,n):Gt(e)?DO(t,n):Ce(e)?FO(t,n):dt(e)?NO(t,n):Se(e)?qO(e.pattern,t,n):ab(e)?_O(e.parameters[0],t,n):R(e)?sb(e.anyOf,t,n):Kd}function er(e,t){return u.ShiftLeft(e,(n,r)=>ms(n,r,t),()=>t)}function KO(e){return`^${er(e,"")}$`}function ib(e){let t=KO(e);return Ai(t)}var Sp=m(()=>{v();Qt();Me();V();It();yr();zt();lt();yn();zn();Be();Ri();B();wa()});function us(e,t){return G(e)?l.Update(ib(e),{},t):Bi(e,t)}function mb(e,t,n,r){let o=Ct(e,t,n);return us(o,r)}var wa=m(()=>{k();It();Sp();D()});function Bi(e,t={}){return M("TemplateLiteral",[e],t)}function ab(e){return je(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"TemplateLiteral")}function ub(e){return us(e,{})}function GO(e){let t=ob(e);return ub(t)}function pb(e,t={}){let n=u.IsString(e)?GO(e):ub(e);return l.Update(n,{},t)}function Se(e){return P(e,"TemplateLiteral")}var It=m(()=>{qo();v();W();se();vp();wa()});var U={};Ot(U,{ExtendsFalse:()=>K,ExtendsTrue:()=>T,ExtendsUnion:()=>Pp,IsExtendsFalse:()=>WO,IsExtendsTrue:()=>lb,IsExtendsTrueLike:()=>io,IsExtendsUnion:()=>cb,Match:()=>be});function Pp(e){return l.Create({"~kind":"ExtendsUnion"},{inferred:e})}function cb(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"inferred")&&u.IsEqual(e["~kind"],"ExtendsUnion")&&u.IsObject(e.inferred)}function T(e){return l.Create({"~kind":"ExtendsTrue"},{inferred:e})}function lb(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"inferred")&&u.IsEqual(e["~kind"],"ExtendsTrue")&&u.IsObject(e.inferred)}function K(){return l.Create({"~kind":"ExtendsFalse"},{})}function WO(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.IsEqual(e["~kind"],"ExtendsFalse")}function io(e){return cb(e)||lb(e)}function be(e,t,n){return io(e)?t(e.inferred):n()}var he=m(()=>{v();k()});function zO(e,t,n,r){return be(Q(e,n,r),o=>T(l.Assign(l.Assign(e,o),{[t]:n})),()=>K())}function BO(e,t){return T(e)}function HO(e,t,n,r,o){return be(Q(e,t,n),i=>be(Q(i,t,r),a=>T(a),()=>K()),()=>be(Q(e,t,o),i=>T(i),()=>K()))}function VO(e,t,n){let r=ft(n);return Q(e,t,r)}function db(e,t,n){return u.ShiftLeft(n,(r,o)=>be(Q(e,t,r),i=>db(i,t,o),()=>K()),()=>T(e))}function JO(e,t,n){let r=ot(n);return Q(e,t,r)}function fb(e,t,n){return u.ShiftLeft(n,(r,o)=>be(Q(e,t,r),i=>T(i),()=>fb(e,t,o)),()=>K())}function ue(e,t,n){return Te(n)?BO(e,t):ve(n)?HO(e,t,n.if,n.then,n.else):et(n)?VO(e,t,n.enum):Re(n)?zO(e,n.name,t,n.extends):Y(n)?db(e,t,n.allOf):Se(n)?JO(e,t,n.pattern):R(n)?fb(e,t,n.anyOf):Ae(n)?T(e):K()}var it=m(()=>{v();k();ht();vt();Qt();Kt();Fe();It();V();Ze();kt();he();B();B()});function gb(e,t,n){return Re(n)?ue(e,t,n):Te(n)?T(e):Ae(n)?T(e):Pp(e)}var xb=m(()=>{Kt();ht();Ze();it();he()});function YO(e,t){let n=gr(e),r=gr(t);return n&&r||!n&&r?!0:!(n&&!r)}function hb(e,t,n,r){return $e(r)?YO(t,r)?Q(e,n,r.items):K():ue(e,t,r)}var yb=m(()=>{pt();Ko();it();kt();he()});function bb(e,t,n){return hn(n)?T(e):ue(e,t,n)}var Ib=m(()=>{yr();it();he()});function $b(e,t,n){return Gt(n)?T(e):ue(e,t,n)}var wb=m(()=>{zn();it();he()});function XO(e,t,n,r,o){let i=Re(r)?t:r,a=Re(r)?r:t,p=rt(t),c=rt(r);return!p&&c?K():be(Q(e,i,a),x=>ps(x,n,o),()=>K())}function ZO(e,t,n,r){return u.ShiftLeft(r,(o,i)=>XO(e,t,n,o,i),()=>rt(t)?T(e):K())}function QO(e,t,n){return u.ShiftLeft(t,(r,o)=>ZO(e,r,o,n),()=>T(e))}function ps(e,t,n){return QO(e,t,n)}var Ap=m(()=>{v();Kt();Wn();kt();he()});function ka(e,t,n){return In(n)?T(e):Q(e,t,n)}var Rp=m(()=>{kr();kt();he()});function kb(e,t,n,r){return Te(r)?T(e):Ae(r)?T(e):_e(r)?be(ps(e,t,r.parameters),o=>ka(o,n,r.instanceType),()=>K()):K()}var Tb=m(()=>{ht();qt();Ze();he();Ap();Rp()});function Eb(e,t,n,r,o){return be(Q(e,t,o),()=>Q(e,n,o),()=>Q(e,r,o))}var vb=m(()=>{kt();he()});function Sb(e,t,n){let r=ft(t);return Q(e,r,n)}var Pb=m(()=>{kt();B()});function Ab(e,t,n,r){return Te(r)?T(e):Ae(r)?T(e):Ue(r)?be(ps(e,t,r.parameters),o=>ka(o,n,r.returnType),()=>K()):K()}var Rb=m(()=>{ht();_t();Ze();he();Ap();Rp()});function Ob(e,t,n){return ct(n)?T(e):Ce(n)?T(e):ue(e,t,n)}var Mb=m(()=>{yn();lt();it();he()});function Cb(e,t,n){let r=we(t);return Q(e,r,n)}var Lb=m(()=>{kt();cs()});function Ta(e,t,n){return t===n?T(e):K()}function eM(e,t,n){return me(n)?Ta(e,t,n.const):hn(n)?T(e):ue(e,X(t),n)}function tM(e,t,n){return me(n)?Ta(e,t,n.const):Gt(n)?T(e):ue(e,X(t),n)}function nM(e,t,n){return me(n)?Ta(e,t,n.const):Ce(n)?T(e):ue(e,X(t),n)}function rM(e,t,n){return me(n)?Ta(e,t,n.const):dt(n)?T(e):ue(e,X(t),n)}function jb(e,t,n){return u.IsBigInt(t.const)?eM(e,t.const,n):u.IsBoolean(t.const)?tM(e,t.const,n):u.IsNumber(t.const)?nM(e,t.const,n):u.IsString(t.const)?rM(e,t.const,n):De()}var Fb=m(()=>{v();Fu();Me();yr();zn();lt();zt();it();he()});function Db(e,t,n){return Re(n)?ue(e,t,n):T(e)}var Nb=m(()=>{Kt();it();he()});function qb(e,t,n){return zr(n)?T(e):ue(e,t,n)}var _b=m(()=>{Br();it();he()});function Ub(e,t,n){return Ce(n)?T(e):ue(e,t,n)}var Kb=m(()=>{lt();it();he()});function oM(e,t,n){return rt(t)?rt(n)?T(e):K():T(e)}function sM(e,t,n){return Re(n)&&Zt(n.extends)?K():be(Q(e,t,n),r=>oM(r,t,n),()=>K())}function iM(e,t){return e.reduce((n,r)=>r in t?io(t[r])?{...n,...t[r].inferred}:De():De(),{})}function aM(e,t,n){let r={};for(let a of u.Keys(n))r[a]=a in t?sM({},t[a],n[a]):rt(n[a])?Re(n[a])?T(l.Assign(e,{[n[a].name]:n[a].extends})):T(e):K();let o=u.Values(r).every(a=>io(a)),i=o?iM(u.Keys(r),r):{};return o?T(i):K()}function mM(e,t,n){let r=aM(e,t,n);return io(r)?T(l.Assign(e,r.inferred)):K()}function uM(e,t,n){return mM(e,t,n)}function pM(e,t){return u.Keys(t).reduce((n,r)=>({...n,[r]:u.HasPropertyKey(e,r)?R(n[r])?H([...n[r].anyOf,t[r]]):H([e[r],t[r]]):t[r]}),e)}function Gb(e,t,n,r){return u.ShiftLeft(t,(o,i)=>be(Q({},e[o],n),a=>Gb(e,i,n,pM(r,a)),()=>K()),()=>T(r))}function cM(e,t,n,r){let o=u.Keys(t);return Gb(t,o,r,e)}function Wb(e,t,n){return nt(n)?cM(e,t,Ht(n),gt(n)):ae(n)?uM(e,t,n.properties):ue(e,_(t),n)}var zb=m(()=>{gn();k();v();Wn();Kt();Be();ce();Ve();V();kt();it();he()});function lM(e,t){return u.IsEqual(u.Keys(t).length,0)?T(e):K()}function dM(e,t,n,r,o){return Q(e,n,o)}function Bb(e,t,n,r){return nt(r)?dM(e,_i(t),n,_i(Ht(r)),gt(r)):ae(r)?lM(e,r.properties):Te(r)?T(e):Ae(r)?T(e):K()}var Hb=m(()=>{v();ht();Ze();ce();Ve();kt();he()});function Vb(e,t,n){return dt(n)?T(e):ue(e,t,n)}var Jb=m(()=>{zt();it();he()});function Yb(e,t,n){return Bn(n)?T(e):ue(e,t,n)}var Xb=m(()=>{Ir();it();he()});function Zb(e,t,n){let r=ot(t);return Q(e,r,n)}var Qb=m(()=>{kt();B()});function Op(e,t){return l.Create({"~kind":"Inferrable"},{name:e,type:t},{})}function ls(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"name")&&u.HasPropertyKey(e,"type")&&u.IsEqual(e["~kind"],"Inferrable")&&u.IsString(e.name)&&u.IsObject(e.type)}function Mp(e){return Xn(e)?Re(e.items)?$e(e.items.extends)?Op(e.items.name,e.items.extends.items):Ae(e.items.extends)?Op(e.items.name,e.items.extends):void 0:De():void 0}function Ea(e){return Re(e)?Op(e.name,e.extends):void 0}function Cp(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>be(Q({},r,t),()=>Cp(o,t,[...n,r]),()=>{}),()=>n)}function eI(e,t,n,r){let o=Cp(n,r);return u.IsArray(o)?T(l.Assign(e,{[t]:Le(o)})):K()}function va(e,t,n,r){let o=Cp(n,r);return u.IsArray(o)?T(l.Assign(e,{[t]:H(o)})):K()}var Lp=m(()=>{gn();k();v();pt();Ze();Ne();kt();V();Kt();Xr();he()});function fM(e){return[...e].reverse()}function jp(e,t){return t?fM(e):e}function gM(e){let t=e.length>0?e[0]:void 0,n=je(t)?Mp(t):void 0;return je(n)}function xM(e,t,n,r,o,i){return be(Q(e,n,o),a=>tI(a,t,r,i),()=>K())}function hM(e,t,n,r,o){let i=Mp(r);return ls(i)?eI(e,i.name,jp(n,t),i.type):u.ShiftLeft(n,(a,p)=>xM(e,t,a,p,r,o),()=>K())}function yM(e,t,n,r){return u.ShiftLeft(r,(o,i)=>hM(e,t,n,o,i),()=>u.IsEqual(n.length,0)?T(e):K())}function tI(e,t,n,r){return yM(e,t,n,r)}function bM(e,t,n){let r=tr(e,ye([],[]),n),o=gM(r);return tI(e,o,jp(t,o),jp(r,o))}function nI(e,t,n){let r=Ea(n);return ls(r)?va(e,r.name,t,r.type):u.ShiftLeft(t,(o,i)=>be(Q(e,o,n),a=>nI(a,i,n),()=>K()),()=>T(e))}function rI(e,t,n){let r=tr(e,ye([],[]),t);return fe(n)?bM(e,r,n.items):$e(n)?nI(e,r,n.items):ue(e,Le(r),n)}var oI=m(()=>{v();W();pt();Ne();kt();it();he();D();D();Lp()});function sI(e,t,n){return In(n)?T(e):Qr(n)?T(e):ue(e,t,n)}var iI=m(()=>{eo();kr();it();he()});function aI(e,t,n){return u.ShiftLeft(n,(r,o)=>be(Q(e,t,r),i=>T(i),()=>aI(e,t,o)),()=>K())}function Fp(e,t,n){return u.ShiftLeft(t,(r,o)=>be(aI(e,r,n),i=>Fp(i,o,n),()=>K()),()=>T(e))}function mI(e,t,n){let r=Ea(n);return ls(r)?va(e,r.name,t,r.type):R(n)?Fp(e,t,n.anyOf):Fp(e,t,[n])}var uI=m(()=>{v();V();kt();he();Lp()});function pI(e,t,n){return Re(n)?ue(e,t,n):Te(n)?T(e):Ae(n)?T(e):K()}var cI=m(()=>{ht();Ze();Kt();it();he()});function lI(e,t,n){return In(n)?T(e):ue(e,t,n)}var dI=m(()=>{kr();it();he()});function Q(e,t,n){return Te(t)?gb(e,t,n):$e(t)?hb(e,t,t.items,n):hn(t)?bb(e,t,n):Gt(t)?$b(e,t,n):_e(t)?kb(e,t.parameters,t.instanceType,n):ve(t)?Eb(e,t.if,t.then,t.else,n):et(t)?Sb(e,t.enum,n):Ue(t)?Ab(e,t.parameters,t.returnType,n):ct(t)?Ob(e,t,n):Y(t)?Cb(e,t.allOf,n):me(t)?jb(e,t,n):Zt(t)?Db(e,t,n):zr(t)?qb(e,t,n):Ce(t)?Ub(e,t,n):ae(t)?Wb(e,t.properties,n):nt(t)?Bb(e,Ht(t),gt(t),n):dt(t)?Vb(e,t,n):Bn(t)?Yb(e,t,n):Se(t)?Zb(e,t.pattern,n):fe(t)?rI(e,t.items,n):Qr(t)?sI(e,t,n):R(t)?mI(e,t.anyOf,n):Ae(t)?pI(e,t,n):In(t)?lI(e,t,n):K()}var kt=m(()=>{xb();yb();Ib();wb();Tb();vb();Pb();Rb();Mb();Lb();Fb();Nb();_b();Kb();zb();Hb();Jb();Xb();Qb();oI();iI();uI();cI();dI();ht();pt();yr();zn();qt();vt();Qt();_t();yn();Fe();Me();Be();Br();lt();ce();Ve();zt();Ir();It();Ne();eo();Ze();V();kr();he()});function IM(e,t){return we([...e,_(t)])}function Dp(e,t,n){return G(e)?l.Update(IM(e,t),{},n):rs(e,t,n)}function fI(e,t,n,r,o){let i=Ct(e,t,n),a=ds(e,t,r);return Dp(i,a,o)}var Sa=m(()=>{k();ce();B();no();D();D();D()});function rs(e,t,n={}){return M("Interface",[e,t],n)}function ao(e){return je(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"Interface")}function gI(e,t,n={}){return Dp(e,t,n)}var fs=m(()=>{v();W();se();Sa()});function $M(e,t,n){return e.includes(n)?!0:gs([...e,n],t,t[n])}function xI(e,t,n){let r=gi(n);return Er(e,t,r)}function Er(e,t,n){return u.ShiftLeft(n,(r,o)=>gs(e,t,r)?!0:Er(e,t,o),()=>!1)}function gs(e,t,n){return Ke(n)?$M(e,t,n.$ref):$e(n)?gs(e,t,n.items):_e(n)?Er(e,t,[...n.parameters,n.instanceType]):Ue(n)?Er(e,t,[...n.parameters,n.returnType]):ao(n)?xI(e,t,n.parameters[1]):Y(n)?Er(e,t,n.allOf):ae(n)?xI(e,t,n.properties):R(n)?Er(e,t,n.anyOf):fe(n)?Er(e,t,n.items):nt(n)?gs(e,t,gt(n)):!1}function hI(e,t,n){return gs(e,t,n)}var Np=m(()=>{v();pt();qt();_t();Fe();ce();dr();Ve();Ne();V();Ut();fs()});function wM(e,t){return t.reduce((n,r)=>hI([r],e,e[r])?[...n,r]:n,[])}function yI(e){let t=fi(e);return wM(e,t)}var qp=m(()=>{dr();Np()});function kM(e,t,n){return n.includes(t)?n:t in e?xs(e,e[t],[...n,t]):De()}function bI(e,t,n){let r=gi(t);return mo(e,r,n)}function mo(e,t,n){return t.reduce((r,o)=>xs(e,o,r),n)}function xs(e,t,n){return Ke(t)?kM(e,t.$ref,n):$e(t)?xs(e,t.items,n):_e(t)?mo(e,[...t.parameters,t.instanceType],n):Ue(t)?mo(e,[...t.parameters,t.returnType],n):ao(t)?bI(e,t.parameters[1],n):Y(t)?mo(e,t.allOf,n):ae(t)?bI(e,t.properties,n):R(t)?mo(e,t.anyOf,n):fe(t)?mo(e,t.items,n):nt(t)?xs(e,gt(t),n):n}function II(e,t,n){return xs(e,n,[t])}var _p=m(()=>{gn();pt();qt();_t();Fe();ce();dr();Ve();Ne();V();Ut();fs()});function TM(e){return Ur()}function EM(e){return u.Keys(e).reduce((t,n)=>({...t,[n]:vr(e[n])}),{})}function hs(e){return e.reduce((t,n)=>[...t,vr(n)],[])}function vr(e){return Ke(e)?TM(e.$ref):$e(e)?Mt(vr(e.items),di(e)):_e(e)?pn(hs(e.parameters),vr(e.instanceType)):Ue(e)?cn(hs(e.parameters),vr(e.returnType)):Y(e)?bt(hs(e.allOf)):ae(e)?_(EM(e.properties)):nt(e)?qi(Yr(e),vr(gt(e))):R(e)?H(hs(e.anyOf)):fe(e)?Le(hs(e.items)):e}function vM(e,t){return t in e?vr(e[t]):He()}function $I(e){return vM(e.$defs,e.$ref)}var wI=m(()=>{v();ht();pt();qt();_t();Fe();ce();Ve();Ut();Ne();V();Ze()});function SM(e,t,n){let r=Ct(e,ye([],[]),t),o=ds({},ye([],[]),n);return we([...r,_(o)])}function PM(e,t){return u.Keys(e).filter(r=>t.includes(r)).reduce((r,o)=>{let i=e[o],a=ao(i)?SM(e,i.parameters[0],i.parameters[1]):i;return{...r,[o]:a}},{})}function kI(e,t,n){let r=II(e,t,n),o=PM(e,r);return dn(o,t)}var Up=m(()=>{v();yt();ce();_p();no();D();D();D();B()});function TI(e,t){return t in e?Ke(e[t])?TI(e,e[t].$ref):e[t]:le()}function kn(e,t){return TI(e,t)}var Sr=m(()=>{Be();Ut()});var Kp=m(()=>{qp();Np();_p();wI();Up();Sr()});function EI(e){return Qe(e)?$I(e):xi(e)?He():e}function tt(e,t,n){let r=EI(t),o=EI(n);return Q(e,r,o)}var vI=m(()=>{yt();Ze();hi();kt();Kp()});var bn=m(()=>{vI();he()});function Zo(e,t){let n=[tt({},e,t),tt({},t,e)];return U.IsExtendsTrueLike(n[0])&&U.IsExtendsTrueLike(n[1])?Yo:U.IsExtendsTrueLike(n[0])&&U.IsExtendsFalse(n[1])?Xo:U.IsExtendsFalse(n[0])&&U.IsExtendsTrueLike(n[1])?Li:Pa}var Yo,Pa,Xo,Li,Qo=m(()=>{bn();Yo=0,Pa=1,Xo=2,Li=3});function Gp(e,t,n=[],r=t){return u.ShiftLeft(t,(o,i)=>{let a=Zo(e,o);return u.IsEqual(a,Xo)||u.IsEqual(a,Yo)?r:u.IsEqual(a,Pa)?Gp(e,i,[...n,o],r):Gp(e,i,n,r)},()=>[...n,e])}function AM(e,t,n){let r=Bt(e);return Te(r)?[r]:Ae(r)?[r]:Zt(r)?Aa(t,n):ae(r)?Aa(t,[...n,r]):Aa(t,Gp(r,n))}function Aa(e,t=[]){return u.ShiftLeft(e,(n,r)=>AM(n,r,t),()=>t)}function op(e){let t=Aa(e);return Jr(t)}var sp=m(()=>{v();ht();Be();ce();Ze();Qo();Fi();B()});function Wp(e,t){return l.Update(Bt(e),{},t)}function SI(e,t,n,r){let o=$(e,t,n);return Wp(o,r)}var Ra=m(()=>{k();D();B()});var cs=m(()=>{sp();Qo();ep();np();B();Fi();Ra();tp()});function ys(e,t=[]){return Kn(e)&&u.IsEqual(e.action,"Conditional")?Ke(e.parameters[0])?ys(e.parameters[2],ys(e.parameters[3],[...t,e.parameters[0].$ref])):ys(e.parameters[2],ys(e.parameters[3],t)):Kn(e)&&u.IsEqual(e.action,"Mapped")&&Kn(e.parameters[1])&&u.IsEqual(e.parameters[1].action,"KeyOf")&&Ke(e.parameters[1].parameters[0])?[...t,e.parameters[1].parameters[0].$ref]:t}function RM(e,t){return e.reduce((n,r)=>[...n,t.includes(r.name)],[])}function RI(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>u.ShiftLeft(t,(i,a)=>RI(o,a,[...n,[i,r]]),()=>n),()=>n)}function OM(e){return Se(e)?ot(e.pattern):et(e)?ft(e.enum):e}function MM(e){let t=OM(e);return R(t)?[...t.anyOf]:[t]}function CM(e,t){return e.reduce((n,r)=>[...n,[...r,t]],[])}function PI(e,t){return t.reduce((n,r)=>[...n,...CM(e,r)],[])}function AI(e){return e.reduce((t,n)=>u.IsEqual(n[0],!0)?PI(t,MM(n[1])):PI(t,[n[1]]),[[]])}function OI(e,t,n){let r=ys(n),o=RM(e,r),i=RI(t,o);return Kn(n)&&u.IsEqual(n.action,"Conditional")||Kn(n)&&u.IsEqual(n.action,"Mapped")?AI(i):[t]}var MI=m(()=>{v();V();se();Qt();It();Ut();B();B()});function LM(){return["(not-resolvable)",le()]}function jM(){return["(not-generic)",le()]}function FM(e,t,n){return[e,Gn(t,n)]}function DM(e,t,n){return t in e?CI(e,t,e[t],n):LM()}function CI(e,t,n,r){return _r(n)?FM(t,n.parameters,n.expression):Ke(n)?DM(e,n.$ref,r):jM()}function LI(e,t,n){return CI(e,"(anonymous)",t,n)}var jI=m(()=>{Fo();Ut();Be()});function NM(e,t,n){if(Re(t)||uo(t)||U.IsExtendsTrueLike(tt({},t,n)))return;let r={parameter:e,expect:n,actual:t};throw new Error(`Argument for parameter ${e} does not satisfy constraint`,{cause:r})}function FI(e,t,n,r,o){let i=$(e,t,o);return NM(n,i,r),l.Assign(e,{[n]:i})}function qM(e,t,n,r,o){let i=$(e,t,n.extends),a=$(e,t,n.equals);return u.ShiftLeft(o,(p,c)=>zp(FI(e,t,n.name,i,p),t,r,c),()=>zp(FI(e,t,n.name,i,a),t,r,[]))}function zp(e,t,n,r){return u.ShiftLeft(n,(o,i)=>qM(e,t,o,i,r),()=>e)}function DI(e,t,n,r){return zp(e,t,n,r)}var NI=m(()=>{v();k();D();bn();Kt();to()});function _M(){if(!u.IsLessThan(Hp,Xt.Get().maxInstantiationCount))throw Error("Type instantiation is excessively deep and possibly infinite")}function UM(){_M(),Hp++,Bp++}function KM(){Bp--,u.IsEqual(Bp,0)&&(Hp=0)}function GM(e){return u.IsGreaterThan(e.callstack.length,0)?e.callstack[e.callstack.length-1]:""}function WM(e,t){return u.IsEqual(GM(e),t)}function zM(e,t,n,r,o,i){UM();try{let a=DI(e,t,r,i),p=$(a,ye([...t.callstack,n.$ref],t.visited),o);return $(a,ye([],[]),p)}finally{KM()}}function BM(e,t,n,r,o,i){return i.reduce((a,p)=>{let c=zM(e,t,n,r,o,p);return[...a,c]},[])}function HM(e,t,n,r,o,i){let a=OI(r,i,o),p=BM(e,t,n,r,o,a);return u.IsEqual(p.length,1)?p[0]:wt(p)}function Oa(e,t,n,r){let o=Ct(e,t,r),i=LI(e,n,r),a=i[0],p=i[1];return _r(p)?WM(t,a)?os(Mn(a),o):HM(e,t,Mn(a),p.parameters,p.expression,o):os(n,o)}var Bp,Hp,Vp=m(()=>{pr();v();to();Ut();Fo();cs();D();D();D();MI();jI();NI();Bp=0,Hp=0});function os(e,t){return l.Create({"~kind":"Call"},{type:"call",target:e,arguments:t},{})}function qI(e,t){return Oa({},ye([],[]),e,t)}function uo(e){return P(e,"Call")}var to=m(()=>{k();W();Vp();D()});function VM(e){return l.Discard(e,["~immutable"])}function _I(e,t){return l.Update(VM(e),{},t)}function UI(e,t,n,r){let o=$(e,t,n);return _I(o,r)}var Jp=m(()=>{k();D()});function KI(e,t){return e(t)}var GI=m(()=>{});function WI(e,t){return u.IsString(t)?X(KI(e,t)):X(t)}var zI=m(()=>{v();Me();GI()});function BI(e,t){let n=ot(t);return jn(e,n)}var HI=m(()=>{Ma();cs()});function VI(e,t){let n=t.map(r=>jn(e,r));return H(n)}var JI=m(()=>{V();Ma()});function jn(e,t){return me(t)?WI(e,t.const):Se(t)?BI(e,t.pattern):R(t)?VI(e,t.anyOf):t}var Ma=m(()=>{Me();It();V();zI();HI();JI()});function Hi(e,t={}){return M("Capitalize",[e],t)}function YI(e,t={}){return Yp(e,t)}var Ca=m(()=>{se();Tn()});function Vi(e,t={}){return M("Lowercase",[e],t)}function XI(e,t={}){return Xp(e,t)}var La=m(()=>{se();Tn()});function Ji(e,t={}){return M("Uncapitalize",[e],t)}function ZI(e,t={}){return Zp(e,t)}var ja=m(()=>{se();Tn()});function Yi(e,t={}){return M("Uppercase",[e],t)}function QI(e,t={}){return Qp(e,t)}var Fa=m(()=>{se();Tn()});function Yp(e,t){return G([e])?l.Update(jn(JM,e),{},t):Hi(e,t)}function Xp(e,t){return G([e])?l.Update(jn(YM,e),{},t):Vi(e,t)}function Zp(e,t){return G([e])?l.Update(jn(XM,e),{},t):Ji(e,t)}function Qp(e,t){return G([e])?l.Update(jn(ZM,e),{},t):Yi(e,t)}function e$(e,t,n,r){let o=$(e,t,n);return Yp(o,r)}function t$(e,t,n,r){let o=$(e,t,n);return Xp(o,r)}function n$(e,t,n,r){let o=$(e,t,n);return Zp(o,r)}function r$(e,t,n,r){let o=$(e,t,n);return Qp(o,r)}var JM,YM,XM,ZM,Tn=m(()=>{k();Ma();D();Ca();La();ja();Fa();JM=e=>e[0].toUpperCase()+e.slice(1),YM=e=>e.toLowerCase(),XM=e=>e[0].toLowerCase()+e.slice(1),ZM=e=>e.toUpperCase()});function Xi(e,t,n,r,o={}){return M("Conditional",[e,t,n,r],o)}function o$(e,t,n,r,o={}){return ec({},ye([],[]),e,t,n,r,o)}var Da=m(()=>{se();tc();D()});function QM(e,t,n,r,o,i){let a=tt(e,n,r);return U.IsExtendsUnion(a)?H([$(a.inferred,t,o),$(e,t,i)]):U.IsExtendsTrue(a)?$(a.inferred,t,o):$(e,t,i)}function ec(e,t,n,r,o,i,a){return G([n,r])?l.Update(QM(e,t,n,r,o,i),{},a):Xi(n,r,o,i,a)}function s$(e,t,n,r,o,i,a){let p=$(e,t,n),c=$(e,t,r);return ec(e,t,p,c,o,i,a)}var tc=m(()=>{k();V();bn();D();Da()});var nc=m(()=>{tc()});function Zi(e,t={}){return M("ConstructorParameters",[e],t)}function i$(e,t={}){return rc(e,t)}var Na=m(()=>{se();qa()});function eC(e){let t=_e(e)?e.parameters:[],n=tr({},ye([],[]),t);return Le(n)}function rc(e,t){return G([e])?l.Update(eC(e),{},t):Zi(e,t)}function a$(e,t,n,r){let o=$(e,t,n);return rc(o,r)}var qa=m(()=>{k();qt();Ne();Na();D();D();D()});function Qi(e,t,n={}){return M("Exclude",[e,t],n)}function m$(e,t,n={}){return bs(e,t,n)}var _a=m(()=>{se();Is()});function bs(e,t,n){return G([e,t])?l.Update(ji(e,t),{},n):Qi(e,t,n)}function u$(e,t,n,r,o){let i=$(e,t,n),a=$(e,t,r);return bs(i,a,o)}var Is=m(()=>{k();D();_a();rp()});function ea(e,t,n={}){return M("Extract",[e,t],n)}function p$(e,t,n={}){return oc(e,t,n)}var Ua=m(()=>{se();Ka()});function tC(e,t){let n=tt({},e,t);return U.IsExtendsTrueLike(n)?[e]:[]}function c$(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>c$(o,t,[...n,...tC(r,t)]),()=>n)}function l$(e,t){let n=Bt(e),r=R(n)?n.anyOf:[n],o=c$(r,t);return wt(o)}var d$=m(()=>{v();V();bn();B();B()});function oc(e,t,n){return G([e,t])?l.Update(l$(e,t),{},n):ea(e,t,n)}function f$(e,t,n,r,o){let i=$(e,t,n),a=$(e,t,r);return oc(i,a,o)}var Ka=m(()=>{k();D();Ua();d$()});function nC(e){return e.reduce((t,n)=>ki(n)?[...t,X(n)]:t,[])}function po(e){let t=nC(e);return H(t)}var $s=m(()=>{Me();V()});function ss(e,t,n={}){return M("Index",[e,t],n)}function g$(e,t,n={}){let r=u.IsArray(t)?po(t):t;return ic(e,r,n)}var sc=m(()=>{v();se();$s();Ga()});function x$(e,t){let n=kn(e,t);return Lt(n)}var h$=m(()=>{Pr();Sr()});function y$(e,t,n){let r=tn(e,t,n);return Lt(r)}var b$=m(()=>{Pr();B()});function rC(e,t){let n=u.Keys(e).filter(y=>!u.HasPropertyKey(t,y)),r=u.Keys(t).filter(y=>!u.HasPropertyKey(e,y)),o=u.Keys(e).filter(y=>u.HasPropertyKey(t,y)),i=n.reduce((y,S)=>({...y,[S]:e[S]}),{}),a=r.reduce((y,S)=>({...y,[S]:t[S]}),{}),p=o.reduce((y,S)=>({...y,[S]:we([e[S],t[S]])}),{}),c=l.Assign(i,a);return l.Assign(c,p)}function I$(e){return e.reduce((t,n)=>rC(t,Lt(n)),{})}var $$=m(()=>{k();v();Pr();B()});var w$=m(()=>{});function k$(e){let t=Tg(Le(e));return Lt(t)}var T$=m(()=>{Ne();Zu();Pr()});function oC(e,t){return u.Keys(e).filter(o=>o in t).reduce((o,i)=>({...o,[i]:wt([e[i],t[i]])}),{})}function E$(e,t){return u.ShiftLeft(e,(n,r)=>E$(r,oC(t,Lt(n))),()=>t)}function v$(e){return u.ShiftLeft(e,(t,n)=>E$(n,Lt(t)),()=>De())}var S$=m(()=>{v();gn();B();Pr()});function Lt(e){return Qe(e)?x$(e.$defs,e.$ref):ve(e)?y$(e.if,e.then,e.else):Y(e)?I$(e.allOf):R(e)?v$(e.anyOf):fe(e)?k$(e.items):ae(e)?e.properties:{}}var Pr=m(()=>{yt();vt();Fe();ce();Ne();V();h$();b$();$$();w$();T$();S$()});function co(e){let t=Lt(e);return _(t)}var P$=m(()=>{ce();Pr()});var ws=m(()=>{P$()});function lo(e){let t=`${e}`;return sC.test(t)?parseInt(t):e}var sC,ks=m(()=>{sC=new RegExp("^(?:0|[1-9][0-9]*)$")});function iC(e){return X(lo(e))}function A$(e){return e.map(t=>R$(t))}function R$(e){return Y(e)?bt(A$(e.allOf)):R(e)?H(A$(e.anyOf)):me(e)?iC(e.const):e}function O$(e,t){let n=R$(t),r=tt({},n,St());return U.IsExtendsTrueLike(r)?e:me(t)&&u.IsEqual(t.const,"length")?St():le()}var M$=m(()=>{v();Fe();V();Me();lt();Be();bn();ks()});function C$(e,t){let n=kn(e,t);return At(n)}var L$=m(()=>{nr();Sr()});function j$(e,t,n){let r=tn(e,t,n);return At(r)}var F$=m(()=>{nr();B()});function D$(e){let t=ft(e);return At(t)}var N$=m(()=>{nr();B()});function q$(e){let t=we(e);return At(t)}var _$=m(()=>{B();nr()});function U$(e){return[`${e}`]}var K$=m(()=>{});function G$(e){let t=ot(e);return At(t)}var W$=m(()=>{nr();B()});function z$(e){return e.reduce((t,n)=>[...t,...At(n)],[])}var B$=m(()=>{nr()});function At(e){return Qe(e)?C$(e.$defs,e.$ref):ve(e)?j$(e.if,e.then,e.else):et(e)?D$(e.enum):Y(e)?q$(e.allOf):me(e)?U$(e.const):Se(e)?G$(e.pattern):R(e)?z$(e.anyOf):[]}var nr=m(()=>{yt();vt();Qt();Fe();Me();It();V();L$();F$();N$();_$();K$();W$();B$()});function fo(e){return At(e)}var Wa=m(()=>{nr()});function Ts(e,t){return t.map(n=>Es(e,n))}function Es(e,t){return $e(t)?Mt(Es(e,t.items)):_e(t)?pn(Ts(e,t.parameters),Es(e,t.instanceType)):Ue(t)?cn(Ts(e,t.parameters),Es(e,t.returnType)):fe(t)?Le(Ts(e,t.items)):R(t)?H(Ts(e,t.anyOf)):Y(t)?bt(Ts(e,t.allOf)):Ki(t)?_(e):t}function H$(e,t){return Es(e,t)}var V$=m(()=>{pt();qt();_t();Fe();ce();Ne();Gi();V()});function aC(e,t){let n=t in e?e[t]:le();return H$(e,n)}function J$(e,t){return t.reduce((n,r)=>[...n,aC(e,r)],[])}function mC(e,t){let n=fo(t),r=J$(e,n);return wt(r)}function pC(e){return e.filter(n=>uC.test(n))}function cC(e){let t=fi(e),n=pC(t),r=J$(e,n);return wt(r)}function Y$(e,t){return Ce(t)?cC(e):mC(e,t)}var uC,X$=m(()=>{lt();Be();dr();B();Wa();Ve();V$();uC=new RegExp(Yn)});function lC(e){return X(lo(e))}function Z$(e){return e.map(t=>ac(t))}function ac(e){return Y(e)?bt(Z$(e.allOf)):R(e)?H(Z$(e.anyOf)):me(e)?lC(e.const):e}var Q$=m(()=>{V();Fe();Me();ks()});function dC(e,t){return e.reduceRight((n,r,o)=>{let i=tt({},X(o),t);return U.IsExtendsTrueLike(i)?[r,...n]:n},[])}function fC(e,t){let n=ac(t),r=dC(e,n);return Vn(r)}function gC(e){return Vn(e)}function ew(e,t){return me(t)&&u.IsEqual(t.const,"length")?X(e.length):Ce(t)||ct(t)?gC(e):fC(e,t)}var tw=m(()=>{v();Me();lt();yn();B();bn();Q$()});function nw(e,t){return $e(e)?O$(e.items,t):ae(e)?Y$(e.properties,t):fe(e)?ew(e.items,t):le()}var rw=m(()=>{pt();Be();ce();Ne();M$();X$();tw()});function xC(e){return Qe(e)||ve(e)||Y(e)||R(e)?co(e):e}function ic(e,t,n){return G([e,t])?l.Update(nw(xC(e),t),{},n):ss(e,t,n)}function ow(e,t,n,r,o){let i=$(e,t,n),a=$(e,t,r);return ic(i,a,o)}var Ga=m(()=>{k();yt();vt();Fe();V();D();sc();ws();rw()});function ta(e,t={}){return M("InstanceType",[e],t)}function sw(e,t={}){return mc(e,t)}var za=m(()=>{se();Ba()});function hC(e){return _e(e)?e.instanceType:le()}function mc(e,t){return G([e])?l.Update(hC(e),{},t):ta(e,t)}function iw(e,t,n,r={}){let o=$(e,t,n);return mc(o,r)}var Ba=m(()=>{k();qt();Be();za();D()});function is(e,t={}){return M("KeyOf",[e],t)}function aw(e,t={}){return uc(e,t)}var Ha=m(()=>{se();Va()});function mw(){return H([St(),Wt(),Hr()])}var uw=m(()=>{lt();zt();Ir();V()});function pw(e){return St()}var cw=m(()=>{lt()});function yC(e){return e.reduce((n,r)=>ki(r)?[...n,X(lo(r))]:De(),[])}function lw(e){let t=u.Keys(e),n=yC(t);return Vn(n)}var dw=m(()=>{gn();v();Me();ks();B()});function fw(e){return Yr(e)}var gw=m(()=>{Ve()});function xw(e){let t=e.map((n,r)=>X(r));return Vn(t)}var hw=m(()=>{Me();B()});function yw(e){return Te(e)?mw():$e(e)?pw(e.items):ae(e)?lw(e.properties):nt(e)?fw(e):fe(e)?xw(e.items):le()}var bw=m(()=>{ht();pt();Be();ce();Ve();Ne();uw();cw();dw();gw();hw()});function bC(e){return Qe(e)||ve(e)||Y(e)||R(e)?co(e):e}function uc(e,t){return G([e])?l.Update(yw(bC(e)),{},t):is(e,t)}function Iw(e,t,n,r){let o=$(e,t,n);return uc(o,r)}var Va=m(()=>{k();yt();vt();Fe();V();Ha();D();ws();bw()});function ns(e,t,n,r,o={}){return M("Mapped",[e,t,n,r],o)}function $w(e,t,n,r,o={}){return pc({},ye([],[]),e,t,n,r,o)}var Ja=m(()=>{se();Ya();D()});function IC(e){let t=ot(e);return Xa(t)}function $C(e){return e.reduce((t,n)=>[...t,...Xa(n)],[])}function wC(e){let t=ft(e);return Xa(t)}function kC(e){return u.IsNumber(e)?[X(`${e}`)]:[X(e)]}function Xa(e){return et(e)?wC(e.enum):me(e)?kC(e.const):Se(e)?IC(e.pattern):R(e)?$C(e.anyOf):[e]}function ww(e){return Xa(e)}var kw=m(()=>{v();Me();Qt();It();V();B();B()});function TC(e){return Se(e)?ot(e.pattern):e}function EC(e,t,n,r,o,i){let a=l.Assign(e,{[n.name]:r}),p=$(a,t,o),c=TC(p),x=$(a,t,i);return ng(c)||rg(c)?{[c.const]:x}:{}}function vC(e,t,n,r,o,i){return r.reduce((a,p)=>[...a,EC(e,t,n,p,o,i)],[])}function SC(e){return e.reduce((t,n)=>[...t,_(n)],[])}function Tw(e,t,n,r,o,i){let a=ww(r),p=vC(e,t,n,a,o,i),c=SC(p);return we(c)}var Ew=m(()=>{k();Me();ce();It();D();B();B();kw()});function pc(e,t,n,r,o,i,a){return G([r])?l.Update(Tw(e,t,n,r,o,i),{},a):ns(n,r,o,i,a)}function vw(e,t,n,r,o,i,a){let p=$(e,t,r);return pc(e,t,n,p,o,i,a)}var Ya=m(()=>{k();Ja();D();Ew()});function PC(e,t,n){let r=l.Assign(e,t);return u.Keys(t).filter(i=>n.includes(i)).reduce((i,a)=>({...i,[a]:kI(r,a,t[a])}),{})}function AC(e,t,n){let r=l.Assign(e,t);return u.Keys(t).filter(i=>!n.includes(i)).reduce((i,a)=>({...i,[a]:$(r,ye([],[]),t[a])}),{})}function RC(e,t,n){let r=yI(t),o=PC(e,t,r),i=AC(e,t,r),a={...o,...i};return l.Update(a,{},n)}function Za(e,t,n,r){return RC(e,n,r)}var Qa=m(()=>{v();k();D();qp();Up();D()});function na(e,t={}){return M("NonNullable",[e],t)}function Sw(e,t={}){return cc(e,t)}var em=m(()=>{se();tm()});function OC(e){let t=H([Wr(),Zr()]);return bs(e,t,{})}function cc(e,t){return G([e])?l.Update(OC(e),{},t):na(e,t)}function Pw(e,t,n,r){let o=$(e,t,n);return cc(o,r)}var tm=m(()=>{k();Br();eo();V();Is();em();D()});function ra(e,t,n={}){return M("Omit",[e,t],n)}function Aw(e,t,n={}){let r=u.IsArray(t)?po(t):t;return lc(e,r,n)}var nm=m(()=>{v();se();$s();rm()});function om(e){let t=co(e);return ae(t)?t.properties:De()}var dc=m(()=>{gn();ce();ws()});function MC(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?r:{...r,[o]:e[o]},{})}function Rw(e,t){let n=om(e),r=fo(t),o=MC(n,r);return _(o)}var Ow=m(()=>{v();ce();Wa();dc()});function lc(e,t,n){return G([e,t])?l.Update(Rw(e,t),{},n):ra(e,t,n)}function Mw(e,t,n,r,o){let i=$(e,t,n),a=$(e,t,r);return lc(i,a,o)}var rm=m(()=>{k();nm();D();Ow()});function oa(e,t={}){return M("Parameters",[e],t)}function Cw(e,t={}){return fc(e,t)}var sm=m(()=>{se();im()});function CC(e){let t=Ue(e)?e.parameters:[],n=tr({},ye([],[]),t);return Le(n)}function fc(e,t){return G([e])?l.Update(CC(e),{},t):oa(e,t)}function Lw(e,t,n,r){let o=$(e,t,n);return fc(o,r)}var im=m(()=>{k();_t();Ne();sm();D();D();D()});function sa(e,t={}){return M("Partial",[e],t)}function jw(e,t={}){return gc(e,t)}var am=m(()=>{se();mm()});function Fw(e,t){let n=kn(e,t),r=En(n);return dn(l.Assign(e,{[t]:r}),t)}var Dw=m(()=>{k();yt();go();Sr()});function Nw(e,t,n){let r=tn(e,t,n);return En(r)}var qw=m(()=>{go();B()});function _w(e){let t=we(e);return En(t)}var Uw=m(()=>{go();B()});function Kw(e){let t=e.map(n=>En(n));return H(t)}var Gw=m(()=>{V();go()});function Ww(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:lr(e[o])}),{});return _(t)}var zw=m(()=>{v();ce();Do()});function En(e){return Qe(e)?Fw(e.$defs,e.$ref):ve(e)?Nw(e.if,e.then,e.else):Y(e)?_w(e.allOf):R(e)?Kw(e.anyOf):ae(e)?Ww(e.properties):_({})}var go=m(()=>{yt();vt();Fe();ce();V();Dw();qw();Uw();Gw();zw()});function gc(e,t){return G([e])?l.Update(En(e),{},t):sa(e,t)}function Bw(e,t,n,r){let o=$(e,t,n);return gc(o,r)}var mm=m(()=>{k();am();go();D()});function ia(e,t,n={}){return M("Pick",[e,t],n)}function Hw(e,t,n={}){let r=u.IsArray(t)?po(t):t;return xc(e,r,n)}var um=m(()=>{v();se();$s();pm()});function LC(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?l.Assign(r,{[o]:e[o]}):r,{})}function Vw(e,t){let n=om(e),r=fo(t),o=LC(n,r);return _(o)}var Jw=m(()=>{k();v();ce();Wa();dc()});function xc(e,t,n){return G([e,t])?l.Update(Vw(e,t),{},n):ia(e,t,n)}function Yw(e,t,n,r,o){let i=$(e,t,n),a=$(e,t,r);return xc(i,a,o)}var pm=m(()=>{k();um();D();Jw()});function aa(e,t={}){return M("ReadonlyObject",[e],t)}function hc(e,t={}){return yc(e,t)}var Xw,cm=m(()=>{se();lm();Xw=hc});function Zw(e){return Gr(Mt(e))}var Qw=m(()=>{pt();Go()});function ek(e,t){let n=kn(e,t),r=vn(n);return dn(l.Assign(e,{[t]:r}),t)}var tk=m(()=>{k();yt();xo();Sr()});function nk(e,t,n){let r=tn(e,t,n);return vn(r)}var rk=m(()=>{xo();B()});function ok(e){let t=we(e);return vn(t)}var sk=m(()=>{xo();B()});function ik(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:xr(e[o])}),{});return _(t)}var ak=m(()=>{v();ce();Wo()});function mk(e){return Gr(Le(e))}var uk=m(()=>{Ne();Go()});function pk(e){let t=e.map(n=>vn(n));return H(t)}var ck=m(()=>{V();xo()});function vn(e){return $e(e)?Zw(e.items):Qe(e)?ek(e.$defs,e.$ref):ve(e)?nk(e.if,e.then,e.else):Y(e)?ok(e.allOf):ae(e)?ik(e.properties):fe(e)?mk(e.items):R(e)?pk(e.anyOf):e}var xo=m(()=>{pt();yt();vt();Fe();ce();Ne();V();Qw();tk();rk();sk();ak();uk();ck()});function yc(e,t){return G([e])?l.Update(vn(e),{},t):aa(e)}function lk(e,t,n,r){let o=$(e,t,n);return yc(o,r)}var lm=m(()=>{k();cm();xo();D()});function dk(e,t,n,r){return t.visited.includes(r)?n:r in e?$(e,ye(t.callstack,[...t.visited,r]),e[r]):n}var bc=m(()=>{D();D()});function fk(e,t){let n=kn(e,t),r=Sn(n);return dn(l.Assign(e,{[t]:r}),t)}var gk=m(()=>{k();yt();ho();Sr()});function xk(e,t,n){let r=tn(e,t,n);return Sn(r)}var hk=m(()=>{ho();B()});function yk(e){let t=we(e);return Sn(t)}var bk=m(()=>{ho();B()});function Ik(e){let t=e.map(n=>Sn(n));return H(t)}var $k=m(()=>{V();ho()});function wk(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:Mi(e[o])}),{});return _(t)}var kk=m(()=>{v();ce();Ci()});function Sn(e){return Qe(e)?fk(e.$defs,e.$ref):ve(e)?xk(e.if,e.then,e.else):Y(e)?yk(e.allOf):R(e)?Ik(e.anyOf):ae(e)?wk(e.properties):_({})}var ho=m(()=>{yt();vt();Fe();ce();V();gk();hk();bk();$k();kk()});function ma(e,t={}){return M("Required",[e],t)}function Tk(e,t={}){return Ic(e,t)}var dm=m(()=>{se();fm()});function Ic(e,t){return G([e])?l.Update(Sn(e),{},t):ma(e,t)}function Ek(e,t,n,r){let o=$(e,t,n);return Ic(o,r)}var fm=m(()=>{k();ho();dm();D()});function ua(e,t={}){return M("ReturnType",[e],t)}function vk(e,t={}){return $c(e,t)}var gm=m(()=>{se();xm()});function jC(e){return Ue(e)?e.returnType:le()}function $c(e,t){return G([e])?l.Update(jC(e),{},t):ua(e,t)}function Sk(e,t,n,r={}){let o=$(e,t,n);return $c(o,r)}var xm=m(()=>{k();_t();Be();gm();D()});function pa(e,t){return M("With",[e,t],{})}function Pk(e,t){return wc(e,t)}var hm=m(()=>{se();ym()});function wc(e,t){return G([e])?l.Update(e,{},t):pa(e,t)}function Ak(e,t,n,r){let o=$(e,t,n);return wc(o,r)}var ym=m(()=>{k();D();hm()});function FC(e){return Xn(e)?fe(e.items)?kc(e.items.items):Re(e.items)?[e]:Ke(e.items)?[e]:[le()]:[e]}function kc(e){return e.reduce((n,r)=>[...n,...FC(r)],[])}var Rk=m(()=>{Kt();Be();Xr();Ut();Ne()});var Ok=m(()=>{Rk()});function ye(e,t){return{callstack:e,visited:t}}function G(e){return u.ShiftLeft(e,(t,n)=>Ke(t)?!1:G(n),()=>!0)}function ds(e,t,n){return u.Keys(n).reduce((r,o)=>({...r,[o]:$(e,t,n[o])}),{})}function tr(e,t,n){let r=Ct(e,t,n);return kc(r)}function Ct(e,t,n){return n.map(r=>$(e,t,r))}function DC(e,t){let n=rt(e)?jo(t,{}):t,r=hr(e)?Lo(n,{}):n;return gr(e)?vs(r,{}):r}function NC(e,t,n,r,o){return u.IsEqual(n,"AddImmutable")?Mk(e,t,r[0],o):u.IsEqual(n,"RemoveImmutable")?UI(e,t,r[0],o):u.IsEqual(n,"AddReadonly")?Nd(e,t,r[0],o):u.IsEqual(n,"RemoveReadonly")?bg(e,t,r[0],o):u.IsEqual(n,"AddOptional")?qd(e,t,r[0],o):u.IsEqual(n,"RemoveOptional")?wg(e,t,r[0],o):u.IsEqual(n,"Capitalize")?e$(e,t,r[0],o):u.IsEqual(n,"Conditional")?s$(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"ConstructorParameters")?a$(e,t,r[0],o):u.IsEqual(n,"Evaluate")?SI(e,t,r[0],o):u.IsEqual(n,"Exclude")?u$(e,t,r[0],r[1],o):u.IsEqual(n,"Extract")?f$(e,t,r[0],r[1],o):u.IsEqual(n,"Index")?ow(e,t,r[0],r[1],o):u.IsEqual(n,"InstanceType")?iw(e,t,r[0],o):u.IsEqual(n,"Interface")?fI(e,t,r[0],r[1],o):u.IsEqual(n,"KeyOf")?Iw(e,t,r[0],o):u.IsEqual(n,"Lowercase")?t$(e,t,r[0],o):u.IsEqual(n,"Mapped")?vw(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"Module")?Za(e,t,r[0],o):u.IsEqual(n,"NonNullable")?Pw(e,t,r[0],o):u.IsEqual(n,"Pick")?Yw(e,t,r[0],r[1],o):u.IsEqual(n,"Parameters")?Lw(e,t,r[0],o):u.IsEqual(n,"Partial")?Bw(e,t,r[0],o):u.IsEqual(n,"Omit")?Mw(e,t,r[0],r[1],o):u.IsEqual(n,"ReadonlyObject")?lk(e,t,r[0],o):u.IsEqual(n,"Record")?Hg(e,t,r[0],r[1],o):u.IsEqual(n,"Required")?Ek(e,t,r[0],o):u.IsEqual(n,"ReturnType")?Sk(e,t,r[0],o):u.IsEqual(n,"TemplateLiteral")?mb(e,t,r[0],o):u.IsEqual(n,"Uncapitalize")?n$(e,t,r[0],o):u.IsEqual(n,"Uppercase")?r$(e,t,r[0],o):u.IsEqual(n,"With")?Ak(e,t,r[0],r[1]):M(n,r,o)}function qC(e,t,n){let r=Ke(n)?dk(e,t,n,n.$ref):$e(n)?Mt($(e,t,n.items),di(n)):uo(n)?Oa(e,t,n.target,n.arguments):_e(n)?pn(Ct(e,t,n.parameters),$(e,t,n.instanceType),_d(n)):Ue(n)?cn(Ct(e,t,n.parameters),$(e,t,n.returnType),Ud(n)):ve(n)?fr($(e,t,n.if),$(e,t,n.then),$(e,t,n.else),Vd(n)):Y(n)?bt(Ct(e,t,n.allOf),Qd(n)):ae(n)?_(ds(e,t,n.properties),zd(n)):nt(n)?Vg(Ht(n),$(e,t,gt(n))):Xn(n)?wr($(e,t,n.items)):fe(n)?Le(tr(e,t,n.items),yg(n)):R(n)?H(Ct(e,t,n.anyOf),sg(n)):n;return DC(n,r)}function $(e,t,n){return Kn(n)?NC(e,t,n.action,n.parameters,n.options):qC(e,t,n)}function Tc(e,t){return $(e,ye([],[]),t)}var D=m(()=>{v();bm();ci();li();pt();qt();se();_t();to();vt();Fe();ce();Ve();Ne();V();Ut();Xr();bm();Jp();ci();Hu();li();Yu();Wn();Ko();zo();Vp();Tn();nc();qa();Ra();Is();Ka();Ga();Ba();Sa();Va();Tn();Ya();Qa();tm();rm();im();mm();pm();lm();Di();bc();fm();xm();wa();Tn();Tn();ym();Ok()});function _C(e){return l.Update(e,{"~immutable":!0},{})}function vs(e,t){return l.Update(_C(e),{},t)}function Mk(e,t,n,r){let o=$(e,t,n);return vs(o,r)}var bm=m(()=>{k();D()});function Yh(e,t={}){return M("AddImmutable",[e],t)}function Gr(e,t={}){return vs(e,t)}var Go=m(()=>{se();bm()});var Ck=m(()=>{se();Jp()});function Xh(e,t={}){return M("Evaluate",[e],t)}function Lk(e,t={}){return Wp(e,t)}var Ec=m(()=>{se();Ra()});function Zh(e,t={}){return M("Module",[e],t)}function jk(e,t={}){return Za({},ye([],[]),e,t)}var vc=m(()=>{se();D();Qa()});var no=m(()=>{Go();Wo();Do();Ck();Vu();Ci();Ca();Da();Na();Ec();_a();Ua();sc();za();fs();Ha();La();Ja();vc();em();nm();sm();am();um();cm();dm();gm();ja();Fa();hm()});var Fk=m(()=>{qa()});var Dk=m(()=>{yi()});var Nk=m(()=>{Is()});var qk=m(()=>{Ka()});var _k=m(()=>{});var Uk=m(()=>{$s();ks();_k()});var Kk=m(()=>{Ga()});var Gk=m(()=>{Ba()});var Wk=m(()=>{Sa()});var zk=m(()=>{Tn()});var Bk=m(()=>{Va()});var Hk=m(()=>{Ya()});var Vk=m(()=>{Qa()});var Jk=m(()=>{tm()});var Yk=m(()=>{rm()});var Xk=m(()=>{im()});var Zk=m(()=>{Jo();vp()});var Qk=m(()=>{mm()});var eT=m(()=>{pm()});var tT=m(()=>{v();Qo()});var nT=m(()=>{tT()});var rT=m(()=>{lm()});var oT=m(()=>{Di()});var sT=m(()=>{bc()});var iT=m(()=>{fm()});var aT=m(()=>{xm()});var mT=m(()=>{});var uT=m(()=>{v();Jo()});var pT=m(()=>{Ri();Oi();Sp();mT();Pi();uT()});var cT=m(()=>{ym()});var lT=m(()=>{D();nc();Fk();Kp();Dk();cs();Nk();qk();Uk();Kk();Gk();Wk();zk();Bk();Hk();Vk();Jk();ws();Yk();Xk();Zk();Qk();eT();nT();rT();oT();sT();iT();aT();pT();cT()});function dT(...e){let[t,n,r]=fn.Match(e,{2:(a,p)=>u.IsString(a)?[{},a,p]:[a,p,{}],3:(a,p,c)=>[a,p,c],1:a=>[{},a,{}]}),o=rb(n),i=u.IsArray(o)&&u.IsEqual(o.length,2)?$(t,ye([],[]),o[0]):le();return l.Update(i,{},r)}var fT=m(()=>{Kr();k();v();zi();D();D();vi()});var Sc=m(()=>{fT()});var ie={};Ot(ie,{Any:()=>Ur,Array:()=>Mt,BigInt:()=>Bo,Boolean:()=>$i,Call:()=>qI,Capitalize:()=>YI,Codec:()=>Ii,Conditional:()=>o$,Constructor:()=>pn,ConstructorParameters:()=>i$,Cyclic:()=>dn,Decode:()=>Jf,DecodeBuilder:()=>Uo,Dependent:()=>fr,Encode:()=>Yf,EncodeBuilder:()=>_o,Enum:()=>Zd,Evaluate:()=>Lk,Exclude:()=>m$,Extends:()=>tt,ExtendsResult:()=>U,Extract:()=>p$,Function:()=>cn,Generic:()=>Gn,Identifier:()=>Ho,Immutable:()=>Xf,Index:()=>g$,Infer:()=>No,InstanceType:()=>sw,Instantiate:()=>Tc,Integer:()=>br,Interface:()=>gI,Intersect:()=>bt,IsAny:()=>Te,IsArray:()=>$e,IsBigInt:()=>hn,IsBoolean:()=>Gt,IsCall:()=>uo,IsCodec:()=>bi,IsConstructor:()=>_e,IsCyclic:()=>Qe,IsDependent:()=>ve,IsEnum:()=>et,IsEnumValue:()=>Xd,IsFunction:()=>Ue,IsGeneric:()=>_r,IsIdentifier:()=>tg,IsImmutable:()=>gr,IsInfer:()=>Re,IsInteger:()=>ct,IsIntersect:()=>Y,IsKind:()=>P,IsLiteral:()=>me,IsNever:()=>Zt,IsNull:()=>zr,IsNumber:()=>Ce,IsObject:()=>ae,IsOptional:()=>rt,IsParameter:()=>og,IsReadonly:()=>hr,IsRecord:()=>nt,IsRef:()=>Ke,IsRefine:()=>_u,IsRest:()=>Xn,IsSchema:()=>je,IsString:()=>dt,IsSymbol:()=>Bn,IsTemplateLiteral:()=>Se,IsThis:()=>Ki,IsTuple:()=>fe,IsUndefined:()=>Qr,IsUnion:()=>R,IsUnknown:()=>Ae,IsUnsafe:()=>xi,IsVoid:()=>In,KeyOf:()=>aw,Literal:()=>X,Lowercase:()=>XI,Mapped:()=>$w,Module:()=>jk,Never:()=>le,NonNullable:()=>Sw,Null:()=>Wr,Number:()=>St,Object:()=>_,Omit:()=>Aw,Optional:()=>Gd,Parameter:()=>$r,Parameters:()=>Cw,Partial:()=>jw,Pick:()=>Hw,Readonly:()=>Zf,ReadonlyObject:()=>hc,ReadonlyType:()=>Xw,Record:()=>qi,RecordKey:()=>Yr,RecordPattern:()=>Ht,RecordValue:()=>gt,Ref:()=>Mn,Refine:()=>Qf,Required:()=>Tk,Rest:()=>wr,ReturnType:()=>vk,Script:()=>dT,String:()=>Wt,Symbol:()=>Hr,TemplateLiteral:()=>pb,This:()=>Ui,Tuple:()=>Le,Uncapitalize:()=>ZI,Undefined:()=>Zr,Union:()=>H,Unknown:()=>He,Unsafe:()=>Bd,Uppercase:()=>QI,Void:()=>Wi,With:()=>Pk});var Pc=m(()=>{D();bn();Sc();Ca();Da();Na();Ec();_a();Ua();no();za();fs();Ha();La();Ja();vc();em();nm();sm();am();um();cm();dm();gm();ja();Fa();hm();qu();Ko();Wn();zo();Uu();ht();pt();yr();zn();to();qt();yt();Qt();_t();Fo();Ku();vt();Kt();yn();Fe();Me();Be();Br();lt();ce();Wu();Ve();Ut();Xr();W();zt();Ir();It();Gi();Ne();eo();V();Ze();hi();kr()});var yo=m(()=>{no();lT();bn();Sc();zi();Pc();Pc()});import{StringEnum as UC}from"@earendil-works/pi-ai";import{defineTool as KC}from"@earendil-works/pi-coding-agent";function gT(e){if(e.length===0)return"Todo list is empty.";let t=e.filter(o=>o.status==="completed").length,n=e.map(o=>`${GC[o.status]} ${o.content}`),r=e.filter(o=>o.status==="pending"||o.status==="in_progress").length;return[`${t}/${e.length} done, ${r} open`,...n].join(`
|
|
16
|
+
`)}function zC(e,t,n,r){let o=e.map(i=>({...i}));switch(t){case"init":return!n||n.length===0?{todos:o,error:"init needs a non-empty items array"}:{todos:n.map(i=>({content:i,status:"pending"}))};case"view":return{todos:o};case"start":case"done":case"drop":{if(!r)return{todos:o,error:`${t} needs task`};let i=o.find(a=>a.content===r);if(!i)return{todos:o,error:`no task matches ${JSON.stringify(r)}`};if(t==="start"){for(let a of o)a.status==="in_progress"&&(a.status="pending");i.status="in_progress"}else i.status=t==="done"?"completed":"dropped";return{todos:o}}default:return{todos:o,error:`unknown op ${JSON.stringify(t)}`}}}function BC(e){let t=[];for(let n of e.sessionManager.getBranch()){if(n.type!=="message")continue;let r=n.message;if(r.role!=="toolResult"||r.toolName!=="todo")continue;let o=r.details;o?.todos&&(t=o.todos)}return t}var GC,WC,Im,Ac=m(()=>{yo();GC={pending:"[ ]",in_progress:"[>]",completed:"[x]",dropped:"[-]"},WC=ie.Object({op:UC(["init","start","done","drop","view"],{description:"init replaces the list; start/done/drop move one task; view reads it"}),items:ie.Optional(ie.Array(ie.String(),{description:"Task labels for init. 5-10 words each, specific enough to execute without re-planning"})),task:ie.Optional(ie.String({description:"Exact label of the task to start, complete or drop"}))});Im=KC({name:"todo",label:"todo",description:"Track the plan for this task. Use `init` once with the whole plan (investigation through verification), then `start`/`done` as you go. Keep the list current so progress stays visible; do not re-init unless the plan materially changes.",promptSnippet:"todo: record and advance the plan for the current task",parameters:WC,async execute(e,t,n,r,o){let i=BC(o),{todos:a,error:p}=zC(i,t.op,t.items,t.task),c={op:t.op,todos:a,...p?{error:p}:{}};return{content:[{type:"text",text:p?`Error: ${p}
|
|
17
|
+
${gT(a)}`:gT(a)}],details:c,...p?{isError:!0}:{}}}})});import{StringEnum as HC}from"@earendil-works/pi-ai";import{defineTool as VC}from"@earendil-works/pi-coding-agent";function yT(){return Fn.size===0?"":["<shared-notes>","Working notes recorded with the `context` tool. They survive compaction and are visible to every agent on this task.",...[...Fn].map(([t,n])=>`- ${t}: ${n}`),"</shared-notes>"].join(`
|
|
18
|
+
`)}function JC(e,t,n){if(e==="list")return Fn.size===0?{text:"No notes."}:{text:[...Fn].map(([r,o])=>`${r} = ${o}`).join(`
|
|
19
|
+
`)};if(!t)return{text:"Error: key is required",error:"key required"};if(t.length>hT)return{text:`Error: key longer than ${hT} characters`,error:"key too long"};if(e==="forget")return{text:Fn.delete(t)?`Removed ${t}`:`No note named ${t}`};if(e==="set"){if(!n)return{text:"Error: value is required for set",error:"value required"};let r=n.length>xT?`${n.slice(0,xT)}\u2026`:n;return Fn.set(t,r),{text:`Recorded ${t} (${Fn.size} note${Fn.size===1?"":"s"} held)`}}return{text:`Error: unknown op ${JSON.stringify(e)}`,error:"unknown op"}}var Fn,xT,hT,$m,wm=m(()=>{yo();Fn=new Map,xT=2e3,hT=80;$m=VC({name:"context",label:"context",description:"Record a durable working note (a decision, a file's role, a fact you would otherwise re-derive). Notes survive context compaction and are visible to every agent on this task, including subagents. Use `set` to write, `list` to read, `forget` to remove.",promptSnippet:"context: durable notes shared with every agent on this task",parameters:ie.Object({op:HC(["set","list","forget"],{description:"set writes a note, list reads all, forget removes one"}),key:ie.Optional(ie.String({description:"Short lookup key, e.g. 'auth-entrypoint'"})),value:ie.Optional(ie.String({description:"The fact to keep (for set)"}))}),async execute(e,t){let{text:n,error:r}=JC(t.op,t.key,t.value);return{content:[{type:"text",text:n}],details:{op:t.op,notes:Object.fromEntries(Fn)},...r?{isError:!0}:{}}}})});import{StringEnum as YC}from"@earendil-works/pi-ai";import{defineTool as XC}from"@earendil-works/pi-coding-agent";function Tm(e){if(!e||e.status==="cleared")return"No goal set.";let t=e.budget??km,n=[`${$T[e.status]} ${e.status}`,`${e.used}/${t} continuations`];return e.note&&n.push(e.note),`${n.join(" \xB7 ")}
|
|
20
20
|
${e.text}`}function wT(e){if(!e||e.status==="cleared"||e.status==="done")return"";let t=e.budget??km,n=e.text.length>48?`${e.text.slice(0,47)}\u2026`:e.text;return`goal ${$T[e.status]} ${e.used}/${t} \xB7 ${n}`}function kT(e){let t=["<goal>",e.text,`Status: ${e.status}.`];return e.status==="active"&&t.push("Work toward this goal until it is genuinely met. When it is, call the `goal` tool with",'op="complete" and a note naming the evidence \u2014 a command you ran or a file you checked.',"If you are blocked and cannot proceed, say so plainly instead of repeating an attempt."),t.push("</goal>"),t.join(`
|
|
21
21
|
`)}function TT(e){return["[goal] The goal is still open and you stopped without closing it:",` ${e.text}`,"","Continue from where you left off. Do not repeat work you already did. If the goal is met,",'call the `goal` tool with op="complete" and a note naming the evidence. Do not call it',"complete to escape a hard problem: if you cannot make progress, state what is blocking you.",`Continuations used: ${e.used}/${e.budget??km}.`].join(`
|
|
22
|
-
`)}function Em(){return ET}function nn(e){ET=e}function vm(e){if(!e)return{action:"stop",reason:"no goal",close:!1};if(e.status==="done")return{action:"stop",reason:"goal complete",close:!1};if(e.status==="cleared")return{action:"stop",reason:"goal cleared",close:!1};if(e.status==="paused")return{action:"stop",reason:"goal paused",close:!1};let t=e.budget??km;return e.used>=t?{action:"stop",reason:`budget exhausted (${t} continuations)`,close:!0}:{action:"continue"}}function
|
|
23
|
-
${c}`:c}],details:{op:t.op,goal:a},...p?{isError:!0}:{}}}})});import{existsSync as
|
|
24
|
-
`)}function
|
|
22
|
+
`)}function Em(){return ET}function nn(e){ET=e}function vm(e){if(!e)return{action:"stop",reason:"no goal",close:!1};if(e.status==="done")return{action:"stop",reason:"goal complete",close:!1};if(e.status==="cleared")return{action:"stop",reason:"goal cleared",close:!1};if(e.status==="paused")return{action:"stop",reason:"goal paused",close:!1};let t=e.budget??km;return e.used>=t?{action:"stop",reason:`budget exhausted (${t} continuations)`,close:!0}:{action:"continue"}}function Rc(e,t,n,r,o){switch(t){case"view":return{goal:e};case"set":return n?.trim()?n.length>bT?{goal:e,error:`text longer than ${bT} characters`}:r!==void 0&&(!Number.isInteger(r)||r<1)?{goal:e,error:"budget must be a positive integer"}:{goal:{text:n.trim(),status:"active",used:0,...r===void 0?{}:{budget:r}}}:{goal:e,error:"set needs text"};case"pause":case"resume":case"complete":case"clear":return!e||e.status==="cleared"?{goal:e,error:"no goal to change"}:t==="resume"?e.status==="done"?{goal:e,error:"goal is complete; set a new one instead"}:{goal:{...e,status:"active",note:void 0}}:t==="pause"?{goal:{...e,status:"paused"}}:t==="clear"?{goal:{...e,status:"cleared"}}:o?.trim()?{goal:{...e,status:"done",note:o.trim()}}:{goal:e,error:"complete needs a note naming the evidence (a command you ran or a file you checked)"};default:return{goal:e,error:`unknown op ${JSON.stringify(t)}`}}}function bo(e){let t;for(let n of e.sessionManager.getBranch()){if(n.type==="custom"&&n.customType===rr){t=n.data;continue}if(n.type==="custom_message"&&n.customType===rr){t=n.details??t;continue}if(n.type!=="message")continue;let r=n.message;if(r.role!=="toolResult"||r.toolName!=="goal")continue;let o=r.details;o?.goal&&(t=o.goal)}return t}var rr,IT,bT,km,$T,ET,ZC,vT,Sm=m(()=>{yo();rr="howtofix.goal",IT="howtofix.goal.continue",bT=400,km=25,$T={active:"\u25CF",paused:"\u2016",done:"\u2713",cleared:"\u25CB"};ZC=ie.Object({op:YC(["set","view","pause","resume","complete","clear"],{description:"set starts a goal; complete closes it with evidence; pause/resume/clear manage it; view reads it"}),text:ie.Optional(ie.String({description:"The goal, in one sentence, as the user would state it (for set)"})),budget:ie.Optional(ie.Number({description:"Optional cap on automatic continuations before the run stops"})),note:ie.Optional(ie.String({description:"Evidence that the goal is met (required for complete)"}))}),vT=XC({name:"goal",label:"goal",description:"Track the goal for this session. The goal is already shown in your context every request, so you rarely need `view`. Call `complete` only when the goal is genuinely met, and pass a note naming the evidence. When a goal is active the harness continues the run if you stop without closing it, so closing it is how you stop.",promptSnippet:"goal: the session's objective, and how to close it",parameters:ZC,async execute(e,t,n,r,o){let i=bo(o),{goal:a,error:p}=Rc(i,t.op,t.text,t.budget,t.note);nn(a);let c=Tm(a);return{content:[{type:"text",text:p?`Error: ${p}
|
|
23
|
+
${c}`:c}],details:{op:t.op,goal:a},...p?{isError:!0}:{}}}})});import{existsSync as Cc,mkdirSync as ST,readFileSync as PT,writeFileSync as AT}from"node:fs";import{dirname as RT,join as OT}from"node:path";import{defineTool as MT}from"@earendil-works/pi-coding-agent";function Pm(){return{state:"inactive",wasActive:!1}}function QC(e){return e?e.state==="pending"?{...e,state:"inactive"}:{...e}:Pm()}function CT(e){return e.state!=="inactive"?e:{...e,state:"pending"}}function e0(e){return e.state!=="pending"?e:{state:"active",wasActive:!0}}function t0(e){return e.state!=="inactive"?e:{state:"active",wasActive:!0}}function n0(e){return e.state!=="active"?e:{...e,state:"inactive"}}function LT(e){return e.state==="inactive"?e:{...e,state:"inactive"}}function Am(e){return e.state==="active"}function r0(e,t){return e===t}function o0(e,t){return["<plan-mode>","Plan mode is active. Do not make any edits or writes to the system.",t?`A plan file exists at ${e}. Read it and refine it with the \`edit\` tool.`:`No plan is written yet. Write yours to ${e} with the \`write\` tool.`,"That file is the only path you may edit.","Explore first: read, search, and run read-only commands until the approach is clear.","End your turn with either `ask` to clarify a requirement, or `exit_plan_mode` to present","the plan for approval. Do not start implementing before the plan is approved.","</plan-mode>"].join(`
|
|
24
|
+
`)}function s0(e){return`Rejected: file edits are not allowed in plan mode. The only editable file is the plan file (${e}). Present the plan with exit_plan_mode first.`}function Rm(){return mt}function jT(){return at}function FT(){return Am(mt)}function DT(){if(!(!at||!Cc(at)))try{let e=PT(at,"utf8");return e.trim()?e:void 0}catch{return}}function NT(){return DT()!==void 0}function qT(){return mt.state==="inactive"?"":mt.state==="pending"?"plan pending":NT()?"plan \u25CF ready":"plan \u25CF planning"}function _T(){return Mc?OT(Mc,"plan_mode.json"):void 0}function i0(){let e=_T();if(e)try{ST(RT(e),{recursive:!0}),AT(e,JSON.stringify(mt))}catch{}}function a0(){let e=_T();if(!e||!Cc(e))return Pm();try{return QC(JSON.parse(PT(e,"utf8")))}catch{return Pm()}}function m0(e){Mc=e,at=OT(e,"plan.md"),mt=a0()}function Io(e){return mt=e,i0(),mt}function UT(){return e=>{e.on("tool_call",async t=>{if(!Am(mt)||t.toolName!=="edit"&&t.toolName!=="write")return;let n=t.input?.path;if(typeof n=="string"&&!(!at||r0(n,at)))return{block:!0,reason:s0(at)}})}}function KT(){return e=>{e.on("session_start",async(t,n)=>{m0(n.sessionManager.getSessionDir())}),e.on("before_agent_start",async()=>{mt.state==="pending"&&Io(e0(mt))}),e.on("context_with_system",async t=>{if(!Am(mt)||!at)return;let n=t.messages[0];if(!n||n.role!=="system")return;let r=o0(at,NT()),o=`${typeof n.content=="string"?n.content:""}
|
|
25
25
|
|
|
26
|
-
${r}`;return{messages:t.messages.map(a=>a===n?{...n,content:o}:a)}})}}function
|
|
27
|
-
`)}],details:{planFile:a}}}}),WT=MT({name:"exit_plan_mode",label:"exit_plan_mode",description:"Present your plan for approval when you have finished planning. The plan is read from the plan file on disk, so write the file first. If the user asks for changes, stay in plan mode and revise it.",promptSnippet:"exit_plan_mode: present the written plan for approval",parameters:
|
|
28
|
-
\u2026 (${i.length-
|
|
29
|
-
`):e==null?"":String(e)}function Mm(e,t){if(Array.isArray(e)){let n=e.map(o=>({...o})),r=n.filter(o=>o.type==="text");if(r.length>0){r[0].text=t;for(let o of r.slice(1))o.text="";return n}return[...n,{type:"text",text:t}]}return t}var
|
|
26
|
+
${r}`;return{messages:t.messages.map(a=>a===n?{...n,content:o}:a)}})}}function u0(){if(at){try{ST(RT(at),{recursive:!0}),Cc(at)||AT(at,"")}catch{return}return at}}var at,mt,Mc,Oc,GT,WT,Lc=m(()=>{yo();mt=Pm();Oc=2e4;GT=MT({name:"enter_plan_mode",label:"enter_plan_mode",description:"Enter plan mode to design an approach before writing code. Use it when a task has genuine ambiguity \u2014 several reasonable designs, or a restructuring where the wrong approach wastes significant effort. Do not use it for a clear fix, a rename, or a task that follows existing conventions. The user must approve entering.",promptSnippet:"enter_plan_mode: design first when the approach is genuinely ambiguous",parameters:ie.Object({}),async execute(e,t,n,r,o){if(mt.state!=="inactive")return{content:[{type:"text",text:`Plan mode is already ${mt.state}.`}],details:{}};if(!o.hasUI)return{content:[{type:"text",text:"Plan mode needs an interactive session: there is no one to approve the plan. Proceed normally."}],details:{},isError:!0};if(!await o.ui.confirm("Enter plan mode?","The agent will explore and design an approach before editing anything."))return{content:[{type:"text",text:"The user declined plan mode. Proceed normally."}],details:{}};Io(t0(mt));let a=u0();return{content:[{type:"text",text:["Plan mode is active. Edits are blocked except for the plan file.",a?`Write your plan to ${a}.`:"Write your plan to the session plan file."].join(`
|
|
27
|
+
`)}],details:{planFile:a}}}}),WT=MT({name:"exit_plan_mode",label:"exit_plan_mode",description:"Present your plan for approval when you have finished planning. The plan is read from the plan file on disk, so write the file first. If the user asks for changes, stay in plan mode and revise it.",promptSnippet:"exit_plan_mode: present the written plan for approval",parameters:ie.Object({}),executionMode:"sequential",async execute(e,t,n,r,o){if(!Am(mt))return{content:[{type:"text",text:"Plan mode is not active."}],details:{},isError:!0};let i=DT();if(!i)return{content:[{type:"text",text:`No plan has been written yet. Write it to ${at??"the plan file"} before exiting plan mode.`}],details:{},isError:!0};if(!o.hasUI)return{content:[{type:"text",text:"Plan approval needs an interactive session."}],details:{},isError:!0};let a=i.length>Oc?`${i.slice(0,Oc)}
|
|
28
|
+
\u2026 (${i.length-Oc} more characters)`:i;return await o.ui.confirm("Approve this plan?",a)?(Io(n0(mt)),{content:[{type:"text",text:"Plan approved. You may now implement it."}],details:{approved:!0,planFile:at}}):{content:[{type:"text",text:"The user did not approve the plan. Stay in plan mode, revise the plan file with the feedback, and present it again."}],details:{approved:!1}}}})});function jc(){return{consecutiveFailures:0,tripped:!1}}function p0(e,t){return t==="manual"?!1:e.consecutiveFailures>=3}function c0(e,t){if(t)return e;let n=e.consecutiveFailures+1;return{consecutiveFailures:n,tripped:e.tripped||n>=3}}function l0(){return jc()}function d0(e){return[`Auto-compaction failed ${e.consecutiveFailures} times in a row, so it is switched off for this session.`,"The context is over the limit and compaction cannot recover it. Start a new session, or switch to a model with a larger context window.","Manual /compact is still allowed."].join(" ")}function zT(){return e=>{e.on("session_start",async()=>{or=jc()}),e.on("session_compact",async()=>{or=l0()}),e.on("session_compact_failed",async(t,n)=>{let r=or;or=c0(or,t.aborted),!r.tripped&&or.tripped&&n?.ui&&n.ui.notify(d0(or),"warning")}),e.on("session_before_compact",async t=>{if(p0(or,t.reason))return{cancel:!0}})}}var or,BT=m(()=>{or=jc()});function Om(e){return typeof e=="string"?e:Array.isArray(e)?e.map(t=>{let n=t;return n.type==="text"&&typeof n.text=="string"?n.text:""}).join(`
|
|
29
|
+
`):e==null?"":String(e)}function Mm(e,t){if(Array.isArray(e)){let n=e.map(o=>({...o})),r=n.filter(o=>o.type==="text");if(r.length>0){r[0].text=t;for(let o of r.slice(1))o.text="";return n}return[...n,{type:"text",text:t}]}return t}var Fc=m(()=>{});function f0(e){nn(bo(e))}function HT(e){return`budget exhausted (${e.budget??"default"} continuations)`}function VT(){return e=>{e.on("session_start",async(t,n)=>{f0(n)}),e.on("context_with_system",async(t,n)=>{let r=bo(n);if(nn(r),!r||r.status!=="active")return;let o=t.messages[0];if(!o||o.role!=="system")return;let i=`${Om(o.content)}
|
|
30
30
|
|
|
31
|
-
${kT(r)}`;return{messages:t.messages.map(p=>p===o?{...o,content:Mm(o.content,i)}:p)}}),e.on("agent_before_settle",async(t,n)=>{let r=
|
|
31
|
+
${kT(r)}`;return{messages:t.messages.map(p=>p===o?{...o,content:Mm(o.content,i)}:p)}}),e.on("agent_before_settle",async(t,n)=>{let r=bo(n);if(nn(r),vm(r).action==="stop"||!r||t.continue||!t.context.canContinue)return;let o={...r,used:r.used+1};if(e.appendEntry(rr,o),nn(o),vm(o).action==="stop"){let i={...o,status:"done",note:HT(o)};e.appendEntry(rr,i),nn(i);return}return{entries:[{type:"custom_message",customType:IT,content:TT(o),display:!0}],continue:!0}}),e.on("agent_settled",async(t,n)=>{let r=bo(n),o=vm(r);if(r&&o.action==="stop"&&o.close){let i={...r,status:"done",note:HT(r)};e.appendEntry(rr,i),nn(i)}else nn(r)})}}var JT=m(()=>{Fc();Sm()});function Cm(){return e=>{e.on("context_with_system",async t=>{let n=yT();if(!n)return;let r=t.messages[0];if(!r||r.role!=="system")return;let o=`${Om(r.content)}
|
|
32
32
|
|
|
33
|
-
${n}`;return{messages:t.messages.map(a=>a===r?{...r,content:Mm(r.content,o)}:a)}})}}var
|
|
34
|
-
`)}function
|
|
35
|
-
${t.result??t.task}`:`no agent ${e}`}async function
|
|
33
|
+
${n}`;return{messages:t.messages.map(a=>a===r?{...r,content:Mm(r.content,o)}:a)}})}}var Dc=m(()=>{Fc();wm()});import{mkdirSync as g0,readdirSync as x0,readFileSync as h0,writeFileSync as y0}from"node:fs";import{join as YT}from"node:path";import{createAgentSession as b0,DefaultResourceLoader as I0,SessionManager as $0}from"@earendil-works/pi-coding-agent";function XT(e){g0(Fr,{recursive:!0}),y0(YT(Fr,`${e.id}.json`),JSON.stringify({...e,session:void 0},null,1))}function ZT(){let e;try{e=x0(Fr)}catch{return}for(let t of e)if(t.endsWith(".json"))try{let n=JSON.parse(h0(YT(Fr,t),"utf8"));if(n.status!=="parked"||rn.some(r=>r.id===n.id))continue;rn.push({...n,mail:n.mail??[]})}catch{}}function qc(){return ZT(),rn.length===0?"no agents":rn.map(e=>`${e.id} ${e.agent} ${e.status} requests=${e.requests} ${e.task}`).join(`
|
|
34
|
+
`)}function _c(e){ZT();let t=rn.find(n=>n.id===e);return t?`${t.agent}#${t.id} ${t.status}
|
|
35
|
+
${t.result??t.task}`:`no agent ${e}`}async function Uc(e){let t=Ar.get(e.agent);if(!t)throw new Error(`unknown agent ${e.agent}`);let n=e.worktree||process.cwd(),r=new I0({cwd:n,agentDir:Xe,extensionFactories:[Cm()]});await r.reload();let{session:o}=await b0({cwd:n,agentDir:Xe,sessionManager:$0.inMemory(n),resourceLoader:r,tools:t.tools,customTools:[$m,Im],thinkingLevel:e.effort});return o}async function QT(e){let t=Ar.get(e.agent);if(!t)throw new Error(`unknown agent ${e.agent}. known: ${[...Ar.keys()].join(", ")}`);let n={id:`${Date.now().toString(36)}-${rn.length+1}`,agent:t.name,task:e.task.trim(),effort:e.effort||t.effort,status:"queued",requests:0,mail:[],worktree:e.worktree};return rn.push(n),XT(n),n}async function E0(e,t){let n=Ar.get(e.agent);if(!n)return;let r=e.session??await Uc(e);e.session=r;try{let o=e.mail.splice(0).join(`
|
|
36
36
|
`);for(await r.prompt(`${n.prompt}
|
|
37
37
|
|
|
38
38
|
Task:
|
|
39
39
|
${e.task}${o?`
|
|
40
40
|
|
|
41
41
|
Messages:
|
|
42
|
-
${o}`:""}`),e.requests+=1;e.mail.length>0&&e.requests<
|
|
43
|
-
`)),e.requests+=1;if(t?.aborted)throw new Error("aborted");e.result=r.getLastAssistantText()?.trim()||"agent finished without text",e.status="parked"}catch(o){e.result=o instanceof Error?o.message:String(o),e.status="error"}finally{XT(e)}}async function eE(e){let t=()=>rn.find(r=>r.status==="queued"),n=async()=>{for(;;){if(e?.aborted)throw new Error("aborted");let r=t();if(!r)return;r.status="running",await
|
|
42
|
+
${o}`:""}`),e.requests+=1;e.mail.length>0&&e.requests<T0;)await r.followUp(e.mail.splice(0).join(`
|
|
43
|
+
`)),e.requests+=1;if(t?.aborted)throw new Error("aborted");e.result=r.getLastAssistantText()?.trim()||"agent finished without text",e.status="parked"}catch(o){e.result=o instanceof Error?o.message:String(o),e.status="error"}finally{XT(e)}}async function eE(e){let t=()=>rn.find(r=>r.status==="queued"),n=async()=>{for(;;){if(e?.aborted)throw new Error("aborted");let r=t();if(!r)return;r.status="running",await E0(r,e)}};if(await Promise.all(Array.from({length:k0},n)),e?.aborted)throw new Error("aborted")}var Nc,w0,Ar,rn,k0,T0,Ss=m(()=>{qn();wm();Dc();Ac();Nc=["You are one agent on a shared task; siblings may be editing the same working tree right now.","Never run project-wide validation (full builds, whole test suites, formatters, linters) unless your assignment explicitly tells you to.","Siblings' unfinished edits will make those runs fail for reasons that are not yours. Prove your own change with a scoped test, a targeted repro, or a smoke run instead."],w0=`You are a software architect planning an implementation. Your job is to explore the codebase and return a plan, not to write code.
|
|
44
44
|
|
|
45
45
|
## Read-only, by construction
|
|
46
46
|
You have no edit tool, no write tool, and no shell. Do not attempt to modify, create, move, or delete anything \u2014 the call would fail. Your output is text.
|
|
@@ -58,65 +58,65 @@ End your reply with exactly this section, listing the 3-5 files most critical to
|
|
|
58
58
|
- path/to/file.ts
|
|
59
59
|
- path/to/file.ts
|
|
60
60
|
|
|
61
|
-
Keep the plan concrete enough to execute without re-deriving it: name real paths and real function names you saw while exploring. If you could not confirm something, say which part you are unsure of instead of guessing.`,
|
|
62
|
-
`),effort:"low"}],["architect",{name:"architect",description:"designs an implementation plan",tools:["read","grep","find","ls","context"],prompt:
|
|
63
|
-
`),effort:"medium"}],["reviewer",{name:"reviewer",description:"finds concrete issues",tools:["read","grep","find","ls","context"],prompt:["Return issues with file evidence. Do not edit.",...
|
|
64
|
-
`),effort:"medium"}]]),rn=[],
|
|
65
|
-
`)}function
|
|
61
|
+
Keep the plan concrete enough to execute without re-deriving it: name real paths and real function names you saw while exploring. If you could not confirm something, say which part you are unsure of instead of guessing.`,Ar=new Map([["scout",{name:"scout",description:"read-only lookup",tools:["read","grep","find","ls","context"],prompt:["Inspect only what the task needs. Do not edit.",...Nc].join(`
|
|
62
|
+
`),effort:"low"}],["architect",{name:"architect",description:"designs an implementation plan",tools:["read","grep","find","ls","context"],prompt:w0,effort:"high"}],["task",{name:"task",description:"implements the assignment",tools:["read","bash","edit","write","grep","find","ls","context","todo"],prompt:["Do the assignment, then report files changed.",...Nc].join(`
|
|
63
|
+
`),effort:"medium"}],["reviewer",{name:"reviewer",description:"finds concrete issues",tools:["read","grep","find","ls","context"],prompt:["Return issues with file evidence. Do not edit.",...Nc].join(`
|
|
64
|
+
`),effort:"medium"}]]),rn=[],k0=3,T0=8});import{execFile as v0}from"node:child_process";import{promisify as S0}from"node:util";import{tmpdir as P0}from"node:os";import{join as A0}from"node:path";async function Pn(e,t){try{let{stdout:n}=await R0("git",t,{cwd:e,encoding:"utf8",maxBuffer:8388608});return{ok:!0,output:n.trim()}}catch(n){let r=n&&typeof n=="object"&&"stderr"in n&&typeof n.stderr=="string"?n.stderr.trim():"",o=n instanceof Error?n.message:String(n);return{ok:!1,output:r||o}}}async function Kc(e){return(await Pn(e,["rev-parse","--is-inside-work-tree"])).output==="true"}async function tE(e){return(await Pn(e,["status","--porcelain"])).output.length>0}async function nE(e,t){let n=await Pn(e,["add","-A"]);if(!n.ok)return n;let r=await Pn(e,["commit","-m",t]);return r.ok?{ok:!0,output:(await Pn(e,["log","-1","--oneline"])).output||r.output}:r}async function rE(e){let t=(await Pn(e,["diff"])).output,n=(await Pn(e,["diff","--cached"])).output;return[t,n].filter(Boolean).join(`
|
|
65
|
+
`)}function oE(e,t=60){let n=e.split(`
|
|
66
66
|
`);if(n.length<=t)return e;let r=n.slice(0,t),o=n.length-t;return[...r,`\u2026 ${o} more line${o===1?"":"s"} not shown \u2014 /copy puts the full diff on the clipboard`].join(`
|
|
67
|
-
`)}function sE(e
|
|
68
|
-
`)}function
|
|
67
|
+
`)}async function sE(e,t){if(!await Kc(e))return null;let n=t.replace(/[^A-Za-z0-9._-]/g,"-").slice(0,40)||"agent",r=A0(P0(),`howtofix-wt-${process.pid}-${Date.now()}-${n}`);return(await Pn(e,["worktree","add","--detach",r,"HEAD"])).ok?{path:r,async remove(){await Pn(e,["worktree","remove","--force",r]),await Pn(e,["worktree","prune"])}}:null}var R0,Gc=m(()=>{R0=S0(v0)});function iE(e){return e===null?"null":Array.isArray(e)?"array":Number.isInteger(e)?"integer":typeof e}function O0(e,t){let n=iE(e);return t==="number"?n==="number"||n==="integer":t==="integer"?n==="integer":n===t}function M0(e,t){if(typeof t!="string"||!t.startsWith("#/"))return;let n=e;for(let r of t.slice(2).split("/")){let o=r.replace(/~1/g,"/").replace(/~0/g,"~");if(!Rr(n)&&!Array.isArray(n))return;n=n[o]}return Rr(n)?n:void 0}function sr(e,t,n,r,o){if(!Rr(t))return;if(t.$ref!==void 0){let a=M0(n,t.$ref);a&&sr(e,a,n,r,o);return}if(Array.isArray(t.allOf))for(let a of t.allOf)sr(e,a,n,r,o);for(let a of["anyOf","oneOf"]){let p=t[a];if(!Array.isArray(p)||p.length===0)continue;let c=p.filter(x=>{let y=[];return sr(e,x,n,r,y),y.length===0}).length;a==="anyOf"&&c===0&&o.push({path:r,message:"does not match any allowed shape"}),a==="oneOf"&&c!==1&&o.push({path:r,message:`must match exactly one shape (matched ${c})`})}let i=t.type;if(i!==void 0){let a=Array.isArray(i)?i.map(String):[String(i)];if(!a.some(p=>O0(e,p))){o.push({path:r,message:`expected ${a.join(" or ")}, got ${iE(e)}`});return}}if(Array.isArray(t.enum)&&!t.enum.some(a=>JSON.stringify(a)===JSON.stringify(e))&&o.push({path:r,message:`must be one of ${t.enum.map(a=>JSON.stringify(a)).join(", ")}`}),Rr(e)){let a=Rr(t.properties)?t.properties:{};if(Array.isArray(t.required))for(let p of t.required.map(String))p in e||o.push({path:r?`${r}.${p}`:p,message:"is required"});for(let[p,c]of Object.entries(a))p in e&&sr(e[p],c,n,r?`${r}.${p}`:p,o);if(t.additionalProperties===!1)for(let p of Object.keys(e))p in a||o.push({path:r?`${r}.${p}`:p,message:"is not an allowed property"});else if(Rr(t.additionalProperties))for(let[p,c]of Object.entries(e))p in a||sr(c,t.additionalProperties,n,r?`${r}.${p}`:p,o)}if(Array.isArray(e)&&t.items!==void 0){let a=t.items;Array.isArray(a)?e.forEach((p,c)=>{c<a.length&&sr(p,a[c],n,`${r}[${c}]`,o)}):e.forEach((p,c)=>sr(p,a,n,`${r}[${c}]`,o))}if(typeof e=="string"&&(typeof t.minLength=="number"&&e.length<t.minLength&&o.push({path:r,message:`is shorter than ${t.minLength} characters`}),typeof t.pattern=="string"))try{new RegExp(t.pattern).test(e)||o.push({path:r,message:`does not match ${t.pattern}`})}catch{}typeof e=="number"&&(typeof t.minimum=="number"&&e<t.minimum&&o.push({path:r,message:`is below ${t.minimum}`}),typeof t.maximum=="number"&&e>t.maximum&&o.push({path:r,message:`is above ${t.maximum}`}))}function aE(e,t){if(!Rr(t))return[];let n=[];return sr(e,t,t,"",n),n}function mE(e){return e.map(t=>`- ${t.path||"(root)"}: ${t.message}`).join(`
|
|
68
|
+
`)}function uE(e){let t=e.trim(),n=/```(?:json)?\s*([\s\S]*?)```/.exec(t),r=[t,n?.[1]?.trim()].filter(o=>!!o);for(let o of r){try{return JSON.parse(o)}catch{}for(let i=0;i<o.length;i++){let a=o[i];if(a!=="{"&&a!=="[")continue;let p=a==="{"?"}":"]",c=0,x=!1,y=!1;for(let S=i;S<o.length;S++){let A=o[S];if(x){y?y=!1:A==="\\"?y=!0:A==='"'&&(x=!1);continue}if(A==='"')x=!0;else if(A===a)c++;else if(A===p&&(c--,c===0))try{return JSON.parse(o.slice(i,S+1))}catch{break}}}}}var Rr,pE=m(()=>{Rr=e=>typeof e=="object"&&e!==null&&!Array.isArray(e)});import*as cE from"node:os";async function j0(e,t=lE,n=dE){let r=Date.now()+n;for(;e.isPaused?.();){if(e.signal?.aborted||Date.now()>=r)return!1;await new Promise(o=>setTimeout(o,t))}return!0}function F0(){let e=cE.availableParallelism?.()??4;return Math.max(1,Math.min(16,e-2))}function D0(e){let t=0,n=[];return async function(){t>=e&&await new Promise(i=>n.push(i)),t++;let o=!1;return()=>{o||(o=!0,t--,n.shift()?.())}}}function fE(e){let t=e.lifetimeCap??C0,n=e.fanoutCap??L0,r=D0(e.concurrency??F0()),o=0,i=0,a="",p=q=>e.onEvent?.(q),c=new Map,x=()=>e.onProgress?.([...c.values()]),y=async(q,re)=>{let ee=re??{},ge=typeof ee.label=="string"?ee.label:`agent-${o+1}`,ke=typeof ee.phase=="string"?ee.phase:a,We=typeof ee.agentType=="string"?ee.agentType:"task",jt=typeof ee.effort=="string"?ee.effort:void 0,xe=typeof ee.model=="string"?ee.model:void 0,Z=typeof ee.isolation=="string"?ee.isolation:void 0,E=ee.schema;if(e.budgetTotal!=null&&i>=e.budgetTotal)throw new Ge(`budget exhausted: spent ${i} of ${e.budgetTotal} output tokens`);if(o>=t)throw new Ge(`lifetime cap reached: ${t} agent calls in one run`);o++;let ze=o;if(e.isPaused?.()&&!await j0(e,lE,dE))return null;let Ft=await r();try{if(e.signal?.aborted)return null;p({kind:"agent_start",label:ge,phase:ke,ordinal:o}),c.set(ze,{label:ge,phase:ke,agentType:We,status:"running",outputTokens:0,...xe?{model:xe}:{},startedAt:Date.now()}),x();let Nn=(Jt,Dt,xt)=>{let Oe=c.get(ze);Oe&&(Oe.status=Jt,Oe.outputTokens=Dt.outputTokens,Oe.endedAt=Date.now(),Dt.toolCalls!==void 0&&(Oe.toolCalls=Dt.toolCalls),Dt.model!==void 0&&(Oe.model=Dt.model),xt&&(Oe.detail=xt)),p({kind:"agent_end",label:ge,ok:Jt==="ok",outputTokens:Dt.outputTokens}),x()},To=E===void 0?1:2;for(let Jt=0;Jt<To;Jt++){let Dt=Jt===0?String(q):void 0,xt=await A(Dt??N0(String(q),S),{label:ge,phase:ke,agentType:We,effort:jt,model:xe,isolation:Z});if(xt===null)return Nn("failed",{text:"",outputTokens:0}),null;if(i+=xt.outputTokens,E===void 0)return Nn("ok",xt,Wc(xt.text)),xt.text;let Oe=uE(xt.text),Eo=Oe===void 0?[{path:"",message:"reply was not JSON"}]:aE(Oe,E);if(Eo.length===0)return Nn("ok",xt,Wc(xt.text)),Oe;if(S=mE(Eo),Jt===To-1)return Nn("failed",xt,`schema: ${Wc(S)}`),null}return null}finally{Ft()}},S="",A=async(q,re)=>{try{return await e.invoke({prompt:q,...re})}catch{return null}};return{agent:(q,re)=>y(q,re),parallel:async q=>{if(q.length>n)throw new Ge(`fan-out cap exceeded: ${q.length} items (max ${n})`);return await Promise.all(q.map(async ee=>{try{return await ee()}catch{return null}}))},pipeline:async(q,...re)=>{if(q.length>n)throw new Ge(`fan-out cap exceeded: ${q.length} items (max ${n})`);return await Promise.all(q.map(async(ge,ke)=>{let We=ge;for(let jt of re)try{We=await jt(We,ge,ke)}catch{return null}return We}))},phase:q=>{a=String(q),p({kind:"phase",title:a})},log:q=>p({kind:"log",message:String(q)}),args:e.args,budget:{total:e.budgetTotal??null,spent:()=>i,remaining:()=>e.budgetTotal==null?1/0:Math.max(0,e.budgetTotal-i)}}}function N0(e,t){return`${e}
|
|
69
69
|
|
|
70
70
|
Your previous reply did not satisfy the required schema:
|
|
71
71
|
${t}
|
|
72
72
|
|
|
73
|
-
Reply with ONLY a corrected JSON value.`}function
|
|
74
|
-
`).map(r=>r.trim()).find(r=>r.length>0)??"";return n.length>t?`${n.slice(0,t)}\u2026`:n}var C0,L0,dE,fE,Ke,xE=m(()=>{cE();C0=1e3,L0=4096,dE=100,fE=300*1e3;Ke=class extends Error{constructor(t){super(t),this.name="WorkflowError"}}});import{parseColor as Dn,styleText as q0}from"@earendil-works/pi-tui";function _0(e,t){return q0(e,t,jm)}function se(e,t,n){return _0(e,{...n,fg:t})}var jm,N,hE,Ps=m(()=>{jm="truecolor",N={text:Dn("#e6e6e6"),mute:Dn("#8b8b8b"),dim:Dn("#5c5c5c"),user:Dn("#d0d0d0"),accent:Dn("#c4b5fd"),tool:Dn("#6ee7b7"),bad:Dn("#f0a8a4"),warn:Dn("#e6b15a"),line:Dn("#3a3a3a")};hE={heading:e=>se(e,N.text,{bold:!0}),link:e=>se(e,N.accent,{underline:!0}),linkUrl:e=>se(e,N.mute),code:e=>se(e,N.text),codeBlock:e=>se(e,N.text),codeBlockBorder:e=>se(e,N.line),quote:e=>se(e,N.mute,{italic:!0}),quoteBorder:e=>se(e,N.line),hr:e=>se(e,N.line),listBullet:e=>se(e,N.mute),bold:e=>se(e,N.text,{bold:!0}),italic:e=>se(e,N.text,{italic:!0}),strikethrough:e=>se(e,N.mute,{strikethrough:!0}),underline:e=>se(e,N.text,{underline:!0})}});import{truncateToWidth as As,visibleWidth as on}from"@earendil-works/pi-tui";function ir(e){let t=Math.max(0,Math.round(e/1e3)),n=Math.floor(t/3600),r=Math.floor(t%3600/60),o=t%60;return n>0?`${n}h${String(r).padStart(2,"0")}m`:r>0?`${r}m${String(o).padStart(2,"0")}s`:`${o}s`}function bE(e){let t=Math.max(0,Math.floor(e/1e3));return t<60?`${t}s`:t<3600?`${Math.floor(t/60)}m`:`${Math.floor(t/3600)}h`}function Vc(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function Dm(e,t,n="left"){if(t<=0)return"";let r=on(e);if(r>t)return As(e,t);let o=" ".repeat(t-r);return n==="right"?o+e:e+o}function Jc(e,t,n,r=1){if(n<=0)return"";let o=on(t);if(o>=n)return As(t,n);let i=n-o-r;if(i<=0)return Dm(t,n,"right");let a=on(e)>i?As(e,i):e,p=" ".repeat(n-on(a)-o);return a+p+t}function Bc(e,t,n){let r=$o(e,Math.max(0,n-2)),o=Math.max(1,n-1-on(r)),i=de("border","\u250C\u2500 ")+de("accent",r)+de("border",` ${"\u2500".repeat(o)}\u2510`),a=de("border",`\u2514${"\u2500".repeat(n+2)}\u2518`),p=de("border","\u2502"),c=t.map(x=>`${p} ${Dm(x,n)} ${p}`);return[i,...c,a]}function K0(e,t,n,r){let o=r?.gap??1,i=r?.leftWidth??Rs(Math.round(n*.38),28,44),a=n-i-o,p=Math.max(e.rows.length,t.rows.length),c=R=>{let C=[...R];for(;C.length<p;)C.push("");return C},x=Bc(e.title,c(e.rows),i-4),y=Bc(t.title,c(t.rows),a-4),S=" ".repeat(o);return x.map((R,C)=>R+S+(y[C]??Dm("",a)))}function $E(e,t,n){switch(e){case"running":return de(t||n?"accent":"muted","\u25CF");case"failed":return de("error","\u2717");default:return de("success","\u2713")}}function wE(e,t,n,r=Date.now(),o=0){return t?r-o<Fm?de("success","\u2713",!0):de("success","\u2713"):de(n?"accent":"dim",String(e))}function wo(e,t=Date.now()){let n=e.phases.map(o=>o.title),r=new Map(e.phases.map(o=>[o.title,o.detail]));for(let o of e.steps){let i=o.phase||IE;n.includes(i)||n.push(i)}return n.map((o,i)=>{let a=e.steps.filter(F=>(F.phase||IE)===o).map(F=>({...F,phaseIndex:i})),p=a.filter(F=>F.status!=="running").length,c=a.filter(F=>F.status==="failed").length,x=a.reduce((F,q)=>{let re=q.endedAt??t;return Math.max(F,re-q.startedAt)},0),y=-1;for(let F=0;F<a.length;F++){let q=a[F];q.status==="running"&&(y<0||q.startedAt>=a[y].startedAt)&&(y=F)}let S=r.get(o),R=a.length>0&&p===a.length&&c===0,C=R?a.reduce((F,q)=>Math.max(F,q.endedAt??0),0):0;return{title:o,...S?{detail:S}:{},agents:a,done:p,failed:c,outputTokens:a.reduce((F,q)=>F+q.outputTokens,0),elapsedMs:x,allDone:R,finishedAt:C,anchor:y}})}function Yc(e){return e.steps.reduce((t,n)=>t+n.outputTokens,0)}function W0(e){return e.steps.reduce((t,n)=>t+(n.toolCalls??0),0)}function kE(e,t=Date.now()){return Math.max(0,(e.endedAt??t)-e.startedAt)}function z0(e){return e.steps.length>U0||Yc(e)>G0}function B0(e){if(e.length===0)return 0;let t=e.map((n,r)=>({group:n,index:r})).filter(n=>n.group.anchor>=0);if(t.length>0)return t.reduce((n,r)=>{let o=r.group.agents[r.group.anchor],i=n.group.agents[n.group.anchor];return o.startedAt>=i.startedAt?r:n}).index;for(let n=e.length-1;n>=0;n--)if(e[n].agents.length>0)return n;return e.length-1}function TE(e,t=Date.now()){let n=wo(e,t),r=e.steps.length,o=e.steps.filter(x=>x.status!=="running").length,i=e.steps.filter(x=>x.status==="failed").length,a=[e.name],p=n.find(x=>x.anchor>=0);p?a.push(`${p.title} ${p.done}/${p.agents.length}`):n.length>0&&a.push(`${n[n.length-1].title} done`),a.push(`${o}/${r} agents`),a.push(`${Vc(Yc(e))} tok`),a.push(ir(kE(e,t))),i>0&&a.push(`${i} failed`);let c=a.join(" \xB7 ");return z0(e)?`large workflow \xB7 ${c}`:c}function vE(e,t){if(e.status==="running"&&e.outputTokens===0)return[`idle ${ir(t-e.startedAt)}`,"idle"];let n=Vc(e.outputTokens),r=e.toolCalls??0,o=ir((e.endedAt??t)-e.startedAt);return[`${n} tok \xB7 ${r} tools \xB7 ${o}`,`${n} tok \xB7 ${r} tools`,`${n} tok`]}function Hc(e,t,n){if(e.length<=n)return{slice:e,start:0,more:0};let r=Math.max(1,n-1),o=Rs(t-Math.floor(r/2),0,e.length-r),i=e.slice(o,o+r);return{slice:i,start:o,more:e.length-i.length}}function Z0(e,t,n,r,o){let i=`${e.done}/${e.agents.length}`,a=n?de("accent","\u276F"):" ",p=wE(t+1,e.allDone,n,o,e.finishedAt),c=Math.max(0,r-4-on(i)),x=on(e.title)>c?As(e.title,c,"\u2026"):e.title,y=e.allDone&&o-e.finishedAt<Fm,S=de(y&&!n?"success":n?"accent":"text",x),R=`${a}${p} ${S}`,C=de(n?"accent":"muted",i);return Jc(R,C,r,1)}function Q0(e,t,n,r,o,i){let a=t?de("accent","\u276F"):" ",p=$E(e.status,t,n),c=de(t?"accent":"text",Dm(e.label,r)),x=`${a}${p} ${c}`,y=Math.max(0,o-on(x)-1),S=vE(e,i).find(C=>on(C)<=y)??"",R=de(t?"accent":X0(e)?"dim":"muted",S);return Jc(x,R,o,1)}function eL(e,t,n,r){let o=[];return e.forEach((i,a)=>{let c=`${wE(a+1,i.allDone,a===n,r,i.finishedAt)} ${de(a===n?"accent":"text",i.title)} ${de("muted",`${i.done}/${i.agents.length}`)}`;o.push($o(c,t));let{slice:x,more:y}=Hc(i.agents,0,EE);x.forEach((S,R)=>{let C=$E(S.status,!1,R===i.anchor),F=vE(S,r)[0]??"";o.push($o(` ${C} ${de("text",S.label)} ${de("muted",F)}`,t))}),y>0&&o.push($o(` ${de("dim",`\u2026+${y} more`)}`,t))}),o}function tL(e,t,n){let r=n?.now??Date.now(),o=wo(e,r),i=e.steps,a=i.filter(ze=>ze.status!=="running").length,p=i.filter(ze=>ze.status==="failed").length,c=[`${a}/${i.length} agents`,`${Vc(Yc(e))} tok`,`${W0(e)} tools`,ir(kE(e,r)),...p>0?[`${p} failed`]:[]].join(" \xB7 "),x=[Jc(de("accent",e.name,!0),de("muted",c),t,2),...e.description?[de("muted",$o(e.description,t))]:[]],y=n?.footer?[de("muted",$o(n.footerText??nL(),t))]:[];if(o.length===0)return[...x,...Bc("Phases",["(no agents yet)"],Math.max(0,t-4)),...y];let S=Rs(n?.selectedPhase??B0(o),0,Math.max(0,o.length-1)),R=Rs(Math.round(t*.38),28,44),C=t-R-1-4;if(t<J0||C<Y0)return[...x,...eL(o,t,S,r),...y];let F=o[S],{slice:q,start:re,more:ee}=Hc(o,S,H0),ge=q.map((ze,Ft)=>Z0(ze,re+Ft,re+Ft===S,R-4,r));ee>0&&ge.push(de("dim",`\u2026+${ee} more`));let ke=n?.filter?n.filter(F.agents):F.agents,We=ke.length?Rs(Math.max(...ke.map(ze=>on(ze.label))),6,V0):6,{slice:jt,more:xe}=Hc(ke,0,n?.agentWindow??EE),Z=jt.map((ze,Ft)=>Q0(ze,!1,Ft===F.anchor,We,C,r));xe>0&&Z.push(de("dim",`\u2026+${xe} more`));let E=K0({title:"Phases",rows:ge},{title:`${F.title} \xB7 ${ke.length} agents${n?.filterLabel??""}`,rows:Z},t,{leftWidth:R,gap:1});return[...x,...E,...y]}function SE(e,t=[],n=96,r,o){let i=tL(e,n,{now:e.endedAt??Date.now(),footer:!0,...r===void 0?{}:{selectedPhase:r},...o?.filter?{filter:o.filter}:{},...o?.footerText?{footerText:o.footerText}:{},...o?.filterLabel?{filterLabel:o.filterLabel}:{}}),a=new Set(t);if(o?.drill){let c=wo(e,e.endedAt??Date.now()),x=c[Math.max(0,Math.min(c.length-1,r??0))];for(let y of x?.agents??[])a.add(y.label)}if(a.size===0)return i;let p=[];for(let c of e.steps)if(a.has(c.label)){for(let x of c.tasks??[]){let y=x.status==="completed"?"[x]":x.status==="in_progress"?"[>]":"[ ]";p.push(` ${de("muted",y)} ${de("text",x.content)}`)}c.detail&&p.push(` ${de("dim",c.detail)}`)}return p.length===0?i:[...i.slice(0,-1),...p,i[i.length-1]]}function nL(){return"\u2191/\u2193 phase \xB7 Enter drill in \xB7 Esc back out \xB7 f filter by status \xB7 p pause \xB7 x stop \xB7 s save script"}var yE,de,U0,G0,Fm,Rs,$o,IE,EE,H0,V0,J0,Y0,X0,Os=m(()=>{Ps();yE={text:N.text,muted:N.mute,dim:N.dim,accent:N.accent,success:N.tool,error:N.bad,border:N.line},de=(e,t,n=!1)=>n?se(t,yE[e],{bold:!0}):se(t,yE[e]),U0=25,G0=15e5,Fm=420;Rs=(e,t,n)=>Math.max(t,Math.min(n,e)),$o=(e,t)=>on(e)>t?As(e,Math.max(0,t),"\u2026"):e;IE="Workflow";EE=16,H0=12,V0=18,J0=72,Y0=24;X0=e=>e.status==="running"&&e.outputTokens===0});import{readFileSync as rL}from"node:fs";import{basename as oL}from"node:path";import{StringEnum as sL}from"@earendil-works/pi-ai";import{defineTool as iL}from"@earendil-works/pi-coding-agent";function RE(e){PE=e}function mL(e){let t=e.replace(/^(?:\s+|\/\/[^\n]*\n|\/\*[\s\S]*?\*\/)*/,""),n=/^export\s+const\s+meta\s*=\s*/.exec(t);if(!n)throw new Ke("a workflow script must start with `export const meta = { name, description }`");let r=e.length-t.length,o=n[0].length,i=0,a=null,p=-1;for(let C=o;C<t.length;C++){let F=t[C];if(a){F==="\\"?C++:F===a&&(a=null);continue}if(F==='"'||F==="'"||F==="`")a=F;else if(F==="{"||F==="[")i++;else if((F==="}"||F==="]")&&(i--,i===0)){p=C+1;break}}if(p===-1)throw new Ke("meta is not a closed literal object");let c=t.slice(o,p),x=e.slice(r+p).replace(/^\s*;/,"");if(/^\s*(import|export)\b/m.test(x))throw new Ke("a workflow body must not contain import or export declarations");if(/\bimport\s*\(/.test(x))throw new Ke("a workflow body must not use dynamic import()");let y;try{y=new Function(`"use strict"; return (${c});`)()}catch(C){throw new Ke(`meta must be a literal object: ${C instanceof Error?C.message:String(C)}`)}if(typeof y!="object"||y===null)throw new Ke("meta must be an object");let S=y;if(typeof S.name!="string"||!S.name.trim())throw new Ke("meta.name is required");if(typeof S.description!="string"||!S.description.trim())throw new Ke("meta.description is required");let R=Array.isArray(S.phases)?S.phases.filter(C=>typeof C=="object"&&C!==null).map(C=>({title:String(C.title??""),...typeof C.detail=="string"?{detail:C.detail}:{}})).filter(C=>C.title):void 0;return{meta:{name:S.name,description:S.description,...typeof S.whenToUse=="string"?{whenToUse:S.whenToUse}:{},...R?{phases:R}:{}},body:x}}function uL(e){let t=["agent","parallel","pipeline","phase","log","args","budget"],n=`"use strict"; return (async () => {
|
|
73
|
+
Reply with ONLY a corrected JSON value.`}function Wc(e,t=80){let n=e.split(`
|
|
74
|
+
`).map(r=>r.trim()).find(r=>r.length>0)??"";return n.length>t?`${n.slice(0,t)}\u2026`:n}var C0,L0,lE,dE,Ge,gE=m(()=>{pE();C0=1e3,L0=4096,lE=100,dE=300*1e3;Ge=class extends Error{constructor(t){super(t),this.name="WorkflowError"}}});import{parseColor as Dn,styleText as q0}from"@earendil-works/pi-tui";function _0(e,t){return q0(e,t,Lm)}function oe(e,t,n){return _0(e,{...n,fg:t})}var Lm,N,xE,Ps=m(()=>{Lm="truecolor",N={text:Dn("#e6e6e6"),mute:Dn("#8b8b8b"),dim:Dn("#5c5c5c"),user:Dn("#d0d0d0"),accent:Dn("#c4b5fd"),tool:Dn("#6ee7b7"),bad:Dn("#f0a8a4"),warn:Dn("#e6b15a"),line:Dn("#3a3a3a")};xE={heading:e=>oe(e,N.text,{bold:!0}),link:e=>oe(e,N.accent,{underline:!0}),linkUrl:e=>oe(e,N.mute),code:e=>oe(e,N.text),codeBlock:e=>oe(e,N.text),codeBlockBorder:e=>oe(e,N.line),quote:e=>oe(e,N.mute,{italic:!0}),quoteBorder:e=>oe(e,N.line),hr:e=>oe(e,N.line),listBullet:e=>oe(e,N.mute),bold:e=>oe(e,N.text,{bold:!0}),italic:e=>oe(e,N.text,{italic:!0}),strikethrough:e=>oe(e,N.mute,{strikethrough:!0}),underline:e=>oe(e,N.text,{underline:!0})}});import{truncateToWidth as Rs,visibleWidth as on}from"@earendil-works/pi-tui";function ir(e){let t=Math.max(0,Math.round(e/1e3)),n=Math.floor(t/3600),r=Math.floor(t%3600/60),o=t%60;return n>0?`${n}h${String(r).padStart(2,"0")}m`:r>0?`${r}m${String(o).padStart(2,"0")}s`:`${o}s`}function bE(e){let t=Math.max(0,Math.floor(e/1e3));return t<60?`${t}s`:t<3600?`${Math.floor(t/60)}m`:`${Math.floor(t/3600)}h`}function Hc(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function Fm(e,t,n="left"){if(t<=0)return"";let r=on(e);if(r>t)return Rs(e,t);let o=" ".repeat(t-r);return n==="right"?o+e:e+o}function Vc(e,t,n,r=1){if(n<=0)return"";let o=on(t);if(o>=n)return Rs(t,n);let i=n-o-r;if(i<=0)return Fm(t,n,"right");let a=on(e)>i?Rs(e,i):e,p=" ".repeat(n-on(a)-o);return a+p+t}function zc(e,t,n){let r=$o(e,Math.max(0,n-2)),o=Math.max(1,n-1-on(r)),i=de("border","\u250C\u2500 ")+de("accent",r)+de("border",` ${"\u2500".repeat(o)}\u2510`),a=de("border",`\u2514${"\u2500".repeat(n+2)}\u2518`),p=de("border","\u2502"),c=t.map(x=>`${p} ${Fm(x,n)} ${p}`);return[i,...c,a]}function G0(e,t,n,r){let o=r?.gap??1,i=r?.leftWidth??As(Math.round(n*.38),28,44),a=n-i-o,p=Math.max(e.rows.length,t.rows.length),c=A=>{let C=[...A];for(;C.length<p;)C.push("");return C},x=zc(e.title,c(e.rows),i-4),y=zc(t.title,c(t.rows),a-4),S=" ".repeat(o);return x.map((A,C)=>A+S+(y[C]??Fm("",a)))}function IE(e,t,n){switch(e){case"running":return de(t||n?"accent":"muted","\u25CF");case"failed":return de("error","\u2717");default:return de("success","\u2713")}}function $E(e,t,n,r=Date.now(),o=0){return t?r-o<jm?de("success","\u2713",!0):de("success","\u2713"):de(n?"accent":"dim",String(e))}function wo(e,t=Date.now()){let n=e.phases.map(o=>o.title),r=new Map(e.phases.map(o=>[o.title,o.detail]));for(let o of e.steps){let i=o.phase||yE;n.includes(i)||n.push(i)}return n.map((o,i)=>{let a=e.steps.filter(F=>(F.phase||yE)===o).map(F=>({...F,phaseIndex:i})),p=a.filter(F=>F.status!=="running").length,c=a.filter(F=>F.status==="failed").length,x=a.reduce((F,q)=>{let re=q.endedAt??t;return Math.max(F,re-q.startedAt)},0),y=-1;for(let F=0;F<a.length;F++){let q=a[F];q.status==="running"&&(y<0||q.startedAt>=a[y].startedAt)&&(y=F)}let S=r.get(o),A=a.length>0&&p===a.length&&c===0,C=A?a.reduce((F,q)=>Math.max(F,q.endedAt??0),0):0;return{title:o,...S?{detail:S}:{},agents:a,done:p,failed:c,outputTokens:a.reduce((F,q)=>F+q.outputTokens,0),elapsedMs:x,allDone:A,finishedAt:C,anchor:y}})}function Jc(e){return e.steps.reduce((t,n)=>t+n.outputTokens,0)}function W0(e){return e.steps.reduce((t,n)=>t+(n.toolCalls??0),0)}function wE(e,t=Date.now()){return Math.max(0,(e.endedAt??t)-e.startedAt)}function z0(e){return e.steps.length>U0||Jc(e)>K0}function B0(e){if(e.length===0)return 0;let t=e.map((n,r)=>({group:n,index:r})).filter(n=>n.group.anchor>=0);if(t.length>0)return t.reduce((n,r)=>{let o=r.group.agents[r.group.anchor],i=n.group.agents[n.group.anchor];return o.startedAt>=i.startedAt?r:n}).index;for(let n=e.length-1;n>=0;n--)if(e[n].agents.length>0)return n;return e.length-1}function kE(e,t=Date.now()){let n=wo(e,t),r=e.steps.length,o=e.steps.filter(x=>x.status!=="running").length,i=e.steps.filter(x=>x.status==="failed").length,a=[e.name],p=n.find(x=>x.anchor>=0);p?a.push(`${p.title} ${p.done}/${p.agents.length}`):n.length>0&&a.push(`${n[n.length-1].title} done`),a.push(`${o}/${r} agents`),a.push(`${Hc(Jc(e))} tok`),a.push(ir(wE(e,t))),i>0&&a.push(`${i} failed`);let c=a.join(" \xB7 ");return z0(e)?`large workflow \xB7 ${c}`:c}function EE(e,t){if(e.status==="running"&&e.outputTokens===0)return[`idle ${ir(t-e.startedAt)}`,"idle"];let n=Hc(e.outputTokens),r=e.toolCalls??0,o=ir((e.endedAt??t)-e.startedAt);return[`${n} tok \xB7 ${r} tools \xB7 ${o}`,`${n} tok \xB7 ${r} tools`,`${n} tok`]}function Bc(e,t,n){if(e.length<=n)return{slice:e,start:0,more:0};let r=Math.max(1,n-1),o=As(t-Math.floor(r/2),0,e.length-r),i=e.slice(o,o+r);return{slice:i,start:o,more:e.length-i.length}}function Z0(e,t,n,r,o){let i=`${e.done}/${e.agents.length}`,a=n?de("accent","\u276F"):" ",p=$E(t+1,e.allDone,n,o,e.finishedAt),c=Math.max(0,r-4-on(i)),x=on(e.title)>c?Rs(e.title,c,"\u2026"):e.title,y=e.allDone&&o-e.finishedAt<jm,S=de(y&&!n?"success":n?"accent":"text",x),A=`${a}${p} ${S}`,C=de(n?"accent":"muted",i);return Vc(A,C,r,1)}function Q0(e,t,n,r,o,i){let a=t?de("accent","\u276F"):" ",p=IE(e.status,t,n),c=de(t?"accent":"text",Fm(e.label,r)),x=`${a}${p} ${c}`,y=Math.max(0,o-on(x)-1),S=EE(e,i).find(C=>on(C)<=y)??"",A=de(t?"accent":X0(e)?"dim":"muted",S);return Vc(x,A,o,1)}function eL(e,t,n,r){let o=[];return e.forEach((i,a)=>{let c=`${$E(a+1,i.allDone,a===n,r,i.finishedAt)} ${de(a===n?"accent":"text",i.title)} ${de("muted",`${i.done}/${i.agents.length}`)}`;o.push($o(c,t));let{slice:x,more:y}=Bc(i.agents,0,TE);x.forEach((S,A)=>{let C=IE(S.status,!1,A===i.anchor),F=EE(S,r)[0]??"";o.push($o(` ${C} ${de("text",S.label)} ${de("muted",F)}`,t))}),y>0&&o.push($o(` ${de("dim",`\u2026+${y} more`)}`,t))}),o}function tL(e,t,n){let r=n?.now??Date.now(),o=wo(e,r),i=e.steps,a=i.filter(ze=>ze.status!=="running").length,p=i.filter(ze=>ze.status==="failed").length,c=[`${a}/${i.length} agents`,`${Hc(Jc(e))} tok`,`${W0(e)} tools`,ir(wE(e,r)),...p>0?[`${p} failed`]:[]].join(" \xB7 "),x=[Vc(de("accent",e.name,!0),de("muted",c),t,2),...e.description?[de("muted",$o(e.description,t))]:[]],y=n?.footer?[de("muted",$o(n.footerText??nL(),t))]:[];if(o.length===0)return[...x,...zc("Phases",["(no agents yet)"],Math.max(0,t-4)),...y];let S=As(n?.selectedPhase??B0(o),0,Math.max(0,o.length-1)),A=As(Math.round(t*.38),28,44),C=t-A-1-4;if(t<J0||C<Y0)return[...x,...eL(o,t,S,r),...y];let F=o[S],{slice:q,start:re,more:ee}=Bc(o,S,H0),ge=q.map((ze,Ft)=>Z0(ze,re+Ft,re+Ft===S,A-4,r));ee>0&&ge.push(de("dim",`\u2026+${ee} more`));let ke=n?.filter?n.filter(F.agents):F.agents,We=ke.length?As(Math.max(...ke.map(ze=>on(ze.label))),6,V0):6,{slice:jt,more:xe}=Bc(ke,0,n?.agentWindow??TE),Z=jt.map((ze,Ft)=>Q0(ze,!1,Ft===F.anchor,We,C,r));xe>0&&Z.push(de("dim",`\u2026+${xe} more`));let E=G0({title:"Phases",rows:ge},{title:`${F.title} \xB7 ${ke.length} agents${n?.filterLabel??""}`,rows:Z},t,{leftWidth:A,gap:1});return[...x,...E,...y]}function vE(e,t=[],n=96,r,o){let i=tL(e,n,{now:e.endedAt??Date.now(),footer:!0,...r===void 0?{}:{selectedPhase:r},...o?.filter?{filter:o.filter}:{},...o?.footerText?{footerText:o.footerText}:{},...o?.filterLabel?{filterLabel:o.filterLabel}:{}}),a=new Set(t);if(o?.drill){let c=wo(e,e.endedAt??Date.now()),x=c[Math.max(0,Math.min(c.length-1,r??0))];for(let y of x?.agents??[])a.add(y.label)}if(a.size===0)return i;let p=[];for(let c of e.steps)if(a.has(c.label)){for(let x of c.tasks??[]){let y=x.status==="completed"?"[x]":x.status==="in_progress"?"[>]":"[ ]";p.push(` ${de("muted",y)} ${de("text",x.content)}`)}c.detail&&p.push(` ${de("dim",c.detail)}`)}return p.length===0?i:[...i.slice(0,-1),...p,i[i.length-1]]}function nL(){return"\u2191/\u2193 phase \xB7 Enter drill in \xB7 Esc back out \xB7 f filter by status \xB7 p pause \xB7 x stop \xB7 s save script"}var hE,de,U0,K0,jm,As,$o,yE,TE,H0,V0,J0,Y0,X0,Os=m(()=>{Ps();hE={text:N.text,muted:N.mute,dim:N.dim,accent:N.accent,success:N.tool,error:N.bad,border:N.line},de=(e,t,n=!1)=>n?oe(t,hE[e],{bold:!0}):oe(t,hE[e]),U0=25,K0=15e5,jm=420;As=(e,t,n)=>Math.max(t,Math.min(n,e)),$o=(e,t)=>on(e)>t?Rs(e,Math.max(0,t),"\u2026"):e;yE="Workflow";TE=16,H0=12,V0=18,J0=72,Y0=24;X0=e=>e.status==="running"&&e.outputTokens===0});import{readFileSync as rL}from"node:fs";import{basename as oL}from"node:path";import{StringEnum as sL}from"@earendil-works/pi-ai";import{defineTool as iL}from"@earendil-works/pi-coding-agent";function PE(e){SE=e}function mL(e){let t=e.replace(/^(?:\s+|\/\/[^\n]*\n|\/\*[\s\S]*?\*\/)*/,""),n=/^export\s+const\s+meta\s*=\s*/.exec(t);if(!n)throw new Ge("a workflow script must start with `export const meta = { name, description }`");let r=e.length-t.length,o=n[0].length,i=0,a=null,p=-1;for(let C=o;C<t.length;C++){let F=t[C];if(a){F==="\\"?C++:F===a&&(a=null);continue}if(F==='"'||F==="'"||F==="`")a=F;else if(F==="{"||F==="[")i++;else if((F==="}"||F==="]")&&(i--,i===0)){p=C+1;break}}if(p===-1)throw new Ge("meta is not a closed literal object");let c=t.slice(o,p),x=e.slice(r+p).replace(/^\s*;/,"");if(/^\s*(import|export)\b/m.test(x))throw new Ge("a workflow body must not contain import or export declarations");if(/\bimport\s*\(/.test(x))throw new Ge("a workflow body must not use dynamic import()");let y;try{y=new Function(`"use strict"; return (${c});`)()}catch(C){throw new Ge(`meta must be a literal object: ${C instanceof Error?C.message:String(C)}`)}if(typeof y!="object"||y===null)throw new Ge("meta must be an object");let S=y;if(typeof S.name!="string"||!S.name.trim())throw new Ge("meta.name is required");if(typeof S.description!="string"||!S.description.trim())throw new Ge("meta.description is required");let A=Array.isArray(S.phases)?S.phases.filter(C=>typeof C=="object"&&C!==null).map(C=>({title:String(C.title??""),...typeof C.detail=="string"?{detail:C.detail}:{}})).filter(C=>C.title):void 0;return{meta:{name:S.name,description:S.description,...typeof S.whenToUse=="string"?{whenToUse:S.whenToUse}:{},...A?{phases:A}:{}},body:x}}function uL(e){let t=["agent","parallel","pipeline","phase","log","args","budget"],n=`"use strict"; return (async () => {
|
|
75
75
|
${e}
|
|
76
|
-
})();`,r;try{r=new Function(...t,n)}catch(o){throw new
|
|
76
|
+
})();`,r;try{r=new Function(...t,n)}catch(o){throw new Ge(`workflow did not compile: ${o instanceof Error?o.message:String(o)}`)}return r}function pL(e){return e.getLastAssistantText()?.trim()??""}function cL(){return async({prompt:e,agentType:t,effort:n,model:r,isolation:o})=>{let i=Ar.get(t)??Ar.get("task");if(!i)throw new Ge(`no agent named ${t}`);let a=o==="worktree"?await sE(process.cwd(),t):null,p=await Uc({agent:i.name,effort:n??i.effort,...a?{worktree:a.path}:{}});try{await p.prompt(`${i.prompt}
|
|
77
77
|
|
|
78
78
|
Task:
|
|
79
|
-
${e}`);let c=p.getSessionStats(),x=r??lL(p);return{text:pL(p),outputTokens:c.tokens.output,toolCalls:c.toolCalls,...x?{model:x}:{}}}finally{p.dispose(),a?.remove()}}}function lL(e){return e.model?.id??e.model?.name}function AE(e){let t=()=>e??
|
|
79
|
+
${e}`);let c=p.getSessionStats(),x=r??lL(p);return{text:pL(p),outputTokens:c.tokens.output,toolCalls:c.toolCalls,...x?{model:x}:{}}}finally{p.dispose(),await a?.remove()}}}function lL(e){return e.model?.id??e.model?.name}function AE(e){let t=()=>e??SE;return iL({name:"workflow",label:"workflow",description:"Run a JavaScript workflow that orchestrates many agents deterministically. Provide `code` (or `path`). The script starts with `export const meta = { name, description, phases }` and then uses the injected bindings: `agent(prompt, {label, phase, schema, effort, model, agentType, isolation})`, `parallel(thunks)`, `pipeline(items, ...stages)`, `phase(title)`, `log(msg)`, `args`, `budget`. `agent()` resolves null on failure and throws only when the budget or the call cap is exhausted, so null-check every result. `parallel()` takes thunks and never rejects; `pipeline()` has no barrier between items. Use it for fan-out, for builder-verifier loops that converge on a verdict, and for anything needing many agents whose order and count must be deterministic.",promptSnippet:"workflow: orchestrate many agents from one JavaScript script",parameters:dL,executionMode:"sequential",async execute(n,r,o,i,a){let p=r.path?rL(r.path,"utf8"):r.code??"";if(!p.trim())throw new Ge("provide code or path");let{meta:c,body:x}=mL(p);if(r.path){let xe=oL(r.path).replace(/\.(js|mjs|cjs|ts)$/,"");if(xe!==c.name)throw new Ge(`meta.name "${c.name}" must match the script filename "${xe}"`)}let y=uL(x),S=Date.now(),A=[],C=0,F=0,q=(xe,Z)=>({name:c.name,...c.description?{description:c.description}:{},ok:xe,agents:F,outputTokens:C,startedAt:S,phases:c.phases??[],steps:A,...Z?{error:Z}:{}}),re=(xe,Z)=>{a.ui.setStatus(Yc,Z?void 0:kE(xe)),i?.({content:[],details:q(!1)})},ee=xe=>{F=xe.length,C=xe.reduce((Z,E)=>Z+E.outputTokens,0),A.splice(0,A.length,...xe.map(Z=>({label:Z.label,phase:Z.phase,agent:Z.agentType,status:Z.status,outputTokens:Z.outputTokens,startedAt:Z.startedAt,...Z.toolCalls!==void 0?{toolCalls:Z.toolCalls}:{},...Z.model?{model:Z.model}:{},...Z.endedAt?{endedAt:Z.endedAt}:{},...Z.detail?{detail:Z.detail}:{},...Z.tasks?{tasks:Z.tasks}:{}}))),re({name:c.name,...c.description?{description:c.description}:{},phases:c.phases??[],steps:A,startedAt:S},!1)},ge=cL(),ke=fE({invoke:r.agent?fL(ge,r.agent):ge,budgetTotal:r.budget??null,onProgress:ee,...o?{signal:o}:{},...t()?.isPaused?{isPaused:t().isPaused}:{}}),We=new AbortController,jt=setTimeout(()=>We.abort(),aL);o&&o.addEventListener("abort",()=>We.abort(),{once:!0}),t()?.onStop?.(()=>We.abort());try{let xe=await Promise.race([y(ke.agent,ke.parallel,ke.pipeline,ke.phase,ke.log,ke.args,ke.budget),new Promise((E,ze)=>We.signal.addEventListener("abort",()=>ze(new Ge("workflow timed out or was aborted"))))]),Z=Date.now();return a.ui.setStatus(Yc,void 0),{content:[{type:"text",text:`${c.name}: ${F} agent call(s), ${C} output tokens in ${ir(Z-S)}
|
|
80
80
|
|
|
81
|
-
${gL(xe)}`}],details:{...q(!0),endedAt:Z}}}catch(xe){let Z=xe instanceof Error?xe.message:String(xe);return a.ui.setStatus(
|
|
81
|
+
${gL(xe)}`}],details:{...q(!0),endedAt:Z}}}catch(xe){let Z=xe instanceof Error?xe.message:String(xe);return a.ui.setStatus(Yc,void 0),{content:[{type:"text",text:`${c.name} failed after ${F} agent call(s): ${Z}`}],details:{...q(!1,Z),endedAt:Date.now()},isError:!0}}finally{clearTimeout(jt),t()?.onStop?.(null)}}})}function fL(e,t){return n=>e({...n,agentType:t})}function gL(e){if(typeof e=="string")return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}var Yc,SE,aL,dL,Xc=m(()=>{yo();Ss();Gc();gE();Os();Yc="workflow",SE=null;aL=600*1e3;dL=ie.Object({code:ie.Optional(ie.String({description:"The workflow script source"})),path:ie.Optional(ie.String({description:"Path to a workflow script, instead of code"})),agent:ie.Optional(sL(["scout","task","reviewer"],{description:"Default agent profile for calls"})),budget:ie.Optional(ie.Number({description:"Output-token ceiling for the whole run"}))})});import{Type as Tt}from"@earendil-works/pi-ai";import{defineTool as xL}from"@earendil-works/pi-coding-agent";var RE,OE=m(()=>{Ss();Ss();RE=xL({name:"task",label:"task",description:"Spawn scout, architect, task, or reviewer agents. One call can carry tasks[]. Each item can set agent and effort. Agents run in the background, park when done, and can be resumed with /agents. Use architect to design an approach before a large change.",promptSnippet:"task: spawn background agents",parameters:Tt.Object({agent:Tt.Optional(Tt.String()),effort:Tt.Optional(Tt.String()),task:Tt.Optional(Tt.String()),tasks:Tt.Optional(Tt.Array(Tt.Object({agent:Tt.Optional(Tt.String()),effort:Tt.Optional(Tt.String()),task:Tt.String()})))}),executionMode:"parallel",async execute(e,t,n,r){let o=t.tasks&&t.tasks.length>0?t.tasks.map(p=>({agent:p.agent??t.agent??"task",task:p.task,effort:p.effort??t.effort})):[{agent:t.agent??"task",task:t.task??"",effort:t.effort}],i=[];for(let p of o)p.task.trim()&&(i.push(await QT(p)),r?.({content:[],details:{agents:i.map(c=>({id:c.id,agent:c.agent,status:c.status}))}}));if(i.length===0)throw new Error("task or tasks is required");return await eE(n),{content:[{type:"text",text:i.map(p=>`## ${p.agent}#${p.id} ${p.status}
|
|
82
82
|
${p.result??""}`).join(`
|
|
83
83
|
|
|
84
|
-
`)}],details:{agents:i.map(p=>({id:p.id,status:p.status}))}}}})});var
|
|
85
|
-
`):void 0}}var kL,
|
|
86
|
-
`,"utf8")}function
|
|
87
|
-
`);c=await sn(e,["commit-tree",r,"-m",
|
|
88
|
-
`)){let i=/^Removing\s+(.+)$/.exec(o.trim());i?.[1]&&n.push(i[1])}}catch{}return{ok:!0,output:`restored ${t.prompt||"the checkpoint"}`,removed:n}}async function
|
|
89
|
-
`).filter(Boolean).map(o=>{let[i,...a]=o.split(" ");return`${i?.[0]??"?"} ${a.at(-1)??""}`})}catch{return[]}}async function
|
|
90
|
-
`)[0]??"";return i.length>40?`${i.slice(0,40)}\u2026`:i}default:return
|
|
91
|
-
`))r.startsWith("+")&&!r.startsWith("+++")?t+=1:r.startsWith("-")&&!r.startsWith("---")&&(n+=1);return{additions:t,removals:n}}function
|
|
92
|
-
`).find(t=>t.trim())??""}function BL(e,t){let n=typeof e.output=="string"?e.output:t.replace(/\n*Command exited with code \d+\s*$/,""),r=
|
|
93
|
-
`).length:0}function ko(e,t,n){let r=
|
|
94
|
-
`).find(c=>c.trim());return Cs(p??"failed",120)}switch(e){case"read":{let a=o.truncation,p=
|
|
95
|
-
`).find(p=>p.trim());return a?Cs(a,120):"done"}}}function
|
|
96
|
-
`).filter(r=>r.length>0).slice(0,12);if(e==="bash"||e==="powershell"){let r=
|
|
97
|
-
`).filter(a=>a.trim()).slice(-4)}if(e==="todo"){let r=n.todos??[],o={pending:"[ ]",in_progress:"[>]",completed:"[x]",dropped:"[-]"};return r.slice(0,6).map(i=>`${o[i.status??"pending"]??"[ ]"} ${i.content??""}`)}return e==="workflow"?(n.steps??[]).map(i=>{let a=i.status==="running"?"\u25B8":i.status==="failed"?"\xD7":"\u2713",p=i.phase?`${i.phase} \xB7 `:"";return`${a} ${p}${i.label??"agent"}`}).slice(-6):[]}var
|
|
98
|
-
|
|
99
|
-
${r}`:r}):n.errorMessage&&t.push({id:`e-${n.timestamp}`,kind:"error",title:"failed",body:n.errorMessage}),o.forEach((i,a)=>{t.push({id:`c-${n.timestamp}-${a}`,kind:"tool",title:"tool",body:Ls(i.name,i.arguments)})})}else n.role==="toolResult"&&t.push({id:`r-${n.toolCallId}`,kind:"result",title:n.toolName,body:ko(n.toolName,{content:n.content},n.isError)});return t}function mv(e,t,n){return VL(e,Math.max(8,t)).map(r=>se(r,n))}function YL(e){let t=e.body||" ",n=js.get(e.id);if(n)return n.text!==t&&(n.component.setText(t),n.text=t),n.component;let r=new HL(t,0,0,hE);return js.set(e.id,{text:t,component:r}),r}var js,ll,Km,uv=m(()=>{rl();Ps();cl();js=new Map;ll=class{constructor(t){this.item=t}item;invalidate(){}shade(t){let n=Date.now()-(this.item.born??0);return Ms(N.dim,t,UE(n,tl))}render(t){let n=this.item.body;if(this.item.kind==="user")return["",...mv(`> ${n}`,t,this.shade(N.user))];if(this.item.kind==="tool")return[se(n,this.shade(N.tool))];if(this.item.kind==="result"){let o=n.startsWith("exit ")&&n!=="exit 0";if(this.item.panel)return["",...this.item.panel(t),...n?[se(` ${ul} ${n}`,o?N.bad:N.mute)]:[]];let i=[];this.item.call&&i.push(se(this.item.call,this.shade(N.tool)));let a=` ${ul} ${n}`;i.push(se(a,o?N.bad:this.shade(N.mute)));let p=this.item.detail??[],c=nl(Date.now()-(this.item.born??0),p.length);for(let x of p.slice(0,c)){let y=x.startsWith("+")?N.tool:x.startsWith("-")?N.bad:N.dim;i.push(se(` ${x}`,this.shade(y)))}return i}if(this.item.kind==="error"||this.item.kind==="note"){let o=this.item.kind==="error"?N.bad:N.mute;return["",...mv(n,t,this.shade(o))]}return["",...YL(this.item).render(Math.max(8,t-2))]}},Km=class{items=[];status="";scrollOffset=0;viewportHeight=0;invalidate(){}entering(){let t=Date.now();return this.items.some(n=>{if(n.born===void 0)return!1;let r=t-n.born;return GE(r,tl)?!0:(n.detail?.length??0)>nl(r,n.detail?.length??0)})}render(t){if(js.size>this.items.length){let o=new Set(this.items.map(i=>i.id));for(let i of js.keys())o.has(i)||js.delete(i)}let n=[];for(let o of this.items)o.born??=Date.now(),n.push(...new ll(o).render(t));this.status&&n.push(se(this.status,N.mute));let r=this.viewportHeight;if(r>0&&n.length>r){let o=n.length-r,i=Math.max(0,Math.min(this.scrollOffset,o));return this.scrollOffset=i,n.slice(o-i,o-i+r)}return this.scrollOffset=0,n}}});function ut(e,t){return`${t}${e}${cv}`}function ZL(e){return e>=85?XL:e>=70?dv:lv}function fv(e,t,n,r){let o=ut(`[${e}]`,fl),i=ut(`${QL} ${t}`,An),a=ut(n,dv),p=r?` ${ut("git:(",pv)}${ut(r.replace(/^git:\(/,"").replace(/\)$/,""),fl)}${ut(")",pv)}`:"";return`${o}${ut(" \u2502 ",An)}${i}${ut(" \u2502 ",An)}${a}${p}`}function gv(e,t,n){if(!t)return e;let r=n===void 0?t:`${t} ${ut(bE(n),An)}`;return`${ut(r,fl)} ${ut("\u2502",An)} ${e}`}function xv(e,t){let n=Number.isFinite(e)?Math.min(100,Math.max(0,e)):0,r=Math.round(n/10),o=ZL(n),i=`${o}${"\u2588".repeat(r)}${An}${"\u2591".repeat(10-r)}${cv}`,a=ut(`${Math.round(n)}%`,o),p=t?`${ut(" \u2502 ",An)}${t}`:"";return`${ut("Context",An)} ${i} ${a}${p}`}function hv(e,t,n){let r=n===null?"":ut(` ${n}ms`,An);return`${ut("Cubence",An)} ${ut(t?`${t} ${e}`:e,lv)}${r}`}var cv,An,XL,lv,dv,pv,fl,QL,gl=m(()=>{Os();cv="\x1B[0m",An="\x1B[2m",XL="\x1B[31m",lv="\x1B[32m",dv="\x1B[33m",pv="\x1B[35m",fl="\x1B[36m";QL="\u2726"});import{mkdirSync as ej,readFileSync as Iv,writeFileSync as tj}from"node:fs";import{homedir as nj}from"node:os";import{dirname as rj,join as oj}from"node:path";function yv(e){return e/1e6}function ij(){try{let e=JSON.parse(Iv(oj(nj(),".claude","settings.json"),"utf8")),t=e.env?.ANTHROPIC_AUTH_TOKEN,n=e.env?.ANTHROPIC_BASE_URL;return!t||!n?void 0:{token:t,baseUrl:n.replace(/\/$/,"")}}catch{return}}function aj(){try{let e=JSON.parse(Iv(xl,"utf8"));return!e.data||typeof e.cachedAt!="number"?void 0:{data:e.data,cachedAt:e.cachedAt}}catch{return}}function Fs(e){let t=`$${e.balanceDollar.toFixed(2)}`,n=e.hasSubscription?`5h $${e.fiveHourUsedDollar.toFixed(2)}/$${e.fiveHourLimitDollar.toFixed(2)} bal`:"";return hv(t,n,e.latencyMs)}async function bv(){let e=aj();if(e&&Date.now()-e.cachedAt<sj)return Fs(e.data);let t=ij();if(!t)return e?Fs(e.data):void 0;let n=Date.now();try{let r=await fetch(`${t.baseUrl}/v1/user/subscription-info`,{headers:{authorization:`Bearer ${t.token}`,accept:"application/json"},signal:AbortSignal.timeout(3e3)});if(!r.ok)return e?Fs(e.data):void 0;let o=await r.json(),i=o.subscription_window?.five_hour?.limit??0,a={balanceDollar:o.normal_balance?.amount_dollar??0,hasSubscription:i>0,fiveHourUsedDollar:yv(o.subscription_window?.five_hour?.used??0),fiveHourLimitDollar:yv(i),latencyMs:Date.now()-n};return ej(rj(xl),{recursive:!0}),tj(xl,JSON.stringify({data:a,cachedAt:Date.now()})),Fs(a)}catch{return e?Fs(e.data):void 0}}var xl,sj,$v=m(()=>{qn();gl();xl=mu,sj=18e4});function wv(){return{}}function kv(e,t,n,r=Date.now()){let o={...e};return t==="run"?(n===void 0||n===""?delete o.run:o.run={label:n,since:e.run?.since??r},o):(n===void 0||n===""?delete o[t]:o[t]=n,o)}function mj(e){let t=Math.max(0,Math.round(e/1e3)),n=Math.floor(t/60);return n>0?`${n}m ${String(t%60).padStart(2,"0")}s`:`${t}s`}function Tv(e,t,n=Date.now()){return e.prompt?`? ${e.prompt}`:e.note?`* ${e.note}`:e.run?`${t} ${e.run.label} \xB7 ${mj(n-e.run.since)}`:e.tally?e.tally:""}var Ev=m(()=>{});import{spawn as uj}from"node:child_process";function pj(e){switch(e){case"darwin":return{command:"open",args:[]};case"win32":return{command:"cmd",args:["/c","start",""]};case"linux":return{command:"xdg-open",args:[]};default:return}}async function vv(e,t=process.platform){let n=pj(t);return n?new Promise(r=>{try{let o=uj(n.command,[...n.args,e],{detached:!0,stdio:"ignore"});o.once("error",()=>r(!1)),o.once("spawn",()=>{o.unref(),r(!0)})}catch{r(!1)}}):!1}var Sv=m(()=>{});import{mkdirSync as cj,writeFileSync as lj}from"node:fs";import{join as dj}from"node:path";import{matchesKey as Wm}from"@earendil-works/pi-tui";function Rv(){return{selectedPhase:0,filter:"all",paused:!1,expanded:!1,follow:!0}}function Av(e){if(Wm(e,"up"))return"up";if(Wm(e,"down"))return"down";if(Wm(e,"enter"))return"enter";if(Wm(e,"escape"))return"escape";if(e==="f")return"filter";if(e==="p")return"pause";if(e==="x")return"stop";if(e==="s")return"save"}function Pv(e,t,n){if(t.length===0)return e;let r=Math.max(0,Math.min(t.length-1,e.selectedPhase+n));return{...e,selectedPhase:r,follow:!1}}function fj(e){let t=hl.indexOf(e);return hl[(t+1)%hl.length]}function Ov(e,t,n){switch(t){case"up":return Pv(e,n,-1);case"down":return Pv(e,n,1);case"enter":return{...e,expanded:!e.expanded};case"filter":return{...e,filter:fj(e.filter)};case"pause":return{...e,paused:!e.paused};default:return e}}function Mv(e,t){switch(t){case"running":return e.filter(n=>n.status==="running");case"failed":return e.filter(n=>n.status==="failed");case"done":return e.filter(n=>n.status!=="running");default:return[...e]}}function Cv(e){return e==="all"?"":` \xB7 ${e}`}function jv(e,t,n=!0){if(!n)return"Ctrl+F panel keys \xB7 Esc unpin";let r=["\u2191/\u2193 phase",e.expanded?"Enter collapse":"Enter drill in"];return r.push(e.expanded?"Esc back out":"Esc unpin"),r.push(`f filter${e.filter==="all"?"":` (${e.filter})`}`),t?(r.push(e.paused?"p resume":"p pause"),r.push("x stop")):e.paused&&r.push("p resume"),r.push("s save script"),e.paused&&r.unshift("paused"),r.join(" \xB7 ")}function gj(e){let t=e.trim();if(!(!t||t.length>64)&&!(t==="."||t==="..")&&/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(t)&&!t.includes(".."))return t}function Fv(e,t){if(!e)return{ok:!1,reason:"this run was started from a file, so it is already saved where you pointed the tool"};let n=gj(e.name);if(!n)return{ok:!1,reason:`"${e.name}" is not a usable filename, so the script was not written`};let r=dj(t,`${n}.js`);try{cj(t,{recursive:!0}),lj(r,e.code,"utf8")}catch(o){return{ok:!1,reason:o instanceof Error?o.message:String(o)}}return{ok:!0,path:r}}var hl,Lv,Dv=m(()=>{hl=["all","running","failed","done"];Lv="ctrl+f"});function Nv(e){let t=()=>{};return{select:(n,r)=>e.select(n,r),confirm:(n,r)=>e.confirm(n,r),input:n=>e.input(n),notify:(n,r)=>e.notify(n,r),onTerminalInput:()=>t,setStatus:(n,r)=>e.setStatus(n,r),setWorkingMessage:t,setWorkingVisible:t,setWorkingIndicator:t,setHiddenThinkingLabel:t,setWidget:(n,r,o)=>{r!==void 0&&!Array.isArray(r)||e.setWidget?.(n,r,o?.placement)},setFooter:t,setHeader:t,setTitle:t,custom:async()=>{throw new Error("this screen has no custom component host; use the text commands instead")},pasteToEditor:t,setEditorText:t,getEditorText:()=>"",editor:async()=>{},addAutocompleteProvider:t,setEditorComponent:t,getEditorComponent:()=>{},theme:void 0,getAllThemes:()=>[],getTheme:()=>{},setTheme:()=>({success:!1,error:"themes are not available in the workbench"}),getToolsExpanded:()=>!1,setToolsExpanded:t}}var qv=m(()=>{});var Jv={};Ot(Jv,{Dock:()=>Hm,Hud:()=>Bm,approvalDetail:()=>Hv,orderModelsForDefault:()=>zv,pickerPanel:()=>Bv,runWorkbench:()=>Kj,workflowPanel:()=>Vv,workflowPanelFromRun:()=>qs,workflowRunOf:()=>Vm});import{execFile as xj,execFileSync as hj}from"node:child_process";import{promisify as yj}from"node:util";import{existsSync as Ij,mkdirSync as bj,readFileSync as $j,writeFileSync as yl}from"node:fs";import{basename as wj,join as _v,resolve as kj}from"node:path";import{copyToClipboard as Tj,SessionManager as Ej}from"@earendil-works/pi-coding-agent";import{CombinedAutocompleteProvider as Uv,Container as vj,Editor as Sj,matchesKey as Vt,ProcessTerminal as Pj,ScrollView as Rj,KeybindingsManager as Aj,setKeybindings as Oj,TUI_KEYBINDINGS as Mj,SelectList as Cj,TuiAltScreen as Lj,truncateToWidth as Ns,VStack as jj,visibleWidth as zm,wrapTextWithAnsi as Fj,getNativeClipboard as Dj}from"@earendil-works/pi-tui";function Nj(e){if(typeof e!="object"||e===null)return;let t=e[Wv];return typeof t=="function"?t.call(e):void 0}async function bl(e){try{let{stdout:t}=await Kv("git",["-C",e,"rev-parse","--abbrev-ref","HEAD"],{encoding:"utf8"}),n=t.trim();if(!n||n==="HEAD")return"";let{stdout:r}=await Kv("git",["-C",e,"status","--porcelain"],{encoding:"utf8"});return`git:(${n}${r.trim()?"*":""})`}catch{return null}}function zv(e){let t=n=>{if(_j.test(n))return 100;let r=qj.findIndex(o=>n.toLowerCase().includes(o));return r===-1?50:r};return e.map((n,r)=>({id:n,index:r})).sort((n,r)=>t(n.id)-t(r.id)||n.index-r.index).map(n=>n.id)}function Bv(e,t,n,r=!1,o=[]){let i=Math.max(24,n),a=i-4,p=(re,ee)=>{let ge=zm(re)>a?Ns(re,a,"\u2026"):re,ke=`${ge}${" ".repeat(Math.max(0,a-zm(ge)))}`;return`\u2502 ${ee?ee(ke):ke} \u2502`},c="\u2500".repeat(i-2),x=[p(` ${t}`),...e.render(a).map(re=>p(re))],y=o.flatMap(re=>re===""?[""]:Fj(re,a)),S=y.length>0?[p(""),...y.map(re=>p(re,ee=>se(ee,N.mute)))]:[];if(!r)return["",`\u250C${c}\u2510`,...x,...S,`\u2514${c}\u2518`];let R=KE(N.line,N.warn,Date.now(),1400),C=se("\u2502",R),F=(re,ee)=>se(`${re}${c}${ee}`,R),q=[...x,...S].map(re=>`${C}${re.slice(1,-1)}${C}`);return["",F("\u250C","\u2510"),...q,F("\u2514","\u2518")]}function Hv(e,t){let n=t.split(`
|
|
100
|
-
`).filter(Boolean),r=n.filter(a=>a.startsWith("Reason:")),o=n.filter(a=>!a.startsWith("Reason:")&&!a.startsWith("Allow tool:"));return[...e.endsWith(" wants to run")?[]:[e],...r,...o.length>0?["",...o]:[]]}function Ds(e){let t=e.getContextUsage();if(t?.percent!==null&&t?.percent!==void 0)return Math.min(100,Math.round(t.percent));let n=e.model,r=[...e.state.messages].reverse().find(o=>o.role==="assistant")?.usage;return!n||!r||n.contextWindow<=0?0:Math.min(100,Math.round(r.totalTokens/n.contextWindow*100))}function
|
|
101
|
-
removed ${g.removed.length} file(s): ${g.removed.slice(0,3).join(", ")}`:"";
|
|
84
|
+
`)}],details:{agents:i.map(p=>({id:p.id,status:p.status}))}}}})});var ME={};Ot(ME,{openSession:()=>EL});import{join as hL}from"node:path";import{createAgentSession as yL,createCodemodeExtension as bL,createMcpExtension as IL,DefaultResourceLoader as $L,SessionManager as Dm,SettingsManager as wL}from"@earendil-works/pi-coding-agent";function TL(e,t){let n=e.find(o=>`${o.provider}/${o.id}`===t||o.id===t);if(n)return n;let r=t.toLowerCase();return e.find(o=>o.id.toLowerCase().includes(r)||`${o.provider}/${o.id}`.toLowerCase().includes(r))}async function EL(e){let t=wL.create(e.cwd,Xe,{projectTrusted:!0}),n=e.sessionPath?Dm.open(e.sessionPath):e.noSession?Dm.inMemory(e.cwd):e.continueSession?Dm.continueRecent(e.cwd):Dm.create(e.cwd),r=new $L({cwd:e.cwd,agentDir:Xe,settingsManager:t,appendSystemPrompt:[Ol],extensionFactories:[UT(),Au(),id(),Cm(),VT(),KT(),zT(),bL(),IL()]});await r.reload();let o=await yL({cwd:e.cwd,agentDir:Xe,settingsManager:t,sessionManager:n,resourceLoader:r,tools:kL,customTools:[RE,pd,cd,Im,$m,vT,GT,WT,AE()],thinkingLevel:e.thinking}),i=o.session.model;if(e.model){let c=await o.session.modelRuntime.getAvailable(),x=TL(c,e.model);if(!x)throw o.session.dispose(),new Error(`unknown model '${e.model}'`);(i?.id!==x.id||i.provider!==x.provider)&&(await o.session.setModel(x),i=o.session.model)}let a=i?`${i.provider}/${i.id}`:"no model",p=[o.modelFallbackMessage].filter(c=>!!c);return i||p.push(`no model configured. run \`howtofix\` and use /login, or edit ${hL(Xe,"models.json")}`),{session:o.session,dispose:()=>o.session.dispose(),modelLabel:a,note:p.length?p.join(`
|
|
85
|
+
`):void 0}}var kL,CE=m(()=>{vo();ad();qn();ri();Ou();Ac();wm();Sm();Lc();BT();JT();Dc();Xc();OE();kL=["read","bash","edit","write","grep","find","ls","task","think","ask","todo","context","goal","enter_plan_mode","exit_plan_mode","workflow"]});import{mixColors as vL,styleText as LE}from"@earendil-works/pi-tui";function Ms(e,t,n){let r=qE(n);return r>=1?t:r<=0?e:vL(e,t,r)}function Qc(e,t,n,r){return!Or||e<=Zc?t:e>=DE?r:Ms(n,r,(e-Zc)/(DE-Zc))}function _E(e,t){return!Or||t<=0||e<0?1:1-(1-qE(e/t))**3}function UE(e,t){return Or&&e>=0&&e<t}function tl(e,t,n=PL,r=400){return!Or||n<=0||e<0||e>=r?t:Math.min(t,Math.floor(e/n)+1)}function KE(e,t,n=Date.now(),r=1400){if(!Or||r<=0)return e;let o=n%r/r;return Ms(e,t,o<.5?o*2:(1-o)*2)}function AL(e,t){let n=Math.abs(e-t);return n>=jE?0:Math.ceil((1-n/jE)*NE)/NE}function GE(e,t,n=Date.now()){let r=t.charMs??SL;if(!Or||e.length===0||r<=0)return LE(e,{fg:t.base},Lm);let o=e.length+FE*2,i=n/r%o-FE,a=(A,C)=>LE(A,{fg:Ms(t.base,t.bright,C)},Lm),p="",c=0,x=null,y=0,S=0;for(let A of e){let C=AL(S,i);x===null?x=C:C!==x&&(p+=a(e.slice(c,y),x),c=y,x=C),y+=A.length,S+=1}return p+a(e.slice(c),x??0)}var Or,SL,jE,FE,Zc,DE,NE,qE,Nm,el,PL,nl=m(()=>{Ps();Or=process.env.HOWTOFIX_NO_MOTION!=="1",SL=45,jE=5,FE=8,Zc=1e4,DE=6e4,NE=3,qE=e=>e<0?0:e>1?1:e;Nm=class{value;velocity=0;last=Date.now();target;constructor(t,n=t){this.value=t,this.target=n}set(t){this.target=t}get moving(){return Math.abs(this.target-this.value)>.15}snap(t){this.value=t,this.target=t,this.velocity=0,this.last=Date.now()}step(t=Date.now()){let n=Math.max(0,t-this.last),r=Math.min(250,n)/1e3;if(this.last=t,!Or)return this.value=this.target,this.velocity=0,this.value;n>250&&(this.velocity=0);let o=150,i=2*Math.sqrt(o),a=Math.max(1,Math.ceil(r/.008)),p=r/a;for(let c=0;c<a;c+=1)this.velocity+=(this.target-this.value)*o*p-this.velocity*i*p,this.value+=this.velocity*p;return this.moving||(this.value=this.target,this.velocity=0),this.value}};el=260,PL=45});import{execFile as RL,execFileSync as OL}from"node:child_process";import{promisify as ML}from"node:util";import{createHash as zE}from"node:crypto";import{copyFileSync as CL,existsSync as rl,mkdirSync as qm,readFileSync as LL,statSync as jL,writeFileSync as FL}from"node:fs";import{dirname as BE,join as An,resolve as HE}from"node:path";function NL(e){let t=HE(e);for(;;){if(rl(An(t,".git")))return!0;let n=BE(t);if(n===t)return!1;t=n}}async function sn(e,t){let n={...process.env};for(let o of["GIT_DIR","GIT_WORK_TREE","GIT_INDEX_FILE","GIT_OBJECT_DIRECTORY","GIT_ALTERNATE_OBJECT_DIRECTORIES","GIT_NAMESPACE","GIT_COMMON_DIR"])delete n[o];n.GIT_DIR=e.gitDir,n.GIT_WORK_TREE=e.root,n.GIT_AUTHOR_NAME=n.GIT_COMMITTER_NAME="howtofix",n.GIT_AUTHOR_EMAIL=n.GIT_COMMITTER_EMAIL="howtofix@local";let{stdout:r}=await qL("git",t,{cwd:e.root,env:n,encoding:"utf8",maxBuffer:8*1024*1024});return r.trim()}function _L(e){return zE("sha1").update(e).digest("hex").slice(0,16)}function VE(e){let t=HE(e).replace(/\/+$/,"")||"/",n=An(DL,_L(t)),r=An(n,"git"),o={root:t,gitDir:r,metaFile:An(n,"checkpoints.json"),disabled:!1};return!rl(An(r,"HEAD"))&&!NL(t)?(o.disabled=!0,o):(qm(n,{recursive:!0}),rl(An(r,"HEAD"))||(qm(r,{recursive:!0}),OL("git",["init","--quiet","--initial-branch=howtofix"],{env:{...process.env,GIT_DIR:r},stdio:["ignore","ignore","pipe"]})),UL(t,r),o)}function UL(e,t){let n=An(e,".git","info","exclude");try{if(!jL(n).isFile())return;qm(An(t,"info"),{recursive:!0}),CL(n,An(t,"info","exclude"))}catch{}}function sl(e){try{let t=JSON.parse(LL(e.metaFile,"utf8"));if(t?.version===1&&t.sessions)return t}catch{}return{version:1,sessions:{}}}function JE(e,t){qm(BE(e.metaFile),{recursive:!0}),FL(e.metaFile,`${JSON.stringify(t,null,1)}
|
|
86
|
+
`,"utf8")}function il(e,t){return e.disabled?[]:[...sl(e).sessions[t]??[]].sort((n,r)=>n.at-r.at)}async function YE(e,t,n){if(e.disabled)return null;let r;try{await sn(e,["add","-A","--ignore-errors","--"]),r=await sn(e,["write-tree"])}catch{return null}let i=il(e,t).find(A=>A.tree===r),a=Date.now(),p=`${a.toString(36)}-${zE("sha1").update(`${r}:${a}`).digest("hex").slice(0,6)}`,c=i?.commit;if(!c){let A=["howtofix checkpoint",`session ${t}`,`created ${new Date(a).toISOString()}`,`prompt ${n.slice(0,200)}`].join(`
|
|
87
|
+
`);c=await sn(e,["commit-tree",r,"-m",A]),await sn(e,["update-ref",`${ol}/${p}`,c])}let x={id:p,tree:r,commit:c,prompt:n,at:a},y=sl(e),S=[...y.sessions[t]??[],x];for(let A of S.slice(0,Math.max(0,S.length-WE)))try{await sn(e,["update-ref","-d",`${ol}/${A.id}`])}catch{}return y.sessions[t]=S.slice(-WE),JE(e,y),x}async function XE(e,t){let n=[];if(e.disabled)return{ok:!1,output:"checkpoints are off: this directory is not a git repository",removed:n};try{await sn(e,["read-tree","--reset","-u",t.tree])}catch(r){return{ok:!1,output:r instanceof Error?r.message:String(r),removed:n}}try{let r=await sn(e,["clean","-fd"]);for(let o of r.split(`
|
|
88
|
+
`)){let i=/^Removing\s+(.+)$/.exec(o.trim());i?.[1]&&n.push(i[1])}}catch{}return{ok:!0,output:`restored ${t.prompt||"the checkpoint"}`,removed:n}}async function ZE(e,t){if(e.disabled)return[];try{await sn(e,["add","-A","--ignore-errors","--"]);let n=await sn(e,["write-tree"]);return n===t.tree?[]:(await sn(e,["diff-tree","-r","--name-status","--no-commit-id",t.tree,n])).split(`
|
|
89
|
+
`).filter(Boolean).map(o=>{let[i,...a]=o.split(" ");return`${i?.[0]??"?"} ${a.at(-1)??""}`})}catch{return[]}}async function QE(e,t){if(e.disabled)return;let n=sl(e);for(let r of n.sessions[t]??[])try{await sn(e,["update-ref","-d",`${ol}/${r.id}`])}catch{}delete n.sessions[t],JE(e,n)}var DL,ol,WE,qL,ev=m(()=>{qn();DL=An(Xe,"rewind"),ol="refs/howtofix",WE=100;qL=ML(RL)});function ul(e=90){let t=Math.floor(Date.now()/e)%al.length;return al[t]??al[0]}function Cs(e,t){let n=e.replace(/\s+/g," ").trim();return n.length>t?`${n.slice(0,Math.max(1,t-1))}\u2026`:n}function Ye(e,t){if(e&&typeof e=="object"){let n=e[t];if(typeof n=="string"&&n.length>0)return n;if(typeof n=="number")return String(n)}}function KL(e,t=160){if(!e||typeof e!="object")return"";try{let n=JSON.stringify(e);return n&&n!=="{}"?Cs(n,t):""}catch{return""}}function GL(e,t){switch(e){case"read":{let n=Ye(t,"path")??"",r=[Ye(t,"offset"),Ye(t,"limit")].filter(Boolean);return r.length>0?`${n} ${r.length===1?`offset=${r[0]}`:`offset=${r[0]}, limit=${r[1]}`}`:n}case"edit":case"write":return Ye(t,"path")??"";case"bash":case"powershell":return Ye(t,"command")??"";case"grep":{let n=Ye(t,"pattern")??"",r=Ye(t,"path");return r?`${n} in ${r}`:n}case"find":case"glob":{let n=Ye(t,"pattern")??Ye(t,"glob")??"",r=Ye(t,"path");return r?`${n} in ${r}`:n}case"ls":return Ye(t,"path")??".";case"task":return Ye(t,"agent")??"task";case"ask":return Ye(t,"question")??"";case"think":return"private";case"todo":{let n=Ye(t,"op")??"view",r=Ye(t,"task"),o=t?.items;return n==="init"&&Array.isArray(o)?`init ${o.length} task${o.length===1?"":"s"}`:r?`${n} ${r}`:n}case"context":{let n=Ye(t,"op")??"list",r=Ye(t,"key");return r?`${n} ${r}`:n}case"workflow":{let n=Ye(t,"path");if(n)return n;let r=Ye(t,"code")??"",o=/export\s+const\s+meta\s*=\s*\{[\s\S]*?name\s*:\s*["'`]([^"'`]+)/.exec(r)?.[1];if(o)return o;let i=r.trim().split(`
|
|
90
|
+
`)[0]??"";return i.length>40?`${i.slice(0,40)}\u2026`:i}default:return KL(t)}}function Ls(e,t,n=100){let r=e.charAt(0).toUpperCase()+e.slice(1),o=Cs(GL(e,t),n);return o?`${tv} ${r}(${o})`:`${tv} ${r}`}function WL(e){let t=0,n=0;for(let r of e.split(`
|
|
91
|
+
`))r.startsWith("+")&&!r.startsWith("+++")?t+=1:r.startsWith("-")&&!r.startsWith("---")&&(n+=1);return{additions:t,removals:n}}function rv(e){let t=e?.content;return typeof t=="string"?t:Array.isArray(t)?t.map(n=>n&&typeof n=="object"&&n.type==="text"?String(n.text??""):"").join(""):""}function Um(e){let t=e?.details;return t&&typeof t=="object"?t:{}}function ov(e){let t=e?.structuredContent;return t&&typeof t=="object"?t:{}}function nv(e){let t=e.exit_code;return typeof t=="number"&&Number.isFinite(t)?t:void 0}function zL(e){return e.trim().split(`
|
|
92
|
+
`).find(t=>t.trim())??""}function BL(e,t){let n=typeof e.output=="string"?e.output:t.replace(/\n*Command exited with code \d+\s*$/,""),r=_m(n);return r>0?` (${r} line${r===1?"":"s"})`:""}function _m(e){let t=e.trim();return t?t.split(`
|
|
93
|
+
`).length:0}function ko(e,t,n){let r=rv(t),o=Um(t),i=ov(t);if(n){let a=nv(i);if(a!==void 0&&(e==="bash"||e==="powershell"))return`exit ${a}`;let p=r.trim().split(`
|
|
94
|
+
`).find(c=>c.trim());return Cs(p??"failed",120)}switch(e){case"read":{let a=o.truncation,p=_m(r.replace(/\n*\[[^\]]*\]\s*$/,"")),c=p===0?"empty":`${p} line${p===1?"":"s"}`;return a?.truncated?`${c} (truncated from ${a.totalLines??"?"})`:c}case"edit":{let a=typeof o.diff=="string"?o.diff:"";if(!a)return"applied";let{additions:p,removals:c}=WL(a);return`+${p} / -${c}`}case"write":{let a=_m(r);return a>0?`written (${a} lines)`:"written"}case"bash":case"powershell":{let a=nv(i);if(a===void 0)return r.trim()?Cs(zL(r),120):"done";let p=BL(i,r);return a===0?`exit 0${p}`:`exit ${a}`}case"grep":{let a=_m(r);return a===0?"no matches":`${a} match${a===1?"":"es"}`}case"todo":{let a=o.todos??[];if(!Array.isArray(a)||a.length===0)return"list cleared";let p=a.filter(x=>x.status==="completed").length,c=a.filter(x=>x.status==="pending"||x.status==="in_progress").length;return`${p}/${a.length} done, ${c} open`}case"context":{let a=o.notes,p=a?Object.keys(a).length:0;return p===0?"no notes":`${p} note${p===1?"":"s"} held`}case"workflow":{let a=typeof o.agents=="number"?o.agents:0,p=typeof o.outputTokens=="number"?o.outputTokens:0,c=Array.isArray(o.steps)?o.steps.filter(y=>y.status==="failed").length:0;if(typeof o.error=="string")return`failed after ${a} agent(s)`;let x=typeof o.startedAt=="number"&&typeof o.endedAt=="number"?`, ${ir(o.endedAt-o.startedAt)}`:"";return`${a} agent(s), ${p} tokens${x}${c>0?`, ${c} failed`:""}`}default:{let a=r.trim().split(`
|
|
95
|
+
`).find(p=>p.trim());return a?Cs(a,120):"done"}}}function sv(e,t){let n=Um(t);if(e==="edit"&&typeof n.diff=="string")return n.diff.split(`
|
|
96
|
+
`).filter(r=>r.length>0).slice(0,12);if(e==="bash"||e==="powershell"){let r=ov(t);return(typeof r.output=="string"?r.output:rv(t).replace(/\n*Command exited with code \d+\s*$/,"")).trimEnd().split(`
|
|
97
|
+
`).filter(a=>a.trim()).slice(-4)}if(e==="todo"){let r=n.todos??[],o={pending:"[ ]",in_progress:"[>]",completed:"[x]",dropped:"[-]"};return r.slice(0,6).map(i=>`${o[i.status??"pending"]??"[ ]"} ${i.content??""}`)}return e==="workflow"?(n.steps??[]).map(i=>{let a=i.status==="running"?"\u25B8":i.status==="failed"?"\xD7":"\u2713",p=i.phase?`${i.phase} \xB7 `:"";return`${a} ${p}${i.label??"agent"}`}).slice(-6):[]}var tv,ml,al,pl=m(()=>{Os();tv="\u25CF",ml="\u2514",al=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]});import{Markdown as HL,wrapTextWithAnsi as VL}from"@earendil-works/pi-tui";function iv(e){return typeof e=="string"?e:e.map(t=>t.type==="text"?t.text:t.type==="thinking"?"":t.type==="image"?"[image]":(t.type==="toolCall","")).filter(Boolean).join("")}function JL(e){return e.content.filter(t=>t.type==="toolCall").map(t=>({name:t.name,arguments:t.arguments}))}function ll(e){let t=[];for(let n of e)if(n.role==="user"){let r=iv(n.content).trim();if(!r)continue;t.push({id:`u-${n.timestamp}`,kind:"user",title:"you",body:r})}else if(n.role==="assistant"){let r=iv(n.content).trim(),o=JL(n);r?t.push({id:`a-${n.timestamp}`,kind:n.stopReason==="error"?"error":"assistant",title:n.errorMessage?"failed":"fix",body:n.errorMessage?`${n.errorMessage}
|
|
98
|
+
|
|
99
|
+
${r}`:r}):n.errorMessage&&t.push({id:`e-${n.timestamp}`,kind:"error",title:"failed",body:n.errorMessage}),o.forEach((i,a)=>{t.push({id:`c-${n.timestamp}-${a}`,kind:"tool",title:"tool",body:Ls(i.name,i.arguments)})})}else n.role==="toolResult"&&t.push({id:`r-${n.toolCallId}`,kind:"result",title:n.toolName,body:ko(n.toolName,{content:n.content},n.isError)});return t}function av(e,t,n){return VL(e,Math.max(8,t)).map(r=>oe(r,n))}function YL(e){let t=e.body||" ",n=js.get(e.id);if(n)return n.text!==t&&(n.component.setText(t),n.text=t),n.component;let r=new HL(t,0,0,xE);return js.set(e.id,{text:t,component:r}),r}var js,cl,Km,mv=m(()=>{nl();Ps();pl();js=new Map;cl=class{constructor(t){this.item=t}item;invalidate(){}shade(t){let n=Date.now()-(this.item.born??0);return Ms(N.dim,t,_E(n,el))}render(t){let n=this.item.body;if(this.item.kind==="user")return["",...av(`> ${n}`,t,this.shade(N.user))];if(this.item.kind==="tool")return[oe(n,this.shade(N.tool))];if(this.item.kind==="result"){let o=n.startsWith("exit ")&&n!=="exit 0";if(this.item.panel)return["",...this.item.panel(t),...n?[oe(` ${ml} ${n}`,o?N.bad:N.mute)]:[]];let i=[];this.item.call&&i.push(oe(this.item.call,this.shade(N.tool)));let a=` ${ml} ${n}`;i.push(oe(a,o?N.bad:this.shade(N.mute)));let p=this.item.detail??[],c=tl(Date.now()-(this.item.born??0),p.length);for(let x of p.slice(0,c)){let y=x.startsWith("+")?N.tool:x.startsWith("-")?N.bad:N.dim;i.push(oe(` ${x}`,this.shade(y)))}return i}if(this.item.kind==="error"||this.item.kind==="note"){let o=this.item.kind==="error"?N.bad:N.mute;return["",...av(n,t,this.shade(o))]}return["",...YL(this.item).render(Math.max(8,t-2))]}},Km=class{items=[];status="";scrollOffset=0;viewportHeight=0;invalidate(){}entering(){let t=Date.now();return this.items.some(n=>{if(n.born===void 0)return!1;let r=t-n.born;return UE(r,el)?!0:(n.detail?.length??0)>tl(r,n.detail?.length??0)})}render(t){if(js.size>this.items.length){let o=new Set(this.items.map(i=>i.id));for(let i of js.keys())o.has(i)||js.delete(i)}let n=[];for(let o of this.items)o.born??=Date.now(),n.push(...new cl(o).render(t));this.status&&n.push(oe(this.status,N.mute));let r=this.viewportHeight;if(r>0&&n.length>r){let o=n.length-r,i=Math.max(0,Math.min(this.scrollOffset,o));return this.scrollOffset=i,n.slice(o-i,o-i+r)}return this.scrollOffset=0,n}}});function ut(e,t){return`${t}${e}${pv}`}function ZL(e){return e>=85?XL:e>=70?lv:cv}function dv(e,t,n,r){let o=ut(`[${e}]`,dl),i=ut(`${QL} ${t}`,Rn),a=ut(n,lv),p=r?` ${ut("git:(",uv)}${ut(r.replace(/^git:\(/,"").replace(/\)$/,""),dl)}${ut(")",uv)}`:"";return`${o}${ut(" \u2502 ",Rn)}${i}${ut(" \u2502 ",Rn)}${a}${p}`}function fv(e,t,n){if(!t)return e;let r=n===void 0?t:`${t} ${ut(bE(n),Rn)}`;return`${ut(r,dl)} ${ut("\u2502",Rn)} ${e}`}function gv(e,t){let n=Number.isFinite(e)?Math.min(100,Math.max(0,e)):0,r=Math.round(n/10),o=ZL(n),i=`${o}${"\u2588".repeat(r)}${Rn}${"\u2591".repeat(10-r)}${pv}`,a=ut(`${Math.round(n)}%`,o),p=t?`${ut(" \u2502 ",Rn)}${t}`:"";return`${ut("Context",Rn)} ${i} ${a}${p}`}function xv(e,t,n){let r=n===null?"":ut(` ${n}ms`,Rn);return`${ut("Cubence",Rn)} ${ut(t?`${t} ${e}`:e,cv)}${r}`}var pv,Rn,XL,cv,lv,uv,dl,QL,fl=m(()=>{Os();pv="\x1B[0m",Rn="\x1B[2m",XL="\x1B[31m",cv="\x1B[32m",lv="\x1B[33m",uv="\x1B[35m",dl="\x1B[36m";QL="\u2726"});import{mkdirSync as ej,readFileSync as yv,writeFileSync as tj}from"node:fs";import{homedir as nj}from"node:os";import{dirname as rj,join as oj}from"node:path";function hv(e){return e/1e6}function ij(){try{let e=JSON.parse(yv(oj(nj(),".claude","settings.json"),"utf8")),t=e.env?.ANTHROPIC_AUTH_TOKEN,n=e.env?.ANTHROPIC_BASE_URL;return!t||!n?void 0:{token:t,baseUrl:n.replace(/\/$/,"")}}catch{return}}function aj(){try{let e=JSON.parse(yv(gl,"utf8"));return!e.data||typeof e.cachedAt!="number"?void 0:{data:e.data,cachedAt:e.cachedAt}}catch{return}}function Fs(e){let t=`$${e.balanceDollar.toFixed(2)}`,n=e.hasSubscription?`5h $${e.fiveHourUsedDollar.toFixed(2)}/$${e.fiveHourLimitDollar.toFixed(2)} bal`:"";return xv(t,n,e.latencyMs)}async function bv(){let e=aj();if(e&&Date.now()-e.cachedAt<sj)return Fs(e.data);let t=ij();if(!t)return e?Fs(e.data):void 0;let n=Date.now();try{let r=await fetch(`${t.baseUrl}/v1/user/subscription-info`,{headers:{authorization:`Bearer ${t.token}`,accept:"application/json"},signal:AbortSignal.timeout(3e3)});if(!r.ok)return e?Fs(e.data):void 0;let o=await r.json(),i=o.subscription_window?.five_hour?.limit??0,a={balanceDollar:o.normal_balance?.amount_dollar??0,hasSubscription:i>0,fiveHourUsedDollar:hv(o.subscription_window?.five_hour?.used??0),fiveHourLimitDollar:hv(i),latencyMs:Date.now()-n};return ej(rj(gl),{recursive:!0}),tj(gl,JSON.stringify({data:a,cachedAt:Date.now()})),Fs(a)}catch{return e?Fs(e.data):void 0}}var gl,sj,Iv=m(()=>{qn();fl();gl=au,sj=18e4});function $v(){return{}}function wv(e,t,n,r=Date.now()){let o={...e};return t==="run"?(n===void 0||n===""?delete o.run:o.run={label:n,since:e.run?.since??r},o):(n===void 0||n===""?delete o[t]:o[t]=n,o)}function mj(e){let t=Math.max(0,Math.round(e/1e3)),n=Math.floor(t/60);return n>0?`${n}m ${String(t%60).padStart(2,"0")}s`:`${t}s`}function kv(e,t,n=Date.now()){return e.prompt?`? ${e.prompt}`:e.note?`* ${e.note}`:e.run?`${t} ${e.run.label} \xB7 ${mj(n-e.run.since)}`:e.tally?e.tally:""}var Tv=m(()=>{});import{spawn as uj}from"node:child_process";function pj(e){switch(e){case"darwin":return{command:"open",args:[]};case"win32":return{command:"cmd",args:["/c","start",""]};case"linux":return{command:"xdg-open",args:[]};default:return}}async function Ev(e,t=process.platform){let n=pj(t);return n?new Promise(r=>{try{let o=uj(n.command,[...n.args,e],{detached:!0,stdio:"ignore"});o.once("error",()=>r(!1)),o.once("spawn",()=>{o.unref(),r(!0)})}catch{r(!1)}}):!1}var vv=m(()=>{});import{mkdirSync as cj,writeFileSync as lj}from"node:fs";import{join as dj}from"node:path";import{matchesKey as Gm}from"@earendil-works/pi-tui";function Pv(){return{selectedPhase:0,filter:"all",paused:!1,expanded:!1,follow:!0}}function Av(e){if(Gm(e,"up"))return"up";if(Gm(e,"down"))return"down";if(Gm(e,"enter"))return"enter";if(Gm(e,"escape"))return"escape";if(e==="f")return"filter";if(e==="p")return"pause";if(e==="x")return"stop";if(e==="s")return"save"}function Sv(e,t,n){if(t.length===0)return e;let r=Math.max(0,Math.min(t.length-1,e.selectedPhase+n));return{...e,selectedPhase:r,follow:!1}}function fj(e){let t=xl.indexOf(e);return xl[(t+1)%xl.length]}function Rv(e,t,n){switch(t){case"up":return Sv(e,n,-1);case"down":return Sv(e,n,1);case"enter":return{...e,expanded:!e.expanded};case"filter":return{...e,filter:fj(e.filter)};case"pause":return{...e,paused:!e.paused};default:return e}}function Ov(e,t){switch(t){case"running":return e.filter(n=>n.status==="running");case"failed":return e.filter(n=>n.status==="failed");case"done":return e.filter(n=>n.status!=="running");default:return[...e]}}function Mv(e){return e==="all"?"":` \xB7 ${e}`}function Lv(e,t,n=!0){if(!n)return"Ctrl+F panel keys \xB7 Esc unpin";let r=["\u2191/\u2193 phase",e.expanded?"Enter collapse":"Enter drill in"];return r.push(e.expanded?"Esc back out":"Esc unpin"),r.push(`f filter${e.filter==="all"?"":` (${e.filter})`}`),t?(r.push(e.paused?"p resume":"p pause"),r.push("x stop")):e.paused&&r.push("p resume"),r.push("s save script"),e.paused&&r.unshift("paused"),r.join(" \xB7 ")}function gj(e){let t=e.trim();if(!(!t||t.length>64)&&!(t==="."||t==="..")&&/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(t)&&!t.includes(".."))return t}function jv(e,t){if(!e)return{ok:!1,reason:"this run was started from a file, so it is already saved where you pointed the tool"};let n=gj(e.name);if(!n)return{ok:!1,reason:`"${e.name}" is not a usable filename, so the script was not written`};let r=dj(t,`${n}.js`);try{cj(t,{recursive:!0}),lj(r,e.code,"utf8")}catch(o){return{ok:!1,reason:o instanceof Error?o.message:String(o)}}return{ok:!0,path:r}}var xl,Cv,Fv=m(()=>{xl=["all","running","failed","done"];Cv="ctrl+f"});function Dv(e){let t=()=>{};return{select:(n,r)=>e.select(n,r),confirm:(n,r)=>e.confirm(n,r),input:n=>e.input(n),notify:(n,r)=>e.notify(n,r),onTerminalInput:()=>t,setStatus:(n,r)=>e.setStatus(n,r),setWorkingMessage:t,setWorkingVisible:t,setWorkingIndicator:t,setHiddenThinkingLabel:t,setWidget:(n,r,o)=>{r!==void 0&&!Array.isArray(r)||e.setWidget?.(n,r,o?.placement)},setFooter:t,setHeader:t,setTitle:t,custom:async()=>{throw new Error("this screen has no custom component host; use the text commands instead")},pasteToEditor:t,setEditorText:t,getEditorText:()=>"",editor:async()=>{},addAutocompleteProvider:t,setEditorComponent:t,getEditorComponent:()=>{},theme:void 0,getAllThemes:()=>[],getTheme:()=>{},setTheme:()=>({success:!1,error:"themes are not available in the workbench"}),getToolsExpanded:()=>!1,setToolsExpanded:t}}var Nv=m(()=>{});var Hv={};Ot(Hv,{Dock:()=>Bm,Hud:()=>zm,approvalDetail:()=>zv,orderModelsForDefault:()=>Gv,pickerPanel:()=>Wv,runWorkbench:()=>Kj,workflowPanel:()=>Bv,workflowPanelFromRun:()=>qs,workflowRunOf:()=>Hm});import{execFile as xj}from"node:child_process";import{promisify as hj}from"node:util";import{existsSync as yj,mkdirSync as bj,readFileSync as Ij,writeFileSync as hl}from"node:fs";import{basename as $j,join as qv,resolve as wj}from"node:path";import{copyToClipboard as kj,SessionManager as Tj}from"@earendil-works/pi-coding-agent";import{CombinedAutocompleteProvider as _v,Container as Ej,Editor as vj,matchesKey as Vt,ProcessTerminal as Sj,ScrollView as Pj,KeybindingsManager as Aj,setKeybindings as Rj,TUI_KEYBINDINGS as Oj,SelectList as Mj,TuiAltScreen as Cj,truncateToWidth as Ns,VStack as Lj,visibleWidth as Wm,wrapTextWithAnsi as jj,getNativeClipboard as Fj}from"@earendil-works/pi-tui";function Dj(e){if(typeof e!="object"||e===null)return;let t=e[Kv];return typeof t=="function"?t.call(e):void 0}async function bl(e){try{let{stdout:t}=await $l("git",["-C",e,"rev-parse","--abbrev-ref","HEAD"],{encoding:"utf8"}),n=t.trim();if(!n||n==="HEAD")return"";let{stdout:r}=await $l("git",["-C",e,"status","--porcelain"],{encoding:"utf8"});return`git:(${n}${r.trim()?"*":""})`}catch{return null}}function Gv(e){let t=n=>{if(qj.test(n))return 100;let r=Nj.findIndex(o=>n.toLowerCase().includes(o));return r===-1?50:r};return e.map((n,r)=>({id:n,index:r})).sort((n,r)=>t(n.id)-t(r.id)||n.index-r.index).map(n=>n.id)}function Wv(e,t,n,r=!1,o=[]){let i=Math.max(24,n),a=i-4,p=(re,ee)=>{let ge=Wm(re)>a?Ns(re,a,"\u2026"):re,ke=`${ge}${" ".repeat(Math.max(0,a-Wm(ge)))}`;return`\u2502 ${ee?ee(ke):ke} \u2502`},c="\u2500".repeat(i-2),x=[p(` ${t}`),...e.render(a).map(re=>p(re))],y=o.flatMap(re=>re===""?[""]:jj(re,a)),S=y.length>0?[p(""),...y.map(re=>p(re,ee=>oe(ee,N.mute)))]:[];if(!r)return["",`\u250C${c}\u2510`,...x,...S,`\u2514${c}\u2518`];let A=KE(N.line,N.warn,Date.now(),1400),C=oe("\u2502",A),F=(re,ee)=>oe(`${re}${c}${ee}`,A),q=[...x,...S].map(re=>`${C}${re.slice(1,-1)}${C}`);return["",F("\u250C","\u2510"),...q,F("\u2514","\u2518")]}function zv(e,t){let n=t.split(`
|
|
100
|
+
`).filter(Boolean),r=n.filter(a=>a.startsWith("Reason:")),o=n.filter(a=>!a.startsWith("Reason:")&&!a.startsWith("Allow tool:"));return[...e.endsWith(" wants to run")?[]:[e],...r,...o.length>0?["",...o]:[]]}function Ds(e){let t=e.getContextUsage();if(t?.percent!==null&&t?.percent!==void 0)return Math.min(100,Math.round(t.percent));let n=e.model,r=[...e.state.messages].reverse().find(o=>o.role==="assistant")?.usage;return!n||!r||n.contextWindow<=0?0:Math.min(100,Math.round(r.totalTokens/n.contextWindow*100))}function Il(e){let n=[["init","write project notes to AGENTS.md"],["model","choose a model"],["providers","list providers"],["thinking","set thinking level"],["approval","set what needs approval"],["connect","connect a howtofix.id account"],["login","save a provider API key"],["logout","remove a provider"],["new","start a new session"],["resume","resume another session"],["compact","compact the session"],["name","name this session"],["stats","session tokens and cost"],["diff","show the working tree diff"],["commit","stage everything and commit"],["undo","undo the last commit"],["rewind","revert files to an earlier prompt (Esc Esc)"],["review","ask the agent to review the diff"],["tools","list active tools"],["export","write the transcript to a markdown file"],["copy","copy the last answer to the clipboard"],["agents","show spawned agents"],["goal","set or view this session's goal"],["plan","toggle plan mode (design before editing)"],["workflow","show or clear the pinned workflow panel"],["session","show the current model"],["help","list commands"],["quit","quit"]].map(([r,o])=>({name:r,description:o}));for(let r of e.promptTemplates)n.push({name:r.name,description:r.description});for(let r of e.extensionRunner.getRegisteredCommands())n.push({name:r.invocationName,description:r.description});return n}function Hm(e,t){if(e!=="workflow")return;let n=Um(t);if(!(typeof n.name!="string"||!Array.isArray(n.steps)))return n}function Bv(e,t){let n=Hm(e,t);return n?qs(n):void 0}function qs(e,t,n=!1){return r=>vE(e,[],r,t?.selectedPhase,t?_j(e,t,n):void 0)}function _j(e,t,n){return{filter:r=>Ov(r,t.filter),footerText:Lv(t,e.endedAt===void 0,n),filterLabel:Mv(t.filter),drill:t.expanded}}function Uj(){let e=new Aj(Oj,{"tui.altScreen.pageUp":[],"tui.altScreen.pageDown":[],"tui.altScreen.halfPageUp":[],"tui.altScreen.halfPageDown":[],"tui.altScreen.top":[],"tui.altScreen.bottom":[]});Rj(e)}async function Kj(e){let t=new Sj,n=new Cj(t,!0,void 0,{mouse:!0}),r=new Km,o=new zm(e.cwd,e.modelLabel),i=d=>{let h=Date.now();(async()=>{try{let I=Nn(),b=await YE(I,E.getSessionStats().sessionId,d);b&&h>=Dt&&(To=b,Dt=h)}catch{}})()},a=(d=!1)=>{!d&&!o.live||bl(e.cwd).then(h=>{h!==null&&(o.git=h,z())})},p=new vj(n,Uv,{paddingX:1}),c=new Map,x=d=>{let h=[];for(let I of c.values())h.push(...I(d));return h},y=(d,h)=>{h===void 0?c.delete(d):typeof h=="function"?c.set(d,h):c.set(d,()=>h)},S=()=>Math.max(20,t.columns),A,C=0,F=Pv(),q,re=null,ee=!1,ge=!1,ke,We=()=>{!q||!ee||y("workflow",d=>qs(q,F,ge)(d))},jt=()=>{ee=!1,ge=!1,y("workflow",void 0)};PE({onStop:d=>{re=d},isPaused:()=>F.paused});let xe=d=>{A=d;let h=d.endedAt??Date.now();C=Math.max(C,h+jm),q=d,ee=!0,y("workflow",I=>qs(d,F,ge)(I))},Z=new Bm(p,o,x),E=e.session,ze=!1,Ft,Nn=()=>Ft??=VE(e.cwd),To,Jt="",Dt=0,xt=async()=>{let d=Nn();if(d.disabled){O("rewind","checkpoints are off here \u2014 this directory is not a git repository");return}let h=il(d,E.getSessionStats().sessionId);if(h.length===0){O("rewind","no checkpoints yet \u2014 one is taken before each prompt");return}let I=await Promise.all([...h].reverse().map(async b=>{let L=await ZE(d,b),g=new Date(b.at).toISOString().slice(11,19);return{value:b.id,label:`${g} ${b.prompt.slice(0,48)||"(no prompt)"}`,description:L.length===0?"no file changes to revert":`${L.length} file(s): ${L.slice(0,3).join(", ")}`}}));Rt("Rewind to a checkpoint (code only)",I,b=>{let L=h.find(g=>g.id===b);L&&(async()=>{let g=await XE(d,L);if(!g.ok){On(`rewind failed: ${g.output}`);return}let w=g.removed.length>0?`
|
|
101
|
+
removed ${g.removed.length} file(s): ${g.removed.slice(0,3).join(", ")}`:"";O("rewind",`${g.output}${w}`),bl(e.cwd).then(j=>{j!==null&&(o.git=j,z())}),z()})()})};a(!0),i("session start"),e.note&&r.items.push({id:"note",kind:"note",title:"note",body:e.note}),r.items.push(...ll(E.state.messages)),o.percent=Ds(E),o.abandonAnimations(),o.thinking=E.thinkingLevel,p.setAutocompleteProvider(new _v(Il(E),e.cwd)),bv().then(d=>{d&&(o.cubence=d,n.requestRender())});let Oe=null,Eo="",wl=!1,kl=[],Vm=()=>{},z=()=>{Vm(),n.requestRender()},Ie=(d,h)=>{o.activity=wv(o.activity,d,h)},_s=new Map,Jm=new Set,Jv=()=>[..._s].map(([d,h])=>`${Jm.has(d)?"!":"\u2713"} ${d} \xD7${h}`).join(" | "),Yv=()=>{let d=Jv();Ie("tally",d||void 0)},Rt=(d,h,I,b,L=!1,g=[])=>{let w=new Mj(h,8,Uv.selectList);w.onSelect=j=>{Oe=null,I(j.value)},w.onCancel=()=>{Oe=null,b?.(),z()},Eo=d,wl=L,kl=g,Oe=w,z()},O=(d,h)=>{r.items.push({id:`cmd-${Date.now()}-${r.items.length}`,kind:"note",title:d,body:h}),Ie("tally",void 0),z()},On=d=>{r.items.push({id:`err-${Date.now()}-${r.items.length}`,kind:"error",title:"failed",body:d}),Ie("tally",void 0),z()};Pu((d,h)=>{let{promise:I,resolve:b}=Promise.withResolvers();return Rt(d,[{value:"allow",label:"allow"},{value:"deny",label:"deny"}],L=>b(L==="allow"),()=>b(!1),!0,zv(d,h)),I});let Ym=new Map,Tl=d=>{let h=Dv({select:(I,b)=>{let{promise:L,resolve:g}=Promise.withResolvers();return Rt(I,b.map(w=>({value:w,label:w})),g,()=>g(void 0)),L},confirm:(I,b)=>{let{promise:L,resolve:g}=Promise.withResolvers();return Rt(`${I} \u2014 ${b}`,[{value:"yes",label:"yes"},{value:"no",label:"no"}],w=>g(w==="yes"),()=>g(!1)),L},input:I=>{let{promise:b,resolve:L}=Promise.withResolvers();return Ie("prompt",I),z(),an=g=>{an=void 0,Ie("prompt",void 0),L(g),z()},b},notify:(I,b)=>{b==="error"?On(I):O("mcp",I)},setStatus:(I,b)=>{b===void 0?Ym.delete(I):Ym.set(I,b),Ie("note",[...Ym.values()].join(" | ")||void 0),z()},setWidget:(I,b)=>{y(I,b),z()}});d.bindExtensions({uiContext:h,mode:"print",onError:I=>On(`${I.event}: ${I.error}`)}).catch(I=>On(I instanceof Error?I.message:String(I)))};Tl(E);let Mr=new Ej,Xv={invalidate:()=>r.invalidate(),render:d=>{let h=Mr.render(Math.max(20,d)).length;return r.viewportHeight=Math.max(1,Math.max(8,t.rows)-h),r.render(d)},handleMouse:d=>{let h=d.type==="wheel"?d.wheelDelta??0:0;if(h!==0)return r.scrollOffset=Math.max(0,r.scrollOffset-h*3),z(),{handled:!0}}},Zv=new Pj(Xv,{follow:"none",overscroll:"contain"}),Us=new Lj([{component:Zv,grow:1,shrink:1},{component:Mr,grow:0,shrink:0,basis:"auto"}]),Qv=d=>({render:()=>[d],invalidate:()=>{}}),El="",eS=()=>`${Oe?"picker":"dock"}|${[...c.keys()].join(",")}`;Vm=()=>{let d=eS();if(d===El)return;El=d,Mr.clear();for(let I of x(Math.max(20,t.columns)))Mr.addChild(Qv(I));let h=Oe;if(h){let I=Eo,b=wl,L=kl;Mr.addChild({render:g=>Wv(h,I,g,b,L),invalidate:()=>{}})}else Mr.addChild(Z);Us.invalidate()},Vm();let vl={focused:!1,invalidate(){r.invalidate(),Z.invalidate(),Oe?.invalidate(),Us.invalidate()},[Kv]:()=>Dj(Us),render:d=>Us.render(d),handleInput(d){if(Oe){Oe.handleInput(d);return}p.handleInput(d)}};n.setLayoutRoot(vl),n.setFocus(vl);let ar=0,Cr="",Ks=!1,Lr="",Sl=0,Xm=!1,Zm=Date.now(),Gs=!1,Qm=new Map,Pl=d=>{if(d.type==="agent_start"||d.type==="turn_start")d.type==="agent_start"&&Bl(),o.live||o.beginRun(),Cr="",Ks=!1,Xm=!1,Zm=Date.now(),Lr="";else if(d.type==="message_update"&&d.assistantMessageEvent.type==="thinking_delta"){Ks=!0,Lr===""&&(Sl=Date.now()),Lr+=d.assistantMessageEvent.delta;let h=`think-${ar}`,I=r.items.find(L=>L.id===h),b=Lr.split(`
|
|
102
102
|
`).slice(-6).join(`
|
|
103
|
-
`);
|
|
104
|
-
`)}catch{return`could not write ${
|
|
105
|
-
`)),z();return}if(!
|
|
106
|
-
`)),z()})().catch(h=>{
|
|
107
|
-
`));return}if(h==="init"){let g=
|
|
108
|
-
`));return}if(h==="diff"){let g=mn=>{try{
|
|
109
|
-
|
|
110
|
-
`+g(["diff","--","."]),[
|
|
111
|
-
|
|
112
|
-
`,2),qe=oE(
|
|
113
|
-
|
|
114
|
-
`)||"working tree clean");return}if(h==="copy"){let g=[...E.state.messages].reverse().find(
|
|
115
|
-
`)),
|
|
116
|
-
`):"no tools enabled");return}if(h==="rewind"||h==="undo"){xt();return}if(h==="commit"){if(!
|
|
117
|
-
`));return}if(h==="plan"){if(FT()||
|
|
118
|
-
plan file: ${jT()??"(unknown)"}`);return}if(h==="goal"){let g=
|
|
119
|
-
${Tm(w)}`);return}if(h==="session"){let g=E.model;
|
|
103
|
+
`);I?I.body=b:r.items.push({id:h,kind:"note",title:"thinking",body:b})}else if(d.type==="message_update"&&d.assistantMessageEvent.type==="thinking_end"){let h=`think-${ar}`,I=r.items.find(b=>b.id===h);if(I){let b=Math.max(1,Math.round((Date.now()-Sl)/1e3));I.title="thought",I.body=`${b}s \xB7 ${Lr.length} chars of reasoning`}Lr=""}else if(d.type==="message_update"&&d.assistantMessageEvent.type==="text_delta"){Ks=!0,Cr+=d.assistantMessageEvent.delta;let h=`live-${ar}`,I=r.items.find(b=>b.id===h);I?I.body=Cr:r.items.push({id:h,kind:"assistant",title:"HowToFix",body:Cr})}else if(d.type==="tool_execution_start"){if(Qm.set(d.toolCallId,d.args),r.items.push({id:`tool-${d.toolCallId}`,kind:"tool",title:d.toolName,body:Ls(d.toolName,d.args),live:!0}),d.toolName==="task"){let h=rn.filter(I=>I.status==="queued"||I.status==="running");Ie("note",h.map(I=>`${I.agent} ${I.status}`).join(" | ")||"agent running")}}else if(d.type==="tool_execution_update"){let h=Bv(d.toolName,d.partialResult);if(h){let I=r.items.find(L=>L.id===`res-${d.toolCallId}`);I?(I.panel=h,I.body=ko(d.toolName,d.partialResult,!1)):r.items.push({id:`res-${d.toolCallId}`,kind:"result",title:d.toolName,body:ko(d.toolName,d.partialResult,!1),panel:h});let b=Hm(d.toolName,d.partialResult);b&&xe(b),z()}}else if(d.type==="tool_execution_end"){o.percent=Ds(E);let h=r.items.find(j=>j.id===`tool-${d.toolCallId}`);h&&(h.live=!1,h.body=Ls(d.toolName,Qm.get(d.toolCallId))),Qm.delete(d.toolCallId),_s.set(d.toolName,(_s.get(d.toolName)??0)+1),d.isError&&Jm.add(d.toolName),Yv();let I=sv(d.toolName,d.result),b=Hm(d.toolName,d.result),L=b?qs(b):void 0;b&&xe(b);let g=r.items.find(j=>j.id===`tool-${d.toolCallId}`),w=ko(d.toolName,d.result,d.isError);g?(g.kind="result",g.call=g.body,g.body=w,g.live=!1,I.length>0&&(g.detail=I),L&&(g.panel=L)):r.items.push({id:`tool-${d.toolCallId}`,kind:"result",title:d.toolName,body:w,...I.length>0?{detail:I}:{},...L?{panel:L}:{}}),(d.toolName==="bash"||d.toolName==="powershell"||d.toolName==="edit"||d.toolName==="write")&&a()}else if(d.type==="message_end"&&d.message.role==="assistant"){let h=r.items.find(I=>I.id===`live-${ar}`);h&&(h.id=`done-${ar}`),ar+=1,Cr="",o.percent=Ds(E)}else d.type==="agent_settled"?(o.live=!1,i(Jt),Jt="",Ie("run",void 0),o.percent=Ds(E),bl(e.cwd).then(h=>{h!==null&&(o.git=h,z())}),p.disableSubmit=!1):d.type==="thinking_level_changed"?o.thinking=d.level:d.type==="auto_retry_start"&&Ie("note",`retry ${d.attempt}/${d.maxAttempts}`);z()},eu=E.subscribe(Pl),Al=setInterval(()=>{let d=A!==void 0&&Date.now()<C;(Gs||E.isStreaming||o.settling()||r.entering()||Oe||d)&&z(),(Gs||E.isStreaming)&&!Ks&&!Xm&&Date.now()-Zm>Wj&&(Xm=!0,Ie("note",`no answer yet after ${Math.round((Date.now()-Zm)/1e3)}s \u2014 the provider may be stalled; ctrl+c cancels`),z())},Gj);Al.unref?.();let Rl=async d=>{eu(),Ft&&QE(Ft,E.getSessionStats().sessionId),To=void 0,Dt=0,E.dispose(),E=d.session,ar=0,Cr="",r.items=[],d.note&&r.items.push({id:"note",kind:"note",title:"note",body:d.note}),r.items.push(...ll(E.state.messages)),o.model=d.modelLabel.split("/").at(-1)||"no-model",o.thinking=E.thinkingLevel,o.percent=Ds(E),o.abandonAnimations(),Ie("tally",void 0),Ie("run",void 0),p.setAutocompleteProvider(new _v(Il(E),e.cwd)),p.disableSubmit=!1,Tl(E),eu=E.subscribe(Pl),z()},Ws=()=>{ze||(ze=!0,clearInterval(Al),eu(),E.dispose(),n.stop(),process.stdout.write("\x1B[0m"),process.exit(0))},tu=d=>{let h=d.trim();if(!h)return;if(an){let L=an;an=void 0,p.setText(""),L(h);return}if(p.setText(""),p.addToHistory(h),h.startsWith("!")){let L=h.slice(1).trim();if(!L)return;r.items.push({id:`sh-${Date.now()}`,kind:"tool",title:"$",body:L}),Ie("run","shell"),z(),E.executeBash(L,g=>{Ie("run",`shell \xB7 ${g.length} bytes`),z()}).then(g=>{let w=g.output.trim();r.items.push({id:`sh-out-${Date.now()}`,kind:g.exitCode===0?"result":"error",title:`exit ${g.exitCode??"?"}`,body:w||"(no output)"}),Ie("tally",void 0),z()}).catch(g=>On(g instanceof Error?g.message:String(g)));return}if(h.startsWith("/")){nS(h);return}r.items.push({id:`you-${Date.now()}`,kind:"user",title:"you",body:h}),Ie("tally",void 0),_s.clear(),Jm.clear(),Ie("run","thinking"),o.beginRun(),z(),p.disableSubmit=E.isStreaming;let I=bu(h,e.cwd);Jt=h,Gs=!0;let b=E.isStreaming?E.followUp(I):E.prompt(I);Gs=!1,b.catch(L=>On(L instanceof Error?L.message:String(L)))};p.onSubmit=tu;let nu=0;n.addInputListener(d=>{if(ee&&q&&Vt(d,"escape"))return ge?(ge=!1,O("workflow","panel keys off \u2014 the editor has the keyboard")):F.expanded?(F.expanded=!1,O("workflow","collapsed the drill-in")):(jt(),O("workflow","panel unpinned; the run is still in the transcript")),We(),z(),{consume:!0};if(Vt(d,"escape")){let I=Date.now();if(p.getText().length===0&&I-nu<600&&!E.isStreaming&&!Oe)return nu=0,xt(),{consume:!0};nu=I;return}if(Vt(d,"ctrl+c"))return E.isStreaming?(E.abort(),Ie("note","stopping"),z()):Ws(),{consume:!0};if(Vt(d,"ctrl+d")&&p.getText().length===0)return Ws(),{consume:!0};let h=Math.max(1,r.viewportHeight-1);if(Vt(d,"pageUp"))return r.scrollOffset+=h,z(),{consume:!0};if(Vt(d,"pageDown"))return r.scrollOffset=Math.max(0,r.scrollOffset-h),z(),{consume:!0};if(Vt(d,"home"))return r.scrollOffset=Number.MAX_SAFE_INTEGER,z(),{consume:!0};if(Vt(d,"end"))return r.scrollOffset=0,z(),{consume:!0};if(Vt(d,"ctrl+v")){let I=Fj();return I?(I.getText().then(b=>{typeof b!="string"||b.length===0?O("paste","the clipboard is empty"):p.insertTextAtCursor(b),z()}).catch(b=>{O("paste",`could not read the clipboard: ${b instanceof Error?b.message:String(b)}`),z()}),{consume:!0}):(O("paste","no clipboard tool found on this machine"),z(),{consume:!0})}if(Vt(d,"ctrl+l"))return r.scrollOffset=0,n.scrollToBottom(),z(),{consume:!0};if(Vt(d,"ctrl+o")&&!E.isStreaming)return r.items=[{id:"cleared",kind:"note",title:"bench",body:"screen cleared. session history is still stored."}],z(),{consume:!0};if(Vt(d,Cv)&&ee&&q)return ge=!ge,O("workflow",ge?"panel keys active \u2014 Esc gives the keyboard back":"panel keys off \u2014 the editor has the keyboard"),We(),z(),{consume:!0};if(ge&&ee&&q){let I=Av(d);if(I){let b=wo(q,Date.now());if(I==="stop")return re?(re(),re=null,O("workflow","stopping the run \u2014 in-flight agents resolve as null")):O("workflow","the run has already finished"),{consume:!0};if(I==="save"){let L=jv(ke,mu);return O("workflow",L.ok?`saved ${L.path}`:L.reason),z(),{consume:!0}}return Object.assign(F,Rv(F,I,b)),We(),z(),{consume:!0}}}});let ru=d=>{let h=I=>{Ie("prompt",`API key for ${I}. Paste it, then press enter.`),z();let b=an;an=L=>{an=b;let g=L.trim();if(!g){Ie("prompt",void 0),z();return}E.modelRuntime.setRuntimeApiKey(I,g).then(()=>O("login",`saved API key for ${I}`),w=>O("login",w instanceof Error?w.message:String(w)))}};if(d){h(d);return}E.modelRuntime.getAvailable().then(I=>{let b=[...new Set(I.map(L=>L.provider))].sort();if(b.length===0){O("login","no providers are configured; pass one explicitly, e.g. /login nrimo");return}Rt("Login",b.map(L=>({value:L,label:L})),h)},I=>O("login",I instanceof Error?I.message:String(I)))},tS=async(d,h)=>{let I=qv(Xe,"models.json"),b,L=!1;try{b=JSON.parse(Ij(I,"utf8"))}catch(su){if(!(su instanceof Error&&"code"in su&&su.code==="ENOENT"))return`could not read ${I}; the models were not added`;b={providers:{}},L=!0}(!b.providers||typeof b.providers!="object")&&(b.providers={});let g=b.providers[d];g||(g=cu(),b.providers[d]=g,L=!0);let w=Array.isArray(g.models)?g.models:[],j=gu(w,h),pe=Xs(fu(w,h));g.models=pe.models;try{bj(Xe,{recursive:!0}),hl(I,`${JSON.stringify(b,null,2)}
|
|
104
|
+
`)}catch{return`could not write ${I}; the models were not added`}let qe=!1;try{await E.modelRuntime.refresh(),qe=!0}catch{qe=!1}let mn=pe.changed>0?`, repaired ${pe.changed}`:"",Nt=qe?"":"; restart the CLI to see them all",zs=L?` (created ${I})`:"";return j===0?`all ${h.length} models were already configured${mn}${zs}${Nt}`:`added ${j} model(s) to "${d}"${mn}${zs}${Nt}`},ou=d=>{(async()=>{if(!d){let w=await Ev(Js);O("connect",["connect your howtofix.id account:",` 1. ${w?"the token page is opening in your browser":`open ${Js}`}`," 2. sign in if asked, then create a token (starts with sk-)"," 3. run /connect <token>"," or /connect, and paste the token when asked","","howtofix.id has no OAuth callback for a local client, so the token is","how this CLI signs in. The token is verified before it is stored."].join(`
|
|
105
|
+
`)),z();return}if(!du(d)){O("connect","that does not look like a howtofix token; the Console issues tokens that start with sk-");return}Ie("note",`connecting to howtofix.id (${Ys(d)})`),z();let h=await hu(d);if(!h.ok){Ie("note",void 0),O("connect",h.message),z();return}await E.modelRuntime.setRuntimeApiKey("howtofix",d);let I=await tS("howtofix",h.models),b=!!E.model&&E.model?.provider!==void 0&&o.model!=="unknown",L,g;if(!b)try{let w=(await E.modelRuntime.getAvailable()).filter(qe=>So(qe.provider)),pe=Gv(w.map(qe=>qe.id)).slice(0,4);for(let qe of pe){if(!(await xu(qe,d)).ok)continue;let Nt=w.find(zs=>zs.id===qe);if(Nt){await E.setModel(Nt),o.model=Nt.id,L=`${Nt.provider}/${Nt.id}`;break}}L||(g=pe.length>0?`none of the first ${pe.length} models answered (${pe[0]} did not)`:"the account lists no chat model")}catch(w){g=w instanceof Error?w.message:String(w)}Ie("note",void 0),O("connect",[`connected ${Ys(d)} \u2014 ${h.message}`,I,L?`using ${L} (change it with /model)`:`pick a model with /model, then send a prompt${g?` (auto-select failed: ${g})`:""}`].join(`
|
|
106
|
+
`)),z()})().catch(h=>{Ie("note",void 0),O("connect",h instanceof Error?h.message:String(h)),z()})},nS=async d=>{let[h,...I]=d.slice(1).split(/\s+/),b=I.join(" ");if(h==="quit"||h==="exit"){Ws();return}if(h==="help"){O("help",Il(E).map(g=>`/${g.name} ${g.description??""}`).join(`
|
|
107
|
+
`));return}if(h==="init"){let g=qv(e.cwd,"AGENTS.md");if(yj(g)&&b!=="force"){O("init",`AGENTS.md already exists at ${g}. run /init force to overwrite.`);return}hl(g,Ml),O("init",`wrote ${g}; asking the agent to fill it in`),await E.prompt("Read AGENTS.md, then fill it in with the real build, test, and layout facts of this repo. Keep it short.");return}if(h==="login"){ru(b);return}if(h==="connect"){if(b.trim()){ou(b.trim());return}ou(""),Ie("prompt","paste your howtofix.id token, then press enter"),z();let g=an;an=w=>{an=g,Ie("prompt",void 0),ou(w.trim())};return}if(h==="logout"){let g=await E.modelRuntime.getAvailable(),w=[...new Set(g.map(j=>j.provider))].sort();if(w.length===0){O("logout","no providers are configured");return}Rt("Logout",w.map(j=>({value:j,label:j})),j=>{E.modelRuntime.logout(j).then(()=>O("logout",`logged out ${j}`),pe=>O("logout",pe instanceof Error?pe.message:String(pe)))});return}if(h==="providers"){let g=await E.modelRuntime.getAvailable(),w=[...new Set(g.map(j=>j.provider))].sort();w.sort((j,pe)=>Number(So(pe))-Number(So(j))),Rt("Providers",w.map(j=>({value:j,label:j})),j=>{let pe=E.modelRuntime.getModels(j);if(pe.length===0){ru(j);return}Rt(j,pe.map(qe=>({value:qe.id,label:qe.id})),qe=>{let mn=pe.find(Nt=>Nt.id===qe);mn&&E.setModel(mn).then(()=>{o.model=mn.id,O("providers",`${j}/${mn.id}`)},()=>ru(j))})});return}if(h==="name"){if(!b){O("name","usage: /name <session name>");return}E.setSessionName(b),O("name",`session name: ${b}`);return}if(h==="stats"){let g=E.getSessionStats(),w=E.getContextUsage();O("stats",[`session ${g.sessionId}`,g.sessionFile?`file ${g.sessionFile}`:"not persisted",`messages ${g.totalMessages} (user ${g.userMessages}, assistant ${g.assistantMessages}, tools ${g.toolCalls})`,`tokens in ${g.tokens.input} out ${g.tokens.output} cache ${g.tokens.cacheRead}/${g.tokens.cacheWrite}`,`cost $${g.cost.toFixed(4)}`,w?`context ${w.percent===null?"?":`${Math.round(w.percent)}%`} of ${w.contextWindow}`:"context unknown"].join(`
|
|
108
|
+
`));return}if(h==="diff"){let g=async mn=>{try{let{stdout:Nt}=await $l("git",mn,{cwd:e.cwd,encoding:"utf8"});return Nt.trim()}catch{return""}},w=await g(["diff","--stat"])+`
|
|
109
|
+
|
|
110
|
+
`+await g(["diff","--","."]),[j="",pe=""]=w.split(`
|
|
111
|
+
|
|
112
|
+
`,2),qe=oE(pe);O("diff",[j.trim(),qe].filter(Boolean).join(`
|
|
113
|
+
|
|
114
|
+
`)||"working tree clean");return}if(h==="copy"){let g=[...E.state.messages].reverse().find(pe=>pe.role==="assistant"),j=(Array.isArray(g?.content)?g.content:[]).filter(pe=>pe.type==="text").map(pe=>pe.text).join("");if(!j){O("copy","nothing to copy");return}try{await kj(j),O("copy",`copied ${j.length} characters`)}catch(pe){O("copy",pe instanceof Error?pe.message:String(pe))}return}if(h==="export"){let g=wj(e.cwd,b||`howtofix-session-${Date.now()}.md`),w=[`# ${Et} session`,"",`model ${o.model}`,""];for(let j of r.items)w.push(`## ${j.title||j.kind}`,"",j.body,"");hl(g,w.join(`
|
|
115
|
+
`)),O("export",`wrote ${g}`);return}if(h==="agents"){O("agents",b?_c(b):qc());return}if(h==="new"){let g=await e.reopen({noSession:!1});await Rl(g),O("new","started a new session");return}if(h==="resume"){let g=await Tj.list(e.cwd);if(g.length===0){O("resume","no saved sessions for this folder");return}Rt("Resume session",g.slice(0,30).map(w=>({value:w.path,label:w.name||`${w.id.slice(0,8)} ${w.firstMessage.slice(0,40)}`,description:`${w.modified.toISOString().slice(0,16)} ${w.messageCount} messages`})),w=>{e.reopen({sessionPath:w}).then(Rl,j=>On(j instanceof Error?j.message:String(j)))});return}if(h==="model"){let g=await E.modelRuntime.getAvailable(),w=b?g.find(j=>`${j.provider}/${j.id}`===b||j.id===b):void 0;if(!b){Rt("Select model",g.map(j=>({value:`${j.provider}/${j.id}`,label:j.id,description:j.provider})),j=>{let pe=g.find(qe=>`${qe.provider}/${qe.id}`===j);pe&&E.setModel(pe).then(()=>{o.model=pe.id,O("model",`model ${j}`)})});return}if(!w){O("model",`unknown model ${b}`);return}await E.setModel(w),o.model=w.id,O("model",`model ${w.provider}/${w.id}`);return}if(h==="thinking"){if(!b){Rt("Thinking level",yl.map(g=>({value:g,label:g})),g=>{E.setThinkingLevel(g),o.thinking=g,O("thinking",`thinking ${g}`)});return}if(!yl.includes(b)){O("thinking",`thinking: ${yl.join(", ")}`);return}E.setThinkingLevel(b),o.thinking=b,O("thinking",`thinking ${b}`);return}if(h==="compact"){try{await E.compact(b||void 0),O("compact","session compacted")}catch(g){O("compact",g instanceof Error?g.message:String(g))}return}if(h==="approval"){let g=w=>{Su(w),O("approval",ni[w])};if(!b){Rt("Approval mode",Dr.map(w=>({value:w,label:w,description:ni[w]})),w=>g(w));return}if(!Dr.includes(b)){O("approval",`modes: ${Dr.join(", ")}`);return}g(b);return}if(h==="tools"){let g=E.getActiveToolNames().sort();O("tools",g.length?g.join(`
|
|
116
|
+
`):"no tools enabled");return}if(h==="rewind"||h==="undo"){xt();return}if(h==="commit"){if(!Kc(e.cwd)){O("commit","not a git repository");return}if(!await tE(e.cwd)){O("commit","nothing to commit");return}let g=b||`howtofix: session update ${new Date().toISOString().slice(0,16)}`,w=await nE(e.cwd,g);O("commit",w.ok?w.output:`commit failed: ${w.output}`),a(!0);return}if(h==="review"){if(!(await rE(e.cwd)).trim()){O("review","no changes to review");return}tu("Review the uncommitted changes. Report concrete issues with file evidence. Do not edit files.");return}if(h==="workflow"){if(b.trim()==="clear"){jt(),O("workflow","cleared the pinned workflow panel");return}if(!q){O("workflow","no workflow run in this session yet");return}let g=wo(q,Date.now()),w=g[F.selectedPhase];O("workflow",[`panel ${ee?"pinned above the editor":"unpinned"}`,`phase ${F.selectedPhase+1}/${g.length}: ${w?.title??"(none)"}`,`filter: ${F.filter}${F.paused?" \xB7 paused":""}`,"keys: \u2191/\u2193 phase \xB7 Enter drill in \xB7 Esc unpin \xB7 f filter \xB7 p pause \xB7 x stop \xB7 s save","clear it with /workflow clear"].join(`
|
|
117
|
+
`));return}if(h==="plan"){if(FT()||Rm().state==="pending"){Io(LT(Rm())),O("plan","plan mode off \u2014 edits are allowed again");return}Io(CT(Rm())),O("plan",`plan mode armed \u2014 send your next prompt to start planning
|
|
118
|
+
plan file: ${jT()??"(unknown)"}`);return}if(h==="goal"){let g=b.trim();if(!g){O("goal",Tm(Em()));return}let{goal:w,error:j}=Rc(Em(),"set",g,void 0,void 0);if(j){On(j);return}nn(w),await E.sendCustomMessage({customType:rr,content:g,display:!1,details:w}),O("goal",`goal set
|
|
119
|
+
${Tm(w)}`);return}if(h==="session"){let g=E.model;O("session",g?`${g.provider}/${g.id}`:"no model");return}let L=E.extensionRunner.getCommand(h??"");if(L){try{await L.handler(b,E.extensionRunner.createCommandContext())}catch(g){On(g instanceof Error?g.message:String(g))}return}O("command",`/${h??""} is not available in this screen yet`)};ud((d,h)=>{let{promise:I,resolve:b}=Promise.withResolvers();return Rt(d,h.map(L=>({value:L,label:L})),b),I}),process.on("SIGTERM",Ws),t.setTitle(`${Et} ${jr}`),Uj(),n.start(),n.requestRender(!0),e.initialPrompt&&tu(e.initialPrompt),await new Promise(()=>{})}var Uv,yl,Kv,$l,zm,Bm,Nj,qj,an,Gj,Wj,Vv=m(()=>{vo();nl();ev();Iu();mv();Ps();Iv();fl();Ss();Ou();pl();Tv();Os();Xc();yu();vv();qn();Fv();Gc();ri();$u();Sm();Lc();Nv();Uv={borderColor:()=>"",selectList:{selectedPrefix:e=>oe(e,N.accent),selectedText:e=>oe(e,N.text,{bold:!0}),description:e=>oe(e,N.mute),scrollInfo:e=>oe(e,N.dim),noMatch:e=>oe(e,N.mute)}},yl=["off","minimal","low","medium","high","xhigh","max"],Kv=Symbol.for("@earendil-works/pi-tui/layout-node");$l=hj(xj);zm=class{folder;model;git;percent=0;meter=new Nm(0);activity=$v();live=!1;activitySince=Date.now();thinking="medium";cubence="";constructor(t,n){this.folder=$j(t),this.model=n.split("/").at(-1)||"no-model",this.git=""}invalidate(){}settling(){return this.meter.moving}meterValue(){return this.meter.value!==this.percent&&this.meter.set(this.percent),this.meter.step()}beginRun(){this.live=!0,this.activitySince=Date.now()}waitedMs(){return Date.now()-this.activitySince}abandonAnimations(){this.meter.snap(this.percent)}render(t){let n=Date.now(),r=this.percent===0&&this.meter.value===0?0:this.meterValue(),o=dv(this.model,this.thinking,this.folder,this.git),i=[Ns(`${fv(o,this.live?ul():"",this.live?this.waitedMs():void 0)} ${gv(r,this.cubence)}`,t)],a=qT();a&&i.push(Ns(oe(a,N.warn),t));let p=wT(Em());p&&i.push(Ns(oe(p,N.accent),t));let c=kv(this.activity,ul(),n),x=this.live?GE(c,{base:Qc(this.waitedMs(),N.mute,N.warn,N.bad),bright:N.text,charMs:45},n):oe(c,Qc(this.waitedMs(),N.mute,N.warn,N.bad));return i.push(Ns(x,t)),i}},Bm=class{constructor(t,n,r=()=>[]){this.editor=t;this.hud=n;this.widgets=r}editor;hud;widgets;focused=!1;invalidate(){this.editor.invalidate()}render(t){let n=Math.max(10,t-4),r=this.editor.render(n).filter(p=>Wm(p)>0),o=r.length>0?r:[""],i="\u2500".repeat(Math.max(0,t-2)),a=o.map(p=>{let c=Math.max(0,n-Wm(p));return`\u2502 ${p}${" ".repeat(c)} \u2502`});return[...this.widgets(t),`\u250C${i}\u2510`,...a,`\u2514${i}\u2518`,...this.hud.render(t)]}handleInput(t){this.editor.handleInput(t)}},Nj=["deepseek","qwen","claude","gpt-5","gpt-4","gemini","glm","mimo","kimi","llama"],qj=/(image|embedding|embed|whisper|tts|audio|video|rerank|moderation|dall-e|stable-diffusion|sora)/i;Gj=1e3/30,Wj=45e3});vo();var Cl={off:!0,minimal:!0,low:!0,medium:!0,high:!0,xhigh:!0,max:!0},Ll={suggest:!0,"auto-edit":!0,"full-auto":!0};function Bs(e,t,n){let r=e[t];if(r?.includes("="))return r.slice(r.indexOf("=")+1);let o=e[t+1];if(!o||o.startsWith("-"))throw new Error(`${n} needs a value`);return e.splice(t+1,1),o}function jl(e){let t={print:!1,continueSession:!1,noSession:!1,help:!1,version:!1,prompt:""},n=[],r=[...e];for(let o=0;o<r.length;o++){let i=r[o]??"";if(i==="--"){n.push(...r.slice(o+1));break}if(i==="-h"||i==="--help")t.help=!0;else if(i==="-v"||i==="--version")t.version=!0;else if(i==="-p"||i==="--print")t.print=!0;else if(i==="-c"||i==="--continue")t.continueSession=!0;else if(i==="--no-session")t.noSession=!0;else if(i==="-r"||i==="--resume")t.continueSession=!0;else if(i==="--session"||i.startsWith("--session="))t.sessionPath=Bs(r,o,"--session");else if(i==="-m"||i==="--model"||i.startsWith("--model="))t.model=Bs(r,o,"--model");else if(i==="--thinking"||i.startsWith("--thinking="))t.thinking=Bs(r,o,"--thinking");else if(i==="--approval"||i.startsWith("--approval="))t.approval=Bs(r,o,"--approval");else{if(i.startsWith("-"))throw new Error(`unknown option ${i}`);n.push(i)}}if(t.thinking&&!Cl[t.thinking])throw new Error(`thinking must be one of: ${Object.keys(Cl).join(", ")}`);if(t.approval&&!Ll[t.approval])throw new Error(`approval must be one of: ${Object.keys(Ll).join(", ")}`);if(t.continueSession&&t.noSession)throw new Error("--continue and --no-session cannot be combined");if(t.sessionPath&&t.noSession)throw new Error("--session and --no-session cannot be combined");if(t.sessionPath&&t.continueSession)throw new Error("--session and --continue cannot be combined");if(t.print&&(t.continueSession||t.sessionPath))throw new Error("--print runs one prompt in a throwaway session; it cannot be combined with --continue or --session");if(t.sessionPath&&!t.sessionPath.endsWith(".jsonl"))throw new Error(`--session expects a session file, got '${t.sessionPath}'`);return t.prompt=n.join(" ").trim(),t}function iu(){return`${Et} ${jr}
|
|
120
120
|
coding agent. layout is a workbench, not a chat log.
|
|
121
121
|
|
|
122
122
|
usage:
|
|
@@ -153,7 +153,7 @@ a line starting with ! runs in the project shell.
|
|
|
153
153
|
|
|
154
154
|
config and sessions live in ~/.howtofix/agent. connect your howtofix.id account
|
|
155
155
|
with /connect (it opens the token page), or /login for another provider's key.
|
|
156
|
-
`}vo();qn();async function
|
|
157
|
-
${
|
|
158
|
-
`)?
|
|
159
|
-
`);let C=y.session.state.messages.at(-1);C?.role==="assistant"&&((C.stopReason==="error"||C.stopReason==="aborted"||C.errorMessage)&&(process.exitCode=1),process.exitCode===1&&C.errorMessage&&console.error(`${
|
|
156
|
+
`}vo();qn();async function zj(){uu();let{repairGatewayModels:e,ensureGatewaySettings:t}=await Promise.resolve().then(()=>(yu(),Gl)),{AGENT_DIR:n}=await Promise.resolve().then(()=>(qn(),Fl)),r=e(n);r>0&&console.error(`${Et}: repaired ${r} howtofix model(s) that the gateway would have rejected`),t(n)&&console.error(`${Et}: set httpIdleTimeoutMs in settings.json so a stalled provider recovers instead of hanging`);let o;try{o=jl(process.argv.slice(2))}catch(A){let C=A instanceof Error?A.message:String(A);console.error(`${Et}: ${C}
|
|
157
|
+
${iu()}`),process.exitCode=2;return}if(o.help){console.log(iu());return}if(o.version){console.log(`${Et} ${jr}`);return}if(o.print&&!o.prompt){console.error(`${Et}: --print needs a prompt`),process.exitCode=2;return}let{expandFileReferences:i}=await Promise.resolve().then(()=>(Iu(),Wl)),{isApprovalMode:a,setApprovalMode:p}=await Promise.resolve().then(()=>(ri(),sd)),{openSession:c}=await Promise.resolve().then(()=>(CE(),ME));p(o.approval&&a(o.approval)?o.approval:o.print?"full-auto":"auto-edit");let x=A=>c({cwd:process.cwd(),model:o.model,thinking:o.thinking,continueSession:A.continueSession??!1,noSession:A.noSession??!1,sessionPath:A.sessionPath}),y=await x({continueSession:o.continueSession,sessionPath:o.sessionPath,noSession:o.noSession||o.print});if(o.print){y.note&&console.error(y.note);try{await y.session.prompt(i(o.prompt,process.cwd()));let A=y.session.getLastAssistantText()??"";process.stdout.write(A.endsWith(`
|
|
158
|
+
`)?A:`${A}
|
|
159
|
+
`);let C=y.session.state.messages.at(-1);C?.role==="assistant"&&((C.stopReason==="error"||C.stopReason==="aborted"||C.errorMessage)&&(process.exitCode=1),process.exitCode===1&&C.errorMessage&&console.error(`${Et}: ${C.errorMessage}`))}finally{y.dispose()}return}if(!process.stdin.isTTY||!process.stdout.isTTY){console.error(`${Et}: interactive mode needs a terminal. use --print for pipes.`),y.dispose(),process.exitCode=2;return}let{runWorkbench:S}=await Promise.resolve().then(()=>(Vv(),Hv));await S({cwd:process.cwd(),modelLabel:y.modelLabel,session:y.session,initialPrompt:o.prompt||void 0,note:y.note,reopen:x})}zj().catch(e=>{let t=e instanceof Error?e.message:String(e);console.error(`${Et}: ${t}`),process.exitCode=1});
|