@robota-sdk/agent-core 3.0.0-beta.15 → 3.0.0-beta.16

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 (486) hide show
  1. package/README.md +2 -0
  2. package/dist/abstracts/abstract-agent.d.ts.map +1 -1
  3. package/dist/abstracts/abstract-agent.js.map +1 -1
  4. package/dist/abstracts/abstract-ai-provider.d.ts +8 -7
  5. package/dist/abstracts/abstract-ai-provider.d.ts.map +1 -1
  6. package/dist/abstracts/abstract-ai-provider.js +21 -15
  7. package/dist/abstracts/abstract-ai-provider.js.map +1 -1
  8. package/dist/abstracts/abstract-executor.d.ts.map +1 -1
  9. package/dist/abstracts/abstract-executor.js +20 -12
  10. package/dist/abstracts/abstract-executor.js.map +1 -1
  11. package/dist/abstracts/abstract-manager.d.ts.map +1 -1
  12. package/dist/abstracts/abstract-manager.js.map +1 -1
  13. package/dist/abstracts/abstract-module-events.d.ts +77 -0
  14. package/dist/abstracts/abstract-module-events.d.ts.map +1 -0
  15. package/dist/abstracts/abstract-module-events.js +8 -0
  16. package/dist/abstracts/abstract-module-events.js.map +1 -0
  17. package/dist/abstracts/abstract-module-types.d.ts +110 -0
  18. package/dist/abstracts/abstract-module-types.d.ts.map +1 -0
  19. package/dist/abstracts/abstract-module-types.js +20 -0
  20. package/dist/abstracts/abstract-module-types.js.map +1 -0
  21. package/dist/abstracts/abstract-module.d.ts +13 -312
  22. package/dist/abstracts/abstract-module.d.ts.map +1 -1
  23. package/dist/abstracts/abstract-module.js +137 -302
  24. package/dist/abstracts/abstract-module.js.map +1 -1
  25. package/dist/abstracts/abstract-module.test.d.ts +2 -0
  26. package/dist/abstracts/abstract-module.test.d.ts.map +1 -0
  27. package/dist/abstracts/abstract-module.test.js +150 -0
  28. package/dist/abstracts/abstract-module.test.js.map +1 -0
  29. package/dist/abstracts/abstract-plugin-types.d.ts +152 -0
  30. package/dist/abstracts/abstract-plugin-types.d.ts.map +1 -0
  31. package/dist/abstracts/abstract-plugin-types.js +29 -0
  32. package/dist/abstracts/abstract-plugin-types.js.map +1 -0
  33. package/dist/abstracts/abstract-plugin.d.ts +15 -304
  34. package/dist/abstracts/abstract-plugin.d.ts.map +1 -1
  35. package/dist/abstracts/abstract-plugin.js +28 -144
  36. package/dist/abstracts/abstract-plugin.js.map +1 -1
  37. package/dist/abstracts/abstract-tool.d.ts +1 -1
  38. package/dist/abstracts/abstract-tool.d.ts.map +1 -1
  39. package/dist/abstracts/abstract-tool.js +2 -2
  40. package/dist/abstracts/abstract-tool.js.map +1 -1
  41. package/dist/abstracts/abstract-workflow-converter.d.ts.map +1 -1
  42. package/dist/abstracts/abstract-workflow-converter.js +29 -20
  43. package/dist/abstracts/abstract-workflow-converter.js.map +1 -1
  44. package/dist/abstracts/abstract-workflow-converter.test.d.ts +2 -0
  45. package/dist/abstracts/abstract-workflow-converter.test.d.ts.map +1 -0
  46. package/dist/abstracts/abstract-workflow-converter.test.js +144 -0
  47. package/dist/abstracts/abstract-workflow-converter.test.js.map +1 -0
  48. package/dist/abstracts/abstract-workflow-validator-helpers.d.ts +37 -0
  49. package/dist/abstracts/abstract-workflow-validator-helpers.d.ts.map +1 -0
  50. package/dist/abstracts/abstract-workflow-validator-helpers.js +147 -0
  51. package/dist/abstracts/abstract-workflow-validator-helpers.js.map +1 -0
  52. package/dist/abstracts/abstract-workflow-validator-helpers.test.d.ts +2 -0
  53. package/dist/abstracts/abstract-workflow-validator-helpers.test.d.ts.map +1 -0
  54. package/dist/abstracts/abstract-workflow-validator-helpers.test.js +157 -0
  55. package/dist/abstracts/abstract-workflow-validator-helpers.test.js.map +1 -0
  56. package/dist/abstracts/abstract-workflow-validator.d.ts +18 -130
  57. package/dist/abstracts/abstract-workflow-validator.d.ts.map +1 -1
  58. package/dist/abstracts/abstract-workflow-validator.js +58 -326
  59. package/dist/abstracts/abstract-workflow-validator.js.map +1 -1
  60. package/dist/abstracts/abstract-workflow-validator.test.d.ts +2 -0
  61. package/dist/abstracts/abstract-workflow-validator.test.d.ts.map +1 -0
  62. package/dist/abstracts/abstract-workflow-validator.test.js +142 -0
  63. package/dist/abstracts/abstract-workflow-validator.test.js.map +1 -0
  64. package/dist/abstracts/index.d.ts +1 -0
  65. package/dist/abstracts/index.d.ts.map +1 -1
  66. package/dist/abstracts/index.js +3 -2
  67. package/dist/abstracts/index.js.map +1 -1
  68. package/dist/agents/constants.d.ts +1 -1
  69. package/dist/agents/constants.d.ts.map +1 -1
  70. package/dist/agents/constants.js +1 -1
  71. package/dist/agents/constants.js.map +1 -1
  72. package/dist/agents/index.js +1 -1
  73. package/dist/agents/index.js.map +1 -1
  74. package/dist/agents/robota.test.js +36 -36
  75. package/dist/agents/robota.test.js.map +1 -1
  76. package/dist/browser/index.d.ts +28 -1
  77. package/dist/browser/index.js +5 -5
  78. package/dist/context/index.d.ts +4 -0
  79. package/dist/context/index.d.ts.map +1 -0
  80. package/dist/context/index.js +2 -0
  81. package/dist/context/index.js.map +1 -0
  82. package/dist/context/models.d.ts +27 -0
  83. package/dist/context/models.d.ts.map +1 -0
  84. package/dist/context/models.js +76 -0
  85. package/dist/context/models.js.map +1 -0
  86. package/dist/context/models.test.d.ts +2 -0
  87. package/dist/context/models.test.d.ts.map +1 -0
  88. package/dist/context/models.test.js +51 -0
  89. package/dist/context/models.test.js.map +1 -0
  90. package/dist/context/types.d.ts +25 -0
  91. package/dist/context/types.d.ts.map +1 -0
  92. package/dist/context/types.js +8 -0
  93. package/dist/context/types.js.map +1 -0
  94. package/dist/core/robota-config-manager.d.ts +78 -0
  95. package/dist/core/robota-config-manager.d.ts.map +1 -0
  96. package/dist/core/robota-config-manager.js +216 -0
  97. package/dist/core/robota-config-manager.js.map +1 -0
  98. package/dist/core/robota-execution.d.ts +23 -0
  99. package/dist/core/robota-execution.d.ts.map +1 -0
  100. package/dist/core/robota-execution.js +81 -0
  101. package/dist/core/robota-execution.js.map +1 -0
  102. package/dist/core/robota-initializer.d.ts +37 -0
  103. package/dist/core/robota-initializer.d.ts.map +1 -0
  104. package/dist/core/robota-initializer.js +77 -0
  105. package/dist/core/robota-initializer.js.map +1 -0
  106. package/dist/core/robota-lifecycle.d.ts +53 -0
  107. package/dist/core/robota-lifecycle.d.ts.map +1 -0
  108. package/dist/core/robota-lifecycle.js +73 -0
  109. package/dist/core/robota-lifecycle.js.map +1 -0
  110. package/dist/core/robota-module-manager.d.ts +78 -0
  111. package/dist/core/robota-module-manager.d.ts.map +1 -0
  112. package/dist/core/robota-module-manager.js +114 -0
  113. package/dist/core/robota-module-manager.js.map +1 -0
  114. package/dist/core/robota-plugin-manager.d.ts +40 -0
  115. package/dist/core/robota-plugin-manager.d.ts.map +1 -0
  116. package/dist/core/robota-plugin-manager.js +71 -0
  117. package/dist/core/robota-plugin-manager.js.map +1 -0
  118. package/dist/core/robota.d.ts +56 -606
  119. package/dist/core/robota.d.ts.map +1 -1
  120. package/dist/core/robota.js +210 -1152
  121. package/dist/core/robota.js.map +1 -1
  122. package/dist/core/robota.test.d.ts +2 -0
  123. package/dist/core/robota.test.d.ts.map +1 -0
  124. package/dist/core/robota.test.js +353 -0
  125. package/dist/core/robota.test.js.map +1 -0
  126. package/dist/event-service/event-service.d.ts +61 -0
  127. package/dist/event-service/event-service.d.ts.map +1 -0
  128. package/dist/event-service/event-service.js +120 -0
  129. package/dist/event-service/event-service.js.map +1 -0
  130. package/dist/event-service/index.d.ts +6 -0
  131. package/dist/event-service/index.d.ts.map +1 -0
  132. package/dist/event-service/index.js +4 -0
  133. package/dist/event-service/index.js.map +1 -0
  134. package/dist/event-service/interfaces.d.ts +98 -0
  135. package/dist/event-service/interfaces.d.ts.map +1 -0
  136. package/dist/event-service/interfaces.js +8 -0
  137. package/dist/event-service/interfaces.js.map +1 -0
  138. package/dist/event-service/task-events.d.ts +6 -0
  139. package/dist/event-service/task-events.d.ts.map +1 -0
  140. package/dist/event-service/task-events.js +6 -0
  141. package/dist/event-service/task-events.js.map +1 -0
  142. package/dist/event-service/user-events.d.ts +7 -0
  143. package/dist/event-service/user-events.d.ts.map +1 -0
  144. package/dist/event-service/user-events.js +6 -0
  145. package/dist/event-service/user-events.js.map +1 -0
  146. package/dist/executors/local-executor.d.ts +2 -2
  147. package/dist/executors/local-executor.d.ts.map +1 -1
  148. package/dist/executors/local-executor.js +7 -7
  149. package/dist/executors/local-executor.js.map +1 -1
  150. package/dist/executors/local-executor.test.js +16 -16
  151. package/dist/executors/local-executor.test.js.map +1 -1
  152. package/dist/hooks/hook-runner.d.ts +20 -0
  153. package/dist/hooks/hook-runner.d.ts.map +1 -0
  154. package/dist/hooks/hook-runner.js +95 -0
  155. package/dist/hooks/hook-runner.js.map +1 -0
  156. package/dist/hooks/index.d.ts +3 -0
  157. package/dist/hooks/index.d.ts.map +1 -0
  158. package/dist/hooks/index.js +3 -0
  159. package/dist/hooks/index.js.map +1 -0
  160. package/dist/hooks/types.d.ts +40 -0
  161. package/dist/hooks/types.d.ts.map +1 -0
  162. package/dist/hooks/types.js +5 -0
  163. package/dist/hooks/types.js.map +1 -0
  164. package/dist/index.d.ts +49 -75
  165. package/dist/index.d.ts.map +1 -1
  166. package/dist/index.js +26 -71
  167. package/dist/index.js.map +1 -1
  168. package/dist/interfaces/agent.d.ts +3 -2
  169. package/dist/interfaces/agent.d.ts.map +1 -1
  170. package/dist/interfaces/cache.d.ts +64 -0
  171. package/dist/interfaces/cache.d.ts.map +1 -0
  172. package/dist/interfaces/cache.js +2 -0
  173. package/dist/interfaces/cache.js.map +1 -0
  174. package/dist/interfaces/event-service.d.ts +4 -75
  175. package/dist/interfaces/event-service.d.ts.map +1 -1
  176. package/dist/interfaces/executor.d.ts.map +1 -1
  177. package/dist/interfaces/history-module.d.ts.map +1 -1
  178. package/dist/interfaces/index.d.ts +12 -9
  179. package/dist/interfaces/index.d.ts.map +1 -1
  180. package/dist/interfaces/index.js +2 -1
  181. package/dist/interfaces/index.js.map +1 -1
  182. package/dist/interfaces/manager.d.ts.map +1 -1
  183. package/dist/interfaces/media-provider.d.ts +86 -0
  184. package/dist/interfaces/media-provider.d.ts.map +1 -0
  185. package/dist/interfaces/media-provider.js +13 -0
  186. package/dist/interfaces/media-provider.js.map +1 -0
  187. package/dist/interfaces/messages.d.ts +23 -1
  188. package/dist/interfaces/messages.d.ts.map +1 -1
  189. package/dist/interfaces/messages.js.map +1 -1
  190. package/dist/interfaces/progress-reporting.d.ts.map +1 -1
  191. package/dist/interfaces/progress-reporting.js +1 -3
  192. package/dist/interfaces/progress-reporting.js.map +1 -1
  193. package/dist/interfaces/provider.d.ts +12 -1
  194. package/dist/interfaces/provider.d.ts.map +1 -1
  195. package/dist/interfaces/service.d.ts.map +1 -1
  196. package/dist/interfaces/tool.d.ts +1 -0
  197. package/dist/interfaces/tool.d.ts.map +1 -1
  198. package/dist/interfaces/types.d.ts.map +1 -1
  199. package/dist/interfaces/types.js +6 -6
  200. package/dist/interfaces/types.js.map +1 -1
  201. package/dist/interfaces/workflow-converter.d.ts.map +1 -1
  202. package/dist/interfaces/workflow-validator.d.ts.map +1 -1
  203. package/dist/interfaces/workflow-validator.js.map +1 -1
  204. package/dist/managers/agent-factory.d.ts.map +1 -1
  205. package/dist/managers/agent-factory.js +24 -16
  206. package/dist/managers/agent-factory.js.map +1 -1
  207. package/dist/managers/agent-factory.test.js +35 -25
  208. package/dist/managers/agent-factory.test.js.map +1 -1
  209. package/dist/managers/agent-templates.d.ts.map +1 -1
  210. package/dist/managers/agent-templates.js +22 -10
  211. package/dist/managers/agent-templates.js.map +1 -1
  212. package/dist/managers/agent-templates.test.d.ts +2 -0
  213. package/dist/managers/agent-templates.test.d.ts.map +1 -0
  214. package/dist/managers/agent-templates.test.js +175 -0
  215. package/dist/managers/agent-templates.test.js.map +1 -0
  216. package/dist/managers/ai-provider-manager.d.ts.map +1 -1
  217. package/dist/managers/ai-provider-manager.js +8 -10
  218. package/dist/managers/ai-provider-manager.js.map +1 -1
  219. package/dist/managers/ai-provider-manager.test.d.ts +2 -0
  220. package/dist/managers/ai-provider-manager.test.d.ts.map +1 -0
  221. package/dist/managers/ai-provider-manager.test.js +327 -0
  222. package/dist/managers/ai-provider-manager.test.js.map +1 -0
  223. package/dist/managers/conversation-history-manager.d.ts +13 -425
  224. package/dist/managers/conversation-history-manager.d.ts.map +1 -1
  225. package/dist/managers/conversation-history-manager.js +21 -537
  226. package/dist/managers/conversation-history-manager.js.map +1 -1
  227. package/dist/managers/conversation-history-manager.test.js +82 -43
  228. package/dist/managers/conversation-history-manager.test.js.map +1 -1
  229. package/dist/managers/conversation-message-factory.d.ts +40 -0
  230. package/dist/managers/conversation-message-factory.d.ts.map +1 -0
  231. package/dist/managers/conversation-message-factory.js +66 -0
  232. package/dist/managers/conversation-message-factory.js.map +1 -0
  233. package/dist/managers/conversation-message-factory.test.d.ts +2 -0
  234. package/dist/managers/conversation-message-factory.test.d.ts.map +1 -0
  235. package/dist/managers/conversation-message-factory.test.js +95 -0
  236. package/dist/managers/conversation-message-factory.test.js.map +1 -0
  237. package/dist/managers/conversation-session.d.ts +90 -0
  238. package/dist/managers/conversation-session.d.ts.map +1 -0
  239. package/dist/managers/conversation-session.js +177 -0
  240. package/dist/managers/conversation-session.js.map +1 -0
  241. package/dist/managers/index.d.ts +2 -2
  242. package/dist/managers/index.d.ts.map +1 -1
  243. package/dist/managers/index.js +1 -1
  244. package/dist/managers/index.js.map +1 -1
  245. package/dist/managers/module-registry-validation.d.ts +38 -0
  246. package/dist/managers/module-registry-validation.d.ts.map +1 -0
  247. package/dist/managers/module-registry-validation.js +100 -0
  248. package/dist/managers/module-registry-validation.js.map +1 -0
  249. package/dist/managers/module-registry-validation.test.d.ts +2 -0
  250. package/dist/managers/module-registry-validation.test.d.ts.map +1 -0
  251. package/dist/managers/module-registry-validation.test.js +144 -0
  252. package/dist/managers/module-registry-validation.test.js.map +1 -0
  253. package/dist/managers/module-registry.d.ts +13 -111
  254. package/dist/managers/module-registry.d.ts.map +1 -1
  255. package/dist/managers/module-registry.js +74 -344
  256. package/dist/managers/module-registry.js.map +1 -1
  257. package/dist/managers/module-type-registry-helpers.d.ts +34 -0
  258. package/dist/managers/module-type-registry-helpers.d.ts.map +1 -0
  259. package/dist/managers/module-type-registry-helpers.js +255 -0
  260. package/dist/managers/module-type-registry-helpers.js.map +1 -0
  261. package/dist/managers/module-type-registry.d.ts +10 -64
  262. package/dist/managers/module-type-registry.d.ts.map +1 -1
  263. package/dist/managers/module-type-registry.js +25 -373
  264. package/dist/managers/module-type-registry.js.map +1 -1
  265. package/dist/managers/plugins-helpers.d.ts +18 -0
  266. package/dist/managers/plugins-helpers.d.ts.map +1 -0
  267. package/dist/managers/plugins-helpers.js +118 -0
  268. package/dist/managers/plugins-helpers.js.map +1 -0
  269. package/dist/managers/plugins-helpers.test.d.ts +2 -0
  270. package/dist/managers/plugins-helpers.test.d.ts.map +1 -0
  271. package/dist/managers/plugins-helpers.test.js +68 -0
  272. package/dist/managers/plugins-helpers.test.js.map +1 -0
  273. package/dist/managers/plugins.d.ts +16 -109
  274. package/dist/managers/plugins.d.ts.map +1 -1
  275. package/dist/managers/plugins.js +29 -220
  276. package/dist/managers/plugins.js.map +1 -1
  277. package/dist/managers/plugins.test.d.ts +2 -0
  278. package/dist/managers/plugins.test.d.ts.map +1 -0
  279. package/dist/managers/plugins.test.js +160 -0
  280. package/dist/managers/plugins.test.js.map +1 -0
  281. package/dist/managers/tool-manager.d.ts +1 -1
  282. package/dist/managers/tool-manager.d.ts.map +1 -1
  283. package/dist/managers/tool-manager.js +15 -5
  284. package/dist/managers/tool-manager.js.map +1 -1
  285. package/dist/managers/tool-manager.test.js +32 -16
  286. package/dist/managers/tool-manager.test.js.map +1 -1
  287. package/dist/node/index.cjs +5 -5
  288. package/dist/node/index.d.cts +28 -1
  289. package/dist/node/index.d.ts +28 -1
  290. package/dist/node/index.js +5 -5
  291. package/dist/permissions/index.d.ts +7 -0
  292. package/dist/permissions/index.d.ts.map +1 -0
  293. package/dist/permissions/index.js +4 -0
  294. package/dist/permissions/index.js.map +1 -0
  295. package/dist/permissions/permission-gate.d.ts +38 -0
  296. package/dist/permissions/permission-gate.d.ts.map +1 -0
  297. package/dist/permissions/permission-gate.js +119 -0
  298. package/dist/permissions/permission-gate.js.map +1 -0
  299. package/dist/permissions/permission-mode.d.ts +25 -0
  300. package/dist/permissions/permission-mode.d.ts.map +1 -0
  301. package/dist/permissions/permission-mode.js +58 -0
  302. package/dist/permissions/permission-mode.js.map +1 -0
  303. package/dist/permissions/types.d.ts +27 -0
  304. package/dist/permissions/types.d.ts.map +1 -0
  305. package/dist/permissions/types.js +9 -0
  306. package/dist/permissions/types.js.map +1 -0
  307. package/dist/plugins/event-emitter/metrics.d.ts.map +1 -1
  308. package/dist/plugins/event-emitter/metrics.js +1 -1
  309. package/dist/plugins/event-emitter/metrics.js.map +1 -1
  310. package/dist/plugins/event-emitter/plugin-types.d.ts +88 -0
  311. package/dist/plugins/event-emitter/plugin-types.d.ts.map +1 -0
  312. package/dist/plugins/event-emitter/plugin-types.js +2 -0
  313. package/dist/plugins/event-emitter/plugin-types.js.map +1 -0
  314. package/dist/plugins/event-emitter/types.d.ts +3 -3
  315. package/dist/plugins/event-emitter/types.d.ts.map +1 -1
  316. package/dist/plugins/event-emitter/types.js +4 -4
  317. package/dist/plugins/event-emitter/types.js.map +1 -1
  318. package/dist/plugins/event-emitter-plugin.d.ts +9 -184
  319. package/dist/plugins/event-emitter-plugin.d.ts.map +1 -1
  320. package/dist/plugins/event-emitter-plugin.js +91 -235
  321. package/dist/plugins/event-emitter-plugin.js.map +1 -1
  322. package/dist/schemas/agent-template-schema.d.ts +12 -12
  323. package/dist/schemas/agent-template-schema.d.ts.map +1 -1
  324. package/dist/schemas/agent-template-schema.js +35 -33
  325. package/dist/schemas/agent-template-schema.js.map +1 -1
  326. package/dist/services/cache/cache-key-builder.d.ts +13 -0
  327. package/dist/services/cache/cache-key-builder.d.ts.map +1 -0
  328. package/dist/services/cache/cache-key-builder.js +30 -0
  329. package/dist/services/cache/cache-key-builder.js.map +1 -0
  330. package/dist/services/cache/cache-key-builder.test.d.ts +2 -0
  331. package/dist/services/cache/cache-key-builder.test.d.ts.map +1 -0
  332. package/dist/services/cache/cache-key-builder.test.js +56 -0
  333. package/dist/services/cache/cache-key-builder.test.js.map +1 -0
  334. package/dist/services/cache/execution-cache-service.d.ts +18 -0
  335. package/dist/services/cache/execution-cache-service.d.ts.map +1 -0
  336. package/dist/services/cache/execution-cache-service.js +26 -0
  337. package/dist/services/cache/execution-cache-service.js.map +1 -0
  338. package/dist/services/cache/execution-cache-service.test.d.ts +2 -0
  339. package/dist/services/cache/execution-cache-service.test.d.ts.map +1 -0
  340. package/dist/services/cache/execution-cache-service.test.js +59 -0
  341. package/dist/services/cache/execution-cache-service.test.js.map +1 -0
  342. package/dist/services/cache/index.d.ts +4 -0
  343. package/dist/services/cache/index.d.ts.map +1 -0
  344. package/dist/services/cache/index.js +4 -0
  345. package/dist/services/cache/index.js.map +1 -0
  346. package/dist/services/cache/memory-cache-storage.d.ts +25 -0
  347. package/dist/services/cache/memory-cache-storage.d.ts.map +1 -0
  348. package/dist/services/cache/memory-cache-storage.js +89 -0
  349. package/dist/services/cache/memory-cache-storage.js.map +1 -0
  350. package/dist/services/cache/memory-cache-storage.test.d.ts +2 -0
  351. package/dist/services/cache/memory-cache-storage.test.d.ts.map +1 -0
  352. package/dist/services/cache/memory-cache-storage.test.js +94 -0
  353. package/dist/services/cache/memory-cache-storage.test.js.map +1 -0
  354. package/dist/services/conversation-service/conversation-service.test.d.ts +2 -0
  355. package/dist/services/conversation-service/conversation-service.test.d.ts.map +1 -0
  356. package/dist/services/conversation-service/conversation-service.test.js +248 -0
  357. package/dist/services/conversation-service/conversation-service.test.js.map +1 -0
  358. package/dist/services/conversation-service/index.d.ts +10 -71
  359. package/dist/services/conversation-service/index.d.ts.map +1 -1
  360. package/dist/services/conversation-service/index.js +58 -355
  361. package/dist/services/conversation-service/index.js.map +1 -1
  362. package/dist/services/conversation-service/message-helpers.d.ts +47 -0
  363. package/dist/services/conversation-service/message-helpers.d.ts.map +1 -0
  364. package/dist/services/conversation-service/message-helpers.js +150 -0
  365. package/dist/services/conversation-service/message-helpers.js.map +1 -0
  366. package/dist/services/conversation-service/types.d.ts.map +1 -1
  367. package/dist/services/execution-constants.d.ts +16 -0
  368. package/dist/services/execution-constants.d.ts.map +1 -0
  369. package/dist/services/execution-constants.js +16 -0
  370. package/dist/services/execution-constants.js.map +1 -0
  371. package/dist/services/execution-event-emitter.d.ts +60 -0
  372. package/dist/services/execution-event-emitter.d.ts.map +1 -0
  373. package/dist/services/execution-event-emitter.js +323 -0
  374. package/dist/services/execution-event-emitter.js.map +1 -0
  375. package/dist/services/execution-round.d.ts +58 -0
  376. package/dist/services/execution-round.d.ts.map +1 -0
  377. package/dist/services/execution-round.js +323 -0
  378. package/dist/services/execution-round.js.map +1 -0
  379. package/dist/services/execution-round.test.d.ts +2 -0
  380. package/dist/services/execution-round.test.d.ts.map +1 -0
  381. package/dist/services/execution-round.test.js +188 -0
  382. package/dist/services/execution-round.test.js.map +1 -0
  383. package/dist/services/execution-service.d.ts +28 -125
  384. package/dist/services/execution-service.d.ts.map +1 -1
  385. package/dist/services/execution-service.js +222 -1134
  386. package/dist/services/execution-service.js.map +1 -1
  387. package/dist/services/execution-service.test.js +115 -72
  388. package/dist/services/execution-service.test.js.map +1 -1
  389. package/dist/services/execution-stream.d.ts +32 -0
  390. package/dist/services/execution-stream.d.ts.map +1 -0
  391. package/dist/services/execution-stream.js +268 -0
  392. package/dist/services/execution-stream.js.map +1 -0
  393. package/dist/services/execution-types.d.ts +122 -0
  394. package/dist/services/execution-types.d.ts.map +1 -0
  395. package/dist/services/execution-types.js +48 -0
  396. package/dist/services/execution-types.js.map +1 -0
  397. package/dist/services/history-module.d.ts.map +1 -1
  398. package/dist/services/history-module.js +1 -1
  399. package/dist/services/history-module.js.map +1 -1
  400. package/dist/services/history-module.test.d.ts +2 -0
  401. package/dist/services/history-module.test.d.ts.map +1 -0
  402. package/dist/services/history-module.test.js +137 -0
  403. package/dist/services/history-module.test.js.map +1 -0
  404. package/dist/services/in-memory-history-store.d.ts.map +1 -1
  405. package/dist/services/in-memory-history-store.js +1 -1
  406. package/dist/services/in-memory-history-store.js.map +1 -1
  407. package/dist/services/index.d.ts +0 -1
  408. package/dist/services/index.d.ts.map +1 -1
  409. package/dist/services/index.js +2 -3
  410. package/dist/services/index.js.map +1 -1
  411. package/dist/services/plugin-hook-dispatcher.d.ts +11 -0
  412. package/dist/services/plugin-hook-dispatcher.d.ts.map +1 -0
  413. package/dist/services/plugin-hook-dispatcher.js +68 -0
  414. package/dist/services/plugin-hook-dispatcher.js.map +1 -0
  415. package/dist/services/plugin-hook-dispatcher.test.d.ts +2 -0
  416. package/dist/services/plugin-hook-dispatcher.test.d.ts.map +1 -0
  417. package/dist/services/plugin-hook-dispatcher.test.js +93 -0
  418. package/dist/services/plugin-hook-dispatcher.test.js.map +1 -0
  419. package/dist/services/plugin-priority.test.d.ts +2 -0
  420. package/dist/services/plugin-priority.test.d.ts.map +1 -0
  421. package/dist/services/plugin-priority.test.js +119 -0
  422. package/dist/services/plugin-priority.test.js.map +1 -0
  423. package/dist/services/tool-execution-service.d.ts +1 -0
  424. package/dist/services/tool-execution-service.d.ts.map +1 -1
  425. package/dist/services/tool-execution-service.js +89 -46
  426. package/dist/services/tool-execution-service.js.map +1 -1
  427. package/dist/services/tool-execution-service.test.d.ts +2 -0
  428. package/dist/services/tool-execution-service.test.d.ts.map +1 -0
  429. package/dist/services/tool-execution-service.test.js +358 -0
  430. package/dist/services/tool-execution-service.test.js.map +1 -0
  431. package/dist/tool-registry/function-tool.d.ts +54 -0
  432. package/dist/tool-registry/function-tool.d.ts.map +1 -0
  433. package/dist/tool-registry/function-tool.js +190 -0
  434. package/dist/tool-registry/function-tool.js.map +1 -0
  435. package/dist/tool-registry/index.d.ts +3 -0
  436. package/dist/tool-registry/index.d.ts.map +1 -0
  437. package/dist/tool-registry/index.js +3 -0
  438. package/dist/tool-registry/index.js.map +1 -0
  439. package/dist/tool-registry/tool-registry.d.ts +54 -0
  440. package/dist/tool-registry/tool-registry.d.ts.map +1 -0
  441. package/dist/tool-registry/tool-registry.js +148 -0
  442. package/dist/tool-registry/tool-registry.js.map +1 -0
  443. package/dist/utils/errors.d.ts +11 -2
  444. package/dist/utils/errors.d.ts.map +1 -1
  445. package/dist/utils/errors.js +13 -2
  446. package/dist/utils/errors.js.map +1 -1
  447. package/dist/utils/errors.test.d.ts +2 -0
  448. package/dist/utils/errors.test.d.ts.map +1 -0
  449. package/dist/utils/errors.test.js +361 -0
  450. package/dist/utils/errors.test.js.map +1 -0
  451. package/dist/utils/execution-proxy.d.ts +7 -3
  452. package/dist/utils/execution-proxy.d.ts.map +1 -1
  453. package/dist/utils/execution-proxy.js +64 -42
  454. package/dist/utils/execution-proxy.js.map +1 -1
  455. package/dist/utils/execution-proxy.test.d.ts +2 -0
  456. package/dist/utils/execution-proxy.test.d.ts.map +1 -0
  457. package/dist/utils/execution-proxy.test.js +179 -0
  458. package/dist/utils/execution-proxy.test.js.map +1 -0
  459. package/dist/utils/logger.d.ts +3 -3
  460. package/dist/utils/logger.d.ts.map +1 -1
  461. package/dist/utils/logger.js +9 -5
  462. package/dist/utils/logger.js.map +1 -1
  463. package/dist/utils/message-converter.d.ts +1 -4
  464. package/dist/utils/message-converter.d.ts.map +1 -1
  465. package/dist/utils/message-converter.js +13 -12
  466. package/dist/utils/message-converter.js.map +1 -1
  467. package/dist/utils/message-converter.test.d.ts +2 -0
  468. package/dist/utils/message-converter.test.d.ts.map +1 -0
  469. package/dist/utils/message-converter.test.js +164 -0
  470. package/dist/utils/message-converter.test.js.map +1 -0
  471. package/dist/utils/periodic-task.d.ts +1 -1
  472. package/dist/utils/periodic-task.d.ts.map +1 -1
  473. package/dist/utils/periodic-task.js +1 -1
  474. package/dist/utils/periodic-task.js.map +1 -1
  475. package/dist/utils/periodic-task.test.d.ts +2 -0
  476. package/dist/utils/periodic-task.test.d.ts.map +1 -0
  477. package/dist/utils/periodic-task.test.js +87 -0
  478. package/dist/utils/periodic-task.test.js.map +1 -0
  479. package/dist/utils/validation.d.ts.map +1 -1
  480. package/dist/utils/validation.js +17 -11
  481. package/dist/utils/validation.js.map +1 -1
  482. package/dist/utils/validation.test.d.ts +2 -0
  483. package/dist/utils/validation.test.d.ts.map +1 -0
  484. package/dist/utils/validation.test.js +249 -0
  485. package/dist/utils/validation.test.js.map +1 -0
  486. package/package.json +1 -1
