howtofixcli 0.4.21 → 0.4.23
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 +87 -87
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -1,59 +1,59 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
var gP=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
|
|
2
|
+
var gP=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 Dt=(e,t)=>{for(var n in t)gP(e,n,{get:t[n],enumerable:!0})};function yd(e){return e===void 0?void 0:e.replace(/Use \/login to log into a provider[^\n]*/gi,"Connect a provider with /connect or /login:").replace(/^[ \t]*\S*pi-coding-agent[\\/]docs[\\/][^\n]*$/gim,"").replace(/\bpi-coding-agent\b/gi,"the harness").replace(/\n{3,}/g,`
|
|
3
3
|
|
|
4
|
-
`).trim()}var
|
|
5
|
-
`);
|
|
6
|
-
`)});var
|
|
7
|
-
`)}catch{return 0}return o}function PP(e){let t=Ed(e,"settings.json"),n={};try{let r=
|
|
8
|
-
`)}catch{return!1}return!0}function
|
|
4
|
+
`).trim()}var It,gn,xd,bd,qo=m(()=>{It="HowToFix",gn="0.4.23",xd=["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(`
|
|
5
|
+
`);bd=["# Project notes","","## What this is","","## Commands","- build:","- test:","","## Conventions","-",""].join(`
|
|
6
|
+
`)});var kd={};Dt(kd,{AGENTS_STORE_DIR:()=>Hr,AGENT_DIR:()=>He,CUBENCE_CACHE_PATH:()=>Cu,USER_SKILLS_DIR:()=>Mu,WORKFLOWS_DIR:()=>Lu,pinAgentDir:()=>ju,projectSkillsDir:()=>gr});import{homedir as hP}from"node:os";import{join as zr,resolve as xP}from"node:path";function yP(){let e=(process.env.HOWTOFIX_HOME??process.env.HOME??"").trim();return xP(e||hP())}function gr(e){return zr(e,".howtofix","skills")}function ju(){process.env.PI_CODING_AGENT_DIR=He}var He,Mu,Hr,Cu,Lu,Nn=m(()=>{He=process.env.HOWTOFIX_CODING_AGENT_DIR?.trim()||zr(yP(),".howtofix","agent"),Mu=zr(He,"skills");Hr=zr(He,"agents"),Cu=zr(He,"cubence-cache.json"),Lu=zr(He,"workflows")});import{closeSync as bP,fsyncSync as IP,openSync as $P,renameSync as Td,rmSync as Fu,writeSync as wP}from"node:fs";import{dirname as kP,join as TP}from"node:path";function Ze(e,t){let n=TP(kP(e),`.${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2,8)}.tmp`),r=$P(n,"w");try{wP(r,t),IP(r)}finally{bP(r)}try{Td(n,e)}catch(o){let s=o.code;if(s!=="EPERM"&&s!=="EBUSY"&&s!=="EACCES")throw Fu(n,{force:!0}),o;Fu(e,{force:!0});try{Td(n,e)}catch(a){throw Fu(n,{force:!0}),a}}}var zn=m(()=>{});var Rd={};Dt(Rd,{DEFAULT_CONTEXT_WINDOW:()=>Pd,HOWTOFIX_BASE_URL:()=>mi,HOWTOFIX_CONSOLE_URL:()=>ui,HOWTOFIX_MODEL_COMPAT:()=>Nu,HOWTOFIX_PROVIDERS:()=>Uo,HTTP_IDLE_TIMEOUT_MS:()=>Sd,applyCompat:()=>pi,checkAccount:()=>li,countNewModels:()=>Uu,ensureGatewaySettings:()=>PP,isHowtofixProvider:()=>Vr,looksLikeToken:()=>_u,maskToken:()=>ci,mergeModels:()=>qu,newProviderEntry:()=>Du,parseModelIds:()=>Ad,probeModel:()=>Ku,repairGatewayModels:()=>SP});import{existsSync as vP,mkdirSync as EP,readFileSync as vd}from"node:fs";import{join as Ed}from"node:path";function Du(){return{baseUrl:mi,api:"openai-completions"}}function SP(e){let t=Ed(e,"models.json"),n;try{n=JSON.parse(vd(t,"utf8"))}catch{return 0}let r=n.providers;if(!r||typeof r!="object")return 0;let o=0;for(let s of Uo){let a=r[s];if(!a||!Array.isArray(a.models))continue;let c=pi(a.models);c.changed!==0&&(a.models=c.models,o+=c.changed)}if(o===0)return 0;try{Ze(t,`${JSON.stringify(n,null,2)}
|
|
7
|
+
`)}catch{return 0}return o}function PP(e){let t=Ed(e,"settings.json"),n={};try{let r=vd(t,"utf8"),o=JSON.parse(r);o&&typeof o=="object"&&!Array.isArray(o)&&(n=o)}catch{if(vP(t))return!1}if("httpIdleTimeoutMs"in n)return!1;n.httpIdleTimeoutMs=Sd;try{EP(e,{recursive:!0}),Ze(t,`${JSON.stringify(n,null,2)}
|
|
8
|
+
`)}catch{return!1}return!0}function ci(e){let t=e.trim();return t.length<=10?"***":`${t.slice(0,6)}\u2026${t.slice(-4)}`}function _u(e){return/^sk-[A-Za-z0-9_-]{8,}$/.test(e.trim())}function Ad(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 Vr(e){return Uo.includes(e)}function qu(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:Pd,compat:{...Nu}}));return r}function pi(e){let t=0;return{models:e.map(r=>r.compat?.supportsDeveloperRole===!1?r:(t++,{...r,compat:{...r.compat,...Nu}})),changed:t}}function Uu(e,t){let n=new Set(e.map(r=>r.id));return t.filter(r=>!n.has(r)).length}async function Ku(e,t,n){let r=(n?.baseUrl??mi).replace(/\/+$/,""),o=n?.fetchImpl??fetch,s=n?.timeoutMs??1e4,a=new AbortController,c=setTimeout(()=>a.abort(),s);try{let p=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(p.ok)return{ok:!0,detail:"ok"};let f=await p.text().catch(()=>"");return{ok:!1,detail:/"message"\s*:\s*"([^"]{0,80})/.exec(f)?.[1]??`HTTP ${p.status}`}}catch(p){return{ok:!1,detail:p instanceof Error&&p.name==="AbortError"?"timed out":"unreachable"}}finally{clearTimeout(c)}}async function li(e,t){let n=(t?.baseUrl??mi).replace(/\/+$/,""),r=t?.fetchImpl??fetch,o=t?.timeoutMs??15e3,s=e.trim();if(!s)return{ok:!1,models:[],message:"no token given"};let a=new AbortController,c=setTimeout(()=>a.abort(),o);try{let p=await r(`${n}/models`,{headers:{Authorization:`Bearer ${s}`},signal:a.signal});if(p.status===401)return{ok:!1,models:[],message:"the gateway rejected that token (401). Check it in the Console, or make a new one."};if(p.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(!p.ok)return{ok:!1,models:[],message:`the gateway answered ${p.status}`};let f=Ad(await p.json());return f.length===0?{ok:!1,models:[],message:"the token works but the gateway listed no models"}:{ok:!0,models:f,message:`${f.length} models available to this token`}}catch(p){let f=p instanceof Error&&p.name==="AbortError";return{ok:!1,models:[],message:f?`the gateway did not answer within ${Math.round(o/1e3)}s`:"could not reach the gateway"}}finally{clearTimeout(c)}}var mi,ui,Uo,Sd,Nu,Pd,Gu=m(()=>{zn();mi="https://api.howtofix.id/v1",ui="https://howtofix.id/keys",Uo=["howtofix","howtofix-free"];Sd=9e4;Nu={supportsDeveloperRole:!1},Pd=128e3});var Od={};Dt(Od,{expandFileReferences:()=>Wu});import{readFileSync as AP,statSync as RP}from"node:fs";import{isAbsolute as OP,resolve as MP}from"node:path";function Wu(e,t){return e.replace(/(^|\s)@([^\s]+)/g,(n,r,o)=>{let s=o.replace(/[),.;:]+$/,""),a=o.slice(s.length),c=OP(s)?s:MP(t,s);try{let p=RP(c);if(!p.isFile()||p.size===0||p.size>CP)return n;let f=AP(c);return f.includes(0)?n:`${r}<file name="${c}">
|
|
9
9
|
${f.toString("utf8").trimEnd()}
|
|
10
|
-
</file>${a}`}catch{return n}})}var CP,Bu=m(()=>{CP=64*1024});function jP(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,s={};for(let a of Object.keys(o).sort())s[a]=n(o[a]);return s};try{return JSON.stringify(n(e))??""}catch{return""}}function Od(e,t){if(LP.has(e))return;let n=`${e}\0${jP(t)}`,r=Uo&&Uo.signature===n?Uo.count+1:1;return Uo={signature:n,count:r},r>=3?{repeats:r}:void 0}function Md(){Uo=void 0}function Cd(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 LP,Uo,zu=m(()=>{LP=new Set(["think"])});function Ld(e,t){switch(t){case"number":return/^\d+$/.test(e);case"string":return!0;default:return!1}}function DP(e,t,n){let r=t;for(;r<e.length;){let o=e[r];if(!o){r++;continue}if(o==="--")break;if(FP.test(o)){let s=o.includes("="),[a="",...c]=o.split("="),p=n.safeFlags[a];if(!p)return!1;if(p==="none"){if(s)return!1;r++;continue}if(p==="optional"){r++;continue}if(s){if(!Ld(c.join("="),p))return!1;r++;continue}let f=e[r+1];if(f===void 0||!Ld(f,p))return!1;r+=2;continue}if(n.allowPositional===!1)return!1;r++}return!0}function GP(e){if(!/\$\(|`|\$\{|>|</.test(e)&&!/(?<!&)&(?!&)/.test(e))return e.split(/\|\||&&|;|\|/).map(t=>t.trim()).filter(t=>t.length>0)}function WP(e){let t=e.some(r=>/^cd\b/.test(r)),n=e.some(r=>/^git\b/.test(r));return t&&n}function BP(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 zP(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"&&Fd[`git ${n}`]?{name:`git ${n}`,rest:e.slice(2)}:Dd[r]?{name:r,rest:e.slice(2)}:{name:t,rest:e.slice(1)}}function VP(e){let t=BP(e),n=zP(t);if(!n)return!1;let{name:r,rest:o}=n;if(HP.has(r)&&o.some(a=>a.includes("$")||a.includes("`")))return!1;let s=Fd[r]??UP[r]??Dd[r];return s?s.dangerous?.(o)?!1:DP(o,0,s):!!(qP.includes(r)||KP.includes(r))}function fi(e){let t=GP(e);return!t||t.length===0||WP(t)?!1:t.every(VP)}var FP,NP,pi,li,Hu,di,Vu,jd,_P,Fd,qP,UP,Dd,KP,HP,Ju=m(()=>{FP=/^-[a-zA-Z0-9_-]/;NP={"--all":"none","--branches":"none","--tags":"none","--remotes":"none"},pi={"--oneline":"none","--graph":"none","--decorate":"none","--no-decorate":"none","--date":"string","--relative-date":"none"},li={"--max-count":"number","-n":"number"},Hu={"--stat":"none","--numstat":"none","--shortstat":"none","--name-only":"none","--name-status":"none"},di={"--color":"none","--no-color":"none"},Vu={"--patch":"none","-p":"none","--no-patch":"none","--no-ext-diff":"none","-s":"none"},jd={"--author":"string","--committer":"string","--grep":"string"},_P={"-l":"none","--list":"none","-a":"none","-r":"none","-v":"none","-vv":"none","-i":"none"},Fd={"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",...di}},"git diff":{safeFlags:{...Hu,...di,...Vu,"--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:{...pi,...li,...Hu,...di,...Vu,...jd,...NP,"--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:{...Hu,...di,...Vu,...pi,"--format":"string","--pretty":"string","--abbrev-commit":"none","--no-patch":"none","-q":"none"}},"git shortlog":{safeFlags:{...li,"-s":"none","--summary":"none","-n":"none","--numbered":"none","-e":"none","--email":"none","-sn":"none","-ns":"none","--all":"none"}},"git reflog":{safeFlags:{...li,...pi,...jd,"--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:{...li,"--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:{...pi}},"git worktree list":{safeFlags:{"--porcelain":"none","-v":"none","--verbose":"none","-z":"none"}},"git branch":{safeFlags:{..._P,"--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"}}},qP=["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"],UP={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))}},Dd={"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:{}}},KP=["cd","alias","history","arch","ip addr","ifconfig"];HP=new Set(["echo","printf"])});var Wd={};Ft(Wd,{APPROVAL_LABELS:()=>gi,APPROVAL_MODES:()=>Vr,MODE_MAX_TIER:()=>Nd,TIER_RANK:()=>Yu,createPermissionExtension:()=>Ko,criticalCommand:()=>_d,decideToolCall:()=>Ud,describeToolCall:()=>Kd,formatApprovalPrompt:()=>Gd,getApprovalMode:()=>ZP,isApprovalMode:()=>JP,isReadOnlyCommand:()=>fi,resolveTier:()=>Xu,setApprovalMode:()=>Qu,setApprovalPrompt:()=>ec});function JP(e){return Vr.includes(e)}function Xu(e){let t=YP[e];return t||(e.startsWith("mcp__")?"write":"exec")}function _d(e){for(let{pattern:t,reason:n}of XP)if(t.test(e))return n}function Qu(e){Zu=e}function ZP(){return Zu}function ec(e){qd=e}function Ud(e,t,n){let r=typeof n?.command=="string"?n.command:"";if(t==="bash"||t==="powershell"){let s=_d(r);if(s)return{action:"deny",reason:`Refused in every mode: ${s}.`};if(fi(r))return{action:"run"}}let o=Xu(t);return Yu[o]<=Yu[Nd[e]]?{action:"run"}:{action:"prompt",reason:`this is a ${o}-tier tool`}}function Kd(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 Gd(e,t,n){let r=[`Allow tool: ${e}`];e.startsWith("mcp__")&&r.push("Origin: MCP server tool"),r.push(`Reason: ${n}`);let o=Kd(e,t);return o!==e&&r.push(o),r.join(`
|
|
11
|
-
`)}function Ko(e={}){return t=>{t.on("tool_call",async n=>{let r=Od(n.toolName,n.input);if(r)return{block:!0,reason:Cd(n.toolName,r.repeats)};let o=Zu,s=Ud(o,n.toolName,n.input);if(s.action==="run")return;if(s.action==="deny")return{block:!0,reason:s.reason};if(e.interactive===!1)return{block:!0,reason:`Blocked: this is a ${Xu(n.toolName)}-tier tool and no UI can approve it here (approval mode: ${o}).`};if(!await qd(`${n.toolName} wants to run`,Gd(n.toolName,n.input,s.reason)))return{block:!0,reason:`Blocked by the user (approval mode: ${o}).`}})}}var Vr,gi,Yu,Nd,YP,XP,Zu,qd,Go=m(()=>{zu();Ju();Ju();Vr=["suggest","auto-edit","full-auto"],gi={suggest:"suggest: ask before every edit and command","auto-edit":"auto-edit: edits run, commands ask","full-auto":"full-auto: nothing asks"};Yu={read:0,write:1,exec:2},Nd={suggest:"read","auto-edit":"write","full-auto":"exec"},YP={read:"read",grep:"read",find:"read",ls:"read",think:"read",ask:"read",todo:"read",context:"read",web_search:"read",web_fetch:"read",lsp:"read",workflow:"exec",goal:"read",enter_plan_mode:"read",exit_plan_mode:"read",edit:"write",write:"write",bash:"exec",powershell:"exec",task:"exec"};XP=[{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"}];Zu="full-auto",qd=async()=>!1});function QP(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 tA(e){if(!e)return;let t=!1,n={...e};for(let r of eA){let o=n[r];if(typeof o!="string")continue;let s=QP(o);s!==o&&(n[r]=s,t=!0)}return t?n:void 0}function Bd(){return e=>{e.on("context_with_system",async t=>{let n=t.messages[0];if(!n||n.role!=="system")return;let r=tA(n.sections);return r?{messages:t.messages.map(s=>s===n?{...n,sections:r}:s)}:void 0})}}var eA,zd=m(()=>{eA=["preamble","rules","docs","addendum"]});import{Type as Jr}from"@earendil-works/pi-ai";import{defineTool as Hd}from"@earendil-works/pi-coding-agent";function Vd(e){tc=e}var tc,Jd,Yd,nc=m(()=>{Jd=Hd({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:Jr.Object({thoughts:Jr.String({description:"Private notes"})}),async execute(){return{content:[{type:"text",text:"noted"}],details:{recorded:!0}}}}),Yd=Hd({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:Jr.Object({question:Jr.String(),options:Jr.Array(Jr.String(),{minItems:2})}),async execute(e,t){if(!tc)return{content:[{type:"text",text:"cancelled"}],details:{answer:"cancelled"}};let n=await tc(t.question,t.options);return{content:[{type:"text",text:n}],details:{answer:n}}}})});var tn,hr=m(()=>{tn={assign:0,create:0,clone:0,discard:0,update:0}});function xr(e,t,n){return e>=t&&e<=n}function Qd(e){return e===8205}function nA(e){return xr(e,55296,56319)}function Xd(e){return xr(e,127462,127487)}function ef(e){return xr(e,65024,65039)}function tf(e){return xr(e,768,879)||xr(e,6832,6911)||xr(e,7616,7679)||xr(e,65056,65071)}function hi(e){return e>65535?2:1}function Zd(e,t){for(;t<e.length;){let n=e.codePointAt(t);if(tf(n)||ef(n))t+=hi(n);else break}return t}function rc(e,t){let n=e.codePointAt(t),r=t+hi(n);for(r=Zd(e,r);r<e.length-1&&Qd(e.codePointAt(r));){let o=e.codePointAt(r+1);r+=1+hi(o),r=Zd(e,r)}return Xd(n)&&r<e.length&&Xd(e.codePointAt(r))&&(r+=hi(e.codePointAt(r))),r}function nf(e){return e>=768&&(nA(e)||tf(e)||ef(e)||Qd(e))}function rf(e){let t=0,n=0;for(;n<e.length;)n=rc(e,n),t++;return t}function rA(e,t){let n=0,r=0;for(;r<e.length;)if(r=rc(e,r),++n>=t)return!0;return!1}function oA(e,t){let n=0,r=0;for(;r<e.length;)if(r=rc(e,r),++n>t)return!1;return!0}function of(e,t){if(t===0)return!0;if(e.length<t)return!1;let n=0;for(;;){if(nf(e.charCodeAt(n)))return rA(e,t);if(++n>=t)return!0}}function sf(e,t){if(e.length<=t)return!0;let n=0;for(;;){if(nf(e.charCodeAt(n)))return oA(e,t);if(++n>t)return!1}}var af=m(()=>{});var u={};Ft(u,{Counted:()=>IA,Entries:()=>kA,EntriesRegExp:()=>wA,Every:()=>hA,EveryAll:()=>xA,GraphemeCount:()=>dA,HasPropertyKey:()=>$A,IsArray:()=>Bo,IsBigInt:()=>Wo,IsBoolean:()=>mf,IsClassInstance:()=>lA,IsConstructor:()=>iA,IsDeepEqual:()=>ic,IsEqual:()=>se,IsFunction:()=>uf,IsGreaterEqualThan:()=>pf,IsGreaterThan:()=>uA,IsInteger:()=>oc,IsLessEqualThan:()=>cf,IsLessThan:()=>cA,IsMaxLength:()=>fA,IsMinLength:()=>gA,IsMultipleOf:()=>pA,IsNull:()=>yi,IsNumber:()=>bi,IsObject:()=>zo,IsObjectNotArray:()=>aA,IsString:()=>Ii,IsSymbol:()=>mA,IsUndefined:()=>sc,IsUnsafePropertyKey:()=>df,IsValueLike:()=>lf,Keys:()=>xi,ShiftLeft:()=>$i,Some:()=>yA,SomeAll:()=>bA,Symbols:()=>TA,Values:()=>EA});function Bo(e){return Array.isArray(e)}function Wo(e){return se(typeof e,"bigint")}function mf(e){return se(typeof e,"boolean")}function iA(e){if(sc(e)||!uf(e))return!1;let t=Function.prototype.toString.call(e);return!!(/^class\s/.test(t)||/\[native code\]/.test(t))}function uf(e){return se(typeof e,"function")}function oc(e){return Number.isInteger(e)}function yi(e){return se(e,null)}function bi(e){return Number.isFinite(e)}function aA(e){return zo(e)&&!Bo(e)}function zo(e){return se(typeof e,"object")&&!yi(e)}function Ii(e){return se(typeof e,"string")}function mA(e){return se(typeof e,"symbol")}function sc(e){return se(e,void 0)}function se(e,t){return e===t}function uA(e,t){return e>t}function cA(e,t){return e<t}function cf(e,t){return e<=t}function pf(e,t){return e>=t}function pA(e,t){if(Wo(e)||Wo(t))return BigInt(e)%BigInt(t)===0n;let n=1e-10;if(!bi(e)||oc(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 lA(e){if(!zo(e))return!1;let t=globalThis.Object.getPrototypeOf(e);return yi(t)?!1:se(typeof t.constructor,"function")&&!(se(t.constructor,globalThis.Object)||se(t.constructor.name,"Object"))}function lf(e){return Wo(e)||mf(e)||yi(e)||bi(e)||Ii(e)||sc(e)}function dA(e){return rf(e)}function fA(e,t){return sf(e,t)}function gA(e,t){return of(e,t)}function hA(e,t,n){return e.every((r,o)=>o<t||n(r,o))}function xA(e,t,n){let r=!0;return e.forEach((o,s)=>{s>=t&&!n(o,s)&&(r=!1)}),r}function yA(e,t){return e.some((n,r)=>t(n,r))}function bA(e,t){let n=!1;return e.forEach((r,o)=>{t(r,o)&&(n=!0)}),n}function IA(e,t){return e.reduce((n,r,o)=>t(r,o)?++n:n,0)}function $i(e,t,n){return se(e.length,0)?n():t(e[0],e.slice(1))}function df(e){return se(e,"__proto__")||se(e,"constructor")||se(e,"prototype")}function $A(e,t){return df(t)?Object.prototype.hasOwnProperty.call(e,t):t in e}function wA(e){return xi(e).map(t=>[new RegExp(`^${t}$`),e[t]])}function kA(e){return Object.entries(e)}function xi(e){return Object.getOwnPropertyNames(e)}function TA(e){return Object.getOwnPropertySymbols(e)}function EA(e){return Object.values(e)}function vA(e,t){if(!zo(t))return!1;let n=xi(e);return se(n.length,xi(t).length)&&n.every(r=>ic(e[r],t[r]))}function SA(e,t){return Bo(t)&&se(e.length,t.length)&&e.every((n,r)=>ic(e[r],t[r]))}function ic(e,t){return Bo(e)?SA(e,t):zo(e)?vA(e,t):se(e,t)}var Yr=m(()=>{af()});var ff=m(()=>{Yr()});var Hn={};Ft(Hn,{IsBigInt64Array:()=>KA,IsBigUint64Array:()=>GA,IsBoolean:()=>AA,IsDate:()=>BA,IsFloat32Array:()=>qA,IsFloat64Array:()=>UA,IsInt16Array:()=>FA,IsInt32Array:()=>NA,IsInt8Array:()=>CA,IsMap:()=>HA,IsNumber:()=>RA,IsRegExp:()=>WA,IsSet:()=>zA,IsString:()=>OA,IsTypeArray:()=>MA,IsUint16Array:()=>DA,IsUint32Array:()=>_A,IsUint8Array:()=>LA,IsUint8ClampedArray:()=>jA});function AA(e){return e instanceof Boolean}function RA(e){return e instanceof Number}function OA(e){return e instanceof String}function MA(e){return globalThis.ArrayBuffer.isView(e)}function CA(e){return e instanceof globalThis.Int8Array}function LA(e){return e instanceof globalThis.Uint8Array}function jA(e){return e instanceof globalThis.Uint8ClampedArray}function FA(e){return e instanceof globalThis.Int16Array}function DA(e){return e instanceof globalThis.Uint16Array}function NA(e){return e instanceof globalThis.Int32Array}function _A(e){return e instanceof globalThis.Uint32Array}function qA(e){return e instanceof globalThis.Float32Array}function UA(e){return e instanceof globalThis.Float64Array}function KA(e){return e instanceof globalThis.BigInt64Array}function GA(e){return e instanceof globalThis.BigUint64Array}function WA(e){return e instanceof globalThis.RegExp}function BA(e){return e instanceof globalThis.Date}function zA(e){return e instanceof globalThis.Set}function HA(e){return e instanceof globalThis.Map}var gf=m(()=>{});var hf=m(()=>{Yr()});var A=m(()=>{ff();gf();hf();Yr();Yr()});var nn={};Ft(nn,{Get:()=>XA,Reset:()=>JA,Set:()=>YA});function JA(){gn.immutableTypes=!1,gn.maxErrors=8,gn.maxInstantiationCount=128,gn.useAcceleration=!0,gn.exactOptionalPropertyTypes=!1,gn.enumerableKind=!1,gn.correctiveParse=!1,gn.unionPrioritySort=!0}function YA(e){for(let t of u.Keys(e)){let n=e[t];n!==void 0&&Object.defineProperty(gn,t,{value:n})}}function XA(){return gn}var gn,xf=m(()=>{A();gn={immutableTypes:!1,maxErrors:8,maxInstantiationCount:128,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0}});var yr=m(()=>{xf()});function Vn(e){return nn.Get().immutableTypes?Object.freeze(e):e}var Ho=m(()=>{yr()});function ZA(e,t){return tn.assign+=1,Vn({...e,...t})}var yf=m(()=>{hr();Ho()});function QA(e){return u.HasPropertyKey(e,"~kind")||u.HasPropertyKey(e,"~unsafe")}function eR(e){let t={};for(let n of u.Keys(e)){if(u.IsUnsafePropertyKey(n))continue;let r=Object.getOwnPropertyDescriptor(e,n);r.value=br(r.value),u.IsEqual(r.enumerable,!0)?t[n]=r.value:Object.defineProperty(t,n,r)}return t}function tR(e){let t={};for(let n of u.Keys(e))u.IsUnsafePropertyKey(n)||(t[n]=br(e[n]));for(let n of u.Symbols(e))t[n]=br(e[n]);return t}function nR(e){return u.IsClassInstance(e)?e:QA(e)?eR(e):tR(e)}function rR(e){return e.map(t=>br(t))}function oR(e){return e.slice()}function sR(e){return new RegExp(e.source,e.flags)}function iR(e){return new Map(br([...e.entries()]))}function aR(e){return new Set(br([...e.values()]))}function br(e){return Hn.IsTypeArray(e)?oR(e):Hn.IsRegExp(e)?sR(e):Hn.IsMap(e)?iR(e):Hn.IsSet(e)?aR(e):u.IsArray(e)?rR(e):u.IsObject(e)?nR(e):e}function Vo(e){return tn.clone+=1,br(e)}var wi=m(()=>{A();hr()});function mR(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 bf(e,t){return{...e,...t}}function uR(e,t,n={}){tn.create+=1;let r=bf(t,n),o=nn.Get().enumerableKind?bf(r,e):mR(r,e);return Vn(o)}var If=m(()=>{yr();hr();Ho()});function cR(e,t){tn.discard+=1;let n={};for(let r of u.Keys(e)){if(t.includes(r))continue;let o=Object.getOwnPropertyDescriptor(e,r);o.value=Vo(o.value),Object.defineProperty(n,r,o)}return Vn(n)}var $f=m(()=>{A();hr();Ho();wi()});function pR(e,t,n){tn.update+=1;let r=nn.Get(),o=Vo(e);for(let s of Object.keys(t))Object.defineProperty(o,s,{configurable:!0,writable:!0,enumerable:r.enumerableKind,value:t[s]});for(let s of Object.keys(n))Object.defineProperty(o,s,{configurable:!0,enumerable:!0,writable:!0,value:n[s]});return Vn(o)}var wf=m(()=>{yr();hr();Ho();wi()});var d={};Ft(d,{Assign:()=>ZA,Clone:()=>Vo,Create:()=>uR,Discard:()=>cR,Metrics:()=>tn,Update:()=>pR});var kf=m(()=>{yf();wi();If();$f();hr();wf()});var E=m(()=>{kf()});function C(e,t){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.IsEqual(e["~kind"],t)}function Fe(e){return u.IsObject(e)}var H=m(()=>{A()});function F(e,t,n){return d.Create({"~kind":"Deferred"},{type:"deferred",action:e,parameters:t,options:n},{})}function Jn(e){return C(e,"Deferred")}var ae=m(()=>{E();H()});function lR(e){return d.Update(e,{"~readonly":!0},{})}function Jo(e,t){return d.Update(lR(e),{},t)}function Tf(e,t,n,r){let o=$(e,t,n);return Jo(o,r)}var ki=m(()=>{E();N()});function dR(e){return d.Update(e,{"~optional":!0},{})}function Yo(e,t){return d.Update(dR(e),{},t)}function Ef(e,t,n,r){let o=$(e,t,n);return Yo(o,r)}var Ti=m(()=>{E();N()});function Dt(e,t){return d.Create({"~kind":"Array"},{type:"array",items:e},t)}function we(e){return C(e,"Array")}function Ei(e){return d.Discard(e,["~kind","type","items"])}var pt=m(()=>{E();H()});function hn(e,t,n={}){return d.Create({"~kind":"Constructor"},{type:"constructor",parameters:e,instanceType:t},n)}function Ue(e){return C(e,"Constructor")}function vf(e){return d.Discard(e,["~kind","type","parameters","instanceType"])}var Gt=m(()=>{E();H()});function xn(e,t,n={}){return d.Create({"~kind":"Function"},{type:"function",parameters:e,returnType:t},n)}function Ke(e){return C(e,"Function")}function Sf(e){return d.Discard(e,["~kind","type","parameters","returnType"])}var Wt=m(()=>{E();H()});function Nn(e,t){return d.Create({"~kind":"Ref"},{$ref:e},t)}function Ge(e){return C(e,"Ref")}var Bt=m(()=>{E();H()});function Yn(e,t){return d.Create({"~kind":"Generic"},{type:"generic",parameters:e,expression:t})}function Xr(e){return C(e,"Generic")}var Xo=m(()=>{E();H()});function Zr(e){return d.Create({"~kind":"Any"},{},e)}function Ee(e){return C(e,"Any")}var It=m(()=>{E();H()});function de(e){return d.Create({"~kind":"Never"},{not:{}},e)}function rn(e){return C(e,"Never")}var Pf,Ve=m(()=>{E();H();Pf="(?!)"});function yn(e,t={}){return F("AddOptional",[e],t)}function Ir(e,t={}){return Yo(e,t)}var Zo=m(()=>{ae();Ti()});function Af(e){return Ir(e)}function ot(e){return Fe(e)&&u.HasPropertyKey(e,"~optional")}var Xn=m(()=>{A();H();Zo()});function Rf(e){return u.Keys(e).filter(t=>!ot(e[t]))}function vi(e){return u.Keys(e)}function Si(e){return u.Values(e)}var $r=m(()=>{A();Xn()});function G(e,t={}){let n=Rf(e),r=n.length>0?{required:n}:{};return d.Create({"~kind":"Object"},{type:"object",...r,properties:e},t)}function ue(e){return C(e,"Object")}function Of(e){return d.Discard(e,["~kind","type","properties","required"])}var le=m(()=>{E();H();$r()});function Je(e){return d.Create({"~kind":"Unknown"},{},e)}function Oe(e){return C(e,"Unknown")}var Qe=m(()=>{E();H()});function bn(e,t,n){let r=u.Keys(e).reduce((o,s)=>({...o,[s]:d.Update(e[s],{},{$id:s})}),{});return d.Create({"~kind":"Cyclic"},{$defs:r,$ref:t},n)}function et(e){return C(e,"Cyclic")}var $t=m(()=>{A();E();H()});function Mf(e){return d.Update(e,{"~unsafe":null},{})}function Pi(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"~unsafe")&&u.IsNull(e["~unsafe"])}var Ai=m(()=>{A();E()});var In={};Ft(In,{Match:()=>fR});function fR(e,t){return t[e.length]?.(...e)??(()=>{throw Error("Invalid Arguments")})()}var Cf=m(()=>{});var Qr=m(()=>{Cf()});function Qo(...e){let[t,n]=In.Match(e,{2:(r,o)=>[r,o,o],1:r=>[r,Je(),Je()]});return d.Create({"~kind":"Infer"},{type:"infer",name:t,extends:n},{})}function Me(e){return C(e,"Infer")}var zt=m(()=>{Qr();E();H();Qe()});function wr(e,t,n,r={}){return d.Create({"~kind":"Dependent"},{if:e,then:t,else:n},r)}function Se(e){return C(e,"Dependent")}function Lf(e){return d.Discard(e,["~kind","if","then","else"])}var Pt=m(()=>{E();H()});function jf(e){return u.IsObjectNotArray(e)}function Ff(e){return u.Keys(e).filter(n=>isNaN(n)).reduce((n,r)=>[...n,e[r]],[])}var Ri=m(()=>{A()});function Df(e){return u.IsString(e)||u.IsNumber(e)}function Nf(e,t){let n=jf(e)?Ff(e):e;return d.Create({"~kind":"Enum"},{enum:n},t)}function tt(e){return C(e,"Enum")}var on=m(()=>{A();E();H();Ri();Ri()});function wt(e,t={}){return d.Create({"~kind":"Intersect"},{allOf:e},t)}function te(e){return C(e,"Intersect")}function _f(e){return d.Discard(e,["~kind","allOf"])}var De=m(()=>{E();H()});var qf=m(()=>{yr();A()});var Uf=m(()=>{qf()});var Kf=m(()=>{Uf()});function Ne(){throw new Error("Unreachable")}var ac=m(()=>{});var $n=m(()=>{ac()});var Gf,uq,cq,pq,lq,Wf,dq,fq,gq,Bf=m(()=>{$n();A();(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"})(Gf||(Gf={}));uq=BigInt("14695981039346656037"),[cq,pq]=[BigInt("1099511628211"),BigInt("18446744073709551616")],lq=Array.from({length:256}).map((e,t)=>BigInt(t)),Wf=new Float64Array(1),dq=new DataView(Wf.buffer),fq=new Uint8Array(Wf.buffer),gq=new TextEncoder});var zf=m(()=>{Bf()});var mc=m(()=>{});var Hf=m(()=>{mc()});var Vf=m(()=>{});var Jf=m(()=>{});var Yf=m(()=>{});var Xf=m(()=>{});var Zf=m(()=>{});var Qf=m(()=>{});var eg=m(()=>{});var tg=m(()=>{});var ng=m(()=>{});var rg=m(()=>{});var og=m(()=>{});var uc=m(()=>{});var sg=m(()=>{});var ig=m(()=>{});var ag=m(()=>{});var mg=m(()=>{});var ug=m(()=>{});var cg=m(()=>{});var pg=m(()=>{});var lg=m(()=>{});var dg=m(()=>{});var fg=m(()=>{});var gg=m(()=>{});var hg=m(()=>{});var xg=m(()=>{});var yg=m(()=>{});var bg=m(()=>{});var Ig=m(()=>{});var $g=m(()=>{});var wg=m(()=>{});var kg=m(()=>{});var Tg=m(()=>{});var Eg=m(()=>{});var vg=m(()=>{});var Sg=m(()=>{});var Pg=m(()=>{});var Ag=m(()=>{});var Rg=m(()=>{Hf();Vf();Jf();Yf();Xf();Zf();mc();Qf();eg();tg();ng();rg();og();uc();uc();sg();ig();ag();mg();ug();cg();pg();lg();dg();fg();gg();hg();xg();yg();bg();Ig();$g();wg();kg();Tg();Eg();vg();Sg();Pg();Ag()});var Og=m(()=>{Rg()});var es=m(()=>{Qr();Kf();zf();Og();E();yr()});var Cg=m(()=>{es();es();es()});function Mi(e){return new ns(e)}function Lg(e,t){return Mi(e).Decode(t).Encode(()=>{throw Error("Encode not implemented")})}function jg(e,t){return Mi(e).Decode(()=>{throw Error("Decode not implemented")}).Encode(t)}function Oi(e){return Fe(e)&&u.HasPropertyKey(e,"~codec")&&u.IsObject(e["~codec"])&&u.HasPropertyKey(e["~codec"],"encode")&&u.HasPropertyKey(e["~codec"],"decode")}var ts,ns,cc=m(()=>{Cg();A();H();ts=class{constructor(t,n){this.type=t,this.decode=n}Encode(t){let n=this.type,r=Oi(n)?a=>this.decode(n["~codec"].decode(a)):this.decode,o=Oi(n)?a=>n["~codec"].encode(t(a)):t,s={decode:r,encode:o};return d.Update(this.type,{"~codec":s},{})}},ns=class{constructor(t){this.type=t}Decode(t){return new ts(this.type,t)}}});function Fg(e){return eo(e)}function kr(e){return Fe(e)&&u.HasPropertyKey(e,"~immutable")}var rs=m(()=>{A();H();os()});function wn(e,t={}){return F("AddReadonly",[e],t)}function Tr(e,t={}){return Jo(e,t)}var ss=m(()=>{ae();ki()});function Dg(e){return Tr(e)}function Er(e){return Fe(e)&&u.HasPropertyKey(e,"~readonly")}var is=m(()=>{A();H();ss()});function yR(e,t){let n=pc(e)?[...e["~refine"],t]:[t];return d.Update(e,{"~refine":n},{})}function Ng(...e){let[t,n,r]=In.Match(e,{3:(o,s,a)=>[o,s,a],2:(o,s)=>[o,s,()=>"Refine Error"]});return yR(t,{check:n,error:r})}function bR(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"check")&&u.HasPropertyKey(e,"error")&&u.IsFunction(e.check)&&u.IsFunction(e.error)}function pc(e){return Fe(e)&&u.HasPropertyKey(e,"~refine")&&u.IsArray(e["~refine"])&&u.Every(e["~refine"],0,t=>bR(t))}var lc=m(()=>{Qr();E();A();H()});function as(e){return d.Create({"~kind":"BigInt"},{type:"bigint"},e)}function kn(e){return C(e,"BigInt")}var _g,vr=m(()=>{E();H();_g="-?(?:0|[1-9][0-9]*)n"});function Ci(e){return d.Create({"~kind":"Boolean"},{type:"boolean"},e)}function Ht(e){return C(e,"Boolean")}var Zn=m(()=>{E();H()});function ms(e){return d.Create({"~kind":"Identifier"},{name:e})}function qg(e){return C(e,"Identifier")}var dc=m(()=>{E();H()});function Sr(e){return d.Create({"~kind":"Integer"},{type:"integer"},e)}function lt(e){return C(e,"Integer")}var Li,Tn=m(()=>{E();H();Li="-?(?:0|[1-9][0-9]*)"});function IR(e){return u.IsBigInt(e)?"bigint":u.IsBoolean(e)?"boolean":u.IsNumber(e)?"number":u.IsString(e)?"string":(()=>{throw new fc(e)})()}function ne(e,t){return d.Create({"~kind":"Literal"},{type:IR(e),const:e},t)}function ji(e){return u.IsBigInt(e)||u.IsBoolean(e)||u.IsNumber(e)||u.IsString(e)}function Ug(e){return ce(e)&&u.IsNumber(e.const)}function Kg(e){return ce(e)&&u.IsString(e.const)}function ce(e){return C(e,"Literal")}var fc,Ce=m(()=>{E();A();H();fc=class extends Error{constructor(t){super("Invalid Literal value"),Object.defineProperty(this,"cause",{value:{value:t},writable:!1,configurable:!1,enumerable:!1})}}});function to(e){return d.Create({"~kind":"Null"},{type:"null"},e)}function no(e){return C(e,"Null")}var ro=m(()=>{E();H()});function At(e){return d.Create({"~kind":"Number"},{type:"number"},e)}function Le(e){return C(e,"Number")}var Fi,dt=m(()=>{E();H();Fi="-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?"});function oo(e){return d.Create({"~kind":"Symbol"},{type:"symbol"},e)}function Qn(e){return C(e,"Symbol")}var Pr=m(()=>{E();H()});function Ar(...e){let[t,n,r]=In.Match(e,{3:(o,s,a)=>[o,s,a],2:(o,s)=>[o,s,s],1:o=>[o,Je(),Je()]});return d.Create({"~kind":"Parameter"},{name:t,extends:n,equals:r},{})}function Gg(e){return C(e,"Parameter")}var gc=m(()=>{Qr();E();H();Qe()});function Vt(e){return d.Create({"~kind":"String"},{type:"string"},e)}function ft(e){return C(e,"String")}var Di,Jt=m(()=>{E();H();Di=".*"});function J(e,t={}){return d.Create({"~kind":"Union"},{anyOf:e},t)}function L(e){return C(e,"Union")}function Wg(e){return d.Discard(e,["~kind","anyOf"])}var X=m(()=>{E();H()});function us(e){let t=Bg(e);return u.IsEqual(t.length,2)?t[0]:[]}var cs=m(()=>{A();Ni()});function $R(e){return!0}function zg(e){return u.ShiftLeft(e,(t,n)=>wR(t)?zg(n):!1,()=>!0)}function Hg(e){return u.IsEqual(e.length,0)?!1:zg(e)}function wR(e){return L(e)?Hg(e.anyOf):ce(e)?$R(e.const):!1}function _i(e){return Hg(e)}var qi=m(()=>{A();Ce();X()});function Ui(e){return d.Create({"~kind":"TemplateLiteral"},{type:"string",pattern:e},{})}var Ki=m(()=>{E()});function Vg(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Vg(o,t,[...n,`${r}${t}`]),()=>n)}function kR(e,t){return u.IsEqual(e.length,0)?[`${t}`]:Vg(e,t)}function Jg(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>Jg(e,o,[...n,...Yg(e,r)]),()=>n)}function Yg(e,t){return L(t)?Jg(e,t.anyOf):ce(t)?kR(e,t.const):Ne()}function Xg(e,t){return u.ShiftLeft(t,(n,r)=>Xg(Yg(e,n),r),()=>e)}function TR(e){return e.map(t=>ne(t))}function ER(e){let t=Xg([],e),n=TR(t);return J(n)}function vR(e){return u.IsEqual(e.length,0)?Ne():u.IsEqual(e.length,1)&&ce(e[0])?e[0]:ER(e)}function hc(e){let t=us(e);return u.IsEqual(t.length,0)?Vt():_i(t)?vR(t):Ui(e)}function Zg(e){let t=hc(e);return Pe(t)?Vt():t}var Gi=m(()=>{A();$n();Ce();Jt();kt();X();cs();qi();Ki()});function Tt(e,t){let n="object",r={[e]:t};return d.Create({"~kind":"Record"},{type:n,patternProperties:r})}var er=m(()=>{E()});function Qg(e){return Tt(sn,e)}var eh=m(()=>{Ye();er()});function th(e){return G({true:e,false:e})}var nh=m(()=>{le()});function je(e,t={}){let[n,r,o]=[e,e.length,!1];return d.Create({"~kind":"Tuple"},{type:"array",additionalItems:o,items:n,minItems:r},t)}function he(e){return C(e,"Tuple")}function rh(e){return d.Discard(e,["~kind","type","items","minItems","additionalItems"])}var _e=m(()=>{E();H()});function SR(e){return d.Discard(e,["~readonly"])}function xc(e,t){return d.Update(SR(e),{},t)}function oh(e,t,n,r){let o=$(e,t,n);return xc(o,r)}var yc=m(()=>{E();N()});function sh(e,t={}){return F("RemoveReadonly",[e],t)}function ih(e,t={}){return xc(e,t)}var bc=m(()=>{ae();yc()});function PR(e){return d.Discard(e,["~optional"])}function Ic(e,t){return d.Update(PR(e),{},t)}function ah(e,t,n,r){let o=$(e,t,n);return Ic(o,r)}var $c=m(()=>{E();N()});function mh(e,t={}){return F("RemoveOptional",[e],t)}function Wi(e,t={}){return Ic(e,t)}var Bi=m(()=>{ae();$c()});function wc(e){return e.reduceRight((n,r,o)=>({[o]:r,...n}),{})}function uh(e){let t=wc(e.items);return G(t)}var kc=m(()=>{le()});function Tc(e){return ue(e)||he(e)}function AR(e,t){return Er(e)?!!Er(t):!1}function RR(e,t){return ot(e)?!!ot(t):!1}function OR(e,t){let n=AR(e,t),r=RR(e,t),o=ke([e,t]),s=ih(Wi(o));return n&&r?Tr(Ir(s)):n&&!r?Tr(s):!n&&r?Ir(s):s}function MR(e,t,n){return n in e?n in t?OR(e[n],t[n]):e[n]:n in t?t[n]:de()}function CR(e,t){return[...new Set([...u.Keys(e),...u.Keys(t)])].reduce((o,s)=>({...o,[s]:MR(e,t,s)}),{})}function ch(e){return ue(e)?e.properties:he(e)?wc(e.items):{}}function ph(e,t){let n=ch(e),r=ch(t),o=CR(n,r);return G(o)}var Ec=m(()=>{A();is();Xn();le();Ve();_e();ss();Zo();bc();Bi();kc();V()});function LR(e,t){let n=ds(e,t);return u.IsEqual(n,ls)?e:u.IsEqual(n,zi)||u.IsEqual(n,ps)?t:de()}function jR(e,t){let n=Tc(e),r=Tc(t);return n&&r?ph(e,t):n&&!r?e:!n&&r?t:LR(e,t)}function lh(e,t){return rn(e)||Ee(e)?e:Oe(e)||rn(t)||Ee(t)?t:Oe(t)?e:jR(e,t)}var vc=m(()=>{A();It();Ve();Qe();fs();Ec()});function FR(e,t){return L(e)||L(t)}function DR(e,t){let n=Yt(e),r=Yt(t);return FR(n,r)?ke([n,r]):lh(n,r)}function dh(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>dh(e,o,[...n,DR(r,e)]),()=>u.IsEqual(n.length,0)?[e]:n)}function fh(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>fh(o,t,[...n,...gs([r],t)]),()=>n)}function gs(e,t=[]){return u.ShiftLeft(e,(n,r)=>L(n)?gs(r,fh(n.anyOf,t)):gs(r,dh(n,t)),()=>t)}var Sc=m(()=>{A();X();vc();V();V()});function NR(e,t){let n=nt({},e,t);return W.IsExtendsTrueLike(n)?[]:[e]}function gh(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>gh(o,t,[...n,...NR(r,t)]),()=>n)}function Hi(e,t){let n=Yt(e),r=L(n)?n.anyOf:[n],o=gh(r,t);return Et(o)}var Pc=m(()=>{A();X();En();V();V()});function an(e,t,n){let r=ke([e,t]),o=Hi(n,e);return Et([r,o])}function gt(e,t=[]){return u.ShiftLeft(e,(n,r)=>gt(r,[...t,ne(n)]),()=>Et(t))}function ke(e){let t=gs(e),n=Ac(t);return Et(n)}function st(e){let t=Zg(e);return Yt(t)}function Et(e){let t=Ac(e);return tr(t)}function Yt(e){return Se(e)?an(e.if,e.then,e.else):tt(e)?gt(e.enum):te(e)?ke(e.allOf):Pe(e)?st(e.pattern):L(e)?Et(e.anyOf):e}function tr(e){return u.IsEqual(e.length,1)?e[0]:u.IsEqual(e.length,0)?de():J(e)}var V=m(()=>{A();Pt();on();De();Ce();Ve();kt();X();Sc();Rc();Pc();Gi()});function hh(e,t){let n=gt(e);return nr(n,t)}var xh=m(()=>{hs();V()});function yh(e,t){return Tt(rr,t)}var bh=m(()=>{Ye();er()});function Ih(e,t){let n=ke(e);return nr(n,t)}var $h=m(()=>{V();hs()});function wh(e,t){return u.IsString(e)||u.IsNumber(e)?G({[e]:t}):u.IsEqual(e,!1)?G({false:t}):u.IsEqual(e,!0)?G({true:t}):G({})}var kh=m(()=>{A();le()});function Th(e,t){return Tt(so,t)}var Eh=m(()=>{Ye();er()});function vh(e,t){return u.HasPropertyKey(e,"pattern")&&(u.IsString(e.pattern)||e.pattern instanceof RegExp)?Tt(e.pattern.toString(),t):Tt(sn,t)}var Sh=m(()=>{A();Ye();er()});function Ph(e,t){let n=us(e);return _i(n)?nr(st(e),t):Tt(e,t)}var Ah=m(()=>{hs();cs();qi();V();er()});function _R(e){return L(e)?io(e.anyOf):[e]}function io(e,t=[]){return u.ShiftLeft(e,(n,r)=>io(r,[...t,..._R(n)]),()=>t)}var Vi=m(()=>{A();X()});function qR(e){return e.some(t=>ft(t)||Le(t)||lt(t))}function UR(e,t){return u.IsEqual(qR(e),!0)?Tt(sn,t):void 0}function KR(e,t){return e.reduce((n,r)=>ce(r)&&(u.IsString(r.const)||u.IsNumber(r.const))?{...n,[r.const]:t}:n,{})}function GR(e,t){let n=KR(e,t);return G(n)}function Rh(e,t){let n=io(e),r=UR(n,t);return Fe(r)?r:GR(n,t)}var Oh=m(()=>{A();H();Ce();dt();Tn();le();Jt();Ye();Vi();er()});function nr(e,t){return Ee(e)?Qg(t):Ht(e)?th(t):tt(e)?hh(e.enum,t):lt(e)?yh(e,t):te(e)?Ih(e.allOf,t):ce(e)?wh(e.const,t):Le(e)?Th(e,t):L(e)?Rh(e.anyOf,t):ft(e)?vh(e,t):Pe(e)?Ph(e.pattern,t):G({})}var hs=m(()=>{It();Zn();on();De();Tn();Ce();dt();le();Jt();kt();X();eh();nh();xh();bh();$h();kh();Eh();Sh();Ah();Oh()});function Oc(e,t,n){return z([e])?d.Update(nr(e,t),{},n):Yi(e,t,n)}function Mh(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Oc(s,a,o)}var Ji=m(()=>{E();Ye();hs();N()});function Yi(e,t,n={}){return F("Record",[e,t],n)}function Xi(e,t,n={}){return Oc(e,t,n)}function Ch(e,t){return Tt(e,t)}function Zi(e){return u.IsEqual(e,sn)?Vt():u.IsEqual(e,rr)?Sr():u.IsEqual(e,so)?At():hc(e)}function Xt(e){return u.Keys(e.patternProperties)[0]}function ao(e){let t=Xt(e);return Zi(t)}function ht(e){return e.patternProperties[Xt(e)]}function rt(e){return C(e,"Record")}var rr,so,sn,Ye=m(()=>{E();A();H();Tn();dt();Jt();ae();Gi();er();Ji();rr=`^${Li}$`,so=`^${Fi}$`,sn=`^${Di}$`});function Rr(e){return d.Create({"~kind":"Rest"},{type:"rest",items:e},{})}function or(e){return C(e,"Rest")}var mo=m(()=>{E();H()});var Lh=m(()=>{});function Qi(e){return d.Create({"~kind":"This"},{$ref:"#"},e)}function ea(e){return C(e,"This")}var ta=m(()=>{E();H()});function uo(e){return d.Create({"~kind":"Undefined"},{type:"undefined"},e)}function co(e){return C(e,"Undefined")}var po=m(()=>{E();H()});function na(e){return d.Create({"~kind":"Void"},{type:"void"},e)}function vn(e){return C(e,"Void")}var Or=m(()=>{E();H()});var ra=m(()=>{cc();rs();Xn();is();lc();It();pt();vr();Zn();lo();Gt();$t();ae();on();Wt();Xo();dc();Pt();zt();Tn();De();Ce();Ve();ro();dt();Qe();Pr();le();gc();$r();Ye();Bt();mo();H();Lh();Jt();Pr();kt();ta();_e();po();X();Qe();Ai();Or()});function BR(e,t){return u.IsEqual(e,"Array")?Dt(t[0]):u.IsEqual(e,"Capitalize")?sa(t[0]):u.IsEqual(e,"ConstructorParameters")?ca(t[0]):u.IsEqual(e,"Evaluate")?Fy(t[0]):u.IsEqual(e,"Exclude")?pa(t[0],t[1]):u.IsEqual(e,"Extract")?la(t[0],t[1]):u.IsEqual(e,"Index")?Is(t[0],t[1]):u.IsEqual(e,"InstanceType")?da(t[0]):u.IsEqual(e,"Lowercase")?ia(t[0]):u.IsEqual(e,"NonNullable")?fa(t[0]):u.IsEqual(e,"Omit")?ga(t[0],t[1]):u.IsEqual(e,"Parameters")?ha(t[0]):u.IsEqual(e,"Partial")?xa(t[0]):u.IsEqual(e,"Pick")?ya(t[0],t[1]):u.IsEqual(e,"Readonly")?ba(t[0]):u.IsEqual(e,"KeyOf")?$s(t[0]):u.IsEqual(e,"Record")?Yi(t[0],t[1]):u.IsEqual(e,"Required")?Ia(t[0]):u.IsEqual(e,"ReturnType")?$a(t[0]):u.IsEqual(e,"Uncapitalize")?aa(t[0]):u.IsEqual(e,"Uppercase")?ma(t[0]):bs(Nn(e),t)}function Mr(){throw Error("Unreachable")}function _h(e,t=[]){return u.ShiftLeft(e,(n,r)=>_h(r,[...t,n[1]]),()=>t)}function _n(e){return u.IsEqual(e.length,3)?[e[0],..._h(e[1])]:[]}function qh(e){return Ar(e[0],e[2],e[4])}function Uh(e){return Ar(e[0],e[2],e[2])}function Kh(e){return Ar(e[0],Je(),e[2])}function Gh(e){return Ar(e,Je(),Je())}function Wh(e){return _n(e)}function Bh(e){return e[1]}function zh(e){return _n(e)}function Hh(e){return e[1]}function Vh(e){return BR(e[0],e[1])}function Jh(e){return null}function Yh(e){return Vt()}function Xh(e){return At()}function Zh(e){return Ci()}function Qh(e){return uo()}function ex(e){return to()}function tx(e){return Sr()}function nx(e){return as()}function rx(e){return Je()}function ox(e){return Zr()}function sx(e){return G({})}function ix(e){return de()}function ax(e){return oo()}function mx(e){return na()}function ux(e){return Qi()}function cx(e){return ne(BigInt(e))}function px(e){return ne(u.IsEqual(e,"true"))}function lx(e){return ne(parseFloat(e))}function dx(e){return ne(e)}function fx(e){return e[1]}function gx(e){return ne(e)}function hx(e){return u.IsEqual(e.length,3)?[e[0],e[1],...e[2]]:[e[0]]}function xx(e){return e[1]}function yx(e){return oa(e)}function bx(e){return u.IsEqual(e.length,6)?wr(e[1],e[3],e[5]):wr(e[1],e[3],Je())}function Ix(e){return e.length>0}function $x(e){return e.reduce((t,n)=>u.IsEqual(n.length,3)?[...t,[n[1]]]:[...t,[]],[])}function wx(e){return u.IsEqual(e.length,6)?[e[1],e[3],e[5]]:[]}function kx(e){return u.IsArray(e)&&u.IsEqual(e.length,3)?e[1]:e}function Tx(e){return u.IsEqual(e.length,2)?e[1]:[]}function jh(e,t){return t.reduce((n,r)=>{let o=r;return u.IsEqual(o.length,1)?Is(n,o[0]):u.IsEqual(o.length,0)?Dt(n):Mr()},e)}function Fh(e,t){return u.IsEqual(t.length,3)?ua(e,t[0],t[1],t[2]):e}function zR(e,t){return u.IsArray(t)&&u.IsEqual(t.length,0)?e:wa(e,t)}function Ex(e){let[t,n,r,o,s]=e;return zR(Fh(t?$s(jh(n,r)):jh(n,r),o),s)}function Mc(e,t){return u.IsEqual(t.length,3)?(()=>{let[n,r,o]=t,s=Mc(r,o);if(u.IsEqual(n,"&"))return te(s)?wt([e,...s.allOf]):wt([e,s]);if(u.IsEqual(n,"|"))return L(s)?J([e,...s.anyOf]):J([e,s]);Mr()})():e}function vx(e){let[t,n]=e;return Mc(t,n)}function Sx(e){let[t,n]=e;return Mc(t,n)}function Px(e){return jy(e[1])}function Ax(e){return e[1]}function Rx(e){return Yn(e[0],e[2])}function Ox(e){return u.IsEqual(e.length,4)?Qo(e[1],e[3]):u.IsEqual(e.length,2)?Qo(e[1],Je()):Mr()}function Mx(e){return`${e}`}function Cx(e){return lt(e[3])?rr:Le(e[3])?so:Qn(e[3])?sn:ft(e[3])?sn:Mr()}function Lx(e){return e.length>0}function jx(e){return e.length>0}function Fx(e){let[t,n,r,o,s]=e;return{[n]:t&&r?wn(yn(s)):t&&!r?wn(s):!t&&r?yn(s):s}}function Dx(e){return _n(e)}function Nx(e){return e.reduce((t,n)=>u.HasPropertyKey(n,rr)||u.HasPropertyKey(n,so)||u.HasPropertyKey(n,sn)?[t[0],d.Assign(t[1],n)]:[d.Assign(t[0],n),t[1]],[{},{}])}function _x(e){return Nx(e[1])}function qx(e){let[t,n]=e,r=u.IsEqual(u.Keys(n).length,0)?{}:{patternProperties:n};return G(t,r)}function Ux(e){return u.IsEqual(e.length,5)?wn(yn(e[4])):u.IsEqual(e.length,3)?e[2]:u.IsEqual(e.length,4)?u.IsEqual(e[2],"readonly")?wn(e[3]):yn(e[3]):Mr()}function Kx(e){if(!u.IsArray(e)||!u.IsEqual(e.length,3))return e;let[t,n,r]=e;return t&&r?wn(yn(n)):t&&!r?wn(n):!t&&r?yn(n):n}function Gx(e){return u.IsEqual(e.length,2)?Rr(e[1]):u.IsEqual(e.length,1)?e[0]:Mr()}function Wx(e){return _n(e)}function Bx(e){return je(e[1])}function zx(e){return wn(yn(e[4]))}function Hx(e){return wn(e[3])}function Vx(e){return yn(e[3])}function Jx(e){return e[2]}function Yx(e){return u.IsEqual(e.length,2)?Rr(e[1]):u.IsEqual(e.length,1)?e[0]:Mr()}function Xx(e){return _n(e)}function Zx(e){return xn(e[1],e[4])}function Qx(e){return hn(e[2],e[5])}function Dh(e,t){return u.IsEqual(e,"remove")?sh(t):u.IsEqual(e,"add")?wn(t):t}function ey(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 Nh(e,t){return u.IsEqual(e,"remove")?mh(t):u.IsEqual(e,"add")?yn(t):t}function ty(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 ny(e){return u.IsEqual(e.length,2)?[e[1]]:[]}function ry(e){return u.IsArray(e[6])&&u.IsEqual(e[6].length,1)?xs(ms(e[3]),e[5],e[6][0],Dh(e[1],Nh(e[8],e[10]))):xs(ms(e[3]),e[5],Nn(e[3]),Dh(e[1],Nh(e[8],e[10])))}function oy(e){return Nn(e)}function sy(e){return BigInt(e)}function iy(e){return parseFloat(e)}function ay(e){return u.IsEqual(e,"true")}function my(e){return null}function uy(e){return{[e[0]]:e[2]}}function cy(e){return _n(e)}function HR(e){return e.reduce((t,n)=>d.Assign(t,n),{})}function py(e){return HR(e[1])}function ly(e){return _n(e)}function dy(e){return e[1]}function fy(e){return as()}function gy(e){return Vt()}function hy(e){return At()}function xy(e){return Sr()}function yy(e){return de()}function by(e){return ne(e)}function Iy(e){return J(e[1])}function $y(e){return e.length===3?[...e[0],...e[2]]:e.length===1?[...e[0]]:[]}function wy(e){return[e[0],...e[1]]}function ky(e){return e[1]}function Ty(e){return _n(e)}function Ey(e){return u.IsEqual(e.length,2)?e[1]:[]}function vy(e){let t=e[2],n=e[3],[r,o]=e[4],s=u.IsEqual(u.Keys(o).length,0)?{}:{patternProperties:o};return{[e[1]]:Yn(t,ys(n,r,s))}}function Sy(e){let t=e[2],[n,r]=e[3],o=u.IsEqual(u.Keys(r).length,0)?{}:{patternProperties:r};return{[e[1]]:ys(t,n,o)}}function Py(e){return{[e[1]]:Yn(e[2],e[4])}}function Ay(e){return{[e[1]]:e[3]}}function Ry(e){return null}function Oy(e){return _n(e)}function My(e){return e[1]}function Cy(e){let[t,n]=[e[0],e[1]];return Dy(d.Assign(t,Nx(n)[0]))}var Ly=m(()=>{E();A();ra();fo()});var qn=m(()=>{Yr()});function ws(e){return se(e.length,2)}function Z(e,t,n){return ws(e)?t(e[0],e[1]):n()}var Rt=m(()=>{qn()});function YR(e,t){return se(t.indexOf(e),0)?[e,t.slice(e.length)]:[]}function ve(e,t){for(let n=0;n<e.length;n++){let r=YR(e[n],t);if(ws(r))return r}return[]}var Sn=m(()=>{Rt();qn()});function Cc(e,t){return Array.from({length:t-e+1},(n,r)=>String.fromCharCode(e+r))}var Ny,Lc,jc,go,_y,ho,sr,ka,qy,Ta,it=m(()=>{Ny=[...Cc(97,122),...Cc(65,90)],Lc="0",jc=Cc(49,57),go=[Lc,...jc],_y=" ",ho=`
|
|
12
|
-
`,sr="_",ka=".",qy="$",Ta="-"});function Gy(e){let t=e.indexOf(ZR);return se(t,-1)?"":e.slice(t+2)}function Wy(e){let t=e.indexOf(ho);return se(t,-1)?"":e.slice(t)}function QR(e){return e.replace(/^[ \t\r\f\v]+/,"")}function Ea(e){let t=QR(e);return t.startsWith(Ky)?Ea(Gy(t.slice(2))):t.startsWith(Uy)?Ea(Wy(t.slice(2))):t}function Xe(e){let t=e.trimStart();return t.startsWith(Ky)?Xe(Gy(t.slice(2))):t.startsWith(Uy)?Xe(Wy(t.slice(2))):t}var Uy,Ky,ZR,Pn=m(()=>{qn();it();Uy="//",Ky="/*",ZR="*/"});function va(e,t){return Z(ve([e],t),(n,r)=>[n,r],()=>["",t])}var Fc=m(()=>{Rt();Sn()});function eO(e,t){return e.includes(t)}function xo(e,t,n,r=""){return Z(ve(e,n),(o,s)=>eO(t,o)?xo(e,t,s,r):xo(e,t,s,`${r}${o}`),()=>[r,n])}var Dc=m(()=>{Rt();Sn()});function tO(e){return ve(jc,e)}function rO(e){return xo(nO,[sr],e)}function oO(e){return Z(ve([Lc],e),(t,n)=>[t,n],()=>Z(tO(e),(t,n)=>Z(rO(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[]))}function Sa(e){return oO(Xe(e))}var nO,Pa=m(()=>{Rt();Pn();Sn();Dc();it();it();it();it();nO=[...go,sr]});function sO(e){return va(Ta,e)}function iO(e){return Z(sO(e),(t,n)=>Z(Sa(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function By(e){return iO(Xe(e))}var Nc=m(()=>{Rt();Pn();Fc();it();Pa()});function aO(e){return Z(By(e),(t,n)=>Z(ve(["n"],n),(r,o)=>[`${t}`,o],()=>[]),()=>[])}function _c(e){return aO(e)}var zy=m(()=>{Rt();Sn();Nc()});function qc(e,t){return ve([e],t)}function g(e,t){return se(e,"")?["",t]:e.startsWith(ho)?qc(e,Ea(t)):e.startsWith(_y)?qc(e,t):qc(e,Xe(t))}var Hy=m(()=>{qn();Pn();Pn();Sn();it();it()});function mO(e){return ve(Vy,e)}function Jy(e,t=""){return Z(ve(uO,e),(n,r)=>Jy(r,`${t}${n}`),()=>[t,e])}function cO(e){return Z(mO(e),(t,n)=>Z(Jy(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Ae(e){return cO(Xe(e))}var Vy,uO,Yy=m(()=>{Rt();Pn();Sn();it();it();it();it();Vy=[...Ny,sr,qy];uO=[...Vy,...go]});function lO(e){return ws(ve([ka],e))}function Xy(e){return Z(xo(pO,[sr],e),(t,n)=>se(t,"")?[]:[t,n],()=>[])}function dO(e){return Z(ve([ka],e),(t,n)=>Z(Xy(n),(r,o)=>[`0${t}${r}`,o],()=>[]),()=>[])}function fO(e){return Z(Sa(e),(t,n)=>Z(ve([ka],n),(r,o)=>Z(Xy(o),(s,a)=>[`${t}${r}${s}`,a],()=>[`${t}`,o]),()=>[`${t}`,n]),()=>[])}function gO(e){return lO(e)?dO(e):fO(e)}function Zy(e){return gO(Xe(e))}var pO,Uc=m(()=>{qn();Rt();Pn();Sn();Dc();it();it();Pa();pO=[...go,sr]});function hO(e){return va(Ta,e)}function xO(e){return Z(hO(e),(t,n)=>Z(Zy(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Aa(e){return xO(Xe(e))}var Qy=m(()=>{Rt();Pn();Fc();it();Uc()});var eb=m(()=>{qn()});function yO(e){return se(e,"")?[]:[e.slice(0,1),e.slice(1)]}function tb(e,t){return $i(e,(n,r)=>t.startsWith(n)?!0:tb(r,t),()=>!1)}function ir(e,t,n=""){return Z(yO(t),(r,o)=>tb(e,t)?[n,t]:ir(e,o,`${n}${r}`),()=>[])}var Ra=m(()=>{Rt();qn()});function bO(e,t,n){return Z(ve([e],n),(r,o)=>Z(ir([t],o),(s,a)=>Z(ve([t],a),(c,p)=>[`${s}`,p],()=>[]),()=>[]),()=>[])}function IO(e,t,n){return Z(ve([e],n),(r,o)=>Z(ir([ho,t],o),(s,a)=>Z(ve([t],a),(c,p)=>[`${s}`,p],()=>[]),()=>[]),()=>[])}function nb(e,t,n,r){return n?bO(e,t,Xe(r)):IO(e,t,Xe(r))}var Kc=m(()=>{Rt();Pn();it();Sn();Ra()});function $O(e,t){return ve(e,t)}function wO(e,t){return nb(e,e,!1,t)}function kO(e,t){return Z($O(e,t),(n,r)=>wO(n,`${n}${r}`),()=>[])}function Oa(e,t){return kO(e,Xe(t))}var rb=m(()=>{Rt();Sn();Pn();Kc()});function ob(e,t){return Z(ir(e,t),(n,r)=>se(n,"")?[]:[n,r],()=>[])}var sb=m(()=>{qn();Rt();Ra()});var ib=m(()=>{zy();Hy();Yy();Nc();Qy();eb();Kc();rb();Pa();Uc();sb();Ra()});var i,EO,vO,SO,PO,ub,cb,AO,Bc,pb,RO,OO,MO,lb,db,fb,CO,LO,jO,gb,FO,DO,NO,_O,qO,hb,UO,KO,GO,Gc,xb,zc,WO,BO,zO,HO,VO,JO,YO,yb,XO,ZO,QO,eM,bb,Ib,$b,wb,Ma,tM,nM,rM,oM,ie,sM,iM,aM,mM,kb,Tb,Eb,vb,Ca,Sb,uM,Hc,cM,pM,ab,Pb,Ab,lM,dM,fM,gM,hM,xM,mb,Rb,Ob,Mb,yM,bM,IM,$M,wM,kM,TM,EM,vM,SM,PM,AM,RM,Cb,Lb,OM,jb,Fb,MM,CM,Vc,LM,jM,FM,DM,NM,_M,qM,UM,Db,Wc,Jc,Bg,Nb,KM,_b,GM,WM,BM,zM,HM,qb,Ub,VM,Yc,JM,Kb,Ni=m(()=>{Ly();ib();i=(e,t,n=()=>[])=>e.length===2?t(e):n(),EO=e=>i(i(Ae(e),([t,n])=>i(g("extends",n),([r,o])=>i(ie(o),([s,a])=>i(g("=",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[qh(t),n]),vO=e=>i(i(Ae(e),([t,n])=>i(g("extends",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Uh(t),n]),SO=e=>i(i(Ae(e),([t,n])=>i(g("=",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Kh(t),n]),PO=e=>i(Ae(e),([t,n])=>[Gh(t),n]),ub=e=>i(i(EO(e),([t,n])=>[t,n],()=>i(vO(e),([t,n])=>[t,n],()=>i(SO(e),([t,n])=>[t,n],()=>i(PO(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),cb=(e,t=[])=>i(i(g(",",e),([n,r])=>i(ub(r),([o,s])=>[[n,o],s])),([n,r])=>cb(r,[...t,n]),()=>[t,e]),AO=e=>i(i(i(ub(e),([t,n])=>i(cb(n),([r,o])=>i(i(g(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Wh(t),n]),Bc=e=>i(i(g("<",e),([t,n])=>i(AO(n),([r,o])=>i(g(">",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Bh(t),n]),pb=(e,t=[])=>i(i(g(",",e),([n,r])=>i(ie(r),([o,s])=>[[n,o],s])),([n,r])=>pb(r,[...t,n]),()=>[t,e]),RO=e=>i(i(i(ie(e),([t,n])=>i(pb(n),([r,o])=>i(i(g(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[zh(t),n]),OO=e=>i(i(g("<",e),([t,n])=>i(RO(n),([r,o])=>i(g(">",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Hh(t),n]),MO=e=>i(i(Ae(e),([t,n])=>i(OO(n),([r,o])=>[[t,r],o])),([t,n])=>[Vh(t),n]),lb=e=>i(i(i(g(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Jh(t),n]),db=e=>i(g("string",e),([t,n])=>[Yh(t),n]),fb=e=>i(g("number",e),([t,n])=>[Xh(t),n]),CO=e=>i(g("boolean",e),([t,n])=>[Zh(t),n]),LO=e=>i(g("undefined",e),([t,n])=>[Qh(t),n]),jO=e=>i(g("null",e),([t,n])=>[ex(t),n]),gb=e=>i(g("integer",e),([t,n])=>[tx(t),n]),FO=e=>i(g("bigint",e),([t,n])=>[nx(t),n]),DO=e=>i(g("unknown",e),([t,n])=>[rx(t),n]),NO=e=>i(g("any",e),([t,n])=>[ox(t),n]),_O=e=>i(g("object",e),([t,n])=>[sx(t),n]),qO=e=>i(g("never",e),([t,n])=>[ix(t),n]),hb=e=>i(g("symbol",e),([t,n])=>[ax(t),n]),UO=e=>i(g("void",e),([t,n])=>[mx(t),n]),KO=e=>i(g("this",e),([t,n])=>[ux(t),n]),GO=e=>i(i(g("${",e),([t,n])=>i(ie(n),([r,o])=>i(g("}",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[fx(t),n]),Gc=e=>i(ir(["${","`"],e),([t,n])=>[gx(t),n]),xb=e=>i(i(i(Gc(e),([t,n])=>i(GO(n),([r,o])=>i(xb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i(i(Gc(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(Gc(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[hx(t),n]),zc=e=>i(i(g("`",e),([t,n])=>i(xb(n),([r,o])=>i(g("`",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[xx(t),n]),WO=e=>i(zc(e),([t,n])=>[yx(t),n]),BO=e=>i(i(i(g("if",e),([t,n])=>i(ie(n),([r,o])=>i(g("then",o),([s,a])=>i(ie(a),([c,p])=>i(g("else",p),([f,I])=>i(ie(I),([w,M])=>[[t,r,s,c,f,w],M])))))),([t,n])=>[t,n],()=>i(i(g("if",e),([t,n])=>i(ie(n),([r,o])=>i(g("then",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[t,n],()=>[])),([t,n])=>[bx(t),n]),zO=e=>i(_c(e),([t,n])=>[cx(t),n]),HO=e=>i(i(g("true",e),([t,n])=>[t,n],()=>i(g("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[px(t),n]),VO=e=>i(Aa(e),([t,n])=>[lx(t),n]),JO=e=>i(Oa(["'",'"'],e),([t,n])=>[dx(t),n]),YO=e=>i(i(i(g("keyof",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Ix(t),n]),yb=(e,t=[])=>i(i(i(g("[",e),([n,r])=>i(ie(r),([o,s])=>i(g("]",s),([a,c])=>[[n,o,a],c]))),([n,r])=>[n,r],()=>i(i(g("[",e),([n,r])=>i(g("]",r),([o,s])=>[[n,o],s])),([n,r])=>[n,r],()=>[])),([n,r])=>yb(r,[...t,n]),()=>[t,e]),XO=e=>i(yb(e),([t,n])=>[$x(t),n]),ZO=e=>i(i(i(g("extends",e),([t,n])=>i(ie(n),([r,o])=>i(g("?",o),([s,a])=>i(ie(a),([c,p])=>i(g(":",p),([f,I])=>i(ie(I),([w,M])=>[[t,r,s,c,f,w],M])))))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[wx(t),n]),QO=e=>i(i(i(g("(",e),([t,n])=>i(ie(n),([r,o])=>i(g(")",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i(db(e),([t,n])=>[t,n],()=>i(fb(e),([t,n])=>[t,n],()=>i(CO(e),([t,n])=>[t,n],()=>i(LO(e),([t,n])=>[t,n],()=>i(jO(e),([t,n])=>[t,n],()=>i(gb(e),([t,n])=>[t,n],()=>i(FO(e),([t,n])=>[t,n],()=>i(DO(e),([t,n])=>[t,n],()=>i(NO(e),([t,n])=>[t,n],()=>i(_O(e),([t,n])=>[t,n],()=>i(qO(e),([t,n])=>[t,n],()=>i(hb(e),([t,n])=>[t,n],()=>i(UO(e),([t,n])=>[t,n],()=>i(KO(e),([t,n])=>[t,n],()=>i(zO(e),([t,n])=>[t,n],()=>i(HO(e),([t,n])=>[t,n],()=>i(VO(e),([t,n])=>[t,n],()=>i(JO(e),([t,n])=>[t,n],()=>i(WO(e),([t,n])=>[t,n],()=>i(BO(e),([t,n])=>[t,n],()=>i(cM(e),([t,n])=>[t,n],()=>i(dM(e),([t,n])=>[t,n],()=>i(bM(e),([t,n])=>[t,n],()=>i(yM(e),([t,n])=>[t,n],()=>i(kM(e),([t,n])=>[t,n],()=>i(MO(e),([t,n])=>[t,n],()=>i(TM(e),([t,n])=>[t,n],()=>[])))))))))))))))))))))))))))),([t,n])=>[kx(t),n]),eM=e=>i(i(i(g("with",e),([t,n])=>i(jb(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Tx(t),n]),bb=e=>i(i(YO(e),([t,n])=>i(QO(n),([r,o])=>i(XO(o),([s,a])=>i(ZO(a),([c,p])=>i(eM(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Ex(t),n]),Ib=e=>i(i(i(g("&",e),([t,n])=>i(bb(n),([r,o])=>i(Ib(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),$b=e=>i(i(bb(e),([t,n])=>i(Ib(n),([r,o])=>[[t,r],o])),([t,n])=>[vx(t),n]),wb=e=>i(i(i(g("|",e),([t,n])=>i($b(n),([r,o])=>i(wb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),Ma=e=>i(i($b(e),([t,n])=>i(wb(n),([r,o])=>[[t,r],o])),([t,n])=>[Sx(t),n]),tM=e=>i(i(g("readonly",e),([t,n])=>i(Ma(n),([r,o])=>[[t,r],o])),([t,n])=>[Px(t),n]),nM=e=>i(i(g("|",e),([t,n])=>i(Ma(n),([r,o])=>[[t,r],o])),([t,n])=>[Ax(t),n]),rM=e=>i(i(Bc(e),([t,n])=>i(g("=",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Rx(t),n]),oM=e=>i(i(i(g("infer",e),([t,n])=>i(Ae(n),([r,o])=>i(g("extends",o),([s,a])=>i(Ma(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[t,n],()=>i(i(g("infer",e),([t,n])=>i(Ae(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>[])),([t,n])=>[Ox(t),n]),ie=e=>i(i(oM(e),([t,n])=>[t,n],()=>i(nM(e),([t,n])=>[t,n],()=>i(tM(e),([t,n])=>[t,n],()=>i(Ma(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),sM=e=>i(Aa(e),([t,n])=>[Mx(t),n]),iM=e=>i(Ae(e),([t,n])=>[t,n]),aM=e=>i(Oa(["'",'"'],e),([t,n])=>[t,n]),mM=e=>i(i(g("[",e),([t,n])=>i(Ae(n),([r,o])=>i(g(":",o),([s,a])=>i(i(gb(a),([c,p])=>[c,p],()=>i(fb(a),([c,p])=>[c,p],()=>i(db(a),([c,p])=>[c,p],()=>i(hb(a),([c,p])=>[c,p],()=>[])))),([c,p])=>i(g("]",p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Cx(t),n]),kb=e=>i(i(sM(e),([t,n])=>[t,n],()=>i(iM(e),([t,n])=>[t,n],()=>i(aM(e),([t,n])=>[t,n],()=>i(mM(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),Tb=e=>i(i(i(g("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Lx(t),n]),Eb=e=>i(i(i(g("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[jx(t),n]),vb=e=>i(i(Tb(e),([t,n])=>i(kb(n),([r,o])=>i(Eb(o),([s,a])=>i(g(":",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Fx(t),n]),Ca=e=>i(i(i(g(",",e),([t,n])=>i(g(`
|
|
10
|
+
</file>${a}`}catch{return n}})}var CP,Bu=m(()=>{CP=64*1024});function jP(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,s={};for(let a of Object.keys(o).sort())s[a]=n(o[a]);return s};try{return JSON.stringify(n(e))??""}catch{return""}}function Md(e,t){if(LP.has(e))return;let n=`${e}\0${jP(t)}`,r=Ko&&Ko.signature===n?Ko.count+1:1;return Ko={signature:n,count:r},r>=3?{repeats:r}:void 0}function Cd(){Ko=void 0}function Ld(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 LP,Ko,zu=m(()=>{LP=new Set(["think"])});function jd(e,t){switch(t){case"number":return/^\d+$/.test(e);case"string":return!0;default:return!1}}function DP(e,t,n){let r=t;for(;r<e.length;){let o=e[r];if(!o){r++;continue}if(o==="--")break;if(FP.test(o)){let s=o.includes("="),[a="",...c]=o.split("="),p=n.safeFlags[a];if(!p)return!1;if(p==="none"){if(s)return!1;r++;continue}if(p==="optional"){r++;continue}if(s){if(!jd(c.join("="),p))return!1;r++;continue}let f=e[r+1];if(f===void 0||!jd(f,p))return!1;r+=2;continue}if(n.allowPositional===!1)return!1;r++}return!0}function GP(e){if(!/\$\(|`|\$\{|>|</.test(e)&&!/(?<!&)&(?!&)/.test(e))return e.split(/\|\||&&|;|\|/).map(t=>t.trim()).filter(t=>t.length>0)}function WP(e){let t=e.some(r=>/^cd\b/.test(r)),n=e.some(r=>/^git\b/.test(r));return t&&n}function BP(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 zP(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"&&Dd[`git ${n}`]?{name:`git ${n}`,rest:e.slice(2)}:Nd[r]?{name:r,rest:e.slice(2)}:{name:t,rest:e.slice(1)}}function VP(e){let t=BP(e),n=zP(t);if(!n)return!1;let{name:r,rest:o}=n;if(HP.has(r)&&o.some(a=>a.includes("$")||a.includes("`")))return!1;let s=Dd[r]??UP[r]??Nd[r];return s?s.dangerous?.(o)?!1:DP(o,0,s):!!(qP.includes(r)||KP.includes(r))}function hi(e){let t=GP(e);return!t||t.length===0||WP(t)?!1:t.every(VP)}var FP,NP,di,fi,Hu,gi,Vu,Fd,_P,Dd,qP,UP,Nd,KP,HP,Ju=m(()=>{FP=/^-[a-zA-Z0-9_-]/;NP={"--all":"none","--branches":"none","--tags":"none","--remotes":"none"},di={"--oneline":"none","--graph":"none","--decorate":"none","--no-decorate":"none","--date":"string","--relative-date":"none"},fi={"--max-count":"number","-n":"number"},Hu={"--stat":"none","--numstat":"none","--shortstat":"none","--name-only":"none","--name-status":"none"},gi={"--color":"none","--no-color":"none"},Vu={"--patch":"none","-p":"none","--no-patch":"none","--no-ext-diff":"none","-s":"none"},Fd={"--author":"string","--committer":"string","--grep":"string"},_P={"-l":"none","--list":"none","-a":"none","-r":"none","-v":"none","-vv":"none","-i":"none"},Dd={"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",...gi}},"git diff":{safeFlags:{...Hu,...gi,...Vu,"--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:{...di,...fi,...Hu,...gi,...Vu,...Fd,...NP,"--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:{...Hu,...gi,...Vu,...di,"--format":"string","--pretty":"string","--abbrev-commit":"none","--no-patch":"none","-q":"none"}},"git shortlog":{safeFlags:{...fi,"-s":"none","--summary":"none","-n":"none","--numbered":"none","-e":"none","--email":"none","-sn":"none","-ns":"none","--all":"none"}},"git reflog":{safeFlags:{...fi,...di,...Fd,"--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:{...fi,"--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:{...di}},"git worktree list":{safeFlags:{"--porcelain":"none","-v":"none","--verbose":"none","-z":"none"}},"git branch":{safeFlags:{..._P,"--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"}}},qP=["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"],UP={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))}},Nd={"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:{}}},KP=["cd","alias","history","arch","ip addr","ifconfig"];HP=new Set(["echo","printf"])});var Bd={};Dt(Bd,{APPROVAL_LABELS:()=>xi,APPROVAL_MODES:()=>Jr,MODE_MAX_TIER:()=>_d,TIER_RANK:()=>Yu,createPermissionExtension:()=>Go,criticalCommand:()=>qd,decideToolCall:()=>Kd,describeToolCall:()=>Gd,formatApprovalPrompt:()=>Wd,getApprovalMode:()=>ZP,isApprovalMode:()=>JP,isReadOnlyCommand:()=>hi,resolveTier:()=>Xu,setApprovalMode:()=>Qu,setApprovalPrompt:()=>ec});function JP(e){return Jr.includes(e)}function Xu(e){let t=YP[e];return t||(e.startsWith("mcp__")?"write":"exec")}function qd(e){for(let{pattern:t,reason:n}of XP)if(t.test(e))return n}function Qu(e){Zu=e}function ZP(){return Zu}function ec(e){Ud=e}function Kd(e,t,n){let r=typeof n?.command=="string"?n.command:"";if(t==="bash"||t==="powershell"){let s=qd(r);if(s)return{action:"deny",reason:`Refused in every mode: ${s}.`};if(hi(r))return{action:"run"}}let o=Xu(t);return Yu[o]<=Yu[_d[e]]?{action:"run"}:{action:"prompt",reason:`this is a ${o}-tier tool`}}function Gd(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 Wd(e,t,n){let r=[`Allow tool: ${e}`];e.startsWith("mcp__")&&r.push("Origin: MCP server tool"),r.push(`Reason: ${n}`);let o=Gd(e,t);return o!==e&&r.push(o),r.join(`
|
|
11
|
+
`)}function Go(e={}){return t=>{t.on("tool_call",async n=>{let r=Md(n.toolName,n.input);if(r)return{block:!0,reason:Ld(n.toolName,r.repeats)};let o=Zu,s=Kd(o,n.toolName,n.input);if(s.action==="run")return;if(s.action==="deny")return{block:!0,reason:s.reason};if(e.interactive===!1)return{block:!0,reason:`Blocked: this is a ${Xu(n.toolName)}-tier tool and no UI can approve it here (approval mode: ${o}).`};if(!await Ud(`${n.toolName} wants to run`,Wd(n.toolName,n.input,s.reason)))return{block:!0,reason:`Blocked by the user (approval mode: ${o}).`}})}}var Jr,xi,Yu,_d,YP,XP,Zu,Ud,Wo=m(()=>{zu();Ju();Ju();Jr=["suggest","auto-edit","full-auto"],xi={suggest:"suggest: ask before every edit and command","auto-edit":"auto-edit: edits run, commands ask","full-auto":"full-auto: nothing asks"};Yu={read:0,write:1,exec:2},_d={suggest:"read","auto-edit":"write","full-auto":"exec"},YP={read:"read",grep:"read",find:"read",ls:"read",think:"read",ask:"read",todo:"read",context:"read",web_search:"read",web_fetch:"read",lsp:"read",workflow:"exec",goal:"read",enter_plan_mode:"read",exit_plan_mode:"read",edit:"write",write:"write",bash:"exec",powershell:"exec",task:"exec"};XP=[{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"}];Zu="full-auto",Ud=async()=>!1});function QP(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 tA(e){if(!e)return;let t=!1,n={...e};for(let r of eA){let o=n[r];if(typeof o!="string")continue;let s=QP(o);s!==o&&(n[r]=s,t=!0)}return t?n:void 0}function zd(){return e=>{e.on("context_with_system",async t=>{let n=t.messages[0];if(!n||n.role!=="system")return;let r=tA(n.sections);return r?{messages:t.messages.map(s=>s===n?{...n,sections:r}:s)}:void 0})}}var eA,Hd=m(()=>{eA=["preamble","rules","docs","addendum"]});import{Type as Yr}from"@earendil-works/pi-ai";import{defineTool as Vd}from"@earendil-works/pi-coding-agent";function Jd(e){tc=e}var tc,Yd,Xd,nc=m(()=>{Yd=Vd({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:Yr.Object({thoughts:Yr.String({description:"Private notes"})}),async execute(){return{content:[{type:"text",text:"noted"}],details:{recorded:!0}}}}),Xd=Vd({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:Yr.Object({question:Yr.String(),options:Yr.Array(Yr.String(),{minItems:2})}),async execute(e,t){if(!tc)return{content:[{type:"text",text:"cancelled"}],details:{answer:"cancelled"}};let n=await tc(t.question,t.options);return{content:[{type:"text",text:n}],details:{answer:n}}}})});var nn,hr=m(()=>{nn={assign:0,create:0,clone:0,discard:0,update:0}});function xr(e,t,n){return e>=t&&e<=n}function ef(e){return e===8205}function nA(e){return xr(e,55296,56319)}function Zd(e){return xr(e,127462,127487)}function tf(e){return xr(e,65024,65039)}function nf(e){return xr(e,768,879)||xr(e,6832,6911)||xr(e,7616,7679)||xr(e,65056,65071)}function yi(e){return e>65535?2:1}function Qd(e,t){for(;t<e.length;){let n=e.codePointAt(t);if(nf(n)||tf(n))t+=yi(n);else break}return t}function rc(e,t){let n=e.codePointAt(t),r=t+yi(n);for(r=Qd(e,r);r<e.length-1&&ef(e.codePointAt(r));){let o=e.codePointAt(r+1);r+=1+yi(o),r=Qd(e,r)}return Zd(n)&&r<e.length&&Zd(e.codePointAt(r))&&(r+=yi(e.codePointAt(r))),r}function rf(e){return e>=768&&(nA(e)||nf(e)||tf(e)||ef(e))}function of(e){let t=0,n=0;for(;n<e.length;)n=rc(e,n),t++;return t}function rA(e,t){let n=0,r=0;for(;r<e.length;)if(r=rc(e,r),++n>=t)return!0;return!1}function oA(e,t){let n=0,r=0;for(;r<e.length;)if(r=rc(e,r),++n>t)return!1;return!0}function sf(e,t){if(t===0)return!0;if(e.length<t)return!1;let n=0;for(;;){if(rf(e.charCodeAt(n)))return rA(e,t);if(++n>=t)return!0}}function af(e,t){if(e.length<=t)return!0;let n=0;for(;;){if(rf(e.charCodeAt(n)))return oA(e,t);if(++n>t)return!1}}var mf=m(()=>{});var u={};Dt(u,{Counted:()=>IA,Entries:()=>kA,EntriesRegExp:()=>wA,Every:()=>hA,EveryAll:()=>xA,GraphemeCount:()=>dA,HasPropertyKey:()=>$A,IsArray:()=>zo,IsBigInt:()=>Bo,IsBoolean:()=>uf,IsClassInstance:()=>lA,IsConstructor:()=>iA,IsDeepEqual:()=>ic,IsEqual:()=>se,IsFunction:()=>cf,IsGreaterEqualThan:()=>lf,IsGreaterThan:()=>uA,IsInteger:()=>oc,IsLessEqualThan:()=>pf,IsLessThan:()=>cA,IsMaxLength:()=>fA,IsMinLength:()=>gA,IsMultipleOf:()=>pA,IsNull:()=>Ii,IsNumber:()=>$i,IsObject:()=>Ho,IsObjectNotArray:()=>aA,IsString:()=>wi,IsSymbol:()=>mA,IsUndefined:()=>sc,IsUnsafePropertyKey:()=>ff,IsValueLike:()=>df,Keys:()=>bi,ShiftLeft:()=>ki,Some:()=>yA,SomeAll:()=>bA,Symbols:()=>TA,Values:()=>vA});function zo(e){return Array.isArray(e)}function Bo(e){return se(typeof e,"bigint")}function uf(e){return se(typeof e,"boolean")}function iA(e){if(sc(e)||!cf(e))return!1;let t=Function.prototype.toString.call(e);return!!(/^class\s/.test(t)||/\[native code\]/.test(t))}function cf(e){return se(typeof e,"function")}function oc(e){return Number.isInteger(e)}function Ii(e){return se(e,null)}function $i(e){return Number.isFinite(e)}function aA(e){return Ho(e)&&!zo(e)}function Ho(e){return se(typeof e,"object")&&!Ii(e)}function wi(e){return se(typeof e,"string")}function mA(e){return se(typeof e,"symbol")}function sc(e){return se(e,void 0)}function se(e,t){return e===t}function uA(e,t){return e>t}function cA(e,t){return e<t}function pf(e,t){return e<=t}function lf(e,t){return e>=t}function pA(e,t){if(Bo(e)||Bo(t))return BigInt(e)%BigInt(t)===0n;let n=1e-10;if(!$i(e)||oc(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 lA(e){if(!Ho(e))return!1;let t=globalThis.Object.getPrototypeOf(e);return Ii(t)?!1:se(typeof t.constructor,"function")&&!(se(t.constructor,globalThis.Object)||se(t.constructor.name,"Object"))}function df(e){return Bo(e)||uf(e)||Ii(e)||$i(e)||wi(e)||sc(e)}function dA(e){return of(e)}function fA(e,t){return af(e,t)}function gA(e,t){return sf(e,t)}function hA(e,t,n){return e.every((r,o)=>o<t||n(r,o))}function xA(e,t,n){let r=!0;return e.forEach((o,s)=>{s>=t&&!n(o,s)&&(r=!1)}),r}function yA(e,t){return e.some((n,r)=>t(n,r))}function bA(e,t){let n=!1;return e.forEach((r,o)=>{t(r,o)&&(n=!0)}),n}function IA(e,t){return e.reduce((n,r,o)=>t(r,o)?++n:n,0)}function ki(e,t,n){return se(e.length,0)?n():t(e[0],e.slice(1))}function ff(e){return se(e,"__proto__")||se(e,"constructor")||se(e,"prototype")}function $A(e,t){return ff(t)?Object.prototype.hasOwnProperty.call(e,t):t in e}function wA(e){return bi(e).map(t=>[new RegExp(`^${t}$`),e[t]])}function kA(e){return Object.entries(e)}function bi(e){return Object.getOwnPropertyNames(e)}function TA(e){return Object.getOwnPropertySymbols(e)}function vA(e){return Object.values(e)}function EA(e,t){if(!Ho(t))return!1;let n=bi(e);return se(n.length,bi(t).length)&&n.every(r=>ic(e[r],t[r]))}function SA(e,t){return zo(t)&&se(e.length,t.length)&&e.every((n,r)=>ic(e[r],t[r]))}function ic(e,t){return zo(e)?SA(e,t):Ho(e)?EA(e,t):se(e,t)}var Xr=m(()=>{mf()});var gf=m(()=>{Xr()});var Hn={};Dt(Hn,{IsBigInt64Array:()=>KA,IsBigUint64Array:()=>GA,IsBoolean:()=>AA,IsDate:()=>BA,IsFloat32Array:()=>qA,IsFloat64Array:()=>UA,IsInt16Array:()=>FA,IsInt32Array:()=>NA,IsInt8Array:()=>CA,IsMap:()=>HA,IsNumber:()=>RA,IsRegExp:()=>WA,IsSet:()=>zA,IsString:()=>OA,IsTypeArray:()=>MA,IsUint16Array:()=>DA,IsUint32Array:()=>_A,IsUint8Array:()=>LA,IsUint8ClampedArray:()=>jA});function AA(e){return e instanceof Boolean}function RA(e){return e instanceof Number}function OA(e){return e instanceof String}function MA(e){return globalThis.ArrayBuffer.isView(e)}function CA(e){return e instanceof globalThis.Int8Array}function LA(e){return e instanceof globalThis.Uint8Array}function jA(e){return e instanceof globalThis.Uint8ClampedArray}function FA(e){return e instanceof globalThis.Int16Array}function DA(e){return e instanceof globalThis.Uint16Array}function NA(e){return e instanceof globalThis.Int32Array}function _A(e){return e instanceof globalThis.Uint32Array}function qA(e){return e instanceof globalThis.Float32Array}function UA(e){return e instanceof globalThis.Float64Array}function KA(e){return e instanceof globalThis.BigInt64Array}function GA(e){return e instanceof globalThis.BigUint64Array}function WA(e){return e instanceof globalThis.RegExp}function BA(e){return e instanceof globalThis.Date}function zA(e){return e instanceof globalThis.Set}function HA(e){return e instanceof globalThis.Map}var hf=m(()=>{});var xf=m(()=>{Xr()});var R=m(()=>{gf();hf();xf();Xr();Xr()});var rn={};Dt(rn,{Get:()=>XA,Reset:()=>JA,Set:()=>YA});function JA(){hn.immutableTypes=!1,hn.maxErrors=8,hn.maxInstantiationCount=128,hn.useAcceleration=!0,hn.exactOptionalPropertyTypes=!1,hn.enumerableKind=!1,hn.correctiveParse=!1,hn.unionPrioritySort=!0}function YA(e){for(let t of u.Keys(e)){let n=e[t];n!==void 0&&Object.defineProperty(hn,t,{value:n})}}function XA(){return hn}var hn,yf=m(()=>{R();hn={immutableTypes:!1,maxErrors:8,maxInstantiationCount:128,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0}});var yr=m(()=>{yf()});function Vn(e){return rn.Get().immutableTypes?Object.freeze(e):e}var Vo=m(()=>{yr()});function ZA(e,t){return nn.assign+=1,Vn({...e,...t})}var bf=m(()=>{hr();Vo()});function QA(e){return u.HasPropertyKey(e,"~kind")||u.HasPropertyKey(e,"~unsafe")}function eR(e){let t={};for(let n of u.Keys(e)){if(u.IsUnsafePropertyKey(n))continue;let r=Object.getOwnPropertyDescriptor(e,n);r.value=br(r.value),u.IsEqual(r.enumerable,!0)?t[n]=r.value:Object.defineProperty(t,n,r)}return t}function tR(e){let t={};for(let n of u.Keys(e))u.IsUnsafePropertyKey(n)||(t[n]=br(e[n]));for(let n of u.Symbols(e))t[n]=br(e[n]);return t}function nR(e){return u.IsClassInstance(e)?e:QA(e)?eR(e):tR(e)}function rR(e){return e.map(t=>br(t))}function oR(e){return e.slice()}function sR(e){return new RegExp(e.source,e.flags)}function iR(e){return new Map(br([...e.entries()]))}function aR(e){return new Set(br([...e.values()]))}function br(e){return Hn.IsTypeArray(e)?oR(e):Hn.IsRegExp(e)?sR(e):Hn.IsMap(e)?iR(e):Hn.IsSet(e)?aR(e):u.IsArray(e)?rR(e):u.IsObject(e)?nR(e):e}function Jo(e){return nn.clone+=1,br(e)}var Ti=m(()=>{R();hr()});function mR(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 If(e,t){return{...e,...t}}function uR(e,t,n={}){nn.create+=1;let r=If(t,n),o=rn.Get().enumerableKind?If(r,e):mR(r,e);return Vn(o)}var $f=m(()=>{yr();hr();Vo()});function cR(e,t){nn.discard+=1;let n={};for(let r of u.Keys(e)){if(t.includes(r))continue;let o=Object.getOwnPropertyDescriptor(e,r);o.value=Jo(o.value),Object.defineProperty(n,r,o)}return Vn(n)}var wf=m(()=>{R();hr();Vo();Ti()});function pR(e,t,n){nn.update+=1;let r=rn.Get(),o=Jo(e);for(let s of Object.keys(t))Object.defineProperty(o,s,{configurable:!0,writable:!0,enumerable:r.enumerableKind,value:t[s]});for(let s of Object.keys(n))Object.defineProperty(o,s,{configurable:!0,enumerable:!0,writable:!0,value:n[s]});return Vn(o)}var kf=m(()=>{yr();hr();Vo();Ti()});var d={};Dt(d,{Assign:()=>ZA,Clone:()=>Jo,Create:()=>uR,Discard:()=>cR,Metrics:()=>nn,Update:()=>pR});var Tf=m(()=>{bf();Ti();$f();wf();hr();kf()});var v=m(()=>{Tf()});function C(e,t){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.IsEqual(e["~kind"],t)}function Fe(e){return u.IsObject(e)}var H=m(()=>{R()});function F(e,t,n){return d.Create({"~kind":"Deferred"},{type:"deferred",action:e,parameters:t,options:n},{})}function Jn(e){return C(e,"Deferred")}var ae=m(()=>{v();H()});function lR(e){return d.Update(e,{"~readonly":!0},{})}function Yo(e,t){return d.Update(lR(e),{},t)}function vf(e,t,n,r){let o=$(e,t,n);return Yo(o,r)}var vi=m(()=>{v();N()});function dR(e){return d.Update(e,{"~optional":!0},{})}function Xo(e,t){return d.Update(dR(e),{},t)}function Ef(e,t,n,r){let o=$(e,t,n);return Xo(o,r)}var Ei=m(()=>{v();N()});function Nt(e,t){return d.Create({"~kind":"Array"},{type:"array",items:e},t)}function we(e){return C(e,"Array")}function Si(e){return d.Discard(e,["~kind","type","items"])}var dt=m(()=>{v();H()});function xn(e,t,n={}){return d.Create({"~kind":"Constructor"},{type:"constructor",parameters:e,instanceType:t},n)}function Ue(e){return C(e,"Constructor")}function Sf(e){return d.Discard(e,["~kind","type","parameters","instanceType"])}var Wt=m(()=>{v();H()});function yn(e,t,n={}){return d.Create({"~kind":"Function"},{type:"function",parameters:e,returnType:t},n)}function Ke(e){return C(e,"Function")}function Pf(e){return d.Discard(e,["~kind","type","parameters","returnType"])}var Bt=m(()=>{v();H()});function _n(e,t){return d.Create({"~kind":"Ref"},{$ref:e},t)}function Ge(e){return C(e,"Ref")}var zt=m(()=>{v();H()});function Yn(e,t){return d.Create({"~kind":"Generic"},{type:"generic",parameters:e,expression:t})}function Zr(e){return C(e,"Generic")}var Zo=m(()=>{v();H()});function Qr(e){return d.Create({"~kind":"Any"},{},e)}function ve(e){return C(e,"Any")}var $t=m(()=>{v();H()});function fe(e){return d.Create({"~kind":"Never"},{not:{}},e)}function on(e){return C(e,"Never")}var Af,Ve=m(()=>{v();H();Af="(?!)"});function bn(e,t={}){return F("AddOptional",[e],t)}function Ir(e,t={}){return Xo(e,t)}var Qo=m(()=>{ae();Ei()});function Rf(e){return Ir(e)}function it(e){return Fe(e)&&u.HasPropertyKey(e,"~optional")}var Xn=m(()=>{R();H();Qo()});function Of(e){return u.Keys(e).filter(t=>!it(e[t]))}function Pi(e){return u.Keys(e)}function Ai(e){return u.Values(e)}var $r=m(()=>{R();Xn()});function G(e,t={}){let n=Of(e),r=n.length>0?{required:n}:{};return d.Create({"~kind":"Object"},{type:"object",...r,properties:e},t)}function ue(e){return C(e,"Object")}function Mf(e){return d.Discard(e,["~kind","type","properties","required"])}var de=m(()=>{v();H();$r()});function Je(e){return d.Create({"~kind":"Unknown"},{},e)}function Oe(e){return C(e,"Unknown")}var Qe=m(()=>{v();H()});function In(e,t,n){let r=u.Keys(e).reduce((o,s)=>({...o,[s]:d.Update(e[s],{},{$id:s})}),{});return d.Create({"~kind":"Cyclic"},{$defs:r,$ref:t},n)}function et(e){return C(e,"Cyclic")}var wt=m(()=>{R();v();H()});function Cf(e){return d.Update(e,{"~unsafe":null},{})}function Ri(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"~unsafe")&&u.IsNull(e["~unsafe"])}var Oi=m(()=>{R();v()});var $n={};Dt($n,{Match:()=>fR});function fR(e,t){return t[e.length]?.(...e)??(()=>{throw Error("Invalid Arguments")})()}var Lf=m(()=>{});var eo=m(()=>{Lf()});function es(...e){let[t,n]=$n.Match(e,{2:(r,o)=>[r,o,o],1:r=>[r,Je(),Je()]});return d.Create({"~kind":"Infer"},{type:"infer",name:t,extends:n},{})}function Me(e){return C(e,"Infer")}var Ht=m(()=>{eo();v();H();Qe()});function wr(e,t,n,r={}){return d.Create({"~kind":"Dependent"},{if:e,then:t,else:n},r)}function Se(e){return C(e,"Dependent")}function jf(e){return d.Discard(e,["~kind","if","then","else"])}var Rt=m(()=>{v();H()});function Ff(e){return u.IsObjectNotArray(e)}function Df(e){return u.Keys(e).filter(n=>isNaN(n)).reduce((n,r)=>[...n,e[r]],[])}var Mi=m(()=>{R()});function Nf(e){return u.IsString(e)||u.IsNumber(e)}function _f(e,t){let n=Ff(e)?Df(e):e;return d.Create({"~kind":"Enum"},{enum:n},t)}function tt(e){return C(e,"Enum")}var sn=m(()=>{R();v();H();Mi();Mi()});function kt(e,t={}){return d.Create({"~kind":"Intersect"},{allOf:e},t)}function te(e){return C(e,"Intersect")}function qf(e){return d.Discard(e,["~kind","allOf"])}var De=m(()=>{v();H()});var Uf=m(()=>{yr();R()});var Kf=m(()=>{Uf()});var Gf=m(()=>{Kf()});function Ne(){throw new Error("Unreachable")}var ac=m(()=>{});var wn=m(()=>{ac()});var Wf,uq,cq,pq,lq,Bf,dq,fq,gq,zf=m(()=>{wn();R();(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"})(Wf||(Wf={}));uq=BigInt("14695981039346656037"),[cq,pq]=[BigInt("1099511628211"),BigInt("18446744073709551616")],lq=Array.from({length:256}).map((e,t)=>BigInt(t)),Bf=new Float64Array(1),dq=new DataView(Bf.buffer),fq=new Uint8Array(Bf.buffer),gq=new TextEncoder});var Hf=m(()=>{zf()});var mc=m(()=>{});var Vf=m(()=>{mc()});var Jf=m(()=>{});var Yf=m(()=>{});var Xf=m(()=>{});var Zf=m(()=>{});var Qf=m(()=>{});var eg=m(()=>{});var tg=m(()=>{});var ng=m(()=>{});var rg=m(()=>{});var og=m(()=>{});var sg=m(()=>{});var uc=m(()=>{});var ig=m(()=>{});var ag=m(()=>{});var mg=m(()=>{});var ug=m(()=>{});var cg=m(()=>{});var pg=m(()=>{});var lg=m(()=>{});var dg=m(()=>{});var fg=m(()=>{});var gg=m(()=>{});var hg=m(()=>{});var xg=m(()=>{});var yg=m(()=>{});var bg=m(()=>{});var Ig=m(()=>{});var $g=m(()=>{});var wg=m(()=>{});var kg=m(()=>{});var Tg=m(()=>{});var vg=m(()=>{});var Eg=m(()=>{});var Sg=m(()=>{});var Pg=m(()=>{});var Ag=m(()=>{});var Rg=m(()=>{});var Og=m(()=>{Vf();Jf();Yf();Xf();Zf();Qf();mc();eg();tg();ng();rg();og();sg();uc();uc();ig();ag();mg();ug();cg();pg();lg();dg();fg();gg();hg();xg();yg();bg();Ig();$g();wg();kg();Tg();vg();Eg();Sg();Pg();Ag();Rg()});var Mg=m(()=>{Og()});var ts=m(()=>{eo();Gf();Hf();Mg();v();yr()});var Lg=m(()=>{ts();ts();ts()});function Li(e){return new rs(e)}function jg(e,t){return Li(e).Decode(t).Encode(()=>{throw Error("Encode not implemented")})}function Fg(e,t){return Li(e).Decode(()=>{throw Error("Decode not implemented")}).Encode(t)}function Ci(e){return Fe(e)&&u.HasPropertyKey(e,"~codec")&&u.IsObject(e["~codec"])&&u.HasPropertyKey(e["~codec"],"encode")&&u.HasPropertyKey(e["~codec"],"decode")}var ns,rs,cc=m(()=>{Lg();R();H();ns=class{constructor(t,n){this.type=t,this.decode=n}Encode(t){let n=this.type,r=Ci(n)?a=>this.decode(n["~codec"].decode(a)):this.decode,o=Ci(n)?a=>n["~codec"].encode(t(a)):t,s={decode:r,encode:o};return d.Update(this.type,{"~codec":s},{})}},rs=class{constructor(t){this.type=t}Decode(t){return new ns(this.type,t)}}});function Dg(e){return to(e)}function kr(e){return Fe(e)&&u.HasPropertyKey(e,"~immutable")}var os=m(()=>{R();H();ss()});function kn(e,t={}){return F("AddReadonly",[e],t)}function Tr(e,t={}){return Yo(e,t)}var is=m(()=>{ae();vi()});function Ng(e){return Tr(e)}function vr(e){return Fe(e)&&u.HasPropertyKey(e,"~readonly")}var as=m(()=>{R();H();is()});function yR(e,t){let n=pc(e)?[...e["~refine"],t]:[t];return d.Update(e,{"~refine":n},{})}function _g(...e){let[t,n,r]=$n.Match(e,{3:(o,s,a)=>[o,s,a],2:(o,s)=>[o,s,()=>"Refine Error"]});return yR(t,{check:n,error:r})}function bR(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"check")&&u.HasPropertyKey(e,"error")&&u.IsFunction(e.check)&&u.IsFunction(e.error)}function pc(e){return Fe(e)&&u.HasPropertyKey(e,"~refine")&&u.IsArray(e["~refine"])&&u.Every(e["~refine"],0,t=>bR(t))}var lc=m(()=>{eo();v();R();H()});function ms(e){return d.Create({"~kind":"BigInt"},{type:"bigint"},e)}function Tn(e){return C(e,"BigInt")}var qg,Er=m(()=>{v();H();qg="-?(?:0|[1-9][0-9]*)n"});function ji(e){return d.Create({"~kind":"Boolean"},{type:"boolean"},e)}function Vt(e){return C(e,"Boolean")}var Zn=m(()=>{v();H()});function us(e){return d.Create({"~kind":"Identifier"},{name:e})}function Ug(e){return C(e,"Identifier")}var dc=m(()=>{v();H()});function Sr(e){return d.Create({"~kind":"Integer"},{type:"integer"},e)}function ft(e){return C(e,"Integer")}var Fi,vn=m(()=>{v();H();Fi="-?(?:0|[1-9][0-9]*)"});function IR(e){return u.IsBigInt(e)?"bigint":u.IsBoolean(e)?"boolean":u.IsNumber(e)?"number":u.IsString(e)?"string":(()=>{throw new fc(e)})()}function ne(e,t){return d.Create({"~kind":"Literal"},{type:IR(e),const:e},t)}function Di(e){return u.IsBigInt(e)||u.IsBoolean(e)||u.IsNumber(e)||u.IsString(e)}function Kg(e){return ce(e)&&u.IsNumber(e.const)}function Gg(e){return ce(e)&&u.IsString(e.const)}function ce(e){return C(e,"Literal")}var fc,Ce=m(()=>{v();R();H();fc=class extends Error{constructor(t){super("Invalid Literal value"),Object.defineProperty(this,"cause",{value:{value:t},writable:!1,configurable:!1,enumerable:!1})}}});function no(e){return d.Create({"~kind":"Null"},{type:"null"},e)}function ro(e){return C(e,"Null")}var oo=m(()=>{v();H()});function Ot(e){return d.Create({"~kind":"Number"},{type:"number"},e)}function Le(e){return C(e,"Number")}var Ni,gt=m(()=>{v();H();Ni="-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?"});function so(e){return d.Create({"~kind":"Symbol"},{type:"symbol"},e)}function Qn(e){return C(e,"Symbol")}var Pr=m(()=>{v();H()});function Ar(...e){let[t,n,r]=$n.Match(e,{3:(o,s,a)=>[o,s,a],2:(o,s)=>[o,s,s],1:o=>[o,Je(),Je()]});return d.Create({"~kind":"Parameter"},{name:t,extends:n,equals:r},{})}function Wg(e){return C(e,"Parameter")}var gc=m(()=>{eo();v();H();Qe()});function Jt(e){return d.Create({"~kind":"String"},{type:"string"},e)}function ht(e){return C(e,"String")}var _i,Yt=m(()=>{v();H();_i=".*"});function J(e,t={}){return d.Create({"~kind":"Union"},{anyOf:e},t)}function L(e){return C(e,"Union")}function Bg(e){return d.Discard(e,["~kind","anyOf"])}var X=m(()=>{v();H()});function cs(e){let t=zg(e);return u.IsEqual(t.length,2)?t[0]:[]}var ps=m(()=>{R();qi()});function $R(e){return!0}function Hg(e){return u.ShiftLeft(e,(t,n)=>wR(t)?Hg(n):!1,()=>!0)}function Vg(e){return u.IsEqual(e.length,0)?!1:Hg(e)}function wR(e){return L(e)?Vg(e.anyOf):ce(e)?$R(e.const):!1}function Ui(e){return Vg(e)}var Ki=m(()=>{R();Ce();X()});function Gi(e){return d.Create({"~kind":"TemplateLiteral"},{type:"string",pattern:e},{})}var Wi=m(()=>{v()});function Jg(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Jg(o,t,[...n,`${r}${t}`]),()=>n)}function kR(e,t){return u.IsEqual(e.length,0)?[`${t}`]:Jg(e,t)}function Yg(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>Yg(e,o,[...n,...Xg(e,r)]),()=>n)}function Xg(e,t){return L(t)?Yg(e,t.anyOf):ce(t)?kR(e,t.const):Ne()}function Zg(e,t){return u.ShiftLeft(t,(n,r)=>Zg(Xg(e,n),r),()=>e)}function TR(e){return e.map(t=>ne(t))}function vR(e){let t=Zg([],e),n=TR(t);return J(n)}function ER(e){return u.IsEqual(e.length,0)?Ne():u.IsEqual(e.length,1)&&ce(e[0])?e[0]:vR(e)}function hc(e){let t=cs(e);return u.IsEqual(t.length,0)?Jt():Ui(t)?ER(t):Gi(e)}function Qg(e){let t=hc(e);return Pe(t)?Jt():t}var Bi=m(()=>{R();wn();Ce();Yt();Tt();X();ps();Ki();Wi()});function vt(e,t){let n="object",r={[e]:t};return d.Create({"~kind":"Record"},{type:n,patternProperties:r})}var er=m(()=>{v()});function eh(e){return vt(an,e)}var th=m(()=>{Ye();er()});function nh(e){return G({true:e,false:e})}var rh=m(()=>{de()});function je(e,t={}){let[n,r,o]=[e,e.length,!1];return d.Create({"~kind":"Tuple"},{type:"array",additionalItems:o,items:n,minItems:r},t)}function he(e){return C(e,"Tuple")}function oh(e){return d.Discard(e,["~kind","type","items","minItems","additionalItems"])}var _e=m(()=>{v();H()});function SR(e){return d.Discard(e,["~readonly"])}function xc(e,t){return d.Update(SR(e),{},t)}function sh(e,t,n,r){let o=$(e,t,n);return xc(o,r)}var yc=m(()=>{v();N()});function ih(e,t={}){return F("RemoveReadonly",[e],t)}function ah(e,t={}){return xc(e,t)}var bc=m(()=>{ae();yc()});function PR(e){return d.Discard(e,["~optional"])}function Ic(e,t){return d.Update(PR(e),{},t)}function mh(e,t,n,r){let o=$(e,t,n);return Ic(o,r)}var $c=m(()=>{v();N()});function uh(e,t={}){return F("RemoveOptional",[e],t)}function zi(e,t={}){return Ic(e,t)}var Hi=m(()=>{ae();$c()});function wc(e){return e.reduceRight((n,r,o)=>({[o]:r,...n}),{})}function ch(e){let t=wc(e.items);return G(t)}var kc=m(()=>{de()});function Tc(e){return ue(e)||he(e)}function AR(e,t){return vr(e)?!!vr(t):!1}function RR(e,t){return it(e)?!!it(t):!1}function OR(e,t){let n=AR(e,t),r=RR(e,t),o=ke([e,t]),s=ah(zi(o));return n&&r?Tr(Ir(s)):n&&!r?Tr(s):!n&&r?Ir(s):s}function MR(e,t,n){return n in e?n in t?OR(e[n],t[n]):e[n]:n in t?t[n]:fe()}function CR(e,t){return[...new Set([...u.Keys(e),...u.Keys(t)])].reduce((o,s)=>({...o,[s]:MR(e,t,s)}),{})}function ph(e){return ue(e)?e.properties:he(e)?wc(e.items):{}}function lh(e,t){let n=ph(e),r=ph(t),o=CR(n,r);return G(o)}var vc=m(()=>{R();as();Xn();de();Ve();_e();is();Qo();bc();Hi();kc();V()});function LR(e,t){let n=fs(e,t);return u.IsEqual(n,ds)?e:u.IsEqual(n,Vi)||u.IsEqual(n,ls)?t:fe()}function jR(e,t){let n=Tc(e),r=Tc(t);return n&&r?lh(e,t):n&&!r?e:!n&&r?t:LR(e,t)}function dh(e,t){return on(e)||ve(e)?e:Oe(e)||on(t)||ve(t)?t:Oe(t)?e:jR(e,t)}var Ec=m(()=>{R();$t();Ve();Qe();gs();vc()});function FR(e,t){return L(e)||L(t)}function DR(e,t){let n=Xt(e),r=Xt(t);return FR(n,r)?ke([n,r]):dh(n,r)}function fh(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>fh(e,o,[...n,DR(r,e)]),()=>u.IsEqual(n.length,0)?[e]:n)}function gh(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>gh(o,t,[...n,...hs([r],t)]),()=>n)}function hs(e,t=[]){return u.ShiftLeft(e,(n,r)=>L(n)?hs(r,gh(n.anyOf,t)):hs(r,fh(n,t)),()=>t)}var Sc=m(()=>{R();X();Ec();V();V()});function NR(e,t){let n=nt({},e,t);return W.IsExtendsTrueLike(n)?[]:[e]}function hh(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>hh(o,t,[...n,...NR(r,t)]),()=>n)}function Ji(e,t){let n=Xt(e),r=L(n)?n.anyOf:[n],o=hh(r,t);return Et(o)}var Pc=m(()=>{R();X();En();V();V()});function mn(e,t,n){let r=ke([e,t]),o=Ji(n,e);return Et([r,o])}function xt(e,t=[]){return u.ShiftLeft(e,(n,r)=>xt(r,[...t,ne(n)]),()=>Et(t))}function ke(e){let t=hs(e),n=Ac(t);return Et(n)}function at(e){let t=Qg(e);return Xt(t)}function Et(e){let t=Ac(e);return tr(t)}function Xt(e){return Se(e)?mn(e.if,e.then,e.else):tt(e)?xt(e.enum):te(e)?ke(e.allOf):Pe(e)?at(e.pattern):L(e)?Et(e.anyOf):e}function tr(e){return u.IsEqual(e.length,1)?e[0]:u.IsEqual(e.length,0)?fe():J(e)}var V=m(()=>{R();Rt();sn();De();Ce();Ve();Tt();X();Sc();Rc();Pc();Bi()});function xh(e,t){let n=xt(e);return nr(n,t)}var yh=m(()=>{xs();V()});function bh(e,t){return vt(rr,t)}var Ih=m(()=>{Ye();er()});function $h(e,t){let n=ke(e);return nr(n,t)}var wh=m(()=>{V();xs()});function kh(e,t){return u.IsString(e)||u.IsNumber(e)?G({[e]:t}):u.IsEqual(e,!1)?G({false:t}):u.IsEqual(e,!0)?G({true:t}):G({})}var Th=m(()=>{R();de()});function vh(e,t){return vt(io,t)}var Eh=m(()=>{Ye();er()});function Sh(e,t){return u.HasPropertyKey(e,"pattern")&&(u.IsString(e.pattern)||e.pattern instanceof RegExp)?vt(e.pattern.toString(),t):vt(an,t)}var Ph=m(()=>{R();Ye();er()});function Ah(e,t){let n=cs(e);return Ui(n)?nr(at(e),t):vt(e,t)}var Rh=m(()=>{xs();ps();Ki();V();er()});function _R(e){return L(e)?ao(e.anyOf):[e]}function ao(e,t=[]){return u.ShiftLeft(e,(n,r)=>ao(r,[...t,..._R(n)]),()=>t)}var Yi=m(()=>{R();X()});function qR(e){return e.some(t=>ht(t)||Le(t)||ft(t))}function UR(e,t){return u.IsEqual(qR(e),!0)?vt(an,t):void 0}function KR(e,t){return e.reduce((n,r)=>ce(r)&&(u.IsString(r.const)||u.IsNumber(r.const))?{...n,[r.const]:t}:n,{})}function GR(e,t){let n=KR(e,t);return G(n)}function Oh(e,t){let n=ao(e),r=UR(n,t);return Fe(r)?r:GR(n,t)}var Mh=m(()=>{R();H();Ce();gt();vn();de();Yt();Ye();Yi();er()});function nr(e,t){return ve(e)?eh(t):Vt(e)?nh(t):tt(e)?xh(e.enum,t):ft(e)?bh(e,t):te(e)?$h(e.allOf,t):ce(e)?kh(e.const,t):Le(e)?vh(e,t):L(e)?Oh(e.anyOf,t):ht(e)?Sh(e,t):Pe(e)?Ah(e.pattern,t):G({})}var xs=m(()=>{$t();Zn();sn();De();vn();Ce();gt();de();Yt();Tt();X();th();rh();yh();Ih();wh();Th();Eh();Ph();Rh();Mh()});function Oc(e,t,n){return z([e])?d.Update(nr(e,t),{},n):Zi(e,t,n)}function Ch(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Oc(s,a,o)}var Xi=m(()=>{v();Ye();xs();N()});function Zi(e,t,n={}){return F("Record",[e,t],n)}function Qi(e,t,n={}){return Oc(e,t,n)}function Lh(e,t){return vt(e,t)}function ea(e){return u.IsEqual(e,an)?Jt():u.IsEqual(e,rr)?Sr():u.IsEqual(e,io)?Ot():hc(e)}function Zt(e){return u.Keys(e.patternProperties)[0]}function mo(e){let t=Zt(e);return ea(t)}function yt(e){return e.patternProperties[Zt(e)]}function rt(e){return C(e,"Record")}var rr,io,an,Ye=m(()=>{v();R();H();vn();gt();Yt();ae();Bi();er();Xi();rr=`^${Fi}$`,io=`^${Ni}$`,an=`^${_i}$`});function Rr(e){return d.Create({"~kind":"Rest"},{type:"rest",items:e},{})}function or(e){return C(e,"Rest")}var uo=m(()=>{v();H()});var jh=m(()=>{});function ta(e){return d.Create({"~kind":"This"},{$ref:"#"},e)}function na(e){return C(e,"This")}var ra=m(()=>{v();H()});function co(e){return d.Create({"~kind":"Undefined"},{type:"undefined"},e)}function po(e){return C(e,"Undefined")}var lo=m(()=>{v();H()});function oa(e){return d.Create({"~kind":"Void"},{type:"void"},e)}function Sn(e){return C(e,"Void")}var Or=m(()=>{v();H()});var sa=m(()=>{cc();os();Xn();as();lc();$t();dt();Er();Zn();fo();Wt();wt();ae();sn();Bt();Zo();dc();Rt();Ht();vn();De();Ce();Ve();oo();gt();Qe();Pr();de();gc();$r();Ye();zt();uo();H();jh();Yt();Pr();Tt();ra();_e();lo();X();Qe();Oi();Or()});function BR(e,t){return u.IsEqual(e,"Array")?Nt(t[0]):u.IsEqual(e,"Capitalize")?aa(t[0]):u.IsEqual(e,"ConstructorParameters")?la(t[0]):u.IsEqual(e,"Evaluate")?Dy(t[0]):u.IsEqual(e,"Exclude")?da(t[0],t[1]):u.IsEqual(e,"Extract")?fa(t[0],t[1]):u.IsEqual(e,"Index")?$s(t[0],t[1]):u.IsEqual(e,"InstanceType")?ga(t[0]):u.IsEqual(e,"Lowercase")?ma(t[0]):u.IsEqual(e,"NonNullable")?ha(t[0]):u.IsEqual(e,"Omit")?xa(t[0],t[1]):u.IsEqual(e,"Parameters")?ya(t[0]):u.IsEqual(e,"Partial")?ba(t[0]):u.IsEqual(e,"Pick")?Ia(t[0],t[1]):u.IsEqual(e,"Readonly")?$a(t[0]):u.IsEqual(e,"KeyOf")?ws(t[0]):u.IsEqual(e,"Record")?Zi(t[0],t[1]):u.IsEqual(e,"Required")?wa(t[0]):u.IsEqual(e,"ReturnType")?ka(t[0]):u.IsEqual(e,"Uncapitalize")?ua(t[0]):u.IsEqual(e,"Uppercase")?ca(t[0]):Is(_n(e),t)}function Mr(){throw Error("Unreachable")}function qh(e,t=[]){return u.ShiftLeft(e,(n,r)=>qh(r,[...t,n[1]]),()=>t)}function qn(e){return u.IsEqual(e.length,3)?[e[0],...qh(e[1])]:[]}function Uh(e){return Ar(e[0],e[2],e[4])}function Kh(e){return Ar(e[0],e[2],e[2])}function Gh(e){return Ar(e[0],Je(),e[2])}function Wh(e){return Ar(e,Je(),Je())}function Bh(e){return qn(e)}function zh(e){return e[1]}function Hh(e){return qn(e)}function Vh(e){return e[1]}function Jh(e){return BR(e[0],e[1])}function Yh(e){return null}function Xh(e){return Jt()}function Zh(e){return Ot()}function Qh(e){return ji()}function ex(e){return co()}function tx(e){return no()}function nx(e){return Sr()}function rx(e){return ms()}function ox(e){return Je()}function sx(e){return Qr()}function ix(e){return G({})}function ax(e){return fe()}function mx(e){return so()}function ux(e){return oa()}function cx(e){return ta()}function px(e){return ne(BigInt(e))}function lx(e){return ne(u.IsEqual(e,"true"))}function dx(e){return ne(parseFloat(e))}function fx(e){return ne(e)}function gx(e){return e[1]}function hx(e){return ne(e)}function xx(e){return u.IsEqual(e.length,3)?[e[0],e[1],...e[2]]:[e[0]]}function yx(e){return e[1]}function bx(e){return ia(e)}function Ix(e){return u.IsEqual(e.length,6)?wr(e[1],e[3],e[5]):wr(e[1],e[3],Je())}function $x(e){return e.length>0}function wx(e){return e.reduce((t,n)=>u.IsEqual(n.length,3)?[...t,[n[1]]]:[...t,[]],[])}function kx(e){return u.IsEqual(e.length,6)?[e[1],e[3],e[5]]:[]}function Tx(e){return u.IsArray(e)&&u.IsEqual(e.length,3)?e[1]:e}function vx(e){return u.IsEqual(e.length,2)?e[1]:[]}function Fh(e,t){return t.reduce((n,r)=>{let o=r;return u.IsEqual(o.length,1)?$s(n,o[0]):u.IsEqual(o.length,0)?Nt(n):Mr()},e)}function Dh(e,t){return u.IsEqual(t.length,3)?pa(e,t[0],t[1],t[2]):e}function zR(e,t){return u.IsArray(t)&&u.IsEqual(t.length,0)?e:Ta(e,t)}function Ex(e){let[t,n,r,o,s]=e;return zR(Dh(t?ws(Fh(n,r)):Fh(n,r),o),s)}function Mc(e,t){return u.IsEqual(t.length,3)?(()=>{let[n,r,o]=t,s=Mc(r,o);if(u.IsEqual(n,"&"))return te(s)?kt([e,...s.allOf]):kt([e,s]);if(u.IsEqual(n,"|"))return L(s)?J([e,...s.anyOf]):J([e,s]);Mr()})():e}function Sx(e){let[t,n]=e;return Mc(t,n)}function Px(e){let[t,n]=e;return Mc(t,n)}function Ax(e){return Fy(e[1])}function Rx(e){return e[1]}function Ox(e){return Yn(e[0],e[2])}function Mx(e){return u.IsEqual(e.length,4)?es(e[1],e[3]):u.IsEqual(e.length,2)?es(e[1],Je()):Mr()}function Cx(e){return`${e}`}function Lx(e){return ft(e[3])?rr:Le(e[3])?io:Qn(e[3])?an:ht(e[3])?an:Mr()}function jx(e){return e.length>0}function Fx(e){return e.length>0}function Dx(e){let[t,n,r,o,s]=e;return{[n]:t&&r?kn(bn(s)):t&&!r?kn(s):!t&&r?bn(s):s}}function Nx(e){return qn(e)}function _x(e){return e.reduce((t,n)=>u.HasPropertyKey(n,rr)||u.HasPropertyKey(n,io)||u.HasPropertyKey(n,an)?[t[0],d.Assign(t[1],n)]:[d.Assign(t[0],n),t[1]],[{},{}])}function qx(e){return _x(e[1])}function Ux(e){let[t,n]=e,r=u.IsEqual(u.Keys(n).length,0)?{}:{patternProperties:n};return G(t,r)}function Kx(e){return u.IsEqual(e.length,5)?kn(bn(e[4])):u.IsEqual(e.length,3)?e[2]:u.IsEqual(e.length,4)?u.IsEqual(e[2],"readonly")?kn(e[3]):bn(e[3]):Mr()}function Gx(e){if(!u.IsArray(e)||!u.IsEqual(e.length,3))return e;let[t,n,r]=e;return t&&r?kn(bn(n)):t&&!r?kn(n):!t&&r?bn(n):n}function Wx(e){return u.IsEqual(e.length,2)?Rr(e[1]):u.IsEqual(e.length,1)?e[0]:Mr()}function Bx(e){return qn(e)}function zx(e){return je(e[1])}function Hx(e){return kn(bn(e[4]))}function Vx(e){return kn(e[3])}function Jx(e){return bn(e[3])}function Yx(e){return e[2]}function Xx(e){return u.IsEqual(e.length,2)?Rr(e[1]):u.IsEqual(e.length,1)?e[0]:Mr()}function Zx(e){return qn(e)}function Qx(e){return yn(e[1],e[4])}function ey(e){return xn(e[2],e[5])}function Nh(e,t){return u.IsEqual(e,"remove")?ih(t):u.IsEqual(e,"add")?kn(t):t}function ty(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 _h(e,t){return u.IsEqual(e,"remove")?uh(t):u.IsEqual(e,"add")?bn(t):t}function ny(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 ry(e){return u.IsEqual(e.length,2)?[e[1]]:[]}function oy(e){return u.IsArray(e[6])&&u.IsEqual(e[6].length,1)?ys(us(e[3]),e[5],e[6][0],Nh(e[1],_h(e[8],e[10]))):ys(us(e[3]),e[5],_n(e[3]),Nh(e[1],_h(e[8],e[10])))}function sy(e){return _n(e)}function iy(e){return BigInt(e)}function ay(e){return parseFloat(e)}function my(e){return u.IsEqual(e,"true")}function uy(e){return null}function cy(e){return{[e[0]]:e[2]}}function py(e){return qn(e)}function HR(e){return e.reduce((t,n)=>d.Assign(t,n),{})}function ly(e){return HR(e[1])}function dy(e){return qn(e)}function fy(e){return e[1]}function gy(e){return ms()}function hy(e){return Jt()}function xy(e){return Ot()}function yy(e){return Sr()}function by(e){return fe()}function Iy(e){return ne(e)}function $y(e){return J(e[1])}function wy(e){return e.length===3?[...e[0],...e[2]]:e.length===1?[...e[0]]:[]}function ky(e){return[e[0],...e[1]]}function Ty(e){return e[1]}function vy(e){return qn(e)}function Ey(e){return u.IsEqual(e.length,2)?e[1]:[]}function Sy(e){let t=e[2],n=e[3],[r,o]=e[4],s=u.IsEqual(u.Keys(o).length,0)?{}:{patternProperties:o};return{[e[1]]:Yn(t,bs(n,r,s))}}function Py(e){let t=e[2],[n,r]=e[3],o=u.IsEqual(u.Keys(r).length,0)?{}:{patternProperties:r};return{[e[1]]:bs(t,n,o)}}function Ay(e){return{[e[1]]:Yn(e[2],e[4])}}function Ry(e){return{[e[1]]:e[3]}}function Oy(e){return null}function My(e){return qn(e)}function Cy(e){return e[1]}function Ly(e){let[t,n]=[e[0],e[1]];return Ny(d.Assign(t,_x(n)[0]))}var jy=m(()=>{v();R();sa();go()});var Un=m(()=>{Xr()});function ks(e){return se(e.length,2)}function Z(e,t,n){return ks(e)?t(e[0],e[1]):n()}var Mt=m(()=>{Un()});function YR(e,t){return se(t.indexOf(e),0)?[e,t.slice(e.length)]:[]}function Ee(e,t){for(let n=0;n<e.length;n++){let r=YR(e[n],t);if(ks(r))return r}return[]}var Pn=m(()=>{Mt();Un()});function Cc(e,t){return Array.from({length:t-e+1},(n,r)=>String.fromCharCode(e+r))}var _y,Lc,jc,ho,qy,xo,sr,va,Uy,Ea,mt=m(()=>{_y=[...Cc(97,122),...Cc(65,90)],Lc="0",jc=Cc(49,57),ho=[Lc,...jc],qy=" ",xo=`
|
|
12
|
+
`,sr="_",va=".",Uy="$",Ea="-"});function Wy(e){let t=e.indexOf(ZR);return se(t,-1)?"":e.slice(t+2)}function By(e){let t=e.indexOf(xo);return se(t,-1)?"":e.slice(t)}function QR(e){return e.replace(/^[ \t\r\f\v]+/,"")}function Sa(e){let t=QR(e);return t.startsWith(Gy)?Sa(Wy(t.slice(2))):t.startsWith(Ky)?Sa(By(t.slice(2))):t}function Xe(e){let t=e.trimStart();return t.startsWith(Gy)?Xe(Wy(t.slice(2))):t.startsWith(Ky)?Xe(By(t.slice(2))):t}var Ky,Gy,ZR,An=m(()=>{Un();mt();Ky="//",Gy="/*",ZR="*/"});function Pa(e,t){return Z(Ee([e],t),(n,r)=>[n,r],()=>["",t])}var Fc=m(()=>{Mt();Pn()});function eO(e,t){return e.includes(t)}function yo(e,t,n,r=""){return Z(Ee(e,n),(o,s)=>eO(t,o)?yo(e,t,s,r):yo(e,t,s,`${r}${o}`),()=>[r,n])}var Dc=m(()=>{Mt();Pn()});function tO(e){return Ee(jc,e)}function rO(e){return yo(nO,[sr],e)}function oO(e){return Z(Ee([Lc],e),(t,n)=>[t,n],()=>Z(tO(e),(t,n)=>Z(rO(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[]))}function Aa(e){return oO(Xe(e))}var nO,Ra=m(()=>{Mt();An();Pn();Dc();mt();mt();mt();mt();nO=[...ho,sr]});function sO(e){return Pa(Ea,e)}function iO(e){return Z(sO(e),(t,n)=>Z(Aa(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function zy(e){return iO(Xe(e))}var Nc=m(()=>{Mt();An();Fc();mt();Ra()});function aO(e){return Z(zy(e),(t,n)=>Z(Ee(["n"],n),(r,o)=>[`${t}`,o],()=>[]),()=>[])}function _c(e){return aO(e)}var Hy=m(()=>{Mt();Pn();Nc()});function qc(e,t){return Ee([e],t)}function g(e,t){return se(e,"")?["",t]:e.startsWith(xo)?qc(e,Sa(t)):e.startsWith(qy)?qc(e,t):qc(e,Xe(t))}var Vy=m(()=>{Un();An();An();Pn();mt();mt()});function mO(e){return Ee(Jy,e)}function Yy(e,t=""){return Z(Ee(uO,e),(n,r)=>Yy(r,`${t}${n}`),()=>[t,e])}function cO(e){return Z(mO(e),(t,n)=>Z(Yy(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Ae(e){return cO(Xe(e))}var Jy,uO,Xy=m(()=>{Mt();An();Pn();mt();mt();mt();mt();Jy=[..._y,sr,Uy];uO=[...Jy,...ho]});function lO(e){return ks(Ee([va],e))}function Zy(e){return Z(yo(pO,[sr],e),(t,n)=>se(t,"")?[]:[t,n],()=>[])}function dO(e){return Z(Ee([va],e),(t,n)=>Z(Zy(n),(r,o)=>[`0${t}${r}`,o],()=>[]),()=>[])}function fO(e){return Z(Aa(e),(t,n)=>Z(Ee([va],n),(r,o)=>Z(Zy(o),(s,a)=>[`${t}${r}${s}`,a],()=>[`${t}`,o]),()=>[`${t}`,n]),()=>[])}function gO(e){return lO(e)?dO(e):fO(e)}function Qy(e){return gO(Xe(e))}var pO,Uc=m(()=>{Un();Mt();An();Pn();Dc();mt();mt();Ra();pO=[...ho,sr]});function hO(e){return Pa(Ea,e)}function xO(e){return Z(hO(e),(t,n)=>Z(Qy(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Oa(e){return xO(Xe(e))}var eb=m(()=>{Mt();An();Fc();mt();Uc()});var tb=m(()=>{Un()});function yO(e){return se(e,"")?[]:[e.slice(0,1),e.slice(1)]}function nb(e,t){return ki(e,(n,r)=>t.startsWith(n)?!0:nb(r,t),()=>!1)}function ir(e,t,n=""){return Z(yO(t),(r,o)=>nb(e,t)?[n,t]:ir(e,o,`${n}${r}`),()=>[])}var Ma=m(()=>{Mt();Un()});function bO(e,t,n){return Z(Ee([e],n),(r,o)=>Z(ir([t],o),(s,a)=>Z(Ee([t],a),(c,p)=>[`${s}`,p],()=>[]),()=>[]),()=>[])}function IO(e,t,n){return Z(Ee([e],n),(r,o)=>Z(ir([xo,t],o),(s,a)=>Z(Ee([t],a),(c,p)=>[`${s}`,p],()=>[]),()=>[]),()=>[])}function rb(e,t,n,r){return n?bO(e,t,Xe(r)):IO(e,t,Xe(r))}var Kc=m(()=>{Mt();An();mt();Pn();Ma()});function $O(e,t){return Ee(e,t)}function wO(e,t){return rb(e,e,!1,t)}function kO(e,t){return Z($O(e,t),(n,r)=>wO(n,`${n}${r}`),()=>[])}function Ca(e,t){return kO(e,Xe(t))}var ob=m(()=>{Mt();Pn();An();Kc()});function sb(e,t){return Z(ir(e,t),(n,r)=>se(n,"")?[]:[n,r],()=>[])}var ib=m(()=>{Un();Mt();Ma()});var ab=m(()=>{Hy();Vy();Xy();Nc();eb();tb();Kc();ob();Ra();Uc();ib();Ma()});var i,vO,EO,SO,PO,cb,pb,AO,Bc,lb,RO,OO,MO,db,fb,gb,CO,LO,jO,hb,FO,DO,NO,_O,qO,xb,UO,KO,GO,Gc,yb,zc,WO,BO,zO,HO,VO,JO,YO,bb,XO,ZO,QO,eM,Ib,$b,wb,kb,La,tM,nM,rM,oM,ie,sM,iM,aM,mM,Tb,vb,Eb,Sb,ja,Pb,uM,Hc,cM,pM,mb,Ab,Rb,lM,dM,fM,gM,hM,xM,ub,Ob,Mb,Cb,yM,bM,IM,$M,wM,kM,TM,vM,EM,SM,PM,AM,RM,Lb,jb,OM,Fb,Db,MM,CM,Vc,LM,jM,FM,DM,NM,_M,qM,UM,Nb,Wc,Jc,zg,_b,KM,qb,GM,WM,BM,zM,HM,Ub,Kb,VM,Yc,JM,Gb,qi=m(()=>{jy();ab();i=(e,t,n=()=>[])=>e.length===2?t(e):n(),vO=e=>i(i(Ae(e),([t,n])=>i(g("extends",n),([r,o])=>i(ie(o),([s,a])=>i(g("=",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Uh(t),n]),EO=e=>i(i(Ae(e),([t,n])=>i(g("extends",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Kh(t),n]),SO=e=>i(i(Ae(e),([t,n])=>i(g("=",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Gh(t),n]),PO=e=>i(Ae(e),([t,n])=>[Wh(t),n]),cb=e=>i(i(vO(e),([t,n])=>[t,n],()=>i(EO(e),([t,n])=>[t,n],()=>i(SO(e),([t,n])=>[t,n],()=>i(PO(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),pb=(e,t=[])=>i(i(g(",",e),([n,r])=>i(cb(r),([o,s])=>[[n,o],s])),([n,r])=>pb(r,[...t,n]),()=>[t,e]),AO=e=>i(i(i(cb(e),([t,n])=>i(pb(n),([r,o])=>i(i(g(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Bh(t),n]),Bc=e=>i(i(g("<",e),([t,n])=>i(AO(n),([r,o])=>i(g(">",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[zh(t),n]),lb=(e,t=[])=>i(i(g(",",e),([n,r])=>i(ie(r),([o,s])=>[[n,o],s])),([n,r])=>lb(r,[...t,n]),()=>[t,e]),RO=e=>i(i(i(ie(e),([t,n])=>i(lb(n),([r,o])=>i(i(g(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Hh(t),n]),OO=e=>i(i(g("<",e),([t,n])=>i(RO(n),([r,o])=>i(g(">",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Vh(t),n]),MO=e=>i(i(Ae(e),([t,n])=>i(OO(n),([r,o])=>[[t,r],o])),([t,n])=>[Jh(t),n]),db=e=>i(i(i(g(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Yh(t),n]),fb=e=>i(g("string",e),([t,n])=>[Xh(t),n]),gb=e=>i(g("number",e),([t,n])=>[Zh(t),n]),CO=e=>i(g("boolean",e),([t,n])=>[Qh(t),n]),LO=e=>i(g("undefined",e),([t,n])=>[ex(t),n]),jO=e=>i(g("null",e),([t,n])=>[tx(t),n]),hb=e=>i(g("integer",e),([t,n])=>[nx(t),n]),FO=e=>i(g("bigint",e),([t,n])=>[rx(t),n]),DO=e=>i(g("unknown",e),([t,n])=>[ox(t),n]),NO=e=>i(g("any",e),([t,n])=>[sx(t),n]),_O=e=>i(g("object",e),([t,n])=>[ix(t),n]),qO=e=>i(g("never",e),([t,n])=>[ax(t),n]),xb=e=>i(g("symbol",e),([t,n])=>[mx(t),n]),UO=e=>i(g("void",e),([t,n])=>[ux(t),n]),KO=e=>i(g("this",e),([t,n])=>[cx(t),n]),GO=e=>i(i(g("${",e),([t,n])=>i(ie(n),([r,o])=>i(g("}",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[gx(t),n]),Gc=e=>i(ir(["${","`"],e),([t,n])=>[hx(t),n]),yb=e=>i(i(i(Gc(e),([t,n])=>i(GO(n),([r,o])=>i(yb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i(i(Gc(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(Gc(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[xx(t),n]),zc=e=>i(i(g("`",e),([t,n])=>i(yb(n),([r,o])=>i(g("`",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[yx(t),n]),WO=e=>i(zc(e),([t,n])=>[bx(t),n]),BO=e=>i(i(i(g("if",e),([t,n])=>i(ie(n),([r,o])=>i(g("then",o),([s,a])=>i(ie(a),([c,p])=>i(g("else",p),([f,I])=>i(ie(I),([w,M])=>[[t,r,s,c,f,w],M])))))),([t,n])=>[t,n],()=>i(i(g("if",e),([t,n])=>i(ie(n),([r,o])=>i(g("then",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[t,n],()=>[])),([t,n])=>[Ix(t),n]),zO=e=>i(_c(e),([t,n])=>[px(t),n]),HO=e=>i(i(g("true",e),([t,n])=>[t,n],()=>i(g("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[lx(t),n]),VO=e=>i(Oa(e),([t,n])=>[dx(t),n]),JO=e=>i(Ca(["'",'"'],e),([t,n])=>[fx(t),n]),YO=e=>i(i(i(g("keyof",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[$x(t),n]),bb=(e,t=[])=>i(i(i(g("[",e),([n,r])=>i(ie(r),([o,s])=>i(g("]",s),([a,c])=>[[n,o,a],c]))),([n,r])=>[n,r],()=>i(i(g("[",e),([n,r])=>i(g("]",r),([o,s])=>[[n,o],s])),([n,r])=>[n,r],()=>[])),([n,r])=>bb(r,[...t,n]),()=>[t,e]),XO=e=>i(bb(e),([t,n])=>[wx(t),n]),ZO=e=>i(i(i(g("extends",e),([t,n])=>i(ie(n),([r,o])=>i(g("?",o),([s,a])=>i(ie(a),([c,p])=>i(g(":",p),([f,I])=>i(ie(I),([w,M])=>[[t,r,s,c,f,w],M])))))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[kx(t),n]),QO=e=>i(i(i(g("(",e),([t,n])=>i(ie(n),([r,o])=>i(g(")",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i(fb(e),([t,n])=>[t,n],()=>i(gb(e),([t,n])=>[t,n],()=>i(CO(e),([t,n])=>[t,n],()=>i(LO(e),([t,n])=>[t,n],()=>i(jO(e),([t,n])=>[t,n],()=>i(hb(e),([t,n])=>[t,n],()=>i(FO(e),([t,n])=>[t,n],()=>i(DO(e),([t,n])=>[t,n],()=>i(NO(e),([t,n])=>[t,n],()=>i(_O(e),([t,n])=>[t,n],()=>i(qO(e),([t,n])=>[t,n],()=>i(xb(e),([t,n])=>[t,n],()=>i(UO(e),([t,n])=>[t,n],()=>i(KO(e),([t,n])=>[t,n],()=>i(zO(e),([t,n])=>[t,n],()=>i(HO(e),([t,n])=>[t,n],()=>i(VO(e),([t,n])=>[t,n],()=>i(JO(e),([t,n])=>[t,n],()=>i(WO(e),([t,n])=>[t,n],()=>i(BO(e),([t,n])=>[t,n],()=>i(cM(e),([t,n])=>[t,n],()=>i(dM(e),([t,n])=>[t,n],()=>i(bM(e),([t,n])=>[t,n],()=>i(yM(e),([t,n])=>[t,n],()=>i(kM(e),([t,n])=>[t,n],()=>i(MO(e),([t,n])=>[t,n],()=>i(TM(e),([t,n])=>[t,n],()=>[])))))))))))))))))))))))))))),([t,n])=>[Tx(t),n]),eM=e=>i(i(i(g("with",e),([t,n])=>i(Fb(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[vx(t),n]),Ib=e=>i(i(YO(e),([t,n])=>i(QO(n),([r,o])=>i(XO(o),([s,a])=>i(ZO(a),([c,p])=>i(eM(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Ex(t),n]),$b=e=>i(i(i(g("&",e),([t,n])=>i(Ib(n),([r,o])=>i($b(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),wb=e=>i(i(Ib(e),([t,n])=>i($b(n),([r,o])=>[[t,r],o])),([t,n])=>[Sx(t),n]),kb=e=>i(i(i(g("|",e),([t,n])=>i(wb(n),([r,o])=>i(kb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),La=e=>i(i(wb(e),([t,n])=>i(kb(n),([r,o])=>[[t,r],o])),([t,n])=>[Px(t),n]),tM=e=>i(i(g("readonly",e),([t,n])=>i(La(n),([r,o])=>[[t,r],o])),([t,n])=>[Ax(t),n]),nM=e=>i(i(g("|",e),([t,n])=>i(La(n),([r,o])=>[[t,r],o])),([t,n])=>[Rx(t),n]),rM=e=>i(i(Bc(e),([t,n])=>i(g("=",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Ox(t),n]),oM=e=>i(i(i(g("infer",e),([t,n])=>i(Ae(n),([r,o])=>i(g("extends",o),([s,a])=>i(La(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[t,n],()=>i(i(g("infer",e),([t,n])=>i(Ae(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>[])),([t,n])=>[Mx(t),n]),ie=e=>i(i(oM(e),([t,n])=>[t,n],()=>i(nM(e),([t,n])=>[t,n],()=>i(tM(e),([t,n])=>[t,n],()=>i(La(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),sM=e=>i(Oa(e),([t,n])=>[Cx(t),n]),iM=e=>i(Ae(e),([t,n])=>[t,n]),aM=e=>i(Ca(["'",'"'],e),([t,n])=>[t,n]),mM=e=>i(i(g("[",e),([t,n])=>i(Ae(n),([r,o])=>i(g(":",o),([s,a])=>i(i(hb(a),([c,p])=>[c,p],()=>i(gb(a),([c,p])=>[c,p],()=>i(fb(a),([c,p])=>[c,p],()=>i(xb(a),([c,p])=>[c,p],()=>[])))),([c,p])=>i(g("]",p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Lx(t),n]),Tb=e=>i(i(sM(e),([t,n])=>[t,n],()=>i(iM(e),([t,n])=>[t,n],()=>i(aM(e),([t,n])=>[t,n],()=>i(mM(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),vb=e=>i(i(i(g("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[jx(t),n]),Eb=e=>i(i(i(g("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Fx(t),n]),Sb=e=>i(i(vb(e),([t,n])=>i(Tb(n),([r,o])=>i(Eb(o),([s,a])=>i(g(":",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Dx(t),n]),ja=e=>i(i(i(g(",",e),([t,n])=>i(g(`
|
|
13
13
|
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g(";",e),([t,n])=>i(g(`
|
|
14
14
|
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g(",",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(g(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(g(`
|
|
15
|
-
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))))),([t,n])=>[t,n]),
|
|
15
|
+
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))))),([t,n])=>[t,n]),Pb=(e,t=[])=>i(i(ja(e),([n,r])=>i(Sb(r),([o,s])=>[[n,o],s])),([n,r])=>Pb(r,[...t,n]),()=>[t,e]),uM=e=>i(i(i(Sb(e),([t,n])=>i(Pb(n),([r,o])=>i(i(ja(o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Nx(t),n]),Hc=e=>i(i(g("{",e),([t,n])=>i(uM(n),([r,o])=>i(g("}",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[qx(t),n]),cM=e=>i(Hc(e),([t,n])=>[Ux(t),n]),pM=e=>i(i(i(Ae(e),([t,n])=>i(g("?",n),([r,o])=>i(g(":",o),([s,a])=>i(g("readonly",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[t,n],()=>i(i(Ae(e),([t,n])=>i(g(":",n),([r,o])=>i(g("readonly",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[t,n],()=>i(i(Ae(e),([t,n])=>i(g("?",n),([r,o])=>i(g(":",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[t,n],()=>i(i(Ae(e),([t,n])=>i(g(":",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>[])))),([t,n])=>[Kx(t),n]),mb=e=>i(i(pM(e),([t,n])=>[t,n],()=>i(i(vb(e),([t,n])=>i(ie(n),([r,o])=>i(Eb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>[])),([t,n])=>[Gx(t),n]),Ab=e=>i(i(i(g("...",e),([t,n])=>i(mb(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(mb(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[])),([t,n])=>[Wx(t),n]),Rb=(e,t=[])=>i(i(g(",",e),([n,r])=>i(Ab(r),([o,s])=>[[n,o],s])),([n,r])=>Rb(r,[...t,n]),()=>[t,e]),lM=e=>i(i(i(Ab(e),([t,n])=>i(Rb(n),([r,o])=>i(i(g(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Bx(t),n]),dM=e=>i(i(g("[",e),([t,n])=>i(lM(n),([r,o])=>i(g("]",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[zx(t),n]),fM=e=>i(i(Ae(e),([t,n])=>i(g("?",n),([r,o])=>i(g(":",o),([s,a])=>i(g("readonly",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Hx(t),n]),gM=e=>i(i(Ae(e),([t,n])=>i(g(":",n),([r,o])=>i(g("readonly",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[Vx(t),n]),hM=e=>i(i(Ae(e),([t,n])=>i(g("?",n),([r,o])=>i(g(":",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[Jx(t),n]),xM=e=>i(i(Ae(e),([t,n])=>i(g(":",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Yx(t),n]),ub=e=>i(i(fM(e),([t,n])=>[t,n],()=>i(gM(e),([t,n])=>[t,n],()=>i(hM(e),([t,n])=>[t,n],()=>i(xM(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),Ob=e=>i(i(i(g("...",e),([t,n])=>i(ub(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(ub(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[])),([t,n])=>[Xx(t),n]),Mb=(e,t=[])=>i(i(g(",",e),([n,r])=>i(Ob(r),([o,s])=>[[n,o],s])),([n,r])=>Mb(r,[...t,n]),()=>[t,e]),Cb=e=>i(i(i(Ob(e),([t,n])=>i(Mb(n),([r,o])=>i(i(g(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Zx(t),n]),yM=e=>i(i(g("(",e),([t,n])=>i(Cb(n),([r,o])=>i(g(")",o),([s,a])=>i(g("=>",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Qx(t),n]),bM=e=>i(i(g("new",e),([t,n])=>i(g("(",n),([r,o])=>i(Cb(o),([s,a])=>i(g(")",a),([c,p])=>i(g("=>",p),([f,I])=>i(ie(I),([w,M])=>[[t,r,s,c,f,w],M])))))),([t,n])=>[ey(t),n]),IM=e=>i(i(i(g("+",e),([t,n])=>i(g("readonly",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g("-",e),([t,n])=>i(g("readonly",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])))),([t,n])=>[ty(t),n]),$M=e=>i(i(i(g("+",e),([t,n])=>i(g("?",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g("-",e),([t,n])=>i(g("?",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])))),([t,n])=>[ny(t),n]),wM=e=>i(i(i(g("as",e),([t,n])=>i(ie(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[ry(t),n]),kM=e=>i(i(g("{",e),([t,n])=>i(IM(n),([r,o])=>i(g("[",o),([s,a])=>i(Ae(a),([c,p])=>i(g("in",p),([f,I])=>i(ie(I),([w,M])=>i(wM(M),([j,O])=>i(g("]",O),([q,ee])=>i($M(ee),([me,xe])=>i(g(":",xe),([Te,Be])=>i(ie(Be),([Ut,ye])=>i(db(ye),([re,T])=>i(g("}",T),([ze,Kt])=>[[t,r,s,c,f,w,j,q,me,Te,Ut,re,ze],Kt]))))))))))))),([t,n])=>[oy(t),n]),TM=e=>i(Ae(e),([t,n])=>[sy(t),n]),vM=e=>i(_c(e),([t,n])=>[iy(t),n]),EM=e=>i(Oa(e),([t,n])=>[ay(t),n]),SM=e=>i(i(g("true",e),([t,n])=>[t,n],()=>i(g("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[my(t),n]),PM=e=>i(Ca(['"',"'"],e),([t,n])=>[t,n]),AM=e=>i(g("null",e),([t,n])=>[uy(t),n]),RM=e=>i(g("undefined",e),([t,n])=>[void 0,n]),Lb=e=>i(i(Tb(e),([t,n])=>i(g(":",n),([r,o])=>i(Vc(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[cy(t),n]),jb=(e,t=[])=>i(i(ja(e),([n,r])=>i(Lb(r),([o,s])=>[[n,o],s])),([n,r])=>jb(r,[...t,n]),()=>[t,e]),OM=e=>i(i(i(Lb(e),([t,n])=>i(jb(n),([r,o])=>i(i(ja(o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[py(t),n]),Fb=e=>i(i(g("{",e),([t,n])=>i(OM(n),([r,o])=>i(g("}",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[ly(t),n]),Db=(e,t=[])=>i(i(g(",",e),([n,r])=>i(Vc(r),([o,s])=>[[n,o],s])),([n,r])=>Db(r,[...t,n]),()=>[t,e]),MM=e=>i(i(i(Vc(e),([t,n])=>i(Db(n),([r,o])=>i(i(g(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[dy(t),n]),CM=e=>i(i(g("[",e),([t,n])=>i(MM(n),([r,o])=>i(g("]",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[fy(t),n]),Vc=e=>i(i(vM(e),([t,n])=>[t,n],()=>i(EM(e),([t,n])=>[t,n],()=>i(SM(e),([t,n])=>[t,n],()=>i(PM(e),([t,n])=>[t,n],()=>i(AM(e),([t,n])=>[t,n],()=>i(RM(e),([t,n])=>[t,n],()=>i(Fb(e),([t,n])=>[t,n],()=>i(CM(e),([t,n])=>[t,n],()=>[])))))))),([t,n])=>[t,n]),LM=e=>i(g("-?(?:0|[1-9][0-9]*)n",e),([t,n])=>[gy(t),n]),jM=e=>i(g(".*",e),([t,n])=>[hy(t),n]),FM=e=>i(g("-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?",e),([t,n])=>[xy(t),n]),DM=e=>i(g("-?(?:0|[1-9][0-9]*)",e),([t,n])=>[yy(t),n]),NM=e=>i(g("(?!)",e),([t,n])=>[by(t),n]),_M=e=>i(sb(["-?(?:0|[1-9][0-9]*)n",".*","-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?","-?(?:0|[1-9][0-9]*)","(?!)","(",")","$","|"],e),([t,n])=>[Iy(t),n]),qM=e=>i(i(LM(e),([t,n])=>[t,n],()=>i(jM(e),([t,n])=>[t,n],()=>i(FM(e),([t,n])=>[t,n],()=>i(DM(e),([t,n])=>[t,n],()=>i(NM(e),([t,n])=>[t,n],()=>i(UM(e),([t,n])=>[t,n],()=>i(_M(e),([t,n])=>[t,n],()=>[]))))))),([t,n])=>[t,n]),UM=e=>i(i(g("(",e),([t,n])=>i(Jc(n),([r,o])=>i(g(")",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[$y(t),n]),Nb=e=>i(i(i(Wc(e),([t,n])=>i(g("|",n),([r,o])=>i(Nb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i(i(Wc(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[]))),([t,n])=>[wy(t),n]),Wc=e=>i(i(qM(e),([t,n])=>i(Jc(n),([r,o])=>[[t,r],o])),([t,n])=>[ky(t),n]),Jc=e=>i(i(Nb(e),([t,n])=>[t,n],()=>i(Wc(e),([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),zg=e=>i(i(g("^",e),([t,n])=>i(Jc(n),([r,o])=>i(g("$",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Ty(t),n]),_b=(e,t=[])=>i(i(g(",",e),([n,r])=>i(ie(r),([o,s])=>[[n,o],s])),([n,r])=>_b(r,[...t,n]),()=>[t,e]),KM=e=>i(i(i(ie(e),([t,n])=>i(_b(n),([r,o])=>i(i(g(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[vy(t),n]),qb=e=>i(i(i(g("extends",e),([t,n])=>i(KM(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Ey(t),n]),GM=e=>i(i(g("interface",e),([t,n])=>i(Ae(n),([r,o])=>i(Bc(o),([s,a])=>i(qb(a),([c,p])=>i(Hc(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Sy(t),n]),WM=e=>i(i(g("interface",e),([t,n])=>i(Ae(n),([r,o])=>i(qb(o),([s,a])=>i(Hc(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[Py(t),n]),BM=e=>i(i(g("type",e),([t,n])=>i(Ae(n),([r,o])=>i(Bc(o),([s,a])=>i(g("=",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Ay(t),n]),zM=e=>i(i(g("type",e),([t,n])=>i(Ae(n),([r,o])=>i(g("=",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[Ry(t),n]),HM=e=>i(i(i(g("export",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Oy(t),n]),Ub=e=>i(i(i(g(";",e),([t,n])=>i(g(`
|
|
16
16
|
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(g(`
|
|
17
|
-
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n]),Ub=(e,t=[])=>i(i(qb(e),([n,r])=>i(Yc(r),([o,s])=>[[n,o],s])),([n,r])=>Ub(r,[...t,n]),()=>[t,e]),VM=e=>i(i(i(Yc(e),([t,n])=>i(Ub(n),([r,o])=>i(i(qb(o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Oy(t),n]),Yc=e=>i(i(HM(e),([t,n])=>i(i(GM(n),([r,o])=>[r,o],()=>i(WM(n),([r,o])=>[r,o],()=>i(BM(n),([r,o])=>[r,o],()=>i(zM(n),([r,o])=>[r,o],()=>[])))),([r,o])=>i(lb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[My(t),n]),JM=e=>i(i(Yc(e),([t,n])=>i(VM(n),([r,o])=>[[t,r],o])),([t,n])=>[Cy(t),n]),Kb=e=>i(i(JM(e),([t,n])=>[t,n],()=>i(rM(e),([t,n])=>[t,n],()=>i(ie(e),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n])});function Gb(e){let t=zc(`\`${e}\``);return u.IsEqual(t.length,2)?t[0]:Ne()}var Xc=m(()=>{$n();A();Ni()});function XM(e){return e.join("|")}function ZM(e){return e.slice(1,e.length-1)}function QM(e,t,n){return ar(t,`${n}${e}`)}function eC(e,t){return ar(e,`${t}${_g}`)}function tC(e,t){return ar(e,`${t}${Li}`)}function nC(e,t){return ar(e,`${t}${Fi}`)}function rC(e,t){return ks(J([ne("false"),ne("true")]),e,t)}function oC(e,t){return ar(e,`${t}${Di}`)}function sC(e,t,n){return ar(t,`${n}${ZM(e)}`)}function iC(e,t,n){let r=Ts(e,{});return ks(r,t,n)}function aC(e,t,n){let r=gt(e);return ks(r,t,n)}function Wb(e,t,n,r=[]){return u.ShiftLeft(e,(o,s)=>Wb(s,t,n,[...r,ks(o,[],"")]),()=>ar(t,`${n}(${XM(r)})`))}function ks(e,t,n){return tt(e)?aC(e.enum,t,n):lt(e)?tC(t,n):ce(e)?QM(e.const,t,n):kn(e)?eC(t,n):Ht(e)?rC(t,n):Le(e)?nC(t,n):ft(e)?oC(t,n):Pe(e)?sC(e.pattern,t,n):zb(e)?iC(e.parameters[0],t,n):L(e)?Wb(e.anyOf,t,n):Pf}function ar(e,t){return u.ShiftLeft(e,(n,r)=>ks(n,r,t),()=>t)}function mC(e){return`^${ar(e,"")}$`}function Bb(e){let t=mC(e);return Ui(t)}var Zc=m(()=>{A();on();Ce();X();kt();vr();Jt();dt();Tn();Zn();Ve();Ki();V();La()});function Ts(e,t){return z(e)?d.Update(Bb(e),{},t):oa(e,t)}function Hb(e,t,n,r){let o=Nt(e,t,n);return Ts(o,r)}var La=m(()=>{E();kt();Zc();N()});function oa(e,t={}){return F("TemplateLiteral",[e],t)}function zb(e){return Fe(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"TemplateLiteral")}function Vb(e){return Ts(e,{})}function uC(e){let t=Gb(e);return Vb(t)}function Jb(e,t={}){let n=u.IsString(e)?uC(e):Vb(e);return d.Update(n,{},t)}function Pe(e){return C(e,"TemplateLiteral")}var kt=m(()=>{es();A();H();ae();Xc();La()});var W={};Ft(W,{ExtendsFalse:()=>B,ExtendsTrue:()=>S,ExtendsUnion:()=>Qc,IsExtendsFalse:()=>cC,IsExtendsTrue:()=>Xb,IsExtendsTrueLike:()=>yo,IsExtendsUnion:()=>Yb,Match:()=>$e});function Qc(e){return d.Create({"~kind":"ExtendsUnion"},{inferred:e})}function Yb(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"inferred")&&u.IsEqual(e["~kind"],"ExtendsUnion")&&u.IsObject(e.inferred)}function S(e){return d.Create({"~kind":"ExtendsTrue"},{inferred:e})}function Xb(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"inferred")&&u.IsEqual(e["~kind"],"ExtendsTrue")&&u.IsObject(e.inferred)}function B(){return d.Create({"~kind":"ExtendsFalse"},{})}function cC(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.IsEqual(e["~kind"],"ExtendsFalse")}function yo(e){return Yb(e)||Xb(e)}function $e(e,t,n){return yo(e)?t(e.inferred):n()}var be=m(()=>{A();E()});function pC(e,t,n,r){return $e(oe(e,n,r),o=>S(d.Assign(d.Assign(e,o),{[t]:n})),()=>B())}function lC(e,t){return S(e)}function dC(e,t,n,r,o){return $e(oe(e,t,n),s=>$e(oe(s,t,r),a=>S(a),()=>B()),()=>$e(oe(e,t,o),s=>S(s),()=>B()))}function fC(e,t,n){let r=gt(n);return oe(e,t,r)}function Zb(e,t,n){return u.ShiftLeft(n,(r,o)=>$e(oe(e,t,r),s=>Zb(s,t,o),()=>B()),()=>S(e))}function gC(e,t,n){let r=st(n);return oe(e,t,r)}function Qb(e,t,n){return u.ShiftLeft(n,(r,o)=>$e(oe(e,t,r),s=>S(s),()=>Qb(e,t,o)),()=>B())}function pe(e,t,n){return Ee(n)?lC(e,t):Se(n)?dC(e,t,n.if,n.then,n.else):tt(n)?fC(e,t,n.enum):Me(n)?pC(e,n.name,t,n.extends):te(n)?Zb(e,t,n.allOf):Pe(n)?gC(e,t,n.pattern):L(n)?Qb(e,t,n.anyOf):Oe(n)?S(e):B()}var at=m(()=>{A();E();It();Pt();on();zt();De();kt();X();Qe();vt();be();V();V()});function eI(e,t,n){return Me(n)?pe(e,t,n):Ee(n)?S(e):Oe(n)?S(e):Qc(e)}var tI=m(()=>{zt();It();Qe();at();be()});function hC(e,t){let n=kr(e),r=kr(t);return n&&r||!n&&r?!0:!(n&&!r)}function nI(e,t,n,r){return we(r)?hC(t,r)?oe(e,n,r.items):B():pe(e,t,r)}var rI=m(()=>{pt();rs();at();vt();be()});function oI(e,t,n){return kn(n)?S(e):pe(e,t,n)}var sI=m(()=>{vr();at();be()});function iI(e,t,n){return Ht(n)?S(e):pe(e,t,n)}var aI=m(()=>{Zn();at();be()});function xC(e,t,n,r,o){let s=Me(r)?t:r,a=Me(r)?r:t,c=ot(t),p=ot(r);return!c&&p?B():$e(oe(e,s,a),f=>Es(f,n,o),()=>B())}function yC(e,t,n,r){return u.ShiftLeft(r,(o,s)=>xC(e,t,n,o,s),()=>ot(t)?S(e):B())}function bC(e,t,n){return u.ShiftLeft(t,(r,o)=>yC(e,r,o,n),()=>S(e))}function Es(e,t,n){return bC(e,t,n)}var ep=m(()=>{A();zt();Xn();vt();be()});function ja(e,t,n){return vn(n)?S(e):oe(e,t,n)}var tp=m(()=>{Or();vt();be()});function mI(e,t,n,r){return Ee(r)?S(e):Oe(r)?S(e):Ue(r)?$e(Es(e,t,r.parameters),o=>ja(o,n,r.instanceType),()=>B()):B()}var uI=m(()=>{It();Gt();Qe();be();ep();tp()});function cI(e,t,n,r,o){return $e(oe(e,t,o),()=>oe(e,n,o),()=>oe(e,r,o))}var pI=m(()=>{vt();be()});function lI(e,t,n){let r=gt(t);return oe(e,r,n)}var dI=m(()=>{vt();V()});function fI(e,t,n,r){return Ee(r)?S(e):Oe(r)?S(e):Ke(r)?$e(Es(e,t,r.parameters),o=>ja(o,n,r.returnType),()=>B()):B()}var gI=m(()=>{It();Wt();Qe();be();ep();tp()});function hI(e,t,n){return lt(n)?S(e):Le(n)?S(e):pe(e,t,n)}var xI=m(()=>{Tn();dt();at();be()});function yI(e,t,n){let r=ke(t);return oe(e,r,n)}var bI=m(()=>{vt();vs()});function Fa(e,t,n){return t===n?S(e):B()}function IC(e,t,n){return ce(n)?Fa(e,t,n.const):kn(n)?S(e):pe(e,ne(t),n)}function $C(e,t,n){return ce(n)?Fa(e,t,n.const):Ht(n)?S(e):pe(e,ne(t),n)}function wC(e,t,n){return ce(n)?Fa(e,t,n.const):Le(n)?S(e):pe(e,ne(t),n)}function kC(e,t,n){return ce(n)?Fa(e,t,n.const):ft(n)?S(e):pe(e,ne(t),n)}function II(e,t,n){return u.IsBigInt(t.const)?IC(e,t.const,n):u.IsBoolean(t.const)?$C(e,t.const,n):u.IsNumber(t.const)?wC(e,t.const,n):u.IsString(t.const)?kC(e,t.const,n):Ne()}var $I=m(()=>{A();ac();Ce();vr();Zn();dt();Jt();at();be()});function wI(e,t,n){return Me(n)?pe(e,t,n):S(e)}var kI=m(()=>{zt();at();be()});function TI(e,t,n){return no(n)?S(e):pe(e,t,n)}var EI=m(()=>{ro();at();be()});function vI(e,t,n){return Le(n)?S(e):pe(e,t,n)}var SI=m(()=>{dt();at();be()});function TC(e,t,n){return ot(t)?ot(n)?S(e):B():S(e)}function EC(e,t,n){return Me(n)&&rn(n.extends)?B():$e(oe(e,t,n),r=>TC(r,t,n),()=>B())}function vC(e,t){return e.reduce((n,r)=>r in t?yo(t[r])?{...n,...t[r].inferred}:Ne():Ne(),{})}function SC(e,t,n){let r={};for(let a of u.Keys(n))r[a]=a in t?EC({},t[a],n[a]):ot(n[a])?Me(n[a])?S(d.Assign(e,{[n[a].name]:n[a].extends})):S(e):B();let o=u.Values(r).every(a=>yo(a)),s=o?vC(u.Keys(r),r):{};return o?S(s):B()}function PC(e,t,n){let r=SC(e,t,n);return yo(r)?S(d.Assign(e,r.inferred)):B()}function AC(e,t,n){return PC(e,t,n)}function RC(e,t){return u.Keys(t).reduce((n,r)=>({...n,[r]:u.HasPropertyKey(e,r)?L(n[r])?J([...n[r].anyOf,t[r]]):J([e[r],t[r]]):t[r]}),e)}function PI(e,t,n,r){return u.ShiftLeft(t,(o,s)=>$e(oe({},e[o],n),a=>PI(e,s,n,RC(r,a)),()=>B()),()=>S(r))}function OC(e,t,n,r){let o=u.Keys(t);return PI(t,o,r,e)}function AI(e,t,n){return rt(n)?OC(e,t,Xt(n),ht(n)):ue(n)?AC(e,t,n.properties):pe(e,G(t),n)}var RI=m(()=>{$n();E();A();Xn();zt();Ve();le();Ye();X();vt();at();be()});function MC(e,t){return u.IsEqual(u.Keys(t).length,0)?S(e):B()}function CC(e,t,n,r,o){return oe(e,n,o)}function OI(e,t,n,r){return rt(r)?CC(e,Zi(t),n,Zi(Xt(r)),ht(r)):ue(r)?MC(e,r.properties):Ee(r)?S(e):Oe(r)?S(e):B()}var MI=m(()=>{A();It();Qe();le();Ye();vt();be()});function CI(e,t,n){return ft(n)?S(e):pe(e,t,n)}var LI=m(()=>{Jt();at();be()});function jI(e,t,n){return Qn(n)?S(e):pe(e,t,n)}var FI=m(()=>{Pr();at();be()});function DI(e,t,n){let r=st(t);return oe(e,r,n)}var NI=m(()=>{vt();V()});function np(e,t){return d.Create({"~kind":"Inferrable"},{name:e,type:t},{})}function Ss(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 rp(e){return or(e)?Me(e.items)?we(e.items.extends)?np(e.items.name,e.items.extends.items):Oe(e.items.extends)?np(e.items.name,e.items.extends):void 0:Ne():void 0}function Da(e){return Me(e)?np(e.name,e.extends):void 0}function op(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>$e(oe({},r,t),()=>op(o,t,[...n,r]),()=>{}),()=>n)}function _I(e,t,n,r){let o=op(n,r);return u.IsArray(o)?S(d.Assign(e,{[t]:je(o)})):B()}function Na(e,t,n,r){let o=op(n,r);return u.IsArray(o)?S(d.Assign(e,{[t]:J(o)})):B()}var sp=m(()=>{$n();E();A();pt();Qe();_e();vt();X();zt();mo();be()});function LC(e){return[...e].reverse()}function ip(e,t){return t?LC(e):e}function jC(e){let t=e.length>0?e[0]:void 0,n=Fe(t)?rp(t):void 0;return Fe(n)}function FC(e,t,n,r,o,s){return $e(oe(e,n,o),a=>qI(a,t,r,s),()=>B())}function DC(e,t,n,r,o){let s=rp(r);return Ss(s)?_I(e,s.name,ip(n,t),s.type):u.ShiftLeft(n,(a,c)=>FC(e,t,a,c,r,o),()=>B())}function NC(e,t,n,r){return u.ShiftLeft(r,(o,s)=>DC(e,t,n,o,s),()=>u.IsEqual(n.length,0)?S(e):B())}function qI(e,t,n,r){return NC(e,t,n,r)}function _C(e,t,n){let r=mr(e,Ie([],[]),n),o=jC(r);return qI(e,o,ip(t,o),ip(r,o))}function UI(e,t,n){let r=Da(n);return Ss(r)?Na(e,r.name,t,r.type):u.ShiftLeft(t,(o,s)=>$e(oe(e,o,n),a=>UI(a,s,n),()=>B()),()=>S(e))}function KI(e,t,n){let r=mr(e,Ie([],[]),t);return he(n)?_C(e,r,n.items):we(n)?UI(e,r,n.items):pe(e,je(r),n)}var GI=m(()=>{A();H();pt();_e();vt();at();be();N();N();sp()});function WI(e,t,n){return vn(n)?S(e):co(n)?S(e):pe(e,t,n)}var BI=m(()=>{po();Or();at();be()});function zI(e,t,n){return u.ShiftLeft(n,(r,o)=>$e(oe(e,t,r),s=>S(s),()=>zI(e,t,o)),()=>B())}function ap(e,t,n){return u.ShiftLeft(t,(r,o)=>$e(zI(e,r,n),s=>ap(s,o,n),()=>B()),()=>S(e))}function HI(e,t,n){let r=Da(n);return Ss(r)?Na(e,r.name,t,r.type):L(n)?ap(e,t,n.anyOf):ap(e,t,[n])}var VI=m(()=>{A();X();vt();be();sp()});function JI(e,t,n){return Me(n)?pe(e,t,n):Ee(n)?S(e):Oe(n)?S(e):B()}var YI=m(()=>{It();Qe();zt();at();be()});function XI(e,t,n){return vn(n)?S(e):pe(e,t,n)}var ZI=m(()=>{Or();at();be()});function oe(e,t,n){return Ee(t)?eI(e,t,n):we(t)?nI(e,t,t.items,n):kn(t)?oI(e,t,n):Ht(t)?iI(e,t,n):Ue(t)?mI(e,t.parameters,t.instanceType,n):Se(t)?cI(e,t.if,t.then,t.else,n):tt(t)?lI(e,t.enum,n):Ke(t)?fI(e,t.parameters,t.returnType,n):lt(t)?hI(e,t,n):te(t)?yI(e,t.allOf,n):ce(t)?II(e,t,n):rn(t)?wI(e,t,n):no(t)?TI(e,t,n):Le(t)?vI(e,t,n):ue(t)?AI(e,t.properties,n):rt(t)?OI(e,Xt(t),ht(t),n):ft(t)?CI(e,t,n):Qn(t)?jI(e,t,n):Pe(t)?DI(e,t.pattern,n):he(t)?KI(e,t.items,n):co(t)?WI(e,t,n):L(t)?HI(e,t.anyOf,n):Oe(t)?JI(e,t,n):vn(t)?XI(e,t,n):B()}var vt=m(()=>{tI();rI();sI();aI();uI();pI();dI();gI();xI();bI();$I();kI();EI();SI();RI();MI();LI();FI();NI();GI();BI();VI();YI();ZI();It();pt();vr();Zn();Gt();Pt();on();Wt();Tn();De();Ce();Ve();ro();dt();le();Ye();Jt();Pr();kt();_e();po();Qe();X();Or();be()});function qC(e,t){return ke([...e,G(t)])}function mp(e,t,n){return z(e)?d.Update(qC(e,t),{},n):ys(e,t,n)}function QI(e,t,n,r,o){let s=Nt(e,t,n),a=Ps(e,t,r);return mp(s,a,o)}var _a=m(()=>{E();le();V();fo();N();N();N()});function ys(e,t,n={}){return F("Interface",[e,t],n)}function bo(e){return Fe(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"Interface")}function e$(e,t,n={}){return mp(e,t,n)}var As=m(()=>{A();H();ae();_a()});function UC(e,t,n){return e.includes(n)?!0:Rs([...e,n],t,t[n])}function t$(e,t,n){let r=Si(n);return Cr(e,t,r)}function Cr(e,t,n){return u.ShiftLeft(n,(r,o)=>Rs(e,t,r)?!0:Cr(e,t,o),()=>!1)}function Rs(e,t,n){return Ge(n)?UC(e,t,n.$ref):we(n)?Rs(e,t,n.items):Ue(n)?Cr(e,t,[...n.parameters,n.instanceType]):Ke(n)?Cr(e,t,[...n.parameters,n.returnType]):bo(n)?t$(e,t,n.parameters[1]):te(n)?Cr(e,t,n.allOf):ue(n)?t$(e,t,n.properties):L(n)?Cr(e,t,n.anyOf):he(n)?Cr(e,t,n.items):rt(n)?Rs(e,t,ht(n)):!1}function n$(e,t,n){return Rs(e,t,n)}var up=m(()=>{A();pt();Gt();Wt();De();le();$r();Ye();_e();X();Bt();As()});function KC(e,t){return t.reduce((n,r)=>n$([r],e,e[r])?[...n,r]:n,[])}function r$(e){let t=vi(e);return KC(e,t)}var cp=m(()=>{$r();up()});function GC(e,t,n){return n.includes(t)?n:t in e?Os(e,e[t],[...n,t]):Ne()}function o$(e,t,n){let r=Si(t);return Io(e,r,n)}function Io(e,t,n){return t.reduce((r,o)=>Os(e,o,r),n)}function Os(e,t,n){return Ge(t)?GC(e,t.$ref,n):we(t)?Os(e,t.items,n):Ue(t)?Io(e,[...t.parameters,t.instanceType],n):Ke(t)?Io(e,[...t.parameters,t.returnType],n):bo(t)?o$(e,t.parameters[1],n):te(t)?Io(e,t.allOf,n):ue(t)?o$(e,t.properties,n):L(t)?Io(e,t.anyOf,n):he(t)?Io(e,t.items,n):rt(t)?Os(e,ht(t),n):n}function s$(e,t,n){return Os(e,n,[t])}var pp=m(()=>{$n();pt();Gt();Wt();De();le();$r();Ye();_e();X();Bt();As()});function WC(e){return Zr()}function BC(e){return u.Keys(e).reduce((t,n)=>({...t,[n]:Lr(e[n])}),{})}function Ms(e){return e.reduce((t,n)=>[...t,Lr(n)],[])}function Lr(e){return Ge(e)?WC(e.$ref):we(e)?Dt(Lr(e.items),Ei(e)):Ue(e)?hn(Ms(e.parameters),Lr(e.instanceType)):Ke(e)?xn(Ms(e.parameters),Lr(e.returnType)):te(e)?wt(Ms(e.allOf)):ue(e)?G(BC(e.properties)):rt(e)?Xi(ao(e),Lr(ht(e))):L(e)?J(Ms(e.anyOf)):he(e)?je(Ms(e.items)):e}function zC(e,t){return t in e?Lr(e[t]):Je()}function i$(e){return zC(e.$defs,e.$ref)}var a$=m(()=>{A();It();pt();Gt();Wt();De();le();Ye();Bt();_e();X();Qe()});function HC(e,t,n){let r=Nt(e,Ie([],[]),t),o=Ps({},Ie([],[]),n);return ke([...r,G(o)])}function VC(e,t){return u.Keys(e).filter(r=>t.includes(r)).reduce((r,o)=>{let s=e[o],a=bo(s)?HC(e,s.parameters[0],s.parameters[1]):s;return{...r,[o]:a}},{})}function m$(e,t,n){let r=s$(e,t,n),o=VC(e,r);return bn(o,t)}var lp=m(()=>{A();$t();le();pp();fo();N();N();N();V()});function u$(e,t){return t in e?Ge(e[t])?u$(e,e[t].$ref):e[t]:de()}function An(e,t){return u$(e,t)}var jr=m(()=>{Ve();Bt()});var dp=m(()=>{cp();up();pp();a$();lp();jr()});function c$(e){return et(e)?i$(e):Pi(e)?Je():e}function nt(e,t,n){let r=c$(t),o=c$(n);return oe(e,r,o)}var p$=m(()=>{$t();Qe();Ai();vt();dp()});var En=m(()=>{p$();be()});function ds(e,t){let n=[nt({},e,t),nt({},t,e)];return W.IsExtendsTrueLike(n[0])&&W.IsExtendsTrueLike(n[1])?ps:W.IsExtendsTrueLike(n[0])&&W.IsExtendsFalse(n[1])?ls:W.IsExtendsFalse(n[0])&&W.IsExtendsTrueLike(n[1])?zi:qa}var ps,qa,ls,zi,fs=m(()=>{En();ps=0,qa=1,ls=2,zi=3});function fp(e,t,n=[],r=t){return u.ShiftLeft(t,(o,s)=>{let a=ds(e,o);return u.IsEqual(a,ls)||u.IsEqual(a,ps)?r:u.IsEqual(a,qa)?fp(e,s,[...n,o],r):fp(e,s,n,r)},()=>[...n,e])}function JC(e,t,n){let r=Yt(e);return Ee(r)?[r]:Oe(r)?[r]:rn(r)?Ua(t,n):ue(r)?Ua(t,[...n,r]):Ua(t,fp(r,n))}function Ua(e,t=[]){return u.ShiftLeft(e,(n,r)=>JC(n,r,t),()=>t)}function Ac(e){let t=Ua(e);return io(t)}var Rc=m(()=>{A();It();Ve();le();Qe();fs();Vi();V()});function gp(e,t){return d.Update(Yt(e),{},t)}function l$(e,t,n,r){let o=$(e,t,n);return gp(o,r)}var Ka=m(()=>{E();N();V()});var vs=m(()=>{Rc();fs();Ec();Sc();V();Vi();Ka();vc()});function Cs(e,t=[]){return Jn(e)&&u.IsEqual(e.action,"Conditional")?Ge(e.parameters[0])?Cs(e.parameters[2],Cs(e.parameters[3],[...t,e.parameters[0].$ref])):Cs(e.parameters[2],Cs(e.parameters[3],t)):Jn(e)&&u.IsEqual(e.action,"Mapped")&&Jn(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 YC(e,t){return e.reduce((n,r)=>[...n,t.includes(r.name)],[])}function g$(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>u.ShiftLeft(t,(s,a)=>g$(o,a,[...n,[s,r]]),()=>n),()=>n)}function XC(e){return Pe(e)?st(e.pattern):tt(e)?gt(e.enum):e}function ZC(e){let t=XC(e);return L(t)?[...t.anyOf]:[t]}function QC(e,t){return e.reduce((n,r)=>[...n,[...r,t]],[])}function d$(e,t){return t.reduce((n,r)=>[...n,...QC(e,r)],[])}function f$(e){return e.reduce((t,n)=>u.IsEqual(n[0],!0)?d$(t,ZC(n[1])):d$(t,[n[1]]),[[]])}function h$(e,t,n){let r=Cs(n),o=YC(e,r),s=g$(t,o);return Jn(n)&&u.IsEqual(n.action,"Conditional")||Jn(n)&&u.IsEqual(n.action,"Mapped")?f$(s):[t]}var x$=m(()=>{A();X();ae();on();kt();Bt();V();V()});function e0(){return["(not-resolvable)",de()]}function t0(){return["(not-generic)",de()]}function n0(e,t,n){return[e,Yn(t,n)]}function r0(e,t,n){return t in e?y$(e,t,e[t],n):e0()}function y$(e,t,n,r){return Xr(n)?n0(t,n.parameters,n.expression):Ge(n)?r0(e,n.$ref,r):t0()}function b$(e,t,n){return y$(e,"(anonymous)",t,n)}var I$=m(()=>{Xo();Bt();Ve()});function o0(e,t,n){if(Me(t)||$o(t)||W.IsExtendsTrueLike(nt({},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 $$(e,t,n,r,o){let s=$(e,t,o);return o0(n,s,r),d.Assign(e,{[n]:s})}function s0(e,t,n,r,o){let s=$(e,t,n.extends),a=$(e,t,n.equals);return u.ShiftLeft(o,(c,p)=>hp($$(e,t,n.name,s,c),t,r,p),()=>hp($$(e,t,n.name,s,a),t,r,[]))}function hp(e,t,n,r){return u.ShiftLeft(n,(o,s)=>s0(e,t,o,s,r),()=>e)}function w$(e,t,n,r){return hp(e,t,n,r)}var k$=m(()=>{A();E();N();En();zt();lo()});function i0(){if(!u.IsLessThan(yp,nn.Get().maxInstantiationCount))throw Error("Type instantiation is excessively deep and possibly infinite")}function a0(){i0(),yp++,xp++}function m0(){xp--,u.IsEqual(xp,0)&&(yp=0)}function u0(e){return u.IsGreaterThan(e.callstack.length,0)?e.callstack[e.callstack.length-1]:""}function c0(e,t){return u.IsEqual(u0(e),t)}function p0(e,t,n,r,o,s){a0();try{let a=w$(e,t,r,s),c=$(a,Ie([...t.callstack,n.$ref],t.visited),o);return $(a,Ie([],[]),c)}finally{m0()}}function l0(e,t,n,r,o,s){return s.reduce((a,c)=>{let p=p0(e,t,n,r,o,c);return[...a,p]},[])}function d0(e,t,n,r,o,s){let a=h$(r,s,o),c=l0(e,t,n,r,o,a);return u.IsEqual(c.length,1)?c[0]:Et(c)}function Ga(e,t,n,r){let o=Nt(e,t,r),s=b$(e,n,r),a=s[0],c=s[1];return Xr(c)?c0(t,a)?bs(Nn(a),o):d0(e,t,Nn(a),c.parameters,c.expression,o):bs(n,o)}var xp,yp,bp=m(()=>{yr();A();lo();Bt();Xo();vs();N();N();N();x$();I$();k$();xp=0,yp=0});function bs(e,t){return d.Create({"~kind":"Call"},{type:"call",target:e,arguments:t},{})}function T$(e,t){return Ga({},Ie([],[]),e,t)}function $o(e){return C(e,"Call")}var lo=m(()=>{E();H();bp();N()});function f0(e){return d.Discard(e,["~immutable"])}function E$(e,t){return d.Update(f0(e),{},t)}function v$(e,t,n,r){let o=$(e,t,n);return E$(o,r)}var Ip=m(()=>{E();N()});function S$(e,t){return e(t)}var P$=m(()=>{});function A$(e,t){return u.IsString(t)?ne(S$(e,t)):ne(t)}var R$=m(()=>{A();Ce();P$()});function O$(e,t){let n=st(t);return Un(e,n)}var M$=m(()=>{Wa();vs()});function C$(e,t){let n=t.map(r=>Un(e,r));return J(n)}var L$=m(()=>{X();Wa()});function Un(e,t){return ce(t)?A$(e,t.const):Pe(t)?O$(e,t.pattern):L(t)?C$(e,t.anyOf):t}var Wa=m(()=>{Ce();kt();X();R$();M$();L$()});function sa(e,t={}){return F("Capitalize",[e],t)}function j$(e,t={}){return $p(e,t)}var Ba=m(()=>{ae();Rn()});function ia(e,t={}){return F("Lowercase",[e],t)}function F$(e,t={}){return wp(e,t)}var za=m(()=>{ae();Rn()});function aa(e,t={}){return F("Uncapitalize",[e],t)}function D$(e,t={}){return kp(e,t)}var Ha=m(()=>{ae();Rn()});function ma(e,t={}){return F("Uppercase",[e],t)}function N$(e,t={}){return Tp(e,t)}var Va=m(()=>{ae();Rn()});function $p(e,t){return z([e])?d.Update(Un(g0,e),{},t):sa(e,t)}function wp(e,t){return z([e])?d.Update(Un(h0,e),{},t):ia(e,t)}function kp(e,t){return z([e])?d.Update(Un(x0,e),{},t):aa(e,t)}function Tp(e,t){return z([e])?d.Update(Un(y0,e),{},t):ma(e,t)}function _$(e,t,n,r){let o=$(e,t,n);return $p(o,r)}function q$(e,t,n,r){let o=$(e,t,n);return wp(o,r)}function U$(e,t,n,r){let o=$(e,t,n);return kp(o,r)}function K$(e,t,n,r){let o=$(e,t,n);return Tp(o,r)}var g0,h0,x0,y0,Rn=m(()=>{E();Wa();N();Ba();za();Ha();Va();g0=e=>e[0].toUpperCase()+e.slice(1),h0=e=>e.toLowerCase(),x0=e=>e[0].toLowerCase()+e.slice(1),y0=e=>e.toUpperCase()});function ua(e,t,n,r,o={}){return F("Conditional",[e,t,n,r],o)}function G$(e,t,n,r,o={}){return Ep({},Ie([],[]),e,t,n,r,o)}var Ja=m(()=>{ae();vp();N()});function b0(e,t,n,r,o,s){let a=nt(e,n,r);return W.IsExtendsUnion(a)?J([$(a.inferred,t,o),$(e,t,s)]):W.IsExtendsTrue(a)?$(a.inferred,t,o):$(e,t,s)}function Ep(e,t,n,r,o,s,a){return z([n,r])?d.Update(b0(e,t,n,r,o,s),{},a):ua(n,r,o,s,a)}function W$(e,t,n,r,o,s,a){let c=$(e,t,n),p=$(e,t,r);return Ep(e,t,c,p,o,s,a)}var vp=m(()=>{E();X();En();N();Ja()});var Sp=m(()=>{vp()});function ca(e,t={}){return F("ConstructorParameters",[e],t)}function B$(e,t={}){return Pp(e,t)}var Ya=m(()=>{ae();Xa()});function I0(e){let t=Ue(e)?e.parameters:[],n=mr({},Ie([],[]),t);return je(n)}function Pp(e,t){return z([e])?d.Update(I0(e),{},t):ca(e,t)}function z$(e,t,n,r){let o=$(e,t,n);return Pp(o,r)}var Xa=m(()=>{E();Gt();_e();Ya();N();N();N()});function pa(e,t,n={}){return F("Exclude",[e,t],n)}function H$(e,t,n={}){return Ls(e,t,n)}var Za=m(()=>{ae();js()});function Ls(e,t,n){return z([e,t])?d.Update(Hi(e,t),{},n):pa(e,t,n)}function V$(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Ls(s,a,o)}var js=m(()=>{E();N();Za();Pc()});function la(e,t,n={}){return F("Extract",[e,t],n)}function J$(e,t,n={}){return Ap(e,t,n)}var Qa=m(()=>{ae();em()});function $0(e,t){let n=nt({},e,t);return W.IsExtendsTrueLike(n)?[e]:[]}function Y$(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Y$(o,t,[...n,...$0(r,t)]),()=>n)}function X$(e,t){let n=Yt(e),r=L(n)?n.anyOf:[n],o=Y$(r,t);return Et(o)}var Z$=m(()=>{A();X();En();V();V()});function Ap(e,t,n){return z([e,t])?d.Update(X$(e,t),{},n):la(e,t,n)}function Q$(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Ap(s,a,o)}var em=m(()=>{E();N();Qa();Z$()});function w0(e){return e.reduce((t,n)=>ji(n)?[...t,ne(n)]:t,[])}function wo(e){let t=w0(e);return J(t)}var Fs=m(()=>{Ce();X()});function Is(e,t,n={}){return F("Index",[e,t],n)}function ew(e,t,n={}){let r=u.IsArray(t)?wo(t):t;return Op(e,r,n)}var Rp=m(()=>{A();ae();Fs();tm()});function tw(e,t){let n=An(e,t);return _t(n)}var nw=m(()=>{Fr();jr()});function rw(e,t,n){let r=an(e,t,n);return _t(r)}var ow=m(()=>{Fr();V()});function k0(e,t){let n=u.Keys(e).filter(I=>!u.HasPropertyKey(t,I)),r=u.Keys(t).filter(I=>!u.HasPropertyKey(e,I)),o=u.Keys(e).filter(I=>u.HasPropertyKey(t,I)),s=n.reduce((I,w)=>({...I,[w]:e[w]}),{}),a=r.reduce((I,w)=>({...I,[w]:t[w]}),{}),c=o.reduce((I,w)=>({...I,[w]:ke([e[w],t[w]])}),{}),p=d.Assign(s,a);return d.Assign(p,c)}function sw(e){return e.reduce((t,n)=>k0(t,_t(n)),{})}var iw=m(()=>{E();A();Fr();V()});var aw=m(()=>{});function mw(e){let t=uh(je(e));return _t(t)}var uw=m(()=>{_e();kc();Fr()});function T0(e,t){return u.Keys(e).filter(o=>o in t).reduce((o,s)=>({...o,[s]:Et([e[s],t[s]])}),{})}function cw(e,t){return u.ShiftLeft(e,(n,r)=>cw(r,T0(t,_t(n))),()=>t)}function pw(e){return u.ShiftLeft(e,(t,n)=>cw(n,_t(t)),()=>Ne())}var lw=m(()=>{A();$n();V();Fr()});function _t(e){return et(e)?tw(e.$defs,e.$ref):Se(e)?rw(e.if,e.then,e.else):te(e)?sw(e.allOf):L(e)?pw(e.anyOf):he(e)?mw(e.items):ue(e)?e.properties:{}}var Fr=m(()=>{$t();Pt();De();le();_e();X();nw();ow();iw();aw();uw();lw()});function ko(e){let t=_t(e);return G(t)}var dw=m(()=>{le();Fr()});var Ds=m(()=>{dw()});function To(e){let t=`${e}`;return E0.test(t)?parseInt(t):e}var E0,Ns=m(()=>{E0=new RegExp("^(?:0|[1-9][0-9]*)$")});function v0(e){return ne(To(e))}function fw(e){return e.map(t=>gw(t))}function gw(e){return te(e)?wt(fw(e.allOf)):L(e)?J(fw(e.anyOf)):ce(e)?v0(e.const):e}function hw(e,t){let n=gw(t),r=nt({},n,At());return W.IsExtendsTrueLike(r)?e:ce(t)&&u.IsEqual(t.const,"length")?At():de()}var xw=m(()=>{A();De();X();Ce();dt();Ve();En();Ns()});function yw(e,t){let n=An(e,t);return Ot(n)}var bw=m(()=>{ur();jr()});function Iw(e,t,n){let r=an(e,t,n);return Ot(r)}var $w=m(()=>{ur();V()});function ww(e){let t=gt(e);return Ot(t)}var kw=m(()=>{ur();V()});function Tw(e){let t=ke(e);return Ot(t)}var Ew=m(()=>{V();ur()});function vw(e){return[`${e}`]}var Sw=m(()=>{});function Pw(e){let t=st(e);return Ot(t)}var Aw=m(()=>{ur();V()});function Rw(e){return e.reduce((t,n)=>[...t,...Ot(n)],[])}var Ow=m(()=>{ur()});function Ot(e){return et(e)?yw(e.$defs,e.$ref):Se(e)?Iw(e.if,e.then,e.else):tt(e)?ww(e.enum):te(e)?Tw(e.allOf):ce(e)?vw(e.const):Pe(e)?Pw(e.pattern):L(e)?Rw(e.anyOf):[]}var ur=m(()=>{$t();Pt();on();De();Ce();kt();X();bw();$w();kw();Ew();Sw();Aw();Ow()});function Eo(e){return Ot(e)}var nm=m(()=>{ur()});function _s(e,t){return t.map(n=>qs(e,n))}function qs(e,t){return we(t)?Dt(qs(e,t.items)):Ue(t)?hn(_s(e,t.parameters),qs(e,t.instanceType)):Ke(t)?xn(_s(e,t.parameters),qs(e,t.returnType)):he(t)?je(_s(e,t.items)):L(t)?J(_s(e,t.anyOf)):te(t)?wt(_s(e,t.allOf)):ea(t)?G(e):t}function Mw(e,t){return qs(e,t)}var Cw=m(()=>{pt();Gt();Wt();De();le();_e();ta();X()});function S0(e,t){let n=t in e?e[t]:de();return Mw(e,n)}function Lw(e,t){return t.reduce((n,r)=>[...n,S0(e,r)],[])}function P0(e,t){let n=Eo(t),r=Lw(e,n);return Et(r)}function R0(e){return e.filter(n=>A0.test(n))}function O0(e){let t=vi(e),n=R0(t),r=Lw(e,n);return Et(r)}function jw(e,t){return Le(t)?O0(e):P0(e,t)}var A0,Fw=m(()=>{dt();Ve();$r();V();nm();Ye();Cw();A0=new RegExp(rr)});function M0(e){return ne(To(e))}function Dw(e){return e.map(t=>Mp(t))}function Mp(e){return te(e)?wt(Dw(e.allOf)):L(e)?J(Dw(e.anyOf)):ce(e)?M0(e.const):e}var Nw=m(()=>{X();De();Ce();Ns()});function C0(e,t){return e.reduceRight((n,r,o)=>{let s=nt({},ne(o),t);return W.IsExtendsTrueLike(s)?[r,...n]:n},[])}function L0(e,t){let n=Mp(t),r=C0(e,n);return tr(r)}function j0(e){return tr(e)}function _w(e,t){return ce(t)&&u.IsEqual(t.const,"length")?ne(e.length):Le(t)||lt(t)?j0(e):L0(e,t)}var qw=m(()=>{A();Ce();dt();Tn();V();En();Nw()});function Uw(e,t){return we(e)?hw(e.items,t):ue(e)?jw(e.properties,t):he(e)?_w(e.items,t):de()}var Kw=m(()=>{pt();Ve();le();_e();xw();Fw();qw()});function F0(e){return et(e)||Se(e)||te(e)||L(e)?ko(e):e}function Op(e,t,n){return z([e,t])?d.Update(Uw(F0(e),t),{},n):Is(e,t,n)}function Gw(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Op(s,a,o)}var tm=m(()=>{E();$t();Pt();De();X();N();Rp();Ds();Kw()});function da(e,t={}){return F("InstanceType",[e],t)}function Ww(e,t={}){return Cp(e,t)}var rm=m(()=>{ae();om()});function D0(e){return Ue(e)?e.instanceType:de()}function Cp(e,t){return z([e])?d.Update(D0(e),{},t):da(e,t)}function Bw(e,t,n,r={}){let o=$(e,t,n);return Cp(o,r)}var om=m(()=>{E();Gt();Ve();rm();N()});function $s(e,t={}){return F("KeyOf",[e],t)}function zw(e,t={}){return Lp(e,t)}var sm=m(()=>{ae();im()});function Hw(){return J([At(),Vt(),oo()])}var Vw=m(()=>{dt();Jt();Pr();X()});function Jw(e){return At()}var Yw=m(()=>{dt()});function N0(e){return e.reduce((n,r)=>ji(r)?[...n,ne(To(r))]:Ne(),[])}function Xw(e){let t=u.Keys(e),n=N0(t);return tr(n)}var Zw=m(()=>{$n();A();Ce();Ns();V()});function Qw(e){return ao(e)}var ek=m(()=>{Ye()});function tk(e){let t=e.map((n,r)=>ne(r));return tr(t)}var nk=m(()=>{Ce();V()});function rk(e){return Ee(e)?Hw():we(e)?Jw(e.items):ue(e)?Xw(e.properties):rt(e)?Qw(e):he(e)?tk(e.items):de()}var ok=m(()=>{It();pt();Ve();le();Ye();_e();Vw();Yw();Zw();ek();nk()});function _0(e){return et(e)||Se(e)||te(e)||L(e)?ko(e):e}function Lp(e,t){return z([e])?d.Update(rk(_0(e)),{},t):$s(e,t)}function sk(e,t,n,r){let o=$(e,t,n);return Lp(o,r)}var im=m(()=>{E();$t();Pt();De();X();sm();N();Ds();ok()});function xs(e,t,n,r,o={}){return F("Mapped",[e,t,n,r],o)}function ik(e,t,n,r,o={}){return jp({},Ie([],[]),e,t,n,r,o)}var am=m(()=>{ae();mm();N()});function q0(e){let t=st(e);return um(t)}function U0(e){return e.reduce((t,n)=>[...t,...um(n)],[])}function K0(e){let t=gt(e);return um(t)}function G0(e){return u.IsNumber(e)?[ne(`${e}`)]:[ne(e)]}function um(e){return tt(e)?K0(e.enum):ce(e)?G0(e.const):Pe(e)?q0(e.pattern):L(e)?U0(e.anyOf):[e]}function ak(e){return um(e)}var mk=m(()=>{A();Ce();on();kt();X();V();V()});function W0(e){return Pe(e)?st(e.pattern):e}function B0(e,t,n,r,o,s){let a=d.Assign(e,{[n.name]:r}),c=$(a,t,o),p=W0(c),f=$(a,t,s);return Ug(p)||Kg(p)?{[p.const]:f}:{}}function z0(e,t,n,r,o,s){return r.reduce((a,c)=>[...a,B0(e,t,n,c,o,s)],[])}function H0(e){return e.reduce((t,n)=>[...t,G(n)],[])}function uk(e,t,n,r,o,s){let a=ak(r),c=z0(e,t,n,a,o,s),p=H0(c);return ke(p)}var ck=m(()=>{E();Ce();le();kt();N();V();V();mk()});function jp(e,t,n,r,o,s,a){return z([r])?d.Update(uk(e,t,n,r,o,s),{},a):xs(n,r,o,s,a)}function pk(e,t,n,r,o,s,a){let c=$(e,t,r);return jp(e,t,n,c,o,s,a)}var mm=m(()=>{E();am();N();ck()});function V0(e,t,n){let r=d.Assign(e,t);return u.Keys(t).filter(s=>n.includes(s)).reduce((s,a)=>({...s,[a]:m$(r,a,t[a])}),{})}function J0(e,t,n){let r=d.Assign(e,t);return u.Keys(t).filter(s=>!n.includes(s)).reduce((s,a)=>({...s,[a]:$(r,Ie([],[]),t[a])}),{})}function Y0(e,t,n){let r=r$(t),o=V0(e,t,r),s=J0(e,t,r),a={...o,...s};return d.Update(a,{},n)}function cm(e,t,n,r){return Y0(e,n,r)}var pm=m(()=>{A();E();N();cp();lp();N()});function fa(e,t={}){return F("NonNullable",[e],t)}function lk(e,t={}){return Fp(e,t)}var lm=m(()=>{ae();dm()});function X0(e){let t=J([to(),uo()]);return Ls(e,t,{})}function Fp(e,t){return z([e])?d.Update(X0(e),{},t):fa(e,t)}function dk(e,t,n,r){let o=$(e,t,n);return Fp(o,r)}var dm=m(()=>{E();ro();po();X();js();lm();N()});function ga(e,t,n={}){return F("Omit",[e,t],n)}function fk(e,t,n={}){let r=u.IsArray(t)?wo(t):t;return Dp(e,r,n)}var fm=m(()=>{A();ae();Fs();gm()});function hm(e){let t=ko(e);return ue(t)?t.properties:Ne()}var Np=m(()=>{$n();le();Ds()});function Z0(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?r:{...r,[o]:e[o]},{})}function gk(e,t){let n=hm(e),r=Eo(t),o=Z0(n,r);return G(o)}var hk=m(()=>{A();le();nm();Np()});function Dp(e,t,n){return z([e,t])?d.Update(gk(e,t),{},n):ga(e,t,n)}function xk(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Dp(s,a,o)}var gm=m(()=>{E();fm();N();hk()});function ha(e,t={}){return F("Parameters",[e],t)}function yk(e,t={}){return _p(e,t)}var xm=m(()=>{ae();ym()});function Q0(e){let t=Ke(e)?e.parameters:[],n=mr({},Ie([],[]),t);return je(n)}function _p(e,t){return z([e])?d.Update(Q0(e),{},t):ha(e,t)}function bk(e,t,n,r){let o=$(e,t,n);return _p(o,r)}var ym=m(()=>{E();Wt();_e();xm();N();N();N()});function xa(e,t={}){return F("Partial",[e],t)}function Ik(e,t={}){return qp(e,t)}var bm=m(()=>{ae();Im()});function $k(e,t){let n=An(e,t),r=On(n);return bn(d.Assign(e,{[t]:r}),t)}var wk=m(()=>{E();$t();vo();jr()});function kk(e,t,n){let r=an(e,t,n);return On(r)}var Tk=m(()=>{vo();V()});function Ek(e){let t=ke(e);return On(t)}var vk=m(()=>{vo();V()});function Sk(e){let t=e.map(n=>On(n));return J(t)}var Pk=m(()=>{X();vo()});function Ak(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:Ir(e[o])}),{});return G(t)}var Rk=m(()=>{A();le();Zo()});function On(e){return et(e)?$k(e.$defs,e.$ref):Se(e)?kk(e.if,e.then,e.else):te(e)?Ek(e.allOf):L(e)?Sk(e.anyOf):ue(e)?Ak(e.properties):G({})}var vo=m(()=>{$t();Pt();De();le();X();wk();Tk();vk();Pk();Rk()});function qp(e,t){return z([e])?d.Update(On(e),{},t):xa(e,t)}function Ok(e,t,n,r){let o=$(e,t,n);return qp(o,r)}var Im=m(()=>{E();bm();vo();N()});function ya(e,t,n={}){return F("Pick",[e,t],n)}function Mk(e,t,n={}){let r=u.IsArray(t)?wo(t):t;return Up(e,r,n)}var $m=m(()=>{A();ae();Fs();wm()});function eL(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?d.Assign(r,{[o]:e[o]}):r,{})}function Ck(e,t){let n=hm(e),r=Eo(t),o=eL(n,r);return G(o)}var Lk=m(()=>{E();A();le();nm();Np()});function Up(e,t,n){return z([e,t])?d.Update(Ck(e,t),{},n):ya(e,t,n)}function jk(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Up(s,a,o)}var wm=m(()=>{E();$m();N();Lk()});function ba(e,t={}){return F("ReadonlyObject",[e],t)}function Kp(e,t={}){return Gp(e,t)}var Fk,km=m(()=>{ae();Tm();Fk=Kp});function Dk(e){return eo(Dt(e))}var Nk=m(()=>{pt();os()});function _k(e,t){let n=An(e,t),r=Mn(n);return bn(d.Assign(e,{[t]:r}),t)}var qk=m(()=>{E();$t();So();jr()});function Uk(e,t,n){let r=an(e,t,n);return Mn(r)}var Kk=m(()=>{So();V()});function Gk(e){let t=ke(e);return Mn(t)}var Wk=m(()=>{So();V()});function Bk(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:Tr(e[o])}),{});return G(t)}var zk=m(()=>{A();le();ss()});function Hk(e){return eo(je(e))}var Vk=m(()=>{_e();os()});function Jk(e){let t=e.map(n=>Mn(n));return J(t)}var Yk=m(()=>{X();So()});function Mn(e){return we(e)?Dk(e.items):et(e)?_k(e.$defs,e.$ref):Se(e)?Uk(e.if,e.then,e.else):te(e)?Gk(e.allOf):ue(e)?Bk(e.properties):he(e)?Hk(e.items):L(e)?Jk(e.anyOf):e}var So=m(()=>{pt();$t();Pt();De();le();_e();X();Nk();qk();Kk();Wk();zk();Vk();Yk()});function Gp(e,t){return z([e])?d.Update(Mn(e),{},t):ba(e)}function Xk(e,t,n,r){let o=$(e,t,n);return Gp(o,r)}var Tm=m(()=>{E();km();So();N()});function Zk(e,t,n,r){return t.visited.includes(r)?n:r in e?$(e,Ie(t.callstack,[...t.visited,r]),e[r]):n}var Wp=m(()=>{N();N()});function Qk(e,t){let n=An(e,t),r=Cn(n);return bn(d.Assign(e,{[t]:r}),t)}var eT=m(()=>{E();$t();Po();jr()});function tT(e,t,n){let r=an(e,t,n);return Cn(r)}var nT=m(()=>{Po();V()});function rT(e){let t=ke(e);return Cn(t)}var oT=m(()=>{Po();V()});function sT(e){let t=e.map(n=>Cn(n));return J(t)}var iT=m(()=>{X();Po()});function aT(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:Wi(e[o])}),{});return G(t)}var mT=m(()=>{A();le();Bi()});function Cn(e){return et(e)?Qk(e.$defs,e.$ref):Se(e)?tT(e.if,e.then,e.else):te(e)?rT(e.allOf):L(e)?sT(e.anyOf):ue(e)?aT(e.properties):G({})}var Po=m(()=>{$t();Pt();De();le();X();eT();nT();oT();iT();mT()});function Ia(e,t={}){return F("Required",[e],t)}function uT(e,t={}){return Bp(e,t)}var Em=m(()=>{ae();vm()});function Bp(e,t){return z([e])?d.Update(Cn(e),{},t):Ia(e,t)}function cT(e,t,n,r){let o=$(e,t,n);return Bp(o,r)}var vm=m(()=>{E();Po();Em();N()});function $a(e,t={}){return F("ReturnType",[e],t)}function pT(e,t={}){return zp(e,t)}var Sm=m(()=>{ae();Pm()});function tL(e){return Ke(e)?e.returnType:de()}function zp(e,t){return z([e])?d.Update(tL(e),{},t):$a(e,t)}function lT(e,t,n,r={}){let o=$(e,t,n);return zp(o,r)}var Pm=m(()=>{E();Wt();Ve();Sm();N()});function wa(e,t){return F("With",[e,t],{})}function dT(e,t){return Hp(e,t)}var Am=m(()=>{ae();Rm()});function Hp(e,t){return z([e])?d.Update(e,{},t):wa(e,t)}function fT(e,t,n,r){let o=$(e,t,n);return Hp(o,r)}var Rm=m(()=>{E();N();Am()});function nL(e){return or(e)?he(e.items)?Vp(e.items.items):Me(e.items)?[e]:Ge(e.items)?[e]:[de()]:[e]}function Vp(e){return e.reduce((n,r)=>[...n,...nL(r)],[])}var gT=m(()=>{zt();Ve();mo();Bt();_e()});var hT=m(()=>{gT()});function Ie(e,t){return{callstack:e,visited:t}}function z(e){return u.ShiftLeft(e,(t,n)=>Ge(t)?!1:z(n),()=>!0)}function Ps(e,t,n){return u.Keys(n).reduce((r,o)=>({...r,[o]:$(e,t,n[o])}),{})}function mr(e,t,n){let r=Nt(e,t,n);return Vp(r)}function Nt(e,t,n){return n.map(r=>$(e,t,r))}function rL(e,t){let n=ot(e)?Yo(t,{}):t,r=Er(e)?Jo(n,{}):n;return kr(e)?Us(r,{}):r}function oL(e,t,n,r,o){return u.IsEqual(n,"AddImmutable")?xT(e,t,r[0],o):u.IsEqual(n,"RemoveImmutable")?v$(e,t,r[0],o):u.IsEqual(n,"AddReadonly")?Tf(e,t,r[0],o):u.IsEqual(n,"RemoveReadonly")?oh(e,t,r[0],o):u.IsEqual(n,"AddOptional")?Ef(e,t,r[0],o):u.IsEqual(n,"RemoveOptional")?ah(e,t,r[0],o):u.IsEqual(n,"Capitalize")?_$(e,t,r[0],o):u.IsEqual(n,"Conditional")?W$(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"ConstructorParameters")?z$(e,t,r[0],o):u.IsEqual(n,"Evaluate")?l$(e,t,r[0],o):u.IsEqual(n,"Exclude")?V$(e,t,r[0],r[1],o):u.IsEqual(n,"Extract")?Q$(e,t,r[0],r[1],o):u.IsEqual(n,"Index")?Gw(e,t,r[0],r[1],o):u.IsEqual(n,"InstanceType")?Bw(e,t,r[0],o):u.IsEqual(n,"Interface")?QI(e,t,r[0],r[1],o):u.IsEqual(n,"KeyOf")?sk(e,t,r[0],o):u.IsEqual(n,"Lowercase")?q$(e,t,r[0],o):u.IsEqual(n,"Mapped")?pk(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"Module")?cm(e,t,r[0],o):u.IsEqual(n,"NonNullable")?dk(e,t,r[0],o):u.IsEqual(n,"Pick")?jk(e,t,r[0],r[1],o):u.IsEqual(n,"Parameters")?bk(e,t,r[0],o):u.IsEqual(n,"Partial")?Ok(e,t,r[0],o):u.IsEqual(n,"Omit")?xk(e,t,r[0],r[1],o):u.IsEqual(n,"ReadonlyObject")?Xk(e,t,r[0],o):u.IsEqual(n,"Record")?Mh(e,t,r[0],r[1],o):u.IsEqual(n,"Required")?cT(e,t,r[0],o):u.IsEqual(n,"ReturnType")?lT(e,t,r[0],o):u.IsEqual(n,"TemplateLiteral")?Hb(e,t,r[0],o):u.IsEqual(n,"Uncapitalize")?U$(e,t,r[0],o):u.IsEqual(n,"Uppercase")?K$(e,t,r[0],o):u.IsEqual(n,"With")?fT(e,t,r[0],r[1]):F(n,r,o)}function sL(e,t,n){let r=Ge(n)?Zk(e,t,n,n.$ref):we(n)?Dt($(e,t,n.items),Ei(n)):$o(n)?Ga(e,t,n.target,n.arguments):Ue(n)?hn(Nt(e,t,n.parameters),$(e,t,n.instanceType),vf(n)):Ke(n)?xn(Nt(e,t,n.parameters),$(e,t,n.returnType),Sf(n)):Se(n)?wr($(e,t,n.if),$(e,t,n.then),$(e,t,n.else),Lf(n)):te(n)?wt(Nt(e,t,n.allOf),_f(n)):ue(n)?G(Ps(e,t,n.properties),Of(n)):rt(n)?Ch(Xt(n),$(e,t,ht(n))):or(n)?Rr($(e,t,n.items)):he(n)?je(mr(e,t,n.items),rh(n)):L(n)?J(Nt(e,t,n.anyOf),Wg(n)):n;return rL(n,r)}function $(e,t,n){return Jn(n)?oL(e,t,n.action,n.parameters,n.options):sL(e,t,n)}function Jp(e,t){return $(e,Ie([],[]),t)}var N=m(()=>{A();Om();ki();Ti();pt();Gt();ae();Wt();lo();Pt();De();le();Ye();_e();X();Bt();mo();Om();Ip();ki();yc();Ti();$c();Xn();rs();is();bp();Rn();Sp();Xa();Ka();js();em();tm();om();_a();im();Rn();mm();pm();dm();gm();ym();Im();wm();Tm();Ji();Wp();vm();Pm();La();Rn();Rn();Rm();hT()});function iL(e){return d.Update(e,{"~immutable":!0},{})}function Us(e,t){return d.Update(iL(e),{},t)}function xT(e,t,n,r){let o=$(e,t,n);return Us(o,r)}var Om=m(()=>{E();N()});function jy(e,t={}){return F("AddImmutable",[e],t)}function eo(e,t={}){return Us(e,t)}var os=m(()=>{ae();Om()});var yT=m(()=>{ae();Ip()});function Fy(e,t={}){return F("Evaluate",[e],t)}function bT(e,t={}){return gp(e,t)}var Yp=m(()=>{ae();Ka()});function Dy(e,t={}){return F("Module",[e],t)}function IT(e,t={}){return cm({},Ie([],[]),e,t)}var Xp=m(()=>{ae();N();pm()});var fo=m(()=>{os();ss();Zo();yT();bc();Bi();Ba();Ja();Ya();Yp();Za();Qa();Rp();rm();As();sm();za();am();Xp();lm();fm();xm();bm();$m();km();Em();Sm();Ha();Va();Am()});var $T=m(()=>{Xa()});var wT=m(()=>{Ri()});var kT=m(()=>{js()});var TT=m(()=>{em()});var ET=m(()=>{});var vT=m(()=>{Fs();Ns();ET()});var ST=m(()=>{tm()});var PT=m(()=>{om()});var AT=m(()=>{_a()});var RT=m(()=>{Rn()});var OT=m(()=>{im()});var MT=m(()=>{mm()});var CT=m(()=>{pm()});var LT=m(()=>{dm()});var jT=m(()=>{gm()});var FT=m(()=>{ym()});var DT=m(()=>{cs();Xc()});var NT=m(()=>{Im()});var _T=m(()=>{wm()});var qT=m(()=>{A();fs()});var UT=m(()=>{qT()});var KT=m(()=>{Tm()});var GT=m(()=>{Ji()});var WT=m(()=>{Wp()});var BT=m(()=>{vm()});var zT=m(()=>{Pm()});var HT=m(()=>{});var VT=m(()=>{A();cs()});var JT=m(()=>{Ki();Gi();Zc();HT();qi();VT()});var YT=m(()=>{Rm()});var XT=m(()=>{N();Sp();$T();dp();wT();vs();kT();TT();vT();ST();PT();AT();RT();OT();MT();CT();LT();Ds();jT();FT();DT();NT();_T();UT();KT();GT();WT();BT();zT();JT();YT()});function ZT(...e){let[t,n,r]=In.Match(e,{2:(a,c)=>u.IsString(a)?[{},a,c]:[a,c,{}],3:(a,c,p)=>[a,c,p],1:a=>[{},a,{}]}),o=Kb(n),s=u.IsArray(o)&&u.IsEqual(o.length,2)?$(t,Ie([],[]),o[0]):de();return d.Update(s,{},r)}var QT=m(()=>{Qr();E();A();ra();N();N();Ni()});var Zp=m(()=>{QT()});var Y={};Ft(Y,{Any:()=>Zr,Array:()=>Dt,BigInt:()=>as,Boolean:()=>Ci,Call:()=>T$,Capitalize:()=>j$,Codec:()=>Mi,Conditional:()=>G$,Constructor:()=>hn,ConstructorParameters:()=>B$,Cyclic:()=>bn,Decode:()=>Lg,DecodeBuilder:()=>ns,Dependent:()=>wr,Encode:()=>jg,EncodeBuilder:()=>ts,Enum:()=>Nf,Evaluate:()=>bT,Exclude:()=>H$,Extends:()=>nt,ExtendsResult:()=>W,Extract:()=>J$,Function:()=>xn,Generic:()=>Yn,Identifier:()=>ms,Immutable:()=>Fg,Index:()=>ew,Infer:()=>Qo,InstanceType:()=>Ww,Instantiate:()=>Jp,Integer:()=>Sr,Interface:()=>e$,Intersect:()=>wt,IsAny:()=>Ee,IsArray:()=>we,IsBigInt:()=>kn,IsBoolean:()=>Ht,IsCall:()=>$o,IsCodec:()=>Oi,IsConstructor:()=>Ue,IsCyclic:()=>et,IsDependent:()=>Se,IsEnum:()=>tt,IsEnumValue:()=>Df,IsFunction:()=>Ke,IsGeneric:()=>Xr,IsIdentifier:()=>qg,IsImmutable:()=>kr,IsInfer:()=>Me,IsInteger:()=>lt,IsIntersect:()=>te,IsKind:()=>C,IsLiteral:()=>ce,IsNever:()=>rn,IsNull:()=>no,IsNumber:()=>Le,IsObject:()=>ue,IsOptional:()=>ot,IsParameter:()=>Gg,IsReadonly:()=>Er,IsRecord:()=>rt,IsRef:()=>Ge,IsRefine:()=>pc,IsRest:()=>or,IsSchema:()=>Fe,IsString:()=>ft,IsSymbol:()=>Qn,IsTemplateLiteral:()=>Pe,IsThis:()=>ea,IsTuple:()=>he,IsUndefined:()=>co,IsUnion:()=>L,IsUnknown:()=>Oe,IsUnsafe:()=>Pi,IsVoid:()=>vn,KeyOf:()=>zw,Literal:()=>ne,Lowercase:()=>F$,Mapped:()=>ik,Module:()=>IT,Never:()=>de,NonNullable:()=>lk,Null:()=>to,Number:()=>At,Object:()=>G,Omit:()=>fk,Optional:()=>Af,Parameter:()=>Ar,Parameters:()=>yk,Partial:()=>Ik,Pick:()=>Mk,Readonly:()=>Dg,ReadonlyObject:()=>Kp,ReadonlyType:()=>Fk,Record:()=>Xi,RecordKey:()=>ao,RecordPattern:()=>Xt,RecordValue:()=>ht,Ref:()=>Nn,Refine:()=>Ng,Required:()=>uT,Rest:()=>Rr,ReturnType:()=>pT,Script:()=>ZT,String:()=>Vt,Symbol:()=>oo,TemplateLiteral:()=>Jb,This:()=>Qi,Tuple:()=>je,Uncapitalize:()=>D$,Undefined:()=>uo,Union:()=>J,Unknown:()=>Je,Unsafe:()=>Mf,Uppercase:()=>N$,Void:()=>na,With:()=>dT});var Qp=m(()=>{N();En();Zp();Ba();Ja();Ya();Yp();Za();Qa();fo();rm();As();sm();za();am();Xp();lm();fm();xm();bm();$m();km();Em();Sm();Ha();Va();Am();cc();rs();Xn();is();lc();It();pt();vr();Zn();lo();Gt();$t();on();Wt();Xo();dc();Pt();zt();Tn();De();Ce();Ve();ro();dt();le();gc();Ye();Bt();mo();H();Jt();Pr();kt();ta();_e();po();X();Qe();Ai();Or()});var Dr=m(()=>{fo();XT();En();Zp();ra();Qp();Qp()});import{StringEnum as aL}from"@earendil-works/pi-ai";import{defineTool as mL}from"@earendil-works/pi-coding-agent";function eE(e){if(e.length===0)return"Todo list is empty.";let t=e.filter(o=>o.status==="completed").length,n=e.map(o=>`${uL[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(`
|
|
18
|
-
`)}function pL(e,t,n,r){let o=e.map(s=>({...s}));switch(t){case"init":return!n||n.length===0?{todos:o,error:"init needs a non-empty items array"}:{todos:n.map(s=>({content:s,status:"pending"}))};case"view":return{todos:o};case"start":case"done":case"drop":{if(!r)return{todos:o,error:`${t} needs task`};let s=o.find(a=>a.content===r);if(!s)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");s.status="in_progress"}else s.status=t==="done"?"completed":"dropped";return{todos:o}}default:return{todos:o,error:`unknown op ${JSON.stringify(t)}`}}}function lL(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 uL,cL,
|
|
19
|
-
${
|
|
20
|
-
`)}function gL(e,t,n){if(e==="list")return
|
|
21
|
-
`)};if(!t)return{text:"Error: key is required",error:"key required"};if(t.length>
|
|
22
|
-
${e.text}`}function
|
|
23
|
-
`)}function
|
|
24
|
-
`)}function
|
|
25
|
-
${p}`:p}],details:{op:t.op,goal:a},...c?{isError:!0}:{}}}})});import{existsSync as ol,mkdirSync as
|
|
26
|
-
`)}function
|
|
27
|
-
|
|
28
|
-
${r}`;return{messages:t.messages.map(a=>a===n?{...n,content:o}:a)}})}}function AL(){if(
|
|
29
|
-
`)}],details:{planFile:a}}}}),
|
|
30
|
-
\u2026 (${s.length-nl} more characters)`:s;return await o.ui.confirm("Approve this plan?",a)?(
|
|
31
|
-
`):e==null?"":String(e)}function
|
|
32
|
-
|
|
33
|
-
${
|
|
34
|
-
|
|
35
|
-
${n}`;return{messages:t.messages.map(a=>a===r?{...r,content:
|
|
17
|
+
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n]),Kb=(e,t=[])=>i(i(Ub(e),([n,r])=>i(Yc(r),([o,s])=>[[n,o],s])),([n,r])=>Kb(r,[...t,n]),()=>[t,e]),VM=e=>i(i(i(Yc(e),([t,n])=>i(Kb(n),([r,o])=>i(i(Ub(o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[My(t),n]),Yc=e=>i(i(HM(e),([t,n])=>i(i(GM(n),([r,o])=>[r,o],()=>i(WM(n),([r,o])=>[r,o],()=>i(BM(n),([r,o])=>[r,o],()=>i(zM(n),([r,o])=>[r,o],()=>[])))),([r,o])=>i(db(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Cy(t),n]),JM=e=>i(i(Yc(e),([t,n])=>i(VM(n),([r,o])=>[[t,r],o])),([t,n])=>[Ly(t),n]),Gb=e=>i(i(JM(e),([t,n])=>[t,n],()=>i(rM(e),([t,n])=>[t,n],()=>i(ie(e),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n])});function Wb(e){let t=zc(`\`${e}\``);return u.IsEqual(t.length,2)?t[0]:Ne()}var Xc=m(()=>{wn();R();qi()});function XM(e){return e.join("|")}function ZM(e){return e.slice(1,e.length-1)}function QM(e,t,n){return ar(t,`${n}${e}`)}function eC(e,t){return ar(e,`${t}${qg}`)}function tC(e,t){return ar(e,`${t}${Fi}`)}function nC(e,t){return ar(e,`${t}${Ni}`)}function rC(e,t){return Ts(J([ne("false"),ne("true")]),e,t)}function oC(e,t){return ar(e,`${t}${_i}`)}function sC(e,t,n){return ar(t,`${n}${ZM(e)}`)}function iC(e,t,n){let r=vs(e,{});return Ts(r,t,n)}function aC(e,t,n){let r=xt(e);return Ts(r,t,n)}function Bb(e,t,n,r=[]){return u.ShiftLeft(e,(o,s)=>Bb(s,t,n,[...r,Ts(o,[],"")]),()=>ar(t,`${n}(${XM(r)})`))}function Ts(e,t,n){return tt(e)?aC(e.enum,t,n):ft(e)?tC(t,n):ce(e)?QM(e.const,t,n):Tn(e)?eC(t,n):Vt(e)?rC(t,n):Le(e)?nC(t,n):ht(e)?oC(t,n):Pe(e)?sC(e.pattern,t,n):Hb(e)?iC(e.parameters[0],t,n):L(e)?Bb(e.anyOf,t,n):Af}function ar(e,t){return u.ShiftLeft(e,(n,r)=>Ts(n,r,t),()=>t)}function mC(e){return`^${ar(e,"")}$`}function zb(e){let t=mC(e);return Gi(t)}var Zc=m(()=>{R();sn();Ce();X();Tt();Er();Yt();gt();vn();Zn();Ve();Wi();V();Fa()});function vs(e,t){return z(e)?d.Update(zb(e),{},t):ia(e,t)}function Vb(e,t,n,r){let o=_t(e,t,n);return vs(o,r)}var Fa=m(()=>{v();Tt();Zc();N()});function ia(e,t={}){return F("TemplateLiteral",[e],t)}function Hb(e){return Fe(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"TemplateLiteral")}function Jb(e){return vs(e,{})}function uC(e){let t=Wb(e);return Jb(t)}function Yb(e,t={}){let n=u.IsString(e)?uC(e):Jb(e);return d.Update(n,{},t)}function Pe(e){return C(e,"TemplateLiteral")}var Tt=m(()=>{ts();R();H();ae();Xc();Fa()});var W={};Dt(W,{ExtendsFalse:()=>B,ExtendsTrue:()=>A,ExtendsUnion:()=>Qc,IsExtendsFalse:()=>cC,IsExtendsTrue:()=>Zb,IsExtendsTrueLike:()=>bo,IsExtendsUnion:()=>Xb,Match:()=>$e});function Qc(e){return d.Create({"~kind":"ExtendsUnion"},{inferred:e})}function Xb(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"inferred")&&u.IsEqual(e["~kind"],"ExtendsUnion")&&u.IsObject(e.inferred)}function A(e){return d.Create({"~kind":"ExtendsTrue"},{inferred:e})}function Zb(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"inferred")&&u.IsEqual(e["~kind"],"ExtendsTrue")&&u.IsObject(e.inferred)}function B(){return d.Create({"~kind":"ExtendsFalse"},{})}function cC(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.IsEqual(e["~kind"],"ExtendsFalse")}function bo(e){return Xb(e)||Zb(e)}function $e(e,t,n){return bo(e)?t(e.inferred):n()}var be=m(()=>{R();v()});function pC(e,t,n,r){return $e(oe(e,n,r),o=>A(d.Assign(d.Assign(e,o),{[t]:n})),()=>B())}function lC(e,t){return A(e)}function dC(e,t,n,r,o){return $e(oe(e,t,n),s=>$e(oe(s,t,r),a=>A(a),()=>B()),()=>$e(oe(e,t,o),s=>A(s),()=>B()))}function fC(e,t,n){let r=xt(n);return oe(e,t,r)}function Qb(e,t,n){return u.ShiftLeft(n,(r,o)=>$e(oe(e,t,r),s=>Qb(s,t,o),()=>B()),()=>A(e))}function gC(e,t,n){let r=at(n);return oe(e,t,r)}function eI(e,t,n){return u.ShiftLeft(n,(r,o)=>$e(oe(e,t,r),s=>A(s),()=>eI(e,t,o)),()=>B())}function pe(e,t,n){return ve(n)?lC(e,t):Se(n)?dC(e,t,n.if,n.then,n.else):tt(n)?fC(e,t,n.enum):Me(n)?pC(e,n.name,t,n.extends):te(n)?Qb(e,t,n.allOf):Pe(n)?gC(e,t,n.pattern):L(n)?eI(e,t,n.anyOf):Oe(n)?A(e):B()}var ut=m(()=>{R();v();$t();Rt();sn();Ht();De();Tt();X();Qe();St();be();V();V()});function tI(e,t,n){return Me(n)?pe(e,t,n):ve(n)?A(e):Oe(n)?A(e):Qc(e)}var nI=m(()=>{Ht();$t();Qe();ut();be()});function hC(e,t){let n=kr(e),r=kr(t);return n&&r||!n&&r?!0:!(n&&!r)}function rI(e,t,n,r){return we(r)?hC(t,r)?oe(e,n,r.items):B():pe(e,t,r)}var oI=m(()=>{dt();os();ut();St();be()});function sI(e,t,n){return Tn(n)?A(e):pe(e,t,n)}var iI=m(()=>{Er();ut();be()});function aI(e,t,n){return Vt(n)?A(e):pe(e,t,n)}var mI=m(()=>{Zn();ut();be()});function xC(e,t,n,r,o){let s=Me(r)?t:r,a=Me(r)?r:t,c=it(t),p=it(r);return!c&&p?B():$e(oe(e,s,a),f=>Es(f,n,o),()=>B())}function yC(e,t,n,r){return u.ShiftLeft(r,(o,s)=>xC(e,t,n,o,s),()=>it(t)?A(e):B())}function bC(e,t,n){return u.ShiftLeft(t,(r,o)=>yC(e,r,o,n),()=>A(e))}function Es(e,t,n){return bC(e,t,n)}var ep=m(()=>{R();Ht();Xn();St();be()});function Da(e,t,n){return Sn(n)?A(e):oe(e,t,n)}var tp=m(()=>{Or();St();be()});function uI(e,t,n,r){return ve(r)?A(e):Oe(r)?A(e):Ue(r)?$e(Es(e,t,r.parameters),o=>Da(o,n,r.instanceType),()=>B()):B()}var cI=m(()=>{$t();Wt();Qe();be();ep();tp()});function pI(e,t,n,r,o){return $e(oe(e,t,o),()=>oe(e,n,o),()=>oe(e,r,o))}var lI=m(()=>{St();be()});function dI(e,t,n){let r=xt(t);return oe(e,r,n)}var fI=m(()=>{St();V()});function gI(e,t,n,r){return ve(r)?A(e):Oe(r)?A(e):Ke(r)?$e(Es(e,t,r.parameters),o=>Da(o,n,r.returnType),()=>B()):B()}var hI=m(()=>{$t();Bt();Qe();be();ep();tp()});function xI(e,t,n){return ft(n)?A(e):Le(n)?A(e):pe(e,t,n)}var yI=m(()=>{vn();gt();ut();be()});function bI(e,t,n){let r=ke(t);return oe(e,r,n)}var II=m(()=>{St();Ss()});function Na(e,t,n){return t===n?A(e):B()}function IC(e,t,n){return ce(n)?Na(e,t,n.const):Tn(n)?A(e):pe(e,ne(t),n)}function $C(e,t,n){return ce(n)?Na(e,t,n.const):Vt(n)?A(e):pe(e,ne(t),n)}function wC(e,t,n){return ce(n)?Na(e,t,n.const):Le(n)?A(e):pe(e,ne(t),n)}function kC(e,t,n){return ce(n)?Na(e,t,n.const):ht(n)?A(e):pe(e,ne(t),n)}function $I(e,t,n){return u.IsBigInt(t.const)?IC(e,t.const,n):u.IsBoolean(t.const)?$C(e,t.const,n):u.IsNumber(t.const)?wC(e,t.const,n):u.IsString(t.const)?kC(e,t.const,n):Ne()}var wI=m(()=>{R();ac();Ce();Er();Zn();gt();Yt();ut();be()});function kI(e,t,n){return Me(n)?pe(e,t,n):A(e)}var TI=m(()=>{Ht();ut();be()});function vI(e,t,n){return ro(n)?A(e):pe(e,t,n)}var EI=m(()=>{oo();ut();be()});function SI(e,t,n){return Le(n)?A(e):pe(e,t,n)}var PI=m(()=>{gt();ut();be()});function TC(e,t,n){return it(t)?it(n)?A(e):B():A(e)}function vC(e,t,n){return Me(n)&&on(n.extends)?B():$e(oe(e,t,n),r=>TC(r,t,n),()=>B())}function EC(e,t){return e.reduce((n,r)=>r in t?bo(t[r])?{...n,...t[r].inferred}:Ne():Ne(),{})}function SC(e,t,n){let r={};for(let a of u.Keys(n))r[a]=a in t?vC({},t[a],n[a]):it(n[a])?Me(n[a])?A(d.Assign(e,{[n[a].name]:n[a].extends})):A(e):B();let o=u.Values(r).every(a=>bo(a)),s=o?EC(u.Keys(r),r):{};return o?A(s):B()}function PC(e,t,n){let r=SC(e,t,n);return bo(r)?A(d.Assign(e,r.inferred)):B()}function AC(e,t,n){return PC(e,t,n)}function RC(e,t){return u.Keys(t).reduce((n,r)=>({...n,[r]:u.HasPropertyKey(e,r)?L(n[r])?J([...n[r].anyOf,t[r]]):J([e[r],t[r]]):t[r]}),e)}function AI(e,t,n,r){return u.ShiftLeft(t,(o,s)=>$e(oe({},e[o],n),a=>AI(e,s,n,RC(r,a)),()=>B()),()=>A(r))}function OC(e,t,n,r){let o=u.Keys(t);return AI(t,o,r,e)}function RI(e,t,n){return rt(n)?OC(e,t,Zt(n),yt(n)):ue(n)?AC(e,t,n.properties):pe(e,G(t),n)}var OI=m(()=>{wn();v();R();Xn();Ht();Ve();de();Ye();X();St();ut();be()});function MC(e,t){return u.IsEqual(u.Keys(t).length,0)?A(e):B()}function CC(e,t,n,r,o){return oe(e,n,o)}function MI(e,t,n,r){return rt(r)?CC(e,ea(t),n,ea(Zt(r)),yt(r)):ue(r)?MC(e,r.properties):ve(r)?A(e):Oe(r)?A(e):B()}var CI=m(()=>{R();$t();Qe();de();Ye();St();be()});function LI(e,t,n){return ht(n)?A(e):pe(e,t,n)}var jI=m(()=>{Yt();ut();be()});function FI(e,t,n){return Qn(n)?A(e):pe(e,t,n)}var DI=m(()=>{Pr();ut();be()});function NI(e,t,n){let r=at(t);return oe(e,r,n)}var _I=m(()=>{St();V()});function np(e,t){return d.Create({"~kind":"Inferrable"},{name:e,type:t},{})}function Ps(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 rp(e){return or(e)?Me(e.items)?we(e.items.extends)?np(e.items.name,e.items.extends.items):Oe(e.items.extends)?np(e.items.name,e.items.extends):void 0:Ne():void 0}function _a(e){return Me(e)?np(e.name,e.extends):void 0}function op(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>$e(oe({},r,t),()=>op(o,t,[...n,r]),()=>{}),()=>n)}function qI(e,t,n,r){let o=op(n,r);return u.IsArray(o)?A(d.Assign(e,{[t]:je(o)})):B()}function qa(e,t,n,r){let o=op(n,r);return u.IsArray(o)?A(d.Assign(e,{[t]:J(o)})):B()}var sp=m(()=>{wn();v();R();dt();Qe();_e();St();X();Ht();uo();be()});function LC(e){return[...e].reverse()}function ip(e,t){return t?LC(e):e}function jC(e){let t=e.length>0?e[0]:void 0,n=Fe(t)?rp(t):void 0;return Fe(n)}function FC(e,t,n,r,o,s){return $e(oe(e,n,o),a=>UI(a,t,r,s),()=>B())}function DC(e,t,n,r,o){let s=rp(r);return Ps(s)?qI(e,s.name,ip(n,t),s.type):u.ShiftLeft(n,(a,c)=>FC(e,t,a,c,r,o),()=>B())}function NC(e,t,n,r){return u.ShiftLeft(r,(o,s)=>DC(e,t,n,o,s),()=>u.IsEqual(n.length,0)?A(e):B())}function UI(e,t,n,r){return NC(e,t,n,r)}function _C(e,t,n){let r=mr(e,Ie([],[]),n),o=jC(r);return UI(e,o,ip(t,o),ip(r,o))}function KI(e,t,n){let r=_a(n);return Ps(r)?qa(e,r.name,t,r.type):u.ShiftLeft(t,(o,s)=>$e(oe(e,o,n),a=>KI(a,s,n),()=>B()),()=>A(e))}function GI(e,t,n){let r=mr(e,Ie([],[]),t);return he(n)?_C(e,r,n.items):we(n)?KI(e,r,n.items):pe(e,je(r),n)}var WI=m(()=>{R();H();dt();_e();St();ut();be();N();N();sp()});function BI(e,t,n){return Sn(n)?A(e):po(n)?A(e):pe(e,t,n)}var zI=m(()=>{lo();Or();ut();be()});function HI(e,t,n){return u.ShiftLeft(n,(r,o)=>$e(oe(e,t,r),s=>A(s),()=>HI(e,t,o)),()=>B())}function ap(e,t,n){return u.ShiftLeft(t,(r,o)=>$e(HI(e,r,n),s=>ap(s,o,n),()=>B()),()=>A(e))}function VI(e,t,n){let r=_a(n);return Ps(r)?qa(e,r.name,t,r.type):L(n)?ap(e,t,n.anyOf):ap(e,t,[n])}var JI=m(()=>{R();X();St();be();sp()});function YI(e,t,n){return Me(n)?pe(e,t,n):ve(n)?A(e):Oe(n)?A(e):B()}var XI=m(()=>{$t();Qe();Ht();ut();be()});function ZI(e,t,n){return Sn(n)?A(e):pe(e,t,n)}var QI=m(()=>{Or();ut();be()});function oe(e,t,n){return ve(t)?tI(e,t,n):we(t)?rI(e,t,t.items,n):Tn(t)?sI(e,t,n):Vt(t)?aI(e,t,n):Ue(t)?uI(e,t.parameters,t.instanceType,n):Se(t)?pI(e,t.if,t.then,t.else,n):tt(t)?dI(e,t.enum,n):Ke(t)?gI(e,t.parameters,t.returnType,n):ft(t)?xI(e,t,n):te(t)?bI(e,t.allOf,n):ce(t)?$I(e,t,n):on(t)?kI(e,t,n):ro(t)?vI(e,t,n):Le(t)?SI(e,t,n):ue(t)?RI(e,t.properties,n):rt(t)?MI(e,Zt(t),yt(t),n):ht(t)?LI(e,t,n):Qn(t)?FI(e,t,n):Pe(t)?NI(e,t.pattern,n):he(t)?GI(e,t.items,n):po(t)?BI(e,t,n):L(t)?VI(e,t.anyOf,n):Oe(t)?YI(e,t,n):Sn(t)?ZI(e,t,n):B()}var St=m(()=>{nI();oI();iI();mI();cI();lI();fI();hI();yI();II();wI();TI();EI();PI();OI();CI();jI();DI();_I();WI();zI();JI();XI();QI();$t();dt();Er();Zn();Wt();Rt();sn();Bt();vn();De();Ce();Ve();oo();gt();de();Ye();Yt();Pr();Tt();_e();lo();Qe();X();Or();be()});function qC(e,t){return ke([...e,G(t)])}function mp(e,t,n){return z(e)?d.Update(qC(e,t),{},n):bs(e,t,n)}function e$(e,t,n,r,o){let s=_t(e,t,n),a=As(e,t,r);return mp(s,a,o)}var Ua=m(()=>{v();de();V();go();N();N();N()});function bs(e,t,n={}){return F("Interface",[e,t],n)}function Io(e){return Fe(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"Interface")}function t$(e,t,n={}){return mp(e,t,n)}var Rs=m(()=>{R();H();ae();Ua()});function UC(e,t,n){return e.includes(n)?!0:Os([...e,n],t,t[n])}function n$(e,t,n){let r=Ai(n);return Cr(e,t,r)}function Cr(e,t,n){return u.ShiftLeft(n,(r,o)=>Os(e,t,r)?!0:Cr(e,t,o),()=>!1)}function Os(e,t,n){return Ge(n)?UC(e,t,n.$ref):we(n)?Os(e,t,n.items):Ue(n)?Cr(e,t,[...n.parameters,n.instanceType]):Ke(n)?Cr(e,t,[...n.parameters,n.returnType]):Io(n)?n$(e,t,n.parameters[1]):te(n)?Cr(e,t,n.allOf):ue(n)?n$(e,t,n.properties):L(n)?Cr(e,t,n.anyOf):he(n)?Cr(e,t,n.items):rt(n)?Os(e,t,yt(n)):!1}function r$(e,t,n){return Os(e,t,n)}var up=m(()=>{R();dt();Wt();Bt();De();de();$r();Ye();_e();X();zt();Rs()});function KC(e,t){return t.reduce((n,r)=>r$([r],e,e[r])?[...n,r]:n,[])}function o$(e){let t=Pi(e);return KC(e,t)}var cp=m(()=>{$r();up()});function GC(e,t,n){return n.includes(t)?n:t in e?Ms(e,e[t],[...n,t]):Ne()}function s$(e,t,n){let r=Ai(t);return $o(e,r,n)}function $o(e,t,n){return t.reduce((r,o)=>Ms(e,o,r),n)}function Ms(e,t,n){return Ge(t)?GC(e,t.$ref,n):we(t)?Ms(e,t.items,n):Ue(t)?$o(e,[...t.parameters,t.instanceType],n):Ke(t)?$o(e,[...t.parameters,t.returnType],n):Io(t)?s$(e,t.parameters[1],n):te(t)?$o(e,t.allOf,n):ue(t)?s$(e,t.properties,n):L(t)?$o(e,t.anyOf,n):he(t)?$o(e,t.items,n):rt(t)?Ms(e,yt(t),n):n}function i$(e,t,n){return Ms(e,n,[t])}var pp=m(()=>{wn();dt();Wt();Bt();De();de();$r();Ye();_e();X();zt();Rs()});function WC(e){return Qr()}function BC(e){return u.Keys(e).reduce((t,n)=>({...t,[n]:Lr(e[n])}),{})}function Cs(e){return e.reduce((t,n)=>[...t,Lr(n)],[])}function Lr(e){return Ge(e)?WC(e.$ref):we(e)?Nt(Lr(e.items),Si(e)):Ue(e)?xn(Cs(e.parameters),Lr(e.instanceType)):Ke(e)?yn(Cs(e.parameters),Lr(e.returnType)):te(e)?kt(Cs(e.allOf)):ue(e)?G(BC(e.properties)):rt(e)?Qi(mo(e),Lr(yt(e))):L(e)?J(Cs(e.anyOf)):he(e)?je(Cs(e.items)):e}function zC(e,t){return t in e?Lr(e[t]):Je()}function a$(e){return zC(e.$defs,e.$ref)}var m$=m(()=>{R();$t();dt();Wt();Bt();De();de();Ye();zt();_e();X();Qe()});function HC(e,t,n){let r=_t(e,Ie([],[]),t),o=As({},Ie([],[]),n);return ke([...r,G(o)])}function VC(e,t){return u.Keys(e).filter(r=>t.includes(r)).reduce((r,o)=>{let s=e[o],a=Io(s)?HC(e,s.parameters[0],s.parameters[1]):s;return{...r,[o]:a}},{})}function u$(e,t,n){let r=i$(e,t,n),o=VC(e,r);return In(o,t)}var lp=m(()=>{R();wt();de();pp();go();N();N();N();V()});function c$(e,t){return t in e?Ge(e[t])?c$(e,e[t].$ref):e[t]:fe()}function Rn(e,t){return c$(e,t)}var jr=m(()=>{Ve();zt()});var dp=m(()=>{cp();up();pp();m$();lp();jr()});function p$(e){return et(e)?a$(e):Ri(e)?Je():e}function nt(e,t,n){let r=p$(t),o=p$(n);return oe(e,r,o)}var l$=m(()=>{wt();Qe();Oi();St();dp()});var En=m(()=>{l$();be()});function fs(e,t){let n=[nt({},e,t),nt({},t,e)];return W.IsExtendsTrueLike(n[0])&&W.IsExtendsTrueLike(n[1])?ls:W.IsExtendsTrueLike(n[0])&&W.IsExtendsFalse(n[1])?ds:W.IsExtendsFalse(n[0])&&W.IsExtendsTrueLike(n[1])?Vi:Ka}var ls,Ka,ds,Vi,gs=m(()=>{En();ls=0,Ka=1,ds=2,Vi=3});function fp(e,t,n=[],r=t){return u.ShiftLeft(t,(o,s)=>{let a=fs(e,o);return u.IsEqual(a,ds)||u.IsEqual(a,ls)?r:u.IsEqual(a,Ka)?fp(e,s,[...n,o],r):fp(e,s,n,r)},()=>[...n,e])}function JC(e,t,n){let r=Xt(e);return ve(r)?[r]:Oe(r)?[r]:on(r)?Ga(t,n):ue(r)?Ga(t,[...n,r]):Ga(t,fp(r,n))}function Ga(e,t=[]){return u.ShiftLeft(e,(n,r)=>JC(n,r,t),()=>t)}function Ac(e){let t=Ga(e);return ao(t)}var Rc=m(()=>{R();$t();Ve();de();Qe();gs();Yi();V()});function gp(e,t){return d.Update(Xt(e),{},t)}function d$(e,t,n,r){let o=$(e,t,n);return gp(o,r)}var Wa=m(()=>{v();N();V()});var Ss=m(()=>{Rc();gs();vc();Sc();V();Yi();Wa();Ec()});function Ls(e,t=[]){return Jn(e)&&u.IsEqual(e.action,"Conditional")?Ge(e.parameters[0])?Ls(e.parameters[2],Ls(e.parameters[3],[...t,e.parameters[0].$ref])):Ls(e.parameters[2],Ls(e.parameters[3],t)):Jn(e)&&u.IsEqual(e.action,"Mapped")&&Jn(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 YC(e,t){return e.reduce((n,r)=>[...n,t.includes(r.name)],[])}function h$(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>u.ShiftLeft(t,(s,a)=>h$(o,a,[...n,[s,r]]),()=>n),()=>n)}function XC(e){return Pe(e)?at(e.pattern):tt(e)?xt(e.enum):e}function ZC(e){let t=XC(e);return L(t)?[...t.anyOf]:[t]}function QC(e,t){return e.reduce((n,r)=>[...n,[...r,t]],[])}function f$(e,t){return t.reduce((n,r)=>[...n,...QC(e,r)],[])}function g$(e){return e.reduce((t,n)=>u.IsEqual(n[0],!0)?f$(t,ZC(n[1])):f$(t,[n[1]]),[[]])}function x$(e,t,n){let r=Ls(n),o=YC(e,r),s=h$(t,o);return Jn(n)&&u.IsEqual(n.action,"Conditional")||Jn(n)&&u.IsEqual(n.action,"Mapped")?g$(s):[t]}var y$=m(()=>{R();X();ae();sn();Tt();zt();V();V()});function e0(){return["(not-resolvable)",fe()]}function t0(){return["(not-generic)",fe()]}function n0(e,t,n){return[e,Yn(t,n)]}function r0(e,t,n){return t in e?b$(e,t,e[t],n):e0()}function b$(e,t,n,r){return Zr(n)?n0(t,n.parameters,n.expression):Ge(n)?r0(e,n.$ref,r):t0()}function I$(e,t,n){return b$(e,"(anonymous)",t,n)}var $$=m(()=>{Zo();zt();Ve()});function o0(e,t,n){if(Me(t)||wo(t)||W.IsExtendsTrueLike(nt({},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 w$(e,t,n,r,o){let s=$(e,t,o);return o0(n,s,r),d.Assign(e,{[n]:s})}function s0(e,t,n,r,o){let s=$(e,t,n.extends),a=$(e,t,n.equals);return u.ShiftLeft(o,(c,p)=>hp(w$(e,t,n.name,s,c),t,r,p),()=>hp(w$(e,t,n.name,s,a),t,r,[]))}function hp(e,t,n,r){return u.ShiftLeft(n,(o,s)=>s0(e,t,o,s,r),()=>e)}function k$(e,t,n,r){return hp(e,t,n,r)}var T$=m(()=>{R();v();N();En();Ht();fo()});function i0(){if(!u.IsLessThan(yp,rn.Get().maxInstantiationCount))throw Error("Type instantiation is excessively deep and possibly infinite")}function a0(){i0(),yp++,xp++}function m0(){xp--,u.IsEqual(xp,0)&&(yp=0)}function u0(e){return u.IsGreaterThan(e.callstack.length,0)?e.callstack[e.callstack.length-1]:""}function c0(e,t){return u.IsEqual(u0(e),t)}function p0(e,t,n,r,o,s){a0();try{let a=k$(e,t,r,s),c=$(a,Ie([...t.callstack,n.$ref],t.visited),o);return $(a,Ie([],[]),c)}finally{m0()}}function l0(e,t,n,r,o,s){return s.reduce((a,c)=>{let p=p0(e,t,n,r,o,c);return[...a,p]},[])}function d0(e,t,n,r,o,s){let a=x$(r,s,o),c=l0(e,t,n,r,o,a);return u.IsEqual(c.length,1)?c[0]:Et(c)}function Ba(e,t,n,r){let o=_t(e,t,r),s=I$(e,n,r),a=s[0],c=s[1];return Zr(c)?c0(t,a)?Is(_n(a),o):d0(e,t,_n(a),c.parameters,c.expression,o):Is(n,o)}var xp,yp,bp=m(()=>{yr();R();fo();zt();Zo();Ss();N();N();N();y$();$$();T$();xp=0,yp=0});function Is(e,t){return d.Create({"~kind":"Call"},{type:"call",target:e,arguments:t},{})}function v$(e,t){return Ba({},Ie([],[]),e,t)}function wo(e){return C(e,"Call")}var fo=m(()=>{v();H();bp();N()});function f0(e){return d.Discard(e,["~immutable"])}function E$(e,t){return d.Update(f0(e),{},t)}function S$(e,t,n,r){let o=$(e,t,n);return E$(o,r)}var Ip=m(()=>{v();N()});function P$(e,t){return e(t)}var A$=m(()=>{});function R$(e,t){return u.IsString(t)?ne(P$(e,t)):ne(t)}var O$=m(()=>{R();Ce();A$()});function M$(e,t){let n=at(t);return Kn(e,n)}var C$=m(()=>{za();Ss()});function L$(e,t){let n=t.map(r=>Kn(e,r));return J(n)}var j$=m(()=>{X();za()});function Kn(e,t){return ce(t)?R$(e,t.const):Pe(t)?M$(e,t.pattern):L(t)?L$(e,t.anyOf):t}var za=m(()=>{Ce();Tt();X();O$();C$();j$()});function aa(e,t={}){return F("Capitalize",[e],t)}function F$(e,t={}){return $p(e,t)}var Ha=m(()=>{ae();On()});function ma(e,t={}){return F("Lowercase",[e],t)}function D$(e,t={}){return wp(e,t)}var Va=m(()=>{ae();On()});function ua(e,t={}){return F("Uncapitalize",[e],t)}function N$(e,t={}){return kp(e,t)}var Ja=m(()=>{ae();On()});function ca(e,t={}){return F("Uppercase",[e],t)}function _$(e,t={}){return Tp(e,t)}var Ya=m(()=>{ae();On()});function $p(e,t){return z([e])?d.Update(Kn(g0,e),{},t):aa(e,t)}function wp(e,t){return z([e])?d.Update(Kn(h0,e),{},t):ma(e,t)}function kp(e,t){return z([e])?d.Update(Kn(x0,e),{},t):ua(e,t)}function Tp(e,t){return z([e])?d.Update(Kn(y0,e),{},t):ca(e,t)}function q$(e,t,n,r){let o=$(e,t,n);return $p(o,r)}function U$(e,t,n,r){let o=$(e,t,n);return wp(o,r)}function K$(e,t,n,r){let o=$(e,t,n);return kp(o,r)}function G$(e,t,n,r){let o=$(e,t,n);return Tp(o,r)}var g0,h0,x0,y0,On=m(()=>{v();za();N();Ha();Va();Ja();Ya();g0=e=>e[0].toUpperCase()+e.slice(1),h0=e=>e.toLowerCase(),x0=e=>e[0].toLowerCase()+e.slice(1),y0=e=>e.toUpperCase()});function pa(e,t,n,r,o={}){return F("Conditional",[e,t,n,r],o)}function W$(e,t,n,r,o={}){return vp({},Ie([],[]),e,t,n,r,o)}var Xa=m(()=>{ae();Ep();N()});function b0(e,t,n,r,o,s){let a=nt(e,n,r);return W.IsExtendsUnion(a)?J([$(a.inferred,t,o),$(e,t,s)]):W.IsExtendsTrue(a)?$(a.inferred,t,o):$(e,t,s)}function vp(e,t,n,r,o,s,a){return z([n,r])?d.Update(b0(e,t,n,r,o,s),{},a):pa(n,r,o,s,a)}function B$(e,t,n,r,o,s,a){let c=$(e,t,n),p=$(e,t,r);return vp(e,t,c,p,o,s,a)}var Ep=m(()=>{v();X();En();N();Xa()});var Sp=m(()=>{Ep()});function la(e,t={}){return F("ConstructorParameters",[e],t)}function z$(e,t={}){return Pp(e,t)}var Za=m(()=>{ae();Qa()});function I0(e){let t=Ue(e)?e.parameters:[],n=mr({},Ie([],[]),t);return je(n)}function Pp(e,t){return z([e])?d.Update(I0(e),{},t):la(e,t)}function H$(e,t,n,r){let o=$(e,t,n);return Pp(o,r)}var Qa=m(()=>{v();Wt();_e();Za();N();N();N()});function da(e,t,n={}){return F("Exclude",[e,t],n)}function V$(e,t,n={}){return js(e,t,n)}var em=m(()=>{ae();Fs()});function js(e,t,n){return z([e,t])?d.Update(Ji(e,t),{},n):da(e,t,n)}function J$(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return js(s,a,o)}var Fs=m(()=>{v();N();em();Pc()});function fa(e,t,n={}){return F("Extract",[e,t],n)}function Y$(e,t,n={}){return Ap(e,t,n)}var tm=m(()=>{ae();nm()});function $0(e,t){let n=nt({},e,t);return W.IsExtendsTrueLike(n)?[e]:[]}function X$(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>X$(o,t,[...n,...$0(r,t)]),()=>n)}function Z$(e,t){let n=Xt(e),r=L(n)?n.anyOf:[n],o=X$(r,t);return Et(o)}var Q$=m(()=>{R();X();En();V();V()});function Ap(e,t,n){return z([e,t])?d.Update(Z$(e,t),{},n):fa(e,t,n)}function ew(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Ap(s,a,o)}var nm=m(()=>{v();N();tm();Q$()});function w0(e){return e.reduce((t,n)=>Di(n)?[...t,ne(n)]:t,[])}function ko(e){let t=w0(e);return J(t)}var Ds=m(()=>{Ce();X()});function $s(e,t,n={}){return F("Index",[e,t],n)}function tw(e,t,n={}){let r=u.IsArray(t)?ko(t):t;return Op(e,r,n)}var Rp=m(()=>{R();ae();Ds();rm()});function nw(e,t){let n=Rn(e,t);return qt(n)}var rw=m(()=>{Fr();jr()});function ow(e,t,n){let r=mn(e,t,n);return qt(r)}var sw=m(()=>{Fr();V()});function k0(e,t){let n=u.Keys(e).filter(I=>!u.HasPropertyKey(t,I)),r=u.Keys(t).filter(I=>!u.HasPropertyKey(e,I)),o=u.Keys(e).filter(I=>u.HasPropertyKey(t,I)),s=n.reduce((I,w)=>({...I,[w]:e[w]}),{}),a=r.reduce((I,w)=>({...I,[w]:t[w]}),{}),c=o.reduce((I,w)=>({...I,[w]:ke([e[w],t[w]])}),{}),p=d.Assign(s,a);return d.Assign(p,c)}function iw(e){return e.reduce((t,n)=>k0(t,qt(n)),{})}var aw=m(()=>{v();R();Fr();V()});var mw=m(()=>{});function uw(e){let t=ch(je(e));return qt(t)}var cw=m(()=>{_e();kc();Fr()});function T0(e,t){return u.Keys(e).filter(o=>o in t).reduce((o,s)=>({...o,[s]:Et([e[s],t[s]])}),{})}function pw(e,t){return u.ShiftLeft(e,(n,r)=>pw(r,T0(t,qt(n))),()=>t)}function lw(e){return u.ShiftLeft(e,(t,n)=>pw(n,qt(t)),()=>Ne())}var dw=m(()=>{R();wn();V();Fr()});function qt(e){return et(e)?nw(e.$defs,e.$ref):Se(e)?ow(e.if,e.then,e.else):te(e)?iw(e.allOf):L(e)?lw(e.anyOf):he(e)?uw(e.items):ue(e)?e.properties:{}}var Fr=m(()=>{wt();Rt();De();de();_e();X();rw();sw();aw();mw();cw();dw()});function To(e){let t=qt(e);return G(t)}var fw=m(()=>{de();Fr()});var Ns=m(()=>{fw()});function vo(e){let t=`${e}`;return v0.test(t)?parseInt(t):e}var v0,_s=m(()=>{v0=new RegExp("^(?:0|[1-9][0-9]*)$")});function E0(e){return ne(vo(e))}function gw(e){return e.map(t=>hw(t))}function hw(e){return te(e)?kt(gw(e.allOf)):L(e)?J(gw(e.anyOf)):ce(e)?E0(e.const):e}function xw(e,t){let n=hw(t),r=nt({},n,Ot());return W.IsExtendsTrueLike(r)?e:ce(t)&&u.IsEqual(t.const,"length")?Ot():fe()}var yw=m(()=>{R();De();X();Ce();gt();Ve();En();_s()});function bw(e,t){let n=Rn(e,t);return Ct(n)}var Iw=m(()=>{ur();jr()});function $w(e,t,n){let r=mn(e,t,n);return Ct(r)}var ww=m(()=>{ur();V()});function kw(e){let t=xt(e);return Ct(t)}var Tw=m(()=>{ur();V()});function vw(e){let t=ke(e);return Ct(t)}var Ew=m(()=>{V();ur()});function Sw(e){return[`${e}`]}var Pw=m(()=>{});function Aw(e){let t=at(e);return Ct(t)}var Rw=m(()=>{ur();V()});function Ow(e){return e.reduce((t,n)=>[...t,...Ct(n)],[])}var Mw=m(()=>{ur()});function Ct(e){return et(e)?bw(e.$defs,e.$ref):Se(e)?$w(e.if,e.then,e.else):tt(e)?kw(e.enum):te(e)?vw(e.allOf):ce(e)?Sw(e.const):Pe(e)?Aw(e.pattern):L(e)?Ow(e.anyOf):[]}var ur=m(()=>{wt();Rt();sn();De();Ce();Tt();X();Iw();ww();Tw();Ew();Pw();Rw();Mw()});function Eo(e){return Ct(e)}var om=m(()=>{ur()});function qs(e,t){return t.map(n=>Us(e,n))}function Us(e,t){return we(t)?Nt(Us(e,t.items)):Ue(t)?xn(qs(e,t.parameters),Us(e,t.instanceType)):Ke(t)?yn(qs(e,t.parameters),Us(e,t.returnType)):he(t)?je(qs(e,t.items)):L(t)?J(qs(e,t.anyOf)):te(t)?kt(qs(e,t.allOf)):na(t)?G(e):t}function Cw(e,t){return Us(e,t)}var Lw=m(()=>{dt();Wt();Bt();De();de();_e();ra();X()});function S0(e,t){let n=t in e?e[t]:fe();return Cw(e,n)}function jw(e,t){return t.reduce((n,r)=>[...n,S0(e,r)],[])}function P0(e,t){let n=Eo(t),r=jw(e,n);return Et(r)}function R0(e){return e.filter(n=>A0.test(n))}function O0(e){let t=Pi(e),n=R0(t),r=jw(e,n);return Et(r)}function Fw(e,t){return Le(t)?O0(e):P0(e,t)}var A0,Dw=m(()=>{gt();Ve();$r();V();om();Ye();Lw();A0=new RegExp(rr)});function M0(e){return ne(vo(e))}function Nw(e){return e.map(t=>Mp(t))}function Mp(e){return te(e)?kt(Nw(e.allOf)):L(e)?J(Nw(e.anyOf)):ce(e)?M0(e.const):e}var _w=m(()=>{X();De();Ce();_s()});function C0(e,t){return e.reduceRight((n,r,o)=>{let s=nt({},ne(o),t);return W.IsExtendsTrueLike(s)?[r,...n]:n},[])}function L0(e,t){let n=Mp(t),r=C0(e,n);return tr(r)}function j0(e){return tr(e)}function qw(e,t){return ce(t)&&u.IsEqual(t.const,"length")?ne(e.length):Le(t)||ft(t)?j0(e):L0(e,t)}var Uw=m(()=>{R();Ce();gt();vn();V();En();_w()});function Kw(e,t){return we(e)?xw(e.items,t):ue(e)?Fw(e.properties,t):he(e)?qw(e.items,t):fe()}var Gw=m(()=>{dt();Ve();de();_e();yw();Dw();Uw()});function F0(e){return et(e)||Se(e)||te(e)||L(e)?To(e):e}function Op(e,t,n){return z([e,t])?d.Update(Kw(F0(e),t),{},n):$s(e,t,n)}function Ww(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Op(s,a,o)}var rm=m(()=>{v();wt();Rt();De();X();N();Rp();Ns();Gw()});function ga(e,t={}){return F("InstanceType",[e],t)}function Bw(e,t={}){return Cp(e,t)}var sm=m(()=>{ae();im()});function D0(e){return Ue(e)?e.instanceType:fe()}function Cp(e,t){return z([e])?d.Update(D0(e),{},t):ga(e,t)}function zw(e,t,n,r={}){let o=$(e,t,n);return Cp(o,r)}var im=m(()=>{v();Wt();Ve();sm();N()});function ws(e,t={}){return F("KeyOf",[e],t)}function Hw(e,t={}){return Lp(e,t)}var am=m(()=>{ae();mm()});function Vw(){return J([Ot(),Jt(),so()])}var Jw=m(()=>{gt();Yt();Pr();X()});function Yw(e){return Ot()}var Xw=m(()=>{gt()});function N0(e){return e.reduce((n,r)=>Di(r)?[...n,ne(vo(r))]:Ne(),[])}function Zw(e){let t=u.Keys(e),n=N0(t);return tr(n)}var Qw=m(()=>{wn();R();Ce();_s();V()});function ek(e){return mo(e)}var tk=m(()=>{Ye()});function nk(e){let t=e.map((n,r)=>ne(r));return tr(t)}var rk=m(()=>{Ce();V()});function ok(e){return ve(e)?Vw():we(e)?Yw(e.items):ue(e)?Zw(e.properties):rt(e)?ek(e):he(e)?nk(e.items):fe()}var sk=m(()=>{$t();dt();Ve();de();Ye();_e();Jw();Xw();Qw();tk();rk()});function _0(e){return et(e)||Se(e)||te(e)||L(e)?To(e):e}function Lp(e,t){return z([e])?d.Update(ok(_0(e)),{},t):ws(e,t)}function ik(e,t,n,r){let o=$(e,t,n);return Lp(o,r)}var mm=m(()=>{v();wt();Rt();De();X();am();N();Ns();sk()});function ys(e,t,n,r,o={}){return F("Mapped",[e,t,n,r],o)}function ak(e,t,n,r,o={}){return jp({},Ie([],[]),e,t,n,r,o)}var um=m(()=>{ae();cm();N()});function q0(e){let t=at(e);return pm(t)}function U0(e){return e.reduce((t,n)=>[...t,...pm(n)],[])}function K0(e){let t=xt(e);return pm(t)}function G0(e){return u.IsNumber(e)?[ne(`${e}`)]:[ne(e)]}function pm(e){return tt(e)?K0(e.enum):ce(e)?G0(e.const):Pe(e)?q0(e.pattern):L(e)?U0(e.anyOf):[e]}function mk(e){return pm(e)}var uk=m(()=>{R();Ce();sn();Tt();X();V();V()});function W0(e){return Pe(e)?at(e.pattern):e}function B0(e,t,n,r,o,s){let a=d.Assign(e,{[n.name]:r}),c=$(a,t,o),p=W0(c),f=$(a,t,s);return Kg(p)||Gg(p)?{[p.const]:f}:{}}function z0(e,t,n,r,o,s){return r.reduce((a,c)=>[...a,B0(e,t,n,c,o,s)],[])}function H0(e){return e.reduce((t,n)=>[...t,G(n)],[])}function ck(e,t,n,r,o,s){let a=mk(r),c=z0(e,t,n,a,o,s),p=H0(c);return ke(p)}var pk=m(()=>{v();Ce();de();Tt();N();V();V();uk()});function jp(e,t,n,r,o,s,a){return z([r])?d.Update(ck(e,t,n,r,o,s),{},a):ys(n,r,o,s,a)}function lk(e,t,n,r,o,s,a){let c=$(e,t,r);return jp(e,t,n,c,o,s,a)}var cm=m(()=>{v();um();N();pk()});function V0(e,t,n){let r=d.Assign(e,t);return u.Keys(t).filter(s=>n.includes(s)).reduce((s,a)=>({...s,[a]:u$(r,a,t[a])}),{})}function J0(e,t,n){let r=d.Assign(e,t);return u.Keys(t).filter(s=>!n.includes(s)).reduce((s,a)=>({...s,[a]:$(r,Ie([],[]),t[a])}),{})}function Y0(e,t,n){let r=o$(t),o=V0(e,t,r),s=J0(e,t,r),a={...o,...s};return d.Update(a,{},n)}function lm(e,t,n,r){return Y0(e,n,r)}var dm=m(()=>{R();v();N();cp();lp();N()});function ha(e,t={}){return F("NonNullable",[e],t)}function dk(e,t={}){return Fp(e,t)}var fm=m(()=>{ae();gm()});function X0(e){let t=J([no(),co()]);return js(e,t,{})}function Fp(e,t){return z([e])?d.Update(X0(e),{},t):ha(e,t)}function fk(e,t,n,r){let o=$(e,t,n);return Fp(o,r)}var gm=m(()=>{v();oo();lo();X();Fs();fm();N()});function xa(e,t,n={}){return F("Omit",[e,t],n)}function gk(e,t,n={}){let r=u.IsArray(t)?ko(t):t;return Dp(e,r,n)}var hm=m(()=>{R();ae();Ds();xm()});function ym(e){let t=To(e);return ue(t)?t.properties:Ne()}var Np=m(()=>{wn();de();Ns()});function Z0(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?r:{...r,[o]:e[o]},{})}function hk(e,t){let n=ym(e),r=Eo(t),o=Z0(n,r);return G(o)}var xk=m(()=>{R();de();om();Np()});function Dp(e,t,n){return z([e,t])?d.Update(hk(e,t),{},n):xa(e,t,n)}function yk(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Dp(s,a,o)}var xm=m(()=>{v();hm();N();xk()});function ya(e,t={}){return F("Parameters",[e],t)}function bk(e,t={}){return _p(e,t)}var bm=m(()=>{ae();Im()});function Q0(e){let t=Ke(e)?e.parameters:[],n=mr({},Ie([],[]),t);return je(n)}function _p(e,t){return z([e])?d.Update(Q0(e),{},t):ya(e,t)}function Ik(e,t,n,r){let o=$(e,t,n);return _p(o,r)}var Im=m(()=>{v();Bt();_e();bm();N();N();N()});function ba(e,t={}){return F("Partial",[e],t)}function $k(e,t={}){return qp(e,t)}var $m=m(()=>{ae();wm()});function wk(e,t){let n=Rn(e,t),r=Mn(n);return In(d.Assign(e,{[t]:r}),t)}var kk=m(()=>{v();wt();So();jr()});function Tk(e,t,n){let r=mn(e,t,n);return Mn(r)}var vk=m(()=>{So();V()});function Ek(e){let t=ke(e);return Mn(t)}var Sk=m(()=>{So();V()});function Pk(e){let t=e.map(n=>Mn(n));return J(t)}var Ak=m(()=>{X();So()});function Rk(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:Ir(e[o])}),{});return G(t)}var Ok=m(()=>{R();de();Qo()});function Mn(e){return et(e)?wk(e.$defs,e.$ref):Se(e)?Tk(e.if,e.then,e.else):te(e)?Ek(e.allOf):L(e)?Pk(e.anyOf):ue(e)?Rk(e.properties):G({})}var So=m(()=>{wt();Rt();De();de();X();kk();vk();Sk();Ak();Ok()});function qp(e,t){return z([e])?d.Update(Mn(e),{},t):ba(e,t)}function Mk(e,t,n,r){let o=$(e,t,n);return qp(o,r)}var wm=m(()=>{v();$m();So();N()});function Ia(e,t,n={}){return F("Pick",[e,t],n)}function Ck(e,t,n={}){let r=u.IsArray(t)?ko(t):t;return Up(e,r,n)}var km=m(()=>{R();ae();Ds();Tm()});function eL(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?d.Assign(r,{[o]:e[o]}):r,{})}function Lk(e,t){let n=ym(e),r=Eo(t),o=eL(n,r);return G(o)}var jk=m(()=>{v();R();de();om();Np()});function Up(e,t,n){return z([e,t])?d.Update(Lk(e,t),{},n):Ia(e,t,n)}function Fk(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Up(s,a,o)}var Tm=m(()=>{v();km();N();jk()});function $a(e,t={}){return F("ReadonlyObject",[e],t)}function Kp(e,t={}){return Gp(e,t)}var Dk,vm=m(()=>{ae();Em();Dk=Kp});function Nk(e){return to(Nt(e))}var _k=m(()=>{dt();ss()});function qk(e,t){let n=Rn(e,t),r=Cn(n);return In(d.Assign(e,{[t]:r}),t)}var Uk=m(()=>{v();wt();Po();jr()});function Kk(e,t,n){let r=mn(e,t,n);return Cn(r)}var Gk=m(()=>{Po();V()});function Wk(e){let t=ke(e);return Cn(t)}var Bk=m(()=>{Po();V()});function zk(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:Tr(e[o])}),{});return G(t)}var Hk=m(()=>{R();de();is()});function Vk(e){return to(je(e))}var Jk=m(()=>{_e();ss()});function Yk(e){let t=e.map(n=>Cn(n));return J(t)}var Xk=m(()=>{X();Po()});function Cn(e){return we(e)?Nk(e.items):et(e)?qk(e.$defs,e.$ref):Se(e)?Kk(e.if,e.then,e.else):te(e)?Wk(e.allOf):ue(e)?zk(e.properties):he(e)?Vk(e.items):L(e)?Yk(e.anyOf):e}var Po=m(()=>{dt();wt();Rt();De();de();_e();X();_k();Uk();Gk();Bk();Hk();Jk();Xk()});function Gp(e,t){return z([e])?d.Update(Cn(e),{},t):$a(e)}function Zk(e,t,n,r){let o=$(e,t,n);return Gp(o,r)}var Em=m(()=>{v();vm();Po();N()});function Qk(e,t,n,r){return t.visited.includes(r)?n:r in e?$(e,Ie(t.callstack,[...t.visited,r]),e[r]):n}var Wp=m(()=>{N();N()});function eT(e,t){let n=Rn(e,t),r=Ln(n);return In(d.Assign(e,{[t]:r}),t)}var tT=m(()=>{v();wt();Ao();jr()});function nT(e,t,n){let r=mn(e,t,n);return Ln(r)}var rT=m(()=>{Ao();V()});function oT(e){let t=ke(e);return Ln(t)}var sT=m(()=>{Ao();V()});function iT(e){let t=e.map(n=>Ln(n));return J(t)}var aT=m(()=>{X();Ao()});function mT(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:zi(e[o])}),{});return G(t)}var uT=m(()=>{R();de();Hi()});function Ln(e){return et(e)?eT(e.$defs,e.$ref):Se(e)?nT(e.if,e.then,e.else):te(e)?oT(e.allOf):L(e)?iT(e.anyOf):ue(e)?mT(e.properties):G({})}var Ao=m(()=>{wt();Rt();De();de();X();tT();rT();sT();aT();uT()});function wa(e,t={}){return F("Required",[e],t)}function cT(e,t={}){return Bp(e,t)}var Sm=m(()=>{ae();Pm()});function Bp(e,t){return z([e])?d.Update(Ln(e),{},t):wa(e,t)}function pT(e,t,n,r){let o=$(e,t,n);return Bp(o,r)}var Pm=m(()=>{v();Ao();Sm();N()});function ka(e,t={}){return F("ReturnType",[e],t)}function lT(e,t={}){return zp(e,t)}var Am=m(()=>{ae();Rm()});function tL(e){return Ke(e)?e.returnType:fe()}function zp(e,t){return z([e])?d.Update(tL(e),{},t):ka(e,t)}function dT(e,t,n,r={}){let o=$(e,t,n);return zp(o,r)}var Rm=m(()=>{v();Bt();Ve();Am();N()});function Ta(e,t){return F("With",[e,t],{})}function fT(e,t){return Hp(e,t)}var Om=m(()=>{ae();Mm()});function Hp(e,t){return z([e])?d.Update(e,{},t):Ta(e,t)}function gT(e,t,n,r){let o=$(e,t,n);return Hp(o,r)}var Mm=m(()=>{v();N();Om()});function nL(e){return or(e)?he(e.items)?Vp(e.items.items):Me(e.items)?[e]:Ge(e.items)?[e]:[fe()]:[e]}function Vp(e){return e.reduce((n,r)=>[...n,...nL(r)],[])}var hT=m(()=>{Ht();Ve();uo();zt();_e()});var xT=m(()=>{hT()});function Ie(e,t){return{callstack:e,visited:t}}function z(e){return u.ShiftLeft(e,(t,n)=>Ge(t)?!1:z(n),()=>!0)}function As(e,t,n){return u.Keys(n).reduce((r,o)=>({...r,[o]:$(e,t,n[o])}),{})}function mr(e,t,n){let r=_t(e,t,n);return Vp(r)}function _t(e,t,n){return n.map(r=>$(e,t,r))}function rL(e,t){let n=it(e)?Xo(t,{}):t,r=vr(e)?Yo(n,{}):n;return kr(e)?Ks(r,{}):r}function oL(e,t,n,r,o){return u.IsEqual(n,"AddImmutable")?yT(e,t,r[0],o):u.IsEqual(n,"RemoveImmutable")?S$(e,t,r[0],o):u.IsEqual(n,"AddReadonly")?vf(e,t,r[0],o):u.IsEqual(n,"RemoveReadonly")?sh(e,t,r[0],o):u.IsEqual(n,"AddOptional")?Ef(e,t,r[0],o):u.IsEqual(n,"RemoveOptional")?mh(e,t,r[0],o):u.IsEqual(n,"Capitalize")?q$(e,t,r[0],o):u.IsEqual(n,"Conditional")?B$(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"ConstructorParameters")?H$(e,t,r[0],o):u.IsEqual(n,"Evaluate")?d$(e,t,r[0],o):u.IsEqual(n,"Exclude")?J$(e,t,r[0],r[1],o):u.IsEqual(n,"Extract")?ew(e,t,r[0],r[1],o):u.IsEqual(n,"Index")?Ww(e,t,r[0],r[1],o):u.IsEqual(n,"InstanceType")?zw(e,t,r[0],o):u.IsEqual(n,"Interface")?e$(e,t,r[0],r[1],o):u.IsEqual(n,"KeyOf")?ik(e,t,r[0],o):u.IsEqual(n,"Lowercase")?U$(e,t,r[0],o):u.IsEqual(n,"Mapped")?lk(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"Module")?lm(e,t,r[0],o):u.IsEqual(n,"NonNullable")?fk(e,t,r[0],o):u.IsEqual(n,"Pick")?Fk(e,t,r[0],r[1],o):u.IsEqual(n,"Parameters")?Ik(e,t,r[0],o):u.IsEqual(n,"Partial")?Mk(e,t,r[0],o):u.IsEqual(n,"Omit")?yk(e,t,r[0],r[1],o):u.IsEqual(n,"ReadonlyObject")?Zk(e,t,r[0],o):u.IsEqual(n,"Record")?Ch(e,t,r[0],r[1],o):u.IsEqual(n,"Required")?pT(e,t,r[0],o):u.IsEqual(n,"ReturnType")?dT(e,t,r[0],o):u.IsEqual(n,"TemplateLiteral")?Vb(e,t,r[0],o):u.IsEqual(n,"Uncapitalize")?K$(e,t,r[0],o):u.IsEqual(n,"Uppercase")?G$(e,t,r[0],o):u.IsEqual(n,"With")?gT(e,t,r[0],r[1]):F(n,r,o)}function sL(e,t,n){let r=Ge(n)?Qk(e,t,n,n.$ref):we(n)?Nt($(e,t,n.items),Si(n)):wo(n)?Ba(e,t,n.target,n.arguments):Ue(n)?xn(_t(e,t,n.parameters),$(e,t,n.instanceType),Sf(n)):Ke(n)?yn(_t(e,t,n.parameters),$(e,t,n.returnType),Pf(n)):Se(n)?wr($(e,t,n.if),$(e,t,n.then),$(e,t,n.else),jf(n)):te(n)?kt(_t(e,t,n.allOf),qf(n)):ue(n)?G(As(e,t,n.properties),Mf(n)):rt(n)?Lh(Zt(n),$(e,t,yt(n))):or(n)?Rr($(e,t,n.items)):he(n)?je(mr(e,t,n.items),oh(n)):L(n)?J(_t(e,t,n.anyOf),Bg(n)):n;return rL(n,r)}function $(e,t,n){return Jn(n)?oL(e,t,n.action,n.parameters,n.options):sL(e,t,n)}function Jp(e,t){return $(e,Ie([],[]),t)}var N=m(()=>{R();Cm();vi();Ei();dt();Wt();ae();Bt();fo();Rt();De();de();Ye();_e();X();zt();uo();Cm();Ip();vi();yc();Ei();$c();Xn();os();as();bp();On();Sp();Qa();Wa();Fs();nm();rm();im();Ua();mm();On();cm();dm();gm();xm();Im();wm();Tm();Em();Xi();Wp();Pm();Rm();Fa();On();On();Mm();xT()});function iL(e){return d.Update(e,{"~immutable":!0},{})}function Ks(e,t){return d.Update(iL(e),{},t)}function yT(e,t,n,r){let o=$(e,t,n);return Ks(o,r)}var Cm=m(()=>{v();N()});function Fy(e,t={}){return F("AddImmutable",[e],t)}function to(e,t={}){return Ks(e,t)}var ss=m(()=>{ae();Cm()});var bT=m(()=>{ae();Ip()});function Dy(e,t={}){return F("Evaluate",[e],t)}function IT(e,t={}){return gp(e,t)}var Yp=m(()=>{ae();Wa()});function Ny(e,t={}){return F("Module",[e],t)}function $T(e,t={}){return lm({},Ie([],[]),e,t)}var Xp=m(()=>{ae();N();dm()});var go=m(()=>{ss();is();Qo();bT();bc();Hi();Ha();Xa();Za();Yp();em();tm();Rp();sm();Rs();am();Va();um();Xp();fm();hm();bm();$m();km();vm();Sm();Am();Ja();Ya();Om()});var wT=m(()=>{Qa()});var kT=m(()=>{Mi()});var TT=m(()=>{Fs()});var vT=m(()=>{nm()});var ET=m(()=>{});var ST=m(()=>{Ds();_s();ET()});var PT=m(()=>{rm()});var AT=m(()=>{im()});var RT=m(()=>{Ua()});var OT=m(()=>{On()});var MT=m(()=>{mm()});var CT=m(()=>{cm()});var LT=m(()=>{dm()});var jT=m(()=>{gm()});var FT=m(()=>{xm()});var DT=m(()=>{Im()});var NT=m(()=>{ps();Xc()});var _T=m(()=>{wm()});var qT=m(()=>{Tm()});var UT=m(()=>{R();gs()});var KT=m(()=>{UT()});var GT=m(()=>{Em()});var WT=m(()=>{Xi()});var BT=m(()=>{Wp()});var zT=m(()=>{Pm()});var HT=m(()=>{Rm()});var VT=m(()=>{});var JT=m(()=>{R();ps()});var YT=m(()=>{Wi();Bi();Zc();VT();Ki();JT()});var XT=m(()=>{Mm()});var ZT=m(()=>{N();Sp();wT();dp();kT();Ss();TT();vT();ST();PT();AT();RT();OT();MT();CT();LT();jT();Ns();FT();DT();NT();_T();qT();KT();GT();WT();BT();zT();HT();YT();XT()});function QT(...e){let[t,n,r]=$n.Match(e,{2:(a,c)=>u.IsString(a)?[{},a,c]:[a,c,{}],3:(a,c,p)=>[a,c,p],1:a=>[{},a,{}]}),o=Gb(n),s=u.IsArray(o)&&u.IsEqual(o.length,2)?$(t,Ie([],[]),o[0]):fe();return d.Update(s,{},r)}var ev=m(()=>{eo();v();R();sa();N();N();qi()});var Zp=m(()=>{ev()});var Y={};Dt(Y,{Any:()=>Qr,Array:()=>Nt,BigInt:()=>ms,Boolean:()=>ji,Call:()=>v$,Capitalize:()=>F$,Codec:()=>Li,Conditional:()=>W$,Constructor:()=>xn,ConstructorParameters:()=>z$,Cyclic:()=>In,Decode:()=>jg,DecodeBuilder:()=>rs,Dependent:()=>wr,Encode:()=>Fg,EncodeBuilder:()=>ns,Enum:()=>_f,Evaluate:()=>IT,Exclude:()=>V$,Extends:()=>nt,ExtendsResult:()=>W,Extract:()=>Y$,Function:()=>yn,Generic:()=>Yn,Identifier:()=>us,Immutable:()=>Dg,Index:()=>tw,Infer:()=>es,InstanceType:()=>Bw,Instantiate:()=>Jp,Integer:()=>Sr,Interface:()=>t$,Intersect:()=>kt,IsAny:()=>ve,IsArray:()=>we,IsBigInt:()=>Tn,IsBoolean:()=>Vt,IsCall:()=>wo,IsCodec:()=>Ci,IsConstructor:()=>Ue,IsCyclic:()=>et,IsDependent:()=>Se,IsEnum:()=>tt,IsEnumValue:()=>Nf,IsFunction:()=>Ke,IsGeneric:()=>Zr,IsIdentifier:()=>Ug,IsImmutable:()=>kr,IsInfer:()=>Me,IsInteger:()=>ft,IsIntersect:()=>te,IsKind:()=>C,IsLiteral:()=>ce,IsNever:()=>on,IsNull:()=>ro,IsNumber:()=>Le,IsObject:()=>ue,IsOptional:()=>it,IsParameter:()=>Wg,IsReadonly:()=>vr,IsRecord:()=>rt,IsRef:()=>Ge,IsRefine:()=>pc,IsRest:()=>or,IsSchema:()=>Fe,IsString:()=>ht,IsSymbol:()=>Qn,IsTemplateLiteral:()=>Pe,IsThis:()=>na,IsTuple:()=>he,IsUndefined:()=>po,IsUnion:()=>L,IsUnknown:()=>Oe,IsUnsafe:()=>Ri,IsVoid:()=>Sn,KeyOf:()=>Hw,Literal:()=>ne,Lowercase:()=>D$,Mapped:()=>ak,Module:()=>$T,Never:()=>fe,NonNullable:()=>dk,Null:()=>no,Number:()=>Ot,Object:()=>G,Omit:()=>gk,Optional:()=>Rf,Parameter:()=>Ar,Parameters:()=>bk,Partial:()=>$k,Pick:()=>Ck,Readonly:()=>Ng,ReadonlyObject:()=>Kp,ReadonlyType:()=>Dk,Record:()=>Qi,RecordKey:()=>mo,RecordPattern:()=>Zt,RecordValue:()=>yt,Ref:()=>_n,Refine:()=>_g,Required:()=>cT,Rest:()=>Rr,ReturnType:()=>lT,Script:()=>QT,String:()=>Jt,Symbol:()=>so,TemplateLiteral:()=>Yb,This:()=>ta,Tuple:()=>je,Uncapitalize:()=>N$,Undefined:()=>co,Union:()=>J,Unknown:()=>Je,Unsafe:()=>Cf,Uppercase:()=>_$,Void:()=>oa,With:()=>fT});var Qp=m(()=>{N();En();Zp();Ha();Xa();Za();Yp();em();tm();go();sm();Rs();am();Va();um();Xp();fm();hm();bm();$m();km();vm();Sm();Am();Ja();Ya();Om();cc();os();Xn();as();lc();$t();dt();Er();Zn();fo();Wt();wt();sn();Bt();Zo();dc();Rt();Ht();vn();De();Ce();Ve();oo();gt();de();gc();Ye();zt();uo();H();Yt();Pr();Tt();ra();_e();lo();X();Qe();Oi();Or()});var Dr=m(()=>{go();ZT();En();Zp();sa();Qp();Qp()});import{StringEnum as aL}from"@earendil-works/pi-ai";import{defineTool as mL}from"@earendil-works/pi-coding-agent";function tv(e){if(e.length===0)return"Todo list is empty.";let t=e.filter(o=>o.status==="completed").length,n=e.map(o=>`${uL[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(`
|
|
18
|
+
`)}function pL(e,t,n,r){let o=e.map(s=>({...s}));switch(t){case"init":return!n||n.length===0?{todos:o,error:"init needs a non-empty items array"}:{todos:n.map(s=>({content:s,status:"pending"}))};case"view":return{todos:o};case"start":case"done":case"drop":{if(!r)return{todos:o,error:`${t} needs task`};let s=o.find(a=>a.content===r);if(!s)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");s.status="in_progress"}else s.status=t==="done"?"completed":"dropped";return{todos:o}}default:return{todos:o,error:`unknown op ${JSON.stringify(t)}`}}}function lL(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 uL,cL,Lm,el=m(()=>{Dr();uL={pending:"[ ]",in_progress:"[>]",completed:"[x]",dropped:"[-]"},cL=Y.Object({op:aL(["init","start","done","drop","view"],{description:"init replaces the list; start/done/drop move one task; view reads it"}),items:Y.Optional(Y.Array(Y.String(),{description:"Task labels for init. 5-10 words each, specific enough to execute without re-planning"})),task:Y.Optional(Y.String({description:"Exact label of the task to start, complete or drop"}))});Lm=mL({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:cL,async execute(e,t,n,r,o){let s=lL(o),{todos:a,error:c}=pL(s,t.op,t.items,t.task),p={op:t.op,todos:a,...c?{error:c}:{}};return{content:[{type:"text",text:c?`Error: ${c}
|
|
19
|
+
${tv(a)}`:tv(a)}],details:p,...c?{isError:!0}:{}}}})});import{StringEnum as dL}from"@earendil-works/pi-ai";import{defineTool as fL}from"@earendil-works/pi-coding-agent";function ov(){return Gn.size===0?"":["<shared-notes>","Working notes recorded with the `context` tool. They survive compaction and are visible to every agent on this task.",...[...Gn].map(([t,n])=>`- ${t}: ${n}`),"</shared-notes>"].join(`
|
|
20
|
+
`)}function gL(e,t,n){if(e==="list")return Gn.size===0?{text:"No notes."}:{text:[...Gn].map(([r,o])=>`${r} = ${o}`).join(`
|
|
21
|
+
`)};if(!t)return{text:"Error: key is required",error:"key required"};if(t.length>rv)return{text:`Error: key longer than ${rv} characters`,error:"key too long"};if(e==="forget")return{text:Gn.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>nv?`${n.slice(0,nv)}\u2026`:n;return Gn.set(t,r),{text:`Recorded ${t} (${Gn.size} note${Gn.size===1?"":"s"} held)`}}return{text:`Error: unknown op ${JSON.stringify(e)}`,error:"unknown op"}}var Gn,nv,rv,jm,Fm=m(()=>{Dr();Gn=new Map,nv=2e3,rv=80;jm=fL({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:Y.Object({op:dL(["set","list","forget"],{description:"set writes a note, list reads all, forget removes one"}),key:Y.Optional(Y.String({description:"Short lookup key, e.g. 'auth-entrypoint'"})),value:Y.Optional(Y.String({description:"The fact to keep (for set)"}))}),async execute(e,t){let{text:n,error:r}=gL(t.op,t.key,t.value);return{content:[{type:"text",text:n}],details:{op:t.op,notes:Object.fromEntries(Gn)},...r?{isError:!0}:{}}}})});import{StringEnum as hL}from"@earendil-works/pi-ai";import{defineTool as xL}from"@earendil-works/pi-coding-agent";function Nm(e){if(!e||e.status==="cleared")return"No goal set.";let t=e.budget??Dm,n=[`${av[e.status]} ${e.status}`,`${e.used}/${t} continuations`];return e.note&&n.push(e.note),`${n.join(" \xB7 ")}
|
|
22
|
+
${e.text}`}function mv(e){if(!e||e.status==="cleared"||e.status==="done")return"";let t=e.budget??Dm,n=e.text.length>48?`${e.text.slice(0,47)}\u2026`:e.text;return`goal ${av[e.status]} ${e.used}/${t} \xB7 ${n}`}function uv(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(`
|
|
23
|
+
`)}function cv(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??Dm}.`].join(`
|
|
24
|
+
`)}function _m(){return pv}function un(e){pv=e}function qm(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??Dm;return e.used>=t?{action:"stop",reason:`budget exhausted (${t} continuations)`,close:!0}:{action:"continue"}}function tl(e,t,n,r,o){switch(t){case"view":return{goal:e};case"set":return n?.trim()?n.length>sv?{goal:e,error:`text longer than ${sv} 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 Ro(e){let t;for(let n of e.sessionManager.getBranch()){if(n.type==="custom"&&n.customType===cr){t=n.data;continue}if(n.type==="custom_message"&&n.customType===cr){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 cr,iv,sv,Dm,av,pv,yL,lv,Um=m(()=>{Dr();cr="howtofix.goal",iv="howtofix.goal.continue",sv=400,Dm=25,av={active:"\u25CF",paused:"\u2016",done:"\u2713",cleared:"\u25CB"};yL=Y.Object({op:hL(["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:Y.Optional(Y.String({description:"The goal, in one sentence, as the user would state it (for set)"})),budget:Y.Optional(Y.Number({description:"Optional cap on automatic continuations before the run stops"})),note:Y.Optional(Y.String({description:"Evidence that the goal is met (required for complete)"}))}),lv=xL({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:yL,async execute(e,t,n,r,o){let s=Ro(o),{goal:a,error:c}=tl(s,t.op,t.text,t.budget,t.note);un(a);let p=Nm(a);return{content:[{type:"text",text:c?`Error: ${c}
|
|
25
|
+
${p}`:p}],details:{op:t.op,goal:a},...c?{isError:!0}:{}}}})});import{existsSync as ol,mkdirSync as dv,readFileSync as fv}from"node:fs";import{dirname as gv,join as hv}from"node:path";import{defineTool as xv}from"@earendil-works/pi-coding-agent";function Km(){return{state:"inactive",wasActive:!1}}function bL(e){return e?e.state==="pending"?{...e,state:"inactive"}:{...e}:Km()}function yv(e){return e.state!=="inactive"?e:{...e,state:"pending"}}function IL(e){return e.state!=="pending"?e:{state:"active",wasActive:!0}}function $L(e){return e.state!=="inactive"?e:{state:"active",wasActive:!0}}function wL(e){return e.state!=="active"?e:{...e,state:"inactive"}}function bv(e){return e.state==="inactive"?e:{...e,state:"inactive"}}function Gm(e){return e.state==="active"}function kL(e,t){return e===t}function TL(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(`
|
|
26
|
+
`)}function vL(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 Wm(){return pt}function Iv(){return ct}function $v(){return Gm(pt)}function wv(){if(!(!ct||!ol(ct)))try{let e=fv(ct,"utf8");return e.trim()?e:void 0}catch{return}}function kv(){return wv()!==void 0}function Tv(){return pt.state==="inactive"?"":pt.state==="pending"?"plan pending":kv()?"plan \u25CF ready":"plan \u25CF planning"}function vv(){return rl?hv(rl,"plan_mode.json"):void 0}function EL(){let e=vv();if(e)try{dv(gv(e),{recursive:!0}),Ze(e,JSON.stringify(pt))}catch{}}function SL(){let e=vv();if(!e||!ol(e))return Km();try{return bL(JSON.parse(fv(e,"utf8")))}catch{return Km()}}function PL(e){rl=e,ct=hv(e,"plan.md"),pt=SL()}function Oo(e){return pt=e,EL(),pt}function Ev(){return e=>{e.on("tool_call",async t=>{if(!Gm(pt)||t.toolName!=="edit"&&t.toolName!=="write")return;let n=t.input?.path;if(typeof n=="string"&&!(!ct||kL(n,ct)))return{block:!0,reason:vL(ct)}})}}function Sv(){return e=>{e.on("session_start",async(t,n)=>{PL(n.sessionManager.getSessionDir())}),e.on("before_agent_start",async()=>{pt.state==="pending"&&Oo(IL(pt))}),e.on("context_with_system",async t=>{if(!Gm(pt)||!ct)return;let n=t.messages[0];if(!n||n.role!=="system")return;let r=TL(ct,kv()),o=`${typeof n.content=="string"?n.content:""}
|
|
27
|
+
|
|
28
|
+
${r}`;return{messages:t.messages.map(a=>a===n?{...n,content:o}:a)}})}}function AL(){if(ct){try{dv(gv(ct),{recursive:!0}),ol(ct)||Ze(ct,"")}catch{return}return ct}}var ct,pt,rl,nl,Pv,Av,sl=m(()=>{Dr();zn();pt=Km();nl=2e4;Pv=xv({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:Y.Object({}),async execute(e,t,n,r,o){if(pt.state!=="inactive")return{content:[{type:"text",text:`Plan mode is already ${pt.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:{}};Oo($L(pt));let a=AL();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(`
|
|
29
|
+
`)}],details:{planFile:a}}}}),Av=xv({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:Y.Object({}),executionMode:"sequential",async execute(e,t,n,r,o){if(!Gm(pt))return{content:[{type:"text",text:"Plan mode is not active."}],details:{},isError:!0};let s=wv();if(!s)return{content:[{type:"text",text:`No plan has been written yet. Write it to ${ct??"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=s.length>nl?`${s.slice(0,nl)}
|
|
30
|
+
\u2026 (${s.length-nl} more characters)`:s;return await o.ui.confirm("Approve this plan?",a)?(Oo(wL(pt)),{content:[{type:"text",text:"Plan approved. You may now implement it."}],details:{approved:!0,planFile:ct}}):{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 il(){return{consecutiveFailures:0,tripped:!1}}function RL(e,t){return t==="manual"?!1:e.consecutiveFailures>=3}function OL(e,t){if(t)return e;let n=e.consecutiveFailures+1;return{consecutiveFailures:n,tripped:e.tripped||n>=3}}function ML(){return il()}function CL(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 Rv(){return e=>{e.on("session_start",async()=>{pr=il()}),e.on("session_compact",async()=>{pr=ML()}),e.on("session_compact_failed",async(t,n)=>{let r=pr;pr=OL(pr,t.aborted),!r.tripped&&pr.tripped&&n?.ui&&n.ui.notify(CL(pr),"warning")}),e.on("session_before_compact",async t=>{if(RL(pr,t.reason))return{cancel:!0}})}}var pr,Ov=m(()=>{pr=il()});function Bm(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(`
|
|
31
|
+
`):e==null?"":String(e)}function zm(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 al=m(()=>{});function LL(e){un(Ro(e))}function Mv(e){return`budget exhausted (${e.budget??"default"} continuations)`}function Cv(){return e=>{e.on("session_start",async(t,n)=>{LL(n)}),e.on("context_with_system",async(t,n)=>{let r=Ro(n);if(un(r),!r||r.status!=="active")return;let o=t.messages[0];if(!o||o.role!=="system")return;let s=`${Bm(o.content)}
|
|
32
|
+
|
|
33
|
+
${uv(r)}`;return{messages:t.messages.map(c=>c===o?{...o,content:zm(o.content,s)}:c)}}),e.on("agent_before_settle",async(t,n)=>{let r=Ro(n);if(un(r),qm(r).action==="stop"||!r||t.continue||!t.context.canContinue)return;let o={...r,used:r.used+1};if(e.appendEntry(cr,o),un(o),qm(o).action==="stop"){let s={...o,status:"done",note:Mv(o)};e.appendEntry(cr,s),un(s);return}return{entries:[{type:"custom_message",customType:iv,content:cv(o),display:!0}],continue:!0}}),e.on("agent_settled",async(t,n)=>{let r=Ro(n),o=qm(r);if(r&&o.action==="stop"&&o.close){let s={...r,status:"done",note:Mv(r)};e.appendEntry(cr,s),un(s)}else un(r)})}}var Lv=m(()=>{al();Um()});function Hm(){return e=>{e.on("context_with_system",async t=>{let n=ov();if(!n)return;let r=t.messages[0];if(!r||r.role!=="system")return;let o=`${Bm(r.content)}
|
|
34
|
+
|
|
35
|
+
${n}`;return{messages:t.messages.map(a=>a===r?{...r,content:zm(r.content,o)}:a)}})}}var ml=m(()=>{al();Fm()});function FL(e){if(jL.test(e))return!0;let t=/^172\.(\d+)\./.exec(e);if(!t)return!1;let n=Number(t[1]);return n>=16&&n<=31}function pl(e){let t;try{t=new URL(e)}catch{return{ok:!1,reason:"not a URL"}}if(t.protocol!=="http:"&&t.protocol!=="https:")return{ok:!1,reason:`refused protocol ${t.protocol}`};let n=t.hostname.toLowerCase();return n==="localhost"||n.endsWith(".localhost")||n==="::1"||n==="[::1]"?{ok:!1,reason:"refused loopback host"}:FL(n)||n==="0.0.0.0"?{ok:!1,reason:"refused private address"}:{ok:!0,url:t}}function jv(e){let t=e.replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<noscript[\s\S]*?<\/noscript>/gi," ").replace(/<[^>]+>/g," ").replace(/ /g," ").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").replace(/\s+/g," ").trim();return t.length>ul?t.slice(0,ul):t}function DL(e){let t=[],n=/class="result__a"[^>]*href="([^"]+)"[^>]*>([\s\S]*?)<\/a>/gi,r;for(;(r=n.exec(e))&&t.length<cl;){let o=r[1]??"",s=jv(r[2]??""),a=o,c=/[?&]uddg=([^&]+)/.exec(o);if(c)try{a=decodeURIComponent(c[1])}catch{a=o}else o.startsWith("//")&&(a=`https:${o}`);let p=pl(a);!p.ok||!s||t.push({title:s,url:p.url.toString(),snippet:""})}return t}async function Dv(e,t={}){let n=e.trim();if(!n)return{ok:!1,error:"empty query"};let r=t.fetchFn??fetch,o=t.timeoutMs??15e3,s={"user-agent":t.userAgent??Fv,accept:"text/html, application/json"};try{if(t.braveKey){let f=`https://api.search.brave.com/res/v1/web/search?q=${encodeURIComponent(n)}&count=${cl}`,I=await r(f,{headers:{...s,accept:"application/json","x-subscription-token":t.braveKey},signal:AbortSignal.timeout(o)});return I.ok?{ok:!0,hits:NL(await I.json()),provider:"brave"}:{ok:!1,error:`brave ${I.status}`}}let a=`https://html.duckduckgo.com/html/?q=${encodeURIComponent(n)}`,c=await r(a,{headers:s,signal:AbortSignal.timeout(o)});return c.ok?{ok:!0,hits:DL(await c.text()),provider:"ddg"}:{ok:!1,error:`search ${c.status}`}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}function NL(e){let t=[];if(e&&typeof e=="object"&&"web"in e){let r=e.web;r&&typeof r=="object"&&"results"in r&&Array.isArray(r.results)&&(t=r.results)}let n=[];for(let r of t){if(!r||typeof r!="object"||!("url"in r)||!("title"in r))continue;let o=r.url,s=r.title;if(typeof o!="string"||typeof s!="string")continue;let a=pl(o);if(!a.ok)continue;let c="description"in r?r.description:void 0;if(n.push({title:s,url:a.url.toString(),snippet:typeof c=="string"?c:""}),n.length>=cl)break}return n}async function Nv(e,t={}){let n=pl(e);if(!n.ok)return{ok:!1,error:n.reason};let r=t.fetchFn??fetch;try{let o=await r(n.url,{headers:{"user-agent":t.userAgent??Fv,accept:"text/html, text/plain, application/json"},signal:AbortSignal.timeout(t.timeoutMs??2e4),redirect:"follow"});if(!o.ok)return{ok:!1,error:`HTTP ${o.status}`};let s=o.headers.get("content-type")??"",a=await o.text(),c=/html/i.test(s)?jv(a):a.slice(0,ul);return{ok:!0,url:o.url||n.url.toString(),contentType:s,text:c}}catch(o){return{ok:!1,error:o instanceof Error?o.message:String(o)}}}var jL,ul,cl,Fv,_v=m(()=>{jL=/^(127\.|10\.|192\.168\.|169\.254\.|0\.|221\.|222\.|223\.)/;ul=8e4,cl=8;Fv="HowToFix (https://howtofix.id)"});import{Type as Vm}from"@earendil-works/pi-ai";import{defineTool as qv}from"@earendil-works/pi-coding-agent";function _L(e){return e.length===0?"no results":e.map((t,n)=>`${n+1}. ${t.title}
|
|
36
36
|
${t.url}${t.snippet?`
|
|
37
37
|
${t.snippet}`:""}`).join(`
|
|
38
|
-
`)}var
|
|
38
|
+
`)}var Jm,Ym,ll=m(()=>{_v();Jm=qv({name:"web_search",label:"web_search",description:"Search the public web. Use for current docs, changelogs, error messages, and anything not in this repo. Returns titles, URLs, and snippets. Follow a URL with web_fetch.",promptSnippet:"web_search: search the public web",parameters:Vm.Object({query:Vm.String({description:"Search query"})}),async execute(e,t){let n=await Dv(t.query,{braveKey:process.env.BRAVE_API_KEY});return n.ok?{content:[{type:"text",text:_L(n.hits)}],details:{count:n.hits.length,provider:n.provider}}:{content:[{type:"text",text:n.error}],details:{error:n.error},isError:!0}}}),Ym=qv({name:"web_fetch",label:"web_fetch",description:"Fetch a public http(s) URL and return its text. HTML is stripped to visible text. Local, loopback, and private addresses are refused.",promptSnippet:"web_fetch: read a public URL as text",parameters:Vm.Object({url:Vm.String({description:"http(s) URL"})}),async execute(e,t){let n=await Nv(t.url);return n.ok?{content:[{type:"text",text:n.text}],details:{url:n.url,contentType:n.contentType,chars:n.text.length}}:{content:[{type:"text",text:n.error}],details:{error:n.error},isError:!0}}})});import{spawn as qL}from"node:child_process";import{existsSync as Uv,readFileSync as UL}from"node:fs";import{delimiter as KL,isAbsolute as GL,join as Kv}from"node:path";import{fileURLToPath as WL,pathToFileURL as Nr}from"node:url";function Gv(e){let t=JSON.stringify(e);return`Content-Length: ${Buffer.byteLength(t,"utf8")}\r
|
|
39
39
|
\r
|
|
40
40
|
${t}`}function BL(e){let t=[],n=0;for(;n<e.length;){let r=e.indexOf(`\r
|
|
41
41
|
\r
|
|
42
|
-
`,n);if(r===-1)break;let o=e.subarray(n,r).toString("utf8"),s=/Content-Length:\s*(\d+)/i.exec(o);if(!s)break;let a=Number(s[1]),c=r+4,p=c+a;if(p>e.length)break;t.push(JSON.parse(e.subarray(c,p).toString("utf8"))),n=p}return{messages:t,rest:e.subarray(n)}}function HL(e){return zL.find(t=>t.match(e))}async function VL(e,t){let n=_r.get(e.command);if(n)return await n.ready,n.client;let r=qL(e.command,e.args,{cwd:t,stdio:["pipe","pipe","ignore"]}),o=r.stdin,s=r.stdout;if(!o||!s)throw r.kill(),new Error(`${e.command}: stdio pipes unavailable`);let a=new dl({stdin:o,stdout:s,root:t});r.on("error",()=>{let p=_r.get(e.command);p?.child===r&&_r.delete(e.command),p?.client.dispose()});let c=a.initialize().catch(p=>{throw _r.delete(e.command),r.kill(),p});return _r.set(e.command,{client:a,child:r,ready:c}),await c,a}function fl(){for(let[e,t]of _r)_r.delete(e),t.client.dispose(),t.child.kill()}function
|
|
43
|
-
`)[c]??"").indexOf(e.symbol);f>=0&&(p=f)}switch(e.action){case"definition":{let f=await a.definition(o,c,p);return f?{ok:!0,text:
|
|
44
|
-
`):"no references found",count:I.length}}case"hover":{let f=(await a.hover(o,c,p))?.trim();return{ok:!0,text:f||"no hover at that position"}}case"symbols":{let f=
|
|
42
|
+
`,n);if(r===-1)break;let o=e.subarray(n,r).toString("utf8"),s=/Content-Length:\s*(\d+)/i.exec(o);if(!s)break;let a=Number(s[1]),c=r+4,p=c+a;if(p>e.length)break;t.push(JSON.parse(e.subarray(c,p).toString("utf8"))),n=p}return{messages:t,rest:e.subarray(n)}}function HL(e){return zL.find(t=>t.match(e))}async function VL(e,t){let n=_r.get(e.command);if(n)return await n.ready,n.client;let r=qL(e.command,e.args,{cwd:t,stdio:["pipe","pipe","ignore"]}),o=r.stdin,s=r.stdout;if(!o||!s)throw r.kill(),new Error(`${e.command}: stdio pipes unavailable`);let a=new dl({stdin:o,stdout:s,root:t});r.on("error",()=>{let p=_r.get(e.command);p?.child===r&&_r.delete(e.command),p?.client.dispose()});let c=a.initialize().catch(p=>{throw _r.delete(e.command),r.kill(),p});return _r.set(e.command,{client:a,child:r,ready:c}),await c,a}function fl(){for(let[e,t]of _r)_r.delete(e),t.client.dispose(),t.child.kill()}function Wv(e){let t=e.uri;try{t=WL(e.uri)}catch{}let n=e.range?.start;return n?`${t}:${n.line+1}:${n.character+1}`:t}function Bv(e,t=0){let n=[];for(let r of e){let o=(r.selectionRange??r.range)?.start.line;n.push(`${" ".repeat(t)}${r.name}${o===void 0?"":` :${o+1}`}`),r.children&&n.push(...Bv(r.children,t+1))}return n}async function zv(e){try{let t=HL(e.file);if(!t)return{ok:!1,error:`no language server configured for ${e.file}`};if((e.action==="definition"||e.action==="references"||e.action==="hover")&&(e.line===void 0||!Number.isInteger(e.line)||e.line<1))return{ok:!1,error:`line required (1-based) for ${e.action}`};if(!(t.command.includes("/")?Uv(t.command):(process.env.PATH??"").split(KL).some(f=>Uv(Kv(f,t.command)))))return{ok:!1,error:`${t.command} is not on PATH. Install it to use lsp on ${e.file}.`};let o=GL(e.file)?e.file:Kv(e.root,e.file),s=UL(o,"utf8"),a=await VL(t,e.root);await a.ensureOpen(o,s,t.languageId);let c=(e.line??1)-1,p=0;if(e.symbol){let f=(s.split(`
|
|
43
|
+
`)[c]??"").indexOf(e.symbol);f>=0&&(p=f)}switch(e.action){case"definition":{let f=await a.definition(o,c,p);return f?{ok:!0,text:Wv(f),count:1}:{ok:!0,text:"no definition found",count:0}}case"references":{let I=(await a.references(o,c,p)).map(Wv);return{ok:!0,text:I.length>0?I.join(`
|
|
44
|
+
`):"no references found",count:I.length}}case"hover":{let f=(await a.hover(o,c,p))?.trim();return{ok:!0,text:f||"no hover at that position"}}case"symbols":{let f=Bv(await a.documentSymbols(o));return{ok:!0,text:f.length>0?f.join(`
|
|
45
45
|
`):"no symbols in this file",count:f.length}}case"diagnostics":{let I=(await a.diagnostics(o)).map(w=>`${w.range.start.line+1}:${w.range.start.character+1} ${JL[w.severity??3]??"info"} ${w.message}`);return{ok:!0,text:I.length>0?I.join(`
|
|
46
|
-
`):"no diagnostics",count:I.length}}}}catch(t){return{ok:!1,error:t instanceof Error?t.message:String(t)}}}var dl,zL,_r,JL,gl=m(()=>{dl=class{constructor(t){this.io=t;t.stdout.on("data",n=>{this.buffer=Buffer.concat([this.buffer,n]);let{messages:r,rest:o}=BL(this.buffer);this.buffer=o;for(let s of r)this.dispatch(s)})}io;nextId=1;pending=new Map;buffer=Buffer.alloc(0);opened=new Set;diagnosticsByUri=new Map;diagnosticsWaiters=new Map;dispatch(t){if(t.method==="textDocument/publishDiagnostics"){let r=t.params;if(r?.uri){let o=Array.isArray(r.diagnostics)?r.diagnostics:[];this.diagnosticsByUri.set(r.uri,o);let s=this.diagnosticsWaiters.get(r.uri);if(s){this.diagnosticsWaiters.delete(r.uri);for(let a of s)a(o)}}return}if(t.id===void 0)return;let n=this.pending.get(Number(t.id));n&&(this.pending.delete(Number(t.id)),t.error?n.reject(new Error(t.error.message)):n.resolve(t.result))}request(t,n,r=1e4){let o=this.nextId++,s=
|
|
47
|
-
`)}function Il(e){yl();let t=
|
|
48
|
-
${t.result??t.task}`:`no agent ${e}`}async function
|
|
46
|
+
`):"no diagnostics",count:I.length}}}}catch(t){return{ok:!1,error:t instanceof Error?t.message:String(t)}}}var dl,zL,_r,JL,gl=m(()=>{dl=class{constructor(t){this.io=t;t.stdout.on("data",n=>{this.buffer=Buffer.concat([this.buffer,n]);let{messages:r,rest:o}=BL(this.buffer);this.buffer=o;for(let s of r)this.dispatch(s)})}io;nextId=1;pending=new Map;buffer=Buffer.alloc(0);opened=new Set;diagnosticsByUri=new Map;diagnosticsWaiters=new Map;dispatch(t){if(t.method==="textDocument/publishDiagnostics"){let r=t.params;if(r?.uri){let o=Array.isArray(r.diagnostics)?r.diagnostics:[];this.diagnosticsByUri.set(r.uri,o);let s=this.diagnosticsWaiters.get(r.uri);if(s){this.diagnosticsWaiters.delete(r.uri);for(let a of s)a(o)}}return}if(t.id===void 0)return;let n=this.pending.get(Number(t.id));n&&(this.pending.delete(Number(t.id)),t.error?n.reject(new Error(t.error.message)):n.resolve(t.result))}request(t,n,r=1e4){let o=this.nextId++,s=Gv({jsonrpc:"2.0",id:o,method:t,params:n}),{promise:a,resolve:c,reject:p}=Promise.withResolvers(),f=setTimeout(()=>{this.pending.delete(o),p(new Error(`lsp ${t} timed out`))},r);return this.pending.set(o,{resolve:I=>{clearTimeout(f),c(I)},reject:I=>{clearTimeout(f),p(I)}}),this.io.stdin.write(s),a}notify(t,n){this.io.stdin.write(Gv({jsonrpc:"2.0",method:t,params:n}))}async initialize(){await this.request("initialize",{processId:null,rootUri:Nr(this.io.root).toString(),capabilities:{textDocument:{hover:{},definition:{},references:{},documentSymbol:{},publishDiagnostics:{}}}}),this.notify("initialized",{})}async hover(t,n,r){return(await this.request("textDocument/hover",{textDocument:{uri:Nr(t).toString()},position:{line:n,character:r}}))?.contents?.value}async definition(t,n,r){let o=await this.request("textDocument/definition",{textDocument:{uri:Nr(t).toString()},position:{line:n,character:r}});return Array.isArray(o)?o[0]:o??void 0}async references(t,n,r){let o=await this.request("textDocument/references",{textDocument:{uri:Nr(t).toString()},position:{line:n,character:r},context:{includeDeclaration:!0}});return Array.isArray(o)?o:[]}async documentSymbols(t){let n=await this.request("textDocument/documentSymbol",{textDocument:{uri:Nr(t).toString()}});return Array.isArray(n)?n:[]}diagnostics(t,n=2e3){let r=Nr(t).toString(),o=this.diagnosticsByUri.get(r);if(o)return Promise.resolve(o);let{promise:s,resolve:a}=Promise.withResolvers(),c=setTimeout(()=>{let f=this.diagnosticsWaiters.get(r);if(f){this.diagnosticsWaiters.delete(r);for(let I of f)I(this.diagnosticsByUri.get(r)??[])}},n),p=this.diagnosticsWaiters.get(r)??[];return p.push(f=>{clearTimeout(c),a(f)}),this.diagnosticsWaiters.set(r,p),s}async ensureOpen(t,n,r){let o=Nr(t).toString();this.opened.has(o)||(this.notify("textDocument/didOpen",{textDocument:{uri:o,languageId:r,version:1,text:n}}),this.opened.add(o))}dispose(){for(let[t,n]of this.pending)n.reject(new Error("lsp client disposed")),this.pending.delete(t);for(let[t,n]of this.diagnosticsWaiters){let r=this.diagnosticsByUri.get(t)??[];this.diagnosticsWaiters.delete(t);for(let o of n)o(r)}}},zL=[{command:"typescript-language-server",args:["--stdio"],languageId:"typescript",match:e=>/\.(ts|tsx|js|jsx|mts|cts)$/.test(e)},{command:"rust-analyzer",args:[],languageId:"rust",match:e=>e.endsWith(".rs")},{command:"gopls",args:[],languageId:"go",match:e=>e.endsWith(".go")},{command:"pylsp",args:[],languageId:"python",match:e=>e.endsWith(".py")}];_r=new Map;process.on("exit",fl);JL={1:"error",2:"warning",3:"info",4:"hint"}});import{StringEnum as YL}from"@earendil-works/pi-ai";import{defineTool as XL}from"@earendil-works/pi-coding-agent";var Xm,hl=m(()=>{Dr();gl();Xm=XL({name:"lsp",label:"lsp",description:"Language-server query: definition, references, hover, symbols, or diagnostics for a file. Line is 1-based. Does not edit. If the server binary is missing the result says so \u2014 do not pretend grep is a substitute without telling the user.",promptSnippet:"lsp: definition, references, hover, symbols, diagnostics",parameters:Y.Object({action:YL(["diagnostics","definition","references","hover","symbols"],{description:"Which language-server query to run"}),file:Y.String({description:"File to query, relative to the project root"}),line:Y.Optional(Y.Number({description:"1-based line (definition, references, hover)"})),symbol:Y.Optional(Y.String({description:"Substring to locate on that line when column is omitted"}))}),async execute(e,t,n,r,o){let s=await zv({action:t.action,file:t.file,line:t.line,symbol:t.symbol,root:o.cwd});return s.ok?{content:[{type:"text",text:s.text}],details:{action:t.action,count:s.count}}:{content:[{type:"text",text:s.error}],details:{error:s.error},isError:!0}}})});import{mkdirSync as ZL,readdirSync as QL,readFileSync as ej}from"node:fs";import{join as Hv}from"node:path";import{createAgentSession as tj,DefaultResourceLoader as nj,SessionManager as rj}from"@earendil-works/pi-coding-agent";function Zm(e){ZL(Hr,{recursive:!0}),Ze(Hv(Hr,`${e.id}.json`),JSON.stringify({...e,session:void 0},null,1))}function yl(){let e;try{e=QL(Hr)}catch{return}for(let t of e)if(t.endsWith(".json"))try{let n=JSON.parse(ej(Hv(Hr,t),"utf8"));if(n.status!=="parked"||Qt.some(r=>r.id===n.id))continue;Qt.push({...n,mail:n.mail??[]})}catch{}}function bl(){return yl(),Qt.length===0?"no agents":Qt.map(e=>`${e.id} ${e.agent} ${e.status} requests=${e.requests} ${e.task}`).join(`
|
|
47
|
+
`)}function Il(e){yl();let t=Qt.find(n=>n.id===e);return t?`${t.agent}#${t.id} ${t.status}
|
|
48
|
+
${t.result??t.task}`:`no agent ${e}`}async function Qm(e){let t=qr.get(e.agent);if(!t)throw new Error(`unknown agent ${e.agent}`);let n=e.worktree||e.cwd||process.cwd(),r=new nj({cwd:n,agentDir:He,additionalSkillPaths:[gr(n)],extensionFactories:[Go({interactive:!1}),Hm()]});await r.reload();let{session:o}=await tj({cwd:n,agentDir:He,sessionManager:rj.inMemory(n),resourceLoader:r,tools:t.tools,customTools:[jm,Lm,Jm,Ym,Xm],thinkingLevel:e.effort});return o}async function Jv(e,t){yl();let n=Qt.find(o=>o.id===e);if(!n)return`no agent ${e}`;let r=n.session??await Qm(n);if(n.session=r,n.status==="running"||r.isStreaming)return n.mail.push(t),Zm(n),`queued for ${e}`;if(n.requests>=Vv)return`${e} is out of budget (${n.requests} requests)`;n.status="running";try{await r.prompt(t),n.requests+=1,n.result=r.getLastAssistantText()?.trim()||n.result,n.status="parked"}catch(o){n.result=o instanceof Error?o.message:String(o),n.status="error"}return Zm(n),`${e} ${n.status}`}async function Yv(e){let t=qr.get(e.agent);if(!t)throw new Error(`unknown agent ${e.agent}. known: ${[...qr.keys()].join(", ")}`);let n={id:`${Date.now().toString(36)}-${Qt.length+1}`,cwd:e.cwd,agent:t.name,task:e.task.trim(),effort:e.effort||t.effort,status:"queued",requests:0,mail:[],worktree:e.worktree};return Qt.push(n),Zm(n),n}async function ij(e,t){let n=qr.get(e.agent);if(!n)return;let r=e.session??await Qm(e);e.session=r;try{let o=e.mail.splice(0).join(`
|
|
49
49
|
`);for(await r.prompt(`${n.prompt}
|
|
50
50
|
|
|
51
51
|
Task:
|
|
52
52
|
${e.task}${o?`
|
|
53
53
|
|
|
54
54
|
Messages:
|
|
55
|
-
${o}`:""}`),e.requests+=1;e.mail.length>0&&e.requests<
|
|
56
|
-
`)),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{
|
|
55
|
+
${o}`:""}`),e.requests+=1;e.mail.length>0&&e.requests<Vv;)await r.followUp(e.mail.splice(0).join(`
|
|
56
|
+
`)),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{Zm(e)}}async function Xv(e){let t=()=>Qt.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 ij(r,e)}};if(await Promise.all(Array.from({length:sj},n)),e?.aborted)throw new Error("aborted")}var xl,oj,qr,Qt,sj,Vv,Gs=m(()=>{Nn();Fm();ml();Wo();el();ll();hl();zn();xl=["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."],oj=`You are a software architect planning an implementation. Your job is to explore the codebase and return a plan, not to write code.
|
|
57
57
|
|
|
58
58
|
## Read-only, by construction
|
|
59
59
|
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.
|
|
@@ -74,69 +74,69 @@ End your reply with exactly this section, listing the 3-5 files most critical to
|
|
|
74
74
|
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.`,qr=new Map([["scout",{name:"scout",description:"read-only lookup",tools:["read","grep","find","ls","context","web_search","web_fetch","lsp"],prompt:["Inspect only what the task needs. Do not edit.",...xl].join(`
|
|
75
75
|
`),effort:"low"}],["architect",{name:"architect",description:"designs an implementation plan",tools:["read","grep","find","ls","context","web_search","web_fetch","lsp"],prompt:oj,effort:"high"}],["task",{name:"task",description:"implements the assignment",tools:["read","bash","edit","write","grep","find","ls","context","todo","web_search","web_fetch","lsp"],prompt:["Do the assignment, then report files changed.",...xl].join(`
|
|
76
76
|
`),effort:"medium"}],["reviewer",{name:"reviewer",description:"finds concrete issues",tools:["read","grep","find","ls","context","web_search","web_fetch","lsp"],prompt:["Return issues with file evidence. Do not edit.",...xl].join(`
|
|
77
|
-
`),effort:"medium"}]]),
|
|
78
|
-
`)}function
|
|
77
|
+
`),effort:"medium"}]]),Qt=[],sj=3,Vv=8});import{execFile as aj}from"node:child_process";import{promisify as mj}from"node:util";import{tmpdir as uj}from"node:os";import{join as cj}from"node:path";async function en(e,t){try{let{stdout:n}=await pj("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 eu(e){return(await en(e,["rev-parse","--is-inside-work-tree"])).output==="true"}async function Zv(e){return(await en(e,["status","--porcelain"])).output.length>0}async function Qv(e,t){let n=await en(e,["add","-A"]);if(!n.ok)return n;let r=await en(e,["commit","-m",t]);return r.ok?{ok:!0,output:(await en(e,["log","-1","--oneline"])).output||r.output}:r}async function eE(e){let t=await en(e,["reset","--soft","HEAD~1"]);return t.ok?{ok:!0,output:(await en(e,["log","-1","--oneline"])).output||"reset to the previous commit"}:t}async function tE(e){let t=(await en(e,["diff"])).output,n=(await en(e,["diff","--cached"])).output;return[t,n].filter(Boolean).join(`
|
|
78
|
+
`)}function nE(e,t=60){let n=e.split(`
|
|
79
79
|
`);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(`
|
|
80
|
-
`)}async function
|
|
81
|
-
`)}function
|
|
80
|
+
`)}async function rE(e,t){if(!await eu(e))return null;let n=t.replace(/[^A-Za-z0-9._-]/g,"-").slice(0,40)||"agent",r=cj(uj(),`howtofix-wt-${process.pid}-${Date.now()}-${n}`);return(await en(e,["worktree","add","--detach",r,"HEAD"])).ok?{path:r,async remove(){await en(e,["worktree","remove","--force",r]),await en(e,["worktree","prune"])}}:null}var pj,$l=m(()=>{pj=mj(aj)});function oE(e){return e===null?"null":Array.isArray(e)?"array":Number.isInteger(e)?"integer":typeof e}function lj(e,t){let n=oE(e);return t==="number"?n==="number"||n==="integer":t==="integer"?n==="integer":n===t}function dj(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(!Ur(n)&&!Array.isArray(n))return;n=n[o]}return Ur(n)?n:void 0}function lr(e,t,n,r,o){if(!Ur(t))return;if(t.$ref!==void 0){let a=dj(n,t.$ref);a&&lr(e,a,n,r,o);return}if(Array.isArray(t.allOf))for(let a of t.allOf)lr(e,a,n,r,o);for(let a of["anyOf","oneOf"]){let c=t[a];if(!Array.isArray(c)||c.length===0)continue;let p=c.filter(f=>{let I=[];return lr(e,f,n,r,I),I.length===0}).length;a==="anyOf"&&p===0&&o.push({path:r,message:"does not match any allowed shape"}),a==="oneOf"&&p!==1&&o.push({path:r,message:`must match exactly one shape (matched ${p})`})}let s=t.type;if(s!==void 0){let a=Array.isArray(s)?s.map(String):[String(s)];if(!a.some(c=>lj(e,c))){o.push({path:r,message:`expected ${a.join(" or ")}, got ${oE(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(", ")}`}),Ur(e)){let a=Ur(t.properties)?t.properties:{};if(Array.isArray(t.required))for(let c of t.required.map(String))c in e||o.push({path:r?`${r}.${c}`:c,message:"is required"});for(let[c,p]of Object.entries(a))c in e&&lr(e[c],p,n,r?`${r}.${c}`:c,o);if(t.additionalProperties===!1)for(let c of Object.keys(e))c in a||o.push({path:r?`${r}.${c}`:c,message:"is not an allowed property"});else if(Ur(t.additionalProperties))for(let[c,p]of Object.entries(e))c in a||lr(p,t.additionalProperties,n,r?`${r}.${c}`:c,o)}if(Array.isArray(e)&&t.items!==void 0){let a=t.items;Array.isArray(a)?e.forEach((c,p)=>{p<a.length&&lr(c,a[p],n,`${r}[${p}]`,o)}):e.forEach((c,p)=>lr(c,a,n,`${r}[${p}]`,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 sE(e,t){if(!Ur(t))return[];let n=[];return lr(e,t,t,"",n),n}function iE(e){return e.map(t=>`- ${t.path||"(root)"}: ${t.message}`).join(`
|
|
81
|
+
`)}function aE(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 s=0;s<o.length;s++){let a=o[s];if(a!=="{"&&a!=="[")continue;let c=a==="{"?"}":"]",p=0,f=!1,I=!1;for(let w=s;w<o.length;w++){let M=o[w];if(f){I?I=!1:M==="\\"?I=!0:M==='"'&&(f=!1);continue}if(M==='"')f=!0;else if(M===a)p++;else if(M===c&&(p--,p===0))try{return JSON.parse(o.slice(s,w+1))}catch{break}}}}}var Ur,mE=m(()=>{Ur=e=>typeof e=="object"&&e!==null&&!Array.isArray(e)});import*as uE from"node:os";async function hj(e,t=cE,n=pE){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 xj(){let e=uE.availableParallelism?.()??4;return Math.max(1,Math.min(16,e-2))}function yj(e){let t=0,n=[];return async function(){t>=e&&await new Promise(s=>n.push(s)),t++;let o=!1;return()=>{o||(o=!0,t--,n.shift()?.())}}}function lE(e){let t=e.lifetimeCap??fj,n=e.fanoutCap??gj,r=yj(e.concurrency??xj()),o=0,s=0,a="",c=q=>e.onEvent?.(q),p=new Map,f=()=>e.onProgress?.([...p.values()]),I=async(q,ee)=>{let me=ee??{},xe=typeof me.label=="string"?me.label:`agent-${o+1}`,Te=typeof me.phase=="string"?me.phase:a,Be=typeof me.agentType=="string"?me.agentType:"task",Ut=typeof me.effort=="string"?me.effort:void 0,ye=typeof me.model=="string"?me.model:void 0,re=typeof me.isolation=="string"?me.isolation:void 0,T=me.schema;if(e.budgetTotal!=null&&s>=e.budgetTotal)throw new We(`budget exhausted: spent ${s} of ${e.budgetTotal} output tokens`);if(o>=t)throw new We(`lifetime cap reached: ${t} agent calls in one run`);o++;let ze=o;if(e.isPaused?.()&&!await hj(e,cE,pE))return null;let Kt=await r();try{if(e.signal?.aborted)return null;c({kind:"agent_start",label:xe,phase:Te,ordinal:o}),p.set(ze,{label:xe,phase:Te,agentType:Be,status:"running",outputTokens:0,...ye?{model:ye}:{},startedAt:Date.now()}),f();let dn=(tn,Gt,qe)=>{let jt=p.get(ze);jt&&(jt.status=tn,jt.outputTokens=Gt.outputTokens,jt.endedAt=Date.now(),Gt.toolCalls!==void 0&&(jt.toolCalls=Gt.toolCalls),Gt.model!==void 0&&(jt.model=Gt.model),qe&&(jt.detail=qe)),c({kind:"agent_end",label:xe,ok:tn==="ok",outputTokens:Gt.outputTokens}),f()},Fo=T===void 0?1:2;for(let tn=0;tn<Fo;tn++){let Gt=tn===0?String(q):void 0,qe=await M(Gt??bj(String(q),w),{label:xe,phase:Te,agentType:Be,effort:Ut,model:ye,isolation:re});if(qe===null)return dn("failed",{text:"",outputTokens:0}),null;if(s+=qe.outputTokens,T===void 0)return dn("ok",qe,wl(qe.text)),qe.text;let jt=aE(qe.text),Do=jt===void 0?[{path:"",message:"reply was not JSON"}]:sE(jt,T);if(Do.length===0)return dn("ok",qe,wl(qe.text)),jt;if(w=iE(Do),tn===Fo-1)return dn("failed",qe,`schema: ${wl(w)}`),null}return null}finally{Kt()}},w="",M=async(q,ee)=>{try{return await e.invoke({prompt:q,...ee})}catch{return null}};return{agent:(q,ee)=>I(q,ee),parallel:async q=>{if(q.length>n)throw new We(`fan-out cap exceeded: ${q.length} items (max ${n})`);return await Promise.all(q.map(async me=>{try{return await me()}catch{return null}}))},pipeline:async(q,...ee)=>{if(q.length>n)throw new We(`fan-out cap exceeded: ${q.length} items (max ${n})`);return await Promise.all(q.map(async(xe,Te)=>{let Be=xe;for(let Ut of ee)try{Be=await Ut(Be,xe,Te)}catch{return null}return Be}))},phase:q=>{a=String(q),c({kind:"phase",title:a})},log:q=>c({kind:"log",message:String(q)}),args:e.args,budget:{total:e.budgetTotal??null,spent:()=>s,remaining:()=>e.budgetTotal==null?1/0:Math.max(0,e.budgetTotal-s)}}}function bj(e,t){return`${e}
|
|
82
82
|
|
|
83
83
|
Your previous reply did not satisfy the required schema:
|
|
84
84
|
${t}
|
|
85
85
|
|
|
86
86
|
Reply with ONLY a corrected JSON value.`}function wl(e,t=80){let n=e.split(`
|
|
87
|
-
`).map(r=>r.trim()).find(r=>r.length>0)??"";return n.length>t?`${n.slice(0,t)}\u2026`:n}var fj,gj,uv,cv,We,lv=m(()=>{av();fj=1e3,gj=4096,uv=100,cv=300*1e3;We=class extends Error{constructor(t){super(t),this.name="WorkflowError"}}});import{parseColor as Gn,styleText as Ij}from"@earendil-works/pi-tui";function $j(e,t){return Ij(e,t,Qm)}function Q(e,t,n){return $j(e,{...n,fg:t})}var Qm,D,dv,Gs=m(()=>{Qm="truecolor",D={text:Gn("#e6e6e6"),mute:Gn("#8b8b8b"),dim:Gn("#5c5c5c"),user:Gn("#d0d0d0"),accent:Gn("#c4b5fd"),tool:Gn("#6ee7b7"),bad:Gn("#f0a8a4"),warn:Gn("#e6b15a"),line:Gn("#3a3a3a")};dv={heading:e=>Q(e,D.text,{bold:!0}),link:e=>Q(e,D.accent,{underline:!0}),linkUrl:e=>Q(e,D.mute),code:e=>Q(e,D.text),codeBlock:e=>Q(e,D.text),codeBlockBorder:e=>Q(e,D.line),quote:e=>Q(e,D.mute,{italic:!0}),quoteBorder:e=>Q(e,D.line),hr:e=>Q(e,D.line),listBullet:e=>Q(e,D.mute),bold:e=>Q(e,D.text,{bold:!0}),italic:e=>Q(e,D.text,{italic:!0}),strikethrough:e=>Q(e,D.mute,{strikethrough:!0}),underline:e=>Q(e,D.text,{underline:!0})}});import{truncateToWidth as Bs,visibleWidth as un}from"@earendil-works/pi-tui";function dr(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 hv(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 El(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function tu(e,t,n="left"){if(t<=0)return"";let r=un(e);if(r>t)return Bs(e,t);let o=" ".repeat(t-r);return n==="right"?o+e:e+o}function vl(e,t,n,r=1){if(n<=0)return"";let o=un(t);if(o>=n)return Bs(t,n);let s=n-o-r;if(s<=0)return tu(t,n,"right");let a=un(e)>s?Bs(e,s):e,c=" ".repeat(n-un(a)-o);return a+c+t}function kl(e,t,n){let r=Oo(e,Math.max(0,n-2)),o=Math.max(1,n-1-un(r)),s=fe("border","\u250C\u2500 ")+fe("accent",r)+fe("border",` ${"\u2500".repeat(o)}\u2510`),a=fe("border",`\u2514${"\u2500".repeat(n+2)}\u2518`),c=fe("border","\u2502"),p=t.map(f=>`${c} ${tu(f,n)} ${c}`);return[s,...p,a]}function Tj(e,t,n,r){let o=r?.gap??1,s=r?.leftWidth??Ws(Math.round(n*.38),28,44),a=n-s-o,c=Math.max(e.rows.length,t.rows.length),p=M=>{let j=[...M];for(;j.length<c;)j.push("");return j},f=kl(e.title,p(e.rows),s-4),I=kl(t.title,p(t.rows),a-4),w=" ".repeat(o);return f.map((M,j)=>M+w+(I[j]??tu("",a)))}function xv(e,t,n){switch(e){case"running":return fe(t||n?"accent":"muted","\u25CF");case"failed":return fe("error","\u2717");default:return fe("success","\u2713")}}function yv(e,t,n,r=Date.now(),o=0){return t?r-o<eu?fe("success","\u2713",!0):fe("success","\u2713"):fe(n?"accent":"dim",String(e))}function Mo(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 s=o.phase||gv;n.includes(s)||n.push(s)}return n.map((o,s)=>{let a=e.steps.filter(R=>(R.phase||gv)===o).map(R=>({...R,phaseIndex:s})),c=a.filter(R=>R.status!=="running").length,p=a.filter(R=>R.status==="failed").length,f=a.reduce((R,q)=>{let ee=q.endedAt??t;return Math.max(R,ee-q.startedAt)},0),I=-1;for(let R=0;R<a.length;R++){let q=a[R];q.status==="running"&&(I<0||q.startedAt>=a[I].startedAt)&&(I=R)}let w=r.get(o),M=a.length>0&&c===a.length&&p===0,j=M?a.reduce((R,q)=>Math.max(R,q.endedAt??0),0):0;return{title:o,...w?{detail:w}:{},agents:a,done:c,failed:p,outputTokens:a.reduce((R,q)=>R+q.outputTokens,0),elapsedMs:f,allDone:M,finishedAt:j,anchor:I}})}function Sl(e){return e.steps.reduce((t,n)=>t+n.outputTokens,0)}function Ej(e){return e.steps.reduce((t,n)=>t+(n.toolCalls??0),0)}function bv(e,t=Date.now()){return Math.max(0,(e.endedAt??t)-e.startedAt)}function vj(e){return e.steps.length>wj||Sl(e)>kj}function Sj(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],s=n.group.agents[n.group.anchor];return o.startedAt>=s.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 Iv(e,t=Date.now()){let n=Mo(e,t),r=e.steps.length,o=e.steps.filter(f=>f.status!=="running").length,s=e.steps.filter(f=>f.status==="failed").length,a=[e.name],c=n.find(f=>f.anchor>=0);c?a.push(`${c.title} ${c.done}/${c.agents.length}`):n.length>0&&a.push(`${n[n.length-1].title} done`),a.push(`${o}/${r} agents`),a.push(`${El(Sl(e))} tok`),a.push(dr(bv(e,t))),s>0&&a.push(`${s} failed`);let p=a.join(" \xB7 ");return vj(e)?`large workflow \xB7 ${p}`:p}function wv(e,t){if(e.status==="running"&&e.outputTokens===0)return[`idle ${dr(t-e.startedAt)}`,"idle"];let n=El(e.outputTokens),r=e.toolCalls??0,o=dr((e.endedAt??t)-e.startedAt);return[`${n} tok \xB7 ${r} tools \xB7 ${o}`,`${n} tok \xB7 ${r} tools`,`${n} tok`]}function Tl(e,t,n){if(e.length<=n)return{slice:e,start:0,more:0};let r=Math.max(1,n-1),o=Ws(t-Math.floor(r/2),0,e.length-r),s=e.slice(o,o+r);return{slice:s,start:o,more:e.length-s.length}}function Cj(e,t,n,r,o){let s=`${e.done}/${e.agents.length}`,a=n?fe("accent","\u276F"):" ",c=yv(t+1,e.allDone,n,o,e.finishedAt),p=Math.max(0,r-4-un(s)),f=un(e.title)>p?Bs(e.title,p,"\u2026"):e.title,I=e.allDone&&o-e.finishedAt<eu,w=fe(I&&!n?"success":n?"accent":"text",f),M=`${a}${c} ${w}`,j=fe(n?"accent":"muted",s);return vl(M,j,r,1)}function Lj(e,t,n,r,o,s){let a=t?fe("accent","\u276F"):" ",c=xv(e.status,t,n),p=fe(t?"accent":"text",tu(e.label,r)),f=`${a}${c} ${p}`,I=Math.max(0,o-un(f)-1),w=wv(e,s).find(j=>un(j)<=I)??"",M=fe(t?"accent":Mj(e)?"dim":"muted",w);return vl(f,M,o,1)}function jj(e,t,n,r){let o=[];return e.forEach((s,a)=>{let p=`${yv(a+1,s.allDone,a===n,r,s.finishedAt)} ${fe(a===n?"accent":"text",s.title)} ${fe("muted",`${s.done}/${s.agents.length}`)}`;o.push(Oo(p,t));let{slice:f,more:I}=Tl(s.agents,0,$v);f.forEach((w,M)=>{let j=xv(w.status,!1,M===s.anchor),R=wv(w,r)[0]??"";o.push(Oo(` ${j} ${fe("text",w.label)} ${fe("muted",R)}`,t))}),I>0&&o.push(Oo(` ${fe("dim",`\u2026+${I} more`)}`,t))}),o}function Fj(e,t,n){let r=n?.now??Date.now(),o=Mo(e,r),s=e.steps,a=s.filter(ze=>ze.status!=="running").length,c=s.filter(ze=>ze.status==="failed").length,p=[`${a}/${s.length} agents`,`${El(Sl(e))} tok`,`${Ej(e)} tools`,dr(bv(e,r)),...c>0?[`${c} failed`]:[]].join(" \xB7 "),f=[vl(fe("accent",e.name,!0),fe("muted",p),t,2),...e.description?[fe("muted",Oo(e.description,t))]:[]],I=n?.footer?[fe("muted",Oo(n.footerText??Dj(),t))]:[];if(o.length===0)return[...f,...kl("Phases",["(no agents yet)"],Math.max(0,t-4)),...I];let w=Ws(n?.selectedPhase??Sj(o),0,Math.max(0,o.length-1)),M=Ws(Math.round(t*.38),28,44),j=t-M-1-4;if(t<Rj||j<Oj)return[...f,...jj(o,t,w,r),...I];let R=o[w],{slice:q,start:ee,more:me}=Tl(o,w,Pj),xe=q.map((ze,Ut)=>Cj(ze,ee+Ut,ee+Ut===w,M-4,r));me>0&&xe.push(fe("dim",`\u2026+${me} more`));let Te=n?.filter?n.filter(R.agents):R.agents,Be=Te.length?Ws(Math.max(...Te.map(ze=>un(ze.label))),6,Aj):6,{slice:qt,more:ye}=Tl(Te,0,n?.agentWindow??$v),re=qt.map((ze,Ut)=>Lj(ze,!1,Ut===R.anchor,Be,j,r));ye>0&&re.push(fe("dim",`\u2026+${ye} more`));let T=Tj({title:"Phases",rows:xe},{title:`${R.title} \xB7 ${Te.length} agents${n?.filterLabel??""}`,rows:re},t,{leftWidth:M,gap:1});return[...f,...T,...I]}function kv(e,t=[],n=96,r,o){let s=Fj(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 p=Mo(e,e.endedAt??Date.now()),f=p[Math.max(0,Math.min(p.length-1,r??0))];for(let I of f?.agents??[])a.add(I.label)}if(a.size===0)return s;let c=[];for(let p of e.steps)if(a.has(p.label)){for(let f of p.tasks??[]){let I=f.status==="completed"?"[x]":f.status==="in_progress"?"[>]":"[ ]";c.push(` ${fe("muted",I)} ${fe("text",f.content)}`)}p.detail&&c.push(` ${fe("dim",p.detail)}`)}return c.length===0?s:[...s.slice(0,-1),...c,s[s.length-1]]}function Dj(){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 fv,fe,wj,kj,eu,Ws,Oo,gv,$v,Pj,Aj,Rj,Oj,Mj,zs=m(()=>{Gs();fv={text:D.text,muted:D.mute,dim:D.dim,accent:D.accent,success:D.tool,error:D.bad,border:D.line},fe=(e,t,n=!1)=>n?Q(t,fv[e],{bold:!0}):Q(t,fv[e]),wj=25,kj=15e5,eu=420;Ws=(e,t,n)=>Math.max(t,Math.min(n,e)),Oo=(e,t)=>un(e)>t?Bs(e,Math.max(0,t),"\u2026"):e;gv="Workflow";$v=16,Pj=12,Aj=18,Rj=72,Oj=24;Mj=e=>e.status==="running"&&e.outputTokens===0});import{readFileSync as Nj}from"node:fs";import{basename as _j}from"node:path";import{StringEnum as qj}from"@earendil-works/pi-ai";import{defineTool as Uj}from"@earendil-works/pi-coding-agent";function Ev(e){Tv=e}function Gj(e){let t=e.replace(/^(?:\s+|\/\/[^\n]*\n|\/\*[\s\S]*?\*\/)*/,""),n=/^export\s+const\s+meta\s*=\s*/.exec(t);if(!n)throw new We("a workflow script must start with `export const meta = { name, description }`");let r=e.length-t.length,o=n[0].length,s=0,a=null,c=-1;for(let j=o;j<t.length;j++){let R=t[j];if(a){R==="\\"?j++:R===a&&(a=null);continue}if(R==='"'||R==="'"||R==="`")a=R;else if(R==="{"||R==="[")s++;else if((R==="}"||R==="]")&&(s--,s===0)){c=j+1;break}}if(c===-1)throw new We("meta is not a closed literal object");let p=t.slice(o,c),f=e.slice(r+c).replace(/^\s*;/,"");if(/^\s*(import|export)\b/m.test(f))throw new We("a workflow body must not contain import or export declarations");if(/\bimport\s*\(/.test(f))throw new We("a workflow body must not use dynamic import()");let I;try{I=new Function(`"use strict"; return (${p});`)()}catch(j){throw new We(`meta must be a literal object: ${j instanceof Error?j.message:String(j)}`)}if(typeof I!="object"||I===null)throw new We("meta must be an object");let w=I;if(typeof w.name!="string"||!w.name.trim())throw new We("meta.name is required");if(typeof w.description!="string"||!w.description.trim())throw new We("meta.description is required");let M=Array.isArray(w.phases)?w.phases.filter(j=>typeof j=="object"&&j!==null).map(j=>({title:String(j.title??""),...typeof j.detail=="string"?{detail:j.detail}:{}})).filter(j=>j.title):void 0;return{meta:{name:w.name,description:w.description,...typeof w.whenToUse=="string"?{whenToUse:w.whenToUse}:{},...M?{phases:M}:{}},body:f}}function Wj(e){let t=["agent","parallel","pipeline","phase","log","args","budget"],n=`"use strict"; return (async () => {
|
|
87
|
+
`).map(r=>r.trim()).find(r=>r.length>0)??"";return n.length>t?`${n.slice(0,t)}\u2026`:n}var fj,gj,cE,pE,We,dE=m(()=>{mE();fj=1e3,gj=4096,cE=100,pE=300*1e3;We=class extends Error{constructor(t){super(t),this.name="WorkflowError"}}});import{parseColor as Wn,styleText as Ij}from"@earendil-works/pi-tui";function $j(e,t){return Ij(e,t,tu)}function Q(e,t,n){return $j(e,{...n,fg:t})}var tu,D,fE,Ws=m(()=>{tu="truecolor",D={text:Wn("#e6e6e6"),mute:Wn("#8b8b8b"),dim:Wn("#5c5c5c"),user:Wn("#d0d0d0"),accent:Wn("#c4b5fd"),tool:Wn("#6ee7b7"),bad:Wn("#f0a8a4"),warn:Wn("#e6b15a"),line:Wn("#3a3a3a")};fE={heading:e=>Q(e,D.text,{bold:!0}),link:e=>Q(e,D.accent,{underline:!0}),linkUrl:e=>Q(e,D.mute),code:e=>Q(e,D.text),codeBlock:e=>Q(e,D.text),codeBlockBorder:e=>Q(e,D.line),quote:e=>Q(e,D.mute,{italic:!0}),quoteBorder:e=>Q(e,D.line),hr:e=>Q(e,D.line),listBullet:e=>Q(e,D.mute),bold:e=>Q(e,D.text,{bold:!0}),italic:e=>Q(e,D.text,{italic:!0}),strikethrough:e=>Q(e,D.mute,{strikethrough:!0}),underline:e=>Q(e,D.text,{underline:!0})}});import{truncateToWidth as zs,visibleWidth as cn}from"@earendil-works/pi-tui";function dr(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 xE(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 vl(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function ru(e,t,n="left"){if(t<=0)return"";let r=cn(e);if(r>t)return zs(e,t);let o=" ".repeat(t-r);return n==="right"?o+e:e+o}function El(e,t,n,r=1){if(n<=0)return"";let o=cn(t);if(o>=n)return zs(t,n);let s=n-o-r;if(s<=0)return ru(t,n,"right");let a=cn(e)>s?zs(e,s):e,c=" ".repeat(n-cn(a)-o);return a+c+t}function kl(e,t,n){let r=Mo(e,Math.max(0,n-2)),o=Math.max(1,n-1-cn(r)),s=ge("border","\u250C\u2500 ")+ge("accent",r)+ge("border",` ${"\u2500".repeat(o)}\u2510`),a=ge("border",`\u2514${"\u2500".repeat(n+2)}\u2518`),c=ge("border","\u2502"),p=t.map(f=>`${c} ${ru(f,n)} ${c}`);return[s,...p,a]}function Tj(e,t,n,r){let o=r?.gap??1,s=r?.leftWidth??Bs(Math.round(n*.38),28,44),a=n-s-o,c=Math.max(e.rows.length,t.rows.length),p=M=>{let j=[...M];for(;j.length<c;)j.push("");return j},f=kl(e.title,p(e.rows),s-4),I=kl(t.title,p(t.rows),a-4),w=" ".repeat(o);return f.map((M,j)=>M+w+(I[j]??ru("",a)))}function yE(e,t,n){switch(e){case"running":return ge(t||n?"accent":"muted","\u25CF");case"failed":return ge("error","\u2717");default:return ge("success","\u2713")}}function bE(e,t,n,r=Date.now(),o=0){return t?r-o<nu?ge("success","\u2713",!0):ge("success","\u2713"):ge(n?"accent":"dim",String(e))}function Co(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 s=o.phase||hE;n.includes(s)||n.push(s)}return n.map((o,s)=>{let a=e.steps.filter(O=>(O.phase||hE)===o).map(O=>({...O,phaseIndex:s})),c=a.filter(O=>O.status!=="running").length,p=a.filter(O=>O.status==="failed").length,f=a.reduce((O,q)=>{let ee=q.endedAt??t;return Math.max(O,ee-q.startedAt)},0),I=-1;for(let O=0;O<a.length;O++){let q=a[O];q.status==="running"&&(I<0||q.startedAt>=a[I].startedAt)&&(I=O)}let w=r.get(o),M=a.length>0&&c===a.length&&p===0,j=M?a.reduce((O,q)=>Math.max(O,q.endedAt??0),0):0;return{title:o,...w?{detail:w}:{},agents:a,done:c,failed:p,outputTokens:a.reduce((O,q)=>O+q.outputTokens,0),elapsedMs:f,allDone:M,finishedAt:j,anchor:I}})}function Sl(e){return e.steps.reduce((t,n)=>t+n.outputTokens,0)}function vj(e){return e.steps.reduce((t,n)=>t+(n.toolCalls??0),0)}function IE(e,t=Date.now()){return Math.max(0,(e.endedAt??t)-e.startedAt)}function Ej(e){return e.steps.length>wj||Sl(e)>kj}function Sj(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],s=n.group.agents[n.group.anchor];return o.startedAt>=s.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 $E(e,t=Date.now()){let n=Co(e,t),r=e.steps.length,o=e.steps.filter(f=>f.status!=="running").length,s=e.steps.filter(f=>f.status==="failed").length,a=[e.name],c=n.find(f=>f.anchor>=0);c?a.push(`${c.title} ${c.done}/${c.agents.length}`):n.length>0&&a.push(`${n[n.length-1].title} done`),a.push(`${o}/${r} agents`),a.push(`${vl(Sl(e))} tok`),a.push(dr(IE(e,t))),s>0&&a.push(`${s} failed`);let p=a.join(" \xB7 ");return Ej(e)?`large workflow \xB7 ${p}`:p}function kE(e,t){if(e.status==="running"&&e.outputTokens===0)return[`idle ${dr(t-e.startedAt)}`,"idle"];let n=vl(e.outputTokens),r=e.toolCalls??0,o=dr((e.endedAt??t)-e.startedAt);return[`${n} tok \xB7 ${r} tools \xB7 ${o}`,`${n} tok \xB7 ${r} tools`,`${n} tok`]}function Tl(e,t,n){if(e.length<=n)return{slice:e,start:0,more:0};let r=Math.max(1,n-1),o=Bs(t-Math.floor(r/2),0,e.length-r),s=e.slice(o,o+r);return{slice:s,start:o,more:e.length-s.length}}function Cj(e,t,n,r,o){let s=`${e.done}/${e.agents.length}`,a=n?ge("accent","\u276F"):" ",c=bE(t+1,e.allDone,n,o,e.finishedAt),p=Math.max(0,r-4-cn(s)),f=cn(e.title)>p?zs(e.title,p,"\u2026"):e.title,I=e.allDone&&o-e.finishedAt<nu,w=ge(I&&!n?"success":n?"accent":"text",f),M=`${a}${c} ${w}`,j=ge(n?"accent":"muted",s);return El(M,j,r,1)}function Lj(e,t,n,r,o,s){let a=t?ge("accent","\u276F"):" ",c=yE(e.status,t,n),p=ge(t?"accent":"text",ru(e.label,r)),f=`${a}${c} ${p}`,I=Math.max(0,o-cn(f)-1),w=kE(e,s).find(j=>cn(j)<=I)??"",M=ge(t?"accent":Mj(e)?"dim":"muted",w);return El(f,M,o,1)}function jj(e,t,n,r){let o=[];return e.forEach((s,a)=>{let p=`${bE(a+1,s.allDone,a===n,r,s.finishedAt)} ${ge(a===n?"accent":"text",s.title)} ${ge("muted",`${s.done}/${s.agents.length}`)}`;o.push(Mo(p,t));let{slice:f,more:I}=Tl(s.agents,0,wE);f.forEach((w,M)=>{let j=yE(w.status,!1,M===s.anchor),O=kE(w,r)[0]??"";o.push(Mo(` ${j} ${ge("text",w.label)} ${ge("muted",O)}`,t))}),I>0&&o.push(Mo(` ${ge("dim",`\u2026+${I} more`)}`,t))}),o}function Fj(e,t,n){let r=n?.now??Date.now(),o=Co(e,r),s=e.steps,a=s.filter(ze=>ze.status!=="running").length,c=s.filter(ze=>ze.status==="failed").length,p=[`${a}/${s.length} agents`,`${vl(Sl(e))} tok`,`${vj(e)} tools`,dr(IE(e,r)),...c>0?[`${c} failed`]:[]].join(" \xB7 "),f=[El(ge("accent",e.name,!0),ge("muted",p),t,2),...e.description?[ge("muted",Mo(e.description,t))]:[]],I=n?.footer?[ge("muted",Mo(n.footerText??Dj(),t))]:[];if(o.length===0)return[...f,...kl("Phases",["(no agents yet)"],Math.max(0,t-4)),...I];let w=Bs(n?.selectedPhase??Sj(o),0,Math.max(0,o.length-1)),M=Bs(Math.round(t*.38),28,44),j=t-M-1-4;if(t<Rj||j<Oj)return[...f,...jj(o,t,w,r),...I];let O=o[w],{slice:q,start:ee,more:me}=Tl(o,w,Pj),xe=q.map((ze,Kt)=>Cj(ze,ee+Kt,ee+Kt===w,M-4,r));me>0&&xe.push(ge("dim",`\u2026+${me} more`));let Te=n?.filter?n.filter(O.agents):O.agents,Be=Te.length?Bs(Math.max(...Te.map(ze=>cn(ze.label))),6,Aj):6,{slice:Ut,more:ye}=Tl(Te,0,n?.agentWindow??wE),re=Ut.map((ze,Kt)=>Lj(ze,!1,Kt===O.anchor,Be,j,r));ye>0&&re.push(ge("dim",`\u2026+${ye} more`));let T=Tj({title:"Phases",rows:xe},{title:`${O.title} \xB7 ${Te.length} agents${n?.filterLabel??""}`,rows:re},t,{leftWidth:M,gap:1});return[...f,...T,...I]}function TE(e,t=[],n=96,r,o){let s=Fj(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 p=Co(e,e.endedAt??Date.now()),f=p[Math.max(0,Math.min(p.length-1,r??0))];for(let I of f?.agents??[])a.add(I.label)}if(a.size===0)return s;let c=[];for(let p of e.steps)if(a.has(p.label)){for(let f of p.tasks??[]){let I=f.status==="completed"?"[x]":f.status==="in_progress"?"[>]":"[ ]";c.push(` ${ge("muted",I)} ${ge("text",f.content)}`)}p.detail&&c.push(` ${ge("dim",p.detail)}`)}return c.length===0?s:[...s.slice(0,-1),...c,s[s.length-1]]}function Dj(){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 gE,ge,wj,kj,nu,Bs,Mo,hE,wE,Pj,Aj,Rj,Oj,Mj,Hs=m(()=>{Ws();gE={text:D.text,muted:D.mute,dim:D.dim,accent:D.accent,success:D.tool,error:D.bad,border:D.line},ge=(e,t,n=!1)=>n?Q(t,gE[e],{bold:!0}):Q(t,gE[e]),wj=25,kj=15e5,nu=420;Bs=(e,t,n)=>Math.max(t,Math.min(n,e)),Mo=(e,t)=>cn(e)>t?zs(e,Math.max(0,t),"\u2026"):e;hE="Workflow";wE=16,Pj=12,Aj=18,Rj=72,Oj=24;Mj=e=>e.status==="running"&&e.outputTokens===0});import{readFileSync as Nj}from"node:fs";import{basename as _j}from"node:path";import{StringEnum as qj}from"@earendil-works/pi-ai";import{defineTool as Uj}from"@earendil-works/pi-coding-agent";function EE(e){vE=e}function Gj(e){let t=e.replace(/^(?:\s+|\/\/[^\n]*\n|\/\*[\s\S]*?\*\/)*/,""),n=/^export\s+const\s+meta\s*=\s*/.exec(t);if(!n)throw new We("a workflow script must start with `export const meta = { name, description }`");let r=e.length-t.length,o=n[0].length,s=0,a=null,c=-1;for(let j=o;j<t.length;j++){let O=t[j];if(a){O==="\\"?j++:O===a&&(a=null);continue}if(O==='"'||O==="'"||O==="`")a=O;else if(O==="{"||O==="[")s++;else if((O==="}"||O==="]")&&(s--,s===0)){c=j+1;break}}if(c===-1)throw new We("meta is not a closed literal object");let p=t.slice(o,c),f=e.slice(r+c).replace(/^\s*;/,"");if(/^\s*(import|export)\b/m.test(f))throw new We("a workflow body must not contain import or export declarations");if(/\bimport\s*\(/.test(f))throw new We("a workflow body must not use dynamic import()");let I;try{I=new Function(`"use strict"; return (${p});`)()}catch(j){throw new We(`meta must be a literal object: ${j instanceof Error?j.message:String(j)}`)}if(typeof I!="object"||I===null)throw new We("meta must be an object");let w=I;if(typeof w.name!="string"||!w.name.trim())throw new We("meta.name is required");if(typeof w.description!="string"||!w.description.trim())throw new We("meta.description is required");let M=Array.isArray(w.phases)?w.phases.filter(j=>typeof j=="object"&&j!==null).map(j=>({title:String(j.title??""),...typeof j.detail=="string"?{detail:j.detail}:{}})).filter(j=>j.title):void 0;return{meta:{name:w.name,description:w.description,...typeof w.whenToUse=="string"?{whenToUse:w.whenToUse}:{},...M?{phases:M}:{}},body:f}}function Wj(e){let t=["agent","parallel","pipeline","phase","log","args","budget"],n=`"use strict"; return (async () => {
|
|
88
88
|
${e}
|
|
89
|
-
})();`,r;try{r=new Function(...t,n)}catch(o){throw new We(`workflow did not compile: ${o instanceof Error?o.message:String(o)}`)}return r}function Bj(e){return e.getLastAssistantText()?.trim()??""}function zj(){return async({prompt:e,agentType:t,effort:n,model:r,isolation:o})=>{let s=qr.get(t)??qr.get("task");if(!s)throw new We(`no agent named ${t}`);let a=o==="worktree"?await
|
|
89
|
+
})();`,r;try{r=new Function(...t,n)}catch(o){throw new We(`workflow did not compile: ${o instanceof Error?o.message:String(o)}`)}return r}function Bj(e){return e.getLastAssistantText()?.trim()??""}function zj(){return async({prompt:e,agentType:t,effort:n,model:r,isolation:o})=>{let s=qr.get(t)??qr.get("task");if(!s)throw new We(`no agent named ${t}`);let a=o==="worktree"?await rE(process.cwd(),t):null,c=await Qm({agent:s.name,effort:n??s.effort,...a?{worktree:a.path}:{}});try{await c.prompt(`${s.prompt}
|
|
90
90
|
|
|
91
91
|
Task:
|
|
92
|
-
${e}`);let p=c.getSessionStats(),f=r??Hj(c);return{text:Bj(c),outputTokens:p.tokens.output,toolCalls:p.toolCalls,...f?{model:f}:{}}}finally{c.dispose(),await a?.remove()}}}function Hj(e){return e.model?.id??e.model?.name}function
|
|
92
|
+
${e}`);let p=c.getSessionStats(),f=r??Hj(c);return{text:Bj(c),outputTokens:p.tokens.output,toolCalls:p.toolCalls,...f?{model:f}:{}}}finally{c.dispose(),await a?.remove()}}}function Hj(e){return e.model?.id??e.model?.name}function SE(e){let t=()=>e??vE;return Uj({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:Vj,executionMode:"sequential",async execute(n,r,o,s,a){let c=r.path?Nj(r.path,"utf8"):r.code??"";if(!c.trim())throw new We("provide code or path");let{meta:p,body:f}=Gj(c);if(r.path){let ye=_j(r.path).replace(/\.(js|mjs|cjs|ts)$/,"");if(ye!==p.name)throw new We(`meta.name "${p.name}" must match the script filename "${ye}"`)}let I=Wj(f),w=Date.now(),M=[],j=0,O=0,q=(ye,re)=>({name:p.name,...p.description?{description:p.description}:{},ok:ye,agents:O,outputTokens:j,startedAt:w,phases:p.phases??[],steps:M,...re?{error:re}:{}}),ee=(ye,re)=>{a.ui.setStatus(Pl,re?void 0:$E(ye)),s?.({content:[],details:q(!1)})},me=ye=>{O=ye.length,j=ye.reduce((re,T)=>re+T.outputTokens,0),M.splice(0,M.length,...ye.map(re=>({label:re.label,phase:re.phase,agent:re.agentType,status:re.status,outputTokens:re.outputTokens,startedAt:re.startedAt,...re.toolCalls!==void 0?{toolCalls:re.toolCalls}:{},...re.model?{model:re.model}:{},...re.endedAt?{endedAt:re.endedAt}:{},...re.detail?{detail:re.detail}:{},...re.tasks?{tasks:re.tasks}:{}}))),ee({name:p.name,...p.description?{description:p.description}:{},phases:p.phases??[],steps:M,startedAt:w},!1)},xe=zj(),Te=lE({invoke:r.agent?Jj(xe,r.agent):xe,budgetTotal:r.budget??null,onProgress:me,...o?{signal:o}:{},...t()?.isPaused?{isPaused:t().isPaused}:{}}),Be=new AbortController,Ut=setTimeout(()=>Be.abort(),Kj);o&&o.addEventListener("abort",()=>Be.abort(),{once:!0}),t()?.onStop?.(()=>Be.abort());try{let ye=await Promise.race([I(Te.agent,Te.parallel,Te.pipeline,Te.phase,Te.log,Te.args,Te.budget),new Promise((T,ze)=>Be.signal.addEventListener("abort",()=>ze(new We("workflow timed out or was aborted"))))]),re=Date.now();return a.ui.setStatus(Pl,void 0),{content:[{type:"text",text:`${p.name}: ${O} agent call(s), ${j} output tokens in ${dr(re-w)}
|
|
93
93
|
|
|
94
|
-
${Yj(ye)}`}],details:{...q(!0),endedAt:re}}}catch(ye){let re=ye instanceof Error?ye.message:String(ye);return a.ui.setStatus(Pl,void 0),{content:[{type:"text",text:`${p.name} failed after ${
|
|
94
|
+
${Yj(ye)}`}],details:{...q(!0),endedAt:re}}}catch(ye){let re=ye instanceof Error?ye.message:String(ye);return a.ui.setStatus(Pl,void 0),{content:[{type:"text",text:`${p.name} failed after ${O} agent call(s): ${re}`}],details:{...q(!1,re),endedAt:Date.now()},isError:!0}}finally{clearTimeout(Ut),t()?.onStop?.(null)}}})}function Jj(e,t){return n=>e({...n,agentType:t})}function Yj(e){if(typeof e=="string")return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}var Pl,vE,Kj,Vj,Al=m(()=>{Dr();Gs();$l();dE();Hs();Pl="workflow",vE=null;Kj=600*1e3;Vj=Y.Object({code:Y.Optional(Y.String({description:"The workflow script source"})),path:Y.Optional(Y.String({description:"Path to a workflow script, instead of code"})),agent:Y.Optional(qj(["scout","task","reviewer"],{description:"Default agent profile for calls"})),budget:Y.Optional(Y.Number({description:"Output-token ceiling for the whole run"}))})});import{Type as Pt}from"@earendil-works/pi-ai";import{defineTool as Xj}from"@earendil-works/pi-coding-agent";var PE,AE=m(()=>{Gs();Gs();PE=Xj({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:Pt.Object({agent:Pt.Optional(Pt.String()),effort:Pt.Optional(Pt.String()),task:Pt.Optional(Pt.String()),tasks:Pt.Optional(Pt.Array(Pt.Object({agent:Pt.Optional(Pt.String()),effort:Pt.Optional(Pt.String()),task:Pt.String()})))}),executionMode:"parallel",async execute(e,t,n,r,o){let s=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}],a=[];for(let p of s)p.task.trim()&&(a.push(await Yv({...p,cwd:o?.cwd})),r?.({content:[],details:{agents:a.map(f=>({id:f.id,agent:f.agent,status:f.status}))}}));if(a.length===0)throw new Error("task or tasks is required");return await Xv(n),{content:[{type:"text",text:a.map(p=>`## ${p.agent}#${p.id} ${p.status}
|
|
95
95
|
${p.result??""}`).join(`
|
|
96
96
|
|
|
97
|
-
`)}],details:{agents:a.map(p=>({id:p.id,status:p.status}))}}}})});function
|
|
98
|
-
`)||void 0}}var
|
|
99
|
-
`)}function _l(e,t){return e.disabled?[]:[...Nl(e).sessions[t]??[]].sort((n,r)=>n.at-r.at)}async function
|
|
100
|
-
`);p=await
|
|
101
|
-
`)){let s=/^Removing\s+(.+)$/.exec(o.trim());s?.[1]&&n.push(s[1])}}catch{}return{ok:!0,output:`restored ${t.prompt||"the checkpoint"}`,removed:n}}async function
|
|
102
|
-
`).filter(Boolean).map(o=>{let[s,...a]=o.split(" ");return`${s?.[0]??"?"} ${a.at(-1)??""}`})}catch{return[]}}async function
|
|
103
|
-
`)[0]??"";return s.length>40?`${s.slice(0,40)}\u2026`:s}default:return
|
|
104
|
-
`))r.startsWith("+")&&!r.startsWith("+++")?t+=1:r.startsWith("-")&&!r.startsWith("---")&&(n+=1);return{additions:t,removals:n}}function Wl(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
|
|
105
|
-
`).find(t=>t.trim())??""}function AF(e,t){let n=typeof e.output=="string"?e.output:t.replace(/\n*Command exited with code \d+\s*$/,""),r=
|
|
106
|
-
`).length:0}function
|
|
107
|
-
`).find(p=>p.trim());return Gr(c??"failed",120)}switch(e){case"read":{let a=o.truncation,c=
|
|
108
|
-
`).find(c=>c.trim());return a?Gr(a,120):"done"}}}function
|
|
97
|
+
`)}],details:{agents:a.map(p=>({id:p.id,status:p.status}))}}}})});function RE(){return e=>{e.on("session_start",()=>{let t=new Set(e.getActiveTools());for(let n of Zj)e.getAllTools().some(r=>r.name===n)&&t.add(n);e.setActiveTools([...t])})}}var Zj,OE=m(()=>{Zj=["grep","find","ls"]});var ME={};Dt(ME,{BUILD_ENTRY:()=>su,openSession:()=>aF});import{join as Qj}from"node:path";import{createAgentSession as eF,createCodemodeExtension as tF,createMcpExtension as nF,DefaultResourceLoader as rF,SessionManager as ou,SettingsManager as oF}from"@earendil-works/pi-coding-agent";function iF(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 aF(e){let t=oF.create(e.cwd,He,{projectTrusted:!0}),n=e.sessionPath?ou.open(e.sessionPath):e.noSession?ou.inMemory(e.cwd):e.continueSession?ou.continueRecent(e.cwd):ou.create(e.cwd),r=(()=>{try{let I=n.getEntries().find(w=>w.type==="custom"&&w.customType===su)?.data?.version;return!I||I===gn?void 0:`this session was written by HowToFix ${I}; you are running ${gn}`}catch{return}})(),o=new rF({cwd:e.cwd,agentDir:He,settingsManager:t,appendSystemPrompt:[xd],additionalSkillPaths:[gr(e.cwd)],extensionFactories:[Ev(),Go(),zd(),Hm(),Cv(),Sv(),Rv(),tF(),nF(),RE()]});await o.reload();let s=await eF({cwd:e.cwd,agentDir:He,settingsManager:t,sessionManager:n,resourceLoader:o,excludeTools:sF().exclude,customTools:[PE,Yd,Xd,Lm,jm,lv,Pv,Av,SE(),Jm,Ym,Xm],thinkingLevel:e.thinking}),a=s.session.model;if(e.model){let f=await s.session.modelRuntime.getAvailable(),I=iF(f,e.model);if(!I)throw s.session.dispose(),new Error(`unknown model '${e.model}'`);(a?.id!==I.id||a.provider!==I.provider)&&(await s.session.setModel(I),a=s.session.model)}if(!e.noSession&&n.getEntries().every(f=>f.type!=="custom"||f.customType!==su))try{n.appendCustomEntry(su,{version:gn})}catch{}let c=a?`${a.provider}/${a.id}`:"no model",p=[yd(s.modelFallbackMessage)].filter(f=>!!f);return a||p.push(`no model configured. run \`howtofix\` and use /login, or edit ${Qj(He,"models.json")}`),{session:s.session,dispose:()=>{fl(),s.session.dispose()},modelLabel:c,note:[r,...p].filter(Boolean).join(`
|
|
98
|
+
`)||void 0}}var su,sF,CE=m(()=>{qo();Hd();Nn();Wo();nc();el();Fm();Um();sl();Ov();Lv();ml();Al();AE();OE();ll();hl();gl();su="howtofix.build",sF=()=>({exclude:process.platform==="win32"?[]:["powershell"]})});import{spawn as mF}from"node:child_process";function uF(e,t,n=2e3){return new Promise(r=>{let o=!1,s=f=>{o||(o=!0,clearTimeout(c),r(f))},a;try{a=mF(e,[...t],{stdio:["ignore","pipe","ignore"]})}catch{s({ok:!1,stdout:""});return}let c=setTimeout(()=>{a.kill("SIGKILL"),s({ok:!1,stdout:""})},n),p=[];a.stdout?.on("data",f=>p.push(f)),a.on("error",()=>s({ok:!1,stdout:""})),a.on("close",f=>{s({ok:f===0,stdout:Buffer.concat(p).toString("utf8")})})})}function Rl(){return process.env.XDG_SESSION_TYPE==="wayland"||(process.env.WAYLAND_DISPLAY?.length??0)>0}async function cF(){let e=[];process.platform==="darwin"?e.push({command:"pbpaste",args:[]}):process.platform==="win32"?e.push({command:"powershell.exe",args:["-NoProfile","-Command","Get-Clipboard -Raw"]}):(Rl()&&(e.push({command:"wl-paste",args:["--no-newline","--type","text/plain;charset=utf-8"]}),e.push({command:"wl-paste",args:["--no-newline","--type","text/plain"]}),e.push({command:"wl-paste",args:["--no-newline"]})),((process.env.DISPLAY?.length??0)>0||!Rl())&&(e.push({command:"xclip",args:["-selection","clipboard","-o"]}),e.push({command:"xsel",args:["--clipboard","--output"]})),e.push({command:"termux-clipboard-get",args:[]}));for(let t of e){let n=await uF(t.command,t.args);if(n.ok&&n.stdout.length>0)return n.stdout}}async function LE(){let e;try{let{getNativeClipboard:r}=await import("@earendil-works/pi-tui");e=r()}catch{e=void 0}if(e)try{let r=await e.getText();if(typeof r=="string"&&r.length>0)return{ok:!0,text:r}}catch{}let t=await cF();return t!==void 0?{ok:!0,text:t}:{ok:!1,reason:`no clipboard tool could read it \u2014 ${Rl()?"install wl-clipboard (wl-paste)":process.platform==="darwin"?"pbpaste should be present on macOS":"install xclip or xsel, or run under a display"}`}}function jE(){return process.platform!=="win32"}var FE=m(()=>{});import{mixColors as pF,styleText as DE}from"@earendil-works/pi-tui";function Vs(e,t,n){let r=KE(n);return r>=1?t:r<=0?e:pF(e,t,r)}function Ml(e,t,n,r){return!Kr||e<=Ol?t:e>=qE?r:Vs(n,r,(e-Ol)/(qE-Ol))}function GE(e,t){return!Kr||t<=0||e<0?1:1-(1-KE(e/t))**3}function WE(e,t){return Kr&&e>=0&&e<t}function Ll(e,t,n=dF,r=400){return!Kr||n<=0||e<0||e>=r?t:Math.min(t,Math.floor(e/n)+1)}function BE(e,t,n=Date.now(),r=1400){if(!Kr||r<=0)return e;let o=n%r/r;return Vs(e,t,o<.5?o*2:(1-o)*2)}function fF(e,t){let n=Math.abs(e-t);return n>=NE?0:Math.ceil((1-n/NE)*UE)/UE}function zE(e,t,n=Date.now()){let r=t.charMs??lF;if(!Kr||e.length===0||r<=0)return DE(e,{fg:t.base},tu);let o=e.length+_E*2,s=n/r%o-_E,a=(M,j)=>DE(M,{fg:Vs(t.base,t.bright,j)},tu),c="",p=0,f=null,I=0,w=0;for(let M of e){let j=fF(w,s);f===null?f=j:j!==f&&(c+=a(e.slice(p,I),f),p=I,f=j),I+=M.length,w+=1}return c+a(e.slice(p),f??0)}var Kr,lF,NE,_E,Ol,qE,UE,KE,iu,Cl,dF,jl=m(()=>{Ws();Kr=process.env.HOWTOFIX_NO_MOTION!=="1",lF=45,NE=5,_E=8,Ol=1e4,qE=6e4,UE=3,KE=e=>e<0?0:e>1?1:e;iu=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,!Kr)return this.value=this.target,this.velocity=0,this.value;n>250&&(this.velocity=0);let o=150,s=2*Math.sqrt(o),a=Math.max(1,Math.ceil(r/.008)),c=r/a;for(let p=0;p<a;p+=1)this.velocity+=(this.target-this.value)*o*c-this.velocity*s*c,this.value+=this.velocity*c;return this.moving||(this.value=this.target,this.velocity=0),this.value}};Cl=260,dF=45});import{execFile as gF,execFileSync as hF}from"node:child_process";import{promisify as xF}from"node:util";import{createHash as VE}from"node:crypto";import{copyFileSync as yF,existsSync as Fl,mkdirSync as au,readFileSync as bF,statSync as IF}from"node:fs";import{dirname as JE,join as jn,resolve as YE}from"node:path";function wF(e){let t=YE(e);for(;;){if(Fl(jn(t,".git")))return!0;let n=JE(t);if(n===t)return!1;t=n}}async function pn(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 kF("git",t,{cwd:e.root,env:n,encoding:"utf8",maxBuffer:8*1024*1024});return r.trim()}function TF(e){return VE("sha1").update(e).digest("hex").slice(0,16)}function XE(e){let t=YE(e).replace(/\/+$/,"")||"/",n=jn($F,TF(t)),r=jn(n,"git"),o={root:t,gitDir:r,metaFile:jn(n,"checkpoints.json"),disabled:!1};return!Fl(jn(r,"HEAD"))&&!wF(t)?(o.disabled=!0,o):(au(n,{recursive:!0}),Fl(jn(r,"HEAD"))||(au(r,{recursive:!0}),hF("git",["init","--quiet","--initial-branch=howtofix"],{env:{...process.env,GIT_DIR:r},stdio:["ignore","ignore","pipe"]})),vF(t,r),o)}function vF(e,t){let n=jn(e,".git","info","exclude");try{if(!IF(n).isFile())return;au(jn(t,"info"),{recursive:!0}),yF(n,jn(t,"info","exclude"))}catch{}}function Nl(e){try{let t=JSON.parse(bF(e.metaFile,"utf8"));if(t?.version===1&&t.sessions)return t}catch{}return{version:1,sessions:{}}}function ZE(e,t){au(JE(e.metaFile),{recursive:!0}),Ze(e.metaFile,`${JSON.stringify(t,null,1)}
|
|
99
|
+
`)}function _l(e,t){return e.disabled?[]:[...Nl(e).sessions[t]??[]].sort((n,r)=>n.at-r.at)}async function QE(e,t,n){if(e.disabled)return null;let r;try{await pn(e,["add","-A","--ignore-errors","--"]),r=await pn(e,["write-tree"])}catch{return null}let s=_l(e,t).find(M=>M.tree===r),a=Date.now(),c=`${a.toString(36)}-${VE("sha1").update(`${r}:${a}`).digest("hex").slice(0,6)}`,p=s?.commit;if(!p){let M=["howtofix checkpoint",`session ${t}`,`created ${new Date(a).toISOString()}`,`prompt ${n.slice(0,200)}`].join(`
|
|
100
|
+
`);p=await pn(e,["commit-tree",r,"-m",M]),await pn(e,["update-ref",`${Dl}/${c}`,p])}let f={id:c,tree:r,commit:p,prompt:n,at:a},I=Nl(e),w=[...I.sessions[t]??[],f];for(let M of w.slice(0,Math.max(0,w.length-HE)))try{await pn(e,["update-ref","-d",`${Dl}/${M.id}`])}catch{}return I.sessions[t]=w.slice(-HE),ZE(e,I),f}async function eS(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 pn(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 pn(e,["clean","-fd"]);for(let o of r.split(`
|
|
101
|
+
`)){let s=/^Removing\s+(.+)$/.exec(o.trim());s?.[1]&&n.push(s[1])}}catch{}return{ok:!0,output:`restored ${t.prompt||"the checkpoint"}`,removed:n}}async function tS(e,t){if(e.disabled)return[];try{await pn(e,["add","-A","--ignore-errors","--"]);let n=await pn(e,["write-tree"]);return n===t.tree?[]:(await pn(e,["diff-tree","-r","--name-status","--no-commit-id",t.tree,n])).split(`
|
|
102
|
+
`).filter(Boolean).map(o=>{let[s,...a]=o.split(" ");return`${s?.[0]??"?"} ${a.at(-1)??""}`})}catch{return[]}}async function nS(e,t){if(e.disabled)return;let n=Nl(e);for(let r of n.sessions[t]??[])try{await pn(e,["update-ref","-d",`${Dl}/${r.id}`])}catch{}delete n.sessions[t],ZE(e,n)}var $F,Dl,HE,kF,rS=m(()=>{Nn();zn();$F=jn(He,"rewind"),Dl="refs/howtofix",HE=100;kF=xF(gF)});function Gl(e=90){let t=Math.floor(Date.now()/e)%ql.length;return ql[t]??ql[0]}function Gr(e,t){let n=e.replace(/\s+/g," ").trim();return n.length>t?`${n.slice(0,Math.max(1,t-1))}\u2026`:n}function Re(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 EF(e,t=160){if(!e||typeof e!="object")return"";try{let n=JSON.stringify(e);return n&&n!=="{}"?Gr(n,t):""}catch{return""}}function SF(e,t){switch(e){case"read":{let n=Re(t,"path")??"",r=[Re(t,"offset"),Re(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 Re(t,"path")??"";case"bash":case"powershell":return Re(t,"command")??"";case"grep":{let n=Re(t,"pattern")??"",r=Re(t,"path");return r?`${n} in ${r}`:n}case"find":case"glob":{let n=Re(t,"pattern")??Re(t,"glob")??"",r=Re(t,"path");return r?`${n} in ${r}`:n}case"ls":return Re(t,"path")??".";case"task":return Re(t,"agent")??"task";case"ask":return Re(t,"question")??"";case"web_search":return Re(t,"query")??"";case"web_fetch":return Re(t,"url")??"";case"lsp":{let n=Re(t,"action")??"lsp",r=Re(t,"file")??"",o=Re(t,"line");return o?`${n} ${r}:${o}`:`${n} ${r}`}case"think":return"private";case"todo":{let n=Re(t,"op")??"view",r=Re(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=Re(t,"op")??"list",r=Re(t,"key");return r?`${n} ${r}`:n}case"workflow":{let n=Re(t,"path");if(n)return n;let r=Re(t,"code")??"",o=/export\s+const\s+meta\s*=\s*\{[\s\S]*?name\s*:\s*["'`]([^"'`]+)/.exec(r)?.[1];if(o)return o;let s=r.trim().split(`
|
|
103
|
+
`)[0]??"";return s.length>40?`${s.slice(0,40)}\u2026`:s}default:return EF(t)}}function Lo(e,t,n=100){let r=e.charAt(0).toUpperCase()+e.slice(1),o=Gr(SF(e,t),n);return o?`${oS} ${r}(${o})`:`${oS} ${r}`}function PF(e){let t=0,n=0;for(let r of e.split(`
|
|
104
|
+
`))r.startsWith("+")&&!r.startsWith("+++")?t+=1:r.startsWith("-")&&!r.startsWith("---")&&(n+=1);return{additions:t,removals:n}}function Wl(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 Ys(e){let t=e?.details;return t&&typeof t=="object"?t:{}}function Bl(e){let t=e?.structuredContent;return t&&typeof t=="object"?t:{}}function sS(e){let t=e.exit_code;return typeof t=="number"&&Number.isFinite(t)?t:void 0}function iS(e){return e.trim().split(`
|
|
105
|
+
`).find(t=>t.trim())??""}function AF(e,t){let n=typeof e.output=="string"?e.output:t.replace(/\n*Command exited with code \d+\s*$/,""),r=Js(n);return r>0?` (${r} line${r===1?"":"s"})`:""}function Js(e){let t=e.trim();return t?t.split(`
|
|
106
|
+
`).length:0}function uu(e,t,n){let r=Wl(t),o=Ys(t),s=Bl(t);if(n){let a=sS(s);if(a!==void 0&&(e==="bash"||e==="powershell"))return`exit ${a}`;let c=r.trim().split(`
|
|
107
|
+
`).find(p=>p.trim());return Gr(c??"failed",120)}switch(e){case"read":{let a=o.truncation,c=Js(r.replace(/\n*\[[^\]]*\]\s*$/,"")),p=c===0?"empty":`${c} line${c===1?"":"s"}`;return a?.truncated?`${p} (truncated from ${a.totalLines??"?"})`:p}case"edit":{let a=typeof o.diff=="string"?o.diff:"";if(!a)return"applied";let{additions:c,removals:p}=PF(a);return`+${c} / -${p}`}case"write":{let a=Js(r);return a>0?`written (${a} lines)`:"written"}case"bash":case"powershell":{let a=sS(s);if(a===void 0)return r.trim()?Gr(iS(r),120):"done";let c=AF(s,r);return a===0?`exit 0${c}`:`exit ${a}`}case"grep":{let a=Js(r);return a===0?"no matches":`${a} match${a===1?"":"es"}`}case"web_search":{let a=typeof o.count=="number"?o.count:Js(r);return a===0?"no results":`${a} result${a===1?"":"s"}`}case"web_fetch":return`${typeof o.chars=="number"?o.chars:r.length} chars`;case"lsp":{let a=typeof o.count=="number"?o.count:void 0;return typeof o.error=="string"?Gr(o.error,120):a===void 0?Gr(iS(r),120):`${a} location${a===1?"":"s"}`}case"todo":{let a=o.todos??[];if(!Array.isArray(a)||a.length===0)return"list cleared";let c=a.filter(f=>f.status==="completed").length,p=a.filter(f=>f.status==="pending"||f.status==="in_progress").length;return`${c}/${a.length} done, ${p} open`}case"context":{let a=o.notes,c=a?Object.keys(a).length:0;return c===0?"no notes":`${c} note${c===1?"":"s"} held`}case"workflow":{let a=typeof o.agents=="number"?o.agents:0,c=typeof o.outputTokens=="number"?o.outputTokens:0,p=Array.isArray(o.steps)?o.steps.filter(I=>I.status==="failed").length:0;if(typeof o.error=="string")return`failed after ${a} agent(s)`;let f=typeof o.startedAt=="number"&&typeof o.endedAt=="number"?`, ${dr(o.endedAt-o.startedAt)}`:"";return`${a} agent(s), ${c} tokens${f}${p>0?`, ${p} failed`:""}`}default:{let a=r.trim().split(`
|
|
108
|
+
`).find(c=>c.trim());return a?Gr(a,120):"done"}}}function aS(e,t){let n=Ys(t);if(e==="edit"&&typeof n.diff=="string")return n.diff.split(`
|
|
109
109
|
`).filter(r=>r.length>0).slice(0,12);if(e==="bash"||e==="powershell"){let r=Bl(t);return(typeof r.output=="string"?r.output:Wl(t).replace(/\n*Command exited with code \d+\s*$/,"")).trimEnd().split(`
|
|
110
|
-
`).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(s=>`${o[s.status??"pending"]??"[ ]"} ${s.content??""}`)}return e==="workflow"?(n.steps??[]).map(s=>{let a=s.status==="running"?"\u25B8":s.status==="failed"?"\xD7":"\u2713",c=s.phase?`${s.phase} \xB7 `:"";return`${a} ${c}${s.label??"agent"}`}).slice(-6):[]}function
|
|
111
|
-
`).filter(c=>c.length>0).slice(0,
|
|
112
|
-
`),a=s.slice(0,
|
|
110
|
+
`).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(s=>`${o[s.status??"pending"]??"[ ]"} ${s.content??""}`)}return e==="workflow"?(n.steps??[]).map(s=>{let a=s.status==="running"?"\u25B8":s.status==="failed"?"\xD7":"\u2713",c=s.phase?`${s.phase} \xB7 `:"";return`${a} ${c}${s.label??"agent"}`}).slice(-6):[]}function mS(e,t){let n=Ys(t);if(e==="edit"&&typeof n.diff=="string")return n.diff.split(`
|
|
111
|
+
`).filter(c=>c.length>0).slice(0,mu);let r=Bl(t),s=(typeof r.output=="string"?r.output:Wl(t).replace(/\n*Command exited with code \d+\s*$/,"")).trimEnd().split(`
|
|
112
|
+
`),a=s.slice(0,mu);return s.length>mu&&a.push(`\u2026 ${s.length-mu} more line(s)`),a}var oS,Ul,Kl,ql,mu,zl=m(()=>{Hs();oS="\u25CF",Ul="\u2514",Kl="\u22EF",ql=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"];mu=400});import{Markdown as RF,wrapTextWithAnsi as OF}from"@earendil-works/pi-tui";function uS(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 MF(e){return e.content.filter(t=>t.type==="toolCall").map(t=>({name:t.name,arguments:t.arguments}))}function pu(e){let t=[];for(let n of e)if(n.role==="user"){let r=uS(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=uS(n.content).trim(),o=MF(n);r?t.push({id:`a-${n.timestamp}`,kind:n.stopReason==="error"?"error":"assistant",title:n.errorMessage?"failed":"fix",body:n.errorMessage?`${n.errorMessage}
|
|
113
113
|
|
|
114
|
-
${r}`:r}):n.errorMessage&&t.push({id:`e-${n.timestamp}`,kind:"error",title:"failed",body:n.errorMessage}),o.forEach((s,a)=>{t.push({id:`c-${n.timestamp}-${a}`,kind:"tool",title:"tool",body:
|
|
114
|
+
${r}`:r}):n.errorMessage&&t.push({id:`e-${n.timestamp}`,kind:"error",title:"failed",body:n.errorMessage}),o.forEach((s,a)=>{t.push({id:`c-${n.timestamp}-${a}`,kind:"tool",title:"tool",body:Lo(s.name,s.arguments)})})}else n.role==="toolResult"&&t.push({id:`r-${n.toolCallId}`,kind:"result",title:n.toolName,body:uu(n.toolName,{content:n.content},n.isError)});return t}function cS(e,t,n){return OF(e,Math.max(8,t)).map(r=>Q(r,n))}function CF(e){let t=e.body||" ",n=Xs.get(e.id);if(n)return n.text!==t&&(n.component.setText(t),n.text=t),n.component;let r=new RF(t,0,0,fE);return Xs.set(e.id,{text:t,component:r}),r}var Xs,Hl,cu,pS=m(()=>{jl();Ws();zl();Xs=new Map;Hl=class{constructor(t){this.item=t}item;invalidate(){}shade(t){let n=Date.now()-(this.item.born??0);return Vs(D.dim,t,GE(n,Cl))}render(t){let n=this.item.body;if(this.item.kind==="user")return["",...cS(`> ${n}`,t,this.shade(D.user))];if(this.item.kind==="tool")return[Q(n,this.shade(D.tool))];if(this.item.kind==="result"){let o=n.startsWith("exit ")&&n!=="exit 0";if(this.item.panel)return["",...this.item.panel(t),...n?[Q(` ${Ul} ${n}`,o?D.bad:D.mute)]:[]];let s=[];this.item.call&&s.push(Q(this.item.call,this.shade(D.tool)));let a=` ${Ul} ${n}`;if(s.push(Q(a,o?D.bad:this.shade(D.mute))),this.item.expanded===!0&&(this.item.full?.length??0)>0){let I=Q(` ${this.item.full.length} line(s) \xB7 ctrl+e to collapse`,D.dim);s.push(Q(` ${Kl}`,D.dim));for(let w of this.item.full){let M=w.startsWith("+")?D.tool:w.startsWith("-")?D.bad:D.dim;s.push(Q(` ${w}`,M))}return s.push(I),s}let p=this.item.detail??[],f=Ll(Date.now()-(this.item.born??0),p.length);for(let I of p.slice(0,f)){let w=I.startsWith("+")?D.tool:I.startsWith("-")?D.bad:D.dim;s.push(Q(` ${I}`,this.shade(w)))}return(this.item.full?.length??0)>0&&s.push(Q(` ${Kl} ${this.item.full.length} line(s) \xB7 ctrl+e to expand`,D.dim)),s}if(this.item.kind==="error"||this.item.kind==="note"){let o=this.item.kind==="error"?D.bad:D.mute;return["",...cS(n,t,this.shade(o))]}return["",...CF(this.item).render(Math.max(8,t-2))]}},cu=class{items=[];status="";scrollOffset=0;scrollAnchor;settledOffset=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 WE(r,Cl)?!0:(n.detail?.length??0)>Ll(r,n.detail?.length??0)})}render(t){if(Xs.size>this.items.length){let o=new Set(this.items.map(s=>s.id));for(let s of Xs.keys())o.has(s)||Xs.delete(s)}let n=[];for(let o of this.items)o.born??=Date.now(),n.push(...new Hl(o).render(t));this.status&&n.push(Q(this.status,D.mute));let r=this.viewportHeight;if(r>0&&n.length>r){let o=n.length-r;this.scrollOffset!==this.settledOffset&&(this.scrollAnchor=void 0);let s=this.scrollAnchor,a;if(s!==void 0){let c=n.length-s;c>=0&&c<=o?a=c:a=Math.max(0,Math.min(this.scrollOffset,o))}else a=Math.max(0,Math.min(this.scrollOffset,o));return s===void 0&&(this.scrollOffset=a),this.settledOffset=this.scrollOffset,a===0?this.scrollAnchor=void 0:this.scrollAnchor===void 0&&(this.scrollAnchor=n.length-a),n.slice(o-a,o-a+r)}return n}}});function lt(e,t){return`${t}${e}${dS}`}function jF(e){return e>=85?LF:e>=70?gS:fS}function hS(e,t,n,r){let o=lt(`[${e}]`,Vl),s=lt(`${FF} ${t}`,Fn),a=lt(n,gS),c=r?` ${lt("git:(",lS)}${lt(r.replace(/^git:\(/,"").replace(/\)$/,""),Vl)}${lt(")",lS)}`:"";return`${o}${lt(" \u2502 ",Fn)}${s}${lt(" \u2502 ",Fn)}${a}${c}`}function xS(e,t,n){if(!t)return e;let r=n===void 0?t:`${t} ${lt(xE(n),Fn)}`;return`${lt(r,Vl)} ${lt("\u2502",Fn)} ${e}`}function yS(e,t){let n=Number.isFinite(e)?Math.min(100,Math.max(0,e)):0,r=Math.round(n/10),o=jF(n),s=`${o}${"\u2588".repeat(r)}${Fn}${"\u2591".repeat(10-r)}${dS}`,a=lt(`${Math.round(n)}%`,o),c=t?`${lt(" \u2502 ",Fn)}${t}`:"";return`${lt("Context",Fn)} ${s} ${a}${c}`}function bS(e,t,n){let r=n===null?"":lt(` ${n}ms`,Fn);return`${lt("Cubence",Fn)} ${lt(t?`${t} ${e}`:e,fS)}${r}`}var dS,Fn,LF,fS,gS,lS,Vl,FF,Jl=m(()=>{Hs();dS="\x1B[0m",Fn="\x1B[2m",LF="\x1B[31m",fS="\x1B[32m",gS="\x1B[33m",lS="\x1B[35m",Vl="\x1B[36m";FF="\u2726"});import{mkdirSync as DF,readFileSync as $S}from"node:fs";import{homedir as NF}from"node:os";import{dirname as _F,join as qF}from"node:path";function IS(e){return e/1e6}function KF(){try{let e=JSON.parse($S(qF(NF(),".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 GF(){try{let e=JSON.parse($S(Yl,"utf8"));return!e.data||typeof e.cachedAt!="number"?void 0:{data:e.data,cachedAt:e.cachedAt}}catch{return}}function Zs(e){let t=`$${e.balanceDollar.toFixed(2)}`,n=e.hasSubscription?`5h $${e.fiveHourUsedDollar.toFixed(2)}/$${e.fiveHourLimitDollar.toFixed(2)} bal`:"";return bS(t,n,e.latencyMs)}async function wS(){let e=GF();if(e&&Date.now()-e.cachedAt<UF)return Zs(e.data);let t=KF();if(!t)return e?Zs(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?Zs(e.data):void 0;let o=await r.json(),s=o.subscription_window?.five_hour?.limit??0,a={balanceDollar:o.normal_balance?.amount_dollar??0,hasSubscription:s>0,fiveHourUsedDollar:IS(o.subscription_window?.five_hour?.used??0),fiveHourLimitDollar:IS(s),latencyMs:Date.now()-n};return DF(_F(Yl),{recursive:!0}),Ze(Yl,JSON.stringify({data:a,cachedAt:Date.now()})),Zs(a)}catch{return e?Zs(e.data):void 0}}var Yl,UF,kS=m(()=>{Nn();Jl();zn();Yl=Cu,UF=18e4});function TS(){return{}}function vS(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 WF(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 ES(e,t,n=Date.now()){return e.prompt?`? ${e.prompt}`:e.note?`* ${e.note}`:e.run?`${t} ${e.run.label} \xB7 ${WF(n-e.run.since)}`:e.tally?e.tally:""}var SS=m(()=>{});import{spawn as BF}from"node:child_process";function zF(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 PS(e,t=process.platform){let n=zF(t);return n?new Promise(r=>{try{let o=BF(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 AS=m(()=>{});function HF(e){return[Mu,gr(e)]}function RS(e,t){let n=e.trim(),r=/^\/skill:([^\s]+)(?:\s+([\s\S]*))?$/.exec(n)??/^\/skill\s+([^\s]+)(?:\s+([\s\S]*))?$/.exec(n);if(!r)return;let o=r[1]??"";if(!t.includes(o))return;let s=(r[2]??"").trim();return s?`/skill:${o} ${s}`:`/skill:${o}`}function OS(e){if(e.length===0){let[t,n]=HF(process.cwd());return["no skills loaded.",`put a SKILL.md in ${t}`,`or in ${n}`,"invoke with /skill:<name>"].join(`
|
|
115
115
|
`)}return e.map(t=>{let n=t.disableModelInvocation?" (invoke only)":"";return`${t.name}${n}
|
|
116
116
|
${t.description}
|
|
117
117
|
${t.filePath}`}).join(`
|
|
118
|
-
`)}var
|
|
119
|
-
`).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
|
|
120
|
-
`)||"nothing to do"),U()};a(!0),s("session start"),e.note&&r.items.push({id:"note",kind:"note",title:"note",body:e.note}),r.items.push(...
|
|
118
|
+
`)}var MS=m(()=>{Nn()});import{mkdirSync as VF}from"node:fs";import{join as JF}from"node:path";import{matchesKey as lu}from"@earendil-works/pi-tui";function LS(){return{selectedPhase:0,filter:"all",paused:!1,expanded:!1,follow:!0}}function jS(e){if(lu(e,"up"))return"up";if(lu(e,"down"))return"down";if(lu(e,"enter"))return"enter";if(lu(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 CS(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 YF(e){let t=Xl.indexOf(e);return Xl[(t+1)%Xl.length]}function FS(e,t,n){switch(t){case"up":return CS(e,n,-1);case"down":return CS(e,n,1);case"enter":return{...e,expanded:!e.expanded};case"filter":return{...e,filter:YF(e.filter)};case"pause":return{...e,paused:!e.paused};default:return e}}function DS(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 NS(e){return e==="all"?"":` \xB7 ${e}`}function qS(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 XF(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 US(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=XF(e.name);if(!n)return{ok:!1,reason:`"${e.name}" is not a usable filename, so the script was not written`};let r=JF(t,`${n}.js`);try{VF(t,{recursive:!0}),Ze(r,e.code)}catch(o){return{ok:!1,reason:o instanceof Error?o.message:String(o)}}return{ok:!0,path:r}}var Xl,_S,KS=m(()=>{zn();Xl=["all","running","failed","done"];_S="ctrl+f"});function GS(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 WS=m(()=>{});var oP={};Dt(oP,{Dock:()=>hu,Hud:()=>fu,PinnedBlock:()=>gu,approvalDetail:()=>nP,orderModelsForDefault:()=>eP,pickerPanel:()=>tP,runWorkbench:()=>wD,workflowPanel:()=>rP,workflowPanelFromRun:()=>ei,workflowRunOf:()=>xu});import{execFile as ZF}from"node:child_process";import{promisify as QF}from"node:util";import{existsSync as eD,mkdirSync as tD,readFileSync as nD}from"node:fs";import{basename as rD,join as BS,resolve as oD}from"node:path";import{copyToClipboard as sD,SessionManager as iD}from"@earendil-works/pi-coding-agent";import{CombinedAutocompleteProvider as zS,Container as aD,Editor as mD,matchesKey as Lt,ProcessTerminal as uD,ScrollView as cD,KeybindingsManager as YS,setKeybindings as XS,TUI_KEYBINDINGS as ZS,SelectList as pD,TuiAltScreen as lD,truncateToWidth as Qs,VStack as dD,visibleWidth as du,wrapTextWithAnsi as fD}from"@earendil-works/pi-tui";import{TreeSelectorComponent as gD,initTheme as hD}from"@earendil-works/pi-coding-agent";import{getKeybindings as HS}from"@earendil-works/pi-tui";function xD(e){if(typeof e!="object"||e===null)return;let t=e[QS];return typeof t=="function"?t.call(e):void 0}async function JS(e){try{let{stdout:t}=await ed("git",["-C",e,"rev-parse","--abbrev-ref","HEAD"],{encoding:"utf8"}),n=t.trim();if(!n||n==="HEAD")return"";let{stdout:r}=await ed("git",["-C",e,"status","--porcelain"],{encoding:"utf8"});return`git:(${n}${r.trim()?"*":""})`}catch{return null}}function eP(e){let t=n=>{if(bD.test(n))return 100;let r=yD.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 tP(e,t,n,r=!1,o=[]){let s=Math.max(24,n),a=s-4,c=(ee,me)=>{let xe=du(ee)>a?Qs(ee,a,"\u2026"):ee,Te=`${xe}${" ".repeat(Math.max(0,a-du(xe)))}`;return`\u2502 ${me?me(Te):Te} \u2502`},p="\u2500".repeat(s-2),f=[c(` ${t}`),...e.render(a).map(ee=>c(ee))],I=o.flatMap(ee=>ee===""?[""]:fD(ee,a)),w=I.length>0?[c(""),...I.map(ee=>c(ee,me=>Q(me,D.mute)))]:[];if(!r)return["",`\u250C${p}\u2510`,...f,...w,`\u2514${p}\u2518`];let M=BE(D.line,D.warn,Date.now(),1400),j=Q("\u2502",M),O=(ee,me)=>Q(`${ee}${p}${me}`,M),q=[...f,...w].map(ee=>`${j}${ee.slice(1,-1)}${j}`);return["",O("\u250C","\u2510"),...q,O("\u2514","\u2518")]}function nP(e,t){let n=t.split(`
|
|
119
|
+
`).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 jo(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,o=[...e.state.messages].reverse().find(s=>s.role==="assistant")?.usage?.totalTokens;return!n||typeof o!="number"||!Number.isFinite(o)||n.contextWindow<=0?0:Math.min(100,Math.round(o/n.contextWindow*100))}function Ql(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"],["sync","re-sync models from howtofix.id"],["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","go back to an earlier message (Esc Esc)"],["review","ask the agent to review the diff"],["tools","list active tools"],["skills","list loaded skills"],["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 xu(e,t){if(e!=="workflow")return;let n=Ys(t);if(!(typeof n.name!="string"||!Array.isArray(n.steps)))return n}function rP(e,t){let n=xu(e,t);return n?ei(n):void 0}function ei(e,t,n=!1){return r=>TE(e,[],r,t?.selectedPhase,t?ID(e,t,n):void 0)}function ID(e,t,n){return{filter:r=>DS(r,t.filter),footerText:qS(t,e.endedAt===void 0,n),filterLabel:NS(t.filter),drill:t.expanded}}function $D(){let e=new YS(ZS,{"tui.altScreen.pageUp":[],"tui.altScreen.pageDown":[],"tui.altScreen.halfPageUp":[],"tui.altScreen.halfPageDown":[],"tui.altScreen.top":[],"tui.altScreen.bottom":[]});XS(e)}async function wD(e){let t=new uD,n=new lD(t,!0,void 0,{mouse:!0}),r=new cu,o=new fu(e.cwd,e.modelLabel),s=l=>{let h=Date.now();(async()=>{try{let b=dn(),y=await QE(b,T.getSessionStats().sessionId,l);y&&h>=Gt&&(Fo=y,Gt=h)}catch{}})()},a=(l=!1)=>{!l&&!o.live||JS(e.cwd).then(h=>{h!==null&&(o.git=h,U())})},c=new mD(n,VS,{paddingX:1}),p=new Map,f=(l,h)=>{h===void 0?p.delete(l):typeof h=="function"?p.set(l,h):p.set(l,()=>h)},I=()=>Math.max(20,t.columns),w,M=0,j=LS(),O,q=null,ee=!1,me,xe=!1,Te,Be=()=>{!O||!ee||f("workflow",l=>ei(O,j,xe)(l))},Ut=()=>{O&&(me=O.name),ee=!1,xe=!1,f("workflow",void 0)};EE({onStop:l=>{q=l},isPaused:()=>j.paused});let ye=l=>{if(me===l.name)return;w=l;let h=l.endedAt??Date.now();M=Math.max(M,h+nu),O=l,ee=!0,f("workflow",b=>ei(l,j,xe)(b))},re=new hu(c,o),T=e.session,ze=!1,Kt,dn=()=>Kt??=XE(e.cwd),Fo,tn="",Gt=0,qe,jt=()=>{let l=new Set(["session_info","usage","label","context_edit","custom","model_change","thinking_level_change"]),h=[],b=y=>{for(let k of y)l.has(k.entry.type)||h.push(k.entry.id),b(k.children)};return b(T.sessionManager.getTree()),h},Do=!1,iP=()=>{if(Do)return;Do=!0;let l=HS().getResolvedBindings();XS(new YS(ZS,{...l,"app.tree.foldOrUp":["alt+left","ctrl+left"],"app.tree.unfoldOrDown":["alt+right","ctrl+right"],"app.tree.editLabel":["shift+l"],"app.tree.toggleLabelTimestamp":["shift+t"],"app.message.copy":["ctrl+x"],"app.tree.filter.default":["alt+0"],"app.tree.filter.noTools":["alt+1"],"app.tree.filter.userOnly":["alt+2"],"app.tree.filter.labeledOnly":["alt+3"],"app.tree.filter.all":["alt+4"],"app.tree.filter.cycleForward":["alt+f"],"app.tree.filter.cycleBackward":["alt+shift+f"]}))},td=!1,aP=()=>{td||(td=!0,hD())},nd=()=>{let l=T.sessionManager.getTree();if(l.length===0){S("rewind","nothing to rewind to yet");return}dn().disabled&&S("rewind","conversation rewind only \u2014 this directory is not a git repository"),aP(),iP();let h=Math.max(8,Math.floor(t.rows*.6)),b=new gD(l,T.sessionManager.getLeafId(),h*2,y=>{yu(),mP(y)},()=>yu());if(!b.getTreeList().getSelectedNode()){S("rewind","nothing to rewind to yet");return}qe=b,qe.focused=!0,f("rewind",y=>qe?.render(y)??[]),U()},yu=()=>{qe=void 0,f("rewind",void 0),U()},mP=async l=>{let h=dn(),y=T.getUserMessagesForForking().findIndex(x=>x.entryId===l),k=y>=0?_l(h,T.getSessionStats().sessionId)[y]:void 0,_=k?(await tS(h,k)).length:0;if(_===0){await rd(l,void 0,"conversation");return}Ft(`Rewind to this point? ${_} file(s) differ`,[{value:"both",label:"conversation and code",description:`drop the messages after this point and restore ${_} file(s)`},{value:"conversation",label:"conversation only",description:"drop the messages after this point, leave the files alone"},{value:"code",label:"code only",description:`restore ${_} file(s), keep the conversation`}],x=>{rd(l,k,x)})},rd=async(l,h,b)=>{let y=[];if((b==="both"||b==="conversation")&&!T.isStreaming)try{let k=await T.navigateTree(l);if(k.cancelled){S("rewind","conversation rewind cancelled");return}y.push("conversation rewound"),r.items=pu(T.state.messages),k.editorText&&(c.setText(k.editorText),y.push("prompt restored to the editor"))}catch(k){fn(`conversation rewind failed: ${k instanceof Error?k.message:String(k)}`);return}if((b==="both"||b==="code")&&h){let k=await eS(dn(),h);if(!k.ok){fn(`code rewind failed: ${k.output}`);return}y.push(k.output),k.removed.length>0&&y.push(`removed ${k.removed.length} file(s)`),a()}S("rewind",y.join(`
|
|
120
|
+
`)||"nothing to do"),U()};a(!0),s("session start"),e.note&&r.items.push({id:"note",kind:"note",title:"note",body:e.note}),r.items.push(...pu(T.state.messages)),o.percent=jo(T),o.abandonAnimations(),o.thinking=T.thinkingLevel,c.setAutocompleteProvider(new zS(Ql(T),e.cwd)),wS().then(l=>{l&&(o.cubence=l,n.requestRender())});let Dn=null,od="",sd=!1,id=[],No,bu=()=>{},U=()=>{bu(),n.requestRender()},le=(l,h)=>{o.activity=vS(o.activity,l,h)},ti=new Map,Iu=new Set,uP=()=>[...ti].map(([l,h])=>`${Iu.has(l)?"!":"\u2713"} ${l} \xD7${h}`).join(" | "),cP=()=>{let l=uP();le("tally",l||void 0)},Ft=(l,h,b,y,k=!1,_=[])=>{let x=new pD(h,8,VS.selectList);x.onSelect=P=>{Dn=null,No=void 0,b(P.value)},x.onCancel=()=>{Dn=null,No=void 0,y?.(),U()},No=()=>x.onCancel?.(),od=l,sd=k,id=_,Dn=x,U()},S=(l,h)=>{r.items.push({id:`cmd-${Date.now()}-${r.items.length}`,kind:"note",title:l,body:h}),le("tally",void 0),U()},fn=l=>{r.items.push({id:`err-${Date.now()}-${r.items.length}`,kind:"error",title:"failed",body:l}),le("tally",void 0),U()};ec((l,h)=>{let{promise:b,resolve:y}=Promise.withResolvers();return Ft(l,[{value:"allow",label:"allow"},{value:"deny",label:"deny"}],k=>y(k==="allow"),()=>y(!1),!0,nP(l,h)),b});let $u=new Map,ad=l=>{let h=GS({select:(b,y)=>{let{promise:k,resolve:_}=Promise.withResolvers();return Ft(b,y.map(x=>({value:x,label:x})),_,()=>_(void 0)),k},confirm:(b,y)=>{let{promise:k,resolve:_}=Promise.withResolvers();return Ft(`${b} \u2014 ${y}`,[{value:"yes",label:"yes"},{value:"no",label:"no"}],x=>_(x==="yes"),()=>_(!1)),k},input:b=>{let{promise:y,resolve:k}=Promise.withResolvers();return le("prompt",b),U(),ln=_=>{ln=void 0,le("prompt",void 0),k(_),U()},y},notify:(b,y)=>{y==="error"?fn(b):S("mcp",b)},setStatus:(b,y)=>{y===void 0?$u.delete(b):$u.set(b,y),le("note",[...$u.values()].join(" | ")||void 0),U()},setWidget:(b,y)=>{f(b,y),U()}});l.bindExtensions({uiContext:h,mode:"print",onError:b=>fn(`${b.event}: ${b.error}`)}).catch(b=>fn(b instanceof Error?b.message:String(b)))};ad(T);let Wr=new aD,pP={invalidate:()=>r.invalidate(),render:l=>{let h=Wr.render(Math.max(20,l)).length;return r.viewportHeight=Math.max(1,Math.max(8,t.rows)-h),r.render(l)},handleMouse:l=>{if(gd(l))return Su(),{handled:!0};let h=l.type==="wheel"?l.wheelDelta??0:0;if(h!==0)return r.scrollOffset=Math.max(0,r.scrollOffset-h*3),U(),{handled:!0}}},lP=new cD(pP,{follow:"none",overscroll:"contain"}),ni=new dD([{component:lP,grow:1,shrink:1},{component:Wr,grow:0,shrink:0,basis:"auto"}]),md="",dP=()=>`${Dn?"picker":"dock"}|${[...p.keys()].join(",")}`;bu=()=>{let l=dP();if(l===md)return;md=l,Wr.clear();for(let b of p.values())Wr.addChild(new gu(b));let h=Dn;if(h){let b=od,y=sd,k=id;Wr.addChild({render:_=>tP(h,b,_,y,k),invalidate:()=>{}})}else Wr.addChild(re);ni.invalidate()},bu();let ud={focused:!1,invalidate(){r.invalidate(),re.invalidate(),Dn?.invalidate(),ni.invalidate()},[QS]:()=>xD(ni),render:l=>ni.render(l),handleMouse(l){if(gd(l))return Su(),{handled:!0}},handleInput(l){c.handleInput(l)}};n.setLayoutRoot(ud),n.setFocus(ud);let bt=0,Bn="",wu=!1,fr=!1,ku,Br="",cd=0,_o=!1,ri=Date.now(),oi=!1,si=new Map,pd=l=>{if(l.type==="agent_start"||l.type==="turn_start")l.type==="agent_start"&&Cd(),o.live||o.beginRun(),Bn="",fr=!1,_o=!1,ri=Date.now(),Br="";else if(l.type==="message_update"&&l.assistantMessageEvent.type==="thinking_delta"){fr=!0,Br===""&&(cd=Date.now()),Br+=l.assistantMessageEvent.delta;let h=`think-${bt}`,b=r.items.find(k=>k.id===h),y=Br.split(`
|
|
121
121
|
`).slice(-6).join(`
|
|
122
|
-
`);b?b.body=y:r.items.push({id:h,kind:"note",title:"thinking",body:y})}else if(l.type==="message_update"&&l.assistantMessageEvent.type==="thinking_end"){let h=`think-${
|
|
123
|
-
this freed almost nothing \u2014 the window may be too small for this work`:""}`:`${_}k tokens \xB7 older turns summarized`}else k="nothing to compact";h?(h.title=y,h.body=k,h.live=!1):r.items.push({id:`compact-${
|
|
124
|
-
`)}catch{return`could not write ${b}; the models were not added`}let K=!1;try{await T.modelRuntime.refresh(),K=!0}catch{K=!1}let
|
|
125
|
-
`)),U();return}if(!
|
|
126
|
-
`)),U()})().catch(h=>{
|
|
127
|
-
`));return}if(h==="init"){let x=
|
|
128
|
-
`));return}if(h==="diff"){let x=async
|
|
129
|
-
|
|
130
|
-
`+await x(["diff","--","."]),[
|
|
131
|
-
|
|
132
|
-
`,2),
|
|
133
|
-
|
|
134
|
-
`)||"working tree clean");return}if(h==="copy"){let x=[...T.state.messages].reverse().find(K=>K.role==="assistant"),
|
|
135
|
-
`))}catch(K){
|
|
136
|
-
`):"no tools enabled");return}if(h==="rewind"){nd();return}if(h==="undo"){if(!await
|
|
137
|
-
`));return}if(h==="plan"){if(
|
|
138
|
-
plan file: ${
|
|
139
|
-
${
|
|
122
|
+
`);b?b.body=y:r.items.push({id:h,kind:"note",title:"thinking",body:y})}else if(l.type==="message_update"&&l.assistantMessageEvent.type==="thinking_end"){let h=`think-${bt}`,b=r.items.find(y=>y.id===h);if(b){let y=Math.max(1,Math.round((Date.now()-cd)/1e3));b.title="thought",b.body=`${y}s \xB7 ${Br.length} chars of reasoning`}Br=""}else if(l.type==="message_update"&&l.assistantMessageEvent.type==="text_delta"){fr=!0,Bn+=l.assistantMessageEvent.delta;let h=`live-${bt}`,b=r.items.find(y=>y.id===h);b?b.body=Bn:r.items.push({id:h,kind:"assistant",title:"HowToFix",body:Bn})}else if(l.type==="tool_execution_start"){si.set(l.toolCallId,l.args),fr=!1,_o=!1,ri=Date.now();let h=`tool-${l.toolCallId}`,b=Lo(l.toolName,l.args),y=r.items.find(k=>k.id===h);if(y?(y.kind="tool",y.title=l.toolName,y.body=b,y.live=!0):r.items.push({id:h,kind:"tool",title:l.toolName,body:b,live:!0}),ku=l.toolName,l.toolName==="task"){let k=Qt.filter(_=>_.status==="queued"||_.status==="running");le("note",k.map(_=>`${_.agent} ${_.status}`).join(" | ")||"agent running")}}else if(l.type==="tool_execution_update"){let h=rP(l.toolName,l.partialResult);if(h){let b=`tool-${l.toolCallId}`,y=r.items.find(_=>_.id===b);y?y.panel=h:r.items.push({id:b,kind:"tool",title:l.toolName,body:Lo(l.toolName,si.get(l.toolCallId)),panel:h,live:!0});let k=xu(l.toolName,l.partialResult);k&&me!==k.name&&ye(k),U()}}else if(l.type==="tool_execution_end"){o.percent=jo(T);let h=r.items.find(E=>E.id===`tool-${l.toolCallId}`);h&&(h.live=!1,h.body=Lo(l.toolName,si.get(l.toolCallId))),si.delete(l.toolCallId),ku=void 0,fr=!0,_o=!1,ti.set(l.toolName,(ti.get(l.toolName)??0)+1),l.isError&&Iu.add(l.toolName),cP();let b=aS(l.toolName,l.result),y=mS(l.toolName,l.result),k=xu(l.toolName,l.result),_=k?ei(k):void 0;k&&me!==k.name&&ye(k);let x=r.items.find(E=>E.id===`tool-${l.toolCallId}`),P=uu(l.toolName,l.result,l.isError);x?(x.kind="result",x.call=x.body,x.body=P,x.live=!1,b.length>0&&(x.detail=b),y.length>0&&(x.full=y),_&&(x.panel=_)):r.items.push({id:`tool-${l.toolCallId}`,kind:"result",title:l.toolName,body:P,...b.length>0?{detail:b}:{},...y.length>0?{full:y}:{},..._?{panel:_}:{}}),(l.toolName==="bash"||l.toolName==="powershell"||l.toolName==="edit"||l.toolName==="write")&&a()}else if(l.type==="compaction_start"){fr=!0;let h=l.reason==="manual"?"on request":"context is nearly full",b=r.items.find(_=>_.id===`compact-${bt}`),y="compacting context",k=`${h} \xB7 summarizing the older turns`;b?(b.title=y,b.body=k):r.items.push({id:`compact-${bt}`,kind:"note",title:y,body:k,live:!0}),le("note","compacting context")}else if(l.type==="compaction_end"){let h=r.items.find(_=>_.id===`compact-${bt}`),b=l.result,y="compacted",k;if(l.aborted)k="cancelled";else if(l.errorMessage)k=`failed: ${l.errorMessage}`;else if(b){let _=Math.round(b.tokensBefore/1e3),x=b.estimatedTokensAfter!==void 0?Math.round(b.estimatedTokensAfter/1e3):void 0,P=b.estimatedTokensAfter!==void 0?b.tokensBefore-b.estimatedTokensAfter:void 0,E=P!==void 0&&P<2e3;k=x!==void 0?`${_}k \u2192 ${x}k tokens \xB7 older turns summarized${E?`
|
|
123
|
+
this freed almost nothing \u2014 the window may be too small for this work`:""}`:`${_}k tokens \xB7 older turns summarized`}else k="nothing to compact";h?(h.title=y,h.body=k,h.live=!1):r.items.push({id:`compact-${bt}`,kind:"note",title:y,body:k}),o.percent=jo(T),le("note",void 0)}else if(l.type==="message_end"&&l.message.role==="assistant"){let h=r.items.find(b=>b.id===`live-${bt}`);h&&(h.id=`done-${bt}`),bt+=1,Bn="",o.percent=jo(T)}else if(l.type==="agent_settled"){if(o.live=!1,s(tn),tn="",le("run",void 0),wu){let h=r.items.find(b=>b.id===`live-${bt}`);h?(h.id=`stopped-${bt}`,h.title="stopped",h.body=Bn.trim()||"(no output)",h.live=!1):r.items.push({id:`stopped-${bt}`,kind:"note",title:"stopped",body:"run cancelled"}),bt+=1,Bn="",S("stopped","run cancelled by Esc"),wu=!1}o.percent=jo(T),JS(e.cwd).then(h=>{h!==null&&(o.git=h,U())}),c.disableSubmit=!1}else l.type==="thinking_level_changed"?o.thinking=l.level:l.type==="auto_retry_start"&&le("note",`retry ${l.attempt}/${l.maxAttempts}`);U()},Tu=T.subscribe(pd),ld=setInterval(()=>{let l=w!==void 0&&Date.now()<M;if((oi||T.isStreaming||o.settling()||r.entering()||Dn||l)&&U(),(oi||T.isStreaming)&&!fr&&!_o&&Date.now()-ri>TD){_o=!0;let h=ku,b=Math.round((Date.now()-ri)/1e3);le("note",h?`${h} has been running for ${b}s \u2014 it may be blocked; esc cancels`:`no answer yet after ${b}s \u2014 the provider may be stalled; ctrl+c cancels`),U()}},kD);ld.unref?.();let dd=async l=>{No?.(),No=void 0,Tu(),Kt&&nS(Kt,T.getSessionStats().sessionId),Fo=void 0,Gt=0,T.dispose(),T=l.session,bt=0,Bn="",r.items=[],r.scrollOffset=0,l.note&&r.items.push({id:"note",kind:"note",title:"note",body:l.note}),r.items.push(...pu(T.state.messages)),o.model=l.modelLabel.split("/").at(-1)||"no-model",o.thinking=T.thinkingLevel,o.percent=jo(T),o.abandonAnimations(),le("tally",void 0),le("run",void 0),c.setAutocompleteProvider(new zS(Ql(T),e.cwd)),c.disableSubmit=!1,ad(T),Tu=T.subscribe(pd),U()},ii=()=>{ze||(ze=!0,clearInterval(ld),Tu(),T.dispose(),n.stop(),process.stdout.write("\x1B[0m"),process.exit(0))},fd=l=>{r.items.push({id:`you-${Date.now()}`,kind:"user",title:"you",body:l}),le("tally",void 0),ti.clear(),Iu.clear(),le("run","thinking"),o.beginRun(),U(),c.disableSubmit=!1;let h=Wu(l,e.cwd);tn=l,oi=!0;let b=T.isStreaming?T.prompt(h,{streamingBehavior:"steer"}):T.prompt(h);oi=!1,b.catch(y=>fn(y instanceof Error?y.message:String(y)))},vu=l=>{let h=l.trim();if(h){if(ln){let b=ln;ln=void 0,c.setText(""),b(h);return}if(c.setText(""),c.addToHistory(h),h.startsWith("!")){let b=h.slice(1).trim();if(!b)return;r.items.push({id:`sh-${Date.now()}`,kind:"tool",title:"$",body:b}),le("run","shell"),U(),T.executeBash(b,y=>{le("run",`shell \xB7 ${y.length} bytes`),U()}).then(y=>{let k=y.output.trim();r.items.push({id:`sh-out-${Date.now()}`,kind:y.exitCode===0?"result":"error",title:`exit ${y.exitCode??"?"}`,body:k||"(no output)"}),le("tally",void 0),U()}).catch(y=>fn(y instanceof Error?y.message:String(y)));return}if(h.startsWith("/")){fP(h);return}fd(h)}};c.onSubmit=vu;let Eu=0,Su=()=>{LE().then(l=>{l.ok?c.insertTextAtCursor(l.text):S("paste",l.reason),U()}).catch(l=>{S("paste",`could not read the clipboard: ${l instanceof Error?l.message:String(l)}`),U()})},gd=l=>jE()&&l.type==="press"&&l.button==="right";n.addInputListener(l=>{if(qe){if(Lt(l,"escape"))return yu(),{consume:!0};let b=HS(),y=b.matches(l,"tui.select.up"),k=b.matches(l,"tui.select.down");if(y||k){let x=qe.getTreeList().getSelectedNode()?.entry.id,P=jt(),E=x===void 0?-1:P.indexOf(x);if(y?E===0:E===P.length-1)return U(),{consume:!0}}return qe.handleInput(l),U(),{consume:!0}}if(ee&&O&&Lt(l,"escape"))return xe?(xe=!1,S("workflow","panel keys off \u2014 the editor has the keyboard")):j.expanded?(j.expanded=!1,S("workflow","collapsed the drill-in")):(Ut(),S("workflow","panel unpinned; the run is still in the transcript")),Be(),U(),{consume:!0};if(Dn)return Dn.handleInput(l),U(),{consume:!0};if(Lt(l,"escape")){if(T.isStreaming)return wu=!0,T.abort(),le("note","stopping"),U(),{consume:!0};let b=Date.now();if(c.getText().length===0&&b-Eu<600)return Eu=0,nd(),{consume:!0};Eu=b;return}if(Lt(l,"ctrl+c"))return T.isStreaming?(T.abort(),le("note","stopping"),U()):c.getText().length>0?(c.setText(""),le("note","draft cleared \u2014 ctrl+c again quits"),U()):ii(),{consume:!0};if(Lt(l,"ctrl+d")&&c.getText().length===0)return ii(),{consume:!0};let h=Math.max(1,r.viewportHeight-1);if(Lt(l,"pageUp"))return r.scrollOffset+=h,U(),{consume:!0};if(Lt(l,"pageDown"))return r.scrollOffset=Math.max(0,r.scrollOffset-h),U(),{consume:!0};if(Lt(l,"home"))return r.scrollOffset=Number.MAX_SAFE_INTEGER,U(),{consume:!0};if(Lt(l,"end"))return r.scrollOffset=0,U(),{consume:!0};if(Lt(l,"ctrl+v"))return Su(),{consume:!0};if(Lt(l,"ctrl+l"))return r.scrollOffset=0,n.scrollToBottom(),U(),{consume:!0};if(Lt(l,"ctrl+e")){let b=[...r.items].reverse().find(y=>(y.full?.length??0)>0);return b?(b.expanded=b.expanded!==!0,U(),{consume:!0}):(S("expand","nothing to expand in this transcript yet"),{consume:!0})}if(Lt(l,"ctrl+o")&&!T.isStreaming)return r.items=[{id:"cleared",kind:"note",title:"bench",body:"screen cleared. session history is still stored."}],U(),{consume:!0};if(Lt(l,_S)&&ee&&O)return xe=!xe,S("workflow",xe?"panel keys active \u2014 Esc gives the keyboard back":"panel keys off \u2014 the editor has the keyboard"),Be(),U(),{consume:!0};if(xe&&ee&&O){let b=jS(l);if(b){let y=Co(O,Date.now());if(b==="stop")return q?(q(),q=null,S("workflow","stopping the run \u2014 in-flight agents resolve as null")):S("workflow","the run has already finished"),{consume:!0};if(b==="save"){let k=US(Te,Lu);return S("workflow",k.ok?`saved ${k.path}`:k.reason),U(),{consume:!0}}return Object.assign(j,FS(j,b,y)),Be(),U(),{consume:!0}}}});let Pu=l=>{let h=b=>{le("prompt",`API key for ${b}. Paste it, then press enter.`),U();let y=ln;ln=k=>{ln=y;let _=k.trim();if(!_){le("prompt",void 0),U();return}T.modelRuntime.setRuntimeApiKey(b,_).then(()=>S("login",`saved API key for ${b}`),x=>S("login",x instanceof Error?x.message:String(x)))}};if(l){h(l);return}T.modelRuntime.getAvailable().then(b=>{let y=[...new Set(b.map(k=>k.provider))].sort();if(y.length===0){S("login","no providers are configured; pass one explicitly, e.g. /login nrimo");return}Ft("Login",y.map(k=>({value:k,label:k})),h)},b=>S("login",b instanceof Error?b.message:String(b)))},hd=async(l,h)=>{let b=BS(He,"models.json"),y,k=!1;try{y=JSON.parse(nD(b,"utf8"))}catch(Ru){if(!(Ru instanceof Error&&"code"in Ru&&Ru.code==="ENOENT"))return`could not read ${b}; the models were not added`;y={providers:{}},k=!0}(!y.providers||typeof y.providers!="object")&&(y.providers={});let _=y.providers[l];_||(_=Du(),y.providers[l]=_,k=!0);let x=Array.isArray(_.models)?_.models:[],P=Uu(x,h),E=pi(qu(x,h));_.models=E.models;try{tD(He,{recursive:!0}),Ze(b,`${JSON.stringify(y,null,2)}
|
|
124
|
+
`)}catch{return`could not write ${b}; the models were not added`}let K=!1;try{await T.modelRuntime.refresh(),K=!0}catch{K=!1}let ot=E.changed>0?`, repaired ${E.changed}`:"",st=K?"":"; restart the CLI to see them all",At=k?` (created ${b})`:"";return P===0?`all ${h.length} models were already configured${ot}${At}${st}`:`added ${P} model(s) to "${l}"${ot}${At}${st}`},Au=l=>{(async()=>{if(!l){let x=await PS(ui);S("connect",["connect your howtofix.id account:",` 1. ${x?"the token page is opening in your browser":`open ${ui}`}`," 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 a local client can receive, so the","token is how this CLI signs in. The token is verified before it is","stored."].join(`
|
|
125
|
+
`)),U();return}if(!_u(l)){S("connect","that does not look like a howtofix token; the Console issues tokens that start with sk-");return}le("note",`connecting to howtofix.id (${ci(l)})`),U();let h=await li(l);if(!h.ok){le("note",void 0),S("connect",h.message),U();return}await T.modelRuntime.setRuntimeApiKey("howtofix",l);let b=await hd("howtofix",h.models),y=!!T.model&&T.model?.provider!==void 0&&o.model!=="unknown",k,_;if(!y)try{let x=(await T.modelRuntime.getAvailable()).filter(K=>Vr(K.provider)),E=eP(x.map(K=>K.id)).slice(0,4);for(let K of E){if(!(await Ku(K,l)).ok)continue;let st=x.find(At=>At.id===K);if(st){await T.setModel(st),o.model=st.id,k=`${st.provider}/${st.id}`;break}}k||(_=E.length>0?`none of the first ${E.length} models answered (${E[0]} did not)`:"the account lists no chat model")}catch(x){_=x instanceof Error?x.message:String(x)}le("note",void 0),S("connect",[`connected ${ci(l)} \u2014 ${h.message}`,b,k?`using ${k} (change it with /model)`:`pick a model with /model, then send a prompt${_?` (auto-select failed: ${_})`:""}`].join(`
|
|
126
|
+
`)),U()})().catch(h=>{le("note",void 0),S("connect",h instanceof Error?h.message:String(h)),U()})},fP=async l=>{let[h,...b]=l.slice(1).split(/\s+/),y=b.join(" ");if(h==="quit"||h==="exit"){ii();return}if(h==="help"){S("help",Ql(T).map(x=>`/${x.name} ${x.description??""}`).join(`
|
|
127
|
+
`));return}if(h==="init"){let x=BS(e.cwd,"AGENTS.md");if(eD(x)&&y!=="force"){S("init",`AGENTS.md already exists at ${x}. run /init force to overwrite.`);return}Ze(x,bd),S("init",`wrote ${x}; asking the agent to fill it in`),await T.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"){Pu(y);return}if(h==="connect"){if(y.trim()){Au(y.trim());return}Au(""),le("prompt","paste your howtofix.id token, then press enter"),U();let x=ln;ln=P=>{ln=x,le("prompt",void 0),Au(P.trim())};return}if(h==="sync"){let x=new Set((await T.modelRuntime.getAvailable()).map(At=>At.provider).filter(At=>Vr(At))),P=Uo.find(At=>x.has(At));if(!P){S("sync","no howtofix.id account is connected; run /connect first");return}le("note",`re-syncing ${P} from howtofix.id`),U();let K=(await T.modelRuntime.getAuth(P))?.auth?.apiKey;if(!K){le("note",void 0),S("sync",`${P} has no usable key; run /connect to sign in again`),U();return}let ot=await li(K);if(!ot.ok){le("note",void 0),S("sync",ot.message),U();return}let st=await hd(P,ot.models);le("note",void 0),S("sync",st),await T.modelRuntime.refresh(),U();return}if(h==="logout"){let x=await T.modelRuntime.getAvailable(),P=[...new Set(x.map(E=>E.provider))].sort();if(P.length===0){S("logout","no providers are configured");return}Ft("Logout",P.map(E=>({value:E,label:E})),E=>{T.modelRuntime.logout(E).then(()=>S("logout",`logged out ${E}`),K=>S("logout",K instanceof Error?K.message:String(K)))});return}if(h==="providers"){let x=await T.modelRuntime.getAvailable(),P=[...new Set(x.map(E=>E.provider))].sort();P.sort((E,K)=>Number(Vr(K))-Number(Vr(E))),Ft("Providers",P.map(E=>({value:E,label:E})),E=>{let K=T.modelRuntime.getModels(E);if(K.length===0){Pu(E);return}Ft(E,K.map(ot=>({value:ot.id,label:ot.id})),ot=>{let st=K.find(At=>At.id===ot);st&&T.setModel(st).then(()=>{o.model=st.id,S("providers",`${E}/${st.id}`)},()=>Pu(E))})});return}if(h==="name"){if(!y){S("name","usage: /name <session name>");return}T.setSessionName(y),S("name",`session name: ${y}`);return}if(h==="stats"){let x=T.getSessionStats(),P=T.getContextUsage(),E=K=>Number.isFinite(K)?String(K):"\u2014";S("stats",[`session ${x.sessionId}`,x.sessionFile?`file ${x.sessionFile}`:"not persisted",`messages ${E(x.totalMessages)} (user ${E(x.userMessages)}, assistant ${E(x.assistantMessages)}, tools ${E(x.toolCalls)})`,`tokens in ${E(x.tokens.input)} out ${E(x.tokens.output)} cache ${E(x.tokens.cacheRead)}/${E(x.tokens.cacheWrite)}`,`cost $${Number.isFinite(x.cost)?x.cost.toFixed(4):"\u2014"}`,P?`context ${P.percent===null||!Number.isFinite(P.percent)?"?":`${Math.round(P.percent)}%`} of ${P.contextWindow}`:"context unknown"].join(`
|
|
128
|
+
`));return}if(h==="diff"){let x=async st=>{try{let{stdout:At}=await ed("git",st,{cwd:e.cwd,encoding:"utf8"});return At.trim()}catch{return""}},P=await x(["diff","--stat"])+`
|
|
129
|
+
|
|
130
|
+
`+await x(["diff","--","."]),[E="",K=""]=P.split(`
|
|
131
|
+
|
|
132
|
+
`,2),ot=nE(K);S("diff",[E.trim(),ot].filter(Boolean).join(`
|
|
133
|
+
|
|
134
|
+
`)||"working tree clean");return}if(h==="copy"){let x=[...T.state.messages].reverse().find(K=>K.role==="assistant"),E=(Array.isArray(x?.content)?x.content:[]).filter(K=>K.type==="text").map(K=>K.text).join("");if(!E){S("copy","nothing to copy");return}try{await sD(E),S("copy",`copied ${E.length} characters`)}catch(K){S("copy",K instanceof Error?K.message:String(K))}return}if(h==="export"){let x=r.items.filter(K=>K.body.trim().length>0);if(x.length===0){S("export","nothing to export yet \u2014 the transcript is empty");return}let P=oD(e.cwd,y||`howtofix-session-${Date.now()}.md`),E=[`# ${It} session`,"",`model ${o.model}`,""];for(let K of x)E.push(`## ${K.title||K.kind}`,"",K.body,"");try{Ze(P,E.join(`
|
|
135
|
+
`))}catch(K){S("export",`could not write ${P}: ${K instanceof Error?K.message:String(K)}`);return}S("export",`wrote ${P}`);return}if(h==="agents"){let[x="",...P]=y.split(/\s+/).filter(Boolean),E=P.join(" ").trim();if(x&&E){S("agents",await Jv(x,E));return}S("agents",x?Il(x):bl());return}if(h==="new"){let x=await e.reopen({noSession:!1});await dd(x),S("new","started a new session");return}if(h==="resume"){let x=await iD.list(e.cwd);if(x.length===0){S("resume","no saved sessions for this folder");return}Ft("Resume session",x.slice(0,30).map(P=>({value:P.path,label:P.name||`${P.id.slice(0,8)} ${P.firstMessage.slice(0,40)}`,description:`${P.modified.toISOString().slice(0,16)} ${P.messageCount} messages`})),P=>{e.reopen({sessionPath:P}).then(dd,E=>fn(E instanceof Error?E.message:String(E)))});return}if(h==="model"){let x=await T.modelRuntime.getAvailable(),P=y?x.find(E=>`${E.provider}/${E.id}`===y||E.id===y):void 0;if(!y){Ft("Select model",x.map(E=>({value:`${E.provider}/${E.id}`,label:E.id,description:E.provider})),E=>{let K=x.find(ot=>`${ot.provider}/${ot.id}`===E);K&&T.setModel(K).then(()=>{o.model=K.id,S("model",`model ${E}`)})});return}if(!P){S("model",`unknown model ${y}`);return}await T.setModel(P),o.model=P.id,S("model",`model ${P.provider}/${P.id}`);return}if(h==="thinking"){if(!y){Ft("Thinking level",Zl.map(x=>({value:x,label:x})),x=>{T.setThinkingLevel(x),o.thinking=x,S("thinking",`thinking ${x}`)});return}if(!Zl.includes(y)){S("thinking",`thinking: ${Zl.join(", ")}`);return}T.setThinkingLevel(y),o.thinking=y,S("thinking",`thinking ${y}`);return}if(h==="compact"){try{await T.compact(y||void 0),S("compact","session compacted")}catch(x){S("compact",x instanceof Error?x.message:String(x))}return}if(h==="approval"){let x=P=>{Qu(P),S("approval",xi[P])};if(!y){Ft("Approval mode",Jr.map(P=>({value:P,label:P,description:xi[P]})),P=>x(P));return}if(!Jr.includes(y)){S("approval",`modes: ${Jr.join(", ")}`);return}x(y);return}if(h==="tools"){let x=T.getActiveToolNames().sort();S("tools",x.length?x.join(`
|
|
136
|
+
`):"no tools enabled");return}if(h==="rewind"){nd();return}if(h==="undo"){if(!await eu(e.cwd)){S("undo","not a git repository");return}let x=await eE(e.cwd);S("undo",x.ok?`undone: ${x.output}`:`undo failed: ${x.output}`),a(!0);return}if(h==="commit"){if(!eu(e.cwd)){S("commit","not a git repository");return}if(!await Zv(e.cwd)){S("commit","nothing to commit");return}let x=y||`howtofix: session update ${new Date().toISOString().slice(0,16)}`,P=await Qv(e.cwd,x);S("commit",P.ok?P.output:`commit failed: ${P.output}`),a(!0);return}if(h==="review"){if(!(await tE(e.cwd)).trim()){S("review","no changes to review");return}vu("Review the uncommitted changes. Report concrete issues with file evidence. Do not edit files.");return}if(h==="workflow"){if(y.trim()==="clear"){Ut(),S("workflow","cleared the pinned workflow panel");return}if(!O){S("workflow","no workflow run in this session yet");return}let x=Co(O,Date.now()),P=x[j.selectedPhase];S("workflow",[`panel ${ee?"pinned above the editor":"unpinned"}`,`phase ${j.selectedPhase+1}/${x.length}: ${P?.title??"(none)"}`,`filter: ${j.filter}${j.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(`
|
|
137
|
+
`));return}if(h==="plan"){if($v()||Wm().state==="pending"){Oo(bv(Wm())),S("plan","plan mode off \u2014 edits are allowed again");return}Oo(yv(Wm())),S("plan",`plan mode armed \u2014 send your next prompt to start planning
|
|
138
|
+
plan file: ${Iv()??"(unknown)"}`);return}if(h==="goal"){let x=y.trim();if(!x){S("goal",Nm(_m()));return}let{goal:P,error:E}=tl(_m(),"set",x,void 0,void 0);if(E){fn(E);return}un(P),await T.sendCustomMessage({customType:cr,content:x,display:!1,details:P}),S("goal",`goal set
|
|
139
|
+
${Nm(P)}`);return}if(h==="session"){let x=T.model;S("session",x?`${x.provider}/${x.id}`:"no model");return}if(h==="skills"){S("skills",OS(T.resourceLoader.getSkills().skills));return}let k=RS(l,T.resourceLoader.getSkills().skills.map(x=>x.name));if(k){fd(k);return}let _=T.extensionRunner.getCommand(h??"");if(_){try{await _.handler(y,T.extensionRunner.createCommandContext())}catch(x){fn(x instanceof Error?x.message:String(x))}return}S("command",`/${h??""} is not available in this screen yet`)};Jd((l,h)=>{let{promise:b,resolve:y}=Promise.withResolvers();return Ft(l,h.map(k=>({value:k,label:k})),y,()=>y("cancelled")),b}),process.on("SIGTERM",ii),t.setTitle(`${It} ${gn}`),$D(),n.start(),n.requestRender(!0),e.initialPrompt&&vu(e.initialPrompt),await new Promise(()=>{})}var VS,Zl,QS,ed,fu,gu,hu,yD,bD,ln,kD,TD,sP=m(()=>{qo();FE();jl();rS();Bu();pS();Ws();kS();Jl();Gs();nc();zl();SS();Hs();Al();Gu();AS();Nn();MS();KS();$l();Wo();zu();Um();sl();WS();zn();VS={borderColor:()=>"",selectList:{selectedPrefix:e=>Q(e,D.accent),selectedText:e=>Q(e,D.text,{bold:!0}),description:e=>Q(e,D.mute),scrollInfo:e=>Q(e,D.dim),noMatch:e=>Q(e,D.mute)}},Zl=["off","minimal","low","medium","high","xhigh","max"],QS=Symbol.for("@earendil-works/pi-tui/layout-node");ed=QF(ZF);fu=class{folder;model;git;percent=0;meter=new iu(0);activity=TS();live=!1;activitySince=Date.now();thinking="medium";cubence="";constructor(t,n){this.folder=rD(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=hS(this.model,this.thinking,this.folder,this.git),s=[Qs(`${xS(o,this.live?Gl():"",this.live?this.waitedMs():void 0)} ${yS(r,this.cubence)}`,t)],a=Tv();a&&s.push(Qs(Q(a,D.warn),t));let c=mv(_m());c&&s.push(Qs(Q(c,D.accent),t));let p=ES(this.activity,Gl(),n),f=this.live?zE(p,{base:Ml(this.waitedMs(),D.mute,D.warn,D.bad),bright:D.text,charMs:45},n):Q(p,Ml(this.waitedMs(),D.mute,D.warn,D.bad));return s.push(Qs(f,t)),s}},gu=class{constructor(t){this.draw=t}draw;render(t){return this.draw(t)}invalidate(){}},hu=class{constructor(t,n){this.editor=t;this.hud=n}editor;hud;focused=!1;invalidate(){this.editor.invalidate()}render(t){let n=Math.max(10,t-4),r=this.editor.render(n).filter(c=>du(c)>0),o=r.length>0?r:[""],s="\u2500".repeat(Math.max(0,t-2)),a=o.map(c=>{let p=Math.max(0,n-du(c));return`\u2502 ${c}${" ".repeat(p)} \u2502`});return[`\u250C${s}\u2510`,...a,`\u2514${s}\u2518`,...this.hud.render(t)]}handleInput(t){this.editor.handleInput(t)}},yD=["deepseek","qwen","claude","gpt-5","gpt-4","gemini","glm","mimo","kimi","llama"],bD=/(image|embedding|embed|whisper|tts|audio|video|rerank|moderation|dall-e|stable-diffusion|sora)/i;kD=1e3/30,TD=45e3});qo();var Id={off:!0,minimal:!0,low:!0,medium:!0,high:!0,xhigh:!0,max:!0},$d={suggest:!0,"auto-edit":!0,"full-auto":!0};function ai(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 wd(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 s=r[o]??"";if(s==="--"){n.push(...r.slice(o+1));break}if(s==="-h"||s==="--help")t.help=!0;else if(s==="-v"||s==="--version")t.version=!0;else if(s==="-p"||s==="--print")t.print=!0;else if(s==="-c"||s==="--continue")t.continueSession=!0;else if(s==="--no-session")t.noSession=!0;else if(s==="-r"||s==="--resume")t.continueSession=!0;else if(s==="--session"||s.startsWith("--session="))t.sessionPath=ai(r,o,"--session");else if(s==="-m"||s==="--model"||s.startsWith("--model="))t.model=ai(r,o,"--model");else if(s==="--thinking"||s.startsWith("--thinking="))t.thinking=ai(r,o,"--thinking");else if(s==="--approval"||s.startsWith("--approval="))t.approval=ai(r,o,"--approval");else{if(s.startsWith("-"))throw new Error(`unknown option ${s}`);n.push(s)}}if(t.thinking&&!Id[t.thinking])throw new Error(`thinking must be one of: ${Object.keys(Id).join(", ")}`);if(t.approval&&!$d[t.approval])throw new Error(`approval must be one of: ${Object.keys($d).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 Ou(){return`${It} ${gn}
|
|
140
140
|
coding agent. layout is a workbench, not a chat log.
|
|
141
141
|
|
|
142
142
|
usage:
|
|
@@ -179,7 +179,7 @@ a line starting with ! runs in the project shell.
|
|
|
179
179
|
|
|
180
180
|
config and sessions live in ~/.howtofix/agent. connect your howtofix.id account
|
|
181
181
|
with /connect (it opens the token page), or /login for another provider's key.
|
|
182
|
-
`}
|
|
183
|
-
${
|
|
184
|
-
`)?
|
|
185
|
-
`);let q=M.session.state.messages.at(-1);q?.role==="assistant"&&((q.stopReason==="error"||q.stopReason==="aborted"||q.errorMessage)&&(process.exitCode=1),process.exitCode===1&&q.errorMessage&&console.error(`${
|
|
182
|
+
`}qo();Nn();function vD(){try{return{cwd:process.cwd()}}catch{return{error:"the current directory no longer exists (it was deleted while the shell stayed in it). cd to a directory that exists, or pass one on the command line."}}}function ED(){process.stdout.on("error",e=>{throw e.code==="EPIPE"&&process.exit(0),e})}async function SD(){ED(),ju();let e=vD();if("error"in e){console.error(`${It}: ${e.error}`),process.exitCode=1;return}let t=e.cwd,{repairGatewayModels:n,ensureGatewaySettings:r}=await Promise.resolve().then(()=>(Gu(),Rd)),{AGENT_DIR:o}=await Promise.resolve().then(()=>(Nn(),kd)),s=n(o);s>0&&console.error(`${It}: repaired ${s} howtofix model(s) that the gateway would have rejected`),r(o)&&console.error(`${It}: set httpIdleTimeoutMs in settings.json so a stalled provider recovers instead of hanging`);let a;try{a=wd(process.argv.slice(2))}catch(O){let q=O instanceof Error?O.message:String(O);console.error(`${It}: ${q}
|
|
183
|
+
${Ou()}`),process.exitCode=2;return}if(a.help){console.log(Ou());return}if(a.version){console.log(`${It} ${gn}`);return}if(a.print&&!a.prompt){console.error(`${It}: --print needs a prompt`),process.exitCode=2;return}let{expandFileReferences:c}=await Promise.resolve().then(()=>(Bu(),Od)),{isApprovalMode:p,setApprovalMode:f}=await Promise.resolve().then(()=>(Wo(),Bd)),{openSession:I}=await Promise.resolve().then(()=>(CE(),ME));f(a.approval&&p(a.approval)?a.approval:"full-auto");let w=O=>I({cwd:t,model:a.model,thinking:a.thinking,continueSession:O.continueSession??!1,noSession:O.noSession??!1,sessionPath:O.sessionPath}),M=await w({continueSession:a.continueSession,sessionPath:a.sessionPath,noSession:a.noSession||a.print});if(a.print){M.note&&console.error(M.note);try{await M.session.prompt(c(a.prompt,t));let O=M.session.getLastAssistantText()??"";process.stdout.write(O.endsWith(`
|
|
184
|
+
`)?O:`${O}
|
|
185
|
+
`);let q=M.session.state.messages.at(-1);q?.role==="assistant"&&((q.stopReason==="error"||q.stopReason==="aborted"||q.errorMessage)&&(process.exitCode=1),process.exitCode===1&&q.errorMessage&&console.error(`${It}: ${q.errorMessage}`))}finally{M.dispose()}return}if(!process.stdin.isTTY||!process.stdout.isTTY){console.error(`${It}: interactive mode needs a terminal. use --print for pipes.`),M.dispose(),process.exitCode=2;return}let{runWorkbench:j}=await Promise.resolve().then(()=>(sP(),oP));await j({cwd:t,modelLabel:M.modelLabel,session:M.session,initialPrompt:a.prompt||void 0,note:M.note,reopen:w})}SD().catch(e=>{let t=e instanceof Error?e.message:String(e);console.error(`${It}: ${t}`),process.exitCode=1});
|