@qduc/term2 0.3.1 → 0.5.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 (775) hide show
  1. package/dist/agent.d.ts +5 -0
  2. package/dist/agent.d.ts.map +1 -1
  3. package/dist/agent.js +54 -7
  4. package/dist/agent.js.map +1 -1
  5. package/dist/agent.lite-mode.test.d.ts +2 -0
  6. package/dist/agent.lite-mode.test.d.ts.map +1 -0
  7. package/dist/agent.lite-mode.test.js +39 -0
  8. package/dist/agent.lite-mode.test.js.map +1 -0
  9. package/dist/agent.test.d.ts +2 -0
  10. package/dist/agent.test.d.ts.map +1 -0
  11. package/dist/agent.test.js +198 -0
  12. package/dist/agent.test.js.map +1 -0
  13. package/dist/app.d.ts +5 -0
  14. package/dist/app.d.ts.map +1 -1
  15. package/dist/app.js +36 -14
  16. package/dist/app.js.map +1 -1
  17. package/dist/app.startup-banner.test.d.ts +2 -0
  18. package/dist/app.startup-banner.test.d.ts.map +1 -0
  19. package/dist/app.startup-banner.test.js +11 -0
  20. package/dist/app.startup-banner.test.js.map +1 -0
  21. package/dist/cli.d.ts +1 -1
  22. package/dist/cli.d.ts.map +1 -1
  23. package/dist/cli.js +18 -3
  24. package/dist/cli.js.map +1 -1
  25. package/dist/components/ApprovalPrompt.d.ts.map +1 -1
  26. package/dist/components/ApprovalPrompt.js +13 -12
  27. package/dist/components/ApprovalPrompt.js.map +1 -1
  28. package/dist/components/ApprovalPrompt.test.d.ts +2 -0
  29. package/dist/components/ApprovalPrompt.test.d.ts.map +1 -0
  30. package/dist/components/ApprovalPrompt.test.js +23 -0
  31. package/dist/components/ApprovalPrompt.test.js.map +1 -0
  32. package/dist/components/Banner.js +1 -1
  33. package/dist/components/Banner.js.map +1 -1
  34. package/dist/components/BottomArea.d.ts.map +1 -1
  35. package/dist/components/BottomArea.js +3 -4
  36. package/dist/components/BottomArea.js.map +1 -1
  37. package/dist/components/ChatMessage.d.ts +1 -0
  38. package/dist/components/ChatMessage.d.ts.map +1 -1
  39. package/dist/components/ChatMessage.js +3 -2
  40. package/dist/components/ChatMessage.js.map +1 -1
  41. package/dist/components/CommandMessage.d.ts.map +1 -1
  42. package/dist/components/CommandMessage.js +54 -8
  43. package/dist/components/CommandMessage.js.map +1 -1
  44. package/dist/components/CommandMessage.test.js +90 -0
  45. package/dist/components/CommandMessage.test.js.map +1 -1
  46. package/dist/components/Input/PopupManager.d.ts +3 -0
  47. package/dist/components/Input/PopupManager.d.ts.map +1 -1
  48. package/dist/components/Input/PopupManager.js +2 -2
  49. package/dist/components/Input/PopupManager.js.map +1 -1
  50. package/dist/components/Input/insertions.d.ts.map +1 -1
  51. package/dist/components/Input/insertions.js +2 -2
  52. package/dist/components/Input/insertions.js.map +1 -1
  53. package/dist/components/Input/popup-key-navigation.d.ts +18 -0
  54. package/dist/components/Input/popup-key-navigation.d.ts.map +1 -0
  55. package/dist/components/Input/popup-key-navigation.js +16 -0
  56. package/dist/components/Input/popup-key-navigation.js.map +1 -0
  57. package/dist/components/Input/popup-key-navigation.test.d.ts +2 -0
  58. package/dist/components/Input/popup-key-navigation.test.d.ts.map +1 -0
  59. package/dist/components/Input/popup-key-navigation.test.js +73 -0
  60. package/dist/components/Input/popup-key-navigation.test.js.map +1 -0
  61. package/dist/components/Input/popup-props.d.ts.map +1 -1
  62. package/dist/components/Input/popup-props.js +2 -0
  63. package/dist/components/Input/popup-props.js.map +1 -1
  64. package/dist/components/Input/triggers.d.ts +1 -0
  65. package/dist/components/Input/triggers.d.ts.map +1 -1
  66. package/dist/components/Input/triggers.js +1 -0
  67. package/dist/components/Input/triggers.js.map +1 -1
  68. package/dist/components/InputBox.d.ts.map +1 -1
  69. package/dist/components/InputBox.js +130 -6
  70. package/dist/components/InputBox.js.map +1 -1
  71. package/dist/components/InputBox.test.js +42 -1
  72. package/dist/components/InputBox.test.js.map +1 -1
  73. package/dist/components/LiveResponse.d.ts +1 -3
  74. package/dist/components/LiveResponse.d.ts.map +1 -1
  75. package/dist/components/LiveResponse.js +5 -6
  76. package/dist/components/LiveResponse.js.map +1 -1
  77. package/dist/components/LiveResponse.test.d.ts +2 -0
  78. package/dist/components/LiveResponse.test.d.ts.map +1 -0
  79. package/dist/components/LiveResponse.test.js +13 -0
  80. package/dist/components/LiveResponse.test.js.map +1 -0
  81. package/dist/components/MarkdownRenderer.d.ts +5 -2
  82. package/dist/components/MarkdownRenderer.d.ts.map +1 -1
  83. package/dist/components/MarkdownRenderer.js +77 -49
  84. package/dist/components/MarkdownRenderer.js.map +1 -1
  85. package/dist/components/MessageList.d.ts +7 -1
  86. package/dist/components/MessageList.d.ts.map +1 -1
  87. package/dist/components/MessageList.js +150 -23
  88. package/dist/components/MessageList.js.map +1 -1
  89. package/dist/components/MessageList.test.js +289 -4
  90. package/dist/components/MessageList.test.js.map +1 -1
  91. package/dist/components/ModelSelectionMenu.d.ts.map +1 -1
  92. package/dist/components/ModelSelectionMenu.error-tabs.test.d.ts +2 -0
  93. package/dist/components/ModelSelectionMenu.error-tabs.test.d.ts.map +1 -0
  94. package/dist/components/ModelSelectionMenu.error-tabs.test.js +18 -0
  95. package/dist/components/ModelSelectionMenu.error-tabs.test.js.map +1 -0
  96. package/dist/components/ModelSelectionMenu.js +54 -14
  97. package/dist/components/ModelSelectionMenu.js.map +1 -1
  98. package/dist/components/PathSelectionMenu.d.ts +2 -0
  99. package/dist/components/PathSelectionMenu.d.ts.map +1 -1
  100. package/dist/components/PathSelectionMenu.js +31 -12
  101. package/dist/components/PathSelectionMenu.js.map +1 -1
  102. package/dist/components/SettingsSelectionMenu.d.ts +1 -0
  103. package/dist/components/SettingsSelectionMenu.d.ts.map +1 -1
  104. package/dist/components/SettingsSelectionMenu.js +32 -23
  105. package/dist/components/SettingsSelectionMenu.js.map +1 -1
  106. package/dist/components/SettingsSelectionMenu.scroll.test.d.ts +2 -0
  107. package/dist/components/SettingsSelectionMenu.scroll.test.d.ts.map +1 -0
  108. package/dist/components/SettingsSelectionMenu.scroll.test.js +23 -0
  109. package/dist/components/SettingsSelectionMenu.scroll.test.js.map +1 -0
  110. package/dist/components/StatusBar.d.ts.map +1 -1
  111. package/dist/components/StatusBar.js +15 -15
  112. package/dist/components/StatusBar.js.map +1 -1
  113. package/dist/components/StatusBar.test.d.ts +2 -0
  114. package/dist/components/StatusBar.test.d.ts.map +1 -0
  115. package/dist/components/StatusBar.test.js +30 -0
  116. package/dist/components/StatusBar.test.js.map +1 -0
  117. package/dist/components/SubagentActivityMessage.d.ts +12 -0
  118. package/dist/components/SubagentActivityMessage.d.ts.map +1 -0
  119. package/dist/components/SubagentActivityMessage.js +15 -0
  120. package/dist/components/SubagentActivityMessage.js.map +1 -0
  121. package/dist/components/TextInput.d.ts +42 -0
  122. package/dist/components/TextInput.d.ts.map +1 -0
  123. package/dist/components/TextInput.js +398 -0
  124. package/dist/components/TextInput.js.map +1 -0
  125. package/dist/components/TextInput.test.d.ts +2 -0
  126. package/dist/components/TextInput.test.d.ts.map +1 -0
  127. package/dist/components/TextInput.test.js +75 -0
  128. package/dist/components/TextInput.test.js.map +1 -0
  129. package/dist/components/theme.d.ts +8 -0
  130. package/dist/components/theme.d.ts.map +1 -0
  131. package/dist/components/theme.js +22 -0
  132. package/dist/components/theme.js.map +1 -0
  133. package/dist/contracts/conversation.d.ts +1 -0
  134. package/dist/contracts/conversation.d.ts.map +1 -1
  135. package/dist/debug_ask_mentor.d.ts +2 -0
  136. package/dist/debug_ask_mentor.d.ts.map +1 -0
  137. package/dist/debug_ask_mentor.js +73 -0
  138. package/dist/debug_ask_mentor.js.map +1 -0
  139. package/dist/env-setup.d.ts +2 -0
  140. package/dist/env-setup.d.ts.map +1 -0
  141. package/dist/env-setup.js +7 -0
  142. package/dist/env-setup.js.map +1 -0
  143. package/dist/env-setup.test.d.ts +2 -0
  144. package/dist/env-setup.test.d.ts.map +1 -0
  145. package/dist/env-setup.test.js +6 -0
  146. package/dist/env-setup.test.js.map +1 -0
  147. package/dist/hooks/path-completion-filter.d.ts +4 -0
  148. package/dist/hooks/path-completion-filter.d.ts.map +1 -0
  149. package/dist/hooks/path-completion-filter.js +27 -0
  150. package/dist/hooks/path-completion-filter.js.map +1 -0
  151. package/dist/hooks/path-completion-filter.test.d.ts +2 -0
  152. package/dist/hooks/path-completion-filter.test.d.ts.map +1 -0
  153. package/dist/hooks/path-completion-filter.test.js +100 -0
  154. package/dist/hooks/path-completion-filter.test.js.map +1 -0
  155. package/dist/hooks/use-app-commands.d.ts +9 -1
  156. package/dist/hooks/use-app-commands.d.ts.map +1 -1
  157. package/dist/hooks/use-app-commands.js +97 -26
  158. package/dist/hooks/use-app-commands.js.map +1 -1
  159. package/dist/hooks/use-app-commands.test.js +53 -3
  160. package/dist/hooks/use-app-commands.test.js.map +1 -1
  161. package/dist/hooks/use-conversation.d.ts +14 -8
  162. package/dist/hooks/use-conversation.d.ts.map +1 -1
  163. package/dist/hooks/use-conversation.js +59 -61
  164. package/dist/hooks/use-conversation.js.map +1 -1
  165. package/dist/hooks/use-mode-handlers.d.ts +3 -1
  166. package/dist/hooks/use-mode-handlers.d.ts.map +1 -1
  167. package/dist/hooks/use-mode-handlers.js +8 -0
  168. package/dist/hooks/use-mode-handlers.js.map +1 -1
  169. package/dist/hooks/use-model-selection.d.ts +1 -1
  170. package/dist/hooks/use-model-selection.d.ts.map +1 -1
  171. package/dist/hooks/use-model-selection.js +31 -16
  172. package/dist/hooks/use-model-selection.js.map +1 -1
  173. package/dist/hooks/use-model-selection.test.js +66 -1
  174. package/dist/hooks/use-model-selection.test.js.map +1 -1
  175. package/dist/hooks/use-path-completion.d.ts +1 -0
  176. package/dist/hooks/use-path-completion.d.ts.map +1 -1
  177. package/dist/hooks/use-path-completion.js +22 -17
  178. package/dist/hooks/use-path-completion.js.map +1 -1
  179. package/dist/hooks/use-settings-completion.d.ts +2 -2
  180. package/dist/hooks/use-settings-completion.d.ts.map +1 -1
  181. package/dist/hooks/use-settings-completion.js +53 -18
  182. package/dist/hooks/use-settings-completion.js.map +1 -1
  183. package/dist/hooks/use-settings-completion.scroll.test.d.ts +2 -0
  184. package/dist/hooks/use-settings-completion.scroll.test.d.ts.map +1 -0
  185. package/dist/hooks/use-settings-completion.scroll.test.js +55 -0
  186. package/dist/hooks/use-settings-completion.scroll.test.js.map +1 -0
  187. package/dist/hooks/use-settings-completion.test.js +69 -79
  188. package/dist/hooks/use-settings-completion.test.js.map +1 -1
  189. package/dist/hooks/use-settings-value-completion.d.ts +1 -2
  190. package/dist/hooks/use-settings-value-completion.d.ts.map +1 -1
  191. package/dist/hooks/use-settings-value-completion.js +47 -19
  192. package/dist/hooks/use-settings-value-completion.js.map +1 -1
  193. package/dist/hooks/use-settings-value-completion.test.js +5 -18
  194. package/dist/hooks/use-settings-value-completion.test.js.map +1 -1
  195. package/dist/hooks/use-slash-commands.d.ts +7 -0
  196. package/dist/hooks/use-slash-commands.d.ts.map +1 -1
  197. package/dist/hooks/use-slash-commands.js +20 -13
  198. package/dist/hooks/use-slash-commands.js.map +1 -1
  199. package/dist/hooks/use-slash-commands.test.js +52 -1
  200. package/dist/hooks/use-slash-commands.test.js.map +1 -1
  201. package/dist/hooks/use-trigger-detection.d.ts.map +1 -1
  202. package/dist/hooks/use-trigger-detection.js +7 -3
  203. package/dist/hooks/use-trigger-detection.js.map +1 -1
  204. package/dist/hooks/use-trigger-detection.test.d.ts +2 -0
  205. package/dist/hooks/use-trigger-detection.test.d.ts.map +1 -0
  206. package/dist/hooks/use-trigger-detection.test.js +59 -0
  207. package/dist/hooks/use-trigger-detection.test.js.map +1 -0
  208. package/dist/lib/editor-impl.test.js +63 -50
  209. package/dist/lib/editor-impl.test.js.map +1 -1
  210. package/dist/lib/openai-agent-client.d.ts +28 -0
  211. package/dist/lib/openai-agent-client.d.ts.map +1 -1
  212. package/dist/lib/openai-agent-client.js +82 -143
  213. package/dist/lib/openai-agent-client.js.map +1 -1
  214. package/dist/lib/openai-agent-client.test.js +70 -0
  215. package/dist/lib/openai-agent-client.test.js.map +1 -1
  216. package/dist/lib/shell.d.ts +7 -0
  217. package/dist/lib/shell.d.ts.map +1 -0
  218. package/dist/lib/shell.js +56 -0
  219. package/dist/lib/shell.js.map +1 -0
  220. package/dist/lib/tool-invoke.d.ts +3 -2
  221. package/dist/lib/tool-invoke.d.ts.map +1 -1
  222. package/dist/lib/tool-invoke.js +69 -4
  223. package/dist/lib/tool-invoke.js.map +1 -1
  224. package/dist/lib/tool-invoke.test.js +25 -0
  225. package/dist/lib/tool-invoke.test.js.map +1 -1
  226. package/dist/modes/companion/command-index.d.ts +26 -0
  227. package/dist/modes/companion/command-index.d.ts.map +1 -0
  228. package/dist/modes/companion/command-index.js +50 -0
  229. package/dist/modes/companion/command-index.js.map +1 -0
  230. package/dist/modes/companion/command-index.test.d.ts +2 -0
  231. package/dist/modes/companion/command-index.test.d.ts.map +1 -0
  232. package/dist/modes/companion/command-index.test.js +86 -0
  233. package/dist/modes/companion/command-index.test.js.map +1 -0
  234. package/dist/modes/companion/companion-app.d.ts +12 -0
  235. package/dist/modes/companion/companion-app.d.ts.map +1 -0
  236. package/dist/modes/companion/companion-app.js +297 -0
  237. package/dist/modes/companion/companion-app.js.map +1 -0
  238. package/dist/modes/companion/companion-session.d.ts +63 -0
  239. package/dist/modes/companion/companion-session.d.ts.map +1 -0
  240. package/dist/modes/companion/companion-session.js +146 -0
  241. package/dist/modes/companion/companion-session.js.map +1 -0
  242. package/dist/modes/companion/companion-session.test.d.ts +2 -0
  243. package/dist/modes/companion/companion-session.test.d.ts.map +1 -0
  244. package/dist/modes/companion/companion-session.test.js +28 -0
  245. package/dist/modes/companion/companion-session.test.js.map +1 -0
  246. package/dist/modes/companion/components/status-bar.d.ts +13 -0
  247. package/dist/modes/companion/components/status-bar.d.ts.map +1 -0
  248. package/dist/modes/companion/components/status-bar.js +26 -0
  249. package/dist/modes/companion/components/status-bar.js.map +1 -0
  250. package/dist/modes/companion/context-buffer.d.ts +65 -0
  251. package/dist/modes/companion/context-buffer.d.ts.map +1 -0
  252. package/dist/modes/companion/context-buffer.js +156 -0
  253. package/dist/modes/companion/context-buffer.js.map +1 -0
  254. package/dist/modes/companion/context-buffer.test.d.ts +2 -0
  255. package/dist/modes/companion/context-buffer.test.d.ts.map +1 -0
  256. package/dist/modes/companion/context-buffer.test.js +154 -0
  257. package/dist/modes/companion/context-buffer.test.js.map +1 -0
  258. package/dist/modes/companion/event-detector.d.ts +46 -0
  259. package/dist/modes/companion/event-detector.d.ts.map +1 -0
  260. package/dist/modes/companion/event-detector.js +169 -0
  261. package/dist/modes/companion/event-detector.js.map +1 -0
  262. package/dist/modes/companion/event-detector.test.d.ts +2 -0
  263. package/dist/modes/companion/event-detector.test.d.ts.map +1 -0
  264. package/dist/modes/companion/event-detector.test.js +121 -0
  265. package/dist/modes/companion/event-detector.test.js.map +1 -0
  266. package/dist/modes/companion/index.d.ts +33 -0
  267. package/dist/modes/companion/index.d.ts.map +1 -0
  268. package/dist/modes/companion/index.js +21 -0
  269. package/dist/modes/companion/index.js.map +1 -0
  270. package/dist/modes/companion/input-key-mapper.d.ts +3 -0
  271. package/dist/modes/companion/input-key-mapper.d.ts.map +1 -0
  272. package/dist/modes/companion/input-key-mapper.js +31 -0
  273. package/dist/modes/companion/input-key-mapper.js.map +1 -0
  274. package/dist/modes/companion/input-key-mapper.test.d.ts +2 -0
  275. package/dist/modes/companion/input-key-mapper.test.d.ts.map +1 -0
  276. package/dist/modes/companion/input-key-mapper.test.js +26 -0
  277. package/dist/modes/companion/input-key-mapper.test.js.map +1 -0
  278. package/dist/modes/companion/input-parser.d.ts +53 -0
  279. package/dist/modes/companion/input-parser.d.ts.map +1 -0
  280. package/dist/modes/companion/input-parser.js +114 -0
  281. package/dist/modes/companion/input-parser.js.map +1 -0
  282. package/dist/modes/companion/input-parser.test.d.ts +2 -0
  283. package/dist/modes/companion/input-parser.test.d.ts.map +1 -0
  284. package/dist/modes/companion/input-parser.test.js +123 -0
  285. package/dist/modes/companion/input-parser.test.js.map +1 -0
  286. package/dist/modes/companion/mode-manager.d.ts +41 -0
  287. package/dist/modes/companion/mode-manager.d.ts.map +1 -0
  288. package/dist/modes/companion/mode-manager.js +56 -0
  289. package/dist/modes/companion/mode-manager.js.map +1 -0
  290. package/dist/modes/companion/mode-manager.test.d.ts +2 -0
  291. package/dist/modes/companion/mode-manager.test.d.ts.map +1 -0
  292. package/dist/modes/companion/mode-manager.test.js +65 -0
  293. package/dist/modes/companion/mode-manager.test.js.map +1 -0
  294. package/dist/modes/companion/output-classifier.d.ts +15 -0
  295. package/dist/modes/companion/output-classifier.d.ts.map +1 -0
  296. package/dist/modes/companion/output-classifier.js +77 -0
  297. package/dist/modes/companion/output-classifier.js.map +1 -0
  298. package/dist/modes/companion/output-classifier.test.d.ts +2 -0
  299. package/dist/modes/companion/output-classifier.test.d.ts.map +1 -0
  300. package/dist/modes/companion/output-classifier.test.js +133 -0
  301. package/dist/modes/companion/output-classifier.test.js.map +1 -0
  302. package/dist/modes/companion/pty-wrapper.d.ts +46 -0
  303. package/dist/modes/companion/pty-wrapper.d.ts.map +1 -0
  304. package/dist/modes/companion/pty-wrapper.js +143 -0
  305. package/dist/modes/companion/pty-wrapper.js.map +1 -0
  306. package/dist/modes/companion/safety-classifier.d.ts +31 -0
  307. package/dist/modes/companion/safety-classifier.d.ts.map +1 -0
  308. package/dist/modes/companion/safety-classifier.js +140 -0
  309. package/dist/modes/companion/safety-classifier.js.map +1 -0
  310. package/dist/modes/companion/safety-classifier.test.d.ts +2 -0
  311. package/dist/modes/companion/safety-classifier.test.d.ts.map +1 -0
  312. package/dist/modes/companion/safety-classifier.test.js +151 -0
  313. package/dist/modes/companion/safety-classifier.test.js.map +1 -0
  314. package/dist/modes/companion/summarizer.d.ts +24 -0
  315. package/dist/modes/companion/summarizer.d.ts.map +1 -0
  316. package/dist/modes/companion/summarizer.js +132 -0
  317. package/dist/modes/companion/summarizer.js.map +1 -0
  318. package/dist/modes/companion/terminal-history.d.ts +27 -0
  319. package/dist/modes/companion/terminal-history.d.ts.map +1 -0
  320. package/dist/modes/companion/terminal-history.js +142 -0
  321. package/dist/modes/companion/terminal-history.js.map +1 -0
  322. package/dist/non-interactive.d.ts.map +1 -1
  323. package/dist/non-interactive.js +3 -0
  324. package/dist/non-interactive.js.map +1 -1
  325. package/dist/prompts/gpt-5-modern.md +66 -0
  326. package/dist/prompts/gpt-5.md +7 -0
  327. package/dist/prompts/lite.md +10 -27
  328. package/dist/prompts/prompt-selector.js +2 -2
  329. package/dist/prompts/prompt-selector.js.map +1 -1
  330. package/dist/prompts/prompt-selector.test.js +7 -2
  331. package/dist/prompts/prompt-selector.test.js.map +1 -1
  332. package/dist/prompts/prompt-selector.test.ts +22 -2
  333. package/dist/prompts/prompt-selector.ts +2 -2
  334. package/dist/prompts/search-via-shell.d.ts +7 -0
  335. package/dist/prompts/search-via-shell.d.ts.map +1 -0
  336. package/dist/prompts/search-via-shell.js +59 -0
  337. package/dist/prompts/search-via-shell.js.map +1 -0
  338. package/dist/prompts/search-via-shell.test.d.ts +2 -0
  339. package/dist/prompts/search-via-shell.test.d.ts.map +1 -0
  340. package/dist/prompts/search-via-shell.test.js +40 -0
  341. package/dist/prompts/search-via-shell.test.js.map +1 -0
  342. package/dist/prompts/search-via-shell.test.ts +47 -0
  343. package/dist/prompts/search-via-shell.ts +71 -0
  344. package/dist/prompts/simple-mentor.md +215 -0
  345. package/dist/prompts/simple.md +40 -186
  346. package/dist/prompts/subagents/explorer.md +42 -0
  347. package/dist/prompts/subagents/mentor.md +16 -0
  348. package/dist/prompts/subagents/researcher.md +40 -0
  349. package/dist/prompts/subagents/worker.md +41 -0
  350. package/dist/providers/ai-sdk-agents-adapter.d.ts +7 -0
  351. package/dist/providers/ai-sdk-agents-adapter.d.ts.map +1 -0
  352. package/dist/providers/ai-sdk-agents-adapter.js +80 -0
  353. package/dist/providers/ai-sdk-agents-adapter.js.map +1 -0
  354. package/dist/providers/ai-sdk-agents-adapter.test.d.ts +2 -0
  355. package/dist/providers/ai-sdk-agents-adapter.test.d.ts.map +1 -0
  356. package/dist/providers/ai-sdk-agents-adapter.test.js +158 -0
  357. package/dist/providers/ai-sdk-agents-adapter.test.js.map +1 -0
  358. package/dist/providers/ai-sdk-anthropic.provider.d.ts +14 -0
  359. package/dist/providers/ai-sdk-anthropic.provider.d.ts.map +1 -0
  360. package/dist/providers/ai-sdk-anthropic.provider.js +18 -0
  361. package/dist/providers/ai-sdk-anthropic.provider.js.map +1 -0
  362. package/dist/providers/ai-sdk-google.provider.d.ts +14 -0
  363. package/dist/providers/ai-sdk-google.provider.d.ts.map +1 -0
  364. package/dist/providers/ai-sdk-google.provider.js +18 -0
  365. package/dist/providers/ai-sdk-google.provider.js.map +1 -0
  366. package/dist/providers/ai-sdk-logging-fetch.d.ts +11 -0
  367. package/dist/providers/ai-sdk-logging-fetch.d.ts.map +1 -0
  368. package/dist/providers/ai-sdk-logging-fetch.js +127 -0
  369. package/dist/providers/ai-sdk-logging-fetch.js.map +1 -0
  370. package/dist/providers/ai-sdk-logging-fetch.test.d.ts +2 -0
  371. package/dist/providers/ai-sdk-logging-fetch.test.d.ts.map +1 -0
  372. package/dist/providers/ai-sdk-logging-fetch.test.js +107 -0
  373. package/dist/providers/ai-sdk-logging-fetch.test.js.map +1 -0
  374. package/dist/providers/ai-sdk-message-normalizer.d.ts +2 -2
  375. package/dist/providers/ai-sdk-message-normalizer.d.ts.map +1 -1
  376. package/dist/providers/ai-sdk-message-normalizer.js +92 -47
  377. package/dist/providers/ai-sdk-message-normalizer.js.map +1 -1
  378. package/dist/providers/ai-sdk-message-normalizer.test.js +256 -16
  379. package/dist/providers/ai-sdk-message-normalizer.test.js.map +1 -1
  380. package/dist/providers/ai-sdk-openai-compatible.provider.d.ts +4 -0
  381. package/dist/providers/ai-sdk-openai-compatible.provider.d.ts.map +1 -1
  382. package/dist/providers/ai-sdk-openai-compatible.provider.js +10 -6
  383. package/dist/providers/ai-sdk-openai-compatible.provider.js.map +1 -1
  384. package/dist/providers/ai-sdk-openai-compatible.provider.test.js +144 -1
  385. package/dist/providers/ai-sdk-openai-compatible.provider.test.js.map +1 -1
  386. package/dist/providers/ai-sdk-openai.provider.d.ts +14 -0
  387. package/dist/providers/ai-sdk-openai.provider.d.ts.map +1 -0
  388. package/dist/providers/ai-sdk-openai.provider.js +18 -0
  389. package/dist/providers/ai-sdk-openai.provider.js.map +1 -0
  390. package/dist/providers/ai-sdk-openrouter.provider.d.ts +1 -1
  391. package/dist/providers/ai-sdk-openrouter.provider.d.ts.map +1 -1
  392. package/dist/providers/ai-sdk-openrouter.provider.js +2 -3
  393. package/dist/providers/ai-sdk-openrouter.provider.js.map +1 -1
  394. package/dist/providers/ai-sdk-openrouter.provider.test.js +23 -0
  395. package/dist/providers/ai-sdk-openrouter.provider.test.js.map +1 -1
  396. package/dist/providers/common/openai-compatible-messages.d.ts +1 -2
  397. package/dist/providers/common/openai-compatible-messages.d.ts.map +1 -1
  398. package/dist/providers/common/openai-compatible-messages.js +47 -48
  399. package/dist/providers/common/openai-compatible-messages.js.map +1 -1
  400. package/dist/providers/common/openai-compatible-messages.test.js +134 -1
  401. package/dist/providers/common/openai-compatible-messages.test.js.map +1 -1
  402. package/dist/providers/custom-provider-adapter.test.d.ts +2 -0
  403. package/dist/providers/custom-provider-adapter.test.d.ts.map +1 -0
  404. package/dist/providers/custom-provider-adapter.test.js +52 -0
  405. package/dist/providers/custom-provider-adapter.test.js.map +1 -0
  406. package/dist/providers/github-copilot/converters.d.ts +45 -0
  407. package/dist/providers/github-copilot/converters.d.ts.map +1 -0
  408. package/dist/providers/github-copilot/converters.js +118 -0
  409. package/dist/providers/github-copilot/converters.js.map +1 -0
  410. package/dist/providers/github-copilot/converters.test.d.ts +2 -0
  411. package/dist/providers/github-copilot/converters.test.d.ts.map +1 -0
  412. package/dist/providers/github-copilot/converters.test.js +162 -0
  413. package/dist/providers/github-copilot/converters.test.js.map +1 -0
  414. package/dist/providers/github-copilot/github-copilot.provider.d.ts +2 -0
  415. package/dist/providers/github-copilot/github-copilot.provider.d.ts.map +1 -0
  416. package/dist/providers/github-copilot/github-copilot.provider.js +75 -0
  417. package/dist/providers/github-copilot/github-copilot.provider.js.map +1 -0
  418. package/dist/providers/github-copilot/github-copilot.provider.test.d.ts +2 -0
  419. package/dist/providers/github-copilot/github-copilot.provider.test.d.ts.map +1 -0
  420. package/dist/providers/github-copilot/github-copilot.provider.test.js +26 -0
  421. package/dist/providers/github-copilot/github-copilot.provider.test.js.map +1 -0
  422. package/dist/providers/github-copilot/index.d.ts +4 -0
  423. package/dist/providers/github-copilot/index.d.ts.map +1 -0
  424. package/dist/providers/github-copilot/index.js +4 -0
  425. package/dist/providers/github-copilot/index.js.map +1 -0
  426. package/dist/providers/github-copilot/model.d.ts +24 -0
  427. package/dist/providers/github-copilot/model.d.ts.map +1 -0
  428. package/dist/providers/github-copilot/model.delta.test.d.ts +2 -0
  429. package/dist/providers/github-copilot/model.delta.test.d.ts.map +1 -0
  430. package/dist/providers/github-copilot/model.delta.test.js +15 -0
  431. package/dist/providers/github-copilot/model.delta.test.js.map +1 -0
  432. package/dist/providers/github-copilot/model.js +498 -0
  433. package/dist/providers/github-copilot/model.js.map +1 -0
  434. package/dist/providers/github-copilot/model.test.d.ts +2 -0
  435. package/dist/providers/github-copilot/model.test.d.ts.map +1 -0
  436. package/dist/providers/github-copilot/model.test.js +63 -0
  437. package/dist/providers/github-copilot/model.test.js.map +1 -0
  438. package/dist/providers/github-copilot/provider.d.ts +15 -0
  439. package/dist/providers/github-copilot/provider.d.ts.map +1 -0
  440. package/dist/providers/github-copilot/provider.js +25 -0
  441. package/dist/providers/github-copilot/provider.js.map +1 -0
  442. package/dist/providers/github-copilot/provider.test.d.ts +2 -0
  443. package/dist/providers/github-copilot/provider.test.d.ts.map +1 -0
  444. package/dist/providers/github-copilot/provider.test.js +52 -0
  445. package/dist/providers/github-copilot/provider.test.js.map +1 -0
  446. package/dist/providers/github-copilot/utils.d.ts +20 -0
  447. package/dist/providers/github-copilot/utils.d.ts.map +1 -0
  448. package/dist/providers/github-copilot/utils.js +142 -0
  449. package/dist/providers/github-copilot/utils.js.map +1 -0
  450. package/dist/providers/github-copilot/utils.test.d.ts +2 -0
  451. package/dist/providers/github-copilot/utils.test.d.ts.map +1 -0
  452. package/dist/providers/github-copilot/utils.test.js +21 -0
  453. package/dist/providers/github-copilot/utils.test.js.map +1 -0
  454. package/dist/providers/openai-compatible-behavior-gate.test.d.ts +2 -0
  455. package/dist/providers/openai-compatible-behavior-gate.test.d.ts.map +1 -0
  456. package/dist/providers/openai-compatible-behavior-gate.test.js +257 -0
  457. package/dist/providers/openai-compatible-behavior-gate.test.js.map +1 -0
  458. package/dist/providers/openai-compatible.provider.d.ts +10 -1
  459. package/dist/providers/openai-compatible.provider.d.ts.map +1 -1
  460. package/dist/providers/openai-compatible.provider.js +341 -31
  461. package/dist/providers/openai-compatible.provider.js.map +1 -1
  462. package/dist/providers/openai-compatible.provider.test.d.ts +2 -0
  463. package/dist/providers/openai-compatible.provider.test.d.ts.map +1 -0
  464. package/dist/providers/openai-compatible.provider.test.js +462 -0
  465. package/dist/providers/openai-compatible.provider.test.js.map +1 -0
  466. package/dist/providers/openai.provider.js +2 -1
  467. package/dist/providers/openai.provider.js.map +1 -1
  468. package/dist/providers/openrouter.provider.js +28 -2
  469. package/dist/providers/openrouter.provider.js.map +1 -1
  470. package/dist/safety-checker.js +57 -0
  471. package/dist/scripts/eval-auto-approval/dataset.d.ts +1 -1
  472. package/dist/services/approval-rejection-interceptor.test.js +5 -0
  473. package/dist/services/approval-rejection-interceptor.test.js.map +1 -1
  474. package/dist/services/check_mock.d.ts +2 -0
  475. package/dist/services/check_mock.d.ts.map +1 -0
  476. package/dist/services/check_mock.js +22 -0
  477. package/dist/services/check_mock.js.map +1 -0
  478. package/dist/services/conversation-events.d.ts +28 -1
  479. package/dist/services/conversation-events.d.ts.map +1 -1
  480. package/dist/services/conversation-result-builder.d.ts.map +1 -1
  481. package/dist/services/conversation-result-builder.js +11 -1
  482. package/dist/services/conversation-result-builder.js.map +1 -1
  483. package/dist/services/conversation-result-builder.test.js +72 -0
  484. package/dist/services/conversation-result-builder.test.js.map +1 -1
  485. package/dist/services/conversation-service.test.d.ts +2 -0
  486. package/dist/services/conversation-service.test.d.ts.map +1 -0
  487. package/dist/services/conversation-service.test.js +156 -0
  488. package/dist/services/conversation-service.test.js.map +1 -0
  489. package/dist/services/conversation-session.auto-approval.test.js +52 -0
  490. package/dist/services/conversation-session.auto-approval.test.js.map +1 -1
  491. package/dist/services/conversation-session.d.ts +2 -1
  492. package/dist/services/conversation-session.d.ts.map +1 -1
  493. package/dist/services/conversation-session.js +94 -31
  494. package/dist/services/conversation-session.js.map +1 -1
  495. package/dist/services/file-service.js +1 -1
  496. package/dist/services/file-service.js.map +1 -1
  497. package/dist/services/interruption-info.js +1 -1
  498. package/dist/services/interruption-info.js.map +1 -1
  499. package/dist/services/interruption-info.test.js +12 -0
  500. package/dist/services/interruption-info.test.js.map +1 -1
  501. package/dist/services/logging-contract.d.ts +3 -3
  502. package/dist/services/logging-service.d.ts.map +1 -1
  503. package/dist/services/logging-service.js +18 -1
  504. package/dist/services/logging-service.js.map +1 -1
  505. package/dist/services/model-service.d.ts.map +1 -1
  506. package/dist/services/model-service.js +16 -8
  507. package/dist/services/model-service.js.map +1 -1
  508. package/dist/services/model-service.test.js +67 -1
  509. package/dist/services/model-service.test.js.map +1 -1
  510. package/dist/services/rtk-service.d.ts +23 -0
  511. package/dist/services/rtk-service.d.ts.map +1 -0
  512. package/dist/services/rtk-service.js +260 -0
  513. package/dist/services/rtk-service.js.map +1 -0
  514. package/dist/services/rtk-service.test.d.ts +2 -0
  515. package/dist/services/rtk-service.test.d.ts.map +1 -0
  516. package/dist/services/rtk-service.test.js +274 -0
  517. package/dist/services/rtk-service.test.js.map +1 -0
  518. package/dist/services/settings-persistence.d.ts +1 -0
  519. package/dist/services/settings-persistence.d.ts.map +1 -1
  520. package/dist/services/settings-persistence.js +28 -5
  521. package/dist/services/settings-persistence.js.map +1 -1
  522. package/dist/services/settings-persistence.test.js +55 -3
  523. package/dist/services/settings-persistence.test.js.map +1 -1
  524. package/dist/services/settings-schema.d.ts +55 -16
  525. package/dist/services/settings-schema.d.ts.map +1 -1
  526. package/dist/services/settings-schema.js +35 -4
  527. package/dist/services/settings-schema.js.map +1 -1
  528. package/dist/services/settings-schema.test.d.ts +2 -0
  529. package/dist/services/settings-schema.test.d.ts.map +1 -0
  530. package/dist/services/settings-schema.test.js +77 -0
  531. package/dist/services/settings-schema.test.js.map +1 -0
  532. package/dist/services/settings-service.d.ts.map +1 -1
  533. package/dist/services/settings-service.js +7 -4
  534. package/dist/services/settings-service.js.map +1 -1
  535. package/dist/services/settings-sources.d.ts.map +1 -1
  536. package/dist/services/settings-sources.js +1 -0
  537. package/dist/services/settings-sources.js.map +1 -1
  538. package/dist/services/shell-auto-approval-evaluator.d.ts +1 -1
  539. package/dist/services/shell-auto-approval-evaluator.d.ts.map +1 -1
  540. package/dist/services/shell-auto-approval-evaluator.js +8 -2
  541. package/dist/services/shell-auto-approval-evaluator.js.map +1 -1
  542. package/dist/services/stream-event-processor.d.ts.map +1 -1
  543. package/dist/services/stream-event-processor.js +27 -14
  544. package/dist/services/stream-event-processor.js.map +1 -1
  545. package/dist/services/stream-event-processor.test.js +32 -0
  546. package/dist/services/stream-event-processor.test.js.map +1 -1
  547. package/dist/services/subagents/subagent-manager.d.ts +16 -0
  548. package/dist/services/subagents/subagent-manager.d.ts.map +1 -0
  549. package/dist/services/subagents/subagent-manager.js +530 -0
  550. package/dist/services/subagents/subagent-manager.js.map +1 -0
  551. package/dist/services/subagents/subagent-manager.test.d.ts +2 -0
  552. package/dist/services/subagents/subagent-manager.test.d.ts.map +1 -0
  553. package/dist/services/subagents/subagent-manager.test.js +690 -0
  554. package/dist/services/subagents/subagent-manager.test.js.map +1 -0
  555. package/dist/services/subagents/subagent-session.d.ts +26 -0
  556. package/dist/services/subagents/subagent-session.d.ts.map +1 -0
  557. package/dist/services/subagents/subagent-session.js +86 -0
  558. package/dist/services/subagents/subagent-session.js.map +1 -0
  559. package/dist/services/subagents/subagent-session.test.d.ts +2 -0
  560. package/dist/services/subagents/subagent-session.test.d.ts.map +1 -0
  561. package/dist/services/subagents/subagent-session.test.js +118 -0
  562. package/dist/services/subagents/subagent-session.test.js.map +1 -0
  563. package/dist/services/subagents/types.d.ts +35 -0
  564. package/dist/services/subagents/types.d.ts.map +1 -0
  565. package/dist/services/subagents/types.js +2 -0
  566. package/dist/services/subagents/types.js.map +1 -0
  567. package/dist/services/terminal-result-collector.d.ts.map +1 -1
  568. package/dist/services/terminal-result-collector.js +30 -2
  569. package/dist/services/terminal-result-collector.js.map +1 -1
  570. package/dist/services/terminal-result-collector.test.js +103 -0
  571. package/dist/services/terminal-result-collector.test.js.map +1 -1
  572. package/dist/tools/apply-patch.d.ts +14 -6
  573. package/dist/tools/apply-patch.d.ts.map +1 -1
  574. package/dist/tools/apply-patch.js +204 -208
  575. package/dist/tools/apply-patch.js.map +1 -1
  576. package/dist/tools/apply-patch.test.js +44 -0
  577. package/dist/tools/apply-patch.test.js.map +1 -1
  578. package/dist/tools/ask-mentor.d.ts +2 -2
  579. package/dist/tools/ask-mentor.d.ts.map +1 -1
  580. package/dist/tools/ask-mentor.js.map +1 -1
  581. package/dist/tools/bash.d.ts +10 -0
  582. package/dist/tools/bash.d.ts.map +1 -0
  583. package/dist/tools/bash.js +55 -0
  584. package/dist/tools/bash.js.map +1 -0
  585. package/dist/tools/code-context.d.ts +27 -0
  586. package/dist/tools/code-context.d.ts.map +1 -0
  587. package/dist/tools/code-context.js +512 -0
  588. package/dist/tools/code-context.js.map +1 -0
  589. package/dist/tools/code-context.test.d.ts +2 -0
  590. package/dist/tools/code-context.test.d.ts.map +1 -0
  591. package/dist/tools/code-context.test.js +367 -0
  592. package/dist/tools/code-context.test.js.map +1 -0
  593. package/dist/tools/command-message-formatters.d.ts +5 -0
  594. package/dist/tools/command-message-formatters.d.ts.map +1 -0
  595. package/dist/tools/command-message-formatters.js +13 -0
  596. package/dist/tools/command-message-formatters.js.map +1 -0
  597. package/dist/tools/command-message-formatters.test.d.ts +2 -0
  598. package/dist/tools/command-message-formatters.test.d.ts.map +1 -0
  599. package/dist/tools/command-message-formatters.test.js +23 -0
  600. package/dist/tools/command-message-formatters.test.js.map +1 -0
  601. package/dist/tools/create-file.d.ts +2 -2
  602. package/dist/tools/create-file.d.ts.map +1 -1
  603. package/dist/tools/create-file.js +18 -11
  604. package/dist/tools/create-file.js.map +1 -1
  605. package/dist/tools/create-file.test.js +11 -0
  606. package/dist/tools/create-file.test.js.map +1 -1
  607. package/dist/tools/edit-healing.d.ts +4 -3
  608. package/dist/tools/edit-healing.d.ts.map +1 -1
  609. package/dist/tools/edit-healing.js +50 -20
  610. package/dist/tools/edit-healing.js.map +1 -1
  611. package/dist/tools/edit-healing.test.js +62 -0
  612. package/dist/tools/edit-healing.test.js.map +1 -1
  613. package/dist/tools/file-locks.d.ts +3 -0
  614. package/dist/tools/file-locks.d.ts.map +1 -0
  615. package/dist/tools/file-locks.js +37 -0
  616. package/dist/tools/file-locks.js.map +1 -0
  617. package/dist/tools/find-files.d.ts +3 -2
  618. package/dist/tools/find-files.d.ts.map +1 -1
  619. package/dist/tools/find-files.js +59 -139
  620. package/dist/tools/find-files.js.map +1 -1
  621. package/dist/tools/find-files.test.js +6 -12
  622. package/dist/tools/find-files.test.js.map +1 -1
  623. package/dist/tools/grep.d.ts +3 -2
  624. package/dist/tools/grep.d.ts.map +1 -1
  625. package/dist/tools/grep.js +10 -46
  626. package/dist/tools/grep.js.map +1 -1
  627. package/dist/tools/grep.test.d.ts +2 -0
  628. package/dist/tools/grep.test.d.ts.map +1 -0
  629. package/dist/tools/language-providers.d.ts +48 -0
  630. package/dist/tools/language-providers.d.ts.map +1 -0
  631. package/dist/tools/language-providers.js +244 -0
  632. package/dist/tools/language-providers.js.map +1 -0
  633. package/dist/tools/read-file.d.ts +2 -2
  634. package/dist/tools/read-file.d.ts.map +1 -1
  635. package/dist/tools/read-file.js.map +1 -1
  636. package/dist/tools/read-file.test.js +2 -3
  637. package/dist/tools/read-file.test.js.map +1 -1
  638. package/dist/tools/run-subagent.d.ts +14 -0
  639. package/dist/tools/run-subagent.d.ts.map +1 -0
  640. package/dist/tools/run-subagent.js +196 -0
  641. package/dist/tools/run-subagent.js.map +1 -0
  642. package/dist/tools/run-subagent.test.d.ts +2 -0
  643. package/dist/tools/run-subagent.test.d.ts.map +1 -0
  644. package/dist/tools/run-subagent.test.js +159 -0
  645. package/dist/tools/run-subagent.test.js.map +1 -0
  646. package/dist/tools/search-replace.d.ts +7 -4
  647. package/dist/tools/search-replace.d.ts.map +1 -1
  648. package/dist/tools/search-replace.js +248 -110
  649. package/dist/tools/search-replace.js.map +1 -1
  650. package/dist/tools/search-replace.test.js +189 -1
  651. package/dist/tools/search-replace.test.js.map +1 -1
  652. package/dist/tools/search.d.ts.map +1 -1
  653. package/dist/tools/search.js +5 -15
  654. package/dist/tools/search.js.map +1 -1
  655. package/dist/tools/shell.d.ts +4 -2
  656. package/dist/tools/shell.d.ts.map +1 -1
  657. package/dist/tools/shell.js +15 -7
  658. package/dist/tools/shell.js.map +1 -1
  659. package/dist/tools/shell.test.js +154 -0
  660. package/dist/tools/shell.test.js.map +1 -1
  661. package/dist/tools/tool-names.d.ts +3 -0
  662. package/dist/tools/tool-names.d.ts.map +1 -1
  663. package/dist/tools/tool-names.js +3 -0
  664. package/dist/tools/tool-names.js.map +1 -1
  665. package/dist/tools/tool-names.test.js +4 -1
  666. package/dist/tools/tool-names.test.js.map +1 -1
  667. package/dist/tools/tool-parameter-schema.test.js +18 -0
  668. package/dist/tools/tool-parameter-schema.test.js.map +1 -1
  669. package/dist/tools/types.d.ts +2 -1
  670. package/dist/tools/types.d.ts.map +1 -1
  671. package/dist/tools/utils.d.ts.map +1 -1
  672. package/dist/tools/utils.js +11 -1
  673. package/dist/tools/utils.js.map +1 -1
  674. package/dist/tools/utils.test.js +13 -0
  675. package/dist/tools/utils.test.js.map +1 -1
  676. package/dist/tools/web-fetch.d.ts +2 -2
  677. package/dist/tools/web-fetch.d.ts.map +1 -1
  678. package/dist/tools/web-fetch.js.map +1 -1
  679. package/dist/tools/web-search.d.ts +2 -2
  680. package/dist/tools/web-search.d.ts.map +1 -1
  681. package/dist/tools/web-search.js.map +1 -1
  682. package/dist/utils/clipboard.d.ts +2 -2
  683. package/dist/utils/clipboard.d.ts.map +1 -1
  684. package/dist/utils/clipboard.js +58 -22
  685. package/dist/utils/clipboard.js.map +1 -1
  686. package/dist/utils/clipboard.test.js +25 -6
  687. package/dist/utils/clipboard.test.js.map +1 -1
  688. package/dist/utils/command-safety/constants.d.ts.map +1 -1
  689. package/dist/utils/command-safety/constants.js +30 -5
  690. package/dist/utils/command-safety/constants.js.map +1 -1
  691. package/dist/utils/command-safety/handlers/sed-handler.d.ts.map +1 -1
  692. package/dist/utils/command-safety/handlers/sed-handler.js +10 -7
  693. package/dist/utils/command-safety/handlers/sed-handler.js.map +1 -1
  694. package/dist/utils/command-safety/index.d.ts.map +1 -1
  695. package/dist/utils/command-safety/index.js +153 -114
  696. package/dist/utils/command-safety/index.js.map +1 -1
  697. package/dist/utils/command-safety/path-analysis.d.ts.map +1 -1
  698. package/dist/utils/command-safety/path-analysis.js +14 -2
  699. package/dist/utils/command-safety/path-analysis.js.map +1 -1
  700. package/dist/utils/command-safety/utils.js +2 -2
  701. package/dist/utils/command-safety/utils.js.map +1 -1
  702. package/dist/utils/command-safety.d.ts +21 -0
  703. package/dist/utils/command-safety.d.ts.map +1 -0
  704. package/dist/utils/command-safety.devnull.test.d.ts +2 -0
  705. package/dist/utils/command-safety.devnull.test.d.ts.map +1 -0
  706. package/dist/utils/command-safety.devnull.test.js +13 -0
  707. package/dist/utils/command-safety.devnull.test.js.map +1 -0
  708. package/dist/utils/command-safety.find.test.js +1 -1
  709. package/dist/utils/command-safety.find.test.js.map +1 -1
  710. package/dist/utils/command-safety.js +348 -0
  711. package/dist/utils/command-safety.js.map +1 -0
  712. package/dist/utils/command-safety.path.test.js +29 -1
  713. package/dist/utils/command-safety.path.test.js.map +1 -1
  714. package/dist/utils/command-safety.specialized-handlers.test.d.ts +2 -0
  715. package/dist/utils/command-safety.specialized-handlers.test.d.ts.map +1 -0
  716. package/dist/utils/command-safety.specialized-handlers.test.js +20 -0
  717. package/dist/utils/command-safety.specialized-handlers.test.js.map +1 -0
  718. package/dist/utils/conversation-event-handler.d.ts +23 -6
  719. package/dist/utils/conversation-event-handler.d.ts.map +1 -1
  720. package/dist/utils/conversation-event-handler.js +262 -46
  721. package/dist/utils/conversation-event-handler.js.map +1 -1
  722. package/dist/utils/conversation-event-handler.test.js +576 -14
  723. package/dist/utils/conversation-event-handler.test.js.map +1 -1
  724. package/dist/utils/conversation-utils.d.ts +3 -0
  725. package/dist/utils/conversation-utils.d.ts.map +1 -1
  726. package/dist/utils/conversation-utils.js +3 -0
  727. package/dist/utils/conversation-utils.js.map +1 -1
  728. package/dist/utils/execute-shell.d.ts +5 -6
  729. package/dist/utils/execute-shell.d.ts.map +1 -1
  730. package/dist/utils/execute-shell.js +21 -11
  731. package/dist/utils/execute-shell.js.map +1 -1
  732. package/dist/utils/execute-shell.test.js +37 -6
  733. package/dist/utils/execute-shell.test.js.map +1 -1
  734. package/dist/utils/extract-command-messages.d.ts.map +1 -1
  735. package/dist/utils/extract-command-messages.js +2 -18
  736. package/dist/utils/extract-command-messages.js.map +1 -1
  737. package/dist/utils/extract-command-messages.test.d.ts +2 -0
  738. package/dist/utils/extract-command-messages.test.d.ts.map +1 -0
  739. package/dist/utils/flex-service-tier.d.ts +2 -0
  740. package/dist/utils/flex-service-tier.d.ts.map +1 -0
  741. package/dist/utils/flex-service-tier.js +20 -0
  742. package/dist/utils/flex-service-tier.js.map +1 -0
  743. package/dist/utils/flex-service-tier.test.d.ts +2 -0
  744. package/dist/utils/flex-service-tier.test.d.ts.map +1 -0
  745. package/dist/utils/flex-service-tier.test.js +25 -0
  746. package/dist/utils/flex-service-tier.test.js.map +1 -0
  747. package/dist/utils/log-truncation.d.ts +4 -2
  748. package/dist/utils/log-truncation.d.ts.map +1 -1
  749. package/dist/utils/log-truncation.js +143 -41
  750. package/dist/utils/log-truncation.js.map +1 -1
  751. package/dist/utils/log-truncation.test.js +131 -1
  752. package/dist/utils/log-truncation.test.js.map +1 -1
  753. package/dist/utils/provider-traffic-extractor.d.ts.map +1 -1
  754. package/dist/utils/provider-traffic-extractor.js +0 -1
  755. package/dist/utils/provider-traffic-extractor.js.map +1 -1
  756. package/dist/utils/provider-traffic-extractor.repro.test.d.ts +2 -0
  757. package/dist/utils/provider-traffic-extractor.repro.test.d.ts.map +1 -0
  758. package/dist/utils/provider-traffic-extractor.repro.test.js.map +1 -0
  759. package/dist/utils/streaming-session-factory.d.ts +1 -3
  760. package/dist/utils/streaming-session-factory.d.ts.map +1 -1
  761. package/dist/utils/streaming-session-factory.js +45 -11
  762. package/dist/utils/streaming-session-factory.js.map +1 -1
  763. package/dist/utils/streaming-session-factory.test.js +89 -15
  764. package/dist/utils/streaming-session-factory.test.js.map +1 -1
  765. package/dist/utils/subsequence-filter.d.ts +8 -0
  766. package/dist/utils/subsequence-filter.d.ts.map +1 -0
  767. package/dist/utils/subsequence-filter.js +47 -0
  768. package/dist/utils/subsequence-filter.js.map +1 -0
  769. package/dist/utils/token-usage.d.ts +26 -1
  770. package/dist/utils/token-usage.d.ts.map +1 -1
  771. package/dist/utils/token-usage.js +210 -28
  772. package/dist/utils/token-usage.js.map +1 -1
  773. package/dist/utils/token-usage.test.js +196 -3
  774. package/dist/utils/token-usage.test.js.map +1 -1
  775. package/package.json +5 -5
