@qduc/term2 0.17.0 → 0.19.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 (318) hide show
  1. package/dist/agent.d.ts +2 -0
  2. package/dist/agent.d.ts.map +1 -1
  3. package/dist/agent.js +4 -1
  4. package/dist/agent.js.map +1 -1
  5. package/dist/app.d.ts.map +1 -1
  6. package/dist/app.js +12 -2
  7. package/dist/app.js.map +1 -1
  8. package/dist/commands/retry-failed-turn-command.d.ts +6 -0
  9. package/dist/commands/retry-failed-turn-command.d.ts.map +1 -0
  10. package/dist/commands/retry-failed-turn-command.js +12 -0
  11. package/dist/commands/retry-failed-turn-command.js.map +1 -0
  12. package/dist/components/layout/BackgroundTaskManager.d.ts.map +1 -1
  13. package/dist/components/layout/BackgroundTaskManager.js +4 -0
  14. package/dist/components/layout/BackgroundTaskManager.js.map +1 -1
  15. package/dist/components/layout/BackgroundTasksPanel.d.ts.map +1 -1
  16. package/dist/components/layout/BackgroundTasksPanel.js +11 -1
  17. package/dist/components/layout/BackgroundTasksPanel.js.map +1 -1
  18. package/dist/components/layout/BottomArea.d.ts +6 -0
  19. package/dist/components/layout/BottomArea.d.ts.map +1 -1
  20. package/dist/components/layout/BottomArea.js +14 -5
  21. package/dist/components/layout/BottomArea.js.map +1 -1
  22. package/dist/components/layout/StatusBar.d.ts +6 -0
  23. package/dist/components/layout/StatusBar.d.ts.map +1 -1
  24. package/dist/components/layout/StatusBar.js +15 -4
  25. package/dist/components/layout/StatusBar.js.map +1 -1
  26. package/dist/components/message/ChatMessage.js +3 -1
  27. package/dist/components/message/ChatMessage.js.map +1 -1
  28. package/dist/components/message/CommandGroupSummary.js +4 -5
  29. package/dist/components/message/CommandGroupSummary.js.map +1 -1
  30. package/dist/components/message/MessageList.d.ts.map +1 -1
  31. package/dist/components/message/MessageList.js +15 -2
  32. package/dist/components/message/MessageList.js.map +1 -1
  33. package/dist/components/message/command-grouping.d.ts +1 -0
  34. package/dist/components/message/command-grouping.d.ts.map +1 -1
  35. package/dist/components/message/command-grouping.js +14 -7
  36. package/dist/components/message/command-grouping.js.map +1 -1
  37. package/dist/components/message/command-message-helpers.d.ts +5 -5
  38. package/dist/contracts/conversation.d.ts +2 -0
  39. package/dist/contracts/conversation.d.ts.map +1 -1
  40. package/dist/contracts/conversation.js.map +1 -1
  41. package/dist/contracts/run-termination.d.ts +7 -0
  42. package/dist/contracts/run-termination.d.ts.map +1 -0
  43. package/dist/contracts/run-termination.js +2 -0
  44. package/dist/contracts/run-termination.js.map +1 -0
  45. package/dist/contracts/session-rollover.d.ts +32 -0
  46. package/dist/contracts/session-rollover.d.ts.map +1 -0
  47. package/dist/contracts/session-rollover.js +2 -0
  48. package/dist/contracts/session-rollover.js.map +1 -0
  49. package/dist/contracts/streamed-model-turn.d.ts +4 -0
  50. package/dist/contracts/streamed-model-turn.d.ts.map +1 -1
  51. package/dist/hooks/conversation-ui-reducer.d.ts +7 -0
  52. package/dist/hooks/conversation-ui-reducer.d.ts.map +1 -1
  53. package/dist/hooks/conversation-ui-reducer.js +6 -0
  54. package/dist/hooks/conversation-ui-reducer.js.map +1 -1
  55. package/dist/hooks/settings-completion-config.d.ts.map +1 -1
  56. package/dist/hooks/settings-completion-config.js +6 -0
  57. package/dist/hooks/settings-completion-config.js.map +1 -1
  58. package/dist/hooks/use-app-commands.d.ts +2 -1
  59. package/dist/hooks/use-app-commands.d.ts.map +1 -1
  60. package/dist/hooks/use-app-commands.js +4 -1
  61. package/dist/hooks/use-app-commands.js.map +1 -1
  62. package/dist/hooks/use-conversation.d.ts +9 -1
  63. package/dist/hooks/use-conversation.d.ts.map +1 -1
  64. package/dist/hooks/use-conversation.js +42 -6
  65. package/dist/hooks/use-conversation.js.map +1 -1
  66. package/dist/hooks/use-model-selection.d.ts +2 -0
  67. package/dist/hooks/use-model-selection.d.ts.map +1 -1
  68. package/dist/hooks/use-model-selection.js +3 -3
  69. package/dist/hooks/use-model-selection.js.map +1 -1
  70. package/dist/lib/agent-client.d.ts +4 -0
  71. package/dist/lib/agent-client.d.ts.map +1 -1
  72. package/dist/lib/agent-client.js +120 -23
  73. package/dist/lib/agent-client.js.map +1 -1
  74. package/dist/lib/agent-configuration.d.ts +2 -0
  75. package/dist/lib/agent-configuration.d.ts.map +1 -1
  76. package/dist/lib/agent-configuration.js +3 -0
  77. package/dist/lib/agent-configuration.js.map +1 -1
  78. package/dist/lib/agent-factory.d.ts +2 -0
  79. package/dist/lib/agent-factory.d.ts.map +1 -1
  80. package/dist/lib/agent-factory.js +1 -0
  81. package/dist/lib/agent-factory.js.map +1 -1
  82. package/dist/providers/aborted-stream-recorder.d.ts +26 -1
  83. package/dist/providers/aborted-stream-recorder.d.ts.map +1 -1
  84. package/dist/providers/aborted-stream-recorder.js +133 -0
  85. package/dist/providers/aborted-stream-recorder.js.map +1 -1
  86. package/dist/providers/ai-sdk-streamed-model.d.ts +5 -0
  87. package/dist/providers/ai-sdk-streamed-model.d.ts.map +1 -1
  88. package/dist/providers/ai-sdk-streamed-model.js +90 -1
  89. package/dist/providers/ai-sdk-streamed-model.js.map +1 -1
  90. package/dist/providers/codex-compact.d.ts +5 -4
  91. package/dist/providers/codex-compact.d.ts.map +1 -1
  92. package/dist/providers/codex-compact.js +5 -4
  93. package/dist/providers/codex-compact.js.map +1 -1
  94. package/dist/providers/codex-responses-model.d.ts.map +1 -1
  95. package/dist/providers/codex-responses-model.js +103 -20
  96. package/dist/providers/codex-responses-model.js.map +1 -1
  97. package/dist/providers/codex.provider.d.ts +1 -0
  98. package/dist/providers/codex.provider.d.ts.map +1 -1
  99. package/dist/providers/codex.provider.js +59 -3
  100. package/dist/providers/codex.provider.js.map +1 -1
  101. package/dist/providers/fetch/logging-middleware.d.ts +1 -0
  102. package/dist/providers/fetch/logging-middleware.d.ts.map +1 -1
  103. package/dist/providers/fetch/logging-middleware.js +24 -1
  104. package/dist/providers/fetch/logging-middleware.js.map +1 -1
  105. package/dist/providers/openai-chat-completions-model.d.ts.map +1 -1
  106. package/dist/providers/openai-chat-completions-model.js +99 -2
  107. package/dist/providers/openai-chat-completions-model.js.map +1 -1
  108. package/dist/providers/openai-responses-model.d.ts.map +1 -1
  109. package/dist/providers/openai-responses-model.js +21 -13
  110. package/dist/providers/openai-responses-model.js.map +1 -1
  111. package/dist/providers/retrying-model.d.ts +5 -1
  112. package/dist/providers/retrying-model.d.ts.map +1 -1
  113. package/dist/providers/retrying-model.js +29 -6
  114. package/dist/providers/retrying-model.js.map +1 -1
  115. package/dist/providers/websocket-abort-race.d.ts +13 -0
  116. package/dist/providers/websocket-abort-race.d.ts.map +1 -0
  117. package/dist/providers/websocket-abort-race.js +34 -0
  118. package/dist/providers/websocket-abort-race.js.map +1 -0
  119. package/dist/services/agent-runtime/application-run-loop.d.ts +7 -0
  120. package/dist/services/agent-runtime/application-run-loop.d.ts.map +1 -1
  121. package/dist/services/agent-runtime/application-run-loop.js +56 -7
  122. package/dist/services/agent-runtime/application-run-loop.js.map +1 -1
  123. package/dist/services/agent-runtime/context-compaction/context-milestone-reminder.d.ts +12 -0
  124. package/dist/services/agent-runtime/context-compaction/context-milestone-reminder.d.ts.map +1 -0
  125. package/dist/services/agent-runtime/context-compaction/context-milestone-reminder.js +23 -0
  126. package/dist/services/agent-runtime/context-compaction/context-milestone-reminder.js.map +1 -0
  127. package/dist/services/agent-runtime/executor.d.ts.map +1 -1
  128. package/dist/services/agent-runtime/executor.js +2 -0
  129. package/dist/services/agent-runtime/executor.js.map +1 -1
  130. package/dist/services/agent-runtime/types.d.ts +2 -2
  131. package/dist/services/agent-runtime/types.d.ts.map +1 -1
  132. package/dist/services/agent-stream.d.ts +13 -0
  133. package/dist/services/agent-stream.d.ts.map +1 -1
  134. package/dist/services/agent-stream.js +56 -0
  135. package/dist/services/agent-stream.js.map +1 -1
  136. package/dist/services/background-task-activity.d.ts +7 -0
  137. package/dist/services/background-task-activity.d.ts.map +1 -1
  138. package/dist/services/background-task-activity.js +17 -0
  139. package/dist/services/background-task-activity.js.map +1 -1
  140. package/dist/services/conversation/conversation-adapter.d.ts +1 -0
  141. package/dist/services/conversation/conversation-adapter.d.ts.map +1 -1
  142. package/dist/services/conversation/conversation-adapter.js +3 -0
  143. package/dist/services/conversation/conversation-adapter.js.map +1 -1
  144. package/dist/services/conversation/conversation-decoder.d.ts.map +1 -1
  145. package/dist/services/conversation/conversation-decoder.js +3 -0
  146. package/dist/services/conversation/conversation-decoder.js.map +1 -1
  147. package/dist/services/conversation/conversation-events.d.ts +45 -2
  148. package/dist/services/conversation/conversation-events.d.ts.map +1 -1
  149. package/dist/services/conversation/conversation-events.js +30 -1
  150. package/dist/services/conversation/conversation-events.js.map +1 -1
  151. package/dist/services/conversation/conversation-orchestrator.d.ts +4 -0
  152. package/dist/services/conversation/conversation-orchestrator.d.ts.map +1 -1
  153. package/dist/services/conversation/conversation-orchestrator.js +74 -4
  154. package/dist/services/conversation/conversation-orchestrator.js.map +1 -1
  155. package/dist/services/conversation/conversation-orchestrator.types.d.ts +4 -0
  156. package/dist/services/conversation/conversation-orchestrator.types.d.ts.map +1 -1
  157. package/dist/services/conversation/conversation-result-builder.d.ts.map +1 -1
  158. package/dist/services/conversation/conversation-result-builder.js +9 -5
  159. package/dist/services/conversation/conversation-result-builder.js.map +1 -1
  160. package/dist/services/conversation/conversation-service.d.ts +5 -0
  161. package/dist/services/conversation/conversation-service.d.ts.map +1 -1
  162. package/dist/services/conversation/conversation-service.js +31 -0
  163. package/dist/services/conversation/conversation-service.js.map +1 -1
  164. package/dist/services/conversation/session-browser.d.ts +1 -0
  165. package/dist/services/conversation/session-browser.d.ts.map +1 -1
  166. package/dist/services/conversation/session-browser.js +32 -38
  167. package/dist/services/conversation/session-browser.js.map +1 -1
  168. package/dist/services/conversation-agent-client.d.ts +7 -0
  169. package/dist/services/conversation-agent-client.d.ts.map +1 -1
  170. package/dist/services/logging/conversation-log-events.d.ts +6 -1
  171. package/dist/services/logging/conversation-log-events.d.ts.map +1 -1
  172. package/dist/services/logging/conversation-log-events.js.map +1 -1
  173. package/dist/services/logging/conversation-log-writer.d.ts +1 -1
  174. package/dist/services/logging/conversation-log-writer.d.ts.map +1 -1
  175. package/dist/services/logging/conversation-log-writer.js +6 -1
  176. package/dist/services/logging/conversation-log-writer.js.map +1 -1
  177. package/dist/services/logging/provider-traffic.d.ts +6 -1
  178. package/dist/services/logging/provider-traffic.d.ts.map +1 -1
  179. package/dist/services/logging/provider-traffic.js +29 -4
  180. package/dist/services/logging/provider-traffic.js.map +1 -1
  181. package/dist/services/models/model-catalog-session.d.ts +1 -2
  182. package/dist/services/models/model-catalog-session.d.ts.map +1 -1
  183. package/dist/services/retry/committed-tool-continuation.d.ts +4 -0
  184. package/dist/services/retry/committed-tool-continuation.d.ts.map +1 -0
  185. package/dist/services/retry/committed-tool-continuation.js +12 -0
  186. package/dist/services/retry/committed-tool-continuation.js.map +1 -0
  187. package/dist/services/retry/in-loop-model-retry.d.ts.map +1 -1
  188. package/dist/services/retry/in-loop-model-retry.js +9 -0
  189. package/dist/services/retry/in-loop-model-retry.js.map +1 -1
  190. package/dist/services/retry/provider-failure-classification.d.ts +12 -0
  191. package/dist/services/retry/provider-failure-classification.d.ts.map +1 -0
  192. package/dist/services/retry/provider-failure-classification.js +55 -0
  193. package/dist/services/retry/provider-failure-classification.js.map +1 -0
  194. package/dist/services/retry/retry-classifier.d.ts.map +1 -1
  195. package/dist/services/retry/retry-classifier.js +68 -0
  196. package/dist/services/retry/retry-classifier.js.map +1 -1
  197. package/dist/services/retry/retry-contracts.d.ts +24 -3
  198. package/dist/services/retry/retry-contracts.d.ts.map +1 -1
  199. package/dist/services/retry/retry-event-presenter.d.ts.map +1 -1
  200. package/dist/services/retry/retry-event-presenter.js +14 -4
  201. package/dist/services/retry/retry-event-presenter.js.map +1 -1
  202. package/dist/services/retry/retry-recovery-budget.d.ts +51 -0
  203. package/dist/services/retry/retry-recovery-budget.d.ts.map +1 -0
  204. package/dist/services/retry/retry-recovery-budget.js +84 -0
  205. package/dist/services/retry/retry-recovery-budget.js.map +1 -0
  206. package/dist/services/service-interfaces.d.ts +67 -3
  207. package/dist/services/service-interfaces.d.ts.map +1 -1
  208. package/dist/services/session/background-check-in-scheduler.d.ts +5 -0
  209. package/dist/services/session/background-check-in-scheduler.d.ts.map +1 -1
  210. package/dist/services/session/background-check-in-scheduler.js +83 -10
  211. package/dist/services/session/background-check-in-scheduler.js.map +1 -1
  212. package/dist/services/session/continuation-recovery-handler.d.ts +1 -0
  213. package/dist/services/session/continuation-recovery-handler.d.ts.map +1 -1
  214. package/dist/services/session/continuation-recovery-handler.js +42 -0
  215. package/dist/services/session/continuation-recovery-handler.js.map +1 -1
  216. package/dist/services/session/continuation-state.d.ts +4 -1
  217. package/dist/services/session/continuation-state.d.ts.map +1 -1
  218. package/dist/services/session/continuation-state.js +5 -1
  219. package/dist/services/session/continuation-state.js.map +1 -1
  220. package/dist/services/session/initial-turn-recovery-handler.d.ts +3 -0
  221. package/dist/services/session/initial-turn-recovery-handler.d.ts.map +1 -1
  222. package/dist/services/session/initial-turn-recovery-handler.js +70 -0
  223. package/dist/services/session/initial-turn-recovery-handler.js.map +1 -1
  224. package/dist/services/session/session-composition.d.ts.map +1 -1
  225. package/dist/services/session/session-composition.js +6 -0
  226. package/dist/services/session/session-composition.js.map +1 -1
  227. package/dist/services/session/session-tool-tracker.d.ts +6 -0
  228. package/dist/services/session/session-tool-tracker.d.ts.map +1 -1
  229. package/dist/services/session/session-tool-tracker.js +17 -0
  230. package/dist/services/session/session-tool-tracker.js.map +1 -1
  231. package/dist/services/session/terminal-result-collector.d.ts.map +1 -1
  232. package/dist/services/session/terminal-result-collector.js +3 -0
  233. package/dist/services/session/terminal-result-collector.js.map +1 -1
  234. package/dist/services/session/turn-attempt-factory.d.ts +2 -0
  235. package/dist/services/session/turn-attempt-factory.d.ts.map +1 -1
  236. package/dist/services/session/turn-attempt-factory.js +1 -0
  237. package/dist/services/session/turn-attempt-factory.js.map +1 -1
  238. package/dist/services/session/turn-attempt.d.ts +6 -0
  239. package/dist/services/session/turn-attempt.d.ts.map +1 -1
  240. package/dist/services/session/turn-attempt.js +16 -0
  241. package/dist/services/session/turn-attempt.js.map +1 -1
  242. package/dist/services/session/turn-workflow.d.ts +1 -1
  243. package/dist/services/session/turn-workflow.d.ts.map +1 -1
  244. package/dist/services/session/turn-workflow.js +83 -19
  245. package/dist/services/session/turn-workflow.js.map +1 -1
  246. package/dist/services/session-rollover/session-rollover-brief.d.ts +6 -0
  247. package/dist/services/session-rollover/session-rollover-brief.d.ts.map +1 -0
  248. package/dist/services/session-rollover/session-rollover-brief.js +27 -0
  249. package/dist/services/session-rollover/session-rollover-brief.js.map +1 -0
  250. package/dist/services/settings/settings-schema.d.ts +18 -0
  251. package/dist/services/settings/settings-schema.d.ts.map +1 -1
  252. package/dist/services/settings/settings-schema.js +19 -0
  253. package/dist/services/settings/settings-schema.js.map +1 -1
  254. package/dist/services/settings/settings-sources.d.ts.map +1 -1
  255. package/dist/services/settings/settings-sources.js +5 -0
  256. package/dist/services/settings/settings-sources.js.map +1 -1
  257. package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts +1 -0
  258. package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts.map +1 -1
  259. package/dist/services/settings/test-helpers/settings-consumer-inventory.js +5 -0
  260. package/dist/services/settings/test-helpers/settings-consumer-inventory.js.map +1 -1
  261. package/dist/services/subagents/execution-runner.d.ts.map +1 -1
  262. package/dist/services/subagents/execution-runner.js +39 -4
  263. package/dist/services/subagents/execution-runner.js.map +1 -1
  264. package/dist/services/subagents/nested-runner.d.ts.map +1 -1
  265. package/dist/services/subagents/nested-runner.js +23 -7
  266. package/dist/services/subagents/nested-runner.js.map +1 -1
  267. package/dist/services/subagents/subagent-async-registry.d.ts.map +1 -1
  268. package/dist/services/subagents/subagent-async-registry.js +28 -2
  269. package/dist/services/subagents/subagent-async-registry.js.map +1 -1
  270. package/dist/services/subagents/subagent-notification-store.d.ts +4 -14
  271. package/dist/services/subagents/subagent-notification-store.d.ts.map +1 -1
  272. package/dist/services/subagents/subagent-notification-store.js +3 -2
  273. package/dist/services/subagents/subagent-notification-store.js.map +1 -1
  274. package/dist/services/subagents/types.d.ts +31 -8
  275. package/dist/services/subagents/types.d.ts.map +1 -1
  276. package/dist/services/subagents/types.js +11 -0
  277. package/dist/services/subagents/types.js.map +1 -1
  278. package/dist/services/subagents/utils.d.ts.map +1 -1
  279. package/dist/services/subagents/utils.js +3 -0
  280. package/dist/services/subagents/utils.js.map +1 -1
  281. package/dist/test-helpers/terminal-e2e.d.ts +2 -0
  282. package/dist/test-helpers/terminal-e2e.d.ts.map +1 -1
  283. package/dist/test-helpers/terminal-e2e.js +13 -6
  284. package/dist/test-helpers/terminal-e2e.js.map +1 -1
  285. package/dist/test-helpers/vitest-network-guard.d.ts +2 -0
  286. package/dist/test-helpers/vitest-network-guard.d.ts.map +1 -0
  287. package/dist/test-helpers/vitest-network-guard.js +24 -0
  288. package/dist/test-helpers/vitest-network-guard.js.map +1 -0
  289. package/dist/tools/agent/run-subagent-async.d.ts +1 -1
  290. package/dist/tools/agent/run-subagent-async.d.ts.map +1 -1
  291. package/dist/tools/agent/run-subagent-async.js +25 -4
  292. package/dist/tools/agent/run-subagent-async.js.map +1 -1
  293. package/dist/tools/session-rollover/session-rollover-tool.d.ts +12 -0
  294. package/dist/tools/session-rollover/session-rollover-tool.d.ts.map +1 -0
  295. package/dist/tools/session-rollover/session-rollover-tool.js +35 -0
  296. package/dist/tools/session-rollover/session-rollover-tool.js.map +1 -0
  297. package/dist/tools/types.d.ts +4 -0
  298. package/dist/tools/types.d.ts.map +1 -1
  299. package/dist/tools/types.js.map +1 -1
  300. package/dist/types/message.d.ts +2 -0
  301. package/dist/types/message.d.ts.map +1 -1
  302. package/dist/types/message.js.map +1 -1
  303. package/dist/utils/ai/token-usage.d.ts +3 -0
  304. package/dist/utils/ai/token-usage.d.ts.map +1 -1
  305. package/dist/utils/ai/token-usage.js +29 -0
  306. package/dist/utils/ai/token-usage.js.map +1 -1
  307. package/dist/utils/conversation/conversation-event-handler.d.ts.map +1 -1
  308. package/dist/utils/conversation/conversation-event-handler.js +23 -1
  309. package/dist/utils/conversation/conversation-event-handler.js.map +1 -1
  310. package/dist/utils/streaming/streaming-session-factory.d.ts +4 -0
  311. package/dist/utils/streaming/streaming-session-factory.d.ts.map +1 -1
  312. package/dist/utils/streaming/streaming-session-factory.js +59 -9
  313. package/dist/utils/streaming/streaming-session-factory.js.map +1 -1
  314. package/dist/utils/streaming/streaming-speed-tracker.d.ts +99 -0
  315. package/dist/utils/streaming/streaming-speed-tracker.d.ts.map +1 -0
  316. package/dist/utils/streaming/streaming-speed-tracker.js +214 -0
  317. package/dist/utils/streaming/streaming-speed-tracker.js.map +1 -0
  318. package/package.json +1 -1
