@duetso/agent 0.2.2 → 0.2.4

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 (235) hide show
  1. package/README.md +19 -11
  2. package/dist/package.json +4 -4
  3. package/dist/src/cli/config.d.ts +10 -0
  4. package/dist/src/cli/config.d.ts.map +1 -0
  5. package/dist/src/cli/config.js +24 -0
  6. package/dist/src/cli/config.js.map +1 -0
  7. package/dist/src/cli/help.d.ts.map +1 -1
  8. package/dist/src/cli/help.js +16 -13
  9. package/dist/src/cli/help.js.map +1 -1
  10. package/dist/src/cli/inline-slash.d.ts +2 -1
  11. package/dist/src/cli/inline-slash.d.ts.map +1 -1
  12. package/dist/src/cli/inline-slash.js +14 -5
  13. package/dist/src/cli/inline-slash.js.map +1 -1
  14. package/dist/src/cli/memory-query.d.ts +1 -1
  15. package/dist/src/cli/model.d.ts +1 -1
  16. package/dist/src/cli/model.d.ts.map +1 -1
  17. package/dist/src/cli/model.js +1 -1
  18. package/dist/src/cli/model.js.map +1 -1
  19. package/dist/src/cli/route.d.ts +84 -0
  20. package/dist/src/cli/route.d.ts.map +1 -0
  21. package/dist/src/cli/route.js +261 -0
  22. package/dist/src/cli/route.js.map +1 -0
  23. package/dist/src/cli/rpc.d.ts +52 -9
  24. package/dist/src/cli/rpc.d.ts.map +1 -1
  25. package/dist/src/cli/rpc.js +195 -28
  26. package/dist/src/cli/rpc.js.map +1 -1
  27. package/dist/src/cli/run.d.ts +8 -1
  28. package/dist/src/cli/run.d.ts.map +1 -1
  29. package/dist/src/cli/run.js +24 -7
  30. package/dist/src/cli/run.js.map +1 -1
  31. package/dist/src/cli/shared.d.ts +4 -3
  32. package/dist/src/cli/shared.d.ts.map +1 -1
  33. package/dist/src/cli/shared.js +3 -4
  34. package/dist/src/cli/shared.js.map +1 -1
  35. package/dist/src/cli/shutdown.d.ts +4 -2
  36. package/dist/src/cli/shutdown.d.ts.map +1 -1
  37. package/dist/src/cli/shutdown.js +4 -2
  38. package/dist/src/cli/shutdown.js.map +1 -1
  39. package/dist/src/cli.d.ts +2 -0
  40. package/dist/src/cli.d.ts.map +1 -1
  41. package/dist/src/cli.js +12 -0
  42. package/dist/src/cli.js.map +1 -1
  43. package/dist/src/core/structured-output.d.ts +2 -0
  44. package/dist/src/core/structured-output.d.ts.map +1 -1
  45. package/dist/src/core/structured-output.js +1 -0
  46. package/dist/src/core/structured-output.js.map +1 -1
  47. package/dist/src/lib/system-reminder.d.ts +14 -0
  48. package/dist/src/lib/system-reminder.d.ts.map +1 -0
  49. package/dist/src/lib/system-reminder.js +53 -0
  50. package/dist/src/lib/system-reminder.js.map +1 -0
  51. package/dist/src/lib/walk-ancestors.d.ts +9 -0
  52. package/dist/src/lib/walk-ancestors.d.ts.map +1 -0
  53. package/dist/src/lib/walk-ancestors.js +28 -0
  54. package/dist/src/lib/walk-ancestors.js.map +1 -0
  55. package/dist/src/memory/observational-prompts.d.ts.map +1 -1
  56. package/dist/src/memory/observational-prompts.js +2 -1
  57. package/dist/src/memory/observational-prompts.js.map +1 -1
  58. package/dist/src/memory/observational.d.ts +31 -4
  59. package/dist/src/memory/observational.d.ts.map +1 -1
  60. package/dist/src/memory/observational.js +43 -4
  61. package/dist/src/memory/observational.js.map +1 -1
  62. package/dist/src/model-resolution/catalog.d.ts +2 -2
  63. package/dist/src/model-resolution/catalog.d.ts.map +1 -1
  64. package/dist/src/model-resolution/catalog.js +61 -33
  65. package/dist/src/model-resolution/catalog.js.map +1 -1
  66. package/dist/src/model-resolution/duet-gateway.d.ts +3 -3
  67. package/dist/src/model-resolution/duet-gateway.d.ts.map +1 -1
  68. package/dist/src/model-resolution/duet-gateway.js +119 -19
  69. package/dist/src/model-resolution/duet-gateway.js.map +1 -1
  70. package/dist/src/model-resolution/model-gateway.d.ts.map +1 -0
  71. package/dist/src/{cli → model-resolution}/model-gateway.js +10 -6
  72. package/dist/src/model-resolution/model-gateway.js.map +1 -0
  73. package/dist/src/model-resolution/resolver.d.ts +11 -4
  74. package/dist/src/model-resolution/resolver.d.ts.map +1 -1
  75. package/dist/src/model-resolution/resolver.js +39 -8
  76. package/dist/src/model-resolution/resolver.js.map +1 -1
  77. package/dist/src/model-routing/advisor-transcript.d.ts +36 -0
  78. package/dist/src/model-routing/advisor-transcript.d.ts.map +1 -0
  79. package/dist/src/model-routing/advisor-transcript.js +103 -0
  80. package/dist/src/model-routing/advisor-transcript.js.map +1 -0
  81. package/dist/src/model-routing/advisor.d.ts +27 -0
  82. package/dist/src/model-routing/advisor.d.ts.map +1 -0
  83. package/dist/src/model-routing/advisor.js +20 -0
  84. package/dist/src/model-routing/advisor.js.map +1 -0
  85. package/dist/src/model-routing/classifier.d.ts +57 -0
  86. package/dist/src/model-routing/classifier.d.ts.map +1 -0
  87. package/dist/src/model-routing/classifier.js +63 -0
  88. package/dist/src/model-routing/classifier.js.map +1 -0
  89. package/dist/src/model-routing/loader.d.ts +48 -0
  90. package/dist/src/model-routing/loader.d.ts.map +1 -0
  91. package/dist/src/model-routing/loader.js +79 -0
  92. package/dist/src/model-routing/loader.js.map +1 -0
  93. package/dist/src/model-routing/prompts.d.ts +22 -0
  94. package/dist/src/model-routing/prompts.d.ts.map +1 -0
  95. package/dist/src/model-routing/prompts.js +87 -0
  96. package/dist/src/model-routing/prompts.js.map +1 -0
  97. package/dist/src/model-routing/resolve.d.ts +40 -0
  98. package/dist/src/model-routing/resolve.d.ts.map +1 -0
  99. package/dist/src/model-routing/resolve.js +76 -0
  100. package/dist/src/model-routing/resolve.js.map +1 -0
  101. package/dist/src/model-routing/router.d.ts +149 -0
  102. package/dist/src/model-routing/router.d.ts.map +1 -0
  103. package/dist/src/model-routing/router.js +235 -0
  104. package/dist/src/model-routing/router.js.map +1 -0
  105. package/dist/src/model-routing/step-triggers.d.ts +27 -0
  106. package/dist/src/model-routing/step-triggers.d.ts.map +1 -0
  107. package/dist/src/model-routing/step-triggers.js +20 -0
  108. package/dist/src/model-routing/step-triggers.js.map +1 -0
  109. package/dist/src/model-routing/table.d.ts +126 -0
  110. package/dist/src/model-routing/table.d.ts.map +1 -0
  111. package/dist/src/model-routing/table.js +351 -0
  112. package/dist/src/model-routing/table.js.map +1 -0
  113. package/dist/src/session/session.d.ts +40 -23
  114. package/dist/src/session/session.d.ts.map +1 -1
  115. package/dist/src/session/session.js +173 -97
  116. package/dist/src/session/session.js.map +1 -1
  117. package/dist/src/tasks/quiescence.d.ts +13 -0
  118. package/dist/src/tasks/quiescence.d.ts.map +1 -0
  119. package/dist/src/tasks/quiescence.js +11 -0
  120. package/dist/src/tasks/quiescence.js.map +1 -0
  121. package/dist/src/tasks/task-manager.d.ts +101 -0
  122. package/dist/src/tasks/task-manager.d.ts.map +1 -0
  123. package/dist/src/tasks/task-manager.js +311 -0
  124. package/dist/src/tasks/task-manager.js.map +1 -0
  125. package/dist/src/tasks/types.d.ts +85 -0
  126. package/dist/src/tasks/types.d.ts.map +1 -0
  127. package/dist/src/tasks/types.js +2 -0
  128. package/dist/src/tasks/types.js.map +1 -0
  129. package/dist/src/tui/app.d.ts +1 -1
  130. package/dist/src/tui/app.d.ts.map +1 -1
  131. package/dist/src/tui/app.js +12 -2
  132. package/dist/src/tui/app.js.map +1 -1
  133. package/dist/src/tui/initial-prompt.d.ts.map +1 -1
  134. package/dist/src/tui/initial-prompt.js +0 -3
  135. package/dist/src/tui/initial-prompt.js.map +1 -1
  136. package/dist/src/tui/session-subscription.d.ts +3 -0
  137. package/dist/src/tui/session-subscription.d.ts.map +1 -1
  138. package/dist/src/tui/session-subscription.js +29 -5
  139. package/dist/src/tui/session-subscription.js.map +1 -1
  140. package/dist/src/tui/sidebar.d.ts +3 -0
  141. package/dist/src/tui/sidebar.d.ts.map +1 -1
  142. package/dist/src/tui/sidebar.js +19 -3
  143. package/dist/src/tui/sidebar.js.map +1 -1
  144. package/dist/src/tui/slash-commands.d.ts +12 -9
  145. package/dist/src/tui/slash-commands.d.ts.map +1 -1
  146. package/dist/src/tui/slash-commands.js +48 -10
  147. package/dist/src/tui/slash-commands.js.map +1 -1
  148. package/dist/src/tui/status-controller.d.ts +14 -9
  149. package/dist/src/tui/status-controller.d.ts.map +1 -1
  150. package/dist/src/tui/status-controller.js +26 -7
  151. package/dist/src/tui/status-controller.js.map +1 -1
  152. package/dist/src/tui/task-lane-renderer.d.ts +30 -0
  153. package/dist/src/tui/task-lane-renderer.d.ts.map +1 -0
  154. package/dist/src/tui/task-lane-renderer.js +93 -0
  155. package/dist/src/tui/task-lane-renderer.js.map +1 -0
  156. package/dist/src/tui/task-tree.d.ts +47 -0
  157. package/dist/src/tui/task-tree.d.ts.map +1 -0
  158. package/dist/src/tui/task-tree.js +190 -0
  159. package/dist/src/tui/task-tree.js.map +1 -0
  160. package/dist/src/tui/tool-formatters.js +3 -0
  161. package/dist/src/tui/tool-formatters.js.map +1 -1
  162. package/dist/src/turn-runner/agent-events.d.ts.map +1 -1
  163. package/dist/src/turn-runner/agent-events.js +1 -0
  164. package/dist/src/turn-runner/agent-events.js.map +1 -1
  165. package/dist/src/turn-runner/duration.d.ts +2 -2
  166. package/dist/src/turn-runner/duration.js +3 -3
  167. package/dist/src/turn-runner/duration.js.map +1 -1
  168. package/dist/src/turn-runner/prompts.d.ts +5 -1
  169. package/dist/src/turn-runner/prompts.d.ts.map +1 -1
  170. package/dist/src/turn-runner/prompts.js +30 -6
  171. package/dist/src/turn-runner/prompts.js.map +1 -1
  172. package/dist/src/turn-runner/runtime-clock.d.ts +20 -0
  173. package/dist/src/turn-runner/runtime-clock.d.ts.map +1 -0
  174. package/dist/src/turn-runner/runtime-clock.js +38 -0
  175. package/dist/src/turn-runner/runtime-clock.js.map +1 -0
  176. package/dist/src/turn-runner/shell-state-handle.d.ts +0 -3
  177. package/dist/src/turn-runner/shell-state-handle.d.ts.map +1 -1
  178. package/dist/src/turn-runner/shell-state-handle.js +5 -55
  179. package/dist/src/turn-runner/shell-state-handle.js.map +1 -1
  180. package/dist/src/turn-runner/skill-context.d.ts +6 -7
  181. package/dist/src/turn-runner/skill-context.d.ts.map +1 -1
  182. package/dist/src/turn-runner/skill-context.js +10 -10
  183. package/dist/src/turn-runner/skill-context.js.map +1 -1
  184. package/dist/src/turn-runner/skills.d.ts.map +1 -1
  185. package/dist/src/turn-runner/skills.js +2 -22
  186. package/dist/src/turn-runner/skills.js.map +1 -1
  187. package/dist/src/turn-runner/state-compaction.d.ts +7 -5
  188. package/dist/src/turn-runner/state-compaction.d.ts.map +1 -1
  189. package/dist/src/turn-runner/state-compaction.js +69 -10
  190. package/dist/src/turn-runner/state-compaction.js.map +1 -1
  191. package/dist/src/turn-runner/state-machine-decisions.d.ts +135 -0
  192. package/dist/src/turn-runner/state-machine-decisions.d.ts.map +1 -0
  193. package/dist/src/turn-runner/state-machine-decisions.js +443 -0
  194. package/dist/src/turn-runner/state-machine-decisions.js.map +1 -0
  195. package/dist/src/turn-runner/state-machine-session.d.ts +13 -28
  196. package/dist/src/turn-runner/state-machine-session.d.ts.map +1 -1
  197. package/dist/src/turn-runner/state-machine-session.js +18 -55
  198. package/dist/src/turn-runner/state-machine-session.js.map +1 -1
  199. package/dist/src/turn-runner/subagent.d.ts +156 -0
  200. package/dist/src/turn-runner/subagent.d.ts.map +1 -0
  201. package/dist/src/turn-runner/subagent.js +164 -0
  202. package/dist/src/turn-runner/subagent.js.map +1 -0
  203. package/dist/src/turn-runner/task-tools.d.ts +76 -0
  204. package/dist/src/turn-runner/task-tools.d.ts.map +1 -0
  205. package/dist/src/turn-runner/task-tools.js +370 -0
  206. package/dist/src/turn-runner/task-tools.js.map +1 -0
  207. package/dist/src/turn-runner/tools.d.ts +65 -17
  208. package/dist/src/turn-runner/tools.d.ts.map +1 -1
  209. package/dist/src/turn-runner/tools.js +173 -59
  210. package/dist/src/turn-runner/tools.js.map +1 -1
  211. package/dist/src/turn-runner/turn-runner.d.ts +205 -135
  212. package/dist/src/turn-runner/turn-runner.d.ts.map +1 -1
  213. package/dist/src/turn-runner/turn-runner.js +1311 -714
  214. package/dist/src/turn-runner/turn-runner.js.map +1 -1
  215. package/dist/src/turn-runner/usage-accounting.d.ts +4 -0
  216. package/dist/src/turn-runner/usage-accounting.d.ts.map +1 -1
  217. package/dist/src/turn-runner/usage-accounting.js +19 -0
  218. package/dist/src/turn-runner/usage-accounting.js.map +1 -1
  219. package/dist/src/types/config.d.ts +9 -1
  220. package/dist/src/types/config.d.ts.map +1 -1
  221. package/dist/src/types/config.js +2 -1
  222. package/dist/src/types/config.js.map +1 -1
  223. package/dist/src/types/protocol.d.ts +124 -30
  224. package/dist/src/types/protocol.d.ts.map +1 -1
  225. package/dist/src/types/state-machine.d.ts +10 -12
  226. package/dist/src/types/state-machine.d.ts.map +1 -1
  227. package/dist/src/types/state-machine.js.map +1 -1
  228. package/package.json +4 -4
  229. package/dist/src/cli/model-gateway.d.ts.map +0 -1
  230. package/dist/src/cli/model-gateway.js.map +0 -1
  231. package/dist/src/turn-runner/state-machine-controller.d.ts +0 -140
  232. package/dist/src/turn-runner/state-machine-controller.d.ts.map +0 -1
  233. package/dist/src/turn-runner/state-machine-controller.js +0 -501
  234. package/dist/src/turn-runner/state-machine-controller.js.map +0 -1
  235. /package/dist/src/{cli → model-resolution}/model-gateway.d.ts +0 -0
