@qduc/term2 0.31.0 → 0.32.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 (455) hide show
  1. package/README.md +52 -370
  2. package/dist/acp-v2/serve.d.ts.map +1 -1
  3. package/dist/acp-v2/serve.js +6 -6
  4. package/dist/acp-v2/serve.js.map +1 -1
  5. package/dist/agent.d.ts +2 -1
  6. package/dist/agent.d.ts.map +1 -1
  7. package/dist/agent.js +14 -7
  8. package/dist/agent.js.map +1 -1
  9. package/dist/app.d.ts +3 -1
  10. package/dist/app.d.ts.map +1 -1
  11. package/dist/app.js +66 -21
  12. package/dist/app.js.map +1 -1
  13. package/dist/build-info.json +2 -2
  14. package/dist/cli.js +30 -24
  15. package/dist/cli.js.map +1 -1
  16. package/dist/commands/goal-command.d.ts.map +1 -1
  17. package/dist/commands/goal-command.js +9 -8
  18. package/dist/commands/goal-command.js.map +1 -1
  19. package/dist/commands/model-command.d.ts.map +1 -1
  20. package/dist/commands/model-command.js +4 -8
  21. package/dist/commands/model-command.js.map +1 -1
  22. package/dist/commands/retry-failed-turn-command.d.ts.map +1 -1
  23. package/dist/commands/retry-failed-turn-command.js +3 -4
  24. package/dist/commands/retry-failed-turn-command.js.map +1 -1
  25. package/dist/components/InputBox.js +4 -6
  26. package/dist/components/InputBox.js.map +1 -1
  27. package/dist/components/input/ModelMenuSession.d.ts.map +1 -1
  28. package/dist/components/input/ModelMenuSession.js +7 -12
  29. package/dist/components/input/ModelMenuSession.js.map +1 -1
  30. package/dist/components/input/SettingsMenuSession.d.ts.map +1 -1
  31. package/dist/components/input/SettingsMenuSession.js +0 -2
  32. package/dist/components/input/SettingsMenuSession.js.map +1 -1
  33. package/dist/components/input/SubagentPoolMenuSession.d.ts.map +1 -1
  34. package/dist/components/input/SubagentPoolMenuSession.js +0 -2
  35. package/dist/components/input/SubagentPoolMenuSession.js.map +1 -1
  36. package/dist/components/input/menu-types.d.ts +0 -2
  37. package/dist/components/input/menu-types.d.ts.map +1 -1
  38. package/dist/components/input/triggers.d.ts.map +1 -1
  39. package/dist/components/input/triggers.js +0 -2
  40. package/dist/components/input/triggers.js.map +1 -1
  41. package/dist/components/layout/Banner.js +4 -4
  42. package/dist/components/layout/Banner.js.map +1 -1
  43. package/dist/components/layout/BottomArea.d.ts.map +1 -1
  44. package/dist/components/layout/BottomArea.js +13 -11
  45. package/dist/components/layout/BottomArea.js.map +1 -1
  46. package/dist/components/layout/StatusBar.js +4 -4
  47. package/dist/components/layout/StatusBar.js.map +1 -1
  48. package/dist/components/menu/settings-value-formatter.d.ts.map +1 -1
  49. package/dist/components/menu/settings-value-formatter.js +2 -12
  50. package/dist/components/menu/settings-value-formatter.js.map +1 -1
  51. package/dist/components/message/MessageList.d.ts +3 -1
  52. package/dist/components/message/MessageList.d.ts.map +1 -1
  53. package/dist/components/message/MessageList.js +5 -2
  54. package/dist/components/message/MessageList.js.map +1 -1
  55. package/dist/components/message/SessionBoundary.d.ts +11 -0
  56. package/dist/components/message/SessionBoundary.d.ts.map +1 -0
  57. package/dist/components/message/SessionBoundary.js +22 -0
  58. package/dist/components/message/SessionBoundary.js.map +1 -0
  59. package/dist/contracts/provider-input.d.ts +10 -0
  60. package/dist/contracts/provider-input.d.ts.map +1 -1
  61. package/dist/contracts/provider-input.js.map +1 -1
  62. package/dist/contracts/run-termination.d.ts +3 -1
  63. package/dist/contracts/run-termination.d.ts.map +1 -1
  64. package/dist/gateway/gateway.d.ts.map +1 -1
  65. package/dist/gateway/gateway.js +20 -10
  66. package/dist/gateway/gateway.js.map +1 -1
  67. package/dist/gateway/launcher-seam.js +2 -2
  68. package/dist/gateway/launcher-seam.js.map +1 -1
  69. package/dist/gateway/runtime-factory.d.ts.map +1 -1
  70. package/dist/gateway/runtime-factory.js +2 -3
  71. package/dist/gateway/runtime-factory.js.map +1 -1
  72. package/dist/gateway/settings-rpc.d.ts +5 -2
  73. package/dist/gateway/settings-rpc.d.ts.map +1 -1
  74. package/dist/gateway/settings-rpc.js +6 -4
  75. package/dist/gateway/settings-rpc.js.map +1 -1
  76. package/dist/hooks/settings-completion-config.d.ts +0 -2
  77. package/dist/hooks/settings-completion-config.d.ts.map +1 -1
  78. package/dist/hooks/settings-completion-config.js +3 -23
  79. package/dist/hooks/settings-completion-config.js.map +1 -1
  80. package/dist/hooks/use-app-commands.d.ts +1 -1
  81. package/dist/hooks/use-app-commands.d.ts.map +1 -1
  82. package/dist/hooks/use-conversation-settings.d.ts +3 -2
  83. package/dist/hooks/use-conversation-settings.d.ts.map +1 -1
  84. package/dist/hooks/use-conversation-settings.js +4 -4
  85. package/dist/hooks/use-conversation-settings.js.map +1 -1
  86. package/dist/hooks/use-conversation.d.ts +1 -1
  87. package/dist/hooks/use-conversation.js +3 -3
  88. package/dist/hooks/use-conversation.js.map +1 -1
  89. package/dist/hooks/use-first-run-setup.d.ts +1 -2
  90. package/dist/hooks/use-first-run-setup.d.ts.map +1 -1
  91. package/dist/hooks/use-first-run-setup.js +7 -17
  92. package/dist/hooks/use-first-run-setup.js.map +1 -1
  93. package/dist/hooks/use-grok-credit-usage.js +1 -1
  94. package/dist/hooks/use-grok-credit-usage.js.map +1 -1
  95. package/dist/hooks/use-handoff-flow.d.ts +1 -1
  96. package/dist/hooks/use-handoff-flow.d.ts.map +1 -1
  97. package/dist/hooks/use-handoff-flow.js +3 -3
  98. package/dist/hooks/use-handoff-flow.js.map +1 -1
  99. package/dist/hooks/use-model-selection.d.ts.map +1 -1
  100. package/dist/hooks/use-model-selection.js +6 -8
  101. package/dist/hooks/use-model-selection.js.map +1 -1
  102. package/dist/hooks/use-opencode-go-usage.js +1 -1
  103. package/dist/hooks/use-opencode-go-usage.js.map +1 -1
  104. package/dist/hooks/use-runtime-settings.d.ts +2 -2
  105. package/dist/hooks/use-runtime-settings.d.ts.map +1 -1
  106. package/dist/hooks/use-runtime-settings.js +3 -3
  107. package/dist/hooks/use-runtime-settings.js.map +1 -1
  108. package/dist/hooks/use-standalone-model-picker.d.ts.map +1 -1
  109. package/dist/hooks/use-standalone-model-picker.js +7 -6
  110. package/dist/hooks/use-standalone-model-picker.js.map +1 -1
  111. package/dist/hooks/use-subagent-pool-selection.d.ts +9 -16
  112. package/dist/hooks/use-subagent-pool-selection.d.ts.map +1 -1
  113. package/dist/hooks/use-subagent-pool-selection.js +15 -33
  114. package/dist/hooks/use-subagent-pool-selection.js.map +1 -1
  115. package/dist/lib/agent-chat-service.d.ts +6 -0
  116. package/dist/lib/agent-chat-service.d.ts.map +1 -1
  117. package/dist/lib/agent-chat-service.js +27 -3
  118. package/dist/lib/agent-chat-service.js.map +1 -1
  119. package/dist/lib/agent-client.d.ts +10 -5
  120. package/dist/lib/agent-client.d.ts.map +1 -1
  121. package/dist/lib/agent-client.js +86 -34
  122. package/dist/lib/agent-client.js.map +1 -1
  123. package/dist/lib/agent-configuration.d.ts +5 -4
  124. package/dist/lib/agent-configuration.d.ts.map +1 -1
  125. package/dist/lib/agent-configuration.js +24 -33
  126. package/dist/lib/agent-configuration.js.map +1 -1
  127. package/dist/lib/agent-factory.d.ts +4 -3
  128. package/dist/lib/agent-factory.d.ts.map +1 -1
  129. package/dist/lib/agent-factory.js +21 -7
  130. package/dist/lib/agent-factory.js.map +1 -1
  131. package/dist/non-interactive.d.ts +5 -0
  132. package/dist/non-interactive.d.ts.map +1 -1
  133. package/dist/non-interactive.js +67 -10
  134. package/dist/non-interactive.js.map +1 -1
  135. package/dist/prompts/durable-goal-context.d.ts.map +1 -1
  136. package/dist/prompts/durable-goal-context.js +12 -2
  137. package/dist/prompts/durable-goal-context.js.map +1 -1
  138. package/dist/prompts/durable-goal-context.test.ts +11 -0
  139. package/dist/prompts/durable-goal-context.ts +13 -2
  140. package/dist/providers/ai-sdk-openrouter.provider.js +3 -2
  141. package/dist/providers/ai-sdk-openrouter.provider.js.map +1 -1
  142. package/dist/providers/ai-sdk-streamed-model.d.ts.map +1 -1
  143. package/dist/providers/ai-sdk-streamed-model.js +12 -2
  144. package/dist/providers/ai-sdk-streamed-model.js.map +1 -1
  145. package/dist/providers/codex-responses-model.d.ts.map +1 -1
  146. package/dist/providers/codex-responses-model.js +35 -16
  147. package/dist/providers/codex-responses-model.js.map +1 -1
  148. package/dist/providers/codex.provider.js +1 -1
  149. package/dist/providers/codex.provider.js.map +1 -1
  150. package/dist/providers/grok.provider.js +1 -1
  151. package/dist/providers/grok.provider.js.map +1 -1
  152. package/dist/providers/openai-chat-completions-model.d.ts.map +1 -1
  153. package/dist/providers/openai-chat-completions-model.js +11 -3
  154. package/dist/providers/openai-chat-completions-model.js.map +1 -1
  155. package/dist/providers/openai-compatible-lazy.js +1 -1
  156. package/dist/providers/openai-compatible-lazy.js.map +1 -1
  157. package/dist/providers/openai.provider.js +1 -1
  158. package/dist/providers/openai.provider.js.map +1 -1
  159. package/dist/providers/openrouter.provider.js +1 -1
  160. package/dist/providers/openrouter.provider.js.map +1 -1
  161. package/dist/providers/provider-service.d.ts.map +1 -1
  162. package/dist/providers/provider-service.js +6 -7
  163. package/dist/providers/provider-service.js.map +1 -1
  164. package/dist/scripts/eval-auto-approval/runner.js +2 -3
  165. package/dist/scripts/eval-auto-approval/runner.js.map +1 -1
  166. package/dist/scripts/eval-context-compaction/runner.js +1 -2
  167. package/dist/scripts/eval-context-compaction/runner.js.map +1 -1
  168. package/dist/services/agent-runtime/application-run-loop.d.ts +34 -1
  169. package/dist/services/agent-runtime/application-run-loop.d.ts.map +1 -1
  170. package/dist/services/agent-runtime/application-run-loop.js +174 -33
  171. package/dist/services/agent-runtime/application-run-loop.js.map +1 -1
  172. package/dist/services/agent-runtime/context-compaction/index.d.ts.map +1 -1
  173. package/dist/services/agent-runtime/context-compaction/index.js +65 -16
  174. package/dist/services/agent-runtime/context-compaction/index.js.map +1 -1
  175. package/dist/services/agent-runtime/context-compaction/local-context-compactor.d.ts +7 -1
  176. package/dist/services/agent-runtime/context-compaction/local-context-compactor.d.ts.map +1 -1
  177. package/dist/services/agent-runtime/context-compaction/local-context-compactor.js +115 -20
  178. package/dist/services/agent-runtime/context-compaction/local-context-compactor.js.map +1 -1
  179. package/dist/services/agent-runtime/model-context-policy.d.ts +21 -0
  180. package/dist/services/agent-runtime/model-context-policy.d.ts.map +1 -0
  181. package/dist/services/agent-runtime/model-context-policy.js +46 -0
  182. package/dist/services/agent-runtime/model-context-policy.js.map +1 -0
  183. package/dist/services/agent-runtime/model-resolver.d.ts +4 -13
  184. package/dist/services/agent-runtime/model-resolver.d.ts.map +1 -1
  185. package/dist/services/agent-runtime/model-resolver.js +9 -39
  186. package/dist/services/agent-runtime/model-resolver.js.map +1 -1
  187. package/dist/services/agent-runtime/request-input-limit.d.ts +31 -0
  188. package/dist/services/agent-runtime/request-input-limit.d.ts.map +1 -0
  189. package/dist/services/agent-runtime/request-input-limit.js +86 -0
  190. package/dist/services/agent-runtime/request-input-limit.js.map +1 -0
  191. package/dist/services/agent-runtime/run-budget.d.ts +3 -5
  192. package/dist/services/agent-runtime/run-budget.d.ts.map +1 -1
  193. package/dist/services/agent-runtime/run-budget.js.map +1 -1
  194. package/dist/services/agent-runtime/tool-call-execution.d.ts +24 -2
  195. package/dist/services/agent-runtime/tool-call-execution.d.ts.map +1 -1
  196. package/dist/services/agent-runtime/tool-call-execution.js +36 -6
  197. package/dist/services/agent-runtime/tool-call-execution.js.map +1 -1
  198. package/dist/services/agent-runtime/tool-invocation-context.d.ts +24 -12
  199. package/dist/services/agent-runtime/tool-invocation-context.d.ts.map +1 -1
  200. package/dist/services/agent-runtime/tool-invocation-context.js +38 -27
  201. package/dist/services/agent-runtime/tool-invocation-context.js.map +1 -1
  202. package/dist/services/approval/approval-replay.d.ts +15 -24
  203. package/dist/services/approval/approval-replay.d.ts.map +1 -1
  204. package/dist/services/approval/approval-replay.js +12 -30
  205. package/dist/services/approval/approval-replay.js.map +1 -1
  206. package/dist/services/approval/non-interactive-approval-policy.d.ts.map +1 -1
  207. package/dist/services/approval/non-interactive-approval-policy.js +11 -0
  208. package/dist/services/approval/non-interactive-approval-policy.js.map +1 -1
  209. package/dist/services/approval/tool-approval-batch-coordinator.d.ts.map +1 -1
  210. package/dist/services/approval/tool-approval-batch-coordinator.js +0 -5
  211. package/dist/services/approval/tool-approval-batch-coordinator.js.map +1 -1
  212. package/dist/services/control-socket/control-session-port.js +6 -6
  213. package/dist/services/control-socket/control-session-port.js.map +1 -1
  214. package/dist/services/conversation/conversation-checkpoint-provenance.d.ts.map +1 -1
  215. package/dist/services/conversation/conversation-checkpoint-provenance.js +10 -2
  216. package/dist/services/conversation/conversation-checkpoint-provenance.js.map +1 -1
  217. package/dist/services/conversation/conversation-events.d.ts +2 -0
  218. package/dist/services/conversation/conversation-events.d.ts.map +1 -1
  219. package/dist/services/conversation/conversation-events.js.map +1 -1
  220. package/dist/services/conversation/conversation-orchestrator.d.ts +1 -1
  221. package/dist/services/conversation/conversation-orchestrator.d.ts.map +1 -1
  222. package/dist/services/conversation/conversation-orchestrator.js +14 -2
  223. package/dist/services/conversation/conversation-orchestrator.js.map +1 -1
  224. package/dist/services/conversation/conversation-replay.d.ts.map +1 -1
  225. package/dist/services/conversation/conversation-replay.js +87 -3
  226. package/dist/services/conversation/conversation-replay.js.map +1 -1
  227. package/dist/services/conversation/conversation-service.d.ts +4 -5
  228. package/dist/services/conversation/conversation-service.d.ts.map +1 -1
  229. package/dist/services/conversation/conversation-service.js +9 -11
  230. package/dist/services/conversation/conversation-service.js.map +1 -1
  231. package/dist/services/conversation/conversation-state-projector.d.ts +1 -0
  232. package/dist/services/conversation/conversation-state-projector.d.ts.map +1 -1
  233. package/dist/services/conversation/conversation-state-projector.js +5 -1
  234. package/dist/services/conversation/conversation-state-projector.js.map +1 -1
  235. package/dist/services/conversation/durable-goal-stop-check.d.ts +141 -0
  236. package/dist/services/conversation/durable-goal-stop-check.d.ts.map +1 -0
  237. package/dist/services/conversation/durable-goal-stop-check.js +351 -0
  238. package/dist/services/conversation/durable-goal-stop-check.js.map +1 -0
  239. package/dist/services/conversation/durable-goal.d.ts +16 -1
  240. package/dist/services/conversation/durable-goal.d.ts.map +1 -1
  241. package/dist/services/conversation/durable-goal.js +8 -0
  242. package/dist/services/conversation/durable-goal.js.map +1 -1
  243. package/dist/services/conversation/local-checkpoint-projection.d.ts.map +1 -1
  244. package/dist/services/conversation/local-checkpoint-projection.js +12 -1
  245. package/dist/services/conversation/local-checkpoint-projection.js.map +1 -1
  246. package/dist/services/conversation/session-browser.d.ts +2 -0
  247. package/dist/services/conversation/session-browser.d.ts.map +1 -1
  248. package/dist/services/conversation/session-browser.js +23 -8
  249. package/dist/services/conversation/session-browser.js.map +1 -1
  250. package/dist/services/conversation/session-index/session-index-worker-client.d.ts +3 -0
  251. package/dist/services/conversation/session-index/session-index-worker-client.d.ts.map +1 -1
  252. package/dist/services/conversation/session-index/session-index-worker-client.js +6 -1
  253. package/dist/services/conversation/session-index/session-index-worker-client.js.map +1 -1
  254. package/dist/services/conversation/session-index/session-index-worker.d.ts +16 -1
  255. package/dist/services/conversation/session-index/session-index-worker.d.ts.map +1 -1
  256. package/dist/services/conversation/session-index/session-index-worker.js +16 -0
  257. package/dist/services/conversation/session-index/session-index-worker.js.map +1 -1
  258. package/dist/services/conversation-agent-client.d.ts +3 -1
  259. package/dist/services/conversation-agent-client.d.ts.map +1 -1
  260. package/dist/services/handoff/handoff-session.d.ts +1 -1
  261. package/dist/services/handoff/handoff-session.d.ts.map +1 -1
  262. package/dist/services/handoff/handoff-session.js +10 -12
  263. package/dist/services/handoff/handoff-session.js.map +1 -1
  264. package/dist/services/logging/conversation-log-events.d.ts +7 -0
  265. package/dist/services/logging/conversation-log-events.d.ts.map +1 -1
  266. package/dist/services/logging/conversation-log-events.js +1 -2
  267. package/dist/services/logging/conversation-log-events.js.map +1 -1
  268. package/dist/services/model-service.js +1 -1
  269. package/dist/services/model-service.js.map +1 -1
  270. package/dist/services/models/model-resolution.d.ts +2 -2
  271. package/dist/services/models/model-resolution.d.ts.map +1 -1
  272. package/dist/services/models/model-resolution.js +8 -2
  273. package/dist/services/models/model-resolution.js.map +1 -1
  274. package/dist/services/retry/retry-classifier.d.ts.map +1 -1
  275. package/dist/services/retry/retry-classifier.js +2 -1
  276. package/dist/services/retry/retry-classifier.js.map +1 -1
  277. package/dist/services/retry/retry-error-classification.d.ts.map +1 -1
  278. package/dist/services/retry/retry-error-classification.js +1 -0
  279. package/dist/services/retry/retry-error-classification.js.map +1 -1
  280. package/dist/services/runtime-setting-router.d.ts +2 -2
  281. package/dist/services/runtime-setting-router.d.ts.map +1 -1
  282. package/dist/services/runtime-setting-router.js +8 -17
  283. package/dist/services/runtime-setting-router.js.map +1 -1
  284. package/dist/services/service-interfaces.d.ts +2 -0
  285. package/dist/services/service-interfaces.d.ts.map +1 -1
  286. package/dist/services/session/initial-turn-recovery-handler.d.ts.map +1 -1
  287. package/dist/services/session/initial-turn-recovery-handler.js +6 -0
  288. package/dist/services/session/initial-turn-recovery-handler.js.map +1 -1
  289. package/dist/services/session/session-client-factory.js +1 -1
  290. package/dist/services/session/session-client-factory.js.map +1 -1
  291. package/dist/services/session/session-composition.d.ts.map +1 -1
  292. package/dist/services/session/session-composition.js +11 -9
  293. package/dist/services/session/session-composition.js.map +1 -1
  294. package/dist/services/session/session-input-planner.js +2 -2
  295. package/dist/services/session/session-input-planner.js.map +1 -1
  296. package/dist/services/session/session-manager.d.ts +2 -0
  297. package/dist/services/session/session-manager.d.ts.map +1 -1
  298. package/dist/services/session/session-manager.js +14 -2
  299. package/dist/services/session/session-manager.js.map +1 -1
  300. package/dist/services/session/session-runtime-controller.d.ts +2 -4
  301. package/dist/services/session/session-runtime-controller.d.ts.map +1 -1
  302. package/dist/services/session/session-runtime-controller.js +2 -14
  303. package/dist/services/session/session-runtime-controller.js.map +1 -1
  304. package/dist/services/session/session-tool-tracker.d.ts +1 -0
  305. package/dist/services/session/session-tool-tracker.d.ts.map +1 -1
  306. package/dist/services/session/session-tool-tracker.js +8 -0
  307. package/dist/services/session/session-tool-tracker.js.map +1 -1
  308. package/dist/services/session/terminal-result-collector.d.ts.map +1 -1
  309. package/dist/services/session/terminal-result-collector.js +3 -0
  310. package/dist/services/session/terminal-result-collector.js.map +1 -1
  311. package/dist/services/session/test-helpers/conversation-session-fixtures.d.ts.map +1 -1
  312. package/dist/services/session/test-helpers/conversation-session-fixtures.js +5 -2
  313. package/dist/services/session/test-helpers/conversation-session-fixtures.js.map +1 -1
  314. package/dist/services/session/turn-workflow.d.ts.map +1 -1
  315. package/dist/services/session/turn-workflow.js +3 -0
  316. package/dist/services/session/turn-workflow.js.map +1 -1
  317. package/dist/services/settings/ancillary-settings-migration.d.ts +1 -1
  318. package/dist/services/settings/ancillary-settings-migration.d.ts.map +1 -1
  319. package/dist/services/settings/ancillary-settings-migration.js +4 -37
  320. package/dist/services/settings/ancillary-settings-migration.js.map +1 -1
  321. package/dist/services/settings/model-selection.d.ts +7 -0
  322. package/dist/services/settings/model-selection.d.ts.map +1 -0
  323. package/dist/services/settings/model-selection.js +6 -0
  324. package/dist/services/settings/model-selection.js.map +1 -0
  325. package/dist/services/settings/persisted-selection-migration.d.ts +9 -0
  326. package/dist/services/settings/persisted-selection-migration.d.ts.map +1 -0
  327. package/dist/services/settings/persisted-selection-migration.js +109 -0
  328. package/dist/services/settings/persisted-selection-migration.js.map +1 -0
  329. package/dist/services/settings/setting-schema-utils.d.ts.map +1 -1
  330. package/dist/services/settings/setting-schema-utils.js +5 -2
  331. package/dist/services/settings/setting-schema-utils.js.map +1 -1
  332. package/dist/services/settings/settings-env.d.ts.map +1 -1
  333. package/dist/services/settings/settings-env.js +6 -2
  334. package/dist/services/settings/settings-env.js.map +1 -1
  335. package/dist/services/settings/settings-merger.d.ts.map +1 -1
  336. package/dist/services/settings/settings-merger.js +12 -5
  337. package/dist/services/settings/settings-merger.js.map +1 -1
  338. package/dist/services/settings/settings-persistence.d.ts +3 -1
  339. package/dist/services/settings/settings-persistence.d.ts.map +1 -1
  340. package/dist/services/settings/settings-persistence.js +24 -6
  341. package/dist/services/settings/settings-persistence.js.map +1 -1
  342. package/dist/services/settings/settings-schema.d.ts +69 -119
  343. package/dist/services/settings/settings-schema.d.ts.map +1 -1
  344. package/dist/services/settings/settings-schema.js +71 -183
  345. package/dist/services/settings/settings-schema.js.map +1 -1
  346. package/dist/services/settings/settings-service.d.ts +5 -1
  347. package/dist/services/settings/settings-service.d.ts.map +1 -1
  348. package/dist/services/settings/settings-service.js +105 -41
  349. package/dist/services/settings/settings-service.js.map +1 -1
  350. package/dist/services/settings/settings-service.mock.js +2 -2
  351. package/dist/services/settings/settings-service.mock.js.map +1 -1
  352. package/dist/services/settings/settings-sources.d.ts +2 -20
  353. package/dist/services/settings/settings-sources.d.ts.map +1 -1
  354. package/dist/services/settings/settings-sources.js +2 -20
  355. package/dist/services/settings/settings-sources.js.map +1 -1
  356. package/dist/services/settings/settings-ui-metadata.d.ts.map +1 -1
  357. package/dist/services/settings/settings-ui-metadata.js +5 -25
  358. package/dist/services/settings/settings-ui-metadata.js.map +1 -1
  359. package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts +6 -6
  360. package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts.map +1 -1
  361. package/dist/services/settings/test-helpers/settings-consumer-inventory.js +4 -28
  362. package/dist/services/settings/test-helpers/settings-consumer-inventory.js.map +1 -1
  363. package/dist/services/subagents/execution-runner.d.ts.map +1 -1
  364. package/dist/services/subagents/execution-runner.js +16 -3
  365. package/dist/services/subagents/execution-runner.js.map +1 -1
  366. package/dist/services/subagents/mentor-runner.d.ts.map +1 -1
  367. package/dist/services/subagents/mentor-runner.js +10 -6
  368. package/dist/services/subagents/mentor-runner.js.map +1 -1
  369. package/dist/services/subagents/nested-runner.d.ts.map +1 -1
  370. package/dist/services/subagents/nested-runner.js +3 -2
  371. package/dist/services/subagents/nested-runner.js.map +1 -1
  372. package/dist/services/subagents/role-loader.d.ts.map +1 -1
  373. package/dist/services/subagents/role-loader.js +9 -17
  374. package/dist/services/subagents/role-loader.js.map +1 -1
  375. package/dist/services/subagents/subagent-pool-config.d.ts +0 -6
  376. package/dist/services/subagents/subagent-pool-config.d.ts.map +1 -1
  377. package/dist/services/subagents/subagent-pool-config.js +1 -22
  378. package/dist/services/subagents/subagent-pool-config.js.map +1 -1
  379. package/dist/services/subagents/subagent-role-pool-selector.d.ts +1 -2
  380. package/dist/services/subagents/subagent-role-pool-selector.d.ts.map +1 -1
  381. package/dist/services/subagents/subagent-role-pool-selector.js +4 -10
  382. package/dist/services/subagents/subagent-role-pool-selector.js.map +1 -1
  383. package/dist/services/subagents/test-helpers/subagent-manager-fixtures.d.ts.map +1 -1
  384. package/dist/services/subagents/test-helpers/subagent-manager-fixtures.js +8 -2
  385. package/dist/services/subagents/test-helpers/subagent-manager-fixtures.js.map +1 -1
  386. package/dist/services/tool-execution-ledger.d.ts +22 -0
  387. package/dist/services/tool-execution-ledger.d.ts.map +1 -1
  388. package/dist/services/tool-execution-ledger.js +40 -3
  389. package/dist/services/tool-execution-ledger.js.map +1 -1
  390. package/dist/services/workflow-evolution/cli.d.ts +2 -0
  391. package/dist/services/workflow-evolution/cli.d.ts.map +1 -0
  392. package/dist/services/workflow-evolution/cli.js +26 -0
  393. package/dist/services/workflow-evolution/cli.js.map +1 -0
  394. package/dist/services/workflow-evolution/demo.d.ts +18 -0
  395. package/dist/services/workflow-evolution/demo.d.ts.map +1 -0
  396. package/dist/services/workflow-evolution/demo.js +177 -0
  397. package/dist/services/workflow-evolution/demo.js.map +1 -0
  398. package/dist/services/workflow-evolution/experiment.d.ts +304 -0
  399. package/dist/services/workflow-evolution/experiment.d.ts.map +1 -0
  400. package/dist/services/workflow-evolution/experiment.js +251 -0
  401. package/dist/services/workflow-evolution/experiment.js.map +1 -0
  402. package/dist/services/workflow-evolution/ledger.d.ts +5 -0
  403. package/dist/services/workflow-evolution/ledger.d.ts.map +1 -0
  404. package/dist/services/workflow-evolution/ledger.js +57 -0
  405. package/dist/services/workflow-evolution/ledger.js.map +1 -0
  406. package/dist/skins/rail/status.d.ts.map +1 -1
  407. package/dist/skins/rail/status.js +21 -11
  408. package/dist/skins/rail/status.js.map +1 -1
  409. package/dist/skins/testing/scenes.d.ts.map +1 -1
  410. package/dist/skins/testing/scenes.js +1 -2
  411. package/dist/skins/testing/scenes.js.map +1 -1
  412. package/dist/tools/agent/goal-check.d.ts +23 -0
  413. package/dist/tools/agent/goal-check.d.ts.map +1 -0
  414. package/dist/tools/agent/goal-check.js +79 -0
  415. package/dist/tools/agent/goal-check.js.map +1 -0
  416. package/dist/tools/file/edit-healing.js +1 -1
  417. package/dist/tools/file/edit-healing.js.map +1 -1
  418. package/dist/tools/file/patch-healing.js +1 -1
  419. package/dist/tools/file/patch-healing.js.map +1 -1
  420. package/dist/tools/system/run-code/run-code-execution.d.ts +7 -0
  421. package/dist/tools/system/run-code/run-code-execution.d.ts.map +1 -1
  422. package/dist/tools/system/run-code/run-code-execution.js.map +1 -1
  423. package/dist/tools/system/run-code/run-code-runtime-contract.d.ts +2 -0
  424. package/dist/tools/system/run-code/run-code-runtime-contract.d.ts.map +1 -1
  425. package/dist/tools/system/run-code/run-code-runtime.d.ts +2 -1
  426. package/dist/tools/system/run-code/run-code-runtime.d.ts.map +1 -1
  427. package/dist/tools/system/run-code/run-code-runtime.js +26 -7
  428. package/dist/tools/system/run-code/run-code-runtime.js.map +1 -1
  429. package/dist/tools/system/run-code/run-code.js +15 -8
  430. package/dist/tools/system/run-code/run-code.js.map +1 -1
  431. package/dist/tools/tool-names.d.ts +1 -0
  432. package/dist/tools/tool-names.d.ts.map +1 -1
  433. package/dist/tools/tool-names.js +1 -0
  434. package/dist/tools/tool-names.js.map +1 -1
  435. package/dist/tools/types.d.ts +21 -0
  436. package/dist/tools/types.d.ts.map +1 -1
  437. package/dist/tools/types.js +7 -0
  438. package/dist/tools/types.js.map +1 -1
  439. package/dist/utils/ai/model-settings.d.ts +0 -2
  440. package/dist/utils/ai/model-settings.d.ts.map +1 -1
  441. package/dist/utils/ai/model-settings.js +2 -11
  442. package/dist/utils/ai/model-settings.js.map +1 -1
  443. package/dist/utils/conversation/conversation-event-handler.d.ts.map +1 -1
  444. package/dist/utils/conversation/conversation-event-handler.js +4 -0
  445. package/dist/utils/conversation/conversation-event-handler.js.map +1 -1
  446. package/dist/utils/output/text-snippet.js +25 -33
  447. package/dist/utils/output/text-snippet.js.map +1 -1
  448. package/dist/utils/settings-command.d.ts.map +1 -1
  449. package/dist/utils/settings-command.js +25 -24
  450. package/dist/utils/settings-command.js.map +1 -1
  451. package/dist/utils/value-suggestions.d.ts +0 -2
  452. package/dist/utils/value-suggestions.d.ts.map +1 -1
  453. package/dist/utils/value-suggestions.js +2 -63
  454. package/dist/utils/value-suggestions.js.map +1 -1
  455. package/package.json +1 -1
