@qduc/term2 0.12.0 → 0.14.0

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 (635) hide show
  1. package/README.md +6 -1
  2. package/dist/agent.d.ts +3 -0
  3. package/dist/agent.d.ts.map +1 -1
  4. package/dist/agent.js +38 -14
  5. package/dist/agent.js.map +1 -1
  6. package/dist/app.d.ts.map +1 -1
  7. package/dist/app.js +91 -17
  8. package/dist/app.js.map +1 -1
  9. package/dist/cli.js +34 -23
  10. package/dist/cli.js.map +1 -1
  11. package/dist/commands/auto-approve-command.d.ts.map +1 -1
  12. package/dist/commands/auto-approve-command.js +12 -4
  13. package/dist/commands/auto-approve-command.js.map +1 -1
  14. package/dist/commands/compact-command.d.ts +6 -0
  15. package/dist/commands/compact-command.d.ts.map +1 -0
  16. package/dist/commands/compact-command.js +12 -0
  17. package/dist/commands/compact-command.js.map +1 -0
  18. package/dist/commands/copy-command.d.ts +3 -1
  19. package/dist/commands/copy-command.d.ts.map +1 -1
  20. package/dist/commands/copy-command.js +36 -9
  21. package/dist/commands/copy-command.js.map +1 -1
  22. package/dist/commands/sandbox-command.d.ts.map +1 -1
  23. package/dist/commands/sandbox-command.js +6 -1
  24. package/dist/commands/sandbox-command.js.map +1 -1
  25. package/dist/components/InputBox.d.ts +1 -2
  26. package/dist/components/InputBox.d.ts.map +1 -1
  27. package/dist/components/InputBox.js +5 -1
  28. package/dist/components/InputBox.js.map +1 -1
  29. package/dist/components/input/ApplicationInputSurface.d.ts +7 -2
  30. package/dist/components/input/ApplicationInputSurface.d.ts.map +1 -1
  31. package/dist/components/input/ApplicationInputSurface.js +7 -1
  32. package/dist/components/input/ApplicationInputSurface.js.map +1 -1
  33. package/dist/components/input/CopyMenuSession.d.ts +16 -0
  34. package/dist/components/input/CopyMenuSession.d.ts.map +1 -0
  35. package/dist/components/input/CopyMenuSession.js +49 -0
  36. package/dist/components/input/CopyMenuSession.js.map +1 -0
  37. package/dist/components/input/FirstRunSetupPrompt.d.ts +9 -0
  38. package/dist/components/input/FirstRunSetupPrompt.d.ts.map +1 -0
  39. package/dist/components/input/FirstRunSetupPrompt.js +20 -0
  40. package/dist/components/input/FirstRunSetupPrompt.js.map +1 -0
  41. package/dist/components/input/MentorPoolMenuSession.d.ts +9 -0
  42. package/dist/components/input/MentorPoolMenuSession.d.ts.map +1 -0
  43. package/dist/components/input/MentorPoolMenuSession.js +131 -0
  44. package/dist/components/input/MentorPoolMenuSession.js.map +1 -0
  45. package/dist/components/input/MenuSurface.d.ts.map +1 -1
  46. package/dist/components/input/MenuSurface.js +16 -2
  47. package/dist/components/input/MenuSurface.js.map +1 -1
  48. package/dist/components/input/ModelMenuSession.d.ts.map +1 -1
  49. package/dist/components/input/ModelMenuSession.js +11 -1
  50. package/dist/components/input/ModelMenuSession.js.map +1 -1
  51. package/dist/components/input/ProviderMenuSession.d.ts.map +1 -1
  52. package/dist/components/input/ProviderMenuSession.js +8 -2
  53. package/dist/components/input/ProviderMenuSession.js.map +1 -1
  54. package/dist/components/input/SettingsMenuSession.d.ts.map +1 -1
  55. package/dist/components/input/SettingsMenuSession.js +35 -22
  56. package/dist/components/input/SettingsMenuSession.js.map +1 -1
  57. package/dist/components/input/SkillsMenuSession.d.ts +3 -0
  58. package/dist/components/input/SkillsMenuSession.d.ts.map +1 -1
  59. package/dist/components/input/SkillsMenuSession.js +6 -12
  60. package/dist/components/input/SkillsMenuSession.js.map +1 -1
  61. package/dist/components/input/SlashMenuSession.d.ts +11 -3
  62. package/dist/components/input/SlashMenuSession.d.ts.map +1 -1
  63. package/dist/components/input/SlashMenuSession.js +54 -42
  64. package/dist/components/input/SlashMenuSession.js.map +1 -1
  65. package/dist/components/input/menu-controller.d.ts.map +1 -1
  66. package/dist/components/input/menu-controller.js +18 -1
  67. package/dist/components/input/menu-controller.js.map +1 -1
  68. package/dist/components/input/menu-registry.d.ts.map +1 -1
  69. package/dist/components/input/menu-registry.js +4 -0
  70. package/dist/components/input/menu-registry.js.map +1 -1
  71. package/dist/components/input/menu-types.d.ts +12 -0
  72. package/dist/components/input/menu-types.d.ts.map +1 -1
  73. package/dist/components/input/triggers.d.ts.map +1 -1
  74. package/dist/components/input/triggers.js +33 -0
  75. package/dist/components/input/triggers.js.map +1 -1
  76. package/dist/components/layout/BackgroundTaskManager.d.ts.map +1 -1
  77. package/dist/components/layout/BackgroundTaskManager.js +28 -10
  78. package/dist/components/layout/BackgroundTaskManager.js.map +1 -1
  79. package/dist/components/layout/BackgroundTasksPanel.d.ts +4 -1
  80. package/dist/components/layout/BackgroundTasksPanel.d.ts.map +1 -1
  81. package/dist/components/layout/BackgroundTasksPanel.js +58 -12
  82. package/dist/components/layout/BackgroundTasksPanel.js.map +1 -1
  83. package/dist/components/layout/BottomArea.d.ts +16 -2
  84. package/dist/components/layout/BottomArea.d.ts.map +1 -1
  85. package/dist/components/layout/BottomArea.js +7 -4
  86. package/dist/components/layout/BottomArea.js.map +1 -1
  87. package/dist/components/layout/StatusBar.d.ts.map +1 -1
  88. package/dist/components/layout/StatusBar.js +66 -51
  89. package/dist/components/layout/StatusBar.js.map +1 -1
  90. package/dist/components/menu/CopyMenu.d.ts +10 -0
  91. package/dist/components/menu/CopyMenu.d.ts.map +1 -0
  92. package/dist/components/menu/CopyMenu.js +20 -0
  93. package/dist/components/menu/CopyMenu.js.map +1 -0
  94. package/dist/components/menu/MentorPoolSelectionMenu.d.ts +13 -0
  95. package/dist/components/menu/MentorPoolSelectionMenu.d.ts.map +1 -0
  96. package/dist/components/menu/MentorPoolSelectionMenu.js +98 -0
  97. package/dist/components/menu/MentorPoolSelectionMenu.js.map +1 -0
  98. package/dist/components/menu/ModelSelectionMenu.d.ts +2 -0
  99. package/dist/components/menu/ModelSelectionMenu.d.ts.map +1 -1
  100. package/dist/components/menu/ModelSelectionMenu.js +26 -7
  101. package/dist/components/menu/ModelSelectionMenu.js.map +1 -1
  102. package/dist/components/menu/ProviderSelectionMenu.d.ts +1 -0
  103. package/dist/components/menu/ProviderSelectionMenu.d.ts.map +1 -1
  104. package/dist/components/menu/ProviderSelectionMenu.js +12 -4
  105. package/dist/components/menu/ProviderSelectionMenu.js.map +1 -1
  106. package/dist/components/menu/SlashCommandMenu.d.ts.map +1 -1
  107. package/dist/components/menu/SlashCommandMenu.js +12 -9
  108. package/dist/components/menu/SlashCommandMenu.js.map +1 -1
  109. package/dist/components/message/CommandMessage.js +4 -0
  110. package/dist/components/message/CommandMessage.js.map +1 -1
  111. package/dist/components/message/SubagentActivityMessage.d.ts +1 -0
  112. package/dist/components/message/SubagentActivityMessage.d.ts.map +1 -1
  113. package/dist/components/message/SubagentActivityMessage.js +14 -1
  114. package/dist/components/message/SubagentActivityMessage.js.map +1 -1
  115. package/dist/components/prompt/ApprovalPrompt.d.ts.map +1 -1
  116. package/dist/components/prompt/ApprovalPrompt.js +0 -25
  117. package/dist/components/prompt/ApprovalPrompt.js.map +1 -1
  118. package/dist/context/InputContext.d.ts +1 -1
  119. package/dist/context/InputContext.d.ts.map +1 -1
  120. package/dist/context/InputContext.js +4 -0
  121. package/dist/context/InputContext.js.map +1 -1
  122. package/dist/contracts/application-stream.d.ts +13 -0
  123. package/dist/contracts/application-stream.d.ts.map +1 -1
  124. package/dist/contracts/provider-input.d.ts +15 -0
  125. package/dist/contracts/provider-input.d.ts.map +1 -1
  126. package/dist/contracts/provider-input.js +6 -1
  127. package/dist/contracts/provider-input.js.map +1 -1
  128. package/dist/hooks/conversation-ui-reducer.d.ts +6 -0
  129. package/dist/hooks/conversation-ui-reducer.d.ts.map +1 -1
  130. package/dist/hooks/conversation-ui-reducer.js +3 -0
  131. package/dist/hooks/conversation-ui-reducer.js.map +1 -1
  132. package/dist/hooks/settings-completion-config.d.ts.map +1 -1
  133. package/dist/hooks/settings-completion-config.js +12 -2
  134. package/dist/hooks/settings-completion-config.js.map +1 -1
  135. package/dist/hooks/use-app-commands.d.ts +4 -1
  136. package/dist/hooks/use-app-commands.d.ts.map +1 -1
  137. package/dist/hooks/use-app-commands.js +6 -2
  138. package/dist/hooks/use-app-commands.js.map +1 -1
  139. package/dist/hooks/use-app-keyboard-shortcuts.d.ts +7 -1
  140. package/dist/hooks/use-app-keyboard-shortcuts.d.ts.map +1 -1
  141. package/dist/hooks/use-app-keyboard-shortcuts.js +77 -7
  142. package/dist/hooks/use-app-keyboard-shortcuts.js.map +1 -1
  143. package/dist/hooks/use-conversation.d.ts +6 -2
  144. package/dist/hooks/use-conversation.d.ts.map +1 -1
  145. package/dist/hooks/use-conversation.js +21 -4
  146. package/dist/hooks/use-conversation.js.map +1 -1
  147. package/dist/hooks/use-debounced-value.d.ts +13 -0
  148. package/dist/hooks/use-debounced-value.d.ts.map +1 -0
  149. package/dist/hooks/use-debounced-value.js +27 -0
  150. package/dist/hooks/use-debounced-value.js.map +1 -0
  151. package/dist/hooks/use-first-run-setup.d.ts +24 -0
  152. package/dist/hooks/use-first-run-setup.d.ts.map +1 -0
  153. package/dist/hooks/use-first-run-setup.js +114 -0
  154. package/dist/hooks/use-first-run-setup.js.map +1 -0
  155. package/dist/hooks/use-mentor-pool-selection.d.ts +103 -0
  156. package/dist/hooks/use-mentor-pool-selection.d.ts.map +1 -0
  157. package/dist/hooks/use-mentor-pool-selection.js +642 -0
  158. package/dist/hooks/use-mentor-pool-selection.js.map +1 -0
  159. package/dist/hooks/use-model-selection.d.ts +1 -0
  160. package/dist/hooks/use-model-selection.d.ts.map +1 -1
  161. package/dist/hooks/use-model-selection.js +44 -1
  162. package/dist/hooks/use-model-selection.js.map +1 -1
  163. package/dist/hooks/use-provider-selection.d.ts +5 -1
  164. package/dist/hooks/use-provider-selection.d.ts.map +1 -1
  165. package/dist/hooks/use-provider-selection.js +37 -12
  166. package/dist/hooks/use-provider-selection.js.map +1 -1
  167. package/dist/hooks/use-slash-commands.d.ts +0 -1
  168. package/dist/hooks/use-slash-commands.d.ts.map +1 -1
  169. package/dist/hooks/use-slash-commands.js +1 -9
  170. package/dist/hooks/use-slash-commands.js.map +1 -1
  171. package/dist/lib/agent-chat-service.d.ts +3 -6
  172. package/dist/lib/agent-chat-service.d.ts.map +1 -1
  173. package/dist/lib/agent-chat-service.js +20 -6
  174. package/dist/lib/agent-chat-service.js.map +1 -1
  175. package/dist/lib/agent-client.d.ts +20 -2
  176. package/dist/lib/agent-client.d.ts.map +1 -1
  177. package/dist/lib/agent-client.js +147 -3
  178. package/dist/lib/agent-client.js.map +1 -1
  179. package/dist/lib/agent-configuration.d.ts +3 -0
  180. package/dist/lib/agent-configuration.d.ts.map +1 -1
  181. package/dist/lib/agent-configuration.js +5 -0
  182. package/dist/lib/agent-configuration.js.map +1 -1
  183. package/dist/lib/agent-factory.d.ts +3 -0
  184. package/dist/lib/agent-factory.d.ts.map +1 -1
  185. package/dist/lib/agent-factory.js +15 -6
  186. package/dist/lib/agent-factory.js.map +1 -1
  187. package/dist/lib/input-owner.d.ts +3 -0
  188. package/dist/lib/input-owner.d.ts.map +1 -1
  189. package/dist/lib/input-owner.js +5 -0
  190. package/dist/lib/input-owner.js.map +1 -1
  191. package/dist/lib/subagent-bridge.d.ts +2 -0
  192. package/dist/lib/subagent-bridge.d.ts.map +1 -1
  193. package/dist/lib/subagent-bridge.js +4 -1
  194. package/dist/lib/subagent-bridge.js.map +1 -1
  195. package/dist/prompts/background-shell.d.ts +3 -0
  196. package/dist/prompts/background-shell.d.ts.map +1 -0
  197. package/dist/prompts/background-shell.js +11 -0
  198. package/dist/prompts/background-shell.js.map +1 -0
  199. package/dist/prompts/background-shell.ts +10 -0
  200. package/dist/prompts/context-compaction.d.ts +4 -0
  201. package/dist/prompts/context-compaction.d.ts.map +1 -0
  202. package/dist/prompts/context-compaction.js +18 -0
  203. package/dist/prompts/context-compaction.js.map +1 -0
  204. package/dist/prompts/context-compaction.ts +23 -0
  205. package/dist/prompts/explorer-delegation-contract.test.ts +22 -0
  206. package/dist/prompts/gpt-5.6.md +1 -1
  207. package/dist/prompts/kimi.md +1 -1
  208. package/dist/prompts/orchestrator-prompt.test.ts +7 -0
  209. package/dist/prompts/orchestrator.md +1 -1
  210. package/dist/prompts/plan-mode-info.md +2 -2
  211. package/dist/prompts/prompt-constructor.d.ts +1 -0
  212. package/dist/prompts/prompt-constructor.d.ts.map +1 -1
  213. package/dist/prompts/prompt-constructor.js +5 -1
  214. package/dist/prompts/prompt-constructor.js.map +1 -1
  215. package/dist/prompts/prompt-constructor.test.ts +16 -1
  216. package/dist/prompts/prompt-constructor.ts +7 -0
  217. package/dist/prompts/subagent-delegation.d.ts.map +1 -1
  218. package/dist/prompts/subagent-delegation.js +5 -3
  219. package/dist/prompts/subagent-delegation.js.map +1 -1
  220. package/dist/prompts/subagent-delegation.test.ts +10 -0
  221. package/dist/prompts/subagent-delegation.ts +5 -3
  222. package/dist/prompts/subagents/explorer.md +10 -5
  223. package/dist/prompts/subagents/librarian.md +1 -1
  224. package/dist/prompts/subagents/worker.md +2 -2
  225. package/dist/providers/aborted-stream-recorder.d.ts +20 -0
  226. package/dist/providers/aborted-stream-recorder.d.ts.map +1 -0
  227. package/dist/providers/aborted-stream-recorder.js +63 -0
  228. package/dist/providers/aborted-stream-recorder.js.map +1 -0
  229. package/dist/providers/codex-auth.d.ts +6 -0
  230. package/dist/providers/codex-auth.d.ts.map +1 -0
  231. package/dist/providers/codex-auth.js +35 -0
  232. package/dist/providers/codex-auth.js.map +1 -0
  233. package/dist/providers/codex-responses-model.d.ts +7 -2
  234. package/dist/providers/codex-responses-model.d.ts.map +1 -1
  235. package/dist/providers/codex-responses-model.js +88 -48
  236. package/dist/providers/codex-responses-model.js.map +1 -1
  237. package/dist/providers/codex.provider.d.ts +5 -3
  238. package/dist/providers/codex.provider.d.ts.map +1 -1
  239. package/dist/providers/codex.provider.js +27 -39
  240. package/dist/providers/codex.provider.js.map +1 -1
  241. package/dist/providers/model-catalog/catalog.d.ts +35 -2
  242. package/dist/providers/model-catalog/catalog.d.ts.map +1 -1
  243. package/dist/providers/model-catalog/catalog.generated.d.ts +406 -166
  244. package/dist/providers/model-catalog/catalog.generated.d.ts.map +1 -1
  245. package/dist/providers/model-catalog/catalog.generated.js +406 -166
  246. package/dist/providers/model-catalog/catalog.generated.js.map +1 -1
  247. package/dist/providers/model-catalog/catalog.js +93 -29
  248. package/dist/providers/model-catalog/catalog.js.map +1 -1
  249. package/dist/providers/openai-chat-completions-model.d.ts +2 -1
  250. package/dist/providers/openai-chat-completions-model.d.ts.map +1 -1
  251. package/dist/providers/openai-chat-completions-model.js +223 -53
  252. package/dist/providers/openai-chat-completions-model.js.map +1 -1
  253. package/dist/providers/openai-compatible-lazy.d.ts.map +1 -1
  254. package/dist/providers/openai-compatible-lazy.js +2 -1
  255. package/dist/providers/openai-compatible-lazy.js.map +1 -1
  256. package/dist/providers/openai-compatible-middleware.d.ts.map +1 -1
  257. package/dist/providers/openai-compatible-middleware.js +1 -13
  258. package/dist/providers/openai-compatible-middleware.js.map +1 -1
  259. package/dist/providers/openai-compatible-response-normalizer.d.ts +5 -4
  260. package/dist/providers/openai-compatible-response-normalizer.d.ts.map +1 -1
  261. package/dist/providers/openai-compatible-response-normalizer.js +6 -17
  262. package/dist/providers/openai-compatible-response-normalizer.js.map +1 -1
  263. package/dist/providers/openai-compatible.provider.d.ts +1 -0
  264. package/dist/providers/openai-compatible.provider.d.ts.map +1 -1
  265. package/dist/providers/openai-compatible.provider.js +13 -4
  266. package/dist/providers/openai-compatible.provider.js.map +1 -1
  267. package/dist/providers/openai-responses-model.d.ts +9 -1
  268. package/dist/providers/openai-responses-model.d.ts.map +1 -1
  269. package/dist/providers/openai-responses-model.js +34 -12
  270. package/dist/providers/openai-responses-model.js.map +1 -1
  271. package/dist/providers/provider-service.d.ts +1 -0
  272. package/dist/providers/provider-service.d.ts.map +1 -1
  273. package/dist/providers/provider-service.js +4 -0
  274. package/dist/providers/provider-service.js.map +1 -1
  275. package/dist/scripts/eval-context-compaction/runner.d.ts +2 -0
  276. package/dist/scripts/eval-context-compaction/runner.d.ts.map +1 -0
  277. package/dist/scripts/eval-context-compaction/runner.js +159 -0
  278. package/dist/scripts/eval-context-compaction/runner.js.map +1 -0
  279. package/dist/services/agent-runtime/application-run-loop.d.ts +30 -0
  280. package/dist/services/agent-runtime/application-run-loop.d.ts.map +1 -1
  281. package/dist/services/agent-runtime/application-run-loop.js +251 -107
  282. package/dist/services/agent-runtime/application-run-loop.js.map +1 -1
  283. package/dist/services/agent-runtime/context-compaction/index.d.ts +56 -0
  284. package/dist/services/agent-runtime/context-compaction/index.d.ts.map +1 -0
  285. package/dist/services/agent-runtime/context-compaction/index.js +131 -0
  286. package/dist/services/agent-runtime/context-compaction/index.js.map +1 -0
  287. package/dist/services/agent-runtime/context-compaction/local-context-compactor.d.ts +76 -0
  288. package/dist/services/agent-runtime/context-compaction/local-context-compactor.d.ts.map +1 -0
  289. package/dist/services/agent-runtime/context-compaction/local-context-compactor.js +146 -0
  290. package/dist/services/agent-runtime/context-compaction/local-context-compactor.js.map +1 -0
  291. package/dist/services/agent-runtime/generation-guard.d.ts +15 -1
  292. package/dist/services/agent-runtime/generation-guard.d.ts.map +1 -1
  293. package/dist/services/agent-runtime/generation-guard.js +34 -2
  294. package/dist/services/agent-runtime/generation-guard.js.map +1 -1
  295. package/dist/services/agent-runtime/scope-resolver.d.ts.map +1 -1
  296. package/dist/services/agent-runtime/scope-resolver.js +2 -1
  297. package/dist/services/agent-runtime/scope-resolver.js.map +1 -1
  298. package/dist/services/agent-stream.d.ts.map +1 -1
  299. package/dist/services/agent-stream.js +2 -1
  300. package/dist/services/agent-stream.js.map +1 -1
  301. package/dist/services/approval/approval-decision-executor.d.ts.map +1 -1
  302. package/dist/services/approval/approval-decision-executor.js +5 -2
  303. package/dist/services/approval/approval-decision-executor.js.map +1 -1
  304. package/dist/services/approval/approval-decision-policy.d.ts.map +1 -1
  305. package/dist/services/approval/approval-decision-policy.js +0 -2
  306. package/dist/services/approval/approval-decision-policy.js.map +1 -1
  307. package/dist/services/approval/session-read-access.d.ts.map +1 -1
  308. package/dist/services/approval/session-read-access.js +2 -1
  309. package/dist/services/approval/session-read-access.js.map +1 -1
  310. package/dist/services/approval/shell-auto-approval-resolver.d.ts +1 -1
  311. package/dist/services/approval/shell-auto-approval-resolver.d.ts.map +1 -1
  312. package/dist/services/approval/shell-auto-approval-resolver.js +9 -1
  313. package/dist/services/approval/shell-auto-approval-resolver.js.map +1 -1
  314. package/dist/services/approval/tool-approval-batch-coordinator.d.ts.map +1 -1
  315. package/dist/services/approval/tool-approval-batch-coordinator.js +2 -1
  316. package/dist/services/approval/tool-approval-batch-coordinator.js.map +1 -1
  317. package/dist/services/conversation/conversation-admission-workflow.d.ts.map +1 -1
  318. package/dist/services/conversation/conversation-admission-workflow.js +20 -18
  319. package/dist/services/conversation/conversation-admission-workflow.js.map +1 -1
  320. package/dist/services/conversation/conversation-decoder.d.ts.map +1 -1
  321. package/dist/services/conversation/conversation-decoder.js +6 -0
  322. package/dist/services/conversation/conversation-decoder.js.map +1 -1
  323. package/dist/services/conversation/conversation-events.d.ts +34 -1
  324. package/dist/services/conversation/conversation-events.d.ts.map +1 -1
  325. package/dist/services/conversation/conversation-message-projection.d.ts.map +1 -1
  326. package/dist/services/conversation/conversation-message-projection.js +7 -3
  327. package/dist/services/conversation/conversation-message-projection.js.map +1 -1
  328. package/dist/services/conversation/conversation-orchestrator.d.ts +2 -0
  329. package/dist/services/conversation/conversation-orchestrator.d.ts.map +1 -1
  330. package/dist/services/conversation/conversation-orchestrator.js +113 -1
  331. package/dist/services/conversation/conversation-orchestrator.js.map +1 -1
  332. package/dist/services/conversation/conversation-orchestrator.types.d.ts +3 -1
  333. package/dist/services/conversation/conversation-orchestrator.types.d.ts.map +1 -1
  334. package/dist/services/conversation/conversation-replay.d.ts.map +1 -1
  335. package/dist/services/conversation/conversation-replay.js +45 -0
  336. package/dist/services/conversation/conversation-replay.js.map +1 -1
  337. package/dist/services/conversation/conversation-result-builder.d.ts.map +1 -1
  338. package/dist/services/conversation/conversation-result-builder.js +14 -2
  339. package/dist/services/conversation/conversation-result-builder.js.map +1 -1
  340. package/dist/services/conversation/conversation-service.d.ts +1 -0
  341. package/dist/services/conversation/conversation-service.d.ts.map +1 -1
  342. package/dist/services/conversation/conversation-service.js +74 -0
  343. package/dist/services/conversation/conversation-service.js.map +1 -1
  344. package/dist/services/conversation/conversation-state-projector.d.ts +7 -1
  345. package/dist/services/conversation/conversation-state-projector.d.ts.map +1 -1
  346. package/dist/services/conversation/conversation-state-projector.js +20 -3
  347. package/dist/services/conversation/conversation-state-projector.js.map +1 -1
  348. package/dist/services/conversation/conversation-state-schema.d.ts +8 -4
  349. package/dist/services/conversation/conversation-state-schema.d.ts.map +1 -1
  350. package/dist/services/conversation/conversation-state-schema.js +24 -2
  351. package/dist/services/conversation/conversation-state-schema.js.map +1 -1
  352. package/dist/services/conversation/conversation-store.d.ts +11 -0
  353. package/dist/services/conversation/conversation-store.d.ts.map +1 -1
  354. package/dist/services/conversation/conversation-store.js +23 -3
  355. package/dist/services/conversation/conversation-store.js.map +1 -1
  356. package/dist/services/conversation-agent-client.d.ts +9 -0
  357. package/dist/services/conversation-agent-client.d.ts.map +1 -1
  358. package/dist/services/cost/model-cost.d.ts +13 -2
  359. package/dist/services/cost/model-cost.d.ts.map +1 -1
  360. package/dist/services/cost/model-cost.js +1 -0
  361. package/dist/services/cost/model-cost.js.map +1 -1
  362. package/dist/services/cost/pricing.d.ts.map +1 -1
  363. package/dist/services/cost/pricing.js +26 -20
  364. package/dist/services/cost/pricing.js.map +1 -1
  365. package/dist/services/execution-context.d.ts +31 -0
  366. package/dist/services/execution-context.d.ts.map +1 -1
  367. package/dist/services/execution-context.js +59 -0
  368. package/dist/services/execution-context.js.map +1 -1
  369. package/dist/services/file-service.d.ts.map +1 -1
  370. package/dist/services/file-service.js +12 -3
  371. package/dist/services/file-service.js.map +1 -1
  372. package/dist/services/large-uncached-input-guard.d.ts +26 -1
  373. package/dist/services/large-uncached-input-guard.d.ts.map +1 -1
  374. package/dist/services/large-uncached-input-guard.js +73 -38
  375. package/dist/services/large-uncached-input-guard.js.map +1 -1
  376. package/dist/services/logging/conversation-log-events.d.ts +15 -2
  377. package/dist/services/logging/conversation-log-events.d.ts.map +1 -1
  378. package/dist/services/logging/conversation-log-events.js.map +1 -1
  379. package/dist/services/logging/conversation-logger.d.ts.map +1 -1
  380. package/dist/services/logging/conversation-logger.js +11 -0
  381. package/dist/services/logging/conversation-logger.js.map +1 -1
  382. package/dist/services/logging/logging-contract.d.ts.map +1 -1
  383. package/dist/services/logging/logging-contract.js +4 -0
  384. package/dist/services/logging/logging-contract.js.map +1 -1
  385. package/dist/services/logging/provider-traffic.d.ts +1 -1
  386. package/dist/services/logging/provider-traffic.d.ts.map +1 -1
  387. package/dist/services/logging/provider-traffic.js +10 -3
  388. package/dist/services/logging/provider-traffic.js.map +1 -1
  389. package/dist/services/model-service.d.ts +7 -0
  390. package/dist/services/model-service.d.ts.map +1 -1
  391. package/dist/services/model-service.js +21 -0
  392. package/dist/services/model-service.js.map +1 -1
  393. package/dist/services/models/model-catalog-session.d.ts +2 -0
  394. package/dist/services/models/model-catalog-session.d.ts.map +1 -1
  395. package/dist/services/models/model-catalog-session.js +9 -2
  396. package/dist/services/models/model-catalog-session.js.map +1 -1
  397. package/dist/services/provider-continuity.d.ts +15 -0
  398. package/dist/services/provider-continuity.d.ts.map +1 -1
  399. package/dist/services/provider-continuity.js +33 -0
  400. package/dist/services/provider-continuity.js.map +1 -1
  401. package/dist/services/retry/recovery-executor.d.ts.map +1 -1
  402. package/dist/services/retry/recovery-executor.js +12 -5
  403. package/dist/services/retry/recovery-executor.js.map +1 -1
  404. package/dist/services/retry/retry-classifier.d.ts.map +1 -1
  405. package/dist/services/retry/retry-classifier.js +2 -1
  406. package/dist/services/retry/retry-classifier.js.map +1 -1
  407. package/dist/services/retry/retry-error-classification.d.ts +19 -0
  408. package/dist/services/retry/retry-error-classification.d.ts.map +1 -1
  409. package/dist/services/retry/retry-error-classification.js +54 -0
  410. package/dist/services/retry/retry-error-classification.js.map +1 -1
  411. package/dist/services/service-interfaces.d.ts +15 -0
  412. package/dist/services/service-interfaces.d.ts.map +1 -1
  413. package/dist/services/session/background-task-control.d.ts +7 -2
  414. package/dist/services/session/background-task-control.d.ts.map +1 -1
  415. package/dist/services/session/background-task-control.js +43 -9
  416. package/dist/services/session/background-task-control.js.map +1 -1
  417. package/dist/services/session/background-task-liveness.d.ts +24 -0
  418. package/dist/services/session/background-task-liveness.d.ts.map +1 -0
  419. package/dist/services/session/background-task-liveness.js +23 -0
  420. package/dist/services/session/background-task-liveness.js.map +1 -0
  421. package/dist/services/session/session-access-state.d.ts.map +1 -1
  422. package/dist/services/session/session-access-state.js +5 -4
  423. package/dist/services/session/session-access-state.js.map +1 -1
  424. package/dist/services/session/session-client-factory.d.ts +11 -1
  425. package/dist/services/session/session-client-factory.d.ts.map +1 -1
  426. package/dist/services/session/session-client-factory.js +28 -1
  427. package/dist/services/session/session-client-factory.js.map +1 -1
  428. package/dist/services/session/session-composition.d.ts +7 -0
  429. package/dist/services/session/session-composition.d.ts.map +1 -1
  430. package/dist/services/session/session-composition.js +80 -0
  431. package/dist/services/session/session-composition.js.map +1 -1
  432. package/dist/services/session/session-input-planner.d.ts +16 -0
  433. package/dist/services/session/session-input-planner.d.ts.map +1 -1
  434. package/dist/services/session/session-input-planner.js +117 -10
  435. package/dist/services/session/session-input-planner.js.map +1 -1
  436. package/dist/services/session/session-manager.d.ts +3 -0
  437. package/dist/services/session/session-manager.d.ts.map +1 -1
  438. package/dist/services/session/session-manager.js +6 -0
  439. package/dist/services/session/session-manager.js.map +1 -1
  440. package/dist/services/session/session-stream-processor.d.ts +1 -0
  441. package/dist/services/session/session-stream-processor.d.ts.map +1 -1
  442. package/dist/services/session/session-stream-processor.js +16 -1
  443. package/dist/services/session/session-stream-processor.js.map +1 -1
  444. package/dist/services/session/session-tool-tracker.d.ts +21 -4
  445. package/dist/services/session/session-tool-tracker.d.ts.map +1 -1
  446. package/dist/services/session/session-tool-tracker.js +26 -5
  447. package/dist/services/session/session-tool-tracker.js.map +1 -1
  448. package/dist/services/session/terminal-result-collector.d.ts.map +1 -1
  449. package/dist/services/session/terminal-result-collector.js +12 -0
  450. package/dist/services/session/terminal-result-collector.js.map +1 -1
  451. package/dist/services/session/turn-workflow.d.ts.map +1 -1
  452. package/dist/services/session/turn-workflow.js +4 -0
  453. package/dist/services/session/turn-workflow.js.map +1 -1
  454. package/dist/services/settings/settings-path.d.ts +6 -0
  455. package/dist/services/settings/settings-path.d.ts.map +1 -0
  456. package/dist/services/settings/settings-path.js +15 -0
  457. package/dist/services/settings/settings-path.js.map +1 -0
  458. package/dist/services/settings/settings-schema.d.ts +59 -1
  459. package/dist/services/settings/settings-schema.d.ts.map +1 -1
  460. package/dist/services/settings/settings-schema.js +44 -3
  461. package/dist/services/settings/settings-schema.js.map +1 -1
  462. package/dist/services/settings/settings-service.d.ts +8 -0
  463. package/dist/services/settings/settings-service.d.ts.map +1 -1
  464. package/dist/services/settings/settings-service.js +82 -4
  465. package/dist/services/settings/settings-service.js.map +1 -1
  466. package/dist/services/settings/settings-sources.d.ts.map +1 -1
  467. package/dist/services/settings/settings-sources.js +3 -0
  468. package/dist/services/settings/settings-sources.js.map +1 -1
  469. package/dist/services/shell/background-shell-output-store.d.ts +90 -0
  470. package/dist/services/shell/background-shell-output-store.d.ts.map +1 -0
  471. package/dist/services/shell/background-shell-output-store.js +207 -0
  472. package/dist/services/shell/background-shell-output-store.js.map +1 -0
  473. package/dist/services/shell/background-shell-registry.d.ts +18 -0
  474. package/dist/services/shell/background-shell-registry.d.ts.map +1 -1
  475. package/dist/services/shell/background-shell-registry.js +17 -2
  476. package/dist/services/shell/background-shell-registry.js.map +1 -1
  477. package/dist/services/shell/background-shell-watches.d.ts +141 -0
  478. package/dist/services/shell/background-shell-watches.d.ts.map +1 -0
  479. package/dist/services/shell/background-shell-watches.js +245 -0
  480. package/dist/services/shell/background-shell-watches.js.map +1 -0
  481. package/dist/services/stream-event-processor.d.ts.map +1 -1
  482. package/dist/services/stream-event-processor.js +31 -1
  483. package/dist/services/stream-event-processor.js.map +1 -1
  484. package/dist/services/subagents/execution-runner.d.ts.map +1 -1
  485. package/dist/services/subagents/execution-runner.js +73 -4
  486. package/dist/services/subagents/execution-runner.js.map +1 -1
  487. package/dist/services/subagents/mentor-runner.d.ts.map +1 -1
  488. package/dist/services/subagents/mentor-runner.js +120 -15
  489. package/dist/services/subagents/mentor-runner.js.map +1 -1
  490. package/dist/services/subagents/nested-runner.d.ts.map +1 -1
  491. package/dist/services/subagents/nested-runner.js +106 -29
  492. package/dist/services/subagents/nested-runner.js.map +1 -1
  493. package/dist/services/subagents/role-loader.d.ts +6 -0
  494. package/dist/services/subagents/role-loader.d.ts.map +1 -1
  495. package/dist/services/subagents/role-loader.js +6 -1
  496. package/dist/services/subagents/role-loader.js.map +1 -1
  497. package/dist/services/subagents/subagent-async-registry.d.ts.map +1 -1
  498. package/dist/services/subagents/subagent-async-registry.js +39 -5
  499. package/dist/services/subagents/subagent-async-registry.js.map +1 -1
  500. package/dist/services/subagents/subagent-notification-store.d.ts +20 -1
  501. package/dist/services/subagents/subagent-notification-store.d.ts.map +1 -1
  502. package/dist/services/subagents/subagent-notification-store.js +22 -0
  503. package/dist/services/subagents/subagent-notification-store.js.map +1 -1
  504. package/dist/services/subagents/test-helpers/subagent-manager-fixtures.js +6 -5
  505. package/dist/services/subagents/test-helpers/subagent-manager-fixtures.js.map +1 -1
  506. package/dist/services/subagents/tool-policy.d.ts +3 -1
  507. package/dist/services/subagents/tool-policy.d.ts.map +1 -1
  508. package/dist/services/subagents/tool-policy.js +16 -12
  509. package/dist/services/subagents/tool-policy.js.map +1 -1
  510. package/dist/services/subagents/types.d.ts +15 -0
  511. package/dist/services/subagents/types.d.ts.map +1 -1
  512. package/dist/services/subagents/utils.d.ts +17 -0
  513. package/dist/services/subagents/utils.d.ts.map +1 -1
  514. package/dist/services/subagents/utils.js +39 -0
  515. package/dist/services/subagents/utils.js.map +1 -1
  516. package/dist/services/subagents/worker-worktree.d.ts +25 -0
  517. package/dist/services/subagents/worker-worktree.d.ts.map +1 -0
  518. package/dist/services/subagents/worker-worktree.js +74 -0
  519. package/dist/services/subagents/worker-worktree.js.map +1 -0
  520. package/dist/services/tool-execution-ledger.d.ts +26 -1
  521. package/dist/services/tool-execution-ledger.d.ts.map +1 -1
  522. package/dist/services/tool-execution-ledger.js +103 -33
  523. package/dist/services/tool-execution-ledger.js.map +1 -1
  524. package/dist/services/workspace/active-workspace-root.d.ts +5 -0
  525. package/dist/services/workspace/active-workspace-root.d.ts.map +1 -0
  526. package/dist/services/workspace/active-workspace-root.js +24 -0
  527. package/dist/services/workspace/active-workspace-root.js.map +1 -0
  528. package/dist/services/workspace/parse-worktree-list.d.ts +24 -0
  529. package/dist/services/workspace/parse-worktree-list.d.ts.map +1 -0
  530. package/dist/services/workspace/parse-worktree-list.js +59 -0
  531. package/dist/services/workspace/parse-worktree-list.js.map +1 -0
  532. package/dist/services/workspace/worktree-inventory.d.ts +10 -0
  533. package/dist/services/workspace/worktree-inventory.d.ts.map +1 -0
  534. package/dist/services/workspace/worktree-inventory.js +28 -0
  535. package/dist/services/workspace/worktree-inventory.js.map +1 -0
  536. package/dist/services/workspace/worktree-transition.d.ts +85 -0
  537. package/dist/services/workspace/worktree-transition.d.ts.map +1 -0
  538. package/dist/services/workspace/worktree-transition.js +70 -0
  539. package/dist/services/workspace/worktree-transition.js.map +1 -0
  540. package/dist/tools/agent/activate-skill.d.ts.map +1 -1
  541. package/dist/tools/agent/activate-skill.js +1 -0
  542. package/dist/tools/agent/activate-skill.js.map +1 -1
  543. package/dist/tools/agent/ask-mentor.d.ts.map +1 -1
  544. package/dist/tools/agent/ask-mentor.js +5 -1
  545. package/dist/tools/agent/ask-mentor.js.map +1 -1
  546. package/dist/tools/agent/run-subagent-async.d.ts +1 -1
  547. package/dist/tools/agent/run-subagent-async.d.ts.map +1 -1
  548. package/dist/tools/agent/run-subagent-async.js +21 -4
  549. package/dist/tools/agent/run-subagent-async.js.map +1 -1
  550. package/dist/tools/agent/run-subagent.d.ts +3 -1
  551. package/dist/tools/agent/run-subagent.d.ts.map +1 -1
  552. package/dist/tools/agent/run-subagent.js +34 -7
  553. package/dist/tools/agent/run-subagent.js.map +1 -1
  554. package/dist/tools/file/apply-patch.d.ts.map +1 -1
  555. package/dist/tools/file/apply-patch.js +6 -3
  556. package/dist/tools/file/apply-patch.js.map +1 -1
  557. package/dist/tools/file/code-context.d.ts.map +1 -1
  558. package/dist/tools/file/code-context.js +2 -0
  559. package/dist/tools/file/code-context.js.map +1 -1
  560. package/dist/tools/file/glob.d.ts.map +1 -1
  561. package/dist/tools/file/glob.js +1 -0
  562. package/dist/tools/file/glob.js.map +1 -1
  563. package/dist/tools/file/grep.d.ts.map +1 -1
  564. package/dist/tools/file/grep.js +1 -0
  565. package/dist/tools/file/grep.js.map +1 -1
  566. package/dist/tools/file/read-file.d.ts +2 -0
  567. package/dist/tools/file/read-file.d.ts.map +1 -1
  568. package/dist/tools/file/read-file.js +36 -15
  569. package/dist/tools/file/read-file.js.map +1 -1
  570. package/dist/tools/system/shell.d.ts +42 -1
  571. package/dist/tools/system/shell.d.ts.map +1 -1
  572. package/dist/tools/system/shell.js +285 -10
  573. package/dist/tools/system/shell.js.map +1 -1
  574. package/dist/tools/system/worktree.d.ts +22 -0
  575. package/dist/tools/system/worktree.d.ts.map +1 -0
  576. package/dist/tools/system/worktree.js +138 -0
  577. package/dist/tools/system/worktree.js.map +1 -0
  578. package/dist/tools/types.d.ts +5 -0
  579. package/dist/tools/types.d.ts.map +1 -1
  580. package/dist/tools/types.js.map +1 -1
  581. package/dist/tools/utils.d.ts.map +1 -1
  582. package/dist/tools/utils.js +3 -2
  583. package/dist/tools/utils.js.map +1 -1
  584. package/dist/tools/web/web-fetch.d.ts.map +1 -1
  585. package/dist/tools/web/web-fetch.js +10 -12
  586. package/dist/tools/web/web-fetch.js.map +1 -1
  587. package/dist/tools/web/web-search.d.ts.map +1 -1
  588. package/dist/tools/web/web-search.js +1 -0
  589. package/dist/tools/web/web-search.js.map +1 -1
  590. package/dist/utils/ai/provider-credentials.d.ts +31 -2
  591. package/dist/utils/ai/provider-credentials.d.ts.map +1 -1
  592. package/dist/utils/ai/provider-credentials.js +119 -11
  593. package/dist/utils/ai/provider-credentials.js.map +1 -1
  594. package/dist/utils/conversation/conversation-event-handler.d.ts.map +1 -1
  595. package/dist/utils/conversation/conversation-event-handler.js +13 -1
  596. package/dist/utils/conversation/conversation-event-handler.js.map +1 -1
  597. package/dist/utils/conversation/message-utils.d.ts +8 -2
  598. package/dist/utils/conversation/message-utils.d.ts.map +1 -1
  599. package/dist/utils/conversation/message-utils.js +38 -21
  600. package/dist/utils/conversation/message-utils.js.map +1 -1
  601. package/dist/utils/copy-selections.d.ts +8 -0
  602. package/dist/utils/copy-selections.d.ts.map +1 -0
  603. package/dist/utils/copy-selections.js +42 -0
  604. package/dist/utils/copy-selections.js.map +1 -0
  605. package/dist/utils/output/bound-tool-result.d.ts +42 -0
  606. package/dist/utils/output/bound-tool-result.d.ts.map +1 -0
  607. package/dist/utils/output/bound-tool-result.js +81 -0
  608. package/dist/utils/output/bound-tool-result.js.map +1 -0
  609. package/dist/utils/settings-command.d.ts.map +1 -1
  610. package/dist/utils/settings-command.js +22 -2
  611. package/dist/utils/settings-command.js.map +1 -1
  612. package/dist/utils/shell/command-safety/path-analysis.d.ts.map +1 -1
  613. package/dist/utils/shell/command-safety/path-analysis.js +5 -1
  614. package/dist/utils/shell/command-safety/path-analysis.js.map +1 -1
  615. package/dist/utils/shell/execute-shell.d.ts +25 -0
  616. package/dist/utils/shell/execute-shell.d.ts.map +1 -1
  617. package/dist/utils/shell/execute-shell.js +22 -5
  618. package/dist/utils/shell/execute-shell.js.map +1 -1
  619. package/dist/utils/shell/sandbox/sandbox-env.d.ts.map +1 -1
  620. package/dist/utils/shell/sandbox/sandbox-env.js +2 -1
  621. package/dist/utils/shell/sandbox/sandbox-env.js.map +1 -1
  622. package/dist/utils/shell/sandbox/sandbox-network-store.d.ts.map +1 -1
  623. package/dist/utils/shell/sandbox/sandbox-network-store.js +3 -2
  624. package/dist/utils/shell/sandbox/sandbox-network-store.js.map +1 -1
  625. package/dist/utils/shell/sandbox/sandbox-policy.d.ts.map +1 -1
  626. package/dist/utils/shell/sandbox/sandbox-policy.js +2 -1
  627. package/dist/utils/shell/sandbox/sandbox-policy.js.map +1 -1
  628. package/dist/utils/shell/shell-output.d.ts +11 -0
  629. package/dist/utils/shell/shell-output.d.ts.map +1 -1
  630. package/dist/utils/shell/shell-output.js +18 -8
  631. package/dist/utils/shell/shell-output.js.map +1 -1
  632. package/dist/utils/value-suggestions.d.ts.map +1 -1
  633. package/dist/utils/value-suggestions.js +6 -0
  634. package/dist/utils/value-suggestions.js.map +1 -1
  635. package/package.json +1 -1