@@ -2,18 +2,42 @@ import { Agent, type AgentEvent, type AgentMessage, type AgentTool } from "@eare
2
2
  import { type ImageContent, type Usage } from "@earendil-works/pi-ai";
3
3
  import type { Skill } from "@earendil-works/pi-coding-agent";
4
4
  import type { SkillCollision } from "./skills.js";
5
+ import { ModelRouter, type ModelRouterOptions, type RouterStatus } from "../model-routing/router.js";
6
+ import { type AdvisorPolicy } from "../model-routing/table.js";
5
7
  import { MemoryContextCache } from "../memory/store.js";
6
- import type { TurnRunnerConfig } from "../types/config.js";
8
+ import { type TurnRunnerConfig } from "../types/config.js";
7
9
  import type { TurnAgentFile, TurnAnswerCommand, TurnContextWindowUsage, WireGuardHorizon, TurnEditFollowUpQueueCommand, TurnEvent, TurnEventOrigin, TurnInterruptCommand, TurnMode, TurnPromptCommand, TurnState, TurnTokenUsage, TurnStartCommand, TurnTerminalEvent, TurnCommand, TurnOptions } from "../types/protocol.js";
8
10
  import type { StateMachineAgentState } from "../types/state-machine.js";
9
- import { type TurnRunnerControlResult } from "./tools.js";
11
+ import { type AskAdvisorToolStorage, type TurnRunnerControlResult } from "./tools.js";
10
12
  import { SkillContext } from "./skill-context.js";