@@ -1,42 +1,12 @@
1
1
  const MIGRATIONS = [
2
- { target: 'agent.smartModel', legacy: ['agent.capableModel', 'agent.mentorModel'] },
3
- { target: 'agent.smartProvider', legacy: ['agent.mentorProvider'] },
4
2
  { target: 'agent.smartReasoningEffort', legacy: ['agent.mentorReasoningEffort'] },
5
- {
6
- target: 'agent.balancedModel',
7
- legacy: ['agent.subagentWorkerModel'],
8
- },
9
- {
10
- target: 'agent.balancedProvider',
11
- legacy: ['agent.subagentWorkerProvider'],
12
- },
13
- {
14
- target: 'agent.balancedReasoningEffort',
15
- legacy: ['agent.subagentWorkerReasoningEffort'],
16
- },
17
- {
18
- target: 'agent.cheapModel',
19
- legacy: ['agent.efficientModel', 'agent.subagentExplorerModel', 'agent.subagentLibrarianModel'],
20
- },
21
- {
22
- target: 'agent.cheapProvider',
23
- legacy: ['agent.subagentExplorerProvider', 'agent.subagentLibrarianProvider'],
24
- },
3
+ { target: 'agent.balancedReasoningEffort', legacy: ['agent.subagentWorkerReasoningEffort'] },
25
4
  {
26
5
  target: 'agent.cheapReasoningEffort',
27
6
  legacy: ['agent.subagentExplorerReasoningEffort', 'agent.subagentLibrarianReasoningEffort'],
28
7
  },
29
- { target: 'agent.choreModel', legacy: ['agent.autoApproveModel', 'tools.editHealingModel'] },
30
- { target: 'agent.choreProvider', legacy: ['agent.autoApproveProvider', 'tools.editHealingProvider'] },
31
- {
32
- target: 'agent.decisionModel',
33
- legacy: ['agent.decisionShadowModel', 'agent.autoApproveDecisionShadowModel'],
34
- },
8
+ { target: 'agent.decisionModel', legacy: ['agent.decisionShadowModel', 'agent.autoApproveDecisionShadowModel'] },
35
9
  ];
