@baique/pi-web-sky 0.1.56 → 0.1.57

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.
Files changed (138) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +5 -5
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/react-loadable-manifest.json +2 -2
  5. package/.next/required-server-files.js +3 -2
  6. package/.next/required-server-files.json +3 -2
  7. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  8. package/.next/server/app/_global-error.html +1 -1
  9. package/.next/server/app/_global-error.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  13. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  14. package/.next/server/app/_not-found.html +1 -1
  15. package/.next/server/app/_not-found.rsc +3 -3
  16. package/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  17. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
  18. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  19. package/.next/server/app/api/agent/[id]/bash-output/route.js +2 -2
  20. package/.next/server/app/api/agent/[id]/events/route.js +1 -1
  21. package/.next/server/app/api/agent/[id]/route.js +1 -1
  22. package/.next/server/app/api/agent/new/route.js +1 -1
  23. package/.next/server/app/api/agent/running/route.js +1 -1
  24. package/.next/server/app/api/app-update/route.js +1 -1
  25. package/.next/server/app/api/board-assets/[...path]/route.js +1 -1
  26. package/.next/server/app/api/board-assets/route.js +1 -1
  27. package/.next/server/app/api/boards/[id]/add-session/route.js +1 -1
  28. package/.next/server/app/api/boards/[id]/reconcile/route.js +1 -1
  29. package/.next/server/app/api/boards/[id]/route.js +1 -1
  30. package/.next/server/app/api/boards/reorder/route.js +1 -1
  31. package/.next/server/app/api/boards/route.js +1 -1
  32. package/.next/server/app/api/cwd/validate/route.js +1 -1
  33. package/.next/server/app/api/default-cwd/route.js +1 -1
  34. package/.next/server/app/api/file-index/route.js +1 -1
  35. package/.next/server/app/api/files/[...path]/route.js +2 -2
  36. package/.next/server/app/api/mcp/route.js +1 -1
  37. package/.next/server/app/api/models/route.js +1 -1
  38. package/.next/server/app/api/plugins/route.js +1 -1
  39. package/.next/server/app/api/project-trust/route.js +1 -1
  40. package/.next/server/app/api/search/route.js +2 -2
  41. package/.next/server/app/api/sessions/[id]/auto-name/route.js +2 -2
  42. package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
  43. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +2 -2
  44. package/.next/server/app/api/sessions/[id]/export/route.js +2 -2
  45. package/.next/server/app/api/sessions/[id]/minimap/route.js +1 -1
  46. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  47. package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
  48. package/.next/server/app/api/sessions/[id]/todos/route.js +1 -1
  49. package/.next/server/app/api/sessions/route.js +1 -1
  50. package/.next/server/app/api/sessions/summary/route.js +1 -1
  51. package/.next/server/app/api/skills/install/route.js +1 -1
  52. package/.next/server/app/api/subagents/[id]/route.js +1 -1
  53. package/.next/server/app/api/subagents/profiles/route.js +1 -1
  54. package/.next/server/app/api/task-card-questions/[id]/answer/route.js +1 -1
  55. package/.next/server/app/api/task-card-questions/route.js +1 -1
  56. package/.next/server/app/api/task-cards/[id]/route.js +1 -1
  57. package/.next/server/app/api/task-cards/route.js +1 -1
  58. package/.next/server/app/api/task-cards/unbind/route.js +1 -1
  59. package/.next/server/app/api/task-scheduler/status/route.js +1 -1
  60. package/.next/server/app/api/tasks/[id]/assign-session/route.js +2 -12
  61. package/.next/server/app/api/tasks/[id]/board/route.js +1 -1
  62. package/.next/server/app/api/tasks/[id]/route.js +1 -1
  63. package/.next/server/app/api/tasks/reorder/route.js +2 -12
  64. package/.next/server/app/api/tasks/route.js +2 -12
  65. package/.next/server/app/api/worktrees/route.js +1 -1
  66. package/.next/server/app/index.html +1 -1
  67. package/.next/server/app/index.rsc +5 -5
  68. package/.next/server/app/index.segments/__PAGE__.segment.rsc +5 -5
  69. package/.next/server/app/index.segments/_full.segment.rsc +5 -5
  70. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  71. package/.next/server/app/page.js +10 -10
  72. package/.next/server/app/page_client-reference-manifest.js +1 -1
  73. package/.next/server/app-paths-manifest.json +5 -5
  74. package/.next/server/chunks/1937.js +14 -13
  75. package/.next/server/chunks/2524.js +2 -2
  76. package/.next/server/chunks/3500.js +1 -1
  77. package/.next/server/chunks/402.js +21 -10
  78. package/.next/server/chunks/4457.js +3 -13
  79. package/.next/server/chunks/542.js +8 -8
  80. package/.next/server/chunks/5794.js +1 -1
  81. package/.next/server/chunks/5940.js +1 -1
  82. package/.next/server/chunks/6429.js +4 -4
  83. package/.next/server/chunks/6525.js +18 -7
  84. package/.next/server/chunks/6583.js +12 -11
  85. package/.next/server/middleware-build-manifest.js +1 -1
  86. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  87. package/.next/server/pages/404.html +1 -1
  88. package/.next/server/pages/500.html +1 -1
  89. package/.next/static/chunks/752.bafff304e6b00987.js +1 -0
  90. package/.next/static/chunks/8088.39866dc5f1d15868.js +1 -0
  91. package/.next/static/chunks/app/{layout-87087b955e0c9507.js → layout-fae2b226b3c78448.js} +1 -1
  92. package/.next/static/chunks/app/page-d5af3bd535589daf.js +256 -0
  93. package/.next/static/chunks/{webpack-4de8e8dd9f2f3173.js → webpack-1ce35e1249cfd931.js} +1 -1
  94. package/.next/static/css/{c6d32b6031181be7.css → c7d127e07b1a786c.css} +1 -1
  95. package/.next/trace +8 -7
  96. package/.next/trace-build +1 -1
  97. package/lib/board-reconcile.test.mjs +26 -8
  98. package/lib/board-reconcile.ts +3 -1
  99. package/lib/board-store.test.mjs +2 -2
  100. package/lib/ime-guard.test.mjs +52 -0
  101. package/lib/ime-guard.ts +54 -0
  102. package/lib/rpc-manager.activity.test.mjs +223 -0
  103. package/lib/rpc-manager.test.mjs +22 -0
  104. package/lib/rpc-manager.title.test.mjs +152 -0
  105. package/lib/rpc-manager.ts +95 -8
  106. package/lib/session-activity.test.mjs +123 -0
  107. package/lib/session-activity.ts +77 -0
  108. package/lib/session-delete.test.mjs +45 -41
  109. package/lib/session-delete.ts +8 -34
  110. package/lib/session-index-scanner.test.mjs +364 -2
  111. package/lib/session-index-scanner.ts +162 -57
  112. package/lib/session-reader.noscan.test.mjs +371 -0
  113. package/lib/session-reader.project.test.mjs +30 -52
  114. package/lib/session-reader.test.mjs +2 -65
  115. package/lib/session-reader.ts +177 -213
  116. package/lib/session-scanner.test.mjs +151 -38
  117. package/lib/session-scanner.ts +140 -61
  118. package/lib/session-search.ts +6 -5
  119. package/lib/sqlite-db.test.mjs +26 -0
  120. package/lib/sqlite-db.ts +10 -1
  121. package/lib/subagent-runtime.ts +42 -0
  122. package/lib/subagent-session-title.test.mjs +120 -0
  123. package/lib/task-scheduler.test.mjs +27 -0
  124. package/lib/task-scheduler.ts +8 -1
  125. package/lib/task-store.activity.test.mjs +141 -0
  126. package/lib/task-store.meta-row.test.mjs +25 -5
  127. package/lib/task-store.partial-row.test.mjs +198 -0
  128. package/lib/task-store.subtree.test.mjs +172 -0
  129. package/lib/task-store.test.mjs +46 -20
  130. package/lib/task-store.ts +344 -68
  131. package/next.config.ts +3 -1
  132. package/package.json +1 -1
  133. package/.next/static/chunks/752.adce8bc3ebbaf4b6.js +0 -1
  134. package/.next/static/chunks/8088.0cad1ff2e09fd8ff.js +0 -1
  135. package/.next/static/chunks/app/page-efca6bf51a5f8ccb.js +0 -256
  136. /package/.next/static/{k8ZFqwz7d-bnK0ZiUVgCc → MPBMmQqmDG8zo8tM_bkDy}/_buildManifest.js +0 -0
  137. /package/.next/static/{k8ZFqwz7d-bnK0ZiUVgCc → MPBMmQqmDG8zo8tM_bkDy}/_ssgManifest.js +0 -0
  138. /package/lib/{subagent-isolation.test.mjs → worktree-isolation.test.mjs} +0 -0
@@ -1,13 +1,13 @@
1
1
  exports.id=542,exports.ids=[542],exports.modules={5564:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{wQ:()=>g}),c(73024),c(76760);var e=c(75430);c(39065);var f=a([e]);e=(f.then?(await f)():f)[0];let h=new Set(["bash","powershell"]);function g(a,b,c=process.platform){return function(a,b){let c=b?"powershell":"bash",d=[];for(let b of a){let a=h.has(b)?c:b;d.includes(a)||d.push(a)}return d}(a,function(a,b=process.platform){return"win32"===b&&a?.includes("powershell")===!0&&!a.includes("bash")}(b,c))}d()}catch(a){d(a)}})},8084:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{J8:()=>k,U6:()=>m,Vj:()=>l,o2:()=>j});var e=c(28802),f=c(75430),g=c(41035),h=c(16983),i=a([e,f,g]);[e,f,g]=i.then?(await i)():i;let n="pi-web-subagents",o=`<inline:${n}>`,p=new Set(g.st),q="pi-subagents";function j(a){return{kind:"pi-web-subagent",sessionId:a.sessionId,profile:a.profile,description:a.description,status:a.status,runInBackground:a.runInBackground,createdAt:a.createdAt,...a.completedAt?{completedAt:a.completedAt}:{},...a.error?{error:a.error}:{},...a.worktreePath?{worktreePath:a.worktreePath}:{},...a.worktreeBranch?{worktreeBranch:a.worktreeBranch}:{},...a.worktreeCleanupError?{worktreeCleanupError:a.worktreeCleanupError}:{}}}function k(a){return"starting"===a.status||"running"===a.status?`Subagent ${a.sessionId} is ${a.status}.`:"completed"===a.status?a.result?.trim()||"Subagent completed without text output.":"aborted"===a.status?`Subagent ${a.sessionId} was stopped.`:"interrupted"===a.status?`Subagent ${a.sessionId} was interrupted before completion.`:`Subagent ${a.sessionId} failed: ${a.error??"Unknown error"}`}function l(a,b,c=()=>!0){return{name:n,hidden:!0,factory:d=>{let g;if(!c())return;let i=b().filter(a=>a.enabled),l=i.map(a=>a.name),m=l.length>0?l.join(", "):"none";d.registerTool((0,f.defineTool)({name:"Agent",label:"Agent",description:`Delegate a focused task to a configured subagent. Each subagent runs as a full, inspectable Pi session. Use background mode for independent work and foreground mode when the result is needed immediately.
2
2
 
3
3
  Available agent types:
4
- ${(g=i.filter(a=>a.enabled),0===g.length?"No subagent profiles are currently enabled.":g.map(a=>{let b=[`Tools: ${a.tools.length>0?a.tools.join(", "):"none"}`];return a.model&&b.push(`Model: ${a.model}`),`- ${a.name}: ${a.description} (${b.join("; ")})`}).join("\n"))}`,promptSnippet:"Delegate a focused task to an inspectable subagent session",promptGuidelines:["Use Agent for a focused task that benefits from an isolated context.","Use multiple background Agent calls in the same response for independent parallel work.","Do not duplicate work already delegated to a running subagent."],executionMode:"parallel",parameters:e.Type.Object({subagent_type:e.Type.Optional(e.Type.String({description:`Configured agent profile. Available types: ${m}. Default: general-purpose.`})),prompt:e.Type.String({description:"The complete task for the subagent."}),resume:e.Type.Optional(e.Type.String({description:"Existing subagent session ID to continue instead of creating a new session."})),input_files:e.Type.Optional(e.Type.Array(e.Type.String(),{description:"UTF-8 text files under the session cwd to include with the task.",maxItems:h.Wv})),description:e.Type.String({description:"Short activity label shown in the UI."}),run_in_background:e.Type.Optional(e.Type.Boolean({description:"Return immediately and notify this session when complete."})),model:e.Type.Optional(e.Type.String({description:"Optional provider/modelId override."})),thinking:e.Type.Optional(e.Type.String({description:"Optional thinking level override."})),max_turns:e.Type.Optional(e.Type.Number({description:"Optional positive agent turn limit."})),inherit_context:e.Type.Optional(e.Type.Boolean({description:"Include the parent session's active conversation context."})),isolation:e.Type.Optional(e.Type.String({description:"Run the subagent in an isolated git worktree."}))}),async execute(b,c,d,e,f){try{let g=c.resume?.trim(),h=g?await a.resume({parentContext:f,parentToolCallId:b,sessionId:g,task:c.prompt,description:c.description,...void 0!==c.run_in_background?{runInBackground:c.run_in_background}:{},signal:d,onUpdate:a=>e?.({content:[{type:"text",text:`${a.profile}: ${a.description} (${a.status})`}],details:j(a)})}):await a.start({parentContext:f,parentToolCallId:b,profile:c.subagent_type??"general-purpose",task:c.prompt,...c.input_files?{inputFiles:c.input_files}:{},description:c.description,...void 0!==c.run_in_background?{runInBackground:c.run_in_background}:{},...c.model?{model:c.model}:{},...c.thinking?{thinking:c.thinking}:{},...c.max_turns?{maxTurns:c.max_turns}:{},...void 0!==c.inherit_context?{inheritContext:c.inherit_context}:{},..."worktree"===c.isolation?{isolation:"worktree"}:{},signal:d,onUpdate:a=>e?.({content:[{type:"text",text:`${a.profile}: ${a.description} (${a.status})`}],details:j(a)})});if(h.run.runInBackground)return h.completion.then(b=>a.notifyParent(b)).catch(a=>{console.error("[pi-web] failed to deliver subagent completion:",a instanceof Error?a.message:a)}),{content:[{type:"text",text:`Subagent started in background. Session ID: ${h.run.sessionId}. You will be notified when it completes.`}],details:j(h.run)};let i=await h.completion;return{content:[{type:"text",text:k(i)}],details:j(i),..."failed"===i.status?{isError:!0}:{}}}catch(a){return{content:[{type:"text",text:a instanceof Error?a.message:String(a)}],details:void 0,isError:!0}}}})),d.registerTool((0,f.defineTool)({name:"get_subagent_result",label:"Get agent result",description:"Check an inspectable subagent session and retrieve its latest result.",parameters:e.Type.Object({agent_id:e.Type.String({description:"Subagent session ID."}),wait:e.Type.Optional(e.Type.Boolean({description:"Wait until the subagent finishes."}))}),async execute(b,c,d){let e=await a.get(c.agent_id);if(!e)return{content:[{type:"text",text:`Subagent not found: ${c.agent_id}`}],details:void 0,isError:!0};for(;c.wait&&("starting"===e.status||"running"===e.status);)if(await new Promise((a,b)=>{let c=()=>{clearTimeout(e),b(Error("Result wait aborted"))},e=setTimeout(()=>{d?.removeEventListener("abort",c),a()},500);d?.aborted?c():d?.addEventListener("abort",c,{once:!0})}),!(e=await a.get(c.agent_id)))return{content:[{type:"text",text:`Subagent not found: ${c.agent_id}`}],details:void 0,isError:!0};return{content:[{type:"text",text:k(e)}],details:j(e),..."failed"===e.status?{isError:!0}:{}}}})),d.registerTool((0,f.defineTool)({name:"steer_subagent",label:"Steer agent",description:"Send a steering message to a currently running subagent session.",parameters:e.Type.Object({agent_id:e.Type.String({description:"Subagent session ID."}),message:e.Type.String({description:"Instruction to inject after the current tool execution."})}),async execute(b,c){try{return await a.steer(c.agent_id,c.message),{content:[{type:"text",text:`Steering message sent to ${c.agent_id}.`}],details:void 0}}catch(a){return{content:[{type:"text",text:a instanceof Error?a.message:String(a)}],details:void 0,isError:!0}}}}))}}}function m(a){let b=a.extensions.find(a=>a.path===o);if(!b?.tools.has("Agent"))return a;let c=new Set(a.extensions.filter(a=>a.path!==o).filter(a=>{let b=(a.sourceInfo?.source??"").replace(/^npm:/,"").split("@")[0],c=a.path.replaceAll("\\","/").split("/");return b===q||c.some(a=>a===q)}).filter(a=>[...p].some(b=>a.tools.has(b))).map(a=>a.path));return 0===c.size?a:{...a,extensions:a.extensions.filter(a=>!c.has(a.path)),errors:a.errors.filter(a=>!c.has(a.path)&&(a.path!==o||![...c].some(b=>[...p].some(c=>a.error===`Tool "${c}" conflicts with ${b}`))))}}d()}catch(a){d(a)}})},12144:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{A4:()=>G,HG:()=>H,OF:()=>I});var e=c(75430),f=c(29862),g=c(55511),h=c(29021),i=c(33873),j=c(18437),k=c(88250),l=c(96515),m=c(81186),n=c(87509),o=c(8084),p=c(41035),q=c(84851),r=c(70274),s=c(32302),t=c(69453),u=c(16525),v=c(7535),w=c(88002),x=c(65562),y=c(47128),z=c(15253),A=c(61577),B=c(57856),C=a([e,f,l,m,n,o,p,q,r,t,u,z]);[e,f,l,m,n,o,p,q,r,t,u,z]=C.then?(await C)():C;let J=new Set(["agent_end","agent_settled","auto_compaction_end","compaction_end"]),K=function(a=process.env.PI_WEB_IDLE_TIMEOUT_MS){if(void 0!==a&&""!==a.trim()){let b=Number(a);if(Number.isFinite(b)&&b>=0&&b<=0x7fffffff)return b;console.warn(`[pi-web] invalid PI_WEB_IDLE_TIMEOUT_MS "${a}", falling back to 10 minutes`)}return 6e5}(),L=["read","bash","edit","write","grep","find","ls"];class M extends e.Theme{constructor(){super({thinkingXhigh:"",searchMatchText:""},{selectedBg:""},"truecolor")}fg(...[,a]){return a}bg(...[,a]){return a}bold(a){return a}italic(a){return a}underline(a){return a}inverse(a){return a}strikethrough(a){return a}getFgAnsi(){return""}getBgAnsi(){return""}getThinkingBorderColor(){return a=>a}getBashModeBorderColor(){return a=>a}}let N=new M,O=new f.KeybindingsManager(f.TUI_KEYBINDINGS);function D(a,b){if(0===b.length)return[];let c=new Set(L),d=a.getAllTools().map(a=>a.name).filter(a=>!c.has(a));return[...new Set([...b,...d])]}class P{constructor(a,b={}){this.inner=a,this.listeners=[],this.pendingUiResponses=new Map,this.pendingUiRequests=new Map,this.activeCustomUis=new Map,this.extensionStatuses=new Map,this.extensionWidgets=new Map,this.activeExtensionWidgets=new Map,this.extensionWidgetGenerations=new Map,this.extensionWidgetsResetting=!1,this.pendingPromptCount=0,this.promptAdmissionTail=Promise.resolve(),this.extensionsBound=!1,this.extensionBindingPromise=null,this.extensionBindingError=null,this.forceEmptySystemPrompt=!1,this.unsubscribe=null,this.idleTimer=null,this.onDestroyCallback=null,this.shutdownPromise=null,this._alive=!0,this.lastAgentStart=0,this.exactSystemPrompt=b.exactSystemPrompt,this.chatOnly=b.chatOnly??!1,this.installExactSystemPromptContinuation(),this.applyExactSystemPrompt()}hasPendingUiRequest(){return this.pendingUiRequests.size>0}lastAgentStartAt(){return this.lastAgentStart}get sessionId(){return this.inner.sessionId}get sessionFile(){return this.inner.sessionFile??""}get cwd(){return this.inner.sessionManager.getCwd()}get streamingMessage(){return this.inner.agent.state?.streamingMessage}get isStreaming(){return this.inner.isStreaming}isAlive(){return this._alive}isChatOnly(){return this.chatOnly}isRunning(){return this._alive&&(this.pendingPromptCount>0||this.inner.isStreaming||this.inner.isCompacting||this.inner.isBashRunning)}start(){this.unsubscribe=this.inner.subscribe(a=>{"agent_start"===a.type&&(this.lastAgentStart=Date.now()),"agent_end"===a.type&&(0,t.mD)(),J.has(a.type)&&this.resetIdleTimer(),this.emit(a)}),this.resetIdleTimer()}setForceEmptySystemPrompt(a){this.forceEmptySystemPrompt=a,this.applyForcedEmptySystemPrompt()}beginExtensionBinding(a={}){this.ensureExtensionsBound(a).catch(a=>{console.error("[pi-web] failed to dispatch session_start to extensions:",a instanceof Error?a.message:a)})}async waitUntilReady(){await this.waitForExtensionsBound()}applyExactSystemPrompt(){this.exactSystemPrompt&&this.inner.agent.state&&(this.inner.agent.state.systemPrompt=this.exactSystemPrompt())}installExactSystemPromptContinuation(){if(!this.exactSystemPrompt)return;let a=this.inner.agent.prepareNextTurnWithContext;this.inner.agent.prepareNextTurnWithContext=async(b,c)=>{let d=await a?.(b,c);return{...d,context:{...d?.context??b.context,systemPrompt:this.exactSystemPrompt()}}}}ensureExtensionsBound(a={}){return(a.forceEmptySystemPrompt&&(this.forceEmptySystemPrompt=!0),this.extensionsBound)?(this.applyForcedEmptySystemPrompt(),this.applyExactSystemPrompt(),Promise.resolve()):(this.extensionBindingPromise||(this.extensionBindingError=null,this.extensionBindingPromise=(async()=>{if(!this._alive)return;let a=this.createExtensionUiContext();if("function"==typeof this.inner.bindExtensions){let b=this.inner.bindExtensions;await b.call(this.inner,{uiContext:a,mode:"rpc",commandContextActions:this.createExtensionCommandContextActions(),shutdownHandler:()=>this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"notify",notifyType:"warning",message:"Extension requested shutdown, but shutdown is not supported in Pi Web."}),onError:a=>this.emit({type:"extension_error",extensionPath:a.extensionPath,event:a.event,error:a.error})})}else this.inner.extensionRunner.setUIContext?.(a,"rpc");this.extensionsBound=!0,this.applyForcedEmptySystemPrompt(),this.applyExactSystemPrompt(),console.log(`[pi-web] session_start dispatched to extensions for session ${this.inner.sessionId}`)})().catch(a=>{throw this.extensionBindingError=a,a})),this.extensionBindingPromise)}async waitForExtensionsBound(){try{this.extensionBindingPromise&&await this.extensionBindingPromise}catch(a){throw a instanceof Error?a:Error(String(a))}if(this.extensionBindingError)throw this.extensionBindingError instanceof Error?this.extensionBindingError:Error(String(this.extensionBindingError))}shouldWaitForExtensions(a){return"prompt"===a||"steer"===a||"follow_up"===a||"get_commands"===a||"get_state"===a}async withFinalRunningNotification(a){try{return await a()}finally{this.resetIdleTimer()}}applyForcedEmptySystemPrompt(){this.forceEmptySystemPrompt&&this.inner.agent.state&&(this.inner.agent.state.systemPrompt="")}emit(a){for(let b of this.listeners)try{b(a)}catch(b){console.error(`[pi-web] failed to deliver ${a.type} event:`,b instanceof Error?b.message:b)}}async acquirePromptAdmission(){let a,b=this.promptAdmissionTail;return this.promptAdmissionTail=new Promise(b=>{a=b}),await b,a}resetIdleTimer(){0!==K&&(this.idleTimer&&clearTimeout(this.idleTimer),this.idleTimer=setTimeout(()=>{this.isRunning()?this.resetIdleTimer():this.shutdown().catch(a=>{console.error("[pi-web] failed to shut down idle session:",a instanceof Error?a.message:a)})},K))}onEvent(a){for(let b of(this.listeners.push(a),this.pendingUiRequests.values()))a(b);return()=>{let b=this.listeners.indexOf(a);-1!==b&&this.listeners.splice(b,1)}}onDestroy(a){this.onDestroyCallback=a}async send(a){this.resetIdleTimer();let b=a.type;if(this.shouldWaitForExtensions(b)&&await this.waitForExtensionsBound(),"prompt"===b||"steer"===b||"follow_up"===b){let b=(0,j.kc)(a.images);if(b)throw Error(b)}switch(b){case"prompt":{let b=await this.acquirePromptAdmission();try{let b,c,d;if(this.inner.isBashRunning)throw Error("Cannot send a prompt while a shell command is running");let e=a.images,f=a.streamingBehavior,g=!1,h=!1,i=!1,j=new Promise((a,d)=>{b=()=>{g=!0,h||(h=!0,a())},c=a=>{h||(h=!0,d(a))}}),k=()=>{i||(i=!0,this.pendingPromptCount=Math.max(0,this.pendingPromptCount-1),this.resetIdleTimer())};this.pendingPromptCount+=1;try{d=this.inner.prompt(a.message,{...e?.length?{images:e}:{},...f?{streamingBehavior:f}:{},source:"rpc",preflightResult:a=>{a&&b()}})}catch(a){throw k(),a}return d.then(()=>{b(),k(),f||this.emit({type:"prompt_done"})},a=>{c(a),k(),(0,t.mD)(),g&&(this.emit({type:"prompt_error",errorMessage:a instanceof Error?a.message:String(a)}),f||this.emit({type:"prompt_done"}))}).catch(a=>{console.error("[pi-web] prompt completion handler failed:",a instanceof Error?a.message:a)}),await j,null}finally{b()}}case"abort":return await this.withFinalRunningNotification(()=>this.inner.abort()),null;case"get_state":{let a=this.inner.model,b=this.inner.getContextUsage();return{sessionId:this.inner.sessionId,sessionFile:this.inner.sessionFile??"",isStreaming:this.inner.isStreaming,isPromptRunning:this.pendingPromptCount>0,isBashRunning:this.inner.isBashRunning,isCompacting:this.inner.isCompacting,autoCompactionEnabled:this.inner.autoCompactionEnabled,autoRetryEnabled:this.inner.autoRetryEnabled,model:a?{id:a.id,provider:a.provider}:void 0,messageCount:0,pendingMessageCount:this.inner.pendingMessageCount,queuedMessages:{steering:[...this.inner.getSteeringMessages()],followUp:[...this.inner.getFollowUpMessages()]},contextUsage:b?{percent:b.percent,contextWindow:b.contextWindow,tokens:b.tokens}:null,systemPrompt:this.inner.agent.state?.systemPrompt??"",thinkingLevel:this.inner.agent.state?.thinkingLevel??"off",extensionStatuses:this.getExtensionStatuses(),extensionWidgets:this.getExtensionWidgets()}}case"set_model":{let{provider:b,modelId:c}=a,d=this.inner.modelRuntime.getModel(b,c);if(d||(await this.inner.modelRuntime.refresh({allowNetwork:!1}),d=this.inner.modelRuntime.getModel(b,c)),!d)throw Error(`Model not found: ${b}/${c}`);return await this.inner.setModel(d),(0,k.kn)(),(0,t.mD)(),{id:d.id,provider:d.provider}}case"fork_branch":{if(this.isRunning())throw Error("Cannot fork while the session is running");let b=a.entryId,c=this.inner.sessionManager,d=this.inner.sessionFile;if(!c.isPersisted())return{cancelled:!0};if(!d)throw Error("Persisted session is missing a session file");if(!c.getEntry(b))throw Error("Invalid entry ID for forking");let f=c.getSessionDir(),g=e.SessionManager.open(d,f),i=g.createBranchedSession(b);if(!i)throw Error("Failed to create forked session");if(!(0,h.existsSync)(i)){let a=[g.getHeader(),...g.getEntries()].map(a=>JSON.stringify(a)).join("\n")+"\n";(0,h.writeFileSync)(i,a,{encoding:"utf8",flag:"wx"}),g.flushed=!0}let j=e.SessionManager.open(i,f).getSessionId();return(0,t.O8)(j,i),(0,t.mD)(),await (0,u.Pv)(i,c.getSessionId()),{cancelled:!1,newSessionId:j}}case"fork":{let b;if(this.inner.isBashRunning)throw Error("Cannot fork while a shell command is running");let c=this.inner.sessionId,d=a.entryId,f=this.inner.sessionManager,g=this.inner.sessionFile;if(!f.isPersisted())return{cancelled:!0};if(!g)throw Error("Persisted session is missing a session file");let i=f.getEntry(d);if(!i)throw Error("Invalid entry ID for forking");let j=f.getSessionDir();if(i.parentId){let a=e.SessionManager.open(g,j),c=a.createBranchedSession(i.parentId);if(!c)throw Error("Failed to create forked session");if(b=c,!(0,h.existsSync)(b)){let c=[a.getHeader(),...a.getEntries()].map(a=>JSON.stringify(a)).join("\n")+"\n";(0,h.writeFileSync)(b,c,{encoding:"utf8",flag:"wx"}),a.flushed=!0}}else{let a=e.SessionManager.create(f.getCwd(),j);a.newSession({parentSession:g}),a.getSessionFile()&&a._rewriteFile(),b=a.getSessionFile()}let k=e.SessionManager.open(b,j).getSessionId();(0,t.O8)(k,b),(0,t.mD)();let l=f.getCwd();await this.shutdown();try{let a=await (0,w.KI)(l??"");(0,x.YH)(k,{path:b,cwd:l??"",projectKey:(0,v.z)(a?.projectRoot??l??""),parentId:c}),await (0,y.BC)(c)}catch{}return{cancelled:!1,newSessionId:k}}case"navigate_tree":if(this.inner.isBashRunning)throw Error("Cannot navigate while a shell command is running");return{cancelled:(await this.inner.navigateTree(a.targetId,{})).cancelled};case"set_thinking_level":{let b=a.level;return this.inner.setThinkingLevel(b),"xhigh"===b&&this.inner.model?.compat?.thinkingFormat==="deepseek"&&this.inner.agent?.state&&(this.inner.agent.state.thinkingLevel="xhigh"),(0,t.mD)(),null}case"compact":try{return await this.withFinalRunningNotification(()=>this.inner.compact(a.customInstructions))}finally{(0,t.mD)()}case"set_session_name":{let b=a.name?.trim();if(!b)throw Error("Session name cannot be empty");return this.inner.setSessionName(b),(0,t.mD)(),null}case"get_session_stats":return{...this.inner.getSessionStats(),sessionName:this.inner.sessionManager.getSessionName()};case"get_last_assistant_text":return{text:this.inner.getLastAssistantText()??""};case"set_auto_compaction":return this.inner.setAutoCompactionEnabled(a.enabled),null;case"clear_queue":return this.inner.clearQueue();case"steer":{let b=a.images;return await this.inner.steer(a.message,b?.length?b:void 0),null}case"follow_up":{let b=a.images;return await this.inner.followUp(a.message,b?.length?b:void 0),null}case"get_tools":{let a=this.inner.getAllTools(),b=new Set(this.inner.getActiveToolNames());return a.map(a=>({...a,active:b.has(a.name)}))}case"get_commands":{let a=[];for(let b of this.inner.extensionRunner.getRegisteredCommands())a.push({name:b.invocationName,description:b.description,source:"extension",sourceInfo:b.sourceInfo});for(let b of this.inner.promptTemplates)a.push({name:b.name,description:b.description,source:"prompt",sourceInfo:b.sourceInfo});for(let b of this.inner.resourceLoader.getSkills().skills)a.push({name:`skill:${b.name}`,description:b.description,source:"skill",sourceInfo:b.sourceInfo});return{commands:a}}case"set_tools":{let b=a.toolNames;if((0,p.ph)(this.inner.sessionManager.getEntries()))throw Error("Subagent tool selection is fixed by its profile");return this.setForceEmptySystemPrompt(0===b.length),this.inner.setActiveToolsByName(D(this.inner,b)),this.applyForcedEmptySystemPrompt(),null}case"reload":return await this.waitForExtensionsBound(),this.extensionStatuses.clear(),this.resetExtensionWidgetsForReload(),this.syncProjectTrust(),await this.inner.reload(),"function"!=typeof this.inner.bindExtensions&&this.inner.extensionRunner.setUIContext?.(this.createExtensionUiContext(),"rpc"),this.applyForcedEmptySystemPrompt(),(0,k.kn)(),{success:!0};case"abort_compaction":return this.inner.abortCompaction(),null;case"extension_ui_response":return this.resolveExtensionUiResponse(a),null;case"extension_ui_input":return this.handleExtensionUiInput(a.id,a.data),null;case"set_auto_retry":return this.inner.setAutoRetryEnabled(a.enabled),null;case"bash":{if(this.pendingPromptCount>0||this.inner.isStreaming||this.inner.isCompacting||this.inner.isBashRunning)throw Error("Cannot run a shell command while the session is busy");let b=this.inner.executeBash(a.command,void 0,{excludeFromContext:a.excludeFromContext,operations:(0,m.J1)({shellPath:this.inner.settingsManager.getShellPath()})});try{return await b}finally{this.resetIdleTimer(),(0,t.mD)()}}case"abort_bash":return this.inner.abortBash(),null;default:throw Error(`Unsupported command: ${b}`)}}destroy(){if(this._alive){for(let a of(this._alive=!1,this.idleTimer&&clearTimeout(this.idleTimer),this.inner.isBashRunning&&this.inner.abortBash(),this.unsubscribe?.(),this.pendingUiResponses.values()))a.cancel();for(let a of Array.from(this.activeCustomUis.keys()))this.closeCustomUi(a,void 0);this.pendingUiResponses.clear(),this.pendingUiRequests.clear(),this.clearExtensionWidgets(!1);try{this.inner.dispose()}finally{this.onDestroyCallback?.()}}}async shutdown(){return this.shutdownPromise?this.shutdownPromise:this._alive?(this.shutdownPromise=(async()=>{try{try{await this.waitForExtensionsBound()}catch(a){console.error("[pi-web] extension binding failed before session shutdown:",a instanceof Error?a.message:a)}await this.inner.extensionRunner.emit?.({type:"session_shutdown",reason:"quit"})}finally{this.destroy()}})(),this.shutdownPromise):void 0}resolveExtensionUiResponse(a){let b=this.pendingUiResponses.get(a.id);b&&b.resolve(a)}getExtensionStatuses(){return Array.from(this.extensionStatuses,([a,b])=>({key:a,text:b}))}getExtensionWidgets(){return Array.from(this.extensionWidgets.values())}nextExtensionWidgetGeneration(a){let b=(this.extensionWidgetGenerations.get(a)??0)+1;return this.extensionWidgetGenerations.set(a,b),b}disposeExtensionWidgetComponent(a){if(!a||"object"!=typeof a&&"function"!=typeof a)return;let b=a.dispose;if("function"==typeof b)try{b.call(a)}catch{}}emitExtensionWidgetClear(a){this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setWidget",widgetKey:a,widgetLines:void 0,widgetPlacement:void 0})}clearExtensionWidget(a,b=!0){let c=this.nextExtensionWidgetGeneration(a),d=this.activeExtensionWidgets.get(a);return this.activeExtensionWidgets.delete(a),this.extensionWidgets.delete(a),d&&this.disposeExtensionWidgetComponent(d.component),this.extensionWidgetGenerations.get(a)!==c||b&&this.emitExtensionWidgetClear(a),c}clearExtensionWidgets(a){for(let b of new Set([...this.extensionWidgets.keys(),...this.activeExtensionWidgets.keys()]))this.clearExtensionWidget(b,a)}resetExtensionWidgetsForReload(){this.extensionWidgetsResetting=!0;try{for(let a of[...this.activeExtensionWidgets.keys()])this.clearExtensionWidget(a);this.extensionWidgets.clear()}finally{this.extensionWidgetsResetting=!1}}emitExtensionWidgetError(a,b){this.emit({type:"extension_error",extensionPath:`extension-widget:${a}`,event:"setWidget",error:b instanceof Error?b.message:String(b)})}failExtensionWidget(a,b,c,d,e){if(this.extensionWidgetGenerations.get(a)!==b)return void this.disposeExtensionWidgetComponent(e);let f=this.activeExtensionWidgets.get(a),g=!d;f?.generation===b?(g=f.rendered||!f.clearEmitted,this.activeExtensionWidgets.delete(a),this.disposeExtensionWidgetComponent(f.component)):this.disposeExtensionWidgetComponent(e),this.extensionWidgetGenerations.get(a)!==b||(this.extensionWidgets.delete(a),g&&this.emitExtensionWidgetClear(a)),this.emitExtensionWidgetError(a,c)}renderExtensionWidget(a){let b;if(this.activeExtensionWidgets.get(a.key)!==a||this.extensionWidgetGenerations.get(a.key)!==a.generation)return;try{b=a.component.render(B.p1)}catch(b){this.failExtensionWidget(a.key,a.generation,b,a.clearEmitted);return}if(!Array.isArray(b)||!b.every(a=>"string"==typeof a))return void this.failExtensionWidget(a.key,a.generation,Error("Extension widget render must return string[]"),a.clearEmitted);if(this.activeExtensionWidgets.get(a.key)!==a||this.extensionWidgetGenerations.get(a.key)!==a.generation)return;let c=b;this.extensionWidgets.set(a.key,{key:a.key,lines:c,placement:a.placement}),a.rendered=!0,this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setWidget",widgetKey:a.key,widgetLines:c,widgetPlacement:a.placement})}setExtensionWidgetFactory(a,b,c){let d,e=this.extensionWidgets.has(a)||this.activeExtensionWidgets.has(a),f=this.clearExtensionWidget(a,e);if(this.extensionWidgetGenerations.get(a)!==f)return;let g=(0,B.TQ)(()=>{let b=this.activeExtensionWidgets.get(a);b?.generation===f&&this.renderExtensionWidget(b)},B.p1);try{d=b(g,N)}catch(b){this.failExtensionWidget(a,f,b,e);return}if(this.extensionWidgetGenerations.get(a)!==f)return void this.disposeExtensionWidgetComponent(d);if(!d||"object"!=typeof d&&"function"!=typeof d||"function"!=typeof d.render)return void this.failExtensionWidget(a,f,Error("Extension widget factory must return a component with render(width)"),e,d);let h={key:a,component:d,placement:c?.placement??"aboveEditor",generation:f,clearEmitted:e,rendered:!1};this.activeExtensionWidgets.set(a,h),this.renderExtensionWidget(h)}getCustomUiWidth(a){if(!a||"object"!=typeof a)return B.p1;let b=a.overlayOptions,c="function"==typeof b?b():b;if(!c||"object"!=typeof c)return B.p1;let d=c.width;return"number"==typeof d&&Number.isFinite(d)?Math.max(40,Math.min(140,Math.round(d))):92}emitCustomUiRender(a,b){let c;try{c=b.component.render(b.width)}catch(a){c=[`Extension custom UI render failed: ${a instanceof Error?a.message:String(a)}`]}let d={type:"extension_ui_request",id:a,method:"custom",lines:c};this.pendingUiRequests.set(a,d),this.emit(d)}closeCustomUi(a,b){let c=this.activeCustomUis.get(a);if(c&&!c.settled){c.settled=!0,this.activeCustomUis.delete(a),this.pendingUiRequests.delete(a);try{c.component.dispose?.()}catch{}this.emit({type:"extension_ui_request",id:a,method:"custom",lines:[],closed:!0}),c.resolve(b)}}handleExtensionUiInput(a,b){let c=this.activeCustomUis.get(a);if(c&&"string"==typeof b)try{c.component.handleInput?.(b),this.activeCustomUis.has(a)&&this.emitCustomUiRender(a,c)}catch(b){this.closeCustomUi(a,void 0),this.emit({type:"extension_error",extensionPath:`custom-ui:${a}`,event:"custom_ui_input",error:b instanceof Error?b.message:String(b)})}}requestExtensionCustomUi(a,b){if("function"!=typeof a)return Promise.resolve(void 0);let c=(0,g.randomUUID)(),d=this.getCustomUiWidth(b);return new Promise(b=>{let e=!1,f=(0,B.TQ)(()=>{let a=this.activeCustomUis.get(c);a&&this.emitCustomUiRender(c,a)},d),g=a=>{e||(e=!0,b(a))},h=a=>{this.activeCustomUis.has(c)?this.closeCustomUi(c,a):g(a)};Promise.resolve().then(()=>a(f,N,O,h)).then(a=>{if(e){try{a?.dispose?.()}catch{}return}if(!a||"object"!=typeof a||"function"!=typeof a.render)return void g(void 0);let b={component:a,width:d,resolve:a=>g(a),settled:!1};this.activeCustomUis.set(c,b),this.emitCustomUiRender(c,b)}).catch(a=>{e||(this.emit({type:"extension_error",extensionPath:`custom-ui:${c}`,event:"custom_ui",error:a instanceof Error?a.message:String(a)}),g(void 0))})})}requestExtensionUi(a,b,c,d,e){if(e?.aborted)return Promise.resolve(b);let f=(0,g.randomUUID)(),h={type:"extension_ui_request",id:f,...a,...d?{timeout:d,expiresAt:Date.now()+d}:{}};return new Promise(a=>{let g,i=()=>{g&&clearTimeout(g),e?.removeEventListener("abort",k),this.pendingUiRequests.delete(f),this.pendingUiResponses.delete(f)},j=b=>{i(),a(b)},k=()=>j(b);d&&(g=setTimeout(()=>j(b),d)),e?.addEventListener("abort",k,{once:!0}),this.pendingUiRequests.set(f,h),this.pendingUiResponses.set(f,{resolve:a=>j(c(a)),cancel:()=>j(b)}),this.emit(h)})}createExtensionUiContext(){return{select:(a,b,c)=>this.requestExtensionUi({method:"select",title:a,options:b,...c?.timeout?{timeout:c.timeout}:{}},void 0,a=>"value"in a?a.value:void 0,c?.timeout,c?.signal),confirm:(a,b,c)=>this.requestExtensionUi({method:"confirm",title:a,message:b,...c?.timeout?{timeout:c.timeout}:{}},!1,a=>"confirmed"in a&&a.confirmed,c?.timeout,c?.signal),input:(a,b,c)=>this.requestExtensionUi({method:"input",title:a,...void 0!==b?{placeholder:b}:{},...c?.timeout?{timeout:c.timeout}:{}},void 0,a=>"value"in a?a.value:void 0,c?.timeout,c?.signal),editor:(a,b,c)=>this.requestExtensionUi({method:"editor",title:a,...void 0!==b?{prefill:b}:{},...c?.timeout?{timeout:c.timeout}:{}},void 0,a=>"value"in a?a.value:void 0,c?.timeout,c?.signal),notify:(a,b)=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"notify",message:a,notifyType:b})},onTerminalInput:()=>()=>{},setStatus:(a,b)=>{void 0===b?this.extensionStatuses.delete(a):this.extensionStatuses.set(a,b),this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setStatus",statusKey:a,statusText:b})},setWorkingMessage:()=>{},setWorkingVisible:()=>{},setWorkingIndicator:()=>{},setHiddenThinkingLabel:()=>{},setWidget:(a,b,c)=>{if(!this._alive||this.extensionWidgetsResetting)return;if("function"==typeof b)return void this.setExtensionWidgetFactory(a,b,c);if(void 0!==b&&!Array.isArray(b))return;if(void 0===b)return void this.clearExtensionWidget(a);let d=this.activeExtensionWidgets.has(a)?this.clearExtensionWidget(a):this.nextExtensionWidgetGeneration(a);this.extensionWidgetGenerations.get(a)===d&&(this.extensionWidgets.set(a,{key:a,lines:b,placement:c?.placement??"aboveEditor"}),this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setWidget",widgetKey:a,widgetLines:b,widgetPlacement:c?.placement}))},setFooter:()=>{},setHeader:()=>{},setTitle:a=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setTitle",title:a})},custom:(a,b)=>this.requestExtensionCustomUi(a,b),pasteToEditor:a=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"set_editor_text",text:a})},setEditorText:a=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"set_editor_text",text:a})},getEditorText:()=>"",addAutocompleteProvider:()=>{},setEditorComponent:()=>{},getEditorComponent:()=>void 0,get theme(){return N},getAllThemes:()=>[],getTheme:()=>void 0,setTheme:()=>({success:!1,error:"Theme switching is not supported in Pi Web extension UI yet"}),getToolsExpanded:()=>!1,setToolsExpanded:()=>{}}}createExtensionCommandContextActions(){return{waitForIdle:async()=>{let a=this.inner.agent;await a.waitForIdle?.()},newSession:async()=>({cancelled:!0}),fork:async()=>({cancelled:!0}),navigateTree:async(a,b)=>({cancelled:(await this.inner.navigateTree(a,{summarize:b?.summarize})).cancelled}),switchSession:async()=>({cancelled:!0}),reload:async()=>{this.extensionStatuses.clear(),this.resetExtensionWidgetsForReload(),this.syncProjectTrust(),await this.inner.reload({beforeSessionStart:()=>{this.inner.extensionRunner.setUIContext?.(this.createExtensionUiContext(),"rpc")}}),this.applyForcedEmptySystemPrompt()}}}syncProjectTrust(){let a=(0,z.Y1)(this.cwd,(0,e.getAgentDir)());this.inner.settingsManager.setProjectTrusted(a.trusted)}}function E(){if(!globalThis.__piSessions){globalThis.__piSessions=new Map;let a=()=>globalThis.__piSessions?.forEach(a=>a.destroy());process.once("exit",a),process.once("SIGINT",a),process.once("SIGTERM",a)}return globalThis.__piSessions}async function F(a,b){let c=a.getSessionFile();if(!c||(0,h.existsSync)(c))return;let d=a.getHeader();if(!d)return;let e=[d,...a.getEntries()].map(a=>JSON.stringify(a)).join("\n")+"\n";(0,h.writeFileSync)(c,e,{encoding:"utf8",flag:"wx"}),a.flushed=!0,(0,t.O8)(b,c);let f=a.getCwd();try{let a=await (0,w.KI)(f??"");(0,x.YH)(b,{path:c,cwd:f??"",projectKey:(0,v.z)(a?.projectRoot??f??"")})}catch{}}function G(a){return E().get(a)}function H(){let a=new Set;for(let[b,c]of E())c.isRunning()&&a.add(c.sessionId||b);return[...a]}async function I(a,b,c,d={}){let f,g,j,{toolNames:q,initialModel:u,thinkingLevel:v}=d,w=E(),x=(globalThis.__piStartLocks||(globalThis.__piStartLocks=new Map),globalThis.__piStartLocks),y=w.get(a);if(y?.isAlive())return{session:y,realSessionId:a};let B=x.get(a);if(B)return B;if(b)f=e.SessionManager.open(b,void 0);else{if(!c)throw Error("cwd is required for a new session");let b=a.length>0&&!a.startsWith("__");f=e.SessionManager.create(c,void 0,b?{id:a}:void 0),b&&await F(f,a)}let C=f.getCwd(),G=(globalThis.__piStartingSessionCwds||(globalThis.__piStartingSessionCwds=new Map),g=globalThis.__piStartingSessionCwds,j=function(a){let b=(0,i.resolve)(a);try{return(0,h.realpathSync)(b)}catch{return b}}(C),g.set(j,(g.get(j)??0)+1),()=>{let a=(g.get(j)??1)-1;a>0?g.set(j,a):g.delete(j)}),H=(async()=>{let a=b?(0,p.ph)(f.getEntries()):null,c=!!(a?.loadExtensions||a?.loadSkills),d=a?0===a.tools.length&&!c:q?.length===0;d||(0,e.initTheme)();let g=(0,e.getAgentDir)(),h=a?.tools;a||void 0===q||(h=0===q.length?[]:void 0);let i=(0,z.Fk)(C,g),j=e.SettingsManager.create(C,g),x=await (0,e.createAgentSessionServices)({cwd:C,agentDir:g,settingsManager:j,resourceLoaderOptions:a?{noExtensions:!a.loadExtensions,noSkills:!a.loadSkills,noPromptTemplates:!0,noThemes:!0,noContextFiles:!0,systemPrompt:" ",appendSystemPrompt:a.appendSystemPrompt}:d?s.M:{extensionFactories:[(0,m.eD)({cwd:C,settings:j}),(0,n.U)(),(0,o.Vj)(Q.extensionRuntime,()=>(0,p.IR)(C),r.N)],extensionsOverride:a=>(0,m.Ds)((0,o.U6)(a))},...i?{resourceLoaderReloadOptions:i}:{}}),y=await (0,l.p)(x.modelRuntime,x.settingsManager.getEnabledModels()),B=x.settingsManager.getDefaultProvider(),E=x.settingsManager.getDefaultModel(),F=f.getBranch().some(a=>"message"===a.type)?{scopedModels:[...y.scopedModels]}:(0,l.I)(y,{...u?{requestedModel:u}:{},...B&&E?{defaultModel:{provider:B,modelId:E}}:{},...v?{thinkingLevel:v}:{}}),{session:G}=await (0,e.createAgentSessionFromServices)({services:x,sessionManager:f,...F.model?{model:F.model}:{},...F.thinkingLevel?{thinkingLevel:F.thinkingLevel}:{},...F.scopedModels.length>0?{scopedModels:F.scopedModels}:{},...void 0!==h?{tools:h}:{}});(await (0,A.o)(x.settingsManager,{...u?{model:u}:{},...v?{thinkingLevel:v}:{}},{...G.model?{model:{provider:G.model.provider,modelId:G.model.id}}:{},thinkingLevel:G.thinkingLevel,supportsThinking:G.supportsThinking()})).modelDefaultChanged&&(0,k.kn)(),q&&q.length>0&&G.setActiveToolsByName(D(G,q));let H=new P(G);q?.length===0&&H.setForceEmptySystemPrompt(!0),H.start();let I=G.sessionId,J=G.sessionFile;return J&&(0,t.O8)(I,J),H.onDestroy(()=>w.delete(I)),w.set(I,H),d||H.beginExtensionBinding({forceEmptySystemPrompt:q?.length===0}),{session:H,realSessionId:I}})().finally(()=>{x.delete(a),G()});return x.set(a,H),H}let Q=(0,q.s)({getSession:a=>E().get(a),registerSession:(a,b)=>{let c=new P(a,{...b?.exactSystemPrompt!==void 0?{exactSystemPrompt:()=>b.exactSystemPrompt}:{},chatOnly:b?.chatOnly}),d=a.sessionId,e=a.sessionFile;e&&(0,t.O8)(d,e),c.onDestroy(()=>E().delete(d)),E().set(d,c),c.start(),c.isChatOnly()||c.beginExtensionBinding()},reopenSession:async(a,b)=>(await I(a,b,void 0)).session,resolveSessionPath:t.os,invalidateSessionList:t.mD,isBuiltInSubagentsEnabled:r.N});d()}catch(a){d(a)}})},12817:a=>{"use strict";a.exports=function(a){if(null===a||"object"!=typeof a)return a;if(a instanceof Object)var c={__proto__:b(a)};else var c=Object.create(null);return Object.getOwnPropertyNames(a).forEach(function(b){Object.defineProperty(c,b,Object.getOwnPropertyDescriptor(a,b))}),c};var b=Object.getPrototypeOf||function(a){return a.__proto__}},12969:(a,b,c)=>{"use strict";c(55511),c(29021),c(33873)},13884:(a,b,c)=>{"use strict";let d=c(93329);a.exports={toPromise:function(a){return(...b)=>new Promise((c,d)=>{b.push((a,b)=>{a?d(a):c(b)}),a(...b)})},toSync:function(a){return(...b)=>{let c,d;if(b.push((a,b)=>{c=a,d=b}),a(...b),c)throw c;return d}},toSyncOptions:function(a){var b;let c;if((a={...a}).fs=(c={...b=a.fs||d},["mkdir","realpath","stat","rmdir","utimes"].forEach(a=>{c[a]=(...c)=>{let d,e=c.pop();try{d=b[`${a}Sync`](...c)}catch(a){return e(a)}e(null,d)}}),c),"number"==typeof a.retries&&a.retries>0||a.retries&&"number"==typeof a.retries.retries&&a.retries.retries>0)throw Object.assign(Error("Cannot use retries with the sync api"),{code:"ESYNC"});return a}}},14916:(a,b,c)=>{"use strict";c.d(b,{C1:()=>e,G1:()=>f,kU:()=>d});let d=["read","grep","find","ls"],e=["bash","read","edit","write","grep","find","ls"],f=["read","bash","edit","write","grep","find","ls"]},15253:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Fk:()=>h,Y1:()=>g});var e=c(75430),f=a([e]);function g(a,b){if(!(a&&(0,e.hasTrustRequiringProjectResources)(a)))return{requiresTrust:!1,trusted:!0};let c=new e.ProjectTrustStore(b);return{requiresTrust:!0,trusted:!0===c.get(a)}}function h(a,b){if(!g(a,b).requiresTrust)return;let c=new e.ProjectTrustStore(b);return{resolveProjectTrust:async()=>!0===c.get(a)}}e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},16176:a=>{"use strict";let b=Symbol();a.exports.probe=function(a,c,d){let e=c[b];if(e)return c.stat(a,(a,b)=>{if(a)return d(a);d(null,b.mtime,e)});let f=new Date(1e3*Math.ceil(Date.now()/1e3)+5);c.utimes(a,f,f,e=>{if(e)return d(e);c.stat(a,(a,e)=>{if(a)return d(a);let f=e.mtime.getTime()%1e3==0?"s":"ms";Object.defineProperty(c,b,{value:f}),d(null,e.mtime,f)})})},a.exports.getMtime=function(a){let b=Date.now();return"s"===a&&(b=1e3*Math.ceil(b/1e3)),new Date(b)}},16983:(a,b,c)=>{"use strict";c.d(b,{Wv:()=>h,jN:()=>j,vH:()=>i});var d=c(29021),e=c(33873),f=c(83739),g=c(15011);let h=8;function i(a,b){if(b.length>h)throw Error(`Agent input_files accepts at most ${h} files`);let c=(0,d.realpathSync)(a),i=new Set([c]),j=new TextDecoder("utf-8",{fatal:!0}),k=new Set,l=[],m=0;for(let h of b){let b,n;if(!h.trim())throw Error("Agent input_files paths must not be empty");try{b=(0,d.realpathSync)((0,e.resolve)(a,h))}catch{throw Error(`Agent input file does not exist: ${h}`)}if(!(0,f.o)(b,i))throw Error(`Agent input file is outside the session cwd: ${h}`);if(!(0,d.statSync)(b).isFile())throw Error(`Agent input path is not a file: ${h}`);if(k.has(b))continue;k.add(b);let o=(0,d.readFileSync)(b);if((m+=o.byteLength)>524288)throw Error("Agent input_files exceeds the 524288-byte total limit");try{n=j.decode(o)}catch{throw Error(`Agent input file is not valid UTF-8 text: ${h}`)}l.push({path:(0,g.W3)((0,e.relative)(c,b)),content:n})}return l}function j(a,b){if(0===b.length)return a;let c=b.map(a=>`<document path=${JSON.stringify(a.path)}>
4
+ ${(g=i.filter(a=>a.enabled),0===g.length?"No subagent profiles are currently enabled.":g.map(a=>{let b=[`Tools: ${a.tools.length>0?a.tools.join(", "):"none"}`];return a.model&&b.push(`Model: ${a.model}`),`- ${a.name}: ${a.description} (${b.join("; ")})`}).join("\n"))}`,promptSnippet:"Delegate a focused task to an inspectable subagent session",promptGuidelines:["Use Agent for a focused task that benefits from an isolated context.","Use multiple background Agent calls in the same response for independent parallel work.","Do not duplicate work already delegated to a running subagent."],executionMode:"parallel",parameters:e.Type.Object({subagent_type:e.Type.Optional(e.Type.String({description:`Configured agent profile. Available types: ${m}. Default: general-purpose.`})),prompt:e.Type.String({description:"The complete task for the subagent."}),resume:e.Type.Optional(e.Type.String({description:"Existing subagent session ID to continue instead of creating a new session."})),input_files:e.Type.Optional(e.Type.Array(e.Type.String(),{description:"UTF-8 text files under the session cwd to include with the task.",maxItems:h.Wv})),description:e.Type.String({description:"Short activity label shown in the UI."}),run_in_background:e.Type.Optional(e.Type.Boolean({description:"Return immediately and notify this session when complete."})),model:e.Type.Optional(e.Type.String({description:"Optional provider/modelId override."})),thinking:e.Type.Optional(e.Type.String({description:"Optional thinking level override."})),max_turns:e.Type.Optional(e.Type.Number({description:"Optional positive agent turn limit."})),inherit_context:e.Type.Optional(e.Type.Boolean({description:"Include the parent session's active conversation context."})),isolation:e.Type.Optional(e.Type.String({description:"Run the subagent in an isolated git worktree."}))}),async execute(b,c,d,e,f){try{let g=c.resume?.trim(),h=g?await a.resume({parentContext:f,parentToolCallId:b,sessionId:g,task:c.prompt,description:c.description,...void 0!==c.run_in_background?{runInBackground:c.run_in_background}:{},signal:d,onUpdate:a=>e?.({content:[{type:"text",text:`${a.profile}: ${a.description} (${a.status})`}],details:j(a)})}):await a.start({parentContext:f,parentToolCallId:b,profile:c.subagent_type??"general-purpose",task:c.prompt,...c.input_files?{inputFiles:c.input_files}:{},description:c.description,...void 0!==c.run_in_background?{runInBackground:c.run_in_background}:{},...c.model?{model:c.model}:{},...c.thinking?{thinking:c.thinking}:{},...c.max_turns?{maxTurns:c.max_turns}:{},...void 0!==c.inherit_context?{inheritContext:c.inherit_context}:{},..."worktree"===c.isolation?{isolation:"worktree"}:{},signal:d,onUpdate:a=>e?.({content:[{type:"text",text:`${a.profile}: ${a.description} (${a.status})`}],details:j(a)})});if(h.run.runInBackground)return h.completion.then(b=>a.notifyParent(b)).catch(a=>{console.error("[pi-web] failed to deliver subagent completion:",a instanceof Error?a.message:a)}),{content:[{type:"text",text:`Subagent started in background. Session ID: ${h.run.sessionId}. You will be notified when it completes.`}],details:j(h.run)};let i=await h.completion;return{content:[{type:"text",text:k(i)}],details:j(i),..."failed"===i.status?{isError:!0}:{}}}catch(a){return{content:[{type:"text",text:a instanceof Error?a.message:String(a)}],details:void 0,isError:!0}}}})),d.registerTool((0,f.defineTool)({name:"get_subagent_result",label:"Get agent result",description:"Check an inspectable subagent session and retrieve its latest result.",parameters:e.Type.Object({agent_id:e.Type.String({description:"Subagent session ID."}),wait:e.Type.Optional(e.Type.Boolean({description:"Wait until the subagent finishes."}))}),async execute(b,c,d){let e=await a.get(c.agent_id);if(!e)return{content:[{type:"text",text:`Subagent not found: ${c.agent_id}`}],details:void 0,isError:!0};for(;c.wait&&("starting"===e.status||"running"===e.status);)if(await new Promise((a,b)=>{let c=()=>{clearTimeout(e),b(Error("Result wait aborted"))},e=setTimeout(()=>{d?.removeEventListener("abort",c),a()},500);d?.aborted?c():d?.addEventListener("abort",c,{once:!0})}),!(e=await a.get(c.agent_id)))return{content:[{type:"text",text:`Subagent not found: ${c.agent_id}`}],details:void 0,isError:!0};return{content:[{type:"text",text:k(e)}],details:j(e),..."failed"===e.status?{isError:!0}:{}}}})),d.registerTool((0,f.defineTool)({name:"steer_subagent",label:"Steer agent",description:"Send a steering message to a currently running subagent session.",parameters:e.Type.Object({agent_id:e.Type.String({description:"Subagent session ID."}),message:e.Type.String({description:"Instruction to inject after the current tool execution."})}),async execute(b,c){try{return await a.steer(c.agent_id,c.message),{content:[{type:"text",text:`Steering message sent to ${c.agent_id}.`}],details:void 0}}catch(a){return{content:[{type:"text",text:a instanceof Error?a.message:String(a)}],details:void 0,isError:!0}}}}))}}}function m(a){let b=a.extensions.find(a=>a.path===o);if(!b?.tools.has("Agent"))return a;let c=new Set(a.extensions.filter(a=>a.path!==o).filter(a=>{let b=(a.sourceInfo?.source??"").replace(/^npm:/,"").split("@")[0],c=a.path.replaceAll("\\","/").split("/");return b===q||c.some(a=>a===q)}).filter(a=>[...p].some(b=>a.tools.has(b))).map(a=>a.path));return 0===c.size?a:{...a,extensions:a.extensions.filter(a=>!c.has(a.path)),errors:a.errors.filter(a=>!c.has(a.path)&&(a.path!==o||![...c].some(b=>[...p].some(c=>a.error===`Tool "${c}" conflicts with ${b}`))))}}d()}catch(a){d(a)}})},12144:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{A4:()=>I,HG:()=>J,OF:()=>K});var e=c(75430),f=c(29862),g=c(55511),h=c(29021),i=c(33873),j=c(18437),k=c(88250),l=c(96515),m=c(81186),n=c(87509),o=c(8084),p=c(41035),q=c(84851),r=c(70274),s=c(32302),t=c(69453),u=c(16525),v=c(99595),w=c(9210),x=c(7535),y=c(88002),z=c(65562),A=c(47128),B=c(15253),C=c(61577),D=c(57856),E=a([e,f,l,m,n,o,p,q,r,t,u,w,z,A,B]);[e,f,l,m,n,o,p,q,r,t,u,w,z,A,B]=E.then?(await E)():E;let L=new Set(["agent_end","agent_settled","auto_compaction_end","compaction_end"]),M=function(a=process.env.PI_WEB_IDLE_TIMEOUT_MS){if(void 0!==a&&""!==a.trim()){let b=Number(a);if(Number.isFinite(b)&&b>=0&&b<=0x7fffffff)return b;console.warn(`[pi-web] invalid PI_WEB_IDLE_TIMEOUT_MS "${a}", falling back to 10 minutes`)}return 6e5}(),N=["read","bash","edit","write","grep","find","ls"];class O extends e.Theme{constructor(){super({thinkingXhigh:"",searchMatchText:""},{selectedBg:""},"truecolor")}fg(...[,a]){return a}bg(...[,a]){return a}bold(a){return a}italic(a){return a}underline(a){return a}inverse(a){return a}strikethrough(a){return a}getFgAnsi(){return""}getBgAnsi(){return""}getThinkingBorderColor(){return a=>a}getBashModeBorderColor(){return a=>a}}let P=new O,Q=new f.KeybindingsManager(f.TUI_KEYBINDINGS);function F(a,b){if(0===b.length)return[];let c=new Set(N),d=a.getAllTools().map(a=>a.name).filter(a=>!c.has(a));return[...new Set([...b,...d])]}class R{constructor(a,b={}){this.inner=a,this.listeners=[],this.pendingUiResponses=new Map,this.pendingUiRequests=new Map,this.activeCustomUis=new Map,this.extensionStatuses=new Map,this.extensionWidgets=new Map,this.activeExtensionWidgets=new Map,this.extensionWidgetGenerations=new Map,this.extensionWidgetsResetting=!1,this.pendingPromptCount=0,this.promptAdmissionTail=Promise.resolve(),this.extensionsBound=!1,this.extensionBindingPromise=null,this.extensionBindingError=null,this.forceEmptySystemPrompt=!1,this.unsubscribe=null,this.idleTimer=null,this.onDestroyCallback=null,this.shutdownPromise=null,this._alive=!0,this.lastAgentStart=0,this.activityTracker=(0,v.S)(),this.exactSystemPrompt=b.exactSystemPrompt,this.chatOnly=b.chatOnly??!1,this.installExactSystemPromptContinuation(),this.applyExactSystemPrompt()}hasPendingUiRequest(){return this.pendingUiRequests.size>0}lastAgentStartAt(){return this.lastAgentStart}get sessionId(){return this.inner.sessionId}get sessionFile(){return this.inner.sessionFile??""}get cwd(){return this.inner.sessionManager.getCwd()}get streamingMessage(){return this.inner.agent.state?.streamingMessage}get isStreaming(){return this.inner.isStreaming}isAlive(){return this._alive}isChatOnly(){return this.chatOnly}isRunning(){return this._alive&&(this.pendingPromptCount>0||this.inner.isStreaming||this.inner.isCompacting||this.inner.isBashRunning)}start(){this.unsubscribe=this.inner.subscribe(a=>{"agent_start"===a.type&&(this.lastAgentStart=Date.now()),"agent_end"===a.type&&(0,t.mD)(),L.has(a.type)&&this.resetIdleTimer();try{this.persistSessionActivity(a)}catch(b){console.error(`[pi-web] 会话活跃写库失败(${a.type}):`,b instanceof Error?b.message:String(b))}this.emit(a)}),this.resetIdleTimer()}persistSessionActivity(a){let b=this.activityTracker.handle(a);if(!b)return;let c=this.inner.sessionId;if(c){if("touch"===b.kind)return void(0,z.xE)(c);(0,z.YZ)(c,b),(0,z.HO)(c,function(a){for(let b of a){if(b?.type!=="message"||b.message?.role!=="user")continue;let a=(function(a){if("bashExecution"===a.message.role)return"";let b=a.message.content;return"string"==typeof b?b:b.map(a=>"text"===a.type?a.text:"").filter(Boolean).join(" ")})(b).trim();if(a)return a.slice(0,w.XK)}return""}(this.inner.sessionManager.getEntries()))}}setForceEmptySystemPrompt(a){this.forceEmptySystemPrompt=a,this.applyForcedEmptySystemPrompt()}beginExtensionBinding(a={}){this.ensureExtensionsBound(a).catch(a=>{console.error("[pi-web] failed to dispatch session_start to extensions:",a instanceof Error?a.message:a)})}async waitUntilReady(){await this.waitForExtensionsBound()}applyExactSystemPrompt(){this.exactSystemPrompt&&this.inner.agent.state&&(this.inner.agent.state.systemPrompt=this.exactSystemPrompt())}installExactSystemPromptContinuation(){if(!this.exactSystemPrompt)return;let a=this.inner.agent.prepareNextTurnWithContext;this.inner.agent.prepareNextTurnWithContext=async(b,c)=>{let d=await a?.(b,c);return{...d,context:{...d?.context??b.context,systemPrompt:this.exactSystemPrompt()}}}}ensureExtensionsBound(a={}){return(a.forceEmptySystemPrompt&&(this.forceEmptySystemPrompt=!0),this.extensionsBound)?(this.applyForcedEmptySystemPrompt(),this.applyExactSystemPrompt(),Promise.resolve()):(this.extensionBindingPromise||(this.extensionBindingError=null,this.extensionBindingPromise=(async()=>{if(!this._alive)return;let a=this.createExtensionUiContext();if("function"==typeof this.inner.bindExtensions){let b=this.inner.bindExtensions;await b.call(this.inner,{uiContext:a,mode:"rpc",commandContextActions:this.createExtensionCommandContextActions(),shutdownHandler:()=>this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"notify",notifyType:"warning",message:"Extension requested shutdown, but shutdown is not supported in Pi Web."}),onError:a=>this.emit({type:"extension_error",extensionPath:a.extensionPath,event:a.event,error:a.error})})}else this.inner.extensionRunner.setUIContext?.(a,"rpc");this.extensionsBound=!0,this.applyForcedEmptySystemPrompt(),this.applyExactSystemPrompt(),console.log(`[pi-web] session_start dispatched to extensions for session ${this.inner.sessionId}`)})().catch(a=>{throw this.extensionBindingError=a,a})),this.extensionBindingPromise)}async waitForExtensionsBound(){try{this.extensionBindingPromise&&await this.extensionBindingPromise}catch(a){throw a instanceof Error?a:Error(String(a))}if(this.extensionBindingError)throw this.extensionBindingError instanceof Error?this.extensionBindingError:Error(String(this.extensionBindingError))}shouldWaitForExtensions(a){return"prompt"===a||"steer"===a||"follow_up"===a||"get_commands"===a||"get_state"===a}async withFinalRunningNotification(a){try{return await a()}finally{this.resetIdleTimer()}}applyForcedEmptySystemPrompt(){this.forceEmptySystemPrompt&&this.inner.agent.state&&(this.inner.agent.state.systemPrompt="")}emit(a){for(let b of this.listeners)try{b(a)}catch(b){console.error(`[pi-web] failed to deliver ${a.type} event:`,b instanceof Error?b.message:b)}}async acquirePromptAdmission(){let a,b=this.promptAdmissionTail;return this.promptAdmissionTail=new Promise(b=>{a=b}),await b,a}resetIdleTimer(){0!==M&&(this.idleTimer&&clearTimeout(this.idleTimer),this.idleTimer=setTimeout(()=>{this.isRunning()?this.resetIdleTimer():this.shutdown().catch(a=>{console.error("[pi-web] failed to shut down idle session:",a instanceof Error?a.message:a)})},M))}onEvent(a){for(let b of(this.listeners.push(a),this.pendingUiRequests.values()))a(b);return()=>{let b=this.listeners.indexOf(a);-1!==b&&this.listeners.splice(b,1)}}onDestroy(a){this.onDestroyCallback=a}async send(a){this.resetIdleTimer();let b=a.type;if(this.shouldWaitForExtensions(b)&&await this.waitForExtensionsBound(),"prompt"===b||"steer"===b||"follow_up"===b){let b=(0,j.kc)(a.images);if(b)throw Error(b)}switch(b){case"prompt":{let b=await this.acquirePromptAdmission();try{let b,c,d;if(this.inner.isBashRunning)throw Error("Cannot send a prompt while a shell command is running");let e=a.images,f=a.streamingBehavior,g=!1,h=!1,i=!1,j=new Promise((a,d)=>{b=()=>{g=!0,h||(h=!0,a())},c=a=>{h||(h=!0,d(a))}}),k=()=>{i||(i=!0,this.pendingPromptCount=Math.max(0,this.pendingPromptCount-1),this.resetIdleTimer())};this.pendingPromptCount+=1;try{d=this.inner.prompt(a.message,{...e?.length?{images:e}:{},...f?{streamingBehavior:f}:{},source:"rpc",preflightResult:a=>{a&&b()}})}catch(a){throw k(),a}return d.then(()=>{b(),k(),f||this.emit({type:"prompt_done"})},a=>{c(a),k(),(0,t.mD)(),g&&(this.emit({type:"prompt_error",errorMessage:a instanceof Error?a.message:String(a)}),f||this.emit({type:"prompt_done"}))}).catch(a=>{console.error("[pi-web] prompt completion handler failed:",a instanceof Error?a.message:a)}),await j,null}finally{b()}}case"abort":return await this.withFinalRunningNotification(()=>this.inner.abort()),null;case"get_state":{let a=this.inner.model,b=this.inner.getContextUsage();return{sessionId:this.inner.sessionId,sessionFile:this.inner.sessionFile??"",isStreaming:this.inner.isStreaming,isPromptRunning:this.pendingPromptCount>0,isBashRunning:this.inner.isBashRunning,isCompacting:this.inner.isCompacting,autoCompactionEnabled:this.inner.autoCompactionEnabled,autoRetryEnabled:this.inner.autoRetryEnabled,model:a?{id:a.id,provider:a.provider}:void 0,messageCount:0,pendingMessageCount:this.inner.pendingMessageCount,queuedMessages:{steering:[...this.inner.getSteeringMessages()],followUp:[...this.inner.getFollowUpMessages()]},contextUsage:b?{percent:b.percent,contextWindow:b.contextWindow,tokens:b.tokens}:null,systemPrompt:this.inner.agent.state?.systemPrompt??"",thinkingLevel:this.inner.agent.state?.thinkingLevel??"off",extensionStatuses:this.getExtensionStatuses(),extensionWidgets:this.getExtensionWidgets()}}case"set_model":{let{provider:b,modelId:c}=a,d=this.inner.modelRuntime.getModel(b,c);if(d||(await this.inner.modelRuntime.refresh({allowNetwork:!1}),d=this.inner.modelRuntime.getModel(b,c)),!d)throw Error(`Model not found: ${b}/${c}`);return await this.inner.setModel(d),(0,k.kn)(),(0,t.mD)(),{id:d.id,provider:d.provider}}case"fork_branch":{if(this.isRunning())throw Error("Cannot fork while the session is running");let b=a.entryId,c=this.inner.sessionManager,d=this.inner.sessionFile;if(!c.isPersisted())return{cancelled:!0};if(!d)throw Error("Persisted session is missing a session file");if(!c.getEntry(b))throw Error("Invalid entry ID for forking");let f=c.getSessionDir(),g=e.SessionManager.open(d,f),i=g.createBranchedSession(b);if(!i)throw Error("Failed to create forked session");if(!(0,h.existsSync)(i)){let a=[g.getHeader(),...g.getEntries()].map(a=>JSON.stringify(a)).join("\n")+"\n";(0,h.writeFileSync)(i,a,{encoding:"utf8",flag:"wx"}),g.flushed=!0}let j=e.SessionManager.open(i,f).getSessionId();(0,t.O8)(j,i),(0,t.mD)();let k=c.getSessionId();return await (0,u.Pv)(i,k,(0,z.l6)(k)),{cancelled:!1,newSessionId:j}}case"fork":{let b;if(this.inner.isBashRunning)throw Error("Cannot fork while a shell command is running");let c=this.inner.sessionId,d=a.entryId,f=this.inner.sessionManager,g=this.inner.sessionFile;if(!f.isPersisted())return{cancelled:!0};if(!g)throw Error("Persisted session is missing a session file");let i=f.getEntry(d);if(!i)throw Error("Invalid entry ID for forking");let j=f.getSessionDir();if(i.parentId){let a=e.SessionManager.open(g,j),c=a.createBranchedSession(i.parentId);if(!c)throw Error("Failed to create forked session");if(b=c,!(0,h.existsSync)(b)){let c=[a.getHeader(),...a.getEntries()].map(a=>JSON.stringify(a)).join("\n")+"\n";(0,h.writeFileSync)(b,c,{encoding:"utf8",flag:"wx"}),a.flushed=!0}}else{let a=e.SessionManager.create(f.getCwd(),j);a.newSession({parentSession:g}),a.getSessionFile()&&a._rewriteFile(),b=a.getSessionFile()}let k=e.SessionManager.open(b,j).getSessionId();(0,t.O8)(k,b),(0,t.mD)();let l=f.getCwd(),m=(0,z.l6)(c);await this.shutdown();try{let a=await (0,y.KI)(l??"");(0,z.YH)(k,{path:b,cwd:l??"",projectKey:(0,x.z)(a?.projectRoot??l??""),parentId:c,taskId:m})}catch(a){console.error(`[pi-web] fork 建行失败 session=${k}:`,a instanceof Error?a.message:String(a))}try{await (0,A.BC)(c)}catch(a){console.error(`[pi-web] fork 入板失败 source=${c}:`,a instanceof Error?a.message:String(a))}return{cancelled:!1,newSessionId:k}}case"navigate_tree":if(this.inner.isBashRunning)throw Error("Cannot navigate while a shell command is running");return{cancelled:(await this.inner.navigateTree(a.targetId,{})).cancelled};case"set_thinking_level":{let b=a.level;return this.inner.setThinkingLevel(b),"xhigh"===b&&this.inner.model?.compat?.thinkingFormat==="deepseek"&&this.inner.agent?.state&&(this.inner.agent.state.thinkingLevel="xhigh"),(0,t.mD)(),null}case"compact":try{return await this.withFinalRunningNotification(()=>this.inner.compact(a.customInstructions))}finally{(0,t.mD)()}case"set_session_name":{let b=a.name?.trim();if(!b)throw Error("Session name cannot be empty");this.inner.setSessionName(b);try{await (0,z.Bm)(this.inner.sessionId,b)}catch(a){console.error("[pi-web] 会话标题写库失败:",a)}return(0,t.mD)(),null}case"get_session_stats":return{...this.inner.getSessionStats(),sessionName:this.inner.sessionManager.getSessionName()};case"get_last_assistant_text":return{text:this.inner.getLastAssistantText()??""};case"set_auto_compaction":return this.inner.setAutoCompactionEnabled(a.enabled),null;case"clear_queue":return this.inner.clearQueue();case"steer":{let b=a.images;return await this.inner.steer(a.message,b?.length?b:void 0),null}case"follow_up":{let b=a.images;return await this.inner.followUp(a.message,b?.length?b:void 0),null}case"get_tools":{let a=this.inner.getAllTools(),b=new Set(this.inner.getActiveToolNames());return a.map(a=>({...a,active:b.has(a.name)}))}case"get_commands":{let a=[];for(let b of this.inner.extensionRunner.getRegisteredCommands())a.push({name:b.invocationName,description:b.description,source:"extension",sourceInfo:b.sourceInfo});for(let b of this.inner.promptTemplates)a.push({name:b.name,description:b.description,source:"prompt",sourceInfo:b.sourceInfo});for(let b of this.inner.resourceLoader.getSkills().skills)a.push({name:`skill:${b.name}`,description:b.description,source:"skill",sourceInfo:b.sourceInfo});return{commands:a}}case"set_tools":{let b=a.toolNames;if((0,p.ph)(this.inner.sessionManager.getEntries()))throw Error("Subagent tool selection is fixed by its profile");return this.setForceEmptySystemPrompt(0===b.length),this.inner.setActiveToolsByName(F(this.inner,b)),this.applyForcedEmptySystemPrompt(),null}case"reload":return await this.waitForExtensionsBound(),this.extensionStatuses.clear(),this.resetExtensionWidgetsForReload(),this.syncProjectTrust(),await this.inner.reload(),"function"!=typeof this.inner.bindExtensions&&this.inner.extensionRunner.setUIContext?.(this.createExtensionUiContext(),"rpc"),this.applyForcedEmptySystemPrompt(),(0,k.kn)(),{success:!0};case"abort_compaction":return this.inner.abortCompaction(),null;case"extension_ui_response":return this.resolveExtensionUiResponse(a),null;case"extension_ui_input":return this.handleExtensionUiInput(a.id,a.data),null;case"set_auto_retry":return this.inner.setAutoRetryEnabled(a.enabled),null;case"bash":{if(this.pendingPromptCount>0||this.inner.isStreaming||this.inner.isCompacting||this.inner.isBashRunning)throw Error("Cannot run a shell command while the session is busy");let b=this.inner.executeBash(a.command,void 0,{excludeFromContext:a.excludeFromContext,operations:(0,m.J1)({shellPath:this.inner.settingsManager.getShellPath()})});try{return await b}finally{this.resetIdleTimer(),(0,t.mD)()}}case"abort_bash":return this.inner.abortBash(),null;default:throw Error(`Unsupported command: ${b}`)}}destroy(){if(this._alive){for(let a of(this._alive=!1,this.idleTimer&&clearTimeout(this.idleTimer),this.inner.isBashRunning&&this.inner.abortBash(),this.unsubscribe?.(),this.pendingUiResponses.values()))a.cancel();for(let a of Array.from(this.activeCustomUis.keys()))this.closeCustomUi(a,void 0);this.pendingUiResponses.clear(),this.pendingUiRequests.clear(),this.clearExtensionWidgets(!1);try{this.inner.dispose()}finally{this.onDestroyCallback?.()}}}async shutdown(){return this.shutdownPromise?this.shutdownPromise:this._alive?(this.shutdownPromise=(async()=>{try{try{await this.waitForExtensionsBound()}catch(a){console.error("[pi-web] extension binding failed before session shutdown:",a instanceof Error?a.message:a)}await this.inner.extensionRunner.emit?.({type:"session_shutdown",reason:"quit"})}finally{this.destroy()}})(),this.shutdownPromise):void 0}resolveExtensionUiResponse(a){let b=this.pendingUiResponses.get(a.id);b&&b.resolve(a)}getExtensionStatuses(){return Array.from(this.extensionStatuses,([a,b])=>({key:a,text:b}))}getExtensionWidgets(){return Array.from(this.extensionWidgets.values())}nextExtensionWidgetGeneration(a){let b=(this.extensionWidgetGenerations.get(a)??0)+1;return this.extensionWidgetGenerations.set(a,b),b}disposeExtensionWidgetComponent(a){if(!a||"object"!=typeof a&&"function"!=typeof a)return;let b=a.dispose;if("function"==typeof b)try{b.call(a)}catch{}}emitExtensionWidgetClear(a){this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setWidget",widgetKey:a,widgetLines:void 0,widgetPlacement:void 0})}clearExtensionWidget(a,b=!0){let c=this.nextExtensionWidgetGeneration(a),d=this.activeExtensionWidgets.get(a);return this.activeExtensionWidgets.delete(a),this.extensionWidgets.delete(a),d&&this.disposeExtensionWidgetComponent(d.component),this.extensionWidgetGenerations.get(a)!==c||b&&this.emitExtensionWidgetClear(a),c}clearExtensionWidgets(a){for(let b of new Set([...this.extensionWidgets.keys(),...this.activeExtensionWidgets.keys()]))this.clearExtensionWidget(b,a)}resetExtensionWidgetsForReload(){this.extensionWidgetsResetting=!0;try{for(let a of[...this.activeExtensionWidgets.keys()])this.clearExtensionWidget(a);this.extensionWidgets.clear()}finally{this.extensionWidgetsResetting=!1}}emitExtensionWidgetError(a,b){this.emit({type:"extension_error",extensionPath:`extension-widget:${a}`,event:"setWidget",error:b instanceof Error?b.message:String(b)})}failExtensionWidget(a,b,c,d,e){if(this.extensionWidgetGenerations.get(a)!==b)return void this.disposeExtensionWidgetComponent(e);let f=this.activeExtensionWidgets.get(a),g=!d;f?.generation===b?(g=f.rendered||!f.clearEmitted,this.activeExtensionWidgets.delete(a),this.disposeExtensionWidgetComponent(f.component)):this.disposeExtensionWidgetComponent(e),this.extensionWidgetGenerations.get(a)!==b||(this.extensionWidgets.delete(a),g&&this.emitExtensionWidgetClear(a)),this.emitExtensionWidgetError(a,c)}renderExtensionWidget(a){let b;if(this.activeExtensionWidgets.get(a.key)!==a||this.extensionWidgetGenerations.get(a.key)!==a.generation)return;try{b=a.component.render(D.p1)}catch(b){this.failExtensionWidget(a.key,a.generation,b,a.clearEmitted);return}if(!Array.isArray(b)||!b.every(a=>"string"==typeof a))return void this.failExtensionWidget(a.key,a.generation,Error("Extension widget render must return string[]"),a.clearEmitted);if(this.activeExtensionWidgets.get(a.key)!==a||this.extensionWidgetGenerations.get(a.key)!==a.generation)return;let c=b;this.extensionWidgets.set(a.key,{key:a.key,lines:c,placement:a.placement}),a.rendered=!0,this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setWidget",widgetKey:a.key,widgetLines:c,widgetPlacement:a.placement})}setExtensionWidgetFactory(a,b,c){let d,e=this.extensionWidgets.has(a)||this.activeExtensionWidgets.has(a),f=this.clearExtensionWidget(a,e);if(this.extensionWidgetGenerations.get(a)!==f)return;let g=(0,D.TQ)(()=>{let b=this.activeExtensionWidgets.get(a);b?.generation===f&&this.renderExtensionWidget(b)},D.p1);try{d=b(g,P)}catch(b){this.failExtensionWidget(a,f,b,e);return}if(this.extensionWidgetGenerations.get(a)!==f)return void this.disposeExtensionWidgetComponent(d);if(!d||"object"!=typeof d&&"function"!=typeof d||"function"!=typeof d.render)return void this.failExtensionWidget(a,f,Error("Extension widget factory must return a component with render(width)"),e,d);let h={key:a,component:d,placement:c?.placement??"aboveEditor",generation:f,clearEmitted:e,rendered:!1};this.activeExtensionWidgets.set(a,h),this.renderExtensionWidget(h)}getCustomUiWidth(a){if(!a||"object"!=typeof a)return D.p1;let b=a.overlayOptions,c="function"==typeof b?b():b;if(!c||"object"!=typeof c)return D.p1;let d=c.width;return"number"==typeof d&&Number.isFinite(d)?Math.max(40,Math.min(140,Math.round(d))):92}emitCustomUiRender(a,b){let c;try{c=b.component.render(b.width)}catch(a){c=[`Extension custom UI render failed: ${a instanceof Error?a.message:String(a)}`]}let d={type:"extension_ui_request",id:a,method:"custom",lines:c};this.pendingUiRequests.set(a,d),this.emit(d)}closeCustomUi(a,b){let c=this.activeCustomUis.get(a);if(c&&!c.settled){c.settled=!0,this.activeCustomUis.delete(a),this.pendingUiRequests.delete(a);try{c.component.dispose?.()}catch{}this.emit({type:"extension_ui_request",id:a,method:"custom",lines:[],closed:!0}),c.resolve(b)}}handleExtensionUiInput(a,b){let c=this.activeCustomUis.get(a);if(c&&"string"==typeof b)try{c.component.handleInput?.(b),this.activeCustomUis.has(a)&&this.emitCustomUiRender(a,c)}catch(b){this.closeCustomUi(a,void 0),this.emit({type:"extension_error",extensionPath:`custom-ui:${a}`,event:"custom_ui_input",error:b instanceof Error?b.message:String(b)})}}requestExtensionCustomUi(a,b){if("function"!=typeof a)return Promise.resolve(void 0);let c=(0,g.randomUUID)(),d=this.getCustomUiWidth(b);return new Promise(b=>{let e=!1,f=(0,D.TQ)(()=>{let a=this.activeCustomUis.get(c);a&&this.emitCustomUiRender(c,a)},d),g=a=>{e||(e=!0,b(a))},h=a=>{this.activeCustomUis.has(c)?this.closeCustomUi(c,a):g(a)};Promise.resolve().then(()=>a(f,P,Q,h)).then(a=>{if(e){try{a?.dispose?.()}catch{}return}if(!a||"object"!=typeof a||"function"!=typeof a.render)return void g(void 0);let b={component:a,width:d,resolve:a=>g(a),settled:!1};this.activeCustomUis.set(c,b),this.emitCustomUiRender(c,b)}).catch(a=>{e||(this.emit({type:"extension_error",extensionPath:`custom-ui:${c}`,event:"custom_ui",error:a instanceof Error?a.message:String(a)}),g(void 0))})})}requestExtensionUi(a,b,c,d,e){if(e?.aborted)return Promise.resolve(b);let f=(0,g.randomUUID)(),h={type:"extension_ui_request",id:f,...a,...d?{timeout:d,expiresAt:Date.now()+d}:{}};return new Promise(a=>{let g,i=()=>{g&&clearTimeout(g),e?.removeEventListener("abort",k),this.pendingUiRequests.delete(f),this.pendingUiResponses.delete(f)},j=b=>{i(),a(b)},k=()=>j(b);d&&(g=setTimeout(()=>j(b),d)),e?.addEventListener("abort",k,{once:!0}),this.pendingUiRequests.set(f,h),this.pendingUiResponses.set(f,{resolve:a=>j(c(a)),cancel:()=>j(b)}),this.emit(h)})}createExtensionUiContext(){return{select:(a,b,c)=>this.requestExtensionUi({method:"select",title:a,options:b,...c?.timeout?{timeout:c.timeout}:{}},void 0,a=>"value"in a?a.value:void 0,c?.timeout,c?.signal),confirm:(a,b,c)=>this.requestExtensionUi({method:"confirm",title:a,message:b,...c?.timeout?{timeout:c.timeout}:{}},!1,a=>"confirmed"in a&&a.confirmed,c?.timeout,c?.signal),input:(a,b,c)=>this.requestExtensionUi({method:"input",title:a,...void 0!==b?{placeholder:b}:{},...c?.timeout?{timeout:c.timeout}:{}},void 0,a=>"value"in a?a.value:void 0,c?.timeout,c?.signal),editor:(a,b,c)=>this.requestExtensionUi({method:"editor",title:a,...void 0!==b?{prefill:b}:{},...c?.timeout?{timeout:c.timeout}:{}},void 0,a=>"value"in a?a.value:void 0,c?.timeout,c?.signal),notify:(a,b)=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"notify",message:a,notifyType:b})},onTerminalInput:()=>()=>{},setStatus:(a,b)=>{void 0===b?this.extensionStatuses.delete(a):this.extensionStatuses.set(a,b),this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setStatus",statusKey:a,statusText:b})},setWorkingMessage:()=>{},setWorkingVisible:()=>{},setWorkingIndicator:()=>{},setHiddenThinkingLabel:()=>{},setWidget:(a,b,c)=>{if(!this._alive||this.extensionWidgetsResetting)return;if("function"==typeof b)return void this.setExtensionWidgetFactory(a,b,c);if(void 0!==b&&!Array.isArray(b))return;if(void 0===b)return void this.clearExtensionWidget(a);let d=this.activeExtensionWidgets.has(a)?this.clearExtensionWidget(a):this.nextExtensionWidgetGeneration(a);this.extensionWidgetGenerations.get(a)===d&&(this.extensionWidgets.set(a,{key:a,lines:b,placement:c?.placement??"aboveEditor"}),this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setWidget",widgetKey:a,widgetLines:b,widgetPlacement:c?.placement}))},setFooter:()=>{},setHeader:()=>{},setTitle:a=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setTitle",title:a})},custom:(a,b)=>this.requestExtensionCustomUi(a,b),pasteToEditor:a=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"set_editor_text",text:a})},setEditorText:a=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"set_editor_text",text:a})},getEditorText:()=>"",addAutocompleteProvider:()=>{},setEditorComponent:()=>{},getEditorComponent:()=>void 0,get theme(){return P},getAllThemes:()=>[],getTheme:()=>void 0,setTheme:()=>({success:!1,error:"Theme switching is not supported in Pi Web extension UI yet"}),getToolsExpanded:()=>!1,setToolsExpanded:()=>{}}}createExtensionCommandContextActions(){return{waitForIdle:async()=>{let a=this.inner.agent;await a.waitForIdle?.()},newSession:async()=>({cancelled:!0}),fork:async()=>({cancelled:!0}),navigateTree:async(a,b)=>({cancelled:(await this.inner.navigateTree(a,{summarize:b?.summarize})).cancelled}),switchSession:async()=>({cancelled:!0}),reload:async()=>{this.extensionStatuses.clear(),this.resetExtensionWidgetsForReload(),this.syncProjectTrust(),await this.inner.reload({beforeSessionStart:()=>{this.inner.extensionRunner.setUIContext?.(this.createExtensionUiContext(),"rpc")}}),this.applyForcedEmptySystemPrompt()}}}syncProjectTrust(){let a=(0,B.Y1)(this.cwd,(0,e.getAgentDir)());this.inner.settingsManager.setProjectTrusted(a.trusted)}}function G(){if(!globalThis.__piSessions){globalThis.__piSessions=new Map;let a=()=>globalThis.__piSessions?.forEach(a=>a.destroy());process.once("exit",a),process.once("SIGINT",a),process.once("SIGTERM",a)}return globalThis.__piSessions}async function H(a,b){let c=a.getSessionFile();if(!c||(0,h.existsSync)(c))return;let d=a.getHeader();if(!d)return;let e=[d,...a.getEntries()].map(a=>JSON.stringify(a)).join("\n")+"\n";(0,h.writeFileSync)(c,e,{encoding:"utf8",flag:"wx"}),a.flushed=!0,(0,t.O8)(b,c);let f=a.getCwd();try{let a=await (0,y.KI)(f??"");(0,z.YH)(b,{path:c,cwd:f??"",projectKey:(0,x.z)(a?.projectRoot??f??"")})}catch(a){console.error(`[pi-web] 新会话建行失败 session=${b}:`,a instanceof Error?a.message:String(a))}}function I(a){return G().get(a)}function J(){let a=new Set;for(let[b,c]of G())c.isRunning()&&a.add(c.sessionId||b);return[...a]}async function K(a,b,c,d={}){let f,g,j,{toolNames:q,initialModel:u,thinkingLevel:v}=d,w=G(),x=(globalThis.__piStartLocks||(globalThis.__piStartLocks=new Map),globalThis.__piStartLocks),y=w.get(a);if(y?.isAlive())return{session:y,realSessionId:a};let z=x.get(a);if(z)return z;if(b)f=e.SessionManager.open(b,void 0);else{if(!c)throw Error("cwd is required for a new session");let b=a.length>0&&!a.startsWith("__");f=e.SessionManager.create(c,void 0,b?{id:a}:void 0),b&&await H(f,a)}let A=f.getCwd(),D=(globalThis.__piStartingSessionCwds||(globalThis.__piStartingSessionCwds=new Map),g=globalThis.__piStartingSessionCwds,j=function(a){let b=(0,i.resolve)(a);try{return(0,h.realpathSync)(b)}catch{return b}}(A),g.set(j,(g.get(j)??0)+1),()=>{let a=(g.get(j)??1)-1;a>0?g.set(j,a):g.delete(j)}),E=(async()=>{let a=b?(0,p.ph)(f.getEntries()):null,c=!!(a?.loadExtensions||a?.loadSkills),d=a?0===a.tools.length&&!c:q?.length===0;d||(0,e.initTheme)();let g=(0,e.getAgentDir)(),h=a?.tools;a||void 0===q||(h=0===q.length?[]:void 0);let i=(0,B.Fk)(A,g),j=e.SettingsManager.create(A,g),x=await (0,e.createAgentSessionServices)({cwd:A,agentDir:g,settingsManager:j,resourceLoaderOptions:a?{noExtensions:!a.loadExtensions,noSkills:!a.loadSkills,noPromptTemplates:!0,noThemes:!0,noContextFiles:!0,systemPrompt:" ",appendSystemPrompt:a.appendSystemPrompt}:d?s.M:{extensionFactories:[(0,m.eD)({cwd:A,settings:j}),(0,n.U)(),(0,o.Vj)(S.extensionRuntime,()=>(0,p.IR)(A),r.N)],extensionsOverride:a=>(0,m.Ds)((0,o.U6)(a))},...i?{resourceLoaderReloadOptions:i}:{}}),y=await (0,l.p)(x.modelRuntime,x.settingsManager.getEnabledModels()),z=x.settingsManager.getDefaultProvider(),D=x.settingsManager.getDefaultModel(),E=f.getBranch().some(a=>"message"===a.type)?{scopedModels:[...y.scopedModels]}:(0,l.I)(y,{...u?{requestedModel:u}:{},...z&&D?{defaultModel:{provider:z,modelId:D}}:{},...v?{thinkingLevel:v}:{}}),{session:G}=await (0,e.createAgentSessionFromServices)({services:x,sessionManager:f,...E.model?{model:E.model}:{},...E.thinkingLevel?{thinkingLevel:E.thinkingLevel}:{},...E.scopedModels.length>0?{scopedModels:E.scopedModels}:{},...void 0!==h?{tools:h}:{}});(await (0,C.o)(x.settingsManager,{...u?{model:u}:{},...v?{thinkingLevel:v}:{}},{...G.model?{model:{provider:G.model.provider,modelId:G.model.id}}:{},thinkingLevel:G.thinkingLevel,supportsThinking:G.supportsThinking()})).modelDefaultChanged&&(0,k.kn)(),q&&q.length>0&&G.setActiveToolsByName(F(G,q));let H=new R(G);q?.length===0&&H.setForceEmptySystemPrompt(!0),H.start();let I=G.sessionId,J=G.sessionFile;return J&&(0,t.O8)(I,J),H.onDestroy(()=>w.delete(I)),w.set(I,H),d||H.beginExtensionBinding({forceEmptySystemPrompt:q?.length===0}),{session:H,realSessionId:I}})().finally(()=>{x.delete(a),D()});return x.set(a,E),E}let S=(0,q.s)({getSession:a=>G().get(a),registerSession:(a,b)=>{let c=new R(a,{...b?.exactSystemPrompt!==void 0?{exactSystemPrompt:()=>b.exactSystemPrompt}:{},chatOnly:b?.chatOnly}),d=a.sessionId,e=a.sessionFile;e&&(0,t.O8)(d,e),c.onDestroy(()=>G().delete(d)),G().set(d,c),c.start(),c.isChatOnly()||c.beginExtensionBinding()},reopenSession:async(a,b)=>(await K(a,b,void 0)).session,resolveSessionPath:t.resolveSessionPath,invalidateSessionList:t.mD,isBuiltInSubagentsEnabled:r.N});d()}catch(a){d(a)}})},12817:a=>{"use strict";a.exports=function(a){if(null===a||"object"!=typeof a)return a;if(a instanceof Object)var c={__proto__:b(a)};else var c=Object.create(null);return Object.getOwnPropertyNames(a).forEach(function(b){Object.defineProperty(c,b,Object.getOwnPropertyDescriptor(a,b))}),c};var b=Object.getPrototypeOf||function(a){return a.__proto__}},12969:(a,b,c)=>{"use strict";c(55511),c(29021),c(33873)},13884:(a,b,c)=>{"use strict";let d=c(93329);a.exports={toPromise:function(a){return(...b)=>new Promise((c,d)=>{b.push((a,b)=>{a?d(a):c(b)}),a(...b)})},toSync:function(a){return(...b)=>{let c,d;if(b.push((a,b)=>{c=a,d=b}),a(...b),c)throw c;return d}},toSyncOptions:function(a){var b;let c;if((a={...a}).fs=(c={...b=a.fs||d},["mkdir","realpath","stat","rmdir","utimes"].forEach(a=>{c[a]=(...c)=>{let d,e=c.pop();try{d=b[`${a}Sync`](...c)}catch(a){return e(a)}e(null,d)}}),c),"number"==typeof a.retries&&a.retries>0||a.retries&&"number"==typeof a.retries.retries&&a.retries.retries>0)throw Object.assign(Error("Cannot use retries with the sync api"),{code:"ESYNC"});return a}}},14916:(a,b,c)=>{"use strict";c.d(b,{C1:()=>e,G1:()=>f,kU:()=>d});let d=["read","grep","find","ls"],e=["bash","read","edit","write","grep","find","ls"],f=["read","bash","edit","write","grep","find","ls"]},15253:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Fk:()=>h,Y1:()=>g});var e=c(75430),f=a([e]);function g(a,b){if(!(a&&(0,e.hasTrustRequiringProjectResources)(a)))return{requiresTrust:!1,trusted:!0};let c=new e.ProjectTrustStore(b);return{requiresTrust:!0,trusted:!0===c.get(a)}}function h(a,b){if(!g(a,b).requiresTrust)return;let c=new e.ProjectTrustStore(b);return{resolveProjectTrust:async()=>!0===c.get(a)}}e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},16176:a=>{"use strict";let b=Symbol();a.exports.probe=function(a,c,d){let e=c[b];if(e)return c.stat(a,(a,b)=>{if(a)return d(a);d(null,b.mtime,e)});let f=new Date(1e3*Math.ceil(Date.now()/1e3)+5);c.utimes(a,f,f,e=>{if(e)return d(e);c.stat(a,(a,e)=>{if(a)return d(a);let f=e.mtime.getTime()%1e3==0?"s":"ms";Object.defineProperty(c,b,{value:f}),d(null,e.mtime,f)})})},a.exports.getMtime=function(a){let b=Date.now();return"s"===a&&(b=1e3*Math.ceil(b/1e3)),new Date(b)}},16983:(a,b,c)=>{"use strict";c.d(b,{Wv:()=>h,jN:()=>j,vH:()=>i});var d=c(29021),e=c(33873),f=c(83739),g=c(15011);let h=8;function i(a,b){if(b.length>h)throw Error(`Agent input_files accepts at most ${h} files`);let c=(0,d.realpathSync)(a),i=new Set([c]),j=new TextDecoder("utf-8",{fatal:!0}),k=new Set,l=[],m=0;for(let h of b){let b,n;if(!h.trim())throw Error("Agent input_files paths must not be empty");try{b=(0,d.realpathSync)((0,e.resolve)(a,h))}catch{throw Error(`Agent input file does not exist: ${h}`)}if(!(0,f.o)(b,i))throw Error(`Agent input file is outside the session cwd: ${h}`);if(!(0,d.statSync)(b).isFile())throw Error(`Agent input path is not a file: ${h}`);if(k.has(b))continue;k.add(b);let o=(0,d.readFileSync)(b);if((m+=o.byteLength)>524288)throw Error("Agent input_files exceeds the 524288-byte total limit");try{n=j.decode(o)}catch{throw Error(`Agent input file is not valid UTF-8 text: ${h}`)}l.push({path:(0,g.W3)((0,e.relative)(c,b)),content:n})}return l}function j(a,b){if(0===b.length)return a;let c=b.map(a=>`<document path=${JSON.stringify(a.path)}>
5
5
  ${a.content}
6
6
  </document>`).join("\n\n");return`${a}
7
7
 
8
8
  <documents>
9
9
  ${c}
10
- </documents>`}},18437:(a,b,c)=>{"use strict";function d(a){if(void 0===a)return null;if(!Array.isArray(a))return"images must be an array";if(a.length>10)return"A message can include at most 10 images";for(let b of a){if(!b||"object"!=typeof b||"image"!==b.type)return"Each attachment must be an image";if(!function(a){if(!a||"object"!=typeof a||"string"!=typeof a.data||"string"!=typeof a.mimeType||!a.mimeType.startsWith("image/"))return!1;let b=function(a){if(!a||a.length%4!=0)return null;let b=a.endsWith("==")?2:+!!a.endsWith("="),c=a.length-b;for(let b=0;b<c;b+=1){var d;if(!((d=a.charCodeAt(b))>=65&&d<=90||d>=97&&d<=122||d>=48&&d<=57||43===d||47===d))return null}for(let b=c;b<a.length;b+=1)if("="!==a[b])return null;return a.length/4*3-b}(a.data);return null!==b&&b<=0xa00000}(b))return"Each image must be valid base64 image data of 10MB or smaller"}return null}c.d(b,{kc:()=>d})},18827:(a,b,c)=>{var d=c(27910).Stream;a.exports=function(a){return{ReadStream:function b(c,e){if(!(this instanceof b))return new b(c,e);d.call(this);var f=this;this.path=c,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=65536;for(var g=Object.keys(e=e||{}),h=0,i=g.length;h<i;h++){var j=g[h];this[j]=e[j]}if(this.encoding&&this.setEncoding(this.encoding),void 0!==this.start){if("number"!=typeof this.start)throw TypeError("start must be a Number");if(void 0===this.end)this.end=1/0;else if("number"!=typeof this.end)throw TypeError("end must be a Number");if(this.start>this.end)throw Error("start must be <= end");this.pos=this.start}null!==this.fd?process.nextTick(function(){f._read()}):a.open(this.path,this.flags,this.mode,function(a,b){if(a){f.emit("error",a),f.readable=!1;return}f.fd=b,f.emit("open",b),f._read()})},WriteStream:function b(c,e){if(!(this instanceof b))return new b(c,e);d.call(this),this.path=c,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0;for(var f=Object.keys(e=e||{}),g=0,h=f.length;g<h;g++){var i=f[g];this[i]=e[i]}if(void 0!==this.start){if("number"!=typeof this.start)throw TypeError("start must be a Number");if(this.start<0)throw Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],null===this.fd&&(this._open=a.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}}},30223:a=>{a.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"],"win32"!==process.platform&&a.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT"),"linux"===process.platform&&a.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")},32105:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Wz:()=>k,bJ:()=>n,s4:()=>m});var e=c(75430),f=c(51455),g=c(69453),h=a([e,g]);[e,g]=h.then?(await h)():h;let o=new Set(["bash"]);async function i(a){let b=await (0,g.os)(a);if(!b)return null;let c=131072;for(;c<=1048576;){let a=await (0,f.open)(b,"r");try{let{size:b}=await a.stat(),d=Math.max(0,b-c),e=Buffer.alloc(b-d);e.length>0&&await a.read(e,0,e.length,d);let f=e.toString("utf8").split("\n"),g=d>0?f.slice(1):f,h=[];for(let a=g.length-1;a>=0&&h.length<8;a--){let b=g[a].trim();if(b)try{let a=JSON.parse(b);a?.type==="message"&&h.unshift(a)}catch{}}if(h.length>=4||c>=1048576||b<=c)return h}finally{await a.close()}c*=2}return null}function j(a){return"string"==typeof a?a:Array.isArray(a)?a.filter(a=>!!a&&"object"==typeof a&&"text"in a).map(a=>a.text).join("\n"):""}async function k(a){try{var b;let c=await i(a);if(!c)return null;let d=c.filter(a=>"message"===a.type),e=!1,f=0,g=[],h=d[d.length-1],k=!!h&&(b=h.message,"assistant"===b.role&&!!Array.isArray(b.content)&&b.content.some(a=>!!a&&"object"==typeof a&&"toolCall"===a.type&&o.has(a.name))),l=h&&"number"==typeof h.message.timestamp?h.message.timestamp:h?new Date(h.timestamp).getTime():0,m=k&&!Number.isNaN(l)?l:0;for(let a of d.slice(-4)){let b=a.message,c="number"==typeof b.timestamp?b.timestamp:new Date(a.timestamp).getTime();if(Number.isNaN(c)||(f=Math.max(f,c)),"assistant"===b.role){b.errorMessage&&(e=!0);let a=j(b.content);a&&g.push(`AI: ${a.slice(0,400)}`)}else if("toolResult"===b.role){b.isError&&(e=!0);let a=b.details;a&&"number"==typeof a.exitCode&&0!==a.exitCode&&(e=!0);let c=j(b.content);c&&g.push(`工具 ${b.toolName}: ${c.slice(0,300)}`)}else if("user"===b.role){let a=j(b.content);a&&g.push(`用户: ${a.slice(0,300)}`)}}return{failure:e,recentText:g.join("\n").slice(0,4e3),lastActivityMs:f,lastIsCommand:k,lastCommandAtMs:m}}catch(b){return console.error(`[task-scheduler] 读会话快照失败 ${a}:`,b instanceof Error?b.message:b),null}}async function l(a,b,c){let d=null,f=setTimeout(()=>{if(d&&"function"==typeof d.dispose)try{d.dispose()}catch{}},9e4);try{(0,e.initTheme)();let f=(0,e.getAgentDir)(),g=e.SettingsManager.create(a,f),h=await (0,e.createAgentSessionServices)({cwd:a,agentDir:f,settingsManager:g,resourceLoaderOptions:{extensionFactories:[]}}),i=e.SessionManager.inMemory(a);d=(await (0,e.createAgentSessionFromServices)({services:h,sessionManager:i,noTools:"all"})).session,await d.prompt(`${b}
10
+ </documents>`}},18437:(a,b,c)=>{"use strict";function d(a){if(void 0===a)return null;if(!Array.isArray(a))return"images must be an array";if(a.length>10)return"A message can include at most 10 images";for(let b of a){if(!b||"object"!=typeof b||"image"!==b.type)return"Each attachment must be an image";if(!function(a){if(!a||"object"!=typeof a||"string"!=typeof a.data||"string"!=typeof a.mimeType||!a.mimeType.startsWith("image/"))return!1;let b=function(a){if(!a||a.length%4!=0)return null;let b=a.endsWith("==")?2:+!!a.endsWith("="),c=a.length-b;for(let b=0;b<c;b+=1){var d;if(!((d=a.charCodeAt(b))>=65&&d<=90||d>=97&&d<=122||d>=48&&d<=57||43===d||47===d))return null}for(let b=c;b<a.length;b+=1)if("="!==a[b])return null;return a.length/4*3-b}(a.data);return null!==b&&b<=0xa00000}(b))return"Each image must be valid base64 image data of 10MB or smaller"}return null}c.d(b,{kc:()=>d})},18827:(a,b,c)=>{var d=c(27910).Stream;a.exports=function(a){return{ReadStream:function b(c,e){if(!(this instanceof b))return new b(c,e);d.call(this);var f=this;this.path=c,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=65536;for(var g=Object.keys(e=e||{}),h=0,i=g.length;h<i;h++){var j=g[h];this[j]=e[j]}if(this.encoding&&this.setEncoding(this.encoding),void 0!==this.start){if("number"!=typeof this.start)throw TypeError("start must be a Number");if(void 0===this.end)this.end=1/0;else if("number"!=typeof this.end)throw TypeError("end must be a Number");if(this.start>this.end)throw Error("start must be <= end");this.pos=this.start}null!==this.fd?process.nextTick(function(){f._read()}):a.open(this.path,this.flags,this.mode,function(a,b){if(a){f.emit("error",a),f.readable=!1;return}f.fd=b,f.emit("open",b),f._read()})},WriteStream:function b(c,e){if(!(this instanceof b))return new b(c,e);d.call(this),this.path=c,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0;for(var f=Object.keys(e=e||{}),g=0,h=f.length;g<h;g++){var i=f[g];this[i]=e[i]}if(void 0!==this.start){if("number"!=typeof this.start)throw TypeError("start must be a Number");if(this.start<0)throw Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],null===this.fd&&(this._open=a.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}}},30223:a=>{a.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"],"win32"!==process.platform&&a.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT"),"linux"===process.platform&&a.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")},32105:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Wz:()=>k,bJ:()=>n,s4:()=>m});var e=c(75430),f=c(51455),g=c(69453),h=a([e,g]);[e,g]=h.then?(await h)():h;let o=new Set(["bash"]);async function i(a){let b=await (0,g.resolveSessionPath)(a);if(!b)return null;let c=131072;for(;c<=1048576;){let a=await (0,f.open)(b,"r");try{let{size:b}=await a.stat(),d=Math.max(0,b-c),e=Buffer.alloc(b-d);e.length>0&&await a.read(e,0,e.length,d);let f=e.toString("utf8").split("\n"),g=d>0?f.slice(1):f,h=[];for(let a=g.length-1;a>=0&&h.length<8;a--){let b=g[a].trim();if(b)try{let a=JSON.parse(b);a?.type==="message"&&h.unshift(a)}catch{}}if(h.length>=4||c>=1048576||b<=c)return h}finally{await a.close()}c*=2}return null}function j(a){return"string"==typeof a?a:Array.isArray(a)?a.filter(a=>!!a&&"object"==typeof a&&"text"in a).map(a=>a.text).join("\n"):""}async function k(a){try{var b;let c=await i(a);if(!c)return null;let d=c.filter(a=>"message"===a.type),e=!1,f=0,g=[],h=d[d.length-1],k=!!h&&(b=h.message,"assistant"===b.role&&!!Array.isArray(b.content)&&b.content.some(a=>!!a&&"object"==typeof a&&"toolCall"===a.type&&o.has(a.name))),l=h&&"number"==typeof h.message.timestamp?h.message.timestamp:h?new Date(h.timestamp).getTime():0,m=k&&!Number.isNaN(l)?l:0;for(let a of d.slice(-4)){let b=a.message,c="number"==typeof b.timestamp?b.timestamp:new Date(a.timestamp).getTime();if(Number.isNaN(c)||(f=Math.max(f,c)),"assistant"===b.role){b.errorMessage&&(e=!0);let a=j(b.content);a&&g.push(`AI: ${a.slice(0,400)}`)}else if("toolResult"===b.role){b.isError&&(e=!0);let a=b.details;a&&"number"==typeof a.exitCode&&0!==a.exitCode&&(e=!0);let c=j(b.content);c&&g.push(`工具 ${b.toolName}: ${c.slice(0,300)}`)}else if("user"===b.role){let a=j(b.content);a&&g.push(`用户: ${a.slice(0,300)}`)}}return{failure:e,recentText:g.join("\n").slice(0,4e3),lastActivityMs:f,lastIsCommand:k,lastCommandAtMs:m}}catch(b){return console.error(`[task-scheduler] 读会话快照失败 ${a}:`,b instanceof Error?b.message:b),null}}async function l(a,b,c){let d=null,f=setTimeout(()=>{if(d&&"function"==typeof d.dispose)try{d.dispose()}catch{}},9e4);try{(0,e.initTheme)();let f=(0,e.getAgentDir)(),g=e.SettingsManager.create(a,f),h=await (0,e.createAgentSessionServices)({cwd:a,agentDir:f,settingsManager:g,resourceLoaderOptions:{extensionFactories:[]}}),i=e.SessionManager.inMemory(a);d=(await (0,e.createAgentSessionFromServices)({services:h,sessionManager:i,noTools:"all"})).session,await d.prompt(`${b}
11
11
 
12
12
  ${c}`,{expandPromptTemplates:!1,source:"rpc"}),await d.waitForIdle();let j=d.getLastAssistantText()??"";return function(a){let b=a.indexOf("{");if(-1===b)return null;let c=0;for(let d=b;d<a.length;d++)if("{"===a[d])c+=1;else if("}"===a[d]&&(c-=1,0===c))try{return JSON.parse(a.slice(b,d+1))}catch{break}return null}(j)??null}catch(a){return console.error("[audit-session] 判定失败:",a instanceof Error?a.message:a),null}finally{if(clearTimeout(f),d)try{d.dispose()}catch{}}}let p=`你是任务卡审核员。下面给出任务卡信息与执行会话最后几条消息,判断任务执行结果:
13
13
  - done: 任务已正确完成
@@ -25,17 +25,17 @@ ${c}`,{expandPromptTemplates:!1,source:"rpc"}),await d.waitForIdle();let j=d.get
25
25
 
26
26
  只输出一行 JSON(不要输出其他文字):{"kind":"sync_server|infinite_loop|rate_limit|error|asking|normal","detail":"简短说明"}`;async function n(a){let b=[`【任务卡 #${a.cardNumber}】${a.cardName}`,`任务描述:${a.taskDescription||"(空)"}`,"\n执行会话最后几条消息:",a.recentMessages||"(无消息)"].join("\n"),c=await l(a.cwd,q,b);return c&&["sync_server","infinite_loop","rate_limit","error","asking","normal"].includes(c.kind)?{kind:c.kind,detail:c.detail??""}:null}d()}catch(a){d(a)}})},32302:(a,b,c)=>{"use strict";c.d(b,{M:()=>d});let d={noExtensions:!0,noSkills:!0,noPromptTemplates:!0,noThemes:!0,noContextFiles:!1,systemPrompt:" ",appendSystemPrompt:[" "],systemPromptOverride:()=>void 0,appendSystemPromptOverride:()=>[]}},35015:(a,b,c)=>{"use strict";function d(a){let b=0===a.tools.length&&!a.loadSkills&&!a.loadExtensions,c="replace"===a.promptMode,d=[a.profileSystemPrompt];return a.inheritedParentContext&&!b&&d.push(a.inheritedParentContext),{chatOnly:b,appendSystemPrompt:d,delegatedTask:a.inheritedParentContext&&b?`${a.task}
27
27
 
28
- ${a.inheritedParentContext}`:a.task,...b||c?{exactSystemPrompt:a.profileSystemPrompt}:{}}}c.d(b,{r:()=>d})},37173:(a,b,c)=>{"use strict";c.d(b,{yv:()=>f});var d=c(82249);let e=/^(?:\uFEFF)?---[ \t]*(?:\r\n|\n|\r)/;function f(a){let b=function(a){let b=e.exec(a);if(!b)return null;let c=/^---[ \t]*(?:(?:\r\n|\n|\r)|$)/gm;c.lastIndex=b[0].length;let d=c.exec(a);return d?{yaml:a.slice(b[0].length,d.index).replace(/(?:\r\n|\n|\r)$/,""),rest:a.slice(d.index+d[0].length)}:null}(a);if(!b)return{data:null,rest:a};try{let a=(0,d.Hh)(b.yaml);if(a&&"object"==typeof a&&!Array.isArray(a))return{data:a,rest:b.rest}}catch{}return{data:null,rest:b.rest}}},39065:(a,b,c)=>{"use strict";let d=c(62404),{toPromise:e,toSync:f,toSyncOptions:g}=c(13884);async function h(a,b){let c=await e(d.lock)(a,b);return e(c)}a.exports=h,a.exports.lock=h,a.exports.unlock=function(a,b){return e(d.unlock)(a,b)},a.exports.lockSync=function(a,b){let c=f(d.lock)(a,g(b));return f(c)},a.exports.unlockSync=function(a,b){return f(d.unlock)(a,g(b))},a.exports.check=function(a,b){return e(d.check)(a,b)},a.exports.checkSync=function(a,b){return f(d.check)(a,g(b))}},39466:(a,b,c)=>{var d=c(81115),e=process.cwd,f=null,g=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return f||(f=e.call(process)),f};try{process.cwd()}catch(a){}if("function"==typeof process.chdir){var h=process.chdir;process.chdir=function(a){f=null,h.call(process,a)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,h)}a.exports=function(a){var b,c,e;function f(b){return b?function(c,d,e){return b.call(a,c,d,function(a){m(a)&&(a=null),e&&e.apply(this,arguments)})}:b}function h(b){return b?function(c,d){try{return b.call(a,c,d)}catch(a){if(!m(a))throw a}}:b}function i(b){return b?function(c,d,e,f){return b.call(a,c,d,e,function(a){m(a)&&(a=null),f&&f.apply(this,arguments)})}:b}function j(b){return b?function(c,d,e){try{return b.call(a,c,d,e)}catch(a){if(!m(a))throw a}}:b}function k(b){return b?function(c,d,e){function f(a,b){b&&(b.uid<0&&(b.uid+=0x100000000),b.gid<0&&(b.gid+=0x100000000)),e&&e.apply(this,arguments)}return"function"==typeof d&&(e=d,d=null),d?b.call(a,c,d,f):b.call(a,c,f)}:b}function l(b){return b?function(c,d){var e=d?b.call(a,c,d):b.call(a,c);return e&&(e.uid<0&&(e.uid+=0x100000000),e.gid<0&&(e.gid+=0x100000000)),e}:b}function m(a){return!a||"ENOSYS"===a.code||(!process.getuid||0!==process.getuid())&&("EINVAL"===a.code||"EPERM"===a.code)}d.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&((c=a).lchmod=function(a,b,e){c.open(a,d.O_WRONLY|d.O_SYMLINK,b,function(a,d){if(a){e&&e(a);return}c.fchmod(d,b,function(a){c.close(d,function(b){e&&e(a||b)})})})},c.lchmodSync=function(a,b){var e,f=c.openSync(a,d.O_WRONLY|d.O_SYMLINK,b),g=!0;try{e=c.fchmodSync(f,b),g=!1}finally{if(g)try{c.closeSync(f)}catch(a){}else c.closeSync(f)}return e}),a.lutimes||(e=a,d.hasOwnProperty("O_SYMLINK")&&e.futimes?(e.lutimes=function(a,b,c,f){e.open(a,d.O_SYMLINK,function(a,d){if(a){f&&f(a);return}e.futimes(d,b,c,function(a){e.close(d,function(b){f&&f(a||b)})})})},e.lutimesSync=function(a,b,c){var f,g=e.openSync(a,d.O_SYMLINK),h=!0;try{f=e.futimesSync(g,b,c),h=!1}finally{if(h)try{e.closeSync(g)}catch(a){}else e.closeSync(g)}return f}):e.futimes&&(e.lutimes=function(a,b,c,d){d&&process.nextTick(d)},e.lutimesSync=function(){})),a.chown=i(a.chown),a.fchown=i(a.fchown),a.lchown=i(a.lchown),a.chmod=f(a.chmod),a.fchmod=f(a.fchmod),a.lchmod=f(a.lchmod),a.chownSync=j(a.chownSync),a.fchownSync=j(a.fchownSync),a.lchownSync=j(a.lchownSync),a.chmodSync=h(a.chmodSync),a.fchmodSync=h(a.fchmodSync),a.lchmodSync=h(a.lchmodSync),a.stat=k(a.stat),a.fstat=k(a.fstat),a.lstat=k(a.lstat),a.statSync=l(a.statSync),a.fstatSync=l(a.fstatSync),a.lstatSync=l(a.lstatSync),a.chmod&&!a.lchmod&&(a.lchmod=function(a,b,c){c&&process.nextTick(c)},a.lchmodSync=function(){}),a.chown&&!a.lchown&&(a.lchown=function(a,b,c,d){d&&process.nextTick(d)},a.lchownSync=function(){}),"win32"===g&&(a.rename="function"!=typeof a.rename?a.rename:function(b){function c(c,d,e){var f=Date.now(),g=0;b(c,d,function h(i){if(i&&("EACCES"===i.code||"EPERM"===i.code||"EBUSY"===i.code)&&Date.now()-f<6e4){setTimeout(function(){a.stat(d,function(a,f){a&&"ENOENT"===a.code?b(c,d,h):e(i)})},g),g<100&&(g+=10);return}e&&e(i)})}return Object.setPrototypeOf&&Object.setPrototypeOf(c,b),c}(a.rename)),a.read="function"!=typeof a.read?a.read:function(b){function c(c,d,e,f,g,h){var i;if(h&&"function"==typeof h){var j=0;i=function(k,l,m){if(k&&"EAGAIN"===k.code&&j<10)return j++,b.call(a,c,d,e,f,g,i);h.apply(this,arguments)}}return b.call(a,c,d,e,f,g,i)}return Object.setPrototypeOf&&Object.setPrototypeOf(c,b),c}(a.read),a.readSync="function"!=typeof a.readSync?a.readSync:(b=a.readSync,function(c,d,e,f,g){for(var h=0;;)try{return b.call(a,c,d,e,f,g)}catch(a){if("EAGAIN"===a.code&&h<10){h++;continue}throw a}})}},41035:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$u:()=>y,I6:()=>w,IR:()=>r,gY:()=>x,o2:()=>A,ph:()=>v,pv:()=>B,rh:()=>s,st:()=>C,tP:()=>z});var e=c(75430);c(82249);var f=c(29021),g=c(33873),h=c(37173);c(12969);var i=c(83739),j=c(14916),k=a([e]);e=(k.then?(await k)():k)[0];let z="pi-web:subagent",A="pi-web:subagent-status",B="pi-web:subagent-result",C=["Agent","get_subagent_result","steer_subagent"],D=new Set(j.G1),E=new Set(C),F=new Set(["off","minimal","low","medium","high","xhigh","max"]),G=[{name:"general-purpose",displayName:"General purpose",description:"Handle a focused implementation or investigation task",systemPrompt:"Work autonomously on the delegated task. Keep the final answer concise and include important files, decisions, and remaining risks.",tools:j.G1,loadSkills:!1,loadExtensions:!1,promptMode:"append",inheritContext:!1,runInBackground:!1,enabled:!0,scope:"builtin"},{name:"explore",displayName:"Explore",description:"Quickly inspect a codebase without modifying it",systemPrompt:"Explore the codebase to answer the delegated question. Do not modify files. Report concrete findings with file paths and relevant symbols.",tools:[...j.kU],loadSkills:!1,loadExtensions:!1,promptMode:"append",inheritContext:!1,runInBackground:!1,enabled:!0,scope:"builtin"},{name:"plan",displayName:"Plan",description:"Design an implementation plan without modifying files",systemPrompt:"Produce an implementation-ready plan for the delegated task. Inspect the repository as needed, do not modify files, and call out dependencies, risks, and verification steps.",tools:[...j.kU],loadSkills:!1,loadExtensions:!1,promptMode:"append",inheritContext:!1,runInBackground:!1,enabled:!0,scope:"builtin"}];function l(a){return"string"==typeof a&&a.trim()?a.trim():void 0}function m(a,b){return"boolean"==typeof a?a:b}function n(a,b){return"boolean"==typeof a?a:!!Array.isArray(a)||"string"==typeof a||b}function o(a){return(Array.isArray(a)?a:"string"==typeof a?a.split(","):[]).map(a=>String(a).trim()).filter(Boolean)}function p(a,b){let c=o(a);return c.includes("none")?[]:c.includes("all")||c.includes("*")?[...j.G1]:0===c.length?[...b]:[...new Set(c.filter(a=>D.has(a)))]}function q(a){return[...new Set(o(a).filter(a=>a.toLowerCase().startsWith("ext:")))]}function r(a){let b=new Map(G.map(a=>[a.name.toLowerCase(),{...a,tools:[...a.tools]}]));for(let[c,d]of[[(0,g.join)((0,e.getAgentDir)(),"agents"),"global"],[(0,g.join)((0,g.resolve)(a),".agents","agents"),"workspace"],[(0,g.join)((0,g.resolve)(a),".pi","agents"),"project"]])for(let e of function(a,b,c){return(0,f.existsSync)(a)?"global"===b||(0,i.x)(a,new Set([c]))?(0,f.readdirSync)(a,{withFileTypes:!0}).filter(a=>a.isFile()&&a.name.endsWith(".md")).map(c=>(function(a,b){try{let c=(0,f.readFileSync)(a,"utf8"),{data:d,rest:e}=(0,h.yv)(c),i=l(d?.name)??(0,g.basename)(a,".md");if(!/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(i))return null;let k=l(d?.thinking),o="number"==typeof d?.max_turns?Math.floor(d.max_turns):void 0,r=p(d?.tools,j.G1),s=new Set(p(d?.disallowed_tools,[])),t=new Set(q(d?.disallowed_tools).map(a=>a.toLowerCase())),u=q(d?.tools).filter(a=>!t.has(a.toLowerCase()));return{name:i,displayName:l(d?.display_name)??i,description:l(d?.description)??i,systemPrompt:e.trim(),tools:r.filter(a=>!s.has(a)),...u.length>0?{extensionTools:u}:{},loadSkills:n(d?.load_skills??d?.skills,!1),loadExtensions:n(d?.load_extensions??d?.extensions,u.length>0),...l(d?.model)?{model:l(d?.model)}:{},...k&&F.has(k)?{thinking:k}:{},...o&&o>0?{maxTurns:o}:{},inheritContext:m(d?.inherit_context,!1),runInBackground:m(d?.run_in_background,!1),promptMode:d?.prompt_mode==="replace"?"replace":"append",...l(d?.color)?{color:l(d?.color)}:{},...d?.isolation==="worktree"||d?.isolation==="off"?{isolation:d.isolation}:{},..."boolean"==typeof d?.persist_session?{persistSession:d.persist_session}:{},enabled:m(d?.enabled,!0),scope:b,filePath:a}}catch{return null}})((0,g.join)(a,c.name),b)).filter(a=>null!==a):[]:[]}(c,d,a))b.set(e.name.toLowerCase(),e);return[...b.values()].sort((a,b)=>a.displayName.localeCompare(b.displayName))}function s(a,b){return r(a).find(a=>a.name.toLowerCase()===b.trim().toLowerCase()&&a.enabled)}function t(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function u(a){let b=a.find(a=>"custom"===a.type&&a.customType===z);if(!b||"custom"!==b.type||!t(b.data))return null;let c=b.data;return 1!==c.version||"string"!=typeof c.parentSessionId||"string"!=typeof c.parentSessionPath?null:c}function v(a){let b=u(a);if(!b)return null;let c=b.resourceSnapshot,d=t(c)&&!0===c.loadSkills,e=t(c)&&!0===c.loadExtensions;return t(c)&&1===c.version&&Array.isArray(c.appendSystemPrompt)&&c.appendSystemPrompt.every(a=>"string"==typeof a)&&Array.isArray(c.tools)&&c.tools.every(a=>"string"==typeof a&&a.length>0&&!E.has(a)&&(D.has(a)||e))?{appendSystemPrompt:[...c.appendSystemPrompt],tools:[...new Set(c.tools)],loadSkills:d,loadExtensions:e,..."string"==typeof c.exactSystemPrompt?{exactSystemPrompt:c.exactSystemPrompt}:{}}:null}function w(a,b){return[...new Set([...a,...[...b].filter(a=>!E.has(a))])]}function x(a,b){let c=b.map(a=>a.slice(4).toLowerCase());return[...a].flatMap(a=>{let b=a.path.replaceAll("\\","/").split("/").at(-2)??a.path,d=(a.sourceInfo?.source??"").replace(/^npm:/,""),e=new Set([b.toLowerCase(),d.toLowerCase()]);return c.some(b=>{if("*"===b)return!0;let[c,d]=b.split("/",2);return e.has(c)&&(!d||a.tools.has(d))})?[...a.tools.keys()].filter(a=>c.some(b=>{if("*"===b||b.endsWith("/*"))return"*"===b||e.has(b.slice(0,-2));let[c,d]=b.split("/",2);return e.has(c)&&(!d||d===a)})):[]})}function y(a,b,c){let d=u(a);if(!d)return null;let e=[...a].reverse().find(a=>"custom"===a.type&&(a.customType===B||a.customType===A)),f=e?.type==="custom"&&e.customType===B?e:void 0,g=f?.type==="custom"&&t(f.data)?f.data:void 0,h=e?.type==="custom"&&e.customType===A?e:void 0,i=h?.type==="custom"&&t(h.data)?h.data:void 0,j=g&&("completed"===g.status||"failed"===g.status||"aborted"===g.status)?g.status:i?.version===1&&("queued"===i.status||"running"===i.status)?i.status:"interrupted";return{sessionId:b,sessionPath:c,parentSessionId:d.parentSessionId,parentToolCallId:"string"==typeof d.parentToolCallId?d.parentToolCallId:"",profile:"string"==typeof d.profile?d.profile:"general-purpose",description:"string"==typeof d.description?d.description:"Subagent",task:"string"==typeof d.task?d.task:"",runInBackground:!0===d.runInBackground,status:j,createdAt:"string"==typeof d.createdAt?d.createdAt:"",...g&&"string"==typeof g.completedAt?{completedAt:g.completedAt}:{},...g&&"string"==typeof g.result?{result:g.result}:{},...g&&"string"==typeof g.error?{error:g.error}:{},..."string"==typeof d.worktreePath?{worktreePath:d.worktreePath}:{},..."string"==typeof d.worktreeBranch?{worktreeBranch:d.worktreeBranch}:{},...g&&"string"==typeof g.worktreeCleanupError?{worktreeCleanupError:g.worktreeCleanupError}:{}}}d()}catch(a){d(a)}})},45399:(a,b,c)=>{"use strict";c.d(b,{ZUJ:()=>g});var d,e,f={};c.r(f),c.d(f,{ExtendsFalse:()=>db,ExtendsTrue:()=>c9,ExtendsUnion:()=>c7,IsExtendsFalse:()=>dc,IsExtendsTrue:()=>da,IsExtendsTrueLike:()=>dd,IsExtendsUnion:()=>c8,Match:()=>de});var g={};c.r(g),c.d(g,{Any:()=>T,Array:()=>I,BigInt:()=>aJ,Boolean:()=>aL,Call:()=>dP,Capitalize:()=>dT,Codec:()=>ax,Conditional:()=>d7,Constructor:()=>L,ConstructorParameters:()=>ea,Cyclic:()=>ad,Decode:()=>ay,DecodeBuilder:()=>aw,Dependent:()=>ak,Encode:()=>az,EncodeBuilder:()=>av,Enum:()=>an,Evaluate:()=>fi,Exclude:()=>ed,Extends:()=>dF,ExtendsResult:()=>f,Extract:()=>eg,Function:()=>N,Generic:()=>R,Identifier:()=>aN,Immutable:()=>aB,Index:()=>ek,Infer:()=>ai,InstanceType:()=>ez,Instantiate:()=>ff,Integer:()=>aQ,Interface:()=>dw,Intersect:()=>ap,IsAny:()=>U,IsArray:()=>J,IsBigInt:()=>aK,IsBoolean:()=>aM,IsCall:()=>dQ,IsCodec:()=>aA,IsConstructor:()=>M,IsCyclic:()=>ae,IsDependent:()=>al,IsEnum:()=>ao,IsEnumValue:()=>am,IsFunction:()=>O,IsGeneric:()=>S,IsIdentifier:()=>aO,IsImmutable:()=>aC,IsInfer:()=>aj,IsInteger:()=>aR,IsIntersect:()=>aq,IsKind:()=>C,IsLiteral:()=>aV,IsNever:()=>W,IsNull:()=>aX,IsNumber:()=>a$,IsObject:()=>aa,IsOptional:()=>$,IsParameter:()=>a2,IsReadonly:()=>aG,IsRecord:()=>bC,IsRef:()=>Q,IsRefine:()=>aI,IsRest:()=>bE,IsSchema:()=>D,IsString:()=>a4,IsSymbol:()=>a0,IsTemplateLiteral:()=>c6,IsThis:()=>bG,IsTuple:()=>bd,IsUndefined:()=>bI,IsUnion:()=>a6,IsUnknown:()=>ac,IsUnsafe:()=>ag,IsVoid:()=>bK,KeyOf:()=>eC,Literal:()=>aT,Lowercase:()=>dV,Mapped:()=>eF,Module:()=>fj,Never:()=>V,NonNullable:()=>eJ,Null:()=>aW,Number:()=>aZ,Object:()=>_,Omit:()=>eM,Optional:()=>Z,Parameter:()=>a1,Parameters:()=>eQ,Partial:()=>eT,Pick:()=>eW,Readonly:()=>aF,ReadonlyObject:()=>eZ,ReadonlyType:()=>e$,Record:()=>bx,RecordKey:()=>bA,RecordPattern:()=>bz,RecordValue:()=>bB,Ref:()=>P,Refine:()=>aH,Required:()=>e1,Rest:()=>bD,ReturnType:()=>e4,Script:()=>fk,String:()=>a3,Symbol:()=>a_,TemplateLiteral:()=>c5,This:()=>bF,Tuple:()=>bc,Uncapitalize:()=>dX,Undefined:()=>bH,Union:()=>a5,Unknown:()=>ab,Unsafe:()=>af,Uppercase:()=>dZ,Void:()=>bJ,With:()=>e7});let h={assign:0,create:0,clone:0,discard:0,update:0};function i(a,b){return h.assign+=1,{...a,...b}}function j(a){return Array.isArray(a)}function k(a){return"bigint"==typeof a}function l(a){return"boolean"==typeof a}function m(a){return"function"==typeof a}function n(a){return null===a}function o(a){return Number.isFinite(a)}function p(a){return q(a)&&!j(a)}function q(a){return"object"==typeof a&&!n(a)}function r(a){return"string"==typeof a}function s(a,b,c){return 0===a.length?c():b(a[0],a.slice(1))}function t(a){return"__proto__"===a||"constructor"===a||"prototype"===a}function u(a,b){return t(b)?Object.prototype.hasOwnProperty.call(a,b):b in a}function v(a){return Object.getOwnPropertyNames(a)}function w(a){return Object.values(a)}function x(a){return h.clone+=1,function a(b){return globalThis.ArrayBuffer.isView(b)?b.slice():b instanceof globalThis.RegExp?new RegExp(b.source,b.flags):b instanceof globalThis.Map?new Map(a([...b.entries()])):b instanceof globalThis.Set?new Set(a([...b.values()])):j(b)?b.map(b=>a(b)):q(b)?function(b){return!function(a){if(!q(a))return!1;let b=globalThis.Object.getPrototypeOf(a);return!n(b)&&"function"==typeof b.constructor&&b.constructor!==globalThis.Object&&"Object"!==b.constructor.name}(b)?u(b,"~kind")||u(b,"~unsafe")?function(b){let c={},d=Object.getOwnPropertyDescriptors(b);for(let b of Object.keys(d)){if(t(b))continue;let e=d[b];u(e,"value")&&Object.defineProperty(c,b,{...e,value:a(e.value)})}return c}(b):function(b){let c={};for(let d of v(b))t(d)||(c[d]=a(b[d]));for(let d of Object.getOwnPropertySymbols(b))c[d]=a(b[d]);return c}(b):b}(b):b}(a)}let y={immutableTypes:!1,maxErrors:8,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0};function z(a,b,c={}){h.create+=1;let d={...b,...c},e=y.enumerableKind?{...d,...a}:function(a,b){for(let c of Object.keys(b))Object.defineProperty(a,c,{configurable:!0,writable:!0,enumerable:!1,value:b[c]});return a}(d,a);return y.immutableTypes?Object.freeze(e):e}function A(a,b){h.discard+=1;let c={},d=Object.getOwnPropertyDescriptors(x(a)),e=new Set(b);for(let a of Object.keys(d))e.has(a)||Object.defineProperty(c,a,d[a]);return c}function B(a,b,c){h.update+=1;let d=x(a);for(let a of Object.keys(b))Object.defineProperty(d,a,{configurable:!0,writable:!0,enumerable:y.enumerableKind,value:b[a]});for(let a of Object.keys(c))Object.defineProperty(d,a,{configurable:!0,enumerable:!0,writable:!0,value:c[a]});return d}function C(a,b){return q(a)&&u(a,"~kind")&&a["~kind"]===b}function D(a){return q(a)}function E(a,b,c){return z({"~kind":"Deferred"},{type:"deferred",action:a,parameters:b,options:c},{})}function F(a){return C(a,"Deferred")}function G(a,b){return B(B(a,{"~readonly":!0},{}),{},b)}function H(a,b){return B(B(a,{"~optional":!0},{}),{},b)}function I(a,b){return z({"~kind":"Array"},{type:"array",items:a},b)}function J(a){return C(a,"Array")}function K(a){return A(a,["~kind","type","items"])}function L(a,b,c={}){return z({"~kind":"Constructor"},{type:"constructor",parameters:a,instanceType:b},c)}function M(a){return C(a,"Constructor")}function N(a,b,c={}){return z({"~kind":"Function"},{type:"function",parameters:a,returnType:b},c)}function O(a){return C(a,"Function")}function P(a,b){return z({"~kind":"Ref"},{$ref:a},b)}function Q(a){return C(a,"Ref")}function R(a,b){return z({"~kind":"Generic"},{type:"generic",parameters:a,expression:b})}function S(a){return C(a,"Generic")}function T(a){return z({"~kind":"Any"},{},a)}function U(a){return C(a,"Any")}function V(a){return z({"~kind":"Never"},{not:{}},a)}function W(a){return C(a,"Never")}function X(a,b={}){return E("AddOptional",[a],b)}function Y(a,b={}){return H(a,b)}function Z(a){return Y(a)}function $(a){return q(a)&&u(a,"~optional")}function _(a,b={}){let c=v(a).filter(b=>!$(a[b]));return z({"~kind":"Object"},{type:"object",...c.length>0?{required:c}:{},properties:a},b)}function aa(a){return C(a,"Object")}function ab(a){return z({"~kind":"Unknown"},{},a)}function ac(a){return C(a,"Unknown")}function ad(a,b,c){return z({"~kind":"Cyclic"},{$defs:v(a).reduce((b,c)=>({...b,[c]:B(a[c],{},{$id:c})}),{}),$ref:b},c)}function ae(a){return C(a,"Cyclic")}function af(a){return B(a,{"~unsafe":null},{})}function ag(a){return p(a)&&u(a,"~unsafe")&&n(a["~unsafe"])}function ah(a,b){return b[a.length]?.(...a)??(()=>{throw Error("Invalid Arguments")})()}function ai(...a){let[b,c]=ah(a,{2:(a,b)=>[a,b,b],1:a=>[a,ab(),ab()]});return z({"~kind":"Infer"},{type:"infer",name:b,extends:c},{})}function aj(a){return C(a,"Infer")}function ak(a,b,c,d={}){return z({"~kind":"Dependent"},{if:a,then:b,else:c},d)}function al(a){return C(a,"Dependent")}function am(a){return r(a)||o(a)}function an(a,b){return z({"~kind":"Enum"},{enum:p(a)?v(a).filter(a=>isNaN(a)).reduce((b,c)=>[...b,a[c]],[]):a},b)}function ao(a){return C(a,"Enum")}function ap(a,b={}){return z({"~kind":"Intersect"},{allOf:a},b)}function aq(a){return C(a,"Intersect")}(d=e||(e={}))[d.Array=0]="Array",d[d.BigInt=1]="BigInt",d[d.Boolean=2]="Boolean",d[d.Date=3]="Date",d[d.Constructor=4]="Constructor",d[d.Function=5]="Function",d[d.Null=6]="Null",d[d.Number=7]="Number",d[d.Object=8]="Object",d[d.RegExp=9]="RegExp",d[d.String=10]="String",d[d.Symbol=11]="Symbol",d[d.TypeArray=12]="TypeArray",d[d.Undefined=13]="Undefined",BigInt("14695981039346656037");let[ar,as]=[BigInt("1099511628211"),BigInt("18446744073709551616")];Array.from({length:256}).map((a,b)=>BigInt(b));let at=new Float64Array(1);function au(){throw Error("Unreachable")}new DataView(at.buffer),new Uint8Array(at.buffer),new TextEncoder;class av{constructor(a,b){this.type=a,this.decode=b}Encode(a){let b=this.type,c=aA(b)?a=>this.decode(b["~codec"].decode(a)):this.decode,d=aA(b)?c=>b["~codec"].encode(a(c)):a;return B(this.type,{"~codec":{decode:c,encode:d}},{})}}class aw{constructor(a){this.type=a}Decode(a){return new av(this.type,a)}}function ax(a){return new aw(a)}function ay(a,b){return ax(a).Decode(b).Encode(()=>{throw Error("Encode not implemented")})}function az(a,b){return ax(a).Decode(()=>{throw Error("Decode not implemented")}).Encode(b)}function aA(a){return q(a)&&u(a,"~codec")&&q(a["~codec"])&&u(a["~codec"],"encode")&&u(a["~codec"],"decode")}function aB(a){return fh(a)}function aC(a){return q(a)&&u(a,"~immutable")}function aD(a,b={}){return E("AddReadonly",[a],b)}function aE(a,b={}){return G(a,b)}function aF(a){return aE(a)}function aG(a){return q(a)&&u(a,"~readonly")}function aH(...a){var b;let c,[d,e,f]=ah(a,{3:(a,b,c)=>[a,b,c],2:(a,b)=>[a,b,()=>"Refine Error"]});return b={check:e,error:f},c=aI(d)?[...d["~refine"],b]:[b],B(d,{"~refine":c},{})}function aI(a){return q(a)&&u(a,"~refine")&&j(a["~refine"])&&function(a,b){for(let c=0;c<a.length;c++)if(!b(a[c],c))return!1;return!0}(a["~refine"],a=>p(a)&&u(a,"check")&&u(a,"error")&&m(a.check)&&m(a.error))}function aJ(a){return z({"~kind":"BigInt"},{type:"bigint"},a)}function aK(a){return C(a,"BigInt")}function aL(a){return z({"~kind":"Boolean"},{type:"boolean"},a)}function aM(a){return C(a,"Boolean")}function aN(a){return z({"~kind":"Identifier"},{name:a})}function aO(a){return C(a,"Identifier")}let aP="-?(?:0|[1-9][0-9]*)";function aQ(a){return z({"~kind":"Integer"},{type:"integer"},a)}function aR(a){return C(a,"Integer")}class aS extends Error{constructor(a){super("Invalid Literal value"),Object.defineProperty(this,"cause",{value:{value:a},writable:!1,configurable:!1,enumerable:!1})}}function aT(a,b){return z({"~kind":"Literal"},{type:k(a)?"bigint":l(a)?"boolean":o(a)?"number":r(a)?"string":(()=>{throw new aS(a)})(),const:a},b)}function aU(a){return k(a)||l(a)||o(a)||r(a)}function aV(a){return C(a,"Literal")}function aW(a){return z({"~kind":"Null"},{type:"null"},a)}function aX(a){return C(a,"Null")}let aY="-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?";function aZ(a){return z({"~kind":"Number"},{type:"number"},a)}function a$(a){return C(a,"Number")}function a_(a){return z({"~kind":"Symbol"},{type:"symbol"},a)}function a0(a){return C(a,"Symbol")}function a1(...a){let[b,c,d]=ah(a,{3:(a,b,c)=>[a,b,c],2:(a,b)=>[a,b,b],1:a=>[a,ab(),ab()]});return z({"~kind":"Parameter"},{name:b,extends:c,equals:d},{})}function a2(a){return C(a,"Parameter")}function a3(a){return z({"~kind":"String"},{type:"string"},a)}function a4(a){return C(a,"String")}function a5(a,b={}){return z({"~kind":"Union"},{anyOf:a},b)}function a6(a){return C(a,"Union")}function a7(a){let b=cZ(a);return 2===b.length?b[0]:[]}function a8(a){return 0!==a.length&&function a(b){return s(b,(b,c)=>{var d;return!!(a6(d=b)?a8(d.anyOf):!!aV(d)&&(d.const,!0))&&a(c)},()=>!0)}(a)}function a9(a){return z({"~kind":"TemplateLiteral"},{type:"string",pattern:a},{})}function ba(a){var b;let c=a7(a);return 0===c.length?a3():a8(c)?0===(b=c).length?au():1===b.length&&aV(b[0])?b[0]:a5((function a(b,c){return s(c,(c,d)=>a(function a(b,c){var d,e;return a6(c)?function b(c,d,e=[]){return s(d,(d,f)=>b(c,f,[...e,...a(c,d)]),()=>e)}(b,c.anyOf):aV(c)?(d=b,e=c.const,0===d.length?[`${e}`]:function a(b,c,d=[]){return s(b,(b,e)=>a(e,c,[...d,`${b}${c}`]),()=>d)}(d,e)):au()}(b,c),d),()=>b)})([],b).map(a=>aT(a))):a9(a)}function bb(a,b){return z({"~kind":"Record"},{type:"object",patternProperties:{[a]:b}})}function bc(a,b={}){let[c,d,e]=[a,a.length,!1];return z({"~kind":"Tuple"},{type:"array",additionalItems:e,items:c,minItems:d},b)}function bd(a){return C(a,"Tuple")}function be(a,b){return B(A(a,["~readonly"]),{},b)}function bf(a,b){return B(A(a,["~optional"]),{},b)}function bg(a,b={}){return bf(a,b)}function bh(a){return a.reduceRight((a,b,c)=>({[c]:b,...a}),{})}function bi(a){return aa(a)?a.properties:bd(a)?bh(a.items):au()}function bj(a,b){var c;let d=bp(a);return bo((c=a6(d)?d.anyOf:[d],c.reduce((a,c)=>[...a,...dd(dF({},c,b))?[]:[c]],[])))}function bk(a,b,c){return bo([ap([a,b]),bj(c,a)])}function bl(a){return bo(a.map(a=>aT(a)))}function bm(a){return bq(dK(function a(b,c=[]){return s(b,(b,d)=>a6(b)?a(d,function b(c,d,e=[]){return s(c,(c,f)=>b(f,d,[...e,...a([c],d)]),()=>e)}(b.anyOf,c)):a(d,function a(b,c,d=[]){return s(c,(c,e)=>{var f,g;let h,i,j,k,l,m,n,o,p,q;return a(b,e,[...d,(h=bp(b),i=bp(c),j=a6(h),k=a6(i),l=j||k,m=aa(h)||bd(h),n=aa(i)||bd(i),l?bm([h,i]):m&&n?(o=bi(h),_([...new Set([...v(p=bi(i)),...v(o)])].reduce((a,b)=>{var c,d;let e,f,g;return{...a,[b]:b in o?b in p?(c=o[b],d=p[b],e=!!aG(c)&&!!aG(d),f=!!$(c)&&!!$(d),g=function(a,b={}){return be(a,b)}(bg(bm([c,d]))),e&&f?aE(Y(g)):e&&!f?aE(g):!e&&f?Y(g):g):o[b]:b in p?p[b]:V()}},{}))):m&&!n?h:!m&&n?i:(q=dJ(f=h,g=i))===dH?f:q===dI||q===dG?g:V())])},()=>0===d.length?[b]:d)}(b,c)),()=>c)}(a)))}function bn(a){let b;return bp(c6(b=ba(a))?a3():b)}function bo(a){return bq(dK(a))}function bp(a){return al(a)?bk(a.if,a.then,a.else):ao(a)?bl(a.enum):aq(a)?bm(a.allOf):c6(a)?bn(a.pattern):a6(a)?bo(a.anyOf):a}function bq(a){return 1===a.length?a[0]:0===a.length?V():a5(a)}function br(a){return a.reduce((a,b)=>[...a,...a6(b)?br(b.anyOf):[b]],[])}function bs(a,b,c){return fa([a])?B(function a(b,c){var d,e,f,g,h,i;return U(b)?bb(bv,c):aM(b)?_({true:c,false:c}):ao(b)?(d=b.enum,a(bl(d),c)):aR(b)?bb(bt,c):aq(b)?(e=b.allOf,a(bm(e),c)):aV(b)?(f=b.const,g=c,r(f)||o(f)?_({[f]:g}):!1===f?_({false:g}):!0===f?_({true:g}):_({})):a$(b)?bb(bu,c):a6(b)?function(a,b){var c,d;let e=br(a),f=(c=e,d=b,!0===c.some(a=>a4(a)||a$(a)||aR(a))?bb(bv,d):void 0);return q(f)?f:_(e.reduce((a,c)=>aV(c)&&(r(c.const)||o(c.const))?{...a,[c.const]:b}:a,{}))}(b.anyOf,c):a4(b)?u(b,"pattern")&&(r(b.pattern)||b.pattern instanceof RegExp)?bb(b.pattern.toString(),c):bb(bv,c):c6(b)?(h=b.pattern,i=c,a8(a7(h))?a(bn(h),i):bb(h,i)):_({})}(a,b),{},c):bw(a,b,c)}let bt=`^${aP}$`,bu=`^${aY}$`,bv="^.*$";function bw(a,b,c={}){return E("Record",[a,b],c)}function bx(a,b,c={}){return bs(a,b,c)}function by(a){return a===bv?a3():a===bt?aQ():a===bu?aZ():ba(a)}function bz(a){return v(a.patternProperties)[0]}function bA(a){return by(bz(a))}function bB(a){return a.patternProperties[bz(a)]}function bC(a){return C(a,"Record")}function bD(a){return z({"~kind":"Rest"},{type:"rest",items:a},{})}function bE(a){return C(a,"Rest")}function bF(a){return z({"~kind":"This"},{$ref:"#"},a)}function bG(a){return C(a,"This")}function bH(a){return z({"~kind":"Undefined"},{type:"undefined"},a)}function bI(a){return C(a,"Undefined")}function bJ(a){return z({"~kind":"Void"},{type:"void"},a)}function bK(a){return C(a,"Void")}function bL(){throw Error("Unreachable")}let bM=a=>{let[b,c]=a;return[...b,...c].reduce((a,b)=>j(b)&&2===b.length?[...a,b[0]]:[...a,b],[])};function bN(a,b){return b.reduce((a,b)=>1===b.length?ej(a,b[0]):0===b.length?I(a):bL(),a)}function bO(a,b){return 3===b.length?d6(a,b[0],b[1],b[2]):a}function bP(a,b){return 3===b.length?(()=>{let[c,d,e]=b,f=bP(d,e);return"&"===c?aq(f)?ap([a,...f.allOf]):ap([a,f]):"|"===c?a6(f)?a5([a,...f.anyOf]):a5([a,f]):void bL()})():a}function bQ(a){return a.reduce((a,b)=>u(b,bt)||u(b,bu)||u(b,bv)?[a[0],i(a[1],b)]:[i(a[0],b),a[1]],[{},{}])}function bR(a,b){return"remove"===a?function(a,b={}){return E("RemoveReadonly",[a],b)}(b):"add"===a?aD(b):b}function bS(a,b){return"remove"===a?function(a,b={}){return E("RemoveOptional",[a],b)}(b):"add"===a?X(b):b}function bT(a){return 2===a.length}function bU(a,b,c){return bT(a)?b(a[0],a[1]):c()}function bV(a,b){for(let e=0;e<a.length;e++){var c,d;let f=(c=a[e],0===(d=b).indexOf(c)?[c,d.slice(c.length)]:[]);if(bT(f))return f}return[]}function bW(a,b){return Array.from({length:b-a+1},(b,c)=>String.fromCharCode(a+c))}let bX=[...bW(97,122),...bW(65,90)],bY=bW(49,57),bZ=["0",...bY];function b$(a){let b=a.indexOf("*/");return -1===b?"":a.slice(b+2)}function b_(a){let b=a.indexOf("\n");return -1===b?"":a.slice(b)}function b0(a){let b=a.trimStart();return b.startsWith("/*")?b0(b$(b.slice(2))):b.startsWith("//")?b0(b_(b.slice(2))):b}function b1(a,b){return bU(bV([a],b),(a,b)=>[a,b],()=>["",b])}function b2(a,b,c,d=""){return bU(bV(a,c),(c,e)=>b.includes(c)?b2(a,b,e,d):b2(a,b,e,`${d}${c}`),()=>[d,c])}let b3=[...bZ,"_"];function b4(a){var b;return bU(bV(["0"],b=b0(a)),(a,b)=>[a,b],()=>bU(bV(bY,b),(a,b)=>bU(b2(b3,["_"],b),(b,c)=>[`${a}${b}`,c],()=>[]),()=>[]))}function b5(a){return bU(bU(b1("-",b0(a)),(a,b)=>bU(b4(b),(b,c)=>[`${a}${b}`,c],()=>[]),()=>[]),(a,b)=>bU(bV(["n"],b),(b,c)=>[`${a}`,c],()=>[]),()=>[])}function b6(a,b){return""===a?["",b]:a.startsWith("\n")?bV([a],function a(b){let c=b.replace(/^[ \t\r\f\v]+/,"");return c.startsWith("/*")?a(b$(c.slice(2))):c.startsWith("//")?a(b_(c.slice(2))):c}(b)):a.startsWith(" ")?bV([a],b):bV([a],b0(b))}let b7=[...bX,"_","$"],b8=[...b7,...bZ];function b9(a){return bU(bV(b7,b0(a)),(a,b)=>bU(function a(b,c=""){return bU(bV(b8,b),(b,d)=>a(d,`${c}${b}`),()=>[c,b])}(b),(b,c)=>[`${a}${b}`,c],()=>[]),()=>[])}let ca=[...bZ,"_"];function cb(a){return bU(b2(ca,["_"],a),(a,b)=>""===a?[]:[a,b],()=>[])}function cc(a){return bU(b1("-",b0(a)),(a,b)=>{var c;return bU(bT(bV(["."],c=b0(b)))?bU(bV(["."],c),(a,b)=>bU(cb(b),(b,c)=>[`0${a}${b}`,c],()=>[]),()=>[]):bU(b4(c),(a,b)=>bU(bV(["."],b),(b,c)=>bU(cb(c),(c,d)=>[`${a}${b}${c}`,d],()=>[`${a}`,c]),()=>[`${a}`,b]),()=>[]),(b,c)=>[`${a}${b}`,c],()=>[])},()=>[])}function cd(a,b,c=""){var d;return bU(""===(d=b)?[]:[d.slice(0,1),d.slice(1)],(d,e)=>!function a(b,c){return s(b,(b,d)=>!!c.startsWith(b)||a(d,c),()=>!1)}(a,b)?cd(a,e,`${c}${d}`):[c,b],()=>[])}function ce(a,b){return bU(bV(a,b0(b)),(a,b)=>{var c;return c=`${a}${b}`,bU(bV([a],b0(c)),(b,c)=>bU(cd(["\n",a],c),(b,c)=>bU(bV([a],c),(a,c)=>[`${b}`,c],()=>[]),()=>[]),()=>[])},()=>[])}let cf=(a,b,c=()=>[])=>2===a.length?b(a):c(),cg=a=>cf(cf(cf(cf(b9(a),([a,b])=>cf(b6("extends",b),([b,c])=>cf(cy(c),([c,d])=>cf(b6("=",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[a1(a[0],a[2],a[4]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6("extends",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a1(a[0],a[2],a[2]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6("=",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a1(a[0],ab(),a[2]),b]),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>[a1(a,ab(),ab()),b]),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),ch=(a,b=[])=>cf(cf(cg(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>ch(c,[...b,a]),()=>[b,a]),ci=a=>cf(cf(b6("<",a),([a,b])=>cf(cf(cf(ch(b),([a,b])=>cf(cf(cf(cg(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6(">",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),cj=(a,b=[])=>cf(cf(cy(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cj(c,[...b,a]),()=>[b,a]),ck=a=>cf(cf(cf(b6(";",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[null,b]),cl=a=>cf(b6("string",a),([a,b])=>[a3(),b]),cm=a=>cf(b6("number",a),([a,b])=>[aZ(),b]),cn=a=>cf(b6("integer",a),([a,b])=>[aQ(),b]),co=a=>cf(b6("symbol",a),([a,b])=>[a_(),b]),cp=a=>cf(cd(["${","`"],a),([a,b])=>[aT(a),b]),cq=a=>cf(cf(cf(cp(a),([a,b])=>cf(cf(cf(b6("${",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6("}",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),([b,c])=>cf(cq(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cf(cp(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(cp(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[]))),([a,b])=>{var c;return[3===(c=a).length?[c[0],c[1],...c[2]]:[c[0]],b]}),cr=a=>cf(cf(b6("`",a),([a,b])=>cf(cq(b),([b,c])=>cf(b6("`",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),cs=(a,b=[])=>cf(cf(cf(b6("[",a),([a,b])=>cf(cy(b),([b,c])=>cf(b6("]",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cf(b6("[",a),([a,b])=>cf(b6("]",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>[])),([a,c])=>cs(c,[...b,a]),()=>[b,a]),ct=a=>cf(cf(cf(cf(cf(b6("keyof",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a.length>0,b]),([a,b])=>cf(cf(cf(cf(b6("(",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6(")",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cl(b),([a,b])=>[a,b],()=>cf(cm(b),([a,b])=>[a,b],()=>cf(cf(b6("boolean",b),([a,b])=>[aL(),b]),([a,b])=>[a,b],()=>cf(cf(b6("undefined",b),([a,b])=>[bH(),b]),([a,b])=>[a,b],()=>cf(cf(b6("null",b),([a,b])=>[aW(),b]),([a,b])=>[a,b],()=>cf(cn(b),([a,b])=>[a,b],()=>cf(cf(b6("bigint",b),([a,b])=>[aJ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("unknown",b),([a,b])=>[ab(),b]),([a,b])=>[a,b],()=>cf(cf(b6("any",b),([a,b])=>[T(),b]),([a,b])=>[a,b],()=>cf(cf(b6("object",b),([a,b])=>[_({}),b]),([a,b])=>[a,b],()=>cf(cf(b6("never",b),([a,b])=>[V(),b]),([a,b])=>[a,b],()=>cf(co(b),([a,b])=>[a,b],()=>cf(cf(b6("void",b),([a,b])=>[bJ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("this",b),([a,b])=>[bF(),b]),([a,b])=>[a,b],()=>cf(cf(b5(b),([a,b])=>[aT(BigInt(a)),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("true",b),([a,b])=>[a,b],()=>cf(b6("false",b),([a,b])=>[a,b],()=>[])),([a,b])=>[aT("true"===a),b]),([a,b])=>[a,b],()=>cf(cf(cc(b),([a,b])=>[aT(parseFloat(a)),b]),([a,b])=>[a,b],()=>cf(cf(ce(["'",'"'],b),([a,b])=>[aT(a),b]),([a,b])=>[a,b],()=>cf(cf(cr(b),([a,b])=>[c4(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(cf(b6("if",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6("then",c),([c,d])=>cf(cy(d),([d,e])=>cf(b6("else",e),([e,f])=>cf(cy(f),([f,g])=>[[a,b,c,d,e,f],g])))))),([a,b])=>[a,b],()=>cf(cf(b6("if",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6("then",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>[])),([a,b])=>[6===a.length?ak(a[1],a[3],a[5]):ak(a[1],a[3],ab()),b]),([a,b])=>[a,b],()=>cf(cE(b),([a,b])=>[a,b],()=>cf(cI(b),([a,b])=>[a,b],()=>cf(cO(b),([a,b])=>[a,b],()=>cf(cN(b),([a,b])=>[a,b],()=>cf(cP(b),([a,b])=>[a,b],()=>cf(cf(cf(b9(b),([a,b])=>cf(cf(cf(b6("<",b),([a,b])=>cf(cf(cf(cj(b),([a,b])=>cf(cf(cf(cy(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6(">",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),([b,c])=>[[a,b],c])),([a,b])=>{var c,d;return[(c=a[0],d=a[1],"Array"===c?I(d[0]):"Capitalize"===c?dS(d[0]):"ConstructorParameters"===c?d9(d[0]):"Evaluate"===c?function(a,b={}){return E("Evaluate",[a],b)}(d[0]):"Exclude"===c?ec(d[0],d[1]):"Extract"===c?ef(d[0],d[1]):"Index"===c?ej(d[0],d[1]):"InstanceType"===c?ey(d[0]):"Lowercase"===c?dU(d[0]):"NonNullable"===c?eI(d[0]):"Omit"===c?eL(d[0],d[1]):"Parameters"===c?eP(d[0]):"Partial"===c?eS(d[0]):"Pick"===c?eV(d[0],d[1]):"Readonly"===c?eY(d[0]):"KeyOf"===c?eB(d[0]):"Record"===c?bw(d[0],d[1]):"Required"===c?e0(d[0]):"ReturnType"===c?e3(d[0]):"Uncapitalize"===c?dW(d[0]):"Uppercase"===c?dY(d[0]):dO(P(c),d)),b]}),([a,b])=>[a,b],()=>cf(cQ(b),([a,b])=>[a,b],()=>[])))))))))))))))))))))))))))),([a,b])=>[j(a)&&3===a.length?a[1]:a,b]),([b,c])=>cf(cf(cs(c),([a,b])=>[a.reduce((a,b)=>3===b.length?[...a,[b[1]]]:[...a,[]],[]),b]),([c,d])=>cf(cf(cf(cf(b6("extends",d),([a,b])=>cf(cy(b),([b,c])=>cf(b6("?",c),([c,d])=>cf(cy(d),([d,e])=>cf(b6(":",e),([e,f])=>cf(cy(f),([f,g])=>[[a,b,c,d,e,f],g])))))),([a,b])=>[a,b],()=>cf([[],d],([a,b])=>[a,b],()=>[])),([a,b])=>[6===a.length?[a[1],a[3],a[5]]:[],b]),([d,e])=>cf(cf(cf(cf(b6("with",e),([a,b])=>cf(cT(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf([[],e],([a,b])=>[a,b],()=>[])),([a,b])=>[2===a.length?a[1]:[],b]),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[function(a){let[b,c,d,e,f]=a;var g=b?bO(eB(bN(c,d)),e):bO(bN(c,d),e);return j(f)&&0===f.length?g:e6(g,f)}(a),b]),cu=a=>cf(cf(cf(b6("&",a),([a,b])=>cf(ct(b),([b,c])=>cf(cu(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a,b]),cv=a=>cf(cf(ct(a),([a,b])=>cf(cu(b),([b,c])=>[[a,b],c])),([a,b])=>[function(a){let[b,c]=a;return bP(b,c)}(a),b]),cw=a=>cf(cf(cf(b6("|",a),([a,b])=>cf(cv(b),([b,c])=>cf(cw(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a,b]),cx=a=>cf(cf(cv(a),([a,b])=>cf(cw(b),([b,c])=>[[a,b],c])),([a,b])=>[function(a){let[b,c]=a;return bP(b,c)}(a),b]),cy=a=>cf(cf(cf(cf(cf(b6("infer",a),([a,b])=>cf(b9(b),([b,c])=>cf(b6("extends",c),([c,d])=>cf(cx(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>cf(cf(b6("infer",a),([a,b])=>cf(b9(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>[])),([a,b])=>[4===a.length?ai(a[1],a[3]):2===a.length?ai(a[1],ab()):bL(),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("|",a),([a,b])=>cf(cx(b),([b,c])=>[[a,b],c])),([a,b])=>[a[1],b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("readonly",a),([a,b])=>cf(cx(b),([b,c])=>[[a,b],c])),([a,b])=>[function(a,b={}){return E("AddImmutable",[a],b)}(a[1]),b]),([a,b])=>[a,b],()=>cf(cx(a),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),cz=a=>cf(cf(cf(cc(a),([a,b])=>[`${a}`,b]),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>[a,b]),([a,b])=>[a,b],()=>cf(cf(ce(["'",'"'],a),([a,b])=>[a,b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("[",a),([a,b])=>cf(b9(b),([b,c])=>cf(b6(":",c),([c,d])=>cf(cf(cn(d),([a,b])=>[a,b],()=>cf(cm(d),([a,b])=>[a,b],()=>cf(cl(d),([a,b])=>[a,b],()=>cf(co(d),([a,b])=>[a,b],()=>[])))),([d,e])=>cf(b6("]",e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[aR(a[3])?bt:a$(a[3])?bu:a0(a[3])||a4(a[3])?bv:bL(),b]),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),cA=a=>cf(cf(cf(cf(cf(b6("readonly",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a.length>0,b]),([a,b])=>cf(cz(b),([b,c])=>cf(cf(cf(cf(b6("?",c),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],c],([a,b])=>[a,b],()=>[])),([a,b])=>[a.length>0,b]),([c,d])=>cf(b6(":",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[function(a){let[b,c,d,e,f]=a;return{[c]:b&&d?aD(X(f)):b&&!d?aD(f):!b&&d?X(f):f}}(a),b]),cB=a=>cf(cf(cf(b6(",",a),([a,b])=>cf(b6("\n",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6(";",a),([a,b])=>cf(b6("\n",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6(",",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(b6(";",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(b6("\n",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[]))))),([a,b])=>[a,b]),cC=(a,b=[])=>cf(cf(cA(a),([a,b])=>cf(cB(b),([b,c])=>[[a,b],c])),([a,c])=>cC(c,[...b,a]),()=>[b,a]),cD=a=>cf(cf(b6("{",a),([a,b])=>cf(cf(cf(cC(b),([a,b])=>cf(cf(cf(cA(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("}",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[bQ(a[1]),b]),cE=a=>cf(cD(a),([a,b])=>[function(a){let[b,c]=a;return _(b,0===v(c).length?{}:{patternProperties:c})}(a),b]),cF=a=>cf(cf(cf(cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(b6("readonly",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(b6("readonly",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>[])))),([a,b])=>[5===a.length?aD(X(a[4])):3===a.length?a[2]:4===a.length?"readonly"===a[2]?aD(a[3]):X(a[3]):bL(),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("readonly",a),([a,b])=>cf(cy(b),([b,c])=>cf(b6("?",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[aD(X(a[1])),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("readonly",a),([a,b])=>cf(cy(b),([b,c])=>[[a,b],c])),([a,b])=>[aD(a[1]),b]),([a,b])=>[a,b],()=>cf(cf(cf(cy(a),([a,b])=>cf(b6("?",b),([b,c])=>[[a,b],c])),([a,b])=>[X(a[0]),b]),([a,b])=>[a,b],()=>cf(cy(a),([a,b])=>[a,b],()=>[]))))),([a,b])=>[a,b]),cG=a=>cf(cf(cf(b6("...",a),([a,b])=>cf(cF(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(cF(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[])),([a,b])=>{var c;return[2===(c=a).length?bD(c[1]):1===c.length?c[0]:bL(),b]}),cH=(a,b=[])=>cf(cf(cG(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cH(c,[...b,a]),()=>[b,a]),cI=a=>cf(cf(b6("[",a),([a,b])=>cf(cf(cf(cH(b),([a,b])=>cf(cf(cf(cG(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("]",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[bc(a[1]),b]),cJ=a=>cf(cf(cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(b6("readonly",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[aD(X(a[4])),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(b6("readonly",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[aD(a[3]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[X(a[3]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[2],b]),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),cK=a=>cf(cf(cf(b6("...",a),([a,b])=>cf(cJ(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(cJ(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[])),([a,b])=>{var c;return[2===(c=a).length?bD(c[1]):1===c.length?c[0]:bL(),b]}),cL=(a,b=[])=>cf(cf(cK(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cL(c,[...b,a]),()=>[b,a]),cM=a=>cf(cf(cL(a),([a,b])=>cf(cf(cf(cK(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),cN=a=>cf(cf(b6("(",a),([a,b])=>cf(cM(b),([b,c])=>cf(b6(")",c),([c,d])=>cf(b6("=>",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[N(a[1],a[4]),b]),cO=a=>cf(cf(b6("new",a),([a,b])=>cf(b6("(",b),([b,c])=>cf(cM(c),([c,d])=>cf(b6(")",d),([d,e])=>cf(b6("=>",e),([e,f])=>cf(cy(f),([f,g])=>[[a,b,c,d,e,f],g])))))),([a,b])=>[L(a[2],a[5]),b]),cP=a=>cf(cf(b6("{",a),([a,b])=>cf(cf(cf(cf(b6("+",b),([a,b])=>cf(b6("readonly",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("-",b),([a,b])=>cf(b6("readonly",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("readonly",b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])))),([a,b])=>[2===a.length&&"-"===a[0]?"remove":2===a.length&&"+"===a[0]||1===a.length?"add":"none",b]),([b,c])=>cf(b6("[",c),([c,d])=>cf(b9(d),([d,e])=>cf(b6("in",e),([e,f])=>cf(cy(f),([f,g])=>cf(cf(cf(cf(b6("as",g),([a,b])=>cf(cy(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf([[],g],([a,b])=>[a,b],()=>[])),([a,b])=>[2===a.length?[a[1]]:[],b]),([g,h])=>cf(b6("]",h),([h,i])=>cf(cf(cf(cf(b6("+",i),([a,b])=>cf(b6("?",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("-",i),([a,b])=>cf(b6("?",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("?",i),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],i],([a,b])=>[a,b],()=>[])))),([a,b])=>[2===a.length&&"-"===a[0]?"remove":2===a.length&&"+"===a[0]||1===a.length?"add":"none",b]),([i,j])=>cf(b6(":",j),([j,k])=>cf(cy(k),([k,l])=>cf(ck(l),([l,m])=>cf(b6("}",m),([m,n])=>[[a,b,c,d,e,f,g,h,i,j,k,l,m],n]))))))))))))),([a,b])=>{var c;return[j((c=a)[6])&&1===c[6].length?eE(aN(c[3]),c[5],c[6][0],bR(c[1],bS(c[8],c[10]))):eE(aN(c[3]),c[5],P(c[3]),bR(c[1],bS(c[8],c[10]))),b]}),cQ=a=>cf(b9(a),([a,b])=>[P(a),b]),cR=a=>cf(cf(cz(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(cV(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[{[a[0]]:a[2]},b]),cS=(a,b=[])=>cf(cf(cR(a),([a,b])=>cf(cB(b),([b,c])=>[[a,b],c])),([a,c])=>cS(c,[...b,a]),()=>[b,a]),cT=a=>cf(cf(b6("{",a),([a,b])=>cf(cf(cf(cS(b),([a,b])=>cf(cf(cf(cR(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("}",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1].reduce((a,b)=>i(a,b),{}),b]),cU=(a,b=[])=>cf(cf(cV(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cU(c,[...b,a]),()=>[b,a]),cV=a=>cf(cf(cf(b5(a),([a,b])=>[BigInt(a),b]),([a,b])=>[a,b],()=>cf(cf(cc(a),([a,b])=>[parseFloat(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("true",a),([a,b])=>[a,b],()=>cf(b6("false",a),([a,b])=>[a,b],()=>[])),([a,b])=>["true"===a,b]),([a,b])=>[a,b],()=>cf(cf(ce(['"',"'"],a),([a,b])=>[a,b]),([a,b])=>[a,b],()=>cf(cf(b6("null",a),([a,b])=>[null,b]),([a,b])=>[a,b],()=>cf(cf(b6("undefined",a),([a,b])=>[void 0,b]),([a,b])=>[a,b],()=>cf(cT(a),([a,b])=>[a,b],()=>cf(cf(cf(b6("[",a),([a,b])=>cf(cf(cf(cU(b),([a,b])=>cf(cf(cf(cV(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("]",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),([a,b])=>[a,b],()=>[])))))))),([a,b])=>[a,b]),cW=a=>cf(cf(cf(cX(a),([a,b])=>cf(b6("|",b),([b,c])=>cf(cW(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cf(cX(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[]))),([a,b])=>[3===a.length?[...a[0],...a[2]]:1===a.length?[...a[0]]:[],b]),cX=a=>{let b;return cf(cf(cf(cf(cf(b6("-?(?:0|[1-9][0-9]*)n",b=a),([a,b])=>[aJ(),b]),([a,b])=>[a,b],()=>cf(cf(b6(".*",b),([a,b])=>[a3(),b]),([a,b])=>[a,b],()=>cf(cf(b6("-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?",b),([a,b])=>[aZ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("-?(?:0|[1-9][0-9]*)",b),([a,b])=>[aQ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("(?!)",b),([a,b])=>[V(),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("(",b),([a,b])=>cf(cY(b),([b,c])=>cf(b6(")",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a5(a[1]),b]),([a,b])=>[a,b],()=>cf(cf(bU(cd(["-?(?:0|[1-9][0-9]*)n",".*","-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?","-?(?:0|[1-9][0-9]*)","(?!)","(",")","$","|"],b),(a,b)=>""===a?[]:[a,b],()=>[]),([a,b])=>[aT(a),b]),([a,b])=>[a,b],()=>[]))))))),([a,b])=>[a,b]),([a,b])=>cf(cY(b),([b,c])=>[[a,b],c])),([a,b])=>[[a[0],...a[1]],b])},cY=a=>cf(cf(cW(a),([a,b])=>[a,b],()=>cf(cX(a),([a,b])=>[a,b],()=>[])),([a,b])=>[a,b]),cZ=a=>cf(cf(b6("^",a),([a,b])=>cf(cY(b),([b,c])=>cf(b6("$",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),c$=(a,b=[])=>cf(cf(cy(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>c$(c,[...b,a]),()=>[b,a]),c_=a=>cf(cf(cf(b6("extends",a),([a,b])=>cf(cf(cf(c$(b),([a,b])=>cf(cf(cf(cy(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>{var c;return[2===(c=a).length?c[1]:[],b]}),c0=(a,b=[])=>cf(cf(c1(a),([a,b])=>cf(cf(cf(cf(b6(";",b),([a,b])=>cf(b6("\n",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6(";",b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(b6("\n",b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[]))),([a,b])=>[a,b]),([b,c])=>[[a,b],c])),([a,c])=>c0(c,[...b,a]),()=>[b,a]),c1=a=>cf(cf(cf(cf(cf(b6("export",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[null,b]),([a,b])=>cf(cf(cf(cf(b6("interface",b),([a,b])=>cf(b9(b),([b,c])=>cf(ci(c),([c,d])=>cf(c_(d),([d,e])=>cf(cD(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[function(a){let b=a[2],c=a[3],[d,e]=a[4],f=0===v(e).length?{}:{patternProperties:e};return{[a[1]]:R(b,du(c,d,f))}}(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("interface",b),([a,b])=>cf(b9(b),([b,c])=>cf(c_(c),([c,d])=>cf(cD(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[function(a){let b=a[2],[c,d]=a[3],e=0===v(d).length?{}:{patternProperties:d};return{[a[1]]:du(b,c,e)}}(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("type",b),([a,b])=>cf(b9(b),([b,c])=>cf(ci(c),([c,d])=>cf(b6("=",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[{[a[1]]:R(a[2],a[4])},b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("type",b),([a,b])=>cf(b9(b),([b,c])=>cf(b6("=",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[{[a[1]]:a[3]},b]),([a,b])=>[a,b],()=>[])))),([b,c])=>cf(ck(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]);function c2(a,b){return s(a,(a,c)=>(function a(b,c,d){var e,f,g,h,i;return ao(b)?(e=b.enum,a(bl(e),c,d)):aR(b)?c2(c,`${d}${aP}`):aV(b)?(f=b.const,c2(c,`${d}${f}`)):aK(b)?c2(c,`${d}-?(?:0|[1-9][0-9]*)n`):aM(b)?a(a5([aT("false"),aT("true")]),c,d):a$(b)?c2(c,`${d}${aY}`):a4(b)?c2(c,`${d}.*`):c6(b)?(g=b.pattern,c2(c,`${d}${g.slice(1,g.length-1)}`)):q(i=b)&&u(i,"action")&&"TemplateLiteral"===i.action?(h=b.parameters[0],a(c3(h,{}),c,d)):a6(b)?function b(c,d,e,f=[]){return s(c,(c,g)=>b(g,d,e,[...f,a(c,[],"")]),()=>c2(d,`${e}(${f.join("|")})`))}(b.anyOf,c,d):"(?!)"})(a,c,b),()=>b)}function c3(a,b){let c;return fa(a)?B(a9((c=c2(a,""),`^${c}$`)),{},b):c4(a,b)}function c4(a,b={}){return E("TemplateLiteral",[a],b)}function c5(a,b={}){var c;let d;return B(r(a)?c3((c=a,2===(d=cr(`\`${c}\``)).length?d[0]:au()),{}):c3(a,{}),{},b)}function c6(a){return C(a,"TemplateLiteral")}function c7(a){return z({"~kind":"ExtendsUnion"},{inferred:a})}function c8(a){return q(a)&&u(a,"~kind")&&u(a,"inferred")&&"ExtendsUnion"===a["~kind"]&&q(a.inferred)}function c9(a){return z({"~kind":"ExtendsTrue"},{inferred:a})}function da(a){return q(a)&&u(a,"~kind")&&u(a,"inferred")&&"ExtendsTrue"===a["~kind"]&&q(a.inferred)}function db(){return z({"~kind":"ExtendsFalse"},{})}function dc(a){return q(a)&&u(a,"~kind")&&"ExtendsFalse"===a["~kind"]}function dd(a){return c8(a)||da(a)}function de(a,b,c){return dd(a)?b(a.inferred):c()}function df(a,b,c){var d,e,f,g;return U(c)?c9(a):al(c)?(d=c.if,e=c.then,f=c.else,de(ds(a,b,d),a=>de(ds(a,b,e),a=>c9(a),()=>db()),()=>de(ds(a,b,f),a=>c9(a),()=>db()))):ao(c)?ds(a,b,bl(c.enum)):aj(c)?(g=c.name,de(ds(a,b,c.extends),c=>c9(i(i(a,c),{[g]:b})),()=>db())):aq(c)?function a(b,c,d){return s(d,(d,e)=>de(ds(b,c,d),b=>a(b,c,e),()=>db()),()=>c9(b))}(a,b,c.allOf):c6(c)?ds(a,b,bn(c.pattern)):a6(c)?function a(b,c,d){return s(d,(d,e)=>de(ds(b,c,d),a=>c9(a),()=>a(b,c,e)),()=>db())}(a,b,c.anyOf):ac(c)?c9(a):db()}function dg(a,b,c){return s(b,(b,d)=>s(c,(c,e)=>{let f,g,h,i;return f=aj(c)?b:c,g=aj(c)?c:b,h=$(b),i=$(c),!h&&i?db():de(ds(a,f,g),a=>dg(a,d,e),()=>db())},()=>$(b)?c9(a):db()),()=>c9(a))}function dh(a,b,c){return bK(c)?c9(a):ds(a,b,c)}function di(a,b,c){return b===c?c9(a):db()}function dj(a,b){return z({"~kind":"Inferrable"},{name:a,type:b},{})}function dk(a){return q(a)&&u(a,"~kind")&&u(a,"name")&&u(a,"type")&&"Inferrable"===a["~kind"]&&r(a.name)&&q(a.type)}function dl(a){return bE(a)?aj(a.items)?J(a.items.extends)?dj(a.items.name,a.items.extends.items):ac(a.items.extends)?dj(a.items.name,a.items.extends):void 0:au():void 0}function dm(a){return aj(a)?dj(a.name,a.extends):void 0}function dn(a,b,c=[]){return s(a,(a,d)=>de(ds({},a,b),()=>dn(d,b,[...c,a]),()=>void 0),()=>c)}function dp(a,b,c,d){let e=dn(c,d);return j(e)?c9(i(a,{[b]:a5(e)})):db()}function dq(a,b){return b?[...a].reverse():a}function dr(a,b,c){return s(b,(b,d)=>de(function a(b,c,d){return s(d,(d,e)=>de(ds(b,c,d),a=>c9(a),()=>a(b,c,e)),()=>db())}(a,b,c),a=>dr(a,d,c),()=>db()),()=>c9(a))}function ds(a,b,c){var d,e,f,g,h,m,n,p,t,x,y,z,A,B,C,D,E,F,G,H,I,K,L,N;let P,Q,R,S,T,V,X,Y,Z,ab;return U(b)?aj(c)?df(a,b,c):U(c)||ac(c)?c9(a):c7(a):J(b)?(d=b.items,J(c)?(P=aC(b),Q=aC(c),P&&Q||!P&&Q||!P||Q)?ds(a,d,c.items):db():df(a,b,c)):aK(b)?aK(c)?c9(a):df(a,b,c):aM(b)?aM(c)?c9(a):df(a,b,c):M(b)?(e=b.parameters,f=b.instanceType,U(c)||ac(c)?c9(a):M(c)?de(dg(a,e,c.parameters),a=>dh(a,f,c.instanceType),()=>db()):db()):al(b)?(g=b.if,h=b.then,m=b.else,de(ds(a,g,c),()=>ds(a,h,c),()=>ds(a,m,c))):ao(b)?(n=b.enum,ds(a,bl(n),c)):O(b)?(p=b.parameters,t=b.returnType,U(c)||ac(c)?c9(a):O(c)?de(dg(a,p,c.parameters),a=>dh(a,t,c.returnType),()=>db()):db()):aR(b)?aR(c)||a$(c)?c9(a):df(a,b,c):aq(b)?(x=b.allOf,ds(a,bm(x),c)):aV(b)?k(b.const)?(y=b.const,aV(c)?di(a,y,c.const):aK(c)?c9(a):df(a,aT(y),c)):l(b.const)?(z=b.const,aV(c)?di(a,z,c.const):aM(c)?c9(a):df(a,aT(z),c)):o(b.const)?(A=b.const,aV(c)?di(a,A,c.const):a$(c)?c9(a):df(a,aT(A),c)):r(b.const)?(B=b.const,aV(c)?di(a,B,c.const):a4(c)?c9(a):df(a,aT(B),c)):au():W(b)?aj(c)?df(a,b,c):c9(a):aX(b)?aX(c)?c9(a):df(a,b,c):a$(b)?a$(c)?c9(a):df(a,b,c):aa(b)?(C=b.properties,bC(c)?(bz(c),D=bB(c),R=v(C),function a(b,c,d,e){return s(c,(c,f)=>de(ds({},b[c],d),c=>a(b,f,d,v(c).reduce((a,b)=>({...a,[b]:u(e,b)?a6(a[b])?a5([...a[b].anyOf,c[b]]):a5([e[b],c[b]]):c[b]}),e)),()=>db()),()=>c9(e))}(C,R,D,a)):aa(c)?(S=function(a,b,c){var d;let e={};for(let d of v(c))e[d]=d in b?function(a,b,c){return aj(c)&&W(c.extends)?db():de(ds(a,b,c),a=>$(b)?$(c)?c9(a):db():c9(a),()=>db())}({},b[d],c[d]):$(c[d])?aj(c[d])?c9(i(a,{[c[d].name]:c[d].extends})):c9(a):db();let f=w(e).every(a=>dd(a)),g=f?(d=v(e),d.reduce((a,b)=>b in e&&dd(e[b])?{...a,...e[b].inferred}:au(),{})):{};return f?c9(g):db()}(a,C,c.properties),dd(S)?c9(i(a,S.inferred)):db()):df(a,_(C),c)):bC(b)?(E=bz(b),F=bB(b),bC(c)?(by(E),by(bz(c)),ds(a,F,bB(c))):aa(c)?(L=a,0===v(c.properties).length?c9(L):db()):U(c)||ac(c)?c9(a):db()):a4(b)?a4(c)?c9(a):df(a,b,c):a0(b)?a0(c)?c9(a):df(a,b,c):c6(b)?(G=b.pattern,ds(a,bn(G),c)):bd(b)?(H=b.items,T=fc(a,e9([],[]),H),bd(c)?(I=c.items,ab=q(Z=(N=V=fc(a,e9([],[]),I)).length>0?N[0]:void 0)?dl(Z):void 0,function a(b,c,d,e){return s(e,(e,f)=>{var g;let h,k;return dk(h=dl(e))?(g=h.name,j(k=dn(dq(d,c),h.type))?c9(i(b,{[g]:bc(k)})):db()):s(d,(d,g)=>de(ds(b,d,e),b=>a(b,c,g,f),()=>db()),()=>db())},()=>0===d.length?c9(b):db())}(a,X=q(ab),dq(T,X),dq(V,X))):J(c)?function a(b,c,d){let e=dm(d);return dk(e)?dp(b,e.name,c,e.type):s(c,(c,e)=>de(ds(b,c,d),b=>a(b,e,d),()=>db()),()=>c9(b))}(a,T,c.items):df(a,bc(T),c)):bI(b)?bK(c)||bI(c)?c9(a):df(a,b,c):a6(b)?(K=b.anyOf,dk(Y=dm(c))?dp(a,Y.name,K,Y.type):a6(c)?dr(a,K,c.anyOf):dr(a,K,[c])):ac(b)?aj(c)?df(a,b,c):U(c)||ac(c)?c9(a):db():bK(b)?bK(c)?c9(a):df(a,b,c):db()}function dt(a,b,c){return fa(a)?B(bm([...a,_(b)]),{},c):du(a,b,c)}function du(a,b,c={}){return E("Interface",[a,b],c)}function dv(a){return q(a)&&u(a,"action")&&"Interface"===a.action}function dw(a,b,c={}){return dt(a,b,c)}function dx(a,b,c){return s(c,(c,d)=>!!dy(a,b,c)||dx(a,b,d),()=>!1)}function dy(a,b,c){var d;return Q(c)?(d=c.$ref,!!a.includes(d)||dy([...a,d],b,b[d])):J(c)?dy(a,b,c.items):M(c)?dx(a,b,[...c.parameters,c.instanceType]):O(c)?dx(a,b,[...c.parameters,c.returnType]):dv(c)?dx(a,b,w(c.parameters[1])):aq(c)?dx(a,b,c.allOf):aa(c)?dx(a,b,w(c.properties)):a6(c)?dx(a,b,c.anyOf):bd(c)?dx(a,b,c.items):!!bC(c)&&dy(a,b,bB(c))}function dz(a,b,c){return b.reduce((b,c)=>dA(a,c,b),c)}function dA(a,b,c){var d,e,f,g,h,i,j;return Q(b)?(d=b.$ref,c.includes(d)?c:d in a?dA(a,a[d],[...c,d]):au()):J(b)?dA(a,b.items,c):M(b)?dz(a,[...b.parameters,b.instanceType],c):O(b)?dz(a,[...b.parameters,b.returnType],c):dv(b)?(e=a,f=b.parameters[1],g=c,dz(e,w(f),g)):aq(b)?dz(a,b.allOf,c):aa(b)?(h=a,i=b.properties,j=c,dz(h,w(i),j)):a6(b)?dz(a,b.anyOf,c):bd(b)?dz(a,b.items,c):bC(b)?dA(a,bB(b),c):c}function dB(a){return a.reduce((a,b)=>[...a,dC(b)],[])}function dC(a){var b;return Q(a)?(a.$ref,T()):J(a)?I(dC(a.items),K(a)):M(a)?L(dB(a.parameters),dC(a.instanceType)):O(a)?N(dB(a.parameters),dC(a.returnType)):aq(a)?ap(dB(a.allOf)):aa(a)?_(v(b=a.properties).reduce((a,c)=>({...a,[c]:dC(b[c])}),{})):bC(a)?bx(bA(a),dC(bB(a))):a6(a)?a5(dB(a.anyOf)):bd(a)?bc(dB(a.items)):a}function dD(a,b){return function a(b,c){return c in b?Q(b[c])?a(b,b[c].$ref):b[c]:V()}(a,b)}function dE(a){var b,c;return ae(a)?(b=a.$defs,(c=a.$ref)in b?dC(b[c]):ab()):ag(a)?ab():a}function dF(a,b,c){return ds(a,dE(b),dE(c))}let dG="equal",dH="left-inside",dI="right-inside";function dJ(a,b){let c=[ac(a)?db():dF({},a,b),ac(a)?c9({}):dF({},b,a)];return dd(c[0])&&dd(c[1])?dG:dd(c[0])&&dc(c[1])?dH:dc(c[0])&&dd(c[1])?dI:"disjoint"}function dK(a){return br(a.reduce((a,b)=>{var c;let d;return aa(b)?[...a,b]:W(b)?a:U(d=bp(b))?[d]:(c=d,!1!==a.some(a=>{let b=dJ(c,a);return b===dH||b===dG}))?a:[...a.filter(a=>dJ(d,a)!==dI),d]},[]))}function dL(a,b){return b.reduce((b,c)=>[...b,...a.reduce((a,b)=>[...a,[...b,c]],[])],[])}function dM(a,b,c,d,e){let f=fe(a,b,e);return!function(a,b,c){if(!(aj(b)||dQ(b)||dd(dF({},b,c))))throw Error(`Argument for parameter ${a} does not satisfy constraint`,{cause:{parameter:a,expect:c,actual:b}})}(c,f,d),i(a,{[c]:f})}function dN(a,b,c,d){var e;let f=fd(a,b,d),g=function a(b,c,d,e){var f;return S(d)?[c,R(d.parameters,d.expression)]:Q(d)?(f=d.$ref,f in b?a(b,f,b[f],e):["(not-resolvable)",V()]):["(not-generic)",V()]}(a,"(anonymous)",c,d),h=g[0],i=g[1];return S(i)?((e=b).callstack.length>0?e.callstack[e.callstack.length-1]:"")===h?dO(P(h),f):function(a,b,c,d,e,f){let g=function(a,b,c){let d=function a(b,c=[]){return F(b)&&"Conditional"===b.action?Q(b.parameters[0])?a(b.parameters[2],a(b.parameters[3],[...c,b.parameters[0].$ref])):a(b.parameters[2],a(b.parameters[3],c)):F(b)&&"Mapped"===b.action&&F(b.parameters[1])&&"KeyOf"===b.parameters[1].action&&Q(b.parameters[1].parameters[0])?[...c,b.parameters[1].parameters[0].$ref]:c}(c),e=function a(b,c,d=[]){return s(b,(b,e)=>s(c,(c,f)=>a(e,f,[...d,[c,b]]),()=>d),()=>d)}(b,a.reduce((a,b)=>[...a,d.includes(b.name)],[]));return F(c)&&"Conditional"===c.action||F(c)&&"Mapped"===c.action?e.reduce((a,b)=>{var c;return!0===b[0]?dL(a,a6(c=b[1])?[...c.anyOf]:[c]):dL(a,[b[1]])},[[]]):[b]}(d,f,e),h=g.reduce((f,g)=>{var h,i,j,k,l;let m,n;return[...f,(h=a,i=b,j=c,k=d,l=e,m=function a(b,c,d,e){return s(d,(d,f)=>{let g,h;return g=fe(b,c,d.extends),h=fe(b,c,d.equals),s(e,(e,h)=>a(dM(b,c,d.name,g,e),c,f,h),()=>a(dM(b,c,d.name,g,h),c,f,[]))},()=>b)}(h,i,k,g),n=fe(m,e9([...i.callstack,j.$ref],i.visited),l),fe(m,e9([],[]),n))]},[]);return 1===h.length?h[0]:bo(h)}(a,b,P(h),i.parameters,i.expression,f):dO(c,f)}function dO(a,b){return z({"~kind":"Call"},{type:"call",target:a,arguments:b},{})}function dP(a,b){return dN({},e9([],[]),a,b)}function dQ(a){return C(a,"Call")}function dR(a,b){var c,d;return aV(b)?(c=a,r(d=b.const)?aT(c(d)):aT(d)):c6(b)?dR(a,bn(b.pattern)):a6(b)?a5(b.anyOf.map(b=>dR(a,b))):b}function dS(a,b={}){return E("Capitalize",[a],b)}function dT(a,b={}){return d2(a,b)}function dU(a,b={}){return E("Lowercase",[a],b)}function dV(a,b={}){return d3(a,b)}function dW(a,b={}){return E("Uncapitalize",[a],b)}function dX(a,b={}){return d4(a,b)}function dY(a,b={}){return E("Uppercase",[a],b)}function dZ(a,b={}){return d5(a,b)}let d$=a=>a[0].toUpperCase()+a.slice(1),d_=a=>a.toLowerCase(),d0=a=>a[0].toLowerCase()+a.slice(1),d1=a=>a.toUpperCase();function d2(a,b){return fa([a])?B(dR(d$,a),{},b):dS(a,b)}function d3(a,b){return fa([a])?B(dR(d_,a),{},b):dU(a,b)}function d4(a,b){return fa([a])?B(dR(d0,a),{},b):dW(a,b)}function d5(a,b){return fa([a])?B(dR(d1,a),{},b):dY(a,b)}function d6(a,b,c,d,e={}){return E("Conditional",[a,b,c,d],e)}function d7(a,b,c,d,e={}){return d8({},e9([],[]),a,b,c,d,e)}function d8(a,b,c,d,e,f,g){let h;return fa([c,d])?B(c8(h=dF(a,c,d))?a5([fe(h.inferred,b,e),fe(a,b,f)]):da(h)?fe(h.inferred,b,e):fe(a,b,f),{},g):d6(c,d,e,f,g)}function d9(a,b={}){return E("ConstructorParameters",[a],b)}function ea(a,b={}){return eb(a,b)}function eb(a,b){let c;return fa([a])?B((c=M(a)?a.parameters:[],bc(fc({},e9([],[]),c))),{},b):d9(a,b)}function ec(a,b,c={}){return E("Exclude",[a,b],c)}function ed(a,b,c={}){return ee(a,b,c)}function ee(a,b,c){return fa([a,b])?B(bj(a,b),{},c):ec(a,b,c)}function ef(a,b,c={}){return E("Extract",[a,b],c)}function eg(a,b,c={}){return eh(a,b,c)}function eh(a,b,c){var d;let e;return fa([a,b])?B(bo((d=a6(e=bp(a))?e.anyOf:[e],d.reduce((a,c)=>[...a,...dd(dF({},c,b))?[c]:[]],[]))),{},c):ef(a,b,c)}function ei(a){return a5(a.reduce((a,b)=>aU(b)?[...a,aT(b)]:a,[]))}function ej(a,b,c={}){return E("Index",[a,b],c)}function ek(a,b,c={}){return ex(a,j(b)?ei(b):b,c)}function el(a){var b;return ae(a)?el(dD(a.$defs,a.$ref)):al(a)?(b=a.if,el(bk(b,a.then,a.else))):aq(a)?a.allOf.reduce((a,b)=>{var c;let d,e,f,g,h,j,k;return c=el(b),d=v(a).filter(a=>!u(c,a)),e=v(c).filter(b=>!u(a,b)),f=v(a).filter(a=>u(c,a)),g=d.reduce((b,c)=>({...b,[c]:a[c]}),{}),h=e.reduce((a,b)=>({...a,[b]:c[b]}),{}),j=f.reduce((b,d)=>({...b,[d]:bm([a[d],c[d]])}),{}),k=i(g,h),i(k,j)},{}):a6(a)?s(a.anyOf,(a,b)=>(function a(b,c){return s(b,(b,d)=>{var e;return a(d,(e=el(b),v(c).filter(a=>a in e).reduce((a,b)=>({...a,[b]:bo([c[b],e[b]])}),{})))},()=>c)})(b,el(a)),()=>au()):bd(a)?el(_(bh(bc(a.items).items))):aa(a)?a.properties:{}}let em=RegExp("^(?:0|[1-9][0-9]*)$");function en(a){let b=`${a}`;return em.test(b)?parseInt(b):a}function eo(a){return a.map(a=>ep(a))}function ep(a){return aq(a)?ap(eo(a.allOf)):a6(a)?a5(eo(a.anyOf)):aV(a)?aT(en(a.const)):a}function eq(a){var b,c;return ae(a)?eq(dD(a.$defs,a.$ref)):al(a)?(b=a.if,eq(bk(b,a.then,a.else))):ao(a)?eq(bl(a.enum)):aq(a)?eq(bm(a.allOf)):aV(a)?(c=a.const,[`${c}`]):c6(a)?eq(bn(a.pattern)):a6(a)?a.anyOf.reduce((a,b)=>[...a,...eq(b)],[]):[]}function er(a,b){return b.map(b=>es(a,b))}function es(a,b){return J(b)?I(es(a,b.items)):M(b)?L(er(a,b.parameters),es(a,b.instanceType)):O(b)?N(er(a,b.parameters),es(a,b.returnType)):bd(b)?bc(er(a,b.items)):a6(b)?a5(er(a,b.anyOf)):aq(b)?ap(er(a,b.allOf)):bG(b)?_(a):b}function et(a,b){return b.reduce((b,c)=>{var d,e;let f;return[...b,(d=a,f=(e=c)in d?d[e]:V(),es(d,f))]},[])}let eu=new RegExp(bt);function ev(a){return a.map(a=>ew(a))}function ew(a){return aq(a)?ap(ev(a.allOf)):a6(a)?a5(ev(a.anyOf)):aV(a)?aT(en(a.const)):a}function ex(a,b,c){var d,e,f,g,h,i;let j;return fa([a,b])?B((d=ae(f=a)||al(f)||aq(f)||a6(f)?_(el(f)):f,J(d)?(g=d.items,dd(dF({},ep(h=b),aZ()))?g:aV(h)&&"length"===h.const?aZ():V()):aa(d)?(e=d.properties,a$(b)?(j=v(i=e).filter(a=>eu.test(a)),bo(et(i,j))):bo(et(e,eq(b)))):bd(d)?function(a,b){let c;return aV(b)&&"length"===b.const?aT(a.length):a$(b)||aR(b)?bq(a):bq((c=ew(b),a.reduceRight((a,b,d)=>dd(dF({},aT(d),c))?[b,...a]:a,[])))}(d.items,b):V()),{},c):ej(a,b,c)}function ey(a,b={}){return E("InstanceType",[a],b)}function ez(a,b={}){return eA(a,b)}function eA(a,b){return fa([a])?B(M(a)?a.instanceType:V(),{},b):ey(a,b)}function eB(a,b={}){return E("KeyOf",[a],b)}function eC(a,b={}){return eD(a,b)}function eD(a,b){var c,d;return fa([a])?B(U(d=ae(c=a)||al(c)||aq(c)||a6(c)?_(el(c)):c)?a5([aZ(),a3(),a_()]):J(d)?(d.items,aZ()):aa(d)?bq(v(d.properties).reduce((a,b)=>aU(b)?[...a,aT(en(b))]:au(),[])):bC(d)?bA(d):bd(d)?bq(d.items.map((a,b)=>aT(b))):V(),{},b):eB(a,b)}function eE(a,b,c,d,e={}){return E("Mapped",[a,b,c,d],e)}function eF(a,b,c,d,e={}){return eG({},e9([],[]),a,b,c,d,e)}function eG(a,b,c,d,e,f,g){return fa([d])?B(function(a,b,c,d,e,f){let g=function a(b){var c;return ao(b)?a(bl(b.enum)):aV(b)?o(c=b.const)?[aT(`${c}`)]:[aT(c)]:c6(b)?a(bn(b.pattern)):a6(b)?b.anyOf.reduce((b,c)=>[...b,...a(c)],[]):[b]}(d);return bm(g.reduce((d,g)=>{var h;let j,k,l;return[...d,(k=c6(h=fe(j=i(a,{[c.name]:g}),b,e))?bn(h.pattern):h,l=fe(j,b,f),aV(k)&&o(k.const)||aV(k)&&r(k.const)?{[k.const]:l}:{})]},[]).reduce((a,b)=>[...a,_(b)],[]))}(a,b,c,d,e,f),{},g):eE(c,d,e,f,g)}function eH(a,b,c,d){let e,f,g,h,j;return e=function(a){let b=v(a);return b.reduce((b,c)=>dy([c],a,a[c])?[...b,c]:b,[])}(c),f=i(a,c),g=v(c).filter(a=>e.includes(a)).reduce((a,b)=>({...a,[b]:function(a,b,c){let d=dA(a,c,[b]);return ad(v(a).filter(a=>d.includes(a)).reduce((b,c)=>{var d,e;let f=a[c],g=dv(f)?(d=f.parameters[0],e=f.parameters[1],bm([...fd(a,e9([],[]),d),_(fb({},e9([],[]),e))])):f;return{...b,[c]:g}},{}),b)}(f,b,c[b])}),{}),h=i(a,c),j=v(c).filter(a=>!e.includes(a)).reduce((a,b)=>({...a,[b]:fe(h,e9([],[]),c[b])}),{}),B({...g,...j},{},d)}function eI(a,b={}){return E("NonNullable",[a],b)}function eJ(a,b={}){return eK(a,b)}function eK(a,b){return fa([a])?B(ee(a,a5([aW(),bH()]),{}),{},b):eI(a,b)}function eL(a,b,c={}){return E("Omit",[a,b],c)}function eM(a,b,c={}){return eO(a,j(b)?ei(b):b,c)}function eN(a){let b=_(el(a));return aa(b)?b.properties:au()}function eO(a,b,c){return fa([a,b])?B(function(a,b){let c=eN(a),d=eq(b);return _(v(c).reduce((a,b)=>d.includes(b)?a:{...a,[b]:c[b]},{}))}(a,b),{},c):eL(a,b,c)}function eP(a,b={}){return E("Parameters",[a],b)}function eQ(a,b={}){return eR(a,b)}function eR(a,b){let c;return fa([a])?B((c=O(a)?a.parameters:[],bc(fc({},e9([],[]),c))),{},b):eP(a,b)}function eS(a,b={}){return E("Partial",[a],b)}function eT(a,b={}){return eU(a,b)}function eU(a,b){return fa([a])?B(function a(b){var c,d,e,f;let g;return ae(b)?(g=a(dD(c=b.$defs,d=b.$ref)),ad(i(c,{[d]:g}),d)):al(b)?(e=b.if,a(bk(e,b.then,b.else))):aq(b)?a(bm(b.allOf)):a6(b)?a5(b.anyOf.map(b=>a(b))):aa(b)?_(v(f=b.properties).reduce((a,b)=>({...a,[b]:Y(f[b])}),{})):_({})}(a),{},b):eS(a,b)}function eV(a,b,c={}){return E("Pick",[a,b],c)}function eW(a,b,c={}){return eX(a,j(b)?ei(b):b,c)}function eX(a,b,c){return fa([a,b])?B(function(a,b){let c=eN(a),d=eq(b);return _(v(c).reduce((a,b)=>d.includes(b)?i(a,{[b]:c[b]}):a,{}))}(a,b),{},c):eV(a,b,c)}function eY(a,b={}){return E("ReadonlyObject",[a],b)}function eZ(a,b={}){return e_(a,b)}let e$=eZ;function e_(a,b){return fa([a])?B(function a(b){var c,d,e,f;let g;return J(b)?fh(I(b.items)):ae(b)?(g=a(dD(c=b.$defs,d=b.$ref)),ad(i(c,{[d]:g}),d)):al(b)?(e=b.if,a(bk(e,b.then,b.else))):aq(b)?a(bm(b.allOf)):aa(b)?_(v(f=b.properties).reduce((a,b)=>({...a,[b]:aE(f[b])}),{})):bd(b)?fh(bc(b.items)):a6(b)?a5(b.anyOf.map(b=>a(b))):b}(a),{},b):eY(a)}function e0(a,b={}){return E("Required",[a],b)}function e1(a,b={}){return e2(a,b)}function e2(a,b){return fa([a])?B(function a(b){var c,d,e,f;let g;return ae(b)?(g=a(dD(c=b.$defs,d=b.$ref)),ad(i(c,{[d]:g}),d)):al(b)?(e=b.if,a(bk(e,b.then,b.else))):aq(b)?a(bm(b.allOf)):a6(b)?a5(b.anyOf.map(b=>a(b))):aa(b)?_(v(f=b.properties).reduce((a,b)=>({...a,[b]:bg(f[b])}),{})):_({})}(a),{},b):e0(a,b)}function e3(a,b={}){return E("ReturnType",[a],b)}function e4(a,b={}){return e5(a,b)}function e5(a,b){return fa([a])?B(O(a)?a.returnType:V(),{},b):e3(a,b)}function e6(a,b){return E("With",[a,b],{})}function e7(a,b){return e8(a,b)}function e8(a,b){return fa([a])?B(a,{},b):e6(a,b)}function e9(a,b){return{callstack:a,visited:b}}function fa(a){return s(a,(a,b)=>!Q(a)&&fa(b),()=>!0)}function fb(a,b,c){return v(c).reduce((d,e)=>({...d,[e]:fe(a,b,c[e])}),{})}function fc(a,b,c){return function a(b){return b.reduce((b,c)=>[...b,...bE(c)?bd(c.items)?a(c.items.items):aj(c.items)||Q(c.items)?[c]:[V()]:[c]],[])}(fd(a,b,c))}function fd(a,b,c){return c.map(c=>fe(a,b,c))}function fe(a,b,c){return F(c)?function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,C,D,F,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,_,aa,ab,ac,ad;let ae,af,ag;return"AddImmutable"===c?(aa=a,ab=b,ac=d[0],ad=e,fg(fe(aa,ab,ac),ad)):"RemoveImmutable"===c?(f=d[0],g=fe(a,b,f),B(A(g,["~immutable"]),{},e)):"AddReadonly"===c?(h=d[0],G(fe(a,b,h),e)):"RemoveReadonly"===c?(i=d[0],be(fe(a,b,i),e)):"AddOptional"===c?(j=d[0],H(fe(a,b,j),e)):"RemoveOptional"===c?(k=d[0],bf(fe(a,b,k),e)):"Capitalize"===c?(l=d[0],d2(fe(a,b,l),e)):"Conditional"===c?(m=d[0],n=d[1],o=d[2],p=d[3],ae=fe(a,b,m),af=fe(a,b,n),d8(a,b,ae,af,o,p,e)):"ConstructorParameters"===c?(q=d[0],eb(fe(a,b,q),e)):"Evaluate"===c?(r=d[0],s=fe(a,b,r),B(bp(s),{},e)):"Exclude"===c?(t=d[0],u=d[1],ee(fe(a,b,t),fe(a,b,u),e)):"Extract"===c?(v=d[0],w=d[1],eh(fe(a,b,v),fe(a,b,w),e)):"Index"===c?(x=d[0],y=d[1],ex(fe(a,b,x),fe(a,b,y),e)):"InstanceType"===c?function(a,b,c,d={}){return eA(fe(a,b,c),d)}(a,b,d[0],e):"Interface"===c?(z=d[0],C=d[1],dt(fd(a,b,z),fb(a,b,C),e)):"KeyOf"===c?(D=d[0],eD(fe(a,b,D),e)):"Lowercase"===c?(F=d[0],d3(fe(a,b,F),e)):"Mapped"===c?(I=d[0],J=d[1],K=d[2],L=d[3],ag=fe(a,b,J),eG(a,b,I,ag,K,L,e)):"Module"===c?eH(a,b,d[0],e):"NonNullable"===c?(M=d[0],eK(fe(a,b,M),e)):"Pick"===c?(N=d[0],O=d[1],eX(fe(a,b,N),fe(a,b,O),e)):"Parameters"===c?(P=d[0],eR(fe(a,b,P),e)):"Partial"===c?(Q=d[0],eU(fe(a,b,Q),e)):"Omit"===c?(R=d[0],S=d[1],eO(fe(a,b,R),fe(a,b,S),e)):"ReadonlyObject"===c?(T=d[0],e_(fe(a,b,T),e)):"Record"===c?(U=d[0],V=d[1],bs(fe(a,b,U),fe(a,b,V),e)):"Required"===c?(W=d[0],e2(fe(a,b,W),e)):"ReturnType"===c?function(a,b,c,d={}){return e5(fe(a,b,c),d)}(a,b,d[0],e):"TemplateLiteral"===c?(X=d[0],c3(fd(a,b,X),e)):"Uncapitalize"===c?(Y=d[0],d4(fe(a,b,Y),e)):"Uppercase"===c?(Z=d[0],d5(fe(a,b,Z),e)):"With"===c?($=d[0],_=d[1],e8(fe(a,b,$),_)):E(c,d,e)}(a,b,c.action,c.parameters,c.options):function(a,b,c){var d;let e,f,g=Q(c)?(d=c.$ref,b.visited.includes(d)?c:d in a?fe(a,e9(b.callstack,[...b.visited,d]),a[d]):c):J(c)?I(fe(a,b,c.items),K(c)):dQ(c)?dN(a,b,c.target,c.arguments):M(c)?L(fd(a,b,c.parameters),fe(a,b,c.instanceType),A(c,["~kind","type","parameters","instanceType"])):O(c)?N(fd(a,b,c.parameters),fe(a,b,c.returnType),A(c,["~kind","type","parameters","returnType"])):al(c)?ak(fe(a,b,c.if),fe(a,b,c.then),fe(a,b,c.else),A(c,["~kind","if","then","else"])):aq(c)?ap(fd(a,b,c.allOf),A(c,["~kind","allOf"])):aa(c)?_(fb(a,b,c.properties),A(c,["~kind","type","properties","required"])):bC(c)?bb(bz(c),fe(a,b,bB(c))):bE(c)?bD(fe(a,b,c.items)):bd(c)?bc(fc(a,b,c.items),A(c,["~kind","type","items","minItems","additionalItems"])):a6(c)?a5(fd(a,b,c.anyOf),A(c,["~kind","anyOf"])):c;return e=$(c)?H(g,{}):g,f=aG(c)?G(e,{}):e,aC(c)?fg(f,{}):f}(a,b,c)}function ff(a,b){return fe(a,e9([],[]),b)}function fg(a,b){return B(B(a,{"~immutable":!0},{}),{},b)}function fh(a,b={}){return fg(a,b)}function fi(a,b={}){return B(bp(a),{},b)}function fj(a,b={}){return eH({},e9([],[]),a,b)}function fk(...a){let b,[c,d,e]=ah(a,{2:(a,b)=>r(a)?[{},a,b]:[a,b,{}],3:(a,b,c)=>[a,b,c],1:a=>[{},a,{}]}),f=cf(cf(cf(cf(c1(b=d),([a,b])=>cf(cf(cf(c0(b),([a,b])=>cf(cf(cf(c1(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bQ(bM(a)),b]),([b,c])=>[[a,b],c])),([a,b])=>[function(a,b={}){return E("Module",[a],b)}(i(a[0],a[1][0])),b]),([a,b])=>[a,b],()=>cf(cf(cf(ci(b),([a,b])=>cf(b6("=",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[R(a[0],a[2]),b]),([a,b])=>[a,b],()=>cf(cy(b),([a,b])=>[a,b],()=>[]))),([a,b])=>[a,b]);return B(j(f)&&2===f.length?fe(c,e9([],[]),f[0]):V(),{},e)}},55950:(a,b,c)=>{"use strict";c.d(b,{V:()=>d});class d{enqueue(a,b,c,d,e){let f,g=this.parents.get(a)??{limit:1,active:0,items:[]};g.limit=Math.max(1,Math.floor(b)||1);let h=new Promise((a,b)=>{f={run:c,onState:d,onCancel:e,resolve:a,reject:b,state:"queued",cancelled:!1}});return g.items.push(f),this.parents.set(a,g),d("queued"),this.pump(a,g),{promise:h,cancel:()=>"queued"===f.state&&!f.cancelled&&(f.cancelled=!0,Promise.resolve(f.onCancel?.()).then(()=>f.resolve(void 0),a=>f.reject(a)),this.pump(a,g),!0)}}pump(a,b){for(;b.active<b.limit&&b.items.length>0;){let c=b.items.shift();c.cancelled||(c.state="running",c.onState("running"),b.active+=1,c.run().then(c.resolve,c.reject).finally(()=>{b.active-=1,this.pump(a,b),0===b.active&&0===b.items.length&&this.parents.delete(a)}))}}constructor(){this.parents=new Map}}},57856:(a,b,c)=>{"use strict";c.d(b,{TQ:()=>e,p1:()=>d});let d=92;function e(a,b=d,c=40){return Object.freeze({terminal:Object.freeze({columns:b,rows:c,kittyProtocolActive:!1}),requestRender:a})}},60542:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{startTaskScheduler:()=>G});var e=c(29021),f=c(55511),g=c(75384),h=c(47128),i=c(12144),j=c(69453),k=c(65562),l=c(14916),m=c(85158),n=c(48817),o=c(32105),p=a([i,j,o]);[i,j,o]=p.then?(await p)():p;let K=new Map,L=new Map;function q(a){if(a.cwd)return a.cwd;let b=(0,g.v$)(a.boardId);return b&&(0,e.existsSync)(b.projectKey)?b.projectKey:null}async function r(a){if(a.sessionId)try{let b=await (0,j.os)(a.sessionId);if(b)return{...await (0,i.OF)(a.sessionId,b,void 0),created:!1}}catch{}let b=q(a);return b?{...await (0,i.OF)((0,f.randomUUID)(),"",b,{toolNames:l.C1}),created:!0}:null}async function s(){let a=new Set((0,i.HG)()),b=0;for(let c of(0,n.O7)(["review"]))c.sessionId&&a.has(c.sessionId)&&((0,n.w0)(c.id,{execStatus:"running"}),console.log(`[task-scheduler] #${c.number} ${c.name} 自愈:会话仍在跑 → 拉回 running`),b+=1);return b}async function t(a){let b=(0,f.randomUUID)();if(!(0,n.Im)(a.id,b))return console.log(`[task-scheduler] #${a.number} ${a.name} 派发锁被占用,跳过`),!1;let c=null;try{if(!(c=await r(a)))return console.warn(`[task-scheduler] #${a.number} ${a.name} 无可用 cwd,跳过派发`),(0,n.$j)(a.id,b),!1;let d=c;await d.session.send({type:"set_session_name",name:`#${a.number} ${a.name}`});let e=(0,g.v$)(a.boardId);if(e?.taskId&&(0,k.mE)(d.realSessionId,e.taskId),d.session.isRunning())return(0,n.w0)(a.id,{sessionId:d.realSessionId,execStatus:"running"}),u(a.boardId),v(a,d.session),(0,n.$j)(a.id,b),console.log(`[task-scheduler] #${a.number} ${a.name} 会话忙(复用中),标 running 不重发`),!0;return await d.session.send({type:"prompt",message:function(a){let b=[`【任务卡 #${a.number}】${a.name}`];if(a.description.trim()&&b.push("",a.description.trim()),a.attachments.length>0)for(let c of(b.push("","附件:"),a.attachments))b.push(`- ${c}`);return b.join("\n")}(a)}),(0,n.w0)(a.id,{sessionId:d.realSessionId,execStatus:"running"}),u(a.boardId),v(a,d.session),(0,n.$j)(a.id,b),console.log(`[task-scheduler] 派发 #${a.number} ${a.name} → session ${d.realSessionId.slice(0,8)}`),!0}catch(d){if(c?.created)try{c.session.destroy()}catch{}return(0,n.$j)(a.id,b),console.error(`[task-scheduler] 派发 #${a.number} ${a.name} 失败:`,d instanceof Error?d.message:d),!1}}function u(a){(0,h.dA)(a).catch(b=>console.warn(`[task-scheduler] reconcile ${a} 异常:`,b?.message??b))}function v(a,b){if("function"!=typeof b.onEvent)return;let c=b.onEvent(b=>{if("agent_end"!==b.type)return;c();let d=(0,n.XJ)(a.id);d&&"running"===d.execStatus&&((0,n.w0)(a.id,{execStatus:"review"}),console.log(`[task-scheduler] #${a.number} ${a.name} 执行会话结束(agent_end) → review(待审核)`))})}async function w(){let a=new Set((0,i.HG)()),b=Date.now(),c=0;for(let d of(0,n.BH)()){if(!d.sessionId||a.has(d.sessionId))continue;let e=await (0,o.Wz)(d.sessionId);e&&0!==e.lastActivityMs&&(b-e.lastActivityMs<5e3||((0,n.w0)(d.id,{execStatus:"review"}),console.log(`[task-scheduler] #${d.number} ${d.name} 执行会话已结束 → review(待审核)`),c+=1))}return c}async function x(){let a=0;for(let b of(0,n.O7)(["not_started","running","review","waiting_reply"])){if(!b.sessionId)continue;let c=(0,i.A4)(b.sessionId);c&&(c.isRunning()?"running"!==b.execStatus&&((0,n.w0)(b.id,{execStatus:"running"}),a+=1):c.hasPendingUiRequest()&&"waiting_reply"!==b.execStatus&&((0,n.w0)(b.id,{execStatus:"waiting_reply"}),a+=1))}return a}async function y(){await x(),await s(),await w(),await D(),await z(),await E();let a=0,b=(0,n.CU)(),c=Math.max(0,1-b);if(c<=0)return H({type:"skipped_gate",at:Date.now()}),0;for(let b of(0,n.uZ)().slice(0,c)){if((0,n.CU)()>=1)break;await J({kind:"dispatch",cardNumber:b.number,cardName:b.name,at:Date.now()},()=>t(b))&&(a+=1,H({type:"dispatch",cardNumber:b.number,cardName:b.name,at:Date.now()}))}return a}async function z(){let a=0;for(let b of(0,n.Kg)()){let c=(0,n.XJ)(b.cardId);if(c&&"waiting_reply"===c.execStatus&&c.sessionId){if((0,n.CU)()>=1)break;await J({kind:"resume",cardNumber:c.number,cardName:c.name,at:Date.now()},()=>A(c,b))&&(a+=1,H({type:"resume",cardNumber:c.number,cardName:c.name,at:Date.now()}))}}return a}async function A(a,b){try{let c=await (0,j.os)(a.sessionId);if(!c)return!1;let{session:d}=await (0,i.OF)(a.sessionId,c,void 0);return await d.send({type:"prompt",message:`【用户回答了你的提问】
28
+ ${a.inheritedParentContext}`:a.task,...b||c?{exactSystemPrompt:a.profileSystemPrompt}:{}}}c.d(b,{r:()=>d})},37173:(a,b,c)=>{"use strict";c.d(b,{yv:()=>f});var d=c(82249);let e=/^(?:\uFEFF)?---[ \t]*(?:\r\n|\n|\r)/;function f(a){let b=function(a){let b=e.exec(a);if(!b)return null;let c=/^---[ \t]*(?:(?:\r\n|\n|\r)|$)/gm;c.lastIndex=b[0].length;let d=c.exec(a);return d?{yaml:a.slice(b[0].length,d.index).replace(/(?:\r\n|\n|\r)$/,""),rest:a.slice(d.index+d[0].length)}:null}(a);if(!b)return{data:null,rest:a};try{let a=(0,d.Hh)(b.yaml);if(a&&"object"==typeof a&&!Array.isArray(a))return{data:a,rest:b.rest}}catch{}return{data:null,rest:b.rest}}},39065:(a,b,c)=>{"use strict";let d=c(62404),{toPromise:e,toSync:f,toSyncOptions:g}=c(13884);async function h(a,b){let c=await e(d.lock)(a,b);return e(c)}a.exports=h,a.exports.lock=h,a.exports.unlock=function(a,b){return e(d.unlock)(a,b)},a.exports.lockSync=function(a,b){let c=f(d.lock)(a,g(b));return f(c)},a.exports.unlockSync=function(a,b){return f(d.unlock)(a,g(b))},a.exports.check=function(a,b){return e(d.check)(a,b)},a.exports.checkSync=function(a,b){return f(d.check)(a,g(b))}},39466:(a,b,c)=>{var d=c(81115),e=process.cwd,f=null,g=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return f||(f=e.call(process)),f};try{process.cwd()}catch(a){}if("function"==typeof process.chdir){var h=process.chdir;process.chdir=function(a){f=null,h.call(process,a)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,h)}a.exports=function(a){var b,c,e;function f(b){return b?function(c,d,e){return b.call(a,c,d,function(a){m(a)&&(a=null),e&&e.apply(this,arguments)})}:b}function h(b){return b?function(c,d){try{return b.call(a,c,d)}catch(a){if(!m(a))throw a}}:b}function i(b){return b?function(c,d,e,f){return b.call(a,c,d,e,function(a){m(a)&&(a=null),f&&f.apply(this,arguments)})}:b}function j(b){return b?function(c,d,e){try{return b.call(a,c,d,e)}catch(a){if(!m(a))throw a}}:b}function k(b){return b?function(c,d,e){function f(a,b){b&&(b.uid<0&&(b.uid+=0x100000000),b.gid<0&&(b.gid+=0x100000000)),e&&e.apply(this,arguments)}return"function"==typeof d&&(e=d,d=null),d?b.call(a,c,d,f):b.call(a,c,f)}:b}function l(b){return b?function(c,d){var e=d?b.call(a,c,d):b.call(a,c);return e&&(e.uid<0&&(e.uid+=0x100000000),e.gid<0&&(e.gid+=0x100000000)),e}:b}function m(a){return!a||"ENOSYS"===a.code||(!process.getuid||0!==process.getuid())&&("EINVAL"===a.code||"EPERM"===a.code)}d.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&((c=a).lchmod=function(a,b,e){c.open(a,d.O_WRONLY|d.O_SYMLINK,b,function(a,d){if(a){e&&e(a);return}c.fchmod(d,b,function(a){c.close(d,function(b){e&&e(a||b)})})})},c.lchmodSync=function(a,b){var e,f=c.openSync(a,d.O_WRONLY|d.O_SYMLINK,b),g=!0;try{e=c.fchmodSync(f,b),g=!1}finally{if(g)try{c.closeSync(f)}catch(a){}else c.closeSync(f)}return e}),a.lutimes||(e=a,d.hasOwnProperty("O_SYMLINK")&&e.futimes?(e.lutimes=function(a,b,c,f){e.open(a,d.O_SYMLINK,function(a,d){if(a){f&&f(a);return}e.futimes(d,b,c,function(a){e.close(d,function(b){f&&f(a||b)})})})},e.lutimesSync=function(a,b,c){var f,g=e.openSync(a,d.O_SYMLINK),h=!0;try{f=e.futimesSync(g,b,c),h=!1}finally{if(h)try{e.closeSync(g)}catch(a){}else e.closeSync(g)}return f}):e.futimes&&(e.lutimes=function(a,b,c,d){d&&process.nextTick(d)},e.lutimesSync=function(){})),a.chown=i(a.chown),a.fchown=i(a.fchown),a.lchown=i(a.lchown),a.chmod=f(a.chmod),a.fchmod=f(a.fchmod),a.lchmod=f(a.lchmod),a.chownSync=j(a.chownSync),a.fchownSync=j(a.fchownSync),a.lchownSync=j(a.lchownSync),a.chmodSync=h(a.chmodSync),a.fchmodSync=h(a.fchmodSync),a.lchmodSync=h(a.lchmodSync),a.stat=k(a.stat),a.fstat=k(a.fstat),a.lstat=k(a.lstat),a.statSync=l(a.statSync),a.fstatSync=l(a.fstatSync),a.lstatSync=l(a.lstatSync),a.chmod&&!a.lchmod&&(a.lchmod=function(a,b,c){c&&process.nextTick(c)},a.lchmodSync=function(){}),a.chown&&!a.lchown&&(a.lchown=function(a,b,c,d){d&&process.nextTick(d)},a.lchownSync=function(){}),"win32"===g&&(a.rename="function"!=typeof a.rename?a.rename:function(b){function c(c,d,e){var f=Date.now(),g=0;b(c,d,function h(i){if(i&&("EACCES"===i.code||"EPERM"===i.code||"EBUSY"===i.code)&&Date.now()-f<6e4){setTimeout(function(){a.stat(d,function(a,f){a&&"ENOENT"===a.code?b(c,d,h):e(i)})},g),g<100&&(g+=10);return}e&&e(i)})}return Object.setPrototypeOf&&Object.setPrototypeOf(c,b),c}(a.rename)),a.read="function"!=typeof a.read?a.read:function(b){function c(c,d,e,f,g,h){var i;if(h&&"function"==typeof h){var j=0;i=function(k,l,m){if(k&&"EAGAIN"===k.code&&j<10)return j++,b.call(a,c,d,e,f,g,i);h.apply(this,arguments)}}return b.call(a,c,d,e,f,g,i)}return Object.setPrototypeOf&&Object.setPrototypeOf(c,b),c}(a.read),a.readSync="function"!=typeof a.readSync?a.readSync:(b=a.readSync,function(c,d,e,f,g){for(var h=0;;)try{return b.call(a,c,d,e,f,g)}catch(a){if("EAGAIN"===a.code&&h<10){h++;continue}throw a}})}},41035:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$u:()=>y,I6:()=>w,IR:()=>r,gY:()=>x,o2:()=>A,ph:()=>v,pv:()=>B,rh:()=>s,st:()=>C,tP:()=>z});var e=c(75430);c(82249);var f=c(29021),g=c(33873),h=c(37173);c(12969);var i=c(83739),j=c(14916),k=a([e]);e=(k.then?(await k)():k)[0];let z="pi-web:subagent",A="pi-web:subagent-status",B="pi-web:subagent-result",C=["Agent","get_subagent_result","steer_subagent"],D=new Set(j.G1),E=new Set(C),F=new Set(["off","minimal","low","medium","high","xhigh","max"]),G=[{name:"general-purpose",displayName:"General purpose",description:"Handle a focused implementation or investigation task",systemPrompt:"Work autonomously on the delegated task. Keep the final answer concise and include important files, decisions, and remaining risks.",tools:j.G1,loadSkills:!1,loadExtensions:!1,promptMode:"append",inheritContext:!1,runInBackground:!1,enabled:!0,scope:"builtin"},{name:"explore",displayName:"Explore",description:"Quickly inspect a codebase without modifying it",systemPrompt:"Explore the codebase to answer the delegated question. Do not modify files. Report concrete findings with file paths and relevant symbols.",tools:[...j.kU],loadSkills:!1,loadExtensions:!1,promptMode:"append",inheritContext:!1,runInBackground:!1,enabled:!0,scope:"builtin"},{name:"plan",displayName:"Plan",description:"Design an implementation plan without modifying files",systemPrompt:"Produce an implementation-ready plan for the delegated task. Inspect the repository as needed, do not modify files, and call out dependencies, risks, and verification steps.",tools:[...j.kU],loadSkills:!1,loadExtensions:!1,promptMode:"append",inheritContext:!1,runInBackground:!1,enabled:!0,scope:"builtin"}];function l(a){return"string"==typeof a&&a.trim()?a.trim():void 0}function m(a,b){return"boolean"==typeof a?a:b}function n(a,b){return"boolean"==typeof a?a:!!Array.isArray(a)||"string"==typeof a||b}function o(a){return(Array.isArray(a)?a:"string"==typeof a?a.split(","):[]).map(a=>String(a).trim()).filter(Boolean)}function p(a,b){let c=o(a);return c.includes("none")?[]:c.includes("all")||c.includes("*")?[...j.G1]:0===c.length?[...b]:[...new Set(c.filter(a=>D.has(a)))]}function q(a){return[...new Set(o(a).filter(a=>a.toLowerCase().startsWith("ext:")))]}function r(a){let b=new Map(G.map(a=>[a.name.toLowerCase(),{...a,tools:[...a.tools]}]));for(let[c,d]of[[(0,g.join)((0,e.getAgentDir)(),"agents"),"global"],[(0,g.join)((0,g.resolve)(a),".agents","agents"),"workspace"],[(0,g.join)((0,g.resolve)(a),".pi","agents"),"project"]])for(let e of function(a,b,c){return(0,f.existsSync)(a)?"global"===b||(0,i.x)(a,new Set([c]))?(0,f.readdirSync)(a,{withFileTypes:!0}).filter(a=>a.isFile()&&a.name.endsWith(".md")).map(c=>(function(a,b){try{let c=(0,f.readFileSync)(a,"utf8"),{data:d,rest:e}=(0,h.yv)(c),i=l(d?.name)??(0,g.basename)(a,".md");if(!/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(i))return null;let k=l(d?.thinking),o="number"==typeof d?.max_turns?Math.floor(d.max_turns):void 0,r=p(d?.tools,j.G1),s=new Set(p(d?.disallowed_tools,[])),t=new Set(q(d?.disallowed_tools).map(a=>a.toLowerCase())),u=q(d?.tools).filter(a=>!t.has(a.toLowerCase()));return{name:i,displayName:l(d?.display_name)??i,description:l(d?.description)??i,systemPrompt:e.trim(),tools:r.filter(a=>!s.has(a)),...u.length>0?{extensionTools:u}:{},loadSkills:n(d?.load_skills??d?.skills,!1),loadExtensions:n(d?.load_extensions??d?.extensions,u.length>0),...l(d?.model)?{model:l(d?.model)}:{},...k&&F.has(k)?{thinking:k}:{},...o&&o>0?{maxTurns:o}:{},inheritContext:m(d?.inherit_context,!1),runInBackground:m(d?.run_in_background,!1),promptMode:d?.prompt_mode==="replace"?"replace":"append",...l(d?.color)?{color:l(d?.color)}:{},...d?.isolation==="worktree"||d?.isolation==="off"?{isolation:d.isolation}:{},..."boolean"==typeof d?.persist_session?{persistSession:d.persist_session}:{},enabled:m(d?.enabled,!0),scope:b,filePath:a}}catch{return null}})((0,g.join)(a,c.name),b)).filter(a=>null!==a):[]:[]}(c,d,a))b.set(e.name.toLowerCase(),e);return[...b.values()].sort((a,b)=>a.displayName.localeCompare(b.displayName))}function s(a,b){return r(a).find(a=>a.name.toLowerCase()===b.trim().toLowerCase()&&a.enabled)}function t(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function u(a){let b=a.find(a=>"custom"===a.type&&a.customType===z);if(!b||"custom"!==b.type||!t(b.data))return null;let c=b.data;return 1!==c.version||"string"!=typeof c.parentSessionId||"string"!=typeof c.parentSessionPath?null:c}function v(a){let b=u(a);if(!b)return null;let c=b.resourceSnapshot,d=t(c)&&!0===c.loadSkills,e=t(c)&&!0===c.loadExtensions;return t(c)&&1===c.version&&Array.isArray(c.appendSystemPrompt)&&c.appendSystemPrompt.every(a=>"string"==typeof a)&&Array.isArray(c.tools)&&c.tools.every(a=>"string"==typeof a&&a.length>0&&!E.has(a)&&(D.has(a)||e))?{appendSystemPrompt:[...c.appendSystemPrompt],tools:[...new Set(c.tools)],loadSkills:d,loadExtensions:e,..."string"==typeof c.exactSystemPrompt?{exactSystemPrompt:c.exactSystemPrompt}:{}}:null}function w(a,b){return[...new Set([...a,...[...b].filter(a=>!E.has(a))])]}function x(a,b){let c=b.map(a=>a.slice(4).toLowerCase());return[...a].flatMap(a=>{let b=a.path.replaceAll("\\","/").split("/").at(-2)??a.path,d=(a.sourceInfo?.source??"").replace(/^npm:/,""),e=new Set([b.toLowerCase(),d.toLowerCase()]);return c.some(b=>{if("*"===b)return!0;let[c,d]=b.split("/",2);return e.has(c)&&(!d||a.tools.has(d))})?[...a.tools.keys()].filter(a=>c.some(b=>{if("*"===b||b.endsWith("/*"))return"*"===b||e.has(b.slice(0,-2));let[c,d]=b.split("/",2);return e.has(c)&&(!d||d===a)})):[]})}function y(a,b,c){let d=u(a);if(!d)return null;let e=[...a].reverse().find(a=>"custom"===a.type&&(a.customType===B||a.customType===A)),f=e?.type==="custom"&&e.customType===B?e:void 0,g=f?.type==="custom"&&t(f.data)?f.data:void 0,h=e?.type==="custom"&&e.customType===A?e:void 0,i=h?.type==="custom"&&t(h.data)?h.data:void 0,j=g&&("completed"===g.status||"failed"===g.status||"aborted"===g.status)?g.status:i?.version===1&&("queued"===i.status||"running"===i.status)?i.status:"interrupted";return{sessionId:b,sessionPath:c,parentSessionId:d.parentSessionId,parentToolCallId:"string"==typeof d.parentToolCallId?d.parentToolCallId:"",profile:"string"==typeof d.profile?d.profile:"general-purpose",description:"string"==typeof d.description?d.description:"Subagent",task:"string"==typeof d.task?d.task:"",runInBackground:!0===d.runInBackground,status:j,createdAt:"string"==typeof d.createdAt?d.createdAt:"",...g&&"string"==typeof g.completedAt?{completedAt:g.completedAt}:{},...g&&"string"==typeof g.result?{result:g.result}:{},...g&&"string"==typeof g.error?{error:g.error}:{},..."string"==typeof d.worktreePath?{worktreePath:d.worktreePath}:{},..."string"==typeof d.worktreeBranch?{worktreeBranch:d.worktreeBranch}:{},...g&&"string"==typeof g.worktreeCleanupError?{worktreeCleanupError:g.worktreeCleanupError}:{}}}d()}catch(a){d(a)}})},45399:(a,b,c)=>{"use strict";c.d(b,{ZUJ:()=>g});var d,e,f={};c.r(f),c.d(f,{ExtendsFalse:()=>db,ExtendsTrue:()=>c9,ExtendsUnion:()=>c7,IsExtendsFalse:()=>dc,IsExtendsTrue:()=>da,IsExtendsTrueLike:()=>dd,IsExtendsUnion:()=>c8,Match:()=>de});var g={};c.r(g),c.d(g,{Any:()=>T,Array:()=>I,BigInt:()=>aJ,Boolean:()=>aL,Call:()=>dP,Capitalize:()=>dT,Codec:()=>ax,Conditional:()=>d7,Constructor:()=>L,ConstructorParameters:()=>ea,Cyclic:()=>ad,Decode:()=>ay,DecodeBuilder:()=>aw,Dependent:()=>ak,Encode:()=>az,EncodeBuilder:()=>av,Enum:()=>an,Evaluate:()=>fi,Exclude:()=>ed,Extends:()=>dF,ExtendsResult:()=>f,Extract:()=>eg,Function:()=>N,Generic:()=>R,Identifier:()=>aN,Immutable:()=>aB,Index:()=>ek,Infer:()=>ai,InstanceType:()=>ez,Instantiate:()=>ff,Integer:()=>aQ,Interface:()=>dw,Intersect:()=>ap,IsAny:()=>U,IsArray:()=>J,IsBigInt:()=>aK,IsBoolean:()=>aM,IsCall:()=>dQ,IsCodec:()=>aA,IsConstructor:()=>M,IsCyclic:()=>ae,IsDependent:()=>al,IsEnum:()=>ao,IsEnumValue:()=>am,IsFunction:()=>O,IsGeneric:()=>S,IsIdentifier:()=>aO,IsImmutable:()=>aC,IsInfer:()=>aj,IsInteger:()=>aR,IsIntersect:()=>aq,IsKind:()=>C,IsLiteral:()=>aV,IsNever:()=>W,IsNull:()=>aX,IsNumber:()=>a$,IsObject:()=>aa,IsOptional:()=>$,IsParameter:()=>a2,IsReadonly:()=>aG,IsRecord:()=>bC,IsRef:()=>Q,IsRefine:()=>aI,IsRest:()=>bE,IsSchema:()=>D,IsString:()=>a4,IsSymbol:()=>a0,IsTemplateLiteral:()=>c6,IsThis:()=>bG,IsTuple:()=>bd,IsUndefined:()=>bI,IsUnion:()=>a6,IsUnknown:()=>ac,IsUnsafe:()=>ag,IsVoid:()=>bK,KeyOf:()=>eC,Literal:()=>aT,Lowercase:()=>dV,Mapped:()=>eF,Module:()=>fj,Never:()=>V,NonNullable:()=>eJ,Null:()=>aW,Number:()=>aZ,Object:()=>_,Omit:()=>eM,Optional:()=>Z,Parameter:()=>a1,Parameters:()=>eQ,Partial:()=>eT,Pick:()=>eW,Readonly:()=>aF,ReadonlyObject:()=>eZ,ReadonlyType:()=>e$,Record:()=>bx,RecordKey:()=>bA,RecordPattern:()=>bz,RecordValue:()=>bB,Ref:()=>P,Refine:()=>aH,Required:()=>e1,Rest:()=>bD,ReturnType:()=>e4,Script:()=>fk,String:()=>a3,Symbol:()=>a_,TemplateLiteral:()=>c5,This:()=>bF,Tuple:()=>bc,Uncapitalize:()=>dX,Undefined:()=>bH,Union:()=>a5,Unknown:()=>ab,Unsafe:()=>af,Uppercase:()=>dZ,Void:()=>bJ,With:()=>e7});let h={assign:0,create:0,clone:0,discard:0,update:0};function i(a,b){return h.assign+=1,{...a,...b}}function j(a){return Array.isArray(a)}function k(a){return"bigint"==typeof a}function l(a){return"boolean"==typeof a}function m(a){return"function"==typeof a}function n(a){return null===a}function o(a){return Number.isFinite(a)}function p(a){return q(a)&&!j(a)}function q(a){return"object"==typeof a&&!n(a)}function r(a){return"string"==typeof a}function s(a,b,c){return 0===a.length?c():b(a[0],a.slice(1))}function t(a){return"__proto__"===a||"constructor"===a||"prototype"===a}function u(a,b){return t(b)?Object.prototype.hasOwnProperty.call(a,b):b in a}function v(a){return Object.getOwnPropertyNames(a)}function w(a){return Object.values(a)}function x(a){return h.clone+=1,function a(b){return globalThis.ArrayBuffer.isView(b)?b.slice():b instanceof globalThis.RegExp?new RegExp(b.source,b.flags):b instanceof globalThis.Map?new Map(a([...b.entries()])):b instanceof globalThis.Set?new Set(a([...b.values()])):j(b)?b.map(b=>a(b)):q(b)?function(b){return!function(a){if(!q(a))return!1;let b=globalThis.Object.getPrototypeOf(a);return!n(b)&&"function"==typeof b.constructor&&b.constructor!==globalThis.Object&&"Object"!==b.constructor.name}(b)?u(b,"~kind")||u(b,"~unsafe")?function(b){let c={},d=Object.getOwnPropertyDescriptors(b);for(let b of Object.keys(d)){if(t(b))continue;let e=d[b];u(e,"value")&&Object.defineProperty(c,b,{...e,value:a(e.value)})}return c}(b):function(b){let c={};for(let d of v(b))t(d)||(c[d]=a(b[d]));for(let d of Object.getOwnPropertySymbols(b))c[d]=a(b[d]);return c}(b):b}(b):b}(a)}let y={immutableTypes:!1,maxErrors:8,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0};function z(a,b,c={}){h.create+=1;let d={...b,...c},e=y.enumerableKind?{...d,...a}:function(a,b){for(let c of Object.keys(b))Object.defineProperty(a,c,{configurable:!0,writable:!0,enumerable:!1,value:b[c]});return a}(d,a);return y.immutableTypes?Object.freeze(e):e}function A(a,b){h.discard+=1;let c={},d=Object.getOwnPropertyDescriptors(x(a)),e=new Set(b);for(let a of Object.keys(d))e.has(a)||Object.defineProperty(c,a,d[a]);return c}function B(a,b,c){h.update+=1;let d=x(a);for(let a of Object.keys(b))Object.defineProperty(d,a,{configurable:!0,writable:!0,enumerable:y.enumerableKind,value:b[a]});for(let a of Object.keys(c))Object.defineProperty(d,a,{configurable:!0,enumerable:!0,writable:!0,value:c[a]});return d}function C(a,b){return q(a)&&u(a,"~kind")&&a["~kind"]===b}function D(a){return q(a)}function E(a,b,c){return z({"~kind":"Deferred"},{type:"deferred",action:a,parameters:b,options:c},{})}function F(a){return C(a,"Deferred")}function G(a,b){return B(B(a,{"~readonly":!0},{}),{},b)}function H(a,b){return B(B(a,{"~optional":!0},{}),{},b)}function I(a,b){return z({"~kind":"Array"},{type:"array",items:a},b)}function J(a){return C(a,"Array")}function K(a){return A(a,["~kind","type","items"])}function L(a,b,c={}){return z({"~kind":"Constructor"},{type:"constructor",parameters:a,instanceType:b},c)}function M(a){return C(a,"Constructor")}function N(a,b,c={}){return z({"~kind":"Function"},{type:"function",parameters:a,returnType:b},c)}function O(a){return C(a,"Function")}function P(a,b){return z({"~kind":"Ref"},{$ref:a},b)}function Q(a){return C(a,"Ref")}function R(a,b){return z({"~kind":"Generic"},{type:"generic",parameters:a,expression:b})}function S(a){return C(a,"Generic")}function T(a){return z({"~kind":"Any"},{},a)}function U(a){return C(a,"Any")}function V(a){return z({"~kind":"Never"},{not:{}},a)}function W(a){return C(a,"Never")}function X(a,b={}){return E("AddOptional",[a],b)}function Y(a,b={}){return H(a,b)}function Z(a){return Y(a)}function $(a){return q(a)&&u(a,"~optional")}function _(a,b={}){let c=v(a).filter(b=>!$(a[b]));return z({"~kind":"Object"},{type:"object",...c.length>0?{required:c}:{},properties:a},b)}function aa(a){return C(a,"Object")}function ab(a){return z({"~kind":"Unknown"},{},a)}function ac(a){return C(a,"Unknown")}function ad(a,b,c){return z({"~kind":"Cyclic"},{$defs:v(a).reduce((b,c)=>({...b,[c]:B(a[c],{},{$id:c})}),{}),$ref:b},c)}function ae(a){return C(a,"Cyclic")}function af(a){return B(a,{"~unsafe":null},{})}function ag(a){return p(a)&&u(a,"~unsafe")&&n(a["~unsafe"])}function ah(a,b){return b[a.length]?.(...a)??(()=>{throw Error("Invalid Arguments")})()}function ai(...a){let[b,c]=ah(a,{2:(a,b)=>[a,b,b],1:a=>[a,ab(),ab()]});return z({"~kind":"Infer"},{type:"infer",name:b,extends:c},{})}function aj(a){return C(a,"Infer")}function ak(a,b,c,d={}){return z({"~kind":"Dependent"},{if:a,then:b,else:c},d)}function al(a){return C(a,"Dependent")}function am(a){return r(a)||o(a)}function an(a,b){return z({"~kind":"Enum"},{enum:p(a)?v(a).filter(a=>isNaN(a)).reduce((b,c)=>[...b,a[c]],[]):a},b)}function ao(a){return C(a,"Enum")}function ap(a,b={}){return z({"~kind":"Intersect"},{allOf:a},b)}function aq(a){return C(a,"Intersect")}(d=e||(e={}))[d.Array=0]="Array",d[d.BigInt=1]="BigInt",d[d.Boolean=2]="Boolean",d[d.Date=3]="Date",d[d.Constructor=4]="Constructor",d[d.Function=5]="Function",d[d.Null=6]="Null",d[d.Number=7]="Number",d[d.Object=8]="Object",d[d.RegExp=9]="RegExp",d[d.String=10]="String",d[d.Symbol=11]="Symbol",d[d.TypeArray=12]="TypeArray",d[d.Undefined=13]="Undefined",BigInt("14695981039346656037");let[ar,as]=[BigInt("1099511628211"),BigInt("18446744073709551616")];Array.from({length:256}).map((a,b)=>BigInt(b));let at=new Float64Array(1);function au(){throw Error("Unreachable")}new DataView(at.buffer),new Uint8Array(at.buffer),new TextEncoder;class av{constructor(a,b){this.type=a,this.decode=b}Encode(a){let b=this.type,c=aA(b)?a=>this.decode(b["~codec"].decode(a)):this.decode,d=aA(b)?c=>b["~codec"].encode(a(c)):a;return B(this.type,{"~codec":{decode:c,encode:d}},{})}}class aw{constructor(a){this.type=a}Decode(a){return new av(this.type,a)}}function ax(a){return new aw(a)}function ay(a,b){return ax(a).Decode(b).Encode(()=>{throw Error("Encode not implemented")})}function az(a,b){return ax(a).Decode(()=>{throw Error("Decode not implemented")}).Encode(b)}function aA(a){return q(a)&&u(a,"~codec")&&q(a["~codec"])&&u(a["~codec"],"encode")&&u(a["~codec"],"decode")}function aB(a){return fh(a)}function aC(a){return q(a)&&u(a,"~immutable")}function aD(a,b={}){return E("AddReadonly",[a],b)}function aE(a,b={}){return G(a,b)}function aF(a){return aE(a)}function aG(a){return q(a)&&u(a,"~readonly")}function aH(...a){var b;let c,[d,e,f]=ah(a,{3:(a,b,c)=>[a,b,c],2:(a,b)=>[a,b,()=>"Refine Error"]});return b={check:e,error:f},c=aI(d)?[...d["~refine"],b]:[b],B(d,{"~refine":c},{})}function aI(a){return q(a)&&u(a,"~refine")&&j(a["~refine"])&&function(a,b){for(let c=0;c<a.length;c++)if(!b(a[c],c))return!1;return!0}(a["~refine"],a=>p(a)&&u(a,"check")&&u(a,"error")&&m(a.check)&&m(a.error))}function aJ(a){return z({"~kind":"BigInt"},{type:"bigint"},a)}function aK(a){return C(a,"BigInt")}function aL(a){return z({"~kind":"Boolean"},{type:"boolean"},a)}function aM(a){return C(a,"Boolean")}function aN(a){return z({"~kind":"Identifier"},{name:a})}function aO(a){return C(a,"Identifier")}let aP="-?(?:0|[1-9][0-9]*)";function aQ(a){return z({"~kind":"Integer"},{type:"integer"},a)}function aR(a){return C(a,"Integer")}class aS extends Error{constructor(a){super("Invalid Literal value"),Object.defineProperty(this,"cause",{value:{value:a},writable:!1,configurable:!1,enumerable:!1})}}function aT(a,b){return z({"~kind":"Literal"},{type:k(a)?"bigint":l(a)?"boolean":o(a)?"number":r(a)?"string":(()=>{throw new aS(a)})(),const:a},b)}function aU(a){return k(a)||l(a)||o(a)||r(a)}function aV(a){return C(a,"Literal")}function aW(a){return z({"~kind":"Null"},{type:"null"},a)}function aX(a){return C(a,"Null")}let aY="-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?";function aZ(a){return z({"~kind":"Number"},{type:"number"},a)}function a$(a){return C(a,"Number")}function a_(a){return z({"~kind":"Symbol"},{type:"symbol"},a)}function a0(a){return C(a,"Symbol")}function a1(...a){let[b,c,d]=ah(a,{3:(a,b,c)=>[a,b,c],2:(a,b)=>[a,b,b],1:a=>[a,ab(),ab()]});return z({"~kind":"Parameter"},{name:b,extends:c,equals:d},{})}function a2(a){return C(a,"Parameter")}function a3(a){return z({"~kind":"String"},{type:"string"},a)}function a4(a){return C(a,"String")}function a5(a,b={}){return z({"~kind":"Union"},{anyOf:a},b)}function a6(a){return C(a,"Union")}function a7(a){let b=cZ(a);return 2===b.length?b[0]:[]}function a8(a){return 0!==a.length&&function a(b){return s(b,(b,c)=>{var d;return!!(a6(d=b)?a8(d.anyOf):!!aV(d)&&(d.const,!0))&&a(c)},()=>!0)}(a)}function a9(a){return z({"~kind":"TemplateLiteral"},{type:"string",pattern:a},{})}function ba(a){var b;let c=a7(a);return 0===c.length?a3():a8(c)?0===(b=c).length?au():1===b.length&&aV(b[0])?b[0]:a5((function a(b,c){return s(c,(c,d)=>a(function a(b,c){var d,e;return a6(c)?function b(c,d,e=[]){return s(d,(d,f)=>b(c,f,[...e,...a(c,d)]),()=>e)}(b,c.anyOf):aV(c)?(d=b,e=c.const,0===d.length?[`${e}`]:function a(b,c,d=[]){return s(b,(b,e)=>a(e,c,[...d,`${b}${c}`]),()=>d)}(d,e)):au()}(b,c),d),()=>b)})([],b).map(a=>aT(a))):a9(a)}function bb(a,b){return z({"~kind":"Record"},{type:"object",patternProperties:{[a]:b}})}function bc(a,b={}){let[c,d,e]=[a,a.length,!1];return z({"~kind":"Tuple"},{type:"array",additionalItems:e,items:c,minItems:d},b)}function bd(a){return C(a,"Tuple")}function be(a,b){return B(A(a,["~readonly"]),{},b)}function bf(a,b){return B(A(a,["~optional"]),{},b)}function bg(a,b={}){return bf(a,b)}function bh(a){return a.reduceRight((a,b,c)=>({[c]:b,...a}),{})}function bi(a){return aa(a)?a.properties:bd(a)?bh(a.items):au()}function bj(a,b){var c;let d=bp(a);return bo((c=a6(d)?d.anyOf:[d],c.reduce((a,c)=>[...a,...dd(dF({},c,b))?[]:[c]],[])))}function bk(a,b,c){return bo([ap([a,b]),bj(c,a)])}function bl(a){return bo(a.map(a=>aT(a)))}function bm(a){return bq(dK(function a(b,c=[]){return s(b,(b,d)=>a6(b)?a(d,function b(c,d,e=[]){return s(c,(c,f)=>b(f,d,[...e,...a([c],d)]),()=>e)}(b.anyOf,c)):a(d,function a(b,c,d=[]){return s(c,(c,e)=>{var f,g;let h,i,j,k,l,m,n,o,p,q;return a(b,e,[...d,(h=bp(b),i=bp(c),j=a6(h),k=a6(i),l=j||k,m=aa(h)||bd(h),n=aa(i)||bd(i),l?bm([h,i]):m&&n?(o=bi(h),_([...new Set([...v(p=bi(i)),...v(o)])].reduce((a,b)=>{var c,d;let e,f,g;return{...a,[b]:b in o?b in p?(c=o[b],d=p[b],e=!!aG(c)&&!!aG(d),f=!!$(c)&&!!$(d),g=function(a,b={}){return be(a,b)}(bg(bm([c,d]))),e&&f?aE(Y(g)):e&&!f?aE(g):!e&&f?Y(g):g):o[b]:b in p?p[b]:V()}},{}))):m&&!n?h:!m&&n?i:(q=dJ(f=h,g=i))===dH?f:q===dI||q===dG?g:V())])},()=>0===d.length?[b]:d)}(b,c)),()=>c)}(a)))}function bn(a){let b;return bp(c6(b=ba(a))?a3():b)}function bo(a){return bq(dK(a))}function bp(a){return al(a)?bk(a.if,a.then,a.else):ao(a)?bl(a.enum):aq(a)?bm(a.allOf):c6(a)?bn(a.pattern):a6(a)?bo(a.anyOf):a}function bq(a){return 1===a.length?a[0]:0===a.length?V():a5(a)}function br(a){return a.reduce((a,b)=>[...a,...a6(b)?br(b.anyOf):[b]],[])}function bs(a,b,c){return fa([a])?B(function a(b,c){var d,e,f,g,h,i;return U(b)?bb(bv,c):aM(b)?_({true:c,false:c}):ao(b)?(d=b.enum,a(bl(d),c)):aR(b)?bb(bt,c):aq(b)?(e=b.allOf,a(bm(e),c)):aV(b)?(f=b.const,g=c,r(f)||o(f)?_({[f]:g}):!1===f?_({false:g}):!0===f?_({true:g}):_({})):a$(b)?bb(bu,c):a6(b)?function(a,b){var c,d;let e=br(a),f=(c=e,d=b,!0===c.some(a=>a4(a)||a$(a)||aR(a))?bb(bv,d):void 0);return q(f)?f:_(e.reduce((a,c)=>aV(c)&&(r(c.const)||o(c.const))?{...a,[c.const]:b}:a,{}))}(b.anyOf,c):a4(b)?u(b,"pattern")&&(r(b.pattern)||b.pattern instanceof RegExp)?bb(b.pattern.toString(),c):bb(bv,c):c6(b)?(h=b.pattern,i=c,a8(a7(h))?a(bn(h),i):bb(h,i)):_({})}(a,b),{},c):bw(a,b,c)}let bt=`^${aP}$`,bu=`^${aY}$`,bv="^.*$";function bw(a,b,c={}){return E("Record",[a,b],c)}function bx(a,b,c={}){return bs(a,b,c)}function by(a){return a===bv?a3():a===bt?aQ():a===bu?aZ():ba(a)}function bz(a){return v(a.patternProperties)[0]}function bA(a){return by(bz(a))}function bB(a){return a.patternProperties[bz(a)]}function bC(a){return C(a,"Record")}function bD(a){return z({"~kind":"Rest"},{type:"rest",items:a},{})}function bE(a){return C(a,"Rest")}function bF(a){return z({"~kind":"This"},{$ref:"#"},a)}function bG(a){return C(a,"This")}function bH(a){return z({"~kind":"Undefined"},{type:"undefined"},a)}function bI(a){return C(a,"Undefined")}function bJ(a){return z({"~kind":"Void"},{type:"void"},a)}function bK(a){return C(a,"Void")}function bL(){throw Error("Unreachable")}let bM=a=>{let[b,c]=a;return[...b,...c].reduce((a,b)=>j(b)&&2===b.length?[...a,b[0]]:[...a,b],[])};function bN(a,b){return b.reduce((a,b)=>1===b.length?ej(a,b[0]):0===b.length?I(a):bL(),a)}function bO(a,b){return 3===b.length?d6(a,b[0],b[1],b[2]):a}function bP(a,b){return 3===b.length?(()=>{let[c,d,e]=b,f=bP(d,e);return"&"===c?aq(f)?ap([a,...f.allOf]):ap([a,f]):"|"===c?a6(f)?a5([a,...f.anyOf]):a5([a,f]):void bL()})():a}function bQ(a){return a.reduce((a,b)=>u(b,bt)||u(b,bu)||u(b,bv)?[a[0],i(a[1],b)]:[i(a[0],b),a[1]],[{},{}])}function bR(a,b){return"remove"===a?function(a,b={}){return E("RemoveReadonly",[a],b)}(b):"add"===a?aD(b):b}function bS(a,b){return"remove"===a?function(a,b={}){return E("RemoveOptional",[a],b)}(b):"add"===a?X(b):b}function bT(a){return 2===a.length}function bU(a,b,c){return bT(a)?b(a[0],a[1]):c()}function bV(a,b){for(let e=0;e<a.length;e++){var c,d;let f=(c=a[e],0===(d=b).indexOf(c)?[c,d.slice(c.length)]:[]);if(bT(f))return f}return[]}function bW(a,b){return Array.from({length:b-a+1},(b,c)=>String.fromCharCode(a+c))}let bX=[...bW(97,122),...bW(65,90)],bY=bW(49,57),bZ=["0",...bY];function b$(a){let b=a.indexOf("*/");return -1===b?"":a.slice(b+2)}function b_(a){let b=a.indexOf("\n");return -1===b?"":a.slice(b)}function b0(a){let b=a.trimStart();return b.startsWith("/*")?b0(b$(b.slice(2))):b.startsWith("//")?b0(b_(b.slice(2))):b}function b1(a,b){return bU(bV([a],b),(a,b)=>[a,b],()=>["",b])}function b2(a,b,c,d=""){return bU(bV(a,c),(c,e)=>b.includes(c)?b2(a,b,e,d):b2(a,b,e,`${d}${c}`),()=>[d,c])}let b3=[...bZ,"_"];function b4(a){var b;return bU(bV(["0"],b=b0(a)),(a,b)=>[a,b],()=>bU(bV(bY,b),(a,b)=>bU(b2(b3,["_"],b),(b,c)=>[`${a}${b}`,c],()=>[]),()=>[]))}function b5(a){return bU(bU(b1("-",b0(a)),(a,b)=>bU(b4(b),(b,c)=>[`${a}${b}`,c],()=>[]),()=>[]),(a,b)=>bU(bV(["n"],b),(b,c)=>[`${a}`,c],()=>[]),()=>[])}function b6(a,b){return""===a?["",b]:a.startsWith("\n")?bV([a],function a(b){let c=b.replace(/^[ \t\r\f\v]+/,"");return c.startsWith("/*")?a(b$(c.slice(2))):c.startsWith("//")?a(b_(c.slice(2))):c}(b)):a.startsWith(" ")?bV([a],b):bV([a],b0(b))}let b7=[...bX,"_","$"],b8=[...b7,...bZ];function b9(a){return bU(bV(b7,b0(a)),(a,b)=>bU(function a(b,c=""){return bU(bV(b8,b),(b,d)=>a(d,`${c}${b}`),()=>[c,b])}(b),(b,c)=>[`${a}${b}`,c],()=>[]),()=>[])}let ca=[...bZ,"_"];function cb(a){return bU(b2(ca,["_"],a),(a,b)=>""===a?[]:[a,b],()=>[])}function cc(a){return bU(b1("-",b0(a)),(a,b)=>{var c;return bU(bT(bV(["."],c=b0(b)))?bU(bV(["."],c),(a,b)=>bU(cb(b),(b,c)=>[`0${a}${b}`,c],()=>[]),()=>[]):bU(b4(c),(a,b)=>bU(bV(["."],b),(b,c)=>bU(cb(c),(c,d)=>[`${a}${b}${c}`,d],()=>[`${a}`,c]),()=>[`${a}`,b]),()=>[]),(b,c)=>[`${a}${b}`,c],()=>[])},()=>[])}function cd(a,b,c=""){var d;return bU(""===(d=b)?[]:[d.slice(0,1),d.slice(1)],(d,e)=>!function a(b,c){return s(b,(b,d)=>!!c.startsWith(b)||a(d,c),()=>!1)}(a,b)?cd(a,e,`${c}${d}`):[c,b],()=>[])}function ce(a,b){return bU(bV(a,b0(b)),(a,b)=>{var c;return c=`${a}${b}`,bU(bV([a],b0(c)),(b,c)=>bU(cd(["\n",a],c),(b,c)=>bU(bV([a],c),(a,c)=>[`${b}`,c],()=>[]),()=>[]),()=>[])},()=>[])}let cf=(a,b,c=()=>[])=>2===a.length?b(a):c(),cg=a=>cf(cf(cf(cf(b9(a),([a,b])=>cf(b6("extends",b),([b,c])=>cf(cy(c),([c,d])=>cf(b6("=",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[a1(a[0],a[2],a[4]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6("extends",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a1(a[0],a[2],a[2]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6("=",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a1(a[0],ab(),a[2]),b]),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>[a1(a,ab(),ab()),b]),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),ch=(a,b=[])=>cf(cf(cg(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>ch(c,[...b,a]),()=>[b,a]),ci=a=>cf(cf(b6("<",a),([a,b])=>cf(cf(cf(ch(b),([a,b])=>cf(cf(cf(cg(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6(">",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),cj=(a,b=[])=>cf(cf(cy(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cj(c,[...b,a]),()=>[b,a]),ck=a=>cf(cf(cf(b6(";",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[null,b]),cl=a=>cf(b6("string",a),([a,b])=>[a3(),b]),cm=a=>cf(b6("number",a),([a,b])=>[aZ(),b]),cn=a=>cf(b6("integer",a),([a,b])=>[aQ(),b]),co=a=>cf(b6("symbol",a),([a,b])=>[a_(),b]),cp=a=>cf(cd(["${","`"],a),([a,b])=>[aT(a),b]),cq=a=>cf(cf(cf(cp(a),([a,b])=>cf(cf(cf(b6("${",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6("}",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),([b,c])=>cf(cq(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cf(cp(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(cp(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[]))),([a,b])=>{var c;return[3===(c=a).length?[c[0],c[1],...c[2]]:[c[0]],b]}),cr=a=>cf(cf(b6("`",a),([a,b])=>cf(cq(b),([b,c])=>cf(b6("`",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),cs=(a,b=[])=>cf(cf(cf(b6("[",a),([a,b])=>cf(cy(b),([b,c])=>cf(b6("]",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cf(b6("[",a),([a,b])=>cf(b6("]",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>[])),([a,c])=>cs(c,[...b,a]),()=>[b,a]),ct=a=>cf(cf(cf(cf(cf(b6("keyof",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a.length>0,b]),([a,b])=>cf(cf(cf(cf(b6("(",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6(")",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cl(b),([a,b])=>[a,b],()=>cf(cm(b),([a,b])=>[a,b],()=>cf(cf(b6("boolean",b),([a,b])=>[aL(),b]),([a,b])=>[a,b],()=>cf(cf(b6("undefined",b),([a,b])=>[bH(),b]),([a,b])=>[a,b],()=>cf(cf(b6("null",b),([a,b])=>[aW(),b]),([a,b])=>[a,b],()=>cf(cn(b),([a,b])=>[a,b],()=>cf(cf(b6("bigint",b),([a,b])=>[aJ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("unknown",b),([a,b])=>[ab(),b]),([a,b])=>[a,b],()=>cf(cf(b6("any",b),([a,b])=>[T(),b]),([a,b])=>[a,b],()=>cf(cf(b6("object",b),([a,b])=>[_({}),b]),([a,b])=>[a,b],()=>cf(cf(b6("never",b),([a,b])=>[V(),b]),([a,b])=>[a,b],()=>cf(co(b),([a,b])=>[a,b],()=>cf(cf(b6("void",b),([a,b])=>[bJ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("this",b),([a,b])=>[bF(),b]),([a,b])=>[a,b],()=>cf(cf(b5(b),([a,b])=>[aT(BigInt(a)),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("true",b),([a,b])=>[a,b],()=>cf(b6("false",b),([a,b])=>[a,b],()=>[])),([a,b])=>[aT("true"===a),b]),([a,b])=>[a,b],()=>cf(cf(cc(b),([a,b])=>[aT(parseFloat(a)),b]),([a,b])=>[a,b],()=>cf(cf(ce(["'",'"'],b),([a,b])=>[aT(a),b]),([a,b])=>[a,b],()=>cf(cf(cr(b),([a,b])=>[c4(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(cf(b6("if",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6("then",c),([c,d])=>cf(cy(d),([d,e])=>cf(b6("else",e),([e,f])=>cf(cy(f),([f,g])=>[[a,b,c,d,e,f],g])))))),([a,b])=>[a,b],()=>cf(cf(b6("if",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6("then",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>[])),([a,b])=>[6===a.length?ak(a[1],a[3],a[5]):ak(a[1],a[3],ab()),b]),([a,b])=>[a,b],()=>cf(cE(b),([a,b])=>[a,b],()=>cf(cI(b),([a,b])=>[a,b],()=>cf(cO(b),([a,b])=>[a,b],()=>cf(cN(b),([a,b])=>[a,b],()=>cf(cP(b),([a,b])=>[a,b],()=>cf(cf(cf(b9(b),([a,b])=>cf(cf(cf(b6("<",b),([a,b])=>cf(cf(cf(cj(b),([a,b])=>cf(cf(cf(cy(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6(">",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),([b,c])=>[[a,b],c])),([a,b])=>{var c,d;return[(c=a[0],d=a[1],"Array"===c?I(d[0]):"Capitalize"===c?dS(d[0]):"ConstructorParameters"===c?d9(d[0]):"Evaluate"===c?function(a,b={}){return E("Evaluate",[a],b)}(d[0]):"Exclude"===c?ec(d[0],d[1]):"Extract"===c?ef(d[0],d[1]):"Index"===c?ej(d[0],d[1]):"InstanceType"===c?ey(d[0]):"Lowercase"===c?dU(d[0]):"NonNullable"===c?eI(d[0]):"Omit"===c?eL(d[0],d[1]):"Parameters"===c?eP(d[0]):"Partial"===c?eS(d[0]):"Pick"===c?eV(d[0],d[1]):"Readonly"===c?eY(d[0]):"KeyOf"===c?eB(d[0]):"Record"===c?bw(d[0],d[1]):"Required"===c?e0(d[0]):"ReturnType"===c?e3(d[0]):"Uncapitalize"===c?dW(d[0]):"Uppercase"===c?dY(d[0]):dO(P(c),d)),b]}),([a,b])=>[a,b],()=>cf(cQ(b),([a,b])=>[a,b],()=>[])))))))))))))))))))))))))))),([a,b])=>[j(a)&&3===a.length?a[1]:a,b]),([b,c])=>cf(cf(cs(c),([a,b])=>[a.reduce((a,b)=>3===b.length?[...a,[b[1]]]:[...a,[]],[]),b]),([c,d])=>cf(cf(cf(cf(b6("extends",d),([a,b])=>cf(cy(b),([b,c])=>cf(b6("?",c),([c,d])=>cf(cy(d),([d,e])=>cf(b6(":",e),([e,f])=>cf(cy(f),([f,g])=>[[a,b,c,d,e,f],g])))))),([a,b])=>[a,b],()=>cf([[],d],([a,b])=>[a,b],()=>[])),([a,b])=>[6===a.length?[a[1],a[3],a[5]]:[],b]),([d,e])=>cf(cf(cf(cf(b6("with",e),([a,b])=>cf(cT(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf([[],e],([a,b])=>[a,b],()=>[])),([a,b])=>[2===a.length?a[1]:[],b]),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[function(a){let[b,c,d,e,f]=a;var g=b?bO(eB(bN(c,d)),e):bO(bN(c,d),e);return j(f)&&0===f.length?g:e6(g,f)}(a),b]),cu=a=>cf(cf(cf(b6("&",a),([a,b])=>cf(ct(b),([b,c])=>cf(cu(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a,b]),cv=a=>cf(cf(ct(a),([a,b])=>cf(cu(b),([b,c])=>[[a,b],c])),([a,b])=>[function(a){let[b,c]=a;return bP(b,c)}(a),b]),cw=a=>cf(cf(cf(b6("|",a),([a,b])=>cf(cv(b),([b,c])=>cf(cw(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a,b]),cx=a=>cf(cf(cv(a),([a,b])=>cf(cw(b),([b,c])=>[[a,b],c])),([a,b])=>[function(a){let[b,c]=a;return bP(b,c)}(a),b]),cy=a=>cf(cf(cf(cf(cf(b6("infer",a),([a,b])=>cf(b9(b),([b,c])=>cf(b6("extends",c),([c,d])=>cf(cx(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>cf(cf(b6("infer",a),([a,b])=>cf(b9(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>[])),([a,b])=>[4===a.length?ai(a[1],a[3]):2===a.length?ai(a[1],ab()):bL(),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("|",a),([a,b])=>cf(cx(b),([b,c])=>[[a,b],c])),([a,b])=>[a[1],b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("readonly",a),([a,b])=>cf(cx(b),([b,c])=>[[a,b],c])),([a,b])=>[function(a,b={}){return E("AddImmutable",[a],b)}(a[1]),b]),([a,b])=>[a,b],()=>cf(cx(a),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),cz=a=>cf(cf(cf(cc(a),([a,b])=>[`${a}`,b]),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>[a,b]),([a,b])=>[a,b],()=>cf(cf(ce(["'",'"'],a),([a,b])=>[a,b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("[",a),([a,b])=>cf(b9(b),([b,c])=>cf(b6(":",c),([c,d])=>cf(cf(cn(d),([a,b])=>[a,b],()=>cf(cm(d),([a,b])=>[a,b],()=>cf(cl(d),([a,b])=>[a,b],()=>cf(co(d),([a,b])=>[a,b],()=>[])))),([d,e])=>cf(b6("]",e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[aR(a[3])?bt:a$(a[3])?bu:a0(a[3])||a4(a[3])?bv:bL(),b]),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),cA=a=>cf(cf(cf(cf(cf(b6("readonly",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a.length>0,b]),([a,b])=>cf(cz(b),([b,c])=>cf(cf(cf(cf(b6("?",c),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],c],([a,b])=>[a,b],()=>[])),([a,b])=>[a.length>0,b]),([c,d])=>cf(b6(":",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[function(a){let[b,c,d,e,f]=a;return{[c]:b&&d?aD(X(f)):b&&!d?aD(f):!b&&d?X(f):f}}(a),b]),cB=a=>cf(cf(cf(b6(",",a),([a,b])=>cf(b6("\n",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6(";",a),([a,b])=>cf(b6("\n",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6(",",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(b6(";",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(b6("\n",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[]))))),([a,b])=>[a,b]),cC=(a,b=[])=>cf(cf(cA(a),([a,b])=>cf(cB(b),([b,c])=>[[a,b],c])),([a,c])=>cC(c,[...b,a]),()=>[b,a]),cD=a=>cf(cf(b6("{",a),([a,b])=>cf(cf(cf(cC(b),([a,b])=>cf(cf(cf(cA(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("}",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[bQ(a[1]),b]),cE=a=>cf(cD(a),([a,b])=>[function(a){let[b,c]=a;return _(b,0===v(c).length?{}:{patternProperties:c})}(a),b]),cF=a=>cf(cf(cf(cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(b6("readonly",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(b6("readonly",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>[])))),([a,b])=>[5===a.length?aD(X(a[4])):3===a.length?a[2]:4===a.length?"readonly"===a[2]?aD(a[3]):X(a[3]):bL(),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("readonly",a),([a,b])=>cf(cy(b),([b,c])=>cf(b6("?",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[aD(X(a[1])),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("readonly",a),([a,b])=>cf(cy(b),([b,c])=>[[a,b],c])),([a,b])=>[aD(a[1]),b]),([a,b])=>[a,b],()=>cf(cf(cf(cy(a),([a,b])=>cf(b6("?",b),([b,c])=>[[a,b],c])),([a,b])=>[X(a[0]),b]),([a,b])=>[a,b],()=>cf(cy(a),([a,b])=>[a,b],()=>[]))))),([a,b])=>[a,b]),cG=a=>cf(cf(cf(b6("...",a),([a,b])=>cf(cF(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(cF(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[])),([a,b])=>{var c;return[2===(c=a).length?bD(c[1]):1===c.length?c[0]:bL(),b]}),cH=(a,b=[])=>cf(cf(cG(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cH(c,[...b,a]),()=>[b,a]),cI=a=>cf(cf(b6("[",a),([a,b])=>cf(cf(cf(cH(b),([a,b])=>cf(cf(cf(cG(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("]",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[bc(a[1]),b]),cJ=a=>cf(cf(cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(b6("readonly",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[aD(X(a[4])),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(b6("readonly",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[aD(a[3]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[X(a[3]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[2],b]),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),cK=a=>cf(cf(cf(b6("...",a),([a,b])=>cf(cJ(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(cJ(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[])),([a,b])=>{var c;return[2===(c=a).length?bD(c[1]):1===c.length?c[0]:bL(),b]}),cL=(a,b=[])=>cf(cf(cK(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cL(c,[...b,a]),()=>[b,a]),cM=a=>cf(cf(cL(a),([a,b])=>cf(cf(cf(cK(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),cN=a=>cf(cf(b6("(",a),([a,b])=>cf(cM(b),([b,c])=>cf(b6(")",c),([c,d])=>cf(b6("=>",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[N(a[1],a[4]),b]),cO=a=>cf(cf(b6("new",a),([a,b])=>cf(b6("(",b),([b,c])=>cf(cM(c),([c,d])=>cf(b6(")",d),([d,e])=>cf(b6("=>",e),([e,f])=>cf(cy(f),([f,g])=>[[a,b,c,d,e,f],g])))))),([a,b])=>[L(a[2],a[5]),b]),cP=a=>cf(cf(b6("{",a),([a,b])=>cf(cf(cf(cf(b6("+",b),([a,b])=>cf(b6("readonly",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("-",b),([a,b])=>cf(b6("readonly",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("readonly",b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])))),([a,b])=>[2===a.length&&"-"===a[0]?"remove":2===a.length&&"+"===a[0]||1===a.length?"add":"none",b]),([b,c])=>cf(b6("[",c),([c,d])=>cf(b9(d),([d,e])=>cf(b6("in",e),([e,f])=>cf(cy(f),([f,g])=>cf(cf(cf(cf(b6("as",g),([a,b])=>cf(cy(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf([[],g],([a,b])=>[a,b],()=>[])),([a,b])=>[2===a.length?[a[1]]:[],b]),([g,h])=>cf(b6("]",h),([h,i])=>cf(cf(cf(cf(b6("+",i),([a,b])=>cf(b6("?",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("-",i),([a,b])=>cf(b6("?",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("?",i),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],i],([a,b])=>[a,b],()=>[])))),([a,b])=>[2===a.length&&"-"===a[0]?"remove":2===a.length&&"+"===a[0]||1===a.length?"add":"none",b]),([i,j])=>cf(b6(":",j),([j,k])=>cf(cy(k),([k,l])=>cf(ck(l),([l,m])=>cf(b6("}",m),([m,n])=>[[a,b,c,d,e,f,g,h,i,j,k,l,m],n]))))))))))))),([a,b])=>{var c;return[j((c=a)[6])&&1===c[6].length?eE(aN(c[3]),c[5],c[6][0],bR(c[1],bS(c[8],c[10]))):eE(aN(c[3]),c[5],P(c[3]),bR(c[1],bS(c[8],c[10]))),b]}),cQ=a=>cf(b9(a),([a,b])=>[P(a),b]),cR=a=>cf(cf(cz(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(cV(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[{[a[0]]:a[2]},b]),cS=(a,b=[])=>cf(cf(cR(a),([a,b])=>cf(cB(b),([b,c])=>[[a,b],c])),([a,c])=>cS(c,[...b,a]),()=>[b,a]),cT=a=>cf(cf(b6("{",a),([a,b])=>cf(cf(cf(cS(b),([a,b])=>cf(cf(cf(cR(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("}",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1].reduce((a,b)=>i(a,b),{}),b]),cU=(a,b=[])=>cf(cf(cV(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cU(c,[...b,a]),()=>[b,a]),cV=a=>cf(cf(cf(b5(a),([a,b])=>[BigInt(a),b]),([a,b])=>[a,b],()=>cf(cf(cc(a),([a,b])=>[parseFloat(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("true",a),([a,b])=>[a,b],()=>cf(b6("false",a),([a,b])=>[a,b],()=>[])),([a,b])=>["true"===a,b]),([a,b])=>[a,b],()=>cf(cf(ce(['"',"'"],a),([a,b])=>[a,b]),([a,b])=>[a,b],()=>cf(cf(b6("null",a),([a,b])=>[null,b]),([a,b])=>[a,b],()=>cf(cf(b6("undefined",a),([a,b])=>[void 0,b]),([a,b])=>[a,b],()=>cf(cT(a),([a,b])=>[a,b],()=>cf(cf(cf(b6("[",a),([a,b])=>cf(cf(cf(cU(b),([a,b])=>cf(cf(cf(cV(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("]",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),([a,b])=>[a,b],()=>[])))))))),([a,b])=>[a,b]),cW=a=>cf(cf(cf(cX(a),([a,b])=>cf(b6("|",b),([b,c])=>cf(cW(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cf(cX(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[]))),([a,b])=>[3===a.length?[...a[0],...a[2]]:1===a.length?[...a[0]]:[],b]),cX=a=>{let b;return cf(cf(cf(cf(cf(b6("-?(?:0|[1-9][0-9]*)n",b=a),([a,b])=>[aJ(),b]),([a,b])=>[a,b],()=>cf(cf(b6(".*",b),([a,b])=>[a3(),b]),([a,b])=>[a,b],()=>cf(cf(b6("-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?",b),([a,b])=>[aZ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("-?(?:0|[1-9][0-9]*)",b),([a,b])=>[aQ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("(?!)",b),([a,b])=>[V(),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("(",b),([a,b])=>cf(cY(b),([b,c])=>cf(b6(")",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a5(a[1]),b]),([a,b])=>[a,b],()=>cf(cf(bU(cd(["-?(?:0|[1-9][0-9]*)n",".*","-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?","-?(?:0|[1-9][0-9]*)","(?!)","(",")","$","|"],b),(a,b)=>""===a?[]:[a,b],()=>[]),([a,b])=>[aT(a),b]),([a,b])=>[a,b],()=>[]))))))),([a,b])=>[a,b]),([a,b])=>cf(cY(b),([b,c])=>[[a,b],c])),([a,b])=>[[a[0],...a[1]],b])},cY=a=>cf(cf(cW(a),([a,b])=>[a,b],()=>cf(cX(a),([a,b])=>[a,b],()=>[])),([a,b])=>[a,b]),cZ=a=>cf(cf(b6("^",a),([a,b])=>cf(cY(b),([b,c])=>cf(b6("$",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),c$=(a,b=[])=>cf(cf(cy(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>c$(c,[...b,a]),()=>[b,a]),c_=a=>cf(cf(cf(b6("extends",a),([a,b])=>cf(cf(cf(c$(b),([a,b])=>cf(cf(cf(cy(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>{var c;return[2===(c=a).length?c[1]:[],b]}),c0=(a,b=[])=>cf(cf(c1(a),([a,b])=>cf(cf(cf(cf(b6(";",b),([a,b])=>cf(b6("\n",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6(";",b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(b6("\n",b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[]))),([a,b])=>[a,b]),([b,c])=>[[a,b],c])),([a,c])=>c0(c,[...b,a]),()=>[b,a]),c1=a=>cf(cf(cf(cf(cf(b6("export",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[null,b]),([a,b])=>cf(cf(cf(cf(b6("interface",b),([a,b])=>cf(b9(b),([b,c])=>cf(ci(c),([c,d])=>cf(c_(d),([d,e])=>cf(cD(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[function(a){let b=a[2],c=a[3],[d,e]=a[4],f=0===v(e).length?{}:{patternProperties:e};return{[a[1]]:R(b,du(c,d,f))}}(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("interface",b),([a,b])=>cf(b9(b),([b,c])=>cf(c_(c),([c,d])=>cf(cD(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[function(a){let b=a[2],[c,d]=a[3],e=0===v(d).length?{}:{patternProperties:d};return{[a[1]]:du(b,c,e)}}(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("type",b),([a,b])=>cf(b9(b),([b,c])=>cf(ci(c),([c,d])=>cf(b6("=",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[{[a[1]]:R(a[2],a[4])},b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("type",b),([a,b])=>cf(b9(b),([b,c])=>cf(b6("=",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[{[a[1]]:a[3]},b]),([a,b])=>[a,b],()=>[])))),([b,c])=>cf(ck(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]);function c2(a,b){return s(a,(a,c)=>(function a(b,c,d){var e,f,g,h,i;return ao(b)?(e=b.enum,a(bl(e),c,d)):aR(b)?c2(c,`${d}${aP}`):aV(b)?(f=b.const,c2(c,`${d}${f}`)):aK(b)?c2(c,`${d}-?(?:0|[1-9][0-9]*)n`):aM(b)?a(a5([aT("false"),aT("true")]),c,d):a$(b)?c2(c,`${d}${aY}`):a4(b)?c2(c,`${d}.*`):c6(b)?(g=b.pattern,c2(c,`${d}${g.slice(1,g.length-1)}`)):q(i=b)&&u(i,"action")&&"TemplateLiteral"===i.action?(h=b.parameters[0],a(c3(h,{}),c,d)):a6(b)?function b(c,d,e,f=[]){return s(c,(c,g)=>b(g,d,e,[...f,a(c,[],"")]),()=>c2(d,`${e}(${f.join("|")})`))}(b.anyOf,c,d):"(?!)"})(a,c,b),()=>b)}function c3(a,b){let c;return fa(a)?B(a9((c=c2(a,""),`^${c}$`)),{},b):c4(a,b)}function c4(a,b={}){return E("TemplateLiteral",[a],b)}function c5(a,b={}){var c;let d;return B(r(a)?c3((c=a,2===(d=cr(`\`${c}\``)).length?d[0]:au()),{}):c3(a,{}),{},b)}function c6(a){return C(a,"TemplateLiteral")}function c7(a){return z({"~kind":"ExtendsUnion"},{inferred:a})}function c8(a){return q(a)&&u(a,"~kind")&&u(a,"inferred")&&"ExtendsUnion"===a["~kind"]&&q(a.inferred)}function c9(a){return z({"~kind":"ExtendsTrue"},{inferred:a})}function da(a){return q(a)&&u(a,"~kind")&&u(a,"inferred")&&"ExtendsTrue"===a["~kind"]&&q(a.inferred)}function db(){return z({"~kind":"ExtendsFalse"},{})}function dc(a){return q(a)&&u(a,"~kind")&&"ExtendsFalse"===a["~kind"]}function dd(a){return c8(a)||da(a)}function de(a,b,c){return dd(a)?b(a.inferred):c()}function df(a,b,c){var d,e,f,g;return U(c)?c9(a):al(c)?(d=c.if,e=c.then,f=c.else,de(ds(a,b,d),a=>de(ds(a,b,e),a=>c9(a),()=>db()),()=>de(ds(a,b,f),a=>c9(a),()=>db()))):ao(c)?ds(a,b,bl(c.enum)):aj(c)?(g=c.name,de(ds(a,b,c.extends),c=>c9(i(i(a,c),{[g]:b})),()=>db())):aq(c)?function a(b,c,d){return s(d,(d,e)=>de(ds(b,c,d),b=>a(b,c,e),()=>db()),()=>c9(b))}(a,b,c.allOf):c6(c)?ds(a,b,bn(c.pattern)):a6(c)?function a(b,c,d){return s(d,(d,e)=>de(ds(b,c,d),a=>c9(a),()=>a(b,c,e)),()=>db())}(a,b,c.anyOf):ac(c)?c9(a):db()}function dg(a,b,c){return s(b,(b,d)=>s(c,(c,e)=>{let f,g,h,i;return f=aj(c)?b:c,g=aj(c)?c:b,h=$(b),i=$(c),!h&&i?db():de(ds(a,f,g),a=>dg(a,d,e),()=>db())},()=>$(b)?c9(a):db()),()=>c9(a))}function dh(a,b,c){return bK(c)?c9(a):ds(a,b,c)}function di(a,b,c){return b===c?c9(a):db()}function dj(a,b){return z({"~kind":"Inferrable"},{name:a,type:b},{})}function dk(a){return q(a)&&u(a,"~kind")&&u(a,"name")&&u(a,"type")&&"Inferrable"===a["~kind"]&&r(a.name)&&q(a.type)}function dl(a){return bE(a)?aj(a.items)?J(a.items.extends)?dj(a.items.name,a.items.extends.items):ac(a.items.extends)?dj(a.items.name,a.items.extends):void 0:au():void 0}function dm(a){return aj(a)?dj(a.name,a.extends):void 0}function dn(a,b,c=[]){return s(a,(a,d)=>de(ds({},a,b),()=>dn(d,b,[...c,a]),()=>void 0),()=>c)}function dp(a,b,c,d){let e=dn(c,d);return j(e)?c9(i(a,{[b]:a5(e)})):db()}function dq(a,b){return b?[...a].reverse():a}function dr(a,b,c){return s(b,(b,d)=>de(function a(b,c,d){return s(d,(d,e)=>de(ds(b,c,d),a=>c9(a),()=>a(b,c,e)),()=>db())}(a,b,c),a=>dr(a,d,c),()=>db()),()=>c9(a))}function ds(a,b,c){var d,e,f,g,h,m,n,p,t,x,y,z,A,B,C,D,E,F,G,H,I,K,L,N;let P,Q,R,S,T,V,X,Y,Z,ab;return U(b)?aj(c)?df(a,b,c):U(c)||ac(c)?c9(a):c7(a):J(b)?(d=b.items,J(c)?(P=aC(b),Q=aC(c),P&&Q||!P&&Q||!P||Q)?ds(a,d,c.items):db():df(a,b,c)):aK(b)?aK(c)?c9(a):df(a,b,c):aM(b)?aM(c)?c9(a):df(a,b,c):M(b)?(e=b.parameters,f=b.instanceType,U(c)||ac(c)?c9(a):M(c)?de(dg(a,e,c.parameters),a=>dh(a,f,c.instanceType),()=>db()):db()):al(b)?(g=b.if,h=b.then,m=b.else,de(ds(a,g,c),()=>ds(a,h,c),()=>ds(a,m,c))):ao(b)?(n=b.enum,ds(a,bl(n),c)):O(b)?(p=b.parameters,t=b.returnType,U(c)||ac(c)?c9(a):O(c)?de(dg(a,p,c.parameters),a=>dh(a,t,c.returnType),()=>db()):db()):aR(b)?aR(c)||a$(c)?c9(a):df(a,b,c):aq(b)?(x=b.allOf,ds(a,bm(x),c)):aV(b)?k(b.const)?(y=b.const,aV(c)?di(a,y,c.const):aK(c)?c9(a):df(a,aT(y),c)):l(b.const)?(z=b.const,aV(c)?di(a,z,c.const):aM(c)?c9(a):df(a,aT(z),c)):o(b.const)?(A=b.const,aV(c)?di(a,A,c.const):a$(c)?c9(a):df(a,aT(A),c)):r(b.const)?(B=b.const,aV(c)?di(a,B,c.const):a4(c)?c9(a):df(a,aT(B),c)):au():W(b)?aj(c)?df(a,b,c):c9(a):aX(b)?aX(c)?c9(a):df(a,b,c):a$(b)?a$(c)?c9(a):df(a,b,c):aa(b)?(C=b.properties,bC(c)?(bz(c),D=bB(c),R=v(C),function a(b,c,d,e){return s(c,(c,f)=>de(ds({},b[c],d),c=>a(b,f,d,v(c).reduce((a,b)=>({...a,[b]:u(e,b)?a6(a[b])?a5([...a[b].anyOf,c[b]]):a5([e[b],c[b]]):c[b]}),e)),()=>db()),()=>c9(e))}(C,R,D,a)):aa(c)?(S=function(a,b,c){var d;let e={};for(let d of v(c))e[d]=d in b?function(a,b,c){return aj(c)&&W(c.extends)?db():de(ds(a,b,c),a=>$(b)?$(c)?c9(a):db():c9(a),()=>db())}({},b[d],c[d]):$(c[d])?aj(c[d])?c9(i(a,{[c[d].name]:c[d].extends})):c9(a):db();let f=w(e).every(a=>dd(a)),g=f?(d=v(e),d.reduce((a,b)=>b in e&&dd(e[b])?{...a,...e[b].inferred}:au(),{})):{};return f?c9(g):db()}(a,C,c.properties),dd(S)?c9(i(a,S.inferred)):db()):df(a,_(C),c)):bC(b)?(E=bz(b),F=bB(b),bC(c)?(by(E),by(bz(c)),ds(a,F,bB(c))):aa(c)?(L=a,0===v(c.properties).length?c9(L):db()):U(c)||ac(c)?c9(a):db()):a4(b)?a4(c)?c9(a):df(a,b,c):a0(b)?a0(c)?c9(a):df(a,b,c):c6(b)?(G=b.pattern,ds(a,bn(G),c)):bd(b)?(H=b.items,T=fc(a,e9([],[]),H),bd(c)?(I=c.items,ab=q(Z=(N=V=fc(a,e9([],[]),I)).length>0?N[0]:void 0)?dl(Z):void 0,function a(b,c,d,e){return s(e,(e,f)=>{var g;let h,k;return dk(h=dl(e))?(g=h.name,j(k=dn(dq(d,c),h.type))?c9(i(b,{[g]:bc(k)})):db()):s(d,(d,g)=>de(ds(b,d,e),b=>a(b,c,g,f),()=>db()),()=>db())},()=>0===d.length?c9(b):db())}(a,X=q(ab),dq(T,X),dq(V,X))):J(c)?function a(b,c,d){let e=dm(d);return dk(e)?dp(b,e.name,c,e.type):s(c,(c,e)=>de(ds(b,c,d),b=>a(b,e,d),()=>db()),()=>c9(b))}(a,T,c.items):df(a,bc(T),c)):bI(b)?bK(c)||bI(c)?c9(a):df(a,b,c):a6(b)?(K=b.anyOf,dk(Y=dm(c))?dp(a,Y.name,K,Y.type):a6(c)?dr(a,K,c.anyOf):dr(a,K,[c])):ac(b)?aj(c)?df(a,b,c):U(c)||ac(c)?c9(a):db():bK(b)?bK(c)?c9(a):df(a,b,c):db()}function dt(a,b,c){return fa(a)?B(bm([...a,_(b)]),{},c):du(a,b,c)}function du(a,b,c={}){return E("Interface",[a,b],c)}function dv(a){return q(a)&&u(a,"action")&&"Interface"===a.action}function dw(a,b,c={}){return dt(a,b,c)}function dx(a,b,c){return s(c,(c,d)=>!!dy(a,b,c)||dx(a,b,d),()=>!1)}function dy(a,b,c){var d;return Q(c)?(d=c.$ref,!!a.includes(d)||dy([...a,d],b,b[d])):J(c)?dy(a,b,c.items):M(c)?dx(a,b,[...c.parameters,c.instanceType]):O(c)?dx(a,b,[...c.parameters,c.returnType]):dv(c)?dx(a,b,w(c.parameters[1])):aq(c)?dx(a,b,c.allOf):aa(c)?dx(a,b,w(c.properties)):a6(c)?dx(a,b,c.anyOf):bd(c)?dx(a,b,c.items):!!bC(c)&&dy(a,b,bB(c))}function dz(a,b,c){return b.reduce((b,c)=>dA(a,c,b),c)}function dA(a,b,c){var d,e,f,g,h,i,j;return Q(b)?(d=b.$ref,c.includes(d)?c:d in a?dA(a,a[d],[...c,d]):au()):J(b)?dA(a,b.items,c):M(b)?dz(a,[...b.parameters,b.instanceType],c):O(b)?dz(a,[...b.parameters,b.returnType],c):dv(b)?(e=a,f=b.parameters[1],g=c,dz(e,w(f),g)):aq(b)?dz(a,b.allOf,c):aa(b)?(h=a,i=b.properties,j=c,dz(h,w(i),j)):a6(b)?dz(a,b.anyOf,c):bd(b)?dz(a,b.items,c):bC(b)?dA(a,bB(b),c):c}function dB(a){return a.reduce((a,b)=>[...a,dC(b)],[])}function dC(a){var b;return Q(a)?(a.$ref,T()):J(a)?I(dC(a.items),K(a)):M(a)?L(dB(a.parameters),dC(a.instanceType)):O(a)?N(dB(a.parameters),dC(a.returnType)):aq(a)?ap(dB(a.allOf)):aa(a)?_(v(b=a.properties).reduce((a,c)=>({...a,[c]:dC(b[c])}),{})):bC(a)?bx(bA(a),dC(bB(a))):a6(a)?a5(dB(a.anyOf)):bd(a)?bc(dB(a.items)):a}function dD(a,b){return function a(b,c){return c in b?Q(b[c])?a(b,b[c].$ref):b[c]:V()}(a,b)}function dE(a){var b,c;return ae(a)?(b=a.$defs,(c=a.$ref)in b?dC(b[c]):ab()):ag(a)?ab():a}function dF(a,b,c){return ds(a,dE(b),dE(c))}let dG="equal",dH="left-inside",dI="right-inside";function dJ(a,b){let c=[ac(a)?db():dF({},a,b),ac(a)?c9({}):dF({},b,a)];return dd(c[0])&&dd(c[1])?dG:dd(c[0])&&dc(c[1])?dH:dc(c[0])&&dd(c[1])?dI:"disjoint"}function dK(a){return br(a.reduce((a,b)=>{var c;let d;return aa(b)?[...a,b]:W(b)?a:U(d=bp(b))?[d]:(c=d,!1!==a.some(a=>{let b=dJ(c,a);return b===dH||b===dG}))?a:[...a.filter(a=>dJ(d,a)!==dI),d]},[]))}function dL(a,b){return b.reduce((b,c)=>[...b,...a.reduce((a,b)=>[...a,[...b,c]],[])],[])}function dM(a,b,c,d,e){let f=fe(a,b,e);return!function(a,b,c){if(!(aj(b)||dQ(b)||dd(dF({},b,c))))throw Error(`Argument for parameter ${a} does not satisfy constraint`,{cause:{parameter:a,expect:c,actual:b}})}(c,f,d),i(a,{[c]:f})}function dN(a,b,c,d){var e;let f=fd(a,b,d),g=function a(b,c,d,e){var f;return S(d)?[c,R(d.parameters,d.expression)]:Q(d)?(f=d.$ref,f in b?a(b,f,b[f],e):["(not-resolvable)",V()]):["(not-generic)",V()]}(a,"(anonymous)",c,d),h=g[0],i=g[1];return S(i)?((e=b).callstack.length>0?e.callstack[e.callstack.length-1]:"")===h?dO(P(h),f):function(a,b,c,d,e,f){let g=function(a,b,c){let d=function a(b,c=[]){return F(b)&&"Conditional"===b.action?Q(b.parameters[0])?a(b.parameters[2],a(b.parameters[3],[...c,b.parameters[0].$ref])):a(b.parameters[2],a(b.parameters[3],c)):F(b)&&"Mapped"===b.action&&F(b.parameters[1])&&"KeyOf"===b.parameters[1].action&&Q(b.parameters[1].parameters[0])?[...c,b.parameters[1].parameters[0].$ref]:c}(c),e=function a(b,c,d=[]){return s(b,(b,e)=>s(c,(c,f)=>a(e,f,[...d,[c,b]]),()=>d),()=>d)}(b,a.reduce((a,b)=>[...a,d.includes(b.name)],[]));return F(c)&&"Conditional"===c.action||F(c)&&"Mapped"===c.action?e.reduce((a,b)=>{var c;return!0===b[0]?dL(a,a6(c=b[1])?[...c.anyOf]:[c]):dL(a,[b[1]])},[[]]):[b]}(d,f,e),h=g.reduce((f,g)=>{var h,i,j,k,l;let m,n;return[...f,(h=a,i=b,j=c,k=d,l=e,m=function a(b,c,d,e){return s(d,(d,f)=>{let g,h;return g=fe(b,c,d.extends),h=fe(b,c,d.equals),s(e,(e,h)=>a(dM(b,c,d.name,g,e),c,f,h),()=>a(dM(b,c,d.name,g,h),c,f,[]))},()=>b)}(h,i,k,g),n=fe(m,e9([...i.callstack,j.$ref],i.visited),l),fe(m,e9([],[]),n))]},[]);return 1===h.length?h[0]:bo(h)}(a,b,P(h),i.parameters,i.expression,f):dO(c,f)}function dO(a,b){return z({"~kind":"Call"},{type:"call",target:a,arguments:b},{})}function dP(a,b){return dN({},e9([],[]),a,b)}function dQ(a){return C(a,"Call")}function dR(a,b){var c,d;return aV(b)?(c=a,r(d=b.const)?aT(c(d)):aT(d)):c6(b)?dR(a,bn(b.pattern)):a6(b)?a5(b.anyOf.map(b=>dR(a,b))):b}function dS(a,b={}){return E("Capitalize",[a],b)}function dT(a,b={}){return d2(a,b)}function dU(a,b={}){return E("Lowercase",[a],b)}function dV(a,b={}){return d3(a,b)}function dW(a,b={}){return E("Uncapitalize",[a],b)}function dX(a,b={}){return d4(a,b)}function dY(a,b={}){return E("Uppercase",[a],b)}function dZ(a,b={}){return d5(a,b)}let d$=a=>a[0].toUpperCase()+a.slice(1),d_=a=>a.toLowerCase(),d0=a=>a[0].toLowerCase()+a.slice(1),d1=a=>a.toUpperCase();function d2(a,b){return fa([a])?B(dR(d$,a),{},b):dS(a,b)}function d3(a,b){return fa([a])?B(dR(d_,a),{},b):dU(a,b)}function d4(a,b){return fa([a])?B(dR(d0,a),{},b):dW(a,b)}function d5(a,b){return fa([a])?B(dR(d1,a),{},b):dY(a,b)}function d6(a,b,c,d,e={}){return E("Conditional",[a,b,c,d],e)}function d7(a,b,c,d,e={}){return d8({},e9([],[]),a,b,c,d,e)}function d8(a,b,c,d,e,f,g){let h;return fa([c,d])?B(c8(h=dF(a,c,d))?a5([fe(h.inferred,b,e),fe(a,b,f)]):da(h)?fe(h.inferred,b,e):fe(a,b,f),{},g):d6(c,d,e,f,g)}function d9(a,b={}){return E("ConstructorParameters",[a],b)}function ea(a,b={}){return eb(a,b)}function eb(a,b){let c;return fa([a])?B((c=M(a)?a.parameters:[],bc(fc({},e9([],[]),c))),{},b):d9(a,b)}function ec(a,b,c={}){return E("Exclude",[a,b],c)}function ed(a,b,c={}){return ee(a,b,c)}function ee(a,b,c){return fa([a,b])?B(bj(a,b),{},c):ec(a,b,c)}function ef(a,b,c={}){return E("Extract",[a,b],c)}function eg(a,b,c={}){return eh(a,b,c)}function eh(a,b,c){var d;let e;return fa([a,b])?B(bo((d=a6(e=bp(a))?e.anyOf:[e],d.reduce((a,c)=>[...a,...dd(dF({},c,b))?[c]:[]],[]))),{},c):ef(a,b,c)}function ei(a){return a5(a.reduce((a,b)=>aU(b)?[...a,aT(b)]:a,[]))}function ej(a,b,c={}){return E("Index",[a,b],c)}function ek(a,b,c={}){return ex(a,j(b)?ei(b):b,c)}function el(a){var b;return ae(a)?el(dD(a.$defs,a.$ref)):al(a)?(b=a.if,el(bk(b,a.then,a.else))):aq(a)?a.allOf.reduce((a,b)=>{var c;let d,e,f,g,h,j,k;return c=el(b),d=v(a).filter(a=>!u(c,a)),e=v(c).filter(b=>!u(a,b)),f=v(a).filter(a=>u(c,a)),g=d.reduce((b,c)=>({...b,[c]:a[c]}),{}),h=e.reduce((a,b)=>({...a,[b]:c[b]}),{}),j=f.reduce((b,d)=>({...b,[d]:bm([a[d],c[d]])}),{}),k=i(g,h),i(k,j)},{}):a6(a)?s(a.anyOf,(a,b)=>(function a(b,c){return s(b,(b,d)=>{var e;return a(d,(e=el(b),v(c).filter(a=>a in e).reduce((a,b)=>({...a,[b]:bo([c[b],e[b]])}),{})))},()=>c)})(b,el(a)),()=>au()):bd(a)?el(_(bh(bc(a.items).items))):aa(a)?a.properties:{}}let em=RegExp("^(?:0|[1-9][0-9]*)$");function en(a){let b=`${a}`;return em.test(b)?parseInt(b):a}function eo(a){return a.map(a=>ep(a))}function ep(a){return aq(a)?ap(eo(a.allOf)):a6(a)?a5(eo(a.anyOf)):aV(a)?aT(en(a.const)):a}function eq(a){var b,c;return ae(a)?eq(dD(a.$defs,a.$ref)):al(a)?(b=a.if,eq(bk(b,a.then,a.else))):ao(a)?eq(bl(a.enum)):aq(a)?eq(bm(a.allOf)):aV(a)?(c=a.const,[`${c}`]):c6(a)?eq(bn(a.pattern)):a6(a)?a.anyOf.reduce((a,b)=>[...a,...eq(b)],[]):[]}function er(a,b){return b.map(b=>es(a,b))}function es(a,b){return J(b)?I(es(a,b.items)):M(b)?L(er(a,b.parameters),es(a,b.instanceType)):O(b)?N(er(a,b.parameters),es(a,b.returnType)):bd(b)?bc(er(a,b.items)):a6(b)?a5(er(a,b.anyOf)):aq(b)?ap(er(a,b.allOf)):bG(b)?_(a):b}function et(a,b){return b.reduce((b,c)=>{var d,e;let f;return[...b,(d=a,f=(e=c)in d?d[e]:V(),es(d,f))]},[])}let eu=new RegExp(bt);function ev(a){return a.map(a=>ew(a))}function ew(a){return aq(a)?ap(ev(a.allOf)):a6(a)?a5(ev(a.anyOf)):aV(a)?aT(en(a.const)):a}function ex(a,b,c){var d,e,f,g,h,i;let j;return fa([a,b])?B((d=ae(f=a)||al(f)||aq(f)||a6(f)?_(el(f)):f,J(d)?(g=d.items,dd(dF({},ep(h=b),aZ()))?g:aV(h)&&"length"===h.const?aZ():V()):aa(d)?(e=d.properties,a$(b)?(j=v(i=e).filter(a=>eu.test(a)),bo(et(i,j))):bo(et(e,eq(b)))):bd(d)?function(a,b){let c;return aV(b)&&"length"===b.const?aT(a.length):a$(b)||aR(b)?bq(a):bq((c=ew(b),a.reduceRight((a,b,d)=>dd(dF({},aT(d),c))?[b,...a]:a,[])))}(d.items,b):V()),{},c):ej(a,b,c)}function ey(a,b={}){return E("InstanceType",[a],b)}function ez(a,b={}){return eA(a,b)}function eA(a,b){return fa([a])?B(M(a)?a.instanceType:V(),{},b):ey(a,b)}function eB(a,b={}){return E("KeyOf",[a],b)}function eC(a,b={}){return eD(a,b)}function eD(a,b){var c,d;return fa([a])?B(U(d=ae(c=a)||al(c)||aq(c)||a6(c)?_(el(c)):c)?a5([aZ(),a3(),a_()]):J(d)?(d.items,aZ()):aa(d)?bq(v(d.properties).reduce((a,b)=>aU(b)?[...a,aT(en(b))]:au(),[])):bC(d)?bA(d):bd(d)?bq(d.items.map((a,b)=>aT(b))):V(),{},b):eB(a,b)}function eE(a,b,c,d,e={}){return E("Mapped",[a,b,c,d],e)}function eF(a,b,c,d,e={}){return eG({},e9([],[]),a,b,c,d,e)}function eG(a,b,c,d,e,f,g){return fa([d])?B(function(a,b,c,d,e,f){let g=function a(b){var c;return ao(b)?a(bl(b.enum)):aV(b)?o(c=b.const)?[aT(`${c}`)]:[aT(c)]:c6(b)?a(bn(b.pattern)):a6(b)?b.anyOf.reduce((b,c)=>[...b,...a(c)],[]):[b]}(d);return bm(g.reduce((d,g)=>{var h;let j,k,l;return[...d,(k=c6(h=fe(j=i(a,{[c.name]:g}),b,e))?bn(h.pattern):h,l=fe(j,b,f),aV(k)&&o(k.const)||aV(k)&&r(k.const)?{[k.const]:l}:{})]},[]).reduce((a,b)=>[...a,_(b)],[]))}(a,b,c,d,e,f),{},g):eE(c,d,e,f,g)}function eH(a,b,c,d){let e,f,g,h,j;return e=function(a){let b=v(a);return b.reduce((b,c)=>dy([c],a,a[c])?[...b,c]:b,[])}(c),f=i(a,c),g=v(c).filter(a=>e.includes(a)).reduce((a,b)=>({...a,[b]:function(a,b,c){let d=dA(a,c,[b]);return ad(v(a).filter(a=>d.includes(a)).reduce((b,c)=>{var d,e;let f=a[c],g=dv(f)?(d=f.parameters[0],e=f.parameters[1],bm([...fd(a,e9([],[]),d),_(fb({},e9([],[]),e))])):f;return{...b,[c]:g}},{}),b)}(f,b,c[b])}),{}),h=i(a,c),j=v(c).filter(a=>!e.includes(a)).reduce((a,b)=>({...a,[b]:fe(h,e9([],[]),c[b])}),{}),B({...g,...j},{},d)}function eI(a,b={}){return E("NonNullable",[a],b)}function eJ(a,b={}){return eK(a,b)}function eK(a,b){return fa([a])?B(ee(a,a5([aW(),bH()]),{}),{},b):eI(a,b)}function eL(a,b,c={}){return E("Omit",[a,b],c)}function eM(a,b,c={}){return eO(a,j(b)?ei(b):b,c)}function eN(a){let b=_(el(a));return aa(b)?b.properties:au()}function eO(a,b,c){return fa([a,b])?B(function(a,b){let c=eN(a),d=eq(b);return _(v(c).reduce((a,b)=>d.includes(b)?a:{...a,[b]:c[b]},{}))}(a,b),{},c):eL(a,b,c)}function eP(a,b={}){return E("Parameters",[a],b)}function eQ(a,b={}){return eR(a,b)}function eR(a,b){let c;return fa([a])?B((c=O(a)?a.parameters:[],bc(fc({},e9([],[]),c))),{},b):eP(a,b)}function eS(a,b={}){return E("Partial",[a],b)}function eT(a,b={}){return eU(a,b)}function eU(a,b){return fa([a])?B(function a(b){var c,d,e,f;let g;return ae(b)?(g=a(dD(c=b.$defs,d=b.$ref)),ad(i(c,{[d]:g}),d)):al(b)?(e=b.if,a(bk(e,b.then,b.else))):aq(b)?a(bm(b.allOf)):a6(b)?a5(b.anyOf.map(b=>a(b))):aa(b)?_(v(f=b.properties).reduce((a,b)=>({...a,[b]:Y(f[b])}),{})):_({})}(a),{},b):eS(a,b)}function eV(a,b,c={}){return E("Pick",[a,b],c)}function eW(a,b,c={}){return eX(a,j(b)?ei(b):b,c)}function eX(a,b,c){return fa([a,b])?B(function(a,b){let c=eN(a),d=eq(b);return _(v(c).reduce((a,b)=>d.includes(b)?i(a,{[b]:c[b]}):a,{}))}(a,b),{},c):eV(a,b,c)}function eY(a,b={}){return E("ReadonlyObject",[a],b)}function eZ(a,b={}){return e_(a,b)}let e$=eZ;function e_(a,b){return fa([a])?B(function a(b){var c,d,e,f;let g;return J(b)?fh(I(b.items)):ae(b)?(g=a(dD(c=b.$defs,d=b.$ref)),ad(i(c,{[d]:g}),d)):al(b)?(e=b.if,a(bk(e,b.then,b.else))):aq(b)?a(bm(b.allOf)):aa(b)?_(v(f=b.properties).reduce((a,b)=>({...a,[b]:aE(f[b])}),{})):bd(b)?fh(bc(b.items)):a6(b)?a5(b.anyOf.map(b=>a(b))):b}(a),{},b):eY(a)}function e0(a,b={}){return E("Required",[a],b)}function e1(a,b={}){return e2(a,b)}function e2(a,b){return fa([a])?B(function a(b){var c,d,e,f;let g;return ae(b)?(g=a(dD(c=b.$defs,d=b.$ref)),ad(i(c,{[d]:g}),d)):al(b)?(e=b.if,a(bk(e,b.then,b.else))):aq(b)?a(bm(b.allOf)):a6(b)?a5(b.anyOf.map(b=>a(b))):aa(b)?_(v(f=b.properties).reduce((a,b)=>({...a,[b]:bg(f[b])}),{})):_({})}(a),{},b):e0(a,b)}function e3(a,b={}){return E("ReturnType",[a],b)}function e4(a,b={}){return e5(a,b)}function e5(a,b){return fa([a])?B(O(a)?a.returnType:V(),{},b):e3(a,b)}function e6(a,b){return E("With",[a,b],{})}function e7(a,b){return e8(a,b)}function e8(a,b){return fa([a])?B(a,{},b):e6(a,b)}function e9(a,b){return{callstack:a,visited:b}}function fa(a){return s(a,(a,b)=>!Q(a)&&fa(b),()=>!0)}function fb(a,b,c){return v(c).reduce((d,e)=>({...d,[e]:fe(a,b,c[e])}),{})}function fc(a,b,c){return function a(b){return b.reduce((b,c)=>[...b,...bE(c)?bd(c.items)?a(c.items.items):aj(c.items)||Q(c.items)?[c]:[V()]:[c]],[])}(fd(a,b,c))}function fd(a,b,c){return c.map(c=>fe(a,b,c))}function fe(a,b,c){return F(c)?function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,C,D,F,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,_,aa,ab,ac,ad;let ae,af,ag;return"AddImmutable"===c?(aa=a,ab=b,ac=d[0],ad=e,fg(fe(aa,ab,ac),ad)):"RemoveImmutable"===c?(f=d[0],g=fe(a,b,f),B(A(g,["~immutable"]),{},e)):"AddReadonly"===c?(h=d[0],G(fe(a,b,h),e)):"RemoveReadonly"===c?(i=d[0],be(fe(a,b,i),e)):"AddOptional"===c?(j=d[0],H(fe(a,b,j),e)):"RemoveOptional"===c?(k=d[0],bf(fe(a,b,k),e)):"Capitalize"===c?(l=d[0],d2(fe(a,b,l),e)):"Conditional"===c?(m=d[0],n=d[1],o=d[2],p=d[3],ae=fe(a,b,m),af=fe(a,b,n),d8(a,b,ae,af,o,p,e)):"ConstructorParameters"===c?(q=d[0],eb(fe(a,b,q),e)):"Evaluate"===c?(r=d[0],s=fe(a,b,r),B(bp(s),{},e)):"Exclude"===c?(t=d[0],u=d[1],ee(fe(a,b,t),fe(a,b,u),e)):"Extract"===c?(v=d[0],w=d[1],eh(fe(a,b,v),fe(a,b,w),e)):"Index"===c?(x=d[0],y=d[1],ex(fe(a,b,x),fe(a,b,y),e)):"InstanceType"===c?function(a,b,c,d={}){return eA(fe(a,b,c),d)}(a,b,d[0],e):"Interface"===c?(z=d[0],C=d[1],dt(fd(a,b,z),fb(a,b,C),e)):"KeyOf"===c?(D=d[0],eD(fe(a,b,D),e)):"Lowercase"===c?(F=d[0],d3(fe(a,b,F),e)):"Mapped"===c?(I=d[0],J=d[1],K=d[2],L=d[3],ag=fe(a,b,J),eG(a,b,I,ag,K,L,e)):"Module"===c?eH(a,b,d[0],e):"NonNullable"===c?(M=d[0],eK(fe(a,b,M),e)):"Pick"===c?(N=d[0],O=d[1],eX(fe(a,b,N),fe(a,b,O),e)):"Parameters"===c?(P=d[0],eR(fe(a,b,P),e)):"Partial"===c?(Q=d[0],eU(fe(a,b,Q),e)):"Omit"===c?(R=d[0],S=d[1],eO(fe(a,b,R),fe(a,b,S),e)):"ReadonlyObject"===c?(T=d[0],e_(fe(a,b,T),e)):"Record"===c?(U=d[0],V=d[1],bs(fe(a,b,U),fe(a,b,V),e)):"Required"===c?(W=d[0],e2(fe(a,b,W),e)):"ReturnType"===c?function(a,b,c,d={}){return e5(fe(a,b,c),d)}(a,b,d[0],e):"TemplateLiteral"===c?(X=d[0],c3(fd(a,b,X),e)):"Uncapitalize"===c?(Y=d[0],d4(fe(a,b,Y),e)):"Uppercase"===c?(Z=d[0],d5(fe(a,b,Z),e)):"With"===c?($=d[0],_=d[1],e8(fe(a,b,$),_)):E(c,d,e)}(a,b,c.action,c.parameters,c.options):function(a,b,c){var d;let e,f,g=Q(c)?(d=c.$ref,b.visited.includes(d)?c:d in a?fe(a,e9(b.callstack,[...b.visited,d]),a[d]):c):J(c)?I(fe(a,b,c.items),K(c)):dQ(c)?dN(a,b,c.target,c.arguments):M(c)?L(fd(a,b,c.parameters),fe(a,b,c.instanceType),A(c,["~kind","type","parameters","instanceType"])):O(c)?N(fd(a,b,c.parameters),fe(a,b,c.returnType),A(c,["~kind","type","parameters","returnType"])):al(c)?ak(fe(a,b,c.if),fe(a,b,c.then),fe(a,b,c.else),A(c,["~kind","if","then","else"])):aq(c)?ap(fd(a,b,c.allOf),A(c,["~kind","allOf"])):aa(c)?_(fb(a,b,c.properties),A(c,["~kind","type","properties","required"])):bC(c)?bb(bz(c),fe(a,b,bB(c))):bE(c)?bD(fe(a,b,c.items)):bd(c)?bc(fc(a,b,c.items),A(c,["~kind","type","items","minItems","additionalItems"])):a6(c)?a5(fd(a,b,c.anyOf),A(c,["~kind","anyOf"])):c;return e=$(c)?H(g,{}):g,f=aG(c)?G(e,{}):e,aC(c)?fg(f,{}):f}(a,b,c)}function ff(a,b){return fe(a,e9([],[]),b)}function fg(a,b){return B(B(a,{"~immutable":!0},{}),{},b)}function fh(a,b={}){return fg(a,b)}function fi(a,b={}){return B(bp(a),{},b)}function fj(a,b={}){return eH({},e9([],[]),a,b)}function fk(...a){let b,[c,d,e]=ah(a,{2:(a,b)=>r(a)?[{},a,b]:[a,b,{}],3:(a,b,c)=>[a,b,c],1:a=>[{},a,{}]}),f=cf(cf(cf(cf(c1(b=d),([a,b])=>cf(cf(cf(c0(b),([a,b])=>cf(cf(cf(c1(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bQ(bM(a)),b]),([b,c])=>[[a,b],c])),([a,b])=>[function(a,b={}){return E("Module",[a],b)}(i(a[0],a[1][0])),b]),([a,b])=>[a,b],()=>cf(cf(cf(ci(b),([a,b])=>cf(b6("=",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[R(a[0],a[2]),b]),([a,b])=>[a,b],()=>cf(cy(b),([a,b])=>[a,b],()=>[]))),([a,b])=>[a,b]);return B(j(f)&&2===f.length?fe(c,e9([],[]),f[0]):V(),{},e)}},55950:(a,b,c)=>{"use strict";c.d(b,{V:()=>d});class d{enqueue(a,b,c,d,e){let f,g=this.parents.get(a)??{limit:1,active:0,items:[]};g.limit=Math.max(1,Math.floor(b)||1);let h=new Promise((a,b)=>{f={run:c,onState:d,onCancel:e,resolve:a,reject:b,state:"queued",cancelled:!1}});return g.items.push(f),this.parents.set(a,g),d("queued"),this.pump(a,g),{promise:h,cancel:()=>"queued"===f.state&&!f.cancelled&&(f.cancelled=!0,Promise.resolve(f.onCancel?.()).then(()=>f.resolve(void 0),a=>f.reject(a)),this.pump(a,g),!0)}}pump(a,b){for(;b.active<b.limit&&b.items.length>0;){let c=b.items.shift();c.cancelled||(c.state="running",c.onState("running"),b.active+=1,c.run().then(c.resolve,c.reject).finally(()=>{b.active-=1,this.pump(a,b),0===b.active&&0===b.items.length&&this.parents.delete(a)}))}}constructor(){this.parents=new Map}}},57856:(a,b,c)=>{"use strict";c.d(b,{TQ:()=>e,p1:()=>d});let d=92;function e(a,b=d,c=40){return Object.freeze({terminal:Object.freeze({columns:b,rows:c,kittyProtocolActive:!1}),requestRender:a})}},60542:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{startTaskScheduler:()=>G});var e=c(29021),f=c(55511),g=c(75384),h=c(47128),i=c(12144),j=c(69453),k=c(65562),l=c(14916),m=c(85158),n=c(48817),o=c(32105),p=a([h,i,j,k,o]);[h,i,j,k,o]=p.then?(await p)():p;let K=new Map,L=new Map;function q(a){if(a.cwd)return a.cwd;let b=(0,g.v$)(a.boardId);return b&&(0,e.existsSync)(b.projectKey)?b.projectKey:null}async function r(a){if(a.sessionId)try{let b=await (0,j.resolveSessionPath)(a.sessionId);if(b)return{...await (0,i.OF)(a.sessionId,b,void 0),created:!1}}catch{}let b=q(a);return b?{...await (0,i.OF)((0,f.randomUUID)(),"",b,{toolNames:l.C1}),created:!0}:null}async function s(){let a=new Set((0,i.HG)()),b=0;for(let c of(0,n.O7)(["review"]))c.sessionId&&a.has(c.sessionId)&&((0,n.w0)(c.id,{execStatus:"running"}),console.log(`[task-scheduler] #${c.number} ${c.name} 自愈:会话仍在跑 → 拉回 running`),b+=1);return b}async function t(a){let b=(0,f.randomUUID)();if(!(0,n.Im)(a.id,b))return console.log(`[task-scheduler] #${a.number} ${a.name} 派发锁被占用,跳过`),!1;let c=null;try{if(!(c=await r(a)))return console.warn(`[task-scheduler] #${a.number} ${a.name} 无可用 cwd,跳过派发`),(0,n.$j)(a.id,b),!1;let d=c;await d.session.send({type:"set_session_name",name:`#${a.number} ${a.name}`});let e=(0,g.v$)(a.boardId);if(e?.taskId&&(await (0,k.mE)(d.realSessionId,e.taskId)||console.warn(`[task-scheduler] #${a.number} ${a.name} 派发的会话未能归属任务 task=${e.taskId} session=${d.realSessionId}`)),d.session.isRunning())return(0,n.w0)(a.id,{sessionId:d.realSessionId,execStatus:"running"}),u(a.boardId),v(a,d.session),(0,n.$j)(a.id,b),console.log(`[task-scheduler] #${a.number} ${a.name} 会话忙(复用中),标 running 不重发`),!0;return await d.session.send({type:"prompt",message:function(a){let b=[`【任务卡 #${a.number}】${a.name}`];if(a.description.trim()&&b.push("",a.description.trim()),a.attachments.length>0)for(let c of(b.push("","附件:"),a.attachments))b.push(`- ${c}`);return b.join("\n")}(a)}),(0,n.w0)(a.id,{sessionId:d.realSessionId,execStatus:"running"}),u(a.boardId),v(a,d.session),(0,n.$j)(a.id,b),console.log(`[task-scheduler] 派发 #${a.number} ${a.name} → session ${d.realSessionId.slice(0,8)}`),!0}catch(d){if(c?.created)try{c.session.destroy()}catch{}return(0,n.$j)(a.id,b),console.error(`[task-scheduler] 派发 #${a.number} ${a.name} 失败:`,d instanceof Error?d.message:d),!1}}function u(a){(0,h.dA)(a).catch(b=>console.warn(`[task-scheduler] reconcile ${a} 异常:`,b?.message??b))}function v(a,b){if("function"!=typeof b.onEvent)return;let c=b.onEvent(b=>{if("agent_end"!==b.type)return;c();let d=(0,n.XJ)(a.id);d&&"running"===d.execStatus&&((0,n.w0)(a.id,{execStatus:"review"}),console.log(`[task-scheduler] #${a.number} ${a.name} 执行会话结束(agent_end) → review(待审核)`))})}async function w(){let a=new Set((0,i.HG)()),b=Date.now(),c=0;for(let d of(0,n.BH)()){if(!d.sessionId||a.has(d.sessionId))continue;let e=await (0,o.Wz)(d.sessionId);e&&0!==e.lastActivityMs&&(b-e.lastActivityMs<5e3||((0,n.w0)(d.id,{execStatus:"review"}),console.log(`[task-scheduler] #${d.number} ${d.name} 执行会话已结束 → review(待审核)`),c+=1))}return c}async function x(){let a=0;for(let b of(0,n.O7)(["not_started","running","review","waiting_reply"])){if(!b.sessionId)continue;let c=(0,i.A4)(b.sessionId);c&&(c.isRunning()?"running"!==b.execStatus&&((0,n.w0)(b.id,{execStatus:"running"}),a+=1):c.hasPendingUiRequest()&&"waiting_reply"!==b.execStatus&&((0,n.w0)(b.id,{execStatus:"waiting_reply"}),a+=1))}return a}async function y(){await x(),await s(),await w(),await D(),await z(),await E();let a=0,b=(0,n.CU)(),c=Math.max(0,1-b);if(c<=0)return H({type:"skipped_gate",at:Date.now()}),0;for(let b of(0,n.uZ)().slice(0,c)){if((0,n.CU)()>=1)break;await J({kind:"dispatch",cardNumber:b.number,cardName:b.name,at:Date.now()},()=>t(b))&&(a+=1,H({type:"dispatch",cardNumber:b.number,cardName:b.name,at:Date.now()}))}return a}async function z(){let a=0;for(let b of(0,n.Kg)()){let c=(0,n.XJ)(b.cardId);if(c&&"waiting_reply"===c.execStatus&&c.sessionId){if((0,n.CU)()>=1)break;await J({kind:"resume",cardNumber:c.number,cardName:c.name,at:Date.now()},()=>A(c,b))&&(a+=1,H({type:"resume",cardNumber:c.number,cardName:c.name,at:Date.now()}))}}return a}async function A(a,b){try{let c=await (0,j.resolveSessionPath)(a.sessionId);if(!c)return!1;let{session:d}=await (0,i.OF)(a.sessionId,c,void 0);return await d.send({type:"prompt",message:`【用户回答了你的提问】
29
29
  ${b.answer}
30
30
 
31
31
  请据此继续完成任务。`}),(0,n.w0)(a.id,{execStatus:"running"}),console.log(`[task-scheduler] 回复续会话 #${a.number} ${a.name}`),!0}catch(b){return console.error(`[task-scheduler] 回复续会话失败 #${a.number}:`,b instanceof Error?b.message:b),!1}}function B(a){let b=a.retryCount+1;b<a.maxRetries?((0,n.w0)(a.id,{execStatus:"not_started",retryCount:b}),console.log(`[task-scheduler] #${a.number} 失败(${b}/${a.maxRetries})→ 待重试`)):((0,n.w0)(a.id,{execStatus:"failed",retryCount:b}),console.log(`[task-scheduler] #${a.number} 失败(${b}/${a.maxRetries})→ failed`))}function C(a,b){(0,n.w0)(a.id,{execStatus:"waiting_reply"}),a.sessionId&&(0,n.hG)(a.id,a.sessionId,`AI 需要你回答后继续任务。
32
- ${b.slice(0,500)}`),console.log(`[task-scheduler] #${a.number} → waiting_reply(提问入队)`)}async function D(){let a=Date.now(),b=0;for(let c of(0,n.O7)(["review"])){let d=c.sessionId?await (0,o.Wz)(c.sessionId):null;if(d?.failure){B(c),b+=1;continue}if(!c.sessionId||!d){(0,n.w0)(c.id,{execStatus:"done"}),console.log(`[task-scheduler] #${c.number} 无执行内容 → done`),b+=1;continue}let e=L.get(c.id)??0;if(a-e<3e5)continue;L.set(c.id,a);let f=q(c);if(!f)continue;let g=await J({kind:"review",cardNumber:c.number,cardName:c.name,at:Date.now()},()=>(0,o.s4)({cwd:f,cardNumber:c.number,cardName:c.name,taskDescription:c.description,recentMessages:d.recentText}));g?.verdict==="done"?((0,n.w0)(c.id,{execStatus:"done"}),console.log(`[task-scheduler] #${c.number} 审核通过 → done(${g.reason})`),b+=1):g?.verdict==="failed"?(B(c),b+=1):g?.verdict==="waiting_reply"?(C(c,d.recentText),b+=1):console.log(`[task-scheduler] #${c.number} 审核未决:${g?g.reason:"AI 判定失败"}(保持 review)`)}return b}async function E(){let a=Date.now(),b=0;for(let c of(0,n.O7)(["running"])){if(!c.sessionId)continue;let d=K.get(c.id)??0;if(a-d<6e5)continue;let e=await (0,o.Wz)(c.sessionId);if(!e||0===e.lastActivityMs||!e.lastIsCommand||a-e.lastCommandAtMs<3e5)continue;K.set(c.id,a);let f=q(c);if(!f)continue;let g=await J({kind:"blockcheck",cardNumber:c.number,cardName:c.name,at:Date.now()},()=>(0,o.bJ)({cwd:f,cardNumber:c.number,cardName:c.name,taskDescription:c.description,recentMessages:e.recentText}));if(g)switch(g.kind){case"sync_server":case"infinite_loop":await F(c),b+=1;break;case"rate_limit":console.log(`[task-scheduler] #${c.number} 限流退避,继续观察`);break;case"asking":C(c,e.recentText),b+=1;break;case"error":(0,n.w0)(c.id,{execStatus:"review"}),b+=1}}return b}async function F(a){try{if(a.sessionId){let b=await (0,j.os)(a.sessionId);if(b){let{session:c}=await (0,i.OF)(a.sessionId,b,void 0);await c.send({type:"abort"}),await c.send({type:"prompt",message:"检测到任务卡执行异常(可能是同步开启服务或死循环)。\n请改用 tmux 后台启动服务:tmux new-session -d '命令',不要在前台阻塞等待日志;如为死循环请重新规划步骤后继续。"}),v(a,c)}}(0,n.w0)(a.id,{execStatus:"running"}),console.log(`[task-scheduler] #${a.number} 阻塞处置:abort+tmux 引导,继续运行`)}catch(b){console.error(`[task-scheduler] 阻塞处置失败 #${a.number}:`,b instanceof Error?b.message:b)}}function G(){if(globalThis.__piTaskScheduler)return;let a=!1,b=setInterval(()=>{!(0,m.oT)()||a||(a=!0,y().catch(a=>{console.error("[task-scheduler] tick error:",a instanceof Error?a.message:a)}).finally(()=>{a=!1}))},1e4);b.unref?.();let c=setInterval(()=>{try{(0,m.U4)((0,m.zZ)())}catch(a){console.error("[task-scheduler] leader heartbeat error:",a instanceof Error?a.message:a)}},m.dp/3);c.unref?.();let d={timer:b,heartbeatTimer:c,startedAt:Date.now(),lastAction:{type:"none",at:0},activity:null};globalThis.__piTaskScheduler=d,console.log("[pi-web] task scheduler started (interval 10000ms, max 1)")}function H(a){globalThis.__piTaskScheduler&&(globalThis.__piTaskScheduler.lastAction=a)}function I(a){globalThis.__piTaskScheduler&&(globalThis.__piTaskScheduler.activity=a)}async function J(a,b){I(a);try{return await b()}finally{I(null)}}d()}catch(a){d(a)}})},61577:(a,b,c)=>{"use strict";c.d(b,{o:()=>e});let d=new Set(["off","minimal","low","medium","high","xhigh","max"]);async function e(a,b,c){if(!b.model&&!b.thinkingLevel)return{modelDefaultChanged:!1};let e=!1;if(b.model&&c.model&&b.model.provider===c.model.provider&&b.model.modelId===c.model.modelId&&(a.setDefaultModelAndProvider(c.model.provider,c.model.modelId),e=!0),b.thinkingLevel&&(c.supportsThinking||"off"!==c.thinkingLevel)){var f;let b=(f=c.thinkingLevel,d.has(f))?c.thinkingLevel:void 0;a.setDefaultThinkingLevel(b)}return await a.flush(),{modelDefaultChanged:e}}},62404:(a,b,c)=>{"use strict";let d=c(33873),e=c(93329),f=c(81463),g=c(75856),h=c(16176),i={};function j(a,b){return b.lockfilePath||`${a}.lock`}function k(a,b,c){if(!b.realpath)return c(null,d.resolve(a));b.fs.realpath(a,c)}function l(a,b){return a.mtime.getTime()<Date.now()-b.stale}function m(a,b,c){b.fs.rmdir(j(a,b),a=>{if(a&&"ENOENT"!==a.code)return c(a);c()})}function n(a,b,c){b.released=!0,b.updateTimeout&&clearTimeout(b.updateTimeout),i[a]===b&&delete i[a],b.options.onCompromised(c)}function o(a,b,c){k(a,b={fs:e,realpath:!0,...b},(a,d)=>{if(a)return c(a);let e=i[d];if(!e)return c(Object.assign(Error("Lock is not acquired/owned by you"),{code:"ENOTACQUIRED"}));e.updateTimeout&&clearTimeout(e.updateTimeout),e.released=!0,delete i[d],m(d,b,c)})}g(()=>{for(let a in i){let b=i[a].options;try{b.fs.rmdirSync(j(a,b))}catch(a){}}}),a.exports.lock=function(a,b,c){(b={stale:1e4,update:null,realpath:!0,retries:0,fs:e,onCompromised:a=>{throw a},...b}).retries=b.retries||0,b.retries="number"==typeof b.retries?{retries:b.retries}:b.retries,b.stale=Math.max(b.stale||0,2e3),b.update=null==b.update?b.stale/2:b.update||0,b.update=Math.max(Math.min(b.update,b.stale/2),1e3),k(a,b,(a,d)=>{if(a)return c(a);let e=f.operation(b.retries);e.attempt(()=>{!function a(b,c,d){let e=j(b,c);c.fs.mkdir(e,f=>f?"EEXIST"!==f.code?d(f):c.stale<=0?d(Object.assign(Error("Lock file is already being held"),{code:"ELOCKED",file:b})):void c.fs.stat(e,(e,f)=>e?"ENOENT"===e.code?a(b,{...c,stale:0},d):d(e):l(f,c)?void m(b,c,e=>{if(e)return d(e);a(b,{...c,stale:0},d)}):d(Object.assign(Error("Lock file is already being held"),{code:"ELOCKED",file:b}))):h.probe(e,c.fs,(a,b,f)=>{if(a)return c.fs.rmdir(e,()=>{}),d(a);d(null,b,f)}))}(d,b,(a,f,g)=>{if(e.retry(a))return;if(a)return c(e.mainError());let k=i[d]={lockfilePath:j(d,b),mtime:f,mtimePrecision:g,options:b,lastUpdate:Date.now()};!function a(b,c){let d=i[b];!d.updateTimeout&&(d.updateDelay=d.updateDelay||c.update,d.updateTimeout=setTimeout(()=>{d.updateTimeout=null,c.fs.stat(d.lockfilePath,(e,f)=>{let g=d.lastUpdate+c.stale<Date.now();if(e)return"ENOENT"===e.code||g?n(b,d,Object.assign(e,{code:"ECOMPROMISED"})):(d.updateDelay=1e3,a(b,c));if(d.mtime.getTime()!==f.mtime.getTime())return n(b,d,Object.assign(Error("Unable to update lock within the stale threshold"),{code:"ECOMPROMISED"}));let i=h.getMtime(d.mtimePrecision);c.fs.utimes(d.lockfilePath,i,i,e=>{let f=d.lastUpdate+c.stale<Date.now();if(!d.released){if(e)return"ENOENT"===e.code||f?n(b,d,Object.assign(e,{code:"ECOMPROMISED"})):(d.updateDelay=1e3,a(b,c));d.mtime=i,d.lastUpdate=Date.now(),d.updateDelay=null,a(b,c)}})})},d.updateDelay),d.updateTimeout.unref&&d.updateTimeout.unref())}(d,b),c(null,a=>{if(k.released)return a&&a(Object.assign(Error("Lock is already released"),{code:"ERELEASED"}));o(d,{...b,realpath:!1},a)})})})})},a.exports.unlock=o,a.exports.check=function(a,b,c){(b={stale:1e4,realpath:!0,fs:e,...b}).stale=Math.max(b.stale||0,2e3),k(a,b,(a,d)=>{if(a)return c(a);b.fs.stat(j(d,b),(a,d)=>a?"ENOENT"===a.code?c(null,!1):c(a):c(null,!l(d,b)))})},a.exports.getLocks=function(){return i}},67313:(a,b,c)=>{var d=c(92759);b.operation=function(a){return new d(b.timeouts(a),{forever:a&&a.forever,unref:a&&a.unref,maxRetryTime:a&&a.maxRetryTime})},b.timeouts=function(a){if(a instanceof Array)return[].concat(a);var b={retries:10,factor:2,minTimeout:1e3,maxTimeout:1/0,randomize:!1};for(var c in a)b[c]=a[c];if(b.minTimeout>b.maxTimeout)throw Error("minTimeout is greater than maxTimeout");for(var d=[],e=0;e<b.retries;e++)d.push(this.createTimeout(e,b));return a&&a.forever&&!d.length&&d.push(this.createTimeout(e,b)),d.sort(function(a,b){return a-b}),d},b.createTimeout=function(a,b){var c=Math.round((b.randomize?Math.random()+1:1)*b.minTimeout*Math.pow(b.factor,a));return Math.min(c,b.maxTimeout)},b.wrap=function(a,c,d){if(c instanceof Array&&(d=c,c=null),!d)for(var e in d=[],a)"function"==typeof a[e]&&d.push(e);for(var f=0;f<d.length;f++){var g=d[f],h=a[g];a[g]=(function(d){var e=b.operation(c),f=Array.prototype.slice.call(arguments,1),g=f.pop();f.push(function(a){e.retry(a)||(a&&(arguments[0]=e.mainError()),g.apply(this,arguments))}),e.attempt(function(){d.apply(a,f)})}).bind(a,h),a[g].options=c}}},70274:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{N:()=>k,hd:()=>j});var e=c(73024),f=c(76760),g=c(75430);c(12969);var h=a([g]);function i(a=(0,g.getAgentDir)()){return(0,f.join)(a,"agents","settings.json")}function j(a=i()){var b,c,d;let f=function(a){if(!(0,e.existsSync)(a))return{};let b=JSON.parse((0,e.readFileSync)(a,"utf8"));if(null===b||"object"!=typeof b||Array.isArray(b))throw Error("Invalid subagent settings: expected an object");return b}(a);return c=!0===f.builtInEnabled,b=f.maxConcurrent,d="number"==typeof b&&Number.isInteger(b)&&b>=1&&b<=32?b:10,Object.defineProperty({builtInEnabled:c},"maxConcurrent",{value:d,enumerable:!1,configurable:!0})}function k(a=i()){try{return j(a).builtInEnabled}catch{return!1}}g=(h.then?(await h)():h)[0],d()}catch(a){d(a)}})},75856:(a,b,c)=>{var d=global.process;let e=function(a){return a&&"object"==typeof a&&"function"==typeof a.removeListener&&"function"==typeof a.emit&&"function"==typeof a.reallyExit&&"function"==typeof a.listeners&&"function"==typeof a.kill&&"number"==typeof a.pid&&"function"==typeof a.on};if(e(d)){var f,g=c(12412),h=c(30223),i=/^win/i.test(d.platform),j=c(94735);"function"!=typeof j&&(j=j.EventEmitter),d.__signal_exit_emitter__?f=d.__signal_exit_emitter__:((f=d.__signal_exit_emitter__=new j).count=0,f.emitted={}),f.infinite||(f.setMaxListeners(1/0),f.infinite=!0),a.exports=function(a,b){if(!e(global.process))return function(){};g.equal(typeof a,"function","a callback must be provided for exit handler"),!1===n&&o();var c="exit";return b&&b.alwaysLast&&(c="afterexit"),f.on(c,a),function(){f.removeListener(c,a),0===f.listeners("exit").length&&0===f.listeners("afterexit").length&&k()}};var k=function(){n&&e(global.process)&&(n=!1,h.forEach(function(a){try{d.removeListener(a,m[a])}catch(a){}}),d.emit=r,d.reallyExit=p,f.count-=1)};a.exports.unload=k;var l=function(a,b,c){f.emitted[a]||(f.emitted[a]=!0,f.emit(a,b,c))},m={};h.forEach(function(a){m[a]=function(){e(global.process)&&d.listeners(a).length===f.count&&(k(),l("exit",null,a),l("afterexit",null,a),i&&"SIGHUP"===a&&(a="SIGINT"),d.kill(d.pid,a))}}),a.exports.signals=function(){return h};var n=!1,o=function(){!n&&e(global.process)&&(n=!0,f.count+=1,h=h.filter(function(a){try{return d.on(a,m[a]),!0}catch(a){return!1}}),d.emit=s,d.reallyExit=q)};a.exports.load=o;var p=d.reallyExit,q=function(a){e(global.process)&&(d.exitCode=a||0,l("exit",d.exitCode,null),l("afterexit",d.exitCode,null),p.call(d,d.exitCode))},r=d.emit,s=function(a,b){if(!("exit"===a&&e(global.process)))return r.apply(this,arguments);void 0!==b&&(d.exitCode=b);var c=r.apply(this,arguments);return l("exit",d.exitCode,null),l("afterexit",d.exitCode,null),c}}else a.exports=function(){return function(){}}},77605:(a,b,c)=>{"use strict";c.d(b,{Ql:()=>i,Y0:()=>e,aO:()=>k,cn:()=>f,mU:()=>l,sT:()=>d,xw:()=>n});let d="pi-todo.state",e="todo",f=["pending","in_progress","completed"];function g(a){return"string"==typeof a&&f.includes(a)}function h(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function i(a){return a.some(a=>"completed"!==a.status)}function j(a,b){let c=a.trim();if(0===c.length)throw Error(`${b} cannot be empty or whitespace-only`);return c}function k(a){if(!h(a)||!Array.isArray(a.todos))return null;let b=[];for(let c of a.todos)h(c)&&"number"==typeof c.id&&Number.isFinite(c.id)&&"string"==typeof c.content&&0!==c.content.length&&g(c.status)&&b.push({id:c.id,content:c.content,status:c.status});let c=b.reduce((a,b)=>Math.max(a,b.id),0);return{todos:b,nextId:"number"==typeof a.nextId&&a.nextId>c?a.nextId:c+1}}function l(a){let b="completed"===a.status?"x":"in_progress"===a.status?"~":" ";return`[${b}] #${a.id}: ${a.content}`}function m(a,b){if(0===b.length)throw Error("update requires at least status or text parameter");let c=new Set;for(let d of b){if(c.has(d.id))throw Error(`duplicate id ${d.id} in updates`);if(c.add(d.id),void 0===d.status&&void 0===d.text)throw Error(`update item for id ${d.id} has neither status nor text`);if(void 0!==d.status&&!g(d.status))throw Error(`status only accepts ${f.join(" / ")}`);if(void 0!==d.text&&j(d.text,`update item id ${d.id}: text`),!a.todos.some(a=>a.id===d.id))throw Error(`Todo #${d.id} not found`)}return{snapshot:{todos:a.todos.map(a=>{let c=b.find(b=>b.id===a.id);return c?{...a,...void 0!==c.status?{status:c.status}:{},...void 0!==c.text?{content:c.text.trim()}:{}}:a}),nextId:a.nextId},resultText:`Updated ${b.length} todo(s)`}}function n(a,b){switch(a.action){case"list":var c;return{action:"list",snapshot:b,resultText:(c=b.todos).length>0?c.map(l).join("\n"):"No todos"};case"add":{if(void 0!==a.text&&void 0!==a.texts)throw Error('add only accepts texts array; do not also pass singular "text"');if(void 0!==a.text)throw Error('add needs texts (array). You passed singular "text" — that field is for update. Correct: {"action":"add","texts":["<your text>"]}');let{snapshot:c,resultText:d}=function(a,b){if(0===b.length)throw Error('add requires texts parameter (non-empty array). Correct: {"action":"add","texts":["..."]}');let c=b.map(a=>j(a,"texts item")),d=a.nextId,e=c.map((a,b)=>({id:d+b,content:a,status:"pending"})),f=d+e.length;return{snapshot:{todos:[...a.todos,...e],nextId:f},resultText:`Added ${e.length} todos (#${d}-#${f-1})`}}(b,a.texts??[]);return{action:"add",snapshot:c,resultText:d}}case"update":{if(void 0!==a.updates&&a.updates.length>0){let{snapshot:c,resultText:d}=m(b,a.updates);return{action:"update",snapshot:c,resultText:d}}if(void 0===a.id)throw Error('update requires id parameter. Correct: {"action":"update","id":1,"status":"in_progress"}');let{snapshot:c,resultText:d}=m(b,[{id:a.id,...void 0!==a.status?{status:a.status}:{},...void 0!==a.text?{text:a.text}:{}}]);return{action:"update",snapshot:c,resultText:d}}case"delete":{if(void 0===a.ids||0===a.ids.length){if(void 0!==a.id)throw Error('delete needs ids (array). You passed singular "id". Correct: {"action":"delete","ids":[1]}');throw Error('delete requires ids parameter (non-empty array). Correct: {"action":"delete","ids":[1]}')}let{snapshot:c,resultText:d}=function(a,b){if(0===b.length)throw Error('delete requires ids parameter (non-empty array). Correct: {"action":"delete","ids":[1]}');for(let c of b)if(!a.todos.some(a=>a.id===c))throw Error(`Todo #${c} not found`);let c=new Set(b);return{snapshot:{todos:a.todos.filter(a=>!c.has(a.id)),nextId:a.nextId},resultText:`Deleted ${b.length} todo(s)`}}(b,a.ids);return{action:"delete",snapshot:c,resultText:d}}default:throw Error(`Unknown action: ${String(a.action)}`)}}},81186:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Ds:()=>j,J1:()=>h,eD:()=>i});var e=c(75430),f=c(76760),g=a([e]);e=(g.then?(await g)():g)[0];let k="pi-web-project-command-environment",l=`<inline:${k}>`;function h(a={}){let{agentBinDir:b=(0,f.join)((0,e.getAgentDir)(),"bin"),baseEnvironment:c=process.env,localOperations:d=(0,e.createLocalBashOperations)({shellPath:a.shellPath}),platform:g=process.platform}=a;return{exec(a,e,f){var h;let i,j,k,l=(h=function(a,b=process.platform){let c={...a};for(let a of Object.keys(c))(function(a,b){let c="win32"===b?a.toUpperCase():a;return"PORT"===c||"NODE_ENV"===c||c.startsWith("NEXT_")})(a,b)&&delete c[a];return c}(f.env??c,g),i="win32"===g?Object.keys(h).find(a=>"PATH"===a.toUpperCase())??"PATH":"PATH",j="win32"===g?";":":",(k=h[i]??"").split(j).filter(Boolean).includes(b)||(h[i]=[b,k].filter(Boolean).join(j)),h);return d.exec(a,e,{...f,env:l})}}}function i(a){return{name:k,hidden:!0,factory:b=>{let c=(0,e.createBashToolDefinition)(a.cwd);b.registerTool({...c,execute:(b,c,d,f,g)=>(0,e.createBashToolDefinition)(a.cwd,{commandPrefix:a.settings.getShellCommandPrefix(),operations:h({shellPath:a.settings.getShellPath()})}).execute(b,c,d,f,g)})}}}function j(a){let b=a.extensions.findIndex(a=>a.path===l);if(b<0)return a;let c=a.extensions.slice(0,b).find(a=>a.tools.has("bash"));return c?{...a,extensions:a.extensions.filter((a,c)=>c!==b),errors:a.errors.filter(a=>a.path!==l||a.error!==`Tool "bash" conflicts with ${c.path}`)}:a}d()}catch(a){d(a)}})},81463:(a,b,c)=>{a.exports=c(67313)},82249:(a,b,c)=>{"use strict";c.d(b,{Hh:()=>ba});var d=Symbol("NOT_RESOLVED"),e=Symbol("MERGE_KEY");function f(a,b){return{tagName:a,nodeKind:"scalar",implicit:b.implicit??!1,matchByTagPrefix:b.matchByTagPrefix??!1,implicitFirstChars:b.implicitFirstChars??null,resolve:b.resolve,identify:b.identify??null,represent:b.represent??(a=>String(a)),representTagName:b.representTagName??null}}function g(a,b){let c=void 0===b.finalize;return{tagName:a,nodeKind:"sequence",implicit:!1,matchByTagPrefix:b.matchByTagPrefix??!1,create:b.create,addItem:b.addItem,finalize:b.finalize??(a=>a),carrierIsResult:c,identify:b.identify??null,represent:b.represent??(a=>a),representTagName:b.representTagName??null}}function h(a,b){let c=void 0===b.finalize;return{tagName:a,nodeKind:"mapping",implicit:!1,matchByTagPrefix:b.matchByTagPrefix??!1,create:b.create,addPair:b.addPair,has:b.has,keys:b.keys,get:b.get,finalize:b.finalize??(a=>a),carrierIsResult:c,identify:b.identify??null,represent:b.represent??(a=>a),representTagName:b.representTagName??null}}var i=f("tag:yaml.org,2002:str",{resolve:a=>a,identify:a=>"string"==typeof a}),j=["","~","null","Null","NULL"],k=f("tag:yaml.org,2002:null",{implicit:!0,implicitFirstChars:["","~","n","N"],resolve:a=>-1!==j.indexOf(a)?null:d,identify:a=>null===a,represent:()=>"null"}),l=f("tag:yaml.org,2002:null",{implicit:!0,implicitFirstChars:["n"],resolve:(a,b)=>"null"===a||b&&""===a?null:d,identify:a=>null===a,represent:()=>"null"}),m=["","~","null","Null","NULL"],n=f("tag:yaml.org,2002:null",{implicit:!0,implicitFirstChars:["","~","n","N"],resolve:a=>-1!==m.indexOf(a)?null:d,identify:a=>null===a,represent:()=>"null"}),o=["true","True","TRUE"],p=["false","False","FALSE"],q=f("tag:yaml.org,2002:bool",{implicit:!0,implicitFirstChars:["t","T","f","F"],resolve:a=>-1!==o.indexOf(a)||-1===p.indexOf(a)&&d,identify:a=>"[object Boolean]"===Object.prototype.toString.call(a),represent:a=>a?"true":"false"}),r=["true"],s=["false"],t=f("tag:yaml.org,2002:bool",{implicit:!0,implicitFirstChars:["t","f"],resolve:a=>-1!==r.indexOf(a)||-1===s.indexOf(a)&&d,identify:a=>"[object Boolean]"===Object.prototype.toString.call(a),represent:a=>a?"true":"false"}),u=["true","True","TRUE","y","Y","yes","Yes","YES","on","On","ON"],v=["false","False","FALSE","n","N","no","No","NO","off","Off","OFF"],w=f("tag:yaml.org,2002:bool",{implicit:!0,implicitFirstChars:["y","Y","n","N","t","T","f","F","o","O"],resolve:a=>-1!==u.indexOf(a)||-1===v.indexOf(a)&&d,identify:a=>"[object Boolean]"===Object.prototype.toString.call(a),represent:a=>a?"true":"false"}),x=RegExp("^(?:0o[0-7]+|0x[0-9a-fA-F]+|[-+]?[0-9]+)$"),y=RegExp("^(?:[-+]?0b[0-1]+|[-+]?0o[0-7]+|[-+]?0x[0-9a-fA-F]+|[-+]?[0-9]+)$"),z=f("tag:yaml.org,2002:int",{implicit:!0,implicitFirstChars:["-","+",..."0123456789"],resolve:function(a,b){let c,e;if(b){if(!y.test(a))return d}else if(!x.test(a))return d;let f=(e=1,(("-"===(c=a)[0]||"+"===c[0])&&("-"===c[0]&&(e=-1),c=c.slice(1)),c.startsWith("0b"))?e*parseInt(c.slice(2),2):c.startsWith("0o")?e*parseInt(c.slice(2),8):c.startsWith("0x")?e*parseInt(c.slice(2),16):e*parseInt(c,10));return Number.isFinite(f)?f:d},identify:a=>Number.isInteger(a)&&!Object.is(a,-0)&&0>a.toString(10).indexOf("e"),represent:a=>a.toString(10)}),A=RegExp("^-?(?:0|[1-9][0-9]*)$"),B=RegExp("^(?:[-+]?0b[0-1]+|[-+]?0o[0-7]+|[-+]?0x[0-9a-fA-F]+|[-+]?[0-9]+)$"),C=f("tag:yaml.org,2002:int",{implicit:!0,implicitFirstChars:["-",..."0123456789"],resolve:function(a,b){let c,e;if(b){if(!B.test(a))return d}else if(!A.test(a))return d;let f=(e=1,(("-"===(c=a)[0]||"+"===c[0])&&("-"===c[0]&&(e=-1),c=c.slice(1)),c.startsWith("0b"))?e*parseInt(c.slice(2),2):c.startsWith("0o")?e*parseInt(c.slice(2),8):c.startsWith("0x")?e*parseInt(c.slice(2),16):e*parseInt(c,10));return Number.isFinite(f)?f:d},identify:a=>Number.isInteger(a)&&!Object.is(a,-0)&&0>a.toString(10).indexOf("e"),represent:a=>a.toString(10)}),D=RegExp("^(?:[-+]?0b[0-1_]+|[-+]?0[0-7_]+|[-+]?0x[0-9a-fA-F_]+|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+|[-+]?(?:0|[1-9][0-9_]*))$"),E=f("tag:yaml.org,2002:int",{implicit:!0,implicitFirstChars:["-","+",..."0123456789"],resolve:function(a){if(!D.test(a))return d;let b=function(a){let b=a.replace(/_/g,""),c=1;if(("-"===b[0]||"+"===b[0])&&("-"===b[0]&&(c=-1),b=b.slice(1)),b.startsWith("0b"))return c*parseInt(b.slice(2),2);if(b.startsWith("0x"))return c*parseInt(b.slice(2),16);if(b.includes(":")){let a=0;for(let c of b.split(":"))a=60*a+Number(c);return c*a}return"0"!==b&&"0"===b[0]?c*parseInt(b,8):c*parseInt(b,10)}(a);return Number.isFinite(b)?b:d},identify:a=>Number.isInteger(a)&&!Object.is(a,-0)&&0>a.toString(10).indexOf("e"),represent:a=>a.toString(10)}),F=RegExp("^(?:[-+]?[0-9]+(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?|[-+]?\\.[0-9]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),G=RegExp("^(?:[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),H=f("tag:yaml.org,2002:float",{implicit:!0,implicitFirstChars:["-","+",".",..."0123456789"],resolve:function(a){if(!F.test(a))return d;let b=a.toLowerCase(),c="-"===b[0]?-1:1;if("+-".includes(b[0])&&(b=b.slice(1)),".inf"===b)return 1===c?1/0:-1/0;if(".nan"===b)return NaN;let e=c*parseFloat(b);return Number.isFinite(e)||G.test(a)?e:d},identify:a=>"number"==typeof a&&(!Number.isInteger(a)||Object.is(a,-0)||a.toString(10).indexOf("e")>=0),represent:function(a){if(isNaN(a))return".nan";if(a===1/0)return".inf";if(a===-1/0)return"-.inf";if(Object.is(a,-0))return"-0.0";let b=a.toString(10);return/^[-+]?[0-9]+e/.test(b)?b.replace("e",".e"):b}}),I=RegExp("^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$"),J=RegExp("^(?:[-+]?[0-9]+(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?|[-+]?\\.[0-9]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),K=f("tag:yaml.org,2002:float",{implicit:!0,implicitFirstChars:["-",..."0123456789"],resolve:function(a,b){if(b){if(!J.test(a))return d;let b=a.toLowerCase(),c="-"===b[0]?-1:1;if("+-".includes(b[0])&&(b=b.slice(1)),".inf"===b)return 1===c?1/0:-1/0;if(".nan"===b)return NaN;let e=c*parseFloat(b);return Number.isFinite(e)?e:d}if(!I.test(a))return d;let c=Number(a);return Number.isFinite(c)?c:d},identify:a=>"number"==typeof a&&(!Number.isInteger(a)||Object.is(a,-0)||a.toString(10).indexOf("e")>=0),represent:function(a){if(isNaN(a))return".nan";if(a===1/0)return".inf";if(a===-1/0)return"-.inf";if(Object.is(a,-0))return"-0.0";let b=a.toString(10);return/^[-+]?[0-9]+e/.test(b)?b.replace("e",".e"):b}}),L=RegExp("^(?:[-+]?(?:(?:[0-9][0-9_]*)?\\.[0-9_]*)(?:[eE][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),M=RegExp("^(?:[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),N=f("tag:yaml.org,2002:float",{implicit:!0,implicitFirstChars:["-","+",".",..."0123456789"],resolve:function(a){if(!L.test(a))return d;let b=a.toLowerCase().replace(/_/g,""),c="-"===b[0]?-1:1;if("+-".includes(b[0])&&(b=b.slice(1)),".inf"===b)return 1===c?1/0:-1/0;if(".nan"===b)return NaN;let e=0;if(b.includes(":")){for(let a of b.split(":"))e=60*e+Number(a);e*=c}else e=c*parseFloat(b);return Number.isFinite(e)||M.test(a)?e:d},identify:a=>"number"==typeof a&&(!Number.isInteger(a)||Object.is(a,-0)||a.toString(10).indexOf("e")>=0),represent:function(a){if(isNaN(a))return".nan";if(a===1/0)return".inf";if(a===-1/0)return"-.inf";if(Object.is(a,-0))return"-0.0";let b=a.toString(10);return/^[-+]?[0-9]+e/.test(b)?b.replace("e",".e"):b}}),O=f("tag:yaml.org,2002:merge",{implicit:!0,implicitFirstChars:["<"],resolve:(a,b)=>"<<"===a||b&&""===a?e:d}),P=/^[A-Za-z0-9+/]*={0,2}$/,Q=f("tag:yaml.org,2002:binary",{resolve:function(a){let b=a.replace(/\s/g,"");if(b.length%4!=0||!P.test(b))return d;let c=atob(b),e=new Uint8Array(c.length);for(let a=0;a<c.length;a++)e[a]=c.charCodeAt(a);return e},identify:a=>"[object Uint8Array]"===Object.prototype.toString.call(a),represent:function(a){let b="";for(let c=0;c<a.length;c++)b+=String.fromCharCode(a[c]);return btoa(b)}}),R=RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),S=RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function T(a,b,c,d=0,e=0,f=0,g=0){let h=new Date(Date.UTC(a,b,c,d,e,f,g));return h.setUTCFullYear(a,b,c),h}var U=f("tag:yaml.org,2002:timestamp",{implicit:!0,implicitFirstChars:[..."0123456789"],resolve:function(a){let b=R.exec(a);if(null===b&&(b=S.exec(a)),null===b)return d;let c=+b[1],e=b[2]-1,f=+b[3];if(!b[4]){let a=T(c,e,f);return a.getUTCFullYear()!==c||a.getUTCMonth()!==e||a.getUTCDate()!==f?d:a}let g=+b[4],h=+b[5],i=+b[6],j=0;if(g>23||h>59||i>59)return d;if(b[7]){let a=b[7].slice(0,3);for(;a.length<3;)a+="0";j=+a}let k=T(c,e,f,g,h,i,j);if(k.getUTCFullYear()!==c||k.getUTCMonth()!==e||k.getUTCDate()!==f)return d;if(b[9]){let a=+b[10],c=+(b[11]||0);if(a>23||c>59)return d;let e=(60*a+c)*6e4;k.setTime(k.getTime()-("-"===b[9]?-e:e))}return k},identify:a=>a instanceof Date,represent:a=>a.toISOString()}),V=g("tag:yaml.org,2002:seq",{create:()=>[],addItem:(a,b)=>{a.push(b)},identify:Array.isArray});function W(a){if(null===a||"object"!=typeof a||Array.isArray(a))return!1;let b=Object.getPrototypeOf(a);return null===b||b===Object.prototype}function X(a,b){let c={};for(let d of b)void 0!==a[d]&&(c[d]=a[d]);return c}var Y=g("tag:yaml.org,2002:omap",{create:()=>({list:[],seen:new Set}),addItem:(a,b)=>{let c;if(b instanceof Map){if(1!==b.size)return"cannot resolve an ordered map item";c=b.keys().next().value}else{if(!W(b))return"cannot resolve an ordered map item";let a=Object.keys(b);if(1!==a.length)return"cannot resolve an ordered map item";c=a[0]}return a.seen.has(c)?"duplicate key in ordered map":(a.seen.add(c),a.list.push(b),"")},finalize:a=>a.list}),Z=g("tag:yaml.org,2002:pairs",{create:()=>[],addItem:(a,b)=>{if(b instanceof Map)return 1!==b.size?"cannot resolve a pairs item":(a.push(b.entries().next().value),"");if("[object Object]"!==Object.prototype.toString.call(b))return"cannot resolve a pairs item";let c=Object.keys(b);return 1!==c.length?"cannot resolve a pairs item":(a.push([c[0],b[c[0]]]),"")}}),$=h("tag:yaml.org,2002:map",{create:()=>({}),identify:W,represent:a=>{let b=new Map;for(let c of Object.keys(a))b.set(c,a[c]);return b},addPair:(a,b,c)=>{if(null!==b&&"object"==typeof b)return"object-based map does not support complex keys";let d=String(b);return"__proto__"===d?Object.defineProperty(a,d,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[d]=c,""},has:(a,b)=>(null===b||"object"!=typeof b)&&Object.prototype.hasOwnProperty.call(a,String(b)),keys:a=>Object.keys(a),get:(a,b)=>{let c=String(b);return Object.prototype.hasOwnProperty.call(a,c)?a[c]:null}}),_=h("tag:yaml.org,2002:set",{create:()=>new Set,identify:a=>a instanceof Set,represent:a=>{let b=new Map;for(let c of a)b.set(c,null);return b},addPair:(a,b,c)=>null!==c?"cannot resolve a set item":(a.add(b),""),has:(a,b)=>a.has(b),keys:a=>a.keys(),get:()=>null}),aa=class a{tags;implicitScalarTags;implicitScalarByFirstChar;implicitScalarAnyFirstChar;defaultScalarTag;defaultSequenceTag;defaultMappingTag;exact;prefix;constructor(a){const b=function(a){let b=[];for(let c of a){let a=b.length;for(let d=0;d<b.length;d++){let e=b[d];if(e.nodeKind===c.nodeKind&&e.tagName===c.tagName&&e.matchByTagPrefix===c.matchByTagPrefix){a=d;break}}b[a]=c}return b}(a),c=[],d={scalar:Object.create(null),sequence:Object.create(null),mapping:Object.create(null)},e={scalar:[],sequence:[],mapping:[]};for(const a of b){if("scalar"===a.nodeKind&&a.implicit){if(a.matchByTagPrefix)throw Error("Implicit scalar tags cannot match by tag prefix");c.push(a)}switch(a.nodeKind){case"scalar":a.matchByTagPrefix?e.scalar.push(a):d.scalar[a.tagName]=a;break;case"sequence":a.matchByTagPrefix?e.sequence.push(a):d.sequence[a.tagName]=a;break;case"mapping":a.matchByTagPrefix?e.mapping.push(a):d.mapping[a.tagName]=a}}const f=c.filter(a=>null===a.implicitFirstChars),g=new Set;for(const a of c)if(null!==a.implicitFirstChars)for(const b of a.implicitFirstChars)g.add(b);const h=new Map;for(const a of g)h.set(a,c.filter(b=>null===b.implicitFirstChars||-1!==b.implicitFirstChars.indexOf(a)));const i=d.scalar["tag:yaml.org,2002:str"];if(!i)throw Error("schema does not define the default scalar tag (tag:yaml.org,2002:str)");this.tags=b,this.implicitScalarTags=c,this.implicitScalarByFirstChar=h,this.implicitScalarAnyFirstChar=f,this.defaultScalarTag=i,this.defaultSequenceTag=d.sequence["tag:yaml.org,2002:seq"],this.defaultMappingTag=d.mapping["tag:yaml.org,2002:map"],this.exact=d,this.prefix=e}withTags(...b){let c=[];for(let a of b)c=c.concat(a);return new a([...this.tags,...c])}},ab=new aa([i,V,$]);new aa([...ab.tags,l,t,C,K]);var ac=new aa([...ab.tags,k,q,z,H]),ad=new aa([...ab.tags,n,w,E,N,U,O,Q,Y,Z,_]);function ae(a){if(Array.isArray(a)){let b=Array.prototype.slice.call(a);for(let a=0;a<b.length;a++){if(Array.isArray(b[a]))return null;"object"==typeof b[a]&&"[object Object]"===Object.prototype.toString.call(b[a])&&(b[a]="[object Object]")}return String(b)}return"object"==typeof a&&"[object Object]"===Object.prototype.toString.call(a)?"[object Object]":String(a)}h("tag:yaml.org,2002:map",{create:()=>new Map,addPair:(a,b,c)=>(a.set(b,c),""),has:(a,b)=>a.has(b),keys:a=>a.keys(),get:(a,b)=>a.get(b),identify:a=>a instanceof Map||W(a),represent:a=>{if(a instanceof Map)return a;let b=new Map;for(let c of Object.keys(a))b.set(c,a[c]);return b}}),h("tag:yaml.org,2002:map",{create:()=>({}),identify:W,represent:a=>{let b=new Map;for(let c of Object.keys(a))b.set(c,a[c]);return b},addPair:(a,b,c)=>{let d=ae(b);return null===d?"nested arrays are not supported inside keys":("__proto__"===d?Object.defineProperty(a,d,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[d]=c,"")},has:(a,b)=>{let c=ae(b);return null!==c&&Object.prototype.hasOwnProperty.call(a,c)},keys:a=>Object.keys(a),get:(a,b)=>{let c=String(b);return Object.prototype.hasOwnProperty.call(a,c)?a[c]:null}});var af={maxLength:79,indent:1,linesBefore:3,linesAfter:2};function ag(a,b,c,d,e){let f="",g="",h=Math.floor(e/2)-1;return d-b>h&&(b=d-h+(f=" ... ").length),c-d>h&&(c=d+h-(g=" ...").length),{str:f+a.slice(b,c).replace(/\t/g,"→")+g,pos:d-b+f.length}}function ah(a,b){return" ".repeat(Math.max(b-a.length,0))+a}function ai(a,b){let c="";return a.mark?(a.mark.name&&(c+=`in "${a.mark.name}" `),c+=`(${a.mark.line+1}:${a.mark.column+1})`,!b&&a.mark.snippet&&(c+=`
32
+ ${b.slice(0,500)}`),console.log(`[task-scheduler] #${a.number} → waiting_reply(提问入队)`)}async function D(){let a=Date.now(),b=0;for(let c of(0,n.O7)(["review"])){let d=c.sessionId?await (0,o.Wz)(c.sessionId):null;if(d?.failure){B(c),b+=1;continue}if(!c.sessionId||!d){(0,n.w0)(c.id,{execStatus:"done"}),console.log(`[task-scheduler] #${c.number} 无执行内容 → done`),b+=1;continue}let e=L.get(c.id)??0;if(a-e<3e5)continue;L.set(c.id,a);let f=q(c);if(!f)continue;let g=await J({kind:"review",cardNumber:c.number,cardName:c.name,at:Date.now()},()=>(0,o.s4)({cwd:f,cardNumber:c.number,cardName:c.name,taskDescription:c.description,recentMessages:d.recentText}));g?.verdict==="done"?((0,n.w0)(c.id,{execStatus:"done"}),console.log(`[task-scheduler] #${c.number} 审核通过 → done(${g.reason})`),b+=1):g?.verdict==="failed"?(B(c),b+=1):g?.verdict==="waiting_reply"?(C(c,d.recentText),b+=1):console.log(`[task-scheduler] #${c.number} 审核未决:${g?g.reason:"AI 判定失败"}(保持 review)`)}return b}async function E(){let a=Date.now(),b=0;for(let c of(0,n.O7)(["running"])){if(!c.sessionId)continue;let d=K.get(c.id)??0;if(a-d<6e5)continue;let e=await (0,o.Wz)(c.sessionId);if(!e||0===e.lastActivityMs||!e.lastIsCommand||a-e.lastCommandAtMs<3e5)continue;K.set(c.id,a);let f=q(c);if(!f)continue;let g=await J({kind:"blockcheck",cardNumber:c.number,cardName:c.name,at:Date.now()},()=>(0,o.bJ)({cwd:f,cardNumber:c.number,cardName:c.name,taskDescription:c.description,recentMessages:e.recentText}));if(g)switch(g.kind){case"sync_server":case"infinite_loop":await F(c),b+=1;break;case"rate_limit":console.log(`[task-scheduler] #${c.number} 限流退避,继续观察`);break;case"asking":C(c,e.recentText),b+=1;break;case"error":(0,n.w0)(c.id,{execStatus:"review"}),b+=1}}return b}async function F(a){try{if(a.sessionId){let b=await (0,j.resolveSessionPath)(a.sessionId);if(b){let{session:c}=await (0,i.OF)(a.sessionId,b,void 0);await c.send({type:"abort"}),await c.send({type:"prompt",message:"检测到任务卡执行异常(可能是同步开启服务或死循环)。\n请改用 tmux 后台启动服务:tmux new-session -d '命令',不要在前台阻塞等待日志;如为死循环请重新规划步骤后继续。"}),v(a,c)}}(0,n.w0)(a.id,{execStatus:"running"}),console.log(`[task-scheduler] #${a.number} 阻塞处置:abort+tmux 引导,继续运行`)}catch(b){console.error(`[task-scheduler] 阻塞处置失败 #${a.number}:`,b instanceof Error?b.message:b)}}function G(){if(globalThis.__piTaskScheduler)return;let a=!1,b=setInterval(()=>{!(0,m.oT)()||a||(a=!0,y().catch(a=>{console.error("[task-scheduler] tick error:",a instanceof Error?a.message:a)}).finally(()=>{a=!1}))},1e4);b.unref?.();let c=setInterval(()=>{try{(0,m.U4)((0,m.zZ)())}catch(a){console.error("[task-scheduler] leader heartbeat error:",a instanceof Error?a.message:a)}},m.dp/3);c.unref?.();let d={timer:b,heartbeatTimer:c,startedAt:Date.now(),lastAction:{type:"none",at:0},activity:null};globalThis.__piTaskScheduler=d,console.log("[pi-web] task scheduler started (interval 10000ms, max 1)")}function H(a){globalThis.__piTaskScheduler&&(globalThis.__piTaskScheduler.lastAction=a)}function I(a){globalThis.__piTaskScheduler&&(globalThis.__piTaskScheduler.activity=a)}async function J(a,b){I(a);try{return await b()}finally{I(null)}}d()}catch(a){d(a)}})},61577:(a,b,c)=>{"use strict";c.d(b,{o:()=>e});let d=new Set(["off","minimal","low","medium","high","xhigh","max"]);async function e(a,b,c){if(!b.model&&!b.thinkingLevel)return{modelDefaultChanged:!1};let e=!1;if(b.model&&c.model&&b.model.provider===c.model.provider&&b.model.modelId===c.model.modelId&&(a.setDefaultModelAndProvider(c.model.provider,c.model.modelId),e=!0),b.thinkingLevel&&(c.supportsThinking||"off"!==c.thinkingLevel)){var f;let b=(f=c.thinkingLevel,d.has(f))?c.thinkingLevel:void 0;a.setDefaultThinkingLevel(b)}return await a.flush(),{modelDefaultChanged:e}}},62404:(a,b,c)=>{"use strict";let d=c(33873),e=c(93329),f=c(81463),g=c(75856),h=c(16176),i={};function j(a,b){return b.lockfilePath||`${a}.lock`}function k(a,b,c){if(!b.realpath)return c(null,d.resolve(a));b.fs.realpath(a,c)}function l(a,b){return a.mtime.getTime()<Date.now()-b.stale}function m(a,b,c){b.fs.rmdir(j(a,b),a=>{if(a&&"ENOENT"!==a.code)return c(a);c()})}function n(a,b,c){b.released=!0,b.updateTimeout&&clearTimeout(b.updateTimeout),i[a]===b&&delete i[a],b.options.onCompromised(c)}function o(a,b,c){k(a,b={fs:e,realpath:!0,...b},(a,d)=>{if(a)return c(a);let e=i[d];if(!e)return c(Object.assign(Error("Lock is not acquired/owned by you"),{code:"ENOTACQUIRED"}));e.updateTimeout&&clearTimeout(e.updateTimeout),e.released=!0,delete i[d],m(d,b,c)})}g(()=>{for(let a in i){let b=i[a].options;try{b.fs.rmdirSync(j(a,b))}catch(a){}}}),a.exports.lock=function(a,b,c){(b={stale:1e4,update:null,realpath:!0,retries:0,fs:e,onCompromised:a=>{throw a},...b}).retries=b.retries||0,b.retries="number"==typeof b.retries?{retries:b.retries}:b.retries,b.stale=Math.max(b.stale||0,2e3),b.update=null==b.update?b.stale/2:b.update||0,b.update=Math.max(Math.min(b.update,b.stale/2),1e3),k(a,b,(a,d)=>{if(a)return c(a);let e=f.operation(b.retries);e.attempt(()=>{!function a(b,c,d){let e=j(b,c);c.fs.mkdir(e,f=>f?"EEXIST"!==f.code?d(f):c.stale<=0?d(Object.assign(Error("Lock file is already being held"),{code:"ELOCKED",file:b})):void c.fs.stat(e,(e,f)=>e?"ENOENT"===e.code?a(b,{...c,stale:0},d):d(e):l(f,c)?void m(b,c,e=>{if(e)return d(e);a(b,{...c,stale:0},d)}):d(Object.assign(Error("Lock file is already being held"),{code:"ELOCKED",file:b}))):h.probe(e,c.fs,(a,b,f)=>{if(a)return c.fs.rmdir(e,()=>{}),d(a);d(null,b,f)}))}(d,b,(a,f,g)=>{if(e.retry(a))return;if(a)return c(e.mainError());let k=i[d]={lockfilePath:j(d,b),mtime:f,mtimePrecision:g,options:b,lastUpdate:Date.now()};!function a(b,c){let d=i[b];!d.updateTimeout&&(d.updateDelay=d.updateDelay||c.update,d.updateTimeout=setTimeout(()=>{d.updateTimeout=null,c.fs.stat(d.lockfilePath,(e,f)=>{let g=d.lastUpdate+c.stale<Date.now();if(e)return"ENOENT"===e.code||g?n(b,d,Object.assign(e,{code:"ECOMPROMISED"})):(d.updateDelay=1e3,a(b,c));if(d.mtime.getTime()!==f.mtime.getTime())return n(b,d,Object.assign(Error("Unable to update lock within the stale threshold"),{code:"ECOMPROMISED"}));let i=h.getMtime(d.mtimePrecision);c.fs.utimes(d.lockfilePath,i,i,e=>{let f=d.lastUpdate+c.stale<Date.now();if(!d.released){if(e)return"ENOENT"===e.code||f?n(b,d,Object.assign(e,{code:"ECOMPROMISED"})):(d.updateDelay=1e3,a(b,c));d.mtime=i,d.lastUpdate=Date.now(),d.updateDelay=null,a(b,c)}})})},d.updateDelay),d.updateTimeout.unref&&d.updateTimeout.unref())}(d,b),c(null,a=>{if(k.released)return a&&a(Object.assign(Error("Lock is already released"),{code:"ERELEASED"}));o(d,{...b,realpath:!1},a)})})})})},a.exports.unlock=o,a.exports.check=function(a,b,c){(b={stale:1e4,realpath:!0,fs:e,...b}).stale=Math.max(b.stale||0,2e3),k(a,b,(a,d)=>{if(a)return c(a);b.fs.stat(j(d,b),(a,d)=>a?"ENOENT"===a.code?c(null,!1):c(a):c(null,!l(d,b)))})},a.exports.getLocks=function(){return i}},67313:(a,b,c)=>{var d=c(92759);b.operation=function(a){return new d(b.timeouts(a),{forever:a&&a.forever,unref:a&&a.unref,maxRetryTime:a&&a.maxRetryTime})},b.timeouts=function(a){if(a instanceof Array)return[].concat(a);var b={retries:10,factor:2,minTimeout:1e3,maxTimeout:1/0,randomize:!1};for(var c in a)b[c]=a[c];if(b.minTimeout>b.maxTimeout)throw Error("minTimeout is greater than maxTimeout");for(var d=[],e=0;e<b.retries;e++)d.push(this.createTimeout(e,b));return a&&a.forever&&!d.length&&d.push(this.createTimeout(e,b)),d.sort(function(a,b){return a-b}),d},b.createTimeout=function(a,b){var c=Math.round((b.randomize?Math.random()+1:1)*b.minTimeout*Math.pow(b.factor,a));return Math.min(c,b.maxTimeout)},b.wrap=function(a,c,d){if(c instanceof Array&&(d=c,c=null),!d)for(var e in d=[],a)"function"==typeof a[e]&&d.push(e);for(var f=0;f<d.length;f++){var g=d[f],h=a[g];a[g]=(function(d){var e=b.operation(c),f=Array.prototype.slice.call(arguments,1),g=f.pop();f.push(function(a){e.retry(a)||(a&&(arguments[0]=e.mainError()),g.apply(this,arguments))}),e.attempt(function(){d.apply(a,f)})}).bind(a,h),a[g].options=c}}},70274:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{N:()=>k,hd:()=>j});var e=c(73024),f=c(76760),g=c(75430);c(12969);var h=a([g]);function i(a=(0,g.getAgentDir)()){return(0,f.join)(a,"agents","settings.json")}function j(a=i()){var b,c,d;let f=function(a){if(!(0,e.existsSync)(a))return{};let b=JSON.parse((0,e.readFileSync)(a,"utf8"));if(null===b||"object"!=typeof b||Array.isArray(b))throw Error("Invalid subagent settings: expected an object");return b}(a);return c=!0===f.builtInEnabled,b=f.maxConcurrent,d="number"==typeof b&&Number.isInteger(b)&&b>=1&&b<=32?b:10,Object.defineProperty({builtInEnabled:c},"maxConcurrent",{value:d,enumerable:!1,configurable:!0})}function k(a=i()){try{return j(a).builtInEnabled}catch{return!1}}g=(h.then?(await h)():h)[0],d()}catch(a){d(a)}})},75856:(a,b,c)=>{var d=global.process;let e=function(a){return a&&"object"==typeof a&&"function"==typeof a.removeListener&&"function"==typeof a.emit&&"function"==typeof a.reallyExit&&"function"==typeof a.listeners&&"function"==typeof a.kill&&"number"==typeof a.pid&&"function"==typeof a.on};if(e(d)){var f,g=c(12412),h=c(30223),i=/^win/i.test(d.platform),j=c(94735);"function"!=typeof j&&(j=j.EventEmitter),d.__signal_exit_emitter__?f=d.__signal_exit_emitter__:((f=d.__signal_exit_emitter__=new j).count=0,f.emitted={}),f.infinite||(f.setMaxListeners(1/0),f.infinite=!0),a.exports=function(a,b){if(!e(global.process))return function(){};g.equal(typeof a,"function","a callback must be provided for exit handler"),!1===n&&o();var c="exit";return b&&b.alwaysLast&&(c="afterexit"),f.on(c,a),function(){f.removeListener(c,a),0===f.listeners("exit").length&&0===f.listeners("afterexit").length&&k()}};var k=function(){n&&e(global.process)&&(n=!1,h.forEach(function(a){try{d.removeListener(a,m[a])}catch(a){}}),d.emit=r,d.reallyExit=p,f.count-=1)};a.exports.unload=k;var l=function(a,b,c){f.emitted[a]||(f.emitted[a]=!0,f.emit(a,b,c))},m={};h.forEach(function(a){m[a]=function(){e(global.process)&&d.listeners(a).length===f.count&&(k(),l("exit",null,a),l("afterexit",null,a),i&&"SIGHUP"===a&&(a="SIGINT"),d.kill(d.pid,a))}}),a.exports.signals=function(){return h};var n=!1,o=function(){!n&&e(global.process)&&(n=!0,f.count+=1,h=h.filter(function(a){try{return d.on(a,m[a]),!0}catch(a){return!1}}),d.emit=s,d.reallyExit=q)};a.exports.load=o;var p=d.reallyExit,q=function(a){e(global.process)&&(d.exitCode=a||0,l("exit",d.exitCode,null),l("afterexit",d.exitCode,null),p.call(d,d.exitCode))},r=d.emit,s=function(a,b){if(!("exit"===a&&e(global.process)))return r.apply(this,arguments);void 0!==b&&(d.exitCode=b);var c=r.apply(this,arguments);return l("exit",d.exitCode,null),l("afterexit",d.exitCode,null),c}}else a.exports=function(){return function(){}}},77605:(a,b,c)=>{"use strict";c.d(b,{Ql:()=>i,Y0:()=>e,aO:()=>k,cn:()=>f,mU:()=>l,sT:()=>d,xw:()=>n});let d="pi-todo.state",e="todo",f=["pending","in_progress","completed"];function g(a){return"string"==typeof a&&f.includes(a)}function h(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function i(a){return a.some(a=>"completed"!==a.status)}function j(a,b){let c=a.trim();if(0===c.length)throw Error(`${b} cannot be empty or whitespace-only`);return c}function k(a){if(!h(a)||!Array.isArray(a.todos))return null;let b=[];for(let c of a.todos)h(c)&&"number"==typeof c.id&&Number.isFinite(c.id)&&"string"==typeof c.content&&0!==c.content.length&&g(c.status)&&b.push({id:c.id,content:c.content,status:c.status});let c=b.reduce((a,b)=>Math.max(a,b.id),0);return{todos:b,nextId:"number"==typeof a.nextId&&a.nextId>c?a.nextId:c+1}}function l(a){let b="completed"===a.status?"x":"in_progress"===a.status?"~":" ";return`[${b}] #${a.id}: ${a.content}`}function m(a,b){if(0===b.length)throw Error("update requires at least status or text parameter");let c=new Set;for(let d of b){if(c.has(d.id))throw Error(`duplicate id ${d.id} in updates`);if(c.add(d.id),void 0===d.status&&void 0===d.text)throw Error(`update item for id ${d.id} has neither status nor text`);if(void 0!==d.status&&!g(d.status))throw Error(`status only accepts ${f.join(" / ")}`);if(void 0!==d.text&&j(d.text,`update item id ${d.id}: text`),!a.todos.some(a=>a.id===d.id))throw Error(`Todo #${d.id} not found`)}return{snapshot:{todos:a.todos.map(a=>{let c=b.find(b=>b.id===a.id);return c?{...a,...void 0!==c.status?{status:c.status}:{},...void 0!==c.text?{content:c.text.trim()}:{}}:a}),nextId:a.nextId},resultText:`Updated ${b.length} todo(s)`}}function n(a,b){switch(a.action){case"list":var c;return{action:"list",snapshot:b,resultText:(c=b.todos).length>0?c.map(l).join("\n"):"No todos"};case"add":{if(void 0!==a.text&&void 0!==a.texts)throw Error('add only accepts texts array; do not also pass singular "text"');if(void 0!==a.text)throw Error('add needs texts (array). You passed singular "text" — that field is for update. Correct: {"action":"add","texts":["<your text>"]}');let{snapshot:c,resultText:d}=function(a,b){if(0===b.length)throw Error('add requires texts parameter (non-empty array). Correct: {"action":"add","texts":["..."]}');let c=b.map(a=>j(a,"texts item")),d=a.nextId,e=c.map((a,b)=>({id:d+b,content:a,status:"pending"})),f=d+e.length;return{snapshot:{todos:[...a.todos,...e],nextId:f},resultText:`Added ${e.length} todos (#${d}-#${f-1})`}}(b,a.texts??[]);return{action:"add",snapshot:c,resultText:d}}case"update":{if(void 0!==a.updates&&a.updates.length>0){let{snapshot:c,resultText:d}=m(b,a.updates);return{action:"update",snapshot:c,resultText:d}}if(void 0===a.id)throw Error('update requires id parameter. Correct: {"action":"update","id":1,"status":"in_progress"}');let{snapshot:c,resultText:d}=m(b,[{id:a.id,...void 0!==a.status?{status:a.status}:{},...void 0!==a.text?{text:a.text}:{}}]);return{action:"update",snapshot:c,resultText:d}}case"delete":{if(void 0===a.ids||0===a.ids.length){if(void 0!==a.id)throw Error('delete needs ids (array). You passed singular "id". Correct: {"action":"delete","ids":[1]}');throw Error('delete requires ids parameter (non-empty array). Correct: {"action":"delete","ids":[1]}')}let{snapshot:c,resultText:d}=function(a,b){if(0===b.length)throw Error('delete requires ids parameter (non-empty array). Correct: {"action":"delete","ids":[1]}');for(let c of b)if(!a.todos.some(a=>a.id===c))throw Error(`Todo #${c} not found`);let c=new Set(b);return{snapshot:{todos:a.todos.filter(a=>!c.has(a.id)),nextId:a.nextId},resultText:`Deleted ${b.length} todo(s)`}}(b,a.ids);return{action:"delete",snapshot:c,resultText:d}}default:throw Error(`Unknown action: ${String(a.action)}`)}}},81186:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Ds:()=>j,J1:()=>h,eD:()=>i});var e=c(75430),f=c(76760),g=a([e]);e=(g.then?(await g)():g)[0];let k="pi-web-project-command-environment",l=`<inline:${k}>`;function h(a={}){let{agentBinDir:b=(0,f.join)((0,e.getAgentDir)(),"bin"),baseEnvironment:c=process.env,localOperations:d=(0,e.createLocalBashOperations)({shellPath:a.shellPath}),platform:g=process.platform}=a;return{exec(a,e,f){var h;let i,j,k,l=(h=function(a,b=process.platform){let c={...a};for(let a of Object.keys(c))(function(a,b){let c="win32"===b?a.toUpperCase():a;return"PORT"===c||"NODE_ENV"===c||c.startsWith("NEXT_")})(a,b)&&delete c[a];return c}(f.env??c,g),i="win32"===g?Object.keys(h).find(a=>"PATH"===a.toUpperCase())??"PATH":"PATH",j="win32"===g?";":":",(k=h[i]??"").split(j).filter(Boolean).includes(b)||(h[i]=[b,k].filter(Boolean).join(j)),h);return d.exec(a,e,{...f,env:l})}}}function i(a){return{name:k,hidden:!0,factory:b=>{let c=(0,e.createBashToolDefinition)(a.cwd);b.registerTool({...c,execute:(b,c,d,f,g)=>(0,e.createBashToolDefinition)(a.cwd,{commandPrefix:a.settings.getShellCommandPrefix(),operations:h({shellPath:a.settings.getShellPath()})}).execute(b,c,d,f,g)})}}}function j(a){let b=a.extensions.findIndex(a=>a.path===l);if(b<0)return a;let c=a.extensions.slice(0,b).find(a=>a.tools.has("bash"));return c?{...a,extensions:a.extensions.filter((a,c)=>c!==b),errors:a.errors.filter(a=>a.path!==l||a.error!==`Tool "bash" conflicts with ${c.path}`)}:a}d()}catch(a){d(a)}})},81463:(a,b,c)=>{a.exports=c(67313)},82249:(a,b,c)=>{"use strict";c.d(b,{Hh:()=>ba});var d=Symbol("NOT_RESOLVED"),e=Symbol("MERGE_KEY");function f(a,b){return{tagName:a,nodeKind:"scalar",implicit:b.implicit??!1,matchByTagPrefix:b.matchByTagPrefix??!1,implicitFirstChars:b.implicitFirstChars??null,resolve:b.resolve,identify:b.identify??null,represent:b.represent??(a=>String(a)),representTagName:b.representTagName??null}}function g(a,b){let c=void 0===b.finalize;return{tagName:a,nodeKind:"sequence",implicit:!1,matchByTagPrefix:b.matchByTagPrefix??!1,create:b.create,addItem:b.addItem,finalize:b.finalize??(a=>a),carrierIsResult:c,identify:b.identify??null,represent:b.represent??(a=>a),representTagName:b.representTagName??null}}function h(a,b){let c=void 0===b.finalize;return{tagName:a,nodeKind:"mapping",implicit:!1,matchByTagPrefix:b.matchByTagPrefix??!1,create:b.create,addPair:b.addPair,has:b.has,keys:b.keys,get:b.get,finalize:b.finalize??(a=>a),carrierIsResult:c,identify:b.identify??null,represent:b.represent??(a=>a),representTagName:b.representTagName??null}}var i=f("tag:yaml.org,2002:str",{resolve:a=>a,identify:a=>"string"==typeof a}),j=["","~","null","Null","NULL"],k=f("tag:yaml.org,2002:null",{implicit:!0,implicitFirstChars:["","~","n","N"],resolve:a=>-1!==j.indexOf(a)?null:d,identify:a=>null===a,represent:()=>"null"}),l=f("tag:yaml.org,2002:null",{implicit:!0,implicitFirstChars:["n"],resolve:(a,b)=>"null"===a||b&&""===a?null:d,identify:a=>null===a,represent:()=>"null"}),m=["","~","null","Null","NULL"],n=f("tag:yaml.org,2002:null",{implicit:!0,implicitFirstChars:["","~","n","N"],resolve:a=>-1!==m.indexOf(a)?null:d,identify:a=>null===a,represent:()=>"null"}),o=["true","True","TRUE"],p=["false","False","FALSE"],q=f("tag:yaml.org,2002:bool",{implicit:!0,implicitFirstChars:["t","T","f","F"],resolve:a=>-1!==o.indexOf(a)||-1===p.indexOf(a)&&d,identify:a=>"[object Boolean]"===Object.prototype.toString.call(a),represent:a=>a?"true":"false"}),r=["true"],s=["false"],t=f("tag:yaml.org,2002:bool",{implicit:!0,implicitFirstChars:["t","f"],resolve:a=>-1!==r.indexOf(a)||-1===s.indexOf(a)&&d,identify:a=>"[object Boolean]"===Object.prototype.toString.call(a),represent:a=>a?"true":"false"}),u=["true","True","TRUE","y","Y","yes","Yes","YES","on","On","ON"],v=["false","False","FALSE","n","N","no","No","NO","off","Off","OFF"],w=f("tag:yaml.org,2002:bool",{implicit:!0,implicitFirstChars:["y","Y","n","N","t","T","f","F","o","O"],resolve:a=>-1!==u.indexOf(a)||-1===v.indexOf(a)&&d,identify:a=>"[object Boolean]"===Object.prototype.toString.call(a),represent:a=>a?"true":"false"}),x=RegExp("^(?:0o[0-7]+|0x[0-9a-fA-F]+|[-+]?[0-9]+)$"),y=RegExp("^(?:[-+]?0b[0-1]+|[-+]?0o[0-7]+|[-+]?0x[0-9a-fA-F]+|[-+]?[0-9]+)$"),z=f("tag:yaml.org,2002:int",{implicit:!0,implicitFirstChars:["-","+",..."0123456789"],resolve:function(a,b){let c,e;if(b){if(!y.test(a))return d}else if(!x.test(a))return d;let f=(e=1,(("-"===(c=a)[0]||"+"===c[0])&&("-"===c[0]&&(e=-1),c=c.slice(1)),c.startsWith("0b"))?e*parseInt(c.slice(2),2):c.startsWith("0o")?e*parseInt(c.slice(2),8):c.startsWith("0x")?e*parseInt(c.slice(2),16):e*parseInt(c,10));return Number.isFinite(f)?f:d},identify:a=>Number.isInteger(a)&&!Object.is(a,-0)&&0>a.toString(10).indexOf("e"),represent:a=>a.toString(10)}),A=RegExp("^-?(?:0|[1-9][0-9]*)$"),B=RegExp("^(?:[-+]?0b[0-1]+|[-+]?0o[0-7]+|[-+]?0x[0-9a-fA-F]+|[-+]?[0-9]+)$"),C=f("tag:yaml.org,2002:int",{implicit:!0,implicitFirstChars:["-",..."0123456789"],resolve:function(a,b){let c,e;if(b){if(!B.test(a))return d}else if(!A.test(a))return d;let f=(e=1,(("-"===(c=a)[0]||"+"===c[0])&&("-"===c[0]&&(e=-1),c=c.slice(1)),c.startsWith("0b"))?e*parseInt(c.slice(2),2):c.startsWith("0o")?e*parseInt(c.slice(2),8):c.startsWith("0x")?e*parseInt(c.slice(2),16):e*parseInt(c,10));return Number.isFinite(f)?f:d},identify:a=>Number.isInteger(a)&&!Object.is(a,-0)&&0>a.toString(10).indexOf("e"),represent:a=>a.toString(10)}),D=RegExp("^(?:[-+]?0b[0-1_]+|[-+]?0[0-7_]+|[-+]?0x[0-9a-fA-F_]+|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+|[-+]?(?:0|[1-9][0-9_]*))$"),E=f("tag:yaml.org,2002:int",{implicit:!0,implicitFirstChars:["-","+",..."0123456789"],resolve:function(a){if(!D.test(a))return d;let b=function(a){let b=a.replace(/_/g,""),c=1;if(("-"===b[0]||"+"===b[0])&&("-"===b[0]&&(c=-1),b=b.slice(1)),b.startsWith("0b"))return c*parseInt(b.slice(2),2);if(b.startsWith("0x"))return c*parseInt(b.slice(2),16);if(b.includes(":")){let a=0;for(let c of b.split(":"))a=60*a+Number(c);return c*a}return"0"!==b&&"0"===b[0]?c*parseInt(b,8):c*parseInt(b,10)}(a);return Number.isFinite(b)?b:d},identify:a=>Number.isInteger(a)&&!Object.is(a,-0)&&0>a.toString(10).indexOf("e"),represent:a=>a.toString(10)}),F=RegExp("^(?:[-+]?[0-9]+(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?|[-+]?\\.[0-9]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),G=RegExp("^(?:[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),H=f("tag:yaml.org,2002:float",{implicit:!0,implicitFirstChars:["-","+",".",..."0123456789"],resolve:function(a){if(!F.test(a))return d;let b=a.toLowerCase(),c="-"===b[0]?-1:1;if("+-".includes(b[0])&&(b=b.slice(1)),".inf"===b)return 1===c?1/0:-1/0;if(".nan"===b)return NaN;let e=c*parseFloat(b);return Number.isFinite(e)||G.test(a)?e:d},identify:a=>"number"==typeof a&&(!Number.isInteger(a)||Object.is(a,-0)||a.toString(10).indexOf("e")>=0),represent:function(a){if(isNaN(a))return".nan";if(a===1/0)return".inf";if(a===-1/0)return"-.inf";if(Object.is(a,-0))return"-0.0";let b=a.toString(10);return/^[-+]?[0-9]+e/.test(b)?b.replace("e",".e"):b}}),I=RegExp("^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$"),J=RegExp("^(?:[-+]?[0-9]+(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?|[-+]?\\.[0-9]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),K=f("tag:yaml.org,2002:float",{implicit:!0,implicitFirstChars:["-",..."0123456789"],resolve:function(a,b){if(b){if(!J.test(a))return d;let b=a.toLowerCase(),c="-"===b[0]?-1:1;if("+-".includes(b[0])&&(b=b.slice(1)),".inf"===b)return 1===c?1/0:-1/0;if(".nan"===b)return NaN;let e=c*parseFloat(b);return Number.isFinite(e)?e:d}if(!I.test(a))return d;let c=Number(a);return Number.isFinite(c)?c:d},identify:a=>"number"==typeof a&&(!Number.isInteger(a)||Object.is(a,-0)||a.toString(10).indexOf("e")>=0),represent:function(a){if(isNaN(a))return".nan";if(a===1/0)return".inf";if(a===-1/0)return"-.inf";if(Object.is(a,-0))return"-0.0";let b=a.toString(10);return/^[-+]?[0-9]+e/.test(b)?b.replace("e",".e"):b}}),L=RegExp("^(?:[-+]?(?:(?:[0-9][0-9_]*)?\\.[0-9_]*)(?:[eE][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),M=RegExp("^(?:[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),N=f("tag:yaml.org,2002:float",{implicit:!0,implicitFirstChars:["-","+",".",..."0123456789"],resolve:function(a){if(!L.test(a))return d;let b=a.toLowerCase().replace(/_/g,""),c="-"===b[0]?-1:1;if("+-".includes(b[0])&&(b=b.slice(1)),".inf"===b)return 1===c?1/0:-1/0;if(".nan"===b)return NaN;let e=0;if(b.includes(":")){for(let a of b.split(":"))e=60*e+Number(a);e*=c}else e=c*parseFloat(b);return Number.isFinite(e)||M.test(a)?e:d},identify:a=>"number"==typeof a&&(!Number.isInteger(a)||Object.is(a,-0)||a.toString(10).indexOf("e")>=0),represent:function(a){if(isNaN(a))return".nan";if(a===1/0)return".inf";if(a===-1/0)return"-.inf";if(Object.is(a,-0))return"-0.0";let b=a.toString(10);return/^[-+]?[0-9]+e/.test(b)?b.replace("e",".e"):b}}),O=f("tag:yaml.org,2002:merge",{implicit:!0,implicitFirstChars:["<"],resolve:(a,b)=>"<<"===a||b&&""===a?e:d}),P=/^[A-Za-z0-9+/]*={0,2}$/,Q=f("tag:yaml.org,2002:binary",{resolve:function(a){let b=a.replace(/\s/g,"");if(b.length%4!=0||!P.test(b))return d;let c=atob(b),e=new Uint8Array(c.length);for(let a=0;a<c.length;a++)e[a]=c.charCodeAt(a);return e},identify:a=>"[object Uint8Array]"===Object.prototype.toString.call(a),represent:function(a){let b="";for(let c=0;c<a.length;c++)b+=String.fromCharCode(a[c]);return btoa(b)}}),R=RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),S=RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function T(a,b,c,d=0,e=0,f=0,g=0){let h=new Date(Date.UTC(a,b,c,d,e,f,g));return h.setUTCFullYear(a,b,c),h}var U=f("tag:yaml.org,2002:timestamp",{implicit:!0,implicitFirstChars:[..."0123456789"],resolve:function(a){let b=R.exec(a);if(null===b&&(b=S.exec(a)),null===b)return d;let c=+b[1],e=b[2]-1,f=+b[3];if(!b[4]){let a=T(c,e,f);return a.getUTCFullYear()!==c||a.getUTCMonth()!==e||a.getUTCDate()!==f?d:a}let g=+b[4],h=+b[5],i=+b[6],j=0;if(g>23||h>59||i>59)return d;if(b[7]){let a=b[7].slice(0,3);for(;a.length<3;)a+="0";j=+a}let k=T(c,e,f,g,h,i,j);if(k.getUTCFullYear()!==c||k.getUTCMonth()!==e||k.getUTCDate()!==f)return d;if(b[9]){let a=+b[10],c=+(b[11]||0);if(a>23||c>59)return d;let e=(60*a+c)*6e4;k.setTime(k.getTime()-("-"===b[9]?-e:e))}return k},identify:a=>a instanceof Date,represent:a=>a.toISOString()}),V=g("tag:yaml.org,2002:seq",{create:()=>[],addItem:(a,b)=>{a.push(b)},identify:Array.isArray});function W(a){if(null===a||"object"!=typeof a||Array.isArray(a))return!1;let b=Object.getPrototypeOf(a);return null===b||b===Object.prototype}function X(a,b){let c={};for(let d of b)void 0!==a[d]&&(c[d]=a[d]);return c}var Y=g("tag:yaml.org,2002:omap",{create:()=>({list:[],seen:new Set}),addItem:(a,b)=>{let c;if(b instanceof Map){if(1!==b.size)return"cannot resolve an ordered map item";c=b.keys().next().value}else{if(!W(b))return"cannot resolve an ordered map item";let a=Object.keys(b);if(1!==a.length)return"cannot resolve an ordered map item";c=a[0]}return a.seen.has(c)?"duplicate key in ordered map":(a.seen.add(c),a.list.push(b),"")},finalize:a=>a.list}),Z=g("tag:yaml.org,2002:pairs",{create:()=>[],addItem:(a,b)=>{if(b instanceof Map)return 1!==b.size?"cannot resolve a pairs item":(a.push(b.entries().next().value),"");if("[object Object]"!==Object.prototype.toString.call(b))return"cannot resolve a pairs item";let c=Object.keys(b);return 1!==c.length?"cannot resolve a pairs item":(a.push([c[0],b[c[0]]]),"")}}),$=h("tag:yaml.org,2002:map",{create:()=>({}),identify:W,represent:a=>{let b=new Map;for(let c of Object.keys(a))b.set(c,a[c]);return b},addPair:(a,b,c)=>{if(null!==b&&"object"==typeof b)return"object-based map does not support complex keys";let d=String(b);return"__proto__"===d?Object.defineProperty(a,d,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[d]=c,""},has:(a,b)=>(null===b||"object"!=typeof b)&&Object.prototype.hasOwnProperty.call(a,String(b)),keys:a=>Object.keys(a),get:(a,b)=>{let c=String(b);return Object.prototype.hasOwnProperty.call(a,c)?a[c]:null}}),_=h("tag:yaml.org,2002:set",{create:()=>new Set,identify:a=>a instanceof Set,represent:a=>{let b=new Map;for(let c of a)b.set(c,null);return b},addPair:(a,b,c)=>null!==c?"cannot resolve a set item":(a.add(b),""),has:(a,b)=>a.has(b),keys:a=>a.keys(),get:()=>null}),aa=class a{tags;implicitScalarTags;implicitScalarByFirstChar;implicitScalarAnyFirstChar;defaultScalarTag;defaultSequenceTag;defaultMappingTag;exact;prefix;constructor(a){const b=function(a){let b=[];for(let c of a){let a=b.length;for(let d=0;d<b.length;d++){let e=b[d];if(e.nodeKind===c.nodeKind&&e.tagName===c.tagName&&e.matchByTagPrefix===c.matchByTagPrefix){a=d;break}}b[a]=c}return b}(a),c=[],d={scalar:Object.create(null),sequence:Object.create(null),mapping:Object.create(null)},e={scalar:[],sequence:[],mapping:[]};for(const a of b){if("scalar"===a.nodeKind&&a.implicit){if(a.matchByTagPrefix)throw Error("Implicit scalar tags cannot match by tag prefix");c.push(a)}switch(a.nodeKind){case"scalar":a.matchByTagPrefix?e.scalar.push(a):d.scalar[a.tagName]=a;break;case"sequence":a.matchByTagPrefix?e.sequence.push(a):d.sequence[a.tagName]=a;break;case"mapping":a.matchByTagPrefix?e.mapping.push(a):d.mapping[a.tagName]=a}}const f=c.filter(a=>null===a.implicitFirstChars),g=new Set;for(const a of c)if(null!==a.implicitFirstChars)for(const b of a.implicitFirstChars)g.add(b);const h=new Map;for(const a of g)h.set(a,c.filter(b=>null===b.implicitFirstChars||-1!==b.implicitFirstChars.indexOf(a)));const i=d.scalar["tag:yaml.org,2002:str"];if(!i)throw Error("schema does not define the default scalar tag (tag:yaml.org,2002:str)");this.tags=b,this.implicitScalarTags=c,this.implicitScalarByFirstChar=h,this.implicitScalarAnyFirstChar=f,this.defaultScalarTag=i,this.defaultSequenceTag=d.sequence["tag:yaml.org,2002:seq"],this.defaultMappingTag=d.mapping["tag:yaml.org,2002:map"],this.exact=d,this.prefix=e}withTags(...b){let c=[];for(let a of b)c=c.concat(a);return new a([...this.tags,...c])}},ab=new aa([i,V,$]);new aa([...ab.tags,l,t,C,K]);var ac=new aa([...ab.tags,k,q,z,H]),ad=new aa([...ab.tags,n,w,E,N,U,O,Q,Y,Z,_]);function ae(a){if(Array.isArray(a)){let b=Array.prototype.slice.call(a);for(let a=0;a<b.length;a++){if(Array.isArray(b[a]))return null;"object"==typeof b[a]&&"[object Object]"===Object.prototype.toString.call(b[a])&&(b[a]="[object Object]")}return String(b)}return"object"==typeof a&&"[object Object]"===Object.prototype.toString.call(a)?"[object Object]":String(a)}h("tag:yaml.org,2002:map",{create:()=>new Map,addPair:(a,b,c)=>(a.set(b,c),""),has:(a,b)=>a.has(b),keys:a=>a.keys(),get:(a,b)=>a.get(b),identify:a=>a instanceof Map||W(a),represent:a=>{if(a instanceof Map)return a;let b=new Map;for(let c of Object.keys(a))b.set(c,a[c]);return b}}),h("tag:yaml.org,2002:map",{create:()=>({}),identify:W,represent:a=>{let b=new Map;for(let c of Object.keys(a))b.set(c,a[c]);return b},addPair:(a,b,c)=>{let d=ae(b);return null===d?"nested arrays are not supported inside keys":("__proto__"===d?Object.defineProperty(a,d,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[d]=c,"")},has:(a,b)=>{let c=ae(b);return null!==c&&Object.prototype.hasOwnProperty.call(a,c)},keys:a=>Object.keys(a),get:(a,b)=>{let c=String(b);return Object.prototype.hasOwnProperty.call(a,c)?a[c]:null}});var af={maxLength:79,indent:1,linesBefore:3,linesAfter:2};function ag(a,b,c,d,e){let f="",g="",h=Math.floor(e/2)-1;return d-b>h&&(b=d-h+(f=" ... ").length),c-d>h&&(c=d+h-(g=" ...").length),{str:f+a.slice(b,c).replace(/\t/g,"→")+g,pos:d-b+f.length}}function ah(a,b){return" ".repeat(Math.max(b-a.length,0))+a}function ai(a,b){let c="";return a.mark?(a.mark.name&&(c+=`in "${a.mark.name}" `),c+=`(${a.mark.line+1}:${a.mark.column+1})`,!b&&a.mark.snippet&&(c+=`
33
33
 
34
34
  ${a.mark.snippet}`),`${a.reason} ${c}`):a.reason}var aj=class extends Error{reason;mark;constructor(a,b){super(),this.name="YAMLException",this.reason=a,this.mark=b,this.message=ai(this,!1),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}toString(a){return`${this.name}: ${ai(this,a)}`}};function ak(a,b,c,d=""){let e=0,f=0;for(let c=0;c<b;c++){let b=a.charCodeAt(c);10===b?(e++,f=c+1):13===b&&(e++,10===a.charCodeAt(c+1)&&c++,f=c+1)}let g={name:d,buffer:a,position:b,line:e,column:b-f};throw g.snippet=function(a){let b;if(!a.buffer)return null;let c={...af,...void 0},d=/\r?\n|\r|\0/g,e=[0],f=[],g=-1;for(;b=d.exec(a.buffer);)f.push(b.index),e.push(b.index+b[0].length),a.position<=b.index&&g<0&&(g=e.length-2);g<0&&(g=e.length-1);let h="",i=Math.min(a.line+c.linesAfter,f.length).toString().length,j=c.maxLength-(c.indent+i+3);for(let b=1;b<=c.linesBefore&&!(g-b<0);b++){let d=ag(a.buffer,e[g-b],f[g-b],a.position-(e[g]-e[g-b]),j);h=`${" ".repeat(c.indent)}${ah((a.line-b+1).toString(),i)} | ${d.str}
35
35
  ${h}`}let k=ag(a.buffer,e[g],f[g],a.position,j);h+=`${" ".repeat(c.indent)}${ah((a.line+1).toString(),i)} | ${k.str}
36
36
  ${"-".repeat(c.indent+i+3+k.pos)}^
37
37
  `;for(let b=1;b<=c.linesAfter&&!(g+b>=f.length);b++){let d=ag(a.buffer,e[g+b],f[g+b],a.position-(e[g]-e[g+b]),j);h+=`${" ".repeat(c.indent)}${ah((a.line+b+1).toString(),i)} | ${d.str}
38
- `}return h.replace(/\n$/,"")}(g),new aj(c,g)}function al(a){switch(a){case 48:return"\0";case 97:return"\x07";case 98:return"\b";case 116:case 9:return" ";case 110:return"\n";case 118:return"\v";case 102:return"\f";case 114:return"\r";case 101:return"\x1b";case 32:return" ";case 34:return'"';case 47:return"/";case 92:return"\\";case 78:return"\x85";case 95:return"\xa0";case 76:return"\u2028";case 80:return"\u2029";default:return""}}var am=Array(256),an=Array(256);for(let a=0;a<256;a++)am[a]=+!!al(a),an[a]=al(a);function ao(a,b,c){let d=0;for(;b<c;){let c=a.charCodeAt(b);if(10===c)d++,b++;else if(13===c)d++,b++,10===a.charCodeAt(b)&&b++;else if(32===c||9===c)b++;else break}return{position:b,breaks:d}}function ap(a){return 1===a?" ":"\n".repeat(a-1)}function aq(a,b,c,d,e,f){let g=d<0?0:d,h=a.slice(b,c).replace(/\r\n?/g,"\n"),i=""===h?[]:(h.endsWith("\n")?h.slice(0,-1):h).split("\n"),j="",k=!1,l=0,m=!1;for(let a of i){let b=0;for(;b<g&&32===a.charCodeAt(b);)b++;if(d<0||b>=a.length){l++;continue}let c=a.slice(g),e=c.charCodeAt(0);f?32===e||9===e?(m=!0,j+="\n".repeat(k?1+l:l)):m?(m=!1,j+="\n".repeat(l+1)):0===l?k&&(j+=" "):j+="\n".repeat(l):j+="\n".repeat(k?1+l:l),j+=c,k=!0,l=0}return 3===e?j+="\n".repeat(k?1+l:l):2!==e&&k&&(j+="\n"),j}var ar=Object.assign(Object.create(null),{"!":"!","!!":"tag:yaml.org,2002:"});function as(a,b){if(a.startsWith("!<")&&a.endsWith(">"))return decodeURIComponent(a.slice(2,-1));let c=a.indexOf("!",1),d=-1===c?"!":a.slice(0,c+1);return decodeURIComponent(b?.[d]??ar[d]??d)+decodeURIComponent(a.slice(d.length))}var at={filename:"",schema:ac,json:!1,maxTotalMergeKeys:1e4,maxAliases:-1};function au(a,b){ak(a.source,a.position,b,a.filename)}function av(a,b,c,d){try{return c.finalize(d)}catch(c){if(c instanceof aj)throw c;ak(a.source,b,c instanceof Error?c.message:String(c),a.filename)}}function aw(a,b,c){let d=a[c];if(d)return d;for(let a of b)if(c.startsWith(a.tagName))return a}function ax(a,b,c,d,e,f){let g=-1===b.tagStart?"":a.source.slice(b.tagStart,b.tagEnd),h=""===g||"!"===g?e:as(g,a.tagHandlers);return{tagName:h,tag:function(a,b,c,d,e){let f=aw(b,c,d);if(f)return f;au(a,`unknown ${e} tag !<${d}>`)}(a,c,d,h,f)}}function ay(a){return"mapping"===a.nodeKind}function az(a,b,c,d){for(let e of d.keys(c)){if(-1!==a.maxTotalMergeKeys&&++a.totalMergeKeys>a.maxTotalMergeKeys&&au(a,`merge keys exceeded maxTotalMergeKeys (${a.maxTotalMergeKeys})`),b.tag.has(b.value,e))continue;let f=b.tag.addPair(b.value,e,d.get(c,e));f&&au(a,f),(b.overridable??=new Set).add(e)}}function aA(a,b,c){let d=a.frames[a.frames.length-1];if("document"===d.kind)d.value=b,d.hasValue=!0;else if("sequence"===d.kind){d.merge&&!ay(c)&&au(a,"cannot merge mappings; the provided source object is unacceptable");let e=d.tag.addItem(d.value,b,d.index++);e&&au(a,e)}else if(d.hasKey){let f=d.key;d.key=void 0,d.hasKey=!1,function(a,b,c,d,f){if(a.position=b.keyPosition,c===e){var g=a,h=b,i=d,j=f;if(g.position=h.keyPosition,ay(j))az(g,h,i,j);else if("sequence"===j.nodeKind&&Array.isArray(i))for(let a of i)az(g,h,a,h.tag);else au(g,"cannot merge mappings; the provided source object is unacceptable");return}!a.json&&b.tag.has(b.value,c)&&!b.overridable?.has(c)&&au(a,"duplicated mapping key");let k=b.tag.addPair(b.value,c,d);k&&au(a,k),b.overridable?.delete(c)}(a,d,f,b,c)}else d.key=b,d.keyPosition=a.position,d.hasKey=!0}function aB(a,b,c,d,e){if(-1!==b.anchorStart){let f={value:c,tag:d,isValueFinal:e};return a.anchors.set(a.source.slice(b.anchorStart,b.anchorEnd),f),f}return null}var aC=Object.prototype.hasOwnProperty,aD=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,aE=/[,\[\]{}]/,aF=/^(?:!|!!|![0-9A-Za-z-]+!)$/,aG=String.raw`(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\-#;/?:@&=+$,_.!~*'()\[\]])`,aH=String.raw`(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\-#;/?:@&=+$.~*'()_])`,aI=RegExp(`^(?:${aG})*$`),aJ=RegExp(`^(?:${aH})+$`),aK=RegExp(`^(?:!(?:${aG})*|${aH}(?:${aG})*)$`),aL={filename:"",maxDepth:100};function aM(a,b,c,d,e,f,g){a.events.push({type:2,start:b,anchorStart:c,anchorEnd:d,tagStart:e,tagEnd:f,style:g})}function aN(a,b,c,d,e,f,g){a.events.push({type:3,start:b,anchorStart:c,anchorEnd:d,tagStart:e,tagEnd:f,style:g})}function aO(a,b){a.events.splice(b.eventsLength,0,{type:3,start:b.position,anchorStart:-1,anchorEnd:-1,tagStart:-1,tagEnd:-1,style:2})}function aP(a,b,c,d,e,f,g,h,i=1,j=-1,k=!1){a.events.push({type:4,valueStart:b,valueEnd:c,anchorStart:d,anchorEnd:e,tagStart:f,tagEnd:g,style:h,chomping:i,indent:j,fast:k})}function aQ(a){a.events.push({type:6})}function aR(a){aP(a,-1,-1,-1,-1,-1,-1,1)}function aS(){return{anchorStart:-1,anchorEnd:-1,tagStart:-1,tagEnd:-1}}function aT(a){return{position:a.position,line:a.line,lineStart:a.lineStart,lineIndent:a.lineIndent,firstTabInLine:a.firstTabInLine,eventsLength:a.events.length}}function aU(a,b){a.position=b.position,a.line=b.line,a.lineStart=b.lineStart,a.lineIndent=b.lineIndent,a.firstTabInLine=b.firstTabInLine,a.events.length=b.eventsLength}function aV(a,b){ak(a.input.slice(0,a.length),a.position,b,a.filename)}function aW(a){return 10===a||13===a}function aX(a){return 9===a||32===a}function aY(a){return aX(a)||aW(a)}function aZ(a){return 0===a||aY(a)}function a$(a){return 44===a||91===a||93===a||123===a||125===a}function a_(a){10===a.input.charCodeAt(a.position)?a.position++:(a.position++,10===a.input.charCodeAt(a.position)&&a.position++),a.line++,a.lineStart=a.position,a.lineIndent=0,a.firstTabInLine=-1}function a0(a,b){let c=0,d=a.input.charCodeAt(a.position),e=a.position===a.lineStart||aY(a.input.charCodeAt(a.position-1));for(;0!==d;){for(;aX(d);)e=!0,9===d&&-1===a.firstTabInLine&&(a.firstTabInLine=a.position),d=a.input.charCodeAt(++a.position);if(b&&e&&35===d)do d=a.input.charCodeAt(++a.position);while(!aW(d)&&0!==d);if(!aW(d))break;for(a_(a),c++,e=!0,d=a.input.charCodeAt(a.position);32===d;)a.lineIndent++,d=a.input.charCodeAt(++a.position)}return c}function a1(a,b=a.position){let c=a.input.charCodeAt(b);if((45===c||46===c)&&c===a.input.charCodeAt(b+1)&&c===a.input.charCodeAt(b+2)){let c=a.input.charCodeAt(b+3);return 0===c||aY(c)}return!1}function a2(a){let b=a.input.charCodeAt(a.position);for(;0!==b&&!aW(b);)b=a.input.charCodeAt(++a.position)}function a3(a,b,c){aD.test(a.input.slice(b,c))&&aV(a,"the stream contains non-printable characters")}function a4(a,b){a0(a,!1),a.lineIndent<b&&aV(a,"deficient indentation")}function a5(a,b){let c=a.line;a0(a,!0),(a.line>c&&a.lineIndent<b||-1!==a.firstTabInLine&&a.lineIndent<b)&&aV(a,"deficient indentation")}function a6(a,b,c){if(-1!==a.firstTabInLine||45!==a.input.charCodeAt(a.position)||!aZ(a.input.charCodeAt(a.position+1)))return!1;for(aM(a,a.position,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,1);45===a.input.charCodeAt(a.position)&&aZ(a.input.charCodeAt(a.position+1));){-1!==a.firstTabInLine&&(a.position=a.firstTabInLine,aV(a,"tab characters must not be used in indentation"));let c=a.line;a.position++;let d=a0(a,!0)>0;if(-1!==a.firstTabInLine&&45===a.input.charCodeAt(a.position)&&aZ(a.input.charCodeAt(a.position+1))&&aV(a,"bad indentation of a sequence entry"),d&&a.lineIndent<=b?aR(a):a8(a,b,3,!1,!0),a0(a,!0),a.lineIndent<b||a.position>=a.length)break;a.lineIndent>b&&aV(a,"bad indentation of a sequence entry"),a.line===c&&45===a.input.charCodeAt(a.position)&&aZ(a.input.charCodeAt(a.position+1))&&aV(a,"bad indentation of a sequence entry")}return aQ(a),!0}function a7(a,b,c,d){let e=!1,f=!1,g=!1,h=!1;if(-1!==a.firstTabInLine)return!1;let i=a.input.charCodeAt(a.position);for(;0!==i;){e||-1===a.firstTabInLine||(a.position=a.firstTabInLine,aV(a,"tab characters must not be used in indentation"));let j=a.input.charCodeAt(a.position+1),k=a.line;if((63===i||58===i)&&aZ(j))g||(aN(a,a.position,d.anchorStart,d.anchorEnd,d.tagStart,d.tagEnd,1),g=!0),63===i?(e&&aR(a),f=!0,e=!0):(e||(aR(a),f=!0),e=!1),a.position+=1,h=!0;else{e&&(aR(a),e=!1);let b=aT(a);if(!a8(a,c,2,!1,!0))break;if(a.line===k){for(i=a.input.charCodeAt(a.position);aX(i);)i=a.input.charCodeAt(++a.position);if(58===i){if(aZ(i=a.input.charCodeAt(++a.position))||aV(a,"a whitespace character is expected after the key-value separator within a block mapping"),!g){for(aU(a,b),aN(a,b.position,d.anchorStart,d.anchorEnd,d.tagStart,d.tagEnd,1),g=!0,a8(a,c,2,!1,!0),i=a.input.charCodeAt(a.position);aX(i);)i=a.input.charCodeAt(++a.position);a.position++}f=!0,e=!1,h=!1}else if(f)aV(a,"expected ':' after a mapping key");else{if(-1!==d.anchorStart||-1!==d.tagStart)return aU(a,b),!1;return!0}}else if(f)aV(a,"can not read a block mapping entry; a multiline key may not be an implicit key");else{if(-1!==d.anchorStart||-1!==d.tagStart)return aU(a,b),!1;return!0}}if(a8(a,b,4,!0,h)&&(h=!1),!e&&h&&(aR(a),h=!1),a0(a,!0),i=a.input.charCodeAt(a.position),(a.line===k||a.lineIndent>b)&&0!==i)aV(a,"bad indentation of a mapping entry");else if(a.lineIndent<b)break}return!!f&&(e&&aR(a),g&&aQ(a),!0)}function a8(a,b,c,d,e,f=!0){a.depth>=a.maxDepth&&aV(a,`nesting exceeded maxDepth (${a.maxDepth})`),a.depth++;let g=1,h=!1,i=!1,j=null,k=aS(),l=4===c||3===c,m=l,n=l;if(d&&a0(a,!0)&&(h=!0,g=a.lineIndent>b?1:a.lineIndent===b?0:-1),1===g)for(;;){let d=a.input.charCodeAt(a.position),e=aT(a);if(h&&1!==g&&(33===d||38===d))break;if(h&&n&&(-1!==k.tagStart||-1!==k.anchorStart)&&(33===d||38===d)){let c=aT(a),d=b+1;if(a7(a,a.position-a.lineStart,d,k)&&a.events[c.eventsLength]?.type===3)return a.depth--,!0;aU(a,c)}if(h&&(33===d&&-1!==k.tagStart||38===d&&-1!==k.anchorStart)||!function(a,b,c){let d;if(33!==a.input.charCodeAt(a.position))return!1;-1!==b.tagStart&&aV(a,"duplication of a tag property");let e=a.position,f=!1,g=!1,h="!",i=a.input.charCodeAt(++a.position);60===i?(f=!0,i=a.input.charCodeAt(++a.position)):33===i&&(g=!0,h="!!",i=a.input.charCodeAt(++a.position));let j=a.position;if(f){for(;0!==i&&62!==i;)i=a.input.charCodeAt(++a.position);62!==i&&aV(a,"unexpected end of the stream within a verbatim tag"),d=a.input.slice(j,a.position),a.position++}else{for(;0!==i&&!aY(i)&&!(c&&a$(i));)33===i&&(g?aV(a,"tag suffix cannot contain exclamation marks"):(h=a.input.slice(j-1,a.position+1),aF.test(h)||aV(a,"named tag handle cannot contain such characters"),g=!0,j=a.position+1)),i=a.input.charCodeAt(++a.position);d=a.input.slice(j,a.position),aE.test(d)&&aV(a,"tag suffix cannot contain flow indicator characters")}return!d||(f?aI.test(d):aJ.test(d))||aV(a,`tag name cannot contain such characters: ${d}`),f||"!"===h||"!!"===h||aC.call(a.tagHandlers,h)||aV(a,`undeclared tag handle "${h}"`),b.tagStart=e,b.tagEnd=a.position,!0}(a,k,1===c)&&!function(a,b){if(38!==a.input.charCodeAt(a.position))return!1;-1!==b.anchorStart&&aV(a,"duplication of an anchor property"),a.position++;let c=a.position;for(;0!==a.input.charCodeAt(a.position)&&!aY(a.input.charCodeAt(a.position))&&!a$(a.input.charCodeAt(a.position));)a.position++;return a.position===c&&aV(a,"name of an anchor node must contain at least one character"),b.anchorStart=c,b.anchorEnd=a.position,!0}(a,k))break;null===j&&(j=e),a0(a,!0)?(h=!0,m=n,g=a.lineIndent>b?1:a.lineIndent===b?0:-1):m=!1}if(m&&(m=h||e),1===g||4===c){let d=1===c||2===c?b:b+1,e=a.position-a.lineStart;if(1===g)if(m&&(a6(a,e,k)||a7(a,e,d,k))||function(a,b,c){let d=a.input.charCodeAt(a.position),e=123===d,f=a.position,g=!0;if(91!==d&&123!==d)return!1;let h=e?125:93;for(e?aN(a,f,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,2):aM(a,f,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,2),a.position++;0!==a.input.charCodeAt(a.position);){a5(a,b);let c=a.input.charCodeAt(a.position);if(c===h)return a.position++,aQ(a),!0;g?44===c&&aV(a,"expected the node content, but found ','"):aV(a,"missed comma between flow collection entries");let d=!1,f=!1;63===c&&aY(a.input.charCodeAt(a.position+1))&&(d=f=!0,a.position+=1,a5(a,b));let i=a.line,j=aT(a),k=a8(a,b,1,!1,!0);a5(a,b),c=a.input.charCodeAt(a.position),(e||f||a.line===i)&&58===c?(d=!0,a.position++,a5(a,b),e||aO(a,j),k||aR(a),a8(a,b,1,!1,!0)||aR(a),a5(a,b),e||aQ(a)):e&&d?(k||aR(a),aR(a)):e?aR(a):d&&(aO(a,j),k||aR(a),aR(a),aQ(a)),44===(c=a.input.charCodeAt(a.position))?(g=!0,a.position++):g=!1}aV(a,"unexpected end of the stream within a flow collection")}(a,d,k))i=!0;else{let b=a.input.charCodeAt(a.position);if(null!==j&&f&&n&&!m&&124!==b&&62!==b){let b=aT(a),c=j.position-j.lineStart;aU(a,j),a7(a,c,d,aS())&&a.events[b.eventsLength]?.type===3?i=!0:aU(a,b)}!i&&(l&&function(a,b,c){let d=a.input.charCodeAt(a.position),e=1,f=-1,g=!1;if(124!==d&&62!==d)return!1;for(a.position++;0!==a.input.charCodeAt(a.position);){let c=a.input.charCodeAt(a.position),d=c>=48&&c<=57?c-48:-1;if(43===c||45===c)1!==e&&aV(a,"repeat of a chomping mode identifier"),e=43===c?3:2,a.position++;else if(d>=0)0===d&&aV(a,"bad explicit indentation width of a block scalar; it cannot be less than one"),g&&aV(a,"repeat of an indentation width identifier"),f=b+d-1,g=!0,a.position++;else break}let h=!1;for(;aX(a.input.charCodeAt(a.position));)h=!0,a.position++;h&&35===a.input.charCodeAt(a.position)&&a2(a),aW(a.input.charCodeAt(a.position))?a_(a):0!==a.input.charCodeAt(a.position)&&aV(a,"a line break is expected");let i=g?f:-1,j=0,k=a.position,l=a.position;for(;0!==a.input.charCodeAt(a.position);){let c=a.position,d=0;for(;32===a.input.charCodeAt(c+d);)d++;let e=a.input.charCodeAt(c+d);if(0===e){i>=0?d>i&&(l=c+d):d>0&&(l=c+d);break}if(c===a.lineStart&&a1(a,c))break;if(!g&&-1===i&&aW(e)&&(j=Math.max(j,d)),g||-1!==i||aW(e)||(9===e&&d<b&&(a.position=c+d,aV(a,"tab characters must not be used in indentation")),d<j&&(a.position=c+d,aV(a,"bad indentation of a mapping entry"))),-1===i&&0!==e&&!aW(e)&&d<b){a.lineIndent=d,a.position=c+d;break}g||0===e||aW(e)||-1!==i||(i=d);let f=-1===i?b+1:i;if(0!==e&&!aW(e)&&d<f){a.lineIndent=d,a.position=c+d;break}a2(a),l=a.position,aW(a.input.charCodeAt(a.position))&&(a_(a),l=a.position)}return a3(a,k,l),aP(a,k,l,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,124===d?4:5,e,i),!0}(a,d,k)||function(a,b,c){if(39!==a.input.charCodeAt(a.position))return!1;a.position++;let d=a.position,e=!0;for(;0!==a.input.charCodeAt(a.position);){let f=a.input.charCodeAt(a.position);if(39===f){if(39===a.input.charCodeAt(a.position+1)){e=!1,a.position+=2;continue}let b=a.position;return a.position++,aP(a,d,b,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,2,1,-1,e),!0}aW(f)?(e=!1,a4(a,b)):a.position===a.lineStart&&a1(a)?aV(a,"unexpected end of the document within a single quoted scalar"):9!==f&&f<32?aV(a,"expected valid JSON character"):a.position++}aV(a,"unexpected end of the stream within a single quoted scalar")}(a,d,k)||function(a,b,c){if(34!==a.input.charCodeAt(a.position))return!1;a.position++;let d=a.position,e=!0;for(;0!==a.input.charCodeAt(a.position);){let f=a.input.charCodeAt(a.position);if(34===f){let b=a.position;return a.position++,aP(a,d,b,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,3,1,-1,e),!0}if(92===f){e=!1;let c=a.input.charCodeAt(++a.position);if(aW(c))a4(a,b);else if(48===c||97===c||98===c||116===c||9===c||110===c||118===c||102===c||114===c||101===c||32===c||34===c||47===c||92===c||78===c||95===c||76===c||80===c)a.position++;else{let b=120===c?2:117===c?4:8*(85===c);for(0===b&&aV(a,"unknown escape sequence");b-- >0;)a.position++,0>function(a){if(a>=48&&a<=57)return a-48;let b=32|a;return b>=97&&b<=102?b-97+10:-1}(a.input.charCodeAt(a.position))&&aV(a,"expected hexadecimal character");a.position++}}else aW(f)?(e=!1,a4(a,b)):a.position===a.lineStart&&a1(a)?aV(a,"unexpected end of the document within a double quoted scalar"):9!==f&&f<32?aV(a,"expected valid JSON character"):a.position++}aV(a,"unexpected end of the stream within a double quoted scalar")}(a,d,k)||function(a,b){var c;if(42!==a.input.charCodeAt(a.position))return!1;(-1!==b.anchorStart||-1!==b.tagStart)&&aV(a,"alias node should not have any properties"),a.position++;let d=a.position;for(;0!==a.input.charCodeAt(a.position)&&!aY(a.input.charCodeAt(a.position))&&!a$(a.input.charCodeAt(a.position));)a.position++;return a.position===d&&aV(a,"name of an alias node must contain at least one character"),c=a.position,a.events.push({type:5,anchorStart:d,anchorEnd:c}),!0}(a,k)||function(a,b,c,d){if(!function(a,b){let c=a.input.charCodeAt(a.position),d=1===b;if(0===c||aY(c)||35===c||38===c||42===c||33===c||124===c||62===c||39===c||34===c||37===c||64===c||96===c||d&&a$(c))return!1;if(63===c||45===c){let b=a.input.charCodeAt(a.position+1);if(aZ(b)||d&&a$(b))return!1}return!0}(a,c))return!1;let e=a.position,f=a.position,g=a.input.charCodeAt(a.position),h=1===c,i=!1;for(;0!==g&&!(a.position===a.lineStart&&a1(a));){if(58===g){let b=a.input.charCodeAt(a.position+1);if(aZ(b)||h&&a$(b))break}else if(35===g){if(aY(a.input.charCodeAt(a.position-1)))break}else if(h&&a$(g))break;else if(aW(g)){let c=a.position,d=a.line,e=a.lineStart,f=a.lineIndent;if(a0(a,!1),a.lineIndent>=b){i=!0,g=a.input.charCodeAt(a.position);continue}a.position=c,a.line=d,a.lineStart=e,a.lineIndent=f;break}aX(g)||(f=a.position+1),g=a.input.charCodeAt(++a.position)}return f!==e&&(a3(a,e,f),aP(a,e,f,d.anchorStart,d.anchorEnd,d.tagStart,d.tagEnd,1,1,-1,!i),!0)}(a,d,c,k))&&(i=!0)}else 0===g&&(i=m&&a6(a,e,k))}return l=l&&!i,!i&&(-1!==k.anchorStart||-1!==k.tagStart||l)&&(aP(a,-1,-1,k.anchorStart,k.anchorEnd,k.tagStart,k.tagEnd,1),i=!0),a.depth--,i||-1!==k.anchorStart||-1!==k.tagStart}var a9={...aL,...at};function ba(a,b){let c=function(a,b={}){let c={...a9,...b},f=String(a),g=Object.keys(aL),h=Object.keys(at);return function(a,b){let c={...at,...b,events:a,documents:[],eventIndex:0,position:0,frames:[],anchors:new Map,tagHandlers:Object.create(null),totalMergeKeys:0,aliasCount:0};for(;c.eventIndex<c.events.length;){let a=c.events[c.eventIndex++];switch(c.position="tagStart"in a&&-1!==a.tagStart?a.tagStart:"anchorStart"in a&&-1!==a.anchorStart?a.anchorStart:"valueStart"in a&&-1!==a.valueStart?a.valueStart:"start"in a?a.start:0,a.type){case 1:for(let b of(c.anchors=new Map,c.aliasCount=0,c.tagHandlers=Object.create(null),a.directives))"tag"===b.kind&&(c.tagHandlers[b.handle]=b.prefix);c.frames.push({kind:"document",position:c.position,value:void 0,hasValue:!1});break;case 4:{let{value:b,tag:e}=function(a,b){let c=function(a,b){if(-1===b.valueStart)return"";let{valueStart:c,valueEnd:d}=b;if(b.fast)return a.slice(c,d);switch(b.style){case 2:return function(a,b,c){let d="",e=b,f=b,g=b;for(;e<c;){let b=a.charCodeAt(e);if(39===b)d+=a.slice(f,e)+"'",e+=2,f=g=e;else if(10===b||13===b){d+=a.slice(f,g);let b=ao(a,e,c);d+=ap(b.breaks),e=f=g=b.position}else e++,32!==b&&9!==b&&(g=e)}return d+a.slice(f,c)}(a,c,d);case 3:return function(a,b,c){let d="",e=b,f=b,g=b;for(;e<c;){let b=a.charCodeAt(e);if(92===b){d+=a.slice(f,e),e++;let b=a.charCodeAt(e);if(10===b||13===b)e=ao(a,e,c).position;else if(b<256&&am[b])d+=an[b],e++;else{var h,i;let c=120===b?2:117===b?4:8,f=0;for(;c>0;c--)e++,f=(f<<4)+((h=a.charCodeAt(e))>=48&&h<=57?h-48:(32|h)-97+10);d+=(i=f)<=65535?String.fromCharCode(i):String.fromCharCode((i-65536>>10)+55296,(i-65536&1023)+56320),e++}f=g=e}else if(10===b||13===b){d+=a.slice(f,g);let b=ao(a,e,c);d+=ap(b.breaks),e=f=g=b.position}else e++,32!==b&&9!==b&&(g=e)}return d+a.slice(f,c)}(a,c,d);case 4:return aq(a,c,d,b.indent,b.chomping,!1);case 5:return aq(a,c,d,b.indent,b.chomping,!0);default:return function(a,b,c){let d="",e=b,f=b,g=b;for(;e<c;){let b=a.charCodeAt(e);if(10===b||13===b){d+=a.slice(f,g);let b=ao(a,e,c);d+=ap(b.breaks),e=f=g=b.position}else e++,32!==b&&9!==b&&(g=e)}return d+a.slice(f,g)}(a,c,d)}}(a.source,b),e=-1===b.tagStart?"":a.source.slice(b.tagStart,b.tagEnd),f=a.schema.defaultScalarTag;if(""!==e){if("!"===e)return{value:c,tag:f};let b=as(e,a.tagHandlers),g=aw(a.schema.exact.scalar,a.schema.prefix.scalar,b);if(g){let e=g.resolve(c,!0,b);return e===d&&au(a,`cannot resolve a node with !<${b}> explicit tag`),{value:e,tag:g}}let h=aw(a.schema.exact.mapping,a.schema.prefix.mapping,b)??aw(a.schema.exact.sequence,a.schema.prefix.sequence,b);if(h){""!==c&&au(a,`cannot resolve a node with !<${b}> explicit tag`);let d=h.create(b);return{value:h.carrierIsResult?d:av(a,a.position,h,d),tag:h}}au(a,`unknown scalar tag !<${b}>`)}if(1===b.style)for(let b of a.schema.implicitScalarByFirstChar.get(c.charAt(0))??a.schema.implicitScalarAnyFirstChar){let a=b.resolve(c,!1,b.tagName);if(a!==d)return{value:a,tag:b}}return{value:f.resolve(c,!1,f.tagName),tag:f}}(c,a);aB(c,a,b,e,!0),aA(c,b,e);break}case 2:{let b=ax(c,a,c.schema.exact.sequence,c.schema.prefix.sequence,"tag:yaml.org,2002:seq","sequence"),d=b.tag.create(b.tagName),f=aB(c,a,d,b.tag,b.tag.carrierIsResult),g=c.frames[c.frames.length-1],h=void 0!==g&&"mapping"===g.kind&&g.hasKey&&g.key===e;c.frames.push({kind:"sequence",position:c.position,value:d,tag:b.tag,anchor:f,index:0,merge:h});break}case 3:{let b=ax(c,a,c.schema.exact.mapping,c.schema.prefix.mapping,"tag:yaml.org,2002:map","mapping"),d=b.tag.create(b.tagName),e=aB(c,a,d,b.tag,b.tag.carrierIsResult);c.frames.push({kind:"mapping",position:c.position,value:d,tag:b.tag,anchor:e,key:void 0,keyPosition:c.position,hasKey:!1,overridable:null});break}case 5:{-1!==c.maxAliases&&++c.aliasCount>c.maxAliases&&au(c,`aliases exceeded maxAliases (${c.maxAliases})`);let b=c.source.slice(a.anchorStart,a.anchorEnd),d=c.anchors.get(b);d||au(c,`unidentified alias "${b}"`),d.isValueFinal||au(c,`recursive alias "${b}" is not supported for tag ${d.tag.tagName} because it uses finalize()`),aA(c,d.value,d.tag);break}case 6:{let a=c.frames.pop();if("mapping"===a.kind&&a.hasKey&&(c.position=a.keyPosition,au(c,"incomplete mapping pair in event stream")),"document"===a.kind)c.documents.push(a.value);else{let b=a.tag.carrierIsResult?a.value:av(c,a.position,a.tag,a.value);a.anchor&&(a.anchor.value=b,a.anchor.isValueFinal=!0),aA(c,b,a.tag)}}}}return c.documents}(function(a,b){let c=a.length,d={...aL,...b,input:`${a}\0`,length:c,position:0,line:0,lineStart:0,lineIndent:0,firstTabInLine:-1,depth:0,directives:[],tagHandlers:Object.create(null),events:[]},e=a.indexOf("\0");for(-1!==e&&ak(a,e,"null byte is not allowed in input",d.filename),65279===d.input.charCodeAt(d.position)&&d.position++;d.position<d.length&&(a0(d,!0),!(d.position>=d.length));){let a=d.position;!function(a){var b;a.directives=[],a.tagHandlers=Object.create(null);let c=!1;for(a0(a,!0);function(a){if(a.lineIndent>0||37!==a.input.charCodeAt(a.position))return!1;a.position++;let b=a.position;for(;0!==a.input.charCodeAt(a.position)&&!aY(a.input.charCodeAt(a.position));)a.position++;let c=a.input.slice(b,a.position),d=[];for(0===c.length&&aV(a,"directive name must not be less than one character in length");0!==a.input.charCodeAt(a.position)&&!aW(a.input.charCodeAt(a.position));){for(;aX(a.input.charCodeAt(a.position));)a.position++;if(35===a.input.charCodeAt(a.position)||aW(a.input.charCodeAt(a.position))||0===a.input.charCodeAt(a.position))break;let b=a.position;for(;0!==a.input.charCodeAt(a.position)&&!aY(a.input.charCodeAt(a.position));)a.position++;d.push(a.input.slice(b,a.position))}if(aW(a.input.charCodeAt(a.position))&&a_(a),"YAML"===c){a.directives.some(a=>"yaml"===a.kind)&&aV(a,"duplication of %YAML directive"),1!==d.length&&aV(a,"YAML directive accepts exactly one argument");let b=/^([0-9]+)\.([0-9]+)$/.exec(d[0]);null===b&&aV(a,"ill-formed argument of the YAML directive"),1!==parseInt(b[1],10)&&aV(a,"unacceptable YAML version of the document"),a.directives.push({kind:"yaml",version:d[0]})}else if("TAG"===c){2!==d.length&&aV(a,"TAG directive accepts exactly two arguments");let[b,c]=d;aF.test(b)||aV(a,"ill-formed tag handle (first argument) of the TAG directive"),aC.call(a.tagHandlers,b)&&aV(a,`there is a previously declared suffix for "${b}" tag handle`),aK.test(c)||aV(a,"ill-formed tag prefix (second argument) of the TAG directive"),a.tagHandlers[b]=c,a.directives.push({kind:"tag",handle:b,prefix:c})}return!0}(a);)c=!0,a0(a,!0);let d=!1,e=!1,f=!0;if(0===a.lineIndent&&45===a.input.charCodeAt(a.position)&&45===a.input.charCodeAt(a.position+1)&&45===a.input.charCodeAt(a.position+2)&&aZ(a.input.charCodeAt(a.position+3))){d=!0;let b=a.line;a.position+=3,a0(a,!0),f=a.line>b}else c&&aV(a,"directives end mark is expected");let g=a.events.length;if(!d&&a.position===a.lineStart&&46===a.input.charCodeAt(a.position)&&a1(a)){a.position+=3,a0(a,!0);return}if(b=d,a.events.push({type:1,explicitStart:b,explicitEnd:!1,directives:a.directives}),a8(a,a.lineIndent-1,4,!1,f,f)||aR(a),a0(a,!0),a.position===a.lineStart&&a1(a)&&(e=46===a.input.charCodeAt(a.position))){let b=a.line;a.position+=3,a0(a,!0),a.line===b&&a.position<a.length&&aV(a,"end of the stream or a document separator is expected")}let h=a.events[g];h?.type===1&&(h.explicitEnd=e),aQ(a),e||!(a.position<a.length)||a.position===a.lineStart&&a1(a)||aV(a,"end of the stream or a document separator is expected")}(d),d.position===a&&aV(d,"can not read a document")}return d.events}(f,X(c,g)),{...X(c,h),source:f})}(a,b);if(0===c.length)throw new aj("expected a document, but the input is empty");if(1===c.length)return c[0];throw new aj("expected a single document in the stream, but found more")}Symbol("INVALID"),Symbol("visit:break"),Symbol("visit:skip");var bb={};bb[0]="\\0",bb[7]="\\a",bb[8]="\\b",bb[9]="\\t",bb[10]="\\n",bb[11]="\\v",bb[12]="\\f",bb[13]="\\r",bb[27]="\\e",bb[34]='\\"',bb[92]="\\\\",bb[133]="\\N",bb[160]="\\_",bb[8232]="\\L",bb[8233]="\\P",ad.withTags({...E,resolve:(a,b,c)=>{let e=E.resolve(a,b,c);return e===d?z.resolve(a,b,c):e}},{...N,resolve:(a,b,c)=>{let e=N.resolve(a,b,c);return e===d?H.resolve(a,b,c):e}})},83739:(a,b,c)=>{"use strict";c.d(b,{o:()=>h,x:()=>i});var d=c(29021),e=c(33873),f=c.n(e),g=c(15011);function h(a,b){for(let c of b){let b=(0,g.uK)(a)||(0,g.uK)(c),d=b?f().win32:f(),e=b?"\\":f().sep,h=d.resolve(a),i=d.resolve(c),j=b?h.toLowerCase():h,k=b?i.toLowerCase():i,l=k.endsWith(e)?k:k+e;if(j===k||j.startsWith(l))return!0}return!1}function i(a,b){let c;try{c=(0,d.realpathSync)(a)}catch{return!1}let e=new Set;for(let a of b)try{e.add((0,d.realpathSync)(a))}catch{}return h(c,e)}},84851:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{s:()=>t});var e=c(75430),f=c(8084),g=c(41035),h=c(35015),i=c(16983),j=c(15253),k=c(5564),l=c(70274),m=c(55950),n=c(88002),o=c(77598),p=a([e,f,g,j,k,l]);[e,f,g,j,k,l]=p.then?(await p)():p;let u=new Set(["off","minimal","low","medium","high","xhigh","max"]);function q(){return globalThis.__piSubagentRuns||(globalThis.__piSubagentRuns=new Map),globalThis.__piSubagentRuns}function r(){return globalThis.__piSubagentQueue||(globalThis.__piSubagentQueue=new m.V),globalThis.__piSubagentQueue}async function s(a,b){if(b)try{await (0,n.IL)(a,b.path);return}catch(a){return`Worktree retained at ${b.path}: ${a instanceof Error?a.message:String(a)}`}}function t(a){async function b(b){let d;if(!(a.isBuiltInSubagentsEnabled??l.N)())throw Error("Pi Web built-in sub-agents are disabled");let e=b.parentContext.sessionManager.getSessionId(),f=await c(b.sessionId);if(!f)throw Error(`Subagent not found: ${b.sessionId}`);if(f.parentSessionId!==e)throw Error("Subagent does not belong to this parent session");if("running"===f.status||"queued"===f.status)throw Error("Subagent is already running");let h=a.getSession(e);if(!h?.isAlive())throw Error("Parent session is no longer available");let i=f.sessionPath||await a.resolveSessionPath(b.sessionId);if(!i)throw Error(`Subagent session file not found: ${b.sessionId}`);let j=a.getSession(b.sessionId);if(j?.isAlive()||(j=await a.reopenSession(b.sessionId,i)),!j.isAlive())throw Error("Subagent session is no longer available");if(j.isRunning())throw Error("Subagent is already running");let k=b.runInBackground??f.runInBackground,m={...f,parentToolCallId:b.parentToolCallId,task:b.task,description:b.description.trim()||f.description,runInBackground:k,status:"queued",completedAt:void 0,result:void 0,error:void 0},n=j.inner.sessionManager,o=new Promise(a=>{d=a}),p={run:m,completion:o,abortRequested:!1};q().set(b.sessionId,p),b.onUpdate?.(m),a.invalidateSessionList();let s=()=>{p.abortRequested=!0,"queued"===p.run.status?p.cancelQueued?.():j.inner.abort()};k||b.signal?.addEventListener("abort",s,{once:!0});let t=async()=>{let c;if(p.abortRequested){let a={...m,status:"aborted",completedAt:new Date().toISOString()};return n.appendCustomEntry(g.pv,{version:1,status:"aborted",completedAt:a.completedAt}),p.run=a,q().delete(b.sessionId),d(a),a}p.run={...p.run,status:"running"},n.appendCustomEntry(g.o2,{version:1,status:"running"}),b.onUpdate?.(p.run);try{await j.inner.prompt(b.task,{source:"rpc"});let a=j.inner.getLastAssistantText()?.trim();c={...m,status:p.abortRequested?"aborted":"completed",completedAt:new Date().toISOString(),...a?{result:a}:{}}}catch(a){c={...m,status:p.abortRequested||b.signal?.aborted?"aborted":"failed",completedAt:new Date().toISOString(),...!p.abortRequested&&!b.signal?.aborted?{error:a instanceof Error?a.message:String(a)}:{}}}finally{b.signal?.removeEventListener("abort",s)}return n.appendCustomEntry(g.pv,{version:1,status:c.status,completedAt:c.completedAt,...c.result?{result:c.result}:{},...c.error?{error:c.error}:{}}),p.run=c,b.onUpdate?.(c),q().delete(b.sessionId),a.invalidateSessionList(),c},u=r().enqueue(e,(0,l.hd)().maxConcurrent,t,c=>{"queued"===c&&n.appendCustomEntry(g.o2,{version:1,status:"queued"}),p.run={...p.run,status:c},b.onUpdate?.(p.run),a.invalidateSessionList()},()=>{if("queued"!==p.run.status)return;let c={...m,status:"aborted",completedAt:new Date().toISOString()};n.appendCustomEntry(g.pv,{version:1,status:"aborted",completedAt:c.completedAt}),p.run=c,b.onUpdate?.(c),q().delete(b.sessionId),a.invalidateSessionList(),d(c)});return p.cancelQueued=u.cancel,u.promise.then(d,a=>d({...m,status:"failed",completedAt:new Date().toISOString(),error:a instanceof Error?a.message:String(a)})),{run:p.run,completion:o}}async function c(b){let c=q().get(b);if(c)return c.run;let d=a.getSession(b);if(d?.isAlive()){let a=(0,g.$u)(d.inner.sessionManager.getEntries(),b,d.sessionFile);if(a&&d.isRunning())return{...a,status:"running"};if(a)return a}let f=await a.resolveSessionPath(b);if(!f)return null;let h=e.SessionManager.open(f);return(0,g.$u)(h.getEntries(),b,f)}async function d(b,c){let d=a.getSession(b);if(!d?.isAlive()||!d.isRunning())throw Error("Subagent is not running");if(!c.trim())throw Error("Steering message is required");await d.inner.steer(c.trim())}async function m(b){let c=a.getSession(b.parentSessionId);if(!c?.isAlive()){let d=await a.resolveSessionPath(b.parentSessionId);if(!d)throw Error(`Parent session not found: ${b.parentSessionId}`);c=await a.reopenSession(b.parentSessionId,d)}if(await c.waitUntilReady(),!c.isAlive())throw Error(`Parent session is no longer available: ${b.parentSessionId}`);await c.inner.sendCustomMessage({customType:"pi-web:subagent-notification",content:(0,f.J8)(b),display:!0,details:(0,f.o2)(b)},{deliverAs:"followUp",triggerTurn:!0})}async function p(b){let c=a.getSession(b),d=q().get(b);if(d?.run.status==="queued"){if(d.abortRequested=!0,!d.cancelQueued?.())throw Error("Subagent is no longer queued");return}if(!c?.isAlive()||!c.isRunning())throw Error("Subagent is not running");d&&(d.abortRequested=!0),await c.inner.abort()}return{extensionRuntime:{start:async function(b){let c;if(!(a.isBuiltInSubagentsEnabled??l.N)())throw Error("Pi Web built-in sub-agents are disabled");let d=b.parentContext.sessionManager.getSessionId(),f=a.getSession(d);if(!f?.isAlive())throw Error("Parent session is no longer available");if(!f.sessionFile)throw Error("Parent session must be persisted before starting a subagent");try{let m,p,t,v=(0,g.rh)(f.cwd,b.profile);if(!v)throw Error(`Unknown or disabled subagent profile: ${b.profile}`);let w=b.runInBackground??v.runInBackground,x="off"===v.isolation?void 0:b.isolation??v.isolation;"worktree"===x&&(c=await (0,n.l)(f.cwd,`pi-web-agent-${(0,o.randomUUID)()}`));let y=c?.path??f.cwd,z=b.inheritContext??v.inheritContext,A=b.maxTurns??v.maxTurns;if(void 0!==A&&(!Number.isFinite(A)||A<0))throw Error("max_turns must be a non-negative number");let B=A&&A>0?Math.floor(A):void 0,C=b.thinking??v.thinking??f.inner.agent.state?.thinkingLevel;if(C&&!u.has(C))throw Error(`Invalid subagent thinking level: ${C}`);let D=(0,e.getAgentDir)(),E=f.inner.modelRuntime,F=e.SettingsManager.create(y,D),G=z?`The following is the active conversation context from the parent session. Use it only as background for the delegated task:
39
- ${p=f.inner.sessionManager.buildSessionContext().messages,(t=JSON.stringify(p)).length<=5e4?t:`${t.slice(0,5e4)}
40
- [Parent context truncated]`}`:void 0,H=(0,i.vH)(f.cwd,b.inputFiles??[]),I=(0,h.r)({profileSystemPrompt:v.systemPrompt,tools:v.tools,loadSkills:v.loadSkills,loadExtensions:v.loadExtensions,promptMode:v.promptMode,task:(0,i.jN)(b.task,H),inheritedParentContext:G}),{chatOnly:J,appendSystemPrompt:K,delegatedTask:L}=I;J||(0,e.initTheme)();let M=await (0,e.createAgentSessionServices)({cwd:y,agentDir:D,modelRuntime:E,settingsManager:F,resourceLoaderOptions:{noExtensions:!v.loadExtensions,noSkills:!v.loadSkills,noPromptTemplates:!0,noThemes:!0,noContextFiles:!0,...J||void 0!==I.exactSystemPrompt?{systemPrompt:" ",systemPromptOverride:()=>void 0}:{},appendSystemPrompt:K},...v.loadExtensions||v.loadSkills?{resourceLoaderReloadOptions:(0,j.Fk)(y,D)}:{}}),N=v.loadExtensions?v.extensionTools?.length?(0,g.gY)(M.resourceLoader.getExtensions().extensions,v.extensionTools):M.resourceLoader.getExtensions().extensions.flatMap(a=>[...a.tools.keys()]):[],O=(0,k.wQ)((0,g.I6)(v.tools,N),F.getDefaultTools()),P=c?e.SessionManager.create(y,void 0,{parentSession:f.sessionFile}):e.SessionManager.create(f.cwd,void 0,{parentSession:f.sessionFile}),Q=new Date().toISOString(),R={version:1,parentSessionId:d,parentSessionPath:f.sessionFile,parentToolCallId:b.parentToolCallId,profile:v.name,description:b.description.trim()||v.displayName,task:b.task,runInBackground:w,createdAt:Q,resourceSnapshot:{version:1,appendSystemPrompt:[...K],tools:[...O],loadSkills:v.loadSkills,loadExtensions:v.loadExtensions,...void 0!==I.exactSystemPrompt?{exactSystemPrompt:I.exactSystemPrompt}:{}},...c?{worktreePath:c.path,worktreeBranch:c.branch}:{}};P.appendCustomEntry(g.tP,R),P.appendSessionInfo(R.description);let S=function(a,b){if(!b?.trim())return;let c=b.trim(),d=c.indexOf("/");if(d>0){let b=c.slice(0,d),e=c.slice(d+1),f=a.getModel(b,e);if(!f)throw Error(`Subagent model not found: ${c}`);return f}let e=a.getModels().filter(a=>a.id===c);if(1===e.length)return e[0];if(0===e.length)throw Error(`Subagent model not found: ${c}`);throw Error(`Subagent model is ambiguous; use provider/modelId: ${c}`)}(E,b.model??v.model),T=f.inner.model,{session:U}=await (0,e.createAgentSessionFromServices)({services:M,sessionManager:P,model:S??T,...C?{thinkingLevel:C}:{},tools:O,excludeTools:[...g.st]});a.registerSession(U,{...void 0!==I.exactSystemPrompt?{exactSystemPrompt:I.exactSystemPrompt}:{},chatOnly:J});let V={sessionId:U.sessionId,sessionPath:U.sessionFile??P.getSessionFile()??"",parentSessionId:d,parentToolCallId:b.parentToolCallId,profile:v.name,description:R.description,task:b.task,runInBackground:w,status:"queued",createdAt:Q,...c?{worktreePath:c.path,worktreeBranch:c.branch}:{}},W=0,X=!1,Y=!1,Z=B?U.subscribe(a=>{"turn_end"===a.type&&(W+=1,!Y&&W>=B?(Y=!0,U.steer("You have reached your turn limit. Wrap up immediately and provide your final answer now.")):Y&&W>=B+1&&(X=!0,U.abort()))}):()=>{},$=new Promise(a=>{m=a}),_={run:V,completion:$,abortRequested:!1};q().set(V.sessionId,_),b.onUpdate?.(V),a.invalidateSessionList();let aa=()=>{_.abortRequested=!0,"queued"===_.run.status?_.cancelQueued?.():U.abort()};w||b.signal?.addEventListener("abort",aa,{once:!0});let ab=async()=>{let d;if(_.abortRequested){let d={...V,status:"aborted",completedAt:new Date().toISOString()};return P.appendCustomEntry(g.pv,{version:1,status:"aborted",completedAt:d.completedAt}),await s(f.cwd,c),_.run=d,b.onUpdate?.(d),q().delete(V.sessionId),a.invalidateSessionList(),d}_.run={..._.run,status:"running"},P.appendCustomEntry(g.o2,{version:1,status:"running"}),b.onUpdate?.(_.run),a.invalidateSessionList();try{await U.prompt(L,{source:"rpc",...J?{preflightResult:a=>{a&&U.agent.state&&(U.agent.state.systemPrompt=v.systemPrompt)}}:{}});let a=U.getLastAssistantText()?.trim(),b=_.abortRequested&&!X;d={...V,status:b?"aborted":"completed",completedAt:new Date().toISOString(),...a?{result:a}:{}}}catch(e){let a=U.getLastAssistantText()?.trim(),c=_.abortRequested||b.signal?.aborted;d={...V,status:c?"aborted":X?"completed":"failed",completedAt:new Date().toISOString(),...a?{result:a}:{},...!c&&!X?{error:e instanceof Error?e.message:String(e)}:{}}}finally{Z(),b.signal?.removeEventListener("abort",aa)}let e=await s(f.cwd,c);e&&(d={...d,worktreeCleanupError:e});let h={version:1,status:d.status,completedAt:d.completedAt,...d.result?{result:d.result}:{},...d.error?{error:d.error}:{},...d.worktreeCleanupError?{worktreeCleanupError:d.worktreeCleanupError}:{}};return P.appendCustomEntry(g.pv,h),_.run=d,b.onUpdate?.(d),q().delete(V.sessionId),a.invalidateSessionList(),d},ac=async()=>{if("queued"!==_.run.status)return;let d={...V,status:"aborted",completedAt:new Date().toISOString()},e=await s(f.cwd,c),h=e?{...d,worktreeCleanupError:e}:d;P.appendCustomEntry(g.pv,{version:1,status:"aborted",completedAt:h.completedAt,...e?{worktreeCleanupError:e}:{}}),_.run=h,b.onUpdate?.(h),q().delete(V.sessionId),a.invalidateSessionList(),m(h)},ad=r().enqueue(d,(0,l.hd)().maxConcurrent,ab,c=>{"queued"===c&&P.appendCustomEntry(g.o2,{version:1,status:"queued"}),b.onUpdate?.({..._.run,status:c}),_.run={..._.run,status:c},a.invalidateSessionList()},ac);return _.cancelQueued=ad.cancel,ad.promise.then(m,a=>{m({...V,status:"failed",completedAt:new Date().toISOString(),error:a instanceof Error?a.message:String(a)})}),{run:_.run,completion:_.completion}}catch(a){if(c)try{await (0,n.IL)(f.cwd,c.path)}catch{}throw a}},resume:b,get:c,steer:d,notifyParent:m},get:c,steer:d,abort:p}}d()}catch(a){d(a)}})},87509:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{U:()=>j});var e=c(28802),f=c(45399),g=c(77605),h=a([e]);function i(){return{currentTurn:0,lastTodoToolUseTurn:0}}e=(h.then?(await h)():h)[0];let k=f.ZUJ.Object({action:f.ZUJ.Union([f.ZUJ.Literal("list"),f.ZUJ.Literal("add"),f.ZUJ.Literal("update"),f.ZUJ.Literal("delete")],{description:"list | add | update | delete"}),text:f.ZUJ.Optional(f.ZUJ.String({description:"新文本,仅 update 使用(trim 后不可为空)"})),texts:f.ZUJ.Optional(f.ZUJ.Array(f.ZUJ.String(),{description:"待添加的 todo 文本数组(仅 add 使用)"})),id:f.ZUJ.Optional(f.ZUJ.Number({description:"要更新的 todo id"})),ids:f.ZUJ.Optional(f.ZUJ.Array(f.ZUJ.Number(),{description:"要删除的 todo id 数组"})),status:f.ZUJ.Optional((0,e.StringEnum)(g.cn,{description:"pending | in_progress | completed"})),updates:f.ZUJ.Optional(f.ZUJ.Array(f.ZUJ.Object({id:f.ZUJ.Number({description:"要更新的 todo id"}),status:f.ZUJ.Optional((0,e.StringEnum)(g.cn)),text:f.ZUJ.Optional(f.ZUJ.String({description:"新文本(trim 后不可为空)"}))},{additionalProperties:!1}),{description:"批量更新数组(优先于单条 id/status/text)"}))},{additionalProperties:!1});function j(){return{name:"pi-web-todo",hidden:!0,factory:a=>{let b={todos:[],nextId:1},c=i(),d=()=>{a.appendEntry(g.sT,{todos:b.todos,nextId:b.nextId})},e=a=>{let d=a.sessionManager.getBranch();for(let a of(b.todos=[],b.nextId=1,Object.assign(c,i()),d)){if("custom"!==a.type||a.customType!==g.sT)continue;let c=(0,g.aO)(a.data);c&&(b.todos=c.todos,b.nextId=c.nextId)}c.currentTurn=function(a){let b=0;for(let c of a){if("custom"===c.type&&c.customType===g.sT){b=0;continue}c.message?.role==="assistant"&&b++}return b}(d)};a.on("session_start",async(a,b)=>e(b)),a.on("session_tree",async(a,b)=>e(b)),a.on("agent_end",async(a,c)=>{0===b.todos.length||(0,g.Ql)(b.todos)||function(a){let b,c=0,d=0;for(let e of a)"custom"===e.type&&e.customType===g.sT?(b=e.data,d=c):e.message?.role==="user"&&c++;let e=(0,g.aO)(b);return!(!e||0===e.todos.length||(0,g.Ql)(e.todos))&&c-d>=2}(c.sessionManager.getBranch())&&(b.todos=[],b.nextId=1,d())}),a.on("turn_start",async()=>{c.currentTurn++}),a.on("tool_result",async a=>{String(a.toolName??"")===g.Y0&&(c.lastTodoToolUseTurn=c.currentTurn)}),a.on("context",async a=>{if(!(0,g.Ql)(b.todos)||c.currentTurn-c.lastTodoToolUseTurn<4||(c.lastTodoToolUseTurn=c.currentTurn,0))return;let d=function(a){let b=a.filter(a=>"completed"!==a.status);if(0===b.length)return null;let c=b.filter(a=>"in_progress"===a.status),d=c.length>0?`#${c[0].id}("${c[0].content}")仍标记为 in_progress。这一步如果已经做完,立刻用 todo update 把它标成 completed,并在同一次调用里把下一项 pending 置为 in_progress,不要留下过期的 [~]。`:"还有 pending 项但没有任何 in_progress。准备继续动手前,先用 todo update 把其中一项置为 in_progress。";return["<system-reminder>","todo 工具已连续 4 轮没有被使用,但仍有未完成任务:","",...b.map(g.mU),"",d,"","只在与本轮工作相关时行动;这是一条温和提醒,不适用就忽略。绝不要向用户提及这条提醒,也不要为了回应它而新造任务。","</system-reminder>"].join("\n")}(b.todos);if(d)return{messages:[...a.messages,{role:"user",content:[{type:"text",text:d}],timestamp:Date.now()}]}}),a.registerTool({name:g.Y0,label:"Todo",description:"管理当前会话的 todo 列表。\n\n动作:\n- list: 查看全部 todo\n- add: 批量添加 todo(texts 数组)\n- update: 按 id 更新 todo——status 和/或 text;批量用 updates[]\n- delete: 按 id 删除 todo(ids 数组)\n\n规则:\n- 同一时间只有一个 todo 处于 in_progress\n- 完成一个 todo 立即标记 completed,不要攒到最后批量标记\n- 未真正完成不得标记 completed:被阻塞或测试失败时保持 in_progress",promptSnippet:"用 todo 跟踪多步骤工作;记得为验证步骤(测试、类型检查)单独建 todo。",promptGuidelines:["[Usage] 多步骤工作(3+步)时使用,AI 自发创建,无需用户触发","[验证任务] 为测试 / 类型检查等验证步骤单独建 todo,完成前确保验证通过","[批量优先] 完成多项任务时使用 updates[] 批量更新,减少工具调用次数","[自动闭合] 全部完成后自动清理,无需手动 delete","[Not for] 单步操作、简单对话"],executionMode:"sequential",parameters:k,async execute(a,c,e){if(e?.aborted)throw Error("Todo call aborted by signal.");let f=(0,g.xw)(c,b),h="list"!==f.action;h&&(b.todos=f.snapshot.todos,b.nextId=f.snapshot.nextId,d());let i=h?`${f.resultText}
41
- ${b.todos.map(a=>(0,g.mU)(a)).join("\n")||"No todos"}`:f.resultText;return{content:[{type:"text",text:i}],details:{action:f.action,todos:[...b.todos],nextId:b.nextId}}}})}}}d()}catch(a){d(a)}})},88250:(a,b,c)=>{"use strict";function d(){let a=(globalThis.__piModelsCacheState||(globalThis.__piModelsCacheState={entries:new Map,inFlight:new Map,generation:0}),globalThis.__piModelsCacheState);a.generation+=1,a.entries.clear(),a.inFlight.clear()}c.d(b,{kn:()=>d})},92759:a=>{function b(a,b){"boolean"==typeof b&&(b={forever:b}),this._originalTimeouts=JSON.parse(JSON.stringify(a)),this._timeouts=a,this._options=b||{},this._maxRetryTime=b&&b.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}a.exports=b,b.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts},b.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null},b.prototype.retry=function(a){if(this._timeout&&clearTimeout(this._timeout),!a)return!1;var b=new Date().getTime();if(a&&b-this._operationStart>=this._maxRetryTime)return this._errors.unshift(Error("RetryOperation timeout occurred")),!1;this._errors.push(a);var c=this._timeouts.shift();if(void 0===c)if(!this._cachedTimeouts)return!1;else this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),c=this._timeouts.shift();var d=this,e=setTimeout(function(){d._attempts++,d._operationTimeoutCb&&(d._timeout=setTimeout(function(){d._operationTimeoutCb(d._attempts)},d._operationTimeout),d._options.unref&&d._timeout.unref()),d._fn(d._attempts)},c);return this._options.unref&&e.unref(),!0},b.prototype.attempt=function(a,b){this._fn=a,b&&(b.timeout&&(this._operationTimeout=b.timeout),b.cb&&(this._operationTimeoutCb=b.cb));var c=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){c._operationTimeoutCb()},c._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)},b.prototype.try=function(a){console.log("Using RetryOperation.try() is deprecated"),this.attempt(a)},b.prototype.start=function(a){console.log("Using RetryOperation.start() is deprecated"),this.attempt(a)},b.prototype.start=b.prototype.try,b.prototype.errors=function(){return this._errors},b.prototype.attempts=function(){return this._attempts},b.prototype.mainError=function(){if(0===this._errors.length)return null;for(var a={},b=null,c=0,d=0;d<this._errors.length;d++){var e=this._errors[d],f=e.message,g=(a[f]||0)+1;a[f]=g,g>=c&&(b=e,c=g)}return b}},93329:(a,b,c)=>{var d,e,f,g=c(29021),h=c(39466),i=c(18827),j=c(12817),k=c(28354);function l(a,b){Object.defineProperty(a,d,{get:function(){return b}})}"function"==typeof Symbol&&"function"==typeof Symbol.for?(d=Symbol.for("graceful-fs.queue"),e=Symbol.for("graceful-fs.previous")):(d="___graceful-fs.queue",e="___graceful-fs.previous");var m=function(){};function n(a){h(a),a.gracefulify=n,a.createReadStream=function(b,c){return new a.ReadStream(b,c)},a.createWriteStream=function(b,c){return new a.WriteStream(b,c)};var b=a.readFile;a.readFile=function(a,c,d){return"function"==typeof c&&(d=c,c=null),function a(c,d,e,f){return b(c,d,function(b){b&&("EMFILE"===b.code||"ENFILE"===b.code)?o([a,[c,d,e],b,f||Date.now(),Date.now()]):"function"==typeof e&&e.apply(this,arguments)})}(a,c,d)};var c=a.writeFile;a.writeFile=function(a,b,d,e){return"function"==typeof d&&(e=d,d=null),function a(b,d,e,f,g){return c(b,d,e,function(c){c&&("EMFILE"===c.code||"ENFILE"===c.code)?o([a,[b,d,e,f],c,g||Date.now(),Date.now()]):"function"==typeof f&&f.apply(this,arguments)})}(a,b,d,e)};var d=a.appendFile;d&&(a.appendFile=function(a,b,c,e){return"function"==typeof c&&(e=c,c=null),function a(b,c,e,f,g){return d(b,c,e,function(d){d&&("EMFILE"===d.code||"ENFILE"===d.code)?o([a,[b,c,e,f],d,g||Date.now(),Date.now()]):"function"==typeof f&&f.apply(this,arguments)})}(a,b,c,e)});var e=a.copyFile;e&&(a.copyFile=function(a,b,c,d){return"function"==typeof c&&(d=c,c=0),function a(b,c,d,f,g){return e(b,c,d,function(e){e&&("EMFILE"===e.code||"ENFILE"===e.code)?o([a,[b,c,d,f],e,g||Date.now(),Date.now()]):"function"==typeof f&&f.apply(this,arguments)})}(a,b,c,d)});var f=a.readdir;a.readdir=function(a,b,c){"function"==typeof b&&(c=b,b=null);var d=g.test(process.version)?function(a,b,c,d){return f(a,e(a,b,c,d))}:function(a,b,c,d){return f(a,b,e(a,b,c,d))};return d(a,b,c);function e(a,b,c,e){return function(f,g){f&&("EMFILE"===f.code||"ENFILE"===f.code)?o([d,[a,b,c],f,e||Date.now(),Date.now()]):(g&&g.sort&&g.sort(),"function"==typeof c&&c.call(this,f,g))}}};var g=/^v[0-5]\./;if("v0.8"===process.version.substr(0,4)){var j=i(a);q=j.ReadStream,r=j.WriteStream}var k=a.ReadStream;k&&(q.prototype=Object.create(k.prototype),q.prototype.open=function(){var a=this;t(a.path,a.flags,a.mode,function(b,c){b?(a.autoClose&&a.destroy(),a.emit("error",b)):(a.fd=c,a.emit("open",c),a.read())})});var l=a.WriteStream;l&&(r.prototype=Object.create(l.prototype),r.prototype.open=function(){var a=this;t(a.path,a.flags,a.mode,function(b,c){b?(a.destroy(),a.emit("error",b)):(a.fd=c,a.emit("open",c))})}),Object.defineProperty(a,"ReadStream",{get:function(){return q},set:function(a){q=a},enumerable:!0,configurable:!0}),Object.defineProperty(a,"WriteStream",{get:function(){return r},set:function(a){r=a},enumerable:!0,configurable:!0});var m=q;Object.defineProperty(a,"FileReadStream",{get:function(){return m},set:function(a){m=a},enumerable:!0,configurable:!0});var p=r;function q(a,b){return this instanceof q?(k.apply(this,arguments),this):q.apply(Object.create(q.prototype),arguments)}function r(a,b){return this instanceof r?(l.apply(this,arguments),this):r.apply(Object.create(r.prototype),arguments)}Object.defineProperty(a,"FileWriteStream",{get:function(){return p},set:function(a){p=a},enumerable:!0,configurable:!0});var s=a.open;function t(a,b,c,d){return"function"==typeof c&&(d=c,c=null),function a(b,c,d,e,f){return s(b,c,d,function(g,h){g&&("EMFILE"===g.code||"ENFILE"===g.code)?o([a,[b,c,d,e],g,f||Date.now(),Date.now()]):"function"==typeof e&&e.apply(this,arguments)})}(a,b,c,d)}return a.open=t,a}function o(a){m("ENQUEUE",a[0].name,a[1]),g[d].push(a),q()}function p(){for(var a=Date.now(),b=0;b<g[d].length;++b)g[d][b].length>2&&(g[d][b][3]=a,g[d][b][4]=a);q()}function q(){if(clearTimeout(f),f=void 0,0!==g[d].length){var a=g[d].shift(),b=a[0],c=a[1],e=a[2],h=a[3],i=a[4];if(void 0===h)m("RETRY",b.name,c),b.apply(null,c);else if(Date.now()-h>=6e4){m("TIMEOUT",b.name,c);var j=c.pop();"function"==typeof j&&j.call(null,e)}else Date.now()-i>=Math.min(1.2*Math.max(i-h,1),100)?(m("RETRY",b.name,c),b.apply(null,c.concat([h]))):g[d].push(a);void 0===f&&(f=setTimeout(q,0))}}k.debuglog?m=k.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(m=function(){var a=k.format.apply(k,arguments);console.error(a="GFS4: "+a.split(/\n/).join("\nGFS4: "))}),!g[d]&&(l(g,global[d]||[]),g.close=function(a){function b(b,c){return a.call(g,b,function(a){a||p(),"function"==typeof c&&c.apply(this,arguments)})}return Object.defineProperty(b,e,{value:a}),b}(g.close),g.closeSync=function(a){function b(b){a.apply(g,arguments),p()}return Object.defineProperty(b,e,{value:a}),b}(g.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){m(g[d]),c(12412).equal(g[d].length,0)})),global[d]||l(global,g[d]),a.exports=n(j(g)),process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!g.__patched&&(a.exports=n(g),g.__patched=!0)},96515:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{I:()=>j,p:()=>i});var e=c(75430),f=a([e]);e=(f.then?(await f)():f)[0];let k=new Set(["off","minimal","low","medium","high","xhigh","max"]);function g(a,b){return a.provider===b.provider&&a.id===b.modelId}function h(a,b){let c=a.toLowerCase(),d=b.filter(a=>`${a.provider}/${a.id}`.toLowerCase()===c);return d.length>0?d:b.filter(a=>a.id.toLowerCase()===c)}async function i(a,b){let c=(b??[]).map(a=>a.trim()).filter(Boolean);if(0===c.length)return{visible:await a.getAvailable(),scopedModels:[],thinkingLevelPins:{},warnings:[]};let d=await a.getAvailable();!function(a,b){for(let c of a){if(c.includes("*")||c.includes("?")||c.includes("["))continue;let a=h(c,b);if(0===a.length){let d=c.lastIndexOf(":"),e=d>=0?c.slice(d+1):"";k.has(e)&&(a=h(c.slice(0,d),b))}if(a.length>1){let b=a.map(a=>`${a.provider}/${a.id}`).sort().join(", ");throw Error(`Ambiguous enabledModels entry "${c}" matches multiple models: ${b}. Use provider/modelId.`)}}}(c,d);let{scopedModels:f,diagnostics:g}=await (0,e.resolveModelScopeWithDiagnostics)(c,{getAvailable:async()=>d}),i=g.map(a=>a.message);if(0===f.length)return{visible:d,scopedModels:[],thinkingLevelPins:{},warnings:i};let j={};for(let a of f)a.thinkingLevel&&(j[`${a.model.provider}/${a.model.id}`]=a.thinkingLevel);return{visible:f.map(a=>a.model),scopedModels:f,thinkingLevelPins:j,warnings:i}}function j(a,b={}){let c=b.requestedModel,d=b.defaultModel,e=c?a.visible.find(a=>g(a,c)):void 0;if(c&&!e)throw Error(`Model is not available in the enabled scope: ${c.provider}/${c.modelId}`);let f=e?a.scopedModels.find(a=>a.model===e||g(a.model,{provider:e.provider,modelId:e.id})):void 0,h=!e&&d?a.scopedModels.find(a=>g(a.model,d)):void 0,i=e?void 0:h??a.scopedModels[0],k=e||i||!d?void 0:a.visible.find(a=>g(a,d)),l=e??i?.model??k,m=f??i,n=b.thinkingLevel??m?.thinkingLevel;return{...l?{model:l}:{},...n?{thinkingLevel:n}:{},scopedModels:[...a.scopedModels]}}d()}catch(a){d(a)}})}};
38
+ `}return h.replace(/\n$/,"")}(g),new aj(c,g)}function al(a){switch(a){case 48:return"\0";case 97:return"\x07";case 98:return"\b";case 116:case 9:return" ";case 110:return"\n";case 118:return"\v";case 102:return"\f";case 114:return"\r";case 101:return"\x1b";case 32:return" ";case 34:return'"';case 47:return"/";case 92:return"\\";case 78:return"\x85";case 95:return"\xa0";case 76:return"\u2028";case 80:return"\u2029";default:return""}}var am=Array(256),an=Array(256);for(let a=0;a<256;a++)am[a]=+!!al(a),an[a]=al(a);function ao(a,b,c){let d=0;for(;b<c;){let c=a.charCodeAt(b);if(10===c)d++,b++;else if(13===c)d++,b++,10===a.charCodeAt(b)&&b++;else if(32===c||9===c)b++;else break}return{position:b,breaks:d}}function ap(a){return 1===a?" ":"\n".repeat(a-1)}function aq(a,b,c,d,e,f){let g=d<0?0:d,h=a.slice(b,c).replace(/\r\n?/g,"\n"),i=""===h?[]:(h.endsWith("\n")?h.slice(0,-1):h).split("\n"),j="",k=!1,l=0,m=!1;for(let a of i){let b=0;for(;b<g&&32===a.charCodeAt(b);)b++;if(d<0||b>=a.length){l++;continue}let c=a.slice(g),e=c.charCodeAt(0);f?32===e||9===e?(m=!0,j+="\n".repeat(k?1+l:l)):m?(m=!1,j+="\n".repeat(l+1)):0===l?k&&(j+=" "):j+="\n".repeat(l):j+="\n".repeat(k?1+l:l),j+=c,k=!0,l=0}return 3===e?j+="\n".repeat(k?1+l:l):2!==e&&k&&(j+="\n"),j}var ar=Object.assign(Object.create(null),{"!":"!","!!":"tag:yaml.org,2002:"});function as(a,b){if(a.startsWith("!<")&&a.endsWith(">"))return decodeURIComponent(a.slice(2,-1));let c=a.indexOf("!",1),d=-1===c?"!":a.slice(0,c+1);return decodeURIComponent(b?.[d]??ar[d]??d)+decodeURIComponent(a.slice(d.length))}var at={filename:"",schema:ac,json:!1,maxTotalMergeKeys:1e4,maxAliases:-1};function au(a,b){ak(a.source,a.position,b,a.filename)}function av(a,b,c,d){try{return c.finalize(d)}catch(c){if(c instanceof aj)throw c;ak(a.source,b,c instanceof Error?c.message:String(c),a.filename)}}function aw(a,b,c){let d=a[c];if(d)return d;for(let a of b)if(c.startsWith(a.tagName))return a}function ax(a,b,c,d,e,f){let g=-1===b.tagStart?"":a.source.slice(b.tagStart,b.tagEnd),h=""===g||"!"===g?e:as(g,a.tagHandlers);return{tagName:h,tag:function(a,b,c,d,e){let f=aw(b,c,d);if(f)return f;au(a,`unknown ${e} tag !<${d}>`)}(a,c,d,h,f)}}function ay(a){return"mapping"===a.nodeKind}function az(a,b,c,d){for(let e of d.keys(c)){if(-1!==a.maxTotalMergeKeys&&++a.totalMergeKeys>a.maxTotalMergeKeys&&au(a,`merge keys exceeded maxTotalMergeKeys (${a.maxTotalMergeKeys})`),b.tag.has(b.value,e))continue;let f=b.tag.addPair(b.value,e,d.get(c,e));f&&au(a,f),(b.overridable??=new Set).add(e)}}function aA(a,b,c){let d=a.frames[a.frames.length-1];if("document"===d.kind)d.value=b,d.hasValue=!0;else if("sequence"===d.kind){d.merge&&!ay(c)&&au(a,"cannot merge mappings; the provided source object is unacceptable");let e=d.tag.addItem(d.value,b,d.index++);e&&au(a,e)}else if(d.hasKey){let f=d.key;d.key=void 0,d.hasKey=!1,function(a,b,c,d,f){if(a.position=b.keyPosition,c===e){var g=a,h=b,i=d,j=f;if(g.position=h.keyPosition,ay(j))az(g,h,i,j);else if("sequence"===j.nodeKind&&Array.isArray(i))for(let a of i)az(g,h,a,h.tag);else au(g,"cannot merge mappings; the provided source object is unacceptable");return}!a.json&&b.tag.has(b.value,c)&&!b.overridable?.has(c)&&au(a,"duplicated mapping key");let k=b.tag.addPair(b.value,c,d);k&&au(a,k),b.overridable?.delete(c)}(a,d,f,b,c)}else d.key=b,d.keyPosition=a.position,d.hasKey=!0}function aB(a,b,c,d,e){if(-1!==b.anchorStart){let f={value:c,tag:d,isValueFinal:e};return a.anchors.set(a.source.slice(b.anchorStart,b.anchorEnd),f),f}return null}var aC=Object.prototype.hasOwnProperty,aD=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,aE=/[,\[\]{}]/,aF=/^(?:!|!!|![0-9A-Za-z-]+!)$/,aG=String.raw`(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\-#;/?:@&=+$,_.!~*'()\[\]])`,aH=String.raw`(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\-#;/?:@&=+$.~*'()_])`,aI=RegExp(`^(?:${aG})*$`),aJ=RegExp(`^(?:${aH})+$`),aK=RegExp(`^(?:!(?:${aG})*|${aH}(?:${aG})*)$`),aL={filename:"",maxDepth:100};function aM(a,b,c,d,e,f,g){a.events.push({type:2,start:b,anchorStart:c,anchorEnd:d,tagStart:e,tagEnd:f,style:g})}function aN(a,b,c,d,e,f,g){a.events.push({type:3,start:b,anchorStart:c,anchorEnd:d,tagStart:e,tagEnd:f,style:g})}function aO(a,b){a.events.splice(b.eventsLength,0,{type:3,start:b.position,anchorStart:-1,anchorEnd:-1,tagStart:-1,tagEnd:-1,style:2})}function aP(a,b,c,d,e,f,g,h,i=1,j=-1,k=!1){a.events.push({type:4,valueStart:b,valueEnd:c,anchorStart:d,anchorEnd:e,tagStart:f,tagEnd:g,style:h,chomping:i,indent:j,fast:k})}function aQ(a){a.events.push({type:6})}function aR(a){aP(a,-1,-1,-1,-1,-1,-1,1)}function aS(){return{anchorStart:-1,anchorEnd:-1,tagStart:-1,tagEnd:-1}}function aT(a){return{position:a.position,line:a.line,lineStart:a.lineStart,lineIndent:a.lineIndent,firstTabInLine:a.firstTabInLine,eventsLength:a.events.length}}function aU(a,b){a.position=b.position,a.line=b.line,a.lineStart=b.lineStart,a.lineIndent=b.lineIndent,a.firstTabInLine=b.firstTabInLine,a.events.length=b.eventsLength}function aV(a,b){ak(a.input.slice(0,a.length),a.position,b,a.filename)}function aW(a){return 10===a||13===a}function aX(a){return 9===a||32===a}function aY(a){return aX(a)||aW(a)}function aZ(a){return 0===a||aY(a)}function a$(a){return 44===a||91===a||93===a||123===a||125===a}function a_(a){10===a.input.charCodeAt(a.position)?a.position++:(a.position++,10===a.input.charCodeAt(a.position)&&a.position++),a.line++,a.lineStart=a.position,a.lineIndent=0,a.firstTabInLine=-1}function a0(a,b){let c=0,d=a.input.charCodeAt(a.position),e=a.position===a.lineStart||aY(a.input.charCodeAt(a.position-1));for(;0!==d;){for(;aX(d);)e=!0,9===d&&-1===a.firstTabInLine&&(a.firstTabInLine=a.position),d=a.input.charCodeAt(++a.position);if(b&&e&&35===d)do d=a.input.charCodeAt(++a.position);while(!aW(d)&&0!==d);if(!aW(d))break;for(a_(a),c++,e=!0,d=a.input.charCodeAt(a.position);32===d;)a.lineIndent++,d=a.input.charCodeAt(++a.position)}return c}function a1(a,b=a.position){let c=a.input.charCodeAt(b);if((45===c||46===c)&&c===a.input.charCodeAt(b+1)&&c===a.input.charCodeAt(b+2)){let c=a.input.charCodeAt(b+3);return 0===c||aY(c)}return!1}function a2(a){let b=a.input.charCodeAt(a.position);for(;0!==b&&!aW(b);)b=a.input.charCodeAt(++a.position)}function a3(a,b,c){aD.test(a.input.slice(b,c))&&aV(a,"the stream contains non-printable characters")}function a4(a,b){a0(a,!1),a.lineIndent<b&&aV(a,"deficient indentation")}function a5(a,b){let c=a.line;a0(a,!0),(a.line>c&&a.lineIndent<b||-1!==a.firstTabInLine&&a.lineIndent<b)&&aV(a,"deficient indentation")}function a6(a,b,c){if(-1!==a.firstTabInLine||45!==a.input.charCodeAt(a.position)||!aZ(a.input.charCodeAt(a.position+1)))return!1;for(aM(a,a.position,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,1);45===a.input.charCodeAt(a.position)&&aZ(a.input.charCodeAt(a.position+1));){-1!==a.firstTabInLine&&(a.position=a.firstTabInLine,aV(a,"tab characters must not be used in indentation"));let c=a.line;a.position++;let d=a0(a,!0)>0;if(-1!==a.firstTabInLine&&45===a.input.charCodeAt(a.position)&&aZ(a.input.charCodeAt(a.position+1))&&aV(a,"bad indentation of a sequence entry"),d&&a.lineIndent<=b?aR(a):a8(a,b,3,!1,!0),a0(a,!0),a.lineIndent<b||a.position>=a.length)break;a.lineIndent>b&&aV(a,"bad indentation of a sequence entry"),a.line===c&&45===a.input.charCodeAt(a.position)&&aZ(a.input.charCodeAt(a.position+1))&&aV(a,"bad indentation of a sequence entry")}return aQ(a),!0}function a7(a,b,c,d){let e=!1,f=!1,g=!1,h=!1;if(-1!==a.firstTabInLine)return!1;let i=a.input.charCodeAt(a.position);for(;0!==i;){e||-1===a.firstTabInLine||(a.position=a.firstTabInLine,aV(a,"tab characters must not be used in indentation"));let j=a.input.charCodeAt(a.position+1),k=a.line;if((63===i||58===i)&&aZ(j))g||(aN(a,a.position,d.anchorStart,d.anchorEnd,d.tagStart,d.tagEnd,1),g=!0),63===i?(e&&aR(a),f=!0,e=!0):(e||(aR(a),f=!0),e=!1),a.position+=1,h=!0;else{e&&(aR(a),e=!1);let b=aT(a);if(!a8(a,c,2,!1,!0))break;if(a.line===k){for(i=a.input.charCodeAt(a.position);aX(i);)i=a.input.charCodeAt(++a.position);if(58===i){if(aZ(i=a.input.charCodeAt(++a.position))||aV(a,"a whitespace character is expected after the key-value separator within a block mapping"),!g){for(aU(a,b),aN(a,b.position,d.anchorStart,d.anchorEnd,d.tagStart,d.tagEnd,1),g=!0,a8(a,c,2,!1,!0),i=a.input.charCodeAt(a.position);aX(i);)i=a.input.charCodeAt(++a.position);a.position++}f=!0,e=!1,h=!1}else if(f)aV(a,"expected ':' after a mapping key");else{if(-1!==d.anchorStart||-1!==d.tagStart)return aU(a,b),!1;return!0}}else if(f)aV(a,"can not read a block mapping entry; a multiline key may not be an implicit key");else{if(-1!==d.anchorStart||-1!==d.tagStart)return aU(a,b),!1;return!0}}if(a8(a,b,4,!0,h)&&(h=!1),!e&&h&&(aR(a),h=!1),a0(a,!0),i=a.input.charCodeAt(a.position),(a.line===k||a.lineIndent>b)&&0!==i)aV(a,"bad indentation of a mapping entry");else if(a.lineIndent<b)break}return!!f&&(e&&aR(a),g&&aQ(a),!0)}function a8(a,b,c,d,e,f=!0){a.depth>=a.maxDepth&&aV(a,`nesting exceeded maxDepth (${a.maxDepth})`),a.depth++;let g=1,h=!1,i=!1,j=null,k=aS(),l=4===c||3===c,m=l,n=l;if(d&&a0(a,!0)&&(h=!0,g=a.lineIndent>b?1:a.lineIndent===b?0:-1),1===g)for(;;){let d=a.input.charCodeAt(a.position),e=aT(a);if(h&&1!==g&&(33===d||38===d))break;if(h&&n&&(-1!==k.tagStart||-1!==k.anchorStart)&&(33===d||38===d)){let c=aT(a),d=b+1;if(a7(a,a.position-a.lineStart,d,k)&&a.events[c.eventsLength]?.type===3)return a.depth--,!0;aU(a,c)}if(h&&(33===d&&-1!==k.tagStart||38===d&&-1!==k.anchorStart)||!function(a,b,c){let d;if(33!==a.input.charCodeAt(a.position))return!1;-1!==b.tagStart&&aV(a,"duplication of a tag property");let e=a.position,f=!1,g=!1,h="!",i=a.input.charCodeAt(++a.position);60===i?(f=!0,i=a.input.charCodeAt(++a.position)):33===i&&(g=!0,h="!!",i=a.input.charCodeAt(++a.position));let j=a.position;if(f){for(;0!==i&&62!==i;)i=a.input.charCodeAt(++a.position);62!==i&&aV(a,"unexpected end of the stream within a verbatim tag"),d=a.input.slice(j,a.position),a.position++}else{for(;0!==i&&!aY(i)&&!(c&&a$(i));)33===i&&(g?aV(a,"tag suffix cannot contain exclamation marks"):(h=a.input.slice(j-1,a.position+1),aF.test(h)||aV(a,"named tag handle cannot contain such characters"),g=!0,j=a.position+1)),i=a.input.charCodeAt(++a.position);d=a.input.slice(j,a.position),aE.test(d)&&aV(a,"tag suffix cannot contain flow indicator characters")}return!d||(f?aI.test(d):aJ.test(d))||aV(a,`tag name cannot contain such characters: ${d}`),f||"!"===h||"!!"===h||aC.call(a.tagHandlers,h)||aV(a,`undeclared tag handle "${h}"`),b.tagStart=e,b.tagEnd=a.position,!0}(a,k,1===c)&&!function(a,b){if(38!==a.input.charCodeAt(a.position))return!1;-1!==b.anchorStart&&aV(a,"duplication of an anchor property"),a.position++;let c=a.position;for(;0!==a.input.charCodeAt(a.position)&&!aY(a.input.charCodeAt(a.position))&&!a$(a.input.charCodeAt(a.position));)a.position++;return a.position===c&&aV(a,"name of an anchor node must contain at least one character"),b.anchorStart=c,b.anchorEnd=a.position,!0}(a,k))break;null===j&&(j=e),a0(a,!0)?(h=!0,m=n,g=a.lineIndent>b?1:a.lineIndent===b?0:-1):m=!1}if(m&&(m=h||e),1===g||4===c){let d=1===c||2===c?b:b+1,e=a.position-a.lineStart;if(1===g)if(m&&(a6(a,e,k)||a7(a,e,d,k))||function(a,b,c){let d=a.input.charCodeAt(a.position),e=123===d,f=a.position,g=!0;if(91!==d&&123!==d)return!1;let h=e?125:93;for(e?aN(a,f,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,2):aM(a,f,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,2),a.position++;0!==a.input.charCodeAt(a.position);){a5(a,b);let c=a.input.charCodeAt(a.position);if(c===h)return a.position++,aQ(a),!0;g?44===c&&aV(a,"expected the node content, but found ','"):aV(a,"missed comma between flow collection entries");let d=!1,f=!1;63===c&&aY(a.input.charCodeAt(a.position+1))&&(d=f=!0,a.position+=1,a5(a,b));let i=a.line,j=aT(a),k=a8(a,b,1,!1,!0);a5(a,b),c=a.input.charCodeAt(a.position),(e||f||a.line===i)&&58===c?(d=!0,a.position++,a5(a,b),e||aO(a,j),k||aR(a),a8(a,b,1,!1,!0)||aR(a),a5(a,b),e||aQ(a)):e&&d?(k||aR(a),aR(a)):e?aR(a):d&&(aO(a,j),k||aR(a),aR(a),aQ(a)),44===(c=a.input.charCodeAt(a.position))?(g=!0,a.position++):g=!1}aV(a,"unexpected end of the stream within a flow collection")}(a,d,k))i=!0;else{let b=a.input.charCodeAt(a.position);if(null!==j&&f&&n&&!m&&124!==b&&62!==b){let b=aT(a),c=j.position-j.lineStart;aU(a,j),a7(a,c,d,aS())&&a.events[b.eventsLength]?.type===3?i=!0:aU(a,b)}!i&&(l&&function(a,b,c){let d=a.input.charCodeAt(a.position),e=1,f=-1,g=!1;if(124!==d&&62!==d)return!1;for(a.position++;0!==a.input.charCodeAt(a.position);){let c=a.input.charCodeAt(a.position),d=c>=48&&c<=57?c-48:-1;if(43===c||45===c)1!==e&&aV(a,"repeat of a chomping mode identifier"),e=43===c?3:2,a.position++;else if(d>=0)0===d&&aV(a,"bad explicit indentation width of a block scalar; it cannot be less than one"),g&&aV(a,"repeat of an indentation width identifier"),f=b+d-1,g=!0,a.position++;else break}let h=!1;for(;aX(a.input.charCodeAt(a.position));)h=!0,a.position++;h&&35===a.input.charCodeAt(a.position)&&a2(a),aW(a.input.charCodeAt(a.position))?a_(a):0!==a.input.charCodeAt(a.position)&&aV(a,"a line break is expected");let i=g?f:-1,j=0,k=a.position,l=a.position;for(;0!==a.input.charCodeAt(a.position);){let c=a.position,d=0;for(;32===a.input.charCodeAt(c+d);)d++;let e=a.input.charCodeAt(c+d);if(0===e){i>=0?d>i&&(l=c+d):d>0&&(l=c+d);break}if(c===a.lineStart&&a1(a,c))break;if(!g&&-1===i&&aW(e)&&(j=Math.max(j,d)),g||-1!==i||aW(e)||(9===e&&d<b&&(a.position=c+d,aV(a,"tab characters must not be used in indentation")),d<j&&(a.position=c+d,aV(a,"bad indentation of a mapping entry"))),-1===i&&0!==e&&!aW(e)&&d<b){a.lineIndent=d,a.position=c+d;break}g||0===e||aW(e)||-1!==i||(i=d);let f=-1===i?b+1:i;if(0!==e&&!aW(e)&&d<f){a.lineIndent=d,a.position=c+d;break}a2(a),l=a.position,aW(a.input.charCodeAt(a.position))&&(a_(a),l=a.position)}return a3(a,k,l),aP(a,k,l,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,124===d?4:5,e,i),!0}(a,d,k)||function(a,b,c){if(39!==a.input.charCodeAt(a.position))return!1;a.position++;let d=a.position,e=!0;for(;0!==a.input.charCodeAt(a.position);){let f=a.input.charCodeAt(a.position);if(39===f){if(39===a.input.charCodeAt(a.position+1)){e=!1,a.position+=2;continue}let b=a.position;return a.position++,aP(a,d,b,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,2,1,-1,e),!0}aW(f)?(e=!1,a4(a,b)):a.position===a.lineStart&&a1(a)?aV(a,"unexpected end of the document within a single quoted scalar"):9!==f&&f<32?aV(a,"expected valid JSON character"):a.position++}aV(a,"unexpected end of the stream within a single quoted scalar")}(a,d,k)||function(a,b,c){if(34!==a.input.charCodeAt(a.position))return!1;a.position++;let d=a.position,e=!0;for(;0!==a.input.charCodeAt(a.position);){let f=a.input.charCodeAt(a.position);if(34===f){let b=a.position;return a.position++,aP(a,d,b,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,3,1,-1,e),!0}if(92===f){e=!1;let c=a.input.charCodeAt(++a.position);if(aW(c))a4(a,b);else if(48===c||97===c||98===c||116===c||9===c||110===c||118===c||102===c||114===c||101===c||32===c||34===c||47===c||92===c||78===c||95===c||76===c||80===c)a.position++;else{let b=120===c?2:117===c?4:8*(85===c);for(0===b&&aV(a,"unknown escape sequence");b-- >0;)a.position++,0>function(a){if(a>=48&&a<=57)return a-48;let b=32|a;return b>=97&&b<=102?b-97+10:-1}(a.input.charCodeAt(a.position))&&aV(a,"expected hexadecimal character");a.position++}}else aW(f)?(e=!1,a4(a,b)):a.position===a.lineStart&&a1(a)?aV(a,"unexpected end of the document within a double quoted scalar"):9!==f&&f<32?aV(a,"expected valid JSON character"):a.position++}aV(a,"unexpected end of the stream within a double quoted scalar")}(a,d,k)||function(a,b){var c;if(42!==a.input.charCodeAt(a.position))return!1;(-1!==b.anchorStart||-1!==b.tagStart)&&aV(a,"alias node should not have any properties"),a.position++;let d=a.position;for(;0!==a.input.charCodeAt(a.position)&&!aY(a.input.charCodeAt(a.position))&&!a$(a.input.charCodeAt(a.position));)a.position++;return a.position===d&&aV(a,"name of an alias node must contain at least one character"),c=a.position,a.events.push({type:5,anchorStart:d,anchorEnd:c}),!0}(a,k)||function(a,b,c,d){if(!function(a,b){let c=a.input.charCodeAt(a.position),d=1===b;if(0===c||aY(c)||35===c||38===c||42===c||33===c||124===c||62===c||39===c||34===c||37===c||64===c||96===c||d&&a$(c))return!1;if(63===c||45===c){let b=a.input.charCodeAt(a.position+1);if(aZ(b)||d&&a$(b))return!1}return!0}(a,c))return!1;let e=a.position,f=a.position,g=a.input.charCodeAt(a.position),h=1===c,i=!1;for(;0!==g&&!(a.position===a.lineStart&&a1(a));){if(58===g){let b=a.input.charCodeAt(a.position+1);if(aZ(b)||h&&a$(b))break}else if(35===g){if(aY(a.input.charCodeAt(a.position-1)))break}else if(h&&a$(g))break;else if(aW(g)){let c=a.position,d=a.line,e=a.lineStart,f=a.lineIndent;if(a0(a,!1),a.lineIndent>=b){i=!0,g=a.input.charCodeAt(a.position);continue}a.position=c,a.line=d,a.lineStart=e,a.lineIndent=f;break}aX(g)||(f=a.position+1),g=a.input.charCodeAt(++a.position)}return f!==e&&(a3(a,e,f),aP(a,e,f,d.anchorStart,d.anchorEnd,d.tagStart,d.tagEnd,1,1,-1,!i),!0)}(a,d,c,k))&&(i=!0)}else 0===g&&(i=m&&a6(a,e,k))}return l=l&&!i,!i&&(-1!==k.anchorStart||-1!==k.tagStart||l)&&(aP(a,-1,-1,k.anchorStart,k.anchorEnd,k.tagStart,k.tagEnd,1),i=!0),a.depth--,i||-1!==k.anchorStart||-1!==k.tagStart}var a9={...aL,...at};function ba(a,b){let c=function(a,b={}){let c={...a9,...b},f=String(a),g=Object.keys(aL),h=Object.keys(at);return function(a,b){let c={...at,...b,events:a,documents:[],eventIndex:0,position:0,frames:[],anchors:new Map,tagHandlers:Object.create(null),totalMergeKeys:0,aliasCount:0};for(;c.eventIndex<c.events.length;){let a=c.events[c.eventIndex++];switch(c.position="tagStart"in a&&-1!==a.tagStart?a.tagStart:"anchorStart"in a&&-1!==a.anchorStart?a.anchorStart:"valueStart"in a&&-1!==a.valueStart?a.valueStart:"start"in a?a.start:0,a.type){case 1:for(let b of(c.anchors=new Map,c.aliasCount=0,c.tagHandlers=Object.create(null),a.directives))"tag"===b.kind&&(c.tagHandlers[b.handle]=b.prefix);c.frames.push({kind:"document",position:c.position,value:void 0,hasValue:!1});break;case 4:{let{value:b,tag:e}=function(a,b){let c=function(a,b){if(-1===b.valueStart)return"";let{valueStart:c,valueEnd:d}=b;if(b.fast)return a.slice(c,d);switch(b.style){case 2:return function(a,b,c){let d="",e=b,f=b,g=b;for(;e<c;){let b=a.charCodeAt(e);if(39===b)d+=a.slice(f,e)+"'",e+=2,f=g=e;else if(10===b||13===b){d+=a.slice(f,g);let b=ao(a,e,c);d+=ap(b.breaks),e=f=g=b.position}else e++,32!==b&&9!==b&&(g=e)}return d+a.slice(f,c)}(a,c,d);case 3:return function(a,b,c){let d="",e=b,f=b,g=b;for(;e<c;){let b=a.charCodeAt(e);if(92===b){d+=a.slice(f,e),e++;let b=a.charCodeAt(e);if(10===b||13===b)e=ao(a,e,c).position;else if(b<256&&am[b])d+=an[b],e++;else{var h,i;let c=120===b?2:117===b?4:8,f=0;for(;c>0;c--)e++,f=(f<<4)+((h=a.charCodeAt(e))>=48&&h<=57?h-48:(32|h)-97+10);d+=(i=f)<=65535?String.fromCharCode(i):String.fromCharCode((i-65536>>10)+55296,(i-65536&1023)+56320),e++}f=g=e}else if(10===b||13===b){d+=a.slice(f,g);let b=ao(a,e,c);d+=ap(b.breaks),e=f=g=b.position}else e++,32!==b&&9!==b&&(g=e)}return d+a.slice(f,c)}(a,c,d);case 4:return aq(a,c,d,b.indent,b.chomping,!1);case 5:return aq(a,c,d,b.indent,b.chomping,!0);default:return function(a,b,c){let d="",e=b,f=b,g=b;for(;e<c;){let b=a.charCodeAt(e);if(10===b||13===b){d+=a.slice(f,g);let b=ao(a,e,c);d+=ap(b.breaks),e=f=g=b.position}else e++,32!==b&&9!==b&&(g=e)}return d+a.slice(f,g)}(a,c,d)}}(a.source,b),e=-1===b.tagStart?"":a.source.slice(b.tagStart,b.tagEnd),f=a.schema.defaultScalarTag;if(""!==e){if("!"===e)return{value:c,tag:f};let b=as(e,a.tagHandlers),g=aw(a.schema.exact.scalar,a.schema.prefix.scalar,b);if(g){let e=g.resolve(c,!0,b);return e===d&&au(a,`cannot resolve a node with !<${b}> explicit tag`),{value:e,tag:g}}let h=aw(a.schema.exact.mapping,a.schema.prefix.mapping,b)??aw(a.schema.exact.sequence,a.schema.prefix.sequence,b);if(h){""!==c&&au(a,`cannot resolve a node with !<${b}> explicit tag`);let d=h.create(b);return{value:h.carrierIsResult?d:av(a,a.position,h,d),tag:h}}au(a,`unknown scalar tag !<${b}>`)}if(1===b.style)for(let b of a.schema.implicitScalarByFirstChar.get(c.charAt(0))??a.schema.implicitScalarAnyFirstChar){let a=b.resolve(c,!1,b.tagName);if(a!==d)return{value:a,tag:b}}return{value:f.resolve(c,!1,f.tagName),tag:f}}(c,a);aB(c,a,b,e,!0),aA(c,b,e);break}case 2:{let b=ax(c,a,c.schema.exact.sequence,c.schema.prefix.sequence,"tag:yaml.org,2002:seq","sequence"),d=b.tag.create(b.tagName),f=aB(c,a,d,b.tag,b.tag.carrierIsResult),g=c.frames[c.frames.length-1],h=void 0!==g&&"mapping"===g.kind&&g.hasKey&&g.key===e;c.frames.push({kind:"sequence",position:c.position,value:d,tag:b.tag,anchor:f,index:0,merge:h});break}case 3:{let b=ax(c,a,c.schema.exact.mapping,c.schema.prefix.mapping,"tag:yaml.org,2002:map","mapping"),d=b.tag.create(b.tagName),e=aB(c,a,d,b.tag,b.tag.carrierIsResult);c.frames.push({kind:"mapping",position:c.position,value:d,tag:b.tag,anchor:e,key:void 0,keyPosition:c.position,hasKey:!1,overridable:null});break}case 5:{-1!==c.maxAliases&&++c.aliasCount>c.maxAliases&&au(c,`aliases exceeded maxAliases (${c.maxAliases})`);let b=c.source.slice(a.anchorStart,a.anchorEnd),d=c.anchors.get(b);d||au(c,`unidentified alias "${b}"`),d.isValueFinal||au(c,`recursive alias "${b}" is not supported for tag ${d.tag.tagName} because it uses finalize()`),aA(c,d.value,d.tag);break}case 6:{let a=c.frames.pop();if("mapping"===a.kind&&a.hasKey&&(c.position=a.keyPosition,au(c,"incomplete mapping pair in event stream")),"document"===a.kind)c.documents.push(a.value);else{let b=a.tag.carrierIsResult?a.value:av(c,a.position,a.tag,a.value);a.anchor&&(a.anchor.value=b,a.anchor.isValueFinal=!0),aA(c,b,a.tag)}}}}return c.documents}(function(a,b){let c=a.length,d={...aL,...b,input:`${a}\0`,length:c,position:0,line:0,lineStart:0,lineIndent:0,firstTabInLine:-1,depth:0,directives:[],tagHandlers:Object.create(null),events:[]},e=a.indexOf("\0");for(-1!==e&&ak(a,e,"null byte is not allowed in input",d.filename),65279===d.input.charCodeAt(d.position)&&d.position++;d.position<d.length&&(a0(d,!0),!(d.position>=d.length));){let a=d.position;!function(a){var b;a.directives=[],a.tagHandlers=Object.create(null);let c=!1;for(a0(a,!0);function(a){if(a.lineIndent>0||37!==a.input.charCodeAt(a.position))return!1;a.position++;let b=a.position;for(;0!==a.input.charCodeAt(a.position)&&!aY(a.input.charCodeAt(a.position));)a.position++;let c=a.input.slice(b,a.position),d=[];for(0===c.length&&aV(a,"directive name must not be less than one character in length");0!==a.input.charCodeAt(a.position)&&!aW(a.input.charCodeAt(a.position));){for(;aX(a.input.charCodeAt(a.position));)a.position++;if(35===a.input.charCodeAt(a.position)||aW(a.input.charCodeAt(a.position))||0===a.input.charCodeAt(a.position))break;let b=a.position;for(;0!==a.input.charCodeAt(a.position)&&!aY(a.input.charCodeAt(a.position));)a.position++;d.push(a.input.slice(b,a.position))}if(aW(a.input.charCodeAt(a.position))&&a_(a),"YAML"===c){a.directives.some(a=>"yaml"===a.kind)&&aV(a,"duplication of %YAML directive"),1!==d.length&&aV(a,"YAML directive accepts exactly one argument");let b=/^([0-9]+)\.([0-9]+)$/.exec(d[0]);null===b&&aV(a,"ill-formed argument of the YAML directive"),1!==parseInt(b[1],10)&&aV(a,"unacceptable YAML version of the document"),a.directives.push({kind:"yaml",version:d[0]})}else if("TAG"===c){2!==d.length&&aV(a,"TAG directive accepts exactly two arguments");let[b,c]=d;aF.test(b)||aV(a,"ill-formed tag handle (first argument) of the TAG directive"),aC.call(a.tagHandlers,b)&&aV(a,`there is a previously declared suffix for "${b}" tag handle`),aK.test(c)||aV(a,"ill-formed tag prefix (second argument) of the TAG directive"),a.tagHandlers[b]=c,a.directives.push({kind:"tag",handle:b,prefix:c})}return!0}(a);)c=!0,a0(a,!0);let d=!1,e=!1,f=!0;if(0===a.lineIndent&&45===a.input.charCodeAt(a.position)&&45===a.input.charCodeAt(a.position+1)&&45===a.input.charCodeAt(a.position+2)&&aZ(a.input.charCodeAt(a.position+3))){d=!0;let b=a.line;a.position+=3,a0(a,!0),f=a.line>b}else c&&aV(a,"directives end mark is expected");let g=a.events.length;if(!d&&a.position===a.lineStart&&46===a.input.charCodeAt(a.position)&&a1(a)){a.position+=3,a0(a,!0);return}if(b=d,a.events.push({type:1,explicitStart:b,explicitEnd:!1,directives:a.directives}),a8(a,a.lineIndent-1,4,!1,f,f)||aR(a),a0(a,!0),a.position===a.lineStart&&a1(a)&&(e=46===a.input.charCodeAt(a.position))){let b=a.line;a.position+=3,a0(a,!0),a.line===b&&a.position<a.length&&aV(a,"end of the stream or a document separator is expected")}let h=a.events[g];h?.type===1&&(h.explicitEnd=e),aQ(a),e||!(a.position<a.length)||a.position===a.lineStart&&a1(a)||aV(a,"end of the stream or a document separator is expected")}(d),d.position===a&&aV(d,"can not read a document")}return d.events}(f,X(c,g)),{...X(c,h),source:f})}(a,b);if(0===c.length)throw new aj("expected a document, but the input is empty");if(1===c.length)return c[0];throw new aj("expected a single document in the stream, but found more")}Symbol("INVALID"),Symbol("visit:break"),Symbol("visit:skip");var bb={};bb[0]="\\0",bb[7]="\\a",bb[8]="\\b",bb[9]="\\t",bb[10]="\\n",bb[11]="\\v",bb[12]="\\f",bb[13]="\\r",bb[27]="\\e",bb[34]='\\"',bb[92]="\\\\",bb[133]="\\N",bb[160]="\\_",bb[8232]="\\L",bb[8233]="\\P",ad.withTags({...E,resolve:(a,b,c)=>{let e=E.resolve(a,b,c);return e===d?z.resolve(a,b,c):e}},{...N,resolve:(a,b,c)=>{let e=N.resolve(a,b,c);return e===d?H.resolve(a,b,c):e}})},83739:(a,b,c)=>{"use strict";c.d(b,{o:()=>h,x:()=>i});var d=c(29021),e=c(33873),f=c.n(e),g=c(15011);function h(a,b){for(let c of b){let b=(0,g.uK)(a)||(0,g.uK)(c),d=b?f().win32:f(),e=b?"\\":f().sep,h=d.resolve(a),i=d.resolve(c),j=b?h.toLowerCase():h,k=b?i.toLowerCase():i,l=k.endsWith(e)?k:k+e;if(j===k||j.startsWith(l))return!0}return!1}function i(a,b){let c;try{c=(0,d.realpathSync)(a)}catch{return!1}let e=new Set;for(let a of b)try{e.add((0,d.realpathSync)(a))}catch{}return h(c,e)}},84851:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{s:()=>v});var e=c(75430),f=c(8084),g=c(41035),h=c(35015),i=c(16983),j=c(15253),k=c(5564),l=c(70274),m=c(55950),n=c(88002),o=c(7535),p=c(65562),q=c(77598),r=a([e,f,g,j,k,l,p]);[e,f,g,j,k,l,p]=r.then?(await r)():r;let w=new Set(["off","minimal","low","medium","high","xhigh","max"]);function s(){return globalThis.__piSubagentRuns||(globalThis.__piSubagentRuns=new Map),globalThis.__piSubagentRuns}function t(){return globalThis.__piSubagentQueue||(globalThis.__piSubagentQueue=new m.V),globalThis.__piSubagentQueue}async function u(a,b){if(b)try{await (0,n.IL)(a,b.path);return}catch(a){return`Worktree retained at ${b.path}: ${a instanceof Error?a.message:String(a)}`}}function v(a){async function b(b){let d;if(!(a.isBuiltInSubagentsEnabled??l.N)())throw Error("Pi Web built-in sub-agents are disabled");let e=b.parentContext.sessionManager.getSessionId(),f=await c(b.sessionId);if(!f)throw Error(`Subagent not found: ${b.sessionId}`);if(f.parentSessionId!==e)throw Error("Subagent does not belong to this parent session");if("running"===f.status||"queued"===f.status)throw Error("Subagent is already running");let h=a.getSession(e);if(!h?.isAlive())throw Error("Parent session is no longer available");let i=f.sessionPath||await a.resolveSessionPath(b.sessionId);if(!i)throw Error(`Subagent session file not found: ${b.sessionId}`);let j=a.getSession(b.sessionId);if(j?.isAlive()||(j=await a.reopenSession(b.sessionId,i)),!j.isAlive())throw Error("Subagent session is no longer available");if(j.isRunning())throw Error("Subagent is already running");let k=b.runInBackground??f.runInBackground,m={...f,parentToolCallId:b.parentToolCallId,task:b.task,description:b.description.trim()||f.description,runInBackground:k,status:"queued",completedAt:void 0,result:void 0,error:void 0},n=j.inner.sessionManager,o=new Promise(a=>{d=a}),p={run:m,completion:o,abortRequested:!1};s().set(b.sessionId,p),b.onUpdate?.(m),a.invalidateSessionList();let q=()=>{p.abortRequested=!0,"queued"===p.run.status?p.cancelQueued?.():j.inner.abort()};k||b.signal?.addEventListener("abort",q,{once:!0});let r=async()=>{let c;if(p.abortRequested){let a={...m,status:"aborted",completedAt:new Date().toISOString()};return n.appendCustomEntry(g.pv,{version:1,status:"aborted",completedAt:a.completedAt}),p.run=a,s().delete(b.sessionId),d(a),a}p.run={...p.run,status:"running"},n.appendCustomEntry(g.o2,{version:1,status:"running"}),b.onUpdate?.(p.run);try{await j.inner.prompt(b.task,{source:"rpc"});let a=j.inner.getLastAssistantText()?.trim();c={...m,status:p.abortRequested?"aborted":"completed",completedAt:new Date().toISOString(),...a?{result:a}:{}}}catch(a){c={...m,status:p.abortRequested||b.signal?.aborted?"aborted":"failed",completedAt:new Date().toISOString(),...!p.abortRequested&&!b.signal?.aborted?{error:a instanceof Error?a.message:String(a)}:{}}}finally{b.signal?.removeEventListener("abort",q)}return n.appendCustomEntry(g.pv,{version:1,status:c.status,completedAt:c.completedAt,...c.result?{result:c.result}:{},...c.error?{error:c.error}:{}}),p.run=c,b.onUpdate?.(c),s().delete(b.sessionId),a.invalidateSessionList(),c},u=t().enqueue(e,(0,l.hd)().maxConcurrent,r,c=>{"queued"===c&&n.appendCustomEntry(g.o2,{version:1,status:"queued"}),p.run={...p.run,status:c},b.onUpdate?.(p.run),a.invalidateSessionList()},()=>{if("queued"!==p.run.status)return;let c={...m,status:"aborted",completedAt:new Date().toISOString()};n.appendCustomEntry(g.pv,{version:1,status:"aborted",completedAt:c.completedAt}),p.run=c,b.onUpdate?.(c),s().delete(b.sessionId),a.invalidateSessionList(),d(c)});return p.cancelQueued=u.cancel,u.promise.then(d,a=>d({...m,status:"failed",completedAt:new Date().toISOString(),error:a instanceof Error?a.message:String(a)})),{run:p.run,completion:o}}async function c(b){let c=s().get(b);if(c)return c.run;let d=a.getSession(b);if(d?.isAlive()){let a=(0,g.$u)(d.inner.sessionManager.getEntries(),b,d.sessionFile);if(a&&d.isRunning())return{...a,status:"running"};if(a)return a}let f=await a.resolveSessionPath(b);if(!f)return null;let h=e.SessionManager.open(f);return(0,g.$u)(h.getEntries(),b,f)}async function d(b,c){let d=a.getSession(b);if(!d?.isAlive()||!d.isRunning())throw Error("Subagent is not running");if(!c.trim())throw Error("Steering message is required");await d.inner.steer(c.trim())}async function m(b){let c=a.getSession(b.parentSessionId);if(!c?.isAlive()){let d=await a.resolveSessionPath(b.parentSessionId);if(!d)throw Error(`Parent session not found: ${b.parentSessionId}`);c=await a.reopenSession(b.parentSessionId,d)}if(await c.waitUntilReady(),!c.isAlive())throw Error(`Parent session is no longer available: ${b.parentSessionId}`);await c.inner.sendCustomMessage({customType:"pi-web:subagent-notification",content:(0,f.J8)(b),display:!0,details:(0,f.o2)(b)},{deliverAs:"followUp",triggerTurn:!0})}async function r(b){let c=a.getSession(b),d=s().get(b);if(d?.run.status==="queued"){if(d.abortRequested=!0,!d.cancelQueued?.())throw Error("Subagent is no longer queued");return}if(!c?.isAlive()||!c.isRunning())throw Error("Subagent is not running");d&&(d.abortRequested=!0),await c.inner.abort()}return{extensionRuntime:{start:async function(b){let c;if(!(a.isBuiltInSubagentsEnabled??l.N)())throw Error("Pi Web built-in sub-agents are disabled");let d=b.parentContext.sessionManager.getSessionId(),f=a.getSession(d);if(!f?.isAlive())throw Error("Parent session is no longer available");if(!f.sessionFile)throw Error("Parent session must be persisted before starting a subagent");try{let v,x,y,z=(0,g.rh)(f.cwd,b.profile);if(!z)throw Error(`Unknown or disabled subagent profile: ${b.profile}`);let A=b.runInBackground??z.runInBackground,B="off"===z.isolation?void 0:b.isolation??z.isolation;"worktree"===B&&(c=await (0,n.l)(f.cwd,`pi-web-agent-${(0,q.randomUUID)()}`));let C=c?.path??f.cwd,D=b.inheritContext??z.inheritContext,E=b.maxTurns??z.maxTurns;if(void 0!==E&&(!Number.isFinite(E)||E<0))throw Error("max_turns must be a non-negative number");let F=E&&E>0?Math.floor(E):void 0,G=b.thinking??z.thinking??f.inner.agent.state?.thinkingLevel;if(G&&!w.has(G))throw Error(`Invalid subagent thinking level: ${G}`);let H=(0,e.getAgentDir)(),I=f.inner.modelRuntime,J=e.SettingsManager.create(C,H),K=D?`The following is the active conversation context from the parent session. Use it only as background for the delegated task:
39
+ ${x=f.inner.sessionManager.buildSessionContext().messages,(y=JSON.stringify(x)).length<=5e4?y:`${y.slice(0,5e4)}
40
+ [Parent context truncated]`}`:void 0,L=(0,i.vH)(f.cwd,b.inputFiles??[]),M=(0,h.r)({profileSystemPrompt:z.systemPrompt,tools:z.tools,loadSkills:z.loadSkills,loadExtensions:z.loadExtensions,promptMode:z.promptMode,task:(0,i.jN)(b.task,L),inheritedParentContext:K}),{chatOnly:N,appendSystemPrompt:O,delegatedTask:P}=M;N||(0,e.initTheme)();let Q=await (0,e.createAgentSessionServices)({cwd:C,agentDir:H,modelRuntime:I,settingsManager:J,resourceLoaderOptions:{noExtensions:!z.loadExtensions,noSkills:!z.loadSkills,noPromptTemplates:!0,noThemes:!0,noContextFiles:!0,...N||void 0!==M.exactSystemPrompt?{systemPrompt:" ",systemPromptOverride:()=>void 0}:{},appendSystemPrompt:O},...z.loadExtensions||z.loadSkills?{resourceLoaderReloadOptions:(0,j.Fk)(C,H)}:{}}),R=z.loadExtensions?z.extensionTools?.length?(0,g.gY)(Q.resourceLoader.getExtensions().extensions,z.extensionTools):Q.resourceLoader.getExtensions().extensions.flatMap(a=>[...a.tools.keys()]):[],S=(0,k.wQ)((0,g.I6)(z.tools,R),J.getDefaultTools()),T=c?e.SessionManager.create(C,void 0,{parentSession:f.sessionFile}):e.SessionManager.create(f.cwd,void 0,{parentSession:f.sessionFile}),U=new Date().toISOString(),V={version:1,parentSessionId:d,parentSessionPath:f.sessionFile,parentToolCallId:b.parentToolCallId,profile:z.name,description:b.description.trim()||z.displayName,task:b.task,runInBackground:A,createdAt:U,resourceSnapshot:{version:1,appendSystemPrompt:[...O],tools:[...S],loadSkills:z.loadSkills,loadExtensions:z.loadExtensions,...void 0!==M.exactSystemPrompt?{exactSystemPrompt:M.exactSystemPrompt}:{}},...c?{worktreePath:c.path,worktreeBranch:c.branch}:{}};T.appendCustomEntry(g.tP,V),T.appendSessionInfo(V.description);let W=function(a,b){if(!b?.trim())return;let c=b.trim(),d=c.indexOf("/");if(d>0){let b=c.slice(0,d),e=c.slice(d+1),f=a.getModel(b,e);if(!f)throw Error(`Subagent model not found: ${c}`);return f}let e=a.getModels().filter(a=>a.id===c);if(1===e.length)return e[0];if(0===e.length)throw Error(`Subagent model not found: ${c}`);throw Error(`Subagent model is ambiguous; use provider/modelId: ${c}`)}(I,b.model??z.model),X=f.inner.model,{session:Y}=await (0,e.createAgentSessionFromServices)({services:Q,sessionManager:T,model:W??X,...G?{thinkingLevel:G}:{},tools:S,excludeTools:[...g.st]});a.registerSession(Y,{...void 0!==M.exactSystemPrompt?{exactSystemPrompt:M.exactSystemPrompt}:{},chatOnly:N});try{var m,r;let a;m=Y.sessionId,a=(r={path:Y.sessionFile??"",cwd:(c?C:f.cwd)??"",projectKey:(0,o.z)((c?C:f.cwd)??""),parentId:d,taskId:(0,p.l6)(d),description:b.description}).description.trim(),(0,p.YH)(m,{path:r.path,cwd:r.cwd,projectKey:r.projectKey,parentId:r.parentId,taskId:r.taskId,...a?{title:a}:{}})}catch(a){console.error("[pi-web] subagent 会话建行失败:",a instanceof Error?a.message:String(a))}let Z={sessionId:Y.sessionId,sessionPath:Y.sessionFile??T.getSessionFile()??"",parentSessionId:d,parentToolCallId:b.parentToolCallId,profile:z.name,description:V.description,task:b.task,runInBackground:A,status:"queued",createdAt:U,...c?{worktreePath:c.path,worktreeBranch:c.branch}:{}},$=0,_=!1,aa=!1,ab=F?Y.subscribe(a=>{"turn_end"===a.type&&($+=1,!aa&&$>=F?(aa=!0,Y.steer("You have reached your turn limit. Wrap up immediately and provide your final answer now.")):aa&&$>=F+1&&(_=!0,Y.abort()))}):()=>{},ac=new Promise(a=>{v=a}),ad={run:Z,completion:ac,abortRequested:!1};s().set(Z.sessionId,ad),b.onUpdate?.(Z),a.invalidateSessionList();let ae=()=>{ad.abortRequested=!0,"queued"===ad.run.status?ad.cancelQueued?.():Y.abort()};A||b.signal?.addEventListener("abort",ae,{once:!0});let af=async()=>{let d;if(ad.abortRequested){let d={...Z,status:"aborted",completedAt:new Date().toISOString()};return T.appendCustomEntry(g.pv,{version:1,status:"aborted",completedAt:d.completedAt}),await u(f.cwd,c),ad.run=d,b.onUpdate?.(d),s().delete(Z.sessionId),a.invalidateSessionList(),d}ad.run={...ad.run,status:"running"},T.appendCustomEntry(g.o2,{version:1,status:"running"}),b.onUpdate?.(ad.run),a.invalidateSessionList();try{await Y.prompt(P,{source:"rpc",...N?{preflightResult:a=>{a&&Y.agent.state&&(Y.agent.state.systemPrompt=z.systemPrompt)}}:{}});let a=Y.getLastAssistantText()?.trim(),b=ad.abortRequested&&!_;d={...Z,status:b?"aborted":"completed",completedAt:new Date().toISOString(),...a?{result:a}:{}}}catch(e){let a=Y.getLastAssistantText()?.trim(),c=ad.abortRequested||b.signal?.aborted;d={...Z,status:c?"aborted":_?"completed":"failed",completedAt:new Date().toISOString(),...a?{result:a}:{},...!c&&!_?{error:e instanceof Error?e.message:String(e)}:{}}}finally{ab(),b.signal?.removeEventListener("abort",ae)}let e=await u(f.cwd,c);e&&(d={...d,worktreeCleanupError:e});let h={version:1,status:d.status,completedAt:d.completedAt,...d.result?{result:d.result}:{},...d.error?{error:d.error}:{},...d.worktreeCleanupError?{worktreeCleanupError:d.worktreeCleanupError}:{}};return T.appendCustomEntry(g.pv,h),ad.run=d,b.onUpdate?.(d),s().delete(Z.sessionId),a.invalidateSessionList(),d},ag=async()=>{if("queued"!==ad.run.status)return;let d={...Z,status:"aborted",completedAt:new Date().toISOString()},e=await u(f.cwd,c),h=e?{...d,worktreeCleanupError:e}:d;T.appendCustomEntry(g.pv,{version:1,status:"aborted",completedAt:h.completedAt,...e?{worktreeCleanupError:e}:{}}),ad.run=h,b.onUpdate?.(h),s().delete(Z.sessionId),a.invalidateSessionList(),v(h)},ah=t().enqueue(d,(0,l.hd)().maxConcurrent,af,c=>{"queued"===c&&T.appendCustomEntry(g.o2,{version:1,status:"queued"}),b.onUpdate?.({...ad.run,status:c}),ad.run={...ad.run,status:c},a.invalidateSessionList()},ag);return ad.cancelQueued=ah.cancel,ah.promise.then(v,a=>{v({...Z,status:"failed",completedAt:new Date().toISOString(),error:a instanceof Error?a.message:String(a)})}),{run:ad.run,completion:ad.completion}}catch(a){if(c)try{await (0,n.IL)(f.cwd,c.path)}catch{}throw a}},resume:b,get:c,steer:d,notifyParent:m},get:c,steer:d,abort:r}}d()}catch(a){d(a)}})},87509:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{U:()=>j});var e=c(28802),f=c(45399),g=c(77605),h=a([e]);function i(){return{currentTurn:0,lastTodoToolUseTurn:0}}e=(h.then?(await h)():h)[0];let k=f.ZUJ.Object({action:f.ZUJ.Union([f.ZUJ.Literal("list"),f.ZUJ.Literal("add"),f.ZUJ.Literal("update"),f.ZUJ.Literal("delete")],{description:"list | add | update | delete"}),text:f.ZUJ.Optional(f.ZUJ.String({description:"新文本,仅 update 使用(trim 后不可为空)"})),texts:f.ZUJ.Optional(f.ZUJ.Array(f.ZUJ.String(),{description:"待添加的 todo 文本数组(仅 add 使用)"})),id:f.ZUJ.Optional(f.ZUJ.Number({description:"要更新的 todo id"})),ids:f.ZUJ.Optional(f.ZUJ.Array(f.ZUJ.Number(),{description:"要删除的 todo id 数组"})),status:f.ZUJ.Optional((0,e.StringEnum)(g.cn,{description:"pending | in_progress | completed"})),updates:f.ZUJ.Optional(f.ZUJ.Array(f.ZUJ.Object({id:f.ZUJ.Number({description:"要更新的 todo id"}),status:f.ZUJ.Optional((0,e.StringEnum)(g.cn)),text:f.ZUJ.Optional(f.ZUJ.String({description:"新文本(trim 后不可为空)"}))},{additionalProperties:!1}),{description:"批量更新数组(优先于单条 id/status/text)"}))},{additionalProperties:!1});function j(){return{name:"pi-web-todo",hidden:!0,factory:a=>{let b={todos:[],nextId:1},c=i(),d=()=>{a.appendEntry(g.sT,{todos:b.todos,nextId:b.nextId})},e=a=>{let d=a.sessionManager.getBranch();for(let a of(b.todos=[],b.nextId=1,Object.assign(c,i()),d)){if("custom"!==a.type||a.customType!==g.sT)continue;let c=(0,g.aO)(a.data);c&&(b.todos=c.todos,b.nextId=c.nextId)}c.currentTurn=function(a){let b=0;for(let c of a){if("custom"===c.type&&c.customType===g.sT){b=0;continue}c.message?.role==="assistant"&&b++}return b}(d)};a.on("session_start",async(a,b)=>e(b)),a.on("session_tree",async(a,b)=>e(b)),a.on("agent_end",async(a,c)=>{0===b.todos.length||(0,g.Ql)(b.todos)||function(a){let b,c=0,d=0;for(let e of a)"custom"===e.type&&e.customType===g.sT?(b=e.data,d=c):e.message?.role==="user"&&c++;let e=(0,g.aO)(b);return!(!e||0===e.todos.length||(0,g.Ql)(e.todos))&&c-d>=2}(c.sessionManager.getBranch())&&(b.todos=[],b.nextId=1,d())}),a.on("turn_start",async()=>{c.currentTurn++}),a.on("tool_result",async a=>{String(a.toolName??"")===g.Y0&&(c.lastTodoToolUseTurn=c.currentTurn)}),a.on("context",async a=>{if(!(0,g.Ql)(b.todos)||c.currentTurn-c.lastTodoToolUseTurn<4||(c.lastTodoToolUseTurn=c.currentTurn,0))return;let d=function(a){let b=a.filter(a=>"completed"!==a.status);if(0===b.length)return null;let c=b.filter(a=>"in_progress"===a.status),d=c.length>0?`#${c[0].id}("${c[0].content}")仍标记为 in_progress。这一步如果已经做完,立刻用 todo update 把它标成 completed,并在同一次调用里把下一项 pending 置为 in_progress,不要留下过期的 [~]。`:"还有 pending 项但没有任何 in_progress。准备继续动手前,先用 todo update 把其中一项置为 in_progress。";return["<system-reminder>","todo 工具已连续 4 轮没有被使用,但仍有未完成任务:","",...b.map(g.mU),"",d,"","只在与本轮工作相关时行动;这是一条温和提醒,不适用就忽略。绝不要向用户提及这条提醒,也不要为了回应它而新造任务。","</system-reminder>"].join("\n")}(b.todos);if(d)return{messages:[...a.messages,{role:"user",content:[{type:"text",text:d}],timestamp:Date.now()}]}}),a.registerTool({name:g.Y0,label:"Todo",description:"管理当前会话的 todo 列表。\n\n动作:\n- list: 查看全部 todo\n- add: 批量添加 todo(texts 数组)\n- update: 按 id 更新 todo——status 和/或 text;批量用 updates[]\n- delete: 按 id 删除 todo(ids 数组)\n\n规则:\n- 同一时间只有一个 todo 处于 in_progress\n- 完成一个 todo 立即标记 completed,不要攒到最后批量标记\n- 未真正完成不得标记 completed:被阻塞或测试失败时保持 in_progress",promptSnippet:"用 todo 跟踪多步骤工作;记得为验证步骤(测试、类型检查)单独建 todo。",promptGuidelines:["[Usage] 多步骤工作(3+步)时使用,AI 自发创建,无需用户触发","[验证任务] 为测试 / 类型检查等验证步骤单独建 todo,完成前确保验证通过","[批量优先] 完成多项任务时使用 updates[] 批量更新,减少工具调用次数","[自动闭合] 全部完成后自动清理,无需手动 delete","[Not for] 单步操作、简单对话"],executionMode:"sequential",parameters:k,async execute(a,c,e){if(e?.aborted)throw Error("Todo call aborted by signal.");let f=(0,g.xw)(c,b),h="list"!==f.action;h&&(b.todos=f.snapshot.todos,b.nextId=f.snapshot.nextId,d());let i=h?`${f.resultText}
41
+ ${b.todos.map(a=>(0,g.mU)(a)).join("\n")||"No todos"}`:f.resultText;return{content:[{type:"text",text:i}],details:{action:f.action,todos:[...b.todos],nextId:b.nextId}}}})}}}d()}catch(a){d(a)}})},88250:(a,b,c)=>{"use strict";function d(){let a=(globalThis.__piModelsCacheState||(globalThis.__piModelsCacheState={entries:new Map,inFlight:new Map,generation:0}),globalThis.__piModelsCacheState);a.generation+=1,a.entries.clear(),a.inFlight.clear()}c.d(b,{kn:()=>d})},92759:a=>{function b(a,b){"boolean"==typeof b&&(b={forever:b}),this._originalTimeouts=JSON.parse(JSON.stringify(a)),this._timeouts=a,this._options=b||{},this._maxRetryTime=b&&b.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}a.exports=b,b.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts},b.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null},b.prototype.retry=function(a){if(this._timeout&&clearTimeout(this._timeout),!a)return!1;var b=new Date().getTime();if(a&&b-this._operationStart>=this._maxRetryTime)return this._errors.unshift(Error("RetryOperation timeout occurred")),!1;this._errors.push(a);var c=this._timeouts.shift();if(void 0===c)if(!this._cachedTimeouts)return!1;else this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),c=this._timeouts.shift();var d=this,e=setTimeout(function(){d._attempts++,d._operationTimeoutCb&&(d._timeout=setTimeout(function(){d._operationTimeoutCb(d._attempts)},d._operationTimeout),d._options.unref&&d._timeout.unref()),d._fn(d._attempts)},c);return this._options.unref&&e.unref(),!0},b.prototype.attempt=function(a,b){this._fn=a,b&&(b.timeout&&(this._operationTimeout=b.timeout),b.cb&&(this._operationTimeoutCb=b.cb));var c=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){c._operationTimeoutCb()},c._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)},b.prototype.try=function(a){console.log("Using RetryOperation.try() is deprecated"),this.attempt(a)},b.prototype.start=function(a){console.log("Using RetryOperation.start() is deprecated"),this.attempt(a)},b.prototype.start=b.prototype.try,b.prototype.errors=function(){return this._errors},b.prototype.attempts=function(){return this._attempts},b.prototype.mainError=function(){if(0===this._errors.length)return null;for(var a={},b=null,c=0,d=0;d<this._errors.length;d++){var e=this._errors[d],f=e.message,g=(a[f]||0)+1;a[f]=g,g>=c&&(b=e,c=g)}return b}},93329:(a,b,c)=>{var d,e,f,g=c(29021),h=c(39466),i=c(18827),j=c(12817),k=c(28354);function l(a,b){Object.defineProperty(a,d,{get:function(){return b}})}"function"==typeof Symbol&&"function"==typeof Symbol.for?(d=Symbol.for("graceful-fs.queue"),e=Symbol.for("graceful-fs.previous")):(d="___graceful-fs.queue",e="___graceful-fs.previous");var m=function(){};function n(a){h(a),a.gracefulify=n,a.createReadStream=function(b,c){return new a.ReadStream(b,c)},a.createWriteStream=function(b,c){return new a.WriteStream(b,c)};var b=a.readFile;a.readFile=function(a,c,d){return"function"==typeof c&&(d=c,c=null),function a(c,d,e,f){return b(c,d,function(b){b&&("EMFILE"===b.code||"ENFILE"===b.code)?o([a,[c,d,e],b,f||Date.now(),Date.now()]):"function"==typeof e&&e.apply(this,arguments)})}(a,c,d)};var c=a.writeFile;a.writeFile=function(a,b,d,e){return"function"==typeof d&&(e=d,d=null),function a(b,d,e,f,g){return c(b,d,e,function(c){c&&("EMFILE"===c.code||"ENFILE"===c.code)?o([a,[b,d,e,f],c,g||Date.now(),Date.now()]):"function"==typeof f&&f.apply(this,arguments)})}(a,b,d,e)};var d=a.appendFile;d&&(a.appendFile=function(a,b,c,e){return"function"==typeof c&&(e=c,c=null),function a(b,c,e,f,g){return d(b,c,e,function(d){d&&("EMFILE"===d.code||"ENFILE"===d.code)?o([a,[b,c,e,f],d,g||Date.now(),Date.now()]):"function"==typeof f&&f.apply(this,arguments)})}(a,b,c,e)});var e=a.copyFile;e&&(a.copyFile=function(a,b,c,d){return"function"==typeof c&&(d=c,c=0),function a(b,c,d,f,g){return e(b,c,d,function(e){e&&("EMFILE"===e.code||"ENFILE"===e.code)?o([a,[b,c,d,f],e,g||Date.now(),Date.now()]):"function"==typeof f&&f.apply(this,arguments)})}(a,b,c,d)});var f=a.readdir;a.readdir=function(a,b,c){"function"==typeof b&&(c=b,b=null);var d=g.test(process.version)?function(a,b,c,d){return f(a,e(a,b,c,d))}:function(a,b,c,d){return f(a,b,e(a,b,c,d))};return d(a,b,c);function e(a,b,c,e){return function(f,g){f&&("EMFILE"===f.code||"ENFILE"===f.code)?o([d,[a,b,c],f,e||Date.now(),Date.now()]):(g&&g.sort&&g.sort(),"function"==typeof c&&c.call(this,f,g))}}};var g=/^v[0-5]\./;if("v0.8"===process.version.substr(0,4)){var j=i(a);q=j.ReadStream,r=j.WriteStream}var k=a.ReadStream;k&&(q.prototype=Object.create(k.prototype),q.prototype.open=function(){var a=this;t(a.path,a.flags,a.mode,function(b,c){b?(a.autoClose&&a.destroy(),a.emit("error",b)):(a.fd=c,a.emit("open",c),a.read())})});var l=a.WriteStream;l&&(r.prototype=Object.create(l.prototype),r.prototype.open=function(){var a=this;t(a.path,a.flags,a.mode,function(b,c){b?(a.destroy(),a.emit("error",b)):(a.fd=c,a.emit("open",c))})}),Object.defineProperty(a,"ReadStream",{get:function(){return q},set:function(a){q=a},enumerable:!0,configurable:!0}),Object.defineProperty(a,"WriteStream",{get:function(){return r},set:function(a){r=a},enumerable:!0,configurable:!0});var m=q;Object.defineProperty(a,"FileReadStream",{get:function(){return m},set:function(a){m=a},enumerable:!0,configurable:!0});var p=r;function q(a,b){return this instanceof q?(k.apply(this,arguments),this):q.apply(Object.create(q.prototype),arguments)}function r(a,b){return this instanceof r?(l.apply(this,arguments),this):r.apply(Object.create(r.prototype),arguments)}Object.defineProperty(a,"FileWriteStream",{get:function(){return p},set:function(a){p=a},enumerable:!0,configurable:!0});var s=a.open;function t(a,b,c,d){return"function"==typeof c&&(d=c,c=null),function a(b,c,d,e,f){return s(b,c,d,function(g,h){g&&("EMFILE"===g.code||"ENFILE"===g.code)?o([a,[b,c,d,e],g,f||Date.now(),Date.now()]):"function"==typeof e&&e.apply(this,arguments)})}(a,b,c,d)}return a.open=t,a}function o(a){m("ENQUEUE",a[0].name,a[1]),g[d].push(a),q()}function p(){for(var a=Date.now(),b=0;b<g[d].length;++b)g[d][b].length>2&&(g[d][b][3]=a,g[d][b][4]=a);q()}function q(){if(clearTimeout(f),f=void 0,0!==g[d].length){var a=g[d].shift(),b=a[0],c=a[1],e=a[2],h=a[3],i=a[4];if(void 0===h)m("RETRY",b.name,c),b.apply(null,c);else if(Date.now()-h>=6e4){m("TIMEOUT",b.name,c);var j=c.pop();"function"==typeof j&&j.call(null,e)}else Date.now()-i>=Math.min(1.2*Math.max(i-h,1),100)?(m("RETRY",b.name,c),b.apply(null,c.concat([h]))):g[d].push(a);void 0===f&&(f=setTimeout(q,0))}}k.debuglog?m=k.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(m=function(){var a=k.format.apply(k,arguments);console.error(a="GFS4: "+a.split(/\n/).join("\nGFS4: "))}),!g[d]&&(l(g,global[d]||[]),g.close=function(a){function b(b,c){return a.call(g,b,function(a){a||p(),"function"==typeof c&&c.apply(this,arguments)})}return Object.defineProperty(b,e,{value:a}),b}(g.close),g.closeSync=function(a){function b(b){a.apply(g,arguments),p()}return Object.defineProperty(b,e,{value:a}),b}(g.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){m(g[d]),c(12412).equal(g[d].length,0)})),global[d]||l(global,g[d]),a.exports=n(j(g)),process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!g.__patched&&(a.exports=n(g),g.__patched=!0)},96515:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{I:()=>j,p:()=>i});var e=c(75430),f=a([e]);e=(f.then?(await f)():f)[0];let k=new Set(["off","minimal","low","medium","high","xhigh","max"]);function g(a,b){return a.provider===b.provider&&a.id===b.modelId}function h(a,b){let c=a.toLowerCase(),d=b.filter(a=>`${a.provider}/${a.id}`.toLowerCase()===c);return d.length>0?d:b.filter(a=>a.id.toLowerCase()===c)}async function i(a,b){let c=(b??[]).map(a=>a.trim()).filter(Boolean);if(0===c.length)return{visible:await a.getAvailable(),scopedModels:[],thinkingLevelPins:{},warnings:[]};let d=await a.getAvailable();!function(a,b){for(let c of a){if(c.includes("*")||c.includes("?")||c.includes("["))continue;let a=h(c,b);if(0===a.length){let d=c.lastIndexOf(":"),e=d>=0?c.slice(d+1):"";k.has(e)&&(a=h(c.slice(0,d),b))}if(a.length>1){let b=a.map(a=>`${a.provider}/${a.id}`).sort().join(", ");throw Error(`Ambiguous enabledModels entry "${c}" matches multiple models: ${b}. Use provider/modelId.`)}}}(c,d);let{scopedModels:f,diagnostics:g}=await (0,e.resolveModelScopeWithDiagnostics)(c,{getAvailable:async()=>d}),i=g.map(a=>a.message);if(0===f.length)return{visible:d,scopedModels:[],thinkingLevelPins:{},warnings:i};let j={};for(let a of f)a.thinkingLevel&&(j[`${a.model.provider}/${a.model.id}`]=a.thinkingLevel);return{visible:f.map(a=>a.model),scopedModels:f,thinkingLevelPins:j,warnings:i}}function j(a,b={}){let c=b.requestedModel,d=b.defaultModel,e=c?a.visible.find(a=>g(a,c)):void 0;if(c&&!e)throw Error(`Model is not available in the enabled scope: ${c.provider}/${c.modelId}`);let f=e?a.scopedModels.find(a=>a.model===e||g(a.model,{provider:e.provider,modelId:e.id})):void 0,h=!e&&d?a.scopedModels.find(a=>g(a.model,d)):void 0,i=e?void 0:h??a.scopedModels[0],k=e||i||!d?void 0:a.visible.find(a=>g(a,d)),l=e??i?.model??k,m=f??i,n=b.thinkingLevel??m?.thinkingLevel;return{...l?{model:l}:{},...n?{thinkingLevel:n}:{},scopedModels:[...a.scopedModels]}}d()}catch(a){d(a)}})},99595:(a,b,c)=>{"use strict";function d(){let a=null;return{handle(b){if("agent_start"===b.type)return{kind:"touch"};if("message_end"===b.type){let c=b.message;if(c?.role==="assistant"){let b,d="string"==typeof(b=c.content)?b.trim():Array.isArray(b)?b.filter(a=>!!a&&"object"==typeof a).filter(a=>"text"===a.type&&"string"==typeof a.text).map(a=>a.text).join("\n").trim():"";d&&(a={lastReply:d,at:"number"==typeof c.timestamp?c.timestamp:Date.now()})}return null}if("agent_settled"===b.type){let b=a;return a=null,b?{kind:"outcome",...b}:{kind:"touch"}}return null}}}c.d(b,{S:()=>d})}};