@@ -1,85 +1,42 @@
1
- import { Agent, run, tool as createTool, webSearchTool, applyPatchTool, } from '@openai/agents';
1
+ import { Agent, run, tool as createTool, applyPatchTool } from '@openai/agents';
2
2
  import { getProvider } from '../providers/index.js';
3
3
  import { randomUUID } from 'node:crypto';
4
- import { getAgentDefinition, getEnvInfo, getAgentsInstructions } from '../agent.js';
4
+ import { getAgentDefinition } from '../agent.js';
5
5
  import { normalizeToolInput, wrapToolInvoke } from './tool-invoke.js';
6
6
  import { createEditorImpl } from './editor-impl.js';
7
- import { ConversationStore } from '../services/conversation-store.js';
8
7
  import { trimToolOutput } from '../utils/trim-tool-output.js';
9
8
  import { toOpenAIStrictToolSchema } from './openai-strict-tool-schema.js';
10
9
  import { executeWithRetry } from './retry-executor.js';
11
10
  import { shouldUseNativePatchTool, shouldUseStrictToolSchema } from './tool-selection-policy.js';
12
- class MentorSession {
13
- #provider = null;
14
- #runner = null;
15
- #agent = null;
16
- #store = null;
17
- #previousResponseId = null;
18
- get provider() {
19
- return this.#provider;
20
- }
21
- get runner() {
22
- return this.#runner;
23
- }
24
- get agent() {
25
- return this.#agent;
26
- }
27
- get previousResponseId() {
28
- return this.#previousResponseId;
29
- }
30
- reset() {
31
- if (this.#store) {
32
- this.#store.clear();
33
- }
34
- this.#previousResponseId = null;
35
- this.#store = null;
36
- this.#runner = null;
37
- this.#provider = null;
38
- this.#agent = null;
39
- }
40
- switchProvider(provider) {
41
- if (this.#provider !== provider) {
42
- this.#agent = null;
43
- this.#store = null;
44
- this.#previousResponseId = null;
45
- this.#runner = null;
46
- this.#provider = provider;
47
- }
48
- }
49
- ensureRunner(provider, createRunner) {
50
- if (!this.#runner && provider !== 'openai') {
51
- this.#runner = createRunner(provider);
11
+ import { isFlexServiceTierTimeout } from '../utils/flex-service-tier.js';
12
+ import { SubagentManager } from '../services/subagents/subagent-manager.js';
13
+ /**
14
+ * Wraps a tool definition's needsApproval so that structurally invalid params
15
+ * (those that fail Zod schema validation) never trigger an approval prompt.
16
+ * The tool's execute will receive those params and return a structured error.
17
+ *
18
+ * Top-level null values are normalized to undefined before validation. When using
19
+ * OpenAI strict tool schemas, toOpenAIStrictToolSchema converts optional fields to
20
+ * nullable-with-null-default, so the API sends null for omitted optional fields.
21
+ * The original Zod schema uses .optional() which rejects null, so without this
22
+ * normalization valid strict-schema calls would incorrectly bypass approval.
23
+ */
24
+ export function wrapNeedsApproval(definition) {
25
+ return async (context, params) => {
26
+ const normalized = params !== null && typeof params === 'object' && !Array.isArray(params)
27
+ ? Object.fromEntries(Object.entries(params).map(([k, v]) => [k, v === null ? undefined : v]))
28
+ : params;
29
+ if (!definition.parameters.safeParse(normalized).success) {
30
+ return false;
52
31
  }
53
- return this.#runner;
54
- }
55
- ensureAgent(createAgent) {
56
- if (!this.#agent) {
57
- this.#agent = createAgent();
58
- this.#store = new ConversationStore();
32
+ try {
33
+ return await definition.needsApproval(normalized, context);
59
34
  }
60
- return this.#agent;
61
- }
62
- addUserMessage(message) {
63
- this.#store.addUserMessage(message);
64
- }
65
- getInput(question, supportsConversationChaining) {
66
- return supportsConversationChaining ? question : this.#store.getHistory();
67
- }
68
- getRunOptions(supportsConversationChaining) {
69
- return {
70
- stream: false,
71
- maxTurns: 1,
72
- ...(supportsConversationChaining && this.#previousResponseId
73
- ? { previousResponseId: this.#previousResponseId }
74
- : {}),
75
- };
76
- }
77
- updateFromResult(result) {
78
- this.#store.updateFromResult(result);
79
- if (result.responseId) {
80
- this.#previousResponseId = result.responseId;
35
+ catch (error) {
36
+ // If needsApproval throws, fail-safe to requiring approval
37
+ return true;
81
38
  }
82
- }
39
+ };
83
40
  }
84
41
  /**
85
42
  * Minimal adapter that isolates usage of @openai/agents.
@@ -98,20 +55,35 @@ export class OpenAIAgentClient {
98
55
  #currentCorrelationId = null;
99
56
  #retryCallback = null;
100
57
  #runner = null;
58
+ #serviceTierOverrideForNextRequest = null;
101
59
  #toolInterceptors = [];
102
60
  #logger;
103
61
  #settings;
104
62
  #executionContext;
105
63
  #editor;
106
- #mentorSession;
64
+ #subagentManager;
65
+ #subagentEventSink = null;
66
+ /**
67
+ * Forward real-time subagent activity events to the active conversation
68
+ * turn. The session sets this for the duration of a send and clears it
69
+ * afterwards so events reach the UI's onEvent callback.
70
+ */
71
+ setSubagentEventSink(sink) {
72
+ this.#subagentEventSink = sink;
73
+ }
107
74
  #resetMentorState() {
108
- this.#mentorSession.reset();
75
+ this.#subagentManager.resetMentorSession();
109
76
  }
110
77
  constructor({ model, reasoningEffort, maxTurns, retryAttempts, deps, }) {
111
78
  this.#logger = deps.logger;
112
79
  this.#settings = deps.settings;
113
80
  this.#executionContext = deps.executionContext;
114
- this.#mentorSession = new MentorSession();
81
+ this.#subagentManager = new SubagentManager({
82
+ logger: deps.logger,
83
+ settings: deps.settings,
84
+ executionContext: deps.executionContext,
85
+ onEvent: (event) => this.#subagentEventSink?.(event),
86
+ });
115
87
  this.#editor = createEditorImpl({
116
88
  loggingService: this.#logger,
117
89
  settingsService: this.#settings,
@@ -215,6 +187,17 @@ export class OpenAIAgentClient {
215
187
  setRetryCallback(callback) {
216
188
  this.#retryCallback = callback;
217
189
  }
190
+ shouldRetryWithoutFlexServiceTier(error) {
191
+ const useFlexServiceTier = this.#settings.get('agent.useFlexServiceTier');
192
+ return (useFlexServiceTier &&
193
+ this.#serviceTierOverrideForNextRequest !== 'standard' &&
194
+ (this.#provider === 'openai' || this.#provider === 'openrouter') &&
195
+ isFlexServiceTierTimeout(error));
196
+ }
197
+ useStandardServiceTierForNextRequest() {
198
+ this.#serviceTierOverrideForNextRequest = 'standard';
199
+ this.#refreshAgent();
200
+ }
218
201
  #refreshAgent() {
219
202
  this.#agent = this.#createAgent({
220
203
  model: this.#model,
@@ -358,8 +341,17 @@ export class OpenAIAgentClient {
358
341
  }
359
342
  return run(agent, input, effectiveOptions);
360
343
  }
361
- #runAgent(agent, input, options) {
362
- return this.#runAgentWithProvider(this.#provider, this.#runner, agent, input, options);
344
+ async #runAgent(agent, input, options) {
345
+ const shouldResetServiceTierOverride = this.#serviceTierOverrideForNextRequest === 'standard';
346
+ try {
347
+ return await this.#runAgentWithProvider(this.#provider, this.#runner, agent, input, options);
348
+ }
349
+ finally {
350
+ if (shouldResetServiceTierOverride) {
351
+ this.#serviceTierOverrideForNextRequest = null;
352
+ this.#refreshAgent();
353
+ }
354
+ }
363
355
  }
364
356
  async #executeWithRetry(operation, retries = this.#retryAttempts) {
365
357
  return executeWithRetry({
@@ -438,59 +430,12 @@ export class OpenAIAgentClient {
438
430
  return '';
439
431
  }
440
432
  #createMentor = async (question) => {
441
- const mentorModel = this.#settings.get('agent.mentorModel');
442
- if (!mentorModel) {
443
- throw new Error('Mentor model is not configured');
444
- }
445
- const mentorProvider = this.#settings.get('agent.mentorProvider') ?? this.#provider;
446
- const mentorMode = this.#settings.get('app.mentorMode');
447
- // Different instructions based on mode
448
- let baseInstructions = mentorMode
449
- ? 'You are a senior architect acting as a peer reviewer. You have no codebase access—you rely on what the user reports.\n\n' +
450
- 'Your role is adversarial review, not rubber-stamping:\n' +
451
- '- Challenge assumptions, even when reasoning sounds solid\n' +
452
- '- Probe for gaps: what did they not check? What could go wrong?\n' +
453
- '- Suggest alternatives they may have dismissed too quickly\n' +
454
- '- Ask for evidence when confidence seems misplaced\n\n' +
455
- 'When satisfied, give clear approval with specific next steps. When not, say exactly what needs more investigation.\n\n' +
456
- "Be concise. Push back hard, but don't block unnecessarily."
457
- : 'You are a helpful mentor assistant. Provide advice and guidance on technical problems. Be concise and actionable.';
458
- // Add environment info and AGENTS.md context
459
- const envInfo = getEnvInfo(this.#settings, this.#executionContext);
460
- const cwd = this.#executionContext?.getCwd() ?? process.cwd();
461
- const agentsInstructions = this.#executionContext?.isRemote() ? '' : getAgentsInstructions(cwd);
462
- const instructions = `${baseInstructions}\n\nEnvironment: ${envInfo}${agentsInstructions}`;
463
- // If mentor provider changed, reset mentor state to avoid mixing stores/prev ids across providers
464
- this.#mentorSession.switchProvider(mentorProvider);
465
- const mentorRunner = this.#mentorSession.ensureRunner(mentorProvider, (providerId) => this.#createRunner(providerId));
466
- const mentorAgent = this.#mentorSession.ensureAgent(() => {
467
- const reasoningEffort = this.#settings.get('agent.mentorReasoningEffort');
468
- const modelSettings = {};
469
- if (reasoningEffort && reasoningEffort !== 'default') {
470
- modelSettings.reasoning = {
471
- effort: reasoningEffort,
472
- summary: 'auto',
473
- };
474
- }
475
- return new Agent({
476
- name: 'Mentor',
477
- model: mentorModel,
478
- ...(Object.keys(modelSettings).length > 0 ? { modelSettings } : {}),
479
- instructions,
480
- });
481
- });
482
433
  try {
483
- // Add user message to conversation history
484
- this.#mentorSession.addUserMessage(question);
485
- // Determine input based on provider
486
- // OpenAI uses previousResponseId for server-side history
487
- // Others need full conversation history from store
488
- const { supportsConversationChaining } = this.#getProviderCapabilities(mentorProvider);
489
- const input = this.#mentorSession.getInput(question, supportsConversationChaining);
490
- const result = await this.#runAgentWithProvider(mentorProvider, mentorRunner, mentorAgent, input, this.#mentorSession.getRunOptions(supportsConversationChaining));
491
- // Update conversation store with result
492
- this.#mentorSession.updateFromResult(result);
493
- return this.#extractResponse(result);
434
+ const result = await this.#subagentManager.run({ role: 'mentor', task: question });
435
+ if (result.status === 'failed') {
436
+ throw new Error(result.error || 'Mentor consultation failed');
437
+ }
438
+ return result.finalText;
494
439
  }
495
440
  catch (error) {
496
441
  this.#logger.error('Mentor consultation failed', {
@@ -499,6 +444,9 @@ export class OpenAIAgentClient {
499
444
  throw error;
500
445
  }
501
446
  };
447
+ #runSubagent = async (params) => {
448
+ return this.#subagentManager.run(params);
449
+ };
502
450
  #createAgent({ model, reasoningEffort, temperature, } = {}) {
503
451
  const resolvedModel = model?.trim() || this.#settings.get('agent.model');
504
452
  this.#model = resolvedModel;
@@ -507,8 +455,8 @@ export class OpenAIAgentClient {
507
455
  settingsService: this.#settings,
508
456
  loggingService: this.#logger,
509
457
  executionContext: this.#executionContext,
510
- // @ts-ignore - Definition update coming next
511
458
  askMentor: this.#createMentor,
459
+ runSubagent: this.#runSubagent,
512
460
  }, resolvedModel);
513
461
  const providerCapabilities = this.#getProviderCapabilities(this.#provider);
514
462
  const shouldUseNativePatchToolForModel = shouldUseNativePatchTool({
@@ -519,7 +467,6 @@ export class OpenAIAgentClient {
519
467
  const tools = this.#buildAgentTools({
520
468
  toolDefinitions,
521
469
  resolvedModel,
522
- reasoningEffort,
523
470
  shouldUseNativePatchTool: shouldUseNativePatchToolForModel,
524
471
  });
525
472
  const modelSettings = this.#buildModelSettings({
@@ -545,7 +492,7 @@ export class OpenAIAgentClient {
545
492
  }
546
493
  return agent;
547
494
  }
548
- #buildAgentTools({ toolDefinitions, resolvedModel, reasoningEffort, shouldUseNativePatchTool, }) {
495
+ #buildAgentTools({ toolDefinitions, resolvedModel, shouldUseNativePatchTool, }) {
549
496
  const providerCapabilities = this.#getProviderCapabilities(this.#provider);
550
497
  const useStrictToolSchema = shouldUseStrictToolSchema({
551
498
  providerId: this.#provider,
@@ -563,7 +510,7 @@ export class OpenAIAgentClient {
563
510
  name: definition.name,
564
511
  description: definition.description,
565
512
  parameters: useStrictToolSchema ? toOpenAIStrictToolSchema(definition.parameters) : definition.parameters,
566
- needsApproval: async (context, params) => definition.needsApproval(params, context),
513
+ needsApproval: wrapNeedsApproval(definition),
567
514
  execute: async (params, _context, details) => {
568
515
  const maxOutputLengthValue = this.#settings.get('shell.maxOutputChars');
569
516
  // Extract tool call ID from details if available
@@ -647,16 +594,6 @@ export class OpenAIAgentClient {
647
594
  provider: this.#provider,
648
595
  });
649
596
  }
650
- // Add web search tool. If the user explicitly selected 'minimal' we
651
- // disable it; if they selected 'default', we don't influence the
652
- // decision and leave the web tool enabled.
653
- if (reasoningEffort !== 'minimal') {
654
- const webTool = webSearchTool();
655
- // Note: webSearchTool is a HostedTool that runs server-side and cannot be intercepted
656
- // the same way as FunctionTools. Interception for hosted tools would need to be
657
- // handled differently, likely through approval mechanisms.
658
- tools.push(webTool);
659
- }
660
597
  return tools;
661
598
  }
662
599
  #buildModelSettings({ reasoningEffort, resolvedTemperature, }) {
@@ -679,7 +616,9 @@ export class OpenAIAgentClient {
679
616
  // This reduces costs by using the flex service tier for lower priority requests
680
617
  // See: https://platform.openai.com/docs/guides/service-tier
681
618
  const useFlexServiceTier = this.#settings.get('agent.useFlexServiceTier');
682
- if (useFlexServiceTier && this.#provider === 'openai') {
619
+ if (useFlexServiceTier &&
620
+ this.#serviceTierOverrideForNextRequest !== 'standard' &&
621
+ (this.#provider === 'openai' || this.#provider === 'openrouter')) {
683
622
  modelSettings.providerData = {
684
623
  ...(modelSettings.providerData || {}),
685
624
  service_tier: 'flex',
@@ -1 +1 @@
1
- {"version":3,"file":"openai-agent-client.js","sourceRoot":"","sources":["../../source/lib/openai-agent-client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,GAAG,EACH,IAAI,IAAI,UAAU,EAClB,aAAa,EACb,cAAc,GAIf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAEjG,MAAM,aAAa;IACjB,SAAS,GAAkB,IAAI,CAAC;IAChC,OAAO,GAAkB,IAAI,CAAC;IAC9B,MAAM,GAAiB,IAAI,CAAC;IAC5B,MAAM,GAA6B,IAAI,CAAC;IACxC,mBAAmB,GAAkB,IAAI,CAAC;IAE1C,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,cAAc,CAAC,QAAgB;QAC7B,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;YAChC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;YAChC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,YAAY,CAAC,QAAgB,EAAE,YAAmD;QAChF,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC3C,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,WAAW,CAAC,WAAwB;QAClC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,GAAG,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,cAAc,CAAC,OAAe;QAC5B,IAAI,CAAC,MAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,QAAQ,CAAC,QAAgB,EAAE,4BAAqC;QAC9D,OAAO,4BAA4B,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAO,CAAC,UAAU,EAAE,CAAC;IAC7E,CAAC;IAED,aAAa,CAAC,4BAAqC;QACjD,OAAO;YACL,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,CAAC;YACX,GAAG,CAAC,4BAA4B,IAAI,IAAI,CAAC,mBAAmB;gBAC1D,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,CAAC,mBAAmB,EAAE;gBAClD,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IAED,gBAAgB,CAAC,MAAW;QAC1B,IAAI,CAAC,MAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,UAAU,CAAC;QAC/C,CAAC;IACH,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,iBAAiB;IAC5B,MAAM,CAAQ;IACd,MAAM,CAAU;IAChB,4EAA4E;IAC5E,gBAAgB,CAA4C;IAC5D,YAAY,CAAU;IACtB,SAAS,CAAS;IAClB,SAAS,CAAS;IAClB,cAAc,CAAS;IACvB,uBAAuB,GAA2B,IAAI,CAAC;IACvD,qBAAqB,GAAkB,IAAI,CAAC;IAC5C,cAAc,GAAwB,IAAI,CAAC;IAC3C,OAAO,GAAkB,IAAI,CAAC;IAC9B,iBAAiB,GAAmF,EAAE,CAAC;IACvG,OAAO,CAAkB;IACzB,SAAS,CAAmB;IAC5B,iBAAiB,CAAoB;IACrC,OAAO,CAAsC;IAC7C,cAAc,CAAgB;IAE9B,iBAAiB;QACf,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;IAED,YAAY,EACV,KAAK,EACL,eAAe,EACf,QAAQ,EACR,aAAa,EACb,IAAI,GAWL;QACC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC/C,IAAI,CAAC,cAAc,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC;YAC9B,cAAc,EAAE,IAAI,CAAC,OAAO;YAC5B,eAAe,EAAE,IAAI,CAAC,SAAS;YAC/B,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;SACzC,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAqB,mBAAmB,CAAC,CAAC;QAChF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAS,gBAAgB,CAAC,IAAI,QAAQ,CAAC;QAC1E,IAAI,CAAC,SAAS,GAAG,QAAQ,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,cAAc,GAAG,aAAa,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE;YACpD,KAAK,EAAE,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAS,aAAa,CAAC;YACzD,eAAe,EAAE,eAAe,IAAI,SAAS;YAC7C,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,aAAa,EAAE,IAAI,CAAC,cAAc;SACnC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;YAC9B,KAAK;YACL,eAAe,EAAE,IAAI,CAAC,gBAAgB;SACvC,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,kBAAkB,CAAC,MAAiD;QAClE,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;YAC9B,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,eAAe,EAAE,MAAM;SACxB,CAAC,CAAC;IACL,CAAC;IAED,cAAc,CAAC,WAAoB;QACjC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;YAC9B,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,eAAe,EAAE,IAAI,CAAC,gBAAgB;YACtC,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IAED,WAAW,CAAC,QAAgB;QAC1B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;YAC9B,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,eAAe,EAAE,IAAI,CAAC,gBAAgB;SACvC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,kBAAkB,CAChB,WAAuF;QAEvF,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC;QACnF,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,IAAY,EAAE,MAAW,EAAE,UAAmB;QACzE,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACjD,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;gBAC3D,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;oBACpB,OAAO,MAAM,CAAC;gBAChB,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE;oBACpD,IAAI;oBACJ,MAAM;oBACN,UAAU;oBACV,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAC9D,CAAC,CAAC;gBACH,OAAO,0CAA0C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5G,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wBAAwB,CAAC,UAAkB;QAMzC,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;QAC5C,OAAO;YACL,4BAA4B,EAAE,WAAW,EAAE,YAAY,EAAE,4BAA4B,IAAI,KAAK;YAC9F,sBAAsB,EAAE,WAAW,EAAE,YAAY,EAAE,sBAAsB,IAAI,KAAK;YAClF,oBAAoB,EAAE,WAAW,EAAE,YAAY,EAAE,oBAAoB;YACrE,wBAAwB,EAAE,WAAW,EAAE,YAAY,EAAE,wBAAwB;SAC9E,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,UAAkB;QAC9B,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,WAAW,CAAC,YAAY,CAAC;YAC9B,eAAe,EAAE,IAAI,CAAC,SAAS;YAC/B,cAAc,EAAE,IAAI,CAAC,OAAO;SAC7B,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CAAC,QAAoB;QACnC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC;IACjC,CAAC;IAED,aAAa;QACX,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;YAC9B,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,eAAe,EAAE,IAAI,CAAC,gBAAuB;YAC7C,WAAW,EAAE,IAAI,CAAC,YAAY;SAC/B,CAAC,CAAC;QACH,yEAAyE;QACzE,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,KAAK;QACH,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC;QAC3F,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC;YACrC,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;QACtC,CAAC;QACD,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAClC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QACpC,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE;YAC5C,SAAS,EAAE,gBAAgB;YAC3B,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,OAAO;YACd,OAAO,EAAE,kBAAkB;SAC5B,CAAC,CAAC;IACL,CAAC;IAED,kBAAkB;QAChB,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,WAAW,EAAE,kBAAkB,EAAE,CAAC;YACpC,WAAW,CAAC,kBAAkB,EAAE,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,WAAW,CACf,SAAqD,EACrD,EAAE,kBAAkB,KAA6C,EAAE;QAEnE,+BAA+B;QAC/B,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,0EAA0E;QAC1E,4DAA4D;QAC5D,MAAM,cAAc,GAClB,CAAC,kBAAkB,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC;QAExG,IAAI,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;QAED,wCAAwC;QACxC,IAAI,CAAC,qBAAqB,GAAG,UAAU,EAAE,CAAC;QAC1C,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAE1D,IAAI,CAAC,uBAAuB,GAAG,IAAI,eAAe,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC;QAEnD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE;YACzC,SAAS,EAAE,0BAA0B;YACrC,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,eAAe;YACtB,OAAO,EAAE,IAAI,CAAC,qBAAqB;YACnC,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,SAAS;YAChE,WAAW,EAAE,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;YACzE,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;YACnE,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;YAC1D,qBAAqB,EAAE,CAAC,CAAC,kBAAkB;SAC5C,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,OAAO,GAAQ;gBACnB,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,IAAI,CAAC,SAAS;gBACxB,MAAM;aACP,CAAC;YAEF,MAAM,EAAE,4BAA4B,EAAE,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACvF,IAAI,4BAA4B,IAAI,kBAAkB,EAAE,CAAC;gBACvD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;YAClD,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;YACnG,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE;gBACxC,SAAS,EAAE,0BAA0B;gBACrC,QAAQ,EAAE,UAAU;gBACpB,KAAK,EAAE,mBAAmB;gBAC1B,OAAO,EAAE,IAAI,CAAC,qBAAqB;gBACnC,QAAQ,EAAE,IAAI,CAAC,SAAS;gBACxB,KAAK,EAAE,IAAI,CAAC,MAAM;gBAClB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC7D,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,SAAS;gBAChE,WAAW,EAAE,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gBACzE,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;aACpE,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAU,EAAE,EAAE,kBAAkB,KAA6C,EAAE;QAC/F,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,uBAAuB,GAAG,IAAI,eAAe,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC;QAEnD,MAAM,OAAO,GAAQ;YACnB,MAAM;SACP,CAAC;QAEF,MAAM,EAAE,4BAA4B,EAAE,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvF,IAAI,4BAA4B,IAAI,kBAAkB,EAAE,CAAC;YACvD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAClD,CAAC;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IACnF,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,KAAU,EACV,EAAE,kBAAkB,KAA6C,EAAE;QAEnE,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,uBAAuB,GAAG,IAAI,eAAe,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC;QAEnD,MAAM,OAAO,GAAQ;YACnB,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,MAAM;SACP,CAAC;QAEF,MAAM,EAAE,4BAA4B,EAAE,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvF,IAAI,4BAA4B,IAAI,kBAAkB,EAAE,CAAC;YACvD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAClD,CAAC;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IACnF,CAAC;IAED,qBAAqB,CACnB,UAAkB,EAClB,MAAqB,EACrB,KAAY,EACZ,KAAU,EACV,OAAY;QAEZ,yEAAyE;QACzE,mFAAmF;QACnF,2EAA2E;QAC3E,MAAM,gBAAgB,GAAQ,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,MAAM,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;QAC7E,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,gBAAgB,CAAC,eAAe,GAAG,IAAI,CAAC;QAC1C,CAAC;QAED,kEAAkE;QAClE,IAAI,CAAC,MAAM,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;YACvC,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;YAC5C,MAAM,aAAa,GAAG,WAAW,EAAE,KAAK,IAAI,UAAU,CAAC;YACvD,MAAM,IAAI,KAAK,CACb,GAAG,aAAa,+CAA+C;gBAC7D,2EAA2E,CAC9E,CAAC;QACJ,CAAC;QAED,mFAAmF;QACnF,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC;IAC7C,CAAC;IAED,SAAS,CAAC,KAAY,EAAE,KAAU,EAAE,OAAY;QAC9C,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACzF,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAI,SAA2B,EAAE,OAAO,GAAG,IAAI,CAAC,cAAc;QACnF,OAAO,gBAAgB,CAAC;YACtB,SAAS;YACT,aAAa,EAAE,OAAO;YACtB,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,OAAO,EAAE,IAAI,CAAC,qBAAqB;YACnC,MAAM,EAAE,IAAI,CAAC,OAAO;YACpB,OAAO,EAAE,IAAI,CAAC,cAAc,IAAI,SAAS;SAC1C,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI,CACR,OAAe,EACf,UAKI,EAAE;QAEN,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC;QACxD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE;YACvC,aAAa,EAAE,OAAO,CAAC,MAAM;YAC7B,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM;YACnC,QAAQ,EAAE,YAAY;SACvB,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,2EAA2E;YAC3E,IAAI,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC;YAC/B,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC;YAC/C,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,IAAI,IAAI,CAAC,gBAAgB,CAAC;YAEpE,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACzF,MAAM,aAAa,GAAQ,EAAE,CAAC;gBAE9B,IAAI,UAAU,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC3C,aAAa,CAAC,SAAS,GAAG;wBACxB,MAAM,EAAE,UAAU;wBAClB,OAAO,EAAE,MAAM;qBAChB,CAAC;gBACJ,CAAC;gBAED,sFAAsF;gBACtF,YAAY,GAAG,IAAI,KAAK,CAAC;oBACvB,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,SAAS;oBAChB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACnE,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,8BAA8B;iBACrE,CAAC,CAAC;YACL,CAAC;YAED,yEAAyE;YACzE,IAAI,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC;YACjC,IAAI,YAAY,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;gBACpC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;YACnD,CAAC;YAED,wCAAwC;YACxC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,OAAO,EAAE;gBAClG,MAAM,EAAE,KAAK;gBACb,QAAQ,EAAE,CAAC,EAAE,8BAA8B;aAC5C,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE;gBACtC,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,CAAC,kBAAkB;QACjC,CAAC;IACH,CAAC;IAED,gBAAgB,CAAC,MAAW;QAC1B,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,OAAO,MAAM,CAAC,WAAW,CAAC;QAC5B,CAAC;QAED,4DAA4D;QAC5D,IAAI,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtD,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAChE,IAAI,WAAW,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gBACvC,IAAI,OAAO,WAAW,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBAC5C,OAAO,WAAW,CAAC,OAAO,CAAC;gBAC7B,CAAC;gBACD,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;oBACvC,OAAO,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACxF,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,aAAa,GAAG,KAAK,EAAE,QAAgB,EAAmB,EAAE;QAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAS,mBAAmB,CAAC,CAAC;QACpE,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAS,sBAAsB,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC;QAE5F,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAU,gBAAgB,CAAC,CAAC;QAEjE,uCAAuC;QACvC,IAAI,gBAAgB,GAAG,UAAU;YAC/B,CAAC,CAAC,0HAA0H;gBAC1H,yDAAyD;gBACzD,6DAA6D;gBAC7D,mEAAmE;gBACnE,8DAA8D;gBAC9D,wDAAwD;gBACxD,wHAAwH;gBACxH,4DAA4D;YAC9D,CAAC,CAAC,mHAAmH,CAAC;QAExH,6CAA6C;QAC7C,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACnE,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,EAAE,MAAM,EAAE,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAC9D,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;QAChG,MAAM,YAAY,GAAG,GAAG,gBAAgB,oBAAoB,OAAO,GAAG,kBAAkB,EAAE,CAAC;QAE3F,kGAAkG;QAClG,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QAEnD,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC,UAAU,EAAE,EAAE,CACnF,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAC/B,CAAC;QACF,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,EAAE;YACvD,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAS,6BAA6B,CAAC,CAAC;YAClF,MAAM,aAAa,GAAQ,EAAE,CAAC;YAE9B,IAAI,eAAe,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;gBACrD,aAAa,CAAC,SAAS,GAAG;oBACxB,MAAM,EAAE,eAAe;oBACvB,OAAO,EAAE,MAAM;iBAChB,CAAC;YACJ,CAAC;YAED,OAAO,IAAI,KAAK,CAAC;gBACf,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnE,YAAY;aACb,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,2CAA2C;YAC3C,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YAE7C,oCAAoC;YACpC,yDAAyD;YACzD,mDAAmD;YACnD,MAAM,EAAE,4BAA4B,EAAE,GAAG,IAAI,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;YACvF,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,EAAE,4BAA4B,CAAC,CAAC;YAEnF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAC7C,cAAc,EACd,YAAY,EACZ,WAAW,EACX,KAAK,EACL,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,4BAA4B,CAAC,CAChE,CAAC;YAEF,wCAAwC;YACxC,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YAE7C,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE;gBAC/C,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC;IAEF,YAAY,CAAC,EACX,KAAK,EACL,eAAe,EACf,WAAW,MAKT,EAAE;QACJ,MAAM,aAAa,GAAG,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAS,aAAa,CAAC,CAAC;QACjF,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC;QAC5B,MAAM,mBAAmB,GAAG,WAAW,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAqB,mBAAmB,CAAC,CAAC;QACvG,MAAM,EACJ,IAAI,EACJ,YAAY,EACZ,KAAK,EAAE,eAAe,GACvB,GAAG,kBAAkB,CACpB;YACE,eAAe,EAAE,IAAI,CAAC,SAAS;YAC/B,cAAc,EAAE,IAAI,CAAC,OAAO;YAC5B,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;YACxC,6CAA6C;YAC7C,SAAS,EAAE,IAAI,CAAC,aAAa;SAC9B,EACD,aAAa,CACd,CAAC;QAEF,MAAM,oBAAoB,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3E,MAAM,gCAAgC,GAAG,wBAAwB,CAAC;YAChE,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,KAAK,EAAE,aAAa;YACpB,YAAY,EAAE,oBAAoB;SACnC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC;YAClC,eAAe;YACf,aAAa;YACb,eAAe;YACf,wBAAwB,EAAE,gCAAgC;SAC3D,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC;YAC7C,eAAe;YACf,mBAAmB;SACpB,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;YACtB,IAAI;YACJ,KAAK,EAAE,aAAa;YACpB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,YAAY;YACZ,KAAK;SACN,CAAC,CAAC;QAEH,+DAA+D;QAC/D,gEAAgE;QAChE,YAAY;QACZ,IAAI,eAAe,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YACpD,KAAa,CAAC,iBAAiB,GAAG;gBACjC,GAAG,CAAE,KAAa,CAAC,iBAAiB,IAAI,EAAE,CAAC;gBAC3C,+DAA+D;gBAC/D,SAAS,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE;aACvC,CAAC;QACJ,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB,CAAC,EACf,eAAe,EACf,aAAa,EACb,eAAe,EACf,wBAAwB,GAMzB;QACC,MAAM,oBAAoB,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3E,MAAM,mBAAmB,GAAG,yBAAyB,CAAC;YACpD,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,YAAY,EAAE,oBAAoB;SACnC,CAAC,CAAC;QACH,MAAM,KAAK,GAAW,eAAe;aAClC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE;YACrB,uDAAuD;YACvD,IAAI,wBAAwB,IAAI,UAAU,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gBAClE,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;aACD,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAClB,cAAc,CACZ,UAAU,CAAC;YACT,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC,wBAAwB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU;YACzG,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC;YACnF,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;gBAC3C,MAAM,oBAAoB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAqB,sBAAsB,CAAC,CAAC;gBAC5F,iDAAiD;gBACjD,MAAM,UAAU,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC;gBAC7C,gDAAgD;gBAChD,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;gBAChG,IAAI,gBAAgB,EAAE,CAAC;oBACrB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE;wBAC/C,IAAI,EAAE,UAAU,CAAC,IAAI;wBACrB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;qBACjD,CAAC,CAAC;oBACH,6DAA6D;oBAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;wBAC9B,MAAM,EAAE;4BACN;gCACE,OAAO,EAAE,KAAK;gCACd,KAAK,EAAE,gBAAgB;6BACxB;yBACF;qBACF,CAAC,CAAC;oBACH,OAAO,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,oBAAoB,IAAI,SAAS,CAAC,CAAC;gBAChF,CAAC;gBACD,mBAAmB;gBACnB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAC1D,OAAO,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,oBAAoB,IAAI,SAAS,CAAC,CAAC;YAC9E,CAAC;SACF,CAAC,CACH,CACF,CAAC;QAEJ,2DAA2D;QAC3D,IAAI,wBAAwB,EAAE,CAAC;YAC7B,MAAM,eAAe,GAAG,cAAc,CAAC;gBACrC,MAAM,EAAE,IAAI,CAAC,OAAO;gBACpB,aAAa,EAAE,KAAK,EAAE,kCAAkC;aACzD,CAAQ,CAAC,CAAC,uDAAuD;YAElE,oEAAoE;YACpE,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,CAAC;YAC9C,IAAI,cAAc,EAAE,CAAC;gBACnB,eAAe,CAAC,MAAM,GAAG,KAAK,EAAE,UAAe,EAAE,KAAU,EAAE,OAAY,EAAE,EAAE;oBAC3E,iDAAiD;oBACjD,MAAM,UAAU,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC;oBAC7C,wCAAwC;oBACxC,MAAM,eAAe,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;oBAClD,IAAI,MAAW,CAAC;oBAChB,IAAI,CAAC;wBACH,MAAM,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBACjE,CAAC;oBAAC,MAAM,CAAC;wBACP,MAAM,GAAG,KAAK,CAAC;oBACjB,CAAC;oBACD,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;oBAC9F,IAAI,gBAAgB,EAAE,CAAC;wBACrB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE;4BACtD,IAAI,EAAE,aAAa;4BACnB,UAAU;4BACV,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;yBACjD,CAAC,CAAC;wBACH,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;4BAC9B,MAAM,EAAE;gCACN;oCACE,OAAO,EAAE,KAAK;oCACd,KAAK,EAAE,gBAAgB;iCACxB;6BACF;yBACF,CAAC,CAAC;wBACH,MAAM,oBAAoB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAqB,sBAAsB,CAAC,CAAC;wBAC5F,OAAO,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,oBAAoB,IAAI,SAAS,CAAC,CAAC;oBAChF,CAAC;oBACD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;oBAChG,MAAM,oBAAoB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAqB,sBAAsB,CAAC,CAAC;oBAC5F,OAAO,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,oBAAoB,IAAI,SAAS,CAAC,CAAC;gBAC9E,CAAC,CAAC;YACJ,CAAC;YAED,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC5B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE;gBACzD,KAAK,EAAE,aAAa;gBACpB,QAAQ,EAAE,IAAI,CAAC,SAAS;aACzB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE;gBAC5D,KAAK,EAAE,aAAa;gBACpB,QAAQ,EAAE,IAAI,CAAC,SAAS;aACzB,CAAC,CAAC;QACL,CAAC;QAED,oEAAoE;QACpE,iEAAiE;QACjE,2CAA2C;QAC3C,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAEhC,sFAAsF;YACtF,gFAAgF;YAChF,2DAA2D;YAE3D,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,mBAAmB,CAAC,EAClB,eAAe,EACf,mBAAmB,GAIpB;QACC,mEAAmE;QACnE,kEAAkE;QAClE,mEAAmE;QACnE,MAAM,aAAa,GAAwB,EAAE,CAAC;QAC9C,IAAI,eAAe,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YACrD,aAAa,CAAC,SAAS,GAAG;gBACxB,MAAM,EAAE,eAAe;gBACvB,OAAO,EAAE,MAAM;aAChB,CAAC;QACJ,CAAC;QAED,uEAAuE;QACvE,0BAA0B;QAC1B,IAAI,OAAO,mBAAmB,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACpF,aAAa,CAAC,WAAW,GAAG,mBAAmB,CAAC;QAClD,CAAC;QAED,6EAA6E;QAC7E,gFAAgF;QAChF,4DAA4D;QAC5D,MAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAU,0BAA0B,CAAC,CAAC;QACnF,IAAI,kBAAkB,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;YACtD,aAAa,CAAC,YAAY,GAAG;gBAC3B,GAAG,CAAC,aAAa,CAAC,YAAY,IAAI,EAAE,CAAC;gBACrC,YAAY,EAAE,MAAM;aACrB,CAAC;QACJ,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;CACF"}
1
+ {"version":3,"file":"openai-agent-client.js","sourceRoot":"","sources":["../../source/lib/openai-agent-client.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import test from 'ava';
2
+ import { z } from 'zod';
2
3
  import { OpenRouterError } from '../providers/common/provider-errors.js';
4
+ import { wrapNeedsApproval } from './openai-agent-client.js';
3
5
  test('OpenRouterError includes status and headers', (t) => {
4
6
  const error = new OpenRouterError('Test error', 429, { 'retry-after': '5', 'x-custom': 'value' }, 'response body');
5
7
  t.is(error.message, 'Test error');
@@ -178,4 +180,72 @@ test('retry attempt index calculation', (t) => {
178
180
  // Third retry: retries=0, attemptIndex=2
179
181
  t.is(maxRetries - 0, 2);
180
182
  });
183
+ // ========== wrapNeedsApproval Tests ==========
184
+ const makeDefinition = (needsApproval) => ({
185
+ parameters: z.object({ command: z.string() }),
186
+ needsApproval,
187
+ });
188
+ test('wrapNeedsApproval returns false for params that fail schema validation', async (t) => {
189
+ const definition = makeDefinition(async () => true);
190
+ const wrapped = wrapNeedsApproval(definition);
191
+ t.false(await wrapped(null, {})); // missing required 'command'
192
+ t.false(await wrapped(null, { command: 123 })); // wrong type
193
+ t.false(await wrapped(null, null)); // not an object
194
+ });
195
+ test('wrapNeedsApproval delegates to the tool when params are valid', async (t) => {
196
+ const definition = makeDefinition(async () => true);
197
+ const wrapped = wrapNeedsApproval(definition);
198
+ t.true(await wrapped(null, { command: 'ls' }));
199
+ });
200
+ test('wrapNeedsApproval passes context through to the tool', async (t) => {
201
+ let receivedContext;
202
+ const definition = makeDefinition(async (_params, ctx) => {
203
+ receivedContext = ctx;
204
+ return false;
205
+ });
206
+ const wrapped = wrapNeedsApproval(definition);
207
+ const ctx = { some: 'context' };
208
+ await wrapped(ctx, { command: 'ls' });
209
+ t.is(receivedContext, ctx);
210
+ });
211
+ test('wrapNeedsApproval short-circuits before calling the tool on invalid params', async (t) => {
212
+ let called = false;
213
+ const definition = makeDefinition(async () => {
214
+ called = true;
215
+ return true;
216
+ });
217
+ const wrapped = wrapNeedsApproval(definition);
218
+ await wrapped(null, { command: 123 }); // invalid
219
+ t.false(called);
220
+ });
221
+ test('wrapNeedsApproval delegates when optional fields arrive as null (OpenAI strict schema)', async (t) => {
222
+ // toOpenAIStrictToolSchema converts optional() → nullable().default(null), so the
223
+ // OpenAI API sends null for omitted optional fields. wrapNeedsApproval must not
224
+ // treat these as invalid params and must still call the tool's needsApproval.
225
+ let called = false;
226
+ const definition = {
227
+ // Schema with optional fields — mirrors shell/search-replace/apply-patch
228
+ parameters: z.object({
229
+ command: z.string(),
230
+ timeout_ms: z.number().optional(),
231
+ }),
232
+ needsApproval: async (_params, _ctx) => {
233
+ called = true;
234
+ return true;
235
+ },
236
+ };
237
+ const wrapped = wrapNeedsApproval(definition);
238
+ // Simulates what OpenAI sends for { command: "rm file" } under strict schema:
239
+ // optional timeout_ms arrives as null rather than being omitted
240
+ const result = await wrapped(null, { command: 'rm file', timeout_ms: null });
241
+ t.true(called); // must reach the tool's needsApproval (not short-circuited)
242
+ t.true(result); // must respect its decision (true = needs approval)
243
+ });
244
+ test('wrapNeedsApproval catches unhandled errors and fails safe to true', async (t) => {
245
+ const definition = makeDefinition(async () => {
246
+ throw new Error('Test error');
247
+ });
248
+ const wrapped = wrapNeedsApproval(definition);
249
+ t.true(await wrapped(null, { command: 'ls' }));
250
+ });
181
251
  //# sourceMappingURL=openai-agent-client.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai-agent-client.test.js","sourceRoot":"","sources":["../../source/lib/openai-agent-client.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai-agent-client.test.js","sourceRoot":"","sources":["../../source/lib/openai-agent-client.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Shell, ShellAction, ShellResult } from '@openai/agents';
2
+ export declare class LocalShell implements Shell {
3
+ private readonly cwd;
4
+ constructor(cwd?: string);
5
+ run(action: ShellAction): Promise<ShellResult>;
6
+ }
7
+ //# sourceMappingURL=shell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../source/lib/shell.ts"],"names":[],"mappings":"AAGA,OAAO,EACH,KAAK,EACL,WAAW,EACX,WAAW,EAEd,MAAM,gBAAgB,CAAC;AAIxB,qBAAa,UAAW,YAAW,KAAK;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,GAAE,MAAsB;IAElD,GAAG,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;CAiDvD"}
@@ -0,0 +1,56 @@
1
+ import { exec } from 'node:child_process';
2
+ import { promisify } from 'node:util';
3
+ import process from 'node:process';
4
+ const execAsync = promisify(exec);
5
+ export class LocalShell {
6
+ cwd;
7
+ constructor(cwd = process.cwd()) {
8
+ this.cwd = cwd;
9
+ }
10
+ async run(action) {
11
+ const output = [];
12
+ for (const command of action.commands) {
13
+ let stdout = '';
14
+ let stderr = '';
15
+ let exitCode = 0;
16
+ let outcome = {
17
+ type: 'exit',
18
+ exitCode: 0,
19
+ };
20
+ try {
21
+ const { stdout: localStdout, stderr: localStderr } = await execAsync(command, {
22
+ cwd: this.cwd,
23
+ timeout: action.timeoutMs,
24
+ maxBuffer: action.maxOutputLength,
25
+ });
26
+ stdout = localStdout;
27
+ stderr = localStderr;
28
+ }
29
+ catch (error) {
30
+ exitCode = typeof error?.code === 'number' ? error.code : null;
31
+ stdout = error?.stdout ?? '';
32
+ stderr = error?.stderr ?? '';
33
+ outcome =
34
+ error?.killed || error?.signal === 'SIGTERM'
35
+ ? { type: 'timeout' }
36
+ : { type: 'exit', exitCode };
37
+ }
38
+ output.push({
39
+ command,
40
+ stdout,
41
+ stderr,
42
+ outcome,
43
+ });
44
+ if (outcome.type === 'timeout') {
45
+ break;
46
+ }
47
+ }
48
+ return {
49
+ output,
50
+ providerData: {
51
+ working_directory: this.cwd,
52
+ },
53
+ };
54
+ }
55
+ }
56
+ //# sourceMappingURL=shell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell.js","sourceRoot":"","sources":["../../source/lib/shell.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,OAAO,MAAM,cAAc,CAAC;AAQnC,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAElC,MAAM,OAAO,UAAU;IACU;IAA7B,YAA6B,MAAc,OAAO,CAAC,GAAG,EAAE;QAA3B,QAAG,GAAH,GAAG,CAAwB;IAAI,CAAC;IAE7D,KAAK,CAAC,GAAG,CAAC,MAAmB;QACzB,MAAM,MAAM,GAA0B,EAAE,CAAC;QAEzC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpC,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,QAAQ,GAAkB,CAAC,CAAC;YAChC,IAAI,OAAO,GAAiC;gBACxC,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,CAAC;aACd,CAAC;YACF,IAAI,CAAC;gBACD,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,SAAS,CAChE,OAAO,EACP;oBACI,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,OAAO,EAAE,MAAM,CAAC,SAAS;oBACzB,SAAS,EAAE,MAAM,CAAC,eAAe;iBACpC,CACJ,CAAC;gBACF,MAAM,GAAG,WAAW,CAAC;gBACrB,MAAM,GAAG,WAAW,CAAC;YACzB,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBAClB,QAAQ,GAAG,OAAO,KAAK,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC/D,MAAM,GAAG,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC;gBAC7B,MAAM,GAAG,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC;gBAC7B,OAAO;oBACH,KAAK,EAAE,MAAM,IAAI,KAAK,EAAE,MAAM,KAAK,SAAS;wBACxC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE;wBACrB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YACzC,CAAC;YACD,MAAM,CAAC,IAAI,CAAC;gBACR,OAAO;gBACP,MAAM;gBACN,MAAM;gBACN,OAAO;aACV,CAAC,CAAC;YACH,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC7B,MAAM;YACV,CAAC;QACL,CAAC;QAED,OAAO;YACH,MAAM;YACN,YAAY,EAAE;gBACV,iBAAiB,EAAE,IAAI,CAAC,GAAG;aAC9B;SACJ,CAAC;IACN,CAAC;CACJ"}
@@ -5,8 +5,9 @@ import type { Tool } from '@openai/agents';
5
5
  * Fixes applied (in order):
6
6
  * 1. Strip markdown code fences (```json ... ```)
7
7
  * 2. Extract JSON object/array from surrounding prose
8
- * 3. Escape unescaped double-quotes inside JSON string values
9
- * 4. Remove trailing commas before closing braces/brackets
8
+ * 3. Escape raw control characters inside JSON string values
9
+ * 4. Escape unescaped double-quotes inside JSON string values
10
+ * 5. Remove trailing commas before closing braces/brackets
10
11
  *
11
12
  * IMPORTANT: Only runs the repair heuristics when `JSON.parse` fails on the
12
13
  * input, so already-valid JSON is never modified.