36
- // Tier model settings are model pools; a migrated legacy string value
37
- // normalizes to a single-entry pool so runtime reads see one consistent shape
38
- // (migration output is not re-parsed through the schema).
39
- const TIER_MODEL_TARGETS = new Set(['agent.smartModel', 'agent.balancedModel', 'agent.cheapModel', 'agent.choreModel']);
40
10
  function getOwnValue(object, path) {
41
11
  let current = object;
42
12
  for (const segment of path.split('.')) {
@@ -66,14 +36,11 @@ export function migrateLegacyAncillarySettings(config, rawConfig) {
66
36
  if (getOwnValue(rawConfig, migration.target).found)
67
37
  continue;
68
38
  const legacyValue = migration.legacy
69
- .map((path) => getOwnValue(rawConfig, path))
39
+ .map((path) => ({ ...getOwnValue(rawConfig, path), path }))
70
40
  .find((candidate) => candidate.found && candidate.value !== undefined && candidate.value !== null);
71
41
  if (!legacyValue)
72
42
  continue;
73
- const value = TIER_MODEL_TARGETS.has(migration.target) && !Array.isArray(legacyValue.value)
74
- ? [legacyValue.value]
75
- : legacyValue.value;
76
- setValue(migratedConfig, migration.target, value);
43
+ setValue(migratedConfig, migration.target, legacyValue.value);
77
44
  migrated = true;
78
45
  }
79
46
  return { config: migratedConfig, migrated };
@@ -1 +1 @@
1
- {"version":3,"file":"ancillary-settings-migration.js","sourceRoot":"","sources":["../../../source/services/settings/ancillary-settings-migration.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,GAAgB;IAC9B,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,EAAE;IACnF,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,CAAC,sBAAsB,CAAC,EAAE;IACnE,EAAE,MAAM,EAAE,4BAA4B,EAAE,MAAM,EAAE,CAAC,6BAA6B,CAAC,EAAE;IACjF;QACE,MAAM,EAAE,qBAAqB;QAC7B,MAAM,EAAE,CAAC,2BAA2B,CAAC;KACtC;IACD;QACE,MAAM,EAAE,wBAAwB;QAChC,MAAM,EAAE,CAAC,8BAA8B,CAAC;KACzC;IACD;QACE,MAAM,EAAE,+BAA+B;QACvC,MAAM,EAAE,CAAC,qCAAqC,CAAC;KAChD;IACD;QACE,MAAM,EAAE,kBAAkB;QAC1B,MAAM,EAAE,CAAC,sBAAsB,EAAE,6BAA6B,EAAE,8BAA8B,CAAC;KAChG;IACD;QACE,MAAM,EAAE,qBAAqB;QAC7B,MAAM,EAAE,CAAC,gCAAgC,EAAE,iCAAiC,CAAC;KAC9E;IACD;QACE,MAAM,EAAE,4BAA4B;QACpC,MAAM,EAAE,CAAC,uCAAuC,EAAE,wCAAwC,CAAC;KAC5F;IACD,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,wBAAwB,EAAE,wBAAwB,CAAC,EAAE;IAC5F,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,CAAC,2BAA2B,EAAE,2BAA2B,CAAC,EAAE;IACrG;QACE,MAAM,EAAE,qBAAqB;QAC7B,MAAM,EAAE,CAAC,2BAA2B,EAAE,sCAAsC,CAAC;KAC9E;CACF,CAAC;AAEF,sEAAsE;AACtE,8EAA8E;AAC9E,0DAA0D;AAC1D,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,kBAAkB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAAC,CAAC;AAExH,SAAS,WAAW,CAAC,MAAe,EAAE,IAAY;IAChD,IAAI,OAAO,GAAG,MAAM,CAAC;IACrB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;YACvF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAC1B,CAAC;QACD,OAAO,GAAI,OAAmC,CAAC,OAAO,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AACzC,CAAC;AAED,SAAS,QAAQ,CAAC,MAA+B,EAAE,IAAY,EAAE,KAAc;IAC7E,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,OAAO,GAAG,MAAM,CAAC;IACrB,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,KAAK,IAAI,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACvE,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACxB,CAAC;QACD,OAAO,GAAG,OAAO,CAAC,OAAO,CAA4B,CAAC;IACxD,CAAC;IACD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,GAAG,KAAK,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,MAA6B,EAC7B,SAAkB;IAElB,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,CAA4B,CAAC;IAC1E,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,WAAW,CAAC,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK;YAAE,SAAS;QAE7D,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM;aACjC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;aAC3C,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,SAAS,IAAI,SAAS,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;QACrG,IAAI,CAAC,WAAW;YAAE,SAAS;QAE3B,MAAM,KAAK,GACT,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC;YAC3E,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC;YACrB,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC;QACxB,QAAQ,CAAC,cAAc,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAClD,QAAQ,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,cAAuC,EAAE,QAAQ,EAAE,CAAC;AACvE,CAAC"}
1
+ {"version":3,"file":"ancillary-settings-migration.js","sourceRoot":"","sources":["../../../source/services/settings/ancillary-settings-migration.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,GAAgB;IAC9B,EAAE,MAAM,EAAE,4BAA4B,EAAE,MAAM,EAAE,CAAC,6BAA6B,CAAC,EAAE;IACjF,EAAE,MAAM,EAAE,+BAA+B,EAAE,MAAM,EAAE,CAAC,qCAAqC,CAAC,EAAE;IAC5F;QACE,MAAM,EAAE,4BAA4B;QACpC,MAAM,EAAE,CAAC,uCAAuC,EAAE,wCAAwC,CAAC;KAC5F;IACD,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,CAAC,2BAA2B,EAAE,sCAAsC,CAAC,EAAE;CACjH,CAAC;AAEF,SAAS,WAAW,CAAC,MAAe,EAAE,IAAY;IAChD,IAAI,OAAO,GAAG,MAAM,CAAC;IACrB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;YACvF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAC1B,CAAC;QACD,OAAO,GAAI,OAAmC,CAAC,OAAO,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AACzC,CAAC;AAED,SAAS,QAAQ,CAAC,MAA+B,EAAE,IAAY,EAAE,KAAc;IAC7E,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,OAAO,GAAG,MAAM,CAAC;IACrB,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,KAAK,IAAI,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACvE,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACxB,CAAC;QACD,OAAO,GAAG,OAAO,CAAC,OAAO,CAA4B,CAAC;IACxD,CAAC;IACD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,GAAG,KAAK,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,MAA6B,EAC7B,SAAkB;IAElB,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,CAA4B,CAAC;IAC1E,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,WAAW,CAAC,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK;YAAE,SAAS;QAE7D,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM;aACjC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aAC1D,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,SAAS,IAAI,SAAS,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;QACrG,IAAI,CAAC,WAAW;YAAE,SAAS;QAE3B,QAAQ,CAAC,cAAc,EAAE,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;QAC9D,QAAQ,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,cAAuC,EAAE,QAAQ,EAAE,CAAC;AACvE,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { z } from 'zod';
2
+ export declare const ModelSelectionSchema: z.ZodObject<{
3
+ model: z.ZodString;
4
+ provider: z.ZodString;
5
+ }, z.core.$strip>;
6
+ export type ModelSelection = z.infer<typeof ModelSelectionSchema>;
7
+ //# sourceMappingURL=model-selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-selection.d.ts","sourceRoot":"","sources":["../../../source/services/settings/model-selection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,oBAAoB;;;iBAG/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { z } from 'zod';
2
+ export const ModelSelectionSchema = z.object({
3
+ model: z.string().trim().min(1),
4
+ provider: z.string().trim().min(1),
5
+ });
6
+ //# sourceMappingURL=model-selection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-selection.js","sourceRoot":"","sources":["../../../source/services/settings/model-selection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACnC,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ /** File-only compatibility. Runtime writes must continue to use the strict schema.
2
+ * Bind each legacy model to its own provider before applying historical role
3
+ * precedence. Validate even superseded legacy values before removing them.
4
+ */
5
+ export declare function migratePersistedSelections(raw: unknown): {
6
+ value: unknown;
7
+ migrated: boolean;
8
+ };
9
+ //# sourceMappingURL=persisted-selection-migration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persisted-selection-migration.d.ts","sourceRoot":"","sources":["../../../source/services/settings/persisted-selection-migration.ts"],"names":[],"mappings":"AAmBA;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,OAAO,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAiF9F"}
@@ -0,0 +1,109 @@
1
+ import deepEqual from 'fast-deep-equal';
2
+ import { z } from 'zod';
3
+ import { ModelSelectionSchema } from './model-selection.js';
4
+ const isRecord = (value) => value !== null && typeof value === 'object' && !Array.isArray(value);
5
+ const providerSchema = z.string().trim().min(1);
6
+ const roles = [
7
+ 'efficient',
8
+ 'capable',
9
+ 'mentor',
10
+ 'subagentExplorer',
11
+ 'subagentWorker',
12
+ 'subagentLibrarian',
13
+ 'autoApprove',
14
+ ];
15
+ const tiers = ['smart', 'balanced', 'cheap', 'chore'];
16
+ /** File-only compatibility. Runtime writes must continue to use the strict schema.
17
+ * Bind each legacy model to its own provider before applying historical role
18
+ * precedence. Validate even superseded legacy values before removing them.
19
+ */
20
+ export function migratePersistedSelections(raw) {
21
+ if (!isRecord(raw))
22
+ return { value: raw, migrated: false };
23
+ const value = structuredClone(raw);
24
+ const agent = isRecord(value.agent) ? value.agent : {};
25
+ const tools = isRecord(value.tools) ? value.tools : {};
26
+ const parentProvider = Object.hasOwn(agent, 'provider')
27
+ ? providerSchema.parse(agent.provider)
28
+ : isRecord(agent.modelSelection) && Object.hasOwn(agent.modelSelection, 'provider')
29
+ ? providerSchema.parse(agent.modelSelection.provider)
30
+ : 'openai';
31
+ if (Object.hasOwn(agent, 'model'))
32
+ providerSchema.parse(agent.model);
33
+ if (!Object.hasOwn(agent, 'modelSelection') && (Object.hasOwn(agent, 'model') || Object.hasOwn(agent, 'provider'))) {
34
+ agent.modelSelection = ModelSelectionSchema.parse({
35
+ model: Object.hasOwn(agent, 'model') ? agent.model : 'gpt-5.1',
36
+ provider: parentProvider,
37
+ });
38
+ }
39
+ const providerFor = (section, role) => Object.hasOwn(section, `${role}Provider`) ? providerSchema.parse(section[`${role}Provider`]) : parentProvider;
40
+ const bind = (entry, provider) => {
41
+ if (typeof entry === 'string')
42
+ return { model: entry, provider };
43
+ if (isRecord(entry) && !Object.hasOwn(entry, 'provider'))
44
+ return { ...entry, provider };
45
+ return entry;
46
+ };
47
+ const selections = {};
48
+ for (const role of roles) {
49
+ const provider = providerFor(agent, role);
50
+ const key = `${role}Model`;
51
+ if (!Object.hasOwn(agent, key))
52
+ continue;
53
+ // The old mentor scalar used an empty string to disable consultation.
54
+ if (role === 'mentor' && agent[key] === '')
55
+ continue;
56
+ selections[role] = ModelSelectionSchema.parse(typeof agent[key] === 'string' ? bind(agent[key], provider) : agent[key]);
57
+ }
58
+ const healingProvider = providerFor(tools, 'editHealing');
59
+ if (Object.hasOwn(tools, 'editHealingModel')) {
60
+ selections.editHealing = ModelSelectionSchema.parse(typeof tools.editHealingModel === 'string'
61
+ ? bind(tools.editHealingModel, healingProvider)
62
+ : tools.editHealingModel);
63
+ }
64
+ for (const tier of tiers) {
65
+ const provider = providerFor(agent, tier);
66
+ const key = `${tier}Model`;
67
+ if (Object.hasOwn(agent, key)) {
68
+ const pool = agent[key];
69
+ agent[key] = (Array.isArray(pool) ? pool : [pool]).map((entry) => bind(entry, provider));
70
+ }
71
+ }
72
+ const aliases = {
73
+ smart: ['capable', 'mentor'],
74
+ balanced: ['subagentWorker'],
75
+ cheap: ['efficient', 'subagentExplorer', 'subagentLibrarian'],
76
+ chore: ['autoApprove', 'editHealing'],
77
+ };
78
+ for (const [tier, candidates] of Object.entries(aliases)) {
79
+ if (Object.hasOwn(agent, `${tier}Model`))
80
+ continue;
81
+ const winner = candidates.find((role) => Object.hasOwn(selections, role));
82
+ if (winner)
83
+ agent[`${tier}Model`] = [selections[winner]];
84
+ }
85
+ if (Object.hasOwn(agent, 'mentorPool')) {
86
+ if (Array.isArray(agent.mentorPool)) {
87
+ agent.mentorPool = agent.mentorPool.map((entry) => bind(entry, providerFor(agent, 'mentor')));
88
+ }
89
+ }
90
+ else if (selections.mentor) {
91
+ agent.mentorPool = [selections.mentor];
92
+ }
93
+ for (const role of [...roles, ...tiers]) {
94
+ if (roles.includes(role))
95
+ delete agent[`${role}Model`];
96
+ delete agent[`${role}Provider`];
97
+ }
98
+ delete agent.model;
99
+ delete agent.provider;
100
+ delete tools.editHealingModel;
101
+ delete tools.editHealingProvider;
102
+ // Do not repair malformed section containers by replacing them with objects.
103
+ if (isRecord(value.agent))
104
+ value.agent = agent;
105
+ else if (!Object.hasOwn(value, 'agent') && Object.keys(agent).length)
106
+ value.agent = agent;
107
+ return { value, migrated: !deepEqual(raw, value) };
108
+ }
109
+ //# sourceMappingURL=persisted-selection-migration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persisted-selection-migration.js","sourceRoot":"","sources":["../../../source/services/settings/persisted-selection-migration.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"setting-schema-utils.d.ts","sourceRoot":"","sources":["../../../source/services/settings/setting-schema-utils.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,CA0B7C;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAiBrD"}
1
+ {"version":3,"file":"setting-schema-utils.d.ts","sourceRoot":"","sources":["../../../source/services/settings/setting-schema-utils.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,CA6B7C;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAiBrD"}
@@ -30,8 +30,11 @@ export function unwrapSchema(schema) {
30
30
  current = def.schema;
31
31
  }
32
32
  else if (typeName === 'pipe' || typeName === 'ZodPipe') {
33
- // Zod v4: .transform() produces a ZodPipe; follow the input side.
34
- current = def.in || def.schema;
33
+ // Preprocessing puts a transform on the input side; its output owns
34
+ // the settings shape. Ordinary transforms retain the input schema.
35
+ const input = def.in;
36
+ const inputType = input?.def?.type ?? input?._def?.typeName;
37
+ current = inputType === 'transform' || inputType === 'ZodTransform' ? def.out : input || def.schema;
35
38
  }
36
39
  else {
37
40
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"setting-schema-utils.js","sourceRoot":"","sources":["../../../source/services/settings/setting-schema-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,MAAW;IACtC,IAAI,OAAO,GAAG,MAAM,CAAC;IACrB,OAAO,OAAO,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;QACxC,IAAI,CAAC,GAAG;YAAE,MAAM;QAChB,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC;QAC1C,MAAM,UAAU,GAAG,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,aAAa,CAAC;QACzE,MAAM,UAAU,GAAG,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,aAAa,CAAC;QACzE,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;YAC7B,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACzC,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC;YAC1B,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;YAC/D,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC;QAC1B,CAAC;aAAM,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;YAC/D,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC;QACvB,CAAC;aAAM,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACzD,kEAAkE;YAClE,OAAO,GAAG,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,MAAM;QACR,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,OAAO,GAAQ,cAAc,CAAC;IAElC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAE/B,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAE/B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,KAAK,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;QACxD,MAAM,aAAa,GAAG,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACpE,OAAO,GAAG,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"setting-schema-utils.js","sourceRoot":"","sources":["../../../source/services/settings/setting-schema-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,MAAW;IACtC,IAAI,OAAO,GAAG,MAAM,CAAC;IACrB,OAAO,OAAO,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;QACxC,IAAI,CAAC,GAAG;YAAE,MAAM;QAChB,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC;QAC1C,MAAM,UAAU,GAAG,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,aAAa,CAAC;QACzE,MAAM,UAAU,GAAG,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,aAAa,CAAC;QACzE,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;YAC7B,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACzC,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC;YAC1B,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;YAC/D,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC;QAC1B,CAAC;aAAM,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;YAC/D,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC;QACvB,CAAC;aAAM,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACzD,oEAAoE;YACpE,mEAAmE;YACnE,MAAM,KAAK,GAAG,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,KAAK,EAAE,GAAG,EAAE,IAAI,IAAI,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC;YAC5D,OAAO,GAAG,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC;QACtG,CAAC;aAAM,CAAC;YACN,MAAM;QACR,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,OAAO,GAAQ,cAAc,CAAC;IAElC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAE/B,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAE/B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,KAAK,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;QACxD,MAAM,aAAa,GAAG,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACpE,OAAO,GAAG,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"settings-env.d.ts","sourceRoot":"","sources":["../../../source/services/settings/settings-env.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,GAChE,CAAC,GACD,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,GACxB,KAAK,CAAC,CAAC,CAAC,GACR,CAAC,SAAS,MAAM,GAChB;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GACtC,CAAC,CAAC;AAEN;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAAC,YAAY,CAAC,CA2DzD;AAED,eAAO,MAAM,eAAe,UAAW,OAAO,KAAG,OAOhD,CAAC;AAQF,eAAO,MAAM,iBAAiB,QAAO,OAQpC,CAAC"}
1
+ {"version":3,"file":"settings-env.d.ts","sourceRoot":"","sources":["../../../source/services/settings/settings-env.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,GAChE,CAAC,GACD,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,GACxB,KAAK,CAAC,CAAC,CAAC,GACR,CAAC,SAAS,MAAM,GAChB;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GACtC,CAAC,CAAC;AAEN;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAAC,YAAY,CAAC,CAgEzD;AAED,eAAO,MAAM,eAAe,UAAW,OAAO,KAAG,OAOhD,CAAC;AAQF,eAAO,MAAM,iBAAiB,QAAO,OAQpC,CAAC"}
@@ -55,8 +55,12 @@ export function buildEnvOverrides() {
55
55
  if (env.OPENAI_API_KEY)
56
56
  openai.apiKey = env.OPENAI_API_KEY;
57
57
  const agent = { openrouter, openai };
58
- if (env.OPENROUTER_MODEL)
59
- agent.model = env.OPENROUTER_MODEL;
58
+ // Explicit unattended profile; leaves interactive and persisted defaults intact.
59
+ if (env.TERM2_SUPERVISED === '1') {
60
+ agent.maxRequestInputTokens = 80_000;
61
+ agent.maxOutputTokens = 8_192;
62
+ agent.contextCompaction = { enabled: true, mode: 'local', compactThreshold: 0.8, compactThresholdTokens: 60_000 };
63
+ }
60
64
  return {
61
65
  agent,
62
66
  logging,
@@ -1 +1 @@
1
- {"version":3,"file":"settings-env.js","sourceRoot":"","sources":["../../../source/services/settings/settings-env.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings-env.js","sourceRoot":"","sources":["../../../source/services/settings/settings-env.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"settings-merger.d.ts","sourceRoot":"","sources":["../../../source/services/settings/settings-merger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;CACjE,CAAC;AAEF;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,SAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAoBlF;AAuBD;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,YAAY,EACtB,UAAU,EAAE,WAAW,CAAC,YAAY,CAAC,EACrC,GAAG,EAAE,WAAW,CAAC,YAAY,CAAC,EAC9B,GAAG,EAAE,WAAW,CAAC,YAAY,CAAC,EAC9B,IAAI,CAAC,EAAE;IACL,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,UAAU,CAAC;CAC7B,GACA,YAAY,CAyEd;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,YAAY,EACtB,UAAU,EAAE,WAAW,CAAC,YAAY,CAAC,EACrC,GAAG,EAAE,WAAW,CAAC,YAAY,CAAC,EAC9B,GAAG,EAAE,WAAW,CAAC,YAAY,CAAC,GAC7B,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAsB5B"}
1
+ {"version":3,"file":"settings-merger.d.ts","sourceRoot":"","sources":["../../../source/services/settings/settings-merger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;CACjE,CAAC;AAEF;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,SAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsBlF;AA6BD;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,YAAY,EACtB,UAAU,EAAE,WAAW,CAAC,YAAY,CAAC,EACrC,GAAG,EAAE,WAAW,CAAC,YAAY,CAAC,EAC9B,GAAG,EAAE,WAAW,CAAC,YAAY,CAAC,EAC9B,IAAI,CAAC,EAAE;IACL,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,UAAU,CAAC;CAC7B,GACA,YAAY,CAyEd;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,YAAY,EACtB,UAAU,EAAE,WAAW,CAAC,YAAY,CAAC,EACrC,GAAG,EAAE,WAAW,CAAC,YAAY,CAAC,EAC9B,GAAG,EAAE,WAAW,CAAC,YAAY,CAAC,GAC7B,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAsB5B"}
@@ -12,7 +12,10 @@ export function flattenSettings(obj, prefix = '') {
12
12
  continue;
13
13
  const value = record[key];
14
14
  const newKey = prefix ? `${prefix}.${key}` : key;
15
- if (value && typeof value === 'object' && !Array.isArray(value)) {
15
+ if (newKey === 'agent.modelSelection') {
16
+ result[newKey] = value;
17
+ }
18
+ else if (value && typeof value === 'object' && !Array.isArray(value)) {
16
19
  Object.assign(result, flattenSettings(value, newKey));
17
20
  }
18
21
  else {
@@ -24,16 +27,20 @@ export function flattenSettings(obj, prefix = '') {
24
27
  /**
25
28
  * Deep merge source into target (mutates target).
26
29
  */
27
- function deepMerge(target, source) {
30
+ function deepMerge(target, source, prefix = '') {
28
31
  for (const key in source) {
29
32
  if (!Object.prototype.hasOwnProperty.call(source, key))
30
33
  continue;
31
34
  const sourceValue = source[key];
32
- if (sourceValue && typeof sourceValue === 'object' && !Array.isArray(sourceValue)) {
35
+ const settingPath = prefix ? `${prefix}.${key}` : key;
36
+ if (sourceValue &&
37
+ typeof sourceValue === 'object' &&
38
+ !Array.isArray(sourceValue) &&
39
+ settingPath !== 'agent.modelSelection') {
33
40
  if (!target[key] || typeof target[key] !== 'object' || Array.isArray(target[key])) {
34
41
  target[key] = {};
35
42
  }
36
- deepMerge(target[key], sourceValue);
43
+ deepMerge(target[key], sourceValue, settingPath);
37
44
  }
38
45
  else {
39
46
  target[key] = sourceValue;
@@ -80,7 +87,7 @@ export function mergeSettings(defaults, fileConfig, env, cli, opts) {
80
87
  return {
81
88
  providers: merged.providers,
82
89
  enable_agent_workflow: merged.enable_agent_workflow,
83
- agent: merged.agent,
90
+ agent: validated.data.agent,
84
91
  shell: merged.shell,
85
92
  sandbox: merged.sandbox,
86
93
  agentWorkflow: merged.agentWorkflow,
@@ -1 +1 @@
1
- {"version":3,"file":"settings-merger.js","sourceRoot":"","sources":["../../../source/services/settings/settings-merger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings-merger.js","sourceRoot":"","sources":["../../../source/services/settings/settings-merger.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,7 @@ export declare function loadSettingsFromFile(opts: {
46
46
  hadErrors: boolean;
47
47
  errorDetails?: string[];
48
48
  recovery?: SettingsFileRecovery;
49
+ migratedSelections?: boolean;
49
50
  };
50
51
  /**
51
52
  * Move a corrupt `settings.json` aside so its original bytes remain available
@@ -60,7 +61,8 @@ export declare function saveSettingsToFile(opts: {
60
61
  schema: ZodTypeAny;
61
62
  defaults: SettingsData;
62
63
  mutate: SettingsMutation;
63
- stripSensitiveSettings: (settings: SettingsData) => Partial<SettingsData>;
64
+ /** Raw configuration is read under the same lock as serialization. */
65
+ stripSensitiveSettings: (settings: SettingsData, raw?: unknown) => Partial<SettingsData>;
64
66
  disableLogging?: boolean;
65
67
  loggingService?: LoggerLike;
66
68
  lockOptions?: LockOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"settings-persistence.d.ts","sourceRoot":"","sources":["../../../source/services/settings/settings-persistence.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGzD,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IAChE,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;CAClE,CAAC;AAMF;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB,EAAE,MAAM,EAAE,CAAC;CAChC,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CA4BrG;AAED,KAAK,gBAAgB,GAAG,CAAC,OAAO,EAAE,YAAY,KAAK,YAAY,CAAC;AAEhE,KAAK,WAAW,GAAG;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAMF,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,MAAM,IAAI,CAsD9F;AAyBD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,UAAU,CAAC;CAC7B,GAAG;IACF,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACjC,GAAG,EAAE,OAAO,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,oBAAoB,CAAC;CACjC,CAwFA;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CASrF;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,gBAAgB,CAAC;IACzB,sBAAsB,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IAC1E,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,GAAG,YAAY,GAAG,SAAS,CAoG3B;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAqBpF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,OAAO,EACf,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,EAChC,MAAM,GAAE,MAAW,GAClB,OAAO,CA0CT"}
1
+ {"version":3,"file":"settings-persistence.d.ts","sourceRoot":"","sources":["../../../source/services/settings/settings-persistence.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAKzD,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IAChE,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;CAClE,CAAC;AAMF;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB,EAAE,MAAM,EAAE,CAAC;CAChC,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CA4BrG;AAED,KAAK,gBAAgB,GAAG,CAAC,OAAO,EAAE,YAAY,KAAK,YAAY,CAAC;AAEhE,KAAK,WAAW,GAAG;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAMF,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,MAAM,IAAI,CAsD9F;AA0BD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,UAAU,CAAC;CAC7B,GAAG;IACF,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACjC,GAAG,EAAE,OAAO,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAsGA;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CASrF;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,gBAAgB,CAAC;IACzB,sEAAsE;IACtE,sBAAsB,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IACzF,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,GAAG,YAAY,GAAG,SAAS,CAoG3B;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAqBpF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,OAAO,EACf,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,EAChC,MAAM,GAAE,MAAW,GAClB,OAAO,CA0CT"}
@@ -3,6 +3,8 @@ import path from 'node:path';
3
3
  import { randomUUID } from 'node:crypto';
4
4
  import deepEqual from 'fast-deep-equal';
5
5
  import { mergeSettings } from './settings-merger.js';
6
+ import { unwrapSchema } from './setting-schema-utils.js';
7
+ import { migratePersistedSelections } from './persisted-selection-migration.js';
6
8
  const LOCK_RETRY_MS = 10;
7
9
  const LOCK_TIMEOUT_MS = 2_000;
8
10
  const STALE_LOCK_MS = 30_000;
@@ -112,9 +114,10 @@ function parsePartialSections(parsed, schema) {
112
114
  if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed))
113
115
  return {};
114
116
  const record = parsed;
115
- if (!('shape' in schema) || !schema.shape || typeof schema.shape !== 'object')
117
+ const objectSchema = unwrapSchema(schema);
118
+ if (!objectSchema?.shape || typeof objectSchema.shape !== 'object')
116
119
  return {};
117
- const shape = schema.shape;
120
+ const shape = objectSchema.shape;
118
121
  const partial = {};
119
122
  for (const [key, sectionSchema] of Object.entries(shape)) {
120
123
  if (!Object.prototype.hasOwnProperty.call(record, key))
@@ -166,8 +169,22 @@ export function loadSettingsFromFile(opts) {
166
169
  });
167
170
  }
168
171
  }
169
- // Validate and parse with Zod
170
- const validated = opts.schema.safeParse(parsed);
172
+ // Both startup and locked save reloads pass this file-only boundary.
173
+ // Keep raw bytes/values available for migration detection and diagnosis.
174
+ let migration;
175
+ try {
176
+ migration = migratePersistedSelections(parsed);
177
+ }
178
+ catch (error) {
179
+ return {
180
+ validated: parsePartialSections(parsed, opts.schema),
181
+ raw: parsed,
182
+ hadErrors: true,
183
+ errorDetails: [...errorDetails, error instanceof Error ? error.message : String(error)],
184
+ recovery,
185
+ };
186
+ }
187
+ const validated = opts.schema.safeParse(migration.value);
171
188
  if (!validated.success) {
172
189
  const schemaIssues = validated.error.issues.map((issue) => `${issue.path.join('.')}: ${issue.message}`);
173
190
  if (!opts.disableLogging) {
@@ -181,7 +198,7 @@ export function loadSettingsFromFile(opts) {
181
198
  // Preserve valid top-level sections; invalid sections fall back to defaults
182
199
  // via mergeSettings. The file is left unchanged for the user to fix.
183
200
  return {
184
- validated: parsePartialSections(parsed, opts.schema),
201
+ validated: parsePartialSections(migration.value, opts.schema),
185
202
  raw: parsed,
186
203
  hadErrors: true,
187
204
  errorDetails: [...errorDetails, ...schemaIssues],
@@ -196,6 +213,7 @@ export function loadSettingsFromFile(opts) {
196
213
  hadErrors: recovery !== undefined,
197
214
  errorDetails: recovery ? errorDetails : undefined,
198
215
  recovery,
216
+ migratedSelections: migration.migrated,
199
217
  };
200
218
  }
201
219
  catch (error) {
@@ -256,7 +274,7 @@ export function saveSettingsToFile(opts) {
256
274
  .map((issue) => `${issue.path.join('.')}: ${issue.message}`)
257
275
  .join('; ')}`);
258
276
  }
259
- const settingsToSave = opts.stripSensitiveSettings(next);
277
+ const settingsToSave = opts.stripSensitiveSettings(next, loaded.raw);
260
278
  const newContent = JSON.stringify(settingsToSave, null, 2);
261
279
  // Only write if file doesn't exist or content has changed. Compare parsed
262
280
  // objects rather than text so formatting never causes a rewrite.
@@ -1 +1 @@
1
- {"version":3,"file":"settings-persistence.js","sourceRoot":"","sources":["../../../source/services/settings/settings-persistence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings-persistence.js","sourceRoot":"","sources":["../../../source/services/settings/settings-persistence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,SAAS,MAAM,iBAAiB,CAAC;AAIxC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAOhF,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,eAAe,GAAG,KAAK,CAAC;AAC9B,MAAM,aAAa,GAAG,MAAM,CAAC;AAc7B;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAe;IACpD,MAAM,mBAAmB,GAAG,MAAM,CAAC;IACnC,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACpD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG;YAAE,SAAS;QAC3C,MAAM,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAEvC,KAAK,IAAI,GAAG,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,GAAG,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC;YACtD,IAAI,EAAE,UAAU,GAAG,mBAAmB;gBAAE,OAAO,IAAI,CAAC;YACpD,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK;gBAAE,SAAS;YACrC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;YAChD,IAAI,CAAC;gBACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBAC9C,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;oBACnE,OAAO;wBACL,SAAS,EAAE,MAAM;wBACjB,MAAM,EAAE,0CAA0C,KAAK,yBAAyB;qBACjF,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,kEAAkE;YACpE,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAUD,SAAS,gBAAgB,CAAC,OAAe;IACvC,OAAO,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,iBAAiB,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;AACnG,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,WAAmB,EAAE,OAAO,GAAgB,EAAE;IAChF,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,aAAa,CAAC;IACjD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,aAAa,CAAC;IACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,eAAe,CAAC,CAAC;IAErE,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACvC,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;YACpG,CAAC;oBAAS,CAAC;gBACT,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACnB,CAAC;YAED,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACnD,MAAM,OAAO,GAAY,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAC7C,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAK,OAA+B,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;wBAChG,OAAO;oBACT,CAAC;oBACD,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAC1B,CAAC;gBAAC,OAAO,KAAc,EAAE,CAAC;oBACxB,MAAM,IAAI,GAAI,KAA+B,CAAC,IAAI,CAAC;oBACnD,IAAI,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,YAAY,WAAW,CAAC,EAAE,CAAC;wBACzD,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACvD,MAAM,KAAK,CAAC;YACd,CAAC;YAED,IAAI,CAAC;gBACH,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,GAAG,OAAO,EAAE,CAAC;oBACzD,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;oBACxB,SAAS;gBACX,CAAC;YACH,CAAC;YAAC,OAAO,SAAkB,EAAE,CAAC;gBAC5B,IAAK,SAAmC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC3D,SAAS;gBACX,CAAC;gBACD,MAAM,SAAS,CAAC;YAClB,CAAC;YAED,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,0CAA0C,QAAQ,EAAE,CAAC,CAAC;YACxE,CAAC;YACD,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,MAAe,EAAE,MAAkB;IAC/D,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IAC9E,MAAM,MAAM,GAAG,MAAiC,CAAC;IAEjD,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,CAAC,YAAY,EAAE,KAAK,IAAI,OAAO,YAAY,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IAC9E,MAAM,KAAK,GAAG,YAAY,CAAC,KAAmC,CAAC;IAE/D,MAAM,OAAO,GAA4B,EAAE,CAAC;IAC5C,KAAK,MAAM,CAAC,GAAG,EAAE,aAAa,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC;YAAE,SAAS;QACjE,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACpD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC;QAC7B,CAAC;IACH,CAAC;IACD,OAAO,OAAgC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAKpC;IAQC,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QAElE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QACtD,CAAC;QAED,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAEvD,IAAI,MAAe,CAAC;QACpB,IAAI,QAA0C,CAAC;QAC/C,IAAI,YAAY,GAAa,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,WAAW,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC3E,MAAM,OAAO,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;YAChD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;oBACzB,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,8BAA8B,EAAE;wBACzD,KAAK,EAAE,WAAW;wBAClB,YAAY;qBACb,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;YAClF,CAAC;YACD,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;YAC3B,YAAY,GAAG,CAAC,WAAW,CAAC,CAAC;YAC7B,QAAQ,GAAG;gBACT,SAAS,EAAE,IAAI;gBACf,MAAM,EAAE,wBAAwB,WAAW,MAAM,OAAO,CAAC,MAAM,EAAE;gBACjE,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAoC,CAAC;aAChF,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACzB,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,gDAAgD,EAAE;oBAC1E,YAAY;oBACZ,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB;iBACpD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,qEAAqE;QACrE,yEAAyE;QACzE,IAAI,SAAwD,CAAC;QAC7D,IAAI,CAAC;YACH,SAAS,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,OAAO;gBACL,SAAS,EAAE,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;gBACpD,GAAG,EAAE,MAAM;gBACX,SAAS,EAAE,IAAI;gBACf,YAAY,EAAE,CAAC,GAAG,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvF,QAAQ;aACT,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAEzD,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACvB,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACxG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACzB,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,uCAAuC,EAAE;oBACjE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;wBAC7C,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;wBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;qBACvB,CAAC,CAAC;iBACJ,CAAC,CAAC;YACL,CAAC;YAED,4EAA4E;YAC5E,qEAAqE;YACrE,OAAO;gBACL,SAAS,EAAE,oBAAoB,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC;gBAC7D,GAAG,EAAE,MAAM;gBACX,SAAS,EAAE,IAAI;gBACf,YAAY,EAAE,CAAC,GAAG,YAAY,EAAE,GAAG,YAAY,CAAC;gBAChD,QAAQ;aACT,CAAC;QACJ,CAAC;QAED,OAAO;YACL,SAAS,EAAE,SAAS,CAAC,IAA6B;YAClD,GAAG,EAAE,MAAM;YACX,yEAAyE;YACzE,0EAA0E;YAC1E,SAAS,EAAE,QAAQ,KAAK,SAAS;YACjC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;YACjD,QAAQ;YACR,kBAAkB,EAAE,SAAS,CAAC,QAAQ;SACvC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,QAAQ,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,8BAA8B,EAAE;gBACzD,KAAK,EAAE,QAAQ;gBACf,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC;aAC3D,CAAC,CAAC;QACL,CAAC;QAED,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC/E,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,6BAA6B,CAAC,WAAmB;IAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,yBAAyB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACrF,IAAI,CAAC;QACH,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QAC5C,OAAO,cAAc,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAUlC;IACC,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QAElE,0BAA0B;QAC1B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACrC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5E,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,oBAAoB,CAAC;gBAClC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CACb,gDAAgD,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,eAAe,EAAE,CACrG,CAAC;YACJ,CAAC;YAED,MAAM,OAAO,GAAG,aAAa,CAC3B,IAAI,CAAC,QAAQ,EACb,MAAM,CAAC,SAAS,EAChB,EAAE,EACF,EAAE,EACF;gBACE,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC,CACF,CAAC;YACF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CACb,sCAAsC,UAAU,CAAC,KAAK,CAAC,MAAM;qBAC1D,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;qBAC3D,IAAI,CAAC,IAAI,CAAC,EAAE,CAChB,CAAC;YACJ,CAAC;YACD,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;YACrE,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAE3D,0EAA0E;YAC1E,iEAAiE;YACjE,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAChC,IAAI,CAAC;oBACH,MAAM,eAAe,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;oBAC/D,MAAM,cAAc,GAAY,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;oBAE5D,IAAI,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC,EAAE,CAAC;wBAC9C,OAAO,IAAI,CAAC;oBACd,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,oEAAoE;oBACpE,mEAAmE;oBACnE,0DAA0D;gBAC5D,CAAC;YACH,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CACxB,IAAI,CAAC,WAAW,EAChB,iBAAiB,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CACxF,CAAC;YACF,IAAI,eAAe,GAAG,KAAK,CAAC;YAC5B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBAC3C,eAAe,GAAG,IAAI,CAAC;gBACvB,IAAI,CAAC;oBACH,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;oBAC9C,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBACvB,CAAC;wBAAS,CAAC;oBACT,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBACvB,CAAC;gBACD,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;gBACtC,eAAe,GAAG,KAAK,CAAC;YAC1B,CAAC;oBAAS,CAAC;gBACT,IAAI,eAAe,EAAE,CAAC;oBACpB,IAAI,CAAC;wBACH,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;oBAC1B,CAAC;oBAAC,MAAM,CAAC;wBACP,gEAAgE;oBAClE,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,WAAW,EAAE,CAAC;QAChB,CAAC;IACH,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,8BAA8B,EAAE;gBACzD,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC7D,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC;aAC3D,CAAC,CAAC;QACL,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAAsB;IAC3D,MAAM,OAAO,GAA0B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE5E,8DAA8D;IAC9D,IAAI,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC;QAC9B,OAAO,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC;QACxC,OAAO,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;QACzC,OAAO,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;QACtC,mDAAmD;QACnD,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvD,OAAO,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;QAClC,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;QAC7B,6EAA6E;IAC/E,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAe,EACf,MAAe,EACf,mBAAgC,EAChC,MAAM,GAAW,EAAE;IAEnB,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IACjF,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAEhF,MAAM,SAAS,GAAG,MAAiC,CAAC;IACpD,MAAM,SAAS,GAAG,MAAiC,CAAC;IAEpD,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC;YAAE,SAAS;QAEpE,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAClD,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,CAAC,GAAG,IAAI,SAAS,CAAC,EAAE,CAAC;YACxB,mEAAmE;YACnE,IAAI,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrC,SAAS;YACX,CAAC;YACD,0EAA0E;YAC1E,IAAI,OAAO,WAAW,KAAK,WAAW,EAAE,CAAC;gBACvC,SAAS;YACX,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAEnC,mCAAmC;QACnC,IACE,WAAW;YACX,OAAO,WAAW,KAAK,QAAQ;YAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;YAC3B,WAAW;YACX,OAAO,WAAW,KAAK,QAAQ;YAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAC3B,CAAC;YACD,IAAI,cAAc,CAAC,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE,CAAC;gBAC3E,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}