@@ -0,0 +1,245 @@
1
+ export class BackgroundShellWatchesError extends Error {
2
+ constructor(message) {
3
+ super(message);
4
+ this.name = 'BackgroundShellWatchesError';
5
+ }
6
+ }
7
+ const DEFAULT_IDLE_MS = 1500;
8
+ /** Cap on `matchedLines` and on retained pending text, ~4 KB. */
9
+ const MAX_MATCHED_TEXT = 4096;
10
+ export class BackgroundShellWatches {
11
+ #store;
12
+ #scheduler;
13
+ #onFiring;
14
+ #watches = new Map();
15
+ #nextWatchId = 0;
16
+ constructor(options) {
17
+ this.#store = options.store;
18
+ this.#scheduler = options.scheduler;
19
+ this.#onFiring = options.onFiring;
20
+ }
21
+ /**
22
+ * Replaces the firing subscriber. The phase-5 shell-tool wiring installs the
23
+ * conversation-lane sink here when the session attaches it, so firings enter
24
+ * the same durable lane as job-completion events.
25
+ */
26
+ setOnFiring(callback) {
27
+ this.#onFiring = callback;
28
+ }
29
+ /** Begins a job's output stream; delegates to the store. */
30
+ open(jobId) {
31
+ this.#store.open(jobId);
32
+ }
33
+ /**
34
+ * Routes one chunk of a job's output into the store and evaluates the new
35
+ * complete lines against the job's active watches. Throws when the store
36
+ * rejects the push (unknown or already-closed job).
37
+ */
38
+ push(jobId, stream, text) {
39
+ this.#store.push(jobId, stream, text);
40
+ for (const record of this.#watches.values()) {
41
+ if (record.watch.jobId !== jobId)
42
+ continue;
43
+ if (this.#evaluateWatch(record))
44
+ this.#reschedule(record);
45
+ }
46
+ }
47
+ /**
48
+ * Registers a watch and returns its watchId. Replays the retained buffer
49
+ * from `fromOffset` immediately; on a job that has already settled, any
50
+ * replay match is flushed synchronously and the watch retires, because no
51
+ * firing may trail a job's completion.
52
+ */
53
+ registerWatch(options) {
54
+ const idleMs = options.idleMs ?? DEFAULT_IDLE_MS;
55
+ const notifyLimit = options.notifyLimit ?? (options.pattern === undefined ? 5 : 1);
56
+ const fromOffset = options.fromOffset ?? 0;
57
+ const stream = options.stream ?? 'both';
58
+ if (!Number.isInteger(idleMs) || idleMs < 0) {
59
+ throw new RangeError('idleMs must be a non-negative integer.');
60
+ }
61
+ if (!Number.isInteger(notifyLimit) || notifyLimit < 1) {
62
+ throw new RangeError('notifyLimit must be a positive integer.');
63
+ }
64
+ if (!Number.isInteger(fromOffset) || fromOffset < 0) {
65
+ throw new RangeError('fromOffset must be a non-negative integer.');
66
+ }
67
+ const read = this.#store.readLines(options.jobId);
68
+ if (read === undefined) {
69
+ throw new BackgroundShellWatchesError(`No output stream open for job ${options.jobId}.`);
70
+ }
71
+ const watch = {
72
+ watchId: `watch-${++this.#nextWatchId}`,
73
+ jobId: options.jobId,
74
+ pattern: options.pattern,
75
+ stream,
76
+ idleMs,
77
+ notifyLimit,
78
+ fromOffset,
79
+ };
80
+ const record = {
81
+ watch,
82
+ command: options.command,
83
+ nextLine: Math.min(fromOffset, read.lines.length),
84
+ lastDroppedLines: read.droppedLines,
85
+ pending: [],
86
+ pendingBytes: 0,
87
+ firedCount: 0,
88
+ timer: null,
89
+ };
90
+ this.#watches.set(watch.watchId, record);
91
+ this.#evaluateWatch(record);
92
+ if (read.closed) {
93
+ // A settled job has no future output and no future quiet to wait for:
94
+ // flush any replay match synchronously, then retire on terminal status.
95
+ if (record.timer !== null) {
96
+ this.#scheduler.cancel(record.timer);
97
+ record.timer = null;
98
+ }
99
+ if (record.pending.length > 0)
100
+ this.#fire(record);
101
+ this.#retire(watch.watchId);
102
+ }
103
+ else if (record.pending.length > 0) {
104
+ this.#reschedule(record);
105
+ }
106
+ return watch.watchId;
107
+ }
108
+ /** Retires a watch by id. Returns false when no such watch exists. */
109
+ cancelWatch(watchId) {
110
+ if (!this.#watches.has(watchId))
111
+ return false;
112
+ this.#retire(watchId);
113
+ return true;
114
+ }
115
+ /**
116
+ * Terminal settlement of a job. Closes the store stream (flushing each
117
+ * pending partial line), evaluates those final lines, then flushes every
118
+ * matched-but-undelivered firing synchronously and retires the job's
119
+ * watches. After this returns, no timer for the job can ever fire again, so
120
+ * the caller may emit the completion notification.
121
+ */
122
+ settleJob(jobId) {
123
+ this.#store.close(jobId);
124
+ for (const record of [...this.#watches.values()]) {
125
+ if (record.watch.jobId !== jobId)
126
+ continue;
127
+ this.#evaluateWatch(record);
128
+ // The job is ending: there is no more quiet to wait for, so cancel the
129
+ // debounce and deliver everything matched so far.
130
+ if (record.timer !== null) {
131
+ this.#scheduler.cancel(record.timer);
132
+ record.timer = null;
133
+ }
134
+ if (record.pending.length > 0)
135
+ this.#fire(record);
136
+ this.#retire(record.watch.watchId);
137
+ }
138
+ }
139
+ /**
140
+ * Evaluates newly retained complete lines against one watch, honouring the
141
+ * stream filter and pattern. Eviction removes whole lines from the head, so
142
+ * `nextLine` is shifted by the number of lines dropped since the last
143
+ * evaluation. Returns true when new lines matched.
144
+ */
145
+ #evaluateWatch(record) {
146
+ const read = this.#store.readLines(record.watch.jobId);
147
+ if (read === undefined)
148
+ return false;
149
+ const evicted = Math.max(0, read.droppedLines - record.lastDroppedLines);
150
+ record.nextLine = Math.max(0, record.nextLine - evicted);
151
+ record.lastDroppedLines = read.droppedLines;
152
+ const { watch } = record;
153
+ let matched = false;
154
+ for (let i = record.nextLine; i < read.lines.length; i++) {
155
+ const line = read.lines[i];
156
+ if (!streamAllows(watch.stream, line.stream))
157
+ continue;
158
+ if (watch.pattern !== undefined && !patternMatches(watch.pattern, line.text))
159
+ continue;
160
+ matched = true;
161
+ record.pending.push(line.text);
162
+ record.pendingBytes += line.text.length;
163
+ while (record.pendingBytes > MAX_MATCHED_TEXT && record.pending.length > 1) {
164
+ const dropped = record.pending.shift();
165
+ if (dropped !== undefined)
166
+ record.pendingBytes -= dropped.length;
167
+ }
168
+ }
169
+ record.nextLine = read.lines.length;
170
+ return matched;
171
+ }
172
+ /** (Re)starts the idle debounce window for a watch that just matched. */
173
+ #reschedule(record) {
174
+ if (record.timer !== null)
175
+ this.#scheduler.cancel(record.timer);
176
+ record.timer = this.#scheduler.schedule(() => this.#deliver(record.watch.watchId), record.watch.idleMs);
177
+ }
178
+ /** The debounce timer fired: deliver one firing carrying all pending matches. */
179
+ #deliver(watchId) {
180
+ const record = this.#watches.get(watchId);
181
+ if (record === undefined || record.timer === null)
182
+ return;
183
+ record.timer = null;
184
+ if (record.pending.length === 0)
185
+ return;
186
+ this.#fire(record);
187
+ }
188
+ /**
189
+ * Delivers one firing (the next `seq`), then retires the watch if it has
190
+ * reached `notifyLimit` — delivering the last firing is what retires it.
191
+ */
192
+ #fire(record) {
193
+ const { watch } = record;
194
+ record.firedCount += 1;
195
+ const firing = {
196
+ jobId: watch.jobId,
197
+ watchId: watch.watchId,
198
+ seq: record.firedCount,
199
+ matchedLines: joinPending(record.pending),
200
+ droppedBytes: this.#store.readLines(watch.jobId)?.droppedBytes ?? 0,
201
+ ...(record.command === undefined ? {} : { command: record.command }),
202
+ };
203
+ record.pending = [];
204
+ record.pendingBytes = 0;
205
+ this.#emit(firing);
206
+ if (record.firedCount >= watch.notifyLimit)
207
+ this.#retire(watch.watchId);
208
+ }
209
+ #retire(watchId) {
210
+ const record = this.#watches.get(watchId);
211
+ if (record === undefined)
212
+ return;
213
+ if (record.timer !== null) {
214
+ this.#scheduler.cancel(record.timer);
215
+ record.timer = null;
216
+ }
217
+ this.#watches.delete(watchId);
218
+ }
219
+ #emit(firing) {
220
+ try {
221
+ this.#onFiring?.(firing);
222
+ }
223
+ catch {
224
+ // Subscribers are observational: a failing subscriber must not break the
225
+ // flush-before-completion ordering for the remaining watches.
226
+ }
227
+ }
228
+ }
229
+ function streamAllows(watchStream, lineStream) {
230
+ return watchStream === 'both' || watchStream === lineStream;
231
+ }
232
+ function patternMatches(pattern, text) {
233
+ // A /g or /y pattern is stateful; restore its position so watch matching
234
+ // never mutates caller-visible regex state.
235
+ const lastIndex = pattern.lastIndex;
236
+ pattern.lastIndex = 0;
237
+ const matched = pattern.test(text);
238
+ pattern.lastIndex = lastIndex;
239
+ return matched;
240
+ }
241
+ function joinPending(pending) {
242
+ const joined = pending.join('\n');
243
+ return joined.length > MAX_MATCHED_TEXT ? joined.slice(joined.length - MAX_MATCHED_TEXT) : joined;
244
+ }
245
+ //# sourceMappingURL=background-shell-watches.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"background-shell-watches.js","sourceRoot":"","sources":["../../../source/services/shell/background-shell-watches.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stream-event-processor.d.ts","sourceRoot":"","sources":["../../source/services/stream-event-processor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAoD,KAAK,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAKpH,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGxE,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/B,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B;;;;;;;OAOG;IACH,+BAA+B,CAAC,EAAE,MAAM,CAAC;CAC1C;AAED,eAAO,MAAM,uBAAuB,QAAO,iBAQzC,CAAC;AAEH,MAAM,WAAW,sBAAsB;IACrC,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,6BAA6B,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,wBAAwB,EAAE,OAAO,CAAC;IAClC,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/C,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,eAAe,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,4DAA4D;AAC5D,wBAAuB,mBAAmB,CACxC,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,iBAAiB,EACtB,IAAI,EAAE,sBAAsB,EAC5B,IAAI,EAAE,mBAAmB,GACxB,cAAc,CAAC,iBAAiB,EAAE,IAAI,EAAE,IAAI,CAAC,CAuJ/C"}
1
+ {"version":3,"file":"stream-event-processor.d.ts","sourceRoot":"","sources":["../../source/services/stream-event-processor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAoD,KAAK,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAKpH,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGxE,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/B,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B;;;;;;;OAOG;IACH,+BAA+B,CAAC,EAAE,MAAM,CAAC;CAC1C;AAED,eAAO,MAAM,uBAAuB,QAAO,iBAQzC,CAAC;AAEH,MAAM,WAAW,sBAAsB;IACrC,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,6BAA6B,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,wBAAwB,EAAE,OAAO,CAAC;IAClC,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/C,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,eAAe,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,4DAA4D;AAC5D,wBAAuB,mBAAmB,CACxC,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,iBAAiB,EACtB,IAAI,EAAE,sBAAsB,EAC5B,IAAI,EAAE,mBAAmB,GACxB,cAAc,CAAC,iBAAiB,EAAE,IAAI,EAAE,IAAI,CAAC,CAqL/C"}
@@ -44,6 +44,10 @@ export async function* processStreamEvents(stream, acc, opts, deps) {
44
44
  yield { type: 'usage_update', usage: acc.latestUsage };
45
45
  continue;
46
46
  }
47
+ if (event.type === 'cost_update') {
48
+ yield { type: 'cost_update', record: event.record };
49
+ continue;
50
+ }
47
51
  if (event.type === 'codex_rate_limits') {
48
52
  yield event;
49
53
  continue;
@@ -67,14 +71,40 @@ export async function* processStreamEvents(stream, acc, opts, deps) {
67
71
  if (event.type === 'context_compaction_started') {
68
72
  // Surfaced live so the notice appears while the provider is actually compacting.
69
73
  // A response can carry several compaction items; the UI supersedes rather than stacks.
70
- yield { type: 'context_compaction_started', provider: event.provider, sessionId: deps.sessionId };
74
+ yield {
75
+ type: 'context_compaction_started',
76
+ provider: event.provider,
77
+ sessionId: deps.sessionId,
78
+ ...(event.strategy ? { strategy: event.strategy } : {}),
79
+ };
71
80
  continue;
72
81
  }
73
82
  if (event.type === 'context_compaction_completed') {
83
+ if (event.strategy === 'local') {
84
+ yield {
85
+ type: 'context_compaction_completed',
86
+ provider: event.provider,
87
+ sessionId: deps.sessionId,
88
+ durationMs: event.durationMs,
89
+ strategy: 'local',
90
+ };
91
+ continue;
92
+ }
74
93
  // Deliberately not yielded here — see StreamAccumulator.lastContextCompactionDurationMs.
75
94
  acc.lastContextCompactionDurationMs = event.durationMs;
76
95
  continue;
77
96
  }
97
+ if (event.type === 'context_compaction_failed') {
98
+ yield {
99
+ type: 'context_compaction_failed',
100
+ provider: event.provider,
101
+ sessionId: deps.sessionId,
102
+ durationMs: event.durationMs,
103
+ errorCategory: 'request',
104
+ strategy: 'local',
105
+ };
106
+ continue;
107
+ }
78
108
  const item = event.item;
79
109
  captureToolCallArguments(item, opts.toolCallArgumentsById);
80
110
  opts.onRunItem?.(item);
@@ -1 +1 @@
1
- {"version":3,"file":"stream-event-processor.js","sourceRoot":"","sources":["../../source/services/stream-event-processor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,sBAAsB,EAAwB,MAAM,4BAA4B,CAAC;AACpH,OAAO,EAAE,wBAAwB,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACxG,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAoB,MAAM,mBAAmB,CAAC;AAqBxE,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAsB,EAAE,CAAC,CAAC;IAC/D,WAAW,EAAE,EAAE;IACf,eAAe,EAAE,EAAE;IACnB,iBAAiB,EAAE,IAAI,GAAG,EAAU;IACpC,WAAW,EAAE,SAAS;IACtB,cAAc,EAAE,CAAC;IACjB,mBAAmB,EAAE,CAAC;IACtB,+BAA+B,EAAE,SAAS;CAC3C,CAAC,CAAC;AAgBH,4DAA4D;AAC5D,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,mBAAmB,CACxC,MAAmB,EACnB,GAAsB,EACtB,IAA4B,EAC5B,IAAyB;IAEzB,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1B,IAAI,CAAC,IAAI,CAAC,wBAAwB;QAAE,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;IACvE,GAAG,CAAC,cAAc,GAAG,CAAC,CAAC;IACvB,GAAG,CAAC,mBAAmB,GAAG,CAAC,CAAC;IAE5B,MAAM,mBAAmB,GAAG,CAAC,KAAgB,EAAE,EAAE,CAC/C,4BAA4B,CAAC,KAAK,EAAE;QAClC,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;QACjD,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;KACzC,CAAC,CAAC;IACL,MAAM,QAAQ,GAAG,CAAC,IAAY,EAA4B,EAAE;QAC1D,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,GAAG,CAAC,WAAW,IAAI,IAAI,CAAC;QACxB,GAAG,CAAC,cAAc,EAAE,CAAC;QACrB,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;IACxE,CAAC,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,IAAY,EAA4B,EAAE;QAC/D,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC;QAC5B,GAAG,CAAC,mBAAmB,EAAE,CAAC;QAC1B,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,eAAe,EAAE,CAAC;IACjF,CAAC,CAAC;IAEF,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YAClC,GAAG,CAAC,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC;YAC1E,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;YACvD,SAAS;QACX,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACvC,MAAM,KAAK,CAAC;YACZ,SAAS;QACX,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,OAAO;gBAAE,MAAM,OAAO,CAAC;YAC3B,SAAS;QACX,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACrC,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC1C,IAAI,OAAO;gBAAE,MAAM,OAAO,CAAC;YAC3B,SAAS;QACX,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,2BAA2B,EAAE,CAAC;YAC/C,MAAM,EAAE,GAAG,KAAK,EAAwC,CAAC;YACzD,SAAS;QACX,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,4BAA4B,EAAE,CAAC;YAChD,iFAAiF;YACjF,uFAAuF;YACvF,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;YAClG,SAAS;QACX,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,8BAA8B,EAAE,CAAC;YAClD,yFAAyF;YACzF,GAAG,CAAC,+BAA+B,GAAG,KAAK,CAAC,UAAU,CAAC;YACvD,SAAS;QACX,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,wBAAwB,CAAC,IAAI,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC3D,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC;QACvB,MAAM,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QACrF,IAAI,QAAQ,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;YACnC,IAAI,CAAC,kBAAkB,EAAE,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,QAAQ,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;gBACvC,MAAM,MAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC,SAAS,EAAE;oBACxD,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oBAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,eAAe;iBAC3D,CAAC,CAAC;gBACH,IAAI,MAAM,CAAC,qBAAqB,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC7F,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBACxD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE;wBACtD,GAAG,+BAA+B,CAAC,MAAM,CAAC,qBAAqB,CAAC;wBAChE,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,SAAS,EAAE,QAAQ,CAAC,MAAM;qBAC3B,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM;oBACJ,IAAI,EAAE,cAAc;oBACpB,UAAU,EAAE,QAAQ,CAAC,MAAM;oBAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oBAC3B,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B,CAAC;gBACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE;oBAC1C,SAAS,EAAE,6BAA6B;oBACxC,QAAQ,EAAE,MAAM;oBAChB,KAAK,EAAE,WAAW;oBAClB,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE;oBACvC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oBAC3B,UAAU,EAAE,QAAQ,CAAC,MAAM;oBAC3B,SAAS,EAAE,QAAQ,CAAC,MAAM;iBAC3B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,aAAa,CAAC;YAAE,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,CAAC;QAC7G,KAAK,MAAM,cAAc,IAAI,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC;YAAE,MAAM,cAAc,CAAC;IACjF,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC;IAC/C,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,UAAU,GAAG,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC5D,UAAU,CAAC,IAAI,GAAG,YAAY,CAAC;QAC/B,MAAM,UAAU,CAAC;IACnB,CAAC;IACD,IAAI,qBAAkD,CAAC;IACvD,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;QAClE,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,SAAS,EAAE,CAAC;YACd,qBAAqB,GAAG,SAAS,CAAC;YAClC,MAAM;QACR,CAAC;IACH,CAAC;IACD,MAAM,aAAa,GAAG,sBAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,aAAa,IAAI,YAAY,CAAC,eAAe,CAAC,IAAI,YAAY,CAAC,MAAM,CAAC,IAAI,qBAAqB,CAAC;IACnH,IAAI,UAAU,EAAE,CAAC;QACf,GAAG,CAAC,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC,WAAW,CAAC,IAAI,UAAU,CAAC;QACrG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE;YAC1D,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,kBAAkB;YAC1B,KAAK,EAAE,GAAG,CAAC,WAAW;SACvB,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,MAAM,eAAe,GAAG,eAAe,IAAI,OAAO,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7G,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE;YACvD,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,kBAAkB;YAC1B,mBAAmB,EAAE,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE;YACxE,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,MAA4C,CAAC;SACtE,CAAC,CAAC;IACL,CAAC;IAED,4EAA4E;IAC5E,wEAAwE;IACxE,kEAAkE;IAClE,6EAA6E;IAC7E,2EAA2E;IAC3E,8EAA8E;IAC9E,0EAA0E;IAC1E,0EAA0E;IAC1E,0EAA0E;IAC1E,0EAA0E;IAC1E,0EAA0E;IAC1E,IAAI,qBAAqB,EAAE,CAAC;QAC1B,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,qBAAqB,EAAE,CAAC;IAC/D,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"stream-event-processor.js","sourceRoot":"","sources":["../../source/services/stream-event-processor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"execution-runner.d.ts","sourceRoot":"","sources":["../../../source/services/subagents/execution-runner.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC1G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,cAAc,EAEd,sBAAsB,EACvB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAA0B,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAMxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAIpF,qBAAa,uBAAuB;;IAWlC,YAAY,IAAI,EAAE;QAChB,MAAM,EAAE,eAAe,CAAC;QACxB,QAAQ,EAAE,gBAAgB,CAAC;QAC3B,qBAAqB,EAAE,sBAAsB,CAAC;QAC9C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;QACpC,YAAY,CAAC,EAAE,sBAAsB,CAAC,cAAc,CAAC,CAAC;QACtD,WAAW,EAAE,mBAAmB,CAAC;QACjC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;QAC7C,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,aAAa,EAAE,qBAAqB,CAAC;KACtC,EAUA;IAEK,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,CAAC,CAY5G;IAEK,YAAY,CAChB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,kBAAkB,EAC9B,OAAO,EAAE,eAAe,EACxB,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,MAAM,CAAC,EAAE,WAAW,EACpB,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,EACpD,cAAc,CAAC,EAAE,sBAAsB,EACvC,KAAK,SAAe,GACnB,OAAO,CAAC,cAAc,CAAC,CAYzB;CAwRF"}
1
+ {"version":3,"file":"execution-runner.d.ts","sourceRoot":"","sources":["../../../source/services/subagents/execution-runner.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC1G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,cAAc,EAEd,sBAAsB,EACvB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAA0B,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAaxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAKpF,qBAAa,uBAAuB;;IAWlC,YAAY,IAAI,EAAE;QAChB,MAAM,EAAE,eAAe,CAAC;QACxB,QAAQ,EAAE,gBAAgB,CAAC;QAC3B,qBAAqB,EAAE,sBAAsB,CAAC;QAC9C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;QACpC,YAAY,CAAC,EAAE,sBAAsB,CAAC,cAAc,CAAC,CAAC;QACtD,WAAW,EAAE,mBAAmB,CAAC;QACjC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;QAC7C,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,aAAa,EAAE,qBAAqB,CAAC;KACtC,EAUA;IAEK,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,CAAC,CAY5G;IAEK,YAAY,CAChB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,kBAAkB,EAC9B,OAAO,EAAE,eAAe,EACxB,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,MAAM,CAAC,EAAE,WAAW,EACpB,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,EACpD,cAAc,CAAC,EAAE,sBAAsB,EACvC,KAAK,SAAe,GACnB,OAAO,CAAC,cAAc,CAAC,CAYzB;CAgWF"}
@@ -4,11 +4,12 @@ import os from 'node:os';
4
4
  import path from 'node:path';
5
5
  import { SubagentSession } from './subagent-session.js';
6
6
  import { MAX_SUBAGENT_MODEL_RETRIES } from '../retry/conversation-retry-policy.js';
7
- import { isAbortLike, aggregateToolUsage, safeEmit } from './utils.js';
7
+ import { isAbortLike, aggregateToolUsage, safeEmit, isMaxTurnsExceededError, extractMaxTurnsLimit, buildTurnBudgetExhaustedFinalText, } from './utils.js';
8
8
  import { normalizeAgentRunUsage, extractUsage } from '../../utils/ai/token-usage.js';
9
9
  import { buildInstructions, resolveSubagentSearchViaShell } from './role-loader.js';
10
10
  import { createSessionRuntime } from '../session/session-composition.js';
11
11
  import { AcquiredChildSlot } from '../agent-runtime/execution-budget.js';
12
+ import { pinWorkerWorktree } from './worker-worktree.js';
12
13
  const MAX_PEEK_TEXT_LENGTH = 200;
13
14
  export class ExecutionSubagentRunner {
14
15
  #logger;
@@ -41,6 +42,29 @@ export class ExecutionSubagentRunner {
41
42
  if (!this.#createClient) {
42
43
  throw new Error('SubagentManager: createClient factory not provided');
43
44
  }
45
+ let runExecutionContext = this.#executionContext;
46
+ let worktreePath;
47
+ if (request.worktree) {
48
+ const pin = await pinWorkerWorktree({
49
+ name: request.worktree,
50
+ role: request.role,
51
+ homeRoot: this.#executionContext?.getHomeWorkspace() ?? process.cwd(),
52
+ isRemote: this.#executionContext?.isRemote() ?? false,
53
+ });
54
+ if (!pin.ok) {
55
+ return {
56
+ agentId,
57
+ role: request.role,
58
+ status: 'failed',
59
+ finalText: '',
60
+ filesChanged: [],
61
+ toolsUsed: [],
62
+ error: pin.error,
63
+ };
64
+ }
65
+ runExecutionContext = pin.executionContext;
66
+ worktreePath = pin.worktreePath;
67
+ }
44
68
  // ── Budget enforcement ──
45
69
  // Root executions do NOT consume a child slot; only actual nested
46
70
  // agent runs do. The root budget tracks children, not itself.
@@ -58,6 +82,7 @@ export class ExecutionSubagentRunner {
58
82
  filesChanged: [],
59
83
  toolsUsed: [],
60
84
  error: `Budget exhausted: ${slot.reason}${slot.max !== undefined ? ` (${slot.current}/${slot.max})` : ''}`,
85
+ ...(worktreePath ? { worktreePath } : {}),
61
86
  };
62
87
  }
63
88
  childSlot = slot;
@@ -67,7 +92,9 @@ export class ExecutionSubagentRunner {
67
92
  const diffDeltas = new Map();
68
93
  const validationCapture = {};
69
94
  const searchViaShell = resolveSubagentSearchViaShell(this.#settings, definition.model, definition.canRunShell);
70
- const toolDefinitions = this.#toolFactory.buildToolDefinitions(definition, filesChanged, request.task, searchViaShell, false, diffDeltas, validationCapture, segmentControl ? (question) => segmentControl.askOrchestrator(question) : undefined);
95
+ const toolDefinitions = this.#toolFactory.buildToolDefinitions(definition, filesChanged, request.task, searchViaShell, false, diffDeltas, validationCapture, segmentControl ? (question) => segmentControl.askOrchestrator(question) : undefined, runExecutionContext && runExecutionContext !== this.#executionContext
96
+ ? { executionContext: runExecutionContext }
97
+ : undefined);
71
98
  const providerId = definition.provider;
72
99
  const tools = this.#toolFactory.buildAgentTools(toolDefinitions, {
73
100
  providerId,
@@ -89,7 +116,7 @@ export class ExecutionSubagentRunner {
89
116
  if (definition.maxTokens !== undefined) {
90
117
  modelSettings.maxTokens = definition.maxTokens;
91
118
  }
92
- const fullInstructions = buildInstructions(definition, toolDefinitions, searchViaShell, this.#settings, this.#executionContext, this.#skillsService);
119
+ const fullInstructions = buildInstructions(definition, toolDefinitions, searchViaShell, this.#settings, runExecutionContext, this.#skillsService);
93
120
  const agent = {
94
121
  name: definition.name,
95
122
  model: definition.model,
@@ -129,6 +156,7 @@ export class ExecutionSubagentRunner {
129
156
  let subagentStatus = 'completed';
130
157
  let loopProcessedError = false;
131
158
  let currentText = '';
159
+ let emittedUsageUpdate = false;
132
160
  try {
133
161
  for await (const event of runtime.turns.start(userTurn, {
134
162
  signal,
@@ -183,14 +211,25 @@ export class ExecutionSubagentRunner {
183
211
  currentText = '';
184
212
  }
185
213
  finalText = event.finalText;
186
- if (event.usage)
214
+ if (event.usage) {
187
215
  usage = event.usage;
216
+ if (!emittedUsageUpdate) {
217
+ safeEmit(this.#logger, onEvent, { type: 'usage_update', agentId, usage: event.usage });
218
+ emittedUsageUpdate = true;
219
+ }
220
+ }
188
221
  if (event.costRecords && event.costRecords.length > 0)
189
222
  costRecords = event.costRecords;
190
223
  break;
191
224
  case 'usage_update':
192
225
  if (event.usage)
193
226
  usage = event.usage;
227
+ safeEmit(this.#logger, onEvent, {
228
+ type: 'usage_update',
229
+ agentId,
230
+ usage: event.usage,
231
+ });
232
+ emittedUsageUpdate = true;
194
233
  break;
195
234
  case 'error':
196
235
  error = new Error(event.message);
@@ -223,6 +262,9 @@ export class ExecutionSubagentRunner {
223
262
  if (!usage) {
224
263
  usage = normalizeAgentRunUsage(err?.state?.usage) ?? extractUsage(err);
225
264
  }
265
+ if (usage && !emittedUsageUpdate) {
266
+ safeEmit(this.#logger, onEvent, { type: 'usage_update', agentId, usage });
267
+ }
226
268
  }
227
269
  finally {
228
270
  try {
@@ -250,6 +292,31 @@ export class ExecutionSubagentRunner {
250
292
  }
251
293
  const diffStat = buildDiffStat(filesChanged, diffDeltas);
252
294
  const validation = validationCapture.value;
295
+ // Turn-budget exhaustion is containment, not a crash: report partial work
296
+ // under status completed so the parent can continue from evidence.
297
+ if (error && isMaxTurnsExceededError(error) && signal?.aborted !== true) {
298
+ const maxTurns = extractMaxTurnsLimit(error) ?? definition.maxTurns;
299
+ this.#logger.warn('Subagent turn budget exhausted', {
300
+ agentId,
301
+ role: request.role,
302
+ maxTurns,
303
+ });
304
+ const partialText = finalText.trim() || currentText.trim();
305
+ const resultText = await truncateResultText(buildTurnBudgetExhaustedFinalText({ maxTurns, partialText }));
306
+ return {
307
+ agentId,
308
+ role: request.role,
309
+ status: 'completed',
310
+ ...resultText,
311
+ filesChanged: [...new Set(filesChanged)],
312
+ toolsUsed: aggregateToolUsage(toolCounts),
313
+ ...(usage ? { usage } : {}),
314
+ ...(costRecords && costRecords.length > 0 ? { costRecords } : {}),
315
+ ...(diffStat.length > 0 ? { diffStat } : {}),
316
+ ...(validation ? { validation } : {}),
317
+ ...(worktreePath ? { worktreePath } : {}),
318
+ };
319
+ }
253
320
  if (error) {
254
321
  return {
255
322
  agentId,
@@ -263,6 +330,7 @@ export class ExecutionSubagentRunner {
263
330
  ...(costRecords && costRecords.length > 0 ? { costRecords } : {}),
264
331
  ...(diffStat.length > 0 ? { diffStat } : {}),
265
332
  ...(validation ? { validation } : {}),
333
+ ...(worktreePath ? { worktreePath } : {}),
266
334
  };
267
335
  }
268
336
  const resultText = await truncateResultText(finalText);
@@ -277,6 +345,7 @@ export class ExecutionSubagentRunner {
277
345
  ...(costRecords && costRecords.length > 0 ? { costRecords } : {}),
278
346
  ...(diffStat.length > 0 ? { diffStat } : {}),
279
347
  ...(validation ? { validation } : {}),
348
+ ...(worktreePath ? { worktreePath } : {}),
280
349
  };
281
350
  }
282
351
  }
@@ -1 +1 @@
1
- {"version":3,"file":"execution-runner.js","sourceRoot":"","sources":["../../../source/services/subagents/execution-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAY7B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAErF,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AAGpF,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAIzE,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAEjC,MAAM,OAAO,uBAAuB;IAClC,OAAO,CAAkB;IACzB,SAAS,CAAmB;IAC5B,sBAAsB,CAAyB;IAC/C,iBAAiB,CAAoB;IACrC,aAAa,CAA0C;IACvD,YAAY,CAAsB;IAClC,QAAQ,CAAsC;IAC9C,cAAc,CAAiB;IAC/B,cAAc,CAAwB;IAEtC,YAAY,IAUX;QACC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,qBAAqB,CAAC;QACzD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC/C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;QACzC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAe,EAAE,OAAwB,EAAE,UAA8B;QACjF,OAAO,IAAI,CAAC,QAAQ,CAClB,OAAO,EACP,OAAO,EACP,UAAU,EACV,IAAI,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,EAC1C,SAAS,EACT,OAAO,CAAC,MAAM,EACd,SAAS,EACT,SAAS,EACT,OAAO,CAAC,IAAI,CACb,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,OAAe,EACf,OAAwB,EACxB,UAA8B,EAC9B,OAAwB,EACxB,iBAAqC,EACrC,MAAoB,EACpB,eAAoD,EACpD,cAAuC,EACvC,KAAK,GAAG,OAAO,CAAC,IAAI;QAEpB,OAAO,IAAI,CAAC,QAAQ,CAClB,OAAO,EACP,OAAO,EACP,UAAU,EACV,OAAO,EACP,iBAAiB,EACjB,MAAM,EACN,eAAe,EACf,cAAc,EACd,KAAK,CACN,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,OAAe,EACf,OAAwB,EACxB,UAA8B,EAC9B,OAAwB,EACxB,iBAAgD,EAChD,MAA+B,EAC/B,eAAiE,EACjE,cAAkD,EAClD,KAAa;QAEb,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QAED,2BAA2B;QAC3B,kEAAkE;QAClE,8DAA8D;QAC9D,IAAI,SAAS,GAAG,iBAAiB,CAAC;QAClC,IAAI,eAAe,GAAG,UAAU,CAAC,eAAe,CAAC;QACjD,IAAI,UAAU,CAAC,eAAe,IAAI,CAAC,UAAU,CAAC,eAAe,IAAI,CAAC,SAAS,EAAE,CAAC;YAC5E,eAAe,GAAG,UAAU,CAAC,eAAe,CAAC,iBAAiB,EAAE,CAAC;YACjE,MAAM,IAAI,GAAG,UAAU,CAAC,eAAe,CAAC,eAAe,EAAE,CAAC;YAC1D,IAAI,CAAC,CAAC,IAAI,YAAY,iBAAiB,CAAC,EAAE,CAAC;gBACzC,OAAO;oBACL,OAAO;oBACP,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,MAAM,EAAE,QAAQ;oBAChB,SAAS,EAAE,EAAE;oBACb,YAAY,EAAE,EAAE;oBAChB,SAAS,EAAE,EAAE;oBACb,KAAK,EAAE,qBAAqB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;iBAC3G,CAAC;YACJ,CAAC;YACD,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC7C,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA8C,CAAC;QACzE,MAAM,iBAAiB,GAAsB,EAAE,CAAC;QAEhD,MAAM,cAAc,GAAG,6BAA6B,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;QAC/G,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAC5D,UAAU,EACV,YAAY,EACZ,OAAO,CAAC,IAAI,EACZ,cAAc,EACd,KAAK,EACL,UAAU,EACV,iBAAiB,EACjB,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CACpF,CAAC;QAEF,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,eAAe,EAAE;YAC/D,UAAU;YACV,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE;gBACpB,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACtD,cAAc,EAAE,WAAW,EAAE,CAAC;YAChC,CAAC;YACD,cAAc,EAAE,GAAG,EAAE;gBACnB,cAAc,EAAE,cAAc,EAAE,CAAC;YACnC,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,aAAa,GAAQ;YACzB,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE;SACtE,CAAC;QACF,IAAI,UAAU,CAAC,eAAe,IAAI,UAAU,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAC3E,aAAa,CAAC,SAAS,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QACpF,CAAC;QACD,4DAA4D;QAC5D,IAAI,UAAU,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACvC,aAAa,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACjD,CAAC;QAED,MAAM,gBAAgB,GAAG,iBAAiB,CACxC,UAAU,EACV,eAAe,EACf,cAAc,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,cAAc,CACpB,CAAC;QAEF,MAAM,KAAK,GAAqB;YAC9B,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,YAAY,EAAE,gBAAgB;YAC9B,KAAK;SACN,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC;YACnC,KAAK;YACL,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,CAAC;SAC9D,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,oBAAoB,CAAC;YACnC,SAAS,EAAE,YAAY,OAAO,EAAE;YAChC,WAAW,EAAE,SAAS;YACtB,aAAa,EAAE,IAAI,CAAC,cAAc;YAClC,IAAI,EAAE;gBACJ,MAAM,EAAE,IAAI,CAAC,OAAO;gBACpB,eAAe,EAAE,IAAI,CAAC,SAAS;gBAC/B,qBAAqB,EAAE,IAAI,CAAC,sBAAsB;aACnD;YACD,YAAY,EAAE;gBACZ,sBAAsB,EAAE,KAAK;aAC9B;SACF,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAC3C,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,OAAO,GAAG,eAAe,IAAI,IAAI,CAAC,QAAQ,CAAC;QACjD,MAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAW,EAAE,CAAC;QACtD,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,KAAK,GAAQ,SAAS,CAAC;QAC3B,IAAI,WAA2C,CAAC;QAChD,IAAI,KAAwB,CAAC;QAC7B,IAAI,cAAc,GAA6B,WAAW,CAAC;QAC3D,IAAI,kBAAkB,GAAG,KAAK,CAAC;QAC/B,IAAI,WAAW,GAAG,EAAE,CAAC;QAErB,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE;gBACtD,MAAM;gBACN,eAAe,EAAE,0BAA0B;aAC5C,CAAC,EAAE,CAAC;gBACH,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;oBACnB,KAAK,YAAY;wBACf,WAAW,GAAG,GAAG,WAAW,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;wBAC5E,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE;4BAC9B,IAAI,EAAE,yBAAyB;4BAC/B,OAAO;4BACP,IAAI,EAAE,WAAW;yBAClB,CAAC,CAAC;wBACH,MAAM;oBACR,KAAK,cAAc;wBACjB,IAAI,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC;4BACvB,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE;gCAC9B,IAAI,EAAE,oBAAoB;gCAC1B,OAAO;gCACP,IAAI,EAAE,OAAO,CAAC,IAAI;gCAClB,IAAI,EAAE,WAAW;6BAClB,CAAC,CAAC;4BACH,WAAW,GAAG,EAAE,CAAC;wBACnB,CAAC;wBACD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;4BACnB,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE;gCAC9B,IAAI,EAAE,uBAAuB;gCAC7B,OAAO;gCACP,IAAI,EAAE,OAAO,CAAC,IAAI;gCAClB,UAAU,EAAE,KAAK,CAAC,UAAU;gCAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;gCACxB,SAAS,EAAE,KAAK,CAAC,SAAS;6BAC3B,CAAC,CAAC;wBACL,CAAC;wBACD,MAAM;oBACR,KAAK,iBAAiB;wBACpB,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE;4BAC9B,IAAI,EAAE,0BAA0B;4BAChC,OAAO;4BACP,IAAI,EAAE,OAAO,CAAC,IAAI;4BAClB,OAAO,EAAE,KAAK,CAAC,OAAO;yBACvB,CAAC,CAAC;wBACH,MAAM;oBACR,KAAK,OAAO;wBACV,IAAI,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC;4BACvB,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE;gCAC9B,IAAI,EAAE,oBAAoB;gCAC1B,OAAO;gCACP,IAAI,EAAE,OAAO,CAAC,IAAI;gCAClB,IAAI,EAAE,WAAW;6BAClB,CAAC,CAAC;4BACH,WAAW,GAAG,EAAE,CAAC;wBACnB,CAAC;wBACD,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;wBAC5B,IAAI,KAAK,CAAC,KAAK;4BAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;wBACrC,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;4BAAE,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;wBACvF,MAAM;oBACR,KAAK,cAAc;wBACjB,IAAI,KAAK,CAAC,KAAK;4BAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;wBACrC,MAAM;oBACR,KAAK,OAAO;wBACV,KAAK,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;wBACjC,kBAAkB,GAAG,IAAI,CAAC;wBAC1B,cAAc,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC;wBAC5E,MAAM;oBACR,KAAK,OAAO;wBACV,WAAW,GAAG,EAAE,CAAC;wBACjB,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE;4BAC9B,IAAI,EAAE,OAAO;4BACb,QAAQ,EAAE,KAAK,CAAC,QAAQ;4BACxB,OAAO,EAAE,KAAK,CAAC,OAAO;4BACtB,UAAU,EAAE,KAAK,CAAC,UAAU;4BAC5B,YAAY,EAAE,KAAK,CAAC,YAAY;4BAChC,SAAS,EAAE,KAAK,CAAC,SAAS;4BAC1B,OAAO;4BACP,IAAI,EAAE,OAAO,CAAC,IAAI;yBACZ,CAAC,CAAC;wBACV,MAAM;gBACV,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9D,CAAC;YACD,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,cAAc,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC;YAChH,CAAC;YACD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,KAAK,GAAG,sBAAsB,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;gBAC7C,OAAO,CAAC,WAAW,CAAC,QAAe,CAAC,CAAC;gBACrC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,0BAA0B,CAAC,IAAI,EAAE,CAAC;gBACxE,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAClC,CAAC;YAAC,OAAO,SAAc,EAAE,CAAC;gBACxB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,+CAA+C,EAAE;oBAClE,OAAO;oBACP,KAAK,EAAE,SAAS,EAAE,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC;iBAC/C,CAAC,CAAC;YACL,CAAC;YACD,oDAAoD;YACpD,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;gBACvB,eAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACtC,CAAC;YACD,yBAAyB;YACzB,SAAS,EAAE,OAAO,EAAE,CAAC;YACrB,OAAO,CAAC,OAAO,EAAE,CAAC;YAClB,sEAAsE;YACtE,mEAAmE;YAClE,SAAsC,CAAC,OAAO,EAAE,EAAE,CAAC;QACtD,CAAC;QAED,MAAM,QAAQ,GAAG,aAAa,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,CAAC;QAE3C,IAAI,KAAK,EAAE,CAAC;YACV,OAAO;gBACL,OAAO;gBACP,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM,EAAE,cAAc;gBACtB,SAAS,EAAE,EAAE;gBACb,YAAY,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;gBACxC,SAAS,EAAE,kBAAkB,CAAC,UAAU,CAAC;gBACzC,KAAK,EAAE,KAAK,CAAC,OAAO;gBACpB,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3B,GAAG,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjE,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5C,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtC,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAEvD,OAAO;YACL,OAAO;YACP,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE,WAAW;YACnB,GAAG,UAAU;YACb,YAAY,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;YACxC,SAAS,EAAE,kBAAkB,CAAC,UAAU,CAAC;YACzC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5C,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtC,CAAC;IACJ,CAAC;CACF;AAED,SAAS,aAAa,CACpB,YAAsB,EACtB,UAA2D;IAE3D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,OAAO,GAAoB,EAAE,CAAC;IACpC,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QAC7B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACf,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC;YACX,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,KAAK,EAAE,KAAK,IAAI,CAAC;YACxB,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,CAAC;SAC7B,CAAC,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,WAAW,CAAC,CAAS;IAC5B,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC;AAED,MAAM,oBAAoB,GAAG,MAAM,CAAC;AACpC,IAAI,4BAAyD,CAAC;AAE9D,KAAK,UAAU,kBAAkB,CAC/B,IAAY;IAEZ,IAAI,IAAI,CAAC,MAAM,IAAI,oBAAoB;QAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAEpE,MAAM,YAAY,GAAG,MAAM,0BAA0B,CAAC,IAAI,CAAC,CAAC;IAC5D,OAAO;QACL,SAAS,EACP,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,oBAAoB,CAAC,GAAG,qDAAqD,YAAY,IAAI;QAC7G,kBAAkB,EAAE,IAAI;QACxB,qBAAqB,EAAE,YAAY;KACpC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,0BAA0B,CAAC,IAAY;IACpD,4BAA4B,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAC3F,MAAM,OAAO,GAAG,MAAM,4BAA4B,CAAC;IACnD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACvF,MAAM,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC5C,OAAO,YAAY,CAAC;AACtB,CAAC"}
1
+ {"version":3,"file":"execution-runner.js","sourceRoot":"","sources":["../../../source/services/subagents/execution-runner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mentor-runner.d.ts","sourceRoot":"","sources":["../../../source/services/subagents/mentor-runner.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC1G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAQxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAEhF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,qBAAa,YAAY;;IAOvB,YAAY,IAAI,EAAE;QAChB,MAAM,EAAE,eAAe,CAAC;QACxB,QAAQ,EAAE,gBAAgB,CAAC;QAC3B,qBAAqB,EAAE,sBAAsB,CAAC;QAC9C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;QACpC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;QAC7C,OAAO,CAAC,EAAE,eAAe,CAAC;KAC3B,EAMA;IAED,KAAK,IAAI,IAAI,CAEZ;IAEK,GAAG,CACP,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,eAAe,EACzB,eAAe,CAAC,EAAE,eAAe,GAChC,OAAO,CAAC,cAAc,CAAC,CA+CzB;IAEK,YAAY,CAChB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,cAAc,CAAC,CAEzB;CAwFF"}
1
+ {"version":3,"file":"mentor-runner.d.ts","sourceRoot":"","sources":["../../../source/services/subagents/mentor-runner.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC1G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAQxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAEhF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAiB5E,qBAAa,YAAY;;IAQvB,YAAY,IAAI,EAAE;QAChB,MAAM,EAAE,eAAe,CAAC;QACxB,QAAQ,EAAE,gBAAgB,CAAC;QAC3B,qBAAqB,EAAE,sBAAsB,CAAC;QAC9C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;QACpC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;QAC7C,OAAO,CAAC,EAAE,eAAe,CAAC;KAC3B,EAOA;IAED,KAAK,IAAI,IAAI,CAEZ;IAEK,GAAG,CACP,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,eAAe,EACzB,eAAe,CAAC,EAAE,eAAe,GAChC,OAAO,CAAC,cAAc,CAAC,CAoDzB;IAEK,YAAY,CAChB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,cAAc,CAAC,CAEzB;CA6MF"}