howtofixcli 0.4.16 → 0.4.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -1
- package/dist/main.js +110 -95
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -1,48 +1,59 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
`).trim()}var
|
|
5
|
-
`);
|
|
6
|
-
`)});var
|
|
7
|
-
`)}catch{return 0}return o}function
|
|
8
|
-
`)}catch{return!1}return!0}function
|
|
9
|
-
${
|
|
10
|
-
</file>${a}`}catch{return n}})}var HS,Fu=m(()=>{HS=64*1024});function JS(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 pd(e,t){if(VS.has(e))return;let n=`${e}\0${JS(t)}`,r=Lo&&Lo.signature===n?Lo.count+1:1;return Lo={signature:n,count:r},r>=3?{repeats:r}:void 0}function cd(){Lo=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 VS,Lo,ju=m(()=>{VS=new Set(["think"])});function dd(e,t){switch(t){case"number":return/^\d+$/.test(e);case"string":return!0;default:return!1}}function XS(e,t,n){let r=t;for(;r<e.length;){let o=e[r];if(!o){r++;continue}if(o==="--")break;if(YS.test(o)){let s=o.includes("="),[a="",...p]=o.split("="),c=n.safeFlags[a];if(!c)return!1;if(c==="none"){if(s)return!1;r++;continue}if(c==="optional"){r++;continue}if(s){if(!dd(p.join("="),c))return!1;r++;continue}let h=e[r+1];if(h===void 0||!dd(h,c))return!1;r+=2;continue}if(n.allowPositional===!1)return!1;r++}return!0}function rP(e){if(!/\$\(|`|\$\{|>|</.test(e)&&!/(?<!&)&(?!&)/.test(e))return e.split(/\|\||&&|;|\|/).map(t=>t.trim()).filter(t=>t.length>0)}function oP(e){let t=e.some(r=>/^cd\b/.test(r)),n=e.some(r=>/^git\b/.test(r));return t&&n}function sP(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 iP(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"&&gd[`git ${n}`]?{name:`git ${n}`,rest:e.slice(2)}:xd[r]?{name:r,rest:e.slice(2)}:{name:t,rest:e.slice(1)}}function mP(e){let t=sP(e),n=iP(t);if(!n)return!1;let{name:r,rest:o}=n;if(aP.has(r)&&o.some(a=>a.includes("$")||a.includes("`")))return!1;let s=gd[r]??tP[r]??xd[r];return s?s.dangerous?.(o)?!1:XS(o,0,s):!!(eP.includes(r)||nP.includes(r))}function mi(e){let t=rP(e);return!t||t.length===0||oP(t)?!1:t.every(mP)}var YS,ZS,si,ii,Du,ai,Nu,fd,QS,gd,eP,tP,xd,nP,aP,qu=m(()=>{YS=/^-[a-zA-Z0-9_-]/;ZS={"--all":"none","--branches":"none","--tags":"none","--remotes":"none"},si={"--oneline":"none","--graph":"none","--decorate":"none","--no-decorate":"none","--date":"string","--relative-date":"none"},ii={"--max-count":"number","-n":"number"},Du={"--stat":"none","--numstat":"none","--shortstat":"none","--name-only":"none","--name-status":"none"},ai={"--color":"none","--no-color":"none"},Nu={"--patch":"none","-p":"none","--no-patch":"none","--no-ext-diff":"none","-s":"none"},fd={"--author":"string","--committer":"string","--grep":"string"},QS={"-l":"none","--list":"none","-a":"none","-r":"none","-v":"none","-vv":"none","-i":"none"},gd={"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",...ai}},"git diff":{safeFlags:{...Du,...ai,...Nu,"--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:{...si,...ii,...Du,...ai,...Nu,...fd,...ZS,"--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:{...Du,...ai,...Nu,...si,"--format":"string","--pretty":"string","--abbrev-commit":"none","--no-patch":"none","-q":"none"}},"git shortlog":{safeFlags:{...ii,"-s":"none","--summary":"none","-n":"none","--numbered":"none","-e":"none","--email":"none","-sn":"none","-ns":"none","--all":"none"}},"git reflog":{safeFlags:{...ii,...si,...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:{...ii,"--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:{...si}},"git worktree list":{safeFlags:{"--porcelain":"none","-v":"none","--verbose":"none","-z":"none"}},"git branch":{safeFlags:{...QS,"--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"}}},eP=["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"],tP={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))}},xd={"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:{}}},nP=["cd","alias","history","arch","ip addr","ifconfig"];aP=new Set(["echo","printf"])});var kd={};Lt(kd,{APPROVAL_LABELS:()=>ui,APPROVAL_MODES:()=>_r,MODE_MAX_TIER:()=>hd,TIER_RANK:()=>_u,createPermissionExtension:()=>Fo,criticalCommand:()=>yd,decideToolCall:()=>Id,describeToolCall:()=>$d,formatApprovalPrompt:()=>wd,getApprovalMode:()=>lP,isApprovalMode:()=>uP,isReadOnlyCommand:()=>mi,resolveTier:()=>Uu,setApprovalMode:()=>Gu,setApprovalPrompt:()=>Wu});function uP(e){return _r.includes(e)}function Uu(e){let t=pP[e];return t||(e.startsWith("mcp__")?"write":"exec")}function yd(e){for(let{pattern:t,reason:n}of cP)if(t.test(e))return n}function Gu(e){Ku=e}function lP(){return Ku}function Wu(e){bd=e}function Id(e,t,n){let r=typeof n?.command=="string"?n.command:"";if(t==="bash"||t==="powershell"){let s=yd(r);if(s)return{action:"deny",reason:`Refused in every mode: ${s}.`};if(mi(r))return{action:"run"}}let o=Uu(t);return _u[o]<=_u[hd[e]]?{action:"run"}:{action:"prompt",reason:`this is a ${o}-tier tool`}}function $d(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=$d(e,t);return o!==e&&r.push(o),r.join(`
|
|
11
|
-
`)}function Fo(e={}){return t=>{t.on("tool_call",async n=>{let r=pd(n.toolName,n.input);if(r)return{block:!0,reason:ld(n.toolName,r.repeats)};let o=Ku,s=Id(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 ${Uu(n.toolName)}-tier tool and no UI can approve it here (approval mode: ${o}).`};if(!await bd(`${n.toolName} wants to run`,wd(n.toolName,n.input,s.reason)))return{block:!0,reason:`Blocked by the user (approval mode: ${o}).`}})}}var _r,ui,_u,hd,pP,cP,Ku,bd,jo=m(()=>{ju();qu();qu();_r=["suggest","auto-edit","full-auto"],ui={suggest:"suggest: ask before every edit and command","auto-edit":"auto-edit: edits run, commands ask","full-auto":"full-auto: nothing asks"};_u={read:0,write:1,exec:2},hd={suggest:"read","auto-edit":"write","full-auto":"exec"},pP={read:"read",grep:"read",find:"read",ls:"read",think:"read",ask:"read",todo:"read",context:"read",workflow:"exec",goal:"read",enter_plan_mode:"read",exit_plan_mode:"read",edit:"write",write:"write",bash:"exec",powershell:"exec",task:"exec"};cP=[{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"}];Ku="full-auto",bd=async()=>!1});function dP(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 gP(e){if(!e)return;let t=!1,n={...e};for(let r of fP){let o=n[r];if(typeof o!="string")continue;let s=dP(o);s!==o&&(n[r]=s,t=!0)}return t?n:void 0}function Td(){return e=>{e.on("context_with_system",async t=>{let n=t.messages[0];if(!n||n.role!=="system")return;let r=gP(n.sections);return r?{messages:t.messages.map(s=>s===n?{...n,sections:r}:s)}:void 0})}}var fP,Ed=m(()=>{fP=["preamble","rules","docs","addendum"]});import{Type as Ur}from"@earendil-works/pi-ai";import{defineTool as vd}from"@earendil-works/pi-coding-agent";function Sd(e){zu=e}var zu,Pd,Ad,Bu=m(()=>{Pd=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:Ur.Object({thoughts:Ur.String({description:"Private notes"})}),async execute(){return{content:[{type:"text",text:"noted"}],details:{recorded:!0}}}}),Ad=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:Ur.Object({question:Ur.String(),options:Ur.Array(Ur.String(),{minItems:2})}),async execute(e,t){if(!zu)return{content:[{type:"text",text:"cancelled"}],details:{answer:"cancelled"}};let n=await zu(t.question,t.options);return{content:[{type:"text",text:n}],details:{answer:n}}}})});var en,dr=m(()=>{en={assign:0,create:0,clone:0,discard:0,update:0}});function fr(e,t,n){return e>=t&&e<=n}function Md(e){return e===8205}function xP(e){return fr(e,55296,56319)}function Rd(e){return fr(e,127462,127487)}function Cd(e){return fr(e,65024,65039)}function Ld(e){return fr(e,768,879)||fr(e,6832,6911)||fr(e,7616,7679)||fr(e,65056,65071)}function pi(e){return e>65535?2:1}function Od(e,t){for(;t<e.length;){let n=e.codePointAt(t);if(Ld(n)||Cd(n))t+=pi(n);else break}return t}function Hu(e,t){let n=e.codePointAt(t),r=t+pi(n);for(r=Od(e,r);r<e.length-1&&Md(e.codePointAt(r));){let o=e.codePointAt(r+1);r+=1+pi(o),r=Od(e,r)}return Rd(n)&&r<e.length&&Rd(e.codePointAt(r))&&(r+=pi(e.codePointAt(r))),r}function Fd(e){return e>=768&&(xP(e)||Ld(e)||Cd(e)||Md(e))}function jd(e){let t=0,n=0;for(;n<e.length;)n=Hu(e,n),t++;return t}function hP(e,t){let n=0,r=0;for(;r<e.length;)if(r=Hu(e,r),++n>=t)return!0;return!1}function yP(e,t){let n=0,r=0;for(;r<e.length;)if(r=Hu(e,r),++n>t)return!1;return!0}function Dd(e,t){if(t===0)return!0;if(e.length<t)return!1;let n=0;for(;;){if(Fd(e.charCodeAt(n)))return hP(e,t);if(++n>=t)return!0}}function Nd(e,t){if(e.length<=t)return!0;let n=0;for(;;){if(Fd(e.charCodeAt(n)))return yP(e,t);if(++n>t)return!1}}var qd=m(()=>{});var u={};Lt(u,{Counted:()=>LP,Entries:()=>DP,EntriesRegExp:()=>jP,Every:()=>RP,EveryAll:()=>OP,GraphemeCount:()=>SP,HasPropertyKey:()=>FP,IsArray:()=>No,IsBigInt:()=>Do,IsBoolean:()=>_d,IsClassInstance:()=>vP,IsConstructor:()=>IP,IsDeepEqual:()=>Yu,IsEqual:()=>re,IsFunction:()=>Ud,IsGreaterEqualThan:()=>Gd,IsGreaterThan:()=>kP,IsInteger:()=>Vu,IsLessEqualThan:()=>Kd,IsLessThan:()=>TP,IsMaxLength:()=>PP,IsMinLength:()=>AP,IsMultipleOf:()=>EP,IsNull:()=>li,IsNumber:()=>di,IsObject:()=>qo,IsObjectNotArray:()=>$P,IsString:()=>fi,IsSymbol:()=>wP,IsUndefined:()=>Ju,IsUnsafePropertyKey:()=>zd,IsValueLike:()=>Wd,Keys:()=>ci,ShiftLeft:()=>gi,Some:()=>MP,SomeAll:()=>CP,Symbols:()=>NP,Values:()=>qP});function No(e){return Array.isArray(e)}function Do(e){return re(typeof e,"bigint")}function _d(e){return re(typeof e,"boolean")}function IP(e){if(Ju(e)||!Ud(e))return!1;let t=Function.prototype.toString.call(e);return!!(/^class\s/.test(t)||/\[native code\]/.test(t))}function Ud(e){return re(typeof e,"function")}function Vu(e){return Number.isInteger(e)}function li(e){return re(e,null)}function di(e){return Number.isFinite(e)}function $P(e){return qo(e)&&!No(e)}function qo(e){return re(typeof e,"object")&&!li(e)}function fi(e){return re(typeof e,"string")}function wP(e){return re(typeof e,"symbol")}function Ju(e){return re(e,void 0)}function re(e,t){return e===t}function kP(e,t){return e>t}function TP(e,t){return e<t}function Kd(e,t){return e<=t}function Gd(e,t){return e>=t}function EP(e,t){if(Do(e)||Do(t))return BigInt(e)%BigInt(t)===0n;let n=1e-10;if(!di(e)||Vu(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 vP(e){if(!qo(e))return!1;let t=globalThis.Object.getPrototypeOf(e);return li(t)?!1:re(typeof t.constructor,"function")&&!(re(t.constructor,globalThis.Object)||re(t.constructor.name,"Object"))}function Wd(e){return Do(e)||_d(e)||li(e)||di(e)||fi(e)||Ju(e)}function SP(e){return jd(e)}function PP(e,t){return Nd(e,t)}function AP(e,t){return Dd(e,t)}function RP(e,t,n){return e.every((r,o)=>o<t||n(r,o))}function OP(e,t,n){let r=!0;return e.forEach((o,s)=>{s>=t&&!n(o,s)&&(r=!1)}),r}function MP(e,t){return e.some((n,r)=>t(n,r))}function CP(e,t){let n=!1;return e.forEach((r,o)=>{t(r,o)&&(n=!0)}),n}function LP(e,t){return e.reduce((n,r,o)=>t(r,o)?++n:n,0)}function gi(e,t,n){return re(e.length,0)?n():t(e[0],e.slice(1))}function zd(e){return re(e,"__proto__")||re(e,"constructor")||re(e,"prototype")}function FP(e,t){return zd(t)?Object.prototype.hasOwnProperty.call(e,t):t in e}function jP(e){return ci(e).map(t=>[new RegExp(`^${t}$`),e[t]])}function DP(e){return Object.entries(e)}function ci(e){return Object.getOwnPropertyNames(e)}function NP(e){return Object.getOwnPropertySymbols(e)}function qP(e){return Object.values(e)}function _P(e,t){if(!qo(t))return!1;let n=ci(e);return re(n.length,ci(t).length)&&n.every(r=>Yu(e[r],t[r]))}function UP(e,t){return No(t)&&re(e.length,t.length)&&e.every((n,r)=>Yu(e[r],t[r]))}function Yu(e,t){return No(e)?UP(e,t):qo(e)?_P(e,t):re(e,t)}var Kr=m(()=>{qd()});var Bd=m(()=>{Kr()});var Bn={};Lt(Bn,{IsBigInt64Array:()=>nA,IsBigUint64Array:()=>rA,IsBoolean:()=>GP,IsDate:()=>sA,IsFloat32Array:()=>eA,IsFloat64Array:()=>tA,IsInt16Array:()=>YP,IsInt32Array:()=>ZP,IsInt8Array:()=>HP,IsMap:()=>aA,IsNumber:()=>WP,IsRegExp:()=>oA,IsSet:()=>iA,IsString:()=>zP,IsTypeArray:()=>BP,IsUint16Array:()=>XP,IsUint32Array:()=>QP,IsUint8Array:()=>VP,IsUint8ClampedArray:()=>JP});function GP(e){return e instanceof Boolean}function WP(e){return e instanceof Number}function zP(e){return e instanceof String}function BP(e){return globalThis.ArrayBuffer.isView(e)}function HP(e){return e instanceof globalThis.Int8Array}function VP(e){return e instanceof globalThis.Uint8Array}function JP(e){return e instanceof globalThis.Uint8ClampedArray}function YP(e){return e instanceof globalThis.Int16Array}function XP(e){return e instanceof globalThis.Uint16Array}function ZP(e){return e instanceof globalThis.Int32Array}function QP(e){return e instanceof globalThis.Uint32Array}function eA(e){return e instanceof globalThis.Float32Array}function tA(e){return e instanceof globalThis.Float64Array}function nA(e){return e instanceof globalThis.BigInt64Array}function rA(e){return e instanceof globalThis.BigUint64Array}function oA(e){return e instanceof globalThis.RegExp}function sA(e){return e instanceof globalThis.Date}function iA(e){return e instanceof globalThis.Set}function aA(e){return e instanceof globalThis.Map}var Hd=m(()=>{});var Vd=m(()=>{Kr()});var R=m(()=>{Bd();Hd();Vd();Kr();Kr()});var tn={};Lt(tn,{Get:()=>cA,Reset:()=>uA,Set:()=>pA});function uA(){gn.immutableTypes=!1,gn.maxErrors=8,gn.maxInstantiationCount=128,gn.useAcceleration=!0,gn.exactOptionalPropertyTypes=!1,gn.enumerableKind=!1,gn.correctiveParse=!1,gn.unionPrioritySort=!0}function pA(e){for(let t of u.Keys(e)){let n=e[t];n!==void 0&&Object.defineProperty(gn,t,{value:n})}}function cA(){return gn}var gn,Jd=m(()=>{R();gn={immutableTypes:!1,maxErrors:8,maxInstantiationCount:128,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0}});var gr=m(()=>{Jd()});function Hn(e){return tn.Get().immutableTypes?Object.freeze(e):e}var _o=m(()=>{gr()});function lA(e,t){return en.assign+=1,Hn({...e,...t})}var Yd=m(()=>{dr();_o()});function dA(e){return u.HasPropertyKey(e,"~kind")||u.HasPropertyKey(e,"~unsafe")}function fA(e){let t={};for(let n of u.Keys(e)){if(u.IsUnsafePropertyKey(n))continue;let r=Object.getOwnPropertyDescriptor(e,n);r.value=xr(r.value),u.IsEqual(r.enumerable,!0)?t[n]=r.value:Object.defineProperty(t,n,r)}return t}function gA(e){let t={};for(let n of u.Keys(e))u.IsUnsafePropertyKey(n)||(t[n]=xr(e[n]));for(let n of u.Symbols(e))t[n]=xr(e[n]);return t}function xA(e){return u.IsClassInstance(e)?e:dA(e)?fA(e):gA(e)}function hA(e){return e.map(t=>xr(t))}function yA(e){return e.slice()}function bA(e){return new RegExp(e.source,e.flags)}function IA(e){return new Map(xr([...e.entries()]))}function $A(e){return new Set(xr([...e.values()]))}function xr(e){return Bn.IsTypeArray(e)?yA(e):Bn.IsRegExp(e)?bA(e):Bn.IsMap(e)?IA(e):Bn.IsSet(e)?$A(e):u.IsArray(e)?hA(e):u.IsObject(e)?xA(e):e}function Uo(e){return en.clone+=1,xr(e)}var xi=m(()=>{R();dr()});function wA(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 Xd(e,t){return{...e,...t}}function kA(e,t,n={}){en.create+=1;let r=Xd(t,n),o=tn.Get().enumerableKind?Xd(r,e):wA(r,e);return Hn(o)}var Zd=m(()=>{gr();dr();_o()});function TA(e,t){en.discard+=1;let n={};for(let r of u.Keys(e)){if(t.includes(r))continue;let o=Object.getOwnPropertyDescriptor(e,r);o.value=Uo(o.value),Object.defineProperty(n,r,o)}return Hn(n)}var Qd=m(()=>{R();dr();_o();xi()});function EA(e,t,n){en.update+=1;let r=tn.Get(),o=Uo(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 Hn(o)}var ef=m(()=>{gr();dr();_o();xi()});var l={};Lt(l,{Assign:()=>lA,Clone:()=>Uo,Create:()=>kA,Discard:()=>TA,Metrics:()=>en,Update:()=>EA});var tf=m(()=>{Yd();xi();Zd();Qd();dr();ef()});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 B=m(()=>{R()});function j(e,t,n){return l.Create({"~kind":"Deferred"},{type:"deferred",action:e,parameters:t,options:n},{})}function Vn(e){return C(e,"Deferred")}var se=m(()=>{v();B()});function vA(e){return l.Update(e,{"~readonly":!0},{})}function Ko(e,t){return l.Update(vA(e),{},t)}function nf(e,t,n,r){let o=k(e,t,n);return Ko(o,r)}var hi=m(()=>{v();N()});function SA(e){return l.Update(e,{"~optional":!0},{})}function Go(e,t){return l.Update(SA(e),{},t)}function rf(e,t,n,r){let o=k(e,t,n);return Go(o,r)}var yi=m(()=>{v();N()});function Ft(e,t){return l.Create({"~kind":"Array"},{type:"array",items:e},t)}function $e(e){return C(e,"Array")}function bi(e){return l.Discard(e,["~kind","type","items"])}var ct=m(()=>{v();B()});function xn(e,t,n={}){return l.Create({"~kind":"Constructor"},{type:"constructor",parameters:e,instanceType:t},n)}function _e(e){return C(e,"Constructor")}function of(e){return l.Discard(e,["~kind","type","parameters","instanceType"])}var Kt=m(()=>{v();B()});function hn(e,t,n={}){return l.Create({"~kind":"Function"},{type:"function",parameters:e,returnType:t},n)}function Ue(e){return C(e,"Function")}function sf(e){return l.Discard(e,["~kind","type","parameters","returnType"])}var Gt=m(()=>{v();B()});function Dn(e,t){return l.Create({"~kind":"Ref"},{$ref:e},t)}function Ke(e){return C(e,"Ref")}var Wt=m(()=>{v();B()});function Jn(e,t){return l.Create({"~kind":"Generic"},{type:"generic",parameters:e,expression:t})}function Gr(e){return C(e,"Generic")}var Wo=m(()=>{v();B()});function Wr(e){return l.Create({"~kind":"Any"},{},e)}function Te(e){return C(e,"Any")}var bt=m(()=>{v();B()});function le(e){return l.Create({"~kind":"Never"},{not:{}},e)}function nn(e){return C(e,"Never")}var af,Be=m(()=>{v();B();af="(?!)"});function yn(e,t={}){return j("AddOptional",[e],t)}function hr(e,t={}){return Go(e,t)}var zo=m(()=>{se();yi()});function mf(e){return hr(e)}function ot(e){return Fe(e)&&u.HasPropertyKey(e,"~optional")}var Yn=m(()=>{R();B();zo()});function uf(e){return u.Keys(e).filter(t=>!ot(e[t]))}function Ii(e){return u.Keys(e)}function $i(e){return u.Values(e)}var yr=m(()=>{R();Yn()});function K(e,t={}){let n=uf(e),r=n.length>0?{required:n}:{};return l.Create({"~kind":"Object"},{type:"object",...r,properties:e},t)}function me(e){return C(e,"Object")}function pf(e){return l.Discard(e,["~kind","type","properties","required"])}var ce=m(()=>{v();B();yr()});function He(e){return l.Create({"~kind":"Unknown"},{},e)}function Ae(e){return C(e,"Unknown")}var Qe=m(()=>{v();B()});function bn(e,t,n){let r=u.Keys(e).reduce((o,s)=>({...o,[s]:l.Update(e[s],{},{$id:s})}),{});return l.Create({"~kind":"Cyclic"},{$defs:r,$ref:t},n)}function et(e){return C(e,"Cyclic")}var It=m(()=>{R();v();B()});function cf(e){return l.Update(e,{"~unsafe":null},{})}function wi(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"~unsafe")&&u.IsNull(e["~unsafe"])}var ki=m(()=>{R();v()});var In={};Lt(In,{Match:()=>PA});function PA(e,t){return t[e.length]?.(...e)??(()=>{throw Error("Invalid Arguments")})()}var lf=m(()=>{});var zr=m(()=>{lf()});function Bo(...e){let[t,n]=In.Match(e,{2:(r,o)=>[r,o,o],1:r=>[r,He(),He()]});return l.Create({"~kind":"Infer"},{type:"infer",name:t,extends:n},{})}function Re(e){return C(e,"Infer")}var zt=m(()=>{zr();v();B();Qe()});function br(e,t,n,r={}){return l.Create({"~kind":"Dependent"},{if:e,then:t,else:n},r)}function ve(e){return C(e,"Dependent")}function df(e){return l.Discard(e,["~kind","if","then","else"])}var St=m(()=>{v();B()});function ff(e){return u.IsObjectNotArray(e)}function gf(e){return u.Keys(e).filter(n=>isNaN(n)).reduce((n,r)=>[...n,e[r]],[])}var Ti=m(()=>{R()});function xf(e){return u.IsString(e)||u.IsNumber(e)}function hf(e,t){let n=ff(e)?gf(e):e;return l.Create({"~kind":"Enum"},{enum:n},t)}function tt(e){return C(e,"Enum")}var rn=m(()=>{R();v();B();Ti();Ti()});function $t(e,t={}){return l.Create({"~kind":"Intersect"},{allOf:e},t)}function Q(e){return C(e,"Intersect")}function yf(e){return l.Discard(e,["~kind","allOf"])}var je=m(()=>{v();B()});var bf=m(()=>{gr();R()});var If=m(()=>{bf()});var $f=m(()=>{If()});function De(){throw new Error("Unreachable")}var Xu=m(()=>{});var $n=m(()=>{Xu()});var wf,oq,sq,iq,aq,kf,mq,uq,pq,Tf=m(()=>{$n();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={}));oq=BigInt("14695981039346656037"),[sq,iq]=[BigInt("1099511628211"),BigInt("18446744073709551616")],aq=Array.from({length:256}).map((e,t)=>BigInt(t)),kf=new Float64Array(1),mq=new DataView(kf.buffer),uq=new Uint8Array(kf.buffer),pq=new TextEncoder});var Ef=m(()=>{Tf()});var Zu=m(()=>{});var vf=m(()=>{Zu()});var Sf=m(()=>{});var Pf=m(()=>{});var Af=m(()=>{});var Rf=m(()=>{});var Of=m(()=>{});var Mf=m(()=>{});var Cf=m(()=>{});var Lf=m(()=>{});var Ff=m(()=>{});var jf=m(()=>{});var Df=m(()=>{});var Qu=m(()=>{});var Nf=m(()=>{});var qf=m(()=>{});var _f=m(()=>{});var Uf=m(()=>{});var Kf=m(()=>{});var Gf=m(()=>{});var Wf=m(()=>{});var zf=m(()=>{});var Bf=m(()=>{});var Hf=m(()=>{});var Vf=m(()=>{});var Jf=m(()=>{});var Yf=m(()=>{});var Xf=m(()=>{});var Zf=m(()=>{});var Qf=m(()=>{});var eg=m(()=>{});var tg=m(()=>{});var ng=m(()=>{});var rg=m(()=>{});var og=m(()=>{});var sg=m(()=>{});var ig=m(()=>{});var ag=m(()=>{});var mg=m(()=>{});var ug=m(()=>{vf();Sf();Pf();Af();Rf();Of();Zu();Mf();Cf();Lf();Ff();jf();Df();Qu();Qu();Nf();qf();_f();Uf();Kf();Gf();Wf();zf();Bf();Hf();Vf();Jf();Yf();Xf();Zf();Qf();eg();tg();ng();rg();og();sg();ig();ag();mg()});var pg=m(()=>{ug()});var Ho=m(()=>{zr();$f();Ef();pg();v();gr()});var lg=m(()=>{Ho();Ho();Ho()});function vi(e){return new Jo(e)}function dg(e,t){return vi(e).Decode(t).Encode(()=>{throw Error("Encode not implemented")})}function fg(e,t){return vi(e).Decode(()=>{throw Error("Decode not implemented")}).Encode(t)}function Ei(e){return Fe(e)&&u.HasPropertyKey(e,"~codec")&&u.IsObject(e["~codec"])&&u.HasPropertyKey(e["~codec"],"encode")&&u.HasPropertyKey(e["~codec"],"decode")}var Vo,Jo,ep=m(()=>{lg();R();B();Vo=class{constructor(t,n){this.type=t,this.decode=n}Encode(t){let n=this.type,r=Ei(n)?a=>this.decode(n["~codec"].decode(a)):this.decode,o=Ei(n)?a=>n["~codec"].encode(t(a)):t,s={decode:r,encode:o};return l.Update(this.type,{"~codec":s},{})}},Jo=class{constructor(t){this.type=t}Decode(t){return new Vo(this.type,t)}}});function gg(e){return Br(e)}function Ir(e){return Fe(e)&&u.HasPropertyKey(e,"~immutable")}var Yo=m(()=>{R();B();Xo()});function wn(e,t={}){return j("AddReadonly",[e],t)}function $r(e,t={}){return Ko(e,t)}var Zo=m(()=>{se();hi()});function xg(e){return $r(e)}function wr(e){return Fe(e)&&u.HasPropertyKey(e,"~readonly")}var Qo=m(()=>{R();B();Zo()});function MA(e,t){let n=tp(e)?[...e["~refine"],t]:[t];return l.Update(e,{"~refine":n},{})}function hg(...e){let[t,n,r]=In.Match(e,{3:(o,s,a)=>[o,s,a],2:(o,s)=>[o,s,()=>"Refine Error"]});return MA(t,{check:n,error:r})}function CA(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"check")&&u.HasPropertyKey(e,"error")&&u.IsFunction(e.check)&&u.IsFunction(e.error)}function tp(e){return Fe(e)&&u.HasPropertyKey(e,"~refine")&&u.IsArray(e["~refine"])&&u.Every(e["~refine"],0,t=>CA(t))}var np=m(()=>{zr();v();R();B()});function es(e){return l.Create({"~kind":"BigInt"},{type:"bigint"},e)}function kn(e){return C(e,"BigInt")}var yg,kr=m(()=>{v();B();yg="-?(?:0|[1-9][0-9]*)n"});function Si(e){return l.Create({"~kind":"Boolean"},{type:"boolean"},e)}function Bt(e){return C(e,"Boolean")}var Xn=m(()=>{v();B()});function ts(e){return l.Create({"~kind":"Identifier"},{name:e})}function bg(e){return C(e,"Identifier")}var rp=m(()=>{v();B()});function Tr(e){return l.Create({"~kind":"Integer"},{type:"integer"},e)}function lt(e){return C(e,"Integer")}var Pi,Tn=m(()=>{v();B();Pi="-?(?:0|[1-9][0-9]*)"});function LA(e){return u.IsBigInt(e)?"bigint":u.IsBoolean(e)?"boolean":u.IsNumber(e)?"number":u.IsString(e)?"string":(()=>{throw new op(e)})()}function ee(e,t){return l.Create({"~kind":"Literal"},{type:LA(e),const:e},t)}function Ai(e){return u.IsBigInt(e)||u.IsBoolean(e)||u.IsNumber(e)||u.IsString(e)}function Ig(e){return ue(e)&&u.IsNumber(e.const)}function $g(e){return ue(e)&&u.IsString(e.const)}function ue(e){return C(e,"Literal")}var op,Oe=m(()=>{v();R();B();op=class extends Error{constructor(t){super("Invalid Literal value"),Object.defineProperty(this,"cause",{value:{value:t},writable:!1,configurable:!1,enumerable:!1})}}});function Hr(e){return l.Create({"~kind":"Null"},{type:"null"},e)}function Vr(e){return C(e,"Null")}var Jr=m(()=>{v();B()});function Pt(e){return l.Create({"~kind":"Number"},{type:"number"},e)}function Me(e){return C(e,"Number")}var Ri,dt=m(()=>{v();B();Ri="-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?"});function Yr(e){return l.Create({"~kind":"Symbol"},{type:"symbol"},e)}function Zn(e){return C(e,"Symbol")}var Er=m(()=>{v();B()});function vr(...e){let[t,n,r]=In.Match(e,{3:(o,s,a)=>[o,s,a],2:(o,s)=>[o,s,s],1:o=>[o,He(),He()]});return l.Create({"~kind":"Parameter"},{name:t,extends:n,equals:r},{})}function wg(e){return C(e,"Parameter")}var sp=m(()=>{zr();v();B();Qe()});function Ht(e){return l.Create({"~kind":"String"},{type:"string"},e)}function ft(e){return C(e,"String")}var Oi,Vt=m(()=>{v();B();Oi=".*"});function V(e,t={}){return l.Create({"~kind":"Union"},{anyOf:e},t)}function L(e){return C(e,"Union")}function kg(e){return l.Discard(e,["~kind","anyOf"])}var J=m(()=>{v();B()});function ns(e){let t=Tg(e);return u.IsEqual(t.length,2)?t[0]:[]}var rs=m(()=>{R();Mi()});function FA(e){return!0}function Eg(e){return u.ShiftLeft(e,(t,n)=>jA(t)?Eg(n):!1,()=>!0)}function vg(e){return u.IsEqual(e.length,0)?!1:Eg(e)}function jA(e){return L(e)?vg(e.anyOf):ue(e)?FA(e.const):!1}function Ci(e){return vg(e)}var Li=m(()=>{R();Oe();J()});function Fi(e){return l.Create({"~kind":"TemplateLiteral"},{type:"string",pattern:e},{})}var ji=m(()=>{v()});function Sg(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Sg(o,t,[...n,`${r}${t}`]),()=>n)}function DA(e,t){return u.IsEqual(e.length,0)?[`${t}`]:Sg(e,t)}function Pg(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>Pg(e,o,[...n,...Ag(e,r)]),()=>n)}function Ag(e,t){return L(t)?Pg(e,t.anyOf):ue(t)?DA(e,t.const):De()}function Rg(e,t){return u.ShiftLeft(t,(n,r)=>Rg(Ag(e,n),r),()=>e)}function NA(e){return e.map(t=>ee(t))}function qA(e){let t=Rg([],e),n=NA(t);return V(n)}function _A(e){return u.IsEqual(e.length,0)?De():u.IsEqual(e.length,1)&&ue(e[0])?e[0]:qA(e)}function ip(e){let t=ns(e);return u.IsEqual(t.length,0)?Ht():Ci(t)?_A(t):Fi(e)}function Og(e){let t=ip(e);return Se(t)?Ht():t}var Di=m(()=>{R();$n();Oe();Vt();wt();J();rs();Li();ji()});function kt(e,t){let n="object",r={[e]:t};return l.Create({"~kind":"Record"},{type:n,patternProperties:r})}var Qn=m(()=>{v()});function Mg(e){return kt(on,e)}var Cg=m(()=>{Ve();Qn()});function Lg(e){return K({true:e,false:e})}var Fg=m(()=>{ce()});function Ce(e,t={}){let[n,r,o]=[e,e.length,!1];return l.Create({"~kind":"Tuple"},{type:"array",additionalItems:o,items:n,minItems:r},t)}function ge(e){return C(e,"Tuple")}function jg(e){return l.Discard(e,["~kind","type","items","minItems","additionalItems"])}var Ne=m(()=>{v();B()});function UA(e){return l.Discard(e,["~readonly"])}function ap(e,t){return l.Update(UA(e),{},t)}function Dg(e,t,n,r){let o=k(e,t,n);return ap(o,r)}var mp=m(()=>{v();N()});function Ng(e,t={}){return j("RemoveReadonly",[e],t)}function qg(e,t={}){return ap(e,t)}var up=m(()=>{se();mp()});function KA(e){return l.Discard(e,["~optional"])}function pp(e,t){return l.Update(KA(e),{},t)}function _g(e,t,n,r){let o=k(e,t,n);return pp(o,r)}var cp=m(()=>{v();N()});function Ug(e,t={}){return j("RemoveOptional",[e],t)}function Ni(e,t={}){return pp(e,t)}var qi=m(()=>{se();cp()});function lp(e){return e.reduceRight((n,r,o)=>({[o]:r,...n}),{})}function Kg(e){let t=lp(e.items);return K(t)}var dp=m(()=>{ce()});function fp(e){return me(e)||ge(e)}function GA(e,t){return wr(e)?!!wr(t):!1}function WA(e,t){return ot(e)?!!ot(t):!1}function zA(e,t){let n=GA(e,t),r=WA(e,t),o=we([e,t]),s=qg(Ni(o));return n&&r?$r(hr(s)):n&&!r?$r(s):!n&&r?hr(s):s}function BA(e,t,n){return n in e?n in t?zA(e[n],t[n]):e[n]:n in t?t[n]:le()}function HA(e,t){return[...new Set([...u.Keys(e),...u.Keys(t)])].reduce((o,s)=>({...o,[s]:BA(e,t,s)}),{})}function Gg(e){return me(e)?e.properties:ge(e)?lp(e.items):{}}function Wg(e,t){let n=Gg(e),r=Gg(t),o=HA(n,r);return K(o)}var gp=m(()=>{R();Qo();Yn();ce();Be();Ne();Zo();zo();up();qi();dp();H()});function VA(e,t){let n=is(e,t);return u.IsEqual(n,ss)?e:u.IsEqual(n,_i)||u.IsEqual(n,os)?t:le()}function JA(e,t){let n=fp(e),r=fp(t);return n&&r?Wg(e,t):n&&!r?e:!n&&r?t:VA(e,t)}function zg(e,t){return nn(e)||Te(e)?e:Ae(e)||nn(t)||Te(t)?t:Ae(t)?e:JA(e,t)}var xp=m(()=>{R();bt();Be();Qe();as();gp()});function YA(e,t){return L(e)||L(t)}function XA(e,t){let n=Jt(e),r=Jt(t);return YA(n,r)?we([n,r]):zg(n,r)}function Bg(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>Bg(e,o,[...n,XA(r,e)]),()=>u.IsEqual(n.length,0)?[e]:n)}function Hg(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Hg(o,t,[...n,...ms([r],t)]),()=>n)}function ms(e,t=[]){return u.ShiftLeft(e,(n,r)=>L(n)?ms(r,Hg(n.anyOf,t)):ms(r,Bg(n,t)),()=>t)}var hp=m(()=>{R();J();xp();H();H()});function ZA(e,t){let n=nt({},e,t);return G.IsExtendsTrueLike(n)?[]:[e]}function Vg(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Vg(o,t,[...n,...ZA(r,t)]),()=>n)}function Ui(e,t){let n=Jt(e),r=L(n)?n.anyOf:[n],o=Vg(r,t);return Tt(o)}var yp=m(()=>{R();J();En();H();H()});function sn(e,t,n){let r=we([e,t]),o=Ui(n,e);return Tt([r,o])}function gt(e,t=[]){return u.ShiftLeft(e,(n,r)=>gt(r,[...t,ee(n)]),()=>Tt(t))}function we(e){let t=ms(e),n=bp(t);return Tt(n)}function st(e){let t=Og(e);return Jt(t)}function Tt(e){let t=bp(e);return er(t)}function Jt(e){return ve(e)?sn(e.if,e.then,e.else):tt(e)?gt(e.enum):Q(e)?we(e.allOf):Se(e)?st(e.pattern):L(e)?Tt(e.anyOf):e}function er(e){return u.IsEqual(e.length,1)?e[0]:u.IsEqual(e.length,0)?le():V(e)}var H=m(()=>{R();St();rn();je();Oe();Be();wt();J();hp();Ip();yp();Di()});function Jg(e,t){let n=gt(e);return tr(n,t)}var Yg=m(()=>{us();H()});function Xg(e,t){return kt(nr,t)}var Zg=m(()=>{Ve();Qn()});function Qg(e,t){let n=we(e);return tr(n,t)}var ex=m(()=>{H();us()});function tx(e,t){return u.IsString(e)||u.IsNumber(e)?K({[e]:t}):u.IsEqual(e,!1)?K({false:t}):u.IsEqual(e,!0)?K({true:t}):K({})}var nx=m(()=>{R();ce()});function rx(e,t){return kt(Xr,t)}var ox=m(()=>{Ve();Qn()});function sx(e,t){return u.HasPropertyKey(e,"pattern")&&(u.IsString(e.pattern)||e.pattern instanceof RegExp)?kt(e.pattern.toString(),t):kt(on,t)}var ix=m(()=>{R();Ve();Qn()});function ax(e,t){let n=ns(e);return Ci(n)?tr(st(e),t):kt(e,t)}var mx=m(()=>{us();rs();Li();H();Qn()});function QA(e){return L(e)?Zr(e.anyOf):[e]}function Zr(e,t=[]){return u.ShiftLeft(e,(n,r)=>Zr(r,[...t,...QA(n)]),()=>t)}var Ki=m(()=>{R();J()});function eR(e){return e.some(t=>ft(t)||Me(t)||lt(t))}function tR(e,t){return u.IsEqual(eR(e),!0)?kt(on,t):void 0}function nR(e,t){return e.reduce((n,r)=>ue(r)&&(u.IsString(r.const)||u.IsNumber(r.const))?{...n,[r.const]:t}:n,{})}function rR(e,t){let n=nR(e,t);return K(n)}function ux(e,t){let n=Zr(e),r=tR(n,t);return Fe(r)?r:rR(n,t)}var px=m(()=>{R();B();Oe();dt();Tn();ce();Vt();Ve();Ki();Qn()});function tr(e,t){return Te(e)?Mg(t):Bt(e)?Lg(t):tt(e)?Jg(e.enum,t):lt(e)?Xg(e,t):Q(e)?Qg(e.allOf,t):ue(e)?tx(e.const,t):Me(e)?rx(e,t):L(e)?ux(e.anyOf,t):ft(e)?sx(e,t):Se(e)?ax(e.pattern,t):K({})}var us=m(()=>{bt();Xn();rn();je();Tn();Oe();dt();ce();Vt();wt();J();Cg();Fg();Yg();Zg();ex();nx();ox();ix();mx();px()});function $p(e,t,n){return z([e])?l.Update(tr(e,t),{},n):Wi(e,t,n)}function cx(e,t,n,r,o){let s=k(e,t,n),a=k(e,t,r);return $p(s,a,o)}var Gi=m(()=>{v();Ve();us();N()});function Wi(e,t,n={}){return j("Record",[e,t],n)}function zi(e,t,n={}){return $p(e,t,n)}function lx(e,t){return kt(e,t)}function Bi(e){return u.IsEqual(e,on)?Ht():u.IsEqual(e,nr)?Tr():u.IsEqual(e,Xr)?Pt():ip(e)}function Yt(e){return u.Keys(e.patternProperties)[0]}function Qr(e){let t=Yt(e);return Bi(t)}function xt(e){return e.patternProperties[Yt(e)]}function rt(e){return C(e,"Record")}var nr,Xr,on,Ve=m(()=>{v();R();B();Tn();dt();Vt();se();Di();Qn();Gi();nr=`^${Pi}$`,Xr=`^${Ri}$`,on=`^${Oi}$`});function Sr(e){return l.Create({"~kind":"Rest"},{type:"rest",items:e},{})}function rr(e){return C(e,"Rest")}var eo=m(()=>{v();B()});var dx=m(()=>{});function Hi(e){return l.Create({"~kind":"This"},{$ref:"#"},e)}function Vi(e){return C(e,"This")}var Ji=m(()=>{v();B()});function to(e){return l.Create({"~kind":"Undefined"},{type:"undefined"},e)}function no(e){return C(e,"Undefined")}var ro=m(()=>{v();B()});function Yi(e){return l.Create({"~kind":"Void"},{type:"void"},e)}function vn(e){return C(e,"Void")}var Pr=m(()=>{v();B()});var Xi=m(()=>{ep();Yo();Yn();Qo();np();bt();ct();kr();Xn();oo();Kt();It();se();rn();Gt();Wo();rp();St();zt();Tn();je();Oe();Be();Jr();dt();Qe();Er();ce();sp();yr();Ve();Wt();eo();B();dx();Vt();Er();wt();Ji();Ne();ro();J();Qe();ki();Pr()});function sR(e,t){return u.IsEqual(e,"Array")?Ft(t[0]):u.IsEqual(e,"Capitalize")?Qi(t[0]):u.IsEqual(e,"ConstructorParameters")?oa(t[0]):u.IsEqual(e,"Evaluate")?gy(t[0]):u.IsEqual(e,"Exclude")?sa(t[0],t[1]):u.IsEqual(e,"Extract")?ia(t[0],t[1]):u.IsEqual(e,"Index")?ds(t[0],t[1]):u.IsEqual(e,"InstanceType")?aa(t[0]):u.IsEqual(e,"Lowercase")?ea(t[0]):u.IsEqual(e,"NonNullable")?ma(t[0]):u.IsEqual(e,"Omit")?ua(t[0],t[1]):u.IsEqual(e,"Parameters")?pa(t[0]):u.IsEqual(e,"Partial")?ca(t[0]):u.IsEqual(e,"Pick")?la(t[0],t[1]):u.IsEqual(e,"Readonly")?da(t[0]):u.IsEqual(e,"KeyOf")?fs(t[0]):u.IsEqual(e,"Record")?Wi(t[0],t[1]):u.IsEqual(e,"Required")?fa(t[0]):u.IsEqual(e,"ReturnType")?ga(t[0]):u.IsEqual(e,"Uncapitalize")?ta(t[0]):u.IsEqual(e,"Uppercase")?na(t[0]):ls(Dn(e),t)}function Ar(){throw Error("Unreachable")}function yx(e,t=[]){return u.ShiftLeft(e,(n,r)=>yx(r,[...t,n[1]]),()=>t)}function Nn(e){return u.IsEqual(e.length,3)?[e[0],...yx(e[1])]:[]}function bx(e){return vr(e[0],e[2],e[4])}function Ix(e){return vr(e[0],e[2],e[2])}function $x(e){return vr(e[0],He(),e[2])}function wx(e){return vr(e,He(),He())}function kx(e){return Nn(e)}function Tx(e){return e[1]}function Ex(e){return Nn(e)}function vx(e){return e[1]}function Sx(e){return sR(e[0],e[1])}function Px(e){return null}function Ax(e){return Ht()}function Rx(e){return Pt()}function Ox(e){return Si()}function Mx(e){return to()}function Cx(e){return Hr()}function Lx(e){return Tr()}function Fx(e){return es()}function jx(e){return He()}function Dx(e){return Wr()}function Nx(e){return K({})}function qx(e){return le()}function _x(e){return Yr()}function Ux(e){return Yi()}function Kx(e){return Hi()}function Gx(e){return ee(BigInt(e))}function Wx(e){return ee(u.IsEqual(e,"true"))}function zx(e){return ee(parseFloat(e))}function Bx(e){return ee(e)}function Hx(e){return e[1]}function Vx(e){return ee(e)}function Jx(e){return u.IsEqual(e.length,3)?[e[0],e[1],...e[2]]:[e[0]]}function Yx(e){return e[1]}function Xx(e){return Zi(e)}function Zx(e){return u.IsEqual(e.length,6)?br(e[1],e[3],e[5]):br(e[1],e[3],He())}function Qx(e){return e.length>0}function eh(e){return e.reduce((t,n)=>u.IsEqual(n.length,3)?[...t,[n[1]]]:[...t,[]],[])}function th(e){return u.IsEqual(e.length,6)?[e[1],e[3],e[5]]:[]}function nh(e){return u.IsArray(e)&&u.IsEqual(e.length,3)?e[1]:e}function rh(e){return u.IsEqual(e.length,2)?e[1]:[]}function fx(e,t){return t.reduce((n,r)=>{let o=r;return u.IsEqual(o.length,1)?ds(n,o[0]):u.IsEqual(o.length,0)?Ft(n):Ar()},e)}function gx(e,t){return u.IsEqual(t.length,3)?ra(e,t[0],t[1],t[2]):e}function iR(e,t){return u.IsArray(t)&&u.IsEqual(t.length,0)?e:xa(e,t)}function oh(e){let[t,n,r,o,s]=e;return iR(gx(t?fs(fx(n,r)):fx(n,r),o),s)}function wp(e,t){return u.IsEqual(t.length,3)?(()=>{let[n,r,o]=t,s=wp(r,o);if(u.IsEqual(n,"&"))return Q(s)?$t([e,...s.allOf]):$t([e,s]);if(u.IsEqual(n,"|"))return L(s)?V([e,...s.anyOf]):V([e,s]);Ar()})():e}function sh(e){let[t,n]=e;return wp(t,n)}function ih(e){let[t,n]=e;return wp(t,n)}function ah(e){return fy(e[1])}function mh(e){return e[1]}function uh(e){return Jn(e[0],e[2])}function ph(e){return u.IsEqual(e.length,4)?Bo(e[1],e[3]):u.IsEqual(e.length,2)?Bo(e[1],He()):Ar()}function ch(e){return`${e}`}function lh(e){return lt(e[3])?nr:Me(e[3])?Xr:Zn(e[3])?on:ft(e[3])?on:Ar()}function dh(e){return e.length>0}function fh(e){return e.length>0}function gh(e){let[t,n,r,o,s]=e;return{[n]:t&&r?wn(yn(s)):t&&!r?wn(s):!t&&r?yn(s):s}}function xh(e){return Nn(e)}function hh(e){return e.reduce((t,n)=>u.HasPropertyKey(n,nr)||u.HasPropertyKey(n,Xr)||u.HasPropertyKey(n,on)?[t[0],l.Assign(t[1],n)]:[l.Assign(t[0],n),t[1]],[{},{}])}function yh(e){return hh(e[1])}function bh(e){let[t,n]=e,r=u.IsEqual(u.Keys(n).length,0)?{}:{patternProperties:n};return K(t,r)}function Ih(e){return u.IsEqual(e.length,5)?wn(yn(e[4])):u.IsEqual(e.length,3)?e[2]:u.IsEqual(e.length,4)?u.IsEqual(e[2],"readonly")?wn(e[3]):yn(e[3]):Ar()}function $h(e){if(!u.IsArray(e)||!u.IsEqual(e.length,3))return e;let[t,n,r]=e;return t&&r?wn(yn(n)):t&&!r?wn(n):!t&&r?yn(n):n}function wh(e){return u.IsEqual(e.length,2)?Sr(e[1]):u.IsEqual(e.length,1)?e[0]:Ar()}function kh(e){return Nn(e)}function Th(e){return Ce(e[1])}function Eh(e){return wn(yn(e[4]))}function vh(e){return wn(e[3])}function Sh(e){return yn(e[3])}function Ph(e){return e[2]}function Ah(e){return u.IsEqual(e.length,2)?Sr(e[1]):u.IsEqual(e.length,1)?e[0]:Ar()}function Rh(e){return Nn(e)}function Oh(e){return hn(e[1],e[4])}function Mh(e){return xn(e[2],e[5])}function xx(e,t){return u.IsEqual(e,"remove")?Ng(t):u.IsEqual(e,"add")?wn(t):t}function Ch(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 hx(e,t){return u.IsEqual(e,"remove")?Ug(t):u.IsEqual(e,"add")?yn(t):t}function Lh(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 Fh(e){return u.IsEqual(e.length,2)?[e[1]]:[]}function jh(e){return u.IsArray(e[6])&&u.IsEqual(e[6].length,1)?ps(ts(e[3]),e[5],e[6][0],xx(e[1],hx(e[8],e[10]))):ps(ts(e[3]),e[5],Dn(e[3]),xx(e[1],hx(e[8],e[10])))}function Dh(e){return Dn(e)}function Nh(e){return BigInt(e)}function qh(e){return parseFloat(e)}function _h(e){return u.IsEqual(e,"true")}function Uh(e){return null}function Kh(e){return{[e[0]]:e[2]}}function Gh(e){return Nn(e)}function aR(e){return e.reduce((t,n)=>l.Assign(t,n),{})}function Wh(e){return aR(e[1])}function zh(e){return Nn(e)}function Bh(e){return e[1]}function Hh(e){return es()}function Vh(e){return Ht()}function Jh(e){return Pt()}function Yh(e){return Tr()}function Xh(e){return le()}function Zh(e){return ee(e)}function Qh(e){return V(e[1])}function ey(e){return e.length===3?[...e[0],...e[2]]:e.length===1?[...e[0]]:[]}function ty(e){return[e[0],...e[1]]}function ny(e){return e[1]}function ry(e){return Nn(e)}function oy(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]]:Jn(t,cs(n,r,s))}}function iy(e){let t=e[2],[n,r]=e[3],o=u.IsEqual(u.Keys(r).length,0)?{}:{patternProperties:r};return{[e[1]]:cs(t,n,o)}}function ay(e){return{[e[1]]:Jn(e[2],e[4])}}function my(e){return{[e[1]]:e[3]}}function uy(e){return null}function py(e){return Nn(e)}function cy(e){return e[1]}function ly(e){let[t,n]=[e[0],e[1]];return xy(l.Assign(t,hh(n)[0]))}var dy=m(()=>{v();R();Xi();so()});var qn=m(()=>{Kr()});function gs(e){return re(e.length,2)}function Y(e,t,n){return gs(e)?t(e[0],e[1]):n()}var At=m(()=>{qn()});function pR(e,t){return re(t.indexOf(e),0)?[e,t.slice(e.length)]:[]}function Ee(e,t){for(let n=0;n<e.length;n++){let r=pR(e[n],t);if(gs(r))return r}return[]}var Sn=m(()=>{At();qn()});function kp(e,t){return Array.from({length:t-e+1},(n,r)=>String.fromCharCode(e+r))}var hy,Tp,Ep,io,yy,ao,or,ha,by,ya,it=m(()=>{hy=[...kp(97,122),...kp(65,90)],Tp="0",Ep=kp(49,57),io=[Tp,...Ep],yy=" ",ao=`
|
|
12
|
-
`,or="_",ha=".",by="$",ya="-"});function wy(e){let t=e.indexOf(lR);return re(t,-1)?"":e.slice(t+2)}function ky(e){let t=e.indexOf(ao);return re(t,-1)?"":e.slice(t)}function dR(e){return e.replace(/^[ \t\r\f\v]+/,"")}function ba(e){let t=dR(e);return t.startsWith($y)?ba(wy(t.slice(2))):t.startsWith(Iy)?ba(ky(t.slice(2))):t}function Je(e){let t=e.trimStart();return t.startsWith($y)?Je(wy(t.slice(2))):t.startsWith(Iy)?Je(ky(t.slice(2))):t}var Iy,$y,lR,Pn=m(()=>{qn();it();Iy="//",$y="/*",lR="*/"});function Ia(e,t){return Y(Ee([e],t),(n,r)=>[n,r],()=>["",t])}var vp=m(()=>{At();Sn()});function fR(e,t){return e.includes(t)}function mo(e,t,n,r=""){return Y(Ee(e,n),(o,s)=>fR(t,o)?mo(e,t,s,r):mo(e,t,s,`${r}${o}`),()=>[r,n])}var Sp=m(()=>{At();Sn()});function gR(e){return Ee(Ep,e)}function hR(e){return mo(xR,[or],e)}function yR(e){return Y(Ee([Tp],e),(t,n)=>[t,n],()=>Y(gR(e),(t,n)=>Y(hR(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[]))}function $a(e){return yR(Je(e))}var xR,wa=m(()=>{At();Pn();Sn();Sp();it();it();it();it();xR=[...io,or]});function bR(e){return Ia(ya,e)}function IR(e){return Y(bR(e),(t,n)=>Y($a(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Ty(e){return IR(Je(e))}var Pp=m(()=>{At();Pn();vp();it();wa()});function $R(e){return Y(Ty(e),(t,n)=>Y(Ee(["n"],n),(r,o)=>[`${t}`,o],()=>[]),()=>[])}function Ap(e){return $R(e)}var Ey=m(()=>{At();Sn();Pp()});function Rp(e,t){return Ee([e],t)}function f(e,t){return re(e,"")?["",t]:e.startsWith(ao)?Rp(e,ba(t)):e.startsWith(yy)?Rp(e,t):Rp(e,Je(t))}var vy=m(()=>{qn();Pn();Pn();Sn();it();it()});function wR(e){return Ee(Sy,e)}function Py(e,t=""){return Y(Ee(kR,e),(n,r)=>Py(r,`${t}${n}`),()=>[t,e])}function TR(e){return Y(wR(e),(t,n)=>Y(Py(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Pe(e){return TR(Je(e))}var Sy,kR,Ay=m(()=>{At();Pn();Sn();it();it();it();it();Sy=[...hy,or,by];kR=[...Sy,...io]});function vR(e){return gs(Ee([ha],e))}function Ry(e){return Y(mo(ER,[or],e),(t,n)=>re(t,"")?[]:[t,n],()=>[])}function SR(e){return Y(Ee([ha],e),(t,n)=>Y(Ry(n),(r,o)=>[`0${t}${r}`,o],()=>[]),()=>[])}function PR(e){return Y($a(e),(t,n)=>Y(Ee([ha],n),(r,o)=>Y(Ry(o),(s,a)=>[`${t}${r}${s}`,a],()=>[`${t}`,o]),()=>[`${t}`,n]),()=>[])}function AR(e){return vR(e)?SR(e):PR(e)}function Oy(e){return AR(Je(e))}var ER,Op=m(()=>{qn();At();Pn();Sn();Sp();it();it();wa();ER=[...io,or]});function RR(e){return Ia(ya,e)}function OR(e){return Y(RR(e),(t,n)=>Y(Oy(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function ka(e){return OR(Je(e))}var My=m(()=>{At();Pn();vp();it();Op()});var Cy=m(()=>{qn()});function MR(e){return re(e,"")?[]:[e.slice(0,1),e.slice(1)]}function Ly(e,t){return gi(e,(n,r)=>t.startsWith(n)?!0:Ly(r,t),()=>!1)}function sr(e,t,n=""){return Y(MR(t),(r,o)=>Ly(e,t)?[n,t]:sr(e,o,`${n}${r}`),()=>[])}var Ta=m(()=>{At();qn()});function CR(e,t,n){return Y(Ee([e],n),(r,o)=>Y(sr([t],o),(s,a)=>Y(Ee([t],a),(p,c)=>[`${s}`,c],()=>[]),()=>[]),()=>[])}function LR(e,t,n){return Y(Ee([e],n),(r,o)=>Y(sr([ao,t],o),(s,a)=>Y(Ee([t],a),(p,c)=>[`${s}`,c],()=>[]),()=>[]),()=>[])}function Fy(e,t,n,r){return n?CR(e,t,Je(r)):LR(e,t,Je(r))}var Mp=m(()=>{At();Pn();it();Sn();Ta()});function FR(e,t){return Ee(e,t)}function jR(e,t){return Fy(e,e,!1,t)}function DR(e,t){return Y(FR(e,t),(n,r)=>jR(n,`${n}${r}`),()=>[])}function Ea(e,t){return DR(e,Je(t))}var jy=m(()=>{At();Sn();Pn();Mp()});function Dy(e,t){return Y(sr(e,t),(n,r)=>re(n,"")?[]:[n,r],()=>[])}var Ny=m(()=>{qn();At();Ta()});var qy=m(()=>{Ey();vy();Ay();Pp();My();Cy();Mp();jy();wa();Op();Ny();Ta()});var i,qR,_R,UR,KR,Ky,Gy,GR,Fp,Wy,WR,zR,BR,zy,By,Hy,HR,VR,JR,Vy,YR,XR,ZR,QR,eO,Jy,tO,nO,rO,Cp,Yy,jp,oO,sO,iO,aO,mO,uO,pO,Xy,cO,lO,dO,fO,Zy,Qy,eb,tb,va,gO,xO,hO,yO,oe,bO,IO,$O,wO,nb,rb,ob,sb,Sa,ib,kO,Dp,TO,EO,_y,ab,mb,vO,SO,PO,AO,RO,OO,Uy,ub,pb,cb,MO,CO,LO,FO,jO,DO,NO,qO,_O,UO,KO,GO,WO,lb,db,zO,fb,gb,BO,HO,Np,VO,JO,YO,XO,ZO,QO,eM,tM,xb,Lp,qp,Tg,hb,nM,yb,rM,oM,sM,iM,aM,bb,Ib,mM,_p,uM,$b,Mi=m(()=>{dy();qy();i=(e,t,n=()=>[])=>e.length===2?t(e):n(),qR=e=>i(i(Pe(e),([t,n])=>i(f("extends",n),([r,o])=>i(oe(o),([s,a])=>i(f("=",a),([p,c])=>i(oe(c),([h,I])=>[[t,r,s,p,h],I]))))),([t,n])=>[bx(t),n]),_R=e=>i(i(Pe(e),([t,n])=>i(f("extends",n),([r,o])=>i(oe(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Ix(t),n]),UR=e=>i(i(Pe(e),([t,n])=>i(f("=",n),([r,o])=>i(oe(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[$x(t),n]),KR=e=>i(Pe(e),([t,n])=>[wx(t),n]),Ky=e=>i(i(qR(e),([t,n])=>[t,n],()=>i(_R(e),([t,n])=>[t,n],()=>i(UR(e),([t,n])=>[t,n],()=>i(KR(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),Gy=(e,t=[])=>i(i(f(",",e),([n,r])=>i(Ky(r),([o,s])=>[[n,o],s])),([n,r])=>Gy(r,[...t,n]),()=>[t,e]),GR=e=>i(i(i(Ky(e),([t,n])=>i(Gy(n),([r,o])=>i(i(f(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[kx(t),n]),Fp=e=>i(i(f("<",e),([t,n])=>i(GR(n),([r,o])=>i(f(">",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Tx(t),n]),Wy=(e,t=[])=>i(i(f(",",e),([n,r])=>i(oe(r),([o,s])=>[[n,o],s])),([n,r])=>Wy(r,[...t,n]),()=>[t,e]),WR=e=>i(i(i(oe(e),([t,n])=>i(Wy(n),([r,o])=>i(i(f(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Ex(t),n]),zR=e=>i(i(f("<",e),([t,n])=>i(WR(n),([r,o])=>i(f(">",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[vx(t),n]),BR=e=>i(i(Pe(e),([t,n])=>i(zR(n),([r,o])=>[[t,r],o])),([t,n])=>[Sx(t),n]),zy=e=>i(i(i(f(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Px(t),n]),By=e=>i(f("string",e),([t,n])=>[Ax(t),n]),Hy=e=>i(f("number",e),([t,n])=>[Rx(t),n]),HR=e=>i(f("boolean",e),([t,n])=>[Ox(t),n]),VR=e=>i(f("undefined",e),([t,n])=>[Mx(t),n]),JR=e=>i(f("null",e),([t,n])=>[Cx(t),n]),Vy=e=>i(f("integer",e),([t,n])=>[Lx(t),n]),YR=e=>i(f("bigint",e),([t,n])=>[Fx(t),n]),XR=e=>i(f("unknown",e),([t,n])=>[jx(t),n]),ZR=e=>i(f("any",e),([t,n])=>[Dx(t),n]),QR=e=>i(f("object",e),([t,n])=>[Nx(t),n]),eO=e=>i(f("never",e),([t,n])=>[qx(t),n]),Jy=e=>i(f("symbol",e),([t,n])=>[_x(t),n]),tO=e=>i(f("void",e),([t,n])=>[Ux(t),n]),nO=e=>i(f("this",e),([t,n])=>[Kx(t),n]),rO=e=>i(i(f("${",e),([t,n])=>i(oe(n),([r,o])=>i(f("}",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Hx(t),n]),Cp=e=>i(sr(["${","`"],e),([t,n])=>[Vx(t),n]),Yy=e=>i(i(i(Cp(e),([t,n])=>i(rO(n),([r,o])=>i(Yy(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i(i(Cp(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(Cp(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[Jx(t),n]),jp=e=>i(i(f("`",e),([t,n])=>i(Yy(n),([r,o])=>i(f("`",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Yx(t),n]),oO=e=>i(jp(e),([t,n])=>[Xx(t),n]),sO=e=>i(i(i(f("if",e),([t,n])=>i(oe(n),([r,o])=>i(f("then",o),([s,a])=>i(oe(a),([p,c])=>i(f("else",c),([h,I])=>i(oe(I),([T,M])=>[[t,r,s,p,h,T],M])))))),([t,n])=>[t,n],()=>i(i(f("if",e),([t,n])=>i(oe(n),([r,o])=>i(f("then",o),([s,a])=>i(oe(a),([p,c])=>[[t,r,s,p],c])))),([t,n])=>[t,n],()=>[])),([t,n])=>[Zx(t),n]),iO=e=>i(Ap(e),([t,n])=>[Gx(t),n]),aO=e=>i(i(f("true",e),([t,n])=>[t,n],()=>i(f("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[Wx(t),n]),mO=e=>i(ka(e),([t,n])=>[zx(t),n]),uO=e=>i(Ea(["'",'"'],e),([t,n])=>[Bx(t),n]),pO=e=>i(i(i(f("keyof",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Qx(t),n]),Xy=(e,t=[])=>i(i(i(f("[",e),([n,r])=>i(oe(r),([o,s])=>i(f("]",s),([a,p])=>[[n,o,a],p]))),([n,r])=>[n,r],()=>i(i(f("[",e),([n,r])=>i(f("]",r),([o,s])=>[[n,o],s])),([n,r])=>[n,r],()=>[])),([n,r])=>Xy(r,[...t,n]),()=>[t,e]),cO=e=>i(Xy(e),([t,n])=>[eh(t),n]),lO=e=>i(i(i(f("extends",e),([t,n])=>i(oe(n),([r,o])=>i(f("?",o),([s,a])=>i(oe(a),([p,c])=>i(f(":",c),([h,I])=>i(oe(I),([T,M])=>[[t,r,s,p,h,T],M])))))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[th(t),n]),dO=e=>i(i(i(f("(",e),([t,n])=>i(oe(n),([r,o])=>i(f(")",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i(By(e),([t,n])=>[t,n],()=>i(Hy(e),([t,n])=>[t,n],()=>i(HR(e),([t,n])=>[t,n],()=>i(VR(e),([t,n])=>[t,n],()=>i(JR(e),([t,n])=>[t,n],()=>i(Vy(e),([t,n])=>[t,n],()=>i(YR(e),([t,n])=>[t,n],()=>i(XR(e),([t,n])=>[t,n],()=>i(ZR(e),([t,n])=>[t,n],()=>i(QR(e),([t,n])=>[t,n],()=>i(eO(e),([t,n])=>[t,n],()=>i(Jy(e),([t,n])=>[t,n],()=>i(tO(e),([t,n])=>[t,n],()=>i(nO(e),([t,n])=>[t,n],()=>i(iO(e),([t,n])=>[t,n],()=>i(aO(e),([t,n])=>[t,n],()=>i(mO(e),([t,n])=>[t,n],()=>i(uO(e),([t,n])=>[t,n],()=>i(oO(e),([t,n])=>[t,n],()=>i(sO(e),([t,n])=>[t,n],()=>i(TO(e),([t,n])=>[t,n],()=>i(SO(e),([t,n])=>[t,n],()=>i(CO(e),([t,n])=>[t,n],()=>i(MO(e),([t,n])=>[t,n],()=>i(DO(e),([t,n])=>[t,n],()=>i(BR(e),([t,n])=>[t,n],()=>i(NO(e),([t,n])=>[t,n],()=>[])))))))))))))))))))))))))))),([t,n])=>[nh(t),n]),fO=e=>i(i(i(f("with",e),([t,n])=>i(fb(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[rh(t),n]),Zy=e=>i(i(pO(e),([t,n])=>i(dO(n),([r,o])=>i(cO(o),([s,a])=>i(lO(a),([p,c])=>i(fO(c),([h,I])=>[[t,r,s,p,h],I]))))),([t,n])=>[oh(t),n]),Qy=e=>i(i(i(f("&",e),([t,n])=>i(Zy(n),([r,o])=>i(Qy(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),eb=e=>i(i(Zy(e),([t,n])=>i(Qy(n),([r,o])=>[[t,r],o])),([t,n])=>[sh(t),n]),tb=e=>i(i(i(f("|",e),([t,n])=>i(eb(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]),va=e=>i(i(eb(e),([t,n])=>i(tb(n),([r,o])=>[[t,r],o])),([t,n])=>[ih(t),n]),gO=e=>i(i(f("readonly",e),([t,n])=>i(va(n),([r,o])=>[[t,r],o])),([t,n])=>[ah(t),n]),xO=e=>i(i(f("|",e),([t,n])=>i(va(n),([r,o])=>[[t,r],o])),([t,n])=>[mh(t),n]),hO=e=>i(i(Fp(e),([t,n])=>i(f("=",n),([r,o])=>i(oe(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[uh(t),n]),yO=e=>i(i(i(f("infer",e),([t,n])=>i(Pe(n),([r,o])=>i(f("extends",o),([s,a])=>i(va(a),([p,c])=>[[t,r,s,p],c])))),([t,n])=>[t,n],()=>i(i(f("infer",e),([t,n])=>i(Pe(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>[])),([t,n])=>[ph(t),n]),oe=e=>i(i(yO(e),([t,n])=>[t,n],()=>i(xO(e),([t,n])=>[t,n],()=>i(gO(e),([t,n])=>[t,n],()=>i(va(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),bO=e=>i(ka(e),([t,n])=>[ch(t),n]),IO=e=>i(Pe(e),([t,n])=>[t,n]),$O=e=>i(Ea(["'",'"'],e),([t,n])=>[t,n]),wO=e=>i(i(f("[",e),([t,n])=>i(Pe(n),([r,o])=>i(f(":",o),([s,a])=>i(i(Vy(a),([p,c])=>[p,c],()=>i(Hy(a),([p,c])=>[p,c],()=>i(By(a),([p,c])=>[p,c],()=>i(Jy(a),([p,c])=>[p,c],()=>[])))),([p,c])=>i(f("]",c),([h,I])=>[[t,r,s,p,h],I]))))),([t,n])=>[lh(t),n]),nb=e=>i(i(bO(e),([t,n])=>[t,n],()=>i(IO(e),([t,n])=>[t,n],()=>i($O(e),([t,n])=>[t,n],()=>i(wO(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),rb=e=>i(i(i(f("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[dh(t),n]),ob=e=>i(i(i(f("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[fh(t),n]),sb=e=>i(i(rb(e),([t,n])=>i(nb(n),([r,o])=>i(ob(o),([s,a])=>i(f(":",a),([p,c])=>i(oe(c),([h,I])=>[[t,r,s,p,h],I]))))),([t,n])=>[gh(t),n]),Sa=e=>i(i(i(f(",",e),([t,n])=>i(f(`
|
|
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]),Ib=(e,t=[])=>i(i(bb(e),([n,r])=>i(_p(r),([o,s])=>[[n,o],s])),([n,r])=>Ib(r,[...t,n]),()=>[t,e]),mM=e=>i(i(i(_p(e),([t,n])=>i(Ib(n),([r,o])=>i(i(bb(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]),_p=e=>i(i(aM(e),([t,n])=>i(i(rM(n),([r,o])=>[r,o],()=>i(oM(n),([r,o])=>[r,o],()=>i(sM(n),([r,o])=>[r,o],()=>i(iM(n),([r,o])=>[r,o],()=>[])))),([r,o])=>i(zy(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[cy(t),n]),uM=e=>i(i(_p(e),([t,n])=>i(mM(n),([r,o])=>[[t,r],o])),([t,n])=>[ly(t),n]),$b=e=>i(i(uM(e),([t,n])=>[t,n],()=>i(hO(e),([t,n])=>[t,n],()=>i(oe(e),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n])});function wb(e){let t=jp(`\`${e}\``);return u.IsEqual(t.length,2)?t[0]:De()}var Up=m(()=>{$n();R();Mi()});function cM(e){return e.join("|")}function lM(e){return e.slice(1,e.length-1)}function dM(e,t,n){return ir(t,`${n}${e}`)}function fM(e,t){return ir(e,`${t}${yg}`)}function gM(e,t){return ir(e,`${t}${Pi}`)}function xM(e,t){return ir(e,`${t}${Ri}`)}function hM(e,t){return xs(V([ee("false"),ee("true")]),e,t)}function yM(e,t){return ir(e,`${t}${Oi}`)}function bM(e,t,n){return ir(t,`${n}${lM(e)}`)}function IM(e,t,n){let r=hs(e,{});return xs(r,t,n)}function $M(e,t,n){let r=gt(e);return xs(r,t,n)}function kb(e,t,n,r=[]){return u.ShiftLeft(e,(o,s)=>kb(s,t,n,[...r,xs(o,[],"")]),()=>ir(t,`${n}(${cM(r)})`))}function xs(e,t,n){return tt(e)?$M(e.enum,t,n):lt(e)?gM(t,n):ue(e)?dM(e.const,t,n):kn(e)?fM(t,n):Bt(e)?hM(t,n):Me(e)?xM(t,n):ft(e)?yM(t,n):Se(e)?bM(e.pattern,t,n):Eb(e)?IM(e.parameters[0],t,n):L(e)?kb(e.anyOf,t,n):af}function ir(e,t){return u.ShiftLeft(e,(n,r)=>xs(n,r,t),()=>t)}function wM(e){return`^${ir(e,"")}$`}function Tb(e){let t=wM(e);return Fi(t)}var Kp=m(()=>{R();rn();Oe();J();wt();kr();Vt();dt();Tn();Xn();Be();ji();H();Pa()});function hs(e,t){return z(e)?l.Update(Tb(e),{},t):Zi(e,t)}function vb(e,t,n,r){let o=jt(e,t,n);return hs(o,r)}var Pa=m(()=>{v();wt();Kp();N()});function Zi(e,t={}){return j("TemplateLiteral",[e],t)}function Eb(e){return Fe(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"TemplateLiteral")}function Sb(e){return hs(e,{})}function kM(e){let t=wb(e);return Sb(t)}function Pb(e,t={}){let n=u.IsString(e)?kM(e):Sb(e);return l.Update(n,{},t)}function Se(e){return C(e,"TemplateLiteral")}var wt=m(()=>{Ho();R();B();se();Up();Pa()});var G={};Lt(G,{ExtendsFalse:()=>W,ExtendsTrue:()=>P,ExtendsUnion:()=>Gp,IsExtendsFalse:()=>TM,IsExtendsTrue:()=>Rb,IsExtendsTrueLike:()=>uo,IsExtendsUnion:()=>Ab,Match:()=>Ie});function Gp(e){return l.Create({"~kind":"ExtendsUnion"},{inferred:e})}function Ab(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"inferred")&&u.IsEqual(e["~kind"],"ExtendsUnion")&&u.IsObject(e.inferred)}function P(e){return l.Create({"~kind":"ExtendsTrue"},{inferred:e})}function Rb(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"inferred")&&u.IsEqual(e["~kind"],"ExtendsTrue")&&u.IsObject(e.inferred)}function W(){return l.Create({"~kind":"ExtendsFalse"},{})}function TM(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.IsEqual(e["~kind"],"ExtendsFalse")}function uo(e){return Ab(e)||Rb(e)}function Ie(e,t,n){return uo(e)?t(e.inferred):n()}var ye=m(()=>{R();v()});function EM(e,t,n,r){return Ie(ne(e,n,r),o=>P(l.Assign(l.Assign(e,o),{[t]:n})),()=>W())}function vM(e,t){return P(e)}function SM(e,t,n,r,o){return Ie(ne(e,t,n),s=>Ie(ne(s,t,r),a=>P(a),()=>W()),()=>Ie(ne(e,t,o),s=>P(s),()=>W()))}function PM(e,t,n){let r=gt(n);return ne(e,t,r)}function Ob(e,t,n){return u.ShiftLeft(n,(r,o)=>Ie(ne(e,t,r),s=>Ob(s,t,o),()=>W()),()=>P(e))}function AM(e,t,n){let r=st(n);return ne(e,t,r)}function Mb(e,t,n){return u.ShiftLeft(n,(r,o)=>Ie(ne(e,t,r),s=>P(s),()=>Mb(e,t,o)),()=>W())}function pe(e,t,n){return Te(n)?vM(e,t):ve(n)?SM(e,t,n.if,n.then,n.else):tt(n)?PM(e,t,n.enum):Re(n)?EM(e,n.name,t,n.extends):Q(n)?Ob(e,t,n.allOf):Se(n)?AM(e,t,n.pattern):L(n)?Mb(e,t,n.anyOf):Ae(n)?P(e):W()}var at=m(()=>{R();v();bt();St();rn();zt();je();wt();J();Qe();Et();ye();H();H()});function Cb(e,t,n){return Re(n)?pe(e,t,n):Te(n)?P(e):Ae(n)?P(e):Gp(e)}var Lb=m(()=>{zt();bt();Qe();at();ye()});function RM(e,t){let n=Ir(e),r=Ir(t);return n&&r||!n&&r?!0:!(n&&!r)}function Fb(e,t,n,r){return $e(r)?RM(t,r)?ne(e,n,r.items):W():pe(e,t,r)}var jb=m(()=>{ct();Yo();at();Et();ye()});function Db(e,t,n){return kn(n)?P(e):pe(e,t,n)}var Nb=m(()=>{kr();at();ye()});function qb(e,t,n){return Bt(n)?P(e):pe(e,t,n)}var _b=m(()=>{Xn();at();ye()});function OM(e,t,n,r,o){let s=Re(r)?t:r,a=Re(r)?r:t,p=ot(t),c=ot(r);return!p&&c?W():Ie(ne(e,s,a),h=>ys(h,n,o),()=>W())}function MM(e,t,n,r){return u.ShiftLeft(r,(o,s)=>OM(e,t,n,o,s),()=>ot(t)?P(e):W())}function CM(e,t,n){return u.ShiftLeft(t,(r,o)=>MM(e,r,o,n),()=>P(e))}function ys(e,t,n){return CM(e,t,n)}var Wp=m(()=>{R();zt();Yn();Et();ye()});function Aa(e,t,n){return vn(n)?P(e):ne(e,t,n)}var zp=m(()=>{Pr();Et();ye()});function Ub(e,t,n,r){return Te(r)?P(e):Ae(r)?P(e):_e(r)?Ie(ys(e,t,r.parameters),o=>Aa(o,n,r.instanceType),()=>W()):W()}var Kb=m(()=>{bt();Kt();Qe();ye();Wp();zp()});function Gb(e,t,n,r,o){return Ie(ne(e,t,o),()=>ne(e,n,o),()=>ne(e,r,o))}var Wb=m(()=>{Et();ye()});function zb(e,t,n){let r=gt(t);return ne(e,r,n)}var Bb=m(()=>{Et();H()});function Hb(e,t,n,r){return Te(r)?P(e):Ae(r)?P(e):Ue(r)?Ie(ys(e,t,r.parameters),o=>Aa(o,n,r.returnType),()=>W()):W()}var Vb=m(()=>{bt();Gt();Qe();ye();Wp();zp()});function Jb(e,t,n){return lt(n)?P(e):Me(n)?P(e):pe(e,t,n)}var Yb=m(()=>{Tn();dt();at();ye()});function Xb(e,t,n){let r=we(t);return ne(e,r,n)}var Zb=m(()=>{Et();bs()});function Ra(e,t,n){return t===n?P(e):W()}function LM(e,t,n){return ue(n)?Ra(e,t,n.const):kn(n)?P(e):pe(e,ee(t),n)}function FM(e,t,n){return ue(n)?Ra(e,t,n.const):Bt(n)?P(e):pe(e,ee(t),n)}function jM(e,t,n){return ue(n)?Ra(e,t,n.const):Me(n)?P(e):pe(e,ee(t),n)}function DM(e,t,n){return ue(n)?Ra(e,t,n.const):ft(n)?P(e):pe(e,ee(t),n)}function Qb(e,t,n){return u.IsBigInt(t.const)?LM(e,t.const,n):u.IsBoolean(t.const)?FM(e,t.const,n):u.IsNumber(t.const)?jM(e,t.const,n):u.IsString(t.const)?DM(e,t.const,n):De()}var eI=m(()=>{R();Xu();Oe();kr();Xn();dt();Vt();at();ye()});function tI(e,t,n){return Re(n)?pe(e,t,n):P(e)}var nI=m(()=>{zt();at();ye()});function rI(e,t,n){return Vr(n)?P(e):pe(e,t,n)}var oI=m(()=>{Jr();at();ye()});function sI(e,t,n){return Me(n)?P(e):pe(e,t,n)}var iI=m(()=>{dt();at();ye()});function NM(e,t,n){return ot(t)?ot(n)?P(e):W():P(e)}function qM(e,t,n){return Re(n)&&nn(n.extends)?W():Ie(ne(e,t,n),r=>NM(r,t,n),()=>W())}function _M(e,t){return e.reduce((n,r)=>r in t?uo(t[r])?{...n,...t[r].inferred}:De():De(),{})}function UM(e,t,n){let r={};for(let a of u.Keys(n))r[a]=a in t?qM({},t[a],n[a]):ot(n[a])?Re(n[a])?P(l.Assign(e,{[n[a].name]:n[a].extends})):P(e):W();let o=u.Values(r).every(a=>uo(a)),s=o?_M(u.Keys(r),r):{};return o?P(s):W()}function KM(e,t,n){let r=UM(e,t,n);return uo(r)?P(l.Assign(e,r.inferred)):W()}function GM(e,t,n){return KM(e,t,n)}function WM(e,t){return u.Keys(t).reduce((n,r)=>({...n,[r]:u.HasPropertyKey(e,r)?L(n[r])?V([...n[r].anyOf,t[r]]):V([e[r],t[r]]):t[r]}),e)}function aI(e,t,n,r){return u.ShiftLeft(t,(o,s)=>Ie(ne({},e[o],n),a=>aI(e,s,n,WM(r,a)),()=>W()),()=>P(r))}function zM(e,t,n,r){let o=u.Keys(t);return aI(t,o,r,e)}function mI(e,t,n){return rt(n)?zM(e,t,Yt(n),xt(n)):me(n)?GM(e,t,n.properties):pe(e,K(t),n)}var uI=m(()=>{$n();v();R();Yn();zt();Be();ce();Ve();J();Et();at();ye()});function BM(e,t){return u.IsEqual(u.Keys(t).length,0)?P(e):W()}function HM(e,t,n,r,o){return ne(e,n,o)}function pI(e,t,n,r){return rt(r)?HM(e,Bi(t),n,Bi(Yt(r)),xt(r)):me(r)?BM(e,r.properties):Te(r)?P(e):Ae(r)?P(e):W()}var cI=m(()=>{R();bt();Qe();ce();Ve();Et();ye()});function lI(e,t,n){return ft(n)?P(e):pe(e,t,n)}var dI=m(()=>{Vt();at();ye()});function fI(e,t,n){return Zn(n)?P(e):pe(e,t,n)}var gI=m(()=>{Er();at();ye()});function xI(e,t,n){let r=st(t);return ne(e,r,n)}var hI=m(()=>{Et();H()});function Bp(e,t){return l.Create({"~kind":"Inferrable"},{name:e,type:t},{})}function Is(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 Hp(e){return rr(e)?Re(e.items)?$e(e.items.extends)?Bp(e.items.name,e.items.extends.items):Ae(e.items.extends)?Bp(e.items.name,e.items.extends):void 0:De():void 0}function Oa(e){return Re(e)?Bp(e.name,e.extends):void 0}function Vp(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Ie(ne({},r,t),()=>Vp(o,t,[...n,r]),()=>{}),()=>n)}function yI(e,t,n,r){let o=Vp(n,r);return u.IsArray(o)?P(l.Assign(e,{[t]:Ce(o)})):W()}function Ma(e,t,n,r){let o=Vp(n,r);return u.IsArray(o)?P(l.Assign(e,{[t]:V(o)})):W()}var Jp=m(()=>{$n();v();R();ct();Qe();Ne();Et();J();zt();eo();ye()});function VM(e){return[...e].reverse()}function Yp(e,t){return t?VM(e):e}function JM(e){let t=e.length>0?e[0]:void 0,n=Fe(t)?Hp(t):void 0;return Fe(n)}function YM(e,t,n,r,o,s){return Ie(ne(e,n,o),a=>bI(a,t,r,s),()=>W())}function XM(e,t,n,r,o){let s=Hp(r);return Is(s)?yI(e,s.name,Yp(n,t),s.type):u.ShiftLeft(n,(a,p)=>YM(e,t,a,p,r,o),()=>W())}function ZM(e,t,n,r){return u.ShiftLeft(r,(o,s)=>XM(e,t,n,o,s),()=>u.IsEqual(n.length,0)?P(e):W())}function bI(e,t,n,r){return ZM(e,t,n,r)}function QM(e,t,n){let r=ar(e,be([],[]),n),o=JM(r);return bI(e,o,Yp(t,o),Yp(r,o))}function II(e,t,n){let r=Oa(n);return Is(r)?Ma(e,r.name,t,r.type):u.ShiftLeft(t,(o,s)=>Ie(ne(e,o,n),a=>II(a,s,n),()=>W()),()=>P(e))}function $I(e,t,n){let r=ar(e,be([],[]),t);return ge(n)?QM(e,r,n.items):$e(n)?II(e,r,n.items):pe(e,Ce(r),n)}var wI=m(()=>{R();B();ct();Ne();Et();at();ye();N();N();Jp()});function kI(e,t,n){return vn(n)?P(e):no(n)?P(e):pe(e,t,n)}var TI=m(()=>{ro();Pr();at();ye()});function EI(e,t,n){return u.ShiftLeft(n,(r,o)=>Ie(ne(e,t,r),s=>P(s),()=>EI(e,t,o)),()=>W())}function Xp(e,t,n){return u.ShiftLeft(t,(r,o)=>Ie(EI(e,r,n),s=>Xp(s,o,n),()=>W()),()=>P(e))}function vI(e,t,n){let r=Oa(n);return Is(r)?Ma(e,r.name,t,r.type):L(n)?Xp(e,t,n.anyOf):Xp(e,t,[n])}var SI=m(()=>{R();J();Et();ye();Jp()});function PI(e,t,n){return Re(n)?pe(e,t,n):Te(n)?P(e):Ae(n)?P(e):W()}var AI=m(()=>{bt();Qe();zt();at();ye()});function RI(e,t,n){return vn(n)?P(e):pe(e,t,n)}var OI=m(()=>{Pr();at();ye()});function ne(e,t,n){return Te(t)?Cb(e,t,n):$e(t)?Fb(e,t,t.items,n):kn(t)?Db(e,t,n):Bt(t)?qb(e,t,n):_e(t)?Ub(e,t.parameters,t.instanceType,n):ve(t)?Gb(e,t.if,t.then,t.else,n):tt(t)?zb(e,t.enum,n):Ue(t)?Hb(e,t.parameters,t.returnType,n):lt(t)?Jb(e,t,n):Q(t)?Xb(e,t.allOf,n):ue(t)?Qb(e,t,n):nn(t)?tI(e,t,n):Vr(t)?rI(e,t,n):Me(t)?sI(e,t,n):me(t)?mI(e,t.properties,n):rt(t)?pI(e,Yt(t),xt(t),n):ft(t)?lI(e,t,n):Zn(t)?fI(e,t,n):Se(t)?xI(e,t.pattern,n):ge(t)?$I(e,t.items,n):no(t)?kI(e,t,n):L(t)?vI(e,t.anyOf,n):Ae(t)?PI(e,t,n):vn(t)?RI(e,t,n):W()}var Et=m(()=>{Lb();jb();Nb();_b();Kb();Wb();Bb();Vb();Yb();Zb();eI();nI();oI();iI();uI();cI();dI();gI();hI();wI();TI();SI();AI();OI();bt();ct();kr();Xn();Kt();St();rn();Gt();Tn();je();Oe();Be();Jr();dt();ce();Ve();Vt();Er();wt();Ne();ro();Qe();J();Pr();ye()});function eC(e,t){return we([...e,K(t)])}function Zp(e,t,n){return z(e)?l.Update(eC(e,t),{},n):cs(e,t,n)}function MI(e,t,n,r,o){let s=jt(e,t,n),a=$s(e,t,r);return Zp(s,a,o)}var Ca=m(()=>{v();ce();H();so();N();N();N()});function cs(e,t,n={}){return j("Interface",[e,t],n)}function po(e){return Fe(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"Interface")}function CI(e,t,n={}){return Zp(e,t,n)}var ws=m(()=>{R();B();se();Ca()});function tC(e,t,n){return e.includes(n)?!0:ks([...e,n],t,t[n])}function LI(e,t,n){let r=$i(n);return Rr(e,t,r)}function Rr(e,t,n){return u.ShiftLeft(n,(r,o)=>ks(e,t,r)?!0:Rr(e,t,o),()=>!1)}function ks(e,t,n){return Ke(n)?tC(e,t,n.$ref):$e(n)?ks(e,t,n.items):_e(n)?Rr(e,t,[...n.parameters,n.instanceType]):Ue(n)?Rr(e,t,[...n.parameters,n.returnType]):po(n)?LI(e,t,n.parameters[1]):Q(n)?Rr(e,t,n.allOf):me(n)?LI(e,t,n.properties):L(n)?Rr(e,t,n.anyOf):ge(n)?Rr(e,t,n.items):rt(n)?ks(e,t,xt(n)):!1}function FI(e,t,n){return ks(e,t,n)}var Qp=m(()=>{R();ct();Kt();Gt();je();ce();yr();Ve();Ne();J();Wt();ws()});function nC(e,t){return t.reduce((n,r)=>FI([r],e,e[r])?[...n,r]:n,[])}function jI(e){let t=Ii(e);return nC(e,t)}var ec=m(()=>{yr();Qp()});function rC(e,t,n){return n.includes(t)?n:t in e?Ts(e,e[t],[...n,t]):De()}function DI(e,t,n){let r=$i(t);return co(e,r,n)}function co(e,t,n){return t.reduce((r,o)=>Ts(e,o,r),n)}function Ts(e,t,n){return Ke(t)?rC(e,t.$ref,n):$e(t)?Ts(e,t.items,n):_e(t)?co(e,[...t.parameters,t.instanceType],n):Ue(t)?co(e,[...t.parameters,t.returnType],n):po(t)?DI(e,t.parameters[1],n):Q(t)?co(e,t.allOf,n):me(t)?DI(e,t.properties,n):L(t)?co(e,t.anyOf,n):ge(t)?co(e,t.items,n):rt(t)?Ts(e,xt(t),n):n}function NI(e,t,n){return Ts(e,n,[t])}var tc=m(()=>{$n();ct();Kt();Gt();je();ce();yr();Ve();Ne();J();Wt();ws()});function oC(e){return Wr()}function sC(e){return u.Keys(e).reduce((t,n)=>({...t,[n]:Or(e[n])}),{})}function Es(e){return e.reduce((t,n)=>[...t,Or(n)],[])}function Or(e){return Ke(e)?oC(e.$ref):$e(e)?Ft(Or(e.items),bi(e)):_e(e)?xn(Es(e.parameters),Or(e.instanceType)):Ue(e)?hn(Es(e.parameters),Or(e.returnType)):Q(e)?$t(Es(e.allOf)):me(e)?K(sC(e.properties)):rt(e)?zi(Qr(e),Or(xt(e))):L(e)?V(Es(e.anyOf)):ge(e)?Ce(Es(e.items)):e}function iC(e,t){return t in e?Or(e[t]):He()}function qI(e){return iC(e.$defs,e.$ref)}var _I=m(()=>{R();bt();ct();Kt();Gt();je();ce();Ve();Wt();Ne();J();Qe()});function aC(e,t,n){let r=jt(e,be([],[]),t),o=$s({},be([],[]),n);return we([...r,K(o)])}function mC(e,t){return u.Keys(e).filter(r=>t.includes(r)).reduce((r,o)=>{let s=e[o],a=po(s)?aC(e,s.parameters[0],s.parameters[1]):s;return{...r,[o]:a}},{})}function UI(e,t,n){let r=NI(e,t,n),o=mC(e,r);return bn(o,t)}var nc=m(()=>{R();It();ce();tc();so();N();N();N();H()});function KI(e,t){return t in e?Ke(e[t])?KI(e,e[t].$ref):e[t]:le()}function An(e,t){return KI(e,t)}var Mr=m(()=>{Be();Wt()});var rc=m(()=>{ec();Qp();tc();_I();nc();Mr()});function GI(e){return et(e)?qI(e):wi(e)?He():e}function nt(e,t,n){let r=GI(t),o=GI(n);return ne(e,r,o)}var WI=m(()=>{It();Qe();ki();Et();rc()});var En=m(()=>{WI();ye()});function is(e,t){let n=[nt({},e,t),nt({},t,e)];return G.IsExtendsTrueLike(n[0])&&G.IsExtendsTrueLike(n[1])?os:G.IsExtendsTrueLike(n[0])&&G.IsExtendsFalse(n[1])?ss:G.IsExtendsFalse(n[0])&&G.IsExtendsTrueLike(n[1])?_i:La}var os,La,ss,_i,as=m(()=>{En();os=0,La=1,ss=2,_i=3});function oc(e,t,n=[],r=t){return u.ShiftLeft(t,(o,s)=>{let a=is(e,o);return u.IsEqual(a,ss)||u.IsEqual(a,os)?r:u.IsEqual(a,La)?oc(e,s,[...n,o],r):oc(e,s,n,r)},()=>[...n,e])}function uC(e,t,n){let r=Jt(e);return Te(r)?[r]:Ae(r)?[r]:nn(r)?Fa(t,n):me(r)?Fa(t,[...n,r]):Fa(t,oc(r,n))}function Fa(e,t=[]){return u.ShiftLeft(e,(n,r)=>uC(n,r,t),()=>t)}function bp(e){let t=Fa(e);return Zr(t)}var Ip=m(()=>{R();bt();Be();ce();Qe();as();Ki();H()});function sc(e,t){return l.Update(Jt(e),{},t)}function zI(e,t,n,r){let o=k(e,t,n);return sc(o,r)}var ja=m(()=>{v();N();H()});var bs=m(()=>{Ip();as();gp();hp();H();Ki();ja();xp()});function vs(e,t=[]){return Vn(e)&&u.IsEqual(e.action,"Conditional")?Ke(e.parameters[0])?vs(e.parameters[2],vs(e.parameters[3],[...t,e.parameters[0].$ref])):vs(e.parameters[2],vs(e.parameters[3],t)):Vn(e)&&u.IsEqual(e.action,"Mapped")&&Vn(e.parameters[1])&&u.IsEqual(e.parameters[1].action,"KeyOf")&&Ke(e.parameters[1].parameters[0])?[...t,e.parameters[1].parameters[0].$ref]:t}function pC(e,t){return e.reduce((n,r)=>[...n,t.includes(r.name)],[])}function VI(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>u.ShiftLeft(t,(s,a)=>VI(o,a,[...n,[s,r]]),()=>n),()=>n)}function cC(e){return Se(e)?st(e.pattern):tt(e)?gt(e.enum):e}function lC(e){let t=cC(e);return L(t)?[...t.anyOf]:[t]}function dC(e,t){return e.reduce((n,r)=>[...n,[...r,t]],[])}function BI(e,t){return t.reduce((n,r)=>[...n,...dC(e,r)],[])}function HI(e){return e.reduce((t,n)=>u.IsEqual(n[0],!0)?BI(t,lC(n[1])):BI(t,[n[1]]),[[]])}function JI(e,t,n){let r=vs(n),o=pC(e,r),s=VI(t,o);return Vn(n)&&u.IsEqual(n.action,"Conditional")||Vn(n)&&u.IsEqual(n.action,"Mapped")?HI(s):[t]}var YI=m(()=>{R();J();se();rn();wt();Wt();H();H()});function fC(){return["(not-resolvable)",le()]}function gC(){return["(not-generic)",le()]}function xC(e,t,n){return[e,Jn(t,n)]}function hC(e,t,n){return t in e?XI(e,t,e[t],n):fC()}function XI(e,t,n,r){return Gr(n)?xC(t,n.parameters,n.expression):Ke(n)?hC(e,n.$ref,r):gC()}function ZI(e,t,n){return XI(e,"(anonymous)",t,n)}var QI=m(()=>{Wo();Wt();Be()});function yC(e,t,n){if(Re(t)||lo(t)||G.IsExtendsTrueLike(nt({},t,n)))return;let r={parameter:e,expect:n,actual:t};throw new Error(`Argument for parameter ${e} does not satisfy constraint`,{cause:r})}function e$(e,t,n,r,o){let s=k(e,t,o);return yC(n,s,r),l.Assign(e,{[n]:s})}function bC(e,t,n,r,o){let s=k(e,t,n.extends),a=k(e,t,n.equals);return u.ShiftLeft(o,(p,c)=>ic(e$(e,t,n.name,s,p),t,r,c),()=>ic(e$(e,t,n.name,s,a),t,r,[]))}function ic(e,t,n,r){return u.ShiftLeft(n,(o,s)=>bC(e,t,o,s,r),()=>e)}function t$(e,t,n,r){return ic(e,t,n,r)}var n$=m(()=>{R();v();N();En();zt();oo()});function IC(){if(!u.IsLessThan(mc,tn.Get().maxInstantiationCount))throw Error("Type instantiation is excessively deep and possibly infinite")}function $C(){IC(),mc++,ac++}function wC(){ac--,u.IsEqual(ac,0)&&(mc=0)}function kC(e){return u.IsGreaterThan(e.callstack.length,0)?e.callstack[e.callstack.length-1]:""}function TC(e,t){return u.IsEqual(kC(e),t)}function EC(e,t,n,r,o,s){$C();try{let a=t$(e,t,r,s),p=k(a,be([...t.callstack,n.$ref],t.visited),o);return k(a,be([],[]),p)}finally{wC()}}function vC(e,t,n,r,o,s){return s.reduce((a,p)=>{let c=EC(e,t,n,r,o,p);return[...a,c]},[])}function SC(e,t,n,r,o,s){let a=JI(r,s,o),p=vC(e,t,n,r,o,a);return u.IsEqual(p.length,1)?p[0]:Tt(p)}function Da(e,t,n,r){let o=jt(e,t,r),s=ZI(e,n,r),a=s[0],p=s[1];return Gr(p)?TC(t,a)?ls(Dn(a),o):SC(e,t,Dn(a),p.parameters,p.expression,o):ls(n,o)}var ac,mc,uc=m(()=>{gr();R();oo();Wt();Wo();bs();N();N();N();YI();QI();n$();ac=0,mc=0});function ls(e,t){return l.Create({"~kind":"Call"},{type:"call",target:e,arguments:t},{})}function r$(e,t){return Da({},be([],[]),e,t)}function lo(e){return C(e,"Call")}var oo=m(()=>{v();B();uc();N()});function PC(e){return l.Discard(e,["~immutable"])}function o$(e,t){return l.Update(PC(e),{},t)}function s$(e,t,n,r){let o=k(e,t,n);return o$(o,r)}var pc=m(()=>{v();N()});function i$(e,t){return e(t)}var a$=m(()=>{});function m$(e,t){return u.IsString(t)?ee(i$(e,t)):ee(t)}var u$=m(()=>{R();Oe();a$()});function p$(e,t){let n=st(t);return _n(e,n)}var c$=m(()=>{Na();bs()});function l$(e,t){let n=t.map(r=>_n(e,r));return V(n)}var d$=m(()=>{J();Na()});function _n(e,t){return ue(t)?m$(e,t.const):Se(t)?p$(e,t.pattern):L(t)?l$(e,t.anyOf):t}var Na=m(()=>{Oe();wt();J();u$();c$();d$()});function Qi(e,t={}){return j("Capitalize",[e],t)}function f$(e,t={}){return cc(e,t)}var qa=m(()=>{se();Rn()});function ea(e,t={}){return j("Lowercase",[e],t)}function g$(e,t={}){return lc(e,t)}var _a=m(()=>{se();Rn()});function ta(e,t={}){return j("Uncapitalize",[e],t)}function x$(e,t={}){return dc(e,t)}var Ua=m(()=>{se();Rn()});function na(e,t={}){return j("Uppercase",[e],t)}function h$(e,t={}){return fc(e,t)}var Ka=m(()=>{se();Rn()});function cc(e,t){return z([e])?l.Update(_n(AC,e),{},t):Qi(e,t)}function lc(e,t){return z([e])?l.Update(_n(RC,e),{},t):ea(e,t)}function dc(e,t){return z([e])?l.Update(_n(OC,e),{},t):ta(e,t)}function fc(e,t){return z([e])?l.Update(_n(MC,e),{},t):na(e,t)}function y$(e,t,n,r){let o=k(e,t,n);return cc(o,r)}function b$(e,t,n,r){let o=k(e,t,n);return lc(o,r)}function I$(e,t,n,r){let o=k(e,t,n);return dc(o,r)}function $$(e,t,n,r){let o=k(e,t,n);return fc(o,r)}var AC,RC,OC,MC,Rn=m(()=>{v();Na();N();qa();_a();Ua();Ka();AC=e=>e[0].toUpperCase()+e.slice(1),RC=e=>e.toLowerCase(),OC=e=>e[0].toLowerCase()+e.slice(1),MC=e=>e.toUpperCase()});function ra(e,t,n,r,o={}){return j("Conditional",[e,t,n,r],o)}function w$(e,t,n,r,o={}){return gc({},be([],[]),e,t,n,r,o)}var Ga=m(()=>{se();xc();N()});function CC(e,t,n,r,o,s){let a=nt(e,n,r);return G.IsExtendsUnion(a)?V([k(a.inferred,t,o),k(e,t,s)]):G.IsExtendsTrue(a)?k(a.inferred,t,o):k(e,t,s)}function gc(e,t,n,r,o,s,a){return z([n,r])?l.Update(CC(e,t,n,r,o,s),{},a):ra(n,r,o,s,a)}function k$(e,t,n,r,o,s,a){let p=k(e,t,n),c=k(e,t,r);return gc(e,t,p,c,o,s,a)}var xc=m(()=>{v();J();En();N();Ga()});var hc=m(()=>{xc()});function oa(e,t={}){return j("ConstructorParameters",[e],t)}function T$(e,t={}){return yc(e,t)}var Wa=m(()=>{se();za()});function LC(e){let t=_e(e)?e.parameters:[],n=ar({},be([],[]),t);return Ce(n)}function yc(e,t){return z([e])?l.Update(LC(e),{},t):oa(e,t)}function E$(e,t,n,r){let o=k(e,t,n);return yc(o,r)}var za=m(()=>{v();Kt();Ne();Wa();N();N();N()});function sa(e,t,n={}){return j("Exclude",[e,t],n)}function v$(e,t,n={}){return Ss(e,t,n)}var Ba=m(()=>{se();Ps()});function Ss(e,t,n){return z([e,t])?l.Update(Ui(e,t),{},n):sa(e,t,n)}function S$(e,t,n,r,o){let s=k(e,t,n),a=k(e,t,r);return Ss(s,a,o)}var Ps=m(()=>{v();N();Ba();yp()});function ia(e,t,n={}){return j("Extract",[e,t],n)}function P$(e,t,n={}){return bc(e,t,n)}var Ha=m(()=>{se();Va()});function FC(e,t){let n=nt({},e,t);return G.IsExtendsTrueLike(n)?[e]:[]}function A$(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>A$(o,t,[...n,...FC(r,t)]),()=>n)}function R$(e,t){let n=Jt(e),r=L(n)?n.anyOf:[n],o=A$(r,t);return Tt(o)}var O$=m(()=>{R();J();En();H();H()});function bc(e,t,n){return z([e,t])?l.Update(R$(e,t),{},n):ia(e,t,n)}function M$(e,t,n,r,o){let s=k(e,t,n),a=k(e,t,r);return bc(s,a,o)}var Va=m(()=>{v();N();Ha();O$()});function jC(e){return e.reduce((t,n)=>Ai(n)?[...t,ee(n)]:t,[])}function fo(e){let t=jC(e);return V(t)}var As=m(()=>{Oe();J()});function ds(e,t,n={}){return j("Index",[e,t],n)}function C$(e,t,n={}){let r=u.IsArray(t)?fo(t):t;return $c(e,r,n)}var Ic=m(()=>{R();se();As();Ja()});function L$(e,t){let n=An(e,t);return Dt(n)}var F$=m(()=>{Cr();Mr()});function j$(e,t,n){let r=sn(e,t,n);return Dt(r)}var D$=m(()=>{Cr();H()});function DC(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,T)=>({...I,[T]:e[T]}),{}),a=r.reduce((I,T)=>({...I,[T]:t[T]}),{}),p=o.reduce((I,T)=>({...I,[T]:we([e[T],t[T]])}),{}),c=l.Assign(s,a);return l.Assign(c,p)}function N$(e){return e.reduce((t,n)=>DC(t,Dt(n)),{})}var q$=m(()=>{v();R();Cr();H()});var _$=m(()=>{});function U$(e){let t=Kg(Ce(e));return Dt(t)}var K$=m(()=>{Ne();dp();Cr()});function NC(e,t){return u.Keys(e).filter(o=>o in t).reduce((o,s)=>({...o,[s]:Tt([e[s],t[s]])}),{})}function G$(e,t){return u.ShiftLeft(e,(n,r)=>G$(r,NC(t,Dt(n))),()=>t)}function W$(e){return u.ShiftLeft(e,(t,n)=>G$(n,Dt(t)),()=>De())}var z$=m(()=>{R();$n();H();Cr()});function Dt(e){return et(e)?L$(e.$defs,e.$ref):ve(e)?j$(e.if,e.then,e.else):Q(e)?N$(e.allOf):L(e)?W$(e.anyOf):ge(e)?U$(e.items):me(e)?e.properties:{}}var Cr=m(()=>{It();St();je();ce();Ne();J();F$();D$();q$();_$();K$();z$()});function go(e){let t=Dt(e);return K(t)}var B$=m(()=>{ce();Cr()});var Rs=m(()=>{B$()});function xo(e){let t=`${e}`;return qC.test(t)?parseInt(t):e}var qC,Os=m(()=>{qC=new RegExp("^(?:0|[1-9][0-9]*)$")});function _C(e){return ee(xo(e))}function H$(e){return e.map(t=>V$(t))}function V$(e){return Q(e)?$t(H$(e.allOf)):L(e)?V(H$(e.anyOf)):ue(e)?_C(e.const):e}function J$(e,t){let n=V$(t),r=nt({},n,Pt());return G.IsExtendsTrueLike(r)?e:ue(t)&&u.IsEqual(t.const,"length")?Pt():le()}var Y$=m(()=>{R();je();J();Oe();dt();Be();En();Os()});function X$(e,t){let n=An(e,t);return Rt(n)}var Z$=m(()=>{mr();Mr()});function Q$(e,t,n){let r=sn(e,t,n);return Rt(r)}var ew=m(()=>{mr();H()});function tw(e){let t=gt(e);return Rt(t)}var nw=m(()=>{mr();H()});function rw(e){let t=we(e);return Rt(t)}var ow=m(()=>{H();mr()});function sw(e){return[`${e}`]}var iw=m(()=>{});function aw(e){let t=st(e);return Rt(t)}var mw=m(()=>{mr();H()});function uw(e){return e.reduce((t,n)=>[...t,...Rt(n)],[])}var pw=m(()=>{mr()});function Rt(e){return et(e)?X$(e.$defs,e.$ref):ve(e)?Q$(e.if,e.then,e.else):tt(e)?tw(e.enum):Q(e)?rw(e.allOf):ue(e)?sw(e.const):Se(e)?aw(e.pattern):L(e)?uw(e.anyOf):[]}var mr=m(()=>{It();St();rn();je();Oe();wt();J();Z$();ew();nw();ow();iw();mw();pw()});function ho(e){return Rt(e)}var Ya=m(()=>{mr()});function Ms(e,t){return t.map(n=>Cs(e,n))}function Cs(e,t){return $e(t)?Ft(Cs(e,t.items)):_e(t)?xn(Ms(e,t.parameters),Cs(e,t.instanceType)):Ue(t)?hn(Ms(e,t.parameters),Cs(e,t.returnType)):ge(t)?Ce(Ms(e,t.items)):L(t)?V(Ms(e,t.anyOf)):Q(t)?$t(Ms(e,t.allOf)):Vi(t)?K(e):t}function cw(e,t){return Cs(e,t)}var lw=m(()=>{ct();Kt();Gt();je();ce();Ne();Ji();J()});function UC(e,t){let n=t in e?e[t]:le();return cw(e,n)}function dw(e,t){return t.reduce((n,r)=>[...n,UC(e,r)],[])}function KC(e,t){let n=ho(t),r=dw(e,n);return Tt(r)}function WC(e){return e.filter(n=>GC.test(n))}function zC(e){let t=Ii(e),n=WC(t),r=dw(e,n);return Tt(r)}function fw(e,t){return Me(t)?zC(e):KC(e,t)}var GC,gw=m(()=>{dt();Be();yr();H();Ya();Ve();lw();GC=new RegExp(nr)});function BC(e){return ee(xo(e))}function xw(e){return e.map(t=>wc(t))}function wc(e){return Q(e)?$t(xw(e.allOf)):L(e)?V(xw(e.anyOf)):ue(e)?BC(e.const):e}var hw=m(()=>{J();je();Oe();Os()});function HC(e,t){return e.reduceRight((n,r,o)=>{let s=nt({},ee(o),t);return G.IsExtendsTrueLike(s)?[r,...n]:n},[])}function VC(e,t){let n=wc(t),r=HC(e,n);return er(r)}function JC(e){return er(e)}function yw(e,t){return ue(t)&&u.IsEqual(t.const,"length")?ee(e.length):Me(t)||lt(t)?JC(e):VC(e,t)}var bw=m(()=>{R();Oe();dt();Tn();H();En();hw()});function Iw(e,t){return $e(e)?J$(e.items,t):me(e)?fw(e.properties,t):ge(e)?yw(e.items,t):le()}var $w=m(()=>{ct();Be();ce();Ne();Y$();gw();bw()});function YC(e){return et(e)||ve(e)||Q(e)||L(e)?go(e):e}function $c(e,t,n){return z([e,t])?l.Update(Iw(YC(e),t),{},n):ds(e,t,n)}function ww(e,t,n,r,o){let s=k(e,t,n),a=k(e,t,r);return $c(s,a,o)}var Ja=m(()=>{v();It();St();je();J();N();Ic();Rs();$w()});function aa(e,t={}){return j("InstanceType",[e],t)}function kw(e,t={}){return kc(e,t)}var Xa=m(()=>{se();Za()});function XC(e){return _e(e)?e.instanceType:le()}function kc(e,t){return z([e])?l.Update(XC(e),{},t):aa(e,t)}function Tw(e,t,n,r={}){let o=k(e,t,n);return kc(o,r)}var Za=m(()=>{v();Kt();Be();Xa();N()});function fs(e,t={}){return j("KeyOf",[e],t)}function Ew(e,t={}){return Tc(e,t)}var Qa=m(()=>{se();em()});function vw(){return V([Pt(),Ht(),Yr()])}var Sw=m(()=>{dt();Vt();Er();J()});function Pw(e){return Pt()}var Aw=m(()=>{dt()});function ZC(e){return e.reduce((n,r)=>Ai(r)?[...n,ee(xo(r))]:De(),[])}function Rw(e){let t=u.Keys(e),n=ZC(t);return er(n)}var Ow=m(()=>{$n();R();Oe();Os();H()});function Mw(e){return Qr(e)}var Cw=m(()=>{Ve()});function Lw(e){let t=e.map((n,r)=>ee(r));return er(t)}var Fw=m(()=>{Oe();H()});function jw(e){return Te(e)?vw():$e(e)?Pw(e.items):me(e)?Rw(e.properties):rt(e)?Mw(e):ge(e)?Lw(e.items):le()}var Dw=m(()=>{bt();ct();Be();ce();Ve();Ne();Sw();Aw();Ow();Cw();Fw()});function QC(e){return et(e)||ve(e)||Q(e)||L(e)?go(e):e}function Tc(e,t){return z([e])?l.Update(jw(QC(e)),{},t):fs(e,t)}function Nw(e,t,n,r){let o=k(e,t,n);return Tc(o,r)}var em=m(()=>{v();It();St();je();J();Qa();N();Rs();Dw()});function ps(e,t,n,r,o={}){return j("Mapped",[e,t,n,r],o)}function qw(e,t,n,r,o={}){return Ec({},be([],[]),e,t,n,r,o)}var tm=m(()=>{se();nm();N()});function e0(e){let t=st(e);return rm(t)}function t0(e){return e.reduce((t,n)=>[...t,...rm(n)],[])}function n0(e){let t=gt(e);return rm(t)}function r0(e){return u.IsNumber(e)?[ee(`${e}`)]:[ee(e)]}function rm(e){return tt(e)?n0(e.enum):ue(e)?r0(e.const):Se(e)?e0(e.pattern):L(e)?t0(e.anyOf):[e]}function _w(e){return rm(e)}var Uw=m(()=>{R();Oe();rn();wt();J();H();H()});function o0(e){return Se(e)?st(e.pattern):e}function s0(e,t,n,r,o,s){let a=l.Assign(e,{[n.name]:r}),p=k(a,t,o),c=o0(p),h=k(a,t,s);return Ig(c)||$g(c)?{[c.const]:h}:{}}function i0(e,t,n,r,o,s){return r.reduce((a,p)=>[...a,s0(e,t,n,p,o,s)],[])}function a0(e){return e.reduce((t,n)=>[...t,K(n)],[])}function Kw(e,t,n,r,o,s){let a=_w(r),p=i0(e,t,n,a,o,s),c=a0(p);return we(c)}var Gw=m(()=>{v();Oe();ce();wt();N();H();H();Uw()});function Ec(e,t,n,r,o,s,a){return z([r])?l.Update(Kw(e,t,n,r,o,s),{},a):ps(n,r,o,s,a)}function Ww(e,t,n,r,o,s,a){let p=k(e,t,r);return Ec(e,t,n,p,o,s,a)}var nm=m(()=>{v();tm();N();Gw()});function m0(e,t,n){let r=l.Assign(e,t);return u.Keys(t).filter(s=>n.includes(s)).reduce((s,a)=>({...s,[a]:UI(r,a,t[a])}),{})}function u0(e,t,n){let r=l.Assign(e,t);return u.Keys(t).filter(s=>!n.includes(s)).reduce((s,a)=>({...s,[a]:k(r,be([],[]),t[a])}),{})}function p0(e,t,n){let r=jI(t),o=m0(e,t,r),s=u0(e,t,r),a={...o,...s};return l.Update(a,{},n)}function om(e,t,n,r){return p0(e,n,r)}var sm=m(()=>{R();v();N();ec();nc();N()});function ma(e,t={}){return j("NonNullable",[e],t)}function zw(e,t={}){return vc(e,t)}var im=m(()=>{se();am()});function c0(e){let t=V([Hr(),to()]);return Ss(e,t,{})}function vc(e,t){return z([e])?l.Update(c0(e),{},t):ma(e,t)}function Bw(e,t,n,r){let o=k(e,t,n);return vc(o,r)}var am=m(()=>{v();Jr();ro();J();Ps();im();N()});function ua(e,t,n={}){return j("Omit",[e,t],n)}function Hw(e,t,n={}){let r=u.IsArray(t)?fo(t):t;return Sc(e,r,n)}var mm=m(()=>{R();se();As();um()});function pm(e){let t=go(e);return me(t)?t.properties:De()}var Pc=m(()=>{$n();ce();Rs()});function l0(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?r:{...r,[o]:e[o]},{})}function Vw(e,t){let n=pm(e),r=ho(t),o=l0(n,r);return K(o)}var Jw=m(()=>{R();ce();Ya();Pc()});function Sc(e,t,n){return z([e,t])?l.Update(Vw(e,t),{},n):ua(e,t,n)}function Yw(e,t,n,r,o){let s=k(e,t,n),a=k(e,t,r);return Sc(s,a,o)}var um=m(()=>{v();mm();N();Jw()});function pa(e,t={}){return j("Parameters",[e],t)}function Xw(e,t={}){return Ac(e,t)}var cm=m(()=>{se();lm()});function d0(e){let t=Ue(e)?e.parameters:[],n=ar({},be([],[]),t);return Ce(n)}function Ac(e,t){return z([e])?l.Update(d0(e),{},t):pa(e,t)}function Zw(e,t,n,r){let o=k(e,t,n);return Ac(o,r)}var lm=m(()=>{v();Gt();Ne();cm();N();N();N()});function ca(e,t={}){return j("Partial",[e],t)}function Qw(e,t={}){return Rc(e,t)}var dm=m(()=>{se();fm()});function ek(e,t){let n=An(e,t),r=On(n);return bn(l.Assign(e,{[t]:r}),t)}var tk=m(()=>{v();It();yo();Mr()});function nk(e,t,n){let r=sn(e,t,n);return On(r)}var rk=m(()=>{yo();H()});function ok(e){let t=we(e);return On(t)}var sk=m(()=>{yo();H()});function ik(e){let t=e.map(n=>On(n));return V(t)}var ak=m(()=>{J();yo()});function mk(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:hr(e[o])}),{});return K(t)}var uk=m(()=>{R();ce();zo()});function On(e){return et(e)?ek(e.$defs,e.$ref):ve(e)?nk(e.if,e.then,e.else):Q(e)?ok(e.allOf):L(e)?ik(e.anyOf):me(e)?mk(e.properties):K({})}var yo=m(()=>{It();St();je();ce();J();tk();rk();sk();ak();uk()});function Rc(e,t){return z([e])?l.Update(On(e),{},t):ca(e,t)}function pk(e,t,n,r){let o=k(e,t,n);return Rc(o,r)}var fm=m(()=>{v();dm();yo();N()});function la(e,t,n={}){return j("Pick",[e,t],n)}function ck(e,t,n={}){let r=u.IsArray(t)?fo(t):t;return Oc(e,r,n)}var gm=m(()=>{R();se();As();xm()});function f0(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?l.Assign(r,{[o]:e[o]}):r,{})}function lk(e,t){let n=pm(e),r=ho(t),o=f0(n,r);return K(o)}var dk=m(()=>{v();R();ce();Ya();Pc()});function Oc(e,t,n){return z([e,t])?l.Update(lk(e,t),{},n):la(e,t,n)}function fk(e,t,n,r,o){let s=k(e,t,n),a=k(e,t,r);return Oc(s,a,o)}var xm=m(()=>{v();gm();N();dk()});function da(e,t={}){return j("ReadonlyObject",[e],t)}function Mc(e,t={}){return Cc(e,t)}var gk,hm=m(()=>{se();ym();gk=Mc});function xk(e){return Br(Ft(e))}var hk=m(()=>{ct();Xo()});function yk(e,t){let n=An(e,t),r=Mn(n);return bn(l.Assign(e,{[t]:r}),t)}var bk=m(()=>{v();It();bo();Mr()});function Ik(e,t,n){let r=sn(e,t,n);return Mn(r)}var $k=m(()=>{bo();H()});function wk(e){let t=we(e);return Mn(t)}var kk=m(()=>{bo();H()});function Tk(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:$r(e[o])}),{});return K(t)}var Ek=m(()=>{R();ce();Zo()});function vk(e){return Br(Ce(e))}var Sk=m(()=>{Ne();Xo()});function Pk(e){let t=e.map(n=>Mn(n));return V(t)}var Ak=m(()=>{J();bo()});function Mn(e){return $e(e)?xk(e.items):et(e)?yk(e.$defs,e.$ref):ve(e)?Ik(e.if,e.then,e.else):Q(e)?wk(e.allOf):me(e)?Tk(e.properties):ge(e)?vk(e.items):L(e)?Pk(e.anyOf):e}var bo=m(()=>{ct();It();St();je();ce();Ne();J();hk();bk();$k();kk();Ek();Sk();Ak()});function Cc(e,t){return z([e])?l.Update(Mn(e),{},t):da(e)}function Rk(e,t,n,r){let o=k(e,t,n);return Cc(o,r)}var ym=m(()=>{v();hm();bo();N()});function Ok(e,t,n,r){return t.visited.includes(r)?n:r in e?k(e,be(t.callstack,[...t.visited,r]),e[r]):n}var Lc=m(()=>{N();N()});function Mk(e,t){let n=An(e,t),r=Cn(n);return bn(l.Assign(e,{[t]:r}),t)}var Ck=m(()=>{v();It();Io();Mr()});function Lk(e,t,n){let r=sn(e,t,n);return Cn(r)}var Fk=m(()=>{Io();H()});function jk(e){let t=we(e);return Cn(t)}var Dk=m(()=>{Io();H()});function Nk(e){let t=e.map(n=>Cn(n));return V(t)}var qk=m(()=>{J();Io()});function _k(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:Ni(e[o])}),{});return K(t)}var Uk=m(()=>{R();ce();qi()});function Cn(e){return et(e)?Mk(e.$defs,e.$ref):ve(e)?Lk(e.if,e.then,e.else):Q(e)?jk(e.allOf):L(e)?Nk(e.anyOf):me(e)?_k(e.properties):K({})}var Io=m(()=>{It();St();je();ce();J();Ck();Fk();Dk();qk();Uk()});function fa(e,t={}){return j("Required",[e],t)}function Kk(e,t={}){return Fc(e,t)}var bm=m(()=>{se();Im()});function Fc(e,t){return z([e])?l.Update(Cn(e),{},t):fa(e,t)}function Gk(e,t,n,r){let o=k(e,t,n);return Fc(o,r)}var Im=m(()=>{v();Io();bm();N()});function ga(e,t={}){return j("ReturnType",[e],t)}function Wk(e,t={}){return jc(e,t)}var $m=m(()=>{se();wm()});function g0(e){return Ue(e)?e.returnType:le()}function jc(e,t){return z([e])?l.Update(g0(e),{},t):ga(e,t)}function zk(e,t,n,r={}){let o=k(e,t,n);return jc(o,r)}var wm=m(()=>{v();Gt();Be();$m();N()});function xa(e,t){return j("With",[e,t],{})}function Bk(e,t){return Dc(e,t)}var km=m(()=>{se();Tm()});function Dc(e,t){return z([e])?l.Update(e,{},t):xa(e,t)}function Hk(e,t,n,r){let o=k(e,t,n);return Dc(o,r)}var Tm=m(()=>{v();N();km()});function x0(e){return rr(e)?ge(e.items)?Nc(e.items.items):Re(e.items)?[e]:Ke(e.items)?[e]:[le()]:[e]}function Nc(e){return e.reduce((n,r)=>[...n,...x0(r)],[])}var Vk=m(()=>{zt();Be();eo();Wt();Ne()});var Jk=m(()=>{Vk()});function be(e,t){return{callstack:e,visited:t}}function z(e){return u.ShiftLeft(e,(t,n)=>Ke(t)?!1:z(n),()=>!0)}function $s(e,t,n){return u.Keys(n).reduce((r,o)=>({...r,[o]:k(e,t,n[o])}),{})}function ar(e,t,n){let r=jt(e,t,n);return Nc(r)}function jt(e,t,n){return n.map(r=>k(e,t,r))}function h0(e,t){let n=ot(e)?Go(t,{}):t,r=wr(e)?Ko(n,{}):n;return Ir(e)?Ls(r,{}):r}function y0(e,t,n,r,o){return u.IsEqual(n,"AddImmutable")?Yk(e,t,r[0],o):u.IsEqual(n,"RemoveImmutable")?s$(e,t,r[0],o):u.IsEqual(n,"AddReadonly")?nf(e,t,r[0],o):u.IsEqual(n,"RemoveReadonly")?Dg(e,t,r[0],o):u.IsEqual(n,"AddOptional")?rf(e,t,r[0],o):u.IsEqual(n,"RemoveOptional")?_g(e,t,r[0],o):u.IsEqual(n,"Capitalize")?y$(e,t,r[0],o):u.IsEqual(n,"Conditional")?k$(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"ConstructorParameters")?E$(e,t,r[0],o):u.IsEqual(n,"Evaluate")?zI(e,t,r[0],o):u.IsEqual(n,"Exclude")?S$(e,t,r[0],r[1],o):u.IsEqual(n,"Extract")?M$(e,t,r[0],r[1],o):u.IsEqual(n,"Index")?ww(e,t,r[0],r[1],o):u.IsEqual(n,"InstanceType")?Tw(e,t,r[0],o):u.IsEqual(n,"Interface")?MI(e,t,r[0],r[1],o):u.IsEqual(n,"KeyOf")?Nw(e,t,r[0],o):u.IsEqual(n,"Lowercase")?b$(e,t,r[0],o):u.IsEqual(n,"Mapped")?Ww(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"Module")?om(e,t,r[0],o):u.IsEqual(n,"NonNullable")?Bw(e,t,r[0],o):u.IsEqual(n,"Pick")?fk(e,t,r[0],r[1],o):u.IsEqual(n,"Parameters")?Zw(e,t,r[0],o):u.IsEqual(n,"Partial")?pk(e,t,r[0],o):u.IsEqual(n,"Omit")?Yw(e,t,r[0],r[1],o):u.IsEqual(n,"ReadonlyObject")?Rk(e,t,r[0],o):u.IsEqual(n,"Record")?cx(e,t,r[0],r[1],o):u.IsEqual(n,"Required")?Gk(e,t,r[0],o):u.IsEqual(n,"ReturnType")?zk(e,t,r[0],o):u.IsEqual(n,"TemplateLiteral")?vb(e,t,r[0],o):u.IsEqual(n,"Uncapitalize")?I$(e,t,r[0],o):u.IsEqual(n,"Uppercase")?$$(e,t,r[0],o):u.IsEqual(n,"With")?Hk(e,t,r[0],r[1]):j(n,r,o)}function b0(e,t,n){let r=Ke(n)?Ok(e,t,n,n.$ref):$e(n)?Ft(k(e,t,n.items),bi(n)):lo(n)?Da(e,t,n.target,n.arguments):_e(n)?xn(jt(e,t,n.parameters),k(e,t,n.instanceType),of(n)):Ue(n)?hn(jt(e,t,n.parameters),k(e,t,n.returnType),sf(n)):ve(n)?br(k(e,t,n.if),k(e,t,n.then),k(e,t,n.else),df(n)):Q(n)?$t(jt(e,t,n.allOf),yf(n)):me(n)?K($s(e,t,n.properties),pf(n)):rt(n)?lx(Yt(n),k(e,t,xt(n))):rr(n)?Sr(k(e,t,n.items)):ge(n)?Ce(ar(e,t,n.items),jg(n)):L(n)?V(jt(e,t,n.anyOf),kg(n)):n;return h0(n,r)}function k(e,t,n){return Vn(n)?y0(e,t,n.action,n.parameters,n.options):b0(e,t,n)}function qc(e,t){return k(e,be([],[]),t)}var N=m(()=>{R();Em();hi();yi();ct();Kt();se();Gt();oo();St();je();ce();Ve();Ne();J();Wt();eo();Em();pc();hi();mp();yi();cp();Yn();Yo();Qo();uc();Rn();hc();za();ja();Ps();Va();Ja();Za();Ca();em();Rn();nm();sm();am();um();lm();fm();xm();ym();Gi();Lc();Im();wm();Pa();Rn();Rn();Tm();Jk()});function I0(e){return l.Update(e,{"~immutable":!0},{})}function Ls(e,t){return l.Update(I0(e),{},t)}function Yk(e,t,n,r){let o=k(e,t,n);return Ls(o,r)}var Em=m(()=>{v();N()});function fy(e,t={}){return j("AddImmutable",[e],t)}function Br(e,t={}){return Ls(e,t)}var Xo=m(()=>{se();Em()});var Xk=m(()=>{se();pc()});function gy(e,t={}){return j("Evaluate",[e],t)}function Zk(e,t={}){return sc(e,t)}var _c=m(()=>{se();ja()});function xy(e,t={}){return j("Module",[e],t)}function Qk(e,t={}){return om({},be([],[]),e,t)}var Uc=m(()=>{se();N();sm()});var so=m(()=>{Xo();Zo();zo();Xk();up();qi();qa();Ga();Wa();_c();Ba();Ha();Ic();Xa();ws();Qa();_a();tm();Uc();im();mm();cm();dm();gm();hm();bm();$m();Ua();Ka();km()});var eT=m(()=>{za()});var tT=m(()=>{Ti()});var nT=m(()=>{Ps()});var rT=m(()=>{Va()});var oT=m(()=>{});var sT=m(()=>{As();Os();oT()});var iT=m(()=>{Ja()});var aT=m(()=>{Za()});var mT=m(()=>{Ca()});var uT=m(()=>{Rn()});var pT=m(()=>{em()});var cT=m(()=>{nm()});var lT=m(()=>{sm()});var dT=m(()=>{am()});var fT=m(()=>{um()});var gT=m(()=>{lm()});var xT=m(()=>{rs();Up()});var hT=m(()=>{fm()});var yT=m(()=>{xm()});var bT=m(()=>{R();as()});var IT=m(()=>{bT()});var $T=m(()=>{ym()});var wT=m(()=>{Gi()});var kT=m(()=>{Lc()});var TT=m(()=>{Im()});var ET=m(()=>{wm()});var vT=m(()=>{});var ST=m(()=>{R();rs()});var PT=m(()=>{ji();Di();Kp();vT();Li();ST()});var AT=m(()=>{Tm()});var RT=m(()=>{N();hc();eT();rc();tT();bs();nT();rT();sT();iT();aT();mT();uT();pT();cT();lT();dT();Rs();fT();gT();xT();hT();yT();IT();$T();wT();kT();TT();ET();PT();AT()});function OT(...e){let[t,n,r]=In.Match(e,{2:(a,p)=>u.IsString(a)?[{},a,p]:[a,p,{}],3:(a,p,c)=>[a,p,c],1:a=>[{},a,{}]}),o=$b(n),s=u.IsArray(o)&&u.IsEqual(o.length,2)?k(t,be([],[]),o[0]):le();return l.Update(s,{},r)}var MT=m(()=>{zr();v();R();Xi();N();N();Mi()});var Kc=m(()=>{MT()});var ie={};Lt(ie,{Any:()=>Wr,Array:()=>Ft,BigInt:()=>es,Boolean:()=>Si,Call:()=>r$,Capitalize:()=>f$,Codec:()=>vi,Conditional:()=>w$,Constructor:()=>xn,ConstructorParameters:()=>T$,Cyclic:()=>bn,Decode:()=>dg,DecodeBuilder:()=>Jo,Dependent:()=>br,Encode:()=>fg,EncodeBuilder:()=>Vo,Enum:()=>hf,Evaluate:()=>Zk,Exclude:()=>v$,Extends:()=>nt,ExtendsResult:()=>G,Extract:()=>P$,Function:()=>hn,Generic:()=>Jn,Identifier:()=>ts,Immutable:()=>gg,Index:()=>C$,Infer:()=>Bo,InstanceType:()=>kw,Instantiate:()=>qc,Integer:()=>Tr,Interface:()=>CI,Intersect:()=>$t,IsAny:()=>Te,IsArray:()=>$e,IsBigInt:()=>kn,IsBoolean:()=>Bt,IsCall:()=>lo,IsCodec:()=>Ei,IsConstructor:()=>_e,IsCyclic:()=>et,IsDependent:()=>ve,IsEnum:()=>tt,IsEnumValue:()=>xf,IsFunction:()=>Ue,IsGeneric:()=>Gr,IsIdentifier:()=>bg,IsImmutable:()=>Ir,IsInfer:()=>Re,IsInteger:()=>lt,IsIntersect:()=>Q,IsKind:()=>C,IsLiteral:()=>ue,IsNever:()=>nn,IsNull:()=>Vr,IsNumber:()=>Me,IsObject:()=>me,IsOptional:()=>ot,IsParameter:()=>wg,IsReadonly:()=>wr,IsRecord:()=>rt,IsRef:()=>Ke,IsRefine:()=>tp,IsRest:()=>rr,IsSchema:()=>Fe,IsString:()=>ft,IsSymbol:()=>Zn,IsTemplateLiteral:()=>Se,IsThis:()=>Vi,IsTuple:()=>ge,IsUndefined:()=>no,IsUnion:()=>L,IsUnknown:()=>Ae,IsUnsafe:()=>wi,IsVoid:()=>vn,KeyOf:()=>Ew,Literal:()=>ee,Lowercase:()=>g$,Mapped:()=>qw,Module:()=>Qk,Never:()=>le,NonNullable:()=>zw,Null:()=>Hr,Number:()=>Pt,Object:()=>K,Omit:()=>Hw,Optional:()=>mf,Parameter:()=>vr,Parameters:()=>Xw,Partial:()=>Qw,Pick:()=>ck,Readonly:()=>xg,ReadonlyObject:()=>Mc,ReadonlyType:()=>gk,Record:()=>zi,RecordKey:()=>Qr,RecordPattern:()=>Yt,RecordValue:()=>xt,Ref:()=>Dn,Refine:()=>hg,Required:()=>Kk,Rest:()=>Sr,ReturnType:()=>Wk,Script:()=>OT,String:()=>Ht,Symbol:()=>Yr,TemplateLiteral:()=>Pb,This:()=>Hi,Tuple:()=>Ce,Uncapitalize:()=>x$,Undefined:()=>to,Union:()=>V,Unknown:()=>He,Unsafe:()=>cf,Uppercase:()=>h$,Void:()=>Yi,With:()=>Bk});var Gc=m(()=>{N();En();Kc();qa();Ga();Wa();_c();Ba();Ha();so();Xa();ws();Qa();_a();tm();Uc();im();mm();cm();dm();gm();hm();bm();$m();Ua();Ka();km();ep();Yo();Yn();Qo();np();bt();ct();kr();Xn();oo();Kt();It();rn();Gt();Wo();rp();St();zt();Tn();je();Oe();Be();Jr();dt();ce();sp();Ve();Wt();eo();B();Vt();Er();wt();Ji();Ne();ro();J();Qe();ki();Pr()});var $o=m(()=>{so();RT();En();Kc();Xi();Gc();Gc()});import{StringEnum as $0}from"@earendil-works/pi-ai";import{defineTool as w0}from"@earendil-works/pi-coding-agent";function CT(e){if(e.length===0)return"Todo list is empty.";let t=e.filter(o=>o.status==="completed").length,n=e.map(o=>`${k0[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
|
-
${
|
|
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:
|
|
36
|
-
|
|
37
|
-
${t.
|
|
2
|
+
var uP=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 Ft=(e,t)=>{for(var n in t)uP(e,n,{get:t[n],enumerable:!0})};function fd(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
|
+
|
|
4
|
+
`).trim()}var bt,fn,dd,gd,_o=m(()=>{bt="HowToFix",fn="0.4.18",dd=["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
|
+
`);gd=["# Project notes","","## What this is","","## Commands","- build:","- test:","","## Conventions","-",""].join(`
|
|
6
|
+
`)});var bd={};Ft(bd,{AGENTS_STORE_DIR:()=>Hr,AGENT_DIR:()=>He,CUBENCE_CACHE_PATH:()=>Au,USER_SKILLS_DIR:()=>Ru,WORKFLOWS_DIR:()=>Ou,pinAgentDir:()=>Mu,projectSkillsDir:()=>gr});import{homedir as cP}from"node:os";import{join as zr,resolve as pP}from"node:path";function lP(){let e=(process.env.HOWTOFIX_HOME??process.env.HOME??"").trim();return pP(e||cP())}function gr(e){return zr(e,".howtofix","skills")}function Mu(){process.env.PI_CODING_AGENT_DIR=He}var He,Ru,Hr,Au,Ou,Dn=m(()=>{He=process.env.HOWTOFIX_CODING_AGENT_DIR?.trim()||zr(lP(),".howtofix","agent"),Ru=zr(He,"skills");Hr=zr(He,"agents"),Au=zr(He,"cubence-cache.json"),Ou=zr(He,"workflows")});import{closeSync as dP,fsyncSync as fP,openSync as gP,renameSync as Id,rmSync as Cu,writeSync as hP}from"node:fs";import{dirname as xP,join as yP}from"node:path";function Ze(e,t){let n=yP(xP(e),`.${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2,8)}.tmp`),r=gP(n,"w");try{hP(r,t),fP(r)}finally{dP(r)}try{Id(n,e)}catch(o){let s=o.code;if(s!=="EPERM"&&s!=="EBUSY"&&s!=="EACCES")throw Cu(n,{force:!0}),o;Cu(e,{force:!0});try{Id(n,e)}catch(a){throw Cu(n,{force:!0}),a}}}var zn=m(()=>{});var vd={};Ft(vd,{DEFAULT_CONTEXT_WINDOW:()=>Td,HOWTOFIX_BASE_URL:()=>ai,HOWTOFIX_CONSOLE_URL:()=>mi,HOWTOFIX_MODEL_COMPAT:()=>Fu,HOWTOFIX_PROVIDERS:()=>Lu,HTTP_IDLE_TIMEOUT_MS:()=>kd,applyCompat:()=>ci,checkAccount:()=>Uu,countNewModels:()=>_u,ensureGatewaySettings:()=>wP,isHowtofixProvider:()=>qo,looksLikeToken:()=>Du,maskToken:()=>ui,mergeModels:()=>Nu,newProviderEntry:()=>ju,parseModelIds:()=>Ed,probeModel:()=>qu,repairGatewayModels:()=>$P});import{existsSync as bP,mkdirSync as IP,readFileSync as $d}from"node:fs";import{join as wd}from"node:path";function ju(){return{baseUrl:ai,api:"openai-completions"}}function $P(e){let t=wd(e,"models.json"),n;try{n=JSON.parse($d(t,"utf8"))}catch{return 0}let r=n.providers;if(!r||typeof r!="object")return 0;let o=0;for(let s of Lu){let a=r[s];if(!a||!Array.isArray(a.models))continue;let c=ci(a.models);c.changed!==0&&(a.models=c.models,o+=c.changed)}if(o===0)return 0;try{Ze(t,`${JSON.stringify(n,null,2)}
|
|
7
|
+
`)}catch{return 0}return o}function wP(e){let t=wd(e,"settings.json"),n={};try{let r=$d(t,"utf8"),o=JSON.parse(r);o&&typeof o=="object"&&!Array.isArray(o)&&(n=o)}catch{if(bP(t))return!1}if("httpIdleTimeoutMs"in n)return!1;n.httpIdleTimeoutMs=kd;try{IP(e,{recursive:!0}),Ze(t,`${JSON.stringify(n,null,2)}
|
|
8
|
+
`)}catch{return!1}return!0}function ui(e){let t=e.trim();return t.length<=10?"***":`${t.slice(0,6)}\u2026${t.slice(-4)}`}function Du(e){return/^sk-[A-Za-z0-9_-]{8,}$/.test(e.trim())}function Ed(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 qo(e){return Lu.includes(e)}function Nu(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:Td,compat:{...Fu}}));return r}function ci(e){let t=0;return{models:e.map(r=>r.compat?.supportsDeveloperRole===!1?r:(t++,{...r,compat:{...r.compat,...Fu}})),changed:t}}function _u(e,t){let n=new Set(e.map(r=>r.id));return t.filter(r=>!n.has(r)).length}async function qu(e,t,n){let r=(n?.baseUrl??ai).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 Uu(e,t){let n=(t?.baseUrl??ai).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=Ed(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 ai,mi,Lu,kd,Fu,Td,Ku=m(()=>{zn();ai="https://api.howtofix.id/v1",mi="https://howtofix.id/console/token",Lu=["howtofix","howtofix-free"];kd=9e4;Fu={supportsDeveloperRole:!1},Td=128e3});var Sd={};Ft(Sd,{expandFileReferences:()=>Gu});import{readFileSync as kP,statSync as TP}from"node:fs";import{isAbsolute as EP,resolve as vP}from"node:path";function Gu(e,t){return e.replace(/(^|\s)@([^\s]+)/g,(n,r,o)=>{let s=o.replace(/[),.;:]+$/,""),a=o.slice(s.length),c=EP(s)?s:vP(t,s);try{let p=TP(c);if(!p.isFile()||p.size===0||p.size>SP)return n;let f=kP(c);return f.includes(0)?n:`${r}<file name="${c}">
|
|
9
|
+
${f.toString("utf8").trimEnd()}
|
|
10
|
+
</file>${a}`}catch{return n}})}var SP,Wu=m(()=>{SP=64*1024});function RP(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 Pd(e,t){if(PP.has(e))return;let n=`${e}\0${RP(t)}`,r=Uo&&Uo.signature===n?Uo.count+1:1;return Uo={signature:n,count:r},r>=3?{repeats:r}:void 0}function Rd(){Uo=void 0}function Ad(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 PP,Uo,Bu=m(()=>{PP=new Set(["think"])});function Od(e,t){switch(t){case"number":return/^\d+$/.test(e);case"string":return!0;default:return!1}}function OP(e,t,n){let r=t;for(;r<e.length;){let o=e[r];if(!o){r++;continue}if(o==="--")break;if(AP.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(!Od(c.join("="),p))return!1;r++;continue}let f=e[r+1];if(f===void 0||!Od(f,p))return!1;r+=2;continue}if(n.allowPositional===!1)return!1;r++}return!0}function DP(e){if(!/\$\(|`|\$\{|>|</.test(e)&&!/(?<!&)&(?!&)/.test(e))return e.split(/\|\||&&|;|\|/).map(t=>t.trim()).filter(t=>t.length>0)}function NP(e){let t=e.some(r=>/^cd\b/.test(r)),n=e.some(r=>/^git\b/.test(r));return t&&n}function _P(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 qP(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"&&Cd[`git ${n}`]?{name:`git ${n}`,rest:e.slice(2)}:Ld[r]?{name:r,rest:e.slice(2)}:{name:t,rest:e.slice(1)}}function KP(e){let t=_P(e),n=qP(t);if(!n)return!1;let{name:r,rest:o}=n;if(UP.has(r)&&o.some(a=>a.includes("$")||a.includes("`")))return!1;let s=Cd[r]??jP[r]??Ld[r];return s?s.dangerous?.(o)?!1:OP(o,0,s):!!(LP.includes(r)||FP.includes(r))}function fi(e){let t=DP(e);return!t||t.length===0||NP(t)?!1:t.every(KP)}var AP,MP,pi,li,zu,di,Hu,Md,CP,Cd,LP,jP,Ld,FP,UP,Vu=m(()=>{AP=/^-[a-zA-Z0-9_-]/;MP={"--all":"none","--branches":"none","--tags":"none","--remotes":"none"},pi={"--oneline":"none","--graph":"none","--decorate":"none","--no-decorate":"none","--date":"string","--relative-date":"none"},li={"--max-count":"number","-n":"number"},zu={"--stat":"none","--numstat":"none","--shortstat":"none","--name-only":"none","--name-status":"none"},di={"--color":"none","--no-color":"none"},Hu={"--patch":"none","-p":"none","--no-patch":"none","--no-ext-diff":"none","-s":"none"},Md={"--author":"string","--committer":"string","--grep":"string"},CP={"-l":"none","--list":"none","-a":"none","-r":"none","-v":"none","-vv":"none","-i":"none"},Cd={"git status":{safeFlags:{"-s":"none","--short":"none","-b":"none","--branch":"none","-u":"optional","--untracked-files":"optional","--porcelain":"optional","--ignored":"none","--long":"none","--no-renames":"none",...di}},"git diff":{safeFlags:{...zu,...di,...Hu,"--cached":"none","--staged":"none","--word-diff":"none","--check":"none","--quiet":"none","--exit-code":"none","--no-renames":"none","--diff-filter":"string","--relative":"string","--full-index":"none","--binary":"none","--abbrev":"number","--unified":"number","-U":"number","--ignore-all-space":"none","--ignore-space-change":"none","--ignore-blank-lines":"none"}},"git log":{safeFlags:{...pi,...li,...zu,...di,...Hu,...Md,...MP,"--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:{...zu,...di,...Hu,...pi,"--format":"string","--pretty":"string","--abbrev-commit":"none","--no-patch":"none","-q":"none"}},"git shortlog":{safeFlags:{...li,"-s":"none","--summary":"none","-n":"none","--numbered":"none","-e":"none","--email":"none","-sn":"none","-ns":"none","--all":"none"}},"git reflog":{safeFlags:{...li,...pi,...Md,"--all":"none","--date":"string"}},"git blame":{safeFlags:{"-L":"string","-w":"none","-c":"none","-n":"none","-s":"none","-e":"none","-p":"none","--porcelain":"none","--line-porcelain":"none","--date":"string","--since":"string","-C":"none","-M":"none"}},"git ls-files":{safeFlags:{"-m":"none","--modified":"none","-o":"none","--others":"none","-i":"none","--ignored":"none","-s":"none","--stage":"none","-d":"none","--deleted":"none","-c":"none","--cached":"none","-u":"none","--unmerged":"none","--exclude-standard":"none","--error-unmatch":"none","-z":"none"}},"git ls-remote":{safeFlags:{"--heads":"none","--tags":"none","--refs":"none","--symref":"none"}},"git rev-parse":{safeFlags:{"--short":"optional","--abbrev-ref":"none","--verify":"none","--quiet":"none","--git-dir":"none","--show-toplevel":"none","--show-cdup":"none","--is-inside-work-tree":"none","--is-bare-repository":"none","--symbolic-full-name":"none","--abbrev":"optional"}},"git rev-list":{safeFlags:{...li,"--count":"none","--all":"none","--objects":"none","--reverse":"none","--max-parents":"number","--min-parents":"number","--no-merges":"none","--first-parent":"none","--abbrev-commit":"none"}},"git describe":{safeFlags:{"--tags":"none","--all":"none","--long":"none","--always":"none","--dirty":"none","--abbrev":"number","--match":"string","--exclude":"string","--first-parent":"none"}},"git cat-file":{safeFlags:{"-p":"none","-t":"none","-s":"none","-e":"none","--batch-check":"none"}},"git for-each-ref":{safeFlags:{"--format":"string","--count":"number","--sort":"string","--points-at":"string","--merged":"string","--no-merged":"string"}},"git grep":{safeFlags:{"-n":"none","--line-number":"none","-i":"none","--ignore-case":"none","-l":"none","--files-with-matches":"none","-c":"none","--count":"none","-w":"none","--word-regexp":"none","-E":"none","--extended-regexp":"none","-F":"none","--fixed-strings":"none","--cached":"none","--untracked":"none","-e":"string","--and":"none","--or":"none","--not":"none"}},"git merge-base":{safeFlags:{"--all":"none","--is-ancestor":"none","--fork-point":"none","--octopus":"none"}},"git stash list":{safeFlags:{...pi}},"git worktree list":{safeFlags:{"--porcelain":"none","-v":"none","--verbose":"none","-z":"none"}},"git branch":{safeFlags:{...CP,"--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"}}},LP=["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"],jP={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))}},Ld={"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:{}}},FP=["cd","alias","history","arch","ip addr","ifconfig"];UP=new Set(["echo","printf"])});var Ud={};Ft(Ud,{APPROVAL_LABELS:()=>gi,APPROVAL_MODES:()=>Vr,MODE_MAX_TIER:()=>jd,TIER_RANK:()=>Ju,createPermissionExtension:()=>Ko,criticalCommand:()=>Fd,decideToolCall:()=>Nd,describeToolCall:()=>_d,formatApprovalPrompt:()=>qd,getApprovalMode:()=>zP,isApprovalMode:()=>GP,isReadOnlyCommand:()=>fi,resolveTier:()=>Yu,setApprovalMode:()=>Zu,setApprovalPrompt:()=>Qu});function GP(e){return Vr.includes(e)}function Yu(e){let t=WP[e];return t||(e.startsWith("mcp__")?"write":"exec")}function Fd(e){for(let{pattern:t,reason:n}of BP)if(t.test(e))return n}function Zu(e){Xu=e}function zP(){return Xu}function Qu(e){Dd=e}function Nd(e,t,n){let r=typeof n?.command=="string"?n.command:"";if(t==="bash"||t==="powershell"){let s=Fd(r);if(s)return{action:"deny",reason:`Refused in every mode: ${s}.`};if(fi(r))return{action:"run"}}let o=Yu(t);return Ju[o]<=Ju[jd[e]]?{action:"run"}:{action:"prompt",reason:`this is a ${o}-tier tool`}}function _d(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 qd(e,t,n){let r=[`Allow tool: ${e}`];e.startsWith("mcp__")&&r.push("Origin: MCP server tool"),r.push(`Reason: ${n}`);let o=_d(e,t);return o!==e&&r.push(o),r.join(`
|
|
11
|
+
`)}function Ko(e={}){return t=>{t.on("tool_call",async n=>{let r=Pd(n.toolName,n.input);if(r)return{block:!0,reason:Ad(n.toolName,r.repeats)};let o=Xu,s=Nd(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 ${Yu(n.toolName)}-tier tool and no UI can approve it here (approval mode: ${o}).`};if(!await Dd(`${n.toolName} wants to run`,qd(n.toolName,n.input,s.reason)))return{block:!0,reason:`Blocked by the user (approval mode: ${o}).`}})}}var Vr,gi,Ju,jd,WP,BP,Xu,Dd,Go=m(()=>{Bu();Vu();Vu();Vr=["suggest","auto-edit","full-auto"],gi={suggest:"suggest: ask before every edit and command","auto-edit":"auto-edit: edits run, commands ask","full-auto":"full-auto: nothing asks"};Ju={read:0,write:1,exec:2},jd={suggest:"read","auto-edit":"write","full-auto":"exec"},WP={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"};BP=[{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"}];Xu="full-auto",Dd=async()=>!1});function HP(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 JP(e){if(!e)return;let t=!1,n={...e};for(let r of VP){let o=n[r];if(typeof o!="string")continue;let s=HP(o);s!==o&&(n[r]=s,t=!0)}return t?n:void 0}function Kd(){return e=>{e.on("context_with_system",async t=>{let n=t.messages[0];if(!n||n.role!=="system")return;let r=JP(n.sections);return r?{messages:t.messages.map(s=>s===n?{...n,sections:r}:s)}:void 0})}}var VP,Gd=m(()=>{VP=["preamble","rules","docs","addendum"]});import{Type as Jr}from"@earendil-works/pi-ai";import{defineTool as Wd}from"@earendil-works/pi-coding-agent";function Bd(e){ec=e}var ec,zd,Hd,tc=m(()=>{zd=Wd({name:"think",label:"think",description:"Private scratchpad. The text is not shown to the user. Use it before a non-obvious step.",promptSnippet:"think: private notes, not shown to the user",parameters:Jr.Object({thoughts:Jr.String({description:"Private notes"})}),async execute(){return{content:[{type:"text",text:"noted"}],details:{recorded:!0}}}}),Hd=Wd({name:"ask",label:"ask",description:"Ask the user one question and wait for a selected answer. Use this instead of guessing when a choice blocks the task.",promptSnippet:"ask: ask the user to pick one option",parameters:Jr.Object({question:Jr.String(),options:Jr.Array(Jr.String(),{minItems:2})}),async execute(e,t){if(!ec)return{content:[{type:"text",text:"cancelled"}],details:{answer:"cancelled"}};let n=await ec(t.question,t.options);return{content:[{type:"text",text:n}],details:{answer:n}}}})});var tn,hr=m(()=>{tn={assign:0,create:0,clone:0,discard:0,update:0}});function xr(e,t,n){return e>=t&&e<=n}function Yd(e){return e===8205}function YP(e){return xr(e,55296,56319)}function Vd(e){return xr(e,127462,127487)}function Xd(e){return xr(e,65024,65039)}function Zd(e){return xr(e,768,879)||xr(e,6832,6911)||xr(e,7616,7679)||xr(e,65056,65071)}function hi(e){return e>65535?2:1}function Jd(e,t){for(;t<e.length;){let n=e.codePointAt(t);if(Zd(n)||Xd(n))t+=hi(n);else break}return t}function nc(e,t){let n=e.codePointAt(t),r=t+hi(n);for(r=Jd(e,r);r<e.length-1&&Yd(e.codePointAt(r));){let o=e.codePointAt(r+1);r+=1+hi(o),r=Jd(e,r)}return Vd(n)&&r<e.length&&Vd(e.codePointAt(r))&&(r+=hi(e.codePointAt(r))),r}function Qd(e){return e>=768&&(YP(e)||Zd(e)||Xd(e)||Yd(e))}function ef(e){let t=0,n=0;for(;n<e.length;)n=nc(e,n),t++;return t}function XP(e,t){let n=0,r=0;for(;r<e.length;)if(r=nc(e,r),++n>=t)return!0;return!1}function ZP(e,t){let n=0,r=0;for(;r<e.length;)if(r=nc(e,r),++n>t)return!1;return!0}function tf(e,t){if(t===0)return!0;if(e.length<t)return!1;let n=0;for(;;){if(Qd(e.charCodeAt(n)))return XP(e,t);if(++n>=t)return!0}}function nf(e,t){if(e.length<=t)return!0;let n=0;for(;;){if(Qd(e.charCodeAt(n)))return ZP(e,t);if(++n>t)return!1}}var rf=m(()=>{});var u={};Ft(u,{Counted:()=>fR,Entries:()=>xR,EntriesRegExp:()=>hR,Every:()=>cR,EveryAll:()=>pR,GraphemeCount:()=>aR,HasPropertyKey:()=>gR,IsArray:()=>Bo,IsBigInt:()=>Wo,IsBoolean:()=>of,IsClassInstance:()=>iR,IsConstructor:()=>eR,IsDeepEqual:()=>sc,IsEqual:()=>se,IsFunction:()=>sf,IsGreaterEqualThan:()=>mf,IsGreaterThan:()=>rR,IsInteger:()=>rc,IsLessEqualThan:()=>af,IsLessThan:()=>oR,IsMaxLength:()=>mR,IsMinLength:()=>uR,IsMultipleOf:()=>sR,IsNull:()=>yi,IsNumber:()=>bi,IsObject:()=>zo,IsObjectNotArray:()=>tR,IsString:()=>Ii,IsSymbol:()=>nR,IsUndefined:()=>oc,IsUnsafePropertyKey:()=>cf,IsValueLike:()=>uf,Keys:()=>xi,ShiftLeft:()=>$i,Some:()=>lR,SomeAll:()=>dR,Symbols:()=>yR,Values:()=>bR});function Bo(e){return Array.isArray(e)}function Wo(e){return se(typeof e,"bigint")}function of(e){return se(typeof e,"boolean")}function eR(e){if(oc(e)||!sf(e))return!1;let t=Function.prototype.toString.call(e);return!!(/^class\s/.test(t)||/\[native code\]/.test(t))}function sf(e){return se(typeof e,"function")}function rc(e){return Number.isInteger(e)}function yi(e){return se(e,null)}function bi(e){return Number.isFinite(e)}function tR(e){return zo(e)&&!Bo(e)}function zo(e){return se(typeof e,"object")&&!yi(e)}function Ii(e){return se(typeof e,"string")}function nR(e){return se(typeof e,"symbol")}function oc(e){return se(e,void 0)}function se(e,t){return e===t}function rR(e,t){return e>t}function oR(e,t){return e<t}function af(e,t){return e<=t}function mf(e,t){return e>=t}function sR(e,t){if(Wo(e)||Wo(t))return BigInt(e)%BigInt(t)===0n;let n=1e-10;if(!bi(e)||rc(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 iR(e){if(!zo(e))return!1;let t=globalThis.Object.getPrototypeOf(e);return yi(t)?!1:se(typeof t.constructor,"function")&&!(se(t.constructor,globalThis.Object)||se(t.constructor.name,"Object"))}function uf(e){return Wo(e)||of(e)||yi(e)||bi(e)||Ii(e)||oc(e)}function aR(e){return ef(e)}function mR(e,t){return nf(e,t)}function uR(e,t){return tf(e,t)}function cR(e,t,n){return e.every((r,o)=>o<t||n(r,o))}function pR(e,t,n){let r=!0;return e.forEach((o,s)=>{s>=t&&!n(o,s)&&(r=!1)}),r}function lR(e,t){return e.some((n,r)=>t(n,r))}function dR(e,t){let n=!1;return e.forEach((r,o)=>{t(r,o)&&(n=!0)}),n}function fR(e,t){return e.reduce((n,r,o)=>t(r,o)?++n:n,0)}function $i(e,t,n){return se(e.length,0)?n():t(e[0],e.slice(1))}function cf(e){return se(e,"__proto__")||se(e,"constructor")||se(e,"prototype")}function gR(e,t){return cf(t)?Object.prototype.hasOwnProperty.call(e,t):t in e}function hR(e){return xi(e).map(t=>[new RegExp(`^${t}$`),e[t]])}function xR(e){return Object.entries(e)}function xi(e){return Object.getOwnPropertyNames(e)}function yR(e){return Object.getOwnPropertySymbols(e)}function bR(e){return Object.values(e)}function IR(e,t){if(!zo(t))return!1;let n=xi(e);return se(n.length,xi(t).length)&&n.every(r=>sc(e[r],t[r]))}function $R(e,t){return Bo(t)&&se(e.length,t.length)&&e.every((n,r)=>sc(e[r],t[r]))}function sc(e,t){return Bo(e)?$R(e,t):zo(e)?IR(e,t):se(e,t)}var Yr=m(()=>{rf()});var pf=m(()=>{Yr()});var Hn={};Ft(Hn,{IsBigInt64Array:()=>FR,IsBigUint64Array:()=>DR,IsBoolean:()=>kR,IsDate:()=>_R,IsFloat32Array:()=>LR,IsFloat64Array:()=>jR,IsInt16Array:()=>AR,IsInt32Array:()=>MR,IsInt8Array:()=>SR,IsMap:()=>UR,IsNumber:()=>TR,IsRegExp:()=>NR,IsSet:()=>qR,IsString:()=>ER,IsTypeArray:()=>vR,IsUint16Array:()=>OR,IsUint32Array:()=>CR,IsUint8Array:()=>PR,IsUint8ClampedArray:()=>RR});function kR(e){return e instanceof Boolean}function TR(e){return e instanceof Number}function ER(e){return e instanceof String}function vR(e){return globalThis.ArrayBuffer.isView(e)}function SR(e){return e instanceof globalThis.Int8Array}function PR(e){return e instanceof globalThis.Uint8Array}function RR(e){return e instanceof globalThis.Uint8ClampedArray}function AR(e){return e instanceof globalThis.Int16Array}function OR(e){return e instanceof globalThis.Uint16Array}function MR(e){return e instanceof globalThis.Int32Array}function CR(e){return e instanceof globalThis.Uint32Array}function LR(e){return e instanceof globalThis.Float32Array}function jR(e){return e instanceof globalThis.Float64Array}function FR(e){return e instanceof globalThis.BigInt64Array}function DR(e){return e instanceof globalThis.BigUint64Array}function NR(e){return e instanceof globalThis.RegExp}function _R(e){return e instanceof globalThis.Date}function qR(e){return e instanceof globalThis.Set}function UR(e){return e instanceof globalThis.Map}var lf=m(()=>{});var df=m(()=>{Yr()});var R=m(()=>{pf();lf();df();Yr();Yr()});var nn={};Ft(nn,{Get:()=>BR,Reset:()=>GR,Set:()=>WR});function GR(){gn.immutableTypes=!1,gn.maxErrors=8,gn.maxInstantiationCount=128,gn.useAcceleration=!0,gn.exactOptionalPropertyTypes=!1,gn.enumerableKind=!1,gn.correctiveParse=!1,gn.unionPrioritySort=!0}function WR(e){for(let t of u.Keys(e)){let n=e[t];n!==void 0&&Object.defineProperty(gn,t,{value:n})}}function BR(){return gn}var gn,ff=m(()=>{R();gn={immutableTypes:!1,maxErrors:8,maxInstantiationCount:128,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0}});var yr=m(()=>{ff()});function Vn(e){return nn.Get().immutableTypes?Object.freeze(e):e}var Ho=m(()=>{yr()});function zR(e,t){return tn.assign+=1,Vn({...e,...t})}var gf=m(()=>{hr();Ho()});function HR(e){return u.HasPropertyKey(e,"~kind")||u.HasPropertyKey(e,"~unsafe")}function VR(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 JR(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 YR(e){return u.IsClassInstance(e)?e:HR(e)?VR(e):JR(e)}function XR(e){return e.map(t=>br(t))}function ZR(e){return e.slice()}function QR(e){return new RegExp(e.source,e.flags)}function eA(e){return new Map(br([...e.entries()]))}function tA(e){return new Set(br([...e.values()]))}function br(e){return Hn.IsTypeArray(e)?ZR(e):Hn.IsRegExp(e)?QR(e):Hn.IsMap(e)?eA(e):Hn.IsSet(e)?tA(e):u.IsArray(e)?XR(e):u.IsObject(e)?YR(e):e}function Vo(e){return tn.clone+=1,br(e)}var wi=m(()=>{R();hr()});function nA(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 hf(e,t){return{...e,...t}}function rA(e,t,n={}){tn.create+=1;let r=hf(t,n),o=nn.Get().enumerableKind?hf(r,e):nA(r,e);return Vn(o)}var xf=m(()=>{yr();hr();Ho()});function oA(e,t){tn.discard+=1;let n={};for(let r of u.Keys(e)){if(t.includes(r))continue;let o=Object.getOwnPropertyDescriptor(e,r);o.value=Vo(o.value),Object.defineProperty(n,r,o)}return Vn(n)}var yf=m(()=>{R();hr();Ho();wi()});function sA(e,t,n){tn.update+=1;let r=nn.Get(),o=Vo(e);for(let s of Object.keys(t))Object.defineProperty(o,s,{configurable:!0,writable:!0,enumerable:r.enumerableKind,value:t[s]});for(let s of Object.keys(n))Object.defineProperty(o,s,{configurable:!0,enumerable:!0,writable:!0,value:n[s]});return Vn(o)}var bf=m(()=>{yr();hr();Ho();wi()});var l={};Ft(l,{Assign:()=>zR,Clone:()=>Vo,Create:()=>rA,Discard:()=>oA,Metrics:()=>tn,Update:()=>sA});var If=m(()=>{gf();wi();xf();yf();hr();bf()});var E=m(()=>{If()});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 l.Create({"~kind":"Deferred"},{type:"deferred",action:e,parameters:t,options:n},{})}function Jn(e){return C(e,"Deferred")}var ae=m(()=>{E();H()});function iA(e){return l.Update(e,{"~readonly":!0},{})}function Jo(e,t){return l.Update(iA(e),{},t)}function $f(e,t,n,r){let o=$(e,t,n);return Jo(o,r)}var ki=m(()=>{E();N()});function aA(e){return l.Update(e,{"~optional":!0},{})}function Yo(e,t){return l.Update(aA(e),{},t)}function wf(e,t,n,r){let o=$(e,t,n);return Yo(o,r)}var Ti=m(()=>{E();N()});function Dt(e,t){return l.Create({"~kind":"Array"},{type:"array",items:e},t)}function we(e){return C(e,"Array")}function Ei(e){return l.Discard(e,["~kind","type","items"])}var pt=m(()=>{E();H()});function hn(e,t,n={}){return l.Create({"~kind":"Constructor"},{type:"constructor",parameters:e,instanceType:t},n)}function Ue(e){return C(e,"Constructor")}function kf(e){return l.Discard(e,["~kind","type","parameters","instanceType"])}var Gt=m(()=>{E();H()});function xn(e,t,n={}){return l.Create({"~kind":"Function"},{type:"function",parameters:e,returnType:t},n)}function Ke(e){return C(e,"Function")}function Tf(e){return l.Discard(e,["~kind","type","parameters","returnType"])}var Wt=m(()=>{E();H()});function Nn(e,t){return l.Create({"~kind":"Ref"},{$ref:e},t)}function Ge(e){return C(e,"Ref")}var Bt=m(()=>{E();H()});function Yn(e,t){return l.Create({"~kind":"Generic"},{type:"generic",parameters:e,expression:t})}function Xr(e){return C(e,"Generic")}var Xo=m(()=>{E();H()});function Zr(e){return l.Create({"~kind":"Any"},{},e)}function Ee(e){return C(e,"Any")}var It=m(()=>{E();H()});function de(e){return l.Create({"~kind":"Never"},{not:{}},e)}function rn(e){return C(e,"Never")}var Ef,Ve=m(()=>{E();H();Ef="(?!)"});function yn(e,t={}){return F("AddOptional",[e],t)}function Ir(e,t={}){return Yo(e,t)}var Zo=m(()=>{ae();Ti()});function vf(e){return Ir(e)}function ot(e){return Fe(e)&&u.HasPropertyKey(e,"~optional")}var Xn=m(()=>{R();H();Zo()});function Sf(e){return u.Keys(e).filter(t=>!ot(e[t]))}function vi(e){return u.Keys(e)}function Si(e){return u.Values(e)}var $r=m(()=>{R();Xn()});function G(e,t={}){let n=Sf(e),r=n.length>0?{required:n}:{};return l.Create({"~kind":"Object"},{type:"object",...r,properties:e},t)}function ue(e){return C(e,"Object")}function Pf(e){return l.Discard(e,["~kind","type","properties","required"])}var le=m(()=>{E();H();$r()});function Je(e){return l.Create({"~kind":"Unknown"},{},e)}function Oe(e){return C(e,"Unknown")}var Qe=m(()=>{E();H()});function bn(e,t,n){let r=u.Keys(e).reduce((o,s)=>({...o,[s]:l.Update(e[s],{},{$id:s})}),{});return l.Create({"~kind":"Cyclic"},{$defs:r,$ref:t},n)}function et(e){return C(e,"Cyclic")}var $t=m(()=>{R();E();H()});function Rf(e){return l.Update(e,{"~unsafe":null},{})}function Pi(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"~unsafe")&&u.IsNull(e["~unsafe"])}var Ri=m(()=>{R();E()});var In={};Ft(In,{Match:()=>mA});function mA(e,t){return t[e.length]?.(...e)??(()=>{throw Error("Invalid Arguments")})()}var Af=m(()=>{});var Qr=m(()=>{Af()});function Qo(...e){let[t,n]=In.Match(e,{2:(r,o)=>[r,o,o],1:r=>[r,Je(),Je()]});return l.Create({"~kind":"Infer"},{type:"infer",name:t,extends:n},{})}function Me(e){return C(e,"Infer")}var zt=m(()=>{Qr();E();H();Qe()});function wr(e,t,n,r={}){return l.Create({"~kind":"Dependent"},{if:e,then:t,else:n},r)}function Se(e){return C(e,"Dependent")}function Of(e){return l.Discard(e,["~kind","if","then","else"])}var Pt=m(()=>{E();H()});function Mf(e){return u.IsObjectNotArray(e)}function Cf(e){return u.Keys(e).filter(n=>isNaN(n)).reduce((n,r)=>[...n,e[r]],[])}var Ai=m(()=>{R()});function Lf(e){return u.IsString(e)||u.IsNumber(e)}function jf(e,t){let n=Mf(e)?Cf(e):e;return l.Create({"~kind":"Enum"},{enum:n},t)}function tt(e){return C(e,"Enum")}var on=m(()=>{R();E();H();Ai();Ai()});function wt(e,t={}){return l.Create({"~kind":"Intersect"},{allOf:e},t)}function te(e){return C(e,"Intersect")}function Ff(e){return l.Discard(e,["~kind","allOf"])}var De=m(()=>{E();H()});var Df=m(()=>{yr();R()});var Nf=m(()=>{Df()});var _f=m(()=>{Nf()});function Ne(){throw new Error("Unreachable")}var ic=m(()=>{});var $n=m(()=>{ic()});var qf,tq,nq,rq,oq,Uf,sq,iq,aq,Kf=m(()=>{$n();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"})(qf||(qf={}));tq=BigInt("14695981039346656037"),[nq,rq]=[BigInt("1099511628211"),BigInt("18446744073709551616")],oq=Array.from({length:256}).map((e,t)=>BigInt(t)),Uf=new Float64Array(1),sq=new DataView(Uf.buffer),iq=new Uint8Array(Uf.buffer),aq=new TextEncoder});var Gf=m(()=>{Kf()});var ac=m(()=>{});var Wf=m(()=>{ac()});var Bf=m(()=>{});var zf=m(()=>{});var Hf=m(()=>{});var Vf=m(()=>{});var Jf=m(()=>{});var Yf=m(()=>{});var Xf=m(()=>{});var Zf=m(()=>{});var Qf=m(()=>{});var eg=m(()=>{});var tg=m(()=>{});var mc=m(()=>{});var ng=m(()=>{});var rg=m(()=>{});var og=m(()=>{});var sg=m(()=>{});var ig=m(()=>{});var ag=m(()=>{});var mg=m(()=>{});var ug=m(()=>{});var cg=m(()=>{});var pg=m(()=>{});var lg=m(()=>{});var dg=m(()=>{});var fg=m(()=>{});var gg=m(()=>{});var hg=m(()=>{});var xg=m(()=>{});var yg=m(()=>{});var bg=m(()=>{});var Ig=m(()=>{});var $g=m(()=>{});var wg=m(()=>{});var kg=m(()=>{});var Tg=m(()=>{});var Eg=m(()=>{});var vg=m(()=>{});var Sg=m(()=>{Wf();Bf();zf();Hf();Vf();Jf();ac();Yf();Xf();Zf();Qf();eg();tg();mc();mc();ng();rg();og();sg();ig();ag();mg();ug();cg();pg();lg();dg();fg();gg();hg();xg();yg();bg();Ig();$g();wg();kg();Tg();Eg();vg()});var Pg=m(()=>{Sg()});var es=m(()=>{Qr();_f();Gf();Pg();E();yr()});var Ag=m(()=>{es();es();es()});function Mi(e){return new ns(e)}function Og(e,t){return Mi(e).Decode(t).Encode(()=>{throw Error("Encode not implemented")})}function Mg(e,t){return Mi(e).Decode(()=>{throw Error("Decode not implemented")}).Encode(t)}function Oi(e){return Fe(e)&&u.HasPropertyKey(e,"~codec")&&u.IsObject(e["~codec"])&&u.HasPropertyKey(e["~codec"],"encode")&&u.HasPropertyKey(e["~codec"],"decode")}var ts,ns,uc=m(()=>{Ag();R();H();ts=class{constructor(t,n){this.type=t,this.decode=n}Encode(t){let n=this.type,r=Oi(n)?a=>this.decode(n["~codec"].decode(a)):this.decode,o=Oi(n)?a=>n["~codec"].encode(t(a)):t,s={decode:r,encode:o};return l.Update(this.type,{"~codec":s},{})}},ns=class{constructor(t){this.type=t}Decode(t){return new ts(this.type,t)}}});function Cg(e){return eo(e)}function kr(e){return Fe(e)&&u.HasPropertyKey(e,"~immutable")}var rs=m(()=>{R();H();os()});function wn(e,t={}){return F("AddReadonly",[e],t)}function Tr(e,t={}){return Jo(e,t)}var ss=m(()=>{ae();ki()});function Lg(e){return Tr(e)}function Er(e){return Fe(e)&&u.HasPropertyKey(e,"~readonly")}var is=m(()=>{R();H();ss()});function lA(e,t){let n=cc(e)?[...e["~refine"],t]:[t];return l.Update(e,{"~refine":n},{})}function jg(...e){let[t,n,r]=In.Match(e,{3:(o,s,a)=>[o,s,a],2:(o,s)=>[o,s,()=>"Refine Error"]});return lA(t,{check:n,error:r})}function dA(e){return u.IsObjectNotArray(e)&&u.HasPropertyKey(e,"check")&&u.HasPropertyKey(e,"error")&&u.IsFunction(e.check)&&u.IsFunction(e.error)}function cc(e){return Fe(e)&&u.HasPropertyKey(e,"~refine")&&u.IsArray(e["~refine"])&&u.Every(e["~refine"],0,t=>dA(t))}var pc=m(()=>{Qr();E();R();H()});function as(e){return l.Create({"~kind":"BigInt"},{type:"bigint"},e)}function kn(e){return C(e,"BigInt")}var Fg,vr=m(()=>{E();H();Fg="-?(?:0|[1-9][0-9]*)n"});function Ci(e){return l.Create({"~kind":"Boolean"},{type:"boolean"},e)}function Ht(e){return C(e,"Boolean")}var Zn=m(()=>{E();H()});function ms(e){return l.Create({"~kind":"Identifier"},{name:e})}function Dg(e){return C(e,"Identifier")}var lc=m(()=>{E();H()});function Sr(e){return l.Create({"~kind":"Integer"},{type:"integer"},e)}function lt(e){return C(e,"Integer")}var Li,Tn=m(()=>{E();H();Li="-?(?:0|[1-9][0-9]*)"});function fA(e){return u.IsBigInt(e)?"bigint":u.IsBoolean(e)?"boolean":u.IsNumber(e)?"number":u.IsString(e)?"string":(()=>{throw new dc(e)})()}function ne(e,t){return l.Create({"~kind":"Literal"},{type:fA(e),const:e},t)}function ji(e){return u.IsBigInt(e)||u.IsBoolean(e)||u.IsNumber(e)||u.IsString(e)}function Ng(e){return ce(e)&&u.IsNumber(e.const)}function _g(e){return ce(e)&&u.IsString(e.const)}function ce(e){return C(e,"Literal")}var dc,Ce=m(()=>{E();R();H();dc=class extends Error{constructor(t){super("Invalid Literal value"),Object.defineProperty(this,"cause",{value:{value:t},writable:!1,configurable:!1,enumerable:!1})}}});function to(e){return l.Create({"~kind":"Null"},{type:"null"},e)}function no(e){return C(e,"Null")}var ro=m(()=>{E();H()});function Rt(e){return l.Create({"~kind":"Number"},{type:"number"},e)}function Le(e){return C(e,"Number")}var Fi,dt=m(()=>{E();H();Fi="-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?"});function oo(e){return l.Create({"~kind":"Symbol"},{type:"symbol"},e)}function Qn(e){return C(e,"Symbol")}var Pr=m(()=>{E();H()});function Rr(...e){let[t,n,r]=In.Match(e,{3:(o,s,a)=>[o,s,a],2:(o,s)=>[o,s,s],1:o=>[o,Je(),Je()]});return l.Create({"~kind":"Parameter"},{name:t,extends:n,equals:r},{})}function qg(e){return C(e,"Parameter")}var fc=m(()=>{Qr();E();H();Qe()});function Vt(e){return l.Create({"~kind":"String"},{type:"string"},e)}function ft(e){return C(e,"String")}var Di,Jt=m(()=>{E();H();Di=".*"});function J(e,t={}){return l.Create({"~kind":"Union"},{anyOf:e},t)}function L(e){return C(e,"Union")}function Ug(e){return l.Discard(e,["~kind","anyOf"])}var X=m(()=>{E();H()});function us(e){let t=Kg(e);return u.IsEqual(t.length,2)?t[0]:[]}var cs=m(()=>{R();Ni()});function gA(e){return!0}function Gg(e){return u.ShiftLeft(e,(t,n)=>hA(t)?Gg(n):!1,()=>!0)}function Wg(e){return u.IsEqual(e.length,0)?!1:Gg(e)}function hA(e){return L(e)?Wg(e.anyOf):ce(e)?gA(e.const):!1}function _i(e){return Wg(e)}var qi=m(()=>{R();Ce();X()});function Ui(e){return l.Create({"~kind":"TemplateLiteral"},{type:"string",pattern:e},{})}var Ki=m(()=>{E()});function Bg(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>Bg(o,t,[...n,`${r}${t}`]),()=>n)}function xA(e,t){return u.IsEqual(e.length,0)?[`${t}`]:Bg(e,t)}function zg(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>zg(e,o,[...n,...Hg(e,r)]),()=>n)}function Hg(e,t){return L(t)?zg(e,t.anyOf):ce(t)?xA(e,t.const):Ne()}function Vg(e,t){return u.ShiftLeft(t,(n,r)=>Vg(Hg(e,n),r),()=>e)}function yA(e){return e.map(t=>ne(t))}function bA(e){let t=Vg([],e),n=yA(t);return J(n)}function IA(e){return u.IsEqual(e.length,0)?Ne():u.IsEqual(e.length,1)&&ce(e[0])?e[0]:bA(e)}function gc(e){let t=us(e);return u.IsEqual(t.length,0)?Vt():_i(t)?IA(t):Ui(e)}function Jg(e){let t=gc(e);return Pe(t)?Vt():t}var Gi=m(()=>{R();$n();Ce();Jt();kt();X();cs();qi();Ki()});function Tt(e,t){let n="object",r={[e]:t};return l.Create({"~kind":"Record"},{type:n,patternProperties:r})}var er=m(()=>{E()});function Yg(e){return Tt(sn,e)}var Xg=m(()=>{Ye();er()});function Zg(e){return G({true:e,false:e})}var Qg=m(()=>{le()});function je(e,t={}){let[n,r,o]=[e,e.length,!1];return l.Create({"~kind":"Tuple"},{type:"array",additionalItems:o,items:n,minItems:r},t)}function he(e){return C(e,"Tuple")}function eh(e){return l.Discard(e,["~kind","type","items","minItems","additionalItems"])}var _e=m(()=>{E();H()});function $A(e){return l.Discard(e,["~readonly"])}function hc(e,t){return l.Update($A(e),{},t)}function th(e,t,n,r){let o=$(e,t,n);return hc(o,r)}var xc=m(()=>{E();N()});function nh(e,t={}){return F("RemoveReadonly",[e],t)}function rh(e,t={}){return hc(e,t)}var yc=m(()=>{ae();xc()});function wA(e){return l.Discard(e,["~optional"])}function bc(e,t){return l.Update(wA(e),{},t)}function oh(e,t,n,r){let o=$(e,t,n);return bc(o,r)}var Ic=m(()=>{E();N()});function sh(e,t={}){return F("RemoveOptional",[e],t)}function Wi(e,t={}){return bc(e,t)}var Bi=m(()=>{ae();Ic()});function $c(e){return e.reduceRight((n,r,o)=>({[o]:r,...n}),{})}function ih(e){let t=$c(e.items);return G(t)}var wc=m(()=>{le()});function kc(e){return ue(e)||he(e)}function kA(e,t){return Er(e)?!!Er(t):!1}function TA(e,t){return ot(e)?!!ot(t):!1}function EA(e,t){let n=kA(e,t),r=TA(e,t),o=ke([e,t]),s=rh(Wi(o));return n&&r?Tr(Ir(s)):n&&!r?Tr(s):!n&&r?Ir(s):s}function vA(e,t,n){return n in e?n in t?EA(e[n],t[n]):e[n]:n in t?t[n]:de()}function SA(e,t){return[...new Set([...u.Keys(e),...u.Keys(t)])].reduce((o,s)=>({...o,[s]:vA(e,t,s)}),{})}function ah(e){return ue(e)?e.properties:he(e)?$c(e.items):{}}function mh(e,t){let n=ah(e),r=ah(t),o=SA(n,r);return G(o)}var Tc=m(()=>{R();is();Xn();le();Ve();_e();ss();Zo();yc();Bi();wc();V()});function PA(e,t){let n=ds(e,t);return u.IsEqual(n,ls)?e:u.IsEqual(n,zi)||u.IsEqual(n,ps)?t:de()}function RA(e,t){let n=kc(e),r=kc(t);return n&&r?mh(e,t):n&&!r?e:!n&&r?t:PA(e,t)}function uh(e,t){return rn(e)||Ee(e)?e:Oe(e)||rn(t)||Ee(t)?t:Oe(t)?e:RA(e,t)}var Ec=m(()=>{R();It();Ve();Qe();fs();Tc()});function AA(e,t){return L(e)||L(t)}function OA(e,t){let n=Yt(e),r=Yt(t);return AA(n,r)?ke([n,r]):uh(n,r)}function ch(e,t,n=[]){return u.ShiftLeft(t,(r,o)=>ch(e,o,[...n,OA(r,e)]),()=>u.IsEqual(n.length,0)?[e]:n)}function ph(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>ph(o,t,[...n,...gs([r],t)]),()=>n)}function gs(e,t=[]){return u.ShiftLeft(e,(n,r)=>L(n)?gs(r,ph(n.anyOf,t)):gs(r,ch(n,t)),()=>t)}var vc=m(()=>{R();X();Ec();V();V()});function MA(e,t){let n=nt({},e,t);return W.IsExtendsTrueLike(n)?[]:[e]}function lh(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>lh(o,t,[...n,...MA(r,t)]),()=>n)}function Hi(e,t){let n=Yt(e),r=L(n)?n.anyOf:[n],o=lh(r,t);return Et(o)}var Sc=m(()=>{R();X();En();V();V()});function an(e,t,n){let r=ke([e,t]),o=Hi(n,e);return Et([r,o])}function gt(e,t=[]){return u.ShiftLeft(e,(n,r)=>gt(r,[...t,ne(n)]),()=>Et(t))}function ke(e){let t=gs(e),n=Pc(t);return Et(n)}function st(e){let t=Jg(e);return Yt(t)}function Et(e){let t=Pc(e);return tr(t)}function Yt(e){return Se(e)?an(e.if,e.then,e.else):tt(e)?gt(e.enum):te(e)?ke(e.allOf):Pe(e)?st(e.pattern):L(e)?Et(e.anyOf):e}function tr(e){return u.IsEqual(e.length,1)?e[0]:u.IsEqual(e.length,0)?de():J(e)}var V=m(()=>{R();Pt();on();De();Ce();Ve();kt();X();vc();Rc();Sc();Gi()});function dh(e,t){let n=gt(e);return nr(n,t)}var fh=m(()=>{hs();V()});function gh(e,t){return Tt(rr,t)}var hh=m(()=>{Ye();er()});function xh(e,t){let n=ke(e);return nr(n,t)}var yh=m(()=>{V();hs()});function bh(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 Ih=m(()=>{R();le()});function $h(e,t){return Tt(so,t)}var wh=m(()=>{Ye();er()});function kh(e,t){return u.HasPropertyKey(e,"pattern")&&(u.IsString(e.pattern)||e.pattern instanceof RegExp)?Tt(e.pattern.toString(),t):Tt(sn,t)}var Th=m(()=>{R();Ye();er()});function Eh(e,t){let n=us(e);return _i(n)?nr(st(e),t):Tt(e,t)}var vh=m(()=>{hs();cs();qi();V();er()});function CA(e){return L(e)?io(e.anyOf):[e]}function io(e,t=[]){return u.ShiftLeft(e,(n,r)=>io(r,[...t,...CA(n)]),()=>t)}var Vi=m(()=>{R();X()});function LA(e){return e.some(t=>ft(t)||Le(t)||lt(t))}function jA(e,t){return u.IsEqual(LA(e),!0)?Tt(sn,t):void 0}function FA(e,t){return e.reduce((n,r)=>ce(r)&&(u.IsString(r.const)||u.IsNumber(r.const))?{...n,[r.const]:t}:n,{})}function DA(e,t){let n=FA(e,t);return G(n)}function Sh(e,t){let n=io(e),r=jA(n,t);return Fe(r)?r:DA(n,t)}var Ph=m(()=>{R();H();Ce();dt();Tn();le();Jt();Ye();Vi();er()});function nr(e,t){return Ee(e)?Yg(t):Ht(e)?Zg(t):tt(e)?dh(e.enum,t):lt(e)?gh(e,t):te(e)?xh(e.allOf,t):ce(e)?bh(e.const,t):Le(e)?$h(e,t):L(e)?Sh(e.anyOf,t):ft(e)?kh(e,t):Pe(e)?Eh(e.pattern,t):G({})}var hs=m(()=>{It();Zn();on();De();Tn();Ce();dt();le();Jt();kt();X();Xg();Qg();fh();hh();yh();Ih();wh();Th();vh();Ph()});function Ac(e,t,n){return z([e])?l.Update(nr(e,t),{},n):Yi(e,t,n)}function Rh(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Ac(s,a,o)}var Ji=m(()=>{E();Ye();hs();N()});function Yi(e,t,n={}){return F("Record",[e,t],n)}function Xi(e,t,n={}){return Ac(e,t,n)}function Ah(e,t){return Tt(e,t)}function Zi(e){return u.IsEqual(e,sn)?Vt():u.IsEqual(e,rr)?Sr():u.IsEqual(e,so)?Rt():gc(e)}function Xt(e){return u.Keys(e.patternProperties)[0]}function ao(e){let t=Xt(e);return Zi(t)}function ht(e){return e.patternProperties[Xt(e)]}function rt(e){return C(e,"Record")}var rr,so,sn,Ye=m(()=>{E();R();H();Tn();dt();Jt();ae();Gi();er();Ji();rr=`^${Li}$`,so=`^${Fi}$`,sn=`^${Di}$`});function Ar(e){return l.Create({"~kind":"Rest"},{type:"rest",items:e},{})}function or(e){return C(e,"Rest")}var mo=m(()=>{E();H()});var Oh=m(()=>{});function Qi(e){return l.Create({"~kind":"This"},{$ref:"#"},e)}function ea(e){return C(e,"This")}var ta=m(()=>{E();H()});function uo(e){return l.Create({"~kind":"Undefined"},{type:"undefined"},e)}function co(e){return C(e,"Undefined")}var po=m(()=>{E();H()});function na(e){return l.Create({"~kind":"Void"},{type:"void"},e)}function vn(e){return C(e,"Void")}var Or=m(()=>{E();H()});var ra=m(()=>{uc();rs();Xn();is();pc();It();pt();vr();Zn();lo();Gt();$t();ae();on();Wt();Xo();lc();Pt();zt();Tn();De();Ce();Ve();ro();dt();Qe();Pr();le();fc();$r();Ye();Bt();mo();H();Oh();Jt();Pr();kt();ta();_e();po();X();Qe();Ri();Or()});function _A(e,t){return u.IsEqual(e,"Array")?Dt(t[0]):u.IsEqual(e,"Capitalize")?sa(t[0]):u.IsEqual(e,"ConstructorParameters")?ca(t[0]):u.IsEqual(e,"Evaluate")?Cy(t[0]):u.IsEqual(e,"Exclude")?pa(t[0],t[1]):u.IsEqual(e,"Extract")?la(t[0],t[1]):u.IsEqual(e,"Index")?Is(t[0],t[1]):u.IsEqual(e,"InstanceType")?da(t[0]):u.IsEqual(e,"Lowercase")?ia(t[0]):u.IsEqual(e,"NonNullable")?fa(t[0]):u.IsEqual(e,"Omit")?ga(t[0],t[1]):u.IsEqual(e,"Parameters")?ha(t[0]):u.IsEqual(e,"Partial")?xa(t[0]):u.IsEqual(e,"Pick")?ya(t[0],t[1]):u.IsEqual(e,"Readonly")?ba(t[0]):u.IsEqual(e,"KeyOf")?$s(t[0]):u.IsEqual(e,"Record")?Yi(t[0],t[1]):u.IsEqual(e,"Required")?Ia(t[0]):u.IsEqual(e,"ReturnType")?$a(t[0]):u.IsEqual(e,"Uncapitalize")?aa(t[0]):u.IsEqual(e,"Uppercase")?ma(t[0]):bs(Nn(e),t)}function Mr(){throw Error("Unreachable")}function Fh(e,t=[]){return u.ShiftLeft(e,(n,r)=>Fh(r,[...t,n[1]]),()=>t)}function _n(e){return u.IsEqual(e.length,3)?[e[0],...Fh(e[1])]:[]}function Dh(e){return Rr(e[0],e[2],e[4])}function Nh(e){return Rr(e[0],e[2],e[2])}function _h(e){return Rr(e[0],Je(),e[2])}function qh(e){return Rr(e,Je(),Je())}function Uh(e){return _n(e)}function Kh(e){return e[1]}function Gh(e){return _n(e)}function Wh(e){return e[1]}function Bh(e){return _A(e[0],e[1])}function zh(e){return null}function Hh(e){return Vt()}function Vh(e){return Rt()}function Jh(e){return Ci()}function Yh(e){return uo()}function Xh(e){return to()}function Zh(e){return Sr()}function Qh(e){return as()}function ex(e){return Je()}function tx(e){return Zr()}function nx(e){return G({})}function rx(e){return de()}function ox(e){return oo()}function sx(e){return na()}function ix(e){return Qi()}function ax(e){return ne(BigInt(e))}function mx(e){return ne(u.IsEqual(e,"true"))}function ux(e){return ne(parseFloat(e))}function cx(e){return ne(e)}function px(e){return e[1]}function lx(e){return ne(e)}function dx(e){return u.IsEqual(e.length,3)?[e[0],e[1],...e[2]]:[e[0]]}function fx(e){return e[1]}function gx(e){return oa(e)}function hx(e){return u.IsEqual(e.length,6)?wr(e[1],e[3],e[5]):wr(e[1],e[3],Je())}function xx(e){return e.length>0}function yx(e){return e.reduce((t,n)=>u.IsEqual(n.length,3)?[...t,[n[1]]]:[...t,[]],[])}function bx(e){return u.IsEqual(e.length,6)?[e[1],e[3],e[5]]:[]}function Ix(e){return u.IsArray(e)&&u.IsEqual(e.length,3)?e[1]:e}function $x(e){return u.IsEqual(e.length,2)?e[1]:[]}function Mh(e,t){return t.reduce((n,r)=>{let o=r;return u.IsEqual(o.length,1)?Is(n,o[0]):u.IsEqual(o.length,0)?Dt(n):Mr()},e)}function Ch(e,t){return u.IsEqual(t.length,3)?ua(e,t[0],t[1],t[2]):e}function qA(e,t){return u.IsArray(t)&&u.IsEqual(t.length,0)?e:wa(e,t)}function wx(e){let[t,n,r,o,s]=e;return qA(Ch(t?$s(Mh(n,r)):Mh(n,r),o),s)}function Oc(e,t){return u.IsEqual(t.length,3)?(()=>{let[n,r,o]=t,s=Oc(r,o);if(u.IsEqual(n,"&"))return te(s)?wt([e,...s.allOf]):wt([e,s]);if(u.IsEqual(n,"|"))return L(s)?J([e,...s.anyOf]):J([e,s]);Mr()})():e}function kx(e){let[t,n]=e;return Oc(t,n)}function Tx(e){let[t,n]=e;return Oc(t,n)}function Ex(e){return My(e[1])}function vx(e){return e[1]}function Sx(e){return Yn(e[0],e[2])}function Px(e){return u.IsEqual(e.length,4)?Qo(e[1],e[3]):u.IsEqual(e.length,2)?Qo(e[1],Je()):Mr()}function Rx(e){return`${e}`}function Ax(e){return lt(e[3])?rr:Le(e[3])?so:Qn(e[3])?sn:ft(e[3])?sn:Mr()}function Ox(e){return e.length>0}function Mx(e){return e.length>0}function Cx(e){let[t,n,r,o,s]=e;return{[n]:t&&r?wn(yn(s)):t&&!r?wn(s):!t&&r?yn(s):s}}function Lx(e){return _n(e)}function jx(e){return e.reduce((t,n)=>u.HasPropertyKey(n,rr)||u.HasPropertyKey(n,so)||u.HasPropertyKey(n,sn)?[t[0],l.Assign(t[1],n)]:[l.Assign(t[0],n),t[1]],[{},{}])}function Fx(e){return jx(e[1])}function Dx(e){let[t,n]=e,r=u.IsEqual(u.Keys(n).length,0)?{}:{patternProperties:n};return G(t,r)}function Nx(e){return u.IsEqual(e.length,5)?wn(yn(e[4])):u.IsEqual(e.length,3)?e[2]:u.IsEqual(e.length,4)?u.IsEqual(e[2],"readonly")?wn(e[3]):yn(e[3]):Mr()}function _x(e){if(!u.IsArray(e)||!u.IsEqual(e.length,3))return e;let[t,n,r]=e;return t&&r?wn(yn(n)):t&&!r?wn(n):!t&&r?yn(n):n}function qx(e){return u.IsEqual(e.length,2)?Ar(e[1]):u.IsEqual(e.length,1)?e[0]:Mr()}function Ux(e){return _n(e)}function Kx(e){return je(e[1])}function Gx(e){return wn(yn(e[4]))}function Wx(e){return wn(e[3])}function Bx(e){return yn(e[3])}function zx(e){return e[2]}function Hx(e){return u.IsEqual(e.length,2)?Ar(e[1]):u.IsEqual(e.length,1)?e[0]:Mr()}function Vx(e){return _n(e)}function Jx(e){return xn(e[1],e[4])}function Yx(e){return hn(e[2],e[5])}function Lh(e,t){return u.IsEqual(e,"remove")?nh(t):u.IsEqual(e,"add")?wn(t):t}function Xx(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 jh(e,t){return u.IsEqual(e,"remove")?sh(t):u.IsEqual(e,"add")?yn(t):t}function Zx(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 Qx(e){return u.IsEqual(e.length,2)?[e[1]]:[]}function ey(e){return u.IsArray(e[6])&&u.IsEqual(e[6].length,1)?xs(ms(e[3]),e[5],e[6][0],Lh(e[1],jh(e[8],e[10]))):xs(ms(e[3]),e[5],Nn(e[3]),Lh(e[1],jh(e[8],e[10])))}function ty(e){return Nn(e)}function ny(e){return BigInt(e)}function ry(e){return parseFloat(e)}function oy(e){return u.IsEqual(e,"true")}function sy(e){return null}function iy(e){return{[e[0]]:e[2]}}function ay(e){return _n(e)}function UA(e){return e.reduce((t,n)=>l.Assign(t,n),{})}function my(e){return UA(e[1])}function uy(e){return _n(e)}function cy(e){return e[1]}function py(e){return as()}function ly(e){return Vt()}function dy(e){return Rt()}function fy(e){return Sr()}function gy(e){return de()}function hy(e){return ne(e)}function xy(e){return J(e[1])}function yy(e){return e.length===3?[...e[0],...e[2]]:e.length===1?[...e[0]]:[]}function by(e){return[e[0],...e[1]]}function Iy(e){return e[1]}function $y(e){return _n(e)}function wy(e){return u.IsEqual(e.length,2)?e[1]:[]}function ky(e){let t=e[2],n=e[3],[r,o]=e[4],s=u.IsEqual(u.Keys(o).length,0)?{}:{patternProperties:o};return{[e[1]]:Yn(t,ys(n,r,s))}}function Ty(e){let t=e[2],[n,r]=e[3],o=u.IsEqual(u.Keys(r).length,0)?{}:{patternProperties:r};return{[e[1]]:ys(t,n,o)}}function Ey(e){return{[e[1]]:Yn(e[2],e[4])}}function vy(e){return{[e[1]]:e[3]}}function Sy(e){return null}function Py(e){return _n(e)}function Ry(e){return e[1]}function Ay(e){let[t,n]=[e[0],e[1]];return Ly(l.Assign(t,jx(n)[0]))}var Oy=m(()=>{E();R();ra();fo()});var qn=m(()=>{Yr()});function ws(e){return se(e.length,2)}function Z(e,t,n){return ws(e)?t(e[0],e[1]):n()}var At=m(()=>{qn()});function WA(e,t){return se(t.indexOf(e),0)?[e,t.slice(e.length)]:[]}function ve(e,t){for(let n=0;n<e.length;n++){let r=WA(e[n],t);if(ws(r))return r}return[]}var Sn=m(()=>{At();qn()});function Mc(e,t){return Array.from({length:t-e+1},(n,r)=>String.fromCharCode(e+r))}var jy,Cc,Lc,go,Fy,ho,sr,ka,Dy,Ta,it=m(()=>{jy=[...Mc(97,122),...Mc(65,90)],Cc="0",Lc=Mc(49,57),go=[Cc,...Lc],Fy=" ",ho=`
|
|
12
|
+
`,sr="_",ka=".",Dy="$",Ta="-"});function qy(e){let t=e.indexOf(zA);return se(t,-1)?"":e.slice(t+2)}function Uy(e){let t=e.indexOf(ho);return se(t,-1)?"":e.slice(t)}function HA(e){return e.replace(/^[ \t\r\f\v]+/,"")}function Ea(e){let t=HA(e);return t.startsWith(_y)?Ea(qy(t.slice(2))):t.startsWith(Ny)?Ea(Uy(t.slice(2))):t}function Xe(e){let t=e.trimStart();return t.startsWith(_y)?Xe(qy(t.slice(2))):t.startsWith(Ny)?Xe(Uy(t.slice(2))):t}var Ny,_y,zA,Pn=m(()=>{qn();it();Ny="//",_y="/*",zA="*/"});function va(e,t){return Z(ve([e],t),(n,r)=>[n,r],()=>["",t])}var jc=m(()=>{At();Sn()});function VA(e,t){return e.includes(t)}function xo(e,t,n,r=""){return Z(ve(e,n),(o,s)=>VA(t,o)?xo(e,t,s,r):xo(e,t,s,`${r}${o}`),()=>[r,n])}var Fc=m(()=>{At();Sn()});function JA(e){return ve(Lc,e)}function XA(e){return xo(YA,[sr],e)}function ZA(e){return Z(ve([Cc],e),(t,n)=>[t,n],()=>Z(JA(e),(t,n)=>Z(XA(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[]))}function Sa(e){return ZA(Xe(e))}var YA,Pa=m(()=>{At();Pn();Sn();Fc();it();it();it();it();YA=[...go,sr]});function QA(e){return va(Ta,e)}function eO(e){return Z(QA(e),(t,n)=>Z(Sa(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Ky(e){return eO(Xe(e))}var Dc=m(()=>{At();Pn();jc();it();Pa()});function tO(e){return Z(Ky(e),(t,n)=>Z(ve(["n"],n),(r,o)=>[`${t}`,o],()=>[]),()=>[])}function Nc(e){return tO(e)}var Gy=m(()=>{At();Sn();Dc()});function _c(e,t){return ve([e],t)}function g(e,t){return se(e,"")?["",t]:e.startsWith(ho)?_c(e,Ea(t)):e.startsWith(Fy)?_c(e,t):_c(e,Xe(t))}var Wy=m(()=>{qn();Pn();Pn();Sn();it();it()});function nO(e){return ve(By,e)}function zy(e,t=""){return Z(ve(rO,e),(n,r)=>zy(r,`${t}${n}`),()=>[t,e])}function oO(e){return Z(nO(e),(t,n)=>Z(zy(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Re(e){return oO(Xe(e))}var By,rO,Hy=m(()=>{At();Pn();Sn();it();it();it();it();By=[...jy,sr,Dy];rO=[...By,...go]});function iO(e){return ws(ve([ka],e))}function Vy(e){return Z(xo(sO,[sr],e),(t,n)=>se(t,"")?[]:[t,n],()=>[])}function aO(e){return Z(ve([ka],e),(t,n)=>Z(Vy(n),(r,o)=>[`0${t}${r}`,o],()=>[]),()=>[])}function mO(e){return Z(Sa(e),(t,n)=>Z(ve([ka],n),(r,o)=>Z(Vy(o),(s,a)=>[`${t}${r}${s}`,a],()=>[`${t}`,o]),()=>[`${t}`,n]),()=>[])}function uO(e){return iO(e)?aO(e):mO(e)}function Jy(e){return uO(Xe(e))}var sO,qc=m(()=>{qn();At();Pn();Sn();Fc();it();it();Pa();sO=[...go,sr]});function cO(e){return va(Ta,e)}function pO(e){return Z(cO(e),(t,n)=>Z(Jy(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Ra(e){return pO(Xe(e))}var Yy=m(()=>{At();Pn();jc();it();qc()});var Xy=m(()=>{qn()});function lO(e){return se(e,"")?[]:[e.slice(0,1),e.slice(1)]}function Zy(e,t){return $i(e,(n,r)=>t.startsWith(n)?!0:Zy(r,t),()=>!1)}function ir(e,t,n=""){return Z(lO(t),(r,o)=>Zy(e,t)?[n,t]:ir(e,o,`${n}${r}`),()=>[])}var Aa=m(()=>{At();qn()});function dO(e,t,n){return Z(ve([e],n),(r,o)=>Z(ir([t],o),(s,a)=>Z(ve([t],a),(c,p)=>[`${s}`,p],()=>[]),()=>[]),()=>[])}function fO(e,t,n){return Z(ve([e],n),(r,o)=>Z(ir([ho,t],o),(s,a)=>Z(ve([t],a),(c,p)=>[`${s}`,p],()=>[]),()=>[]),()=>[])}function Qy(e,t,n,r){return n?dO(e,t,Xe(r)):fO(e,t,Xe(r))}var Uc=m(()=>{At();Pn();it();Sn();Aa()});function gO(e,t){return ve(e,t)}function hO(e,t){return Qy(e,e,!1,t)}function xO(e,t){return Z(gO(e,t),(n,r)=>hO(n,`${n}${r}`),()=>[])}function Oa(e,t){return xO(e,Xe(t))}var eb=m(()=>{At();Sn();Pn();Uc()});function tb(e,t){return Z(ir(e,t),(n,r)=>se(n,"")?[]:[n,r],()=>[])}var nb=m(()=>{qn();At();Aa()});var rb=m(()=>{Gy();Wy();Hy();Dc();Yy();Xy();Uc();eb();Pa();qc();nb();Aa()});var i,bO,IO,$O,wO,ib,ab,kO,Wc,mb,TO,EO,vO,ub,cb,pb,SO,PO,RO,lb,AO,OO,MO,CO,LO,db,jO,FO,DO,Kc,fb,Bc,NO,_O,qO,UO,KO,GO,WO,gb,BO,zO,HO,VO,hb,xb,yb,bb,Ma,JO,YO,XO,ZO,ie,QO,eM,tM,nM,Ib,$b,wb,kb,Ca,Tb,rM,zc,oM,sM,ob,Eb,vb,iM,aM,mM,uM,cM,pM,sb,Sb,Pb,Rb,lM,dM,fM,gM,hM,xM,yM,bM,IM,$M,wM,kM,TM,Ab,Ob,EM,Mb,Cb,vM,SM,Hc,PM,RM,AM,OM,MM,CM,LM,jM,Lb,Gc,Vc,Kg,jb,FM,Fb,DM,NM,_M,qM,UM,Db,Nb,KM,Jc,GM,_b,Ni=m(()=>{Oy();rb();i=(e,t,n=()=>[])=>e.length===2?t(e):n(),bO=e=>i(i(Re(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])=>[Dh(t),n]),IO=e=>i(i(Re(e),([t,n])=>i(g("extends",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Nh(t),n]),$O=e=>i(i(Re(e),([t,n])=>i(g("=",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[_h(t),n]),wO=e=>i(Re(e),([t,n])=>[qh(t),n]),ib=e=>i(i(bO(e),([t,n])=>[t,n],()=>i(IO(e),([t,n])=>[t,n],()=>i($O(e),([t,n])=>[t,n],()=>i(wO(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),ab=(e,t=[])=>i(i(g(",",e),([n,r])=>i(ib(r),([o,s])=>[[n,o],s])),([n,r])=>ab(r,[...t,n]),()=>[t,e]),kO=e=>i(i(i(ib(e),([t,n])=>i(ab(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])=>[Uh(t),n]),Wc=e=>i(i(g("<",e),([t,n])=>i(kO(n),([r,o])=>i(g(">",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Kh(t),n]),mb=(e,t=[])=>i(i(g(",",e),([n,r])=>i(ie(r),([o,s])=>[[n,o],s])),([n,r])=>mb(r,[...t,n]),()=>[t,e]),TO=e=>i(i(i(ie(e),([t,n])=>i(mb(n),([r,o])=>i(i(g(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Gh(t),n]),EO=e=>i(i(g("<",e),([t,n])=>i(TO(n),([r,o])=>i(g(">",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Wh(t),n]),vO=e=>i(i(Re(e),([t,n])=>i(EO(n),([r,o])=>[[t,r],o])),([t,n])=>[Bh(t),n]),ub=e=>i(i(i(g(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[zh(t),n]),cb=e=>i(g("string",e),([t,n])=>[Hh(t),n]),pb=e=>i(g("number",e),([t,n])=>[Vh(t),n]),SO=e=>i(g("boolean",e),([t,n])=>[Jh(t),n]),PO=e=>i(g("undefined",e),([t,n])=>[Yh(t),n]),RO=e=>i(g("null",e),([t,n])=>[Xh(t),n]),lb=e=>i(g("integer",e),([t,n])=>[Zh(t),n]),AO=e=>i(g("bigint",e),([t,n])=>[Qh(t),n]),OO=e=>i(g("unknown",e),([t,n])=>[ex(t),n]),MO=e=>i(g("any",e),([t,n])=>[tx(t),n]),CO=e=>i(g("object",e),([t,n])=>[nx(t),n]),LO=e=>i(g("never",e),([t,n])=>[rx(t),n]),db=e=>i(g("symbol",e),([t,n])=>[ox(t),n]),jO=e=>i(g("void",e),([t,n])=>[sx(t),n]),FO=e=>i(g("this",e),([t,n])=>[ix(t),n]),DO=e=>i(i(g("${",e),([t,n])=>i(ie(n),([r,o])=>i(g("}",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[px(t),n]),Kc=e=>i(ir(["${","`"],e),([t,n])=>[lx(t),n]),fb=e=>i(i(i(Kc(e),([t,n])=>i(DO(n),([r,o])=>i(fb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i(i(Kc(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(Kc(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[dx(t),n]),Bc=e=>i(i(g("`",e),([t,n])=>i(fb(n),([r,o])=>i(g("`",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[fx(t),n]),NO=e=>i(Bc(e),([t,n])=>[gx(t),n]),_O=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])=>[hx(t),n]),qO=e=>i(Nc(e),([t,n])=>[ax(t),n]),UO=e=>i(i(g("true",e),([t,n])=>[t,n],()=>i(g("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[mx(t),n]),KO=e=>i(Ra(e),([t,n])=>[ux(t),n]),GO=e=>i(Oa(["'",'"'],e),([t,n])=>[cx(t),n]),WO=e=>i(i(i(g("keyof",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[xx(t),n]),gb=(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])=>gb(r,[...t,n]),()=>[t,e]),BO=e=>i(gb(e),([t,n])=>[yx(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])=>[bx(t),n]),HO=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(cb(e),([t,n])=>[t,n],()=>i(pb(e),([t,n])=>[t,n],()=>i(SO(e),([t,n])=>[t,n],()=>i(PO(e),([t,n])=>[t,n],()=>i(RO(e),([t,n])=>[t,n],()=>i(lb(e),([t,n])=>[t,n],()=>i(AO(e),([t,n])=>[t,n],()=>i(OO(e),([t,n])=>[t,n],()=>i(MO(e),([t,n])=>[t,n],()=>i(CO(e),([t,n])=>[t,n],()=>i(LO(e),([t,n])=>[t,n],()=>i(db(e),([t,n])=>[t,n],()=>i(jO(e),([t,n])=>[t,n],()=>i(FO(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(NO(e),([t,n])=>[t,n],()=>i(_O(e),([t,n])=>[t,n],()=>i(oM(e),([t,n])=>[t,n],()=>i(aM(e),([t,n])=>[t,n],()=>i(dM(e),([t,n])=>[t,n],()=>i(lM(e),([t,n])=>[t,n],()=>i(xM(e),([t,n])=>[t,n],()=>i(vO(e),([t,n])=>[t,n],()=>i(yM(e),([t,n])=>[t,n],()=>[])))))))))))))))))))))))))))),([t,n])=>[Ix(t),n]),VO=e=>i(i(i(g("with",e),([t,n])=>i(Mb(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[$x(t),n]),hb=e=>i(i(WO(e),([t,n])=>i(HO(n),([r,o])=>i(BO(o),([s,a])=>i(zO(a),([c,p])=>i(VO(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[wx(t),n]),xb=e=>i(i(i(g("&",e),([t,n])=>i(hb(n),([r,o])=>i(xb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),yb=e=>i(i(hb(e),([t,n])=>i(xb(n),([r,o])=>[[t,r],o])),([t,n])=>[kx(t),n]),bb=e=>i(i(i(g("|",e),([t,n])=>i(yb(n),([r,o])=>i(bb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),Ma=e=>i(i(yb(e),([t,n])=>i(bb(n),([r,o])=>[[t,r],o])),([t,n])=>[Tx(t),n]),JO=e=>i(i(g("readonly",e),([t,n])=>i(Ma(n),([r,o])=>[[t,r],o])),([t,n])=>[Ex(t),n]),YO=e=>i(i(g("|",e),([t,n])=>i(Ma(n),([r,o])=>[[t,r],o])),([t,n])=>[vx(t),n]),XO=e=>i(i(Wc(e),([t,n])=>i(g("=",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Sx(t),n]),ZO=e=>i(i(i(g("infer",e),([t,n])=>i(Re(n),([r,o])=>i(g("extends",o),([s,a])=>i(Ma(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[t,n],()=>i(i(g("infer",e),([t,n])=>i(Re(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>[])),([t,n])=>[Px(t),n]),ie=e=>i(i(ZO(e),([t,n])=>[t,n],()=>i(YO(e),([t,n])=>[t,n],()=>i(JO(e),([t,n])=>[t,n],()=>i(Ma(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),QO=e=>i(Ra(e),([t,n])=>[Rx(t),n]),eM=e=>i(Re(e),([t,n])=>[t,n]),tM=e=>i(Oa(["'",'"'],e),([t,n])=>[t,n]),nM=e=>i(i(g("[",e),([t,n])=>i(Re(n),([r,o])=>i(g(":",o),([s,a])=>i(i(lb(a),([c,p])=>[c,p],()=>i(pb(a),([c,p])=>[c,p],()=>i(cb(a),([c,p])=>[c,p],()=>i(db(a),([c,p])=>[c,p],()=>[])))),([c,p])=>i(g("]",p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Ax(t),n]),Ib=e=>i(i(QO(e),([t,n])=>[t,n],()=>i(eM(e),([t,n])=>[t,n],()=>i(tM(e),([t,n])=>[t,n],()=>i(nM(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),$b=e=>i(i(i(g("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Ox(t),n]),wb=e=>i(i(i(g("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Mx(t),n]),kb=e=>i(i($b(e),([t,n])=>i(Ib(n),([r,o])=>i(wb(o),([s,a])=>i(g(":",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Cx(t),n]),Ca=e=>i(i(i(g(",",e),([t,n])=>i(g(`
|
|
13
|
+
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g(";",e),([t,n])=>i(g(`
|
|
14
|
+
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g(",",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(g(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(g(`
|
|
15
|
+
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))))),([t,n])=>[t,n]),Tb=(e,t=[])=>i(i(Ca(e),([n,r])=>i(kb(r),([o,s])=>[[n,o],s])),([n,r])=>Tb(r,[...t,n]),()=>[t,e]),rM=e=>i(i(i(kb(e),([t,n])=>i(Tb(n),([r,o])=>i(i(Ca(o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Lx(t),n]),zc=e=>i(i(g("{",e),([t,n])=>i(rM(n),([r,o])=>i(g("}",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Fx(t),n]),oM=e=>i(zc(e),([t,n])=>[Dx(t),n]),sM=e=>i(i(i(Re(e),([t,n])=>i(g("?",n),([r,o])=>i(g(":",o),([s,a])=>i(g("readonly",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[t,n],()=>i(i(Re(e),([t,n])=>i(g(":",n),([r,o])=>i(g("readonly",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[t,n],()=>i(i(Re(e),([t,n])=>i(g("?",n),([r,o])=>i(g(":",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[t,n],()=>i(i(Re(e),([t,n])=>i(g(":",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>[])))),([t,n])=>[Nx(t),n]),ob=e=>i(i(sM(e),([t,n])=>[t,n],()=>i(i($b(e),([t,n])=>i(ie(n),([r,o])=>i(wb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>[])),([t,n])=>[_x(t),n]),Eb=e=>i(i(i(g("...",e),([t,n])=>i(ob(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(ob(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[])),([t,n])=>[qx(t),n]),vb=(e,t=[])=>i(i(g(",",e),([n,r])=>i(Eb(r),([o,s])=>[[n,o],s])),([n,r])=>vb(r,[...t,n]),()=>[t,e]),iM=e=>i(i(i(Eb(e),([t,n])=>i(vb(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])=>[Ux(t),n]),aM=e=>i(i(g("[",e),([t,n])=>i(iM(n),([r,o])=>i(g("]",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Kx(t),n]),mM=e=>i(i(Re(e),([t,n])=>i(g("?",n),([r,o])=>i(g(":",o),([s,a])=>i(g("readonly",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Gx(t),n]),uM=e=>i(i(Re(e),([t,n])=>i(g(":",n),([r,o])=>i(g("readonly",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[Wx(t),n]),cM=e=>i(i(Re(e),([t,n])=>i(g("?",n),([r,o])=>i(g(":",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[Bx(t),n]),pM=e=>i(i(Re(e),([t,n])=>i(g(":",n),([r,o])=>i(ie(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[zx(t),n]),sb=e=>i(i(mM(e),([t,n])=>[t,n],()=>i(uM(e),([t,n])=>[t,n],()=>i(cM(e),([t,n])=>[t,n],()=>i(pM(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),Sb=e=>i(i(i(g("...",e),([t,n])=>i(sb(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(sb(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[])),([t,n])=>[Hx(t),n]),Pb=(e,t=[])=>i(i(g(",",e),([n,r])=>i(Sb(r),([o,s])=>[[n,o],s])),([n,r])=>Pb(r,[...t,n]),()=>[t,e]),Rb=e=>i(i(i(Sb(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])=>[Vx(t),n]),lM=e=>i(i(g("(",e),([t,n])=>i(Rb(n),([r,o])=>i(g(")",o),([s,a])=>i(g("=>",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Jx(t),n]),dM=e=>i(i(g("new",e),([t,n])=>i(g("(",n),([r,o])=>i(Rb(o),([s,a])=>i(g(")",a),([c,p])=>i(g("=>",p),([f,I])=>i(ie(I),([w,M])=>[[t,r,s,c,f,w],M])))))),([t,n])=>[Yx(t),n]),fM=e=>i(i(i(g("+",e),([t,n])=>i(g("readonly",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g("-",e),([t,n])=>i(g("readonly",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])))),([t,n])=>[Xx(t),n]),gM=e=>i(i(i(g("+",e),([t,n])=>i(g("?",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g("-",e),([t,n])=>i(g("?",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])))),([t,n])=>[Zx(t),n]),hM=e=>i(i(i(g("as",e),([t,n])=>i(ie(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Qx(t),n]),xM=e=>i(i(g("{",e),([t,n])=>i(fM(n),([r,o])=>i(g("[",o),([s,a])=>i(Re(a),([c,p])=>i(g("in",p),([f,I])=>i(ie(I),([w,M])=>i(hM(M),([j,A])=>i(g("]",A),([q,ee])=>i(gM(ee),([me,xe])=>i(g(":",xe),([Te,Be])=>i(ie(Be),([qt,ye])=>i(ub(ye),([re,T])=>i(g("}",T),([ze,Ut])=>[[t,r,s,c,f,w,j,q,me,Te,qt,re,ze],Ut]))))))))))))),([t,n])=>[ey(t),n]),yM=e=>i(Re(e),([t,n])=>[ty(t),n]),bM=e=>i(Nc(e),([t,n])=>[ny(t),n]),IM=e=>i(Ra(e),([t,n])=>[ry(t),n]),$M=e=>i(i(g("true",e),([t,n])=>[t,n],()=>i(g("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[oy(t),n]),wM=e=>i(Oa(['"',"'"],e),([t,n])=>[t,n]),kM=e=>i(g("null",e),([t,n])=>[sy(t),n]),TM=e=>i(g("undefined",e),([t,n])=>[void 0,n]),Ab=e=>i(i(Ib(e),([t,n])=>i(g(":",n),([r,o])=>i(Hc(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[iy(t),n]),Ob=(e,t=[])=>i(i(Ca(e),([n,r])=>i(Ab(r),([o,s])=>[[n,o],s])),([n,r])=>Ob(r,[...t,n]),()=>[t,e]),EM=e=>i(i(i(Ab(e),([t,n])=>i(Ob(n),([r,o])=>i(i(Ca(o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[ay(t),n]),Mb=e=>i(i(g("{",e),([t,n])=>i(EM(n),([r,o])=>i(g("}",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[my(t),n]),Cb=(e,t=[])=>i(i(g(",",e),([n,r])=>i(Hc(r),([o,s])=>[[n,o],s])),([n,r])=>Cb(r,[...t,n]),()=>[t,e]),vM=e=>i(i(i(Hc(e),([t,n])=>i(Cb(n),([r,o])=>i(i(g(",",o),([s,a])=>[[s],a],()=>[[],o]),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[uy(t),n]),SM=e=>i(i(g("[",e),([t,n])=>i(vM(n),([r,o])=>i(g("]",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[cy(t),n]),Hc=e=>i(i(bM(e),([t,n])=>[t,n],()=>i(IM(e),([t,n])=>[t,n],()=>i($M(e),([t,n])=>[t,n],()=>i(wM(e),([t,n])=>[t,n],()=>i(kM(e),([t,n])=>[t,n],()=>i(TM(e),([t,n])=>[t,n],()=>i(Mb(e),([t,n])=>[t,n],()=>i(SM(e),([t,n])=>[t,n],()=>[])))))))),([t,n])=>[t,n]),PM=e=>i(g("-?(?:0|[1-9][0-9]*)n",e),([t,n])=>[py(t),n]),RM=e=>i(g(".*",e),([t,n])=>[ly(t),n]),AM=e=>i(g("-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?",e),([t,n])=>[dy(t),n]),OM=e=>i(g("-?(?:0|[1-9][0-9]*)",e),([t,n])=>[fy(t),n]),MM=e=>i(g("(?!)",e),([t,n])=>[gy(t),n]),CM=e=>i(tb(["-?(?:0|[1-9][0-9]*)n",".*","-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?","-?(?:0|[1-9][0-9]*)","(?!)","(",")","$","|"],e),([t,n])=>[hy(t),n]),LM=e=>i(i(PM(e),([t,n])=>[t,n],()=>i(RM(e),([t,n])=>[t,n],()=>i(AM(e),([t,n])=>[t,n],()=>i(OM(e),([t,n])=>[t,n],()=>i(MM(e),([t,n])=>[t,n],()=>i(jM(e),([t,n])=>[t,n],()=>i(CM(e),([t,n])=>[t,n],()=>[]))))))),([t,n])=>[t,n]),jM=e=>i(i(g("(",e),([t,n])=>i(Vc(n),([r,o])=>i(g(")",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[xy(t),n]),Lb=e=>i(i(i(Gc(e),([t,n])=>i(g("|",n),([r,o])=>i(Lb(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[t,n],()=>i(i(Gc(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[]))),([t,n])=>[yy(t),n]),Gc=e=>i(i(LM(e),([t,n])=>i(Vc(n),([r,o])=>[[t,r],o])),([t,n])=>[by(t),n]),Vc=e=>i(i(Lb(e),([t,n])=>[t,n],()=>i(Gc(e),([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),Kg=e=>i(i(g("^",e),([t,n])=>i(Vc(n),([r,o])=>i(g("$",o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Iy(t),n]),jb=(e,t=[])=>i(i(g(",",e),([n,r])=>i(ie(r),([o,s])=>[[n,o],s])),([n,r])=>jb(r,[...t,n]),()=>[t,e]),FM=e=>i(i(i(ie(e),([t,n])=>i(jb(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])=>[$y(t),n]),Fb=e=>i(i(i(g("extends",e),([t,n])=>i(FM(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[wy(t),n]),DM=e=>i(i(g("interface",e),([t,n])=>i(Re(n),([r,o])=>i(Wc(o),([s,a])=>i(Fb(a),([c,p])=>i(zc(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[ky(t),n]),NM=e=>i(i(g("interface",e),([t,n])=>i(Re(n),([r,o])=>i(Fb(o),([s,a])=>i(zc(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[Ty(t),n]),_M=e=>i(i(g("type",e),([t,n])=>i(Re(n),([r,o])=>i(Wc(o),([s,a])=>i(g("=",a),([c,p])=>i(ie(p),([f,I])=>[[t,r,s,c,f],I]))))),([t,n])=>[Ey(t),n]),qM=e=>i(i(g("type",e),([t,n])=>i(Re(n),([r,o])=>i(g("=",o),([s,a])=>i(ie(a),([c,p])=>[[t,r,s,c],p])))),([t,n])=>[vy(t),n]),UM=e=>i(i(i(g("export",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Sy(t),n]),Db=e=>i(i(i(g(";",e),([t,n])=>i(g(`
|
|
16
|
+
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>i(i(g(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>i(i(g(`
|
|
17
|
+
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n]),Nb=(e,t=[])=>i(i(Db(e),([n,r])=>i(Jc(r),([o,s])=>[[n,o],s])),([n,r])=>Nb(r,[...t,n]),()=>[t,e]),KM=e=>i(i(i(Jc(e),([t,n])=>i(Nb(n),([r,o])=>i(i(Db(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]),Jc=e=>i(i(UM(e),([t,n])=>i(i(DM(n),([r,o])=>[r,o],()=>i(NM(n),([r,o])=>[r,o],()=>i(_M(n),([r,o])=>[r,o],()=>i(qM(n),([r,o])=>[r,o],()=>[])))),([r,o])=>i(ub(o),([s,a])=>[[t,r,s],a]))),([t,n])=>[Ry(t),n]),GM=e=>i(i(Jc(e),([t,n])=>i(KM(n),([r,o])=>[[t,r],o])),([t,n])=>[Ay(t),n]),_b=e=>i(i(GM(e),([t,n])=>[t,n],()=>i(XO(e),([t,n])=>[t,n],()=>i(ie(e),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n])});function qb(e){let t=Bc(`\`${e}\``);return u.IsEqual(t.length,2)?t[0]:Ne()}var Yc=m(()=>{$n();R();Ni()});function BM(e){return e.join("|")}function zM(e){return e.slice(1,e.length-1)}function HM(e,t,n){return ar(t,`${n}${e}`)}function VM(e,t){return ar(e,`${t}${Fg}`)}function JM(e,t){return ar(e,`${t}${Li}`)}function YM(e,t){return ar(e,`${t}${Fi}`)}function XM(e,t){return ks(J([ne("false"),ne("true")]),e,t)}function ZM(e,t){return ar(e,`${t}${Di}`)}function QM(e,t,n){return ar(t,`${n}${zM(e)}`)}function eC(e,t,n){let r=Ts(e,{});return ks(r,t,n)}function tC(e,t,n){let r=gt(e);return ks(r,t,n)}function Ub(e,t,n,r=[]){return u.ShiftLeft(e,(o,s)=>Ub(s,t,n,[...r,ks(o,[],"")]),()=>ar(t,`${n}(${BM(r)})`))}function ks(e,t,n){return tt(e)?tC(e.enum,t,n):lt(e)?JM(t,n):ce(e)?HM(e.const,t,n):kn(e)?VM(t,n):Ht(e)?XM(t,n):Le(e)?YM(t,n):ft(e)?ZM(t,n):Pe(e)?QM(e.pattern,t,n):Gb(e)?eC(e.parameters[0],t,n):L(e)?Ub(e.anyOf,t,n):Ef}function ar(e,t){return u.ShiftLeft(e,(n,r)=>ks(n,r,t),()=>t)}function nC(e){return`^${ar(e,"")}$`}function Kb(e){let t=nC(e);return Ui(t)}var Xc=m(()=>{R();on();Ce();X();kt();vr();Jt();dt();Tn();Zn();Ve();Ki();V();La()});function Ts(e,t){return z(e)?l.Update(Kb(e),{},t):oa(e,t)}function Wb(e,t,n,r){let o=Nt(e,t,n);return Ts(o,r)}var La=m(()=>{E();kt();Xc();N()});function oa(e,t={}){return F("TemplateLiteral",[e],t)}function Gb(e){return Fe(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"TemplateLiteral")}function Bb(e){return Ts(e,{})}function rC(e){let t=qb(e);return Bb(t)}function zb(e,t={}){let n=u.IsString(e)?rC(e):Bb(e);return l.Update(n,{},t)}function Pe(e){return C(e,"TemplateLiteral")}var kt=m(()=>{es();R();H();ae();Yc();La()});var W={};Ft(W,{ExtendsFalse:()=>B,ExtendsTrue:()=>P,ExtendsUnion:()=>Zc,IsExtendsFalse:()=>oC,IsExtendsTrue:()=>Vb,IsExtendsTrueLike:()=>yo,IsExtendsUnion:()=>Hb,Match:()=>$e});function Zc(e){return l.Create({"~kind":"ExtendsUnion"},{inferred:e})}function Hb(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"inferred")&&u.IsEqual(e["~kind"],"ExtendsUnion")&&u.IsObject(e.inferred)}function P(e){return l.Create({"~kind":"ExtendsTrue"},{inferred:e})}function Vb(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 l.Create({"~kind":"ExtendsFalse"},{})}function oC(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.IsEqual(e["~kind"],"ExtendsFalse")}function yo(e){return Hb(e)||Vb(e)}function $e(e,t,n){return yo(e)?t(e.inferred):n()}var be=m(()=>{R();E()});function sC(e,t,n,r){return $e(oe(e,n,r),o=>P(l.Assign(l.Assign(e,o),{[t]:n})),()=>B())}function iC(e,t){return P(e)}function aC(e,t,n,r,o){return $e(oe(e,t,n),s=>$e(oe(s,t,r),a=>P(a),()=>B()),()=>$e(oe(e,t,o),s=>P(s),()=>B()))}function mC(e,t,n){let r=gt(n);return oe(e,t,r)}function Jb(e,t,n){return u.ShiftLeft(n,(r,o)=>$e(oe(e,t,r),s=>Jb(s,t,o),()=>B()),()=>P(e))}function uC(e,t,n){let r=st(n);return oe(e,t,r)}function Yb(e,t,n){return u.ShiftLeft(n,(r,o)=>$e(oe(e,t,r),s=>P(s),()=>Yb(e,t,o)),()=>B())}function pe(e,t,n){return Ee(n)?iC(e,t):Se(n)?aC(e,t,n.if,n.then,n.else):tt(n)?mC(e,t,n.enum):Me(n)?sC(e,n.name,t,n.extends):te(n)?Jb(e,t,n.allOf):Pe(n)?uC(e,t,n.pattern):L(n)?Yb(e,t,n.anyOf):Oe(n)?P(e):B()}var at=m(()=>{R();E();It();Pt();on();zt();De();kt();X();Qe();vt();be();V();V()});function Xb(e,t,n){return Me(n)?pe(e,t,n):Ee(n)?P(e):Oe(n)?P(e):Zc(e)}var Zb=m(()=>{zt();It();Qe();at();be()});function cC(e,t){let n=kr(e),r=kr(t);return n&&r||!n&&r?!0:!(n&&!r)}function Qb(e,t,n,r){return we(r)?cC(t,r)?oe(e,n,r.items):B():pe(e,t,r)}var eI=m(()=>{pt();rs();at();vt();be()});function tI(e,t,n){return kn(n)?P(e):pe(e,t,n)}var nI=m(()=>{vr();at();be()});function rI(e,t,n){return Ht(n)?P(e):pe(e,t,n)}var oI=m(()=>{Zn();at();be()});function pC(e,t,n,r,o){let s=Me(r)?t:r,a=Me(r)?r:t,c=ot(t),p=ot(r);return!c&&p?B():$e(oe(e,s,a),f=>Es(f,n,o),()=>B())}function lC(e,t,n,r){return u.ShiftLeft(r,(o,s)=>pC(e,t,n,o,s),()=>ot(t)?P(e):B())}function dC(e,t,n){return u.ShiftLeft(t,(r,o)=>lC(e,r,o,n),()=>P(e))}function Es(e,t,n){return dC(e,t,n)}var Qc=m(()=>{R();zt();Xn();vt();be()});function ja(e,t,n){return vn(n)?P(e):oe(e,t,n)}var ep=m(()=>{Or();vt();be()});function sI(e,t,n,r){return Ee(r)?P(e):Oe(r)?P(e):Ue(r)?$e(Es(e,t,r.parameters),o=>ja(o,n,r.instanceType),()=>B()):B()}var iI=m(()=>{It();Gt();Qe();be();Qc();ep()});function aI(e,t,n,r,o){return $e(oe(e,t,o),()=>oe(e,n,o),()=>oe(e,r,o))}var mI=m(()=>{vt();be()});function uI(e,t,n){let r=gt(t);return oe(e,r,n)}var cI=m(()=>{vt();V()});function pI(e,t,n,r){return Ee(r)?P(e):Oe(r)?P(e):Ke(r)?$e(Es(e,t,r.parameters),o=>ja(o,n,r.returnType),()=>B()):B()}var lI=m(()=>{It();Wt();Qe();be();Qc();ep()});function dI(e,t,n){return lt(n)?P(e):Le(n)?P(e):pe(e,t,n)}var fI=m(()=>{Tn();dt();at();be()});function gI(e,t,n){let r=ke(t);return oe(e,r,n)}var hI=m(()=>{vt();vs()});function Fa(e,t,n){return t===n?P(e):B()}function fC(e,t,n){return ce(n)?Fa(e,t,n.const):kn(n)?P(e):pe(e,ne(t),n)}function gC(e,t,n){return ce(n)?Fa(e,t,n.const):Ht(n)?P(e):pe(e,ne(t),n)}function hC(e,t,n){return ce(n)?Fa(e,t,n.const):Le(n)?P(e):pe(e,ne(t),n)}function xC(e,t,n){return ce(n)?Fa(e,t,n.const):ft(n)?P(e):pe(e,ne(t),n)}function xI(e,t,n){return u.IsBigInt(t.const)?fC(e,t.const,n):u.IsBoolean(t.const)?gC(e,t.const,n):u.IsNumber(t.const)?hC(e,t.const,n):u.IsString(t.const)?xC(e,t.const,n):Ne()}var yI=m(()=>{R();ic();Ce();vr();Zn();dt();Jt();at();be()});function bI(e,t,n){return Me(n)?pe(e,t,n):P(e)}var II=m(()=>{zt();at();be()});function $I(e,t,n){return no(n)?P(e):pe(e,t,n)}var wI=m(()=>{ro();at();be()});function kI(e,t,n){return Le(n)?P(e):pe(e,t,n)}var TI=m(()=>{dt();at();be()});function yC(e,t,n){return ot(t)?ot(n)?P(e):B():P(e)}function bC(e,t,n){return Me(n)&&rn(n.extends)?B():$e(oe(e,t,n),r=>yC(r,t,n),()=>B())}function IC(e,t){return e.reduce((n,r)=>r in t?yo(t[r])?{...n,...t[r].inferred}:Ne():Ne(),{})}function $C(e,t,n){let r={};for(let a of u.Keys(n))r[a]=a in t?bC({},t[a],n[a]):ot(n[a])?Me(n[a])?P(l.Assign(e,{[n[a].name]:n[a].extends})):P(e):B();let o=u.Values(r).every(a=>yo(a)),s=o?IC(u.Keys(r),r):{};return o?P(s):B()}function wC(e,t,n){let r=$C(e,t,n);return yo(r)?P(l.Assign(e,r.inferred)):B()}function kC(e,t,n){return wC(e,t,n)}function TC(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 EI(e,t,n,r){return u.ShiftLeft(t,(o,s)=>$e(oe({},e[o],n),a=>EI(e,s,n,TC(r,a)),()=>B()),()=>P(r))}function EC(e,t,n,r){let o=u.Keys(t);return EI(t,o,r,e)}function vI(e,t,n){return rt(n)?EC(e,t,Xt(n),ht(n)):ue(n)?kC(e,t,n.properties):pe(e,G(t),n)}var SI=m(()=>{$n();E();R();Xn();zt();Ve();le();Ye();X();vt();at();be()});function vC(e,t){return u.IsEqual(u.Keys(t).length,0)?P(e):B()}function SC(e,t,n,r,o){return oe(e,n,o)}function PI(e,t,n,r){return rt(r)?SC(e,Zi(t),n,Zi(Xt(r)),ht(r)):ue(r)?vC(e,r.properties):Ee(r)?P(e):Oe(r)?P(e):B()}var RI=m(()=>{R();It();Qe();le();Ye();vt();be()});function AI(e,t,n){return ft(n)?P(e):pe(e,t,n)}var OI=m(()=>{Jt();at();be()});function MI(e,t,n){return Qn(n)?P(e):pe(e,t,n)}var CI=m(()=>{Pr();at();be()});function LI(e,t,n){let r=st(t);return oe(e,r,n)}var jI=m(()=>{vt();V()});function tp(e,t){return l.Create({"~kind":"Inferrable"},{name:e,type:t},{})}function Ss(e){return u.IsObject(e)&&u.HasPropertyKey(e,"~kind")&&u.HasPropertyKey(e,"name")&&u.HasPropertyKey(e,"type")&&u.IsEqual(e["~kind"],"Inferrable")&&u.IsString(e.name)&&u.IsObject(e.type)}function np(e){return or(e)?Me(e.items)?we(e.items.extends)?tp(e.items.name,e.items.extends.items):Oe(e.items.extends)?tp(e.items.name,e.items.extends):void 0:Ne():void 0}function Da(e){return Me(e)?tp(e.name,e.extends):void 0}function rp(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>$e(oe({},r,t),()=>rp(o,t,[...n,r]),()=>{}),()=>n)}function FI(e,t,n,r){let o=rp(n,r);return u.IsArray(o)?P(l.Assign(e,{[t]:je(o)})):B()}function Na(e,t,n,r){let o=rp(n,r);return u.IsArray(o)?P(l.Assign(e,{[t]:J(o)})):B()}var op=m(()=>{$n();E();R();pt();Qe();_e();vt();X();zt();mo();be()});function PC(e){return[...e].reverse()}function sp(e,t){return t?PC(e):e}function RC(e){let t=e.length>0?e[0]:void 0,n=Fe(t)?np(t):void 0;return Fe(n)}function AC(e,t,n,r,o,s){return $e(oe(e,n,o),a=>DI(a,t,r,s),()=>B())}function OC(e,t,n,r,o){let s=np(r);return Ss(s)?FI(e,s.name,sp(n,t),s.type):u.ShiftLeft(n,(a,c)=>AC(e,t,a,c,r,o),()=>B())}function MC(e,t,n,r){return u.ShiftLeft(r,(o,s)=>OC(e,t,n,o,s),()=>u.IsEqual(n.length,0)?P(e):B())}function DI(e,t,n,r){return MC(e,t,n,r)}function CC(e,t,n){let r=mr(e,Ie([],[]),n),o=RC(r);return DI(e,o,sp(t,o),sp(r,o))}function NI(e,t,n){let r=Da(n);return Ss(r)?Na(e,r.name,t,r.type):u.ShiftLeft(t,(o,s)=>$e(oe(e,o,n),a=>NI(a,s,n),()=>B()),()=>P(e))}function _I(e,t,n){let r=mr(e,Ie([],[]),t);return he(n)?CC(e,r,n.items):we(n)?NI(e,r,n.items):pe(e,je(r),n)}var qI=m(()=>{R();H();pt();_e();vt();at();be();N();N();op()});function UI(e,t,n){return vn(n)?P(e):co(n)?P(e):pe(e,t,n)}var KI=m(()=>{po();Or();at();be()});function GI(e,t,n){return u.ShiftLeft(n,(r,o)=>$e(oe(e,t,r),s=>P(s),()=>GI(e,t,o)),()=>B())}function ip(e,t,n){return u.ShiftLeft(t,(r,o)=>$e(GI(e,r,n),s=>ip(s,o,n),()=>B()),()=>P(e))}function WI(e,t,n){let r=Da(n);return Ss(r)?Na(e,r.name,t,r.type):L(n)?ip(e,t,n.anyOf):ip(e,t,[n])}var BI=m(()=>{R();X();vt();be();op()});function zI(e,t,n){return Me(n)?pe(e,t,n):Ee(n)?P(e):Oe(n)?P(e):B()}var HI=m(()=>{It();Qe();zt();at();be()});function VI(e,t,n){return vn(n)?P(e):pe(e,t,n)}var JI=m(()=>{Or();at();be()});function oe(e,t,n){return Ee(t)?Xb(e,t,n):we(t)?Qb(e,t,t.items,n):kn(t)?tI(e,t,n):Ht(t)?rI(e,t,n):Ue(t)?sI(e,t.parameters,t.instanceType,n):Se(t)?aI(e,t.if,t.then,t.else,n):tt(t)?uI(e,t.enum,n):Ke(t)?pI(e,t.parameters,t.returnType,n):lt(t)?dI(e,t,n):te(t)?gI(e,t.allOf,n):ce(t)?xI(e,t,n):rn(t)?bI(e,t,n):no(t)?$I(e,t,n):Le(t)?kI(e,t,n):ue(t)?vI(e,t.properties,n):rt(t)?PI(e,Xt(t),ht(t),n):ft(t)?AI(e,t,n):Qn(t)?MI(e,t,n):Pe(t)?LI(e,t.pattern,n):he(t)?_I(e,t.items,n):co(t)?UI(e,t,n):L(t)?WI(e,t.anyOf,n):Oe(t)?zI(e,t,n):vn(t)?VI(e,t,n):B()}var vt=m(()=>{Zb();eI();nI();oI();iI();mI();cI();lI();fI();hI();yI();II();wI();TI();SI();RI();OI();CI();jI();qI();KI();BI();HI();JI();It();pt();vr();Zn();Gt();Pt();on();Wt();Tn();De();Ce();Ve();ro();dt();le();Ye();Jt();Pr();kt();_e();po();Qe();X();Or();be()});function LC(e,t){return ke([...e,G(t)])}function ap(e,t,n){return z(e)?l.Update(LC(e,t),{},n):ys(e,t,n)}function YI(e,t,n,r,o){let s=Nt(e,t,n),a=Ps(e,t,r);return ap(s,a,o)}var _a=m(()=>{E();le();V();fo();N();N();N()});function ys(e,t,n={}){return F("Interface",[e,t],n)}function bo(e){return Fe(e)&&u.HasPropertyKey(e,"action")&&u.IsEqual(e.action,"Interface")}function XI(e,t,n={}){return ap(e,t,n)}var Rs=m(()=>{R();H();ae();_a()});function jC(e,t,n){return e.includes(n)?!0:As([...e,n],t,t[n])}function ZI(e,t,n){let r=Si(n);return Cr(e,t,r)}function Cr(e,t,n){return u.ShiftLeft(n,(r,o)=>As(e,t,r)?!0:Cr(e,t,o),()=>!1)}function As(e,t,n){return Ge(n)?jC(e,t,n.$ref):we(n)?As(e,t,n.items):Ue(n)?Cr(e,t,[...n.parameters,n.instanceType]):Ke(n)?Cr(e,t,[...n.parameters,n.returnType]):bo(n)?ZI(e,t,n.parameters[1]):te(n)?Cr(e,t,n.allOf):ue(n)?ZI(e,t,n.properties):L(n)?Cr(e,t,n.anyOf):he(n)?Cr(e,t,n.items):rt(n)?As(e,t,ht(n)):!1}function QI(e,t,n){return As(e,t,n)}var mp=m(()=>{R();pt();Gt();Wt();De();le();$r();Ye();_e();X();Bt();Rs()});function FC(e,t){return t.reduce((n,r)=>QI([r],e,e[r])?[...n,r]:n,[])}function e$(e){let t=vi(e);return FC(e,t)}var up=m(()=>{$r();mp()});function DC(e,t,n){return n.includes(t)?n:t in e?Os(e,e[t],[...n,t]):Ne()}function t$(e,t,n){let r=Si(t);return Io(e,r,n)}function Io(e,t,n){return t.reduce((r,o)=>Os(e,o,r),n)}function Os(e,t,n){return Ge(t)?DC(e,t.$ref,n):we(t)?Os(e,t.items,n):Ue(t)?Io(e,[...t.parameters,t.instanceType],n):Ke(t)?Io(e,[...t.parameters,t.returnType],n):bo(t)?t$(e,t.parameters[1],n):te(t)?Io(e,t.allOf,n):ue(t)?t$(e,t.properties,n):L(t)?Io(e,t.anyOf,n):he(t)?Io(e,t.items,n):rt(t)?Os(e,ht(t),n):n}function n$(e,t,n){return Os(e,n,[t])}var cp=m(()=>{$n();pt();Gt();Wt();De();le();$r();Ye();_e();X();Bt();Rs()});function NC(e){return Zr()}function _C(e){return u.Keys(e).reduce((t,n)=>({...t,[n]:Lr(e[n])}),{})}function Ms(e){return e.reduce((t,n)=>[...t,Lr(n)],[])}function Lr(e){return Ge(e)?NC(e.$ref):we(e)?Dt(Lr(e.items),Ei(e)):Ue(e)?hn(Ms(e.parameters),Lr(e.instanceType)):Ke(e)?xn(Ms(e.parameters),Lr(e.returnType)):te(e)?wt(Ms(e.allOf)):ue(e)?G(_C(e.properties)):rt(e)?Xi(ao(e),Lr(ht(e))):L(e)?J(Ms(e.anyOf)):he(e)?je(Ms(e.items)):e}function qC(e,t){return t in e?Lr(e[t]):Je()}function r$(e){return qC(e.$defs,e.$ref)}var o$=m(()=>{R();It();pt();Gt();Wt();De();le();Ye();Bt();_e();X();Qe()});function UC(e,t,n){let r=Nt(e,Ie([],[]),t),o=Ps({},Ie([],[]),n);return ke([...r,G(o)])}function KC(e,t){return u.Keys(e).filter(r=>t.includes(r)).reduce((r,o)=>{let s=e[o],a=bo(s)?UC(e,s.parameters[0],s.parameters[1]):s;return{...r,[o]:a}},{})}function s$(e,t,n){let r=n$(e,t,n),o=KC(e,r);return bn(o,t)}var pp=m(()=>{R();$t();le();cp();fo();N();N();N();V()});function i$(e,t){return t in e?Ge(e[t])?i$(e,e[t].$ref):e[t]:de()}function Rn(e,t){return i$(e,t)}var jr=m(()=>{Ve();Bt()});var lp=m(()=>{up();mp();cp();o$();pp();jr()});function a$(e){return et(e)?r$(e):Pi(e)?Je():e}function nt(e,t,n){let r=a$(t),o=a$(n);return oe(e,r,o)}var m$=m(()=>{$t();Qe();Ri();vt();lp()});var En=m(()=>{m$();be()});function ds(e,t){let n=[nt({},e,t),nt({},t,e)];return W.IsExtendsTrueLike(n[0])&&W.IsExtendsTrueLike(n[1])?ps:W.IsExtendsTrueLike(n[0])&&W.IsExtendsFalse(n[1])?ls:W.IsExtendsFalse(n[0])&&W.IsExtendsTrueLike(n[1])?zi:qa}var ps,qa,ls,zi,fs=m(()=>{En();ps=0,qa=1,ls=2,zi=3});function dp(e,t,n=[],r=t){return u.ShiftLeft(t,(o,s)=>{let a=ds(e,o);return u.IsEqual(a,ls)||u.IsEqual(a,ps)?r:u.IsEqual(a,qa)?dp(e,s,[...n,o],r):dp(e,s,n,r)},()=>[...n,e])}function GC(e,t,n){let r=Yt(e);return Ee(r)?[r]:Oe(r)?[r]:rn(r)?Ua(t,n):ue(r)?Ua(t,[...n,r]):Ua(t,dp(r,n))}function Ua(e,t=[]){return u.ShiftLeft(e,(n,r)=>GC(n,r,t),()=>t)}function Pc(e){let t=Ua(e);return io(t)}var Rc=m(()=>{R();It();Ve();le();Qe();fs();Vi();V()});function fp(e,t){return l.Update(Yt(e),{},t)}function u$(e,t,n,r){let o=$(e,t,n);return fp(o,r)}var Ka=m(()=>{E();N();V()});var vs=m(()=>{Rc();fs();Tc();vc();V();Vi();Ka();Ec()});function Cs(e,t=[]){return Jn(e)&&u.IsEqual(e.action,"Conditional")?Ge(e.parameters[0])?Cs(e.parameters[2],Cs(e.parameters[3],[...t,e.parameters[0].$ref])):Cs(e.parameters[2],Cs(e.parameters[3],t)):Jn(e)&&u.IsEqual(e.action,"Mapped")&&Jn(e.parameters[1])&&u.IsEqual(e.parameters[1].action,"KeyOf")&&Ge(e.parameters[1].parameters[0])?[...t,e.parameters[1].parameters[0].$ref]:t}function WC(e,t){return e.reduce((n,r)=>[...n,t.includes(r.name)],[])}function l$(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>u.ShiftLeft(t,(s,a)=>l$(o,a,[...n,[s,r]]),()=>n),()=>n)}function BC(e){return Pe(e)?st(e.pattern):tt(e)?gt(e.enum):e}function zC(e){let t=BC(e);return L(t)?[...t.anyOf]:[t]}function HC(e,t){return e.reduce((n,r)=>[...n,[...r,t]],[])}function c$(e,t){return t.reduce((n,r)=>[...n,...HC(e,r)],[])}function p$(e){return e.reduce((t,n)=>u.IsEqual(n[0],!0)?c$(t,zC(n[1])):c$(t,[n[1]]),[[]])}function d$(e,t,n){let r=Cs(n),o=WC(e,r),s=l$(t,o);return Jn(n)&&u.IsEqual(n.action,"Conditional")||Jn(n)&&u.IsEqual(n.action,"Mapped")?p$(s):[t]}var f$=m(()=>{R();X();ae();on();kt();Bt();V();V()});function VC(){return["(not-resolvable)",de()]}function JC(){return["(not-generic)",de()]}function YC(e,t,n){return[e,Yn(t,n)]}function XC(e,t,n){return t in e?g$(e,t,e[t],n):VC()}function g$(e,t,n,r){return Xr(n)?YC(t,n.parameters,n.expression):Ge(n)?XC(e,n.$ref,r):JC()}function h$(e,t,n){return g$(e,"(anonymous)",t,n)}var x$=m(()=>{Xo();Bt();Ve()});function ZC(e,t,n){if(Me(t)||$o(t)||W.IsExtendsTrueLike(nt({},t,n)))return;let r={parameter:e,expect:n,actual:t};throw new Error(`Argument for parameter ${e} does not satisfy constraint`,{cause:r})}function y$(e,t,n,r,o){let s=$(e,t,o);return ZC(n,s,r),l.Assign(e,{[n]:s})}function QC(e,t,n,r,o){let s=$(e,t,n.extends),a=$(e,t,n.equals);return u.ShiftLeft(o,(c,p)=>gp(y$(e,t,n.name,s,c),t,r,p),()=>gp(y$(e,t,n.name,s,a),t,r,[]))}function gp(e,t,n,r){return u.ShiftLeft(n,(o,s)=>QC(e,t,o,s,r),()=>e)}function b$(e,t,n,r){return gp(e,t,n,r)}var I$=m(()=>{R();E();N();En();zt();lo()});function e0(){if(!u.IsLessThan(xp,nn.Get().maxInstantiationCount))throw Error("Type instantiation is excessively deep and possibly infinite")}function t0(){e0(),xp++,hp++}function n0(){hp--,u.IsEqual(hp,0)&&(xp=0)}function r0(e){return u.IsGreaterThan(e.callstack.length,0)?e.callstack[e.callstack.length-1]:""}function o0(e,t){return u.IsEqual(r0(e),t)}function s0(e,t,n,r,o,s){t0();try{let a=b$(e,t,r,s),c=$(a,Ie([...t.callstack,n.$ref],t.visited),o);return $(a,Ie([],[]),c)}finally{n0()}}function i0(e,t,n,r,o,s){return s.reduce((a,c)=>{let p=s0(e,t,n,r,o,c);return[...a,p]},[])}function a0(e,t,n,r,o,s){let a=d$(r,s,o),c=i0(e,t,n,r,o,a);return u.IsEqual(c.length,1)?c[0]:Et(c)}function Ga(e,t,n,r){let o=Nt(e,t,r),s=h$(e,n,r),a=s[0],c=s[1];return Xr(c)?o0(t,a)?bs(Nn(a),o):a0(e,t,Nn(a),c.parameters,c.expression,o):bs(n,o)}var hp,xp,yp=m(()=>{yr();R();lo();Bt();Xo();vs();N();N();N();f$();x$();I$();hp=0,xp=0});function bs(e,t){return l.Create({"~kind":"Call"},{type:"call",target:e,arguments:t},{})}function $$(e,t){return Ga({},Ie([],[]),e,t)}function $o(e){return C(e,"Call")}var lo=m(()=>{E();H();yp();N()});function m0(e){return l.Discard(e,["~immutable"])}function w$(e,t){return l.Update(m0(e),{},t)}function k$(e,t,n,r){let o=$(e,t,n);return w$(o,r)}var bp=m(()=>{E();N()});function T$(e,t){return e(t)}var E$=m(()=>{});function v$(e,t){return u.IsString(t)?ne(T$(e,t)):ne(t)}var S$=m(()=>{R();Ce();E$()});function P$(e,t){let n=st(t);return Un(e,n)}var R$=m(()=>{Wa();vs()});function A$(e,t){let n=t.map(r=>Un(e,r));return J(n)}var O$=m(()=>{X();Wa()});function Un(e,t){return ce(t)?v$(e,t.const):Pe(t)?P$(e,t.pattern):L(t)?A$(e,t.anyOf):t}var Wa=m(()=>{Ce();kt();X();S$();R$();O$()});function sa(e,t={}){return F("Capitalize",[e],t)}function M$(e,t={}){return Ip(e,t)}var Ba=m(()=>{ae();An()});function ia(e,t={}){return F("Lowercase",[e],t)}function C$(e,t={}){return $p(e,t)}var za=m(()=>{ae();An()});function aa(e,t={}){return F("Uncapitalize",[e],t)}function L$(e,t={}){return wp(e,t)}var Ha=m(()=>{ae();An()});function ma(e,t={}){return F("Uppercase",[e],t)}function j$(e,t={}){return kp(e,t)}var Va=m(()=>{ae();An()});function Ip(e,t){return z([e])?l.Update(Un(u0,e),{},t):sa(e,t)}function $p(e,t){return z([e])?l.Update(Un(c0,e),{},t):ia(e,t)}function wp(e,t){return z([e])?l.Update(Un(p0,e),{},t):aa(e,t)}function kp(e,t){return z([e])?l.Update(Un(l0,e),{},t):ma(e,t)}function F$(e,t,n,r){let o=$(e,t,n);return Ip(o,r)}function D$(e,t,n,r){let o=$(e,t,n);return $p(o,r)}function N$(e,t,n,r){let o=$(e,t,n);return wp(o,r)}function _$(e,t,n,r){let o=$(e,t,n);return kp(o,r)}var u0,c0,p0,l0,An=m(()=>{E();Wa();N();Ba();za();Ha();Va();u0=e=>e[0].toUpperCase()+e.slice(1),c0=e=>e.toLowerCase(),p0=e=>e[0].toLowerCase()+e.slice(1),l0=e=>e.toUpperCase()});function ua(e,t,n,r,o={}){return F("Conditional",[e,t,n,r],o)}function q$(e,t,n,r,o={}){return Tp({},Ie([],[]),e,t,n,r,o)}var Ja=m(()=>{ae();Ep();N()});function d0(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 Tp(e,t,n,r,o,s,a){return z([n,r])?l.Update(d0(e,t,n,r,o,s),{},a):ua(n,r,o,s,a)}function U$(e,t,n,r,o,s,a){let c=$(e,t,n),p=$(e,t,r);return Tp(e,t,c,p,o,s,a)}var Ep=m(()=>{E();X();En();N();Ja()});var vp=m(()=>{Ep()});function ca(e,t={}){return F("ConstructorParameters",[e],t)}function K$(e,t={}){return Sp(e,t)}var Ya=m(()=>{ae();Xa()});function f0(e){let t=Ue(e)?e.parameters:[],n=mr({},Ie([],[]),t);return je(n)}function Sp(e,t){return z([e])?l.Update(f0(e),{},t):ca(e,t)}function G$(e,t,n,r){let o=$(e,t,n);return Sp(o,r)}var Xa=m(()=>{E();Gt();_e();Ya();N();N();N()});function pa(e,t,n={}){return F("Exclude",[e,t],n)}function W$(e,t,n={}){return Ls(e,t,n)}var Za=m(()=>{ae();js()});function Ls(e,t,n){return z([e,t])?l.Update(Hi(e,t),{},n):pa(e,t,n)}function B$(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Ls(s,a,o)}var js=m(()=>{E();N();Za();Sc()});function la(e,t,n={}){return F("Extract",[e,t],n)}function z$(e,t,n={}){return Pp(e,t,n)}var Qa=m(()=>{ae();em()});function g0(e,t){let n=nt({},e,t);return W.IsExtendsTrueLike(n)?[e]:[]}function H$(e,t,n=[]){return u.ShiftLeft(e,(r,o)=>H$(o,t,[...n,...g0(r,t)]),()=>n)}function V$(e,t){let n=Yt(e),r=L(n)?n.anyOf:[n],o=H$(r,t);return Et(o)}var J$=m(()=>{R();X();En();V();V()});function Pp(e,t,n){return z([e,t])?l.Update(V$(e,t),{},n):la(e,t,n)}function Y$(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Pp(s,a,o)}var em=m(()=>{E();N();Qa();J$()});function h0(e){return e.reduce((t,n)=>ji(n)?[...t,ne(n)]:t,[])}function wo(e){let t=h0(e);return J(t)}var Fs=m(()=>{Ce();X()});function Is(e,t,n={}){return F("Index",[e,t],n)}function X$(e,t,n={}){let r=u.IsArray(t)?wo(t):t;return Ap(e,r,n)}var Rp=m(()=>{R();ae();Fs();tm()});function Z$(e,t){let n=Rn(e,t);return _t(n)}var Q$=m(()=>{Fr();jr()});function ew(e,t,n){let r=an(e,t,n);return _t(r)}var tw=m(()=>{Fr();V()});function x0(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=l.Assign(s,a);return l.Assign(p,c)}function nw(e){return e.reduce((t,n)=>x0(t,_t(n)),{})}var rw=m(()=>{E();R();Fr();V()});var ow=m(()=>{});function sw(e){let t=ih(je(e));return _t(t)}var iw=m(()=>{_e();wc();Fr()});function y0(e,t){return u.Keys(e).filter(o=>o in t).reduce((o,s)=>({...o,[s]:Et([e[s],t[s]])}),{})}function aw(e,t){return u.ShiftLeft(e,(n,r)=>aw(r,y0(t,_t(n))),()=>t)}function mw(e){return u.ShiftLeft(e,(t,n)=>aw(n,_t(t)),()=>Ne())}var uw=m(()=>{R();$n();V();Fr()});function _t(e){return et(e)?Z$(e.$defs,e.$ref):Se(e)?ew(e.if,e.then,e.else):te(e)?nw(e.allOf):L(e)?mw(e.anyOf):he(e)?sw(e.items):ue(e)?e.properties:{}}var Fr=m(()=>{$t();Pt();De();le();_e();X();Q$();tw();rw();ow();iw();uw()});function ko(e){let t=_t(e);return G(t)}var cw=m(()=>{le();Fr()});var Ds=m(()=>{cw()});function To(e){let t=`${e}`;return b0.test(t)?parseInt(t):e}var b0,Ns=m(()=>{b0=new RegExp("^(?:0|[1-9][0-9]*)$")});function I0(e){return ne(To(e))}function pw(e){return e.map(t=>lw(t))}function lw(e){return te(e)?wt(pw(e.allOf)):L(e)?J(pw(e.anyOf)):ce(e)?I0(e.const):e}function dw(e,t){let n=lw(t),r=nt({},n,Rt());return W.IsExtendsTrueLike(r)?e:ce(t)&&u.IsEqual(t.const,"length")?Rt():de()}var fw=m(()=>{R();De();X();Ce();dt();Ve();En();Ns()});function gw(e,t){let n=Rn(e,t);return Ot(n)}var hw=m(()=>{ur();jr()});function xw(e,t,n){let r=an(e,t,n);return Ot(r)}var yw=m(()=>{ur();V()});function bw(e){let t=gt(e);return Ot(t)}var Iw=m(()=>{ur();V()});function $w(e){let t=ke(e);return Ot(t)}var ww=m(()=>{V();ur()});function kw(e){return[`${e}`]}var Tw=m(()=>{});function Ew(e){let t=st(e);return Ot(t)}var vw=m(()=>{ur();V()});function Sw(e){return e.reduce((t,n)=>[...t,...Ot(n)],[])}var Pw=m(()=>{ur()});function Ot(e){return et(e)?gw(e.$defs,e.$ref):Se(e)?xw(e.if,e.then,e.else):tt(e)?bw(e.enum):te(e)?$w(e.allOf):ce(e)?kw(e.const):Pe(e)?Ew(e.pattern):L(e)?Sw(e.anyOf):[]}var ur=m(()=>{$t();Pt();on();De();Ce();kt();X();hw();yw();Iw();ww();Tw();vw();Pw()});function Eo(e){return Ot(e)}var nm=m(()=>{ur()});function _s(e,t){return t.map(n=>qs(e,n))}function qs(e,t){return we(t)?Dt(qs(e,t.items)):Ue(t)?hn(_s(e,t.parameters),qs(e,t.instanceType)):Ke(t)?xn(_s(e,t.parameters),qs(e,t.returnType)):he(t)?je(_s(e,t.items)):L(t)?J(_s(e,t.anyOf)):te(t)?wt(_s(e,t.allOf)):ea(t)?G(e):t}function Rw(e,t){return qs(e,t)}var Aw=m(()=>{pt();Gt();Wt();De();le();_e();ta();X()});function $0(e,t){let n=t in e?e[t]:de();return Rw(e,n)}function Ow(e,t){return t.reduce((n,r)=>[...n,$0(e,r)],[])}function w0(e,t){let n=Eo(t),r=Ow(e,n);return Et(r)}function T0(e){return e.filter(n=>k0.test(n))}function E0(e){let t=vi(e),n=T0(t),r=Ow(e,n);return Et(r)}function Mw(e,t){return Le(t)?E0(e):w0(e,t)}var k0,Cw=m(()=>{dt();Ve();$r();V();nm();Ye();Aw();k0=new RegExp(rr)});function v0(e){return ne(To(e))}function Lw(e){return e.map(t=>Op(t))}function Op(e){return te(e)?wt(Lw(e.allOf)):L(e)?J(Lw(e.anyOf)):ce(e)?v0(e.const):e}var jw=m(()=>{X();De();Ce();Ns()});function S0(e,t){return e.reduceRight((n,r,o)=>{let s=nt({},ne(o),t);return W.IsExtendsTrueLike(s)?[r,...n]:n},[])}function P0(e,t){let n=Op(t),r=S0(e,n);return tr(r)}function R0(e){return tr(e)}function Fw(e,t){return ce(t)&&u.IsEqual(t.const,"length")?ne(e.length):Le(t)||lt(t)?R0(e):P0(e,t)}var Dw=m(()=>{R();Ce();dt();Tn();V();En();jw()});function Nw(e,t){return we(e)?dw(e.items,t):ue(e)?Mw(e.properties,t):he(e)?Fw(e.items,t):de()}var _w=m(()=>{pt();Ve();le();_e();fw();Cw();Dw()});function A0(e){return et(e)||Se(e)||te(e)||L(e)?ko(e):e}function Ap(e,t,n){return z([e,t])?l.Update(Nw(A0(e),t),{},n):Is(e,t,n)}function qw(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Ap(s,a,o)}var tm=m(()=>{E();$t();Pt();De();X();N();Rp();Ds();_w()});function da(e,t={}){return F("InstanceType",[e],t)}function Uw(e,t={}){return Mp(e,t)}var rm=m(()=>{ae();om()});function O0(e){return Ue(e)?e.instanceType:de()}function Mp(e,t){return z([e])?l.Update(O0(e),{},t):da(e,t)}function Kw(e,t,n,r={}){let o=$(e,t,n);return Mp(o,r)}var om=m(()=>{E();Gt();Ve();rm();N()});function $s(e,t={}){return F("KeyOf",[e],t)}function Gw(e,t={}){return Cp(e,t)}var sm=m(()=>{ae();im()});function Ww(){return J([Rt(),Vt(),oo()])}var Bw=m(()=>{dt();Jt();Pr();X()});function zw(e){return Rt()}var Hw=m(()=>{dt()});function M0(e){return e.reduce((n,r)=>ji(r)?[...n,ne(To(r))]:Ne(),[])}function Vw(e){let t=u.Keys(e),n=M0(t);return tr(n)}var Jw=m(()=>{$n();R();Ce();Ns();V()});function Yw(e){return ao(e)}var Xw=m(()=>{Ye()});function Zw(e){let t=e.map((n,r)=>ne(r));return tr(t)}var Qw=m(()=>{Ce();V()});function ek(e){return Ee(e)?Ww():we(e)?zw(e.items):ue(e)?Vw(e.properties):rt(e)?Yw(e):he(e)?Zw(e.items):de()}var tk=m(()=>{It();pt();Ve();le();Ye();_e();Bw();Hw();Jw();Xw();Qw()});function C0(e){return et(e)||Se(e)||te(e)||L(e)?ko(e):e}function Cp(e,t){return z([e])?l.Update(ek(C0(e)),{},t):$s(e,t)}function nk(e,t,n,r){let o=$(e,t,n);return Cp(o,r)}var im=m(()=>{E();$t();Pt();De();X();sm();N();Ds();tk()});function xs(e,t,n,r,o={}){return F("Mapped",[e,t,n,r],o)}function rk(e,t,n,r,o={}){return Lp({},Ie([],[]),e,t,n,r,o)}var am=m(()=>{ae();mm();N()});function L0(e){let t=st(e);return um(t)}function j0(e){return e.reduce((t,n)=>[...t,...um(n)],[])}function F0(e){let t=gt(e);return um(t)}function D0(e){return u.IsNumber(e)?[ne(`${e}`)]:[ne(e)]}function um(e){return tt(e)?F0(e.enum):ce(e)?D0(e.const):Pe(e)?L0(e.pattern):L(e)?j0(e.anyOf):[e]}function ok(e){return um(e)}var sk=m(()=>{R();Ce();on();kt();X();V();V()});function N0(e){return Pe(e)?st(e.pattern):e}function _0(e,t,n,r,o,s){let a=l.Assign(e,{[n.name]:r}),c=$(a,t,o),p=N0(c),f=$(a,t,s);return Ng(p)||_g(p)?{[p.const]:f}:{}}function q0(e,t,n,r,o,s){return r.reduce((a,c)=>[...a,_0(e,t,n,c,o,s)],[])}function U0(e){return e.reduce((t,n)=>[...t,G(n)],[])}function ik(e,t,n,r,o,s){let a=ok(r),c=q0(e,t,n,a,o,s),p=U0(c);return ke(p)}var ak=m(()=>{E();Ce();le();kt();N();V();V();sk()});function Lp(e,t,n,r,o,s,a){return z([r])?l.Update(ik(e,t,n,r,o,s),{},a):xs(n,r,o,s,a)}function mk(e,t,n,r,o,s,a){let c=$(e,t,r);return Lp(e,t,n,c,o,s,a)}var mm=m(()=>{E();am();N();ak()});function K0(e,t,n){let r=l.Assign(e,t);return u.Keys(t).filter(s=>n.includes(s)).reduce((s,a)=>({...s,[a]:s$(r,a,t[a])}),{})}function G0(e,t,n){let r=l.Assign(e,t);return u.Keys(t).filter(s=>!n.includes(s)).reduce((s,a)=>({...s,[a]:$(r,Ie([],[]),t[a])}),{})}function W0(e,t,n){let r=e$(t),o=K0(e,t,r),s=G0(e,t,r),a={...o,...s};return l.Update(a,{},n)}function cm(e,t,n,r){return W0(e,n,r)}var pm=m(()=>{R();E();N();up();pp();N()});function fa(e,t={}){return F("NonNullable",[e],t)}function uk(e,t={}){return jp(e,t)}var lm=m(()=>{ae();dm()});function B0(e){let t=J([to(),uo()]);return Ls(e,t,{})}function jp(e,t){return z([e])?l.Update(B0(e),{},t):fa(e,t)}function ck(e,t,n,r){let o=$(e,t,n);return jp(o,r)}var dm=m(()=>{E();ro();po();X();js();lm();N()});function ga(e,t,n={}){return F("Omit",[e,t],n)}function pk(e,t,n={}){let r=u.IsArray(t)?wo(t):t;return Fp(e,r,n)}var fm=m(()=>{R();ae();Fs();gm()});function hm(e){let t=ko(e);return ue(t)?t.properties:Ne()}var Dp=m(()=>{$n();le();Ds()});function z0(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?r:{...r,[o]:e[o]},{})}function lk(e,t){let n=hm(e),r=Eo(t),o=z0(n,r);return G(o)}var dk=m(()=>{R();le();nm();Dp()});function Fp(e,t,n){return z([e,t])?l.Update(lk(e,t),{},n):ga(e,t,n)}function fk(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return Fp(s,a,o)}var gm=m(()=>{E();fm();N();dk()});function ha(e,t={}){return F("Parameters",[e],t)}function gk(e,t={}){return Np(e,t)}var xm=m(()=>{ae();ym()});function H0(e){let t=Ke(e)?e.parameters:[],n=mr({},Ie([],[]),t);return je(n)}function Np(e,t){return z([e])?l.Update(H0(e),{},t):ha(e,t)}function hk(e,t,n,r){let o=$(e,t,n);return Np(o,r)}var ym=m(()=>{E();Wt();_e();xm();N();N();N()});function xa(e,t={}){return F("Partial",[e],t)}function xk(e,t={}){return _p(e,t)}var bm=m(()=>{ae();Im()});function yk(e,t){let n=Rn(e,t),r=On(n);return bn(l.Assign(e,{[t]:r}),t)}var bk=m(()=>{E();$t();vo();jr()});function Ik(e,t,n){let r=an(e,t,n);return On(r)}var $k=m(()=>{vo();V()});function wk(e){let t=ke(e);return On(t)}var kk=m(()=>{vo();V()});function Tk(e){let t=e.map(n=>On(n));return J(t)}var Ek=m(()=>{X();vo()});function vk(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:Ir(e[o])}),{});return G(t)}var Sk=m(()=>{R();le();Zo()});function On(e){return et(e)?yk(e.$defs,e.$ref):Se(e)?Ik(e.if,e.then,e.else):te(e)?wk(e.allOf):L(e)?Tk(e.anyOf):ue(e)?vk(e.properties):G({})}var vo=m(()=>{$t();Pt();De();le();X();bk();$k();kk();Ek();Sk()});function _p(e,t){return z([e])?l.Update(On(e),{},t):xa(e,t)}function Pk(e,t,n,r){let o=$(e,t,n);return _p(o,r)}var Im=m(()=>{E();bm();vo();N()});function ya(e,t,n={}){return F("Pick",[e,t],n)}function Rk(e,t,n={}){let r=u.IsArray(t)?wo(t):t;return qp(e,r,n)}var $m=m(()=>{R();ae();Fs();wm()});function V0(e,t){return u.Keys(e).reduce((r,o)=>t.includes(o)?l.Assign(r,{[o]:e[o]}):r,{})}function Ak(e,t){let n=hm(e),r=Eo(t),o=V0(n,r);return G(o)}var Ok=m(()=>{E();R();le();nm();Dp()});function qp(e,t,n){return z([e,t])?l.Update(Ak(e,t),{},n):ya(e,t,n)}function Mk(e,t,n,r,o){let s=$(e,t,n),a=$(e,t,r);return qp(s,a,o)}var wm=m(()=>{E();$m();N();Ok()});function ba(e,t={}){return F("ReadonlyObject",[e],t)}function Up(e,t={}){return Kp(e,t)}var Ck,km=m(()=>{ae();Tm();Ck=Up});function Lk(e){return eo(Dt(e))}var jk=m(()=>{pt();os()});function Fk(e,t){let n=Rn(e,t),r=Mn(n);return bn(l.Assign(e,{[t]:r}),t)}var Dk=m(()=>{E();$t();So();jr()});function Nk(e,t,n){let r=an(e,t,n);return Mn(r)}var _k=m(()=>{So();V()});function qk(e){let t=ke(e);return Mn(t)}var Uk=m(()=>{So();V()});function Kk(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:Tr(e[o])}),{});return G(t)}var Gk=m(()=>{R();le();ss()});function Wk(e){return eo(je(e))}var Bk=m(()=>{_e();os()});function zk(e){let t=e.map(n=>Mn(n));return J(t)}var Hk=m(()=>{X();So()});function Mn(e){return we(e)?Lk(e.items):et(e)?Fk(e.$defs,e.$ref):Se(e)?Nk(e.if,e.then,e.else):te(e)?qk(e.allOf):ue(e)?Kk(e.properties):he(e)?Wk(e.items):L(e)?zk(e.anyOf):e}var So=m(()=>{pt();$t();Pt();De();le();_e();X();jk();Dk();_k();Uk();Gk();Bk();Hk()});function Kp(e,t){return z([e])?l.Update(Mn(e),{},t):ba(e)}function Vk(e,t,n,r){let o=$(e,t,n);return Kp(o,r)}var Tm=m(()=>{E();km();So();N()});function Jk(e,t,n,r){return t.visited.includes(r)?n:r in e?$(e,Ie(t.callstack,[...t.visited,r]),e[r]):n}var Gp=m(()=>{N();N()});function Yk(e,t){let n=Rn(e,t),r=Cn(n);return bn(l.Assign(e,{[t]:r}),t)}var Xk=m(()=>{E();$t();Po();jr()});function Zk(e,t,n){let r=an(e,t,n);return Cn(r)}var Qk=m(()=>{Po();V()});function eT(e){let t=ke(e);return Cn(t)}var tT=m(()=>{Po();V()});function nT(e){let t=e.map(n=>Cn(n));return J(t)}var rT=m(()=>{X();Po()});function oT(e){let t=u.Keys(e).reduce((r,o)=>({...r,[o]:Wi(e[o])}),{});return G(t)}var sT=m(()=>{R();le();Bi()});function Cn(e){return et(e)?Yk(e.$defs,e.$ref):Se(e)?Zk(e.if,e.then,e.else):te(e)?eT(e.allOf):L(e)?nT(e.anyOf):ue(e)?oT(e.properties):G({})}var Po=m(()=>{$t();Pt();De();le();X();Xk();Qk();tT();rT();sT()});function Ia(e,t={}){return F("Required",[e],t)}function iT(e,t={}){return Wp(e,t)}var Em=m(()=>{ae();vm()});function Wp(e,t){return z([e])?l.Update(Cn(e),{},t):Ia(e,t)}function aT(e,t,n,r){let o=$(e,t,n);return Wp(o,r)}var vm=m(()=>{E();Po();Em();N()});function $a(e,t={}){return F("ReturnType",[e],t)}function mT(e,t={}){return Bp(e,t)}var Sm=m(()=>{ae();Pm()});function J0(e){return Ke(e)?e.returnType:de()}function Bp(e,t){return z([e])?l.Update(J0(e),{},t):$a(e,t)}function uT(e,t,n,r={}){let o=$(e,t,n);return Bp(o,r)}var Pm=m(()=>{E();Wt();Ve();Sm();N()});function wa(e,t){return F("With",[e,t],{})}function cT(e,t){return zp(e,t)}var Rm=m(()=>{ae();Am()});function zp(e,t){return z([e])?l.Update(e,{},t):wa(e,t)}function pT(e,t,n,r){let o=$(e,t,n);return zp(o,r)}var Am=m(()=>{E();N();Rm()});function Y0(e){return or(e)?he(e.items)?Hp(e.items.items):Me(e.items)?[e]:Ge(e.items)?[e]:[de()]:[e]}function Hp(e){return e.reduce((n,r)=>[...n,...Y0(r)],[])}var lT=m(()=>{zt();Ve();mo();Bt();_e()});var dT=m(()=>{lT()});function Ie(e,t){return{callstack:e,visited:t}}function z(e){return u.ShiftLeft(e,(t,n)=>Ge(t)?!1:z(n),()=>!0)}function Ps(e,t,n){return u.Keys(n).reduce((r,o)=>({...r,[o]:$(e,t,n[o])}),{})}function mr(e,t,n){let r=Nt(e,t,n);return Hp(r)}function Nt(e,t,n){return n.map(r=>$(e,t,r))}function X0(e,t){let n=ot(e)?Yo(t,{}):t,r=Er(e)?Jo(n,{}):n;return kr(e)?Us(r,{}):r}function Z0(e,t,n,r,o){return u.IsEqual(n,"AddImmutable")?fT(e,t,r[0],o):u.IsEqual(n,"RemoveImmutable")?k$(e,t,r[0],o):u.IsEqual(n,"AddReadonly")?$f(e,t,r[0],o):u.IsEqual(n,"RemoveReadonly")?th(e,t,r[0],o):u.IsEqual(n,"AddOptional")?wf(e,t,r[0],o):u.IsEqual(n,"RemoveOptional")?oh(e,t,r[0],o):u.IsEqual(n,"Capitalize")?F$(e,t,r[0],o):u.IsEqual(n,"Conditional")?U$(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"ConstructorParameters")?G$(e,t,r[0],o):u.IsEqual(n,"Evaluate")?u$(e,t,r[0],o):u.IsEqual(n,"Exclude")?B$(e,t,r[0],r[1],o):u.IsEqual(n,"Extract")?Y$(e,t,r[0],r[1],o):u.IsEqual(n,"Index")?qw(e,t,r[0],r[1],o):u.IsEqual(n,"InstanceType")?Kw(e,t,r[0],o):u.IsEqual(n,"Interface")?YI(e,t,r[0],r[1],o):u.IsEqual(n,"KeyOf")?nk(e,t,r[0],o):u.IsEqual(n,"Lowercase")?D$(e,t,r[0],o):u.IsEqual(n,"Mapped")?mk(e,t,r[0],r[1],r[2],r[3],o):u.IsEqual(n,"Module")?cm(e,t,r[0],o):u.IsEqual(n,"NonNullable")?ck(e,t,r[0],o):u.IsEqual(n,"Pick")?Mk(e,t,r[0],r[1],o):u.IsEqual(n,"Parameters")?hk(e,t,r[0],o):u.IsEqual(n,"Partial")?Pk(e,t,r[0],o):u.IsEqual(n,"Omit")?fk(e,t,r[0],r[1],o):u.IsEqual(n,"ReadonlyObject")?Vk(e,t,r[0],o):u.IsEqual(n,"Record")?Rh(e,t,r[0],r[1],o):u.IsEqual(n,"Required")?aT(e,t,r[0],o):u.IsEqual(n,"ReturnType")?uT(e,t,r[0],o):u.IsEqual(n,"TemplateLiteral")?Wb(e,t,r[0],o):u.IsEqual(n,"Uncapitalize")?N$(e,t,r[0],o):u.IsEqual(n,"Uppercase")?_$(e,t,r[0],o):u.IsEqual(n,"With")?pT(e,t,r[0],r[1]):F(n,r,o)}function Q0(e,t,n){let r=Ge(n)?Jk(e,t,n,n.$ref):we(n)?Dt($(e,t,n.items),Ei(n)):$o(n)?Ga(e,t,n.target,n.arguments):Ue(n)?hn(Nt(e,t,n.parameters),$(e,t,n.instanceType),kf(n)):Ke(n)?xn(Nt(e,t,n.parameters),$(e,t,n.returnType),Tf(n)):Se(n)?wr($(e,t,n.if),$(e,t,n.then),$(e,t,n.else),Of(n)):te(n)?wt(Nt(e,t,n.allOf),Ff(n)):ue(n)?G(Ps(e,t,n.properties),Pf(n)):rt(n)?Ah(Xt(n),$(e,t,ht(n))):or(n)?Ar($(e,t,n.items)):he(n)?je(mr(e,t,n.items),eh(n)):L(n)?J(Nt(e,t,n.anyOf),Ug(n)):n;return X0(n,r)}function $(e,t,n){return Jn(n)?Z0(e,t,n.action,n.parameters,n.options):Q0(e,t,n)}function Vp(e,t){return $(e,Ie([],[]),t)}var N=m(()=>{R();Om();ki();Ti();pt();Gt();ae();Wt();lo();Pt();De();le();Ye();_e();X();Bt();mo();Om();bp();ki();xc();Ti();Ic();Xn();rs();is();yp();An();vp();Xa();Ka();js();em();tm();om();_a();im();An();mm();pm();dm();gm();ym();Im();wm();Tm();Ji();Gp();vm();Pm();La();An();An();Am();dT()});function eL(e){return l.Update(e,{"~immutable":!0},{})}function Us(e,t){return l.Update(eL(e),{},t)}function fT(e,t,n,r){let o=$(e,t,n);return Us(o,r)}var Om=m(()=>{E();N()});function My(e,t={}){return F("AddImmutable",[e],t)}function eo(e,t={}){return Us(e,t)}var os=m(()=>{ae();Om()});var gT=m(()=>{ae();bp()});function Cy(e,t={}){return F("Evaluate",[e],t)}function hT(e,t={}){return fp(e,t)}var Jp=m(()=>{ae();Ka()});function Ly(e,t={}){return F("Module",[e],t)}function xT(e,t={}){return cm({},Ie([],[]),e,t)}var Yp=m(()=>{ae();N();pm()});var fo=m(()=>{os();ss();Zo();gT();yc();Bi();Ba();Ja();Ya();Jp();Za();Qa();Rp();rm();Rs();sm();za();am();Yp();lm();fm();xm();bm();$m();km();Em();Sm();Ha();Va();Rm()});var yT=m(()=>{Xa()});var bT=m(()=>{Ai()});var IT=m(()=>{js()});var $T=m(()=>{em()});var wT=m(()=>{});var kT=m(()=>{Fs();Ns();wT()});var TT=m(()=>{tm()});var ET=m(()=>{om()});var vT=m(()=>{_a()});var ST=m(()=>{An()});var PT=m(()=>{im()});var RT=m(()=>{mm()});var AT=m(()=>{pm()});var OT=m(()=>{dm()});var MT=m(()=>{gm()});var CT=m(()=>{ym()});var LT=m(()=>{cs();Yc()});var jT=m(()=>{Im()});var FT=m(()=>{wm()});var DT=m(()=>{R();fs()});var NT=m(()=>{DT()});var _T=m(()=>{Tm()});var qT=m(()=>{Ji()});var UT=m(()=>{Gp()});var KT=m(()=>{vm()});var GT=m(()=>{Pm()});var WT=m(()=>{});var BT=m(()=>{R();cs()});var zT=m(()=>{Ki();Gi();Xc();WT();qi();BT()});var HT=m(()=>{Am()});var VT=m(()=>{N();vp();yT();lp();bT();vs();IT();$T();kT();TT();ET();vT();ST();PT();RT();AT();OT();Ds();MT();CT();LT();jT();FT();NT();_T();qT();UT();KT();GT();zT();HT()});function JT(...e){let[t,n,r]=In.Match(e,{2:(a,c)=>u.IsString(a)?[{},a,c]:[a,c,{}],3:(a,c,p)=>[a,c,p],1:a=>[{},a,{}]}),o=_b(n),s=u.IsArray(o)&&u.IsEqual(o.length,2)?$(t,Ie([],[]),o[0]):de();return l.Update(s,{},r)}var YT=m(()=>{Qr();E();R();ra();N();N();Ni()});var Xp=m(()=>{YT()});var Y={};Ft(Y,{Any:()=>Zr,Array:()=>Dt,BigInt:()=>as,Boolean:()=>Ci,Call:()=>$$,Capitalize:()=>M$,Codec:()=>Mi,Conditional:()=>q$,Constructor:()=>hn,ConstructorParameters:()=>K$,Cyclic:()=>bn,Decode:()=>Og,DecodeBuilder:()=>ns,Dependent:()=>wr,Encode:()=>Mg,EncodeBuilder:()=>ts,Enum:()=>jf,Evaluate:()=>hT,Exclude:()=>W$,Extends:()=>nt,ExtendsResult:()=>W,Extract:()=>z$,Function:()=>xn,Generic:()=>Yn,Identifier:()=>ms,Immutable:()=>Cg,Index:()=>X$,Infer:()=>Qo,InstanceType:()=>Uw,Instantiate:()=>Vp,Integer:()=>Sr,Interface:()=>XI,Intersect:()=>wt,IsAny:()=>Ee,IsArray:()=>we,IsBigInt:()=>kn,IsBoolean:()=>Ht,IsCall:()=>$o,IsCodec:()=>Oi,IsConstructor:()=>Ue,IsCyclic:()=>et,IsDependent:()=>Se,IsEnum:()=>tt,IsEnumValue:()=>Lf,IsFunction:()=>Ke,IsGeneric:()=>Xr,IsIdentifier:()=>Dg,IsImmutable:()=>kr,IsInfer:()=>Me,IsInteger:()=>lt,IsIntersect:()=>te,IsKind:()=>C,IsLiteral:()=>ce,IsNever:()=>rn,IsNull:()=>no,IsNumber:()=>Le,IsObject:()=>ue,IsOptional:()=>ot,IsParameter:()=>qg,IsReadonly:()=>Er,IsRecord:()=>rt,IsRef:()=>Ge,IsRefine:()=>cc,IsRest:()=>or,IsSchema:()=>Fe,IsString:()=>ft,IsSymbol:()=>Qn,IsTemplateLiteral:()=>Pe,IsThis:()=>ea,IsTuple:()=>he,IsUndefined:()=>co,IsUnion:()=>L,IsUnknown:()=>Oe,IsUnsafe:()=>Pi,IsVoid:()=>vn,KeyOf:()=>Gw,Literal:()=>ne,Lowercase:()=>C$,Mapped:()=>rk,Module:()=>xT,Never:()=>de,NonNullable:()=>uk,Null:()=>to,Number:()=>Rt,Object:()=>G,Omit:()=>pk,Optional:()=>vf,Parameter:()=>Rr,Parameters:()=>gk,Partial:()=>xk,Pick:()=>Rk,Readonly:()=>Lg,ReadonlyObject:()=>Up,ReadonlyType:()=>Ck,Record:()=>Xi,RecordKey:()=>ao,RecordPattern:()=>Xt,RecordValue:()=>ht,Ref:()=>Nn,Refine:()=>jg,Required:()=>iT,Rest:()=>Ar,ReturnType:()=>mT,Script:()=>JT,String:()=>Vt,Symbol:()=>oo,TemplateLiteral:()=>zb,This:()=>Qi,Tuple:()=>je,Uncapitalize:()=>L$,Undefined:()=>uo,Union:()=>J,Unknown:()=>Je,Unsafe:()=>Rf,Uppercase:()=>j$,Void:()=>na,With:()=>cT});var Zp=m(()=>{N();En();Xp();Ba();Ja();Ya();Jp();Za();Qa();fo();rm();Rs();sm();za();am();Yp();lm();fm();xm();bm();$m();km();Em();Sm();Ha();Va();Rm();uc();rs();Xn();is();pc();It();pt();vr();Zn();lo();Gt();$t();on();Wt();Xo();lc();Pt();zt();Tn();De();Ce();Ve();ro();dt();le();fc();Ye();Bt();mo();H();Jt();Pr();kt();ta();_e();po();X();Qe();Ri();Or()});var Dr=m(()=>{fo();VT();En();Xp();ra();Zp();Zp()});import{StringEnum as tL}from"@earendil-works/pi-ai";import{defineTool as nL}from"@earendil-works/pi-coding-agent";function XT(e){if(e.length===0)return"Todo list is empty.";let t=e.filter(o=>o.status==="completed").length,n=e.map(o=>`${rL[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 sL(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 iL(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 rL,oL,Mm,Qp=m(()=>{Dr();rL={pending:"[ ]",in_progress:"[>]",completed:"[x]",dropped:"[-]"},oL=Y.Object({op:tL(["init","start","done","drop","view"],{description:"init replaces the list; start/done/drop move one task; view reads it"}),items:Y.Optional(Y.Array(Y.String(),{description:"Task labels for init. 5-10 words each, specific enough to execute without re-planning"})),task:Y.Optional(Y.String({description:"Exact label of the task to start, complete or drop"}))});Mm=nL({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:oL,async execute(e,t,n,r,o){let s=iL(o),{todos:a,error:c}=sL(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
|
+
${XT(a)}`:XT(a)}],details:p,...c?{isError:!0}:{}}}})});import{StringEnum as aL}from"@earendil-works/pi-ai";import{defineTool as mL}from"@earendil-works/pi-coding-agent";function eE(){return Kn.size===0?"":["<shared-notes>","Working notes recorded with the `context` tool. They survive compaction and are visible to every agent on this task.",...[...Kn].map(([t,n])=>`- ${t}: ${n}`),"</shared-notes>"].join(`
|
|
20
|
+
`)}function uL(e,t,n){if(e==="list")return Kn.size===0?{text:"No notes."}:{text:[...Kn].map(([r,o])=>`${r} = ${o}`).join(`
|
|
21
|
+
`)};if(!t)return{text:"Error: key is required",error:"key required"};if(t.length>QT)return{text:`Error: key longer than ${QT} characters`,error:"key too long"};if(e==="forget")return{text:Kn.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>ZT?`${n.slice(0,ZT)}\u2026`:n;return Kn.set(t,r),{text:`Recorded ${t} (${Kn.size} note${Kn.size===1?"":"s"} held)`}}return{text:`Error: unknown op ${JSON.stringify(e)}`,error:"unknown op"}}var Kn,ZT,QT,Cm,Lm=m(()=>{Dr();Kn=new Map,ZT=2e3,QT=80;Cm=mL({name:"context",label:"context",description:"Record a durable working note (a decision, a file's role, a fact you would otherwise re-derive). Notes survive context compaction and are visible to every agent on this task, including subagents. Use `set` to write, `list` to read, `forget` to remove.",promptSnippet:"context: durable notes shared with every agent on this task",parameters:Y.Object({op:aL(["set","list","forget"],{description:"set writes a note, list reads all, forget removes one"}),key:Y.Optional(Y.String({description:"Short lookup key, e.g. 'auth-entrypoint'"})),value:Y.Optional(Y.String({description:"The fact to keep (for set)"}))}),async execute(e,t){let{text:n,error:r}=uL(t.op,t.key,t.value);return{content:[{type:"text",text:n}],details:{op:t.op,notes:Object.fromEntries(Kn)},...r?{isError:!0}:{}}}})});import{StringEnum as cL}from"@earendil-works/pi-ai";import{defineTool as pL}from"@earendil-works/pi-coding-agent";function Fm(e){if(!e||e.status==="cleared")return"No goal set.";let t=e.budget??jm,n=[`${rE[e.status]} ${e.status}`,`${e.used}/${t} continuations`];return e.note&&n.push(e.note),`${n.join(" \xB7 ")}
|
|
22
|
+
${e.text}`}function oE(e){if(!e||e.status==="cleared"||e.status==="done")return"";let t=e.budget??jm,n=e.text.length>48?`${e.text.slice(0,47)}\u2026`:e.text;return`goal ${rE[e.status]} ${e.used}/${t} \xB7 ${n}`}function sE(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 iE(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??jm}.`].join(`
|
|
24
|
+
`)}function Dm(){return aE}function mn(e){aE=e}function Nm(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??jm;return e.used>=t?{action:"stop",reason:`budget exhausted (${t} continuations)`,close:!0}:{action:"continue"}}function el(e,t,n,r,o){switch(t){case"view":return{goal:e};case"set":return n?.trim()?n.length>tE?{goal:e,error:`text longer than ${tE} characters`}:r!==void 0&&(!Number.isInteger(r)||r<1)?{goal:e,error:"budget must be a positive integer"}:{goal:{text:n.trim(),status:"active",used:0,...r===void 0?{}:{budget:r}}}:{goal:e,error:"set needs text"};case"pause":case"resume":case"complete":case"clear":return!e||e.status==="cleared"?{goal:e,error:"no goal to change"}:t==="resume"?e.status==="done"?{goal:e,error:"goal is complete; set a new one instead"}:{goal:{...e,status:"active",note:void 0}}:t==="pause"?{goal:{...e,status:"paused"}}:t==="clear"?{goal:{...e,status:"cleared"}}:o?.trim()?{goal:{...e,status:"done",note:o.trim()}}:{goal:e,error:"complete needs a note naming the evidence (a command you ran or a file you checked)"};default:return{goal:e,error:`unknown op ${JSON.stringify(t)}`}}}function Ro(e){let t;for(let n of e.sessionManager.getBranch()){if(n.type==="custom"&&n.customType===cr){t=n.data;continue}if(n.type==="custom_message"&&n.customType===cr){t=n.details??t;continue}if(n.type!=="message")continue;let r=n.message;if(r.role!=="toolResult"||r.toolName!=="goal")continue;let o=r.details;o?.goal&&(t=o.goal)}return t}var cr,nE,tE,jm,rE,aE,lL,mE,_m=m(()=>{Dr();cr="howtofix.goal",nE="howtofix.goal.continue",tE=400,jm=25,rE={active:"\u25CF",paused:"\u2016",done:"\u2713",cleared:"\u25CB"};lL=Y.Object({op:cL(["set","view","pause","resume","complete","clear"],{description:"set starts a goal; complete closes it with evidence; pause/resume/clear manage it; view reads it"}),text:Y.Optional(Y.String({description:"The goal, in one sentence, as the user would state it (for set)"})),budget:Y.Optional(Y.Number({description:"Optional cap on automatic continuations before the run stops"})),note:Y.Optional(Y.String({description:"Evidence that the goal is met (required for complete)"}))}),mE=pL({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:lL,async execute(e,t,n,r,o){let s=Ro(o),{goal:a,error:c}=el(s,t.op,t.text,t.budget,t.note);mn(a);let p=Fm(a);return{content:[{type:"text",text:c?`Error: ${c}
|
|
25
|
+
${p}`:p}],details:{op:t.op,goal:a},...c?{isError:!0}:{}}}})});import{existsSync as rl,mkdirSync as uE,readFileSync as cE}from"node:fs";import{dirname as pE,join as lE}from"node:path";import{defineTool as dE}from"@earendil-works/pi-coding-agent";function qm(){return{state:"inactive",wasActive:!1}}function dL(e){return e?e.state==="pending"?{...e,state:"inactive"}:{...e}:qm()}function fE(e){return e.state!=="inactive"?e:{...e,state:"pending"}}function fL(e){return e.state!=="pending"?e:{state:"active",wasActive:!0}}function gL(e){return e.state!=="inactive"?e:{state:"active",wasActive:!0}}function hL(e){return e.state!=="active"?e:{...e,state:"inactive"}}function gE(e){return e.state==="inactive"?e:{...e,state:"inactive"}}function Um(e){return e.state==="active"}function xL(e,t){return e===t}function yL(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 bL(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 Km(){return ut}function hE(){return mt}function xE(){return Um(ut)}function yE(){if(!(!mt||!rl(mt)))try{let e=cE(mt,"utf8");return e.trim()?e:void 0}catch{return}}function bE(){return yE()!==void 0}function IE(){return ut.state==="inactive"?"":ut.state==="pending"?"plan pending":bE()?"plan \u25CF ready":"plan \u25CF planning"}function $E(){return nl?lE(nl,"plan_mode.json"):void 0}function IL(){let e=$E();if(e)try{uE(pE(e),{recursive:!0}),Ze(e,JSON.stringify(ut))}catch{}}function $L(){let e=$E();if(!e||!rl(e))return qm();try{return dL(JSON.parse(cE(e,"utf8")))}catch{return qm()}}function wL(e){nl=e,mt=lE(e,"plan.md"),ut=$L()}function Ao(e){return ut=e,IL(),ut}function wE(){return e=>{e.on("tool_call",async t=>{if(!Um(ut)||t.toolName!=="edit"&&t.toolName!=="write")return;let n=t.input?.path;if(typeof n=="string"&&!(!mt||xL(n,mt)))return{block:!0,reason:bL(mt)}})}}function kE(){return e=>{e.on("session_start",async(t,n)=>{wL(n.sessionManager.getSessionDir())}),e.on("before_agent_start",async()=>{ut.state==="pending"&&Ao(fL(ut))}),e.on("context_with_system",async t=>{if(!Um(ut)||!mt)return;let n=t.messages[0];if(!n||n.role!=="system")return;let r=yL(mt,bE()),o=`${typeof n.content=="string"?n.content:""}
|
|
27
|
+
|
|
28
|
+
${r}`;return{messages:t.messages.map(a=>a===n?{...n,content:o}:a)}})}}function kL(){if(mt){try{uE(pE(mt),{recursive:!0}),rl(mt)||Ze(mt,"")}catch{return}return mt}}var mt,ut,nl,tl,TE,EE,ol=m(()=>{Dr();zn();ut=qm();tl=2e4;TE=dE({name:"enter_plan_mode",label:"enter_plan_mode",description:"Enter plan mode to design an approach before writing code. Use it when a task has genuine ambiguity \u2014 several reasonable designs, or a restructuring where the wrong approach wastes significant effort. Do not use it for a clear fix, a rename, or a task that follows existing conventions. The user must approve entering.",promptSnippet:"enter_plan_mode: design first when the approach is genuinely ambiguous",parameters:Y.Object({}),async execute(e,t,n,r,o){if(ut.state!=="inactive")return{content:[{type:"text",text:`Plan mode is already ${ut.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:{}};Ao(gL(ut));let a=kL();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}}}}),EE=dE({name:"exit_plan_mode",label:"exit_plan_mode",description:"Present your plan for approval when you have finished planning. The plan is read from the plan file on disk, so write the file first. If the user asks for changes, stay in plan mode and revise it.",promptSnippet:"exit_plan_mode: present the written plan for approval",parameters:Y.Object({}),executionMode:"sequential",async execute(e,t,n,r,o){if(!Um(ut))return{content:[{type:"text",text:"Plan mode is not active."}],details:{},isError:!0};let s=yE();if(!s)return{content:[{type:"text",text:`No plan has been written yet. Write it to ${mt??"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>tl?`${s.slice(0,tl)}
|
|
30
|
+
\u2026 (${s.length-tl} more characters)`:s;return await o.ui.confirm("Approve this plan?",a)?(Ao(hL(ut)),{content:[{type:"text",text:"Plan approved. You may now implement it."}],details:{approved:!0,planFile:mt}}):{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 sl(){return{consecutiveFailures:0,tripped:!1}}function TL(e,t){return t==="manual"?!1:e.consecutiveFailures>=3}function EL(e,t){if(t)return e;let n=e.consecutiveFailures+1;return{consecutiveFailures:n,tripped:e.tripped||n>=3}}function vL(){return sl()}function SL(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 vE(){return e=>{e.on("session_start",async()=>{pr=sl()}),e.on("session_compact",async()=>{pr=vL()}),e.on("session_compact_failed",async(t,n)=>{let r=pr;pr=EL(pr,t.aborted),!r.tripped&&pr.tripped&&n?.ui&&n.ui.notify(SL(pr),"warning")}),e.on("session_before_compact",async t=>{if(TL(pr,t.reason))return{cancel:!0}})}}var pr,SE=m(()=>{pr=sl()});function Gm(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 Wm(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 il=m(()=>{});function PL(e){mn(Ro(e))}function PE(e){return`budget exhausted (${e.budget??"default"} continuations)`}function RE(){return e=>{e.on("session_start",async(t,n)=>{PL(n)}),e.on("context_with_system",async(t,n)=>{let r=Ro(n);if(mn(r),!r||r.status!=="active")return;let o=t.messages[0];if(!o||o.role!=="system")return;let s=`${Gm(o.content)}
|
|
32
|
+
|
|
33
|
+
${sE(r)}`;return{messages:t.messages.map(c=>c===o?{...o,content:Wm(o.content,s)}:c)}}),e.on("agent_before_settle",async(t,n)=>{let r=Ro(n);if(mn(r),Nm(r).action==="stop"||!r||t.continue||!t.context.canContinue)return;let o={...r,used:r.used+1};if(e.appendEntry(cr,o),mn(o),Nm(o).action==="stop"){let s={...o,status:"done",note:PE(o)};e.appendEntry(cr,s),mn(s);return}return{entries:[{type:"custom_message",customType:nE,content:iE(o),display:!0}],continue:!0}}),e.on("agent_settled",async(t,n)=>{let r=Ro(n),o=Nm(r);if(r&&o.action==="stop"&&o.close){let s={...r,status:"done",note:PE(r)};e.appendEntry(cr,s),mn(s)}else mn(r)})}}var AE=m(()=>{il();_m()});function Bm(){return e=>{e.on("context_with_system",async t=>{let n=eE();if(!n)return;let r=t.messages[0];if(!r||r.role!=="system")return;let o=`${Gm(r.content)}
|
|
34
|
+
|
|
35
|
+
${n}`;return{messages:t.messages.map(a=>a===r?{...r,content:Wm(r.content,o)}:a)}})}}var al=m(()=>{il();Lm()});function AL(e){if(RL.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 cl(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"}:AL(n)||n==="0.0.0.0"?{ok:!1,reason:"refused private address"}:{ok:!0,url:t}}function OE(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>ml?t.slice(0,ml):t}function OL(e){let t=[],n=/class="result__a"[^>]*href="([^"]+)"[^>]*>([\s\S]*?)<\/a>/gi,r;for(;(r=n.exec(e))&&t.length<ul;){let o=r[1]??"",s=OE(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=cl(a);!p.ok||!s||t.push({title:s,url:p.url.toString(),snippet:""})}return t}async function CE(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??ME,accept:"text/html, application/json"};try{if(t.braveKey){let f=`https://api.search.brave.com/res/v1/web/search?q=${encodeURIComponent(n)}&count=${ul}`,I=await r(f,{headers:{...s,accept:"application/json","x-subscription-token":t.braveKey},signal:AbortSignal.timeout(o)});return I.ok?{ok:!0,hits:ML(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:OL(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 ML(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=cl(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>=ul)break}return n}async function LE(e,t={}){let n=cl(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??ME,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)?OE(a):a.slice(0,ml);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 RL,ml,ul,ME,jE=m(()=>{RL=/^(127\.|10\.|192\.168\.|169\.254\.|0\.|221\.|222\.|223\.)/;ml=8e4,ul=8;ME="HowToFix (https://howtofix.id)"});import{Type as zm}from"@earendil-works/pi-ai";import{defineTool as FE}from"@earendil-works/pi-coding-agent";function CL(e){return e.length===0?"no results":e.map((t,n)=>`${n+1}. ${t.title}
|
|
36
|
+
${t.url}${t.snippet?`
|
|
37
|
+
${t.snippet}`:""}`).join(`
|
|
38
|
+
`)}var Hm,Vm,pl=m(()=>{jE();Hm=FE({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:zm.Object({query:zm.String({description:"Search query"})}),async execute(e,t){let n=await CE(t.query,{braveKey:process.env.BRAVE_API_KEY});return n.ok?{content:[{type:"text",text:CL(n.hits)}],details:{count:n.hits.length,provider:n.provider}}:{content:[{type:"text",text:n.error}],details:{error:n.error},isError:!0}}}),Vm=FE({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:zm.Object({url:zm.String({description:"http(s) URL"})}),async execute(e,t){let n=await LE(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 LL}from"node:child_process";import{existsSync as DE,readFileSync as jL}from"node:fs";import{delimiter as FL,isAbsolute as DL,join as NE}from"node:path";import{fileURLToPath as NL,pathToFileURL as Nr}from"node:url";function _E(e){let t=JSON.stringify(e);return`Content-Length: ${Buffer.byteLength(t,"utf8")}\r
|
|
39
|
+
\r
|
|
40
|
+
${t}`}function _L(e){let t=[],n=0;for(;n<e.length;){let r=e.indexOf(`\r
|
|
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 UL(e){return qL.find(t=>t.match(e))}async function KL(e,t){let n=_r.get(e.command);if(n)return await n.ready,n.client;let r=LL(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 ll({stdin:o,stdout:s,root:t});r.on("error",()=>{let p=_r.get(e.command);p?.child===r&&_r.delete(e.command),p?.client.dispose()});let c=a.initialize().catch(p=>{throw _r.delete(e.command),r.kill(),p});return _r.set(e.command,{client:a,child:r,ready:c}),await c,a}function dl(){for(let[e,t]of _r)_r.delete(e),t.client.dispose(),t.child.kill()}function qE(e){let t=e.uri;try{t=NL(e.uri)}catch{}let n=e.range?.start;return n?`${t}:${n.line+1}:${n.character+1}`:t}function UE(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(...UE(r.children,t+1))}return n}async function KE(e){try{let t=UL(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("/")?DE(t.command):(process.env.PATH??"").split(FL).some(f=>DE(NE(f,t.command)))))return{ok:!1,error:`${t.command} is not on PATH. Install it to use lsp on ${e.file}.`};let o=DL(e.file)?e.file:NE(e.root,e.file),s=jL(o,"utf8"),a=await KL(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:qE(f),count:1}:{ok:!0,text:"no definition found",count:0}}case"references":{let I=(await a.references(o,c,p)).map(qE);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=UE(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(w=>`${w.range.start.line+1}:${w.range.start.character+1} ${GL[w.severity??3]??"info"} ${w.message}`);return{ok:!0,text:I.length>0?I.join(`
|
|
46
|
+
`):"no diagnostics",count:I.length}}}}catch(t){return{ok:!1,error:t instanceof Error?t.message:String(t)}}}var ll,qL,_r,GL,fl=m(()=>{ll=class{constructor(t){this.io=t;t.stdout.on("data",n=>{this.buffer=Buffer.concat([this.buffer,n]);let{messages:r,rest:o}=_L(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=_E({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(_E({jsonrpc:"2.0",method:t,params:n}))}async initialize(){await this.request("initialize",{processId:null,rootUri:Nr(this.io.root).toString(),capabilities:{textDocument:{hover:{},definition:{},references:{},documentSymbol:{},publishDiagnostics:{}}}}),this.notify("initialized",{})}async hover(t,n,r){return(await this.request("textDocument/hover",{textDocument:{uri:Nr(t).toString()},position:{line:n,character:r}}))?.contents?.value}async definition(t,n,r){let o=await this.request("textDocument/definition",{textDocument:{uri:Nr(t).toString()},position:{line:n,character:r}});return Array.isArray(o)?o[0]:o??void 0}async references(t,n,r){let o=await this.request("textDocument/references",{textDocument:{uri:Nr(t).toString()},position:{line:n,character:r},context:{includeDeclaration:!0}});return Array.isArray(o)?o:[]}async documentSymbols(t){let n=await this.request("textDocument/documentSymbol",{textDocument:{uri:Nr(t).toString()}});return Array.isArray(n)?n:[]}diagnostics(t,n=2e3){let r=Nr(t).toString(),o=this.diagnosticsByUri.get(r);if(o)return Promise.resolve(o);let{promise:s,resolve:a}=Promise.withResolvers(),c=setTimeout(()=>{let f=this.diagnosticsWaiters.get(r);if(f){this.diagnosticsWaiters.delete(r);for(let I of f)I(this.diagnosticsByUri.get(r)??[])}},n),p=this.diagnosticsWaiters.get(r)??[];return p.push(f=>{clearTimeout(c),a(f)}),this.diagnosticsWaiters.set(r,p),s}async ensureOpen(t,n,r){let o=Nr(t).toString();this.opened.has(o)||(this.notify("textDocument/didOpen",{textDocument:{uri:o,languageId:r,version:1,text:n}}),this.opened.add(o))}dispose(){for(let[t,n]of this.pending)n.reject(new Error("lsp client disposed")),this.pending.delete(t);for(let[t,n]of this.diagnosticsWaiters){let r=this.diagnosticsByUri.get(t)??[];this.diagnosticsWaiters.delete(t);for(let o of n)o(r)}}},qL=[{command:"typescript-language-server",args:["--stdio"],languageId:"typescript",match:e=>/\.(ts|tsx|js|jsx|mts|cts)$/.test(e)},{command:"rust-analyzer",args:[],languageId:"rust",match:e=>e.endsWith(".rs")},{command:"gopls",args:[],languageId:"go",match:e=>e.endsWith(".go")},{command:"pylsp",args:[],languageId:"python",match:e=>e.endsWith(".py")}];_r=new Map;process.on("exit",dl);GL={1:"error",2:"warning",3:"info",4:"hint"}});import{StringEnum as WL}from"@earendil-works/pi-ai";import{defineTool as BL}from"@earendil-works/pi-coding-agent";var Jm,gl=m(()=>{Dr();fl();Jm=BL({name:"lsp",label:"lsp",description:"Language-server query: definition, references, hover, symbols, or diagnostics for a file. Line is 1-based. Does not edit. If the server binary is missing the result says so \u2014 do not pretend grep is a substitute without telling the user.",promptSnippet:"lsp: definition, references, hover, symbols, diagnostics",parameters:Y.Object({action:WL(["diagnostics","definition","references","hover","symbols"],{description:"Which language-server query to run"}),file:Y.String({description:"File to query, relative to the project root"}),line:Y.Optional(Y.Number({description:"1-based line (definition, references, hover)"})),symbol:Y.Optional(Y.String({description:"Substring to locate on that line when column is omitted"}))}),async execute(e,t,n,r,o){let s=await KE({action:t.action,file:t.file,line:t.line,symbol:t.symbol,root:o.cwd});return s.ok?{content:[{type:"text",text:s.text}],details:{action:t.action,count:s.count}}:{content:[{type:"text",text:s.error}],details:{error:s.error},isError:!0}}})});import{mkdirSync as zL,readdirSync as HL,readFileSync as VL}from"node:fs";import{join as GE}from"node:path";import{createAgentSession as JL,DefaultResourceLoader as YL,SessionManager as XL}from"@earendil-works/pi-coding-agent";function Ym(e){zL(Hr,{recursive:!0}),Ze(GE(Hr,`${e.id}.json`),JSON.stringify({...e,session:void 0},null,1))}function xl(){let e;try{e=HL(Hr)}catch{return}for(let t of e)if(t.endsWith(".json"))try{let n=JSON.parse(VL(GE(Hr,t),"utf8"));if(n.status!=="parked"||Zt.some(r=>r.id===n.id))continue;Zt.push({...n,mail:n.mail??[]})}catch{}}function yl(){return xl(),Zt.length===0?"no agents":Zt.map(e=>`${e.id} ${e.agent} ${e.status} requests=${e.requests} ${e.task}`).join(`
|
|
47
|
+
`)}function bl(e){xl();let t=Zt.find(n=>n.id===e);return t?`${t.agent}#${t.id} ${t.status}
|
|
48
|
+
${t.result??t.task}`:`no agent ${e}`}async function Xm(e){let t=qr.get(e.agent);if(!t)throw new Error(`unknown agent ${e.agent}`);let n=e.worktree||e.cwd||process.cwd(),r=new YL({cwd:n,agentDir:He,additionalSkillPaths:[gr(n)],extensionFactories:[Ko({interactive:!1}),Bm()]});await r.reload();let{session:o}=await JL({cwd:n,agentDir:He,sessionManager:XL.inMemory(n),resourceLoader:r,tools:t.tools,customTools:[Cm,Mm,Hm,Vm,Jm],thinkingLevel:e.effort});return o}async function BE(e,t){xl();let n=Zt.find(o=>o.id===e);if(!n)return`no agent ${e}`;let r=n.session??await Xm(n);if(n.session=r,n.status==="running"||r.isStreaming)return n.mail.push(t),Ym(n),`queued for ${e}`;if(n.requests>=WE)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 Ym(n),`${e} ${n.status}`}async function zE(e){let t=qr.get(e.agent);if(!t)throw new Error(`unknown agent ${e.agent}. known: ${[...qr.keys()].join(", ")}`);let n={id:`${Date.now().toString(36)}-${Zt.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 Zt.push(n),Ym(n),n}async function ej(e,t){let n=qr.get(e.agent);if(!n)return;let r=e.session??await Xm(e);e.session=r;try{let o=e.mail.splice(0).join(`
|
|
38
49
|
`);for(await r.prompt(`${n.prompt}
|
|
39
50
|
|
|
40
51
|
Task:
|
|
41
52
|
${e.task}${o?`
|
|
42
53
|
|
|
43
54
|
Messages:
|
|
44
|
-
${o}`:""}`),e.requests+=1;e.mail.length>0&&e.requests<
|
|
45
|
-
`)),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<WE;)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{Ym(e)}}async function HE(e){let t=()=>Zt.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 ej(r,e)}};if(await Promise.all(Array.from({length:QL},n)),e?.aborted)throw new Error("aborted")}var hl,ZL,qr,Zt,QL,WE,Ks=m(()=>{Dn();Lm();al();Go();Qp();pl();gl();zn();hl=["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."],ZL=`You are a software architect planning an implementation. Your job is to explore the codebase and return a plan, not to write code.
|
|
46
57
|
|
|
47
58
|
## Read-only, by construction
|
|
48
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.
|
|
@@ -60,68 +71,72 @@ End your reply with exactly this section, listing the 3-5 files most critical to
|
|
|
60
71
|
- path/to/file.ts
|
|
61
72
|
- path/to/file.ts
|
|
62
73
|
|
|
63
|
-
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.`,
|
|
64
|
-
`),effort:"low"}],["architect",{name:"architect",description:"designs an implementation plan",tools:["read","grep","find","ls","context"],prompt:
|
|
65
|
-
`),effort:"medium"}],["reviewer",{name:"reviewer",description:"finds concrete issues",tools:["read","grep","find","ls","context"],prompt:["Return issues with file evidence. Do not edit.",...
|
|
66
|
-
`),effort:"medium"}]]),
|
|
67
|
-
`)}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.`,qr=new Map([["scout",{name:"scout",description:"read-only lookup",tools:["read","grep","find","ls","context","web_search","web_fetch","lsp"],prompt:["Inspect only what the task needs. Do not edit.",...hl].join(`
|
|
75
|
+
`),effort:"low"}],["architect",{name:"architect",description:"designs an implementation plan",tools:["read","grep","find","ls","context","web_search","web_fetch","lsp"],prompt:ZL,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.",...hl].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.",...hl].join(`
|
|
77
|
+
`),effort:"medium"}]]),Zt=[],QL=3,WE=8});import{execFile as tj}from"node:child_process";import{promisify as nj}from"node:util";import{tmpdir as rj}from"node:os";import{join as oj}from"node:path";async function Qt(e,t){try{let{stdout:n}=await sj("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 Zm(e){return(await Qt(e,["rev-parse","--is-inside-work-tree"])).output==="true"}async function VE(e){return(await Qt(e,["status","--porcelain"])).output.length>0}async function JE(e,t){let n=await Qt(e,["add","-A"]);if(!n.ok)return n;let r=await Qt(e,["commit","-m",t]);return r.ok?{ok:!0,output:(await Qt(e,["log","-1","--oneline"])).output||r.output}:r}async function YE(e){let t=await Qt(e,["reset","--soft","HEAD~1"]);return t.ok?{ok:!0,output:(await Qt(e,["log","-1","--oneline"])).output||"reset to the previous commit"}:t}async function XE(e){let t=(await Qt(e,["diff"])).output,n=(await Qt(e,["diff","--cached"])).output;return[t,n].filter(Boolean).join(`
|
|
78
|
+
`)}function ZE(e,t=60){let n=e.split(`
|
|
68
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(`
|
|
69
|
-
`)}async function
|
|
70
|
-
`)}function
|
|
80
|
+
`)}async function QE(e,t){if(!await Zm(e))return null;let n=t.replace(/[^A-Za-z0-9._-]/g,"-").slice(0,40)||"agent",r=oj(rj(),`howtofix-wt-${process.pid}-${Date.now()}-${n}`);return(await Qt(e,["worktree","add","--detach",r,"HEAD"])).ok?{path:r,async remove(){await Qt(e,["worktree","remove","--force",r]),await Qt(e,["worktree","prune"])}}:null}var sj,Il=m(()=>{sj=nj(tj)});function ev(e){return e===null?"null":Array.isArray(e)?"array":Number.isInteger(e)?"integer":typeof e}function ij(e,t){let n=ev(e);return t==="number"?n==="number"||n==="integer":t==="integer"?n==="integer":n===t}function aj(e,t){if(typeof t!="string"||!t.startsWith("#/"))return;let n=e;for(let r of t.slice(2).split("/")){let o=r.replace(/~1/g,"/").replace(/~0/g,"~");if(!Ur(n)&&!Array.isArray(n))return;n=n[o]}return Ur(n)?n:void 0}function lr(e,t,n,r,o){if(!Ur(t))return;if(t.$ref!==void 0){let a=aj(n,t.$ref);a&&lr(e,a,n,r,o);return}if(Array.isArray(t.allOf))for(let a of t.allOf)lr(e,a,n,r,o);for(let a of["anyOf","oneOf"]){let c=t[a];if(!Array.isArray(c)||c.length===0)continue;let p=c.filter(f=>{let I=[];return lr(e,f,n,r,I),I.length===0}).length;a==="anyOf"&&p===0&&o.push({path:r,message:"does not match any allowed shape"}),a==="oneOf"&&p!==1&&o.push({path:r,message:`must match exactly one shape (matched ${p})`})}let s=t.type;if(s!==void 0){let a=Array.isArray(s)?s.map(String):[String(s)];if(!a.some(c=>ij(e,c))){o.push({path:r,message:`expected ${a.join(" or ")}, got ${ev(e)}`});return}}if(Array.isArray(t.enum)&&!t.enum.some(a=>JSON.stringify(a)===JSON.stringify(e))&&o.push({path:r,message:`must be one of ${t.enum.map(a=>JSON.stringify(a)).join(", ")}`}),Ur(e)){let a=Ur(t.properties)?t.properties:{};if(Array.isArray(t.required))for(let c of t.required.map(String))c in e||o.push({path:r?`${r}.${c}`:c,message:"is required"});for(let[c,p]of Object.entries(a))c in e&&lr(e[c],p,n,r?`${r}.${c}`:c,o);if(t.additionalProperties===!1)for(let c of Object.keys(e))c in a||o.push({path:r?`${r}.${c}`:c,message:"is not an allowed property"});else if(Ur(t.additionalProperties))for(let[c,p]of Object.entries(e))c in a||lr(p,t.additionalProperties,n,r?`${r}.${c}`:c,o)}if(Array.isArray(e)&&t.items!==void 0){let a=t.items;Array.isArray(a)?e.forEach((c,p)=>{p<a.length&&lr(c,a[p],n,`${r}[${p}]`,o)}):e.forEach((c,p)=>lr(c,a,n,`${r}[${p}]`,o))}if(typeof e=="string"&&(typeof t.minLength=="number"&&e.length<t.minLength&&o.push({path:r,message:`is shorter than ${t.minLength} characters`}),typeof t.pattern=="string"))try{new RegExp(t.pattern).test(e)||o.push({path:r,message:`does not match ${t.pattern}`})}catch{}typeof e=="number"&&(typeof t.minimum=="number"&&e<t.minimum&&o.push({path:r,message:`is below ${t.minimum}`}),typeof t.maximum=="number"&&e>t.maximum&&o.push({path:r,message:`is above ${t.maximum}`}))}function tv(e,t){if(!Ur(t))return[];let n=[];return lr(e,t,t,"",n),n}function nv(e){return e.map(t=>`- ${t.path||"(root)"}: ${t.message}`).join(`
|
|
81
|
+
`)}function rv(e){let t=e.trim(),n=/```(?:json)?\s*([\s\S]*?)```/.exec(t),r=[t,n?.[1]?.trim()].filter(o=>!!o);for(let o of r){try{return JSON.parse(o)}catch{}for(let s=0;s<o.length;s++){let a=o[s];if(a!=="{"&&a!=="[")continue;let c=a==="{"?"}":"]",p=0,f=!1,I=!1;for(let w=s;w<o.length;w++){let M=o[w];if(f){I?I=!1:M==="\\"?I=!0:M==='"'&&(f=!1);continue}if(M==='"')f=!0;else if(M===a)p++;else if(M===c&&(p--,p===0))try{return JSON.parse(o.slice(s,w+1))}catch{break}}}}}var Ur,ov=m(()=>{Ur=e=>typeof e=="object"&&e!==null&&!Array.isArray(e)});import*as sv from"node:os";async function cj(e,t=iv,n=av){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 pj(){let e=sv.availableParallelism?.()??4;return Math.max(1,Math.min(16,e-2))}function lj(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 mv(e){let t=e.lifetimeCap??mj,n=e.fanoutCap??uj,r=lj(e.concurrency??pj()),o=0,s=0,a="",c=q=>e.onEvent?.(q),p=new Map,f=()=>e.onProgress?.([...p.values()]),I=async(q,ee)=>{let me=ee??{},xe=typeof me.label=="string"?me.label:`agent-${o+1}`,Te=typeof me.phase=="string"?me.phase:a,Be=typeof me.agentType=="string"?me.agentType:"task",qt=typeof me.effort=="string"?me.effort:void 0,ye=typeof me.model=="string"?me.model:void 0,re=typeof me.isolation=="string"?me.isolation:void 0,T=me.schema;if(e.budgetTotal!=null&&s>=e.budgetTotal)throw new We(`budget exhausted: spent ${s} of ${e.budgetTotal} output tokens`);if(o>=t)throw new We(`lifetime cap reached: ${t} agent calls in one run`);o++;let ze=o;if(e.isPaused?.()&&!await cj(e,iv,av))return null;let Ut=await r();try{if(e.signal?.aborted)return null;c({kind:"agent_start",label:xe,phase:Te,ordinal:o}),p.set(ze,{label:xe,phase:Te,agentType:Be,status:"running",outputTokens:0,...ye?{model:ye}:{},startedAt:Date.now()}),f();let ln=(en,Kt,qe)=>{let Ct=p.get(ze);Ct&&(Ct.status=en,Ct.outputTokens=Kt.outputTokens,Ct.endedAt=Date.now(),Kt.toolCalls!==void 0&&(Ct.toolCalls=Kt.toolCalls),Kt.model!==void 0&&(Ct.model=Kt.model),qe&&(Ct.detail=qe)),c({kind:"agent_end",label:xe,ok:en==="ok",outputTokens:Kt.outputTokens}),f()},jo=T===void 0?1:2;for(let en=0;en<jo;en++){let Kt=en===0?String(q):void 0,qe=await M(Kt??dj(String(q),w),{label:xe,phase:Te,agentType:Be,effort:qt,model:ye,isolation:re});if(qe===null)return ln("failed",{text:"",outputTokens:0}),null;if(s+=qe.outputTokens,T===void 0)return ln("ok",qe,$l(qe.text)),qe.text;let Ct=rv(qe.text),Fo=Ct===void 0?[{path:"",message:"reply was not JSON"}]:tv(Ct,T);if(Fo.length===0)return ln("ok",qe,$l(qe.text)),Ct;if(w=nv(Fo),en===jo-1)return ln("failed",qe,`schema: ${$l(w)}`),null}return null}finally{Ut()}},w="",M=async(q,ee)=>{try{return await e.invoke({prompt:q,...ee})}catch{return null}};return{agent:(q,ee)=>I(q,ee),parallel:async q=>{if(q.length>n)throw new We(`fan-out cap exceeded: ${q.length} items (max ${n})`);return await Promise.all(q.map(async me=>{try{return await me()}catch{return null}}))},pipeline:async(q,...ee)=>{if(q.length>n)throw new We(`fan-out cap exceeded: ${q.length} items (max ${n})`);return await Promise.all(q.map(async(xe,Te)=>{let Be=xe;for(let qt of ee)try{Be=await qt(Be,xe,Te)}catch{return null}return Be}))},phase:q=>{a=String(q),c({kind:"phase",title:a})},log:q=>c({kind:"log",message:String(q)}),args:e.args,budget:{total:e.budgetTotal??null,spent:()=>s,remaining:()=>e.budgetTotal==null?1/0:Math.max(0,e.budgetTotal-s)}}}function dj(e,t){return`${e}
|
|
71
82
|
|
|
72
83
|
Your previous reply did not satisfy the required schema:
|
|
73
84
|
${t}
|
|
74
85
|
|
|
75
|
-
Reply with ONLY a corrected JSON value.`}function
|
|
76
|
-
`).map(r=>r.trim()).find(r=>r.length>0)??"";return n.length>t?`${n.slice(0,t)}\u2026`:n}var cL,lL,RE,OE,Ge,CE=m(()=>{PE();cL=1e3,lL=4096,RE=100,OE=300*1e3;Ge=class extends Error{constructor(t){super(t),this.name="WorkflowError"}}});import{parseColor as Kn,styleText as hL}from"@earendil-works/pi-tui";function yL(e,t){return hL(e,t,Gm)}function X(e,t,n){return yL(e,{...n,fg:t})}var Gm,D,LE,js=m(()=>{Gm="truecolor",D={text:Kn("#e6e6e6"),mute:Kn("#8b8b8b"),dim:Kn("#5c5c5c"),user:Kn("#d0d0d0"),accent:Kn("#c4b5fd"),tool:Kn("#6ee7b7"),bad:Kn("#f0a8a4"),warn:Kn("#e6b15a"),line:Kn("#3a3a3a")};LE={heading:e=>X(e,D.text,{bold:!0}),link:e=>X(e,D.accent,{underline:!0}),linkUrl:e=>X(e,D.mute),code:e=>X(e,D.text),codeBlock:e=>X(e,D.text),codeBlockBorder:e=>X(e,D.line),quote:e=>X(e,D.mute,{italic:!0}),quoteBorder:e=>X(e,D.line),hr:e=>X(e,D.line),listBullet:e=>X(e,D.mute),bold:e=>X(e,D.text,{bold:!0}),italic:e=>X(e,D.text,{italic:!0}),strikethrough:e=>X(e,D.mute,{strikethrough:!0}),underline:e=>X(e,D.text,{underline:!0})}});import{truncateToWidth as Ns,visibleWidth as mn}from"@earendil-works/pi-tui";function lr(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 DE(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 al(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function zm(e,t,n="left"){if(t<=0)return"";let r=mn(e);if(r>t)return Ns(e,t);let o=" ".repeat(t-r);return n==="right"?o+e:e+o}function ml(e,t,n,r=1){if(n<=0)return"";let o=mn(t);if(o>=n)return Ns(t,n);let s=n-o-r;if(s<=0)return zm(t,n,"right");let a=mn(e)>s?Ns(e,s):e,p=" ".repeat(n-mn(a)-o);return a+p+t}function sl(e,t,n){let r=To(e,Math.max(0,n-2)),o=Math.max(1,n-1-mn(r)),s=de("border","\u250C\u2500 ")+de("accent",r)+de("border",` ${"\u2500".repeat(o)}\u2510`),a=de("border",`\u2514${"\u2500".repeat(n+2)}\u2518`),p=de("border","\u2502"),c=t.map(h=>`${p} ${zm(h,n)} ${p}`);return[s,...c,a]}function $L(e,t,n,r){let o=r?.gap??1,s=r?.leftWidth??Ds(Math.round(n*.38),28,44),a=n-s-o,p=Math.max(e.rows.length,t.rows.length),c=M=>{let F=[...M];for(;F.length<p;)F.push("");return F},h=sl(e.title,c(e.rows),s-4),I=sl(t.title,c(t.rows),a-4),T=" ".repeat(o);return h.map((M,F)=>M+T+(I[F]??zm("",a)))}function NE(e,t,n){switch(e){case"running":return de(t||n?"accent":"muted","\u25CF");case"failed":return de("error","\u2717");default:return de("success","\u2713")}}function qE(e,t,n,r=Date.now(),o=0){return t?r-o<Wm?de("success","\u2713",!0):de("success","\u2713"):de(n?"accent":"dim",String(e))}function Eo(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||jE;n.includes(s)||n.push(s)}return n.map((o,s)=>{let a=e.steps.filter(O=>(O.phase||jE)===o).map(O=>({...O,phaseIndex:s})),p=a.filter(O=>O.status!=="running").length,c=a.filter(O=>O.status==="failed").length,h=a.reduce((O,_)=>{let Z=_.endedAt??t;return Math.max(O,Z-_.startedAt)},0),I=-1;for(let O=0;O<a.length;O++){let _=a[O];_.status==="running"&&(I<0||_.startedAt>=a[I].startedAt)&&(I=O)}let T=r.get(o),M=a.length>0&&p===a.length&&c===0,F=M?a.reduce((O,_)=>Math.max(O,_.endedAt??0),0):0;return{title:o,...T?{detail:T}:{},agents:a,done:p,failed:c,outputTokens:a.reduce((O,_)=>O+_.outputTokens,0),elapsedMs:h,allDone:M,finishedAt:F,anchor:I}})}function ul(e){return e.steps.reduce((t,n)=>t+n.outputTokens,0)}function wL(e){return e.steps.reduce((t,n)=>t+(n.toolCalls??0),0)}function _E(e,t=Date.now()){return Math.max(0,(e.endedAt??t)-e.startedAt)}function kL(e){return e.steps.length>bL||ul(e)>IL}function TL(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 UE(e,t=Date.now()){let n=Eo(e,t),r=e.steps.length,o=e.steps.filter(h=>h.status!=="running").length,s=e.steps.filter(h=>h.status==="failed").length,a=[e.name],p=n.find(h=>h.anchor>=0);p?a.push(`${p.title} ${p.done}/${p.agents.length}`):n.length>0&&a.push(`${n[n.length-1].title} done`),a.push(`${o}/${r} agents`),a.push(`${al(ul(e))} tok`),a.push(lr(_E(e,t))),s>0&&a.push(`${s} failed`);let c=a.join(" \xB7 ");return kL(e)?`large workflow \xB7 ${c}`:c}function GE(e,t){if(e.status==="running"&&e.outputTokens===0)return[`idle ${lr(t-e.startedAt)}`,"idle"];let n=al(e.outputTokens),r=e.toolCalls??0,o=lr((e.endedAt??t)-e.startedAt);return[`${n} tok \xB7 ${r} tools \xB7 ${o}`,`${n} tok \xB7 ${r} tools`,`${n} tok`]}function il(e,t,n){if(e.length<=n)return{slice:e,start:0,more:0};let r=Math.max(1,n-1),o=Ds(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 RL(e,t,n,r,o){let s=`${e.done}/${e.agents.length}`,a=n?de("accent","\u276F"):" ",p=qE(t+1,e.allDone,n,o,e.finishedAt),c=Math.max(0,r-4-mn(s)),h=mn(e.title)>c?Ns(e.title,c,"\u2026"):e.title,I=e.allDone&&o-e.finishedAt<Wm,T=de(I&&!n?"success":n?"accent":"text",h),M=`${a}${p} ${T}`,F=de(n?"accent":"muted",s);return ml(M,F,r,1)}function OL(e,t,n,r,o,s){let a=t?de("accent","\u276F"):" ",p=NE(e.status,t,n),c=de(t?"accent":"text",zm(e.label,r)),h=`${a}${p} ${c}`,I=Math.max(0,o-mn(h)-1),T=GE(e,s).find(F=>mn(F)<=I)??"",M=de(t?"accent":AL(e)?"dim":"muted",T);return ml(h,M,o,1)}function ML(e,t,n,r){let o=[];return e.forEach((s,a)=>{let c=`${qE(a+1,s.allDone,a===n,r,s.finishedAt)} ${de(a===n?"accent":"text",s.title)} ${de("muted",`${s.done}/${s.agents.length}`)}`;o.push(To(c,t));let{slice:h,more:I}=il(s.agents,0,KE);h.forEach((T,M)=>{let F=NE(T.status,!1,M===s.anchor),O=GE(T,r)[0]??"";o.push(To(` ${F} ${de("text",T.label)} ${de("muted",O)}`,t))}),I>0&&o.push(To(` ${de("dim",`\u2026+${I} more`)}`,t))}),o}function CL(e,t,n){let r=n?.now??Date.now(),o=Eo(e,r),s=e.steps,a=s.filter(ze=>ze.status!=="running").length,p=s.filter(ze=>ze.status==="failed").length,c=[`${a}/${s.length} agents`,`${al(ul(e))} tok`,`${wL(e)} tools`,lr(_E(e,r)),...p>0?[`${p} failed`]:[]].join(" \xB7 "),h=[ml(de("accent",e.name,!0),de("muted",c),t,2),...e.description?[de("muted",To(e.description,t))]:[]],I=n?.footer?[de("muted",To(n.footerText??LL(),t))]:[];if(o.length===0)return[...h,...sl("Phases",["(no agents yet)"],Math.max(0,t-4)),...I];let T=Ds(n?.selectedPhase??TL(o),0,Math.max(0,o.length-1)),M=Ds(Math.round(t*.38),28,44),F=t-M-1-4;if(t<SL||F<PL)return[...h,...ML(o,t,T,r),...I];let O=o[T],{slice:_,start:Z,more:ae}=il(o,T,EL),xe=_.map((ze,qt)=>RL(ze,Z+qt,Z+qt===T,M-4,r));ae>0&&xe.push(de("dim",`\u2026+${ae} more`));let ke=n?.filter?n.filter(O.agents):O.agents,We=ke.length?Ds(Math.max(...ke.map(ze=>mn(ze.label))),6,vL):6,{slice:Nt,more:he}=il(ke,0,n?.agentWindow??KE),te=Nt.map((ze,qt)=>OL(ze,!1,qt===O.anchor,We,F,r));he>0&&te.push(de("dim",`\u2026+${he} more`));let E=$L({title:"Phases",rows:xe},{title:`${O.title} \xB7 ${ke.length} agents${n?.filterLabel??""}`,rows:te},t,{leftWidth:M,gap:1});return[...h,...E,...I]}function WE(e,t=[],n=96,r,o){let s=CL(e,n,{now:e.endedAt??Date.now(),footer:!0,...r===void 0?{}:{selectedPhase:r},...o?.filter?{filter:o.filter}:{},...o?.footerText?{footerText:o.footerText}:{},...o?.filterLabel?{filterLabel:o.filterLabel}:{}}),a=new Set(t);if(o?.drill){let c=Eo(e,e.endedAt??Date.now()),h=c[Math.max(0,Math.min(c.length-1,r??0))];for(let I of h?.agents??[])a.add(I.label)}if(a.size===0)return s;let p=[];for(let c of e.steps)if(a.has(c.label)){for(let h of c.tasks??[]){let I=h.status==="completed"?"[x]":h.status==="in_progress"?"[>]":"[ ]";p.push(` ${de("muted",I)} ${de("text",h.content)}`)}c.detail&&p.push(` ${de("dim",c.detail)}`)}return p.length===0?s:[...s.slice(0,-1),...p,s[s.length-1]]}function LL(){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 FE,de,bL,IL,Wm,Ds,To,jE,KE,EL,vL,SL,PL,AL,qs=m(()=>{js();FE={text:D.text,muted:D.mute,dim:D.dim,accent:D.accent,success:D.tool,error:D.bad,border:D.line},de=(e,t,n=!1)=>n?X(t,FE[e],{bold:!0}):X(t,FE[e]),bL=25,IL=15e5,Wm=420;Ds=(e,t,n)=>Math.max(t,Math.min(n,e)),To=(e,t)=>mn(e)>t?Ns(e,Math.max(0,t),"\u2026"):e;jE="Workflow";KE=16,EL=12,vL=18,SL=72,PL=24;AL=e=>e.status==="running"&&e.outputTokens===0});import{readFileSync as FL}from"node:fs";import{basename as jL}from"node:path";import{StringEnum as DL}from"@earendil-works/pi-ai";import{defineTool as NL}from"@earendil-works/pi-coding-agent";function BE(e){zE=e}function _L(e){let t=e.replace(/^(?:\s+|\/\/[^\n]*\n|\/\*[\s\S]*?\*\/)*/,""),n=/^export\s+const\s+meta\s*=\s*/.exec(t);if(!n)throw new Ge("a workflow script must start with `export const meta = { name, description }`");let r=e.length-t.length,o=n[0].length,s=0,a=null,p=-1;for(let F=o;F<t.length;F++){let O=t[F];if(a){O==="\\"?F++:O===a&&(a=null);continue}if(O==='"'||O==="'"||O==="`")a=O;else if(O==="{"||O==="[")s++;else if((O==="}"||O==="]")&&(s--,s===0)){p=F+1;break}}if(p===-1)throw new Ge("meta is not a closed literal object");let c=t.slice(o,p),h=e.slice(r+p).replace(/^\s*;/,"");if(/^\s*(import|export)\b/m.test(h))throw new Ge("a workflow body must not contain import or export declarations");if(/\bimport\s*\(/.test(h))throw new Ge("a workflow body must not use dynamic import()");let I;try{I=new Function(`"use strict"; return (${c});`)()}catch(F){throw new Ge(`meta must be a literal object: ${F instanceof Error?F.message:String(F)}`)}if(typeof I!="object"||I===null)throw new Ge("meta must be an object");let T=I;if(typeof T.name!="string"||!T.name.trim())throw new Ge("meta.name is required");if(typeof T.description!="string"||!T.description.trim())throw new Ge("meta.description is required");let M=Array.isArray(T.phases)?T.phases.filter(F=>typeof F=="object"&&F!==null).map(F=>({title:String(F.title??""),...typeof F.detail=="string"?{detail:F.detail}:{}})).filter(F=>F.title):void 0;return{meta:{name:T.name,description:T.description,...typeof T.whenToUse=="string"?{whenToUse:T.whenToUse}:{},...M?{phases:M}:{}},body:h}}function UL(e){let t=["agent","parallel","pipeline","phase","log","args","budget"],n=`"use strict"; return (async () => {
|
|
86
|
+
Reply with ONLY a corrected JSON value.`}function $l(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 mj,uj,iv,av,We,uv=m(()=>{ov();mj=1e3,uj=4096,iv=100,av=300*1e3;We=class extends Error{constructor(t){super(t),this.name="WorkflowError"}}});import{parseColor as Gn,styleText as fj}from"@earendil-works/pi-tui";function gj(e,t){return fj(e,t,Qm)}function Q(e,t,n){return gj(e,{...n,fg:t})}var Qm,D,cv,Gs=m(()=>{Qm="truecolor",D={text:Gn("#e6e6e6"),mute:Gn("#8b8b8b"),dim:Gn("#5c5c5c"),user:Gn("#d0d0d0"),accent:Gn("#c4b5fd"),tool:Gn("#6ee7b7"),bad:Gn("#f0a8a4"),warn:Gn("#e6b15a"),line:Gn("#3a3a3a")};cv={heading:e=>Q(e,D.text,{bold:!0}),link:e=>Q(e,D.accent,{underline:!0}),linkUrl:e=>Q(e,D.mute),code:e=>Q(e,D.text),codeBlock:e=>Q(e,D.text),codeBlockBorder:e=>Q(e,D.line),quote:e=>Q(e,D.mute,{italic:!0}),quoteBorder:e=>Q(e,D.line),hr:e=>Q(e,D.line),listBullet:e=>Q(e,D.mute),bold:e=>Q(e,D.text,{bold:!0}),italic:e=>Q(e,D.text,{italic:!0}),strikethrough:e=>Q(e,D.mute,{strikethrough:!0}),underline:e=>Q(e,D.text,{underline:!0})}});import{truncateToWidth as Bs,visibleWidth as un}from"@earendil-works/pi-tui";function dr(e){let t=Math.max(0,Math.round(e/1e3)),n=Math.floor(t/3600),r=Math.floor(t%3600/60),o=t%60;return n>0?`${n}h${String(r).padStart(2,"0")}m`:r>0?`${r}m${String(o).padStart(2,"0")}s`:`${o}s`}function dv(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 Tl(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function tu(e,t,n="left"){if(t<=0)return"";let r=un(e);if(r>t)return Bs(e,t);let o=" ".repeat(t-r);return n==="right"?o+e:e+o}function El(e,t,n,r=1){if(n<=0)return"";let o=un(t);if(o>=n)return Bs(t,n);let s=n-o-r;if(s<=0)return tu(t,n,"right");let a=un(e)>s?Bs(e,s):e,c=" ".repeat(n-un(a)-o);return a+c+t}function wl(e,t,n){let r=Oo(e,Math.max(0,n-2)),o=Math.max(1,n-1-un(r)),s=fe("border","\u250C\u2500 ")+fe("accent",r)+fe("border",` ${"\u2500".repeat(o)}\u2510`),a=fe("border",`\u2514${"\u2500".repeat(n+2)}\u2518`),c=fe("border","\u2502"),p=t.map(f=>`${c} ${tu(f,n)} ${c}`);return[s,...p,a]}function yj(e,t,n,r){let o=r?.gap??1,s=r?.leftWidth??Ws(Math.round(n*.38),28,44),a=n-s-o,c=Math.max(e.rows.length,t.rows.length),p=M=>{let j=[...M];for(;j.length<c;)j.push("");return j},f=wl(e.title,p(e.rows),s-4),I=wl(t.title,p(t.rows),a-4),w=" ".repeat(o);return f.map((M,j)=>M+w+(I[j]??tu("",a)))}function fv(e,t,n){switch(e){case"running":return fe(t||n?"accent":"muted","\u25CF");case"failed":return fe("error","\u2717");default:return fe("success","\u2713")}}function gv(e,t,n,r=Date.now(),o=0){return t?r-o<eu?fe("success","\u2713",!0):fe("success","\u2713"):fe(n?"accent":"dim",String(e))}function Mo(e,t=Date.now()){let n=e.phases.map(o=>o.title),r=new Map(e.phases.map(o=>[o.title,o.detail]));for(let o of e.steps){let s=o.phase||lv;n.includes(s)||n.push(s)}return n.map((o,s)=>{let a=e.steps.filter(A=>(A.phase||lv)===o).map(A=>({...A,phaseIndex:s})),c=a.filter(A=>A.status!=="running").length,p=a.filter(A=>A.status==="failed").length,f=a.reduce((A,q)=>{let ee=q.endedAt??t;return Math.max(A,ee-q.startedAt)},0),I=-1;for(let A=0;A<a.length;A++){let q=a[A];q.status==="running"&&(I<0||q.startedAt>=a[I].startedAt)&&(I=A)}let w=r.get(o),M=a.length>0&&c===a.length&&p===0,j=M?a.reduce((A,q)=>Math.max(A,q.endedAt??0),0):0;return{title:o,...w?{detail:w}:{},agents:a,done:c,failed:p,outputTokens:a.reduce((A,q)=>A+q.outputTokens,0),elapsedMs:f,allDone:M,finishedAt:j,anchor:I}})}function vl(e){return e.steps.reduce((t,n)=>t+n.outputTokens,0)}function bj(e){return e.steps.reduce((t,n)=>t+(n.toolCalls??0),0)}function hv(e,t=Date.now()){return Math.max(0,(e.endedAt??t)-e.startedAt)}function Ij(e){return e.steps.length>hj||vl(e)>xj}function $j(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 xv(e,t=Date.now()){let n=Mo(e,t),r=e.steps.length,o=e.steps.filter(f=>f.status!=="running").length,s=e.steps.filter(f=>f.status==="failed").length,a=[e.name],c=n.find(f=>f.anchor>=0);c?a.push(`${c.title} ${c.done}/${c.agents.length}`):n.length>0&&a.push(`${n[n.length-1].title} done`),a.push(`${o}/${r} agents`),a.push(`${Tl(vl(e))} tok`),a.push(dr(hv(e,t))),s>0&&a.push(`${s} failed`);let p=a.join(" \xB7 ");return Ij(e)?`large workflow \xB7 ${p}`:p}function bv(e,t){if(e.status==="running"&&e.outputTokens===0)return[`idle ${dr(t-e.startedAt)}`,"idle"];let n=Tl(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 kl(e,t,n){if(e.length<=n)return{slice:e,start:0,more:0};let r=Math.max(1,n-1),o=Ws(t-Math.floor(r/2),0,e.length-r),s=e.slice(o,o+r);return{slice:s,start:o,more:e.length-s.length}}function Sj(e,t,n,r,o){let s=`${e.done}/${e.agents.length}`,a=n?fe("accent","\u276F"):" ",c=gv(t+1,e.allDone,n,o,e.finishedAt),p=Math.max(0,r-4-un(s)),f=un(e.title)>p?Bs(e.title,p,"\u2026"):e.title,I=e.allDone&&o-e.finishedAt<eu,w=fe(I&&!n?"success":n?"accent":"text",f),M=`${a}${c} ${w}`,j=fe(n?"accent":"muted",s);return El(M,j,r,1)}function Pj(e,t,n,r,o,s){let a=t?fe("accent","\u276F"):" ",c=fv(e.status,t,n),p=fe(t?"accent":"text",tu(e.label,r)),f=`${a}${c} ${p}`,I=Math.max(0,o-un(f)-1),w=bv(e,s).find(j=>un(j)<=I)??"",M=fe(t?"accent":vj(e)?"dim":"muted",w);return El(f,M,o,1)}function Rj(e,t,n,r){let o=[];return e.forEach((s,a)=>{let p=`${gv(a+1,s.allDone,a===n,r,s.finishedAt)} ${fe(a===n?"accent":"text",s.title)} ${fe("muted",`${s.done}/${s.agents.length}`)}`;o.push(Oo(p,t));let{slice:f,more:I}=kl(s.agents,0,yv);f.forEach((w,M)=>{let j=fv(w.status,!1,M===s.anchor),A=bv(w,r)[0]??"";o.push(Oo(` ${j} ${fe("text",w.label)} ${fe("muted",A)}`,t))}),I>0&&o.push(Oo(` ${fe("dim",`\u2026+${I} more`)}`,t))}),o}function Aj(e,t,n){let r=n?.now??Date.now(),o=Mo(e,r),s=e.steps,a=s.filter(ze=>ze.status!=="running").length,c=s.filter(ze=>ze.status==="failed").length,p=[`${a}/${s.length} agents`,`${Tl(vl(e))} tok`,`${bj(e)} tools`,dr(hv(e,r)),...c>0?[`${c} failed`]:[]].join(" \xB7 "),f=[El(fe("accent",e.name,!0),fe("muted",p),t,2),...e.description?[fe("muted",Oo(e.description,t))]:[]],I=n?.footer?[fe("muted",Oo(n.footerText??Oj(),t))]:[];if(o.length===0)return[...f,...wl("Phases",["(no agents yet)"],Math.max(0,t-4)),...I];let w=Ws(n?.selectedPhase??$j(o),0,Math.max(0,o.length-1)),M=Ws(Math.round(t*.38),28,44),j=t-M-1-4;if(t<Tj||j<Ej)return[...f,...Rj(o,t,w,r),...I];let A=o[w],{slice:q,start:ee,more:me}=kl(o,w,wj),xe=q.map((ze,Ut)=>Sj(ze,ee+Ut,ee+Ut===w,M-4,r));me>0&&xe.push(fe("dim",`\u2026+${me} more`));let Te=n?.filter?n.filter(A.agents):A.agents,Be=Te.length?Ws(Math.max(...Te.map(ze=>un(ze.label))),6,kj):6,{slice:qt,more:ye}=kl(Te,0,n?.agentWindow??yv),re=qt.map((ze,Ut)=>Pj(ze,!1,Ut===A.anchor,Be,j,r));ye>0&&re.push(fe("dim",`\u2026+${ye} more`));let T=yj({title:"Phases",rows:xe},{title:`${A.title} \xB7 ${Te.length} agents${n?.filterLabel??""}`,rows:re},t,{leftWidth:M,gap:1});return[...f,...T,...I]}function Iv(e,t=[],n=96,r,o){let s=Aj(e,n,{now:e.endedAt??Date.now(),footer:!0,...r===void 0?{}:{selectedPhase:r},...o?.filter?{filter:o.filter}:{},...o?.footerText?{footerText:o.footerText}:{},...o?.filterLabel?{filterLabel:o.filterLabel}:{}}),a=new Set(t);if(o?.drill){let p=Mo(e,e.endedAt??Date.now()),f=p[Math.max(0,Math.min(p.length-1,r??0))];for(let I of f?.agents??[])a.add(I.label)}if(a.size===0)return s;let c=[];for(let p of e.steps)if(a.has(p.label)){for(let f of p.tasks??[]){let I=f.status==="completed"?"[x]":f.status==="in_progress"?"[>]":"[ ]";c.push(` ${fe("muted",I)} ${fe("text",f.content)}`)}p.detail&&c.push(` ${fe("dim",p.detail)}`)}return c.length===0?s:[...s.slice(0,-1),...c,s[s.length-1]]}function Oj(){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 pv,fe,hj,xj,eu,Ws,Oo,lv,yv,wj,kj,Tj,Ej,vj,zs=m(()=>{Gs();pv={text:D.text,muted:D.mute,dim:D.dim,accent:D.accent,success:D.tool,error:D.bad,border:D.line},fe=(e,t,n=!1)=>n?Q(t,pv[e],{bold:!0}):Q(t,pv[e]),hj=25,xj=15e5,eu=420;Ws=(e,t,n)=>Math.max(t,Math.min(n,e)),Oo=(e,t)=>un(e)>t?Bs(e,Math.max(0,t),"\u2026"):e;lv="Workflow";yv=16,wj=12,kj=18,Tj=72,Ej=24;vj=e=>e.status==="running"&&e.outputTokens===0});import{readFileSync as Mj}from"node:fs";import{basename as Cj}from"node:path";import{StringEnum as Lj}from"@earendil-works/pi-ai";import{defineTool as jj}from"@earendil-works/pi-coding-agent";function wv(e){$v=e}function Dj(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 A=t[j];if(a){A==="\\"?j++:A===a&&(a=null);continue}if(A==='"'||A==="'"||A==="`")a=A;else if(A==="{"||A==="[")s++;else if((A==="}"||A==="]")&&(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 Nj(e){let t=["agent","parallel","pipeline","phase","log","args","budget"],n=`"use strict"; return (async () => {
|
|
77
88
|
${e}
|
|
78
|
-
})();`,r;try{r=new Function(...t,n)}catch(o){throw new
|
|
89
|
+
})();`,r;try{r=new Function(...t,n)}catch(o){throw new We(`workflow did not compile: ${o instanceof Error?o.message:String(o)}`)}return r}function _j(e){return e.getLastAssistantText()?.trim()??""}function qj(){return async({prompt:e,agentType:t,effort:n,model:r,isolation:o})=>{let s=qr.get(t)??qr.get("task");if(!s)throw new We(`no agent named ${t}`);let a=o==="worktree"?await QE(process.cwd(),t):null,c=await Xm({agent:s.name,effort:n??s.effort,...a?{worktree:a.path}:{}});try{await c.prompt(`${s.prompt}
|
|
79
90
|
|
|
80
91
|
Task:
|
|
81
|
-
${e}`);let c
|
|
82
|
-
|
|
83
|
-
${
|
|
84
|
-
${
|
|
85
|
-
|
|
86
|
-
`)}],details:{agents:a.map(
|
|
87
|
-
`)||void 0}}var
|
|
88
|
-
`)}function
|
|
89
|
-
`);
|
|
90
|
-
`)){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
|
|
91
|
-
`).filter(Boolean).map(o=>{let[s,...a]=o.split(" ");return`${s?.[0]??"?"} ${a.at(-1)??""}`})}catch{return[]}}async function
|
|
92
|
-
`)[0]??"";return s.length>40?`${s.slice(0,40)}\u2026`:s}default:return
|
|
93
|
-
`))r.startsWith("+")&&!r.startsWith("+++")?t+=1:r.startsWith("-")&&!r.startsWith("---")&&(n+=1);return{additions:t,removals:n}}function
|
|
94
|
-
`).find(t=>t.trim())??""}function
|
|
95
|
-
`).length:0}function
|
|
96
|
-
`).find(
|
|
97
|
-
`).find(
|
|
98
|
-
`).filter(r=>r.length>0).slice(0,12);if(e==="bash"||e==="powershell"){let r=
|
|
99
|
-
`).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",
|
|
100
|
-
`).filter(
|
|
101
|
-
`),a=s.slice(0,
|
|
102
|
-
|
|
103
|
-
${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:vo(s.name,s.arguments)})})}else n.role==="toolResult"&&t.push({id:`r-${n.toolCallId}`,kind:"result",title:n.toolName,body:Zm(n.toolName,{content:n.content},n.isError)});return t}function vv(e,t,n){return vF(e,Math.max(8,t)).map(r=>X(r,n))}function PF(e){let t=e.body||" ",n=Gs.get(e.id);if(n)return n.text!==t&&(n.component.setText(t),n.text=t),n.component;let r=new EF(t,0,0,LE);return Gs.set(e.id,{text:t,component:r}),r}var Gs,Pl,Qm,Sv=m(()=>{xl();js();Sl();Gs=new Map;Pl=class{constructor(t){this.item=t}item;invalidate(){}shade(t){let n=Date.now()-(this.item.born??0);return _s(D.dim,t,iv(n,fl))}render(t){let n=this.item.body;if(this.item.kind==="user")return["",...vv(`> ${n}`,t,this.shade(D.user))];if(this.item.kind==="tool")return[X(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?[X(` ${wl} ${n}`,o?D.bad:D.mute)]:[]];let s=[];this.item.call&&s.push(X(this.item.call,this.shade(D.tool)));let a=` ${wl} ${n}`;if(s.push(X(a,o?D.bad:this.shade(D.mute))),this.item.expanded===!0&&(this.item.full?.length??0)>0){let I=X(` ${this.item.full.length} line(s) \xB7 ctrl+e to collapse`,D.dim);s.push(X(` ${kl}`,D.dim));for(let T of this.item.full){let M=T.startsWith("+")?D.tool:T.startsWith("-")?D.bad:D.dim;s.push(X(` ${T}`,M))}return s.push(I),s}let c=this.item.detail??[],h=gl(Date.now()-(this.item.born??0),c.length);for(let I of c.slice(0,h)){let T=I.startsWith("+")?D.tool:I.startsWith("-")?D.bad:D.dim;s.push(X(` ${I}`,this.shade(T)))}return(this.item.full?.length??0)>0&&s.push(X(` ${kl} ${this.item.full.length} line(s) \xB7 ctrl+e to expand`,D.dim)),s}if(this.item.kind==="error"||this.item.kind==="note"){let o=this.item.kind==="error"?D.bad:D.mute;return["",...vv(n,t,this.shade(o))]}return["",...PF(this.item).render(Math.max(8,t-2))]}},Qm=class{items=[];status="";scrollOffset=0;viewportHeight=0;invalidate(){}entering(){let t=Date.now();return this.items.some(n=>{if(n.born===void 0)return!1;let r=t-n.born;return av(r,fl)?!0:(n.detail?.length??0)>gl(r,n.detail?.length??0)})}render(t){if(Gs.size>this.items.length){let o=new Set(this.items.map(s=>s.id));for(let s of Gs.keys())o.has(s)||Gs.delete(s)}let n=[];for(let o of this.items)o.born??=Date.now(),n.push(...new Pl(o).render(t));this.status&&n.push(X(this.status,D.mute));let r=this.viewportHeight;if(r>0&&n.length>r){let o=n.length-r,s=Math.max(0,Math.min(this.scrollOffset,o));return this.scrollOffset=s,n.slice(o-s,o-s+r)}return this.scrollOffset=0,n}}});function pt(e,t){return`${t}${e}${Av}`}function RF(e){return e>=85?AF:e>=70?Ov:Rv}function Mv(e,t,n,r){let o=pt(`[${e}]`,Al),s=pt(`${OF} ${t}`,Fn),a=pt(n,Ov),p=r?` ${pt("git:(",Pv)}${pt(r.replace(/^git:\(/,"").replace(/\)$/,""),Al)}${pt(")",Pv)}`:"";return`${o}${pt(" \u2502 ",Fn)}${s}${pt(" \u2502 ",Fn)}${a}${p}`}function Cv(e,t,n){if(!t)return e;let r=n===void 0?t:`${t} ${pt(DE(n),Fn)}`;return`${pt(r,Al)} ${pt("\u2502",Fn)} ${e}`}function Lv(e,t){let n=Number.isFinite(e)?Math.min(100,Math.max(0,e)):0,r=Math.round(n/10),o=RF(n),s=`${o}${"\u2588".repeat(r)}${Fn}${"\u2591".repeat(10-r)}${Av}`,a=pt(`${Math.round(n)}%`,o),p=t?`${pt(" \u2502 ",Fn)}${t}`:"";return`${pt("Context",Fn)} ${s} ${a}${p}`}function Fv(e,t,n){let r=n===null?"":pt(` ${n}ms`,Fn);return`${pt("Cubence",Fn)} ${pt(t?`${t} ${e}`:e,Rv)}${r}`}var Av,Fn,AF,Rv,Ov,Pv,Al,OF,Rl=m(()=>{qs();Av="\x1B[0m",Fn="\x1B[2m",AF="\x1B[31m",Rv="\x1B[32m",Ov="\x1B[33m",Pv="\x1B[35m",Al="\x1B[36m";OF="\u2726"});import{mkdirSync as MF,readFileSync as Dv}from"node:fs";import{homedir as CF}from"node:os";import{dirname as LF,join as FF}from"node:path";function jv(e){return e/1e6}function DF(){try{let e=JSON.parse(Dv(FF(CF(),".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 NF(){try{let e=JSON.parse(Dv(Ol,"utf8"));return!e.data||typeof e.cachedAt!="number"?void 0:{data:e.data,cachedAt:e.cachedAt}}catch{return}}function Ws(e){let t=`$${e.balanceDollar.toFixed(2)}`,n=e.hasSubscription?`5h $${e.fiveHourUsedDollar.toFixed(2)}/$${e.fiveHourLimitDollar.toFixed(2)} bal`:"";return Fv(t,n,e.latencyMs)}async function Nv(){let e=NF();if(e&&Date.now()-e.cachedAt<jF)return Ws(e.data);let t=DF();if(!t)return e?Ws(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?Ws(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:jv(o.subscription_window?.five_hour?.used??0),fiveHourLimitDollar:jv(s),latencyMs:Date.now()-n};return MF(LF(Ol),{recursive:!0}),Ze(Ol,JSON.stringify({data:a,cachedAt:Date.now()})),Ws(a)}catch{return e?Ws(e.data):void 0}}var Ol,jF,qv=m(()=>{Wn();Rl();zn();Ol=$u,jF=18e4});function _v(){return{}}function Uv(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 qF(e){let t=Math.max(0,Math.round(e/1e3)),n=Math.floor(t/60);return n>0?`${n}m ${String(t%60).padStart(2,"0")}s`:`${t}s`}function Kv(e,t,n=Date.now()){return e.prompt?`? ${e.prompt}`:e.note?`* ${e.note}`:e.run?`${t} ${e.run.label} \xB7 ${qF(n-e.run.since)}`:e.tally?e.tally:""}var Gv=m(()=>{});import{spawn as _F}from"node:child_process";function UF(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 Wv(e,t=process.platform){let n=UF(t);return n?new Promise(r=>{try{let o=_F(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 zv=m(()=>{});import{mkdirSync as KF}from"node:fs";import{join as GF}from"node:path";import{matchesKey as tu}from"@earendil-works/pi-tui";function Hv(){return{selectedPhase:0,filter:"all",paused:!1,expanded:!1,follow:!0}}function Vv(e){if(tu(e,"up"))return"up";if(tu(e,"down"))return"down";if(tu(e,"enter"))return"enter";if(tu(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 Bv(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 WF(e){let t=Ml.indexOf(e);return Ml[(t+1)%Ml.length]}function Jv(e,t,n){switch(t){case"up":return Bv(e,n,-1);case"down":return Bv(e,n,1);case"enter":return{...e,expanded:!e.expanded};case"filter":return{...e,filter:WF(e.filter)};case"pause":return{...e,paused:!e.paused};default:return e}}function Yv(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 Xv(e){return e==="all"?"":` \xB7 ${e}`}function Qv(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 zF(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 eS(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=zF(e.name);if(!n)return{ok:!1,reason:`"${e.name}" is not a usable filename, so the script was not written`};let r=GF(t,`${n}.js`);try{KF(t,{recursive:!0}),Ze(r,e.code)}catch(o){return{ok:!1,reason:o instanceof Error?o.message:String(o)}}return{ok:!0,path:r}}var Ml,Zv,tS=m(()=>{zn();Ml=["all","running","failed","done"];Zv="ctrl+f"});function nS(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 rS=m(()=>{});var hS={};Lt(hS,{Dock:()=>su,Hud:()=>ru,PinnedBlock:()=>ou,approvalDetail:()=>gS,orderModelsForDefault:()=>dS,pickerPanel:()=>fS,runWorkbench:()=>hj,workflowPanel:()=>xS,workflowPanelFromRun:()=>Bs,workflowRunOf:()=>iu});import{execFile as BF}from"node:child_process";import{promisify as HF}from"node:util";import{existsSync as VF,mkdirSync as JF,readFileSync as YF}from"node:fs";import{basename as XF,join as oS,resolve as ZF}from"node:path";import{copyToClipboard as QF,SessionManager as ej}from"@earendil-works/pi-coding-agent";import{CombinedAutocompleteProvider as sS,Container as tj,Editor as nj,matchesKey as Ot,ProcessTerminal as rj,ScrollView as oj,KeybindingsManager as uS,setKeybindings as pS,TUI_KEYBINDINGS as cS,SelectList as sj,TuiAltScreen as ij,truncateToWidth as zs,VStack as aj,visibleWidth as nu,wrapTextWithAnsi as mj,getNativeClipboard as uj}from"@earendil-works/pi-tui";import{TreeSelectorComponent as pj,initTheme as cj}from"@earendil-works/pi-coding-agent";import{getKeybindings as iS}from"@earendil-works/pi-tui";function lj(e){if(typeof e!="object"||e===null)return;let t=e[lS];return typeof t=="function"?t.call(e):void 0}async function mS(e){try{let{stdout:t}=await Fl("git",["-C",e,"rev-parse","--abbrev-ref","HEAD"],{encoding:"utf8"}),n=t.trim();if(!n||n==="HEAD")return"";let{stdout:r}=await Fl("git",["-C",e,"status","--porcelain"],{encoding:"utf8"});return`git:(${n}${r.trim()?"*":""})`}catch{return null}}function dS(e){let t=n=>{if(fj.test(n))return 100;let r=dj.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 fS(e,t,n,r=!1,o=[]){let s=Math.max(24,n),a=s-4,p=(Z,ae)=>{let xe=nu(Z)>a?zs(Z,a,"\u2026"):Z,ke=`${xe}${" ".repeat(Math.max(0,a-nu(xe)))}`;return`\u2502 ${ae?ae(ke):ke} \u2502`},c="\u2500".repeat(s-2),h=[p(` ${t}`),...e.render(a).map(Z=>p(Z))],I=o.flatMap(Z=>Z===""?[""]:mj(Z,a)),T=I.length>0?[p(""),...I.map(Z=>p(Z,ae=>X(ae,D.mute)))]:[];if(!r)return["",`\u250C${c}\u2510`,...h,...T,`\u2514${c}\u2518`];let M=mv(D.line,D.warn,Date.now(),1400),F=X("\u2502",M),O=(Z,ae)=>X(`${Z}${c}${ae}`,M),_=[...h,...T].map(Z=>`${F}${Z.slice(1,-1)}${F}`);return["",O("\u250C","\u2510"),..._,O("\u2514","\u2518")]}function gS(e,t){let n=t.split(`
|
|
104
|
-
`)
|
|
105
|
-
|
|
92
|
+
${e}`);let p=c.getSessionStats(),f=r??Uj(c);return{text:_j(c),outputTokens:p.tokens.output,toolCalls:p.toolCalls,...f?{model:f}:{}}}finally{c.dispose(),await a?.remove()}}}function Uj(e){return e.model?.id??e.model?.name}function kv(e){let t=()=>e??$v;return jj({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:Kj,executionMode:"sequential",async execute(n,r,o,s,a){let c=r.path?Mj(r.path,"utf8"):r.code??"";if(!c.trim())throw new We("provide code or path");let{meta:p,body:f}=Dj(c);if(r.path){let ye=Cj(r.path).replace(/\.(js|mjs|cjs|ts)$/,"");if(ye!==p.name)throw new We(`meta.name "${p.name}" must match the script filename "${ye}"`)}let I=Nj(f),w=Date.now(),M=[],j=0,A=0,q=(ye,re)=>({name:p.name,...p.description?{description:p.description}:{},ok:ye,agents:A,outputTokens:j,startedAt:w,phases:p.phases??[],steps:M,...re?{error:re}:{}}),ee=(ye,re)=>{a.ui.setStatus(Sl,re?void 0:xv(ye)),s?.({content:[],details:q(!1)})},me=ye=>{A=ye.length,j=ye.reduce((re,T)=>re+T.outputTokens,0),M.splice(0,M.length,...ye.map(re=>({label:re.label,phase:re.phase,agent:re.agentType,status:re.status,outputTokens:re.outputTokens,startedAt:re.startedAt,...re.toolCalls!==void 0?{toolCalls:re.toolCalls}:{},...re.model?{model:re.model}:{},...re.endedAt?{endedAt:re.endedAt}:{},...re.detail?{detail:re.detail}:{},...re.tasks?{tasks:re.tasks}:{}}))),ee({name:p.name,...p.description?{description:p.description}:{},phases:p.phases??[],steps:M,startedAt:w},!1)},xe=qj(),Te=mv({invoke:r.agent?Gj(xe,r.agent):xe,budgetTotal:r.budget??null,onProgress:me,...o?{signal:o}:{},...t()?.isPaused?{isPaused:t().isPaused}:{}}),Be=new AbortController,qt=setTimeout(()=>Be.abort(),Fj);o&&o.addEventListener("abort",()=>Be.abort(),{once:!0}),t()?.onStop?.(()=>Be.abort());try{let ye=await Promise.race([I(Te.agent,Te.parallel,Te.pipeline,Te.phase,Te.log,Te.args,Te.budget),new Promise((T,ze)=>Be.signal.addEventListener("abort",()=>ze(new We("workflow timed out or was aborted"))))]),re=Date.now();return a.ui.setStatus(Sl,void 0),{content:[{type:"text",text:`${p.name}: ${A} agent call(s), ${j} output tokens in ${dr(re-w)}
|
|
93
|
+
|
|
94
|
+
${Wj(ye)}`}],details:{...q(!0),endedAt:re}}}catch(ye){let re=ye instanceof Error?ye.message:String(ye);return a.ui.setStatus(Sl,void 0),{content:[{type:"text",text:`${p.name} failed after ${A} agent call(s): ${re}`}],details:{...q(!1,re),endedAt:Date.now()},isError:!0}}finally{clearTimeout(qt),t()?.onStop?.(null)}}})}function Gj(e,t){return n=>e({...n,agentType:t})}function Wj(e){if(typeof e=="string")return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}var Sl,$v,Fj,Kj,Pl=m(()=>{Dr();Ks();Il();uv();zs();Sl="workflow",$v=null;Fj=600*1e3;Kj=Y.Object({code:Y.Optional(Y.String({description:"The workflow script source"})),path:Y.Optional(Y.String({description:"Path to a workflow script, instead of code"})),agent:Y.Optional(Lj(["scout","task","reviewer"],{description:"Default agent profile for calls"})),budget:Y.Optional(Y.Number({description:"Output-token ceiling for the whole run"}))})});import{Type as St}from"@earendil-works/pi-ai";import{defineTool as Bj}from"@earendil-works/pi-coding-agent";var Tv,Ev=m(()=>{Ks();Ks();Tv=Bj({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:St.Object({agent:St.Optional(St.String()),effort:St.Optional(St.String()),task:St.Optional(St.String()),tasks:St.Optional(St.Array(St.Object({agent:St.Optional(St.String()),effort:St.Optional(St.String()),task:St.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 zE({...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 HE(n),{content:[{type:"text",text:a.map(p=>`## ${p.agent}#${p.id} ${p.status}
|
|
95
|
+
${p.result??""}`).join(`
|
|
96
|
+
|
|
97
|
+
`)}],details:{agents:a.map(p=>({id:p.id,status:p.status}))}}}})});function vv(){return e=>{e.on("session_start",()=>{let t=new Set(e.getActiveTools());for(let n of zj)e.getAllTools().some(r=>r.name===n)&&t.add(n);e.setActiveTools([...t])})}}var zj,Sv=m(()=>{zj=["grep","find","ls"]});var Pv={};Ft(Pv,{BUILD_ENTRY:()=>ru,openSession:()=>tF});import{join as Hj}from"node:path";import{createAgentSession as Vj,createCodemodeExtension as Jj,createMcpExtension as Yj,DefaultResourceLoader as Xj,SessionManager as nu,SettingsManager as Zj}from"@earendil-works/pi-coding-agent";function eF(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 tF(e){let t=Zj.create(e.cwd,He,{projectTrusted:!0}),n=e.sessionPath?nu.open(e.sessionPath):e.noSession?nu.inMemory(e.cwd):e.continueSession?nu.continueRecent(e.cwd):nu.create(e.cwd),r=(()=>{try{let I=n.getEntries().find(w=>w.type==="custom"&&w.customType===ru)?.data?.version;return!I||I===fn?void 0:`this session was written by HowToFix ${I}; you are running ${fn}`}catch{return}})(),o=new Xj({cwd:e.cwd,agentDir:He,settingsManager:t,appendSystemPrompt:[dd],additionalSkillPaths:[gr(e.cwd)],extensionFactories:[wE(),Ko(),Kd(),Bm(),RE(),kE(),vE(),Jj(),Yj(),vv()]});await o.reload();let s=await Vj({cwd:e.cwd,agentDir:He,settingsManager:t,sessionManager:n,resourceLoader:o,excludeTools:Qj().exclude,customTools:[Tv,zd,Hd,Mm,Cm,mE,TE,EE,kv(),Hm,Vm,Jm],thinkingLevel:e.thinking}),a=s.session.model;if(e.model){let f=await s.session.modelRuntime.getAvailable(),I=eF(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!==ru))try{n.appendCustomEntry(ru,{version:fn})}catch{}let c=a?`${a.provider}/${a.id}`:"no model",p=[fd(s.modelFallbackMessage)].filter(f=>!!f);return a||p.push(`no model configured. run \`howtofix\` and use /login, or edit ${Hj(He,"models.json")}`),{session:s.session,dispose:()=>{dl(),s.session.dispose()},modelLabel:c,note:[r,...p].filter(Boolean).join(`
|
|
98
|
+
`)||void 0}}var ru,Qj,Rv=m(()=>{_o();Gd();Dn();Go();tc();Qp();Lm();_m();ol();SE();AE();al();Pl();Ev();Sv();pl();gl();fl();ru="howtofix.build",Qj=()=>({exclude:process.platform==="win32"?[]:["powershell"]})});import{mixColors as nF,styleText as Av}from"@earendil-works/pi-tui";function Hs(e,t,n){let r=jv(n);return r>=1?t:r<=0?e:nF(e,t,r)}function Al(e,t,n,r){return!Kr||e<=Rl?t:e>=Cv?r:Hs(n,r,(e-Rl)/(Cv-Rl))}function Fv(e,t){return!Kr||t<=0||e<0?1:1-(1-jv(e/t))**3}function Dv(e,t){return Kr&&e>=0&&e<t}function Ml(e,t,n=oF,r=400){return!Kr||n<=0||e<0||e>=r?t:Math.min(t,Math.floor(e/n)+1)}function Nv(e,t,n=Date.now(),r=1400){if(!Kr||r<=0)return e;let o=n%r/r;return Hs(e,t,o<.5?o*2:(1-o)*2)}function sF(e,t){let n=Math.abs(e-t);return n>=Ov?0:Math.ceil((1-n/Ov)*Lv)/Lv}function _v(e,t,n=Date.now()){let r=t.charMs??rF;if(!Kr||e.length===0||r<=0)return Av(e,{fg:t.base},Qm);let o=e.length+Mv*2,s=n/r%o-Mv,a=(M,j)=>Av(M,{fg:Hs(t.base,t.bright,j)},Qm),c="",p=0,f=null,I=0,w=0;for(let M of e){let j=sF(w,s);f===null?f=j:j!==f&&(c+=a(e.slice(p,I),f),p=I,f=j),I+=M.length,w+=1}return c+a(e.slice(p),f??0)}var Kr,rF,Ov,Mv,Rl,Cv,Lv,jv,ou,Ol,oF,Cl=m(()=>{Gs();Kr=process.env.HOWTOFIX_NO_MOTION!=="1",rF=45,Ov=5,Mv=8,Rl=1e4,Cv=6e4,Lv=3,jv=e=>e<0?0:e>1?1:e;ou=class{value;velocity=0;last=Date.now();target;constructor(t,n=t){this.value=t,this.target=n}set(t){this.target=t}get moving(){return Math.abs(this.target-this.value)>.15}snap(t){this.value=t,this.target=t,this.velocity=0,this.last=Date.now()}step(t=Date.now()){let n=Math.max(0,t-this.last),r=Math.min(250,n)/1e3;if(this.last=t,!Kr)return this.value=this.target,this.velocity=0,this.value;n>250&&(this.velocity=0);let o=150,s=2*Math.sqrt(o),a=Math.max(1,Math.ceil(r/.008)),c=r/a;for(let p=0;p<a;p+=1)this.velocity+=(this.target-this.value)*o*c-this.velocity*s*c,this.value+=this.velocity*c;return this.moving||(this.value=this.target,this.velocity=0),this.value}};Ol=260,oF=45});import{execFile as iF,execFileSync as aF}from"node:child_process";import{promisify as mF}from"node:util";import{createHash as Uv}from"node:crypto";import{copyFileSync as uF,existsSync as Ll,mkdirSync as su,readFileSync as cF,statSync as pF}from"node:fs";import{dirname as Kv,join as Ln,resolve as Gv}from"node:path";function dF(e){let t=Gv(e);for(;;){if(Ll(Ln(t,".git")))return!0;let n=Kv(t);if(n===t)return!1;t=n}}async function cn(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 fF("git",t,{cwd:e.root,env:n,encoding:"utf8",maxBuffer:8*1024*1024});return r.trim()}function gF(e){return Uv("sha1").update(e).digest("hex").slice(0,16)}function Wv(e){let t=Gv(e).replace(/\/+$/,"")||"/",n=Ln(lF,gF(t)),r=Ln(n,"git"),o={root:t,gitDir:r,metaFile:Ln(n,"checkpoints.json"),disabled:!1};return!Ll(Ln(r,"HEAD"))&&!dF(t)?(o.disabled=!0,o):(su(n,{recursive:!0}),Ll(Ln(r,"HEAD"))||(su(r,{recursive:!0}),aF("git",["init","--quiet","--initial-branch=howtofix"],{env:{...process.env,GIT_DIR:r},stdio:["ignore","ignore","pipe"]})),hF(t,r),o)}function hF(e,t){let n=Ln(e,".git","info","exclude");try{if(!pF(n).isFile())return;su(Ln(t,"info"),{recursive:!0}),uF(n,Ln(t,"info","exclude"))}catch{}}function Fl(e){try{let t=JSON.parse(cF(e.metaFile,"utf8"));if(t?.version===1&&t.sessions)return t}catch{}return{version:1,sessions:{}}}function Bv(e,t){su(Kv(e.metaFile),{recursive:!0}),Ze(e.metaFile,`${JSON.stringify(t,null,1)}
|
|
99
|
+
`)}function Dl(e,t){return e.disabled?[]:[...Fl(e).sessions[t]??[]].sort((n,r)=>n.at-r.at)}async function zv(e,t,n){if(e.disabled)return null;let r;try{await cn(e,["add","-A","--ignore-errors","--"]),r=await cn(e,["write-tree"])}catch{return null}let s=Dl(e,t).find(M=>M.tree===r),a=Date.now(),c=`${a.toString(36)}-${Uv("sha1").update(`${r}:${a}`).digest("hex").slice(0,6)}`,p=s?.commit;if(!p){let M=["howtofix checkpoint",`session ${t}`,`created ${new Date(a).toISOString()}`,`prompt ${n.slice(0,200)}`].join(`
|
|
100
|
+
`);p=await cn(e,["commit-tree",r,"-m",M]),await cn(e,["update-ref",`${jl}/${c}`,p])}let f={id:c,tree:r,commit:p,prompt:n,at:a},I=Fl(e),w=[...I.sessions[t]??[],f];for(let M of w.slice(0,Math.max(0,w.length-qv)))try{await cn(e,["update-ref","-d",`${jl}/${M.id}`])}catch{}return I.sessions[t]=w.slice(-qv),Bv(e,I),f}async function Hv(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 cn(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 cn(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 Vv(e,t){if(e.disabled)return[];try{await cn(e,["add","-A","--ignore-errors","--"]);let n=await cn(e,["write-tree"]);return n===t.tree?[]:(await cn(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 Jv(e,t){if(e.disabled)return;let n=Fl(e);for(let r of n.sessions[t]??[])try{await cn(e,["update-ref","-d",`${jl}/${r.id}`])}catch{}delete n.sessions[t],Bv(e,n)}var lF,jl,qv,fF,Yv=m(()=>{Dn();zn();lF=Ln(He,"rewind"),jl="refs/howtofix",qv=100;fF=mF(iF)});function Ul(e=90){let t=Math.floor(Date.now()/e)%Nl.length;return Nl[t]??Nl[0]}function Gr(e,t){let n=e.replace(/\s+/g," ").trim();return n.length>t?`${n.slice(0,Math.max(1,t-1))}\u2026`:n}function Ae(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 xF(e,t=160){if(!e||typeof e!="object")return"";try{let n=JSON.stringify(e);return n&&n!=="{}"?Gr(n,t):""}catch{return""}}function yF(e,t){switch(e){case"read":{let n=Ae(t,"path")??"",r=[Ae(t,"offset"),Ae(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 Ae(t,"path")??"";case"bash":case"powershell":return Ae(t,"command")??"";case"grep":{let n=Ae(t,"pattern")??"",r=Ae(t,"path");return r?`${n} in ${r}`:n}case"find":case"glob":{let n=Ae(t,"pattern")??Ae(t,"glob")??"",r=Ae(t,"path");return r?`${n} in ${r}`:n}case"ls":return Ae(t,"path")??".";case"task":return Ae(t,"agent")??"task";case"ask":return Ae(t,"question")??"";case"web_search":return Ae(t,"query")??"";case"web_fetch":return Ae(t,"url")??"";case"lsp":{let n=Ae(t,"action")??"lsp",r=Ae(t,"file")??"",o=Ae(t,"line");return o?`${n} ${r}:${o}`:`${n} ${r}`}case"think":return"private";case"todo":{let n=Ae(t,"op")??"view",r=Ae(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=Ae(t,"op")??"list",r=Ae(t,"key");return r?`${n} ${r}`:n}case"workflow":{let n=Ae(t,"path");if(n)return n;let r=Ae(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 xF(t)}}function Co(e,t,n=100){let r=e.charAt(0).toUpperCase()+e.slice(1),o=Gr(yF(e,t),n);return o?`${Xv} ${r}(${o})`:`${Xv} ${r}`}function bF(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 Kl(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 Js(e){let t=e?.details;return t&&typeof t=="object"?t:{}}function Gl(e){let t=e?.structuredContent;return t&&typeof t=="object"?t:{}}function Zv(e){let t=e.exit_code;return typeof t=="number"&&Number.isFinite(t)?t:void 0}function Qv(e){return e.trim().split(`
|
|
105
|
+
`).find(t=>t.trim())??""}function IF(e,t){let n=typeof e.output=="string"?e.output:t.replace(/\n*Command exited with code \d+\s*$/,""),r=Vs(n);return r>0?` (${r} line${r===1?"":"s"})`:""}function Vs(e){let t=e.trim();return t?t.split(`
|
|
106
|
+
`).length:0}function au(e,t,n){let r=Kl(t),o=Js(t),s=Gl(t);if(n){let a=Zv(s);if(a!==void 0&&(e==="bash"||e==="powershell"))return`exit ${a}`;let c=r.trim().split(`
|
|
107
|
+
`).find(p=>p.trim());return Gr(c??"failed",120)}switch(e){case"read":{let a=o.truncation,c=Vs(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}=bF(a);return`+${c} / -${p}`}case"write":{let a=Vs(r);return a>0?`written (${a} lines)`:"written"}case"bash":case"powershell":{let a=Zv(s);if(a===void 0)return r.trim()?Gr(Qv(r),120):"done";let c=IF(s,r);return a===0?`exit 0${c}`:`exit ${a}`}case"grep":{let a=Vs(r);return a===0?"no matches":`${a} match${a===1?"":"es"}`}case"web_search":{let a=typeof o.count=="number"?o.count:Vs(r);return a===0?"no results":`${a} result${a===1?"":"s"}`}case"web_fetch":return`${typeof o.chars=="number"?o.chars:r.length} chars`;case"lsp":{let a=typeof o.count=="number"?o.count:void 0;return typeof o.error=="string"?Gr(o.error,120):a===void 0?Gr(Qv(r),120):`${a} location${a===1?"":"s"}`}case"todo":{let a=o.todos??[];if(!Array.isArray(a)||a.length===0)return"list cleared";let c=a.filter(f=>f.status==="completed").length,p=a.filter(f=>f.status==="pending"||f.status==="in_progress").length;return`${c}/${a.length} done, ${p} open`}case"context":{let a=o.notes,c=a?Object.keys(a).length:0;return c===0?"no notes":`${c} note${c===1?"":"s"} held`}case"workflow":{let a=typeof o.agents=="number"?o.agents:0,c=typeof o.outputTokens=="number"?o.outputTokens:0,p=Array.isArray(o.steps)?o.steps.filter(I=>I.status==="failed").length:0;if(typeof o.error=="string")return`failed after ${a} agent(s)`;let f=typeof o.startedAt=="number"&&typeof o.endedAt=="number"?`, ${dr(o.endedAt-o.startedAt)}`:"";return`${a} agent(s), ${c} tokens${f}${p>0?`, ${p} failed`:""}`}default:{let a=r.trim().split(`
|
|
108
|
+
`).find(c=>c.trim());return a?Gr(a,120):"done"}}}function eS(e,t){let n=Js(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=Gl(t);return(typeof r.output=="string"?r.output:Kl(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 tS(e,t){let n=Js(t);if(e==="edit"&&typeof n.diff=="string")return n.diff.split(`
|
|
111
|
+
`).filter(c=>c.length>0).slice(0,iu);let r=Gl(t),s=(typeof r.output=="string"?r.output:Kl(t).replace(/\n*Command exited with code \d+\s*$/,"")).trimEnd().split(`
|
|
112
|
+
`),a=s.slice(0,iu);return s.length>iu&&a.push(`\u2026 ${s.length-iu} more line(s)`),a}var Xv,_l,ql,Nl,iu,Wl=m(()=>{zs();Xv="\u25CF",_l="\u2514",ql="\u22EF",Nl=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"];iu=400});import{Markdown as $F,wrapTextWithAnsi as wF}from"@earendil-works/pi-tui";function nS(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 kF(e){return e.content.filter(t=>t.type==="toolCall").map(t=>({name:t.name,arguments:t.arguments}))}function uu(e){let t=[];for(let n of e)if(n.role==="user"){let r=nS(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=nS(n.content).trim(),o=kF(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:Co(s.name,s.arguments)})})}else n.role==="toolResult"&&t.push({id:`r-${n.toolCallId}`,kind:"result",title:n.toolName,body:au(n.toolName,{content:n.content},n.isError)});return t}function rS(e,t,n){return wF(e,Math.max(8,t)).map(r=>Q(r,n))}function TF(e){let t=e.body||" ",n=Ys.get(e.id);if(n)return n.text!==t&&(n.component.setText(t),n.text=t),n.component;let r=new $F(t,0,0,cv);return Ys.set(e.id,{text:t,component:r}),r}var Ys,Bl,mu,oS=m(()=>{Cl();Gs();Wl();Ys=new Map;Bl=class{constructor(t){this.item=t}item;invalidate(){}shade(t){let n=Date.now()-(this.item.born??0);return Hs(D.dim,t,Fv(n,Ol))}render(t){let n=this.item.body;if(this.item.kind==="user")return["",...rS(`> ${n}`,t,this.shade(D.user))];if(this.item.kind==="tool")return[Q(n,this.shade(D.tool))];if(this.item.kind==="result"){let o=n.startsWith("exit ")&&n!=="exit 0";if(this.item.panel)return["",...this.item.panel(t),...n?[Q(` ${_l} ${n}`,o?D.bad:D.mute)]:[]];let s=[];this.item.call&&s.push(Q(this.item.call,this.shade(D.tool)));let a=` ${_l} ${n}`;if(s.push(Q(a,o?D.bad:this.shade(D.mute))),this.item.expanded===!0&&(this.item.full?.length??0)>0){let I=Q(` ${this.item.full.length} line(s) \xB7 ctrl+e to collapse`,D.dim);s.push(Q(` ${ql}`,D.dim));for(let w of this.item.full){let M=w.startsWith("+")?D.tool:w.startsWith("-")?D.bad:D.dim;s.push(Q(` ${w}`,M))}return s.push(I),s}let p=this.item.detail??[],f=Ml(Date.now()-(this.item.born??0),p.length);for(let I of p.slice(0,f)){let w=I.startsWith("+")?D.tool:I.startsWith("-")?D.bad:D.dim;s.push(Q(` ${I}`,this.shade(w)))}return(this.item.full?.length??0)>0&&s.push(Q(` ${ql} ${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["",...rS(n,t,this.shade(o))]}return["",...TF(this.item).render(Math.max(8,t-2))]}},mu=class{items=[];status="";scrollOffset=0;viewportHeight=0;invalidate(){}entering(){let t=Date.now();return this.items.some(n=>{if(n.born===void 0)return!1;let r=t-n.born;return Dv(r,Ol)?!0:(n.detail?.length??0)>Ml(r,n.detail?.length??0)})}render(t){if(Ys.size>this.items.length){let o=new Set(this.items.map(s=>s.id));for(let s of Ys.keys())o.has(s)||Ys.delete(s)}let n=[];for(let o of this.items)o.born??=Date.now(),n.push(...new Bl(o).render(t));this.status&&n.push(Q(this.status,D.mute));let r=this.viewportHeight;if(r>0&&n.length>r){let o=n.length-r,s=Math.max(0,Math.min(this.scrollOffset,o));return this.scrollOffset=s,n.slice(o-s,o-s+r)}return this.scrollOffset=0,n}}});function ct(e,t){return`${t}${e}${iS}`}function vF(e){return e>=85?EF:e>=70?mS:aS}function uS(e,t,n,r){let o=ct(`[${e}]`,zl),s=ct(`${SF} ${t}`,jn),a=ct(n,mS),c=r?` ${ct("git:(",sS)}${ct(r.replace(/^git:\(/,"").replace(/\)$/,""),zl)}${ct(")",sS)}`:"";return`${o}${ct(" \u2502 ",jn)}${s}${ct(" \u2502 ",jn)}${a}${c}`}function cS(e,t,n){if(!t)return e;let r=n===void 0?t:`${t} ${ct(dv(n),jn)}`;return`${ct(r,zl)} ${ct("\u2502",jn)} ${e}`}function pS(e,t){let n=Number.isFinite(e)?Math.min(100,Math.max(0,e)):0,r=Math.round(n/10),o=vF(n),s=`${o}${"\u2588".repeat(r)}${jn}${"\u2591".repeat(10-r)}${iS}`,a=ct(`${Math.round(n)}%`,o),c=t?`${ct(" \u2502 ",jn)}${t}`:"";return`${ct("Context",jn)} ${s} ${a}${c}`}function lS(e,t,n){let r=n===null?"":ct(` ${n}ms`,jn);return`${ct("Cubence",jn)} ${ct(t?`${t} ${e}`:e,aS)}${r}`}var iS,jn,EF,aS,mS,sS,zl,SF,Hl=m(()=>{zs();iS="\x1B[0m",jn="\x1B[2m",EF="\x1B[31m",aS="\x1B[32m",mS="\x1B[33m",sS="\x1B[35m",zl="\x1B[36m";SF="\u2726"});import{mkdirSync as PF,readFileSync as fS}from"node:fs";import{homedir as RF}from"node:os";import{dirname as AF,join as OF}from"node:path";function dS(e){return e/1e6}function CF(){try{let e=JSON.parse(fS(OF(RF(),".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 LF(){try{let e=JSON.parse(fS(Vl,"utf8"));return!e.data||typeof e.cachedAt!="number"?void 0:{data:e.data,cachedAt:e.cachedAt}}catch{return}}function Xs(e){let t=`$${e.balanceDollar.toFixed(2)}`,n=e.hasSubscription?`5h $${e.fiveHourUsedDollar.toFixed(2)}/$${e.fiveHourLimitDollar.toFixed(2)} bal`:"";return lS(t,n,e.latencyMs)}async function gS(){let e=LF();if(e&&Date.now()-e.cachedAt<MF)return Xs(e.data);let t=CF();if(!t)return e?Xs(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?Xs(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:dS(o.subscription_window?.five_hour?.used??0),fiveHourLimitDollar:dS(s),latencyMs:Date.now()-n};return PF(AF(Vl),{recursive:!0}),Ze(Vl,JSON.stringify({data:a,cachedAt:Date.now()})),Xs(a)}catch{return e?Xs(e.data):void 0}}var Vl,MF,hS=m(()=>{Dn();Hl();zn();Vl=Au,MF=18e4});function xS(){return{}}function yS(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 jF(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 bS(e,t,n=Date.now()){return e.prompt?`? ${e.prompt}`:e.note?`* ${e.note}`:e.run?`${t} ${e.run.label} \xB7 ${jF(n-e.run.since)}`:e.tally?e.tally:""}var IS=m(()=>{});import{spawn as FF}from"node:child_process";function DF(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 $S(e,t=process.platform){let n=DF(t);return n?new Promise(r=>{try{let o=FF(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 wS=m(()=>{});function NF(e){return[Ru,gr(e)]}function kS(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 TS(e){if(e.length===0){let[t,n]=NF(process.cwd());return["no skills loaded.",`put a SKILL.md in ${t}`,`or in ${n}`,"invoke with /skill:<name>"].join(`
|
|
115
|
+
`)}return e.map(t=>{let n=t.disableModelInvocation?" (invoke only)":"";return`${t.name}${n}
|
|
116
|
+
${t.description}
|
|
117
|
+
${t.filePath}`}).join(`
|
|
118
|
+
`)}var ES=m(()=>{Dn()});import{mkdirSync as _F}from"node:fs";import{join as qF}from"node:path";import{matchesKey as cu}from"@earendil-works/pi-tui";function SS(){return{selectedPhase:0,filter:"all",paused:!1,expanded:!1,follow:!0}}function PS(e){if(cu(e,"up"))return"up";if(cu(e,"down"))return"down";if(cu(e,"enter"))return"enter";if(cu(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 vS(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 UF(e){let t=Jl.indexOf(e);return Jl[(t+1)%Jl.length]}function RS(e,t,n){switch(t){case"up":return vS(e,n,-1);case"down":return vS(e,n,1);case"enter":return{...e,expanded:!e.expanded};case"filter":return{...e,filter:UF(e.filter)};case"pause":return{...e,paused:!e.paused};default:return e}}function AS(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 OS(e){return e==="all"?"":` \xB7 ${e}`}function CS(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 KF(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 LS(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=KF(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{_F(t,{recursive:!0}),Ze(r,e.code)}catch(o){return{ok:!1,reason:o instanceof Error?o.message:String(o)}}return{ok:!0,path:r}}var Jl,MS,jS=m(()=>{zn();Jl=["all","running","failed","done"];MS="ctrl+f"});function FS(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 DS=m(()=>{});var XS={};Ft(XS,{Dock:()=>fu,Hud:()=>lu,PinnedBlock:()=>du,approvalDetail:()=>JS,orderModelsForDefault:()=>HS,pickerPanel:()=>VS,runWorkbench:()=>fD,workflowPanel:()=>YS,workflowPanelFromRun:()=>Qs,workflowRunOf:()=>gu});import{execFile as GF}from"node:child_process";import{promisify as WF}from"node:util";import{existsSync as BF,mkdirSync as zF,readFileSync as HF}from"node:fs";import{basename as VF,join as NS,resolve as JF}from"node:path";import{copyToClipboard as YF,SessionManager as XF}from"@earendil-works/pi-coding-agent";import{CombinedAutocompleteProvider as _S,Container as ZF,Editor as QF,matchesKey as Mt,ProcessTerminal as eD,ScrollView as tD,KeybindingsManager as GS,setKeybindings as WS,TUI_KEYBINDINGS as BS,SelectList as nD,TuiAltScreen as rD,truncateToWidth as Zs,VStack as oD,visibleWidth as pu,wrapTextWithAnsi as sD,getNativeClipboard as iD}from"@earendil-works/pi-tui";import{TreeSelectorComponent as aD,initTheme as mD}from"@earendil-works/pi-coding-agent";import{getKeybindings as qS}from"@earendil-works/pi-tui";function uD(e){if(typeof e!="object"||e===null)return;let t=e[zS];return typeof t=="function"?t.call(e):void 0}async function KS(e){try{let{stdout:t}=await Zl("git",["-C",e,"rev-parse","--abbrev-ref","HEAD"],{encoding:"utf8"}),n=t.trim();if(!n||n==="HEAD")return"";let{stdout:r}=await Zl("git",["-C",e,"status","--porcelain"],{encoding:"utf8"});return`git:(${n}${r.trim()?"*":""})`}catch{return null}}function HS(e){let t=n=>{if(pD.test(n))return 100;let r=cD.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 VS(e,t,n,r=!1,o=[]){let s=Math.max(24,n),a=s-4,c=(ee,me)=>{let xe=pu(ee)>a?Zs(ee,a,"\u2026"):ee,Te=`${xe}${" ".repeat(Math.max(0,a-pu(xe)))}`;return`\u2502 ${me?me(Te):Te} \u2502`},p="\u2500".repeat(s-2),f=[c(` ${t}`),...e.render(a).map(ee=>c(ee))],I=o.flatMap(ee=>ee===""?[""]:sD(ee,a)),w=I.length>0?[c(""),...I.map(ee=>c(ee,me=>Q(me,D.mute)))]:[];if(!r)return["",`\u250C${p}\u2510`,...f,...w,`\u2514${p}\u2518`];let M=Nv(D.line,D.warn,Date.now(),1400),j=Q("\u2502",M),A=(ee,me)=>Q(`${ee}${p}${me}`,M),q=[...f,...w].map(ee=>`${j}${ee.slice(1,-1)}${j}`);return["",A("\u250C","\u2510"),...q,A("\u2514","\u2518")]}function JS(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 Lo(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 Xl(e){let n=[["init","write project notes to AGENTS.md"],["model","choose a model"],["providers","list providers"],["thinking","set thinking level"],["approval","set what needs approval"],["connect","connect a howtofix.id account"],["login","save a provider API key"],["logout","remove a provider"],["new","start a new session"],["resume","resume another session"],["compact","compact the session"],["name","name this session"],["stats","session tokens and cost"],["diff","show the working tree diff"],["commit","stage everything and commit"],["undo","undo the last commit"],["rewind","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 gu(e,t){if(e!=="workflow")return;let n=Js(t);if(!(typeof n.name!="string"||!Array.isArray(n.steps)))return n}function YS(e,t){let n=gu(e,t);return n?Qs(n):void 0}function Qs(e,t,n=!1){return r=>Iv(e,[],r,t?.selectedPhase,t?lD(e,t,n):void 0)}function lD(e,t,n){return{filter:r=>AS(r,t.filter),footerText:CS(t,e.endedAt===void 0,n),filterLabel:OS(t.filter),drill:t.expanded}}function dD(){let e=new GS(BS,{"tui.altScreen.pageUp":[],"tui.altScreen.pageDown":[],"tui.altScreen.halfPageUp":[],"tui.altScreen.halfPageDown":[],"tui.altScreen.top":[],"tui.altScreen.bottom":[]});WS(e)}async function fD(e){let t=new eD,n=new rD(t,!0,void 0,{mouse:!0}),r=new mu,o=new lu(e.cwd,e.modelLabel),s=d=>{let h=Date.now();(async()=>{try{let b=ln(),x=await zv(b,T.getSessionStats().sessionId,d);x&&h>=Kt&&(jo=x,Kt=h)}catch{}})()},a=(d=!1)=>{!d&&!o.live||KS(e.cwd).then(h=>{h!==null&&(o.git=h,U())})},c=new QF(n,US,{paddingX:1}),p=new Map,f=(d,h)=>{h===void 0?p.delete(d):typeof h=="function"?p.set(d,h):p.set(d,()=>h)},I=()=>Math.max(20,t.columns),w,M=0,j=SS(),A,q=null,ee=!1,me,xe=!1,Te,Be=()=>{!A||!ee||f("workflow",d=>Qs(A,j,xe)(d))},qt=()=>{A&&(me=A.name),ee=!1,xe=!1,f("workflow",void 0)};wv({onStop:d=>{q=d},isPaused:()=>j.paused});let ye=d=>{if(me===d.name)return;w=d;let h=d.endedAt??Date.now();M=Math.max(M,h+eu),A=d,ee=!0,f("workflow",b=>Qs(d,j,xe)(b))},re=new fu(c,o),T=e.session,ze=!1,Ut,ln=()=>Ut??=Wv(e.cwd),jo,en="",Kt=0,qe,Ct=()=>{let d=new Set(["session_info","usage","label","context_edit","custom","model_change","thinking_level_change"]),h=[],b=x=>{for(let k of x)d.has(k.entry.type)||h.push(k.entry.id),b(k.children)};return b(T.sessionManager.getTree()),h},Fo=!1,QS=()=>{if(Fo)return;Fo=!0;let d=qS().getResolvedBindings();WS(new GS(BS,{...d,"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"]}))},Ql=!1,eP=()=>{Ql||(Ql=!0,mD())},ed=()=>{let d=T.sessionManager.getTree();if(d.length===0){S("rewind","nothing to rewind to yet");return}ln().disabled&&S("rewind","conversation rewind only \u2014 this directory is not a git repository"),eP(),QS();let h=Math.max(8,Math.floor(t.rows*.6)),b=new aD(d,T.sessionManager.getLeafId(),h*2,x=>{hu(),tP(x)},()=>hu());if(!b.getTreeList().getSelectedNode()){S("rewind","nothing to rewind to yet");return}qe=b,qe.focused=!0,f("rewind",x=>qe?.render(x)??[]),U()},hu=()=>{qe=void 0,f("rewind",void 0),U()},tP=async d=>{let h=ln(),x=T.getUserMessagesForForking().findIndex(y=>y.entryId===d),k=x>=0?Dl(h,T.getSessionStats().sessionId)[x]:void 0,_=k?(await Vv(h,k)).length:0;if(_===0){await td(d,void 0,"conversation");return}Lt(`Rewind to this point? ${_} file(s) differ`,[{value:"both",label:"conversation and code",description:`drop the messages after this point and restore ${_} file(s)`},{value:"conversation",label:"conversation only",description:"drop the messages after this point, leave the files alone"},{value:"code",label:"code only",description:`restore ${_} file(s), keep the conversation`}],y=>{td(d,k,y)})},td=async(d,h,b)=>{let x=[];if((b==="both"||b==="conversation")&&!T.isStreaming)try{let k=await T.navigateTree(d);if(k.cancelled){S("rewind","conversation rewind cancelled");return}x.push("conversation rewound"),r.items=uu(T.state.messages),k.editorText&&(c.setText(k.editorText),x.push("prompt restored to the editor"))}catch(k){dn(`conversation rewind failed: ${k instanceof Error?k.message:String(k)}`);return}if((b==="both"||b==="code")&&h){let k=await Hv(ln(),h);if(!k.ok){dn(`code rewind failed: ${k.output}`);return}x.push(k.output),k.removed.length>0&&x.push(`removed ${k.removed.length} file(s)`),a()}S("rewind",x.join(`
|
|
120
|
+
`)||"nothing to do"),U()};a(!0),s("session start"),e.note&&r.items.push({id:"note",kind:"note",title:"note",body:e.note}),r.items.push(...uu(T.state.messages)),o.percent=Lo(T),o.abandonAnimations(),o.thinking=T.thinkingLevel,c.setAutocompleteProvider(new _S(Xl(T),e.cwd)),gS().then(d=>{d&&(o.cubence=d,n.requestRender())});let Fn=null,nd="",rd=!1,od=[],Do,xu=()=>{},U=()=>{xu(),n.requestRender()},ge=(d,h)=>{o.activity=yS(o.activity,d,h)},ei=new Map,yu=new Set,nP=()=>[...ei].map(([d,h])=>`${yu.has(d)?"!":"\u2713"} ${d} \xD7${h}`).join(" | "),rP=()=>{let d=nP();ge("tally",d||void 0)},Lt=(d,h,b,x,k=!1,_=[])=>{let y=new nD(h,8,US.selectList);y.onSelect=O=>{Fn=null,Do=void 0,b(O.value)},y.onCancel=()=>{Fn=null,Do=void 0,x?.(),U()},Do=()=>y.onCancel?.(),nd=d,rd=k,od=_,Fn=y,U()},S=(d,h)=>{r.items.push({id:`cmd-${Date.now()}-${r.items.length}`,kind:"note",title:d,body:h}),ge("tally",void 0),U()},dn=d=>{r.items.push({id:`err-${Date.now()}-${r.items.length}`,kind:"error",title:"failed",body:d}),ge("tally",void 0),U()};Qu((d,h)=>{let{promise:b,resolve:x}=Promise.withResolvers();return Lt(d,[{value:"allow",label:"allow"},{value:"deny",label:"deny"}],k=>x(k==="allow"),()=>x(!1),!0,JS(d,h)),b});let bu=new Map,sd=d=>{let h=FS({select:(b,x)=>{let{promise:k,resolve:_}=Promise.withResolvers();return Lt(b,x.map(y=>({value:y,label:y})),_,()=>_(void 0)),k},confirm:(b,x)=>{let{promise:k,resolve:_}=Promise.withResolvers();return Lt(`${b} \u2014 ${x}`,[{value:"yes",label:"yes"},{value:"no",label:"no"}],y=>_(y==="yes"),()=>_(!1)),k},input:b=>{let{promise:x,resolve:k}=Promise.withResolvers();return ge("prompt",b),U(),pn=_=>{pn=void 0,ge("prompt",void 0),k(_),U()},x},notify:(b,x)=>{x==="error"?dn(b):S("mcp",b)},setStatus:(b,x)=>{x===void 0?bu.delete(b):bu.set(b,x),ge("note",[...bu.values()].join(" | ")||void 0),U()},setWidget:(b,x)=>{f(b,x),U()}});d.bindExtensions({uiContext:h,mode:"print",onError:b=>dn(`${b.event}: ${b.error}`)}).catch(b=>dn(b instanceof Error?b.message:String(b)))};sd(T);let Wr=new ZF,oP={invalidate:()=>r.invalidate(),render:d=>{let h=Wr.render(Math.max(20,d)).length;return r.viewportHeight=Math.max(1,Math.max(8,t.rows)-h),r.render(d)},handleMouse:d=>{let h=d.type==="wheel"?d.wheelDelta??0:0;if(h!==0)return r.scrollOffset=Math.max(0,r.scrollOffset-h*3),U(),{handled:!0}}},sP=new tD(oP,{follow:"none",overscroll:"contain"}),ti=new oD([{component:sP,grow:1,shrink:1},{component:Wr,grow:0,shrink:0,basis:"auto"}]),id="",iP=()=>`${Fn?"picker":"dock"}|${[...p.keys()].join(",")}`;xu=()=>{let d=iP();if(d===id)return;id=d,Wr.clear();for(let b of p.values())Wr.addChild(new du(b));let h=Fn;if(h){let b=nd,x=rd,k=od;Wr.addChild({render:_=>VS(h,b,_,x,k),invalidate:()=>{}})}else Wr.addChild(re);ti.invalidate()},xu();let ad={focused:!1,invalidate(){r.invalidate(),re.invalidate(),Fn?.invalidate(),ti.invalidate()},[zS]:()=>uD(ti),render:d=>ti.render(d),handleInput(d){c.handleInput(d)}};n.setLayoutRoot(ad),n.setFocus(ad);let xt=0,Wn="",Iu=!1,fr=!1,$u,Br="",md=0,No=!1,ni=Date.now(),ri=!1,oi=new Map,ud=d=>{if(d.type==="agent_start"||d.type==="turn_start")d.type==="agent_start"&&Rd(),o.live||o.beginRun(),Wn="",fr=!1,No=!1,ni=Date.now(),Br="";else if(d.type==="message_update"&&d.assistantMessageEvent.type==="thinking_delta"){fr=!0,Br===""&&(md=Date.now()),Br+=d.assistantMessageEvent.delta;let h=`think-${xt}`,b=r.items.find(k=>k.id===h),x=Br.split(`
|
|
106
121
|
`).slice(-6).join(`
|
|
107
|
-
`);b?b.body=
|
|
108
|
-
this freed almost nothing \u2014 the window may be too small for this work`:""}`:`${
|
|
109
|
-
`)}catch{return`could not write ${b}; the models were not added`}let
|
|
110
|
-
`)),U();return}if(!
|
|
111
|
-
`)),U()})().catch(
|
|
112
|
-
`));return}if(
|
|
113
|
-
`));return}if(
|
|
114
|
-
|
|
115
|
-
`+await
|
|
116
|
-
|
|
117
|
-
`,2),
|
|
118
|
-
|
|
119
|
-
`)||"working tree clean");return}if(
|
|
120
|
-
`))}catch(
|
|
121
|
-
`):"no tools enabled");return}if(
|
|
122
|
-
`));return}if(
|
|
123
|
-
plan file: ${
|
|
124
|
-
${
|
|
122
|
+
`);b?b.body=x:r.items.push({id:h,kind:"note",title:"thinking",body:x})}else if(d.type==="message_update"&&d.assistantMessageEvent.type==="thinking_end"){let h=`think-${xt}`,b=r.items.find(x=>x.id===h);if(b){let x=Math.max(1,Math.round((Date.now()-md)/1e3));b.title="thought",b.body=`${x}s \xB7 ${Br.length} chars of reasoning`}Br=""}else if(d.type==="message_update"&&d.assistantMessageEvent.type==="text_delta"){fr=!0,Wn+=d.assistantMessageEvent.delta;let h=`live-${xt}`,b=r.items.find(x=>x.id===h);b?b.body=Wn:r.items.push({id:h,kind:"assistant",title:"HowToFix",body:Wn})}else if(d.type==="tool_execution_start"){oi.set(d.toolCallId,d.args),fr=!1,No=!1,ni=Date.now();let h=`tool-${d.toolCallId}`,b=Co(d.toolName,d.args),x=r.items.find(k=>k.id===h);if(x?(x.kind="tool",x.title=d.toolName,x.body=b,x.live=!0):r.items.push({id:h,kind:"tool",title:d.toolName,body:b,live:!0}),$u=d.toolName,d.toolName==="task"){let k=Zt.filter(_=>_.status==="queued"||_.status==="running");ge("note",k.map(_=>`${_.agent} ${_.status}`).join(" | ")||"agent running")}}else if(d.type==="tool_execution_update"){let h=YS(d.toolName,d.partialResult);if(h){let b=`tool-${d.toolCallId}`,x=r.items.find(_=>_.id===b);x?x.panel=h:r.items.push({id:b,kind:"tool",title:d.toolName,body:Co(d.toolName,oi.get(d.toolCallId)),panel:h,live:!0});let k=gu(d.toolName,d.partialResult);k&&me!==k.name&&ye(k),U()}}else if(d.type==="tool_execution_end"){o.percent=Lo(T);let h=r.items.find(v=>v.id===`tool-${d.toolCallId}`);h&&(h.live=!1,h.body=Co(d.toolName,oi.get(d.toolCallId))),oi.delete(d.toolCallId),$u=void 0,fr=!0,No=!1,ei.set(d.toolName,(ei.get(d.toolName)??0)+1),d.isError&&yu.add(d.toolName),rP();let b=eS(d.toolName,d.result),x=tS(d.toolName,d.result),k=gu(d.toolName,d.result),_=k?Qs(k):void 0;k&&me!==k.name&&ye(k);let y=r.items.find(v=>v.id===`tool-${d.toolCallId}`),O=au(d.toolName,d.result,d.isError);y?(y.kind="result",y.call=y.body,y.body=O,y.live=!1,b.length>0&&(y.detail=b),x.length>0&&(y.full=x),_&&(y.panel=_)):r.items.push({id:`tool-${d.toolCallId}`,kind:"result",title:d.toolName,body:O,...b.length>0?{detail:b}:{},...x.length>0?{full:x}:{},..._?{panel:_}:{}}),(d.toolName==="bash"||d.toolName==="powershell"||d.toolName==="edit"||d.toolName==="write")&&a()}else if(d.type==="compaction_start"){fr=!0;let h=d.reason==="manual"?"on request":"context is nearly full",b=r.items.find(_=>_.id===`compact-${xt}`),x="compacting context",k=`${h} \xB7 summarizing the older turns`;b?(b.title=x,b.body=k):r.items.push({id:`compact-${xt}`,kind:"note",title:x,body:k,live:!0}),ge("note","compacting context")}else if(d.type==="compaction_end"){let h=r.items.find(_=>_.id===`compact-${xt}`),b=d.result,x="compacted",k;if(d.aborted)k="cancelled";else if(d.errorMessage)k=`failed: ${d.errorMessage}`;else if(b){let _=Math.round(b.tokensBefore/1e3),y=b.estimatedTokensAfter!==void 0?Math.round(b.estimatedTokensAfter/1e3):void 0,O=b.estimatedTokensAfter!==void 0?b.tokensBefore-b.estimatedTokensAfter:void 0,v=O!==void 0&&O<2e3;k=y!==void 0?`${_}k \u2192 ${y}k tokens \xB7 older turns summarized${v?`
|
|
123
|
+
this freed almost nothing \u2014 the window may be too small for this work`:""}`:`${_}k tokens \xB7 older turns summarized`}else k="nothing to compact";h?(h.title=x,h.body=k,h.live=!1):r.items.push({id:`compact-${xt}`,kind:"note",title:x,body:k}),o.percent=Lo(T),ge("note",void 0)}else if(d.type==="message_end"&&d.message.role==="assistant"){let h=r.items.find(b=>b.id===`live-${xt}`);h&&(h.id=`done-${xt}`),xt+=1,Wn="",o.percent=Lo(T)}else if(d.type==="agent_settled"){if(o.live=!1,s(en),en="",ge("run",void 0),Iu){let h=r.items.find(b=>b.id===`live-${xt}`);h?(h.id=`stopped-${xt}`,h.title="stopped",h.body=Wn.trim()||"(no output)",h.live=!1):r.items.push({id:`stopped-${xt}`,kind:"note",title:"stopped",body:"run cancelled"}),xt+=1,Wn="",S("stopped","run cancelled by Esc"),Iu=!1}o.percent=Lo(T),KS(e.cwd).then(h=>{h!==null&&(o.git=h,U())}),c.disableSubmit=!1}else d.type==="thinking_level_changed"?o.thinking=d.level:d.type==="auto_retry_start"&&ge("note",`retry ${d.attempt}/${d.maxAttempts}`);U()},wu=T.subscribe(ud),cd=setInterval(()=>{let d=w!==void 0&&Date.now()<M;if((ri||T.isStreaming||o.settling()||r.entering()||Fn||d)&&U(),(ri||T.isStreaming)&&!fr&&!No&&Date.now()-ni>hD){No=!0;let h=$u,b=Math.round((Date.now()-ni)/1e3);ge("note",h?`${h} has been running for ${b}s \u2014 it may be blocked; esc cancels`:`no answer yet after ${b}s \u2014 the provider may be stalled; ctrl+c cancels`),U()}},gD);cd.unref?.();let pd=async d=>{Do?.(),Do=void 0,wu(),Ut&&Jv(Ut,T.getSessionStats().sessionId),jo=void 0,Kt=0,T.dispose(),T=d.session,xt=0,Wn="",r.items=[],d.note&&r.items.push({id:"note",kind:"note",title:"note",body:d.note}),r.items.push(...uu(T.state.messages)),o.model=d.modelLabel.split("/").at(-1)||"no-model",o.thinking=T.thinkingLevel,o.percent=Lo(T),o.abandonAnimations(),ge("tally",void 0),ge("run",void 0),c.setAutocompleteProvider(new _S(Xl(T),e.cwd)),c.disableSubmit=!1,sd(T),wu=T.subscribe(ud),U()},si=()=>{ze||(ze=!0,clearInterval(cd),wu(),T.dispose(),n.stop(),process.stdout.write("\x1B[0m"),process.exit(0))},ld=d=>{r.items.push({id:`you-${Date.now()}`,kind:"user",title:"you",body:d}),ge("tally",void 0),ei.clear(),yu.clear(),ge("run","thinking"),o.beginRun(),U(),c.disableSubmit=!1;let h=Gu(d,e.cwd);en=d,ri=!0;let b=T.isStreaming?T.prompt(h,{streamingBehavior:"steer"}):T.prompt(h);ri=!1,b.catch(x=>dn(x instanceof Error?x.message:String(x)))},ku=d=>{let h=d.trim();if(h){if(pn){let b=pn;pn=void 0,c.setText(""),b(h);return}if(c.setText(""),c.addToHistory(h),h.startsWith("!")){let b=h.slice(1).trim();if(!b)return;r.items.push({id:`sh-${Date.now()}`,kind:"tool",title:"$",body:b}),ge("run","shell"),U(),T.executeBash(b,x=>{ge("run",`shell \xB7 ${x.length} bytes`),U()}).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)"}),ge("tally",void 0),U()}).catch(x=>dn(x instanceof Error?x.message:String(x)));return}if(h.startsWith("/")){mP(h);return}ld(h)}};c.onSubmit=ku;let Tu=0;n.addInputListener(d=>{if(qe){if(Mt(d,"escape"))return hu(),{consume:!0};let b=qS(),x=b.matches(d,"tui.select.up"),k=b.matches(d,"tui.select.down");if(x||k){let y=qe.getTreeList().getSelectedNode()?.entry.id,O=Ct(),v=y===void 0?-1:O.indexOf(y);if(x?v===0:v===O.length-1)return U(),{consume:!0}}return qe.handleInput(d),U(),{consume:!0}}if(ee&&A&&Mt(d,"escape"))return xe?(xe=!1,S("workflow","panel keys off \u2014 the editor has the keyboard")):j.expanded?(j.expanded=!1,S("workflow","collapsed the drill-in")):(qt(),S("workflow","panel unpinned; the run is still in the transcript")),Be(),U(),{consume:!0};if(Fn)return Fn.handleInput(d),U(),{consume:!0};if(Mt(d,"escape")){if(T.isStreaming)return Iu=!0,T.abort(),ge("note","stopping"),U(),{consume:!0};let b=Date.now();if(c.getText().length===0&&b-Tu<600)return Tu=0,ed(),{consume:!0};Tu=b;return}if(Mt(d,"ctrl+c"))return T.isStreaming?(T.abort(),ge("note","stopping"),U()):c.getText().length>0?(c.setText(""),ge("note","draft cleared \u2014 ctrl+c again quits"),U()):si(),{consume:!0};if(Mt(d,"ctrl+d")&&c.getText().length===0)return si(),{consume:!0};let h=Math.max(1,r.viewportHeight-1);if(Mt(d,"pageUp"))return r.scrollOffset+=h,U(),{consume:!0};if(Mt(d,"pageDown"))return r.scrollOffset=Math.max(0,r.scrollOffset-h),U(),{consume:!0};if(Mt(d,"home"))return r.scrollOffset=Number.MAX_SAFE_INTEGER,U(),{consume:!0};if(Mt(d,"end"))return r.scrollOffset=0,U(),{consume:!0};if(Mt(d,"ctrl+v")){let b=iD();return b?(b.getText().then(x=>{typeof x!="string"||x.length===0?S("paste","the clipboard is empty"):c.insertTextAtCursor(x),U()}).catch(x=>{S("paste",`could not read the clipboard: ${x instanceof Error?x.message:String(x)}`),U()}),{consume:!0}):(S("paste","no clipboard tool found on this machine"),U(),{consume:!0})}if(Mt(d,"ctrl+l"))return r.scrollOffset=0,n.scrollToBottom(),U(),{consume:!0};if(Mt(d,"ctrl+e")){let b=[...r.items].reverse().find(x=>(x.full?.length??0)>0);return b?(b.expanded=b.expanded!==!0,U(),{consume:!0}):(S("expand","nothing to expand in this transcript yet"),{consume:!0})}if(Mt(d,"ctrl+o")&&!T.isStreaming)return r.items=[{id:"cleared",kind:"note",title:"bench",body:"screen cleared. session history is still stored."}],U(),{consume:!0};if(Mt(d,MS)&&ee&&A)return xe=!xe,S("workflow",xe?"panel keys active \u2014 Esc gives the keyboard back":"panel keys off \u2014 the editor has the keyboard"),Be(),U(),{consume:!0};if(xe&&ee&&A){let b=PS(d);if(b){let x=Mo(A,Date.now());if(b==="stop")return q?(q(),q=null,S("workflow","stopping the run \u2014 in-flight agents resolve as null")):S("workflow","the run has already finished"),{consume:!0};if(b==="save"){let k=LS(Te,Ou);return S("workflow",k.ok?`saved ${k.path}`:k.reason),U(),{consume:!0}}return Object.assign(j,RS(j,b,x)),Be(),U(),{consume:!0}}}});let Eu=d=>{let h=b=>{ge("prompt",`API key for ${b}. Paste it, then press enter.`),U();let x=pn;pn=k=>{pn=x;let _=k.trim();if(!_){ge("prompt",void 0),U();return}T.modelRuntime.setRuntimeApiKey(b,_).then(()=>S("login",`saved API key for ${b}`),y=>S("login",y instanceof Error?y.message:String(y)))}};if(d){h(d);return}T.modelRuntime.getAvailable().then(b=>{let x=[...new Set(b.map(k=>k.provider))].sort();if(x.length===0){S("login","no providers are configured; pass one explicitly, e.g. /login nrimo");return}Lt("Login",x.map(k=>({value:k,label:k})),h)},b=>S("login",b instanceof Error?b.message:String(b)))},aP=async(d,h)=>{let b=NS(He,"models.json"),x,k=!1;try{x=JSON.parse(HF(b,"utf8"))}catch(Su){if(!(Su instanceof Error&&"code"in Su&&Su.code==="ENOENT"))return`could not read ${b}; the models were not added`;x={providers:{}},k=!0}(!x.providers||typeof x.providers!="object")&&(x.providers={});let _=x.providers[d];_||(_=ju(),x.providers[d]=_,k=!0);let y=Array.isArray(_.models)?_.models:[],O=_u(y,h),v=ci(Nu(y,h));_.models=v.models;try{zF(He,{recursive:!0}),Ze(b,`${JSON.stringify(x,null,2)}
|
|
124
|
+
`)}catch{return`could not write ${b}; the models were not added`}let K=!1;try{await T.modelRuntime.refresh(),K=!0}catch{K=!1}let jt=v.changed>0?`, repaired ${v.changed}`:"",yt=K?"":"; restart the CLI to see them all",Bn=k?` (created ${b})`:"";return O===0?`all ${h.length} models were already configured${jt}${Bn}${yt}`:`added ${O} model(s) to "${d}"${jt}${Bn}${yt}`},vu=d=>{(async()=>{if(!d){let y=await $S(mi);S("connect",["connect your howtofix.id account:",` 1. ${y?"the token page is opening in your browser":`open ${mi}`}`," 2. sign in if asked, then create a token (starts with sk-)"," 3. run /connect <token>"," or /connect, and paste the token when asked","","howtofix.id has no OAuth callback for a local client, so the token is","how this CLI signs in. The token is verified before it is stored."].join(`
|
|
125
|
+
`)),U();return}if(!Du(d)){S("connect","that does not look like a howtofix token; the Console issues tokens that start with sk-");return}ge("note",`connecting to howtofix.id (${ui(d)})`),U();let h=await Uu(d);if(!h.ok){ge("note",void 0),S("connect",h.message),U();return}await T.modelRuntime.setRuntimeApiKey("howtofix",d);let b=await aP("howtofix",h.models),x=!!T.model&&T.model?.provider!==void 0&&o.model!=="unknown",k,_;if(!x)try{let y=(await T.modelRuntime.getAvailable()).filter(K=>qo(K.provider)),v=HS(y.map(K=>K.id)).slice(0,4);for(let K of v){if(!(await qu(K,d)).ok)continue;let yt=y.find(Bn=>Bn.id===K);if(yt){await T.setModel(yt),o.model=yt.id,k=`${yt.provider}/${yt.id}`;break}}k||(_=v.length>0?`none of the first ${v.length} models answered (${v[0]} did not)`:"the account lists no chat model")}catch(y){_=y instanceof Error?y.message:String(y)}ge("note",void 0),S("connect",[`connected ${ui(d)} \u2014 ${h.message}`,b,k?`using ${k} (change it with /model)`:`pick a model with /model, then send a prompt${_?` (auto-select failed: ${_})`:""}`].join(`
|
|
126
|
+
`)),U()})().catch(h=>{ge("note",void 0),S("connect",h instanceof Error?h.message:String(h)),U()})},mP=async d=>{let[h,...b]=d.slice(1).split(/\s+/),x=b.join(" ");if(h==="quit"||h==="exit"){si();return}if(h==="help"){S("help",Xl(T).map(y=>`/${y.name} ${y.description??""}`).join(`
|
|
127
|
+
`));return}if(h==="init"){let y=NS(e.cwd,"AGENTS.md");if(BF(y)&&x!=="force"){S("init",`AGENTS.md already exists at ${y}. run /init force to overwrite.`);return}Ze(y,gd),S("init",`wrote ${y}; asking the agent to fill it in`),await T.prompt("Read AGENTS.md, then fill it in with the real build, test, and layout facts of this repo. Keep it short.");return}if(h==="login"){Eu(x);return}if(h==="connect"){if(x.trim()){vu(x.trim());return}vu(""),ge("prompt","paste your howtofix.id token, then press enter"),U();let y=pn;pn=O=>{pn=y,ge("prompt",void 0),vu(O.trim())};return}if(h==="logout"){let y=await T.modelRuntime.getAvailable(),O=[...new Set(y.map(v=>v.provider))].sort();if(O.length===0){S("logout","no providers are configured");return}Lt("Logout",O.map(v=>({value:v,label:v})),v=>{T.modelRuntime.logout(v).then(()=>S("logout",`logged out ${v}`),K=>S("logout",K instanceof Error?K.message:String(K)))});return}if(h==="providers"){let y=await T.modelRuntime.getAvailable(),O=[...new Set(y.map(v=>v.provider))].sort();O.sort((v,K)=>Number(qo(K))-Number(qo(v))),Lt("Providers",O.map(v=>({value:v,label:v})),v=>{let K=T.modelRuntime.getModels(v);if(K.length===0){Eu(v);return}Lt(v,K.map(jt=>({value:jt.id,label:jt.id})),jt=>{let yt=K.find(Bn=>Bn.id===jt);yt&&T.setModel(yt).then(()=>{o.model=yt.id,S("providers",`${v}/${yt.id}`)},()=>Eu(v))})});return}if(h==="name"){if(!x){S("name","usage: /name <session name>");return}T.setSessionName(x),S("name",`session name: ${x}`);return}if(h==="stats"){let y=T.getSessionStats(),O=T.getContextUsage(),v=K=>Number.isFinite(K)?String(K):"\u2014";S("stats",[`session ${y.sessionId}`,y.sessionFile?`file ${y.sessionFile}`:"not persisted",`messages ${v(y.totalMessages)} (user ${v(y.userMessages)}, assistant ${v(y.assistantMessages)}, tools ${v(y.toolCalls)})`,`tokens in ${v(y.tokens.input)} out ${v(y.tokens.output)} cache ${v(y.tokens.cacheRead)}/${v(y.tokens.cacheWrite)}`,`cost $${Number.isFinite(y.cost)?y.cost.toFixed(4):"\u2014"}`,O?`context ${O.percent===null||!Number.isFinite(O.percent)?"?":`${Math.round(O.percent)}%`} of ${O.contextWindow}`:"context unknown"].join(`
|
|
128
|
+
`));return}if(h==="diff"){let y=async yt=>{try{let{stdout:Bn}=await Zl("git",yt,{cwd:e.cwd,encoding:"utf8"});return Bn.trim()}catch{return""}},O=await y(["diff","--stat"])+`
|
|
129
|
+
|
|
130
|
+
`+await y(["diff","--","."]),[v="",K=""]=O.split(`
|
|
131
|
+
|
|
132
|
+
`,2),jt=ZE(K);S("diff",[v.trim(),jt].filter(Boolean).join(`
|
|
133
|
+
|
|
134
|
+
`)||"working tree clean");return}if(h==="copy"){let y=[...T.state.messages].reverse().find(K=>K.role==="assistant"),v=(Array.isArray(y?.content)?y.content:[]).filter(K=>K.type==="text").map(K=>K.text).join("");if(!v){S("copy","nothing to copy");return}try{await YF(v),S("copy",`copied ${v.length} characters`)}catch(K){S("copy",K instanceof Error?K.message:String(K))}return}if(h==="export"){let y=r.items.filter(K=>K.body.trim().length>0);if(y.length===0){S("export","nothing to export yet \u2014 the transcript is empty");return}let O=JF(e.cwd,x||`howtofix-session-${Date.now()}.md`),v=[`# ${bt} session`,"",`model ${o.model}`,""];for(let K of y)v.push(`## ${K.title||K.kind}`,"",K.body,"");try{Ze(O,v.join(`
|
|
135
|
+
`))}catch(K){S("export",`could not write ${O}: ${K instanceof Error?K.message:String(K)}`);return}S("export",`wrote ${O}`);return}if(h==="agents"){let[y="",...O]=x.split(/\s+/).filter(Boolean),v=O.join(" ").trim();if(y&&v){S("agents",await BE(y,v));return}S("agents",y?bl(y):yl());return}if(h==="new"){let y=await e.reopen({noSession:!1});await pd(y),S("new","started a new session");return}if(h==="resume"){let y=await XF.list(e.cwd);if(y.length===0){S("resume","no saved sessions for this folder");return}Lt("Resume session",y.slice(0,30).map(O=>({value:O.path,label:O.name||`${O.id.slice(0,8)} ${O.firstMessage.slice(0,40)}`,description:`${O.modified.toISOString().slice(0,16)} ${O.messageCount} messages`})),O=>{e.reopen({sessionPath:O}).then(pd,v=>dn(v instanceof Error?v.message:String(v)))});return}if(h==="model"){let y=await T.modelRuntime.getAvailable(),O=x?y.find(v=>`${v.provider}/${v.id}`===x||v.id===x):void 0;if(!x){Lt("Select model",y.map(v=>({value:`${v.provider}/${v.id}`,label:v.id,description:v.provider})),v=>{let K=y.find(jt=>`${jt.provider}/${jt.id}`===v);K&&T.setModel(K).then(()=>{o.model=K.id,S("model",`model ${v}`)})});return}if(!O){S("model",`unknown model ${x}`);return}await T.setModel(O),o.model=O.id,S("model",`model ${O.provider}/${O.id}`);return}if(h==="thinking"){if(!x){Lt("Thinking level",Yl.map(y=>({value:y,label:y})),y=>{T.setThinkingLevel(y),o.thinking=y,S("thinking",`thinking ${y}`)});return}if(!Yl.includes(x)){S("thinking",`thinking: ${Yl.join(", ")}`);return}T.setThinkingLevel(x),o.thinking=x,S("thinking",`thinking ${x}`);return}if(h==="compact"){try{await T.compact(x||void 0),S("compact","session compacted")}catch(y){S("compact",y instanceof Error?y.message:String(y))}return}if(h==="approval"){let y=O=>{Zu(O),S("approval",gi[O])};if(!x){Lt("Approval mode",Vr.map(O=>({value:O,label:O,description:gi[O]})),O=>y(O));return}if(!Vr.includes(x)){S("approval",`modes: ${Vr.join(", ")}`);return}y(x);return}if(h==="tools"){let y=T.getActiveToolNames().sort();S("tools",y.length?y.join(`
|
|
136
|
+
`):"no tools enabled");return}if(h==="rewind"){ed();return}if(h==="undo"){if(!await Zm(e.cwd)){S("undo","not a git repository");return}let y=await YE(e.cwd);S("undo",y.ok?`undone: ${y.output}`:`undo failed: ${y.output}`),a(!0);return}if(h==="commit"){if(!Zm(e.cwd)){S("commit","not a git repository");return}if(!await VE(e.cwd)){S("commit","nothing to commit");return}let y=x||`howtofix: session update ${new Date().toISOString().slice(0,16)}`,O=await JE(e.cwd,y);S("commit",O.ok?O.output:`commit failed: ${O.output}`),a(!0);return}if(h==="review"){if(!(await XE(e.cwd)).trim()){S("review","no changes to review");return}ku("Review the uncommitted changes. Report concrete issues with file evidence. Do not edit files.");return}if(h==="workflow"){if(x.trim()==="clear"){qt(),S("workflow","cleared the pinned workflow panel");return}if(!A){S("workflow","no workflow run in this session yet");return}let y=Mo(A,Date.now()),O=y[j.selectedPhase];S("workflow",[`panel ${ee?"pinned above the editor":"unpinned"}`,`phase ${j.selectedPhase+1}/${y.length}: ${O?.title??"(none)"}`,`filter: ${j.filter}${j.paused?" \xB7 paused":""}`,"keys: \u2191/\u2193 phase \xB7 Enter drill in \xB7 Esc unpin \xB7 f filter \xB7 p pause \xB7 x stop \xB7 s save","clear it with /workflow clear"].join(`
|
|
137
|
+
`));return}if(h==="plan"){if(xE()||Km().state==="pending"){Ao(gE(Km())),S("plan","plan mode off \u2014 edits are allowed again");return}Ao(fE(Km())),S("plan",`plan mode armed \u2014 send your next prompt to start planning
|
|
138
|
+
plan file: ${hE()??"(unknown)"}`);return}if(h==="goal"){let y=x.trim();if(!y){S("goal",Fm(Dm()));return}let{goal:O,error:v}=el(Dm(),"set",y,void 0,void 0);if(v){dn(v);return}mn(O),await T.sendCustomMessage({customType:cr,content:y,display:!1,details:O}),S("goal",`goal set
|
|
139
|
+
${Fm(O)}`);return}if(h==="session"){let y=T.model;S("session",y?`${y.provider}/${y.id}`:"no model");return}if(h==="skills"){S("skills",TS(T.resourceLoader.getSkills().skills));return}let k=kS(d,T.resourceLoader.getSkills().skills.map(y=>y.name));if(k){ld(k);return}let _=T.extensionRunner.getCommand(h??"");if(_){try{await _.handler(x,T.extensionRunner.createCommandContext())}catch(y){dn(y instanceof Error?y.message:String(y))}return}S("command",`/${h??""} is not available in this screen yet`)};Bd((d,h)=>{let{promise:b,resolve:x}=Promise.withResolvers();return Lt(d,h.map(k=>({value:k,label:k})),x,()=>x("cancelled")),b}),process.on("SIGTERM",si),t.setTitle(`${bt} ${fn}`),dD(),n.start(),n.requestRender(!0),e.initialPrompt&&ku(e.initialPrompt),await new Promise(()=>{})}var US,Yl,zS,Zl,lu,du,fu,cD,pD,pn,gD,hD,ZS=m(()=>{_o();Cl();Yv();Wu();oS();Gs();hS();Hl();Ks();tc();Wl();IS();zs();Pl();Ku();wS();Dn();ES();jS();Il();Go();Bu();_m();ol();DS();zn();US={borderColor:()=>"",selectList:{selectedPrefix:e=>Q(e,D.accent),selectedText:e=>Q(e,D.text,{bold:!0}),description:e=>Q(e,D.mute),scrollInfo:e=>Q(e,D.dim),noMatch:e=>Q(e,D.mute)}},Yl=["off","minimal","low","medium","high","xhigh","max"],zS=Symbol.for("@earendil-works/pi-tui/layout-node");Zl=WF(GF);lu=class{folder;model;git;percent=0;meter=new ou(0);activity=xS();live=!1;activitySince=Date.now();thinking="medium";cubence="";constructor(t,n){this.folder=VF(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=uS(this.model,this.thinking,this.folder,this.git),s=[Zs(`${cS(o,this.live?Ul():"",this.live?this.waitedMs():void 0)} ${pS(r,this.cubence)}`,t)],a=IE();a&&s.push(Zs(Q(a,D.warn),t));let c=oE(Dm());c&&s.push(Zs(Q(c,D.accent),t));let p=bS(this.activity,Ul(),n),f=this.live?_v(p,{base:Al(this.waitedMs(),D.mute,D.warn,D.bad),bright:D.text,charMs:45},n):Q(p,Al(this.waitedMs(),D.mute,D.warn,D.bad));return s.push(Zs(f,t)),s}},du=class{constructor(t){this.draw=t}draw;render(t){return this.draw(t)}invalidate(){}},fu=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=>pu(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-pu(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)}},cD=["deepseek","qwen","claude","gpt-5","gpt-4","gemini","glm","mimo","kimi","llama"],pD=/(image|embedding|embed|whisper|tts|audio|video|rerank|moderation|dall-e|stable-diffusion|sora)/i;gD=1e3/30,hD=45e3});_o();var hd={off:!0,minimal:!0,low:!0,medium:!0,high:!0,xhigh:!0,max:!0},xd={suggest:!0,"auto-edit":!0,"full-auto":!0};function ii(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 yd(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=ii(r,o,"--session");else if(s==="-m"||s==="--model"||s.startsWith("--model="))t.model=ii(r,o,"--model");else if(s==="--thinking"||s.startsWith("--thinking="))t.thinking=ii(r,o,"--thinking");else if(s==="--approval"||s.startsWith("--approval="))t.approval=ii(r,o,"--approval");else{if(s.startsWith("-"))throw new Error(`unknown option ${s}`);n.push(s)}}if(t.thinking&&!hd[t.thinking])throw new Error(`thinking must be one of: ${Object.keys(hd).join(", ")}`);if(t.approval&&!xd[t.approval])throw new Error(`approval must be one of: ${Object.keys(xd).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 Pu(){return`${bt} ${fn}
|
|
125
140
|
coding agent. layout is a workbench, not a chat log.
|
|
126
141
|
|
|
127
142
|
usage:
|
|
@@ -164,7 +179,7 @@ a line starting with ! runs in the project shell.
|
|
|
164
179
|
|
|
165
180
|
config and sessions live in ~/.howtofix/agent. connect your howtofix.id account
|
|
166
181
|
with /connect (it opens the token page), or /login for another provider's key.
|
|
167
|
-
`}
|
|
168
|
-
${
|
|
169
|
-
`)?
|
|
170
|
-
`);let
|
|
182
|
+
`}_o();Dn();function xD(){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 yD(){process.stdout.on("error",e=>{throw e.code==="EPIPE"&&process.exit(0),e})}async function bD(){yD(),Mu();let e=xD();if("error"in e){console.error(`${bt}: ${e.error}`),process.exitCode=1;return}let t=e.cwd,{repairGatewayModels:n,ensureGatewaySettings:r}=await Promise.resolve().then(()=>(Ku(),vd)),{AGENT_DIR:o}=await Promise.resolve().then(()=>(Dn(),bd)),s=n(o);s>0&&console.error(`${bt}: repaired ${s} howtofix model(s) that the gateway would have rejected`),r(o)&&console.error(`${bt}: set httpIdleTimeoutMs in settings.json so a stalled provider recovers instead of hanging`);let a;try{a=yd(process.argv.slice(2))}catch(A){let q=A instanceof Error?A.message:String(A);console.error(`${bt}: ${q}
|
|
183
|
+
${Pu()}`),process.exitCode=2;return}if(a.help){console.log(Pu());return}if(a.version){console.log(`${bt} ${fn}`);return}if(a.print&&!a.prompt){console.error(`${bt}: --print needs a prompt`),process.exitCode=2;return}let{expandFileReferences:c}=await Promise.resolve().then(()=>(Wu(),Sd)),{isApprovalMode:p,setApprovalMode:f}=await Promise.resolve().then(()=>(Go(),Ud)),{openSession:I}=await Promise.resolve().then(()=>(Rv(),Pv));f(a.approval&&p(a.approval)?a.approval:"full-auto");let w=A=>I({cwd:t,model:a.model,thinking:a.thinking,continueSession:A.continueSession??!1,noSession:A.noSession??!1,sessionPath:A.sessionPath}),M=await w({continueSession:a.continueSession,sessionPath:a.sessionPath,noSession:a.noSession||a.print});if(a.print){M.note&&console.error(M.note);try{await M.session.prompt(c(a.prompt,t));let A=M.session.getLastAssistantText()??"";process.stdout.write(A.endsWith(`
|
|
184
|
+
`)?A:`${A}
|
|
185
|
+
`);let q=M.session.state.messages.at(-1);q?.role==="assistant"&&((q.stopReason==="error"||q.stopReason==="aborted"||q.errorMessage)&&(process.exitCode=1),process.exitCode===1&&q.errorMessage&&console.error(`${bt}: ${q.errorMessage}`))}finally{M.dispose()}return}if(!process.stdin.isTTY||!process.stdout.isTTY){console.error(`${bt}: interactive mode needs a terminal. use --print for pipes.`),M.dispose(),process.exitCode=2;return}let{runWorkbench:j}=await Promise.resolve().then(()=>(ZS(),XS));await j({cwd:t,modelLabel:M.modelLabel,session:M.session,initialPrompt:a.prompt||void 0,note:M.note,reopen:w})}bD().catch(e=>{let t=e instanceof Error?e.message:String(e);console.error(`${bt}: ${t}`),process.exitCode=1});
|