@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
@@ -1 +1 @@
1
- {"version":3,"file":"provider-traffic.js","sourceRoot":"","sources":["../../../source/services/logging/provider-traffic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider-traffic.js","sourceRoot":"","sources":["../../../source/services/logging/provider-traffic.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ export type ModelInfo = {
3
3
  id: string;
4
4
  name?: string;
5
5
  provider: string;
6
+ unavailableReason?: 'missing-credentials' | 'missing-codex-login';
6
7
  default_reasoning_level?: string;
7
8
  /** Context window in tokens from the vendored model catalog, when known. */
8
9
  contextWindow?: number;
@@ -15,6 +16,12 @@ export declare function fetchModels(deps: {
15
16
  }, providerOverride?: string, fetchImpl?: FetchFn): Promise<ModelInfo[]>;
16
17
  export declare function clearModelCache(provider?: string): void;
17
18
  export declare function getModelDefaultReasoningLevel(provider: string, modelId: string): string | undefined;
19
+ /**
20
+ * Effort to use for a provider when the user's `agent.reasoningEffort` is
21
+ * 'default'. 'default' otherwise means "send no reasoning_effort and let the
22
+ * API choose", which for these providers means no reasoning at all.
23
+ */
24
+ export declare function getProviderDefaultReasoningLevel(provider: string): string | undefined;
18
25
  export declare function filterModels(models: ModelInfo[], query: string): ModelInfo[];
19
26
  export {};
20
27
  //# sourceMappingURL=model-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"model-service.d.ts","sourceRoot":"","sources":["../../source/services/model-service.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEjF,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,KAAK,OAAO,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAI5D,wBAAsB,WAAW,CAC/B,IAAI,EAAE;IACJ,eAAe,EAAE,gBAAgB,CAAC;IAClC,cAAc,EAAE,eAAe,CAAC;IAChC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,EACD,gBAAgB,CAAC,EAAE,MAAM,EACzB,SAAS,GAAE,OAAsB,GAChC,OAAO,CAAC,SAAS,EAAE,CAAC,CAgDtB;AAED,wBAAgB,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAMvD;AAED,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKnG;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,CAoB5E"}
1
+ {"version":3,"file":"model-service.d.ts","sourceRoot":"","sources":["../../source/services/model-service.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEjF,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,qBAAqB,GAAG,qBAAqB,CAAC;IAClE,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,KAAK,OAAO,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAI5D,wBAAsB,WAAW,CAC/B,IAAI,EAAE;IACJ,eAAe,EAAE,gBAAgB,CAAC;IAClC,cAAc,EAAE,eAAe,CAAC;IAChC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,EACD,gBAAgB,CAAC,EAAE,MAAM,EACzB,SAAS,GAAE,OAAsB,GAChC,OAAO,CAAC,SAAS,EAAE,CAAC,CAgDtB;AAED,wBAAgB,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAMvD;AAED,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKnG;AAgBD;;;;GAIG;AACH,wBAAgB,gCAAgC,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAErF;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,CAoB5E"}
@@ -57,6 +57,27 @@ export function getModelDefaultReasoningLevel(provider, modelId) {
57
57
  const model = models.find((m) => m.id === modelId);
58
58
  return model?.default_reasoning_level;
59
59
  }
60
+ // Providers that reason only when the request explicitly asks them to, and that
61
+ // expose no `default_reasoning_level` in their /models response for
62
+ // getModelDefaultReasoningLevel() to read. Keyed by lowercased provider id, so a
63
+ // custom provider entry named 'Neuralwatt' or 'neuralwatt' both match.
64
+ //
65
+ // Neuralwatt: verified against api.neuralwatt.com — a bare deepseek-v4-flash
66
+ // request returns message keys ['role','content','function_call'] and stream
67
+ // deltas ['content','role'], with no reasoning anywhere. Adding
68
+ // reasoning_effort makes the model emit a `reasoning` field (note: `reasoning`,
69
+ // not `reasoning_content`) on both the message and the deltas.
70
+ const PROVIDER_DEFAULT_REASONING_LEVEL = {
71
+ neuralwatt: 'high',
72
+ };
73
+ /**
74
+ * Effort to use for a provider when the user's `agent.reasoningEffort` is
75
+ * 'default'. 'default' otherwise means "send no reasoning_effort and let the
76
+ * API choose", which for these providers means no reasoning at all.
77
+ */
78
+ export function getProviderDefaultReasoningLevel(provider) {
79
+ return PROVIDER_DEFAULT_REASONING_LEVEL[provider.toLowerCase()];
80
+ }
60
81
  export function filterModels(models, query) {
61
82
  const trimmed = query.trim();
62
83
  if (!trimmed) {
@@ -1 +1 @@
1
- {"version":3,"file":"model-service.js","sourceRoot":"","sources":["../../source/services/model-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-service.js","sourceRoot":"","sources":["../../source/services/model-service.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,8 @@ export declare class ModelCatalogSession {
17
17
  shouldRetry(provider: string, initialLoad: boolean): boolean;
18
18
  begin(): void;
19
19
  refresh(provider: string): void;
20
+ /** Invalidate provider state when its credential/readiness boundary changes. */
21
+ invalidate(provider: string): void;
20
22
  nextProvider(current: string | null, direction: 'next' | 'prev'): string | undefined;
21
23
  clear(): void;
22
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"model-catalog-session.d.ts","sourceRoot":"","sources":["../../../source/services/models/model-catalog-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEnF,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAElF,KAAK,YAAY,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;AAE/D,oGAAoG;AACpG,qBAAa,mBAAmB;;IAQ9B,YAAY,IAAI,EAAE;QAAE,eAAe,EAAE,gBAAgB,CAAC;QAAC,cAAc,EAAE,eAAe,CAAC;QAAC,OAAO,CAAC,EAAE,YAAY,CAAA;KAAE,EAI/G;IAED,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,SAAS,CAEnD;IAEK,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;QAAC,MAAM,EAAE,SAAS,EAAE,CAAA;KAAE,CAAC,CAgBlG;IAED,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,OAAO,CAE3D;IAED,KAAK,IAAI,IAAI,CAGZ;IAED,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAK9B;IAED,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CASnF;IAED,KAAK,IAAI,IAAI,CAIZ;CACF"}
1
+ {"version":3,"file":"model-catalog-session.d.ts","sourceRoot":"","sources":["../../../source/services/models/model-catalog-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEnF,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAGlF,KAAK,YAAY,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;AAE/D,oGAAoG;AACpG,qBAAa,mBAAmB;;IAQ9B,YAAY,IAAI,EAAE;QAAE,eAAe,EAAE,gBAAgB,CAAC;QAAC,cAAc,EAAE,eAAe,CAAC;QAAC,OAAO,CAAC,EAAE,YAAY,CAAA;KAAE,EAI/G;IAED,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,SAAS,CAEnD;IAEK,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;QAAC,MAAM,EAAE,SAAS,EAAE,CAAA;KAAE,CAAC,CAgBlG;IAED,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,OAAO,CAE3D;IAED,KAAK,IAAI,IAAI,CAGZ;IAED,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAE9B;IAED,gFAAgF;IAChF,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAKjC;IAED,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAUnF;IAED,KAAK,IAAI,IAAI,CAIZ;CACF"}
@@ -1,5 +1,6 @@
1
1
  import { clearModelCache, fetchModels } from '../model-service.js';
2
2
  import { getProviderIds, sortProvidersByOrder } from '../../providers/index.js';
3
+ import { getAvailableProviderIds } from '../../utils/ai/provider-credentials.js';
3
4
  /** Owns model-catalog traversal, per-open caching, failed-provider suppression, and stale loads. */
4
5
  export class ModelCatalogSession {
5
6
  #settingsService;
@@ -45,19 +46,25 @@ export class ModelCatalogSession {
45
46
  this.#failedProviders.clear();
46
47
  }
47
48
  refresh(provider) {
49
+ this.invalidate(provider);
50
+ }
51
+ /** Invalidate provider state when its credential/readiness boundary changes. */
52
+ invalidate(provider) {
48
53
  this.#failedProviders.delete(provider);
49
54
  this.#modelsByProvider.delete(provider);
50
55
  ++this.#requestId;
51
56
  clearModelCache(provider);
52
57
  }
53
58
  nextProvider(current, direction) {
54
- const ids = getProviderIds();
59
+ const ids = getAvailableProviderIds(this.#settingsService, getProviderIds());
55
60
  const order = this.#settingsService.getDynamic('providerOrder') ?? [];
56
61
  const ordered = order.length > 0 ? sortProvidersByOrder(ids, order) : ids;
57
62
  if (ordered.length === 0)
58
63
  return undefined;
59
64
  const currentIndex = ordered.indexOf(current ?? '');
60
- const safeIndex = currentIndex >= 0 ? currentIndex : 0;
65
+ if (currentIndex < 0)
66
+ return direction === 'prev' ? ordered.at(-1) : ordered[0];
67
+ const safeIndex = currentIndex;
61
68
  const offset = direction === 'prev' ? -1 : 1;
62
69
  return ordered[(safeIndex + offset + ordered.length) % ordered.length];
63
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"model-catalog-session.js","sourceRoot":"","sources":["../../../source/services/models/model-catalog-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-catalog-session.js","sourceRoot":"","sources":["../../../source/services/models/model-catalog-session.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,13 @@ export type ProviderCheckpoint = ProviderCheckpointBinding & {
47
47
  *
48
48
  * This is the single source of truth for provider continuity. All other
49
49
  * collaborators read from this object rather than storing their own copy.
50
+ *
51
+ * ## Chain settlement
52
+ *
53
+ * When a published response issued function calls, the next request must
54
+ * supply matching tool outputs or the chain must be dropped. Outstanding
55
+ * call ids are the local record of that unpaid server debt. Clear them only
56
+ * when a later terminal response replaces them, or when continuity is reset.
50
57
  */
51
58
  export declare class ProviderContinuity {
52
59
  #private;
@@ -55,6 +62,14 @@ export declare class ProviderContinuity {
55
62
  get checkpoint(): ProviderCheckpoint | null;
56
63
  get lineage(): number;
57
64
  get retiredCheckpoints(): readonly ProviderCheckpoint[];
65
+ /** Call ids the current chain still needs tool outputs for. */
66
+ get outstandingToolCallIds(): readonly string[];
67
+ hasOutstandingToolDebt(): boolean;
68
+ /**
69
+ * Replace the unpaid tool-call set for the current chain. Pass an empty
70
+ * list when the latest terminal response left no open function calls.
71
+ */
72
+ replaceOutstandingToolCallIds(callIds: readonly string[]): void;
58
73
  /**
59
74
  * Records a provider response observed before its terminal history is
60
75
  * committed. This deliberately does not update previousResponseId: existing
@@ -1 +1 @@
1
- {"version":3,"file":"provider-continuity.d.ts","sourceRoot":"","sources":["../../source/services/provider-continuity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider-continuity.d.ts","sourceRoot":"","sources":["../../source/services/provider-continuity.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,EAAE,0BAA0B,CAAC;IACrC,MAAM,EAAE,wBAAwB,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,IAAI,EAAE,OAAO,GAAG,YAAY,GAAG,iBAAiB,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;CAC5F,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,SAAS,OAAO,EAAE,CAAC;CAC7B,CAAC;AAEF,wFAAwF;AACxF,MAAM,MAAM,mCAAmC,GAC3C,wBAAwB,GACxB,yBAAyB,GACzB,kBAAkB,GAClB,0BAA0B,GAC1B,mBAAmB,GACnB,iBAAiB,GACjB,uBAAuB,GACvB,sBAAsB,GACtB,yBAAyB,CAAC;AAE9B,MAAM,MAAM,4BAA4B,GACpC;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,GAClB;IAAE,QAAQ,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,mCAAmC,CAAA;CAAE,CAAC;AAEtE,MAAM,MAAM,kBAAkB,GAAG,yBAAyB,GAAG;IAC3D,KAAK,EAAE,WAAW,GAAG,UAAU,GAAG,SAAS,CAAC;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;OAIG;IACH,cAAc,CAAC,EAAE,gCAAgC,CAAC;IAClD,UAAU,CAAC,EAAE,4BAA4B,CAAC;CAC3C,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,qBAAa,kBAAkB;;IAS7B,IAAI,kBAAkB,IAAI,MAAM,GAAG,IAAI,CAEtC;IAED,IAAI,cAAc,IAAI,OAAO,CAE5B;IAED,IAAI,UAAU,IAAI,kBAAkB,GAAG,IAAI,CAE1C;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,kBAAkB,IAAI,SAAS,kBAAkB,EAAE,CAEtD;IAED,+DAA+D;IAC/D,IAAI,sBAAsB,IAAI,SAAS,MAAM,EAAE,CAE9C;IAED,sBAAsB,IAAI,OAAO,CAEhC;IAED;;;OAGG;IACH,6BAA6B,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAS9D;IAED;;;;OAIG;IACH,gBAAgB,CACd,SAAS,EAAE,yBAAyB,GAAG;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GACrG,OAAO,CAWT;IAED;;;OAGG;IACH,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAmBxF;IAED,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAEtC;IAED;;;;;OAKG;IACH,uBAAuB,CACrB,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,gBAAgB,EAAE,OAAO,EACzB,kBAAkB,CAAC,EAAE,gCAAgC,GACpD,OAAO,CAOT;IAED;;;;OAIG;IACH,sBAAsB,CACpB,QAAQ,EAAE,0BAA0B,EACpC,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,gCAAgC,GAChD,OAAO,CAET;IAED;;;OAGG;IACH,0BAA0B,CACxB,QAAQ,EAAE,0BAA0B,EACpC,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,gCAAgC,GAChD,4BAA4B,CAwB9B;IAED,KAAK,IAAI,IAAI,CAKZ;IAED,aAAa,IAAI,IAAI,CAKpB;IAED,mBAAmB,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAEnD;CAiEF"}
@@ -6,6 +6,13 @@ import { isDeepStrictEqual } from 'node:util';
6
6
  *
7
7
  * This is the single source of truth for provider continuity. All other
8
8
  * collaborators read from this object rather than storing their own copy.
9
+ *
10
+ * ## Chain settlement
11
+ *
12
+ * When a published response issued function calls, the next request must
13
+ * supply matching tool outputs or the chain must be dropped. Outstanding
14
+ * call ids are the local record of that unpaid server debt. Clear them only
15
+ * when a later terminal response replaces them, or when continuity is reset.
9
16
  */
10
17
  export class ProviderContinuity {
11
18
  #previousResponseId = null;
@@ -13,6 +20,8 @@ export class ProviderContinuity {
13
20
  #lineage = 0;
14
21
  #checkpoint = null;
15
22
  #retiredCheckpoints = [];
23
+ /** Function-call ids the published previousResponseId still requires outputs for. */
24
+ #outstandingToolCallIds = [];
16
25
  get previousResponseId() {
17
26
  return this.#previousResponseId;
18
27
  }
@@ -28,6 +37,28 @@ export class ProviderContinuity {
28
37
  get retiredCheckpoints() {
29
38
  return this.#retiredCheckpoints;
30
39
  }
40
+ /** Call ids the current chain still needs tool outputs for. */
41
+ get outstandingToolCallIds() {
42
+ return this.#outstandingToolCallIds;
43
+ }
44
+ hasOutstandingToolDebt() {
45
+ return this.#outstandingToolCallIds.length > 0;
46
+ }
47
+ /**
48
+ * Replace the unpaid tool-call set for the current chain. Pass an empty
49
+ * list when the latest terminal response left no open function calls.
50
+ */
51
+ replaceOutstandingToolCallIds(callIds) {
52
+ const unique = [];
53
+ const seen = new Set();
54
+ for (const callId of callIds) {
55
+ if (typeof callId !== 'string' || !callId || seen.has(callId))
56
+ continue;
57
+ seen.add(callId);
58
+ unique.push(callId);
59
+ }
60
+ this.#outstandingToolCallIds = unique;
61
+ }
31
62
  /**
32
63
  * Records a provider response observed before its terminal history is
33
64
  * committed. This deliberately does not update previousResponseId: existing
@@ -128,11 +159,13 @@ export class ProviderContinuity {
128
159
  }
129
160
  clear() {
130
161
  this.#previousResponseId = null;
162
+ this.#outstandingToolCallIds = [];
131
163
  this.#retireCheckpoint('reset');
132
164
  this.#lineage++;
133
165
  }
134
166
  breakChaining() {
135
167
  this.#previousResponseId = null;
168
+ this.#outstandingToolCallIds = [];
136
169
  this.#chainingBroken = true;
137
170
  this.#retireCheckpoint('chaining_broken');
138
171
  }
@@ -1 +1 @@
1
- {"version":3,"file":"provider-continuity.js","sourceRoot":"","sources":["../../source/services/provider-continuity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider-continuity.js","sourceRoot":"","sources":["../../source/services/provider-continuity.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"recovery-executor.d.ts","sourceRoot":"","sources":["../../../source/services/retry/recovery-executor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAsB,cAAc,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACxH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAU7E,MAAM,MAAM,oBAAoB,GAAG;IACjC,WAAW,EAAE,kBAAkB,CAAC;IAChC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,CAAC;AAEF,qBAAa,uBAAwB,YAAW,gBAAgB;IAClD,OAAO,CAAC,IAAI;IAAxB,YAAoB,IAAI,EAAE,oBAAoB,EAAI;IAElD,KAAK,CAAC,KAAK,EAAE,qBAAqB,GAAG,cAAc,CAmGlD;CACF"}
1
+ {"version":3,"file":"recovery-executor.d.ts","sourceRoot":"","sources":["../../../source/services/retry/recovery-executor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAsB,cAAc,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACxH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAU7E,MAAM,MAAM,oBAAoB,GAAG;IACjC,WAAW,EAAE,kBAAkB,CAAC;IAChC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,CAAC;AAEF,qBAAa,uBAAwB,YAAW,gBAAgB;IAClD,OAAO,CAAC,IAAI;IAAxB,YAAoB,IAAI,EAAE,oBAAoB,EAAI;IAElD,KAAK,CAAC,KAAK,EAAE,qBAAqB,GAAG,cAAc,CA2GlD;CACF"}
@@ -42,11 +42,10 @@ export class DefaultRecoveryExecutor {
42
42
  case 'retry_fresh': {
43
43
  if (state.stream) {
44
44
  this.deps.providerContinuity.clear();
45
- // Mark in-flight tool calls as aborted with synthetic error results
46
- // before restoring the snapshot. This ensures the reconciler injects
47
- // proper function_call_output pairs into history instead of leaving
48
- // dangling function_call items that confuse the provider API on retry.
49
- this.deps.toolTracker.recordAbortedApproval('Stream failed', 'Stream failed');
45
+ // Settle open calls before restoring the snapshot: never-dispatched
46
+ // calls become aborted; dispatched-but-unobserved become unknown so
47
+ // the model is told to verify before retrying non-idempotent work.
48
+ this.deps.toolTracker.settleOpenCallsOnStreamFailure('Stream failed');
50
49
  this.deps.toolTracker.restoreCompletedEntries(journalSnapshotToLedger(state.journalSnapshot));
51
50
  const projected = projectProviderHistory({
52
51
  history: this.deps.conversationStore.getHistory(),
@@ -78,6 +77,10 @@ export class DefaultRecoveryExecutor {
78
77
  this.deps.conversationStore.removeLastUserMessage();
79
78
  }
80
79
  if (state.stream) {
80
+ // Inject synthetic results for open calls when possible so full-history
81
+ // replay stays self-contained, then drop any leftovers that never got a
82
+ // call item recorded. Dispatched calls settle as unknown (not failed).
83
+ this.deps.toolTracker.settleOpenCallsOnStreamFailure('Stream failed');
81
84
  this.deps.toolTracker.markOpenCallsAborted('Stream failed');
82
85
  const projected = projectProviderHistory({
83
86
  history: this.deps.conversationStore.getHistory(),
@@ -87,6 +90,10 @@ export class DefaultRecoveryExecutor {
87
90
  this.deps.conversationStore.replaceHistory(projected.history);
88
91
  }
89
92
  }
93
+ // Chain settlement: a terminated stream must not leave previousResponseId
94
+ // pointing at a response that still requires tool outputs. The next user
95
+ // turn ("continue") would otherwise send a text-only delta and get a 400.
96
+ this.deps.providerContinuity.clear();
90
97
  const recoverySummary = this.deps.toolTracker.getRecoverySummary();
91
98
  if (recoverySummary) {
92
99
  events.push({
@@ -1 +1 @@
1
- {"version":3,"file":"recovery-executor.js","sourceRoot":"","sources":["../../../source/services/retry/recovery-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recovery-executor.js","sourceRoot":"","sources":["../../../source/services/retry/recovery-executor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"retry-classifier.d.ts","sourceRoot":"","sources":["../../../source/services/retry/retry-classifier.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAErF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAY/E,qBAAa,sBAAsB;IACrB,OAAO,CAAC,WAAW;IAA2B,OAAO,CAAC,MAAM;IAAxE,YAAoB,WAAW,EAAE,uBAAuB,EAAU,MAAM,GAAE,MAAM,MAAoB,EAEnG;IAED,QAAQ,CAAC,OAAO,EAAE,qBAAqB,GAAG,iBAAiB,CA0C1D;CACF"}
1
+ {"version":3,"file":"retry-classifier.d.ts","sourceRoot":"","sources":["../../../source/services/retry/retry-classifier.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAErF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAY/E,qBAAa,sBAAsB;IACrB,OAAO,CAAC,WAAW;IAA2B,OAAO,CAAC,MAAM;IAAxE,YAAoB,WAAW,EAAE,uBAAuB,EAAU,MAAM,GAAE,MAAM,MAAoB,EAEnG;IAED,QAAQ,CAAC,OAAO,EAAE,qBAAqB,GAAG,iBAAiB,CA2C1D;CACF"}
@@ -1,5 +1,5 @@
1
1
  import { decideRetry } from './conversation-retry-policy.js';
2
- import { isPreviousResponseNotFoundError, isRetryableTransportError, isWebSocketConnectionLimitReachedError, } from './retry-error-classification.js';
2
+ import { isMissingServerToolOutputError, isPreviousResponseNotFoundError, isRetryableTransportError, isWebSocketConnectionLimitReachedError, } from './retry-error-classification.js';
3
3
  import { extractHistoryLength } from '../stream-snapshot.js';
4
4
  import { isMissingChainedToolOutputError, isOrphanedChainedToolOutputError } from '../../lib/chained-input-filter.js';
5
5
  const TRANSIENT_BASE_DELAY_MS = 500;
@@ -30,6 +30,7 @@ export class DefaultRetryClassifier {
30
30
  };
31
31
  }
32
32
  if (isPreviousResponseNotFoundError(error) ||
33
+ isMissingServerToolOutputError(error) ||
33
34
  isWebSocketConnectionLimitReachedError(error) ||
34
35
  isMissingChainedToolOutputError(error) ||
35
36
  isOrphanedChainedToolOutputError(error)) {
@@ -1 +1 @@
1
- {"version":3,"file":"retry-classifier.js","sourceRoot":"","sources":["../../../source/services/retry/retry-classifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EACL,+BAA+B,EAC/B,yBAAyB,EACzB,sCAAsC,GACvC,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,+BAA+B,EAAE,gCAAgC,EAAE,MAAM,mCAAmC,CAAC;AAEtH,MAAM,uBAAuB,GAAG,GAAG,CAAC;AACpC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAEtC,MAAM,uBAAuB,GAAG,CAAC,OAAe,EAAE,MAAoB,EAAU,EAAE;IAChF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,uBAAuB,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,EAAE,sBAAsB,CAAC,CAAC;IAC5G,MAAM,MAAM,GAAG,GAAG,GAAG,MAAM,EAAE,GAAG,GAAG,CAAC;IACpC,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,OAAO,sBAAsB;IACb,WAAW;IAAmC,MAAM;IAAxE,YAAoB,WAAoC,EAAU,MAAM,GAAiB,IAAI,CAAC,MAAM;2BAAhF,WAAW;sBAAmC,MAAM;QACtE,KAAK,IAAI,CAAC,WAAW,CAAC;IACxB,CAAC;IAED,QAAQ,CAAC,OAA8B;QACrC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,mBAAmB,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC;QAErF,MAAM,qBAAqB,GAAG,WAAW,CACvC,KAAK,EACL,WAAW,CAAC,eAAe,EAC3B,OAAO,CAAC,MAAM,CAAC,EACf,oBAAoB,CAAC,MAAM,CAAC,EAC5B,eAAe,CAChB,CAAC;QACF,IAAI,qBAAqB,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3C,OAAO;gBACL,IAAI,EAAE,aAAa;gBACnB,YAAY,EAAE,qBAAqB,CAAC,wBAAwB;oBAC1D,CAAC,CAAC,qBAAqB,CAAC,mBAAmB;oBAC3C,CAAC,CAAC,SAAS;gBACb,UAAU,EAAE,qBAAqB,CAAC,UAAU;aAC7C,CAAC;QACJ,CAAC;QAED,IACE,+BAA+B,CAAC,KAAK,CAAC;YACtC,sCAAsC,CAAC,KAAK,CAAC;YAC7C,+BAA+B,CAAC,KAAK,CAAC;YACtC,gCAAgC,CAAC,KAAK,CAAC,EACvC,CAAC;YACD,MAAM,WAAW,GAAG,WAAW,CAAC,mBAAmB,GAAG,CAAC,CAAC;YACxD,IAAI,WAAW,GAAG,mBAAmB,EAAE,CAAC;gBACtC,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;YACnC,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;QACzC,CAAC;QAED,IAAI,yBAAyB,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC;YAC/C,MAAM,WAAW,GAAG,WAAW,CAAC,mBAAmB,GAAG,CAAC,CAAC;YACxD,IAAI,WAAW,GAAG,mBAAmB,EAAE,CAAC;gBACtC,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;YACnC,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,uBAAuB,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACjH,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;IACnC,CAAC;CACF"}
1
+ {"version":3,"file":"retry-classifier.js","sourceRoot":"","sources":["../../../source/services/retry/retry-classifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EACL,8BAA8B,EAC9B,+BAA+B,EAC/B,yBAAyB,EACzB,sCAAsC,GACvC,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,+BAA+B,EAAE,gCAAgC,EAAE,MAAM,mCAAmC,CAAC;AAEtH,MAAM,uBAAuB,GAAG,GAAG,CAAC;AACpC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAEtC,MAAM,uBAAuB,GAAG,CAAC,OAAe,EAAE,MAAoB,EAAU,EAAE;IAChF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,uBAAuB,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,EAAE,sBAAsB,CAAC,CAAC;IAC5G,MAAM,MAAM,GAAG,GAAG,GAAG,MAAM,EAAE,GAAG,GAAG,CAAC;IACpC,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,OAAO,sBAAsB;IACb,WAAW;IAAmC,MAAM;IAAxE,YAAoB,WAAoC,EAAU,MAAM,GAAiB,IAAI,CAAC,MAAM;2BAAhF,WAAW;sBAAmC,MAAM;QACtE,KAAK,IAAI,CAAC,WAAW,CAAC;IACxB,CAAC;IAED,QAAQ,CAAC,OAA8B;QACrC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,mBAAmB,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC;QAErF,MAAM,qBAAqB,GAAG,WAAW,CACvC,KAAK,EACL,WAAW,CAAC,eAAe,EAC3B,OAAO,CAAC,MAAM,CAAC,EACf,oBAAoB,CAAC,MAAM,CAAC,EAC5B,eAAe,CAChB,CAAC;QACF,IAAI,qBAAqB,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3C,OAAO;gBACL,IAAI,EAAE,aAAa;gBACnB,YAAY,EAAE,qBAAqB,CAAC,wBAAwB;oBAC1D,CAAC,CAAC,qBAAqB,CAAC,mBAAmB;oBAC3C,CAAC,CAAC,SAAS;gBACb,UAAU,EAAE,qBAAqB,CAAC,UAAU;aAC7C,CAAC;QACJ,CAAC;QAED,IACE,+BAA+B,CAAC,KAAK,CAAC;YACtC,8BAA8B,CAAC,KAAK,CAAC;YACrC,sCAAsC,CAAC,KAAK,CAAC;YAC7C,+BAA+B,CAAC,KAAK,CAAC;YACtC,gCAAgC,CAAC,KAAK,CAAC,EACvC,CAAC;YACD,MAAM,WAAW,GAAG,WAAW,CAAC,mBAAmB,GAAG,CAAC,CAAC;YACxD,IAAI,WAAW,GAAG,mBAAmB,EAAE,CAAC;gBACtC,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;YACnC,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;QACzC,CAAC;QAED,IAAI,yBAAyB,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC;YAC/C,MAAM,WAAW,GAAG,WAAW,CAAC,mBAAmB,GAAG,CAAC,CAAC;YACxD,IAAI,WAAW,GAAG,mBAAmB,EAAE,CAAC;gBACtC,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;YACnC,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,uBAAuB,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACjH,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;IACnC,CAAC;CACF"}