11
- import { type StateAgentHandle } from "./state-machine-controller.js";
13
+ import { type SubagentAgentConfigInput, type SubagentExecutionContext, type SubagentRun, type SubagentSpec } from "./subagent.js";
12
14
  import { type TransientRetryPolicy } from "./transient-error.js";
15
+ import { type RuntimeClock } from "./runtime-clock.js";
16
+ import { type TaskManager } from "../tasks/task-manager.js";
17
+ import type { ScopeId, TaskId, TaskSettlement } from "../tasks/types.js";
18
+ /** @internal Constructor-only lifecycle seams; these are deliberately absent from config. */
19
+ interface TurnRunnerDependencies {
20
+ /** Internal wall-clock seam for deterministic task and schedule lifecycle tests. */
21
+ clock?: RuntimeClock;
22
+ /** Internal schedule-validation override; production keeps the 15-minute floor. */
23
+ minimumScheduledDelayMs?: number;
24
+ }
25
+ interface ChildToolContext {
26
+ /** Scope that owns tasks created by this child. */
27
+ ownerScopeId: ScopeId;
28
+ /** Session identity used by recall_memory. */
29
+ memorySessionId?: string;
30
+ /** Live caller transcript used by recursive fork_context spawns. */
31
+ forkSource: NonNullable<SubagentExecutionContext["forkSource"]>;
32
+ /** Concrete setting of the child that owns this recursively callable toolset. */
33
+ modelSetting(): string;
34
+ }
13
35
  export type TurnEventHandler = (event: TurnEvent) => void;
14
36
  export interface AgentWorkerInput {
15
37
  state: TurnState;
16
38
  prompt: string;
39
+ /** Internal loop passes continue the same public turn and must retain router facts. */
40
+ continuation?: boolean;
17
41
  /**
18
42
  * Optional image attachments forwarded to `agent.prompt(text, images)`.
19
43
  * Only the parent prompt path carries images; state-machine sub-agents and
@@ -21,21 +45,17 @@ export interface AgentWorkerInput {
21
45
  */
22
46
  images?: ImageContent[];
23
47
  }