@@ -1,8 +1,6 @@
1
- import { NetworkError, ProviderError } from '../../utils/errors';
1
+ import { ProviderError } from '../../utils/errors';
2
2
  import { createLogger } from '../../utils/logger';
3
- /**
4
- * Default conversation service options
5
- */
3
+ import { createUserMessageStatic, createAssistantMessageStatic, createSystemMessageStatic, createToolMessageStatic, convertToProviderMetadata, processProviderResponse, processStreamingChunk, executeWithRetry, } from './message-helpers';
6
4
  const DEFAULT_OPTIONS = {
7
5
  maxHistoryLength: 100,
8
6
  enableRetry: true,
@@ -10,335 +8,128 @@ const DEFAULT_OPTIONS = {
10
8
  retryDelay: 1000,
11
9
  timeout: 30000,
12
10
  };
13
- /**
14
- * Conversation Service - handles AI provider interactions and response processing
15
- * Stateless service that manages conversation context, AI provider calls, and response processing
16
- * All methods are pure functions without instance state
17
- * @internal
18
- */
11
+ /** @internal */
19
12
  export class ConversationService {
20
- /**
21
- * Prepare conversation context from messages and configuration
22
- * Pure function that transforms inputs to context object
23
- */
24
13
  prepareContext(messages, model, provider, contextOptions = {}, serviceOptions = {}) {
25
- const logger = createLogger('ConversationService');
26
- return ConversationService.createContext(messages, model, provider, contextOptions, serviceOptions, logger);
14
+ return this.buildContext(messages, model, provider, contextOptions, serviceOptions, createLogger('ConversationService'));
27
15
  }
28
- /**
29
- * Generate a response using the AI provider
30
- * Stateless operation that handles the full request-response cycle
31
- */
32
16
  async generateResponse(provider, context, serviceOptions = {}) {
33
17
  const logger = createLogger('ConversationService');
34
- return ConversationService.performResponseGeneration(provider, context, serviceOptions, logger);
35
- }
36
- /**
37
- * Generate streaming response using the AI provider
38
- * Stateless streaming operation
39
- */
40
- async *generateStreamingResponse(provider, context, serviceOptions = {}) {
41
- const logger = createLogger('ConversationService');
42
- yield* ConversationService.performStreamingResponse(provider, context, serviceOptions, logger);
43
- }
44
- /**
45
- * Validate conversation context
46
- * Pure validation function
47
- */
48
- validateContext(context) {
49
- return ConversationService.performContextValidation(context);
50
- }
51
- // ==============================================
52
- // Static helper methods (pure functions)
53
- // ==============================================
54
- /**
55
- * Static helper method for context creation
56
- */
57
- static createContext(messages, model, provider, contextOptions, serviceOptions, logger) {
58
- const options = { ...DEFAULT_OPTIONS, ...serviceOptions };
59
- // Limit history length if configured
60
- let processedMessages = messages;
61
- if (options.maxHistoryLength > 0 && messages.length > options.maxHistoryLength) {
62
- // Keep system message if it exists, then take the most recent messages
63
- const systemMessages = messages.filter(m => m.role === 'system');
64
- const otherMessages = messages.filter(m => m.role !== 'system');
65
- const recentMessages = otherMessages.slice(-options.maxHistoryLength + systemMessages.length);
66
- processedMessages = [...systemMessages, ...recentMessages];
67
- logger.debug('Trimmed conversation history', {
68
- originalLength: messages.length,
69
- trimmedLength: processedMessages.length,
70
- maxLength: options.maxHistoryLength,
71
- });
72
- }
73
- const context = {
74
- messages: processedMessages,
75
- model,
76
- provider,
77
- ...(contextOptions.systemMessage && { systemMessage: contextOptions.systemMessage }),
78
- ...(contextOptions.temperature !== undefined && { temperature: contextOptions.temperature }),
79
- ...(contextOptions.maxTokens !== undefined && { maxTokens: contextOptions.maxTokens }),
80
- ...(contextOptions.tools && { tools: contextOptions.tools }),
81
- ...(contextOptions.metadata && { metadata: contextOptions.metadata })
82
- };
83
- logger.debug('Conversation context prepared', {
84
- messageCount: context.messages.length,
85
- model: context.model,
86
- provider: context.provider,
87
- hasSystemMessage: !!context.systemMessage,
88
- hasTools: !!(context.tools && context.tools.length > 0),
89
- });
90
- return context;
91
- }
92
- /**
93
- * Static method for response generation
94
- */
95
- static async performResponseGeneration(provider, context, serviceOptions, logger) {
96
18
  const options = { ...DEFAULT_OPTIONS, ...serviceOptions };
97
19
  const startTime = Date.now();
98
20
  try {
99
- logger.debug('Starting response generation', {
100
- provider: context.provider,
101
- model: context.model,
102
- messageCount: context.messages.length,
103
- });
104
- // Create request payload
105
- const requestPayload = ConversationService.createProviderRequest(context);
106
- // Generate response with retry logic
107
- const response = await ConversationService.executeWithRetry(() => provider.generateResponse(requestPayload), `generateResponse for ${context.provider}:${context.model}`, options, logger);
108
- // Process and validate response
109
- const processedResponse = ConversationService.processProviderResponse(response);
110
- const duration = Date.now() - startTime;
21
+ const request = this.createProviderRequest(context);
22
+ const response = await executeWithRetry(() => provider.generateResponse(request), `generateResponse for ${context.provider}:${context.model}`, options, logger);
23
+ const processed = processProviderResponse(response);
111
24
  logger.info('Response generated successfully', {
112
25
  provider: context.provider,
113
26
  model: context.model,
114
- duration,
115
- usage: processedResponse.usage,
27
+ duration: Date.now() - startTime,
28
+ usage: processed.usage,
116
29
  });
117
- return processedResponse;
30
+ return processed;
118
31
  }
119
32
  catch (error) {
120
- const duration = Date.now() - startTime;
121
33
  logger.error('Response generation failed', {
122
34
  provider: context.provider,
123
35
  model: context.model,
124
- duration,
36
+ duration: Date.now() - startTime,
125
37
  error: error instanceof Error ? error.message : String(error),
126
38
  });
127
- if (error instanceof NetworkError || error instanceof ProviderError) {
39
+ if (error instanceof ProviderError)
128
40
  throw error;
129
- }
130
41
  throw new ProviderError(`Response generation failed: ${error instanceof Error ? error.message : String(error)}`, context.provider, error instanceof Error ? error : undefined);
131
42
  }
132
43
  }
133
- /**
134
- * Static method for streaming response generation
135
- */
136
- static async *performStreamingResponse(provider, context, _serviceOptions, logger) {
137
- // Apply defaults for future use - currently not needed but maintains service contract
44
+ async *generateStreamingResponse(provider, context, _serviceOptions = {}) {
45
+ const logger = createLogger('ConversationService');
138
46
  const startTime = Date.now();
139
47
  try {
140
- logger.debug('Starting streaming response generation', {
141
- provider: context.provider,
142
- model: context.model,
143
- messageCount: context.messages.length,
144
- });
145
- // Create request payload for streaming
146
- const requestPayload = ConversationService.createProviderRequest(context, true);
147
- // Check if provider supports streaming
148
- if (!provider.generateStreamingResponse) {
48
+ const request = this.createProviderRequest(context, true);
49
+ if (!provider.generateStreamingResponse)
149
50
  throw new ProviderError(`Provider does not support streaming`, context.provider);
150
- }
151
- // Generate streaming response
152
- const streamingResponse = provider.generateStreamingResponse(requestPayload);
51
+ const stream = provider.generateStreamingResponse(request);
153
52
  let chunkCount = 0;
154
- for await (const chunk of streamingResponse) {
53
+ for await (const chunk of stream) {
155
54
  chunkCount++;
156
- const processedChunk = ConversationService.processStreamingChunk(chunk);
157
- logger.debug('Streaming chunk processed', {
158
- chunkNumber: chunkCount,
159
- deltaLength: processedChunk.delta.length,
160
- done: processedChunk.done,
161
- });
162
- yield processedChunk;
163
- if (processedChunk.done) {
55
+ const processed = processStreamingChunk(chunk);
56
+ yield processed;
57
+ if (processed.done)
164
58
  break;
165
- }
166
59
  }
167
- const duration = Date.now() - startTime;
168
60
  logger.info('Streaming response completed', {
169
61
  provider: context.provider,
170
62
  model: context.model,
171
- duration,
63
+ duration: Date.now() - startTime,
172
64
  totalChunks: chunkCount,
173
65
  });
174
66
  }
175
67
  catch (error) {
176
- const duration = Date.now() - startTime;
177
68
  logger.error('Streaming response failed', {
178
69
  provider: context.provider,
179
70
  model: context.model,
180
- duration,
71
+ duration: Date.now() - startTime,
181
72
  error: error instanceof Error ? error.message : String(error),
182
73
  });
183
- if (error instanceof NetworkError || error instanceof ProviderError) {
74
+ if (error instanceof ProviderError)
184
75
  throw error;
185
- }
186
76
  throw new ProviderError(`Streaming response failed: ${error instanceof Error ? error.message : String(error)}`, context.provider, error instanceof Error ? error : undefined);
187
77
  }
188
78
  }
189
- /**
190
- * Static method for context validation
191
- */
192
- static performContextValidation(context) {
79
+ validateContext(context) {
193
80
  const errors = [];
194
- if (!context.messages || !Array.isArray(context.messages)) {
81
+ if (!context.messages || !Array.isArray(context.messages))
195
82
  errors.push('Messages must be an array');
196
- }
197
- else if (context.messages.length === 0) {
83
+ else if (context.messages.length === 0)
198
84
  errors.push('At least one message is required');
199
- }
200
- if (!context.model || typeof context.model !== 'string') {
85
+ if (!context.model || typeof context.model !== 'string')
201
86
  errors.push('Model must be a non-empty string');
202
- }
203
- if (!context.provider || typeof context.provider !== 'string') {
87
+ if (!context.provider || typeof context.provider !== 'string')
204
88
  errors.push('Provider must be a non-empty string');
205
- }
206
- if (context.temperature !== undefined && (typeof context.temperature !== 'number' || context.temperature < 0 || context.temperature > 2)) {
89
+ if (context.temperature !== undefined &&
90
+ (typeof context.temperature !== 'number' ||
91
+ context.temperature < 0 ||
92
+ context.temperature > 2))
207
93
  errors.push('Temperature must be a number between 0 and 2');
208
- }
209
- if (context.maxTokens !== undefined && (typeof context.maxTokens !== 'number' || context.maxTokens <= 0)) {
94
+ if (context.maxTokens !== undefined &&
95
+ (typeof context.maxTokens !== 'number' || context.maxTokens <= 0))
210
96
  errors.push('MaxTokens must be a positive number');
211
- }
212
- return {
213
- isValid: errors.length === 0,
214
- errors
215
- };
97
+ return { isValid: errors.length === 0, errors };
216
98
  }
217
- // ==============================================
218
- // Message creation utilities (pure functions)
219
- // ==============================================
220
- /**
221
- * Create a user message
222
- */
223
99
  createUserMessage(content, metadata) {
224
- return ConversationService.createUserMessageStatic(content, metadata);
100
+ return createUserMessageStatic(content, metadata);
225
101
  }
226
- /**
227
- * Create an assistant message from response
228
- */
229
102
  createAssistantMessage(response, metadata) {
230
- return ConversationService.createAssistantMessageStatic(response, metadata);
103
+ return createAssistantMessageStatic(response, metadata);
231
104
  }
232
- /**
233
- * Create a system message
234
- */
235
105
  createSystemMessage(content, metadata) {
236
- return ConversationService.createSystemMessageStatic(content, metadata);
106
+ return createSystemMessageStatic(content, metadata);
237
107
  }
238
- /**
239
- * Create a tool message
240
- */
241
108
  createToolMessage(toolCallId, result, metadata) {
242
- return ConversationService.createToolMessageStatic(toolCallId, result, metadata);
243
- }
244
- // Static versions of message creation methods
245
- static createUserMessageStatic(content, metadata) {
246
- return {
247
- role: 'user',
248
- content,
249
- timestamp: new Date(),
250
- metadata: {
251
- timestamp: new Date().toISOString(),
252
- ...metadata
253
- }
254
- };
109
+ return createToolMessageStatic(toolCallId, result, metadata);
255
110
  }
256
- static createAssistantMessageStatic(response, metadata) {
257
- const message = {
258
- role: 'assistant',
259
- content: response.content,
260
- timestamp: new Date(),
261
- metadata: {
262
- timestamp: new Date().toISOString(),
263
- ...(response.usage && { usage: JSON.stringify(response.usage) }),
264
- ...(response.finishReason && { finishReason: response.finishReason }),
265
- ...metadata
266
- }
267
- };
268
- if (response.toolCalls && response.toolCalls.length > 0) {
269
- message.toolCalls = response.toolCalls;
111
+ buildContext(messages, model, provider, contextOptions, serviceOptions, logger) {
112
+ const options = { ...DEFAULT_OPTIONS, ...serviceOptions };
113
+ let processed = messages;
114
+ if (options.maxHistoryLength > 0 && messages.length > options.maxHistoryLength) {
115
+ const system = messages.filter((m) => m.role === 'system');
116
+ const other = messages.filter((m) => m.role !== 'system');
117
+ processed = [...system, ...other.slice(-options.maxHistoryLength + system.length)];
270
118
  }
271
- return message;
272
- }
273
- static createSystemMessageStatic(content, metadata) {
274
119
  return {
275
- role: 'system',
276
- content,
277
- timestamp: new Date(),
278
- metadata: {
279
- timestamp: new Date().toISOString(),
280
- ...metadata
281
- }
120
+ messages: processed,
121
+ model,
122
+ provider,
123
+ ...(contextOptions.systemMessage && { systemMessage: contextOptions.systemMessage }),
124
+ ...(contextOptions.temperature !== undefined && { temperature: contextOptions.temperature }),
125
+ ...(contextOptions.maxTokens !== undefined && { maxTokens: contextOptions.maxTokens }),
126
+ ...(contextOptions.tools && { tools: contextOptions.tools }),
127
+ ...(contextOptions.metadata && { metadata: contextOptions.metadata }),
282
128
  };
283
129
  }
284
- static createToolMessageStatic(toolCallId, result, metadata) {
130
+ createProviderRequest(context, streaming = false) {
131
+ const metadata = convertToProviderMetadata(context.metadata);
285
132
  return {
286
- role: 'tool',
287
- content: typeof result === 'string' ? result : JSON.stringify(result),
288
- toolCallId,
289
- timestamp: new Date(),
290
- metadata: {
291
- timestamp: new Date().toISOString(),
292
- ...metadata
293
- }
294
- };
295
- }
296
- // ==============================================
297
- // Pure utility functions
298
- // ==============================================
299
- /**
300
- * Convert complex metadata to simple provider request format
301
- */
302
- static convertToProviderMetadata(metadata) {
303
- if (!metadata)
304
- return undefined;
305
- const converted = {};
306
- for (const [key, value] of Object.entries(metadata)) {
307
- if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {
308
- converted[key] = value;
309
- }
310
- else if (value instanceof Date) {
311
- converted[key] = value.toISOString();
312
- }
313
- else if (Array.isArray(value)) {
314
- converted[key] = JSON.stringify(value);
315
- }
316
- else {
317
- converted[key] = JSON.stringify(value);
318
- }
319
- }
320
- return converted;
321
- }
322
- /**
323
- * Convert optional usage to required format
324
- */
325
- static convertUsage(usage) {
326
- if (!usage)
327
- return undefined;
328
- if (typeof usage.promptTokens === 'number' &&
329
- typeof usage.completionTokens === 'number' &&
330
- typeof usage.totalTokens === 'number') {
331
- return {
332
- promptTokens: usage.promptTokens,
333
- completionTokens: usage.completionTokens,
334
- totalTokens: usage.totalTokens
335
- };
336
- }
337
- return undefined;
338
- }
339
- static createProviderRequest(context, streaming = false) {
340
- const metadata = ConversationService.convertToProviderMetadata(context.metadata);
341
- const request = {
342
133
  messages: context.messages,
343
134
  model: context.model,
344
135
  stream: streaming,
@@ -346,96 +137,8 @@ export class ConversationService {
346
137
  ...(context.maxTokens !== undefined && { maxTokens: context.maxTokens }),
347
138
  ...(context.tools && { tools: context.tools }),
348
139
  ...(context.systemMessage && { systemMessage: context.systemMessage }),
349
- ...(metadata && { metadata })
350
- };
351
- return request;
352
- }
353
- static processProviderResponse(response) {
354
- const usage = ConversationService.convertUsage(response.usage);
355
- const result = {
356
- content: response.content || '',
357
- toolCalls: response.toolCalls || [],
358
- metadata: response.metadata || {},
359
- finishReason: response.finishReason || 'stop',
360
- ...(usage && { usage })
361
- };
362
- return result;
363
- }
364
- static processStreamingChunk(chunk) {
365
- const usage = ConversationService.convertUsage(chunk.usage);
366
- const result = {
367
- delta: chunk.delta || '',
368
- done: chunk.done || false,
369
- toolCalls: chunk.toolCalls || [],
370
- ...(usage && { usage })
140
+ ...(metadata && { metadata }),
371
141
  };
372
- return result;
373
- }
374
- static async executeWithRetry(fn, operation, options, logger) {
375
- let lastError;
376
- for (let attempt = 1; attempt <= options.maxRetries; attempt++) {
377
- try {
378
- const result = await ConversationService.withTimeout(fn(), options.timeout);
379
- if (attempt > 1) {
380
- logger.info(`${operation} succeeded on attempt ${attempt}`);
381
- }
382
- return result;
383
- }
384
- catch (error) {
385
- lastError = error;
386
- // Don't retry if this is the last attempt or if error shouldn't be retried
387
- if (attempt === options.maxRetries || !ConversationService.shouldRetryError(lastError)) {
388
- break;
389
- }
390
- logger.warn(`${operation} failed on attempt ${attempt}, retrying...`, {
391
- attempt,
392
- maxRetries: options.maxRetries,
393
- error: lastError.message,
394
- retryDelay: options.retryDelay
395
- });
396
- await ConversationService.delay(options.retryDelay);
397
- }
398
- }
399
- if (lastError) {
400
- logger.error(`${operation} failed after ${options.maxRetries} attempts`, {
401
- error: lastError.message
402
- });
403
- throw lastError;
404
- }
405
- // This should never happen, but just in case
406
- throw new Error(`${operation} failed with no error details`);
407
- }
408
- static shouldRetryError(error) {
409
- // Retry on network errors and specific provider errors
410
- if (error instanceof NetworkError) {
411
- return true;
412
- }
413
- // Retry on timeout errors
414
- if (error.message.includes('timeout') || error.message.includes('TIMEOUT')) {
415
- return true;
416
- }
417
- // Retry on rate limit errors
418
- if (error.message.includes('rate limit') || error.message.includes('429')) {
419
- return true;
420
- }
421
- // Don't retry on other errors
422
- return false;
423
- }
424
- static withTimeout(promise, timeoutMs) {
425
- return Promise.race([
426
- promise,
427
- ConversationService.createTimeoutPromise(timeoutMs)
428
- ]);
429
- }
430
- static createTimeoutPromise(timeoutMs) {
431
- return new Promise((_, reject) => {
432
- setTimeout(() => {
433
- reject(new NetworkError(`Operation timed out after ${timeoutMs}ms`));
434
- }, timeoutMs);
435
- });
436
- }
437
- static delay(ms) {
438
- return new Promise(resolve => setTimeout(resolve, ms));
439
142
  }
440
143
  }
441
144
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/conversation-service/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,YAAY,EAAgB,MAAM,oBAAoB,CAAC;AAWhE;;GAEG;AACH,MAAM,eAAe,GAA0C;IAC3D,gBAAgB,EAAE,GAAG;IACrB,WAAW,EAAE,IAAI;IACjB,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,IAAI;IAChB,OAAO,EAAE,KAAK;CACjB,CAAC;AAyBF;;;;;GAKG;AACH,MAAM,OAAO,mBAAmB;IAE5B;;;OAGG;IACH,cAAc,CACV,QAA6B,EAC7B,KAAa,EACb,QAAgB,EAChB,iBAAkC,EAAE,EACpC,iBAA8C,EAAE;QAEhD,MAAM,MAAM,GAAG,YAAY,CAAC,qBAAqB,CAAC,CAAC;QACnD,OAAO,mBAAmB,CAAC,aAAa,CACpC,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,cAAc,EACd,cAAc,EACd,MAAM,CACT,CAAC;IACN,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAClB,QAAqB,EACrB,OAA6B,EAC7B,iBAA8C,EAAE;QAEhD,MAAM,MAAM,GAAG,YAAY,CAAC,qBAAqB,CAAC,CAAC;QACnD,OAAO,mBAAmB,CAAC,yBAAyB,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;IACpG,CAAC;IAED;;;OAGG;IACH,KAAK,CAAA,CAAE,yBAAyB,CAC5B,QAAqB,EACrB,OAA6B,EAC7B,iBAA8C,EAAE;QAEhD,MAAM,MAAM,GAAG,YAAY,CAAC,qBAAqB,CAAC,CAAC;QACnD,KAAK,CAAC,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;IACnG,CAAC;IAED;;;OAGG;IACH,eAAe,CAAC,OAA6B;QACzC,OAAO,mBAAmB,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACjE,CAAC;IAED,iDAAiD;IACjD,yCAAyC;IACzC,iDAAiD;IAEjD;;OAEG;IACK,MAAM,CAAC,aAAa,CACxB,QAA6B,EAC7B,KAAa,EACb,QAAgB,EAChB,cAA+B,EAC/B,cAA2C,EAC3C,MAAe;QAEf,MAAM,OAAO,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,cAAc,EAAE,CAAC;QAE1D,qCAAqC;QACrC,IAAI,iBAAiB,GAAG,QAAQ,CAAC;QACjC,IAAI,OAAO,CAAC,gBAAgB,GAAG,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC7E,uEAAuE;YACvE,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;YACjE,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;YAEhE,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,gBAAgB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;YAC9F,iBAAiB,GAAG,CAAC,GAAG,cAAc,EAAE,GAAG,cAAc,CAAC,CAAC;YAE3D,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE;gBACzC,cAAc,EAAE,QAAQ,CAAC,MAAM;gBAC/B,aAAa,EAAE,iBAAiB,CAAC,MAAM;gBACvC,SAAS,EAAE,OAAO,CAAC,gBAAgB;aACtC,CAAC,CAAC;QACP,CAAC;QAED,MAAM,OAAO,GAAyB;YAClC,QAAQ,EAAE,iBAAiB;YAC3B,KAAK;YACL,QAAQ;YACR,GAAG,CAAC,cAAc,CAAC,aAAa,IAAI,EAAE,aAAa,EAAE,cAAc,CAAC,aAAa,EAAE,CAAC;YACpF,GAAG,CAAC,cAAc,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,cAAc,CAAC,WAAW,EAAE,CAAC;YAC5F,GAAG,CAAC,cAAc,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,cAAc,CAAC,SAAS,EAAE,CAAC;YACtF,GAAG,CAAC,cAAc,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC;YAC5D,GAAG,CAAC,cAAc,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC;SACxE,CAAC;QAEF,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE;YAC1C,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;YACrC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa;YACzC,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;SAC1D,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACnB,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAC1C,QAAqB,EACrB,OAA6B,EAC7B,cAA2C,EAC3C,MAAe;QAEf,MAAM,OAAO,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,cAAc,EAAE,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE;gBACzC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;aACxC,CAAC,CAAC;YAEH,yBAAyB;YACzB,MAAM,cAAc,GAAG,mBAAmB,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;YAE1E,qCAAqC;YACrC,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,gBAAgB,CACvD,GAAG,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAC/C,wBAAwB,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,KAAK,EAAE,EAC3D,OAAO,EACP,MAAM,CACT,CAAC;YAEF,gCAAgC;YAChC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YAEhF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE;gBAC3C,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ;gBACR,KAAK,EAAE,iBAAiB,CAAC,KAAK;aACjC,CAAC,CAAC;YAEH,OAAO,iBAAiB,CAAC;QAE7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE;gBACvC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ;gBACR,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAChE,CAAC,CAAC;YAEH,IAAI,KAAK,YAAY,YAAY,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;gBAClE,MAAM,KAAK,CAAC;YAChB,CAAC;YAED,MAAM,IAAI,aAAa,CACnB,+BAA+B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACvF,OAAO,CAAC,QAAQ,EAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC7C,CAAC;QACN,CAAC;IACL,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,KAAK,CAAA,CAAE,wBAAwB,CAC1C,QAAqB,EACrB,OAA6B,EAC7B,eAA4C,EAC5C,MAAe;QAEf,sFAAsF;QACtF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE;gBACnD,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;aACxC,CAAC,CAAC;YAEH,uCAAuC;YACvC,MAAM,cAAc,GAAG,mBAAmB,CAAC,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAEhF,uCAAuC;YACvC,IAAI,CAAC,QAAQ,CAAC,yBAAyB,EAAE,CAAC;gBACtC,MAAM,IAAI,aAAa,CAAC,qCAAqC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YACrF,CAAC;YAED,8BAA8B;YAC9B,MAAM,iBAAiB,GAAG,QAAQ,CAAC,yBAAyB,CAAC,cAAc,CAAC,CAAC;YAE7E,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,iBAAiB,EAAE,CAAC;gBAC1C,UAAU,EAAE,CAAC;gBACb,MAAM,cAAc,GAAG,mBAAmB,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;gBAExE,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE;oBACtC,WAAW,EAAE,UAAU;oBACvB,WAAW,EAAE,cAAc,CAAC,KAAK,CAAC,MAAM;oBACxC,IAAI,EAAE,cAAc,CAAC,IAAI;iBAC5B,CAAC,CAAC;gBAEH,MAAM,cAAc,CAAC;gBAErB,IAAI,cAAc,CAAC,IAAI,EAAE,CAAC;oBACtB,MAAM;gBACV,CAAC;YACL,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE;gBACxC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ;gBACR,WAAW,EAAE,UAAU;aAC1B,CAAC,CAAC;QAEP,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE;gBACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ;gBACR,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAChE,CAAC,CAAC;YAEH,IAAI,KAAK,YAAY,YAAY,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;gBAClE,MAAM,KAAK,CAAC;YAChB,CAAC;YAED,MAAM,IAAI,aAAa,CACnB,8BAA8B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACtF,OAAO,CAAC,QAAQ,EAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC7C,CAAC;QACN,CAAC;IACL,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,wBAAwB,CAAC,OAA6B;QACjE,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxD,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC7C,CAAC;aAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,MAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACtD,MAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC5D,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,CAAC,OAAO,OAAO,CAAC,WAAW,KAAK,QAAQ,IAAI,OAAO,CAAC,WAAW,GAAG,CAAC,IAAI,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE,CAAC;YACvI,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC;YACvG,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;QACvD,CAAC;QAED,OAAO;YACH,OAAO,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;YAC5B,MAAM;SACT,CAAC;IACN,CAAC;IAED,iDAAiD;IACjD,8CAA8C;IAC9C,iDAAiD;IAEjD;;OAEG;IACH,iBAAiB,CAAC,OAAe,EAAE,QAAoD;QACnF,OAAO,mBAAmB,CAAC,uBAAuB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,sBAAsB,CAAC,QAA+B,EAAE,QAAoD;QACxG,OAAO,mBAAmB,CAAC,4BAA4B,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,mBAAmB,CAAC,OAAe,EAAE,QAAoD;QACrF,OAAO,mBAAmB,CAAC,yBAAyB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,UAAkB,EAAE,MAAuB,EAAE,QAAoD;QAC/G,OAAO,mBAAmB,CAAC,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACrF,CAAC;IAED,8CAA8C;IACtC,MAAM,CAAC,uBAAuB,CAAC,OAAe,EAAE,QAAoD;QACxG,OAAO;YACH,IAAI,EAAE,MAAM;YACZ,OAAO;YACP,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,QAAQ,EAAE;gBACN,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,GAAG,QAAQ;aACd;SACJ,CAAC;IACN,CAAC;IAEO,MAAM,CAAC,4BAA4B,CAAC,QAA+B,EAAE,QAAoD;QAC7H,MAAM,OAAO,GAAsB;YAC/B,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,QAAQ,EAAE;gBACN,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,GAAG,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChE,GAAG,CAAC,QAAQ,CAAC,YAAY,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC;gBACrE,GAAG,QAAQ;aACd;SACJ,CAAC;QAEF,IAAI,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;QAC3C,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAEO,MAAM,CAAC,yBAAyB,CAAC,OAAe,EAAE,QAAoD;QAC1G,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,OAAO;YACP,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,QAAQ,EAAE;gBACN,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,GAAG,QAAQ;aACd;SACJ,CAAC;IACN,CAAC;IAEO,MAAM,CAAC,uBAAuB,CAAC,UAAkB,EAAE,MAAuB,EAAE,QAAoD;QACpI,OAAO;YACH,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;YACrE,UAAU;YACV,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,QAAQ,EAAE;gBACN,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,GAAG,QAAQ;aACd;SACJ,CAAC;IACN,CAAC;IAED,iDAAiD;IACjD,yBAAyB;IACzB,iDAAiD;IAEjD;;OAEG;IACK,MAAM,CAAC,yBAAyB,CAAC,QAAuC;QAC5E,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAC;QAEhC,MAAM,SAAS,GAA8C,EAAE,CAAC;QAChE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;gBACvF,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YAC3B,CAAC;iBAAM,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;gBAC/B,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YACzC,CAAC;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACJ,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC3C,CAAC;QACL,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,YAAY,CAAC,KAAkF;QAC1G,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAE7B,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ;YACtC,OAAO,KAAK,CAAC,gBAAgB,KAAK,QAAQ;YAC1C,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO;gBACH,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;gBACxC,WAAW,EAAE,KAAK,CAAC,WAAW;aACjC,CAAC;QACN,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAEO,MAAM,CAAC,qBAAqB,CAAC,OAA6B,EAAE,YAAqB,KAAK;QAC1F,MAAM,QAAQ,GAAG,mBAAmB,CAAC,yBAAyB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEjF,MAAM,OAAO,GAAiC;YAC1C,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,SAAS;YACjB,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC;YAC9E,GAAG,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;YACxE,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;YAC9C,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;YACtE,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;SAChC,CAAC;QAEF,OAAO,OAAO,CAAC;IACnB,CAAC;IAEO,MAAM,CAAC,uBAAuB,CAAC,QAA8B;QACjE,MAAM,KAAK,GAAG,mBAAmB,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAE/D,MAAM,MAAM,GAA0B;YAClC,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,EAAE;YAC/B,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,EAAE;YACnC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,EAAE;YACjC,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,MAAM;YAC7C,GAAG,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,CAAC;SAC1B,CAAC;QAEF,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,MAAM,CAAC,qBAAqB,CAAC,KAAyB;QAC1D,MAAM,KAAK,GAAG,mBAAmB,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAE5D,MAAM,MAAM,GAAoB;YAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE;YACxB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK;YACzB,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,EAAE;YAChC,GAAG,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,CAAC;SAC1B,CAAC;QAEF,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,gBAAgB,CACjC,EAAoB,EACpB,SAAiB,EACjB,OAA8C,EAC9C,MAAe;QAEf,IAAI,SAA4B,CAAC;QAEjC,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;YAC7D,IAAI,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBAE5E,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;oBACd,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,yBAAyB,OAAO,EAAE,CAAC,CAAC;gBAChE,CAAC;gBAED,OAAO,MAAM,CAAC;YAClB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,SAAS,GAAG,KAAc,CAAC;gBAE3B,2EAA2E;gBAC3E,IAAI,OAAO,KAAK,OAAO,CAAC,UAAU,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;oBACrF,MAAM;gBACV,CAAC;gBAED,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,sBAAsB,OAAO,eAAe,EAAE;oBAClE,OAAO;oBACP,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,KAAK,EAAE,SAAS,CAAC,OAAO;oBACxB,UAAU,EAAE,OAAO,CAAC,UAAU;iBACjC,CAAC,CAAC;gBAEH,MAAM,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACxD,CAAC;QACL,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,GAAG,SAAS,iBAAiB,OAAO,CAAC,UAAU,WAAW,EAAE;gBACrE,KAAK,EAAE,SAAS,CAAC,OAAO;aAC3B,CAAC,CAAC;YACH,MAAM,SAAS,CAAC;QACpB,CAAC;QAED,6CAA6C;QAC7C,MAAM,IAAI,KAAK,CAAC,GAAG,SAAS,+BAA+B,CAAC,CAAC;IACjE,CAAC;IAEO,MAAM,CAAC,gBAAgB,CAAC,KAAY;QACxC,uDAAuD;QACvD,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,0BAA0B;QAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACzE,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,6BAA6B;QAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACxE,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,8BAA8B;QAC9B,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,MAAM,CAAC,WAAW,CAAI,OAAmB,EAAE,SAAiB;QAChE,OAAO,OAAO,CAAC,IAAI,CAAC;YAChB,OAAO;YACP,mBAAmB,CAAC,oBAAoB,CAAI,SAAS,CAAC;SACzD,CAAC,CAAC;IACP,CAAC;IAEO,MAAM,CAAC,oBAAoB,CAAI,SAAiB;QACpD,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;YAC7B,UAAU,CAAC,GAAG,EAAE;gBACZ,MAAM,CAAC,IAAI,YAAY,CAAC,6BAA6B,SAAS,IAAI,CAAC,CAAC,CAAC;YACzE,CAAC,EAAE,SAAS,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,EAAU;QAC3B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;CACJ"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/conversation-service/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Message creation helpers and retry utilities for ConversationService.
3
+ *
4
+ * Extracted from conversation-service/index.ts to keep each file under 300 lines.
5
+ * @internal
6
+ */
7
+ import type { IAssistantMessage, ISystemMessage, IToolCall, IToolMessage, IUserMessage } from '../../interfaces/messages';
8
+ import type { TUniversalValue } from '../../interfaces/types';
9
+ import type { IRawProviderResponse } from '../../interfaces/provider';
10
+ import type { IConversationResponse, IStreamingChunk, IConversationServiceOptions, TConversationContextMetadata } from '../../interfaces/service';
11
+ import type { ILogger } from '../../utils/logger';
12
+ /** @internal */
13
+ export declare function createUserMessageStatic(content: string, metadata?: Record<string, string | number | boolean>): IUserMessage;
14
+ /** @internal */
15
+ export declare function createAssistantMessageStatic(response: IConversationResponse, metadata?: Record<string, string | number | boolean>): IAssistantMessage;
16
+ /** @internal */
17
+ export declare function createSystemMessageStatic(content: string, metadata?: Record<string, string | number | boolean>): ISystemMessage;
18
+ /** @internal */
19
+ export declare function createToolMessageStatic(toolCallId: string, result: TUniversalValue, metadata?: Record<string, string | number | boolean>): IToolMessage;
20
+ /** Convert complex metadata to simple provider request format. @internal */
21
+ export declare function convertToProviderMetadata(metadata?: TConversationContextMetadata): Record<string, string | number | boolean> | undefined;
22
+ /** Convert optional usage to required format. @internal */
23
+ export declare function convertUsage(usage?: {
24
+ promptTokens?: number;
25
+ completionTokens?: number;
26
+ totalTokens?: number;
27
+ }): {
28
+ promptTokens: number;
29
+ completionTokens: number;
30
+ totalTokens: number;
31
+ } | undefined;
32
+ /** Process raw provider response. @internal */
33
+ export declare function processProviderResponse(response: IRawProviderResponse): IConversationResponse;
34
+ /** Process a streaming chunk. @internal */
35
+ export declare function processStreamingChunk(chunk: {
36
+ delta?: string;
37
+ done?: boolean;
38
+ toolCalls?: IToolCall[];
39
+ usage?: {
40
+ promptTokens?: number;
41
+ completionTokens?: number;
42
+ totalTokens?: number;
43
+ };
44
+ }): IStreamingChunk;
45
+ /** Execute with retry logic. @internal */
46
+ export declare function executeWithRetry<T>(fn: () => Promise<T>, operation: string, options: Required<IConversationServiceOptions>, logger: ILogger): Promise<T>;
47
+ //# sourceMappingURL=message-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-helpers.d.ts","sourceRoot":"","sources":["../../../src/services/conversation-service/message-helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACd,SAAS,EACT,YAAY,EACZ,YAAY,EACb,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EACV,qBAAqB,EACrB,eAAe,EACf,2BAA2B,EAC3B,4BAA4B,EAC7B,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD,gBAAgB;AAChB,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GACnD,YAAY,CAOd;AAED,gBAAgB;AAChB,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,qBAAqB,EAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GACnD,iBAAiB,CAcnB;AAED,gBAAgB;AAChB,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GACnD,cAAc,CAOhB;AAED,gBAAgB;AAChB,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,eAAe,EACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GACnD,YAAY,CAQd;AAED,4EAA4E;AAC5E,wBAAgB,yBAAyB,CACvC,QAAQ,CAAC,EAAE,4BAA4B,GACtC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,SAAS,CAUvD;AAED,2DAA2D;AAC3D,wBAAgB,YAAY,CAAC,KAAK,CAAC,EAAE;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAatF;AAED,+CAA+C;AAC/C,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,qBAAqB,CAS7F;AAED,2CAA2C;AAC3C,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACpF,GAAG,eAAe,CAQlB;AAED,0CAA0C;AAC1C,wBAAsB,gBAAgB,CAAC,CAAC,EACtC,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,QAAQ,CAAC,2BAA2B,CAAC,EAC9C,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,CAAC,CAAC,CA0BZ"}