@@ -9,6 +9,7 @@ import type { SessionLifecycle } from './session-lifecycle.js';
9
9
  import type { SessionToolTracker } from './session-tool-tracker.js';
10
10
  import type { AssistantTurnJournal } from '../logging/assistant-turn-journal.js';
11
11
  import { TurnAttempt } from './turn-attempt.js';
12
+ import type { RetryRecoveryBudget } from '../retry/retry-recovery-budget.js';
12
13
  export type InitialTurnRunOptions = {
13
14
  skipUserMessage?: boolean;
14
15
  replayFromHistory?: boolean;
@@ -23,6 +24,7 @@ export type InitialTurnRunOptions = {
23
24
  useStandardServiceTier?: boolean;
24
25
  disableChainingForAttempt?: boolean;
25
26
  inputSurgeApproval?: InputSurgeApproval;
27
+ recoveryBudget?: RetryRecoveryBudget;
26
28
  };
27
29
  export type TurnAttemptFactoryDeps = {
28
30
  agentClient: ConversationAgentClient;
@@ -1 +1 @@
1
- {"version":3,"file":"turn-attempt-factory.d.ts","sourceRoot":"","sources":["../../../source/services/session/turn-attempt-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,MAAM,qBAAqB,GAAG;IAClC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,cAAc,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,WAAW,EAAE,uBAAuB,CAAC;IACrC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,eAAe,EAAE,eAAe,CAAC;IACjC,WAAW,EAAE,kBAAkB,CAAC;IAChC,KAAK,EAAE,gBAAgB,CAAC;IACxB,iBAAiB,EAAE,MAAM,MAAM,CAAC;IAChC,OAAO,EAAE,oBAAoB,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,WAAW,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC;AAEtG,qBAAa,kBAAkB;;IACjB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,sBAAsB,EAAI;IAE7D,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE,OAAO,GAAE,qBAA0B,GAAG,yBAAyB,CAmC/F;CAoBF"}
1
+ {"version":3,"file":"turn-attempt-factory.d.ts","sourceRoot":"","sources":["../../../source/services/session/turn-attempt-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAE7E,MAAM,MAAM,qBAAqB,GAAG;IAClC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,cAAc,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,WAAW,EAAE,uBAAuB,CAAC;IACrC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,eAAe,EAAE,eAAe,CAAC;IACjC,WAAW,EAAE,kBAAkB,CAAC;IAChC,KAAK,EAAE,gBAAgB,CAAC;IACxB,iBAAiB,EAAE,MAAM,MAAM,CAAC;IAChC,OAAO,EAAE,oBAAoB,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,WAAW,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC;AAEtG,qBAAa,kBAAkB;;IACjB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,sBAAsB,EAAI;IAE7D,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE,OAAO,GAAE,qBAA0B,GAAG,yBAAyB,CAoC/F;CAoBF"}
@@ -32,6 +32,7 @@ export class TurnAttemptFactory {
32
32
  initialJournalSnapshot: this.deps.journal.getEvents(),
33
33
  maxTransientRetries: this.deps.resolveRetryLimit(),
34
34
  maxModelRetries: options.maxModelRetries,
35
+ recoveryBudget: options.recoveryBudget,
35
36
  signal: options.signal,
36
37
  onAbort: () => {
37
38
  this.deps.agentClient.abort();
@@ -1 +1 @@
1
- {"version":3,"file":"turn-attempt-factory.js","sourceRoot":"","sources":["../../../source/services/session/turn-attempt-factory.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAK7D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AA8BhD,MAAM,OAAO,kBAAkB;IACA,IAAI;IAAjC,YAA6B,IAA4B;oBAA5B,IAAI;IAA2B,CAAC;IAE7D,MAAM,CAAC,KAAwB,EAAE,OAAO,GAA0B,EAAE;QAClE,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,IAAI,GAAa,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,IAAI,EAAE;YAC5D,CAAC,CAAC,EAAE,GAAG,UAAU,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,OAAO,UAAU,CAAC,IAAI,EAAE,EAAE;YACvF,CAAC,CAAC,UAAU,CAAC;QAEf,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YACxE,IAAI,CAAC;gBACH,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,EAAE,CAAC;YAC7E,CAAC;YAAC,MAAM,CAAC;gBACP,sEAAsE;YACxE,CAAC;QACH,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QAC3B,CAAC;QAED,OAAO;YACL,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,IAAI,WAAW,CAAC;gBACvB,IAAI;gBACJ,aAAa,EAAE,UAAU;gBACzB,KAAK;gBACL,kBAAkB,EAAE,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC/D,sBAAsB,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;gBACrD,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;gBAClD,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO,EAAE,GAAG,EAAE;oBACZ,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;gBAChC,CAAC;aACF,CAAC;SACH,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,OAA8B;QAC1C,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAC5B,OAAO,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;QAC9D,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACnE,CAAC;IAED,qBAAqB,CAAC,OAAY;QAChC,MAAM,GAAG,GAAG,OAAO,IAAI,EAAE,CAAC;QAC1B,OAAO;YACL,mBAAmB,EAAE,GAAG,CAAC,mBAAmB,IAAI,CAAC;YACjD,wBAAwB,EAAE,GAAG,CAAC,wBAAwB,IAAI,GAAG,CAAC,4BAA4B,IAAI,CAAC;YAC/F,eAAe,EAAE,GAAG,CAAC,eAAe,IAAI,GAAG,CAAC,uBAAuB,IAAI,CAAC;YACxE,uBAAuB,EAAE,GAAG,CAAC,uBAAuB,IAAI,GAAG,CAAC,2BAA2B,IAAI,CAAC;SAC7F,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"turn-attempt-factory.js","sourceRoot":"","sources":["../../../source/services/session/turn-attempt-factory.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ import type { AssistantJournalItemLogEvent } from '../logging/conversation-log-e
6
6
  import type { SessionInputPlan } from './session-input-planner.js';
7
7
  import type { GenerationToken } from '../generation-guard.js';
8
8
  import type { ProviderHistorySnapshot } from '../conversation/conversation-store.js';
9
+ import { RetryRecoveryBudget } from '../retry/retry-recovery-budget.js';
9
10
  export declare class TurnAttempt {
10
11
  #private;
11
12
  constructor(options: {
@@ -17,6 +18,7 @@ export declare class TurnAttempt {
17
18
  initialJournalSnapshot: AssistantJournalItemLogEvent[];
18
19
  maxTransientRetries: number;
19
20
  maxModelRetries?: number;
21
+ recoveryBudget?: RetryRecoveryBudget;
20
22
  signal?: AbortSignal;
21
23
  onAbort?: () => void;
22
24
  });
@@ -27,13 +29,17 @@ export declare class TurnAttempt {
27
29
  get initialJournalSnapshot(): AssistantJournalItemLogEvent[];
28
30
  get maxTransientRetries(): number;
29
31
  get maxModelRetries(): number | undefined;
32
+ get recoveryBudget(): RetryRecoveryBudget;
30
33
  get retryCounts(): RetryCounts;
31
34
  get stream(): AgentStream | null;
32
35
  get streamInput(): ProviderInput | undefined;
33
36
  get inputMode(): 'delta' | 'full_history' | undefined;
34
37
  get providerHistorySnapshot(): ProviderHistorySnapshot | undefined;
35
38
  get addedUserMessage(): boolean;
39
+ get modelEventSeen(): boolean;
40
+ markModelEventSeen(): void;
36
41
  get closed(): boolean;
42
+ get signal(): AbortSignal | undefined;
37
43
  markUserMessageAdded(): void;
38
44
  attachInput(plan: SessionInputPlan): void;
39
45
  attachStream(stream: AgentStream | null): void;
@@ -1 +1 @@
1
- {"version":3,"file":"turn-attempt.d.ts","sourceRoot":"","sources":["../../../source/services/session/turn-attempt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAC1F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAErF,qBAAa,WAAW;;IAoBtB,YAAY,OAAO,EAAE;QACnB,IAAI,EAAE,QAAQ,CAAC;QACf,oFAAoF;QACpF,aAAa,CAAC,EAAE,QAAQ,CAAC;QACzB,KAAK,EAAE,eAAe,CAAC;QACvB,kBAAkB,EAAE,WAAW,CAAC;QAChC,sBAAsB,EAAE,4BAA4B,EAAE,CAAC;QACvD,mBAAmB,EAAE,MAAM,CAAC;QAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;KACtB,EAyBA;IAED,IAAI,IAAI,IAAI,QAAQ,CAEnB;IAED,IAAI,aAAa,IAAI,QAAQ,CAE5B;IAED,IAAI,KAAK,IAAI,eAAe,CAE3B;IAED,IAAI,kBAAkB,IAAI,WAAW,CAEpC;IAED,IAAI,sBAAsB,IAAI,4BAA4B,EAAE,CAE3D;IAED,IAAI,mBAAmB,IAAI,MAAM,CAEhC;IAED,IAAI,eAAe,IAAI,MAAM,GAAG,SAAS,CAExC;IAED,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,IAAI,MAAM,IAAI,WAAW,GAAG,IAAI,CAE/B;IAED,IAAI,WAAW,IAAI,aAAa,GAAG,SAAS,CAE3C;IAED,IAAI,SAAS,IAAI,OAAO,GAAG,cAAc,GAAG,SAAS,CAEpD;IAED,IAAI,uBAAuB,IAAI,uBAAuB,GAAG,SAAS,CAEjE;IAED,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,oBAAoB,IAAI,IAAI,CAE3B;IAED,WAAW,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAIxC;IAED,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG,IAAI,CAE7C;IAED,YAAY,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI,CAE1C;IAED,KAAK,IAAI,IAAI,CAOZ;CACF"}
1
+ {"version":3,"file":"turn-attempt.d.ts","sourceRoot":"","sources":["../../../source/services/session/turn-attempt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAC1F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAExE,qBAAa,WAAW;;IAsBtB,YAAY,OAAO,EAAE;QACnB,IAAI,EAAE,QAAQ,CAAC;QACf,oFAAoF;QACpF,aAAa,CAAC,EAAE,QAAQ,CAAC;QACzB,KAAK,EAAE,eAAe,CAAC;QACvB,kBAAkB,EAAE,WAAW,CAAC;QAChC,sBAAsB,EAAE,4BAA4B,EAAE,CAAC;QACvD,mBAAmB,EAAE,MAAM,CAAC;QAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,cAAc,CAAC,EAAE,mBAAmB,CAAC;QACrC,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;KACtB,EA0BA;IAED,IAAI,IAAI,IAAI,QAAQ,CAEnB;IAED,IAAI,aAAa,IAAI,QAAQ,CAE5B;IAED,IAAI,KAAK,IAAI,eAAe,CAE3B;IAED,IAAI,kBAAkB,IAAI,WAAW,CAEpC;IAED,IAAI,sBAAsB,IAAI,4BAA4B,EAAE,CAE3D;IAED,IAAI,mBAAmB,IAAI,MAAM,CAEhC;IAED,IAAI,eAAe,IAAI,MAAM,GAAG,SAAS,CAExC;IAED,IAAI,cAAc,IAAI,mBAAmB,CAExC;IAED,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,IAAI,MAAM,IAAI,WAAW,GAAG,IAAI,CAE/B;IAED,IAAI,WAAW,IAAI,aAAa,GAAG,SAAS,CAE3C;IAED,IAAI,SAAS,IAAI,OAAO,GAAG,cAAc,GAAG,SAAS,CAEpD;IAED,IAAI,uBAAuB,IAAI,uBAAuB,GAAG,SAAS,CAEjE;IAED,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED,IAAI,cAAc,IAAI,OAAO,CAE5B;IAED,kBAAkB,IAAI,IAAI,CAEzB;IAED,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,IAAI,MAAM,IAAI,WAAW,GAAG,SAAS,CAEpC;IAED,oBAAoB,IAAI,IAAI,CAE3B;IAED,WAAW,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAIxC;IAED,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG,IAAI,CAE7C;IAED,YAAY,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI,CAE1C;IAED,KAAK,IAAI,IAAI,CAOZ;CACF"}
@@ -1,3 +1,4 @@
1
+ import { RetryRecoveryBudget } from '../retry/retry-recovery-budget.js';
1
2
  export class TurnAttempt {
2
3
  #turn;
3
4
  #submittedTurn;
@@ -6,12 +7,14 @@ export class TurnAttempt {
6
7
  #initialJournalSnapshot;
7
8
  #maxTransientRetries;
8
9
  #maxModelRetries;
10
+ #recoveryBudget;
9
11
  #retryCounts;
10
12
  #stream = null;
11
13
  #streamInput = undefined;
12
14
  #inputMode = undefined;
13
15
  #providerHistorySnapshot = undefined;
14
16
  #addedUserMessage = false;
17
+ #modelEventSeen = false;
15
18
  #closed = false;
16
19
  #signal;
17
20
  #abortListener;
@@ -23,6 +26,7 @@ export class TurnAttempt {
23
26
  this.#initialJournalSnapshot = options.initialJournalSnapshot;
24
27
  this.#maxTransientRetries = options.maxTransientRetries;
25
28
  this.#maxModelRetries = options.maxModelRetries;
29
+ this.#recoveryBudget = options.recoveryBudget ?? new RetryRecoveryBudget();
26
30
  this.#retryCounts = { ...options.initialRetryCounts };
27
31
  this.#signal = options.signal;
28
32
  if (this.#signal) {
@@ -61,6 +65,9 @@ export class TurnAttempt {
61
65
  get maxModelRetries() {
62
66
  return this.#maxModelRetries;
63
67
  }
68
+ get recoveryBudget() {
69
+ return this.#recoveryBudget;
70
+ }
64
71
  get retryCounts() {
65
72
  return this.#retryCounts;
66
73
  }
@@ -79,9 +86,18 @@ export class TurnAttempt {
79
86
  get addedUserMessage() {
80
87
  return this.#addedUserMessage;
81
88
  }
89
+ get modelEventSeen() {
90
+ return this.#modelEventSeen;
91
+ }
92
+ markModelEventSeen() {
93
+ this.#modelEventSeen = true;
94
+ }
82
95
  get closed() {
83
96
  return this.#closed;
84
97
  }
98
+ get signal() {
99
+ return this.#signal;
100
+ }
85
101
  markUserMessageAdded() {
86
102
  this.#addedUserMessage = true;
87
103
  }
@@ -1 +1 @@
1
- {"version":3,"file":"turn-attempt.js","sourceRoot":"","sources":["../../../source/services/session/turn-attempt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"turn-attempt.js","sourceRoot":"","sources":["../../../source/services/session/turn-attempt.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { ProviderInputItem } from '../../contracts/provider-input.js';
2
2
  import type { SteerOutcome } from '../agent-runtime/application-run-loop.js';
3
- import type { ConversationEvent } from '../conversation/conversation-events.js';
3
+ import { type ConversationEvent } from '../conversation/conversation-events.js';
4
4
  import type { ILoggingService } from '../service-interfaces.js';
5
5
  import type { SessionToolTracker } from './session-tool-tracker.js';
6
6
  import type { ShellAutoApprovalResolver } from '../approval/shell-auto-approval-resolver.js';
@@ -1 +1 @@
1
- {"version":3,"file":"turn-workflow.d.ts","sourceRoot":"","sources":["../../../source/services/session/turn-workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"turn-workflow.d.ts","sourceRoot":"","sources":["../../../source/services/session/turn-workflow.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { isCommittedOutputEvent } from '../conversation/conversation-events.js';
1
2
  import { TurnAttempt } from './turn-attempt.js';
2
3
  import { getMethod, getCallIdFromObject, getToolInfoFromInterruption } from '../interruption-info.js';
3
4
  import { issueInputSurgeApproval } from '../input-surge-approval.js';
@@ -21,6 +22,23 @@ export class TurnWorkflow {
21
22
  #liveRun = null;
22
23
  #nextLiveRunId = 0;
23
24
  #hookTurnId;
25
+ /**
26
+ * The recovery envelope of the initial attempt that started the current
27
+ * logical turn, if one is active. Continuation attempts (tool-call
28
+ * follow-ups, and standalone approval-resolution continuations) reuse it so
29
+ * the whole turn shares one 90s/3-attempt/1-replay budget rather than each
30
+ * continuation getting its own unbounded allowance.
31
+ */
32
+ #activeRecoveryBudget;
33
+ /**
34
+ * Set once `context_compaction_failed` has been yielded for the current failure
35
+ * episode. Recovery replays the same request-boundary failure through both the
36
+ * initial and continuation catch sites, and without this each replay appends
37
+ * another identical "Context compaction failed" system message. Cleared at the
38
+ * next turn boundary (openTurn) and whenever a turn returns an outcome, so a
39
+ * genuinely separate episode still surfaces.
40
+ */
41
+ #compactionFailureNotified = false;
24
42
  constructor(deps) {
25
43
  this.deps = deps;
26
44
  this.#toolCallMarkers = deps.toolCallMarkers ?? new ToolCallMarkerStore();
@@ -44,11 +62,29 @@ export class TurnWorkflow {
44
62
  * first request, and the backoff before a retry restarts one.
45
63
  */
46
64
  openTurn() {
65
+ this.#compactionFailureNotified = false;
47
66
  this.deps.agentClient.openTurn?.();
48
67
  }
49
68
  closeTurn() {
50
69
  this.deps.agentClient.closeTurn?.();
51
70
  }
71
+ /**
72
+ * Yields at most one `context_compaction_failed` per failure episode. Returns
73
+ * undefined (and emits nothing) when the same episode already notified, so
74
+ * recovery replays of one request-boundary failure render a single UI message.
75
+ */
76
+ #compactionFailureEvent(category) {
77
+ if (this.#compactionFailureNotified)
78
+ return undefined;
79
+ this.#compactionFailureNotified = true;
80
+ return {
81
+ type: 'context_compaction_failed',
82
+ provider: 'openai',
83
+ sessionId: this.deps.sessionId,
84
+ errorCategory: category,
85
+ durationMs: 0,
86
+ };
87
+ }
52
88
  steer(items, options) {
53
89
  return this.deps.agentClient.steer?.(items, options) ?? Promise.resolve('released');
54
90
  }
@@ -66,18 +102,18 @@ export class TurnWorkflow {
66
102
  }
67
103
  async *executeInitial(attemptOrInput, options = {}) {
68
104
  try {
69
- return yield* this.#executeInitialBody(attemptOrInput, options);
105
+ const outcome = yield* this.#executeInitialBody(attemptOrInput, options);
106
+ // A returned outcome ends the failure episode even when the turn itself
107
+ // failed; only a thrown error keeps the episode (and the suppression) alive.
108
+ this.#compactionFailureNotified = false;
109
+ return outcome;
70
110
  }
71
111
  catch (error) {
72
112
  const failure = contextCompactionFailureCategory(error);
73
113
  if (failure) {
74
- yield {
75
- type: 'context_compaction_failed',
76
- provider: 'openai',
77
- sessionId: this.deps.sessionId,
78
- errorCategory: failure,
79
- durationMs: 0,
80
- };
114
+ const event = this.#compactionFailureEvent(failure);
115
+ if (event)
116
+ yield event;
81
117
  }
82
118
  throw error;
83
119
  }
@@ -124,18 +160,17 @@ export class TurnWorkflow {
124
160
  }
125
161
  async *executeContinuation(init, policy) {
126
162
  try {
127
- return yield* this.#executeContinuationBodyImpl(init, policy);
163
+ const outcome = yield* this.#executeContinuationBodyImpl(init, policy);
164
+ // A returned outcome ends the failure episode (see executeInitial).
165
+ this.#compactionFailureNotified = false;
166
+ return outcome;
128
167
  }
129
168
  catch (error) {
130
169
  const failure = contextCompactionFailureCategory(error);
131
170
  if (failure) {
132
- yield {
133
- type: 'context_compaction_failed',
134
- provider: 'openai',
135
- sessionId: this.deps.sessionId,
136
- errorCategory: failure,
137
- durationMs: 0,
138
- };
171
+ const event = this.#compactionFailureEvent(failure);
172
+ if (event)
173
+ yield event;
139
174
  }
140
175
  throw error;
141
176
  }
@@ -180,6 +215,10 @@ export class TurnWorkflow {
180
215
  }
181
216
  attempt = creation.attempt;
182
217
  }
218
+ // Continuation attempts driven from within this same logical turn (tool
219
+ // approvals, abort resolution) reuse this budget instead of getting their
220
+ // own unbounded one; see #activeRecoveryBudget.
221
+ this.#activeRecoveryBudget = attempt.recoveryBudget;
183
222
  let skipUser = options.skipUserMessage ?? false;
184
223
  let currentResumeState = options.resumeState;
185
224
  let currentResumePreviousResponseId = options.resumePreviousResponseId;
@@ -196,7 +235,7 @@ export class TurnWorkflow {
196
235
  }
197
236
  try {
198
237
  if (options.delayMs && options.delayMs > 0) {
199
- await new Promise((resolve) => setTimeout(resolve, options.delayMs));
238
+ await this.#waitBeforeRetry(attempt, options.delayMs);
200
239
  }
201
240
  if (!this.deps.generationGuard.isCurrent(attempt.token)) {
202
241
  return { kind: 'stale' };
@@ -322,7 +361,7 @@ export class TurnWorkflow {
322
361
  currentDisableChainingForAttempt = handled.instruction.disableChainingForAttempt === true;
323
362
  currentAbortedContext = null;
324
363
  if (handled.delayMs && handled.delayMs > 0) {
325
- await new Promise((resolve) => setTimeout(resolve, handled.delayMs));
364
+ await this.#waitBeforeRetry(attempt, handled.delayMs);
326
365
  }
327
366
  if (handled.useStandardServiceTier) {
328
367
  getMethod(this.deps.agentClient, 'useStandardServiceTierForNextRequest')?.call(this.deps.agentClient);
@@ -414,6 +453,8 @@ export class TurnWorkflow {
414
453
  });
415
454
  let next = await processor.next();
416
455
  while (!next.done) {
456
+ if (isCommittedOutputEvent(next.value))
457
+ attempt.markModelEventSeen();
417
458
  emit(next.value);
418
459
  next = await processor.next();
419
460
  }
@@ -557,6 +598,7 @@ export class TurnWorkflow {
557
598
  async #startInitialStream(attempt, options) {
558
599
  if (options.resumeState && typeof this.deps.agentClient.continueRunStream === 'function') {
559
600
  const resumeOptions = {
601
+ recoveryBudget: attempt.recoveryBudget,
560
602
  previousResponseId: options.resumePreviousResponseId ?? this.deps.providerContinuity.previousResponseId,
561
603
  sessionId: this.deps.sessionId,
562
604
  providerHistorySnapshot: this.deps.conversationStore.getProviderHistorySnapshot(),
@@ -595,6 +637,7 @@ export class TurnWorkflow {
595
637
  }
596
638
  }
597
639
  const startOptions = {
640
+ recoveryBudget: attempt.recoveryBudget,
598
641
  previousResponseId: options.disableChainingForAttempt ? undefined : selectedPreviousResponseId,
599
642
  sessionId: this.deps.sessionId,
600
643
  providerHistorySnapshot: attempt.providerHistorySnapshot,
@@ -613,13 +656,33 @@ export class TurnWorkflow {
613
656
  retryCounts.modelRetryCount === 0 &&
614
657
  retryCounts.transportDowngradeCount === 0);
615
658
  }
659
+ async #waitBeforeRetry(attempt, delayMs) {
660
+ if (attempt.signal?.aborted)
661
+ throw Object.assign(new Error('Operation aborted'), { name: 'AbortError' });
662
+ if (!attempt.signal) {
663
+ await new Promise((resolve) => setTimeout(resolve, delayMs));
664
+ return;
665
+ }
666
+ await new Promise((resolve, reject) => {
667
+ const onAbort = () => {
668
+ clearTimeout(timer);
669
+ attempt.signal?.removeEventListener('abort', onAbort);
670
+ reject(Object.assign(new Error('Operation aborted'), { name: 'AbortError' }));
671
+ };
672
+ const timer = setTimeout(() => {
673
+ attempt.signal?.removeEventListener('abort', onAbort);
674
+ resolve();
675
+ }, delayMs);
676
+ attempt.signal.addEventListener('abort', onAbort, { once: true });
677
+ });
678
+ }
616
679
  async *executeContinuationAttempt(init, policy) {
617
680
  const activePolicy = policy ?? new ShellAutoApprovalDecisionPolicy(this.deps.shellAutoApproval);
618
681
  if (!this.deps.generationGuard.isCurrent(init.generation)) {
619
682
  return { kind: 'stale' };
620
683
  }
621
684
  const prepared = this.deps.planApplier.prepareInit(init);
622
- const state = new ContinuationState(init.generation);
685
+ const state = new ContinuationState(init.generation, this.#activeRecoveryBudget);
623
686
  state.initializeFrom(prepared, this.#activeCallIdsForInit(init, prepared));
624
687
  try {
625
688
  yield* this.deps.planApplier.applyInitialSetup(prepared, state);
@@ -817,6 +880,7 @@ export class TurnWorkflow {
817
880
  }
818
881
  async *#executeContinuationStreamCycle(state, stopAfterApprovalResolution = false) {
819
882
  const continuationOptions = {
883
+ recoveryBudget: state.recoveryBudget,
820
884
  previousResponseId: state.currentResumePreviousResponseId ?? this.deps.providerContinuity.previousResponseId,
821
885
  sessionId: this.deps.sessionId,
822
886
  toolResultCallIds: state.currentCallIds,
@@ -1 +1 @@
1
- {"version":3,"file":"turn-workflow.js","sourceRoot":"","sources":["../../../source/services/session/turn-workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"turn-workflow.js","sourceRoot":"","sources":["../../../source/services/session/turn-workflow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { SessionRolloverRequest } from '../../contracts/session-rollover.js';
2
+ export declare function composeSessionRolloverBrief({ previousSessionId, request, }: {
3
+ previousSessionId: string;
4
+ request: SessionRolloverRequest;
5
+ }): string;
6
+ //# sourceMappingURL=session-rollover-brief.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-rollover-brief.d.ts","sourceRoot":"","sources":["../../../source/services/session-rollover/session-rollover-brief.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAQlF,wBAAgB,2BAA2B,CAAC,EAC1C,iBAAiB,EACjB,OAAO,GACR,EAAE;IACD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,sBAAsB,CAAC;CACjC,GAAG,MAAM,CAkBT"}
@@ -0,0 +1,27 @@
1
+ const reasonLabel = (reason) => {
2
+ if (reason === 'context_pressure')
3
+ return 'context pressure';
4
+ if (reason === 'task_boundary')
5
+ return 'task boundary';
6
+ return 'not specified';
7
+ };
8
+ export function composeSessionRolloverBrief({ previousSessionId, request, }) {
9
+ return [
10
+ '# Continuation briefing',
11
+ '',
12
+ `Previous session: \`${previousSessionId}\``,
13
+ `Reason: ${reasonLabel(request.reason)}`,
14
+ '',
15
+ '## Handoff from the previous session',
16
+ '',
17
+ request.brief,
18
+ '',
19
+ '## Continuation protocol',
20
+ '',
21
+ '- Treat the handoff and its durable-state pointers as the primary source of truth.',
22
+ '- If essential detail is missing, use `session_search` and then a bounded `session_read` against the previous session.',
23
+ '- Do not replay the entire previous transcript.',
24
+ '- Continue from the next open step rather than redoing completed work.',
25
+ ].join('\n');
26
+ }
27
+ //# sourceMappingURL=session-rollover-brief.js.map