howtofixcli 0.4.23 → 0.4.24
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 +101 -98
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -1,59 +1,59 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
var
|
|
2
|
+
var yP=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)yP(e,n,{get:t[n],enumerable:!0})};function Id(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 It,
|
|
5
|
-
`)
|
|
6
|
-
`)});var
|
|
7
|
-
`)}catch{return 0}return o}function
|
|
8
|
-
`)}catch{return!1}return!0}function
|
|
4
|
+
`).trim()}var It,hn,bd,$d,Ko=m(()=>{It="HowToFix",hn="0.4.24",bd=["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
|
+
`);$d=["# Project notes","","## What this is","","## Commands","- build:","- test:","","## Conventions","-",""].join(`
|
|
6
|
+
`)});var vd={};Dt(vd,{AGENTS_STORE_DIR:()=>Jr,AGENT_DIR:()=>Ve,CUBENCE_CACHE_PATH:()=>ju,USER_SKILLS_DIR:()=>Lu,WORKFLOWS_DIR:()=>Fu,pinAgentDir:()=>Du,projectSkillsDir:()=>hr});import{homedir as bP}from"node:os";import{join as Vr,resolve as IP}from"node:path";function $P(){let e=(process.env.HOWTOFIX_HOME??process.env.HOME??"").trim();return IP(e||bP())}function hr(e){return Vr(e,".howtofix","skills")}function Du(){process.env.PI_CODING_AGENT_DIR=Ve}var Ve,Lu,Jr,ju,Fu,_n=m(()=>{Ve=process.env.HOWTOFIX_CODING_AGENT_DIR?.trim()||Vr($P(),".howtofix","agent"),Lu=Vr(Ve,"skills");Jr=Vr(Ve,"agents"),ju=Vr(Ve,"cubence-cache.json"),Fu=Vr(Ve,"workflows")});import{closeSync as wP,fsyncSync as kP,openSync as TP,renameSync as Ed,rmSync as Nu,writeSync as vP}from"node:fs";import{dirname as EP,join as SP}from"node:path";function et(e,t){let n=SP(EP(e),`.${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2,8)}.tmp`),r=TP(n,"w");try{vP(r,t),kP(r)}finally{wP(r)}try{Ed(n,e)}catch(o){let s=o.code;if(s!=="EPERM"&&s!=="EBUSY"&&s!=="EACCES")throw Nu(n,{force:!0}),o;Nu(e,{force:!0});try{Ed(n,e)}catch(a){throw Nu(n,{force:!0}),a}}}var Hn=m(()=>{});var Cd={};Dt(Cd,{DEFAULT_CONTEXT_WINDOW:()=>Rd,HOWTOFIX_BASE_URL:()=>Go,HOWTOFIX_CONSOLE_URL:()=>pi,HOWTOFIX_MODEL_COMPAT:()=>qu,HOWTOFIX_PROVIDERS:()=>Yr,HTTP_IDLE_TIMEOUT_MS:()=>Ad,UNLIMITED_SENTINEL:()=>Md,applyCompat:()=>di,checkAccount:()=>fi,checkUsage:()=>Wo,countNewModels:()=>Gu,ensureGatewaySettings:()=>OP,isHowtofixProvider:()=>xr,looksLikeToken:()=>Uu,maskToken:()=>li,mergeModels:()=>Ku,newProviderEntry:()=>_u,parseModelIds:()=>Od,probeModel:()=>Wu,repairGatewayModels:()=>RP});import{existsSync as PP,mkdirSync as AP,readFileSync as Sd}from"node:fs";import{join as Pd}from"node:path";function _u(){return{baseUrl:Go,api:"openai-completions"}}function RP(e){let t=Pd(e,"models.json"),n;try{n=JSON.parse(Sd(t,"utf8"))}catch{return 0}let r=n.providers;if(!r||typeof r!="object")return 0;let o=0;for(let s of Yr){let a=r[s];if(!a||!Array.isArray(a.models))continue;let c=di(a.models);c.changed!==0&&(a.models=c.models,o+=c.changed)}if(o===0)return 0;try{et(t,`${JSON.stringify(n,null,2)}
|
|
7
|
+
`)}catch{return 0}return o}function OP(e){let t=Pd(e,"settings.json"),n={};try{let r=Sd(t,"utf8"),o=JSON.parse(r);o&&typeof o=="object"&&!Array.isArray(o)&&(n=o)}catch{if(PP(t))return!1}if("httpIdleTimeoutMs"in n)return!1;n.httpIdleTimeoutMs=Ad;try{AP(e,{recursive:!0}),et(t,`${JSON.stringify(n,null,2)}
|
|
8
|
+
`)}catch{return!1}return!0}function li(e){let t=e.trim();return t.length<=10?"***":`${t.slice(0,6)}\u2026${t.slice(-4)}`}function Uu(e){return/^sk-[A-Za-z0-9_-]{8,}$/.test(e.trim())}function Od(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 xr(e){return Yr.includes(e)}async function MP(e,t){let n=await e(t,{headers:{Accept:"application/json"}});if(!n.ok)return"USD";let o=(await n.json())?.data?.quota_display_type;return typeof o=="string"&&o.trim()?o.trim().toUpperCase():"USD"}async function Wo(e,t){let n=(t?.baseUrl??Go).replace(/\/+$/,""),r=t?.fetchImpl??fetch,o=t?.timeoutMs??15e3,s=e.trim();if(!s)return{ok:!1,unlimited:!1,unit:"USD",message:"no token given"};let a=`${n.replace(/\/v1$/,"")}/api/status`,c=await MP(r,a).catch(()=>"USD"),p=new AbortController,f=setTimeout(()=>p.abort(),o),I={Authorization:`Bearer ${s}`};try{let[$,R]=await Promise.all([r(`${n}/dashboard/billing/subscription`,{headers:I,signal:p.signal}),r(`${n}/dashboard/billing/usage`,{headers:I,signal:p.signal})]);if($.status===401||$.status===403)return{ok:!1,unlimited:!1,unit:c,message:"the gateway rejected that token when asking for the balance"};if(!$.ok)return{ok:!1,unlimited:!1,unit:c,message:`the balance endpoint answered ${$.status}`};let C=await $.json();if(C.error?.message)return{ok:!1,unlimited:!1,unit:c,message:C.error.message};let P=Number(C.hard_limit_usd??C.soft_limit_usd??0);if(P>=Md)return{ok:!0,unlimited:!0,unit:c,message:"this token has no quota limit"};let N=0;if(R.ok){let ae=await R.json();N=Number(ae.total_usage??0)/100}let J=Math.max(0,P-N);return{ok:!0,unlimited:!1,limit:P,used:N,remaining:J,unit:c,message:`${J.toFixed(2)} ${c} left of ${P.toFixed(2)} (${N.toFixed(2)} used)`}}catch($){let R=$ instanceof Error&&$.name==="AbortError";return{ok:!1,unlimited:!1,unit:c,message:R?`the gateway did not answer within ${Math.round(o/1e3)}s`:"could not reach the gateway"}}finally{clearTimeout(f)}}function Ku(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:Rd,compat:{...qu}}));return r}function di(e){let t=0;return{models:e.map(r=>r.compat?.supportsDeveloperRole===!1?r:(t++,{...r,compat:{...r.compat,...qu}})),changed:t}}function Gu(e,t){let n=new Set(e.map(r=>r.id));return t.filter(r=>!n.has(r)).length}async function Wu(e,t,n){let r=(n?.baseUrl??Go).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 fi(e,t){let n=(t?.baseUrl??Go).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=Od(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 Go,pi,Yr,Ad,qu,Rd,Md,Bu=m(()=>{Hn();Go="https://api.howtofix.id/v1",pi="https://howtofix.id/keys",Yr=["howtofix","howtofix-free"];Ad=9e4;qu={supportsDeveloperRole:!1},Rd=128e3;Md=1e8});var Ld={};Dt(Ld,{expandFileReferences:()=>zu});import{readFileSync as CP,statSync as LP}from"node:fs";import{isAbsolute as jP,resolve as FP}from"node:path";function zu(e,t){return e.replace(/(^|\s)@([^\s]+)/g,(n,r,o)=>{let s=o.replace(/[),.;:]+$/,""),a=o.slice(s.length),c=jP(s)?s:FP(t,s);try{let p=LP(c);if(!p.isFile()||p.size===0||p.size>DP)return n;let f=CP(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 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
|
-
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(
|
|
14
|
-
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(
|
|
15
|
-
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))))),([t,n])=>[t,n]),
|
|
16
|
-
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(
|
|
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
|
|
19
|
-
${
|
|
20
|
-
`)}function
|
|
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
|
|
26
|
-
`)}function
|
|
27
|
-
|
|
28
|
-
${r}`;return{messages:t.messages.map(a=>a===n?{...n,content:o}:a)}})}}function
|
|
29
|
-
`)}],details:{planFile:a}}}}),
|
|
30
|
-
\u2026 (${s.length-
|
|
31
|
-
`):e==null?"":String(e)}function
|
|
32
|
-
|
|
33
|
-
${
|
|
34
|
-
|
|
35
|
-
${n}`;return{messages:t.messages.map(a=>a===r?{...r,content:
|
|
10
|
+
</file>${a}`}catch{return n}})}var DP,Hu=m(()=>{DP=64*1024});function _P(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 jd(e,t){if(NP.has(e))return;let n=`${e}\0${_P(t)}`,r=Bo&&Bo.signature===n?Bo.count+1:1;return Bo={signature:n,count:r},r>=3?{repeats:r}:void 0}function Fd(){Bo=void 0}function Dd(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 NP,Bo,Vu=m(()=>{NP=new Set(["think"])});function Nd(e,t){switch(t){case"number":return/^\d+$/.test(e);case"string":return!0;default:return!1}}function UP(e,t,n){let r=t;for(;r<e.length;){let o=e[r];if(!o){r++;continue}if(o==="--")break;if(qP.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(!Nd(c.join("="),p))return!1;r++;continue}let f=e[r+1];if(f===void 0||!Nd(f,p))return!1;r+=2;continue}if(n.allowPositional===!1)return!1;r++}return!0}function HP(e){if(!/\$\(|`|\$\{|>|</.test(e)&&!/(?<!&)&(?!&)/.test(e))return e.split(/\|\||&&|;|\|/).map(t=>t.trim()).filter(t=>t.length>0)}function VP(e){let t=e.some(r=>/^cd\b/.test(r)),n=e.some(r=>/^git\b/.test(r));return t&&n}function JP(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 YP(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"&&qd[`git ${n}`]?{name:`git ${n}`,rest:e.slice(2)}:Ud[r]?{name:r,rest:e.slice(2)}:{name:t,rest:e.slice(1)}}function ZP(e){let t=JP(e),n=YP(t);if(!n)return!1;let{name:r,rest:o}=n;if(XP.has(r)&&o.some(a=>a.includes("$")||a.includes("`")))return!1;let s=qd[r]??BP[r]??Ud[r];return s?s.dangerous?.(o)?!1:UP(o,0,s):!!(WP.includes(r)||zP.includes(r))}function yi(e){let t=HP(e);return!t||t.length===0||VP(t)?!1:t.every(ZP)}var qP,KP,gi,hi,Ju,xi,Yu,_d,GP,qd,WP,BP,Ud,zP,XP,Xu=m(()=>{qP=/^-[a-zA-Z0-9_-]/;KP={"--all":"none","--branches":"none","--tags":"none","--remotes":"none"},gi={"--oneline":"none","--graph":"none","--decorate":"none","--no-decorate":"none","--date":"string","--relative-date":"none"},hi={"--max-count":"number","-n":"number"},Ju={"--stat":"none","--numstat":"none","--shortstat":"none","--name-only":"none","--name-status":"none"},xi={"--color":"none","--no-color":"none"},Yu={"--patch":"none","-p":"none","--no-patch":"none","--no-ext-diff":"none","-s":"none"},_d={"--author":"string","--committer":"string","--grep":"string"},GP={"-l":"none","--list":"none","-a":"none","-r":"none","-v":"none","-vv":"none","-i":"none"},qd={"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",...xi}},"git diff":{safeFlags:{...Ju,...xi,...Yu,"--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:{...gi,...hi,...Ju,...xi,...Yu,..._d,...KP,"--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:{...Ju,...xi,...Yu,...gi,"--format":"string","--pretty":"string","--abbrev-commit":"none","--no-patch":"none","-q":"none"}},"git shortlog":{safeFlags:{...hi,"-s":"none","--summary":"none","-n":"none","--numbered":"none","-e":"none","--email":"none","-sn":"none","-ns":"none","--all":"none"}},"git reflog":{safeFlags:{...hi,...gi,..._d,"--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:{...hi,"--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:{...gi}},"git worktree list":{safeFlags:{"--porcelain":"none","-v":"none","--verbose":"none","-z":"none"}},"git branch":{safeFlags:{...GP,"--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"}}},WP=["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"],BP={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))}},Ud={"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:{}}},zP=["cd","alias","history","arch","ip addr","ifconfig"];XP=new Set(["echo","printf"])});var Vd={};Dt(Vd,{APPROVAL_LABELS:()=>bi,APPROVAL_MODES:()=>Xr,MODE_MAX_TIER:()=>Kd,TIER_RANK:()=>Zu,createPermissionExtension:()=>zo,criticalCommand:()=>Gd,decideToolCall:()=>Bd,describeToolCall:()=>zd,formatApprovalPrompt:()=>Hd,getApprovalMode:()=>nA,isApprovalMode:()=>QP,isReadOnlyCommand:()=>yi,resolveTier:()=>Qu,setApprovalMode:()=>tc,setApprovalPrompt:()=>nc});function QP(e){return Xr.includes(e)}function Qu(e){let t=eA[e];return t||(e.startsWith("mcp__")?"write":"exec")}function Gd(e){for(let{pattern:t,reason:n}of tA)if(t.test(e))return n}function tc(e){ec=e}function nA(){return ec}function nc(e){Wd=e}function Bd(e,t,n){let r=typeof n?.command=="string"?n.command:"";if(t==="bash"||t==="powershell"){let s=Gd(r);if(s)return{action:"deny",reason:`Refused in every mode: ${s}.`};if(yi(r))return{action:"run"}}let o=Qu(t);return Zu[o]<=Zu[Kd[e]]?{action:"run"}:{action:"prompt",reason:`this is a ${o}-tier tool`}}function zd(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 Hd(e,t,n){let r=[`Allow tool: ${e}`];e.startsWith("mcp__")&&r.push("Origin: MCP server tool"),r.push(`Reason: ${n}`);let o=zd(e,t);return o!==e&&r.push(o),r.join(`
|
|
11
|
+
`)}function zo(e={}){return t=>{t.on("tool_call",async n=>{let r=jd(n.toolName,n.input);if(r)return{block:!0,reason:Dd(n.toolName,r.repeats)};let o=ec,s=Bd(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 ${Qu(n.toolName)}-tier tool and no UI can approve it here (approval mode: ${o}).`};if(!await Wd(`${n.toolName} wants to run`,Hd(n.toolName,n.input,s.reason)))return{block:!0,reason:`Blocked by the user (approval mode: ${o}).`}})}}var Xr,bi,Zu,Kd,eA,tA,ec,Wd,Ho=m(()=>{Vu();Xu();Xu();Xr=["suggest","auto-edit","full-auto"],bi={suggest:"suggest: ask before every edit and command","auto-edit":"auto-edit: edits run, commands ask","full-auto":"full-auto: nothing asks"};Zu={read:0,write:1,exec:2},Kd={suggest:"read","auto-edit":"write","full-auto":"exec"},eA={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"};tA=[{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"}];ec="full-auto",Wd=async()=>!1});function rA(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 sA(e){if(!e)return;let t=!1,n={...e};for(let r of oA){let o=n[r];if(typeof o!="string")continue;let s=rA(o);s!==o&&(n[r]=s,t=!0)}return t?n:void 0}function Jd(){return e=>{e.on("context_with_system",async t=>{let n=t.messages[0];if(!n||n.role!=="system")return;let r=sA(n.sections);return r?{messages:t.messages.map(s=>s===n?{...n,sections:r}:s)}:void 0})}}var oA,Yd=m(()=>{oA=["preamble","rules","docs","addendum"]});import{Type as Zr}from"@earendil-works/pi-ai";import{defineTool as Xd}from"@earendil-works/pi-coding-agent";function Zd(e){rc=e}var rc,Qd,ef,oc=m(()=>{Qd=Xd({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:Zr.Object({thoughts:Zr.String({description:"Private notes"})}),async execute(){return{content:[{type:"text",text:"noted"}],details:{recorded:!0}}}}),ef=Xd({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:Zr.Object({question:Zr.String(),options:Zr.Array(Zr.String(),{minItems:2})}),async execute(e,t){if(!rc)return{content:[{type:"text",text:"cancelled"}],details:{answer:"cancelled"}};let n=await rc(t.question,t.options);return{content:[{type:"text",text:n}],details:{answer:n}}}})});var rn,yr=m(()=>{rn={assign:0,create:0,clone:0,discard:0,update:0}});function br(e,t,n){return e>=t&&e<=n}function rf(e){return e===8205}function iA(e){return br(e,55296,56319)}function tf(e){return br(e,127462,127487)}function of(e){return br(e,65024,65039)}function sf(e){return br(e,768,879)||br(e,6832,6911)||br(e,7616,7679)||br(e,65056,65071)}function Ii(e){return e>65535?2:1}function nf(e,t){for(;t<e.length;){let n=e.codePointAt(t);if(sf(n)||of(n))t+=Ii(n);else break}return t}function sc(e,t){let n=e.codePointAt(t),r=t+Ii(n);for(r=nf(e,r);r<e.length-1&&rf(e.codePointAt(r));){let o=e.codePointAt(r+1);r+=1+Ii(o),r=nf(e,r)}return tf(n)&&r<e.length&&tf(e.codePointAt(r))&&(r+=Ii(e.codePointAt(r))),r}function af(e){return e>=768&&(iA(e)||sf(e)||of(e)||rf(e))}function mf(e){let t=0,n=0;for(;n<e.length;)n=sc(e,n),t++;return t}function aA(e,t){let n=0,r=0;for(;r<e.length;)if(r=sc(e,r),++n>=t)return!0;return!1}function mA(e,t){let n=0,r=0;for(;r<e.length;)if(r=sc(e,r),++n>t)return!1;return!0}function uf(e,t){if(t===0)return!0;if(e.length<t)return!1;let n=0;for(;;){if(af(e.charCodeAt(n)))return aA(e,t);if(++n>=t)return!0}}function cf(e,t){if(e.length<=t)return!0;let n=0;for(;;){if(af(e.charCodeAt(n)))return mA(e,t);if(++n>t)return!1}}var pf=m(()=>{});var u={};Dt(u,{Counted:()=>TA,Entries:()=>SA,EntriesRegExp:()=>EA,Every:()=>IA,EveryAll:()=>$A,GraphemeCount:()=>xA,HasPropertyKey:()=>vA,IsArray:()=>Jo,IsBigInt:()=>Vo,IsBoolean:()=>lf,IsClassInstance:()=>hA,IsConstructor:()=>cA,IsDeepEqual:()=>mc,IsEqual:()=>se,IsFunction:()=>df,IsGreaterEqualThan:()=>gf,IsGreaterThan:()=>dA,IsInteger:()=>ic,IsLessEqualThan:()=>ff,IsLessThan:()=>fA,IsMaxLength:()=>yA,IsMinLength:()=>bA,IsMultipleOf:()=>gA,IsNull:()=>wi,IsNumber:()=>ki,IsObject:()=>Yo,IsObjectNotArray:()=>pA,IsString:()=>Ti,IsSymbol:()=>lA,IsUndefined:()=>ac,IsUnsafePropertyKey:()=>xf,IsValueLike:()=>hf,Keys:()=>$i,ShiftLeft:()=>vi,Some:()=>wA,SomeAll:()=>kA,Symbols:()=>PA,Values:()=>AA});function Jo(e){return Array.isArray(e)}function Vo(e){return se(typeof e,"bigint")}function lf(e){return se(typeof e,"boolean")}function cA(e){if(ac(e)||!df(e))return!1;let t=Function.prototype.toString.call(e);return!!(/^class\s/.test(t)||/\[native code\]/.test(t))}function df(e){return se(typeof e,"function")}function ic(e){return Number.isInteger(e)}function wi(e){return se(e,null)}function ki(e){return Number.isFinite(e)}function pA(e){return Yo(e)&&!Jo(e)}function Yo(e){return se(typeof e,"object")&&!wi(e)}function Ti(e){return se(typeof e,"string")}function lA(e){return se(typeof e,"symbol")}function ac(e){return se(e,void 0)}function se(e,t){return e===t}function dA(e,t){return e>t}function fA(e,t){return e<t}function ff(e,t){return e<=t}function gf(e,t){return e>=t}function gA(e,t){if(Vo(e)||Vo(t))return BigInt(e)%BigInt(t)===0n;let n=1e-10;if(!ki(e)||ic(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 hA(e){if(!Yo(e))return!1;let t=globalThis.Object.getPrototypeOf(e);return wi(t)?!1:se(typeof t.constructor,"function")&&!(se(t.constructor,globalThis.Object)||se(t.constructor.name,"Object"))}function hf(e){return Vo(e)||lf(e)||wi(e)||ki(e)||Ti(e)||ac(e)}function xA(e){return mf(e)}function yA(e,t){return cf(e,t)}function bA(e,t){return uf(e,t)}function IA(e,t,n){return e.every((r,o)=>o<t||n(r,o))}function $A(e,t,n){let r=!0;return e.forEach((o,s)=>{s>=t&&!n(o,s)&&(r=!1)}),r}function wA(e,t){return e.some((n,r)=>t(n,r))}function kA(e,t){let n=!1;return e.forEach((r,o)=>{t(r,o)&&(n=!0)}),n}function TA(e,t){return e.reduce((n,r,o)=>t(r,o)?++n:n,0)}function vi(e,t,n){return se(e.length,0)?n():t(e[0],e.slice(1))}function xf(e){return se(e,"__proto__")||se(e,"constructor")||se(e,"prototype")}function vA(e,t){return xf(t)?Object.prototype.hasOwnProperty.call(e,t):t in e}function EA(e){return $i(e).map(t=>[new RegExp(`^${t}$`),e[t]])}function SA(e){return Object.entries(e)}function $i(e){return Object.getOwnPropertyNames(e)}function PA(e){return Object.getOwnPropertySymbols(e)}function AA(e){return Object.values(e)}function RA(e,t){if(!Yo(t))return!1;let n=$i(e);return se(n.length,$i(t).length)&&n.every(r=>mc(e[r],t[r]))}function OA(e,t){return Jo(t)&&se(e.length,t.length)&&e.every((n,r)=>mc(e[r],t[r]))}function mc(e,t){return Jo(e)?OA(e,t):Yo(e)?RA(e,t):se(e,t)}var Qr=m(()=>{pf()});var yf=m(()=>{Qr()});var Vn={};Dt(Vn,{IsBigInt64Array:()=>zA,IsBigUint64Array:()=>HA,IsBoolean:()=>CA,IsDate:()=>JA,IsFloat32Array:()=>WA,IsFloat64Array:()=>BA,IsInt16Array:()=>qA,IsInt32Array:()=>KA,IsInt8Array:()=>DA,IsMap:()=>XA,IsNumber:()=>LA,IsRegExp:()=>VA,IsSet:()=>YA,IsString:()=>jA,IsTypeArray:()=>FA,IsUint16Array:()=>UA,IsUint32Array:()=>GA,IsUint8Array:()=>NA,IsUint8ClampedArray:()=>_A});function CA(e){return e instanceof Boolean}function LA(e){return e instanceof Number}function jA(e){return e instanceof String}function FA(e){return globalThis.ArrayBuffer.isView(e)}function DA(e){return e instanceof globalThis.Int8Array}function NA(e){return e instanceof globalThis.Uint8Array}function _A(e){return e instanceof globalThis.Uint8ClampedArray}function qA(e){return e instanceof globalThis.Int16Array}function UA(e){return e instanceof globalThis.Uint16Array}function KA(e){return e instanceof globalThis.Int32Array}function GA(e){return e instanceof globalThis.Uint32Array}function WA(e){return e instanceof globalThis.Float32Array}function BA(e){return e instanceof globalThis.Float64Array}function zA(e){return e instanceof globalThis.BigInt64Array}function HA(e){return e instanceof globalThis.BigUint64Array}function VA(e){return e instanceof globalThis.RegExp}function JA(e){return e instanceof globalThis.Date}function YA(e){return e instanceof globalThis.Set}function XA(e){return e instanceof globalThis.Map}var bf=m(()=>{});var If=m(()=>{Qr()});var M=m(()=>{yf();bf();If();Qr();Qr()});var on={};Dt(on,{Get:()=>tR,Reset:()=>QA,Set:()=>eR});function QA(){xn.immutableTypes=!1,xn.maxErrors=8,xn.maxInstantiationCount=128,xn.useAcceleration=!0,xn.exactOptionalPropertyTypes=!1,xn.enumerableKind=!1,xn.correctiveParse=!1,xn.unionPrioritySort=!0}function eR(e){for(let t of u.Keys(e)){let n=e[t];n!==void 0&&Object.defineProperty(xn,t,{value:n})}}function tR(){return xn}var xn,$f=m(()=>{M();xn={immutableTypes:!1,maxErrors:8,maxInstantiationCount:128,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0}});var Ir=m(()=>{$f()});function Jn(e){return on.Get().immutableTypes?Object.freeze(e):e}var Xo=m(()=>{Ir()});function nR(e,t){return rn.assign+=1,Jn({...e,...t})}var wf=m(()=>{yr();Xo()});function rR(e){return u.HasPropertyKey(e,"~kind")||u.HasPropertyKey(e,"~unsafe")}function oR(e){let t={};for(let n of u.Keys(e)){if(u.IsUnsafePropertyKey(n))continue;let r=Object.getOwnPropertyDescriptor(e,n);r.value=$r(r.value),u.IsEqual(r.enumerable,!0)?t[n]=r.value:Object.defineProperty(t,n,r)}return t}function sR(e){let t={};for(let n of u.Keys(e))u.IsUnsafePropertyKey(n)||(t[n]=$r(e[n]));for(let n of u.Symbols(e))t[n]=$r(e[n]);return t}function iR(e){return u.IsClassInstance(e)?e:rR(e)?oR(e):sR(e)}function aR(e){return e.map(t=>$r(t))}function mR(e){return e.slice()}function uR(e){return new RegExp(e.source,e.flags)}function cR(e){return new Map($r([...e.entries()]))}function pR(e){return new Set($r([...e.values()]))}function $r(e){return Vn.IsTypeArray(e)?mR(e):Vn.IsRegExp(e)?uR(e):Vn.IsMap(e)?cR(e):Vn.IsSet(e)?pR(e):u.IsArray(e)?aR(e):u.IsObject(e)?iR(e):e}function Zo(e){return rn.clone+=1,$r(e)}var Ei=m(()=>{M();yr()});function lR(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 kf(e,t){return{...e,...t}}function dR(e,t,n={}){rn.create+=1;let r=kf(t,n),o=on.Get().enumerableKind?kf(r,e):lR(r,e);return Jn(o)}var Tf=m(()=>{Ir();yr();Xo()});function fR(e,t){rn.discard+=1;let n={};for(let r of u.Keys(e)){if(t.includes(r))continue;let o=Object.getOwnPropertyDescriptor(e,r);o.value=Zo(o.value),Object.defineProperty(n,r,o)}return Jn(n)}var vf=m(()=>{M();yr();Xo();Ei()});function gR(e,t,n){rn.update+=1;let r=on.Get(),o=Zo(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 Jn(o)}var Ef=m(()=>{Ir();yr();Xo();Ei()});var d={};Dt(d,{Assign:()=>nR,Clone:()=>Zo,Create:()=>dR,Discard:()=>fR,Metrics:()=>rn,Update:()=>gR});var Sf=m(()=>{wf();Ei();Tf();vf();yr();Ef()});var S=m(()=>{Sf()});function L(e,t){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.IsEqual(e["~kind"],t)}function De(e){return u.IsObject(e)}var H=m(()=>{M()});function F(e,t,n){return d.Create({"~kind":"Deferred"},{type:"deferred",action:e,parameters:t,options:n},{})}function Yn(e){return L(e,"Deferred")}var ue=m(()=>{S();H()});function hR(e){return d.Update(e,{"~readonly":!0},{})}function Qo(e,t){return d.Update(hR(e),{},t)}function Pf(e,t,n,r){let o=w(e,t,n);return Qo(o,r)}var Si=m(()=>{S();q()});function xR(e){return d.Update(e,{"~optional":!0},{})}function es(e,t){return d.Update(xR(e),{},t)}function Af(e,t,n,r){let o=w(e,t,n);return es(o,r)}var Pi=m(()=>{S();q()});function Nt(e,t){return d.Create({"~kind":"Array"},{type:"array",items:e},t)}function we(e){return L(e,"Array")}function Ai(e){return d.Discard(e,["~kind","type","items"])}var dt=m(()=>{S();H()});function yn(e,t,n={}){return d.Create({"~kind":"Constructor"},{type:"constructor",parameters:e,instanceType:t},n)}function Ke(e){return L(e,"Constructor")}function Rf(e){return d.Discard(e,["~kind","type","parameters","instanceType"])}var Wt=m(()=>{S();H()});function bn(e,t,n={}){return d.Create({"~kind":"Function"},{type:"function",parameters:e,returnType:t},n)}function Ge(e){return L(e,"Function")}function Of(e){return d.Discard(e,["~kind","type","parameters","returnType"])}var Bt=m(()=>{S();H()});function qn(e,t){return d.Create({"~kind":"Ref"},{$ref:e},t)}function We(e){return L(e,"Ref")}var zt=m(()=>{S();H()});function Xn(e,t){return d.Create({"~kind":"Generic"},{type:"generic",parameters:e,expression:t})}function eo(e){return L(e,"Generic")}var ts=m(()=>{S();H()});function to(e){return d.Create({"~kind":"Any"},{},e)}function Ee(e){return L(e,"Any")}var $t=m(()=>{S();H()});function fe(e){return d.Create({"~kind":"Never"},{not:{}},e)}function sn(e){return L(e,"Never")}var Mf,Je=m(()=>{S();H();Mf="(?!)"});function In(e,t={}){return F("AddOptional",[e],t)}function wr(e,t={}){return es(e,t)}var ns=m(()=>{ue();Pi()});function Cf(e){return wr(e)}function it(e){return De(e)&&u.HasPropertyKey(e,"~optional")}var Zn=m(()=>{M();H();ns()});function Lf(e){return u.Keys(e).filter(t=>!it(e[t]))}function Ri(e){return u.Keys(e)}function Oi(e){return u.Values(e)}var kr=m(()=>{M();Zn()});function G(e,t={}){let n=Lf(e),r=n.length>0?{required:n}:{};return d.Create({"~kind":"Object"},{type:"object",...r,properties:e},t)}function ce(e){return L(e,"Object")}function jf(e){return d.Discard(e,["~kind","type","properties","required"])}var de=m(()=>{S();H();kr()});function Ye(e){return d.Create({"~kind":"Unknown"},{},e)}function Me(e){return L(e,"Unknown")}var tt=m(()=>{S();H()});function $n(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 nt(e){return L(e,"Cyclic")}var wt=m(()=>{M();S();H()});function Ff(e){return d.Update(e,{"~unsafe":null},{})}function Mi(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"~unsafe")&&u.IsNull(e["~unsafe"])}var Ci=m(()=>{M();S()});var wn={};Dt(wn,{Match:()=>yR});function yR(e,t){return t[e.length]?.(...e)??(()=>{throw Error("Invalid Arguments")})()}var Df=m(()=>{});var no=m(()=>{Df()});function rs(...e){let[t,n]=wn.Match(e,{2:(r,o)=>[r,o,o],1:r=>[r,Ye(),Ye()]});return d.Create({"~kind":"Infer"},{type:"infer",name:t,extends:n},{})}function Ce(e){return L(e,"Infer")}var Ht=m(()=>{no();S();H();tt()});function Tr(e,t,n,r={}){return d.Create({"~kind":"Dependent"},{if:e,then:t,else:n},r)}function Pe(e){return L(e,"Dependent")}function Nf(e){return d.Discard(e,["~kind","if","then","else"])}var Rt=m(()=>{S();H()});function _f(e){return u.IsObjectNotArray(e)}function qf(e){return u.Keys(e).filter(n=>isNaN(n)).reduce((n,r)=>[...n,e[r]],[])}var Li=m(()=>{M()});function Uf(e){return u.IsString(e)||u.IsNumber(e)}function Kf(e,t){let n=_f(e)?qf(e):e;return d.Create({"~kind":"Enum"},{enum:n},t)}function rt(e){return L(e,"Enum")}var an=m(()=>{M();S();H();Li();Li()});function kt(e,t={}){return d.Create({"~kind":"Intersect"},{allOf:e},t)}function te(e){return L(e,"Intersect")}function Gf(e){return d.Discard(e,["~kind","allOf"])}var Ne=m(()=>{S();H()});var Wf=m(()=>{Ir();M()});var Bf=m(()=>{Wf()});var zf=m(()=>{Bf()});function _e(){throw new Error("Unreachable")}var uc=m(()=>{});var kn=m(()=>{uc()});var Hf,dq,fq,gq,hq,Vf,xq,yq,bq,Jf=m(()=>{kn();M();(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"})(Hf||(Hf={}));dq=BigInt("14695981039346656037"),[fq,gq]=[BigInt("1099511628211"),BigInt("18446744073709551616")],hq=Array.from({length:256}).map((e,t)=>BigInt(t)),Vf=new Float64Array(1),xq=new DataView(Vf.buffer),yq=new Uint8Array(Vf.buffer),bq=new TextEncoder});var Yf=m(()=>{Jf()});var cc=m(()=>{});var Xf=m(()=>{cc()});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 ig=m(()=>{});var ag=m(()=>{});var mg=m(()=>{});var pc=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(()=>{});var Mg=m(()=>{});var Cg=m(()=>{});var Lg=m(()=>{Xf();Zf();Qf();eg();tg();ng();cc();rg();og();sg();ig();ag();mg();pc();pc();ug();cg();pg();lg();dg();fg();gg();hg();xg();yg();bg();Ig();$g();wg();kg();Tg();vg();Eg();Sg();Pg();Ag();Rg();Og();Mg();Cg()});var jg=m(()=>{Lg()});var os=m(()=>{no();zf();Yf();jg();S();Ir()});var Dg=m(()=>{os();os();os()});function Fi(e){return new is(e)}function Ng(e,t){return Fi(e).Decode(t).Encode(()=>{throw Error("Encode not implemented")})}function _g(e,t){return Fi(e).Decode(()=>{throw Error("Decode not implemented")}).Encode(t)}function ji(e){return De(e)&&u.HasPropertyKey(e,"~codec")&&u.IsObject(e["~codec"])&&u.HasPropertyKey(e["~codec"],"encode")&&u.HasPropertyKey(e["~codec"],"decode")}var ss,is,lc=m(()=>{Dg();M();H();ss=class{constructor(t,n){this.type=t,this.decode=n}Encode(t){let n=this.type,r=ji(n)?a=>this.decode(n["~codec"].decode(a)):this.decode,o=ji(n)?a=>n["~codec"].encode(t(a)):t,s={decode:r,encode:o};return d.Update(this.type,{"~codec":s},{})}},is=class{constructor(t){this.type=t}Decode(t){return new ss(this.type,t)}}});function qg(e){return ro(e)}function vr(e){return De(e)&&u.HasPropertyKey(e,"~immutable")}var as=m(()=>{M();H();ms()});function Tn(e,t={}){return F("AddReadonly",[e],t)}function Er(e,t={}){return Qo(e,t)}var us=m(()=>{ue();Si()});function Ug(e){return Er(e)}function Sr(e){return De(e)&&u.HasPropertyKey(e,"~readonly")}var cs=m(()=>{M();H();us()});function wR(e,t){let n=dc(e)?[...e["~refine"],t]:[t];return d.Update(e,{"~refine":n},{})}function Kg(...e){let[t,n,r]=wn.Match(e,{3:(o,s,a)=>[o,s,a],2:(o,s)=>[o,s,()=>"Refine Error"]});return wR(t,{check:n,error:r})}function kR(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"check")&&u.HasPropertyKey(e,"error")&&u.IsFunction(e.check)&&u.IsFunction(e.error)}function dc(e){return De(e)&&u.HasPropertyKey(e,"~refine")&&u.IsArray(e["~refine"])&&u.Every(e["~refine"],0,t=>kR(t))}var fc=m(()=>{no();S();M();H()});function ps(e){return d.Create({"~kind":"BigInt"},{type:"bigint"},e)}function vn(e){return L(e,"BigInt")}var Gg,Pr=m(()=>{S();H();Gg="-?(?:0|[1-9][0-9]*)n"});function Di(e){return d.Create({"~kind":"Boolean"},{type:"boolean"},e)}function Vt(e){return L(e,"Boolean")}var Qn=m(()=>{S();H()});function ls(e){return d.Create({"~kind":"Identifier"},{name:e})}function Wg(e){return L(e,"Identifier")}var gc=m(()=>{S();H()});function Ar(e){return d.Create({"~kind":"Integer"},{type:"integer"},e)}function ft(e){return L(e,"Integer")}var Ni,En=m(()=>{S();H();Ni="-?(?:0|[1-9][0-9]*)"});function TR(e){return u.IsBigInt(e)?"bigint":u.IsBoolean(e)?"boolean":u.IsNumber(e)?"number":u.IsString(e)?"string":(()=>{throw new hc(e)})()}function ne(e,t){return d.Create({"~kind":"Literal"},{type:TR(e),const:e},t)}function _i(e){return u.IsBigInt(e)||u.IsBoolean(e)||u.IsNumber(e)||u.IsString(e)}function Bg(e){return pe(e)&&u.IsNumber(e.const)}function zg(e){return pe(e)&&u.IsString(e.const)}function pe(e){return L(e,"Literal")}var hc,Le=m(()=>{S();M();H();hc=class extends Error{constructor(t){super("Invalid Literal value"),Object.defineProperty(this,"cause",{value:{value:t},writable:!1,configurable:!1,enumerable:!1})}}});function oo(e){return d.Create({"~kind":"Null"},{type:"null"},e)}function so(e){return L(e,"Null")}var io=m(()=>{S();H()});function Ot(e){return d.Create({"~kind":"Number"},{type:"number"},e)}function je(e){return L(e,"Number")}var qi,gt=m(()=>{S();H();qi="-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?"});function ao(e){return d.Create({"~kind":"Symbol"},{type:"symbol"},e)}function er(e){return L(e,"Symbol")}var Rr=m(()=>{S();H()});function Or(...e){let[t,n,r]=wn.Match(e,{3:(o,s,a)=>[o,s,a],2:(o,s)=>[o,s,s],1:o=>[o,Ye(),Ye()]});return d.Create({"~kind":"Parameter"},{name:t,extends:n,equals:r},{})}function Hg(e){return L(e,"Parameter")}var xc=m(()=>{no();S();H();tt()});function Jt(e){return d.Create({"~kind":"String"},{type:"string"},e)}function ht(e){return L(e,"String")}var Ui,Yt=m(()=>{S();H();Ui=".*"});function Y(e,t={}){return d.Create({"~kind":"Union"},{anyOf:e},t)}function j(e){return L(e,"Union")}function Vg(e){return d.Discard(e,["~kind","anyOf"])}var Z=m(()=>{S();H()});function ds(e){let t=Jg(e);return u.IsEqual(t.length,2)?t[0]:[]}var fs=m(()=>{M();Ki()});function vR(e){return!0}function Yg(e){return u.ShiftLeft(e,(t,n)=>ER(t)?Yg(n):!1,()=>!0)}function Xg(e){return u.IsEqual(e.length,0)?!1:Yg(e)}function ER(e){return j(e)?Xg(e.anyOf):pe(e)?vR(e.const):!1}function Gi(e){return Xg(e)}var Wi=m(()=>{M();Le();Z()});function Bi(e){return d.Create({"~kind":"TemplateLiteral"},{type:"string",pattern:e},{})}var zi=m(()=>{S()});function Zg(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Zg(o,t,[...n,`${r}${t}`]),()=>n)}function SR(e,t){return u.IsEqual(e.length,0)?[`${t}`]:Zg(e,t)}function Qg(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>Qg(e,o,[...n,...eh(e,r)]),()=>n)}function eh(e,t){return j(t)?Qg(e,t.anyOf):pe(t)?SR(e,t.const):_e()}function th(e,t){return u.ShiftLeft(t,(n,r)=>th(eh(e,n),r),()=>e)}function PR(e){return e.map(t=>ne(t))}function AR(e){let t=th([],e),n=PR(t);return Y(n)}function RR(e){return u.IsEqual(e.length,0)?_e():u.IsEqual(e.length,1)&&pe(e[0])?e[0]:AR(e)}function yc(e){let t=ds(e);return u.IsEqual(t.length,0)?Jt():Gi(t)?RR(t):Bi(e)}function nh(e){let t=yc(e);return Ae(t)?Jt():t}var Hi=m(()=>{M();kn();Le();Yt();Tt();Z();fs();Wi();zi()});function vt(e,t){let n="object",r={[e]:t};return d.Create({"~kind":"Record"},{type:n,patternProperties:r})}var tr=m(()=>{S()});function rh(e){return vt(mn,e)}var oh=m(()=>{Xe();tr()});function sh(e){return G({true:e,false:e})}var ih=m(()=>{de()});function Fe(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 L(e,"Tuple")}function ah(e){return d.Discard(e,["~kind","type","items","minItems","additionalItems"])}var qe=m(()=>{S();H()});function OR(e){return d.Discard(e,["~readonly"])}function bc(e,t){return d.Update(OR(e),{},t)}function mh(e,t,n,r){let o=w(e,t,n);return bc(o,r)}var Ic=m(()=>{S();q()});function uh(e,t={}){return F("RemoveReadonly",[e],t)}function ch(e,t={}){return bc(e,t)}var $c=m(()=>{ue();Ic()});function MR(e){return d.Discard(e,["~optional"])}function wc(e,t){return d.Update(MR(e),{},t)}function ph(e,t,n,r){let o=w(e,t,n);return wc(o,r)}var kc=m(()=>{S();q()});function lh(e,t={}){return F("RemoveOptional",[e],t)}function Vi(e,t={}){return wc(e,t)}var Ji=m(()=>{ue();kc()});function Tc(e){return e.reduceRight((n,r,o)=>({[o]:r,...n}),{})}function dh(e){let t=Tc(e.items);return G(t)}var vc=m(()=>{de()});function Ec(e){return ce(e)||he(e)}function CR(e,t){return Sr(e)?!!Sr(t):!1}function LR(e,t){return it(e)?!!it(t):!1}function jR(e,t){let n=CR(e,t),r=LR(e,t),o=ke([e,t]),s=ch(Vi(o));return n&&r?Er(wr(s)):n&&!r?Er(s):!n&&r?wr(s):s}function FR(e,t,n){return n in e?n in t?jR(e[n],t[n]):e[n]:n in t?t[n]:fe()}function DR(e,t){return[...new Set([...u.Keys(e),...u.Keys(t)])].reduce((o,s)=>({...o,[s]:FR(e,t,s)}),{})}function fh(e){return ce(e)?e.properties:he(e)?Tc(e.items):{}}function gh(e,t){let n=fh(e),r=fh(t),o=DR(n,r);return G(o)}var Sc=m(()=>{M();cs();Zn();de();Je();qe();us();ns();$c();Ji();vc();V()});function NR(e,t){let n=xs(e,t);return u.IsEqual(n,hs)?e:u.IsEqual(n,Yi)||u.IsEqual(n,gs)?t:fe()}function _R(e,t){let n=Ec(e),r=Ec(t);return n&&r?gh(e,t):n&&!r?e:!n&&r?t:NR(e,t)}function hh(e,t){return sn(e)||Ee(e)?e:Me(e)||sn(t)||Ee(t)?t:Me(t)?e:_R(e,t)}var Pc=m(()=>{M();$t();Je();tt();ys();Sc()});function qR(e,t){return j(e)||j(t)}function UR(e,t){let n=Xt(e),r=Xt(t);return qR(n,r)?ke([n,r]):hh(n,r)}function xh(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>xh(e,o,[...n,UR(r,e)]),()=>u.IsEqual(n.length,0)?[e]:n)}function yh(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>yh(o,t,[...n,...bs([r],t)]),()=>n)}function bs(e,t=[]){return u.ShiftLeft(e,(n,r)=>j(n)?bs(r,yh(n.anyOf,t)):bs(r,xh(n,t)),()=>t)}var Ac=m(()=>{M();Z();Pc();V();V()});function KR(e,t){let n=ot({},e,t);return W.IsExtendsTrueLike(n)?[]:[e]}function bh(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>bh(o,t,[...n,...KR(r,t)]),()=>n)}function Xi(e,t){let n=Xt(e),r=j(n)?n.anyOf:[n],o=bh(r,t);return Et(o)}var Rc=m(()=>{M();Z();Sn();V();V()});function un(e,t,n){let r=ke([e,t]),o=Xi(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=bs(e),n=Oc(t);return Et(n)}function at(e){let t=nh(e);return Xt(t)}function Et(e){let t=Oc(e);return nr(t)}function Xt(e){return Pe(e)?un(e.if,e.then,e.else):rt(e)?xt(e.enum):te(e)?ke(e.allOf):Ae(e)?at(e.pattern):j(e)?Et(e.anyOf):e}function nr(e){return u.IsEqual(e.length,1)?e[0]:u.IsEqual(e.length,0)?fe():Y(e)}var V=m(()=>{M();Rt();an();Ne();Le();Je();Tt();Z();Ac();Mc();Rc();Hi()});function Ih(e,t){let n=xt(e);return rr(n,t)}var $h=m(()=>{Is();V()});function wh(e,t){return vt(or,t)}var kh=m(()=>{Xe();tr()});function Th(e,t){let n=ke(e);return rr(n,t)}var vh=m(()=>{V();Is()});function Eh(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 Sh=m(()=>{M();de()});function Ph(e,t){return vt(mo,t)}var Ah=m(()=>{Xe();tr()});function Rh(e,t){return u.HasPropertyKey(e,"pattern")&&(u.IsString(e.pattern)||e.pattern instanceof RegExp)?vt(e.pattern.toString(),t):vt(mn,t)}var Oh=m(()=>{M();Xe();tr()});function Mh(e,t){let n=ds(e);return Gi(n)?rr(at(e),t):vt(e,t)}var Ch=m(()=>{Is();fs();Wi();V();tr()});function GR(e){return j(e)?uo(e.anyOf):[e]}function uo(e,t=[]){return u.ShiftLeft(e,(n,r)=>uo(r,[...t,...GR(n)]),()=>t)}var Zi=m(()=>{M();Z()});function WR(e){return e.some(t=>ht(t)||je(t)||ft(t))}function BR(e,t){return u.IsEqual(WR(e),!0)?vt(mn,t):void 0}function zR(e,t){return e.reduce((n,r)=>pe(r)&&(u.IsString(r.const)||u.IsNumber(r.const))?{...n,[r.const]:t}:n,{})}function HR(e,t){let n=zR(e,t);return G(n)}function Lh(e,t){let n=uo(e),r=BR(n,t);return De(r)?r:HR(n,t)}var jh=m(()=>{M();H();Le();gt();En();de();Yt();Xe();Zi();tr()});function rr(e,t){return Ee(e)?rh(t):Vt(e)?sh(t):rt(e)?Ih(e.enum,t):ft(e)?wh(e,t):te(e)?Th(e.allOf,t):pe(e)?Eh(e.const,t):je(e)?Ph(e,t):j(e)?Lh(e.anyOf,t):ht(e)?Rh(e,t):Ae(e)?Mh(e.pattern,t):G({})}var Is=m(()=>{$t();Qn();an();Ne();En();Le();gt();de();Yt();Tt();Z();oh();ih();$h();kh();vh();Sh();Ah();Oh();Ch();jh()});function Cc(e,t,n){return z([e])?d.Update(rr(e,t),{},n):ea(e,t,n)}function Fh(e,t,n,r,o){let s=w(e,t,n),a=w(e,t,r);return Cc(s,a,o)}var Qi=m(()=>{S();Xe();Is();q()});function ea(e,t,n={}){return F("Record",[e,t],n)}function ta(e,t,n={}){return Cc(e,t,n)}function Dh(e,t){return vt(e,t)}function na(e){return u.IsEqual(e,mn)?Jt():u.IsEqual(e,or)?Ar():u.IsEqual(e,mo)?Ot():yc(e)}function Zt(e){return u.Keys(e.patternProperties)[0]}function co(e){let t=Zt(e);return na(t)}function yt(e){return e.patternProperties[Zt(e)]}function st(e){return L(e,"Record")}var or,mo,mn,Xe=m(()=>{S();M();H();En();gt();Yt();ue();Hi();tr();Qi();or=`^${Ni}$`,mo=`^${qi}$`,mn=`^${Ui}$`});function Mr(e){return d.Create({"~kind":"Rest"},{type:"rest",items:e},{})}function sr(e){return L(e,"Rest")}var po=m(()=>{S();H()});var Nh=m(()=>{});function ra(e){return d.Create({"~kind":"This"},{$ref:"#"},e)}function oa(e){return L(e,"This")}var sa=m(()=>{S();H()});function lo(e){return d.Create({"~kind":"Undefined"},{type:"undefined"},e)}function fo(e){return L(e,"Undefined")}var go=m(()=>{S();H()});function ia(e){return d.Create({"~kind":"Void"},{type:"void"},e)}function Pn(e){return L(e,"Void")}var Cr=m(()=>{S();H()});var aa=m(()=>{lc();as();Zn();cs();fc();$t();dt();Pr();Qn();ho();Wt();wt();ue();an();Bt();ts();gc();Rt();Ht();En();Ne();Le();Je();io();gt();tt();Rr();de();xc();kr();Xe();zt();po();H();Nh();Yt();Rr();Tt();sa();qe();go();Z();tt();Ci();Cr()});function JR(e,t){return u.IsEqual(e,"Array")?Nt(t[0]):u.IsEqual(e,"Capitalize")?ua(t[0]):u.IsEqual(e,"ConstructorParameters")?fa(t[0]):u.IsEqual(e,"Evaluate")?qy(t[0]):u.IsEqual(e,"Exclude")?ga(t[0],t[1]):u.IsEqual(e,"Extract")?ha(t[0],t[1]):u.IsEqual(e,"Index")?Ts(t[0],t[1]):u.IsEqual(e,"InstanceType")?xa(t[0]):u.IsEqual(e,"Lowercase")?ca(t[0]):u.IsEqual(e,"NonNullable")?ya(t[0]):u.IsEqual(e,"Omit")?ba(t[0],t[1]):u.IsEqual(e,"Parameters")?Ia(t[0]):u.IsEqual(e,"Partial")?$a(t[0]):u.IsEqual(e,"Pick")?wa(t[0],t[1]):u.IsEqual(e,"Readonly")?ka(t[0]):u.IsEqual(e,"KeyOf")?vs(t[0]):u.IsEqual(e,"Record")?ea(t[0],t[1]):u.IsEqual(e,"Required")?Ta(t[0]):u.IsEqual(e,"ReturnType")?va(t[0]):u.IsEqual(e,"Uncapitalize")?pa(t[0]):u.IsEqual(e,"Uppercase")?la(t[0]):ks(qn(e),t)}function Lr(){throw Error("Unreachable")}function Gh(e,t=[]){return u.ShiftLeft(e,(n,r)=>Gh(r,[...t,n[1]]),()=>t)}function Un(e){return u.IsEqual(e.length,3)?[e[0],...Gh(e[1])]:[]}function Wh(e){return Or(e[0],e[2],e[4])}function Bh(e){return Or(e[0],e[2],e[2])}function zh(e){return Or(e[0],Ye(),e[2])}function Hh(e){return Or(e,Ye(),Ye())}function Vh(e){return Un(e)}function Jh(e){return e[1]}function Yh(e){return Un(e)}function Xh(e){return e[1]}function Zh(e){return JR(e[0],e[1])}function Qh(e){return null}function ex(e){return Jt()}function tx(e){return Ot()}function nx(e){return Di()}function rx(e){return lo()}function ox(e){return oo()}function sx(e){return Ar()}function ix(e){return ps()}function ax(e){return Ye()}function mx(e){return to()}function ux(e){return G({})}function cx(e){return fe()}function px(e){return ao()}function lx(e){return ia()}function dx(e){return ra()}function fx(e){return ne(BigInt(e))}function gx(e){return ne(u.IsEqual(e,"true"))}function hx(e){return ne(parseFloat(e))}function xx(e){return ne(e)}function yx(e){return e[1]}function bx(e){return ne(e)}function Ix(e){return u.IsEqual(e.length,3)?[e[0],e[1],...e[2]]:[e[0]]}function $x(e){return e[1]}function wx(e){return ma(e)}function kx(e){return u.IsEqual(e.length,6)?Tr(e[1],e[3],e[5]):Tr(e[1],e[3],Ye())}function Tx(e){return e.length>0}function vx(e){return e.reduce((t,n)=>u.IsEqual(n.length,3)?[...t,[n[1]]]:[...t,[]],[])}function Ex(e){return u.IsEqual(e.length,6)?[e[1],e[3],e[5]]:[]}function Sx(e){return u.IsArray(e)&&u.IsEqual(e.length,3)?e[1]:e}function Px(e){return u.IsEqual(e.length,2)?e[1]:[]}function _h(e,t){return t.reduce((n,r)=>{let o=r;return u.IsEqual(o.length,1)?Ts(n,o[0]):u.IsEqual(o.length,0)?Nt(n):Lr()},e)}function qh(e,t){return u.IsEqual(t.length,3)?da(e,t[0],t[1],t[2]):e}function YR(e,t){return u.IsArray(t)&&u.IsEqual(t.length,0)?e:Ea(e,t)}function Ax(e){let[t,n,r,o,s]=e;return YR(qh(t?vs(_h(n,r)):_h(n,r),o),s)}function Lc(e,t){return u.IsEqual(t.length,3)?(()=>{let[n,r,o]=t,s=Lc(r,o);if(u.IsEqual(n,"&"))return te(s)?kt([e,...s.allOf]):kt([e,s]);if(u.IsEqual(n,"|"))return j(s)?Y([e,...s.anyOf]):Y([e,s]);Lr()})():e}function Rx(e){let[t,n]=e;return Lc(t,n)}function Ox(e){let[t,n]=e;return Lc(t,n)}function Mx(e){return _y(e[1])}function Cx(e){return e[1]}function Lx(e){return Xn(e[0],e[2])}function jx(e){return u.IsEqual(e.length,4)?rs(e[1],e[3]):u.IsEqual(e.length,2)?rs(e[1],Ye()):Lr()}function Fx(e){return`${e}`}function Dx(e){return ft(e[3])?or:je(e[3])?mo:er(e[3])?mn:ht(e[3])?mn:Lr()}function Nx(e){return e.length>0}function _x(e){return e.length>0}function qx(e){let[t,n,r,o,s]=e;return{[n]:t&&r?Tn(In(s)):t&&!r?Tn(s):!t&&r?In(s):s}}function Ux(e){return Un(e)}function Kx(e){return e.reduce((t,n)=>u.HasPropertyKey(n,or)||u.HasPropertyKey(n,mo)||u.HasPropertyKey(n,mn)?[t[0],d.Assign(t[1],n)]:[d.Assign(t[0],n),t[1]],[{},{}])}function Gx(e){return Kx(e[1])}function Wx(e){let[t,n]=e,r=u.IsEqual(u.Keys(n).length,0)?{}:{patternProperties:n};return G(t,r)}function Bx(e){return u.IsEqual(e.length,5)?Tn(In(e[4])):u.IsEqual(e.length,3)?e[2]:u.IsEqual(e.length,4)?u.IsEqual(e[2],"readonly")?Tn(e[3]):In(e[3]):Lr()}function zx(e){if(!u.IsArray(e)||!u.IsEqual(e.length,3))return e;let[t,n,r]=e;return t&&r?Tn(In(n)):t&&!r?Tn(n):!t&&r?In(n):n}function Hx(e){return u.IsEqual(e.length,2)?Mr(e[1]):u.IsEqual(e.length,1)?e[0]:Lr()}function Vx(e){return Un(e)}function Jx(e){return Fe(e[1])}function Yx(e){return Tn(In(e[4]))}function Xx(e){return Tn(e[3])}function Zx(e){return In(e[3])}function Qx(e){return e[2]}function ey(e){return u.IsEqual(e.length,2)?Mr(e[1]):u.IsEqual(e.length,1)?e[0]:Lr()}function ty(e){return Un(e)}function ny(e){return bn(e[1],e[4])}function ry(e){return yn(e[2],e[5])}function Uh(e,t){return u.IsEqual(e,"remove")?uh(t):u.IsEqual(e,"add")?Tn(t):t}function oy(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 Kh(e,t){return u.IsEqual(e,"remove")?lh(t):u.IsEqual(e,"add")?In(t):t}function sy(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 iy(e){return u.IsEqual(e.length,2)?[e[1]]:[]}function ay(e){return u.IsArray(e[6])&&u.IsEqual(e[6].length,1)?$s(ls(e[3]),e[5],e[6][0],Uh(e[1],Kh(e[8],e[10]))):$s(ls(e[3]),e[5],qn(e[3]),Uh(e[1],Kh(e[8],e[10])))}function my(e){return qn(e)}function uy(e){return BigInt(e)}function cy(e){return parseFloat(e)}function py(e){return u.IsEqual(e,"true")}function ly(e){return null}function dy(e){return{[e[0]]:e[2]}}function fy(e){return Un(e)}function XR(e){return e.reduce((t,n)=>d.Assign(t,n),{})}function gy(e){return XR(e[1])}function hy(e){return Un(e)}function xy(e){return e[1]}function yy(e){return ps()}function by(e){return Jt()}function Iy(e){return Ot()}function $y(e){return Ar()}function wy(e){return fe()}function ky(e){return ne(e)}function Ty(e){return Y(e[1])}function vy(e){return e.length===3?[...e[0],...e[2]]:e.length===1?[...e[0]]:[]}function Ey(e){return[e[0],...e[1]]}function Sy(e){return e[1]}function Py(e){return Un(e)}function Ay(e){return u.IsEqual(e.length,2)?e[1]:[]}function Ry(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]]:Xn(t,ws(n,r,s))}}function Oy(e){let t=e[2],[n,r]=e[3],o=u.IsEqual(u.Keys(r).length,0)?{}:{patternProperties:r};return{[e[1]]:ws(t,n,o)}}function My(e){return{[e[1]]:Xn(e[2],e[4])}}function Cy(e){return{[e[1]]:e[3]}}function Ly(e){return null}function jy(e){return Un(e)}function Fy(e){return e[1]}function Dy(e){let[t,n]=[e[0],e[1]];return Uy(d.Assign(t,Kx(n)[0]))}var Ny=m(()=>{S();M();aa();xo()});var Kn=m(()=>{Qr()});function Es(e){return se(e.length,2)}function Q(e,t,n){return Es(e)?t(e[0],e[1]):n()}var Mt=m(()=>{Kn()});function eO(e,t){return se(t.indexOf(e),0)?[e,t.slice(e.length)]:[]}function Se(e,t){for(let n=0;n<e.length;n++){let r=eO(e[n],t);if(Es(r))return r}return[]}var An=m(()=>{Mt();Kn()});function jc(e,t){return Array.from({length:t-e+1},(n,r)=>String.fromCharCode(e+r))}var Ky,Fc,Dc,yo,Gy,bo,ir,Sa,Wy,Pa,mt=m(()=>{Ky=[...jc(97,122),...jc(65,90)],Fc="0",Dc=jc(49,57),yo=[Fc,...Dc],Gy=" ",bo=`
|
|
12
|
+
`,ir="_",Sa=".",Wy="$",Pa="-"});function Hy(e){let t=e.indexOf(nO);return se(t,-1)?"":e.slice(t+2)}function Vy(e){let t=e.indexOf(bo);return se(t,-1)?"":e.slice(t)}function rO(e){return e.replace(/^[ \t\r\f\v]+/,"")}function Aa(e){let t=rO(e);return t.startsWith(zy)?Aa(Hy(t.slice(2))):t.startsWith(By)?Aa(Vy(t.slice(2))):t}function Ze(e){let t=e.trimStart();return t.startsWith(zy)?Ze(Hy(t.slice(2))):t.startsWith(By)?Ze(Vy(t.slice(2))):t}var By,zy,nO,Rn=m(()=>{Kn();mt();By="//",zy="/*",nO="*/"});function Ra(e,t){return Q(Se([e],t),(n,r)=>[n,r],()=>["",t])}var Nc=m(()=>{Mt();An()});function oO(e,t){return e.includes(t)}function Io(e,t,n,r=""){return Q(Se(e,n),(o,s)=>oO(t,o)?Io(e,t,s,r):Io(e,t,s,`${r}${o}`),()=>[r,n])}var _c=m(()=>{Mt();An()});function sO(e){return Se(Dc,e)}function aO(e){return Io(iO,[ir],e)}function mO(e){return Q(Se([Fc],e),(t,n)=>[t,n],()=>Q(sO(e),(t,n)=>Q(aO(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[]))}function Oa(e){return mO(Ze(e))}var iO,Ma=m(()=>{Mt();Rn();An();_c();mt();mt();mt();mt();iO=[...yo,ir]});function uO(e){return Ra(Pa,e)}function cO(e){return Q(uO(e),(t,n)=>Q(Oa(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Jy(e){return cO(Ze(e))}var qc=m(()=>{Mt();Rn();Nc();mt();Ma()});function pO(e){return Q(Jy(e),(t,n)=>Q(Se(["n"],n),(r,o)=>[`${t}`,o],()=>[]),()=>[])}function Uc(e){return pO(e)}var Yy=m(()=>{Mt();An();qc()});function Kc(e,t){return Se([e],t)}function h(e,t){return se(e,"")?["",t]:e.startsWith(bo)?Kc(e,Aa(t)):e.startsWith(Gy)?Kc(e,t):Kc(e,Ze(t))}var Xy=m(()=>{Kn();Rn();Rn();An();mt();mt()});function lO(e){return Se(Zy,e)}function Qy(e,t=""){return Q(Se(dO,e),(n,r)=>Qy(r,`${t}${n}`),()=>[t,e])}function fO(e){return Q(lO(e),(t,n)=>Q(Qy(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Re(e){return fO(Ze(e))}var Zy,dO,eb=m(()=>{Mt();Rn();An();mt();mt();mt();mt();Zy=[...Ky,ir,Wy];dO=[...Zy,...yo]});function hO(e){return Es(Se([Sa],e))}function tb(e){return Q(Io(gO,[ir],e),(t,n)=>se(t,"")?[]:[t,n],()=>[])}function xO(e){return Q(Se([Sa],e),(t,n)=>Q(tb(n),(r,o)=>[`0${t}${r}`,o],()=>[]),()=>[])}function yO(e){return Q(Oa(e),(t,n)=>Q(Se([Sa],n),(r,o)=>Q(tb(o),(s,a)=>[`${t}${r}${s}`,a],()=>[`${t}`,o]),()=>[`${t}`,n]),()=>[])}function bO(e){return hO(e)?xO(e):yO(e)}function nb(e){return bO(Ze(e))}var gO,Gc=m(()=>{Kn();Mt();Rn();An();_c();mt();mt();Ma();gO=[...yo,ir]});function IO(e){return Ra(Pa,e)}function $O(e){return Q(IO(e),(t,n)=>Q(nb(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Ca(e){return $O(Ze(e))}var rb=m(()=>{Mt();Rn();Nc();mt();Gc()});var ob=m(()=>{Kn()});function wO(e){return se(e,"")?[]:[e.slice(0,1),e.slice(1)]}function sb(e,t){return vi(e,(n,r)=>t.startsWith(n)?!0:sb(r,t),()=>!1)}function ar(e,t,n=""){return Q(wO(t),(r,o)=>sb(e,t)?[n,t]:ar(e,o,`${n}${r}`),()=>[])}var La=m(()=>{Mt();Kn()});function kO(e,t,n){return Q(Se([e],n),(r,o)=>Q(ar([t],o),(s,a)=>Q(Se([t],a),(c,p)=>[`${s}`,p],()=>[]),()=>[]),()=>[])}function TO(e,t,n){return Q(Se([e],n),(r,o)=>Q(ar([bo,t],o),(s,a)=>Q(Se([t],a),(c,p)=>[`${s}`,p],()=>[]),()=>[]),()=>[])}function ib(e,t,n,r){return n?kO(e,t,Ze(r)):TO(e,t,Ze(r))}var Wc=m(()=>{Mt();Rn();mt();An();La()});function vO(e,t){return Se(e,t)}function EO(e,t){return ib(e,e,!1,t)}function SO(e,t){return Q(vO(e,t),(n,r)=>EO(n,`${n}${r}`),()=>[])}function ja(e,t){return SO(e,Ze(t))}var ab=m(()=>{Mt();An();Rn();Wc()});function mb(e,t){return Q(ar(e,t),(n,r)=>se(n,"")?[]:[n,r],()=>[])}var ub=m(()=>{Kn();Mt();La()});var cb=m(()=>{Yy();Xy();eb();qc();rb();ob();Wc();ab();Ma();Gc();ub();La()});var i,AO,RO,OO,MO,db,fb,CO,Hc,gb,LO,jO,FO,hb,xb,yb,DO,NO,_O,bb,qO,UO,KO,GO,WO,Ib,BO,zO,HO,Bc,$b,Vc,VO,JO,YO,XO,ZO,QO,eM,wb,tM,nM,rM,oM,kb,Tb,vb,Eb,Fa,sM,iM,aM,mM,ie,uM,cM,pM,lM,Sb,Pb,Ab,Rb,Da,Ob,dM,Jc,fM,gM,pb,Mb,Cb,hM,xM,yM,bM,IM,$M,lb,Lb,jb,Fb,wM,kM,TM,vM,EM,SM,PM,AM,RM,OM,MM,CM,LM,Db,Nb,jM,_b,qb,FM,DM,Yc,NM,_M,qM,UM,KM,GM,WM,BM,Ub,zc,Xc,Jg,Kb,zM,Gb,HM,VM,JM,YM,XM,Wb,Bb,ZM,Zc,QM,zb,Ki=m(()=>{Ny();cb();i=(e,t,n=()=>[])=>e.length===2?t(e):n(),AO=e=>i(i(Re(e),([t,n])=>i(h("extends",n),([r,o])=>i(ie(o),([s,a])=>i(h("=",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Wh(t),n]),RO=e=>i(i(Re(e),([t,n])=>i(h("extends",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Bh(t),n]),OO=e=>i(i(Re(e),([t,n])=>i(h("=",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[zh(t),n]),MO=e=>i(Re(e),([t,n])=>[Hh(t),n]),db=e=>i(i(AO(e),([t,n])=>[t,n],()=>i(RO(e),([t,n])=>[t,n],()=>i(OO(e),([t,n])=>[t,n],()=>i(MO(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),fb=(e,t=[])=>i(i(h(",",e),([n,r])=>i(db(r),([o,s])=>[[n,o],s])),([n,r])=>fb(r,[...t,n]),()=>[t,e]),CO=e=>i(i(i(db(e),([t,n])=>i(fb(n),([r,o])=>i(i(h(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Vh(t),n]),Hc=e=>i(i(h("<",e),([t,n])=>i(CO(n),([r,o])=>i(h(">",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Jh(t),n]),gb=(e,t=[])=>i(i(h(",",e),([n,r])=>i(ie(r),([o,s])=>[[n,o],s])),([n,r])=>gb(r,[...t,n]),()=>[t,e]),LO=e=>i(i(i(ie(e),([t,n])=>i(gb(n),([r,o])=>i(i(h(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Yh(t),n]),jO=e=>i(i(h("<",e),([t,n])=>i(LO(n),([r,o])=>i(h(">",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Xh(t),n]),FO=e=>i(i(Re(e),([t,n])=>i(jO(n),([r,o])=>[[t,r],o])),([t,n])=>[Zh(t),n]),hb=e=>i(i(i(h(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Qh(t),n]),xb=e=>i(h("string",e),([t,n])=>[ex(t),n]),yb=e=>i(h("number",e),([t,n])=>[tx(t),n]),DO=e=>i(h("boolean",e),([t,n])=>[nx(t),n]),NO=e=>i(h("undefined",e),([t,n])=>[rx(t),n]),_O=e=>i(h("null",e),([t,n])=>[ox(t),n]),bb=e=>i(h("integer",e),([t,n])=>[sx(t),n]),qO=e=>i(h("bigint",e),([t,n])=>[ix(t),n]),UO=e=>i(h("unknown",e),([t,n])=>[ax(t),n]),KO=e=>i(h("any",e),([t,n])=>[mx(t),n]),GO=e=>i(h("object",e),([t,n])=>[ux(t),n]),WO=e=>i(h("never",e),([t,n])=>[cx(t),n]),Ib=e=>i(h("symbol",e),([t,n])=>[px(t),n]),BO=e=>i(h("void",e),([t,n])=>[lx(t),n]),zO=e=>i(h("this",e),([t,n])=>[dx(t),n]),HO=e=>i(i(h("${",e),([t,n])=>i(ie(n),([r,o])=>i(h("}",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[yx(t),n]),Bc=e=>i(ar(["${","`"],e),([t,n])=>[bx(t),n]),$b=e=>i(i(i(Bc(e),([t,n])=>i(HO(n),([r,o])=>i($b(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i(i(Bc(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(Bc(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[Ix(t),n]),Vc=e=>i(i(h("`",e),([t,n])=>i($b(n),([r,o])=>i(h("`",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[$x(t),n]),VO=e=>i(Vc(e),([t,n])=>[wx(t),n]),JO=e=>i(i(i(h("if",e),([t,n])=>i(ie(n),([r,o])=>i(h("then",o),([s,a])=>i(ie(a),([c,p])=>i(h("else",p),([f,I])=>i(ie(I),([$,R])=>[[t,r,s,c,f,$],R])))))),([t,n])=>[t,n],()=>i(i(h("if",e),([t,n])=>i(ie(n),([r,o])=>i(h("then",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[t,n],()=>[])),([t,n])=>[kx(t),n]),YO=e=>i(Uc(e),([t,n])=>[fx(t),n]),XO=e=>i(i(h("true",e),([t,n])=>[t,n],()=>i(h("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[gx(t),n]),ZO=e=>i(Ca(e),([t,n])=>[hx(t),n]),QO=e=>i(ja(["'",'"'],e),([t,n])=>[xx(t),n]),eM=e=>i(i(i(h("keyof",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Tx(t),n]),wb=(e,t=[])=>i(i(i(h("[",e),([n,r])=>i(ie(r),([o,s])=>i(h("]",s),([a,c])=>[[n,o,a],c]))),([n,r])=>[n,r],()=>i(i(h("[",e),([n,r])=>i(h("]",r),([o,s])=>[[n,o],s])),([n,r])=>[n,r],()=>[])),([n,r])=>wb(r,[...t,n]),()=>[t,e]),tM=e=>i(wb(e),([t,n])=>[vx(t),n]),nM=e=>i(i(i(h("extends",e),([t,n])=>i(ie(n),([r,o])=>i(h("?",o),([s,a])=>i(ie(a),([c,p])=>i(h(":",p),([f,I])=>i(ie(I),([$,R])=>[[t,r,s,c,f,$],R])))))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Ex(t),n]),rM=e=>i(i(i(h("(",e),([t,n])=>i(ie(n),([r,o])=>i(h(")",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i(xb(e),([t,n])=>[t,n],()=>i(yb(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(bb(e),([t,n])=>[t,n],()=>i(qO(e),([t,n])=>[t,n],()=>i(UO(e),([t,n])=>[t,n],()=>i(KO(e),([t,n])=>[t,n],()=>i(GO(e),([t,n])=>[t,n],()=>i(WO(e),([t,n])=>[t,n],()=>i(Ib(e),([t,n])=>[t,n],()=>i(BO(e),([t,n])=>[t,n],()=>i(zO(e),([t,n])=>[t,n],()=>i(YO(e),([t,n])=>[t,n],()=>i(XO(e),([t,n])=>[t,n],()=>i(ZO(e),([t,n])=>[t,n],()=>i(QO(e),([t,n])=>[t,n],()=>i(VO(e),([t,n])=>[t,n],()=>i(JO(e),([t,n])=>[t,n],()=>i(fM(e),([t,n])=>[t,n],()=>i(xM(e),([t,n])=>[t,n],()=>i(kM(e),([t,n])=>[t,n],()=>i(wM(e),([t,n])=>[t,n],()=>i(SM(e),([t,n])=>[t,n],()=>i(FO(e),([t,n])=>[t,n],()=>i(PM(e),([t,n])=>[t,n],()=>[])))))))))))))))))))))))))))),([t,n])=>[Sx(t),n]),oM=e=>i(i(i(h("with",e),([t,n])=>i(_b(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Px(t),n]),kb=e=>i(i(eM(e),([t,n])=>i(rM(n),([r,o])=>i(tM(o),([s,a])=>i(nM(a),([c,p])=>i(oM(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Ax(t),n]),Tb=e=>i(i(i(h("&",e),([t,n])=>i(kb(n),([r,o])=>i(Tb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),vb=e=>i(i(kb(e),([t,n])=>i(Tb(n),([r,o])=>[[t,r],o])),([t,n])=>[Rx(t),n]),Eb=e=>i(i(i(h("|",e),([t,n])=>i(vb(n),([r,o])=>i(Eb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),Fa=e=>i(i(vb(e),([t,n])=>i(Eb(n),([r,o])=>[[t,r],o])),([t,n])=>[Ox(t),n]),sM=e=>i(i(h("readonly",e),([t,n])=>i(Fa(n),([r,o])=>[[t,r],o])),([t,n])=>[Mx(t),n]),iM=e=>i(i(h("|",e),([t,n])=>i(Fa(n),([r,o])=>[[t,r],o])),([t,n])=>[Cx(t),n]),aM=e=>i(i(Hc(e),([t,n])=>i(h("=",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Lx(t),n]),mM=e=>i(i(i(h("infer",e),([t,n])=>i(Re(n),([r,o])=>i(h("extends",o),([s,a])=>i(Fa(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[t,n],()=>i(i(h("infer",e),([t,n])=>i(Re(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>[])),([t,n])=>[jx(t),n]),ie=e=>i(i(mM(e),([t,n])=>[t,n],()=>i(iM(e),([t,n])=>[t,n],()=>i(sM(e),([t,n])=>[t,n],()=>i(Fa(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),uM=e=>i(Ca(e),([t,n])=>[Fx(t),n]),cM=e=>i(Re(e),([t,n])=>[t,n]),pM=e=>i(ja(["'",'"'],e),([t,n])=>[t,n]),lM=e=>i(i(h("[",e),([t,n])=>i(Re(n),([r,o])=>i(h(":",o),([s,a])=>i(i(bb(a),([c,p])=>[c,p],()=>i(yb(a),([c,p])=>[c,p],()=>i(xb(a),([c,p])=>[c,p],()=>i(Ib(a),([c,p])=>[c,p],()=>[])))),([c,p])=>i(h("]",p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Dx(t),n]),Sb=e=>i(i(uM(e),([t,n])=>[t,n],()=>i(cM(e),([t,n])=>[t,n],()=>i(pM(e),([t,n])=>[t,n],()=>i(lM(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),Pb=e=>i(i(i(h("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Nx(t),n]),Ab=e=>i(i(i(h("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[_x(t),n]),Rb=e=>i(i(Pb(e),([t,n])=>i(Sb(n),([r,o])=>i(Ab(o),([s,a])=>i(h(":",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[qx(t),n]),Da=e=>i(i(i(h(",",e),([t,n])=>i(h(`
|
|
13
|
+
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(h(";",e),([t,n])=>i(h(`
|
|
14
|
+
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(h(",",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(h(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(h(`
|
|
15
|
+
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))))),([t,n])=>[t,n]),Ob=(e,t=[])=>i(i(Da(e),([n,r])=>i(Rb(r),([o,s])=>[[n,o],s])),([n,r])=>Ob(r,[...t,n]),()=>[t,e]),dM=e=>i(i(i(Rb(e),([t,n])=>i(Ob(n),([r,o])=>i(i(Da(o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Ux(t),n]),Jc=e=>i(i(h("{",e),([t,n])=>i(dM(n),([r,o])=>i(h("}",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Gx(t),n]),fM=e=>i(Jc(e),([t,n])=>[Wx(t),n]),gM=e=>i(i(i(Re(e),([t,n])=>i(h("?",n),([r,o])=>i(h(":",o),([s,a])=>i(h("readonly",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[t,n],()=>i(i(Re(e),([t,n])=>i(h(":",n),([r,o])=>i(h("readonly",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[t,n],()=>i(i(Re(e),([t,n])=>i(h("?",n),([r,o])=>i(h(":",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[t,n],()=>i(i(Re(e),([t,n])=>i(h(":",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>[])))),([t,n])=>[Bx(t),n]),pb=e=>i(i(gM(e),([t,n])=>[t,n],()=>i(i(Pb(e),([t,n])=>i(ie(n),([r,o])=>i(Ab(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>[])),([t,n])=>[zx(t),n]),Mb=e=>i(i(i(h("...",e),([t,n])=>i(pb(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(pb(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[])),([t,n])=>[Hx(t),n]),Cb=(e,t=[])=>i(i(h(",",e),([n,r])=>i(Mb(r),([o,s])=>[[n,o],s])),([n,r])=>Cb(r,[...t,n]),()=>[t,e]),hM=e=>i(i(i(Mb(e),([t,n])=>i(Cb(n),([r,o])=>i(i(h(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Vx(t),n]),xM=e=>i(i(h("[",e),([t,n])=>i(hM(n),([r,o])=>i(h("]",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Jx(t),n]),yM=e=>i(i(Re(e),([t,n])=>i(h("?",n),([r,o])=>i(h(":",o),([s,a])=>i(h("readonly",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Yx(t),n]),bM=e=>i(i(Re(e),([t,n])=>i(h(":",n),([r,o])=>i(h("readonly",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[Xx(t),n]),IM=e=>i(i(Re(e),([t,n])=>i(h("?",n),([r,o])=>i(h(":",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[Zx(t),n]),$M=e=>i(i(Re(e),([t,n])=>i(h(":",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Qx(t),n]),lb=e=>i(i(yM(e),([t,n])=>[t,n],()=>i(bM(e),([t,n])=>[t,n],()=>i(IM(e),([t,n])=>[t,n],()=>i($M(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),Lb=e=>i(i(i(h("...",e),([t,n])=>i(lb(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(lb(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[])),([t,n])=>[ey(t),n]),jb=(e,t=[])=>i(i(h(",",e),([n,r])=>i(Lb(r),([o,s])=>[[n,o],s])),([n,r])=>jb(r,[...t,n]),()=>[t,e]),Fb=e=>i(i(i(Lb(e),([t,n])=>i(jb(n),([r,o])=>i(i(h(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[ty(t),n]),wM=e=>i(i(h("(",e),([t,n])=>i(Fb(n),([r,o])=>i(h(")",o),([s,a])=>i(h("=>",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[ny(t),n]),kM=e=>i(i(h("new",e),([t,n])=>i(h("(",n),([r,o])=>i(Fb(o),([s,a])=>i(h(")",a),([c,p])=>i(h("=>",p),([f,I])=>i(ie(I),([$,R])=>[[t,r,s,c,f,$],R])))))),([t,n])=>[ry(t),n]),TM=e=>i(i(i(h("+",e),([t,n])=>i(h("readonly",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(h("-",e),([t,n])=>i(h("readonly",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(h("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])))),([t,n])=>[oy(t),n]),vM=e=>i(i(i(h("+",e),([t,n])=>i(h("?",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(h("-",e),([t,n])=>i(h("?",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(h("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])))),([t,n])=>[sy(t),n]),EM=e=>i(i(i(h("as",e),([t,n])=>i(ie(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[iy(t),n]),SM=e=>i(i(h("{",e),([t,n])=>i(TM(n),([r,o])=>i(h("[",o),([s,a])=>i(Re(a),([c,p])=>i(h("in",p),([f,I])=>i(ie(I),([$,R])=>i(EM(R),([C,P])=>i(h("]",P),([N,J])=>i(vM(J),([ae,xe])=>i(h(":",xe),([Te,ze])=>i(ie(ze),([Ut,ye])=>i(hb(ye),([re,v])=>i(h("}",v),([He,Kt])=>[[t,r,s,c,f,$,C,N,ae,Te,Ut,re,He],Kt]))))))))))))),([t,n])=>[ay(t),n]),PM=e=>i(Re(e),([t,n])=>[my(t),n]),AM=e=>i(Uc(e),([t,n])=>[uy(t),n]),RM=e=>i(Ca(e),([t,n])=>[cy(t),n]),OM=e=>i(i(h("true",e),([t,n])=>[t,n],()=>i(h("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[py(t),n]),MM=e=>i(ja(['"',"'"],e),([t,n])=>[t,n]),CM=e=>i(h("null",e),([t,n])=>[ly(t),n]),LM=e=>i(h("undefined",e),([t,n])=>[void 0,n]),Db=e=>i(i(Sb(e),([t,n])=>i(h(":",n),([r,o])=>i(Yc(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[dy(t),n]),Nb=(e,t=[])=>i(i(Da(e),([n,r])=>i(Db(r),([o,s])=>[[n,o],s])),([n,r])=>Nb(r,[...t,n]),()=>[t,e]),jM=e=>i(i(i(Db(e),([t,n])=>i(Nb(n),([r,o])=>i(i(Da(o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[fy(t),n]),_b=e=>i(i(h("{",e),([t,n])=>i(jM(n),([r,o])=>i(h("}",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[gy(t),n]),qb=(e,t=[])=>i(i(h(",",e),([n,r])=>i(Yc(r),([o,s])=>[[n,o],s])),([n,r])=>qb(r,[...t,n]),()=>[t,e]),FM=e=>i(i(i(Yc(e),([t,n])=>i(qb(n),([r,o])=>i(i(h(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[hy(t),n]),DM=e=>i(i(h("[",e),([t,n])=>i(FM(n),([r,o])=>i(h("]",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[xy(t),n]),Yc=e=>i(i(AM(e),([t,n])=>[t,n],()=>i(RM(e),([t,n])=>[t,n],()=>i(OM(e),([t,n])=>[t,n],()=>i(MM(e),([t,n])=>[t,n],()=>i(CM(e),([t,n])=>[t,n],()=>i(LM(e),([t,n])=>[t,n],()=>i(_b(e),([t,n])=>[t,n],()=>i(DM(e),([t,n])=>[t,n],()=>[])))))))),([t,n])=>[t,n]),NM=e=>i(h("-?(?:0|[1-9][0-9]*)n",e),([t,n])=>[yy(t),n]),_M=e=>i(h(".*",e),([t,n])=>[by(t),n]),qM=e=>i(h("-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?",e),([t,n])=>[Iy(t),n]),UM=e=>i(h("-?(?:0|[1-9][0-9]*)",e),([t,n])=>[$y(t),n]),KM=e=>i(h("(?!)",e),([t,n])=>[wy(t),n]),GM=e=>i(mb(["-?(?:0|[1-9][0-9]*)n",".*","-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?","-?(?:0|[1-9][0-9]*)","(?!)","(",")","$","|"],e),([t,n])=>[ky(t),n]),WM=e=>i(i(NM(e),([t,n])=>[t,n],()=>i(_M(e),([t,n])=>[t,n],()=>i(qM(e),([t,n])=>[t,n],()=>i(UM(e),([t,n])=>[t,n],()=>i(KM(e),([t,n])=>[t,n],()=>i(BM(e),([t,n])=>[t,n],()=>i(GM(e),([t,n])=>[t,n],()=>[]))))))),([t,n])=>[t,n]),BM=e=>i(i(h("(",e),([t,n])=>i(Xc(n),([r,o])=>i(h(")",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Ty(t),n]),Ub=e=>i(i(i(zc(e),([t,n])=>i(h("|",n),([r,o])=>i(Ub(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i(i(zc(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[]))),([t,n])=>[vy(t),n]),zc=e=>i(i(WM(e),([t,n])=>i(Xc(n),([r,o])=>[[t,r],o])),([t,n])=>[Ey(t),n]),Xc=e=>i(i(Ub(e),([t,n])=>[t,n],()=>i(zc(e),([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),Jg=e=>i(i(h("^",e),([t,n])=>i(Xc(n),([r,o])=>i(h("$",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Sy(t),n]),Kb=(e,t=[])=>i(i(h(",",e),([n,r])=>i(ie(r),([o,s])=>[[n,o],s])),([n,r])=>Kb(r,[...t,n]),()=>[t,e]),zM=e=>i(i(i(ie(e),([t,n])=>i(Kb(n),([r,o])=>i(i(h(",",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]),Gb=e=>i(i(i(h("extends",e),([t,n])=>i(zM(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Ay(t),n]),HM=e=>i(i(h("interface",e),([t,n])=>i(Re(n),([r,o])=>i(Hc(o),([s,a])=>i(Gb(a),([c,p])=>i(Jc(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Ry(t),n]),VM=e=>i(i(h("interface",e),([t,n])=>i(Re(n),([r,o])=>i(Gb(o),([s,a])=>i(Jc(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[Oy(t),n]),JM=e=>i(i(h("type",e),([t,n])=>i(Re(n),([r,o])=>i(Hc(o),([s,a])=>i(h("=",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[My(t),n]),YM=e=>i(i(h("type",e),([t,n])=>i(Re(n),([r,o])=>i(h("=",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[Cy(t),n]),XM=e=>i(i(i(h("export",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Ly(t),n]),Wb=e=>i(i(i(h(";",e),([t,n])=>i(h(`
|
|
16
|
+
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(h(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(h(`
|
|
17
|
+
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n]),Bb=(e,t=[])=>i(i(Wb(e),([n,r])=>i(Zc(r),([o,s])=>[[n,o],s])),([n,r])=>Bb(r,[...t,n]),()=>[t,e]),ZM=e=>i(i(i(Zc(e),([t,n])=>i(Bb(n),([r,o])=>i(i(Wb(o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[jy(t),n]),Zc=e=>i(i(XM(e),([t,n])=>i(i(HM(n),([r,o])=>[r,o],()=>i(VM(n),([r,o])=>[r,o],()=>i(JM(n),([r,o])=>[r,o],()=>i(YM(n),([r,o])=>[r,o],()=>[])))),([r,o])=>i(hb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Fy(t),n]),QM=e=>i(i(Zc(e),([t,n])=>i(ZM(n),([r,o])=>[[t,r],o])),([t,n])=>[Dy(t),n]),zb=e=>i(i(QM(e),([t,n])=>[t,n],()=>i(aM(e),([t,n])=>[t,n],()=>i(ie(e),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n])});function Hb(e){let t=Vc(`\`${e}\``);return u.IsEqual(t.length,2)?t[0]:_e()}var Qc=m(()=>{kn();M();Ki()});function tC(e){return e.join("|")}function nC(e){return e.slice(1,e.length-1)}function rC(e,t,n){return mr(t,`${n}${e}`)}function oC(e,t){return mr(e,`${t}${Gg}`)}function sC(e,t){return mr(e,`${t}${Ni}`)}function iC(e,t){return mr(e,`${t}${qi}`)}function aC(e,t){return Ss(Y([ne("false"),ne("true")]),e,t)}function mC(e,t){return mr(e,`${t}${Ui}`)}function uC(e,t,n){return mr(t,`${n}${nC(e)}`)}function cC(e,t,n){let r=Ps(e,{});return Ss(r,t,n)}function pC(e,t,n){let r=xt(e);return Ss(r,t,n)}function Vb(e,t,n,r=[]){return u.ShiftLeft(e,(o,s)=>Vb(s,t,n,[...r,Ss(o,[],"")]),()=>mr(t,`${n}(${tC(r)})`))}function Ss(e,t,n){return rt(e)?pC(e.enum,t,n):ft(e)?sC(t,n):pe(e)?rC(e.const,t,n):vn(e)?oC(t,n):Vt(e)?aC(t,n):je(e)?iC(t,n):ht(e)?mC(t,n):Ae(e)?uC(e.pattern,t,n):Yb(e)?cC(e.parameters[0],t,n):j(e)?Vb(e.anyOf,t,n):Mf}function mr(e,t){return u.ShiftLeft(e,(n,r)=>Ss(n,r,t),()=>t)}function lC(e){return`^${mr(e,"")}$`}function Jb(e){let t=lC(e);return Bi(t)}var ep=m(()=>{M();an();Le();Z();Tt();Pr();Yt();gt();En();Qn();Je();zi();V();Na()});function Ps(e,t){return z(e)?d.Update(Jb(e),{},t):ma(e,t)}function Xb(e,t,n,r){let o=_t(e,t,n);return Ps(o,r)}var Na=m(()=>{S();Tt();ep();q()});function ma(e,t={}){return F("TemplateLiteral",[e],t)}function Yb(e){return De(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"TemplateLiteral")}function Zb(e){return Ps(e,{})}function dC(e){let t=Hb(e);return Zb(t)}function Qb(e,t={}){let n=u.IsString(e)?dC(e):Zb(e);return d.Update(n,{},t)}function Ae(e){return L(e,"TemplateLiteral")}var Tt=m(()=>{os();M();H();ue();Qc();Na()});var W={};Dt(W,{ExtendsFalse:()=>B,ExtendsTrue:()=>O,ExtendsUnion:()=>tp,IsExtendsFalse:()=>fC,IsExtendsTrue:()=>tI,IsExtendsTrueLike:()=>$o,IsExtendsUnion:()=>eI,Match:()=>$e});function tp(e){return d.Create({"~kind":"ExtendsUnion"},{inferred:e})}function eI(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"inferred")&&u.IsEqual(e["~kind"],"ExtendsUnion")&&u.IsObject(e.inferred)}function O(e){return d.Create({"~kind":"ExtendsTrue"},{inferred:e})}function tI(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 fC(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.IsEqual(e["~kind"],"ExtendsFalse")}function $o(e){return eI(e)||tI(e)}function $e(e,t,n){return $o(e)?t(e.inferred):n()}var be=m(()=>{M();S()});function gC(e,t,n,r){return $e(oe(e,n,r),o=>O(d.Assign(d.Assign(e,o),{[t]:n})),()=>B())}function hC(e,t){return O(e)}function xC(e,t,n,r,o){return $e(oe(e,t,n),s=>$e(oe(s,t,r),a=>O(a),()=>B()),()=>$e(oe(e,t,o),s=>O(s),()=>B()))}function yC(e,t,n){let r=xt(n);return oe(e,t,r)}function nI(e,t,n){return u.ShiftLeft(n,(r,o)=>$e(oe(e,t,r),s=>nI(s,t,o),()=>B()),()=>O(e))}function bC(e,t,n){let r=at(n);return oe(e,t,r)}function rI(e,t,n){return u.ShiftLeft(n,(r,o)=>$e(oe(e,t,r),s=>O(s),()=>rI(e,t,o)),()=>B())}function le(e,t,n){return Ee(n)?hC(e,t):Pe(n)?xC(e,t,n.if,n.then,n.else):rt(n)?yC(e,t,n.enum):Ce(n)?gC(e,n.name,t,n.extends):te(n)?nI(e,t,n.allOf):Ae(n)?bC(e,t,n.pattern):j(n)?rI(e,t,n.anyOf):Me(n)?O(e):B()}var ut=m(()=>{M();S();$t();Rt();an();Ht();Ne();Tt();Z();tt();St();be();V();V()});function oI(e,t,n){return Ce(n)?le(e,t,n):Ee(n)?O(e):Me(n)?O(e):tp(e)}var sI=m(()=>{Ht();$t();tt();ut();be()});function IC(e,t){let n=vr(e),r=vr(t);return n&&r||!n&&r?!0:!(n&&!r)}function iI(e,t,n,r){return we(r)?IC(t,r)?oe(e,n,r.items):B():le(e,t,r)}var aI=m(()=>{dt();as();ut();St();be()});function mI(e,t,n){return vn(n)?O(e):le(e,t,n)}var uI=m(()=>{Pr();ut();be()});function cI(e,t,n){return Vt(n)?O(e):le(e,t,n)}var pI=m(()=>{Qn();ut();be()});function $C(e,t,n,r,o){let s=Ce(r)?t:r,a=Ce(r)?r:t,c=it(t),p=it(r);return!c&&p?B():$e(oe(e,s,a),f=>As(f,n,o),()=>B())}function wC(e,t,n,r){return u.ShiftLeft(r,(o,s)=>$C(e,t,n,o,s),()=>it(t)?O(e):B())}function kC(e,t,n){return u.ShiftLeft(t,(r,o)=>wC(e,r,o,n),()=>O(e))}function As(e,t,n){return kC(e,t,n)}var np=m(()=>{M();Ht();Zn();St();be()});function _a(e,t,n){return Pn(n)?O(e):oe(e,t,n)}var rp=m(()=>{Cr();St();be()});function lI(e,t,n,r){return Ee(r)?O(e):Me(r)?O(e):Ke(r)?$e(As(e,t,r.parameters),o=>_a(o,n,r.instanceType),()=>B()):B()}var dI=m(()=>{$t();Wt();tt();be();np();rp()});function fI(e,t,n,r,o){return $e(oe(e,t,o),()=>oe(e,n,o),()=>oe(e,r,o))}var gI=m(()=>{St();be()});function hI(e,t,n){let r=xt(t);return oe(e,r,n)}var xI=m(()=>{St();V()});function yI(e,t,n,r){return Ee(r)?O(e):Me(r)?O(e):Ge(r)?$e(As(e,t,r.parameters),o=>_a(o,n,r.returnType),()=>B()):B()}var bI=m(()=>{$t();Bt();tt();be();np();rp()});function II(e,t,n){return ft(n)?O(e):je(n)?O(e):le(e,t,n)}var $I=m(()=>{En();gt();ut();be()});function wI(e,t,n){let r=ke(t);return oe(e,r,n)}var kI=m(()=>{St();Rs()});function qa(e,t,n){return t===n?O(e):B()}function TC(e,t,n){return pe(n)?qa(e,t,n.const):vn(n)?O(e):le(e,ne(t),n)}function vC(e,t,n){return pe(n)?qa(e,t,n.const):Vt(n)?O(e):le(e,ne(t),n)}function EC(e,t,n){return pe(n)?qa(e,t,n.const):je(n)?O(e):le(e,ne(t),n)}function SC(e,t,n){return pe(n)?qa(e,t,n.const):ht(n)?O(e):le(e,ne(t),n)}function TI(e,t,n){return u.IsBigInt(t.const)?TC(e,t.const,n):u.IsBoolean(t.const)?vC(e,t.const,n):u.IsNumber(t.const)?EC(e,t.const,n):u.IsString(t.const)?SC(e,t.const,n):_e()}var vI=m(()=>{M();uc();Le();Pr();Qn();gt();Yt();ut();be()});function EI(e,t,n){return Ce(n)?le(e,t,n):O(e)}var SI=m(()=>{Ht();ut();be()});function PI(e,t,n){return so(n)?O(e):le(e,t,n)}var AI=m(()=>{io();ut();be()});function RI(e,t,n){return je(n)?O(e):le(e,t,n)}var OI=m(()=>{gt();ut();be()});function PC(e,t,n){return it(t)?it(n)?O(e):B():O(e)}function AC(e,t,n){return Ce(n)&&sn(n.extends)?B():$e(oe(e,t,n),r=>PC(r,t,n),()=>B())}function RC(e,t){return e.reduce((n,r)=>r in t?$o(t[r])?{...n,...t[r].inferred}:_e():_e(),{})}function OC(e,t,n){let r={};for(let a of u.Keys(n))r[a]=a in t?AC({},t[a],n[a]):it(n[a])?Ce(n[a])?O(d.Assign(e,{[n[a].name]:n[a].extends})):O(e):B();let o=u.Values(r).every(a=>$o(a)),s=o?RC(u.Keys(r),r):{};return o?O(s):B()}function MC(e,t,n){let r=OC(e,t,n);return $o(r)?O(d.Assign(e,r.inferred)):B()}function CC(e,t,n){return MC(e,t,n)}function LC(e,t){return u.Keys(t).reduce((n,r)=>({...n,[r]:u.HasPropertyKey(e,r)?j(n[r])?Y([...n[r].anyOf,t[r]]):Y([e[r],t[r]]):t[r]}),e)}function MI(e,t,n,r){return u.ShiftLeft(t,(o,s)=>$e(oe({},e[o],n),a=>MI(e,s,n,LC(r,a)),()=>B()),()=>O(r))}function jC(e,t,n,r){let o=u.Keys(t);return MI(t,o,r,e)}function CI(e,t,n){return st(n)?jC(e,t,Zt(n),yt(n)):ce(n)?CC(e,t,n.properties):le(e,G(t),n)}var LI=m(()=>{kn();S();M();Zn();Ht();Je();de();Xe();Z();St();ut();be()});function FC(e,t){return u.IsEqual(u.Keys(t).length,0)?O(e):B()}function DC(e,t,n,r,o){return oe(e,n,o)}function jI(e,t,n,r){return st(r)?DC(e,na(t),n,na(Zt(r)),yt(r)):ce(r)?FC(e,r.properties):Ee(r)?O(e):Me(r)?O(e):B()}var FI=m(()=>{M();$t();tt();de();Xe();St();be()});function DI(e,t,n){return ht(n)?O(e):le(e,t,n)}var NI=m(()=>{Yt();ut();be()});function _I(e,t,n){return er(n)?O(e):le(e,t,n)}var qI=m(()=>{Rr();ut();be()});function UI(e,t,n){let r=at(t);return oe(e,r,n)}var KI=m(()=>{St();V()});function op(e,t){return d.Create({"~kind":"Inferrable"},{name:e,type:t},{})}function Os(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 sp(e){return sr(e)?Ce(e.items)?we(e.items.extends)?op(e.items.name,e.items.extends.items):Me(e.items.extends)?op(e.items.name,e.items.extends):void 0:_e():void 0}function Ua(e){return Ce(e)?op(e.name,e.extends):void 0}function ip(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>$e(oe({},r,t),()=>ip(o,t,[...n,r]),()=>{}),()=>n)}function GI(e,t,n,r){let o=ip(n,r);return u.IsArray(o)?O(d.Assign(e,{[t]:Fe(o)})):B()}function Ka(e,t,n,r){let o=ip(n,r);return u.IsArray(o)?O(d.Assign(e,{[t]:Y(o)})):B()}var ap=m(()=>{kn();S();M();dt();tt();qe();St();Z();Ht();po();be()});function NC(e){return[...e].reverse()}function mp(e,t){return t?NC(e):e}function _C(e){let t=e.length>0?e[0]:void 0,n=De(t)?sp(t):void 0;return De(n)}function qC(e,t,n,r,o,s){return $e(oe(e,n,o),a=>WI(a,t,r,s),()=>B())}function UC(e,t,n,r,o){let s=sp(r);return Os(s)?GI(e,s.name,mp(n,t),s.type):u.ShiftLeft(n,(a,c)=>qC(e,t,a,c,r,o),()=>B())}function KC(e,t,n,r){return u.ShiftLeft(r,(o,s)=>UC(e,t,n,o,s),()=>u.IsEqual(n.length,0)?O(e):B())}function WI(e,t,n,r){return KC(e,t,n,r)}function GC(e,t,n){let r=ur(e,Ie([],[]),n),o=_C(r);return WI(e,o,mp(t,o),mp(r,o))}function BI(e,t,n){let r=Ua(n);return Os(r)?Ka(e,r.name,t,r.type):u.ShiftLeft(t,(o,s)=>$e(oe(e,o,n),a=>BI(a,s,n),()=>B()),()=>O(e))}function zI(e,t,n){let r=ur(e,Ie([],[]),t);return he(n)?GC(e,r,n.items):we(n)?BI(e,r,n.items):le(e,Fe(r),n)}var HI=m(()=>{M();H();dt();qe();St();ut();be();q();q();ap()});function VI(e,t,n){return Pn(n)?O(e):fo(n)?O(e):le(e,t,n)}var JI=m(()=>{go();Cr();ut();be()});function YI(e,t,n){return u.ShiftLeft(n,(r,o)=>$e(oe(e,t,r),s=>O(s),()=>YI(e,t,o)),()=>B())}function up(e,t,n){return u.ShiftLeft(t,(r,o)=>$e(YI(e,r,n),s=>up(s,o,n),()=>B()),()=>O(e))}function XI(e,t,n){let r=Ua(n);return Os(r)?Ka(e,r.name,t,r.type):j(n)?up(e,t,n.anyOf):up(e,t,[n])}var ZI=m(()=>{M();Z();St();be();ap()});function QI(e,t,n){return Ce(n)?le(e,t,n):Ee(n)?O(e):Me(n)?O(e):B()}var e$=m(()=>{$t();tt();Ht();ut();be()});function t$(e,t,n){return Pn(n)?O(e):le(e,t,n)}var n$=m(()=>{Cr();ut();be()});function oe(e,t,n){return Ee(t)?oI(e,t,n):we(t)?iI(e,t,t.items,n):vn(t)?mI(e,t,n):Vt(t)?cI(e,t,n):Ke(t)?lI(e,t.parameters,t.instanceType,n):Pe(t)?fI(e,t.if,t.then,t.else,n):rt(t)?hI(e,t.enum,n):Ge(t)?yI(e,t.parameters,t.returnType,n):ft(t)?II(e,t,n):te(t)?wI(e,t.allOf,n):pe(t)?TI(e,t,n):sn(t)?EI(e,t,n):so(t)?PI(e,t,n):je(t)?RI(e,t,n):ce(t)?CI(e,t.properties,n):st(t)?jI(e,Zt(t),yt(t),n):ht(t)?DI(e,t,n):er(t)?_I(e,t,n):Ae(t)?UI(e,t.pattern,n):he(t)?zI(e,t.items,n):fo(t)?VI(e,t,n):j(t)?XI(e,t.anyOf,n):Me(t)?QI(e,t,n):Pn(t)?t$(e,t,n):B()}var St=m(()=>{sI();aI();uI();pI();dI();gI();xI();bI();$I();kI();vI();SI();AI();OI();LI();FI();NI();qI();KI();HI();JI();ZI();e$();n$();$t();dt();Pr();Qn();Wt();Rt();an();Bt();En();Ne();Le();Je();io();gt();de();Xe();Yt();Rr();Tt();qe();go();tt();Z();Cr();be()});function WC(e,t){return ke([...e,G(t)])}function cp(e,t,n){return z(e)?d.Update(WC(e,t),{},n):ws(e,t,n)}function r$(e,t,n,r,o){let s=_t(e,t,n),a=Ms(e,t,r);return cp(s,a,o)}var Ga=m(()=>{S();de();V();xo();q();q();q()});function ws(e,t,n={}){return F("Interface",[e,t],n)}function wo(e){return De(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"Interface")}function o$(e,t,n={}){return cp(e,t,n)}var Cs=m(()=>{M();H();ue();Ga()});function BC(e,t,n){return e.includes(n)?!0:Ls([...e,n],t,t[n])}function s$(e,t,n){let r=Oi(n);return jr(e,t,r)}function jr(e,t,n){return u.ShiftLeft(n,(r,o)=>Ls(e,t,r)?!0:jr(e,t,o),()=>!1)}function Ls(e,t,n){return We(n)?BC(e,t,n.$ref):we(n)?Ls(e,t,n.items):Ke(n)?jr(e,t,[...n.parameters,n.instanceType]):Ge(n)?jr(e,t,[...n.parameters,n.returnType]):wo(n)?s$(e,t,n.parameters[1]):te(n)?jr(e,t,n.allOf):ce(n)?s$(e,t,n.properties):j(n)?jr(e,t,n.anyOf):he(n)?jr(e,t,n.items):st(n)?Ls(e,t,yt(n)):!1}function i$(e,t,n){return Ls(e,t,n)}var pp=m(()=>{M();dt();Wt();Bt();Ne();de();kr();Xe();qe();Z();zt();Cs()});function zC(e,t){return t.reduce((n,r)=>i$([r],e,e[r])?[...n,r]:n,[])}function a$(e){let t=Ri(e);return zC(e,t)}var lp=m(()=>{kr();pp()});function HC(e,t,n){return n.includes(t)?n:t in e?js(e,e[t],[...n,t]):_e()}function m$(e,t,n){let r=Oi(t);return ko(e,r,n)}function ko(e,t,n){return t.reduce((r,o)=>js(e,o,r),n)}function js(e,t,n){return We(t)?HC(e,t.$ref,n):we(t)?js(e,t.items,n):Ke(t)?ko(e,[...t.parameters,t.instanceType],n):Ge(t)?ko(e,[...t.parameters,t.returnType],n):wo(t)?m$(e,t.parameters[1],n):te(t)?ko(e,t.allOf,n):ce(t)?m$(e,t.properties,n):j(t)?ko(e,t.anyOf,n):he(t)?ko(e,t.items,n):st(t)?js(e,yt(t),n):n}function u$(e,t,n){return js(e,n,[t])}var dp=m(()=>{kn();dt();Wt();Bt();Ne();de();kr();Xe();qe();Z();zt();Cs()});function VC(e){return to()}function JC(e){return u.Keys(e).reduce((t,n)=>({...t,[n]:Fr(e[n])}),{})}function Fs(e){return e.reduce((t,n)=>[...t,Fr(n)],[])}function Fr(e){return We(e)?VC(e.$ref):we(e)?Nt(Fr(e.items),Ai(e)):Ke(e)?yn(Fs(e.parameters),Fr(e.instanceType)):Ge(e)?bn(Fs(e.parameters),Fr(e.returnType)):te(e)?kt(Fs(e.allOf)):ce(e)?G(JC(e.properties)):st(e)?ta(co(e),Fr(yt(e))):j(e)?Y(Fs(e.anyOf)):he(e)?Fe(Fs(e.items)):e}function YC(e,t){return t in e?Fr(e[t]):Ye()}function c$(e){return YC(e.$defs,e.$ref)}var p$=m(()=>{M();$t();dt();Wt();Bt();Ne();de();Xe();zt();qe();Z();tt()});function XC(e,t,n){let r=_t(e,Ie([],[]),t),o=Ms({},Ie([],[]),n);return ke([...r,G(o)])}function ZC(e,t){return u.Keys(e).filter(r=>t.includes(r)).reduce((r,o)=>{let s=e[o],a=wo(s)?XC(e,s.parameters[0],s.parameters[1]):s;return{...r,[o]:a}},{})}function l$(e,t,n){let r=u$(e,t,n),o=ZC(e,r);return $n(o,t)}var fp=m(()=>{M();wt();de();dp();xo();q();q();q();V()});function d$(e,t){return t in e?We(e[t])?d$(e,e[t].$ref):e[t]:fe()}function On(e,t){return d$(e,t)}var Dr=m(()=>{Je();zt()});var gp=m(()=>{lp();pp();dp();p$();fp();Dr()});function f$(e){return nt(e)?c$(e):Mi(e)?Ye():e}function ot(e,t,n){let r=f$(t),o=f$(n);return oe(e,r,o)}var g$=m(()=>{wt();tt();Ci();St();gp()});var Sn=m(()=>{g$();be()});function xs(e,t){let n=[ot({},e,t),ot({},t,e)];return W.IsExtendsTrueLike(n[0])&&W.IsExtendsTrueLike(n[1])?gs:W.IsExtendsTrueLike(n[0])&&W.IsExtendsFalse(n[1])?hs:W.IsExtendsFalse(n[0])&&W.IsExtendsTrueLike(n[1])?Yi:Wa}var gs,Wa,hs,Yi,ys=m(()=>{Sn();gs=0,Wa=1,hs=2,Yi=3});function hp(e,t,n=[],r=t){return u.ShiftLeft(t,(o,s)=>{let a=xs(e,o);return u.IsEqual(a,hs)||u.IsEqual(a,gs)?r:u.IsEqual(a,Wa)?hp(e,s,[...n,o],r):hp(e,s,n,r)},()=>[...n,e])}function QC(e,t,n){let r=Xt(e);return Ee(r)?[r]:Me(r)?[r]:sn(r)?Ba(t,n):ce(r)?Ba(t,[...n,r]):Ba(t,hp(r,n))}function Ba(e,t=[]){return u.ShiftLeft(e,(n,r)=>QC(n,r,t),()=>t)}function Oc(e){let t=Ba(e);return uo(t)}var Mc=m(()=>{M();$t();Je();de();tt();ys();Zi();V()});function xp(e,t){return d.Update(Xt(e),{},t)}function h$(e,t,n,r){let o=w(e,t,n);return xp(o,r)}var za=m(()=>{S();q();V()});var Rs=m(()=>{Mc();ys();Sc();Ac();V();Zi();za();Pc()});function Ds(e,t=[]){return Yn(e)&&u.IsEqual(e.action,"Conditional")?We(e.parameters[0])?Ds(e.parameters[2],Ds(e.parameters[3],[...t,e.parameters[0].$ref])):Ds(e.parameters[2],Ds(e.parameters[3],t)):Yn(e)&&u.IsEqual(e.action,"Mapped")&&Yn(e.parameters[1])&&u.IsEqual(e.parameters[1].action,"KeyOf")&&We(e.parameters[1].parameters[0])?[...t,e.parameters[1].parameters[0].$ref]:t}function e0(e,t){return e.reduce((n,r)=>[...n,t.includes(r.name)],[])}function b$(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>u.ShiftLeft(t,(s,a)=>b$(o,a,[...n,[s,r]]),()=>n),()=>n)}function t0(e){return Ae(e)?at(e.pattern):rt(e)?xt(e.enum):e}function n0(e){let t=t0(e);return j(t)?[...t.anyOf]:[t]}function r0(e,t){return e.reduce((n,r)=>[...n,[...r,t]],[])}function x$(e,t){return t.reduce((n,r)=>[...n,...r0(e,r)],[])}function y$(e){return e.reduce((t,n)=>u.IsEqual(n[0],!0)?x$(t,n0(n[1])):x$(t,[n[1]]),[[]])}function I$(e,t,n){let r=Ds(n),o=e0(e,r),s=b$(t,o);return Yn(n)&&u.IsEqual(n.action,"Conditional")||Yn(n)&&u.IsEqual(n.action,"Mapped")?y$(s):[t]}var $$=m(()=>{M();Z();ue();an();Tt();zt();V();V()});function o0(){return["(not-resolvable)",fe()]}function s0(){return["(not-generic)",fe()]}function i0(e,t,n){return[e,Xn(t,n)]}function a0(e,t,n){return t in e?w$(e,t,e[t],n):o0()}function w$(e,t,n,r){return eo(n)?i0(t,n.parameters,n.expression):We(n)?a0(e,n.$ref,r):s0()}function k$(e,t,n){return w$(e,"(anonymous)",t,n)}var T$=m(()=>{ts();zt();Je()});function m0(e,t,n){if(Ce(t)||To(t)||W.IsExtendsTrueLike(ot({},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 v$(e,t,n,r,o){let s=w(e,t,o);return m0(n,s,r),d.Assign(e,{[n]:s})}function u0(e,t,n,r,o){let s=w(e,t,n.extends),a=w(e,t,n.equals);return u.ShiftLeft(o,(c,p)=>yp(v$(e,t,n.name,s,c),t,r,p),()=>yp(v$(e,t,n.name,s,a),t,r,[]))}function yp(e,t,n,r){return u.ShiftLeft(n,(o,s)=>u0(e,t,o,s,r),()=>e)}function E$(e,t,n,r){return yp(e,t,n,r)}var S$=m(()=>{M();S();q();Sn();Ht();ho()});function c0(){if(!u.IsLessThan(Ip,on.Get().maxInstantiationCount))throw Error("Type instantiation is excessively deep and possibly infinite")}function p0(){c0(),Ip++,bp++}function l0(){bp--,u.IsEqual(bp,0)&&(Ip=0)}function d0(e){return u.IsGreaterThan(e.callstack.length,0)?e.callstack[e.callstack.length-1]:""}function f0(e,t){return u.IsEqual(d0(e),t)}function g0(e,t,n,r,o,s){p0();try{let a=E$(e,t,r,s),c=w(a,Ie([...t.callstack,n.$ref],t.visited),o);return w(a,Ie([],[]),c)}finally{l0()}}function h0(e,t,n,r,o,s){return s.reduce((a,c)=>{let p=g0(e,t,n,r,o,c);return[...a,p]},[])}function x0(e,t,n,r,o,s){let a=I$(r,s,o),c=h0(e,t,n,r,o,a);return u.IsEqual(c.length,1)?c[0]:Et(c)}function Ha(e,t,n,r){let o=_t(e,t,r),s=k$(e,n,r),a=s[0],c=s[1];return eo(c)?f0(t,a)?ks(qn(a),o):x0(e,t,qn(a),c.parameters,c.expression,o):ks(n,o)}var bp,Ip,$p=m(()=>{Ir();M();ho();zt();ts();Rs();q();q();q();$$();T$();S$();bp=0,Ip=0});function ks(e,t){return d.Create({"~kind":"Call"},{type:"call",target:e,arguments:t},{})}function P$(e,t){return Ha({},Ie([],[]),e,t)}function To(e){return L(e,"Call")}var ho=m(()=>{S();H();$p();q()});function y0(e){return d.Discard(e,["~immutable"])}function A$(e,t){return d.Update(y0(e),{},t)}function R$(e,t,n,r){let o=w(e,t,n);return A$(o,r)}var wp=m(()=>{S();q()});function O$(e,t){return e(t)}var M$=m(()=>{});function C$(e,t){return u.IsString(t)?ne(O$(e,t)):ne(t)}var L$=m(()=>{M();Le();M$()});function j$(e,t){let n=at(t);return Gn(e,n)}var F$=m(()=>{Va();Rs()});function D$(e,t){let n=t.map(r=>Gn(e,r));return Y(n)}var N$=m(()=>{Z();Va()});function Gn(e,t){return pe(t)?C$(e,t.const):Ae(t)?j$(e,t.pattern):j(t)?D$(e,t.anyOf):t}var Va=m(()=>{Le();Tt();Z();L$();F$();N$()});function ua(e,t={}){return F("Capitalize",[e],t)}function _$(e,t={}){return kp(e,t)}var Ja=m(()=>{ue();Mn()});function ca(e,t={}){return F("Lowercase",[e],t)}function q$(e,t={}){return Tp(e,t)}var Ya=m(()=>{ue();Mn()});function pa(e,t={}){return F("Uncapitalize",[e],t)}function U$(e,t={}){return vp(e,t)}var Xa=m(()=>{ue();Mn()});function la(e,t={}){return F("Uppercase",[e],t)}function K$(e,t={}){return Ep(e,t)}var Za=m(()=>{ue();Mn()});function kp(e,t){return z([e])?d.Update(Gn(b0,e),{},t):ua(e,t)}function Tp(e,t){return z([e])?d.Update(Gn(I0,e),{},t):ca(e,t)}function vp(e,t){return z([e])?d.Update(Gn($0,e),{},t):pa(e,t)}function Ep(e,t){return z([e])?d.Update(Gn(w0,e),{},t):la(e,t)}function G$(e,t,n,r){let o=w(e,t,n);return kp(o,r)}function W$(e,t,n,r){let o=w(e,t,n);return Tp(o,r)}function B$(e,t,n,r){let o=w(e,t,n);return vp(o,r)}function z$(e,t,n,r){let o=w(e,t,n);return Ep(o,r)}var b0,I0,$0,w0,Mn=m(()=>{S();Va();q();Ja();Ya();Xa();Za();b0=e=>e[0].toUpperCase()+e.slice(1),I0=e=>e.toLowerCase(),$0=e=>e[0].toLowerCase()+e.slice(1),w0=e=>e.toUpperCase()});function da(e,t,n,r,o={}){return F("Conditional",[e,t,n,r],o)}function H$(e,t,n,r,o={}){return Sp({},Ie([],[]),e,t,n,r,o)}var Qa=m(()=>{ue();Pp();q()});function k0(e,t,n,r,o,s){let a=ot(e,n,r);return W.IsExtendsUnion(a)?Y([w(a.inferred,t,o),w(e,t,s)]):W.IsExtendsTrue(a)?w(a.inferred,t,o):w(e,t,s)}function Sp(e,t,n,r,o,s,a){return z([n,r])?d.Update(k0(e,t,n,r,o,s),{},a):da(n,r,o,s,a)}function V$(e,t,n,r,o,s,a){let c=w(e,t,n),p=w(e,t,r);return Sp(e,t,c,p,o,s,a)}var Pp=m(()=>{S();Z();Sn();q();Qa()});var Ap=m(()=>{Pp()});function fa(e,t={}){return F("ConstructorParameters",[e],t)}function J$(e,t={}){return Rp(e,t)}var em=m(()=>{ue();tm()});function T0(e){let t=Ke(e)?e.parameters:[],n=ur({},Ie([],[]),t);return Fe(n)}function Rp(e,t){return z([e])?d.Update(T0(e),{},t):fa(e,t)}function Y$(e,t,n,r){let o=w(e,t,n);return Rp(o,r)}var tm=m(()=>{S();Wt();qe();em();q();q();q()});function ga(e,t,n={}){return F("Exclude",[e,t],n)}function X$(e,t,n={}){return Ns(e,t,n)}var nm=m(()=>{ue();_s()});function Ns(e,t,n){return z([e,t])?d.Update(Xi(e,t),{},n):ga(e,t,n)}function Z$(e,t,n,r,o){let s=w(e,t,n),a=w(e,t,r);return Ns(s,a,o)}var _s=m(()=>{S();q();nm();Rc()});function ha(e,t,n={}){return F("Extract",[e,t],n)}function Q$(e,t,n={}){return Op(e,t,n)}var rm=m(()=>{ue();om()});function v0(e,t){let n=ot({},e,t);return W.IsExtendsTrueLike(n)?[e]:[]}function ew(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>ew(o,t,[...n,...v0(r,t)]),()=>n)}function tw(e,t){let n=Xt(e),r=j(n)?n.anyOf:[n],o=ew(r,t);return Et(o)}var nw=m(()=>{M();Z();Sn();V();V()});function Op(e,t,n){return z([e,t])?d.Update(tw(e,t),{},n):ha(e,t,n)}function rw(e,t,n,r,o){let s=w(e,t,n),a=w(e,t,r);return Op(s,a,o)}var om=m(()=>{S();q();rm();nw()});function E0(e){return e.reduce((t,n)=>_i(n)?[...t,ne(n)]:t,[])}function vo(e){let t=E0(e);return Y(t)}var qs=m(()=>{Le();Z()});function Ts(e,t,n={}){return F("Index",[e,t],n)}function ow(e,t,n={}){let r=u.IsArray(t)?vo(t):t;return Cp(e,r,n)}var Mp=m(()=>{M();ue();qs();sm()});function sw(e,t){let n=On(e,t);return qt(n)}var iw=m(()=>{Nr();Dr()});function aw(e,t,n){let r=un(e,t,n);return qt(r)}var mw=m(()=>{Nr();V()});function S0(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,$)=>({...I,[$]:e[$]}),{}),a=r.reduce((I,$)=>({...I,[$]:t[$]}),{}),c=o.reduce((I,$)=>({...I,[$]:ke([e[$],t[$]])}),{}),p=d.Assign(s,a);return d.Assign(p,c)}function uw(e){return e.reduce((t,n)=>S0(t,qt(n)),{})}var cw=m(()=>{S();M();Nr();V()});var pw=m(()=>{});function lw(e){let t=dh(Fe(e));return qt(t)}var dw=m(()=>{qe();vc();Nr()});function P0(e,t){return u.Keys(e).filter(o=>o in t).reduce((o,s)=>({...o,[s]:Et([e[s],t[s]])}),{})}function fw(e,t){return u.ShiftLeft(e,(n,r)=>fw(r,P0(t,qt(n))),()=>t)}function gw(e){return u.ShiftLeft(e,(t,n)=>fw(n,qt(t)),()=>_e())}var hw=m(()=>{M();kn();V();Nr()});function qt(e){return nt(e)?sw(e.$defs,e.$ref):Pe(e)?aw(e.if,e.then,e.else):te(e)?uw(e.allOf):j(e)?gw(e.anyOf):he(e)?lw(e.items):ce(e)?e.properties:{}}var Nr=m(()=>{wt();Rt();Ne();de();qe();Z();iw();mw();cw();pw();dw();hw()});function Eo(e){let t=qt(e);return G(t)}var xw=m(()=>{de();Nr()});var Us=m(()=>{xw()});function So(e){let t=`${e}`;return A0.test(t)?parseInt(t):e}var A0,Ks=m(()=>{A0=new RegExp("^(?:0|[1-9][0-9]*)$")});function R0(e){return ne(So(e))}function yw(e){return e.map(t=>bw(t))}function bw(e){return te(e)?kt(yw(e.allOf)):j(e)?Y(yw(e.anyOf)):pe(e)?R0(e.const):e}function Iw(e,t){let n=bw(t),r=ot({},n,Ot());return W.IsExtendsTrueLike(r)?e:pe(t)&&u.IsEqual(t.const,"length")?Ot():fe()}var $w=m(()=>{M();Ne();Z();Le();gt();Je();Sn();Ks()});function ww(e,t){let n=On(e,t);return Ct(n)}var kw=m(()=>{cr();Dr()});function Tw(e,t,n){let r=un(e,t,n);return Ct(r)}var vw=m(()=>{cr();V()});function Ew(e){let t=xt(e);return Ct(t)}var Sw=m(()=>{cr();V()});function Pw(e){let t=ke(e);return Ct(t)}var Aw=m(()=>{V();cr()});function Rw(e){return[`${e}`]}var Ow=m(()=>{});function Mw(e){let t=at(e);return Ct(t)}var Cw=m(()=>{cr();V()});function Lw(e){return e.reduce((t,n)=>[...t,...Ct(n)],[])}var jw=m(()=>{cr()});function Ct(e){return nt(e)?ww(e.$defs,e.$ref):Pe(e)?Tw(e.if,e.then,e.else):rt(e)?Ew(e.enum):te(e)?Pw(e.allOf):pe(e)?Rw(e.const):Ae(e)?Mw(e.pattern):j(e)?Lw(e.anyOf):[]}var cr=m(()=>{wt();Rt();an();Ne();Le();Tt();Z();kw();vw();Sw();Aw();Ow();Cw();jw()});function Po(e){return Ct(e)}var im=m(()=>{cr()});function Gs(e,t){return t.map(n=>Ws(e,n))}function Ws(e,t){return we(t)?Nt(Ws(e,t.items)):Ke(t)?yn(Gs(e,t.parameters),Ws(e,t.instanceType)):Ge(t)?bn(Gs(e,t.parameters),Ws(e,t.returnType)):he(t)?Fe(Gs(e,t.items)):j(t)?Y(Gs(e,t.anyOf)):te(t)?kt(Gs(e,t.allOf)):oa(t)?G(e):t}function Fw(e,t){return Ws(e,t)}var Dw=m(()=>{dt();Wt();Bt();Ne();de();qe();sa();Z()});function O0(e,t){let n=t in e?e[t]:fe();return Fw(e,n)}function Nw(e,t){return t.reduce((n,r)=>[...n,O0(e,r)],[])}function M0(e,t){let n=Po(t),r=Nw(e,n);return Et(r)}function L0(e){return e.filter(n=>C0.test(n))}function j0(e){let t=Ri(e),n=L0(t),r=Nw(e,n);return Et(r)}function _w(e,t){return je(t)?j0(e):M0(e,t)}var C0,qw=m(()=>{gt();Je();kr();V();im();Xe();Dw();C0=new RegExp(or)});function F0(e){return ne(So(e))}function Uw(e){return e.map(t=>Lp(t))}function Lp(e){return te(e)?kt(Uw(e.allOf)):j(e)?Y(Uw(e.anyOf)):pe(e)?F0(e.const):e}var Kw=m(()=>{Z();Ne();Le();Ks()});function D0(e,t){return e.reduceRight((n,r,o)=>{let s=ot({},ne(o),t);return W.IsExtendsTrueLike(s)?[r,...n]:n},[])}function N0(e,t){let n=Lp(t),r=D0(e,n);return nr(r)}function _0(e){return nr(e)}function Gw(e,t){return pe(t)&&u.IsEqual(t.const,"length")?ne(e.length):je(t)||ft(t)?_0(e):N0(e,t)}var Ww=m(()=>{M();Le();gt();En();V();Sn();Kw()});function Bw(e,t){return we(e)?Iw(e.items,t):ce(e)?_w(e.properties,t):he(e)?Gw(e.items,t):fe()}var zw=m(()=>{dt();Je();de();qe();$w();qw();Ww()});function q0(e){return nt(e)||Pe(e)||te(e)||j(e)?Eo(e):e}function Cp(e,t,n){return z([e,t])?d.Update(Bw(q0(e),t),{},n):Ts(e,t,n)}function Hw(e,t,n,r,o){let s=w(e,t,n),a=w(e,t,r);return Cp(s,a,o)}var sm=m(()=>{S();wt();Rt();Ne();Z();q();Mp();Us();zw()});function xa(e,t={}){return F("InstanceType",[e],t)}function Vw(e,t={}){return jp(e,t)}var am=m(()=>{ue();mm()});function U0(e){return Ke(e)?e.instanceType:fe()}function jp(e,t){return z([e])?d.Update(U0(e),{},t):xa(e,t)}function Jw(e,t,n,r={}){let o=w(e,t,n);return jp(o,r)}var mm=m(()=>{S();Wt();Je();am();q()});function vs(e,t={}){return F("KeyOf",[e],t)}function Yw(e,t={}){return Fp(e,t)}var um=m(()=>{ue();cm()});function Xw(){return Y([Ot(),Jt(),ao()])}var Zw=m(()=>{gt();Yt();Rr();Z()});function Qw(e){return Ot()}var ek=m(()=>{gt()});function K0(e){return e.reduce((n,r)=>_i(r)?[...n,ne(So(r))]:_e(),[])}function tk(e){let t=u.Keys(e),n=K0(t);return nr(n)}var nk=m(()=>{kn();M();Le();Ks();V()});function rk(e){return co(e)}var ok=m(()=>{Xe()});function sk(e){let t=e.map((n,r)=>ne(r));return nr(t)}var ik=m(()=>{Le();V()});function ak(e){return Ee(e)?Xw():we(e)?Qw(e.items):ce(e)?tk(e.properties):st(e)?rk(e):he(e)?sk(e.items):fe()}var mk=m(()=>{$t();dt();Je();de();Xe();qe();Zw();ek();nk();ok();ik()});function G0(e){return nt(e)||Pe(e)||te(e)||j(e)?Eo(e):e}function Fp(e,t){return z([e])?d.Update(ak(G0(e)),{},t):vs(e,t)}function uk(e,t,n,r){let o=w(e,t,n);return Fp(o,r)}var cm=m(()=>{S();wt();Rt();Ne();Z();um();q();Us();mk()});function $s(e,t,n,r,o={}){return F("Mapped",[e,t,n,r],o)}function ck(e,t,n,r,o={}){return Dp({},Ie([],[]),e,t,n,r,o)}var pm=m(()=>{ue();lm();q()});function W0(e){let t=at(e);return dm(t)}function B0(e){return e.reduce((t,n)=>[...t,...dm(n)],[])}function z0(e){let t=xt(e);return dm(t)}function H0(e){return u.IsNumber(e)?[ne(`${e}`)]:[ne(e)]}function dm(e){return rt(e)?z0(e.enum):pe(e)?H0(e.const):Ae(e)?W0(e.pattern):j(e)?B0(e.anyOf):[e]}function pk(e){return dm(e)}var lk=m(()=>{M();Le();an();Tt();Z();V();V()});function V0(e){return Ae(e)?at(e.pattern):e}function J0(e,t,n,r,o,s){let a=d.Assign(e,{[n.name]:r}),c=w(a,t,o),p=V0(c),f=w(a,t,s);return Bg(p)||zg(p)?{[p.const]:f}:{}}function Y0(e,t,n,r,o,s){return r.reduce((a,c)=>[...a,J0(e,t,n,c,o,s)],[])}function X0(e){return e.reduce((t,n)=>[...t,G(n)],[])}function dk(e,t,n,r,o,s){let a=pk(r),c=Y0(e,t,n,a,o,s),p=X0(c);return ke(p)}var fk=m(()=>{S();Le();de();Tt();q();V();V();lk()});function Dp(e,t,n,r,o,s,a){return z([r])?d.Update(dk(e,t,n,r,o,s),{},a):$s(n,r,o,s,a)}function gk(e,t,n,r,o,s,a){let c=w(e,t,r);return Dp(e,t,n,c,o,s,a)}var lm=m(()=>{S();pm();q();fk()});function Z0(e,t,n){let r=d.Assign(e,t);return u.Keys(t).filter(s=>n.includes(s)).reduce((s,a)=>({...s,[a]:l$(r,a,t[a])}),{})}function Q0(e,t,n){let r=d.Assign(e,t);return u.Keys(t).filter(s=>!n.includes(s)).reduce((s,a)=>({...s,[a]:w(r,Ie([],[]),t[a])}),{})}function eL(e,t,n){let r=a$(t),o=Z0(e,t,r),s=Q0(e,t,r),a={...o,...s};return d.Update(a,{},n)}function fm(e,t,n,r){return eL(e,n,r)}var gm=m(()=>{M();S();q();lp();fp();q()});function ya(e,t={}){return F("NonNullable",[e],t)}function hk(e,t={}){return Np(e,t)}var hm=m(()=>{ue();xm()});function tL(e){let t=Y([oo(),lo()]);return Ns(e,t,{})}function Np(e,t){return z([e])?d.Update(tL(e),{},t):ya(e,t)}function xk(e,t,n,r){let o=w(e,t,n);return Np(o,r)}var xm=m(()=>{S();io();go();Z();_s();hm();q()});function ba(e,t,n={}){return F("Omit",[e,t],n)}function yk(e,t,n={}){let r=u.IsArray(t)?vo(t):t;return _p(e,r,n)}var ym=m(()=>{M();ue();qs();bm()});function Im(e){let t=Eo(e);return ce(t)?t.properties:_e()}var qp=m(()=>{kn();de();Us()});function nL(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?r:{...r,[o]:e[o]},{})}function bk(e,t){let n=Im(e),r=Po(t),o=nL(n,r);return G(o)}var Ik=m(()=>{M();de();im();qp()});function _p(e,t,n){return z([e,t])?d.Update(bk(e,t),{},n):ba(e,t,n)}function $k(e,t,n,r,o){let s=w(e,t,n),a=w(e,t,r);return _p(s,a,o)}var bm=m(()=>{S();ym();q();Ik()});function Ia(e,t={}){return F("Parameters",[e],t)}function wk(e,t={}){return Up(e,t)}var $m=m(()=>{ue();wm()});function rL(e){let t=Ge(e)?e.parameters:[],n=ur({},Ie([],[]),t);return Fe(n)}function Up(e,t){return z([e])?d.Update(rL(e),{},t):Ia(e,t)}function kk(e,t,n,r){let o=w(e,t,n);return Up(o,r)}var wm=m(()=>{S();Bt();qe();$m();q();q();q()});function $a(e,t={}){return F("Partial",[e],t)}function Tk(e,t={}){return Kp(e,t)}var km=m(()=>{ue();Tm()});function vk(e,t){let n=On(e,t),r=Cn(n);return $n(d.Assign(e,{[t]:r}),t)}var Ek=m(()=>{S();wt();Ao();Dr()});function Sk(e,t,n){let r=un(e,t,n);return Cn(r)}var Pk=m(()=>{Ao();V()});function Ak(e){let t=ke(e);return Cn(t)}var Rk=m(()=>{Ao();V()});function Ok(e){let t=e.map(n=>Cn(n));return Y(t)}var Mk=m(()=>{Z();Ao()});function Ck(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:wr(e[o])}),{});return G(t)}var Lk=m(()=>{M();de();ns()});function Cn(e){return nt(e)?vk(e.$defs,e.$ref):Pe(e)?Sk(e.if,e.then,e.else):te(e)?Ak(e.allOf):j(e)?Ok(e.anyOf):ce(e)?Ck(e.properties):G({})}var Ao=m(()=>{wt();Rt();Ne();de();Z();Ek();Pk();Rk();Mk();Lk()});function Kp(e,t){return z([e])?d.Update(Cn(e),{},t):$a(e,t)}function jk(e,t,n,r){let o=w(e,t,n);return Kp(o,r)}var Tm=m(()=>{S();km();Ao();q()});function wa(e,t,n={}){return F("Pick",[e,t],n)}function Fk(e,t,n={}){let r=u.IsArray(t)?vo(t):t;return Gp(e,r,n)}var vm=m(()=>{M();ue();qs();Em()});function oL(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?d.Assign(r,{[o]:e[o]}):r,{})}function Dk(e,t){let n=Im(e),r=Po(t),o=oL(n,r);return G(o)}var Nk=m(()=>{S();M();de();im();qp()});function Gp(e,t,n){return z([e,t])?d.Update(Dk(e,t),{},n):wa(e,t,n)}function _k(e,t,n,r,o){let s=w(e,t,n),a=w(e,t,r);return Gp(s,a,o)}var Em=m(()=>{S();vm();q();Nk()});function ka(e,t={}){return F("ReadonlyObject",[e],t)}function Wp(e,t={}){return Bp(e,t)}var qk,Sm=m(()=>{ue();Pm();qk=Wp});function Uk(e){return ro(Nt(e))}var Kk=m(()=>{dt();ms()});function Gk(e,t){let n=On(e,t),r=Ln(n);return $n(d.Assign(e,{[t]:r}),t)}var Wk=m(()=>{S();wt();Ro();Dr()});function Bk(e,t,n){let r=un(e,t,n);return Ln(r)}var zk=m(()=>{Ro();V()});function Hk(e){let t=ke(e);return Ln(t)}var Vk=m(()=>{Ro();V()});function Jk(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:Er(e[o])}),{});return G(t)}var Yk=m(()=>{M();de();us()});function Xk(e){return ro(Fe(e))}var Zk=m(()=>{qe();ms()});function Qk(e){let t=e.map(n=>Ln(n));return Y(t)}var eT=m(()=>{Z();Ro()});function Ln(e){return we(e)?Uk(e.items):nt(e)?Gk(e.$defs,e.$ref):Pe(e)?Bk(e.if,e.then,e.else):te(e)?Hk(e.allOf):ce(e)?Jk(e.properties):he(e)?Xk(e.items):j(e)?Qk(e.anyOf):e}var Ro=m(()=>{dt();wt();Rt();Ne();de();qe();Z();Kk();Wk();zk();Vk();Yk();Zk();eT()});function Bp(e,t){return z([e])?d.Update(Ln(e),{},t):ka(e)}function tT(e,t,n,r){let o=w(e,t,n);return Bp(o,r)}var Pm=m(()=>{S();Sm();Ro();q()});function nT(e,t,n,r){return t.visited.includes(r)?n:r in e?w(e,Ie(t.callstack,[...t.visited,r]),e[r]):n}var zp=m(()=>{q();q()});function rT(e,t){let n=On(e,t),r=jn(n);return $n(d.Assign(e,{[t]:r}),t)}var oT=m(()=>{S();wt();Oo();Dr()});function sT(e,t,n){let r=un(e,t,n);return jn(r)}var iT=m(()=>{Oo();V()});function aT(e){let t=ke(e);return jn(t)}var mT=m(()=>{Oo();V()});function uT(e){let t=e.map(n=>jn(n));return Y(t)}var cT=m(()=>{Z();Oo()});function pT(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:Vi(e[o])}),{});return G(t)}var lT=m(()=>{M();de();Ji()});function jn(e){return nt(e)?rT(e.$defs,e.$ref):Pe(e)?sT(e.if,e.then,e.else):te(e)?aT(e.allOf):j(e)?uT(e.anyOf):ce(e)?pT(e.properties):G({})}var Oo=m(()=>{wt();Rt();Ne();de();Z();oT();iT();mT();cT();lT()});function Ta(e,t={}){return F("Required",[e],t)}function dT(e,t={}){return Hp(e,t)}var Am=m(()=>{ue();Rm()});function Hp(e,t){return z([e])?d.Update(jn(e),{},t):Ta(e,t)}function fT(e,t,n,r){let o=w(e,t,n);return Hp(o,r)}var Rm=m(()=>{S();Oo();Am();q()});function va(e,t={}){return F("ReturnType",[e],t)}function gT(e,t={}){return Vp(e,t)}var Om=m(()=>{ue();Mm()});function sL(e){return Ge(e)?e.returnType:fe()}function Vp(e,t){return z([e])?d.Update(sL(e),{},t):va(e,t)}function hT(e,t,n,r={}){let o=w(e,t,n);return Vp(o,r)}var Mm=m(()=>{S();Bt();Je();Om();q()});function Ea(e,t){return F("With",[e,t],{})}function xT(e,t){return Jp(e,t)}var Cm=m(()=>{ue();Lm()});function Jp(e,t){return z([e])?d.Update(e,{},t):Ea(e,t)}function yT(e,t,n,r){let o=w(e,t,n);return Jp(o,r)}var Lm=m(()=>{S();q();Cm()});function iL(e){return sr(e)?he(e.items)?Yp(e.items.items):Ce(e.items)?[e]:We(e.items)?[e]:[fe()]:[e]}function Yp(e){return e.reduce((n,r)=>[...n,...iL(r)],[])}var bT=m(()=>{Ht();Je();po();zt();qe()});var IT=m(()=>{bT()});function Ie(e,t){return{callstack:e,visited:t}}function z(e){return u.ShiftLeft(e,(t,n)=>We(t)?!1:z(n),()=>!0)}function Ms(e,t,n){return u.Keys(n).reduce((r,o)=>({...r,[o]:w(e,t,n[o])}),{})}function ur(e,t,n){let r=_t(e,t,n);return Yp(r)}function _t(e,t,n){return n.map(r=>w(e,t,r))}function aL(e,t){let n=it(e)?es(t,{}):t,r=Sr(e)?Qo(n,{}):n;return vr(e)?Bs(r,{}):r}function mL(e,t,n,r,o){return u.IsEqual(n,"AddImmutable")?$T(e,t,r[0],o):u.IsEqual(n,"RemoveImmutable")?R$(e,t,r[0],o):u.IsEqual(n,"AddReadonly")?Pf(e,t,r[0],o):u.IsEqual(n,"RemoveReadonly")?mh(e,t,r[0],o):u.IsEqual(n,"AddOptional")?Af(e,t,r[0],o):u.IsEqual(n,"RemoveOptional")?ph(e,t,r[0],o):u.IsEqual(n,"Capitalize")?G$(e,t,r[0],o):u.IsEqual(n,"Conditional")?V$(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"ConstructorParameters")?Y$(e,t,r[0],o):u.IsEqual(n,"Evaluate")?h$(e,t,r[0],o):u.IsEqual(n,"Exclude")?Z$(e,t,r[0],r[1],o):u.IsEqual(n,"Extract")?rw(e,t,r[0],r[1],o):u.IsEqual(n,"Index")?Hw(e,t,r[0],r[1],o):u.IsEqual(n,"InstanceType")?Jw(e,t,r[0],o):u.IsEqual(n,"Interface")?r$(e,t,r[0],r[1],o):u.IsEqual(n,"KeyOf")?uk(e,t,r[0],o):u.IsEqual(n,"Lowercase")?W$(e,t,r[0],o):u.IsEqual(n,"Mapped")?gk(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"Module")?fm(e,t,r[0],o):u.IsEqual(n,"NonNullable")?xk(e,t,r[0],o):u.IsEqual(n,"Pick")?_k(e,t,r[0],r[1],o):u.IsEqual(n,"Parameters")?kk(e,t,r[0],o):u.IsEqual(n,"Partial")?jk(e,t,r[0],o):u.IsEqual(n,"Omit")?$k(e,t,r[0],r[1],o):u.IsEqual(n,"ReadonlyObject")?tT(e,t,r[0],o):u.IsEqual(n,"Record")?Fh(e,t,r[0],r[1],o):u.IsEqual(n,"Required")?fT(e,t,r[0],o):u.IsEqual(n,"ReturnType")?hT(e,t,r[0],o):u.IsEqual(n,"TemplateLiteral")?Xb(e,t,r[0],o):u.IsEqual(n,"Uncapitalize")?B$(e,t,r[0],o):u.IsEqual(n,"Uppercase")?z$(e,t,r[0],o):u.IsEqual(n,"With")?yT(e,t,r[0],r[1]):F(n,r,o)}function uL(e,t,n){let r=We(n)?nT(e,t,n,n.$ref):we(n)?Nt(w(e,t,n.items),Ai(n)):To(n)?Ha(e,t,n.target,n.arguments):Ke(n)?yn(_t(e,t,n.parameters),w(e,t,n.instanceType),Rf(n)):Ge(n)?bn(_t(e,t,n.parameters),w(e,t,n.returnType),Of(n)):Pe(n)?Tr(w(e,t,n.if),w(e,t,n.then),w(e,t,n.else),Nf(n)):te(n)?kt(_t(e,t,n.allOf),Gf(n)):ce(n)?G(Ms(e,t,n.properties),jf(n)):st(n)?Dh(Zt(n),w(e,t,yt(n))):sr(n)?Mr(w(e,t,n.items)):he(n)?Fe(ur(e,t,n.items),ah(n)):j(n)?Y(_t(e,t,n.anyOf),Vg(n)):n;return aL(n,r)}function w(e,t,n){return Yn(n)?mL(e,t,n.action,n.parameters,n.options):uL(e,t,n)}function Xp(e,t){return w(e,Ie([],[]),t)}var q=m(()=>{M();jm();Si();Pi();dt();Wt();ue();Bt();ho();Rt();Ne();de();Xe();qe();Z();zt();po();jm();wp();Si();Ic();Pi();kc();Zn();as();cs();$p();Mn();Ap();tm();za();_s();om();sm();mm();Ga();cm();Mn();lm();gm();xm();bm();wm();Tm();Em();Pm();Qi();zp();Rm();Mm();Na();Mn();Mn();Lm();IT()});function cL(e){return d.Update(e,{"~immutable":!0},{})}function Bs(e,t){return d.Update(cL(e),{},t)}function $T(e,t,n,r){let o=w(e,t,n);return Bs(o,r)}var jm=m(()=>{S();q()});function _y(e,t={}){return F("AddImmutable",[e],t)}function ro(e,t={}){return Bs(e,t)}var ms=m(()=>{ue();jm()});var wT=m(()=>{ue();wp()});function qy(e,t={}){return F("Evaluate",[e],t)}function kT(e,t={}){return xp(e,t)}var Zp=m(()=>{ue();za()});function Uy(e,t={}){return F("Module",[e],t)}function TT(e,t={}){return fm({},Ie([],[]),e,t)}var Qp=m(()=>{ue();q();gm()});var xo=m(()=>{ms();us();ns();wT();$c();Ji();Ja();Qa();em();Zp();nm();rm();Mp();am();Cs();um();Ya();pm();Qp();hm();ym();$m();km();vm();Sm();Am();Om();Xa();Za();Cm()});var vT=m(()=>{tm()});var ET=m(()=>{Li()});var ST=m(()=>{_s()});var PT=m(()=>{om()});var AT=m(()=>{});var RT=m(()=>{qs();Ks();AT()});var OT=m(()=>{sm()});var MT=m(()=>{mm()});var CT=m(()=>{Ga()});var LT=m(()=>{Mn()});var jT=m(()=>{cm()});var FT=m(()=>{lm()});var DT=m(()=>{gm()});var NT=m(()=>{xm()});var _T=m(()=>{bm()});var qT=m(()=>{wm()});var UT=m(()=>{fs();Qc()});var KT=m(()=>{Tm()});var GT=m(()=>{Em()});var WT=m(()=>{M();ys()});var BT=m(()=>{WT()});var zT=m(()=>{Pm()});var HT=m(()=>{Qi()});var VT=m(()=>{zp()});var JT=m(()=>{Rm()});var YT=m(()=>{Mm()});var XT=m(()=>{});var ZT=m(()=>{M();fs()});var QT=m(()=>{zi();Hi();ep();XT();Wi();ZT()});var ev=m(()=>{Lm()});var tv=m(()=>{q();Ap();vT();gp();ET();Rs();ST();PT();RT();OT();MT();CT();LT();jT();FT();DT();NT();Us();_T();qT();UT();KT();GT();BT();zT();HT();VT();JT();YT();QT();ev()});function nv(...e){let[t,n,r]=wn.Match(e,{2:(a,c)=>u.IsString(a)?[{},a,c]:[a,c,{}],3:(a,c,p)=>[a,c,p],1:a=>[{},a,{}]}),o=zb(n),s=u.IsArray(o)&&u.IsEqual(o.length,2)?w(t,Ie([],[]),o[0]):fe();return d.Update(s,{},r)}var rv=m(()=>{no();S();M();aa();q();q();Ki()});var el=m(()=>{rv()});var X={};Dt(X,{Any:()=>to,Array:()=>Nt,BigInt:()=>ps,Boolean:()=>Di,Call:()=>P$,Capitalize:()=>_$,Codec:()=>Fi,Conditional:()=>H$,Constructor:()=>yn,ConstructorParameters:()=>J$,Cyclic:()=>$n,Decode:()=>Ng,DecodeBuilder:()=>is,Dependent:()=>Tr,Encode:()=>_g,EncodeBuilder:()=>ss,Enum:()=>Kf,Evaluate:()=>kT,Exclude:()=>X$,Extends:()=>ot,ExtendsResult:()=>W,Extract:()=>Q$,Function:()=>bn,Generic:()=>Xn,Identifier:()=>ls,Immutable:()=>qg,Index:()=>ow,Infer:()=>rs,InstanceType:()=>Vw,Instantiate:()=>Xp,Integer:()=>Ar,Interface:()=>o$,Intersect:()=>kt,IsAny:()=>Ee,IsArray:()=>we,IsBigInt:()=>vn,IsBoolean:()=>Vt,IsCall:()=>To,IsCodec:()=>ji,IsConstructor:()=>Ke,IsCyclic:()=>nt,IsDependent:()=>Pe,IsEnum:()=>rt,IsEnumValue:()=>Uf,IsFunction:()=>Ge,IsGeneric:()=>eo,IsIdentifier:()=>Wg,IsImmutable:()=>vr,IsInfer:()=>Ce,IsInteger:()=>ft,IsIntersect:()=>te,IsKind:()=>L,IsLiteral:()=>pe,IsNever:()=>sn,IsNull:()=>so,IsNumber:()=>je,IsObject:()=>ce,IsOptional:()=>it,IsParameter:()=>Hg,IsReadonly:()=>Sr,IsRecord:()=>st,IsRef:()=>We,IsRefine:()=>dc,IsRest:()=>sr,IsSchema:()=>De,IsString:()=>ht,IsSymbol:()=>er,IsTemplateLiteral:()=>Ae,IsThis:()=>oa,IsTuple:()=>he,IsUndefined:()=>fo,IsUnion:()=>j,IsUnknown:()=>Me,IsUnsafe:()=>Mi,IsVoid:()=>Pn,KeyOf:()=>Yw,Literal:()=>ne,Lowercase:()=>q$,Mapped:()=>ck,Module:()=>TT,Never:()=>fe,NonNullable:()=>hk,Null:()=>oo,Number:()=>Ot,Object:()=>G,Omit:()=>yk,Optional:()=>Cf,Parameter:()=>Or,Parameters:()=>wk,Partial:()=>Tk,Pick:()=>Fk,Readonly:()=>Ug,ReadonlyObject:()=>Wp,ReadonlyType:()=>qk,Record:()=>ta,RecordKey:()=>co,RecordPattern:()=>Zt,RecordValue:()=>yt,Ref:()=>qn,Refine:()=>Kg,Required:()=>dT,Rest:()=>Mr,ReturnType:()=>gT,Script:()=>nv,String:()=>Jt,Symbol:()=>ao,TemplateLiteral:()=>Qb,This:()=>ra,Tuple:()=>Fe,Uncapitalize:()=>U$,Undefined:()=>lo,Union:()=>Y,Unknown:()=>Ye,Unsafe:()=>Ff,Uppercase:()=>K$,Void:()=>ia,With:()=>xT});var tl=m(()=>{q();Sn();el();Ja();Qa();em();Zp();nm();rm();xo();am();Cs();um();Ya();pm();Qp();hm();ym();$m();km();vm();Sm();Am();Om();Xa();Za();Cm();lc();as();Zn();cs();fc();$t();dt();Pr();Qn();ho();Wt();wt();an();Bt();ts();gc();Rt();Ht();En();Ne();Le();Je();io();gt();de();xc();Xe();zt();po();H();Yt();Rr();Tt();sa();qe();go();Z();tt();Ci();Cr()});var _r=m(()=>{xo();tv();Sn();el();aa();tl();tl()});import{StringEnum as pL}from"@earendil-works/pi-ai";import{defineTool as lL}from"@earendil-works/pi-coding-agent";function ov(e){if(e.length===0)return"Todo list is empty.";let t=e.filter(o=>o.status==="completed").length,n=e.map(o=>`${dL[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 gL(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 hL(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 dL,fL,Fm,nl=m(()=>{_r();dL={pending:"[ ]",in_progress:"[>]",completed:"[x]",dropped:"[-]"},fL=X.Object({op:pL(["init","start","done","drop","view"],{description:"init replaces the list; start/done/drop move one task; view reads it"}),items:X.Optional(X.Array(X.String(),{description:"Task labels for init. 5-10 words each, specific enough to execute without re-planning"})),task:X.Optional(X.String({description:"Exact label of the task to start, complete or drop"}))});Fm=lL({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:fL,async execute(e,t,n,r,o){let s=hL(o),{todos:a,error:c}=gL(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
|
+
${ov(a)}`:ov(a)}],details:p,...c?{isError:!0}:{}}}})});import{StringEnum as xL}from"@earendil-works/pi-ai";import{defineTool as yL}from"@earendil-works/pi-coding-agent";function av(){return Wn.size===0?"":["<shared-notes>","Working notes recorded with the `context` tool. They survive compaction and are visible to every agent on this task.",...[...Wn].map(([t,n])=>`- ${t}: ${n}`),"</shared-notes>"].join(`
|
|
20
|
+
`)}function bL(e,t,n){if(e==="list")return Wn.size===0?{text:"No notes."}:{text:[...Wn].map(([r,o])=>`${r} = ${o}`).join(`
|
|
21
|
+
`)};if(!t)return{text:"Error: key is required",error:"key required"};if(t.length>iv)return{text:`Error: key longer than ${iv} characters`,error:"key too long"};if(e==="forget")return{text:Wn.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>sv?`${n.slice(0,sv)}\u2026`:n;return Wn.set(t,r),{text:`Recorded ${t} (${Wn.size} note${Wn.size===1?"":"s"} held)`}}return{text:`Error: unknown op ${JSON.stringify(e)}`,error:"unknown op"}}var Wn,sv,iv,Dm,Nm=m(()=>{_r();Wn=new Map,sv=2e3,iv=80;Dm=yL({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:X.Object({op:xL(["set","list","forget"],{description:"set writes a note, list reads all, forget removes one"}),key:X.Optional(X.String({description:"Short lookup key, e.g. 'auth-entrypoint'"})),value:X.Optional(X.String({description:"The fact to keep (for set)"}))}),async execute(e,t){let{text:n,error:r}=bL(t.op,t.key,t.value);return{content:[{type:"text",text:n}],details:{op:t.op,notes:Object.fromEntries(Wn)},...r?{isError:!0}:{}}}})});import{StringEnum as IL}from"@earendil-works/pi-ai";import{defineTool as $L}from"@earendil-works/pi-coding-agent";function qm(e){if(!e||e.status==="cleared")return"No goal set.";let t=e.budget??_m,n=[`${cv[e.status]} ${e.status}`,`${e.used}/${t} continuations`];return e.note&&n.push(e.note),`${n.join(" \xB7 ")}
|
|
22
|
+
${e.text}`}function pv(e){if(!e||e.status==="cleared"||e.status==="done")return"";let t=e.budget??_m,n=e.text.length>48?`${e.text.slice(0,47)}\u2026`:e.text;return`goal ${cv[e.status]} ${e.used}/${t} \xB7 ${n}`}function lv(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 dv(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??_m}.`].join(`
|
|
24
|
+
`)}function Um(){return fv}function cn(e){fv=e}function Km(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??_m;return e.used>=t?{action:"stop",reason:`budget exhausted (${t} continuations)`,close:!0}:{action:"continue"}}function rl(e,t,n,r,o){switch(t){case"view":return{goal:e};case"set":return n?.trim()?n.length>mv?{goal:e,error:`text longer than ${mv} 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 Mo(e){let t;for(let n of e.sessionManager.getBranch()){if(n.type==="custom"&&n.customType===pr){t=n.data;continue}if(n.type==="custom_message"&&n.customType===pr){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 pr,uv,mv,_m,cv,fv,wL,gv,Gm=m(()=>{_r();pr="howtofix.goal",uv="howtofix.goal.continue",mv=400,_m=25,cv={active:"\u25CF",paused:"\u2016",done:"\u2713",cleared:"\u25CB"};wL=X.Object({op:IL(["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:X.Optional(X.String({description:"The goal, in one sentence, as the user would state it (for set)"})),budget:X.Optional(X.Number({description:"Optional cap on automatic continuations before the run stops"})),note:X.Optional(X.String({description:"Evidence that the goal is met (required for complete)"}))}),gv=$L({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:wL,async execute(e,t,n,r,o){let s=Mo(o),{goal:a,error:c}=rl(s,t.op,t.text,t.budget,t.note);cn(a);let p=qm(a);return{content:[{type:"text",text:c?`Error: ${c}
|
|
25
|
+
${p}`:p}],details:{op:t.op,goal:a},...c?{isError:!0}:{}}}})});import{existsSync as il,mkdirSync as hv,readFileSync as xv}from"node:fs";import{dirname as yv,join as bv}from"node:path";import{defineTool as Iv}from"@earendil-works/pi-coding-agent";function Wm(){return{state:"inactive",wasActive:!1}}function kL(e){return e?e.state==="pending"?{...e,state:"inactive"}:{...e}:Wm()}function $v(e){return e.state!=="inactive"?e:{...e,state:"pending"}}function TL(e){return e.state!=="pending"?e:{state:"active",wasActive:!0}}function vL(e){return e.state!=="inactive"?e:{state:"active",wasActive:!0}}function EL(e){return e.state!=="active"?e:{...e,state:"inactive"}}function wv(e){return e.state==="inactive"?e:{...e,state:"inactive"}}function Bm(e){return e.state==="active"}function SL(e,t){return e===t}function PL(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 AL(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 zm(){return pt}function kv(){return ct}function Tv(){return Bm(pt)}function vv(){if(!(!ct||!il(ct)))try{let e=xv(ct,"utf8");return e.trim()?e:void 0}catch{return}}function Ev(){return vv()!==void 0}function Sv(){return pt.state==="inactive"?"":pt.state==="pending"?"plan pending":Ev()?"plan \u25CF ready":"plan \u25CF planning"}function Pv(){return sl?bv(sl,"plan_mode.json"):void 0}function RL(){let e=Pv();if(e)try{hv(yv(e),{recursive:!0}),et(e,JSON.stringify(pt))}catch{}}function OL(){let e=Pv();if(!e||!il(e))return Wm();try{return kL(JSON.parse(xv(e,"utf8")))}catch{return Wm()}}function ML(e){sl=e,ct=bv(e,"plan.md"),pt=OL()}function Co(e){return pt=e,RL(),pt}function Av(){return e=>{e.on("tool_call",async t=>{if(!Bm(pt)||t.toolName!=="edit"&&t.toolName!=="write")return;let n=t.input?.path;if(typeof n=="string"&&!(!ct||SL(n,ct)))return{block:!0,reason:AL(ct)}})}}function Rv(){return e=>{e.on("session_start",async(t,n)=>{ML(n.sessionManager.getSessionDir())}),e.on("before_agent_start",async()=>{pt.state==="pending"&&Co(TL(pt))}),e.on("context_with_system",async t=>{if(!Bm(pt)||!ct)return;let n=t.messages[0];if(!n||n.role!=="system")return;let r=PL(ct,Ev()),o=`${typeof n.content=="string"?n.content:""}
|
|
27
|
+
|
|
28
|
+
${r}`;return{messages:t.messages.map(a=>a===n?{...n,content:o}:a)}})}}function CL(){if(ct){try{hv(yv(ct),{recursive:!0}),il(ct)||et(ct,"")}catch{return}return ct}}var ct,pt,sl,ol,Ov,Mv,al=m(()=>{_r();Hn();pt=Wm();ol=2e4;Ov=Iv({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:X.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:{}};Co(vL(pt));let a=CL();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}}}}),Mv=Iv({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:X.Object({}),executionMode:"sequential",async execute(e,t,n,r,o){if(!Bm(pt))return{content:[{type:"text",text:"Plan mode is not active."}],details:{},isError:!0};let s=vv();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>ol?`${s.slice(0,ol)}
|
|
30
|
+
\u2026 (${s.length-ol} more characters)`:s;return await o.ui.confirm("Approve this plan?",a)?(Co(EL(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 ml(){return{consecutiveFailures:0,tripped:!1}}function LL(e,t){return t==="manual"?!1:e.consecutiveFailures>=3}function jL(e,t){if(t)return e;let n=e.consecutiveFailures+1;return{consecutiveFailures:n,tripped:e.tripped||n>=3}}function FL(){return ml()}function DL(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 Cv(){return e=>{e.on("session_start",async()=>{lr=ml()}),e.on("session_compact",async()=>{lr=FL()}),e.on("session_compact_failed",async(t,n)=>{let r=lr;lr=jL(lr,t.aborted),!r.tripped&&lr.tripped&&n?.ui&&n.ui.notify(DL(lr),"warning")}),e.on("session_before_compact",async t=>{if(LL(lr,t.reason))return{cancel:!0}})}}var lr,Lv=m(()=>{lr=ml()});function Hm(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 Vm(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 ul=m(()=>{});function NL(e){cn(Mo(e))}function jv(e){return`budget exhausted (${e.budget??"default"} continuations)`}function Fv(){return e=>{e.on("session_start",async(t,n)=>{NL(n)}),e.on("context_with_system",async(t,n)=>{let r=Mo(n);if(cn(r),!r||r.status!=="active")return;let o=t.messages[0];if(!o||o.role!=="system")return;let s=`${Hm(o.content)}
|
|
32
|
+
|
|
33
|
+
${lv(r)}`;return{messages:t.messages.map(c=>c===o?{...o,content:Vm(o.content,s)}:c)}}),e.on("agent_before_settle",async(t,n)=>{let r=Mo(n);if(cn(r),Km(r).action==="stop"||!r||t.continue||!t.context.canContinue)return;let o={...r,used:r.used+1};if(e.appendEntry(pr,o),cn(o),Km(o).action==="stop"){let s={...o,status:"done",note:jv(o)};e.appendEntry(pr,s),cn(s);return}return{entries:[{type:"custom_message",customType:uv,content:dv(o),display:!0}],continue:!0}}),e.on("agent_settled",async(t,n)=>{let r=Mo(n),o=Km(r);if(r&&o.action==="stop"&&o.close){let s={...r,status:"done",note:jv(r)};e.appendEntry(pr,s),cn(s)}else cn(r)})}}var Dv=m(()=>{ul();Gm()});function Jm(){return e=>{e.on("context_with_system",async t=>{let n=av();if(!n)return;let r=t.messages[0];if(!r||r.role!=="system")return;let o=`${Hm(r.content)}
|
|
34
|
+
|
|
35
|
+
${n}`;return{messages:t.messages.map(a=>a===r?{...r,content:Vm(r.content,o)}:a)}})}}var cl=m(()=>{ul();Nm()});function qL(e){if(_L.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 dl(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"}:qL(n)||n==="0.0.0.0"?{ok:!1,reason:"refused private address"}:{ok:!0,url:t}}function Nv(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>pl?t.slice(0,pl):t}function UL(e){let t=[],n=/class="result__a"[^>]*href="([^"]+)"[^>]*>([\s\S]*?)<\/a>/gi,r;for(;(r=n.exec(e))&&t.length<ll;){let o=r[1]??"",s=Nv(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=dl(a);!p.ok||!s||t.push({title:s,url:p.url.toString(),snippet:""})}return t}async function qv(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??_v,accept:"text/html, application/json"};try{if(t.braveKey){let f=`https://api.search.brave.com/res/v1/web/search?q=${encodeURIComponent(n)}&count=${ll}`,I=await r(f,{headers:{...s,accept:"application/json","x-subscription-token":t.braveKey},signal:AbortSignal.timeout(o)});return I.ok?{ok:!0,hits:KL(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:UL(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 KL(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=dl(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>=ll)break}return n}async function Uv(e,t={}){let n=dl(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??_v,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)?Nv(a):a.slice(0,pl);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 _L,pl,ll,_v,Kv=m(()=>{_L=/^(127\.|10\.|192\.168\.|169\.254\.|0\.|221\.|222\.|223\.)/;pl=8e4,ll=8;_v="HowToFix (https://howtofix.id)"});import{Type as Ym}from"@earendil-works/pi-ai";import{defineTool as Gv}from"@earendil-works/pi-coding-agent";function GL(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 Xm,Zm,fl=m(()=>{Kv();Xm=Gv({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:Ym.Object({query:Ym.String({description:"Search query"})}),async execute(e,t){let n=await qv(t.query,{braveKey:process.env.BRAVE_API_KEY});return n.ok?{content:[{type:"text",text:GL(n.hits)}],details:{count:n.hits.length,provider:n.provider}}:{content:[{type:"text",text:n.error}],details:{error:n.error},isError:!0}}}),Zm=Gv({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:Ym.Object({url:Ym.String({description:"http(s) URL"})}),async execute(e,t){let n=await Uv(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 WL}from"node:child_process";import{existsSync as Wv,readFileSync as BL}from"node:fs";import{delimiter as zL,isAbsolute as HL,join as Bv}from"node:path";import{fileURLToPath as VL,pathToFileURL as qr}from"node:url";function zv(e){let t=JSON.stringify(e);return`Content-Length: ${Buffer.byteLength(t,"utf8")}\r
|
|
39
39
|
\r
|
|
40
|
-
${t}`}function
|
|
40
|
+
${t}`}function JL(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
|
|
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=
|
|
45
|
-
`):"no symbols in this file",count:f.length}}case"diagnostics":{let I=(await a.diagnostics(o)).map(
|
|
46
|
-
`):"no diagnostics",count:I.length}}}}catch(t){return{ok:!1,error:t instanceof Error?t.message:String(t)}}}var
|
|
47
|
-
`)}function
|
|
48
|
-
${t.result??t.task}`:`no agent ${e}`}async function
|
|
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 XL(e){return YL.find(t=>t.match(e))}async function ZL(e,t){let n=Ur.get(e.command);if(n)return await n.ready,n.client;let r=WL(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 gl({stdin:o,stdout:s,root:t});r.on("error",()=>{let p=Ur.get(e.command);p?.child===r&&Ur.delete(e.command),p?.client.dispose()});let c=a.initialize().catch(p=>{throw Ur.delete(e.command),r.kill(),p});return Ur.set(e.command,{client:a,child:r,ready:c}),await c,a}function hl(){for(let[e,t]of Ur)Ur.delete(e),t.client.dispose(),t.child.kill()}function Hv(e){let t=e.uri;try{t=VL(e.uri)}catch{}let n=e.range?.start;return n?`${t}:${n.line+1}:${n.character+1}`:t}function Vv(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(...Vv(r.children,t+1))}return n}async function Jv(e){try{let t=XL(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("/")?Wv(t.command):(process.env.PATH??"").split(zL).some(f=>Wv(Bv(f,t.command)))))return{ok:!1,error:`${t.command} is not on PATH. Install it to use lsp on ${e.file}.`};let o=HL(e.file)?e.file:Bv(e.root,e.file),s=BL(o,"utf8"),a=await ZL(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:Hv(f),count:1}:{ok:!0,text:"no definition found",count:0}}case"references":{let I=(await a.references(o,c,p)).map(Hv);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=Vv(await a.documentSymbols(o));return{ok:!0,text:f.length>0?f.join(`
|
|
45
|
+
`):"no symbols in this file",count:f.length}}case"diagnostics":{let I=(await a.diagnostics(o)).map($=>`${$.range.start.line+1}:${$.range.start.character+1} ${QL[$.severity??3]??"info"} ${$.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 gl,YL,Ur,QL,xl=m(()=>{gl=class{constructor(t){this.io=t;t.stdout.on("data",n=>{this.buffer=Buffer.concat([this.buffer,n]);let{messages:r,rest:o}=JL(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=zv({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(zv({jsonrpc:"2.0",method:t,params:n}))}async initialize(){await this.request("initialize",{processId:null,rootUri:qr(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:qr(t).toString()},position:{line:n,character:r}}))?.contents?.value}async definition(t,n,r){let o=await this.request("textDocument/definition",{textDocument:{uri:qr(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:qr(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:qr(t).toString()}});return Array.isArray(n)?n:[]}diagnostics(t,n=2e3){let r=qr(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=qr(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)}}},YL=[{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")}];Ur=new Map;process.on("exit",hl);QL={1:"error",2:"warning",3:"info",4:"hint"}});import{StringEnum as ej}from"@earendil-works/pi-ai";import{defineTool as tj}from"@earendil-works/pi-coding-agent";var Qm,yl=m(()=>{_r();xl();Qm=tj({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:X.Object({action:ej(["diagnostics","definition","references","hover","symbols"],{description:"Which language-server query to run"}),file:X.String({description:"File to query, relative to the project root"}),line:X.Optional(X.Number({description:"1-based line (definition, references, hover)"})),symbol:X.Optional(X.String({description:"Substring to locate on that line when column is omitted"}))}),async execute(e,t,n,r,o){let s=await Jv({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 nj,readdirSync as rj,readFileSync as oj}from"node:fs";import{join as Yv}from"node:path";import{createAgentSession as sj,DefaultResourceLoader as ij,SessionManager as aj}from"@earendil-works/pi-coding-agent";function eu(e){nj(Jr,{recursive:!0}),et(Yv(Jr,`${e.id}.json`),JSON.stringify({...e,session:void 0},null,1))}function Il(){let e;try{e=rj(Jr)}catch{return}for(let t of e)if(t.endsWith(".json"))try{let n=JSON.parse(oj(Yv(Jr,t),"utf8"));if(n.status!=="parked"||Qt.some(r=>r.id===n.id))continue;Qt.push({...n,mail:n.mail??[]})}catch{}}function $l(){return Il(),Qt.length===0?"no agents":Qt.map(e=>`${e.id} ${e.agent} ${e.status} requests=${e.requests} ${e.task}`).join(`
|
|
47
|
+
`)}function wl(e){Il();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 tu(e){let t=Kr.get(e.agent);if(!t)throw new Error(`unknown agent ${e.agent}`);let n=e.worktree||e.cwd||process.cwd(),r=new ij({cwd:n,agentDir:Ve,additionalSkillPaths:[hr(n)],extensionFactories:[zo({interactive:!1}),Jm()]});await r.reload();let{session:o}=await sj({cwd:n,agentDir:Ve,sessionManager:aj.inMemory(n),resourceLoader:r,tools:t.tools,customTools:[Dm,Fm,Xm,Zm,Qm],thinkingLevel:e.effort});return o}async function Zv(e,t){Il();let n=Qt.find(o=>o.id===e);if(!n)return`no agent ${e}`;let r=n.session??await tu(n);if(n.session=r,n.status==="running"||r.isStreaming)return n.mail.push(t),eu(n),`queued for ${e}`;if(n.requests>=Xv)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 eu(n),`${e} ${n.status}`}async function Qv(e){let t=Kr.get(e.agent);if(!t)throw new Error(`unknown agent ${e.agent}. known: ${[...Kr.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),eu(n),n}async function cj(e,t){let n=Kr.get(e.agent);if(!n)return;let r=e.session??await tu(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<Xv;)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{eu(e)}}async function eE(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 cj(r,e)}};if(await Promise.all(Array.from({length:uj},n)),e?.aborted)throw new Error("aborted")}var bl,mj,Kr,Qt,uj,Xv,zs=m(()=>{_n();Nm();cl();Ho();nl();fl();yl();Hn();bl=["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."],mj=`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.
|
|
@@ -71,72 +71,75 @@ End your reply with exactly this section, listing the 3-5 files most critical to
|
|
|
71
71
|
- path/to/file.ts
|
|
72
72
|
- path/to/file.ts
|
|
73
73
|
|
|
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.`,
|
|
75
|
-
`),effort:"low"}],["architect",{name:"architect",description:"designs an implementation plan",tools:["read","grep","find","ls","context","web_search","web_fetch","lsp"],prompt:
|
|
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.",...
|
|
77
|
-
`),effort:"medium"}]]),Qt=[],
|
|
78
|
-
`)}function
|
|
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.`,Kr=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.",...bl].join(`
|
|
75
|
+
`),effort:"low"}],["architect",{name:"architect",description:"designs an implementation plan",tools:["read","grep","find","ls","context","web_search","web_fetch","lsp"],prompt:mj,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.",...bl].join(`
|
|
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.",...bl].join(`
|
|
77
|
+
`),effort:"medium"}]]),Qt=[],uj=3,Xv=8});import{execFile as pj}from"node:child_process";import{promisify as lj}from"node:util";import{tmpdir as dj}from"node:os";import{join as fj}from"node:path";async function en(e,t){try{let{stdout:n}=await gj("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 nu(e){return(await en(e,["rev-parse","--is-inside-work-tree"])).output==="true"}async function tE(e){return(await en(e,["status","--porcelain"])).output.length>0}async function nE(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 rE(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 oE(e){let t=(await en(e,["diff"])).output,n=(await en(e,["diff","--cached"])).output;return[t,n].filter(Boolean).join(`
|
|
78
|
+
`)}function sE(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 iE(e,t){if(!await nu(e))return null;let n=t.replace(/[^A-Za-z0-9._-]/g,"-").slice(0,40)||"agent",r=fj(dj(),`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 gj,kl=m(()=>{gj=lj(pj)});function aE(e){return e===null?"null":Array.isArray(e)?"array":Number.isInteger(e)?"integer":typeof e}function hj(e,t){let n=aE(e);return t==="number"?n==="number"||n==="integer":t==="integer"?n==="integer":n===t}function xj(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(!Gr(n)&&!Array.isArray(n))return;n=n[o]}return Gr(n)?n:void 0}function dr(e,t,n,r,o){if(!Gr(t))return;if(t.$ref!==void 0){let a=xj(n,t.$ref);a&&dr(e,a,n,r,o);return}if(Array.isArray(t.allOf))for(let a of t.allOf)dr(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 dr(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=>hj(e,c))){o.push({path:r,message:`expected ${a.join(" or ")}, got ${aE(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(", ")}`}),Gr(e)){let a=Gr(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&&dr(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(Gr(t.additionalProperties))for(let[c,p]of Object.entries(e))c in a||dr(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&&dr(c,a[p],n,`${r}[${p}]`,o)}):e.forEach((c,p)=>dr(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 mE(e,t){if(!Gr(t))return[];let n=[];return dr(e,t,t,"",n),n}function uE(e){return e.map(t=>`- ${t.path||"(root)"}: ${t.message}`).join(`
|
|
81
|
+
`)}function cE(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 $=s;$<o.length;$++){let R=o[$];if(f){I?I=!1:R==="\\"?I=!0:R==='"'&&(f=!1);continue}if(R==='"')f=!0;else if(R===a)p++;else if(R===c&&(p--,p===0))try{return JSON.parse(o.slice(s,$+1))}catch{break}}}}}var Gr,pE=m(()=>{Gr=e=>typeof e=="object"&&e!==null&&!Array.isArray(e)});import*as lE from"node:os";async function Ij(e,t=dE,n=fE){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 $j(){let e=lE.availableParallelism?.()??4;return Math.max(1,Math.min(16,e-2))}function wj(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 gE(e){let t=e.lifetimeCap??yj,n=e.fanoutCap??bj,r=wj(e.concurrency??$j()),o=0,s=0,a="",c=N=>e.onEvent?.(N),p=new Map,f=()=>e.onProgress?.([...p.values()]),I=async(N,J)=>{let ae=J??{},xe=typeof ae.label=="string"?ae.label:`agent-${o+1}`,Te=typeof ae.phase=="string"?ae.phase:a,ze=typeof ae.agentType=="string"?ae.agentType:"task",Ut=typeof ae.effort=="string"?ae.effort:void 0,ye=typeof ae.model=="string"?ae.model:void 0,re=typeof ae.isolation=="string"?ae.isolation:void 0,v=ae.schema;if(e.budgetTotal!=null&&s>=e.budgetTotal)throw new Be(`budget exhausted: spent ${s} of ${e.budgetTotal} output tokens`);if(o>=t)throw new Be(`lifetime cap reached: ${t} agent calls in one run`);o++;let He=o;if(e.isPaused?.()&&!await Ij(e,dE,fE))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(He,{label:xe,phase:Te,agentType:ze,status:"running",outputTokens:0,...ye?{model:ye}:{},startedAt:Date.now()}),f();let fn=(tn,Gt,Ue)=>{let jt=p.get(He);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),Ue&&(jt.detail=Ue)),c({kind:"agent_end",label:xe,ok:tn==="ok",outputTokens:Gt.outputTokens}),f()},No=v===void 0?1:2;for(let tn=0;tn<No;tn++){let Gt=tn===0?String(N):void 0,Ue=await R(Gt??kj(String(N),$),{label:xe,phase:Te,agentType:ze,effort:Ut,model:ye,isolation:re});if(Ue===null)return fn("failed",{text:"",outputTokens:0}),null;if(s+=Ue.outputTokens,v===void 0)return fn("ok",Ue,Tl(Ue.text)),Ue.text;let jt=cE(Ue.text),_o=jt===void 0?[{path:"",message:"reply was not JSON"}]:mE(jt,v);if(_o.length===0)return fn("ok",Ue,Tl(Ue.text)),jt;if($=uE(_o),tn===No-1)return fn("failed",Ue,`schema: ${Tl($)}`),null}return null}finally{Kt()}},$="",R=async(N,J)=>{try{return await e.invoke({prompt:N,...J})}catch{return null}};return{agent:(N,J)=>I(N,J),parallel:async N=>{if(N.length>n)throw new Be(`fan-out cap exceeded: ${N.length} items (max ${n})`);return await Promise.all(N.map(async ae=>{try{return await ae()}catch{return null}}))},pipeline:async(N,...J)=>{if(N.length>n)throw new Be(`fan-out cap exceeded: ${N.length} items (max ${n})`);return await Promise.all(N.map(async(xe,Te)=>{let ze=xe;for(let Ut of J)try{ze=await Ut(ze,xe,Te)}catch{return null}return ze}))},phase:N=>{a=String(N),c({kind:"phase",title:a})},log:N=>c({kind:"log",message:String(N)}),args:e.args,budget:{total:e.budgetTotal??null,spent:()=>s,remaining:()=>e.budgetTotal==null?1/0:Math.max(0,e.budgetTotal-s)}}}function kj(e,t){return`${e}
|
|
82
82
|
|
|
83
83
|
Your previous reply did not satisfy the required schema:
|
|
84
84
|
${t}
|
|
85
85
|
|
|
86
|
-
Reply with ONLY a corrected JSON value.`}function
|
|
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 () => {
|
|
86
|
+
Reply with ONLY a corrected JSON value.`}function Tl(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 yj,bj,dE,fE,Be,hE=m(()=>{pE();yj=1e3,bj=4096,dE=100,fE=300*1e3;Be=class extends Error{constructor(t){super(t),this.name="WorkflowError"}}});import{parseColor as Bn,styleText as Tj}from"@earendil-works/pi-tui";function vj(e,t){return Tj(e,t,ru)}function ee(e,t,n){return vj(e,{...n,fg:t})}var ru,D,xE,Hs=m(()=>{ru="truecolor",D={text:Bn("#e6e6e6"),mute:Bn("#8b8b8b"),dim:Bn("#5c5c5c"),user:Bn("#d0d0d0"),accent:Bn("#c4b5fd"),tool:Bn("#6ee7b7"),bad:Bn("#f0a8a4"),warn:Bn("#e6b15a"),line:Bn("#3a3a3a")};xE={heading:e=>ee(e,D.text,{bold:!0}),link:e=>ee(e,D.accent,{underline:!0}),linkUrl:e=>ee(e,D.mute),code:e=>ee(e,D.text),codeBlock:e=>ee(e,D.text),codeBlockBorder:e=>ee(e,D.line),quote:e=>ee(e,D.mute,{italic:!0}),quoteBorder:e=>ee(e,D.line),hr:e=>ee(e,D.line),listBullet:e=>ee(e,D.mute),bold:e=>ee(e,D.text,{bold:!0}),italic:e=>ee(e,D.text,{italic:!0}),strikethrough:e=>ee(e,D.mute,{strikethrough:!0}),underline:e=>ee(e,D.text,{underline:!0})}});import{truncateToWidth as Js,visibleWidth as pn}from"@earendil-works/pi-tui";function fr(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 IE(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 Sl(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function su(e,t,n="left"){if(t<=0)return"";let r=pn(e);if(r>t)return Js(e,t);let o=" ".repeat(t-r);return n==="right"?o+e:e+o}function Pl(e,t,n,r=1){if(n<=0)return"";let o=pn(t);if(o>=n)return Js(t,n);let s=n-o-r;if(s<=0)return su(t,n,"right");let a=pn(e)>s?Js(e,s):e,c=" ".repeat(n-pn(a)-o);return a+c+t}function vl(e,t,n){let r=Lo(e,Math.max(0,n-2)),o=Math.max(1,n-1-pn(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} ${su(f,n)} ${c}`);return[s,...p,a]}function Pj(e,t,n,r){let o=r?.gap??1,s=r?.leftWidth??Vs(Math.round(n*.38),28,44),a=n-s-o,c=Math.max(e.rows.length,t.rows.length),p=R=>{let C=[...R];for(;C.length<c;)C.push("");return C},f=vl(e.title,p(e.rows),s-4),I=vl(t.title,p(t.rows),a-4),$=" ".repeat(o);return f.map((R,C)=>R+$+(I[C]??su("",a)))}function $E(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 wE(e,t,n,r=Date.now(),o=0){return t?r-o<ou?ge("success","\u2713",!0):ge("success","\u2713"):ge(n?"accent":"dim",String(e))}function jo(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||bE;n.includes(s)||n.push(s)}return n.map((o,s)=>{let a=e.steps.filter(P=>(P.phase||bE)===o).map(P=>({...P,phaseIndex:s})),c=a.filter(P=>P.status!=="running").length,p=a.filter(P=>P.status==="failed").length,f=a.reduce((P,N)=>{let J=N.endedAt??t;return Math.max(P,J-N.startedAt)},0),I=-1;for(let P=0;P<a.length;P++){let N=a[P];N.status==="running"&&(I<0||N.startedAt>=a[I].startedAt)&&(I=P)}let $=r.get(o),R=a.length>0&&c===a.length&&p===0,C=R?a.reduce((P,N)=>Math.max(P,N.endedAt??0),0):0;return{title:o,...$?{detail:$}:{},agents:a,done:c,failed:p,outputTokens:a.reduce((P,N)=>P+N.outputTokens,0),elapsedMs:f,allDone:R,finishedAt:C,anchor:I}})}function Al(e){return e.steps.reduce((t,n)=>t+n.outputTokens,0)}function Aj(e){return e.steps.reduce((t,n)=>t+(n.toolCalls??0),0)}function kE(e,t=Date.now()){return Math.max(0,(e.endedAt??t)-e.startedAt)}function Rj(e){return e.steps.length>Ej||Al(e)>Sj}function Oj(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 TE(e,t=Date.now()){let n=jo(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(`${Sl(Al(e))} tok`),a.push(fr(kE(e,t))),s>0&&a.push(`${s} failed`);let p=a.join(" \xB7 ");return Rj(e)?`large workflow \xB7 ${p}`:p}function EE(e,t){if(e.status==="running"&&e.outputTokens===0)return[`idle ${fr(t-e.startedAt)}`,"idle"];let n=Sl(e.outputTokens),r=e.toolCalls??0,o=fr((e.endedAt??t)-e.startedAt);return[`${n} tok \xB7 ${r} tools \xB7 ${o}`,`${n} tok \xB7 ${r} tools`,`${n} tok`]}function El(e,t,n){if(e.length<=n)return{slice:e,start:0,more:0};let r=Math.max(1,n-1),o=Vs(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 Dj(e,t,n,r,o){let s=`${e.done}/${e.agents.length}`,a=n?ge("accent","\u276F"):" ",c=wE(t+1,e.allDone,n,o,e.finishedAt),p=Math.max(0,r-4-pn(s)),f=pn(e.title)>p?Js(e.title,p,"\u2026"):e.title,I=e.allDone&&o-e.finishedAt<ou,$=ge(I&&!n?"success":n?"accent":"text",f),R=`${a}${c} ${$}`,C=ge(n?"accent":"muted",s);return Pl(R,C,r,1)}function Nj(e,t,n,r,o,s){let a=t?ge("accent","\u276F"):" ",c=$E(e.status,t,n),p=ge(t?"accent":"text",su(e.label,r)),f=`${a}${c} ${p}`,I=Math.max(0,o-pn(f)-1),$=EE(e,s).find(C=>pn(C)<=I)??"",R=ge(t?"accent":Fj(e)?"dim":"muted",$);return Pl(f,R,o,1)}function _j(e,t,n,r){let o=[];return e.forEach((s,a)=>{let p=`${wE(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(Lo(p,t));let{slice:f,more:I}=El(s.agents,0,vE);f.forEach(($,R)=>{let C=$E($.status,!1,R===s.anchor),P=EE($,r)[0]??"";o.push(Lo(` ${C} ${ge("text",$.label)} ${ge("muted",P)}`,t))}),I>0&&o.push(Lo(` ${ge("dim",`\u2026+${I} more`)}`,t))}),o}function qj(e,t,n){let r=n?.now??Date.now(),o=jo(e,r),s=e.steps,a=s.filter(He=>He.status!=="running").length,c=s.filter(He=>He.status==="failed").length,p=[`${a}/${s.length} agents`,`${Sl(Al(e))} tok`,`${Aj(e)} tools`,fr(kE(e,r)),...c>0?[`${c} failed`]:[]].join(" \xB7 "),f=[Pl(ge("accent",e.name,!0),ge("muted",p),t,2),...e.description?[ge("muted",Lo(e.description,t))]:[]],I=n?.footer?[ge("muted",Lo(n.footerText??Uj(),t))]:[];if(o.length===0)return[...f,...vl("Phases",["(no agents yet)"],Math.max(0,t-4)),...I];let $=Vs(n?.selectedPhase??Oj(o),0,Math.max(0,o.length-1)),R=Vs(Math.round(t*.38),28,44),C=t-R-1-4;if(t<Lj||C<jj)return[...f,..._j(o,t,$,r),...I];let P=o[$],{slice:N,start:J,more:ae}=El(o,$,Mj),xe=N.map((He,Kt)=>Dj(He,J+Kt,J+Kt===$,R-4,r));ae>0&&xe.push(ge("dim",`\u2026+${ae} more`));let Te=n?.filter?n.filter(P.agents):P.agents,ze=Te.length?Vs(Math.max(...Te.map(He=>pn(He.label))),6,Cj):6,{slice:Ut,more:ye}=El(Te,0,n?.agentWindow??vE),re=Ut.map((He,Kt)=>Nj(He,!1,Kt===P.anchor,ze,C,r));ye>0&&re.push(ge("dim",`\u2026+${ye} more`));let v=Pj({title:"Phases",rows:xe},{title:`${P.title} \xB7 ${Te.length} agents${n?.filterLabel??""}`,rows:re},t,{leftWidth:R,gap:1});return[...f,...v,...I]}function SE(e,t=[],n=96,r,o){let s=qj(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=jo(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 Uj(){return"\u2191/\u2193 phase \xB7 Enter drill in \xB7 Esc back out \xB7 f filter by status \xB7 p pause \xB7 x stop \xB7 s save script"}var yE,ge,Ej,Sj,ou,Vs,Lo,bE,vE,Mj,Cj,Lj,jj,Fj,Ys=m(()=>{Hs();yE={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?ee(t,yE[e],{bold:!0}):ee(t,yE[e]),Ej=25,Sj=15e5,ou=420;Vs=(e,t,n)=>Math.max(t,Math.min(n,e)),Lo=(e,t)=>pn(e)>t?Js(e,Math.max(0,t),"\u2026"):e;bE="Workflow";vE=16,Mj=12,Cj=18,Lj=72,jj=24;Fj=e=>e.status==="running"&&e.outputTokens===0});import{readFileSync as Kj}from"node:fs";import{basename as Gj}from"node:path";import{StringEnum as Wj}from"@earendil-works/pi-ai";import{defineTool as Bj}from"@earendil-works/pi-coding-agent";function AE(e){PE=e}function Hj(e){let t=e.replace(/^(?:\s+|\/\/[^\n]*\n|\/\*[\s\S]*?\*\/)*/,""),n=/^export\s+const\s+meta\s*=\s*/.exec(t);if(!n)throw new Be("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 C=o;C<t.length;C++){let P=t[C];if(a){P==="\\"?C++:P===a&&(a=null);continue}if(P==='"'||P==="'"||P==="`")a=P;else if(P==="{"||P==="[")s++;else if((P==="}"||P==="]")&&(s--,s===0)){c=C+1;break}}if(c===-1)throw new Be("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 Be("a workflow body must not contain import or export declarations");if(/\bimport\s*\(/.test(f))throw new Be("a workflow body must not use dynamic import()");let I;try{I=new Function(`"use strict"; return (${p});`)()}catch(C){throw new Be(`meta must be a literal object: ${C instanceof Error?C.message:String(C)}`)}if(typeof I!="object"||I===null)throw new Be("meta must be an object");let $=I;if(typeof $.name!="string"||!$.name.trim())throw new Be("meta.name is required");if(typeof $.description!="string"||!$.description.trim())throw new Be("meta.description is required");let R=Array.isArray($.phases)?$.phases.filter(C=>typeof C=="object"&&C!==null).map(C=>({title:String(C.title??""),...typeof C.detail=="string"?{detail:C.detail}:{}})).filter(C=>C.title):void 0;return{meta:{name:$.name,description:$.description,...typeof $.whenToUse=="string"?{whenToUse:$.whenToUse}:{},...R?{phases:R}:{}},body:f}}function Vj(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
|
|
89
|
+
})();`,r;try{r=new Function(...t,n)}catch(o){throw new Be(`workflow did not compile: ${o instanceof Error?o.message:String(o)}`)}return r}function Jj(e){return e.getLastAssistantText()?.trim()??""}function Yj(){return async({prompt:e,agentType:t,effort:n,model:r,isolation:o})=>{let s=Kr.get(t)??Kr.get("task");if(!s)throw new Be(`no agent named ${t}`);let a=o==="worktree"?await iE(process.cwd(),t):null,c=await tu({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??
|
|
92
|
+
${e}`);let p=c.getSessionStats(),f=r??Xj(c);return{text:Jj(c),outputTokens:p.tokens.output,toolCalls:p.toolCalls,...f?{model:f}:{}}}finally{c.dispose(),await a?.remove()}}}function Xj(e){return e.model?.id??e.model?.name}function RE(e){let t=()=>e??PE;return Bj({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:Zj,executionMode:"sequential",async execute(n,r,o,s,a){let c=r.path?Kj(r.path,"utf8"):r.code??"";if(!c.trim())throw new Be("provide code or path");let{meta:p,body:f}=Hj(c);if(r.path){let ye=Gj(r.path).replace(/\.(js|mjs|cjs|ts)$/,"");if(ye!==p.name)throw new Be(`meta.name "${p.name}" must match the script filename "${ye}"`)}let I=Vj(f),$=Date.now(),R=[],C=0,P=0,N=(ye,re)=>({name:p.name,...p.description?{description:p.description}:{},ok:ye,agents:P,outputTokens:C,startedAt:$,phases:p.phases??[],steps:R,...re?{error:re}:{}}),J=(ye,re)=>{a.ui.setStatus(Rl,re?void 0:TE(ye)),s?.({content:[],details:N(!1)})},ae=ye=>{P=ye.length,C=ye.reduce((re,v)=>re+v.outputTokens,0),R.splice(0,R.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}:{}}))),J({name:p.name,...p.description?{description:p.description}:{},phases:p.phases??[],steps:R,startedAt:$},!1)},xe=Yj(),Te=gE({invoke:r.agent?Qj(xe,r.agent):xe,budgetTotal:r.budget??null,onProgress:ae,...o?{signal:o}:{},...t()?.isPaused?{isPaused:t().isPaused}:{}}),ze=new AbortController,Ut=setTimeout(()=>ze.abort(),zj);o&&o.addEventListener("abort",()=>ze.abort(),{once:!0}),t()?.onStop?.(()=>ze.abort());try{let ye=await Promise.race([I(Te.agent,Te.parallel,Te.pipeline,Te.phase,Te.log,Te.args,Te.budget),new Promise((v,He)=>ze.signal.addEventListener("abort",()=>He(new Be("workflow timed out or was aborted"))))]),re=Date.now();return a.ui.setStatus(Rl,void 0),{content:[{type:"text",text:`${p.name}: ${P} agent call(s), ${C} output tokens in ${fr(re-$)}
|
|
93
93
|
|
|
94
|
-
${
|
|
94
|
+
${eF(ye)}`}],details:{...N(!0),endedAt:re}}}catch(ye){let re=ye instanceof Error?ye.message:String(ye);return a.ui.setStatus(Rl,void 0),{content:[{type:"text",text:`${p.name} failed after ${P} agent call(s): ${re}`}],details:{...N(!1,re),endedAt:Date.now()},isError:!0}}finally{clearTimeout(Ut),t()?.onStop?.(null)}}})}function Qj(e,t){return n=>e({...n,agentType:t})}function eF(e){if(typeof e=="string")return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}var Rl,PE,zj,Zj,Ol=m(()=>{_r();zs();kl();hE();Ys();Rl="workflow",PE=null;zj=600*1e3;Zj=X.Object({code:X.Optional(X.String({description:"The workflow script source"})),path:X.Optional(X.String({description:"Path to a workflow script, instead of code"})),agent:X.Optional(Wj(["scout","task","reviewer"],{description:"Default agent profile for calls"})),budget:X.Optional(X.Number({description:"Output-token ceiling for the whole run"}))})});import{Type as Pt}from"@earendil-works/pi-ai";import{defineTool as tF}from"@earendil-works/pi-coding-agent";var OE,ME=m(()=>{zs();zs();OE=tF({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 Qv({...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 eE(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
|
|
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
|
|
105
|
-
`).find(t=>t.trim())??""}function
|
|
106
|
-
`).length:0}function
|
|
107
|
-
`).find(p=>p.trim());return
|
|
108
|
-
`).find(c=>c.trim());return a?
|
|
109
|
-
`).filter(r=>r.length>0).slice(0,12);if(e==="bash"||e==="powershell"){let r=
|
|
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,
|
|
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:
|
|
97
|
+
`)}],details:{agents:a.map(p=>({id:p.id,status:p.status}))}}}})});function CE(){return e=>{e.on("session_start",()=>{let t=new Set(e.getActiveTools());for(let n of nF)e.getAllTools().some(r=>r.name===n)&&t.add(n);e.setActiveTools([...t])})}}var nF,LE=m(()=>{nF=["grep","find","ls"]});var jE={};Dt(jE,{BUILD_ENTRY:()=>au,openSession:()=>pF});import{join as rF}from"node:path";import{createAgentSession as oF,createCodemodeExtension as sF,createMcpExtension as iF,DefaultResourceLoader as aF,SessionManager as iu,SettingsManager as mF}from"@earendil-works/pi-coding-agent";function cF(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 pF(e){let t=mF.create(e.cwd,Ve,{projectTrusted:!0}),n=e.sessionPath?iu.open(e.sessionPath):e.noSession?iu.inMemory(e.cwd):e.continueSession?iu.continueRecent(e.cwd):iu.create(e.cwd),r=(()=>{try{let I=n.getEntries().find($=>$.type==="custom"&&$.customType===au)?.data?.version;return!I||I===hn?void 0:`this session was written by HowToFix ${I}; you are running ${hn}`}catch{return}})(),o=new aF({cwd:e.cwd,agentDir:Ve,settingsManager:t,appendSystemPrompt:[bd],additionalSkillPaths:[hr(e.cwd)],extensionFactories:[Av(),zo(),Jd(),Jm(),Fv(),Rv(),Cv(),sF(),iF(),CE()]});await o.reload();let s=await oF({cwd:e.cwd,agentDir:Ve,settingsManager:t,sessionManager:n,resourceLoader:o,excludeTools:uF().exclude,customTools:[OE,Qd,ef,Fm,Dm,gv,Ov,Mv,RE(),Xm,Zm,Qm],thinkingLevel:e.thinking}),a=s.session.model;if(e.model){let f=await s.session.modelRuntime.getAvailable(),I=cF(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!==au))try{n.appendCustomEntry(au,{version:hn})}catch{}let c=a?`${a.provider}/${a.id}`:"no model",p=[Id(s.modelFallbackMessage)].filter(f=>!!f);return a||p.push(`no model configured. run \`howtofix\` and use /login, or edit ${rF(Ve,"models.json")}`),{session:s.session,dispose:()=>{hl(),s.session.dispose()},modelLabel:c,note:[r,...p].filter(Boolean).join(`
|
|
98
|
+
`)||void 0}}var au,uF,FE=m(()=>{Ko();Yd();_n();Ho();oc();nl();Nm();Gm();al();Lv();Dv();cl();Ol();ME();LE();fl();yl();xl();au="howtofix.build",uF=()=>({exclude:process.platform==="win32"?[]:["powershell"]})});import{spawn as lF}from"node:child_process";function dF(e,t,n=2e3){return new Promise(r=>{let o=!1,s=f=>{o||(o=!0,clearTimeout(c),r(f))},a;try{a=lF(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 Ml(){return process.env.XDG_SESSION_TYPE==="wayland"||(process.env.WAYLAND_DISPLAY?.length??0)>0}async function fF(){let e=[];process.platform==="darwin"?e.push({command:"pbpaste",args:[]}):process.platform==="win32"?e.push({command:"powershell.exe",args:["-NoProfile","-Command","Get-Clipboard -Raw"]}):(Ml()&&(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||!Ml())&&(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 dF(t.command,t.args);if(n.ok&&n.stdout.length>0)return n.stdout}}async function DE(){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 fF();return t!==void 0?{ok:!0,text:t}:{ok:!1,reason:`no clipboard tool could read it \u2014 ${Ml()?"install wl-clipboard (wl-paste)":process.platform==="darwin"?"pbpaste should be present on macOS":"install xclip or xsel, or run under a display"}`}}function NE(){return process.platform!=="win32"}var _E=m(()=>{});import{mixColors as gF,styleText as qE}from"@earendil-works/pi-tui";function Xs(e,t,n){let r=BE(n);return r>=1?t:r<=0?e:gF(e,t,r)}function Ll(e,t,n,r){return!Wr||e<=Cl?t:e>=GE?r:Xs(n,r,(e-Cl)/(GE-Cl))}function zE(e,t){return!Wr||t<=0||e<0?1:1-(1-BE(e/t))**3}function HE(e,t){return Wr&&e>=0&&e<t}function Fl(e,t,n=xF,r=400){return!Wr||n<=0||e<0||e>=r?t:Math.min(t,Math.floor(e/n)+1)}function VE(e,t,n=Date.now(),r=1400){if(!Wr||r<=0)return e;let o=n%r/r;return Xs(e,t,o<.5?o*2:(1-o)*2)}function yF(e,t){let n=Math.abs(e-t);return n>=UE?0:Math.ceil((1-n/UE)*WE)/WE}function JE(e,t,n=Date.now()){let r=t.charMs??hF;if(!Wr||e.length===0||r<=0)return qE(e,{fg:t.base},ru);let o=e.length+KE*2,s=n/r%o-KE,a=(R,C)=>qE(R,{fg:Xs(t.base,t.bright,C)},ru),c="",p=0,f=null,I=0,$=0;for(let R of e){let C=yF($,s);f===null?f=C:C!==f&&(c+=a(e.slice(p,I),f),p=I,f=C),I+=R.length,$+=1}return c+a(e.slice(p),f??0)}var Wr,hF,UE,KE,Cl,GE,WE,BE,mu,jl,xF,Dl=m(()=>{Hs();Wr=process.env.HOWTOFIX_NO_MOTION!=="1",hF=45,UE=5,KE=8,Cl=1e4,GE=6e4,WE=3,BE=e=>e<0?0:e>1?1:e;mu=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,!Wr)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}};jl=260,xF=45});import{execFile as bF,execFileSync as IF}from"node:child_process";import{promisify as $F}from"node:util";import{createHash as XE}from"node:crypto";import{copyFileSync as wF,existsSync as Nl,mkdirSync as uu,readFileSync as kF,statSync as TF}from"node:fs";import{dirname as ZE,join as Fn,resolve as QE}from"node:path";function EF(e){let t=QE(e);for(;;){if(Nl(Fn(t,".git")))return!0;let n=ZE(t);if(n===t)return!1;t=n}}async function ln(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 SF("git",t,{cwd:e.root,env:n,encoding:"utf8",maxBuffer:8*1024*1024});return r.trim()}function PF(e){return XE("sha1").update(e).digest("hex").slice(0,16)}function eS(e){let t=QE(e).replace(/\/+$/,"")||"/",n=Fn(vF,PF(t)),r=Fn(n,"git"),o={root:t,gitDir:r,metaFile:Fn(n,"checkpoints.json"),disabled:!1};return!Nl(Fn(r,"HEAD"))&&!EF(t)?(o.disabled=!0,o):(uu(n,{recursive:!0}),Nl(Fn(r,"HEAD"))||(uu(r,{recursive:!0}),IF("git",["init","--quiet","--initial-branch=howtofix"],{env:{...process.env,GIT_DIR:r},stdio:["ignore","ignore","pipe"]})),AF(t,r),o)}function AF(e,t){let n=Fn(e,".git","info","exclude");try{if(!TF(n).isFile())return;uu(Fn(t,"info"),{recursive:!0}),wF(n,Fn(t,"info","exclude"))}catch{}}function ql(e){try{let t=JSON.parse(kF(e.metaFile,"utf8"));if(t?.version===1&&t.sessions)return t}catch{}return{version:1,sessions:{}}}function tS(e,t){uu(ZE(e.metaFile),{recursive:!0}),et(e.metaFile,`${JSON.stringify(t,null,1)}
|
|
99
|
+
`)}function Ul(e,t){return e.disabled?[]:[...ql(e).sessions[t]??[]].sort((n,r)=>n.at-r.at)}async function nS(e,t,n){if(e.disabled)return null;let r;try{await ln(e,["add","-A","--ignore-errors","--"]),r=await ln(e,["write-tree"])}catch{return null}let s=Ul(e,t).find(R=>R.tree===r),a=Date.now(),c=`${a.toString(36)}-${XE("sha1").update(`${r}:${a}`).digest("hex").slice(0,6)}`,p=s?.commit;if(!p){let R=["howtofix checkpoint",`session ${t}`,`created ${new Date(a).toISOString()}`,`prompt ${n.slice(0,200)}`].join(`
|
|
100
|
+
`);p=await ln(e,["commit-tree",r,"-m",R]),await ln(e,["update-ref",`${_l}/${c}`,p])}let f={id:c,tree:r,commit:p,prompt:n,at:a},I=ql(e),$=[...I.sessions[t]??[],f];for(let R of $.slice(0,Math.max(0,$.length-YE)))try{await ln(e,["update-ref","-d",`${_l}/${R.id}`])}catch{}return I.sessions[t]=$.slice(-YE),tS(e,I),f}async function rS(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 ln(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 ln(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 oS(e,t){if(e.disabled)return[];try{await ln(e,["add","-A","--ignore-errors","--"]);let n=await ln(e,["write-tree"]);return n===t.tree?[]:(await ln(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 sS(e,t){if(e.disabled)return;let n=ql(e);for(let r of n.sessions[t]??[])try{await ln(e,["update-ref","-d",`${_l}/${r.id}`])}catch{}delete n.sessions[t],tS(e,n)}var vF,_l,YE,SF,iS=m(()=>{_n();Hn();vF=Fn(Ve,"rewind"),_l="refs/howtofix",YE=100;SF=$F(bF)});function Bl(e=90){let t=Math.floor(Date.now()/e)%Kl.length;return Kl[t]??Kl[0]}function Br(e,t){let n=e.replace(/\s+/g," ").trim();return n.length>t?`${n.slice(0,Math.max(1,t-1))}\u2026`:n}function Oe(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 RF(e,t=160){if(!e||typeof e!="object")return"";try{let n=JSON.stringify(e);return n&&n!=="{}"?Br(n,t):""}catch{return""}}function OF(e,t){switch(e){case"read":{let n=Oe(t,"path")??"",r=[Oe(t,"offset"),Oe(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 Oe(t,"path")??"";case"bash":case"powershell":return Oe(t,"command")??"";case"grep":{let n=Oe(t,"pattern")??"",r=Oe(t,"path");return r?`${n} in ${r}`:n}case"find":case"glob":{let n=Oe(t,"pattern")??Oe(t,"glob")??"",r=Oe(t,"path");return r?`${n} in ${r}`:n}case"ls":return Oe(t,"path")??".";case"task":return Oe(t,"agent")??"task";case"ask":return Oe(t,"question")??"";case"web_search":return Oe(t,"query")??"";case"web_fetch":return Oe(t,"url")??"";case"lsp":{let n=Oe(t,"action")??"lsp",r=Oe(t,"file")??"",o=Oe(t,"line");return o?`${n} ${r}:${o}`:`${n} ${r}`}case"think":return"private";case"todo":{let n=Oe(t,"op")??"view",r=Oe(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=Oe(t,"op")??"list",r=Oe(t,"key");return r?`${n} ${r}`:n}case"workflow":{let n=Oe(t,"path");if(n)return n;let r=Oe(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 RF(t)}}function Fo(e,t,n=100){let r=e.charAt(0).toUpperCase()+e.slice(1),o=Br(OF(e,t),n);return o?`${aS} ${r}(${o})`:`${aS} ${r}`}function MF(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 zl(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 Qs(e){let t=e?.details;return t&&typeof t=="object"?t:{}}function Hl(e){let t=e?.structuredContent;return t&&typeof t=="object"?t:{}}function mS(e){let t=e.exit_code;return typeof t=="number"&&Number.isFinite(t)?t:void 0}function uS(e){return e.trim().split(`
|
|
105
|
+
`).find(t=>t.trim())??""}function CF(e,t){let n=typeof e.output=="string"?e.output:t.replace(/\n*Command exited with code \d+\s*$/,""),r=Zs(n);return r>0?` (${r} line${r===1?"":"s"})`:""}function Zs(e){let t=e.trim();return t?t.split(`
|
|
106
|
+
`).length:0}function pu(e,t,n){let r=zl(t),o=Qs(t),s=Hl(t);if(n){let a=mS(s);if(a!==void 0&&(e==="bash"||e==="powershell"))return`exit ${a}`;let c=r.trim().split(`
|
|
107
|
+
`).find(p=>p.trim());return Br(c??"failed",120)}switch(e){case"read":{let a=o.truncation,c=Zs(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}=MF(a);return`+${c} / -${p}`}case"write":{let a=Zs(r);return a>0?`written (${a} lines)`:"written"}case"bash":case"powershell":{let a=mS(s);if(a===void 0)return r.trim()?Br(uS(r),120):"done";let c=CF(s,r);return a===0?`exit 0${c}`:`exit ${a}`}case"grep":{let a=Zs(r);return a===0?"no matches":`${a} match${a===1?"":"es"}`}case"web_search":{let a=typeof o.count=="number"?o.count:Zs(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"?Br(o.error,120):a===void 0?Br(uS(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"?`, ${fr(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?Br(a,120):"done"}}}function cS(e,t){let n=Qs(t);if(e==="edit"&&typeof n.diff=="string")return n.diff.split(`
|
|
109
|
+
`).filter(r=>r.length>0).slice(0,12);if(e==="bash"||e==="powershell"){let r=Hl(t);return(typeof r.output=="string"?r.output:zl(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 pS(e,t){let n=Qs(t);if(e==="edit"&&typeof n.diff=="string")return n.diff.split(`
|
|
111
|
+
`).filter(c=>c.length>0).slice(0,cu);let r=Hl(t),s=(typeof r.output=="string"?r.output:zl(t).replace(/\n*Command exited with code \d+\s*$/,"")).trimEnd().split(`
|
|
112
|
+
`),a=s.slice(0,cu);return s.length>cu&&a.push(`\u2026 ${s.length-cu} more line(s)`),a}var aS,Gl,Wl,Kl,cu,Vl=m(()=>{Ys();aS="\u25CF",Gl="\u2514",Wl="\u22EF",Kl=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"];cu=400});import{Markdown as LF,wrapTextWithAnsi as jF}from"@earendil-works/pi-tui";function lS(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 FF(e){return e.content.filter(t=>t.type==="toolCall").map(t=>({name:t.name,arguments:t.arguments}))}function du(e){let t=[];for(let n of e)if(n.role==="user"){let r=lS(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=lS(n.content).trim(),o=FF(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
|
+
|
|
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:Fo(s.name,s.arguments)})})}else n.role==="toolResult"&&t.push({id:`r-${n.toolCallId}`,kind:"result",title:n.toolName,body:pu(n.toolName,{content:n.content},n.isError)});return t}function dS(e,t,n){return jF(e,Math.max(8,t)).map(r=>ee(r,n))}function DF(e){let t=e.body||" ",n=ei.get(e.id);if(n)return n.text!==t&&(n.component.setText(t),n.text=t),n.component;let r=new LF(t,0,0,xE);return ei.set(e.id,{text:t,component:r}),r}var ei,Jl,lu,fS=m(()=>{Dl();Hs();Vl();ei=new Map;Jl=class{constructor(t){this.item=t}item;invalidate(){}shade(t){let n=Date.now()-(this.item.born??0);return Xs(D.dim,t,zE(n,jl))}render(t){let n=this.item.body;if(this.item.kind==="user")return["",...dS(`> ${n}`,t,this.shade(D.user))];if(this.item.kind==="tool")return[ee(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?[ee(` ${Gl} ${n}`,o?D.bad:D.mute)]:[]];let s=[];this.item.call&&s.push(ee(this.item.call,this.shade(D.tool)));let a=` ${Gl} ${n}`;if(s.push(ee(a,o?D.bad:this.shade(D.mute))),this.item.expanded===!0&&(this.item.full?.length??0)>0){let I=ee(` ${this.item.full.length} line(s) \xB7 ctrl+e to collapse`,D.dim);s.push(ee(` ${Wl}`,D.dim));for(let $ of this.item.full){let R=$.startsWith("+")?D.tool:$.startsWith("-")?D.bad:D.dim;s.push(ee(` ${$}`,R))}return s.push(I),s}let p=this.item.detail??[],f=Fl(Date.now()-(this.item.born??0),p.length);for(let I of p.slice(0,f)){let $=I.startsWith("+")?D.tool:I.startsWith("-")?D.bad:D.dim;s.push(ee(` ${I}`,this.shade($)))}return(this.item.full?.length??0)>0&&s.push(ee(` ${Wl} ${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["",...dS(n,t,this.shade(o))]}return["",...DF(this.item).render(Math.max(8,t-2))]}},lu=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 HE(r,jl)?!0:(n.detail?.length??0)>Fl(r,n.detail?.length??0)})}render(t){if(ei.size>this.items.length){let o=new Set(this.items.map(s=>s.id));for(let s of ei.keys())o.has(s)||ei.delete(s)}let n=[];for(let o of this.items)o.born??=Date.now(),n.push(...new Jl(o).render(t));this.status&&n.push(ee(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}${hS}`}function _F(e){return e>=85?NF:e>=70?yS:xS}function bS(e,t,n,r){let o=lt(`[${e}]`,Yl),s=lt(`${qF} ${t}`,Dn),a=lt(n,yS),c=r?` ${lt("git:(",gS)}${lt(r.replace(/^git:\(/,"").replace(/\)$/,""),Yl)}${lt(")",gS)}`:"";return`${o}${lt(" \u2502 ",Dn)}${s}${lt(" \u2502 ",Dn)}${a}${c}`}function IS(e,t,n){if(!t)return e;let r=n===void 0?t:`${t} ${lt(IE(n),Dn)}`;return`${lt(r,Yl)} ${lt("\u2502",Dn)} ${e}`}function $S(e,t){let n=Number.isFinite(e)?Math.min(100,Math.max(0,e)):0,r=Math.round(n/10),o=_F(n),s=`${o}${"\u2588".repeat(r)}${Dn}${"\u2591".repeat(10-r)}${hS}`,a=lt(`${Math.round(n)}%`,o),c=t?`${lt(" \u2502 ",Dn)}${t}`:"";return`${lt("Context",Dn)} ${s} ${a}${c}`}function wS(e,t,n){let r=n===null?"":lt(` ${n}ms`,Dn);return`${lt("Cubence",Dn)} ${lt(t?`${t} ${e}`:e,xS)}${r}`}var hS,Dn,NF,xS,yS,gS,Yl,qF,Xl=m(()=>{Ys();hS="\x1B[0m",Dn="\x1B[2m",NF="\x1B[31m",xS="\x1B[32m",yS="\x1B[33m",gS="\x1B[35m",Yl="\x1B[36m";qF="\u2726"});import{mkdirSync as UF,readFileSync as TS}from"node:fs";import{homedir as KF}from"node:os";import{dirname as GF,join as WF}from"node:path";function kS(e){return e/1e6}function zF(){try{let e=JSON.parse(TS(WF(KF(),".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 HF(){try{let e=JSON.parse(TS(Zl,"utf8"));return!e.data||typeof e.cachedAt!="number"?void 0:{data:e.data,cachedAt:e.cachedAt}}catch{return}}function ti(e){let t=`$${e.balanceDollar.toFixed(2)}`,n=e.hasSubscription?`5h $${e.fiveHourUsedDollar.toFixed(2)}/$${e.fiveHourLimitDollar.toFixed(2)} bal`:"";return wS(t,n,e.latencyMs)}async function vS(){let e=HF();if(e&&Date.now()-e.cachedAt<BF)return ti(e.data);let t=zF();if(!t)return e?ti(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?ti(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:kS(o.subscription_window?.five_hour?.used??0),fiveHourLimitDollar:kS(s),latencyMs:Date.now()-n};return UF(GF(Zl),{recursive:!0}),et(Zl,JSON.stringify({data:a,cachedAt:Date.now()})),ti(a)}catch{return e?ti(e.data):void 0}}var Zl,BF,ES=m(()=>{_n();Xl();Hn();Zl=ju,BF=18e4});function SS(){return{}}function PS(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 VF(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 AS(e,t,n=Date.now()){return e.prompt?`? ${e.prompt}`:e.note?`* ${e.note}`:e.run?`${t} ${e.run.label} \xB7 ${VF(n-e.run.since)}`:e.tally?e.tally:""}var RS=m(()=>{});import{spawn as JF}from"node:child_process";function YF(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 OS(e,t=process.platform){let n=YF(t);return n?new Promise(r=>{try{let o=JF(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 MS=m(()=>{});function XF(e){return[Lu,hr(e)]}function CS(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 LS(e){if(e.length===0){let[t,n]=XF(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"),
|
|
118
|
+
`)}var jS=m(()=>{_n()});import{mkdirSync as ZF}from"node:fs";import{join as QF}from"node:path";import{matchesKey as fu}from"@earendil-works/pi-tui";function DS(){return{selectedPhase:0,filter:"all",paused:!1,expanded:!1,follow:!0}}function NS(e){if(fu(e,"up"))return"up";if(fu(e,"down"))return"down";if(fu(e,"enter"))return"enter";if(fu(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 FS(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 eD(e){let t=Ql.indexOf(e);return Ql[(t+1)%Ql.length]}function _S(e,t,n){switch(t){case"up":return FS(e,n,-1);case"down":return FS(e,n,1);case"enter":return{...e,expanded:!e.expanded};case"filter":return{...e,filter:eD(e.filter)};case"pause":return{...e,paused:!e.paused};default:return e}}function qS(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 US(e){return e==="all"?"":` \xB7 ${e}`}function GS(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 tD(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 WS(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=tD(e.name);if(!n)return{ok:!1,reason:`"${e.name}" is not a usable filename, so the script was not written`};let r=QF(t,`${n}.js`);try{ZF(t,{recursive:!0}),et(r,e.code)}catch(o){return{ok:!1,reason:o instanceof Error?o.message:String(o)}}return{ok:!0,path:r}}var Ql,KS,BS=m(()=>{Hn();Ql=["all","running","failed","done"];KS="ctrl+f"});function zS(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 HS=m(()=>{});var aP={};Dt(aP,{Dock:()=>yu,Hud:()=>hu,PinnedBlock:()=>xu,approvalDetail:()=>sP,orderModelsForDefault:()=>rP,pickerPanel:()=>oP,runWorkbench:()=>ED,workflowPanel:()=>iP,workflowPanelFromRun:()=>ri,workflowRunOf:()=>bu});import{execFile as nD}from"node:child_process";import{promisify as rD}from"node:util";import{existsSync as oD,mkdirSync as sD,readFileSync as iD}from"node:fs";import{basename as aD,join as VS,resolve as mD}from"node:path";import{copyToClipboard as uD,SessionManager as cD}from"@earendil-works/pi-coding-agent";import{CombinedAutocompleteProvider as JS,Container as pD,Editor as lD,matchesKey as Lt,ProcessTerminal as dD,ScrollView as fD,KeybindingsManager as QS,setKeybindings as eP,TUI_KEYBINDINGS as tP,SelectList as gD,TuiAltScreen as hD,truncateToWidth as ni,VStack as xD,visibleWidth as gu,wrapTextWithAnsi as yD}from"@earendil-works/pi-tui";import{TreeSelectorComponent as bD,initTheme as ID}from"@earendil-works/pi-coding-agent";import{getKeybindings as YS}from"@earendil-works/pi-tui";function $D(e){if(typeof e!="object"||e===null)return;let t=e[nP];return typeof t=="function"?t.call(e):void 0}async function ZS(e){try{let{stdout:t}=await nd("git",["-C",e,"rev-parse","--abbrev-ref","HEAD"],{encoding:"utf8"}),n=t.trim();if(!n||n==="HEAD")return"";let{stdout:r}=await nd("git",["-C",e,"status","--porcelain"],{encoding:"utf8"});return`git:(${n}${r.trim()?"*":""})`}catch{return null}}function rP(e){let t=n=>{if(kD.test(n))return 100;let r=wD.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 oP(e,t,n,r=!1,o=[]){let s=Math.max(24,n),a=s-4,c=(J,ae)=>{let xe=gu(J)>a?ni(J,a,"\u2026"):J,Te=`${xe}${" ".repeat(Math.max(0,a-gu(xe)))}`;return`\u2502 ${ae?ae(Te):Te} \u2502`},p="\u2500".repeat(s-2),f=[c(` ${t}`),...e.render(a).map(J=>c(J))],I=o.flatMap(J=>J===""?[""]:yD(J,a)),$=I.length>0?[c(""),...I.map(J=>c(J,ae=>ee(ae,D.mute)))]:[];if(!r)return["",`\u250C${p}\u2510`,...f,...$,`\u2514${p}\u2518`];let R=VE(D.line,D.warn,Date.now(),1400),C=ee("\u2502",R),P=(J,ae)=>ee(`${J}${p}${ae}`,R),N=[...f,...$].map(J=>`${C}${J.slice(1,-1)}${C}`);return["",P("\u250C","\u2510"),...N,P("\u2514","\u2518")]}function sP(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 Do(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 td(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"],["usage","show the account's quota and what it has spent"],["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 bu(e,t){if(e!=="workflow")return;let n=Qs(t);if(!(typeof n.name!="string"||!Array.isArray(n.steps)))return n}function iP(e,t){let n=bu(e,t);return n?ri(n):void 0}function ri(e,t,n=!1){return r=>SE(e,[],r,t?.selectedPhase,t?TD(e,t,n):void 0)}function TD(e,t,n){return{filter:r=>qS(r,t.filter),footerText:GS(t,e.endedAt===void 0,n),filterLabel:US(t.filter),drill:t.expanded}}function vD(){let e=new QS(tP,{"tui.altScreen.pageUp":[],"tui.altScreen.pageDown":[],"tui.altScreen.halfPageUp":[],"tui.altScreen.halfPageDown":[],"tui.altScreen.top":[],"tui.altScreen.bottom":[]});eP(e)}async function ED(e){let t=new dD,n=new hD(t,!0,void 0,{mouse:!0}),r=new lu,o=new hu(e.cwd,e.modelLabel),s=l=>{let g=Date.now();(async()=>{try{let y=fn(),x=await nS(y,v.getSessionStats().sessionId,l);x&&g>=Gt&&(No=x,Gt=g)}catch{}})()},a=(l=!1)=>{!l&&!o.live||ZS(e.cwd).then(g=>{g!==null&&(o.git=g,_())})},c=new lD(n,XS,{paddingX:1}),p=new Map,f=(l,g)=>{g===void 0?p.delete(l):typeof g=="function"?p.set(l,g):p.set(l,()=>g)},I=()=>Math.max(20,t.columns),$,R=0,C=DS(),P,N=null,J=!1,ae,xe=!1,Te,ze=()=>{!P||!J||f("workflow",l=>ri(P,C,xe)(l))},Ut=()=>{P&&(ae=P.name),J=!1,xe=!1,f("workflow",void 0)};AE({onStop:l=>{N=l},isPaused:()=>C.paused});let ye=l=>{if(ae===l.name)return;$=l;let g=l.endedAt??Date.now();R=Math.max(R,g+ou),P=l,J=!0,f("workflow",y=>ri(l,C,xe)(y))},re=new yu(c,o),v=e.session,He=!1,Kt,fn=()=>Kt??=eS(e.cwd),No,tn="",Gt=0,Ue,jt=()=>{let l=new Set(["session_info","usage","label","context_edit","custom","model_change","thinking_level_change"]),g=[],y=x=>{for(let k of x)l.has(k.entry.type)||g.push(k.entry.id),y(k.children)};return y(v.sessionManager.getTree()),g},_o=!1,uP=()=>{if(_o)return;_o=!0;let l=YS().getResolvedBindings();eP(new QS(tP,{...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"]}))},rd=!1,cP=()=>{rd||(rd=!0,ID())},od=()=>{let l=v.sessionManager.getTree();if(l.length===0){E("rewind","nothing to rewind to yet");return}fn().disabled&&E("rewind","conversation rewind only \u2014 this directory is not a git repository"),cP(),uP();let g=Math.max(8,Math.floor(t.rows*.6)),y=new bD(l,v.sessionManager.getLeafId(),g*2,x=>{Iu(),pP(x)},()=>Iu());if(!y.getTreeList().getSelectedNode()){E("rewind","nothing to rewind to yet");return}Ue=y,Ue.focused=!0,f("rewind",x=>Ue?.render(x)??[]),_()},Iu=()=>{Ue=void 0,f("rewind",void 0),_()},pP=async l=>{let g=fn(),x=v.getUserMessagesForForking().findIndex(b=>b.entryId===l),k=x>=0?Ul(g,v.getSessionStats().sessionId)[x]:void 0,U=k?(await oS(g,k)).length:0;if(U===0){await sd(l,void 0,"conversation");return}Ft(`Rewind to this point? ${U} file(s) differ`,[{value:"both",label:"conversation and code",description:`drop the messages after this point and restore ${U} 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 ${U} file(s), keep the conversation`}],b=>{sd(l,k,b)})},sd=async(l,g,y)=>{let x=[];if((y==="both"||y==="conversation")&&!v.isStreaming)try{let k=await v.navigateTree(l);if(k.cancelled){E("rewind","conversation rewind cancelled");return}x.push("conversation rewound"),r.items=du(v.state.messages),k.editorText&&(c.setText(k.editorText),x.push("prompt restored to the editor"))}catch(k){gn(`conversation rewind failed: ${k instanceof Error?k.message:String(k)}`);return}if((y==="both"||y==="code")&&g){let k=await rS(fn(),g);if(!k.ok){gn(`code rewind failed: ${k.output}`);return}x.push(k.output),k.removed.length>0&&x.push(`removed ${k.removed.length} file(s)`),a()}E("rewind",x.join(`
|
|
120
|
+
`)||"nothing to do"),_()};a(!0),s("session start"),e.note&&r.items.push({id:"note",kind:"note",title:"note",body:e.note}),r.items.push(...du(v.state.messages)),o.percent=Do(v),o.abandonAnimations(),o.thinking=v.thinkingLevel,c.setAutocompleteProvider(new JS(td(v),e.cwd)),vS().then(l=>{l&&(o.cubence=l,n.requestRender())});let Nn=null,id="",ad=!1,md=[],qo,$u=()=>{},_=()=>{$u(),n.requestRender()},me=(l,g)=>{o.activity=PS(o.activity,l,g)},oi=new Map,wu=new Set,lP=()=>[...oi].map(([l,g])=>`${wu.has(l)?"!":"\u2713"} ${l} \xD7${g}`).join(" | "),dP=()=>{let l=lP();me("tally",l||void 0)},Ft=(l,g,y,x,k=!1,U=[])=>{let b=new gD(g,8,XS.selectList);b.onSelect=T=>{Nn=null,qo=void 0,y(T.value)},b.onCancel=()=>{Nn=null,qo=void 0,x?.(),_()},qo=()=>b.onCancel?.(),id=l,ad=k,md=U,Nn=b,_()},E=(l,g)=>{r.items.push({id:`cmd-${Date.now()}-${r.items.length}`,kind:"note",title:l,body:g}),me("tally",void 0),_()},gn=l=>{r.items.push({id:`err-${Date.now()}-${r.items.length}`,kind:"error",title:"failed",body:l}),me("tally",void 0),_()};nc((l,g)=>{let{promise:y,resolve:x}=Promise.withResolvers();return Ft(l,[{value:"allow",label:"allow"},{value:"deny",label:"deny"}],k=>x(k==="allow"),()=>x(!1),!0,sP(l,g)),y});let ku=new Map,ud=l=>{let g=zS({select:(y,x)=>{let{promise:k,resolve:U}=Promise.withResolvers();return Ft(y,x.map(b=>({value:b,label:b})),U,()=>U(void 0)),k},confirm:(y,x)=>{let{promise:k,resolve:U}=Promise.withResolvers();return Ft(`${y} \u2014 ${x}`,[{value:"yes",label:"yes"},{value:"no",label:"no"}],b=>U(b==="yes"),()=>U(!1)),k},input:y=>{let{promise:x,resolve:k}=Promise.withResolvers();return me("prompt",y),_(),dn=U=>{dn=void 0,me("prompt",void 0),k(U),_()},x},notify:(y,x)=>{x==="error"?gn(y):E("mcp",y)},setStatus:(y,x)=>{x===void 0?ku.delete(y):ku.set(y,x),me("note",[...ku.values()].join(" | ")||void 0),_()},setWidget:(y,x)=>{f(y,x),_()}});l.bindExtensions({uiContext:g,mode:"print",onError:y=>gn(`${y.event}: ${y.error}`)}).catch(y=>gn(y instanceof Error?y.message:String(y)))};ud(v);let zr=new pD,fP={invalidate:()=>r.invalidate(),render:l=>{let g=zr.render(Math.max(20,l)).length;return r.viewportHeight=Math.max(1,Math.max(8,t.rows)-g),r.render(l)},handleMouse:l=>{if(xd(l))return Au(),{handled:!0};let g=l.type==="wheel"?l.wheelDelta??0:0;if(g!==0)return r.scrollOffset=Math.max(0,r.scrollOffset-g*3),_(),{handled:!0}}},gP=new fD(fP,{follow:"none",overscroll:"contain"}),si=new xD([{component:gP,grow:1,shrink:1},{component:zr,grow:0,shrink:0,basis:"auto"}]),cd="",hP=()=>`${Nn?"picker":"dock"}|${[...p.keys()].join(",")}`;$u=()=>{let l=hP();if(l===cd)return;cd=l,zr.clear();for(let y of p.values())zr.addChild(new xu(y));let g=Nn;if(g){let y=id,x=ad,k=md;zr.addChild({render:U=>oP(g,y,U,x,k),invalidate:()=>{}})}else zr.addChild(re);si.invalidate()},$u();let pd={focused:!1,invalidate(){r.invalidate(),re.invalidate(),Nn?.invalidate(),si.invalidate()},[nP]:()=>$D(si),render:l=>si.render(l),handleMouse(l){if(xd(l))return Au(),{handled:!0}},handleInput(l){c.handleInput(l)}};n.setLayoutRoot(pd),n.setFocus(pd);let bt=0,zn="",Tu=!1,gr=!1,vu,Hr="",ld=0,Uo=!1,ii=Date.now(),ai=!1,mi=new Map,dd=l=>{if(l.type==="agent_start"||l.type==="turn_start")l.type==="agent_start"&&Fd(),o.live||o.beginRun(),zn="",gr=!1,Uo=!1,ii=Date.now(),Hr="";else if(l.type==="message_update"&&l.assistantMessageEvent.type==="thinking_delta"){gr=!0,Hr===""&&(ld=Date.now()),Hr+=l.assistantMessageEvent.delta;let g=`think-${bt}`,y=r.items.find(k=>k.id===g),x=Hr.split(`
|
|
121
121
|
`).slice(-6).join(`
|
|
122
|
-
`);
|
|
123
|
-
this freed almost nothing \u2014 the window may be too small for this work`:""}`:`${
|
|
124
|
-
`)}catch{return`could not write ${
|
|
125
|
-
`)),
|
|
126
|
-
`)),
|
|
127
|
-
`)
|
|
128
|
-
`)
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
`));return}if(
|
|
138
|
-
|
|
139
|
-
|
|
122
|
+
`);y?y.body=x:r.items.push({id:g,kind:"note",title:"thinking",body:x})}else if(l.type==="message_update"&&l.assistantMessageEvent.type==="thinking_end"){let g=`think-${bt}`,y=r.items.find(x=>x.id===g);if(y){let x=Math.max(1,Math.round((Date.now()-ld)/1e3));y.title="thought",y.body=`${x}s \xB7 ${Hr.length} chars of reasoning`}Hr=""}else if(l.type==="message_update"&&l.assistantMessageEvent.type==="text_delta"){gr=!0,zn+=l.assistantMessageEvent.delta;let g=`live-${bt}`,y=r.items.find(x=>x.id===g);y?y.body=zn:r.items.push({id:g,kind:"assistant",title:"HowToFix",body:zn})}else if(l.type==="tool_execution_start"){mi.set(l.toolCallId,l.args),gr=!1,Uo=!1,ii=Date.now();let g=`tool-${l.toolCallId}`,y=Fo(l.toolName,l.args),x=r.items.find(k=>k.id===g);if(x?(x.kind="tool",x.title=l.toolName,x.body=y,x.live=!0):r.items.push({id:g,kind:"tool",title:l.toolName,body:y,live:!0}),vu=l.toolName,l.toolName==="task"){let k=Qt.filter(U=>U.status==="queued"||U.status==="running");me("note",k.map(U=>`${U.agent} ${U.status}`).join(" | ")||"agent running")}}else if(l.type==="tool_execution_update"){let g=iP(l.toolName,l.partialResult);if(g){let y=`tool-${l.toolCallId}`,x=r.items.find(U=>U.id===y);x?x.panel=g:r.items.push({id:y,kind:"tool",title:l.toolName,body:Fo(l.toolName,mi.get(l.toolCallId)),panel:g,live:!0});let k=bu(l.toolName,l.partialResult);k&&ae!==k.name&&ye(k),_()}}else if(l.type==="tool_execution_end"){o.percent=Do(v);let g=r.items.find(A=>A.id===`tool-${l.toolCallId}`);g&&(g.live=!1,g.body=Fo(l.toolName,mi.get(l.toolCallId))),mi.delete(l.toolCallId),vu=void 0,gr=!0,Uo=!1,oi.set(l.toolName,(oi.get(l.toolName)??0)+1),l.isError&&wu.add(l.toolName),dP();let y=cS(l.toolName,l.result),x=pS(l.toolName,l.result),k=bu(l.toolName,l.result),U=k?ri(k):void 0;k&&ae!==k.name&&ye(k);let b=r.items.find(A=>A.id===`tool-${l.toolCallId}`),T=pu(l.toolName,l.result,l.isError);b?(b.kind="result",b.call=b.body,b.body=T,b.live=!1,y.length>0&&(b.detail=y),x.length>0&&(b.full=x),U&&(b.panel=U)):r.items.push({id:`tool-${l.toolCallId}`,kind:"result",title:l.toolName,body:T,...y.length>0?{detail:y}:{},...x.length>0?{full:x}:{},...U?{panel:U}:{}}),(l.toolName==="bash"||l.toolName==="powershell"||l.toolName==="edit"||l.toolName==="write")&&a()}else if(l.type==="compaction_start"){gr=!0;let g=l.reason==="manual"?"on request":"context is nearly full",y=r.items.find(U=>U.id===`compact-${bt}`),x="compacting context",k=`${g} \xB7 summarizing the older turns`;y?(y.title=x,y.body=k):r.items.push({id:`compact-${bt}`,kind:"note",title:x,body:k,live:!0}),me("note","compacting context")}else if(l.type==="compaction_end"){let g=r.items.find(U=>U.id===`compact-${bt}`),y=l.result,x="compacted",k;if(l.aborted)k="cancelled";else if(l.errorMessage)k=`failed: ${l.errorMessage}`;else if(y){let U=Math.round(y.tokensBefore/1e3),b=y.estimatedTokensAfter!==void 0?Math.round(y.estimatedTokensAfter/1e3):void 0,T=y.estimatedTokensAfter!==void 0?y.tokensBefore-y.estimatedTokensAfter:void 0,A=T!==void 0&&T<2e3;k=b!==void 0?`${U}k \u2192 ${b}k tokens \xB7 older turns summarized${A?`
|
|
123
|
+
this freed almost nothing \u2014 the window may be too small for this work`:""}`:`${U}k tokens \xB7 older turns summarized`}else k="nothing to compact";g?(g.title=x,g.body=k,g.live=!1):r.items.push({id:`compact-${bt}`,kind:"note",title:x,body:k}),o.percent=Do(v),me("note",void 0)}else if(l.type==="message_end"&&l.message.role==="assistant"){let g=r.items.find(y=>y.id===`live-${bt}`);g&&(g.id=`done-${bt}`),bt+=1,zn="",o.percent=Do(v)}else if(l.type==="agent_settled"){if(o.live=!1,s(tn),tn="",me("run",void 0),Tu){let g=r.items.find(y=>y.id===`live-${bt}`);g?(g.id=`stopped-${bt}`,g.title="stopped",g.body=zn.trim()||"(no output)",g.live=!1):r.items.push({id:`stopped-${bt}`,kind:"note",title:"stopped",body:"run cancelled"}),bt+=1,zn="",E("stopped","run cancelled by Esc"),Tu=!1}o.percent=Do(v),ZS(e.cwd).then(g=>{g!==null&&(o.git=g,_())}),c.disableSubmit=!1}else l.type==="thinking_level_changed"?o.thinking=l.level:l.type==="auto_retry_start"&&me("note",`retry ${l.attempt}/${l.maxAttempts}`);_()},Eu=v.subscribe(dd),fd=setInterval(()=>{let l=$!==void 0&&Date.now()<R;if((ai||v.isStreaming||o.settling()||r.entering()||Nn||l)&&_(),(ai||v.isStreaming)&&!gr&&!Uo&&Date.now()-ii>PD){Uo=!0;let g=vu,y=Math.round((Date.now()-ii)/1e3);me("note",g?`${g} has been running for ${y}s \u2014 it may be blocked; esc cancels`:`no answer yet after ${y}s \u2014 the provider may be stalled; ctrl+c cancels`),_()}},SD);fd.unref?.();let gd=async l=>{qo?.(),qo=void 0,Eu(),Kt&&sS(Kt,v.getSessionStats().sessionId),No=void 0,Gt=0,v.dispose(),v=l.session,bt=0,zn="",r.items=[],r.scrollOffset=0,l.note&&r.items.push({id:"note",kind:"note",title:"note",body:l.note}),r.items.push(...du(v.state.messages)),o.model=l.modelLabel.split("/").at(-1)||"no-model",o.thinking=v.thinkingLevel,o.percent=Do(v),o.abandonAnimations(),me("tally",void 0),me("run",void 0),c.setAutocompleteProvider(new JS(td(v),e.cwd)),c.disableSubmit=!1,ud(v),Eu=v.subscribe(dd),_()},ui=()=>{He||(He=!0,clearInterval(fd),Eu(),v.dispose(),n.stop(),process.stdout.write("\x1B[0m"),process.exit(0))},hd=l=>{r.items.push({id:`you-${Date.now()}`,kind:"user",title:"you",body:l}),me("tally",void 0),oi.clear(),wu.clear(),me("run","thinking"),o.beginRun(),_(),c.disableSubmit=!1;let g=zu(l,e.cwd);tn=l,ai=!0;let y=v.isStreaming?v.prompt(g,{streamingBehavior:"steer"}):v.prompt(g);ai=!1,y.catch(x=>gn(x instanceof Error?x.message:String(x)))},Su=l=>{let g=l.trim();if(g){if(dn){let y=dn;dn=void 0,c.setText(""),y(g);return}if(c.setText(""),c.addToHistory(g),g.startsWith("!")){let y=g.slice(1).trim();if(!y)return;r.items.push({id:`sh-${Date.now()}`,kind:"tool",title:"$",body:y}),me("run","shell"),_(),v.executeBash(y,x=>{me("run",`shell \xB7 ${x.length} bytes`),_()}).then(x=>{let k=x.output.trim();r.items.push({id:`sh-out-${Date.now()}`,kind:x.exitCode===0?"result":"error",title:`exit ${x.exitCode??"?"}`,body:k||"(no output)"}),me("tally",void 0),_()}).catch(x=>gn(x instanceof Error?x.message:String(x)));return}if(g.startsWith("/")){xP(g);return}hd(g)}};c.onSubmit=Su;let Pu=0,Au=()=>{DE().then(l=>{l.ok?c.insertTextAtCursor(l.text):E("paste",l.reason),_()}).catch(l=>{E("paste",`could not read the clipboard: ${l instanceof Error?l.message:String(l)}`),_()})},xd=l=>NE()&&l.type==="press"&&l.button==="right";n.addInputListener(l=>{if(Ue){if(Lt(l,"escape"))return Iu(),{consume:!0};let y=YS(),x=y.matches(l,"tui.select.up"),k=y.matches(l,"tui.select.down");if(x||k){let b=Ue.getTreeList().getSelectedNode()?.entry.id,T=jt(),A=b===void 0?-1:T.indexOf(b);if(x?A===0:A===T.length-1)return _(),{consume:!0}}return Ue.handleInput(l),_(),{consume:!0}}if(J&&P&&Lt(l,"escape"))return xe?(xe=!1,E("workflow","panel keys off \u2014 the editor has the keyboard")):C.expanded?(C.expanded=!1,E("workflow","collapsed the drill-in")):(Ut(),E("workflow","panel unpinned; the run is still in the transcript")),ze(),_(),{consume:!0};if(Nn)return Nn.handleInput(l),_(),{consume:!0};if(Lt(l,"escape")){if(v.isStreaming)return Tu=!0,v.abort(),me("note","stopping"),_(),{consume:!0};let y=Date.now();if(c.getText().length===0&&y-Pu<600)return Pu=0,od(),{consume:!0};Pu=y;return}if(Lt(l,"ctrl+c"))return v.isStreaming?(v.abort(),me("note","stopping"),_()):c.getText().length>0?(c.setText(""),me("note","draft cleared \u2014 ctrl+c again quits"),_()):ui(),{consume:!0};if(Lt(l,"ctrl+d")&&c.getText().length===0)return ui(),{consume:!0};let g=Math.max(1,r.viewportHeight-1);if(Lt(l,"pageUp"))return r.scrollOffset+=g,_(),{consume:!0};if(Lt(l,"pageDown"))return r.scrollOffset=Math.max(0,r.scrollOffset-g),_(),{consume:!0};if(Lt(l,"home"))return r.scrollOffset=Number.MAX_SAFE_INTEGER,_(),{consume:!0};if(Lt(l,"end"))return r.scrollOffset=0,_(),{consume:!0};if(Lt(l,"ctrl+v"))return Au(),{consume:!0};if(Lt(l,"ctrl+l"))return r.scrollOffset=0,n.scrollToBottom(),_(),{consume:!0};if(Lt(l,"ctrl+e")){let y=[...r.items].reverse().find(x=>(x.full?.length??0)>0);return y?(y.expanded=y.expanded!==!0,_(),{consume:!0}):(E("expand","nothing to expand in this transcript yet"),{consume:!0})}if(Lt(l,"ctrl+o")&&!v.isStreaming)return r.items=[{id:"cleared",kind:"note",title:"bench",body:"screen cleared. session history is still stored."}],_(),{consume:!0};if(Lt(l,KS)&&J&&P)return xe=!xe,E("workflow",xe?"panel keys active \u2014 Esc gives the keyboard back":"panel keys off \u2014 the editor has the keyboard"),ze(),_(),{consume:!0};if(xe&&J&&P){let y=NS(l);if(y){let x=jo(P,Date.now());if(y==="stop")return N?(N(),N=null,E("workflow","stopping the run \u2014 in-flight agents resolve as null")):E("workflow","the run has already finished"),{consume:!0};if(y==="save"){let k=WS(Te,Fu);return E("workflow",k.ok?`saved ${k.path}`:k.reason),_(),{consume:!0}}return Object.assign(C,_S(C,y,x)),ze(),_(),{consume:!0}}}});let Ru=l=>{let g=y=>{me("prompt",`API key for ${y}. Paste it, then press enter.`),_();let x=dn;dn=k=>{dn=x;let U=k.trim();if(!U){me("prompt",void 0),_();return}v.modelRuntime.setRuntimeApiKey(y,U).then(()=>E("login",`saved API key for ${y}`),b=>E("login",b instanceof Error?b.message:String(b)))}};if(l){g(l);return}v.modelRuntime.getAvailable().then(y=>{let x=[...new Set(y.map(k=>k.provider))].sort();if(x.length===0){E("login","no providers are configured; pass one explicitly, e.g. /login nrimo");return}Ft("Login",x.map(k=>({value:k,label:k})),g)},y=>E("login",y instanceof Error?y.message:String(y)))},yd=async(l,g)=>{let y=VS(Ve,"models.json"),x,k=!1;try{x=JSON.parse(iD(y,"utf8"))}catch(nn){if(!(nn instanceof Error&&"code"in nn&&nn.code==="ENOENT"))return`could not read ${y}; the models were not added`;x={providers:{}},k=!0}(!x.providers||typeof x.providers!="object")&&(x.providers={});let U=x.providers[l];U||(U=_u(),x.providers[l]=U,k=!0);let b=Array.isArray(U.models)?U.models:[],T=Gu(b,g),A=di(Ku(b,g));U.models=A.models;try{sD(Ve,{recursive:!0}),et(y,`${JSON.stringify(x,null,2)}
|
|
124
|
+
`)}catch{return`could not write ${y}; the models were not added`}let K=!1;try{await v.modelRuntime.refresh(),K=!0}catch{K=!1}let ve=A.changed>0?`, repaired ${A.changed}`:"",Qe=K?"":"; restart the CLI to see them all",At=k?` (created ${y})`:"";return T===0?`all ${g.length} models were already configured${ve}${At}${Qe}`:`added ${T} model(s) to "${l}"${ve}${At}${Qe}`},Ou=l=>{(async()=>{if(!l){let T=await OS(pi);E("connect",["connect your howtofix.id account:",` 1. ${T?"the token page is opening in your browser":`open ${pi}`}`," 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
|
+
`)),_();return}if(!Uu(l)){E("connect","that does not look like a howtofix token; the Console issues tokens that start with sk-");return}me("note",`connecting to howtofix.id (${li(l)})`),_();let g=await fi(l);if(!g.ok){me("note",void 0),E("connect",g.message),_();return}await v.modelRuntime.setRuntimeApiKey("howtofix",l);let y=await yd("howtofix",g.models),x=!!v.model&&v.model?.provider!==void 0&&o.model!=="unknown",k,U;if(!x)try{let T=(await v.modelRuntime.getAvailable()).filter(ve=>xr(ve.provider)),K=rP(T.map(ve=>ve.id)).slice(0,4);for(let ve of K){if(!(await Wu(ve,l)).ok)continue;let At=T.find(nn=>nn.id===ve);if(At){await v.setModel(At),o.model=At.id,k=`${At.provider}/${At.id}`;break}}k||(U=K.length>0?`none of the first ${K.length} models answered (${K[0]} did not)`:"the account lists no chat model")}catch(T){U=T instanceof Error?T.message:String(T)}me("note",void 0);let b=await Wo(l);E("connect",[`connected ${li(l)} \u2014 ${g.message}`,y,Mu("howtofix",b),k?`using ${k} (change it with /model)`:`pick a model with /model, then send a prompt${U?` (auto-select failed: ${U})`:""}`].join(`
|
|
126
|
+
`)),_()})().catch(g=>{me("note",void 0),E("connect",g instanceof Error?g.message:String(g)),_()})},Mu=(l,g)=>{let y=[`${l} account`];if(!g.ok)return[...y,` ${g.message}`].join(`
|
|
127
|
+
`);if(g.unlimited)y.push(" quota no limit on this token");else{let x=k=>`${k.toFixed(2)} ${g.unit}`;g.limit!==void 0&&y.push(` granted ${x(g.limit)}`),g.used!==void 0&&y.push(` spent ${x(g.used)}`),g.remaining!==void 0&&y.push(` remaining ${x(g.remaining)}`)}return y.join(`
|
|
128
|
+
`)},xP=async l=>{let[g,...y]=l.slice(1).split(/\s+/),x=y.join(" ");if(g==="quit"||g==="exit"){ui();return}if(g==="help"){E("help",td(v).map(b=>`/${b.name} ${b.description??""}`).join(`
|
|
129
|
+
`));return}if(g==="init"){let b=VS(e.cwd,"AGENTS.md");if(oD(b)&&x!=="force"){E("init",`AGENTS.md already exists at ${b}. run /init force to overwrite.`);return}et(b,$d),E("init",`wrote ${b}; asking the agent to fill it in`),await v.prompt("Read AGENTS.md, then fill it in with the real build, test, and layout facts of this repo. Keep it short.");return}if(g==="login"){Ru(x);return}if(g==="connect"){if(x.trim()){Ou(x.trim());return}Ou(""),me("prompt","paste your howtofix.id token, then press enter"),_();let b=dn;dn=T=>{dn=b,me("prompt",void 0),Ou(T.trim())};return}if(g==="sync"){let b=new Set((await v.modelRuntime.getAvailable()).map(nn=>nn.provider).filter(nn=>xr(nn))),T=Yr.find(nn=>b.has(nn));if(!T){E("sync","no howtofix.id account is connected; run /connect first");return}me("note",`re-syncing ${T} from howtofix.id`),_();let K=(await v.modelRuntime.getAuth(T))?.auth?.apiKey;if(!K){me("note",void 0),E("sync",`${T} has no usable key; run /connect to sign in again`),_();return}let ve=await fi(K);if(!ve.ok){me("note",void 0),E("sync",ve.message),_();return}let Qe=await yd(T,ve.models),At=await Wo(K);me("note",void 0),E("sync",`${Qe}
|
|
130
|
+
${Mu(T,At)}`),await v.modelRuntime.refresh(),_();return}if(g==="usage"){let b=new Set((await v.modelRuntime.getAvailable()).map(Qe=>Qe.provider).filter(Qe=>xr(Qe))),T=Yr.find(Qe=>b.has(Qe));if(!T){E("usage","no howtofix.id account is connected; run /connect first");return}me("note","asking howtofix.id for the account usage"),_();let K=(await v.modelRuntime.getAuth(T))?.auth?.apiKey;if(!K){me("note",void 0),E("usage",`${T} has no usable key; run /connect to sign in again`),_();return}let ve=await Wo(K);me("note",void 0),E("usage",Mu(T,ve)),_();return}if(g==="logout"){let b=await v.modelRuntime.getAvailable(),T=[...new Set(b.map(A=>A.provider))].sort();if(T.length===0){E("logout","no providers are configured");return}Ft("Logout",T.map(A=>({value:A,label:A})),A=>{v.modelRuntime.logout(A).then(()=>E("logout",`logged out ${A}`),K=>E("logout",K instanceof Error?K.message:String(K)))});return}if(g==="providers"){let b=await v.modelRuntime.getAvailable(),T=[...new Set(b.map(A=>A.provider))].sort();T.sort((A,K)=>Number(xr(K))-Number(xr(A))),Ft("Providers",T.map(A=>({value:A,label:A})),A=>{let K=v.modelRuntime.getModels(A);if(K.length===0){Ru(A);return}Ft(A,K.map(ve=>({value:ve.id,label:ve.id})),ve=>{let Qe=K.find(At=>At.id===ve);Qe&&v.setModel(Qe).then(()=>{o.model=Qe.id,E("providers",`${A}/${Qe.id}`)},()=>Ru(A))})});return}if(g==="name"){if(!x){E("name","usage: /name <session name>");return}v.setSessionName(x),E("name",`session name: ${x}`);return}if(g==="stats"){let b=v.getSessionStats(),T=v.getContextUsage(),A=K=>Number.isFinite(K)?String(K):"\u2014";E("stats",[`session ${b.sessionId}`,b.sessionFile?`file ${b.sessionFile}`:"not persisted",`messages ${A(b.totalMessages)} (user ${A(b.userMessages)}, assistant ${A(b.assistantMessages)}, tools ${A(b.toolCalls)})`,`tokens in ${A(b.tokens.input)} out ${A(b.tokens.output)} cache ${A(b.tokens.cacheRead)}/${A(b.tokens.cacheWrite)}`,`cost $${Number.isFinite(b.cost)?b.cost.toFixed(4):"\u2014"}`,T?`context ${T.percent===null||!Number.isFinite(T.percent)?"?":`${Math.round(T.percent)}%`} of ${T.contextWindow}`:"context unknown"].join(`
|
|
131
|
+
`));return}if(g==="diff"){let b=async Qe=>{try{let{stdout:At}=await nd("git",Qe,{cwd:e.cwd,encoding:"utf8"});return At.trim()}catch{return""}},T=await b(["diff","--stat"])+`
|
|
132
|
+
|
|
133
|
+
`+await b(["diff","--","."]),[A="",K=""]=T.split(`
|
|
134
|
+
|
|
135
|
+
`,2),ve=sE(K);E("diff",[A.trim(),ve].filter(Boolean).join(`
|
|
136
|
+
|
|
137
|
+
`)||"working tree clean");return}if(g==="copy"){let b=[...v.state.messages].reverse().find(K=>K.role==="assistant"),A=(Array.isArray(b?.content)?b.content:[]).filter(K=>K.type==="text").map(K=>K.text).join("");if(!A){E("copy","nothing to copy");return}try{await uD(A),E("copy",`copied ${A.length} characters`)}catch(K){E("copy",K instanceof Error?K.message:String(K))}return}if(g==="export"){let b=r.items.filter(K=>K.body.trim().length>0);if(b.length===0){E("export","nothing to export yet \u2014 the transcript is empty");return}let T=mD(e.cwd,x||`howtofix-session-${Date.now()}.md`),A=[`# ${It} session`,"",`model ${o.model}`,""];for(let K of b)A.push(`## ${K.title||K.kind}`,"",K.body,"");try{et(T,A.join(`
|
|
138
|
+
`))}catch(K){E("export",`could not write ${T}: ${K instanceof Error?K.message:String(K)}`);return}E("export",`wrote ${T}`);return}if(g==="agents"){let[b="",...T]=x.split(/\s+/).filter(Boolean),A=T.join(" ").trim();if(b&&A){E("agents",await Zv(b,A));return}E("agents",b?wl(b):$l());return}if(g==="new"){let b=await e.reopen({noSession:!1});await gd(b),E("new","started a new session");return}if(g==="resume"){let b=await cD.list(e.cwd);if(b.length===0){E("resume","no saved sessions for this folder");return}Ft("Resume session",b.slice(0,30).map(T=>({value:T.path,label:T.name||`${T.id.slice(0,8)} ${T.firstMessage.slice(0,40)}`,description:`${T.modified.toISOString().slice(0,16)} ${T.messageCount} messages`})),T=>{e.reopen({sessionPath:T}).then(gd,A=>gn(A instanceof Error?A.message:String(A)))});return}if(g==="model"){let b=await v.modelRuntime.getAvailable(),T=x?b.find(A=>`${A.provider}/${A.id}`===x||A.id===x):void 0;if(!x){Ft("Select model",b.map(A=>({value:`${A.provider}/${A.id}`,label:A.id,description:A.provider})),A=>{let K=b.find(ve=>`${ve.provider}/${ve.id}`===A);K&&v.setModel(K).then(()=>{o.model=K.id,E("model",`model ${A}`)})});return}if(!T){E("model",`unknown model ${x}`);return}await v.setModel(T),o.model=T.id,E("model",`model ${T.provider}/${T.id}`);return}if(g==="thinking"){if(!x){Ft("Thinking level",ed.map(b=>({value:b,label:b})),b=>{v.setThinkingLevel(b),o.thinking=b,E("thinking",`thinking ${b}`)});return}if(!ed.includes(x)){E("thinking",`thinking: ${ed.join(", ")}`);return}v.setThinkingLevel(x),o.thinking=x,E("thinking",`thinking ${x}`);return}if(g==="compact"){try{await v.compact(x||void 0),E("compact","session compacted")}catch(b){E("compact",b instanceof Error?b.message:String(b))}return}if(g==="approval"){let b=T=>{tc(T),E("approval",bi[T])};if(!x){Ft("Approval mode",Xr.map(T=>({value:T,label:T,description:bi[T]})),T=>b(T));return}if(!Xr.includes(x)){E("approval",`modes: ${Xr.join(", ")}`);return}b(x);return}if(g==="tools"){let b=v.getActiveToolNames().sort();E("tools",b.length?b.join(`
|
|
139
|
+
`):"no tools enabled");return}if(g==="rewind"){od();return}if(g==="undo"){if(!await nu(e.cwd)){E("undo","not a git repository");return}let b=await rE(e.cwd);E("undo",b.ok?`undone: ${b.output}`:`undo failed: ${b.output}`),a(!0);return}if(g==="commit"){if(!nu(e.cwd)){E("commit","not a git repository");return}if(!await tE(e.cwd)){E("commit","nothing to commit");return}let b=x||`howtofix: session update ${new Date().toISOString().slice(0,16)}`,T=await nE(e.cwd,b);E("commit",T.ok?T.output:`commit failed: ${T.output}`),a(!0);return}if(g==="review"){if(!(await oE(e.cwd)).trim()){E("review","no changes to review");return}Su("Review the uncommitted changes. Report concrete issues with file evidence. Do not edit files.");return}if(g==="workflow"){if(x.trim()==="clear"){Ut(),E("workflow","cleared the pinned workflow panel");return}if(!P){E("workflow","no workflow run in this session yet");return}let b=jo(P,Date.now()),T=b[C.selectedPhase];E("workflow",[`panel ${J?"pinned above the editor":"unpinned"}`,`phase ${C.selectedPhase+1}/${b.length}: ${T?.title??"(none)"}`,`filter: ${C.filter}${C.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(`
|
|
140
|
+
`));return}if(g==="plan"){if(Tv()||zm().state==="pending"){Co(wv(zm())),E("plan","plan mode off \u2014 edits are allowed again");return}Co($v(zm())),E("plan",`plan mode armed \u2014 send your next prompt to start planning
|
|
141
|
+
plan file: ${kv()??"(unknown)"}`);return}if(g==="goal"){let b=x.trim();if(!b){E("goal",qm(Um()));return}let{goal:T,error:A}=rl(Um(),"set",b,void 0,void 0);if(A){gn(A);return}cn(T),await v.sendCustomMessage({customType:pr,content:b,display:!1,details:T}),E("goal",`goal set
|
|
142
|
+
${qm(T)}`);return}if(g==="session"){let b=v.model;E("session",b?`${b.provider}/${b.id}`:"no model");return}if(g==="skills"){E("skills",LS(v.resourceLoader.getSkills().skills));return}let k=CS(l,v.resourceLoader.getSkills().skills.map(b=>b.name));if(k){hd(k);return}let U=v.extensionRunner.getCommand(g??"");if(U){try{await U.handler(x,v.extensionRunner.createCommandContext())}catch(b){gn(b instanceof Error?b.message:String(b))}return}E("command",`/${g??""} is not available in this screen yet`)};Zd((l,g)=>{let{promise:y,resolve:x}=Promise.withResolvers();return Ft(l,g.map(k=>({value:k,label:k})),x,()=>x("cancelled")),y}),process.on("SIGTERM",ui),t.setTitle(`${It} ${hn}`),vD(),n.start(),n.requestRender(!0),e.initialPrompt&&Su(e.initialPrompt),await new Promise(()=>{})}var XS,ed,nP,nd,hu,xu,yu,wD,kD,dn,SD,PD,mP=m(()=>{Ko();_E();Dl();iS();Hu();fS();Hs();ES();Xl();zs();oc();Vl();RS();Ys();Ol();Bu();MS();_n();jS();BS();kl();Ho();Vu();Gm();al();HS();Hn();XS={borderColor:()=>"",selectList:{selectedPrefix:e=>ee(e,D.accent),selectedText:e=>ee(e,D.text,{bold:!0}),description:e=>ee(e,D.mute),scrollInfo:e=>ee(e,D.dim),noMatch:e=>ee(e,D.mute)}},ed=["off","minimal","low","medium","high","xhigh","max"],nP=Symbol.for("@earendil-works/pi-tui/layout-node");nd=rD(nD);hu=class{folder;model;git;percent=0;meter=new mu(0);activity=SS();live=!1;activitySince=Date.now();thinking="medium";cubence="";constructor(t,n){this.folder=aD(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=bS(this.model,this.thinking,this.folder,this.git),s=[ni(`${IS(o,this.live?Bl():"",this.live?this.waitedMs():void 0)} ${$S(r,this.cubence)}`,t)],a=Sv();a&&s.push(ni(ee(a,D.warn),t));let c=pv(Um());c&&s.push(ni(ee(c,D.accent),t));let p=AS(this.activity,Bl(),n),f=this.live?JE(p,{base:Ll(this.waitedMs(),D.mute,D.warn,D.bad),bright:D.text,charMs:45},n):ee(p,Ll(this.waitedMs(),D.mute,D.warn,D.bad));return s.push(ni(f,t)),s}},xu=class{constructor(t){this.draw=t}draw;render(t){return this.draw(t)}invalidate(){}},yu=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=>gu(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-gu(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)}},wD=["deepseek","qwen","claude","gpt-5","gpt-4","gemini","glm","mimo","kimi","llama"],kD=/(image|embedding|embed|whisper|tts|audio|video|rerank|moderation|dall-e|stable-diffusion|sora)/i;SD=1e3/30,PD=45e3});Ko();var wd={off:!0,minimal:!0,low:!0,medium:!0,high:!0,xhigh:!0,max:!0},kd={suggest:!0,"auto-edit":!0,"full-auto":!0};function ci(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 Td(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=ci(r,o,"--session");else if(s==="-m"||s==="--model"||s.startsWith("--model="))t.model=ci(r,o,"--model");else if(s==="--thinking"||s.startsWith("--thinking="))t.thinking=ci(r,o,"--thinking");else if(s==="--approval"||s.startsWith("--approval="))t.approval=ci(r,o,"--approval");else{if(s.startsWith("-"))throw new Error(`unknown option ${s}`);n.push(s)}}if(t.thinking&&!wd[t.thinking])throw new Error(`thinking must be one of: ${Object.keys(wd).join(", ")}`);if(t.approval&&!kd[t.approval])throw new Error(`approval must be one of: ${Object.keys(kd).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 Cu(){return`${It} ${hn}
|
|
140
143
|
coding agent. layout is a workbench, not a chat log.
|
|
141
144
|
|
|
142
145
|
usage:
|
|
@@ -179,7 +182,7 @@ a line starting with ! runs in the project shell.
|
|
|
179
182
|
|
|
180
183
|
config and sessions live in ~/.howtofix/agent. connect your howtofix.id account
|
|
181
184
|
with /connect (it opens the token page), or /login for another provider's key.
|
|
182
|
-
`}
|
|
183
|
-
${
|
|
184
|
-
`)?
|
|
185
|
-
`);let
|
|
185
|
+
`}Ko();_n();function AD(){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 RD(){process.stdout.on("error",e=>{throw e.code==="EPIPE"&&process.exit(0),e})}async function OD(){RD(),Du();let e=AD();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(()=>(Bu(),Cd)),{AGENT_DIR:o}=await Promise.resolve().then(()=>(_n(),vd)),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=Td(process.argv.slice(2))}catch(P){let N=P instanceof Error?P.message:String(P);console.error(`${It}: ${N}
|
|
186
|
+
${Cu()}`),process.exitCode=2;return}if(a.help){console.log(Cu());return}if(a.version){console.log(`${It} ${hn}`);return}if(a.print&&!a.prompt){console.error(`${It}: --print needs a prompt`),process.exitCode=2;return}let{expandFileReferences:c}=await Promise.resolve().then(()=>(Hu(),Ld)),{isApprovalMode:p,setApprovalMode:f}=await Promise.resolve().then(()=>(Ho(),Vd)),{openSession:I}=await Promise.resolve().then(()=>(FE(),jE));f(a.approval&&p(a.approval)?a.approval:"full-auto");let $=P=>I({cwd:t,model:a.model,thinking:a.thinking,continueSession:P.continueSession??!1,noSession:P.noSession??!1,sessionPath:P.sessionPath}),R=await $({continueSession:a.continueSession,sessionPath:a.sessionPath,noSession:a.noSession||a.print});if(a.print){R.note&&console.error(R.note);try{await R.session.prompt(c(a.prompt,t));let P=R.session.getLastAssistantText()??"";process.stdout.write(P.endsWith(`
|
|
187
|
+
`)?P:`${P}
|
|
188
|
+
`);let N=R.session.state.messages.at(-1);N?.role==="assistant"&&((N.stopReason==="error"||N.stopReason==="aborted"||N.errorMessage)&&(process.exitCode=1),process.exitCode===1&&N.errorMessage&&console.error(`${It}: ${N.errorMessage}`))}finally{R.dispose()}return}if(!process.stdin.isTTY||!process.stdout.isTTY){console.error(`${It}: interactive mode needs a terminal. use --print for pipes.`),R.dispose(),process.exitCode=2;return}let{runWorkbench:C}=await Promise.resolve().then(()=>(mP(),aP));await C({cwd:t,modelLabel:R.modelLabel,session:R.session,initialPrompt:a.prompt||void 0,note:R.note,reopen:$})}OD().catch(e=>{let t=e instanceof Error?e.message:String(e);console.error(`${It}: ${t}`),process.exitCode=1});
|