24
- export interface AgentConfigInput {
25
- state: TurnState;
26
- /** System-prompt layer placed before the host systemInstructions; see createSystemPromptWithAppendedLayers. */
27
- prependSystemPrompt?: string;
28
- appendSystemPrompt?: string;
29
- /** Reuse an existing rendered system prompt verbatim instead of rebuilding it from layers. */
30
- systemPrompt?: string;
31
- skills?: Skill[];
32
- tools: AgentTool[];
48
+ export interface AgentConfigInput extends SubagentAgentConfigInput {
49
+ /** Parent boot router used to select the initial concrete model and effort. */
50
+ router?: ModelRouter;
51
+ /** Installs the parent routing hook even when boot starts from a concrete selection. */
52
+ parentModelRouting?: boolean;
33
53
  }
34
54
  /**
35
55
  * Internal outcome of a single `runAgentWorker` call. Narrower than the
36
56
  * public `TurnTerminalEvent`: a worker only produces `complete` or
37
57
  * `interrupted`. `ask` is synthesized later from `control`; `sleep` is
38
- * synthesized by the state-machine controller.
58
+ * synthesized by the task-backed turn loop.
39
59
  */
40
60
  export type AgentWorkerOutcome = {
41
61
  type: "complete";
@@ -60,6 +80,23 @@ export interface AgentWorkerResult {
60
80
  */
61
81
  parentUsage?: TurnTokenUsage;
62
82
  }
83
+ export type ParentLoopInput = {
84
+ type: "user_command";
85
+ command: TurnPromptCommand | TurnAnswerCommand;
86
+ continuation?: boolean;
87
+ } | {
88
+ type: "task_settlements";
89
+ settlements: TaskSettlement[];
90
+ } | {
91
+ type: "transition_enforcement";
92
+ stateName: string;
93
+ output?: unknown;
94
+ } | {
95
+ type: "terminal_acknowledgment";
96
+ } | {
97
+ type: "wake";
98
+ queued?: boolean;
99
+ };
63
100
  /**
64
101
  * Rescale the four segment estimates so they sum exactly to the
65
102
  * provider-reported `totalTokens` on the latest assistant message.
@@ -85,14 +122,55 @@ export declare class TurnRunner {
85
122
  * transcript grows across every pi-agent turn in this duet-agent session.
86
123
  */
87
124
  private parentAgent?;
125
+ /** Virtual-model policy owner for the parent session, retained while a concrete pin suspends it. */
126
+ protected modelRouter?: ModelRouter;
127
+ /** Validated project routing table used by parent retargets and explicit virtual state models. */
128
+ private routingTable?;
129
+ /** Model selection queued while a parent turn is running; applied at the next turn boundary. */
130
+ private pendingModelSelection?;
131
+ /** Advisor target and transcript budget selected with the current virtual tier. */
132
+ private advisorPolicy?;
88
133
  /** True only while the parent pi agent is actively producing the public terminal event. */
89
134
  private parentAgentRunning;
90
- /** Last turn-runner control tool result observed from the parent agent. */
91
- private parentControlResult;
92
- /** Runtime owner for state-machine progress and active state work. */
93
- private readonly stateMachineController;
94
- /** Parent prompt started by a steer while state-machine work is driving the turn. */
95
- private activeStateWorkPrompt?;
135
+ /** Control results captured during the current parent pass. More than one is a protocol error. */
136
+ private readonly parentControlResults;
137
+ /** Durable state-machine policy ledger; execution lives in TaskManager. */
138
+ private stateMachine?;
139
+ /** Runtime owner for every state execution and scheduled wake. */
140
+ /** Protected for test probes (task descriptors, scope injection); production owner is the loop. */
141
+ protected readonly taskManager: TaskManager;
142
+ /** Execution-only metadata keyed by TaskManager's stable task id. */
143
+ private readonly stateTasks;
144
+ /** One-shot context attached to the first real parent pass after lost-task recovery. */
145
+ private recoveredTaskReminder?;
146
+ /** Ask withheld by the quiescence gate; re-surfaced on the parent's next pass. */
147
+ private withheldAskQuestions?;
148
+ /** Legacy persisted user-lane projection retained until the next loop owns it. */
149
+ private hydratedQueuedCommands?;
150
+ /** Inputs waiting for the single parent slot between sequential passes. */
151
+ private readonly parentInputs;
152
+ /** Wakes the loop when a user command arrives while task work is in process. */
153
+ private readonly parentInputWaiters;
154
+ /** Settlements already folded into the ledger during replacement/interrupt. */
155
+ private readonly ignoredTaskSettlements;
156
+ /** Delivery posture for task-backed foreground bash calls. */
157
+ private readonly taskSettlementDelivery;
158
+ /** Coalesces same-tick settlements into one FIFO drain and one B3 notice. */
159
+ private settlementDeliveryQueued;
160
+ /** Monotonic root-scope suffix; each public turn owns one root scope. */
161
+ private nextRootScope;
162
+ /** Scope currently accepting state tasks. */
163
+ private activeRootScopeId?;
164
+ /** Tools are built once at the public-turn boundary and reused by every parent pass. */
165
+ private turnTools?;
166
+ /** Set by interrupt so the loop's sole exit can short-circuit pending-work computation. */
167
+ private interruptReason?;
168
+ /** Full task/process unwind started by interrupt(), awaited before its terminal. */
169
+ private interruptCleanup?;
170
+ /** Guards the single public terminal emission for the active turn. */
171
+ private terminalEmitted;
172
+ /** Shared construction path for relay agent states and spawned children. */
173
+ private readonly subagentExecutor;
96
174
  /**
97
175
  * Set true by `interrupt()` while a parent-agent prompt is in flight, so
98
176
  * `runAgentWorker` can tell our own abort apart from a real provider error
@@ -146,7 +224,11 @@ export declare class TurnRunner {
146
224
  /** MCP servers connected during start(). Disposed on runner.dispose(). */
147
225
  private mcpRuntime?;
148
226
  protected readonly skillContext: SkillContext;
149
- constructor(config: TurnRunnerConfig);
227
+ protected readonly clock: RuntimeClock;
228
+ protected readonly minimumScheduledDelayMs: number;
229
+ /** Foreground expiry yields a still-running result without cancelling the task. */
230
+ protected readonly taskWaitBudgetMs: number;
231
+ constructor(config: TurnRunnerConfig, dependencies?: TurnRunnerDependencies);
150
232
  dispose(): Promise<void>;
151
233
  subscribe(handler: TurnEventHandler): () => void;
152
234
  editFollowUpQueue(command: TurnEditFollowUpQueueCommand): void;
@@ -180,12 +262,10 @@ export declare class TurnRunner {
180
262
  * uses) so the rendered prefix lines up with the new horizon and the
181
263
  * next prompt-cache fault is paid once instead of twice.
182
264
  *
183
- * Rejected with a soft warning when a turn chain is in flight
184
- * mutating the horizon mid-stream would invalidate the request the
185
- * parent (or a state agent) is already dispatching. `activeTurnPromise`
186
- * is the single source of truth here, so poll/timer sleeps pass the
187
- * gate cleanly: the chain has already resolved to the `sleep` terminal
188
- * before compact is allowed to run.
265
+ * Rejected with a soft warning while a parent pass is dispatching or while
266
+ * the turn loop is active without an in-process task. A running task opens
267
+ * the parent-idle window: its transcript is isolated from the parent wire
268
+ * horizon, so compact may safely advance that horizon between passes.
189
269
  */
190
270
  compact(): Promise<void>;
191
271
  private runCompact;
@@ -198,19 +278,24 @@ export declare class TurnRunner {
198
278
  * sees available skills before typing the first prompt.
199
279
  */
200
280
  start(command: TurnStartCommand): Promise<TurnState>;
201
- turn(command: TurnCommand): Promise<TurnTerminalEvent>;
202
- private runTurnChain;
203
- private executeTurnCommand;
281
+ /**
282
+ * Route a turn-driving command and resolve with the shared chain terminal.
283
+ * `onAccepted` fires only after the command has entered the active driver or
284
+ * the runner-owned queue; transports can acknowledge delivery at that
285
+ * boundary without leaking transport metadata into durable turn state.
286
+ */
287
+ turn(command: TurnCommand, onAccepted?: () => void): Promise<TurnTerminalEvent>;
288
+ private runTurnLoop;
204
289
  private handleCommandDuringActiveTurn;
205
290
  private sendCommandToAgent;
206
- private startParentPromptDuringActiveStateWork;
207
- private runParentPromptDuringActiveStateWork;
208
- private drainQueuedTurnCommands;
291
+ private enqueueParentInput;
292
+ private waitForLoopActivity;
293
+ private enqueueAvailableSettlements;
294
+ private handleTaskEvent;
295
+ private scheduleSettlementDelivery;
296
+ private discardStaleTaskSettlements;
209
297
  private commandToUserMessage;
210
- private enqueueTurnCommand;
211
298
  private replaceFollowUpQueue;
212
- private replaceQueuedFollowUpCommands;
213
- private removeQueuedFollowUpCommands;
214
299
  private isFollowUpQueueCommand;
215
300
  private appendFollowUpPrompt;
216
301
  private removeQueuedFollowUpPrompt;
@@ -225,90 +310,66 @@ export declare class TurnRunner {
225
310
  private emitFollowUpQueue;
226
311
  interrupt(_command: TurnInterruptCommand): void;
227
312
  protected emit(event: TurnEvent): void;
228
- protected prompt(command: TurnPromptCommand): Promise<TurnTerminalEvent>;
229
- protected answer(command: TurnAnswerCommand): Promise<TurnTerminalEvent>;
230
- protected wake(): Promise<TurnTerminalEvent>;
231
- private restoreSleepAfterPromptIfNeeded;
232
- private controllerResultToTerminal;
233
- private driveStateMachineResult;
234
- /**
235
- * Re-prompt the parent agent once after a state-machine terminal.
236
- *
237
- * The flag is per-session, so a fresh state machine created during
238
- * the acknowledgment turn — which `createStateMachineSession` builds
239
- * as a brand-new session object — will run its own acknowledgment
240
- * when it terminates. The flag's only job is to prevent the same
241
- * session.terminal from being re-acknowledged, which would otherwise
242
- * happen if the parent (incorrectly) routes back into the controller
243
- * on the already-terminal session and the controller re-records a
244
- * terminal on it.
245
- *
246
- * Behavior:
247
- * - Builds the acknowledgment prompt via
248
- * `formatStateMachineTerminalAcknowledgmentPrompt`. The prompt is
249
- * neutral with respect to "decided vs runtime failure" — the
250
- * parent's own transcript already shows whether it selected the
251
- * terminal, and `status`/`reason` carry the rest of the framing.
252
- * - Runs one parent worker pass with full state-machine tool access.
253
- * The parent is steered to reply in plain text and let control
254
- * return to the user; full tool access only means a control action
255
- * on this turn (e.g. an explicitly instructed create) is handled
256
- * rather than silently dropped, per the next bullet.
257
- * - On interruption, surfaces an `interrupted` terminal event for
258
- * the whole turn.
259
- * - When the parent's reply carries a control action, drives that
260
- * control through the standard `driveStateMachineResult` path so
261
- * any newly-created state machine runs end-to-end and itself
262
- * produces a follow-up terminal (which also gets acknowledged via
263
- * its own session).
264
- * - When the parent's reply is plain text, returns `undefined` so
265
- * the caller renders the original terminal (preserving
266
- * status/error/SM history) and the parent's natural-language
267
- * summary lands on the transcript as the final assistant message.
268
- */
269
- private runStateMachineTerminalAcknowledgment;
313
+ private processParentLoopInput;
314
+ private runUserCommandPass;
315
+ private runParentPass;
316
+ private runWakeInput;
317
+ private runTerminalAcknowledgmentPass;
318
+ private executePlannedWork;
319
+ private startSubagentTask;
320
+ private startShellTask;
321
+ private recordTaskSettlements;
322
+ private processTaskSettlements;
323
+ private stateResultFromSettlement;
324
+ private partialStateOutput;
325
+ private interruptTasks;
326
+ private cancelScheduledTasks;
270
327
  /**
271
328
  * Build a loop-warning system reminder when the orchestrator has selected the
272
329
  * same state many times in a row within a short window with no other state
273
330
  * running in between. This is the idle-"holding" hot loop: re-selecting a
274
331
  * state to "keep waiting" is a no-op because selecting runs the state again
275
332
  * immediately rather than suspending. The reminder re-teaches the only
276
- * primitives that actually wait — ask_user_question for a human reply, a poll
333
+ * primitives that actually wait — park for a parent-owned human gate, a poll
277
334
  * for a checkable condition, a timer for a fixed time — and tells the parent
278
335
  * to stop re-selecting the same state unchanged. Returns undefined when the
279
336
  * streak is below threshold or spread over too long a span to be a hot loop.
280
337
  */
281
338
  private repeatedSelectionLoopWarning;
282
339
  private selectNextStateAfterCompletion;
283
- /**
284
- * Enforce the transition owed after an agent state asked the user a question
285
- * and the user answered without the parent advancing the machine.
286
- *
287
- * The user's answer already ran as an ordinary parent prompt; reaching here
288
- * means that turn emitted no `select_state_machine_state`, so the machine is
289
- * still suspended at the asking state. Re-prompt under the same bounded
290
- * budget as a completed state, then record an `error` terminal if the parent
291
- * still refuses to advance.
292
- */
293
- private enforceTransitionAfterAnsweredAsk;
294
340
  /**
295
341
  * Shared bounded-retry loop for transitions the parent owes the machine.
296
342
  * Re-prompts up to `PARENT_TRANSITION_RETRY_BUDGET` times with `buildPrompt`
297
- * (the second and later attempts carry a retry reminder); the first attempt
298
- * that emits a control action returns its result. When the budget is
299
- * exhausted with no control action, records an `error` terminal carrying
300
- * `failureReason` — a runtime failure of the machine, not a deliberate
301
- * `failed` selection.
343
+ * (the second and later attempts carry a retry reminder); the first accepted
344
+ * selection ends enforcement, with an immediate outcome only for synchronous
345
+ * work. When the budget is exhausted with no control action, records an
346
+ * `error` terminal carrying `failureReason` — a runtime failure of the
347
+ * machine, not a deliberate `failed` selection.
302
348
  */
303
349
  private enforceParentTransition;
304
- protected createStateAgentHandle(input: {
350
+ protected createStateSubagentRun(input: {
305
351
  state: StateMachineAgentState;
306
352
  prompt: string;
307
- }): StateAgentHandle;
353
+ origin: TurnEventOrigin;
354
+ }): SubagentRun;
355
+ /** Build a public spawn only after TaskManager has allocated its identity and child scope. */
356
+ protected createSpawnedSubagentRun(publicSpec: SubagentSpec, taskId: TaskId, ownerScopeId: ScopeId, childScopeId: `task:${TaskId}`, forkSource?: NonNullable<SubagentExecutionContext["forkSource"]>, callerModelSetting?: string): Promise<SubagentRun>;
357
+ /** Stateless spawn classifier seam; deliberately never consults the session ModelRouter. */
358
+ protected selectSpawnModel(prompt: string, parentSetting: string): Promise<import("./subagent.js").SpawnModelSelection>;
359
+ protected dropSubagentScratch(taskId: TaskId): Promise<void>;
308
360
  private requireRunnerState;
309
- private resolveStateAgentSeedMessages;
361
+ private requireStateMachine;
362
+ /** Protected so test probes can supply a scope when driving tools outside a turn. */
363
+ protected requireRootScope(): ScopeId;
364
+ private setStateMachine;
365
+ private getActiveStateOutput;
366
+ private captureParentControlResult;
367
+ private consumeParentControlResult;
368
+ private attachTurnUsage;
369
+ private emitTerminalOnce;
310
370
  getState(): TurnState | undefined;
311
371
  private snapshotState;
372
+ private snapshotTaskOutputTails;
312
373
  /**
313
374
  * Caps the size of every state that leaves the runner via emit/return/
314
375
  * getState. Runs only when `TurnRunnerConfig.autoStateCompaction` is
@@ -321,37 +382,27 @@ export declare class TurnRunner {
321
382
  private snapshotActiveAgentState;
322
383
  private getFollowUpQueue;
323
384
  private setFollowUpQueue;
324
- private getQueuedCommands;
325
- private setQueuedCommands;
326
- private shiftQueuedCommand;
327
385
  private getTodos;
328
386
  private setTodos;
329
387
  private clearFinishedTodosAtTurnStart;
330
388
  private requireStarted;
331
389
  protected requireParentAgent(): Agent;
332
390
  private initializeParentAgent;
333
- protected runTurnRunnerAgentWithStateMachineTools(input: {
334
- state: TurnState;
335
- prompt: string;
336
- images?: ImageContent[];
337
- mode: Exclude<TurnMode, "agent">;
338
- }): Promise<TurnTerminalEvent>;
339
- /**
340
- * Turns a parent worker turn's control output into the state-machine
341
- * execution result the turn runner should drive next, or `undefined` when
342
- * the parent emitted no control tool call. Whether that `undefined` is
343
- * benign (a top-level agent turn just answering) or a violation (it owed a
344
- * select_state_machine_state) is the caller's decision. A valid control
345
- * action — select a state, ask the user, or create a machine (including a
346
- * replaceActive reset of an active machine) — returns its result.
347
- */
348
- private controllerResultFromWorkerResult;
349
- protected createTools(mode: TurnMode, cwdOverride?: string): {
391
+ private stateMachineResultFromWorker;
392
+ private runStateMachineDecision;
393
+ private replaceActiveStateTasks;
394
+ protected createTools(mode: TurnMode, cwdOverride?: string, includeParentTools?: boolean, childContext?: ChildToolContext): {
350
395
  tools: AgentTool[];
351
396
  };
352
- private replayFollowUpQueueIntoAgent;
353
- protected runAgentMode(state: TurnState, prompt: string, images?: ImageContent[]): Promise<TurnTerminalEvent>;
354
- protected runAgentWorker(input: AgentWorkerInput): Promise<AgentWorkerResult>;
397
+ private createSpawnTool;
398
+ protected createAskAdvisorStorage(router: ModelRouter, policy: AdvisorPolicy): AskAdvisorToolStorage;
399
+ /**
400
+ * Pass-prep applied to EVERY parent pass, including harness overrides of
401
+ * `runAgentWorker` (they must call this first). One-shot reminders that must
402
+ * reach "whatever parent pass runs next" live here.
403
+ */
404
+ protected prepareParentPassInput(input: AgentWorkerInput): AgentWorkerInput;
405
+ protected runAgentWorker(rawInput: AgentWorkerInput): Promise<AgentWorkerResult>;
355
406
  private setParentAgentRunning;
356
407
  /**
357
408
  * Inspect the most recent assistant message after a parent prompt and,
@@ -423,7 +474,7 @@ export declare class TurnRunner {
423
474
  * caller for real work each cycle — there is no free loop here.
424
475
  */
425
476
  protected retryTransientServerErrors(agent: Agent, policy?: TransientRetryPolicy): Promise<void>;
426
- protected updateMemoryAfterAgentRun(messages: AgentMessage[], options: TurnOptions | undefined): Promise<void>;
477
+ protected updateMemoryAfterAgentRun(messages: AgentMessage[], options: TurnOptions | undefined, sessionId?: string | undefined, refreshReflections?: boolean): Promise<void>;
427
478
  /**
428
479
  * Drain the unobserved tail into durable memory and refresh the
429
480
  * frozen context pack so the post-eviction render carries an
@@ -450,7 +501,7 @@ export declare class TurnRunner {
450
501
  */
451
502
  resolveMemoryActorModel(options: TurnOptions | undefined): string;
452
503
  protected createAgent(input: AgentConfigInput, onControlResult?: (result: TurnRunnerControlResult) => void): Agent;
453
- protected createMemoryTransform(): (messages: AgentMessage[]) => Promise<AgentMessage[]>;
504
+ protected createMemoryTransform(memoryContext?: SubagentAgentConfigInput["memoryContext"]): (messages: AgentMessage[]) => Promise<AgentMessage[]>;
454
505
  protected readonly wireGuardHorizon: WireGuardHorizon;
455
506
  getSkills(): Promise<readonly Skill[]>;
456
507
  /**
@@ -478,20 +529,14 @@ export declare class TurnRunner {
478
529
  append?: Array<string | undefined>;
479
530
  skills?: readonly Skill[];
480
531
  }): string;
481
- private askUserQuestion;
482
- /**
483
- * Lifts the internal `AgentWorkerOutcome` shape into the public
484
- * `TurnTerminalEvent` shape returned by `runTurnChain`. `runTurnChain`
485
- * attaches `usage` / `effectiveContextWindow` / `contextWindowUsage`
486
- * at the chain boundary, so this conversion intentionally omits them.
487
- */
488
- private outcomeToTerminal;
489
532
  /**
490
533
  * Single source of truth for per-turn option precedence:
491
534
  * explicit turn options → carried-over state base → runner config → defaults.
492
535
  */
493
536
  resolveTurnOptions(options?: TurnOptions, base?: TurnOptions): TurnOptions;
494
537
  protected recordUsage(usage?: TurnTokenUsage | Usage, modelId?: string): void;
538
+ /** Attribute a non-parent model call and publish it once a flat context snapshot exists. */
539
+ private recordAndEmitUsage;
495
540
  protected emitAgentEvent(event: AgentEvent, origin?: TurnEventOrigin): void;
496
541
  protected emitParentAgentEvent(event: AgentEvent): void;
497
542
  /**
@@ -510,11 +555,9 @@ export declare class TurnRunner {
510
555
  * Emit a `usage` event reflecting the latest `this.turnUsage`. Reuses the
511
556
  * most recent parent context-window snapshot for the bar/breakdown so
512
557
  * mid-turn ticks (parent worker finish, state-agent finish) surface cost
513
- * without jittering the parent context fields. No-ops when no usage has
514
- * been recorded yet or before the first parent emission both are only
515
- * possible during construction/teardown or in test harnesses; a real
516
- * parent worker always sets the snapshot before its terminal usage is
517
- * recorded.
558
+ * without jittering the parent context fields. Before the first parent
559
+ * completion, usage is recorded for the terminal and the first later usage
560
+ * event, but no incomplete wire event is emitted.
518
561
  */
519
562
  protected emitTurnUsage(origin?: TurnEventOrigin): void;
520
563
  /**
@@ -558,5 +601,32 @@ export declare class TurnRunner {
558
601
  * passes the live model window.
559
602
  */
560
603
  protected resolveEffectiveContext(modelWindow?: number): number;
604
+ /** Load the project table and build the parent router when the persisted selection is virtual. */
605
+ private initializeModelRouter;
606
+ private createBoundModelRouter;
607
+ /** One metered classifier contract shared by parent routing and spawned children. */
608
+ private classifierOptions;
609
+ /** True when a model name is owned by the validated project table. */
610
+ isVirtualModelSelection(modelName: string): boolean;
611
+ /** Read-only routing snapshot for session-owned UI surfaces. */
612
+ routeStatus(): RouterStatus | undefined;
613
+ /**
614
+ * Retarget subsequent parent turns while preserving the current in-flight turn.
615
+ * Concrete selections pin routing; virtual selections rebuild it so the next
616
+ * turn classifies from a fresh tier-local baseline.
617
+ */
618
+ setModel(modelName: string): {
619
+ routed: boolean;
620
+ };
621
+ private applyPendingModelSelection;
622
+ /** Explicit virtual state models take the tier's default route without classifier latency. */
623
+ private resolveStateModel;
624
+ /** Omitted child models inherit the parent's active concrete target, not its virtual setting. */
625
+ private resolveSubagentInheritedOptions;
626
+ /** Composition seam used by production binding and deterministic runner tests. */
627
+ protected createModelRouter(options: ModelRouterOptions): ModelRouter;
628
+ /** Resolve and atomically apply one router-owned model/effort change. */
629
+ private applyRouterSwitch;
561
630
  }
631
+ export {};
562
632
  //# sourceMappingURL=turn-runner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"turn-runner.d.ts","sourceRoot":"","sources":["../../../src/turn-runner/turn-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"turn-runner.d.ts","sourceRoot":"","sources":["../../../src/turn-runner/turn-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,SAAS,EACf,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAqB,KAAK,YAAY,EAAE,KAAK,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEzF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAWlD,OAAO,EACL,WAAW,EACX,KAAK,kBAAkB,EACvB,KAAK,YAAY,EAElB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAGL,KAAK,aAAa,EAEnB,MAAM,2BAA2B,CAAC;AAkBnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAOxD,OAAO,EAA+B,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAMxF,OAAO,KAAK,EACV,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EAChB,4BAA4B,EAC5B,SAAS,EACT,eAAe,EAEf,oBAAoB,EACpB,QAAQ,EACR,iBAAiB,EAGjB,SAAS,EACT,cAAc,EAEd,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,WAAW,EAEZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAexE,OAAO,EAML,KAAK,qBAAqB,EAG1B,KAAK,uBAAuB,EAG7B,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAmBlD,OAAO,EAIL,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,WAAW,EAChB,KAAK,YAAY,EAClB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAIL,KAAK,oBAAoB,EAC1B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,KAAK,EAAE,OAAO,EAAa,MAAM,EAAE,cAAc,EAAgB,MAAM,mBAAmB,CAAC;AAWlG,6FAA6F;AAC7F,UAAU,sBAAsB;IAC9B,oFAAoF;IACpF,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,mFAAmF;IACnF,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,UAAU,gBAAgB;IACxB,mDAAmD;IACnD,YAAY,EAAE,OAAO,CAAC;IACtB,8CAA8C;IAC9C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oEAAoE;IACpE,UAAU,EAAE,WAAW,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC,CAAC;IAChE,iFAAiF;IACjF,YAAY,IAAI,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;AAE1D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,uFAAuF;IACvF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,gBAAiB,SAAQ,wBAAwB;IAChE,+EAA+E;IAC/E,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,wFAAwF;IACxF,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,WAAW,GAAG,QAAQ,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,SAAS,CAAC;CAClB,GACD;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAE9C,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,kBAAkB,CAAC;IAC5B,OAAO,EAAE,uBAAuB,CAAC;IACjC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,cAAc,CAAC;CAC9B;AAED,MAAM,MAAM,eAAe,GACvB;IACE,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE,iBAAiB,GAAG,iBAAiB,CAAC;IAC/C,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,GACD;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,WAAW,EAAE,cAAc,EAAE,CAAA;CAAE,GAC3D;IAAE,IAAI,EAAE,wBAAwB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GACvE;IAAE,IAAI,EAAE,yBAAyB,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AA2BvC;;;;;;;;GAQG;AACH,wBAAgB,oCAAoC,CAClD,IAAI,EAAE,sBAAsB,EAC5B,WAAW,EAAE,MAAM,GAClB,sBAAsB,CAuDxB;AAaD,qBAAa,UAAU;IA6HnB,QAAQ,CAAC,MAAM,EAAE,gBAAgB;IA5HnC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA+B;IAC7D,gHAAgH;IAChH,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAgC;IACvE,iFAAiF;IACjF,SAAS,CAAC,QAAQ,CAAC,MAAM,qBAA4B;IACrD,mEAAmE;IACnE,OAAO,CAAC,iBAAiB,CAAC,CAA0B;IACpD;;;;OAIG;IACH,OAAO,CAAC,WAAW,CAAC,CAAQ;IAC5B,oGAAoG;IACpG,SAAS,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;IACpC,kGAAkG;IAClG,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,gGAAgG;IAChG,OAAO,CAAC,qBAAqB,CAAC,CAAS;IACvC,mFAAmF;IACnF,OAAO,CAAC,aAAa,CAAC,CAAgB;IACtC,2FAA2F;IAC3F,OAAO,CAAC,kBAAkB,CAAS;IACnC,kGAAkG;IAClG,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAiC;IACtE,2EAA2E;IAC3E,OAAO,CAAC,YAAY,CAAC,CAAsB;IAC3C,kEAAkE;IAClE,mGAAmG;IACnG,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAC5C,qEAAqE;IACrE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwC;IACnE,wFAAwF;IACxF,OAAO,CAAC,qBAAqB,CAAC,CAAS;IACvC,kFAAkF;IAClF,OAAO,CAAC,oBAAoB,CAAC,CAAiB;IAC9C,kFAAkF;IAClF,OAAO,CAAC,sBAAsB,CAAC,CAAgB;IAC/C,2EAA2E;IAC3E,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAyB;IACtD,gFAAgF;IAChF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAyB;IAC5D,+EAA+E;IAC/E,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAqB;IAC5D,8DAA8D;IAC9D,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAGnC;IACJ,6EAA6E;IAC7E,OAAO,CAAC,wBAAwB,CAAS;IACzC,yEAAyE;IACzE,OAAO,CAAC,aAAa,CAAK;IAC1B,6CAA6C;IAC7C,OAAO,CAAC,iBAAiB,CAAC,CAAmB;IAC7C,wFAAwF;IACxF,OAAO,CAAC,SAAS,CAAC,CAAc;IAChC,2FAA2F;IAC3F,OAAO,CAAC,eAAe,CAAC,CAAS;IACjC,oFAAoF;IACpF,OAAO,CAAC,gBAAgB,CAAC,CAAgB;IACzC,sEAAsE;IACtE,OAAO,CAAC,eAAe,CAAS;IAChC,4EAA4E;IAC5E,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA4C;IAC7E;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB,CAAS;IACvC;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB,CAAC,CAA6B;IACvD;;;;;;;OAOG;IACH,OAAO,CAAC,eAAe,CAAC,CAAgB;IACxC,sFAAsF;IACtF,OAAO,CAAC,KAAK,CAAC,CAAY;IAC1B,yEAAyE;IACzE,OAAO,CAAC,OAAO,CAAS;IACxB,qGAAqG;IACrG,OAAO,CAAC,SAAS,CAAC,CAAiB;IACnC,qGAAqG;IACrG,OAAO,CAAC,gBAAgB,CAAC,CAAoB;IAC7C;;;;;;;;;;OAUG;IACH,SAAS,CAAC,uBAAuB,CAAC,EAAE;QAClC,sBAAsB,EAAE,MAAM,CAAC;QAC/B,kBAAkB,EAAE,sBAAsB,CAAC;QAC3C,gBAAgB,EAAE,cAAc,CAAC;KAClC,CAAC;IACF,kFAAkF;IAClF,OAAO,CAAC,YAAY,CAAS;IAC7B,0EAA0E;IAC1E,OAAO,CAAC,UAAU,CAAC,CAAa;IAChC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAC9C,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IACvC,SAAS,CAAC,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACnD,mFAAmF;IACnF,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;gBAGjC,MAAM,EAAE,gBAAgB,EACjC,YAAY,GAAE,sBAA2B;IA6DrC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAY9B,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,IAAI;IAOhD,iBAAiB,CAAC,OAAO,EAAE,4BAA4B,GAAG,IAAI;IAK9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAoChB,UAAU;IA4DxB;;;;;;;OAOG;IACG,KAAK,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC;IAkE1D;;;;;OAKG;IACG,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC;YAiCvE,WAAW;IAmLzB,OAAO,CAAC,6BAA6B;IAmBrC,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,kBAAkB;YAMZ,mBAAmB;IAcjC,OAAO,CAAC,2BAA2B;IAgCnC,OAAO,CAAC,eAAe;IAcvB,OAAO,CAAC,0BAA0B;IAWlC,OAAO,CAAC,2BAA2B;IAsBnC,OAAO,CAAC,oBAAoB;IAe5B,OAAO,CAAC,oBAAoB;IA8B5B,OAAO,CAAC,sBAAsB;IAQ9B,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,0BAA0B;IAKlC;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,iBAAiB;IAIzB,SAAS,CAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI;IA6B/C,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;YAMxB,sBAAsB;YAiBtB,kBAAkB;YA2DlB,aAAa;YA+Bb,YAAY;YAUZ,6BAA6B;YAgB7B,kBAAkB;IAqDhC,OAAO,CAAC,iBAAiB;IA4BzB,OAAO,CAAC,cAAc;YAwDR,qBAAqB;YAoCrB,sBAAsB;IAwCpC,OAAO,CAAC,yBAAyB;IAkBjC,OAAO,CAAC,kBAAkB;YAQZ,cAAc;YAiBd,oBAAoB;IAMlC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,4BAA4B;YAkBtB,8BAA8B;IAkC5C;;;;;;;;OAQG;YACW,uBAAuB;IAmCrC,SAAS,CAAC,sBAAsB,CAAC,KAAK,EAAE;QACtC,KAAK,EAAE,sBAAsB,CAAC;QAC9B,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,eAAe,CAAC;KACzB,GAAG,WAAW;IAoBf,8FAA8F;cAC9E,wBAAwB,CACtC,UAAU,EAAE,YAAY,EACxB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,OAAO,EACrB,YAAY,EAAE,QAAQ,MAAM,EAAE,EAC9B,UAAU,CAAC,EAAE,WAAW,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC,EAChE,kBAAkB,CAAC,EAAE,MAAM,GAC1B,OAAO,CAAC,WAAW,CAAC;IA6BvB,4FAA4F;cAC5E,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;cAStD,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMlE,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,mBAAmB;IAK3B,qFAAqF;IACrF,SAAS,CAAC,gBAAgB,IAAI,OAAO;IAKrC,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,0BAA0B;IAQlC,OAAO,CAAC,0BAA0B;IAQlC,OAAO,CAAC,eAAe;IAgBvB,OAAO,CAAC,gBAAgB;IAMxB,QAAQ,IAAI,SAAS,GAAG,SAAS;IAKjC,OAAO,CAAC,aAAa;IAyCrB,OAAO,CAAC,uBAAuB;IAW/B;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAYhC,OAAO,CAAC,wBAAwB;IAUhC,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,wBAAwB;IAKhC,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,6BAA6B;IAarC,OAAO,CAAC,cAAc;IAMtB,SAAS,CAAC,kBAAkB,IAAI,KAAK;IAOrC,OAAO,CAAC,qBAAqB;YA4Cf,4BAA4B;YAiD5B,uBAAuB;YAQvB,uBAAuB;IAmBrC,SAAS,CAAC,WAAW,CACnB,IAAI,EAAE,QAAQ,EACd,WAAW,CAAC,EAAE,MAAM,EACpB,kBAAkB,UAAO,EACzB,YAAY,CAAC,EAAE,gBAAgB,GAC9B;QACD,KAAK,EAAE,SAAS,EAAE,CAAC;KACpB;IA8ED,OAAO,CAAC,eAAe;IA2BvB,SAAS,CAAC,uBAAuB,CAC/B,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,aAAa,GACpB,qBAAqB;IAgCxB;;;;OAIG;IACH,SAAS,CAAC,sBAAsB,CAAC,KAAK,EAAE,gBAAgB,GAAG,gBAAgB;cAO3D,cAAc,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAgFtF,OAAO,CAAC,qBAAqB;IAK7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;cACa,6BAA6B,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC;IAmC7E;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;cACa,0BAA0B,CACxC,KAAK,EAAE,KAAK,EACZ,MAAM,GAAE,oBAAqD,GAC5D,OAAO,CAAC,IAAI,CAAC;cAkCA,yBAAyB,CACvC,QAAQ,EAAE,YAAY,EAAE,EACxB,OAAO,EAAE,WAAW,GAAG,SAAS,EAChC,SAAS,qBAAwB,EACjC,kBAAkB,UAAO,GACxB,OAAO,CAAC,IAAI,CAAC;IA2ChB;;;;;;;;;;;;;;;;OAgBG;YACW,iCAAiC;YAejC,wBAAwB;IAmBtC;;;;OAIG;IACH,uBAAuB,CAAC,OAAO,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM;IAIjE,SAAS,CAAC,WAAW,CACnB,KAAK,EAAE,gBAAgB,EACvB,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,GAC1D,KAAK;IAkDR,SAAS,CAAC,qBAAqB,CAAC,aAAa,CAAC,EAAE,wBAAwB,CAAC,eAAe,CAAC;IA2CzF,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAA0B;IAEzE,SAAS,IAAI,OAAO,CAAC,SAAS,KAAK,EAAE,CAAC;IAK5C;;;;;OAKG;IACG,YAAY,IAAI,OAAO,CAAC,SAAS,KAAK,EAAE,CAAC;IAK/C,yFAAyF;IACnF,qBAAqB,IAAI,OAAO,CAAC,SAAS,aAAa,EAAE,CAAC;IAKhE,oFAAoF;IAC9E,kBAAkB,IAAI,OAAO,CAAC,SAAS,cAAc,EAAE,CAAC;IAK9D,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;YAI/B,kBAAkB;IAIhC;;;;OAIG;YACW,yBAAyB;YAKzB,kBAAkB;IAmDhC,SAAS,CAAC,wCAAwC,CAAC,KAAK,CAAC,EAAE;QACzD,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;QACpC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;QACnC,MAAM,CAAC,EAAE,SAAS,KAAK,EAAE,CAAC;KAC3B,GAAG,MAAM;IAIV;;;OAGG;IACH,kBAAkB,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,WAAW;IAY1E,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,cAAc,GAAG,KAAK,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAO7E,4FAA4F;IAC5F,OAAO,CAAC,kBAAkB;IAK1B,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,eAAe,GAAG,IAAI;IAS3E,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IA6BvD;;;;;;;;;;OAUG;IACH,OAAO,CAAC,oBAAoB;IAgD5B;;;;;;;OAOG;IACH,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,eAAe,GAAG,IAAI;IAavD;;;;;;;;;;;;;;;;;OAiBG;IACH,SAAS,CAAC,0BAA0B;;;;;;IAgBpC;;;;;;;OAOG;IACH,SAAS,CAAC,sBAAsB,IAAI,MAAM;IAK1C;;;;;;OAMG;IACH,SAAS,CAAC,uBAAuB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM;IAK/D,kGAAkG;YACpF,qBAAqB;IAcnC,OAAO,CAAC,sBAAsB;IAe9B,qFAAqF;IACrF,OAAO,CAAC,iBAAiB;IASzB,sEAAsE;IACtE,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAInD,gEAAgE;IAChE,WAAW,IAAI,YAAY,GAAG,SAAS;IAIvC;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE;IAUhD,OAAO,CAAC,0BAA0B;IAoBlC,8FAA8F;IAC9F,OAAO,CAAC,iBAAiB;IAMzB,iGAAiG;IACjG,OAAO,CAAC,+BAA+B;IAWvC,kFAAkF;IAClF,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,WAAW;IAIrE,yEAAyE;YAC3D,iBAAiB;CAahC"}