@copilotkit/runtime 2.0.0-next.1 → 2.0.0-rc.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 (673) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +135 -1
  3. package/dist/_virtual/_rolldown/runtime.cjs +29 -0
  4. package/dist/_virtual/_rolldown/runtime.mjs +20 -0
  5. package/dist/agent/converters/aisdk.cjs +355 -0
  6. package/dist/agent/converters/aisdk.cjs.map +1 -0
  7. package/dist/agent/converters/aisdk.d.cts +22 -0
  8. package/dist/agent/converters/aisdk.d.cts.map +1 -0
  9. package/dist/agent/converters/aisdk.d.mts +22 -0
  10. package/dist/agent/converters/aisdk.d.mts.map +1 -0
  11. package/dist/agent/converters/aisdk.mjs +351 -0
  12. package/dist/agent/converters/aisdk.mjs.map +1 -0
  13. package/dist/agent/converters/index.d.mts +2 -0
  14. package/dist/agent/converters/tanstack.cjs +374 -0
  15. package/dist/agent/converters/tanstack.cjs.map +1 -0
  16. package/dist/agent/converters/tanstack.d.cts +83 -0
  17. package/dist/agent/converters/tanstack.d.cts.map +1 -0
  18. package/dist/agent/converters/tanstack.d.mts +83 -0
  19. package/dist/agent/converters/tanstack.d.mts.map +1 -0
  20. package/dist/agent/converters/tanstack.mjs +372 -0
  21. package/dist/agent/converters/tanstack.mjs.map +1 -0
  22. package/dist/agent/converters/usage.cjs +68 -0
  23. package/dist/agent/converters/usage.cjs.map +1 -0
  24. package/dist/agent/converters/usage.d.cts +19 -0
  25. package/dist/agent/converters/usage.d.cts.map +1 -0
  26. package/dist/agent/converters/usage.d.mts +19 -0
  27. package/dist/agent/converters/usage.d.mts.map +1 -0
  28. package/dist/agent/converters/usage.mjs +62 -0
  29. package/dist/agent/converters/usage.mjs.map +1 -0
  30. package/dist/agent/index.cjs +1328 -0
  31. package/dist/agent/index.cjs.map +1 -0
  32. package/dist/agent/index.d.cts +467 -0
  33. package/dist/agent/index.d.cts.map +1 -0
  34. package/dist/agent/index.d.mts +468 -0
  35. package/dist/agent/index.d.mts.map +1 -0
  36. package/dist/agent/index.mjs +1318 -0
  37. package/dist/agent/index.mjs.map +1 -0
  38. package/dist/agent/learned-skills.cjs +76 -0
  39. package/dist/agent/learned-skills.cjs.map +1 -0
  40. package/dist/agent/learned-skills.d.cts +15 -0
  41. package/dist/agent/learned-skills.d.cts.map +1 -0
  42. package/dist/agent/learned-skills.d.mts +15 -0
  43. package/dist/agent/learned-skills.d.mts.map +1 -0
  44. package/dist/agent/learned-skills.mjs +74 -0
  45. package/dist/agent/learned-skills.mjs.map +1 -0
  46. package/dist/agent/mcp-tool-names.cjs +82 -0
  47. package/dist/agent/mcp-tool-names.cjs.map +1 -0
  48. package/dist/agent/mcp-tool-names.mjs +80 -0
  49. package/dist/agent/mcp-tool-names.mjs.map +1 -0
  50. package/dist/agent/state-delta.cjs +321 -0
  51. package/dist/agent/state-delta.cjs.map +1 -0
  52. package/dist/agent/state-delta.mjs +320 -0
  53. package/dist/agent/state-delta.mjs.map +1 -0
  54. package/dist/agent/url-download.cjs +503 -0
  55. package/dist/agent/url-download.cjs.map +1 -0
  56. package/dist/agent/url-download.d.cts +79 -0
  57. package/dist/agent/url-download.d.cts.map +1 -0
  58. package/dist/agent/url-download.d.mts +79 -0
  59. package/dist/agent/url-download.d.mts.map +1 -0
  60. package/dist/agent/url-download.mjs +500 -0
  61. package/dist/agent/url-download.mjs.map +1 -0
  62. package/dist/express.cjs +7 -0
  63. package/dist/express.d.cts +4 -0
  64. package/dist/express.d.mts +4 -0
  65. package/dist/express.mjs +4 -0
  66. package/dist/hono.cjs +8 -0
  67. package/dist/hono.d.cts +4 -0
  68. package/dist/hono.d.mts +4 -0
  69. package/dist/hono.mjs +4 -0
  70. package/dist/index.cjs +86 -0
  71. package/dist/index.d.cts +28 -0
  72. package/dist/index.d.mts +28 -0
  73. package/dist/index.mjs +21 -5598
  74. package/dist/internal/learned-skills.cjs +21 -0
  75. package/dist/internal/learned-skills.d.cts +9 -0
  76. package/dist/internal/learned-skills.d.mts +9 -0
  77. package/dist/internal/learned-skills.mjs +9 -0
  78. package/dist/node.cjs +7 -0
  79. package/dist/node.d.cts +4 -0
  80. package/dist/node.d.mts +4 -0
  81. package/dist/node.mjs +4 -0
  82. package/dist/runtime/core/channel-activation-config.cjs +87 -0
  83. package/dist/runtime/core/channel-activation-config.cjs.map +1 -0
  84. package/dist/runtime/core/channel-activation-config.d.cts +39 -0
  85. package/dist/runtime/core/channel-activation-config.d.cts.map +1 -0
  86. package/dist/runtime/core/channel-activation-config.d.mts +39 -0
  87. package/dist/runtime/core/channel-activation-config.d.mts.map +1 -0
  88. package/dist/runtime/core/channel-activation-config.mjs +85 -0
  89. package/dist/runtime/core/channel-activation-config.mjs.map +1 -0
  90. package/dist/runtime/core/channel-manager.cjs +973 -0
  91. package/dist/runtime/core/channel-manager.cjs.map +1 -0
  92. package/dist/runtime/core/channel-manager.d.cts +166 -0
  93. package/dist/runtime/core/channel-manager.d.cts.map +1 -0
  94. package/dist/runtime/core/channel-manager.d.mts +167 -0
  95. package/dist/runtime/core/channel-manager.d.mts.map +1 -0
  96. package/dist/runtime/core/channel-manager.mjs +972 -0
  97. package/dist/runtime/core/channel-manager.mjs.map +1 -0
  98. package/dist/runtime/core/debug-event-bus.cjs +57 -0
  99. package/dist/runtime/core/debug-event-bus.cjs.map +1 -0
  100. package/dist/runtime/core/debug-event-bus.d.cts +18 -0
  101. package/dist/runtime/core/debug-event-bus.d.cts.map +1 -0
  102. package/dist/runtime/core/debug-event-bus.d.mts +18 -0
  103. package/dist/runtime/core/debug-event-bus.d.mts.map +1 -0
  104. package/dist/runtime/core/debug-event-bus.mjs +55 -0
  105. package/dist/runtime/core/debug-event-bus.mjs.map +1 -0
  106. package/dist/runtime/core/fetch-cors.cjs +71 -0
  107. package/dist/runtime/core/fetch-cors.cjs.map +1 -0
  108. package/dist/runtime/core/fetch-cors.d.cts +19 -0
  109. package/dist/runtime/core/fetch-cors.d.cts.map +1 -0
  110. package/dist/runtime/core/fetch-cors.d.mts +19 -0
  111. package/dist/runtime/core/fetch-cors.d.mts.map +1 -0
  112. package/dist/runtime/core/fetch-cors.mjs +69 -0
  113. package/dist/runtime/core/fetch-cors.mjs.map +1 -0
  114. package/dist/runtime/core/fetch-handler.cjs +539 -0
  115. package/dist/runtime/core/fetch-handler.cjs.map +1 -0
  116. package/dist/runtime/core/fetch-handler.d.cts +100 -0
  117. package/dist/runtime/core/fetch-handler.d.cts.map +1 -0
  118. package/dist/runtime/core/fetch-handler.d.mts +100 -0
  119. package/dist/runtime/core/fetch-handler.d.mts.map +1 -0
  120. package/dist/runtime/core/fetch-handler.mjs +538 -0
  121. package/dist/runtime/core/fetch-handler.mjs.map +1 -0
  122. package/dist/runtime/core/fetch-router.cjs +141 -0
  123. package/dist/runtime/core/fetch-router.cjs.map +1 -0
  124. package/dist/runtime/core/fetch-router.mjs +140 -0
  125. package/dist/runtime/core/fetch-router.mjs.map +1 -0
  126. package/dist/runtime/core/hooks.cjs +28 -0
  127. package/dist/runtime/core/hooks.cjs.map +1 -0
  128. package/dist/runtime/core/hooks.d.cts +121 -0
  129. package/dist/runtime/core/hooks.d.cts.map +1 -0
  130. package/dist/runtime/core/hooks.d.mts +121 -0
  131. package/dist/runtime/core/hooks.d.mts.map +1 -0
  132. package/dist/runtime/core/hooks.mjs +24 -0
  133. package/dist/runtime/core/hooks.mjs.map +1 -0
  134. package/dist/runtime/core/learning.cjs +61 -0
  135. package/dist/runtime/core/learning.cjs.map +1 -0
  136. package/dist/runtime/core/learning.d.cts +61 -0
  137. package/dist/runtime/core/learning.d.cts.map +1 -0
  138. package/dist/runtime/core/learning.d.mts +61 -0
  139. package/dist/runtime/core/learning.d.mts.map +1 -0
  140. package/dist/runtime/core/learning.mjs +56 -0
  141. package/dist/runtime/core/learning.mjs.map +1 -0
  142. package/dist/runtime/core/logger.cjs +21 -0
  143. package/dist/runtime/core/logger.cjs.map +1 -0
  144. package/dist/runtime/core/logger.d.cts +12 -0
  145. package/dist/runtime/core/logger.d.cts.map +1 -0
  146. package/dist/runtime/core/logger.d.mts +12 -0
  147. package/dist/runtime/core/logger.d.mts.map +1 -0
  148. package/dist/runtime/core/logger.mjs +18 -0
  149. package/dist/runtime/core/logger.mjs.map +1 -0
  150. package/dist/runtime/core/middleware-sse-parser.cjs +149 -0
  151. package/dist/runtime/core/middleware-sse-parser.cjs.map +1 -0
  152. package/dist/runtime/core/middleware-sse-parser.d.cts +21 -0
  153. package/dist/runtime/core/middleware-sse-parser.d.cts.map +1 -0
  154. package/dist/runtime/core/middleware-sse-parser.d.mts +21 -0
  155. package/dist/runtime/core/middleware-sse-parser.d.mts.map +1 -0
  156. package/dist/runtime/core/middleware-sse-parser.mjs +148 -0
  157. package/dist/runtime/core/middleware-sse-parser.mjs.map +1 -0
  158. package/dist/runtime/core/middleware.cjs +34 -0
  159. package/dist/runtime/core/middleware.cjs.map +1 -0
  160. package/dist/runtime/core/middleware.d.cts +31 -0
  161. package/dist/runtime/core/middleware.d.cts.map +1 -0
  162. package/dist/runtime/core/middleware.d.mts +31 -0
  163. package/dist/runtime/core/middleware.d.mts.map +1 -0
  164. package/dist/runtime/core/middleware.mjs +32 -0
  165. package/dist/runtime/core/middleware.mjs.map +1 -0
  166. package/dist/runtime/core/package-info.cjs +9 -0
  167. package/dist/runtime/core/package-info.cjs.map +1 -0
  168. package/dist/runtime/core/package-info.mjs +7 -0
  169. package/dist/runtime/core/package-info.mjs.map +1 -0
  170. package/dist/runtime/core/runtime-error-reporter.cjs +21 -0
  171. package/dist/runtime/core/runtime-error-reporter.cjs.map +1 -0
  172. package/dist/runtime/core/runtime-error-reporter.mjs +18 -0
  173. package/dist/runtime/core/runtime-error-reporter.mjs.map +1 -0
  174. package/dist/runtime/core/runtime.cjs +256 -0
  175. package/dist/runtime/core/runtime.cjs.map +1 -0
  176. package/dist/runtime/core/runtime.d.cts +481 -0
  177. package/dist/runtime/core/runtime.d.cts.map +1 -0
  178. package/dist/runtime/core/runtime.d.mts +481 -0
  179. package/dist/runtime/core/runtime.d.mts.map +1 -0
  180. package/dist/runtime/core/runtime.mjs +249 -0
  181. package/dist/runtime/core/runtime.mjs.map +1 -0
  182. package/dist/runtime/endpoints/auto-start-channels.cjs +46 -0
  183. package/dist/runtime/endpoints/auto-start-channels.cjs.map +1 -0
  184. package/dist/runtime/endpoints/auto-start-channels.mjs +45 -0
  185. package/dist/runtime/endpoints/auto-start-channels.mjs.map +1 -0
  186. package/dist/runtime/endpoints/express-single.cjs +43 -0
  187. package/dist/runtime/endpoints/express-single.cjs.map +1 -0
  188. package/dist/runtime/endpoints/express-single.d.cts +48 -0
  189. package/dist/runtime/endpoints/express-single.d.cts.map +1 -0
  190. package/dist/runtime/endpoints/express-single.d.mts +48 -0
  191. package/dist/runtime/endpoints/express-single.d.mts.map +1 -0
  192. package/dist/runtime/endpoints/express-single.mjs +43 -0
  193. package/dist/runtime/endpoints/express-single.mjs.map +1 -0
  194. package/dist/runtime/endpoints/express.cjs +68 -0
  195. package/dist/runtime/endpoints/express.cjs.map +1 -0
  196. package/dist/runtime/endpoints/express.d.cts +84 -0
  197. package/dist/runtime/endpoints/express.d.cts.map +1 -0
  198. package/dist/runtime/endpoints/express.d.mts +84 -0
  199. package/dist/runtime/endpoints/express.d.mts.map +1 -0
  200. package/dist/runtime/endpoints/express.mjs +66 -0
  201. package/dist/runtime/endpoints/express.mjs.map +1 -0
  202. package/dist/runtime/endpoints/hono-single.cjs +28 -0
  203. package/dist/runtime/endpoints/hono-single.cjs.map +1 -0
  204. package/dist/runtime/endpoints/hono-single.d.cts +43 -0
  205. package/dist/runtime/endpoints/hono-single.d.cts.map +1 -0
  206. package/dist/runtime/endpoints/hono-single.d.mts +43 -0
  207. package/dist/runtime/endpoints/hono-single.d.mts.map +1 -0
  208. package/dist/runtime/endpoints/hono-single.mjs +27 -0
  209. package/dist/runtime/endpoints/hono-single.mjs.map +1 -0
  210. package/dist/runtime/endpoints/hono.cjs +37 -0
  211. package/dist/runtime/endpoints/hono.cjs.map +1 -0
  212. package/dist/runtime/endpoints/hono.d.cts +96 -0
  213. package/dist/runtime/endpoints/hono.d.cts.map +1 -0
  214. package/dist/runtime/endpoints/hono.d.mts +96 -0
  215. package/dist/runtime/endpoints/hono.d.mts.map +1 -0
  216. package/dist/runtime/endpoints/hono.mjs +34 -0
  217. package/dist/runtime/endpoints/hono.mjs.map +1 -0
  218. package/dist/runtime/endpoints/index.d.cts +4 -0
  219. package/dist/runtime/endpoints/index.d.mts +4 -0
  220. package/dist/runtime/endpoints/load-express.cjs +35 -0
  221. package/dist/runtime/endpoints/load-express.cjs.map +1 -0
  222. package/dist/runtime/endpoints/load-express.mjs +34 -0
  223. package/dist/runtime/endpoints/load-express.mjs.map +1 -0
  224. package/dist/runtime/endpoints/node-fetch-handler.cjs +75 -0
  225. package/dist/runtime/endpoints/node-fetch-handler.cjs.map +1 -0
  226. package/dist/runtime/endpoints/node-fetch-handler.d.cts +11 -0
  227. package/dist/runtime/endpoints/node-fetch-handler.d.cts.map +1 -0
  228. package/dist/runtime/endpoints/node-fetch-handler.d.mts +11 -0
  229. package/dist/runtime/endpoints/node-fetch-handler.d.mts.map +1 -0
  230. package/dist/runtime/endpoints/node-fetch-handler.mjs +73 -0
  231. package/dist/runtime/endpoints/node-fetch-handler.mjs.map +1 -0
  232. package/dist/runtime/endpoints/node.cjs +16 -0
  233. package/dist/runtime/endpoints/node.cjs.map +1 -0
  234. package/dist/runtime/endpoints/node.d.cts +104 -0
  235. package/dist/runtime/endpoints/node.d.cts.map +1 -0
  236. package/dist/runtime/endpoints/node.d.mts +104 -0
  237. package/dist/runtime/endpoints/node.d.mts.map +1 -0
  238. package/dist/runtime/endpoints/node.mjs +16 -0
  239. package/dist/runtime/endpoints/node.mjs.map +1 -0
  240. package/dist/runtime/endpoints/single-route-helpers.cjs +130 -0
  241. package/dist/runtime/endpoints/single-route-helpers.cjs.map +1 -0
  242. package/dist/runtime/endpoints/single-route-helpers.mjs +125 -0
  243. package/dist/runtime/endpoints/single-route-helpers.mjs.map +1 -0
  244. package/dist/runtime/express.d.cts +2 -0
  245. package/dist/runtime/express.d.mts +2 -0
  246. package/dist/runtime/generative-ui/generative-ui-middleware.cjs +393 -0
  247. package/dist/runtime/generative-ui/generative-ui-middleware.cjs.map +1 -0
  248. package/dist/runtime/generative-ui/generative-ui-middleware.d.cts +20 -0
  249. package/dist/runtime/generative-ui/generative-ui-middleware.d.cts.map +1 -0
  250. package/dist/runtime/generative-ui/generative-ui-middleware.d.mts +20 -0
  251. package/dist/runtime/generative-ui/generative-ui-middleware.d.mts.map +1 -0
  252. package/dist/runtime/generative-ui/generative-ui-middleware.mjs +392 -0
  253. package/dist/runtime/generative-ui/generative-ui-middleware.mjs.map +1 -0
  254. package/dist/runtime/generative-ui/index.d.cts +2 -0
  255. package/dist/runtime/generative-ui/index.d.mts +2 -0
  256. package/dist/runtime/generative-ui/surface-writer.cjs +85 -0
  257. package/dist/runtime/generative-ui/surface-writer.cjs.map +1 -0
  258. package/dist/runtime/generative-ui/surface-writer.d.cts +32 -0
  259. package/dist/runtime/generative-ui/surface-writer.d.cts.map +1 -0
  260. package/dist/runtime/generative-ui/surface-writer.d.mts +32 -0
  261. package/dist/runtime/generative-ui/surface-writer.d.mts.map +1 -0
  262. package/dist/runtime/generative-ui/surface-writer.mjs +84 -0
  263. package/dist/runtime/generative-ui/surface-writer.mjs.map +1 -0
  264. package/dist/runtime/handlers/get-runtime-info.cjs +140 -0
  265. package/dist/runtime/handlers/get-runtime-info.cjs.map +1 -0
  266. package/dist/runtime/handlers/get-runtime-info.mjs +140 -0
  267. package/dist/runtime/handlers/get-runtime-info.mjs.map +1 -0
  268. package/dist/runtime/handlers/handle-connect.cjs +62 -0
  269. package/dist/runtime/handlers/handle-connect.cjs.map +1 -0
  270. package/dist/runtime/handlers/handle-connect.mjs +62 -0
  271. package/dist/runtime/handlers/handle-connect.mjs.map +1 -0
  272. package/dist/runtime/handlers/handle-debug-events.cjs +33 -0
  273. package/dist/runtime/handlers/handle-debug-events.cjs.map +1 -0
  274. package/dist/runtime/handlers/handle-debug-events.mjs +33 -0
  275. package/dist/runtime/handlers/handle-debug-events.mjs.map +1 -0
  276. package/dist/runtime/handlers/handle-inspector-learning.cjs +56 -0
  277. package/dist/runtime/handlers/handle-inspector-learning.cjs.map +1 -0
  278. package/dist/runtime/handlers/handle-inspector-learning.mjs +55 -0
  279. package/dist/runtime/handlers/handle-inspector-learning.mjs.map +1 -0
  280. package/dist/runtime/handlers/handle-inspector-metadata.cjs +36 -0
  281. package/dist/runtime/handlers/handle-inspector-metadata.cjs.map +1 -0
  282. package/dist/runtime/handlers/handle-inspector-metadata.mjs +35 -0
  283. package/dist/runtime/handlers/handle-inspector-metadata.mjs.map +1 -0
  284. package/dist/runtime/handlers/handle-run.cjs +111 -0
  285. package/dist/runtime/handlers/handle-run.cjs.map +1 -0
  286. package/dist/runtime/handlers/handle-run.mjs +110 -0
  287. package/dist/runtime/handlers/handle-run.mjs.map +1 -0
  288. package/dist/runtime/handlers/handle-stop.cjs +102 -0
  289. package/dist/runtime/handlers/handle-stop.cjs.map +1 -0
  290. package/dist/runtime/handlers/handle-stop.mjs +101 -0
  291. package/dist/runtime/handlers/handle-stop.mjs.map +1 -0
  292. package/dist/runtime/handlers/handle-suggest.cjs +83 -0
  293. package/dist/runtime/handlers/handle-suggest.cjs.map +1 -0
  294. package/dist/runtime/handlers/handle-suggest.mjs +82 -0
  295. package/dist/runtime/handlers/handle-suggest.mjs.map +1 -0
  296. package/dist/runtime/handlers/handle-trajectory-connect.cjs +40 -0
  297. package/dist/runtime/handlers/handle-trajectory-connect.cjs.map +1 -0
  298. package/dist/runtime/handlers/handle-trajectory-connect.mjs +39 -0
  299. package/dist/runtime/handlers/handle-trajectory-connect.mjs.map +1 -0
  300. package/dist/runtime/handlers/handle-transcribe.cjs +112 -0
  301. package/dist/runtime/handlers/handle-transcribe.cjs.map +1 -0
  302. package/dist/runtime/handlers/handle-transcribe.mjs +111 -0
  303. package/dist/runtime/handlers/handle-transcribe.mjs.map +1 -0
  304. package/dist/runtime/handlers/header-utils.cjs +185 -0
  305. package/dist/runtime/handlers/header-utils.cjs.map +1 -0
  306. package/dist/runtime/handlers/header-utils.d.cts +53 -0
  307. package/dist/runtime/handlers/header-utils.d.cts.map +1 -0
  308. package/dist/runtime/handlers/header-utils.d.mts +53 -0
  309. package/dist/runtime/handlers/header-utils.d.mts.map +1 -0
  310. package/dist/runtime/handlers/header-utils.mjs +183 -0
  311. package/dist/runtime/handlers/header-utils.mjs.map +1 -0
  312. package/dist/runtime/handlers/intelligence/annotate.cjs +83 -0
  313. package/dist/runtime/handlers/intelligence/annotate.cjs.map +1 -0
  314. package/dist/runtime/handlers/intelligence/annotate.mjs +82 -0
  315. package/dist/runtime/handlers/intelligence/annotate.mjs.map +1 -0
  316. package/dist/runtime/handlers/intelligence/connect.cjs +68 -0
  317. package/dist/runtime/handlers/intelligence/connect.cjs.map +1 -0
  318. package/dist/runtime/handlers/intelligence/connect.mjs +68 -0
  319. package/dist/runtime/handlers/intelligence/connect.mjs.map +1 -0
  320. package/dist/runtime/handlers/intelligence/memories.cjs +260 -0
  321. package/dist/runtime/handlers/intelligence/memories.cjs.map +1 -0
  322. package/dist/runtime/handlers/intelligence/memories.mjs +254 -0
  323. package/dist/runtime/handlers/intelligence/memories.mjs.map +1 -0
  324. package/dist/runtime/handlers/intelligence/run.cjs +283 -0
  325. package/dist/runtime/handlers/intelligence/run.cjs.map +1 -0
  326. package/dist/runtime/handlers/intelligence/run.mjs +282 -0
  327. package/dist/runtime/handlers/intelligence/run.mjs.map +1 -0
  328. package/dist/runtime/handlers/intelligence/thread-names.cjs +172 -0
  329. package/dist/runtime/handlers/intelligence/thread-names.cjs.map +1 -0
  330. package/dist/runtime/handlers/intelligence/thread-names.mjs +171 -0
  331. package/dist/runtime/handlers/intelligence/thread-names.mjs.map +1 -0
  332. package/dist/runtime/handlers/intelligence/threads.cjs +399 -0
  333. package/dist/runtime/handlers/intelligence/threads.cjs.map +1 -0
  334. package/dist/runtime/handlers/intelligence/threads.mjs +390 -0
  335. package/dist/runtime/handlers/intelligence/threads.mjs.map +1 -0
  336. package/dist/runtime/handlers/shared/agent-utils.cjs +267 -0
  337. package/dist/runtime/handlers/shared/agent-utils.cjs.map +1 -0
  338. package/dist/runtime/handlers/shared/agent-utils.mjs +262 -0
  339. package/dist/runtime/handlers/shared/agent-utils.mjs.map +1 -0
  340. package/dist/runtime/handlers/shared/cloud-telemetry.cjs +30 -0
  341. package/dist/runtime/handlers/shared/cloud-telemetry.cjs.map +1 -0
  342. package/dist/runtime/handlers/shared/cloud-telemetry.mjs +29 -0
  343. package/dist/runtime/handlers/shared/cloud-telemetry.mjs.map +1 -0
  344. package/dist/runtime/handlers/shared/describe-endpoint.cjs +25 -0
  345. package/dist/runtime/handlers/shared/describe-endpoint.cjs.map +1 -0
  346. package/dist/runtime/handlers/shared/describe-endpoint.mjs +24 -0
  347. package/dist/runtime/handlers/shared/describe-endpoint.mjs.map +1 -0
  348. package/dist/runtime/handlers/shared/intelligence-utils.cjs +24 -0
  349. package/dist/runtime/handlers/shared/intelligence-utils.cjs.map +1 -0
  350. package/dist/runtime/handlers/shared/intelligence-utils.mjs +23 -0
  351. package/dist/runtime/handlers/shared/intelligence-utils.mjs.map +1 -0
  352. package/dist/runtime/handlers/shared/json-response.cjs +14 -0
  353. package/dist/runtime/handlers/shared/json-response.cjs.map +1 -0
  354. package/dist/runtime/handlers/shared/json-response.mjs +12 -0
  355. package/dist/runtime/handlers/shared/json-response.mjs.map +1 -0
  356. package/dist/runtime/handlers/shared/mcp-apps-servers.cjs +22 -0
  357. package/dist/runtime/handlers/shared/mcp-apps-servers.cjs.map +1 -0
  358. package/dist/runtime/handlers/shared/mcp-apps-servers.mjs +22 -0
  359. package/dist/runtime/handlers/shared/mcp-apps-servers.mjs.map +1 -0
  360. package/dist/runtime/handlers/shared/memory-policy.cjs +78 -0
  361. package/dist/runtime/handlers/shared/memory-policy.cjs.map +1 -0
  362. package/dist/runtime/handlers/shared/memory-policy.mjs +77 -0
  363. package/dist/runtime/handlers/shared/memory-policy.mjs.map +1 -0
  364. package/dist/runtime/handlers/shared/platform-error.cjs +39 -0
  365. package/dist/runtime/handlers/shared/platform-error.cjs.map +1 -0
  366. package/dist/runtime/handlers/shared/platform-error.mjs +39 -0
  367. package/dist/runtime/handlers/shared/platform-error.mjs.map +1 -0
  368. package/dist/runtime/handlers/shared/resolve-intelligence-user.cjs +50 -0
  369. package/dist/runtime/handlers/shared/resolve-intelligence-user.cjs.map +1 -0
  370. package/dist/runtime/handlers/shared/resolve-intelligence-user.mjs +49 -0
  371. package/dist/runtime/handlers/shared/resolve-intelligence-user.mjs.map +1 -0
  372. package/dist/runtime/handlers/shared/sse-keep-alive.cjs +68 -0
  373. package/dist/runtime/handlers/shared/sse-keep-alive.cjs.map +1 -0
  374. package/dist/runtime/handlers/shared/sse-keep-alive.mjs +66 -0
  375. package/dist/runtime/handlers/shared/sse-keep-alive.mjs.map +1 -0
  376. package/dist/runtime/handlers/shared/sse-response.cjs +237 -0
  377. package/dist/runtime/handlers/shared/sse-response.cjs.map +1 -0
  378. package/dist/runtime/handlers/shared/sse-response.mjs +236 -0
  379. package/dist/runtime/handlers/shared/sse-response.mjs.map +1 -0
  380. package/dist/runtime/handlers/shared/thread-access.cjs +137 -0
  381. package/dist/runtime/handlers/shared/thread-access.cjs.map +1 -0
  382. package/dist/runtime/handlers/shared/thread-access.d.cts +28 -0
  383. package/dist/runtime/handlers/shared/thread-access.d.cts.map +1 -0
  384. package/dist/runtime/handlers/shared/thread-access.d.mts +28 -0
  385. package/dist/runtime/handlers/shared/thread-access.d.mts.map +1 -0
  386. package/dist/runtime/handlers/shared/thread-access.mjs +132 -0
  387. package/dist/runtime/handlers/shared/thread-access.mjs.map +1 -0
  388. package/dist/runtime/handlers/sse/connect.cjs +23 -0
  389. package/dist/runtime/handlers/sse/connect.cjs.map +1 -0
  390. package/dist/runtime/handlers/sse/connect.mjs +23 -0
  391. package/dist/runtime/handlers/sse/connect.mjs.map +1 -0
  392. package/dist/runtime/handlers/sse/run.cjs +44 -0
  393. package/dist/runtime/handlers/sse/run.cjs.map +1 -0
  394. package/dist/runtime/handlers/sse/run.mjs +44 -0
  395. package/dist/runtime/handlers/sse/run.mjs.map +1 -0
  396. package/dist/runtime/hono.d.cts +2 -0
  397. package/dist/runtime/hono.d.mts +2 -0
  398. package/dist/runtime/index.d.cts +34 -0
  399. package/dist/runtime/index.d.cts.map +1 -0
  400. package/dist/runtime/index.d.mts +34 -0
  401. package/dist/runtime/index.d.mts.map +1 -0
  402. package/dist/runtime/intelligence-platform/client.cjs +1338 -0
  403. package/dist/runtime/intelligence-platform/client.cjs.map +1 -0
  404. package/dist/runtime/intelligence-platform/client.d.cts +824 -0
  405. package/dist/runtime/intelligence-platform/client.d.cts.map +1 -0
  406. package/dist/runtime/intelligence-platform/client.d.mts +824 -0
  407. package/dist/runtime/intelligence-platform/client.d.mts.map +1 -0
  408. package/dist/runtime/intelligence-platform/client.mjs +1334 -0
  409. package/dist/runtime/intelligence-platform/client.mjs.map +1 -0
  410. package/dist/runtime/intelligence-platform/experimental.d.cts +26 -0
  411. package/dist/runtime/intelligence-platform/experimental.d.cts.map +1 -0
  412. package/dist/runtime/intelligence-platform/experimental.d.mts +26 -0
  413. package/dist/runtime/intelligence-platform/experimental.d.mts.map +1 -0
  414. package/dist/runtime/intelligence-platform/index.d.cts +3 -0
  415. package/dist/runtime/intelligence-platform/index.d.mts +3 -0
  416. package/dist/runtime/intelligence-platform/learned-skills.cjs +95 -0
  417. package/dist/runtime/intelligence-platform/learned-skills.cjs.map +1 -0
  418. package/dist/runtime/intelligence-platform/learned-skills.d.cts +43 -0
  419. package/dist/runtime/intelligence-platform/learned-skills.d.cts.map +1 -0
  420. package/dist/runtime/intelligence-platform/learned-skills.d.mts +43 -0
  421. package/dist/runtime/intelligence-platform/learned-skills.d.mts.map +1 -0
  422. package/dist/runtime/intelligence-platform/learned-skills.mjs +92 -0
  423. package/dist/runtime/intelligence-platform/learned-skills.mjs.map +1 -0
  424. package/dist/runtime/intelligence-platform/learning-management.cjs +203 -0
  425. package/dist/runtime/intelligence-platform/learning-management.cjs.map +1 -0
  426. package/dist/runtime/intelligence-platform/learning-management.d.cts +111 -0
  427. package/dist/runtime/intelligence-platform/learning-management.d.cts.map +1 -0
  428. package/dist/runtime/intelligence-platform/learning-management.d.mts +111 -0
  429. package/dist/runtime/intelligence-platform/learning-management.d.mts.map +1 -0
  430. package/dist/runtime/intelligence-platform/learning-management.mjs +193 -0
  431. package/dist/runtime/intelligence-platform/learning-management.mjs.map +1 -0
  432. package/dist/runtime/intelligence-platform/skill-registry/archive.cjs +131 -0
  433. package/dist/runtime/intelligence-platform/skill-registry/archive.cjs.map +1 -0
  434. package/dist/runtime/intelligence-platform/skill-registry/archive.d.cts +10 -0
  435. package/dist/runtime/intelligence-platform/skill-registry/archive.d.cts.map +1 -0
  436. package/dist/runtime/intelligence-platform/skill-registry/archive.d.mts +10 -0
  437. package/dist/runtime/intelligence-platform/skill-registry/archive.d.mts.map +1 -0
  438. package/dist/runtime/intelligence-platform/skill-registry/archive.mjs +127 -0
  439. package/dist/runtime/intelligence-platform/skill-registry/archive.mjs.map +1 -0
  440. package/dist/runtime/intelligence-platform/skill-registry/config.cjs +65 -0
  441. package/dist/runtime/intelligence-platform/skill-registry/config.cjs.map +1 -0
  442. package/dist/runtime/intelligence-platform/skill-registry/config.d.cts +47 -0
  443. package/dist/runtime/intelligence-platform/skill-registry/config.d.cts.map +1 -0
  444. package/dist/runtime/intelligence-platform/skill-registry/config.d.mts +47 -0
  445. package/dist/runtime/intelligence-platform/skill-registry/config.d.mts.map +1 -0
  446. package/dist/runtime/intelligence-platform/skill-registry/config.mjs +65 -0
  447. package/dist/runtime/intelligence-platform/skill-registry/config.mjs.map +1 -0
  448. package/dist/runtime/intelligence-platform/skill-registry/errors.cjs +10 -0
  449. package/dist/runtime/intelligence-platform/skill-registry/errors.cjs.map +1 -0
  450. package/dist/runtime/intelligence-platform/skill-registry/errors.d.cts +7 -0
  451. package/dist/runtime/intelligence-platform/skill-registry/errors.d.cts.map +1 -0
  452. package/dist/runtime/intelligence-platform/skill-registry/errors.d.mts +7 -0
  453. package/dist/runtime/intelligence-platform/skill-registry/errors.d.mts.map +1 -0
  454. package/dist/runtime/intelligence-platform/skill-registry/errors.mjs +10 -0
  455. package/dist/runtime/intelligence-platform/skill-registry/errors.mjs.map +1 -0
  456. package/dist/runtime/intelligence-platform/skill-registry/index.d.cts +7 -0
  457. package/dist/runtime/intelligence-platform/skill-registry/index.d.mts +7 -0
  458. package/dist/runtime/intelligence-platform/skill-registry/registry.cjs +247 -0
  459. package/dist/runtime/intelligence-platform/skill-registry/registry.cjs.map +1 -0
  460. package/dist/runtime/intelligence-platform/skill-registry/registry.d.cts +36 -0
  461. package/dist/runtime/intelligence-platform/skill-registry/registry.d.cts.map +1 -0
  462. package/dist/runtime/intelligence-platform/skill-registry/registry.d.mts +36 -0
  463. package/dist/runtime/intelligence-platform/skill-registry/registry.d.mts.map +1 -0
  464. package/dist/runtime/intelligence-platform/skill-registry/registry.mjs +246 -0
  465. package/dist/runtime/intelligence-platform/skill-registry/registry.mjs.map +1 -0
  466. package/dist/runtime/intelligence-platform/skill-registry/skill-content.cjs +41 -0
  467. package/dist/runtime/intelligence-platform/skill-registry/skill-content.cjs.map +1 -0
  468. package/dist/runtime/intelligence-platform/skill-registry/skill-content.d.cts +12 -0
  469. package/dist/runtime/intelligence-platform/skill-registry/skill-content.d.cts.map +1 -0
  470. package/dist/runtime/intelligence-platform/skill-registry/skill-content.d.mts +12 -0
  471. package/dist/runtime/intelligence-platform/skill-registry/skill-content.d.mts.map +1 -0
  472. package/dist/runtime/intelligence-platform/skill-registry/skill-content.mjs +38 -0
  473. package/dist/runtime/intelligence-platform/skill-registry/skill-content.mjs.map +1 -0
  474. package/dist/runtime/intelligence-platform/skill-registry/snapshot.cjs +92 -0
  475. package/dist/runtime/intelligence-platform/skill-registry/snapshot.cjs.map +1 -0
  476. package/dist/runtime/intelligence-platform/skill-registry/snapshot.d.cts +27 -0
  477. package/dist/runtime/intelligence-platform/skill-registry/snapshot.d.cts.map +1 -0
  478. package/dist/runtime/intelligence-platform/skill-registry/snapshot.d.mts +27 -0
  479. package/dist/runtime/intelligence-platform/skill-registry/snapshot.d.mts.map +1 -0
  480. package/dist/runtime/intelligence-platform/skill-registry/snapshot.mjs +91 -0
  481. package/dist/runtime/intelligence-platform/skill-registry/snapshot.mjs.map +1 -0
  482. package/dist/runtime/intelligence-platform/thread-lock-heartbeat.cjs +142 -0
  483. package/dist/runtime/intelligence-platform/thread-lock-heartbeat.cjs.map +1 -0
  484. package/dist/runtime/intelligence-platform/thread-lock-heartbeat.mjs +141 -0
  485. package/dist/runtime/intelligence-platform/thread-lock-heartbeat.mjs.map +1 -0
  486. package/dist/runtime/intelligence-platform/trajectories.cjs +95 -0
  487. package/dist/runtime/intelligence-platform/trajectories.cjs.map +1 -0
  488. package/dist/runtime/intelligence-platform/trajectories.d.cts +11 -0
  489. package/dist/runtime/intelligence-platform/trajectories.d.cts.map +1 -0
  490. package/dist/runtime/intelligence-platform/trajectories.d.mts +11 -0
  491. package/dist/runtime/intelligence-platform/trajectories.d.mts.map +1 -0
  492. package/dist/runtime/intelligence-platform/trajectories.mjs +91 -0
  493. package/dist/runtime/intelligence-platform/trajectories.mjs.map +1 -0
  494. package/dist/runtime/node.d.cts +2 -0
  495. package/dist/runtime/node.d.mts +2 -0
  496. package/dist/runtime/runner/agent-runner.cjs +82 -0
  497. package/dist/runtime/runner/agent-runner.cjs.map +1 -0
  498. package/dist/runtime/runner/agent-runner.d.cts +151 -0
  499. package/dist/runtime/runner/agent-runner.d.cts.map +1 -0
  500. package/dist/runtime/runner/agent-runner.d.mts +151 -0
  501. package/dist/runtime/runner/agent-runner.d.mts.map +1 -0
  502. package/dist/runtime/runner/agent-runner.mjs +73 -0
  503. package/dist/runtime/runner/agent-runner.mjs.map +1 -0
  504. package/dist/runtime/runner/in-memory.cjs +741 -0
  505. package/dist/runtime/runner/in-memory.cjs.map +1 -0
  506. package/dist/runtime/runner/in-memory.d.cts +427 -0
  507. package/dist/runtime/runner/in-memory.d.cts.map +1 -0
  508. package/dist/runtime/runner/in-memory.d.mts +427 -0
  509. package/dist/runtime/runner/in-memory.d.mts.map +1 -0
  510. package/dist/runtime/runner/in-memory.mjs +734 -0
  511. package/dist/runtime/runner/in-memory.mjs.map +1 -0
  512. package/dist/runtime/runner/index.d.cts +5 -0
  513. package/dist/runtime/runner/index.d.mts +5 -0
  514. package/dist/runtime/runner/index.mjs +6 -0
  515. package/dist/runtime/runner/intelligence.cjs +617 -0
  516. package/dist/runtime/runner/intelligence.cjs.map +1 -0
  517. package/dist/runtime/runner/intelligence.d.cts +104 -0
  518. package/dist/runtime/runner/intelligence.d.cts.map +1 -0
  519. package/dist/runtime/runner/intelligence.d.mts +104 -0
  520. package/dist/runtime/runner/intelligence.d.mts.map +1 -0
  521. package/dist/runtime/runner/intelligence.mjs +616 -0
  522. package/dist/runtime/runner/intelligence.mjs.map +1 -0
  523. package/dist/runtime/telemetry/disclosure.cjs +25 -0
  524. package/dist/runtime/telemetry/disclosure.cjs.map +1 -0
  525. package/dist/runtime/telemetry/disclosure.mjs +24 -0
  526. package/dist/runtime/telemetry/disclosure.mjs.map +1 -0
  527. package/dist/runtime/telemetry/events.d.cts +66 -0
  528. package/dist/runtime/telemetry/events.d.cts.map +1 -0
  529. package/dist/runtime/telemetry/events.d.mts +66 -0
  530. package/dist/runtime/telemetry/events.d.mts.map +1 -0
  531. package/dist/runtime/telemetry/instance-created.cjs +34 -0
  532. package/dist/runtime/telemetry/instance-created.cjs.map +1 -0
  533. package/dist/runtime/telemetry/instance-created.mjs +34 -0
  534. package/dist/runtime/telemetry/instance-created.mjs.map +1 -0
  535. package/dist/runtime/telemetry/telemetry-client.cjs +108 -0
  536. package/dist/runtime/telemetry/telemetry-client.cjs.map +1 -0
  537. package/dist/runtime/telemetry/telemetry-client.d.cts +10 -0
  538. package/dist/runtime/telemetry/telemetry-client.d.cts.map +1 -0
  539. package/dist/runtime/telemetry/telemetry-client.d.mts +10 -0
  540. package/dist/runtime/telemetry/telemetry-client.d.mts.map +1 -0
  541. package/dist/runtime/telemetry/telemetry-client.mjs +107 -0
  542. package/dist/runtime/telemetry/telemetry-client.mjs.map +1 -0
  543. package/dist/runtime/telemetry/telemetry-identity.cjs +12 -0
  544. package/dist/runtime/telemetry/telemetry-identity.cjs.map +1 -0
  545. package/dist/runtime/telemetry/telemetry-identity.mjs +11 -0
  546. package/dist/runtime/telemetry/telemetry-identity.mjs.map +1 -0
  547. package/dist/runtime/transcription-service/transcription-service.cjs +7 -0
  548. package/dist/runtime/transcription-service/transcription-service.cjs.map +1 -0
  549. package/dist/runtime/transcription-service/transcription-service.d.cts +14 -0
  550. package/dist/runtime/transcription-service/transcription-service.d.cts.map +1 -0
  551. package/dist/runtime/transcription-service/transcription-service.d.mts +14 -0
  552. package/dist/runtime/transcription-service/transcription-service.d.mts.map +1 -0
  553. package/dist/runtime/transcription-service/transcription-service.mjs +6 -0
  554. package/dist/runtime/transcription-service/transcription-service.mjs.map +1 -0
  555. package/package.json +119 -104
  556. package/.eslintrc.js +0 -7
  557. package/CHANGELOG.md +0 -2920
  558. package/__snapshots__/schema/schema.graphql +0 -371
  559. package/dist/index.d.ts +0 -1494
  560. package/dist/index.js +0 -5641
  561. package/dist/index.js.map +0 -1
  562. package/dist/index.mjs.map +0 -1
  563. package/dist/langgraph.d.ts +0 -284
  564. package/dist/langgraph.js +0 -211
  565. package/dist/langgraph.js.map +0 -1
  566. package/dist/langgraph.mjs +0 -206
  567. package/dist/langgraph.mjs.map +0 -1
  568. package/dist/v2/index.d.ts +0 -2
  569. package/dist/v2/index.js +0 -22
  570. package/dist/v2/index.js.map +0 -1
  571. package/dist/v2/index.mjs +0 -5
  572. package/dist/v2/index.mjs.map +0 -1
  573. package/jest.config.js +0 -10
  574. package/scripts/generate-gql-schema.ts +0 -13
  575. package/src/agents/langgraph/event-source.ts +0 -329
  576. package/src/agents/langgraph/events.ts +0 -377
  577. package/src/graphql/inputs/action.input.ts +0 -16
  578. package/src/graphql/inputs/agent-session.input.ts +0 -13
  579. package/src/graphql/inputs/agent-state.input.ts +0 -13
  580. package/src/graphql/inputs/cloud-guardrails.input.ts +0 -16
  581. package/src/graphql/inputs/cloud.input.ts +0 -8
  582. package/src/graphql/inputs/context-property.input.ts +0 -10
  583. package/src/graphql/inputs/copilot-context.input.ts +0 -10
  584. package/src/graphql/inputs/custom-property.input.ts +0 -15
  585. package/src/graphql/inputs/extensions.input.ts +0 -21
  586. package/src/graphql/inputs/forwarded-parameters.input.ts +0 -22
  587. package/src/graphql/inputs/frontend.input.ts +0 -14
  588. package/src/graphql/inputs/generate-copilot-response.input.ts +0 -59
  589. package/src/graphql/inputs/load-agent-state.input.ts +0 -10
  590. package/src/graphql/inputs/message.input.ts +0 -110
  591. package/src/graphql/inputs/meta-event.input.ts +0 -18
  592. package/src/graphql/message-conversion/agui-to-gql.test.ts +0 -1263
  593. package/src/graphql/message-conversion/agui-to-gql.ts +0 -333
  594. package/src/graphql/message-conversion/gql-to-agui.test.ts +0 -1580
  595. package/src/graphql/message-conversion/gql-to-agui.ts +0 -278
  596. package/src/graphql/message-conversion/index.ts +0 -2
  597. package/src/graphql/message-conversion/roundtrip-conversion.test.ts +0 -526
  598. package/src/graphql/resolvers/copilot.resolver.ts +0 -708
  599. package/src/graphql/resolvers/state.resolver.ts +0 -27
  600. package/src/graphql/types/agents-response.type.ts +0 -19
  601. package/src/graphql/types/base/index.ts +0 -10
  602. package/src/graphql/types/converted/index.ts +0 -176
  603. package/src/graphql/types/copilot-response.type.ts +0 -138
  604. package/src/graphql/types/enums.ts +0 -38
  605. package/src/graphql/types/extensions-response.type.ts +0 -23
  606. package/src/graphql/types/guardrails-result.type.ts +0 -20
  607. package/src/graphql/types/load-agent-state-response.type.ts +0 -17
  608. package/src/graphql/types/message-status.type.ts +0 -42
  609. package/src/graphql/types/meta-events.type.ts +0 -71
  610. package/src/graphql/types/response-status.type.ts +0 -66
  611. package/src/index.ts +0 -4
  612. package/src/langgraph.ts +0 -1
  613. package/src/lib/cloud/index.ts +0 -4
  614. package/src/lib/error-messages.ts +0 -200
  615. package/src/lib/index.ts +0 -52
  616. package/src/lib/integrations/index.ts +0 -6
  617. package/src/lib/integrations/nest/index.ts +0 -14
  618. package/src/lib/integrations/nextjs/app-router.ts +0 -38
  619. package/src/lib/integrations/nextjs/pages-router.ts +0 -39
  620. package/src/lib/integrations/node-express/index.ts +0 -14
  621. package/src/lib/integrations/node-http/index.ts +0 -143
  622. package/src/lib/integrations/node-http/request-handler.ts +0 -111
  623. package/src/lib/integrations/shared.ts +0 -161
  624. package/src/lib/logger.ts +0 -28
  625. package/src/lib/observability.ts +0 -160
  626. package/src/lib/runtime/__tests__/copilot-runtime-error.test.ts +0 -169
  627. package/src/lib/runtime/__tests__/mcp-tools-utils.test.ts +0 -464
  628. package/src/lib/runtime/agent-integrations/langgraph/agent.ts +0 -209
  629. package/src/lib/runtime/agent-integrations/langgraph/consts.ts +0 -34
  630. package/src/lib/runtime/agent-integrations/langgraph/index.ts +0 -2
  631. package/src/lib/runtime/copilot-runtime.ts +0 -710
  632. package/src/lib/runtime/mcp-tools-utils.ts +0 -254
  633. package/src/lib/runtime/retry-utils.ts +0 -96
  634. package/src/lib/runtime/telemetry-agent-runner.ts +0 -139
  635. package/src/lib/runtime/types.ts +0 -49
  636. package/src/lib/runtime/utils.ts +0 -87
  637. package/src/lib/streaming.ts +0 -202
  638. package/src/lib/telemetry-client.ts +0 -64
  639. package/src/service-adapters/anthropic/anthropic-adapter.ts +0 -452
  640. package/src/service-adapters/anthropic/utils.ts +0 -152
  641. package/src/service-adapters/bedrock/bedrock-adapter.ts +0 -73
  642. package/src/service-adapters/conversion.ts +0 -67
  643. package/src/service-adapters/empty/empty-adapter.ts +0 -38
  644. package/src/service-adapters/events.ts +0 -294
  645. package/src/service-adapters/experimental/ollama/ollama-adapter.ts +0 -84
  646. package/src/service-adapters/google/google-genai-adapter.test.ts +0 -104
  647. package/src/service-adapters/google/google-genai-adapter.ts +0 -88
  648. package/src/service-adapters/groq/groq-adapter.ts +0 -203
  649. package/src/service-adapters/index.ts +0 -18
  650. package/src/service-adapters/langchain/langchain-adapter.ts +0 -111
  651. package/src/service-adapters/langchain/langserve.ts +0 -88
  652. package/src/service-adapters/langchain/types.ts +0 -14
  653. package/src/service-adapters/langchain/utils.ts +0 -313
  654. package/src/service-adapters/openai/openai-adapter.ts +0 -283
  655. package/src/service-adapters/openai/openai-assistant-adapter.ts +0 -344
  656. package/src/service-adapters/openai/utils.ts +0 -199
  657. package/src/service-adapters/service-adapter.ts +0 -41
  658. package/src/service-adapters/shared/error-utils.ts +0 -61
  659. package/src/service-adapters/shared/index.ts +0 -1
  660. package/src/service-adapters/unify/unify-adapter.ts +0 -151
  661. package/src/utils/failed-response-status-reasons.ts +0 -70
  662. package/src/utils/index.ts +0 -1
  663. package/src/v2/index.ts +0 -3
  664. package/tests/global.d.ts +0 -13
  665. package/tests/service-adapters/anthropic/allowlist-approach.test.ts +0 -226
  666. package/tests/service-adapters/anthropic/anthropic-adapter.test.ts +0 -389
  667. package/tests/service-adapters/openai/allowlist-approach.test.ts +0 -238
  668. package/tests/service-adapters/openai/openai-adapter.test.ts +0 -301
  669. package/tests/setup.jest.ts +0 -21
  670. package/tests/tsconfig.json +0 -10
  671. package/tsconfig.json +0 -13
  672. package/tsup.config.ts +0 -20
  673. package/typedoc.json +0 -4
@@ -1,389 +0,0 @@
1
- /**
2
- * @jest-environment node
3
- */
4
-
5
- import { AnthropicAdapter } from "../../../src/service-adapters/anthropic/anthropic-adapter";
6
-
7
- // Mock only the Anthropic SDK, not our adapter
8
- jest.mock("@anthropic-ai/sdk", () => {
9
- return {
10
- default: jest.fn().mockImplementation(() => ({
11
- messages: {
12
- create: jest.fn(),
13
- },
14
- })),
15
- };
16
- });
17
-
18
- // Mock the message classes
19
- jest.mock("../../../src/graphql/types/converted", () => {
20
- class MockTextMessage {
21
- content: string;
22
- role: string;
23
- id: string;
24
-
25
- constructor(role: string, content: string) {
26
- this.role = role;
27
- this.content = content;
28
- this.id = "mock-text-" + Math.random().toString(36).substring(7);
29
- }
30
-
31
- isTextMessage() {
32
- return true;
33
- }
34
- isImageMessage() {
35
- return false;
36
- }
37
- isActionExecutionMessage() {
38
- return false;
39
- }
40
- isResultMessage() {
41
- return false;
42
- }
43
- }
44
-
45
- class MockActionExecutionMessage {
46
- id: string;
47
- name: string;
48
- arguments: string;
49
-
50
- constructor(params: { id: string; name: string; arguments: string }) {
51
- this.id = params.id;
52
- this.name = params.name;
53
- this.arguments = params.arguments;
54
- }
55
-
56
- isTextMessage() {
57
- return false;
58
- }
59
- isImageMessage() {
60
- return false;
61
- }
62
- isActionExecutionMessage() {
63
- return true;
64
- }
65
- isResultMessage() {
66
- return false;
67
- }
68
- }
69
-
70
- class MockResultMessage {
71
- actionExecutionId: string;
72
- result: string;
73
- id: string;
74
-
75
- constructor(params: { actionExecutionId: string; result: string }) {
76
- this.actionExecutionId = params.actionExecutionId;
77
- this.result = params.result;
78
- this.id = "mock-result-" + Math.random().toString(36).substring(7);
79
- }
80
-
81
- isTextMessage() {
82
- return false;
83
- }
84
- isImageMessage() {
85
- return false;
86
- }
87
- isActionExecutionMessage() {
88
- return false;
89
- }
90
- isResultMessage() {
91
- return true;
92
- }
93
- }
94
-
95
- return {
96
- TextMessage: MockTextMessage,
97
- ActionExecutionMessage: MockActionExecutionMessage,
98
- ResultMessage: MockResultMessage,
99
- };
100
- });
101
-
102
- describe("AnthropicAdapter", () => {
103
- let adapter: AnthropicAdapter;
104
- let mockEventSource: any;
105
- let mockAnthropicCreate: jest.Mock;
106
-
107
- beforeEach(() => {
108
- jest.clearAllMocks();
109
-
110
- // Create a mock Anthropic instance
111
- const mockAnthropic = {
112
- messages: {
113
- create: jest.fn(),
114
- },
115
- };
116
-
117
- // Create adapter with the mocked instance
118
- adapter = new AnthropicAdapter({ anthropic: mockAnthropic as any });
119
-
120
- // Mock the create method to capture what's being sent
121
- mockAnthropicCreate = mockAnthropic.messages.create;
122
-
123
- mockEventSource = {
124
- stream: jest.fn((callback) => {
125
- const mockStream = {
126
- sendTextMessageStart: jest.fn(),
127
- sendTextMessageContent: jest.fn(),
128
- sendTextMessageEnd: jest.fn(),
129
- sendActionExecutionStart: jest.fn(),
130
- sendActionExecutionArgs: jest.fn(),
131
- sendActionExecutionEnd: jest.fn(),
132
- complete: jest.fn(),
133
- };
134
- callback(mockStream);
135
- return Promise.resolve();
136
- }),
137
- };
138
- });
139
-
140
- describe("Deduplication Logic", () => {
141
- it("should filter out duplicate result messages", async () => {
142
- const {
143
- TextMessage,
144
- ActionExecutionMessage,
145
- ResultMessage,
146
- } = require("../../../src/graphql/types/converted");
147
-
148
- const systemMessage = new TextMessage("system", "System message");
149
- const userMessage = new TextMessage("user", "Set theme to orange");
150
-
151
- // Tool execution
152
- const toolExecution = new ActionExecutionMessage({
153
- id: "tool-123",
154
- name: "setThemeColor",
155
- arguments: '{"themeColor": "orange"}',
156
- });
157
-
158
- // Multiple duplicate results (this was causing the infinite loop)
159
- const result1 = new ResultMessage({
160
- actionExecutionId: "tool-123",
161
- result: "Theme color set to orange",
162
- });
163
- const result2 = new ResultMessage({
164
- actionExecutionId: "tool-123",
165
- result: "Theme color set to orange",
166
- });
167
- const result3 = new ResultMessage({
168
- actionExecutionId: "tool-123",
169
- result: "Theme color set to orange",
170
- });
171
-
172
- // Mock Anthropic to return empty stream (simulating the original problem)
173
- mockAnthropicCreate.mockResolvedValue({
174
- [Symbol.asyncIterator]: async function* () {
175
- // Empty stream - no content from Anthropic
176
- },
177
- });
178
-
179
- await adapter.process({
180
- threadId: "test-thread",
181
- model: "claude-3-5-sonnet-latest",
182
- messages: [systemMessage, userMessage, toolExecution, result1, result2, result3],
183
- actions: [],
184
- eventSource: mockEventSource,
185
- forwardedParameters: {},
186
- });
187
-
188
- // Check that only one result message was sent to Anthropic
189
- expect(mockAnthropicCreate).toHaveBeenCalledWith(
190
- expect.objectContaining({
191
- messages: expect.arrayContaining([
192
- expect.objectContaining({
193
- role: "user",
194
- content: [{ type: "text", text: "Set theme to orange" }],
195
- }),
196
- expect.objectContaining({
197
- role: "assistant",
198
- content: [
199
- expect.objectContaining({
200
- type: "tool_use",
201
- id: "tool-123",
202
- name: "setThemeColor",
203
- }),
204
- ],
205
- }),
206
- expect.objectContaining({
207
- role: "user",
208
- content: [
209
- expect.objectContaining({
210
- type: "tool_result",
211
- content: "Theme color set to orange",
212
- tool_use_id: "tool-123",
213
- }),
214
- ],
215
- }),
216
- ]),
217
- }),
218
- );
219
-
220
- // Verify only 3 messages sent (user, assistant tool_use, user tool_result) - no duplicates
221
- const sentMessages = mockAnthropicCreate.mock.calls[0][0].messages;
222
- expect(sentMessages).toHaveLength(3);
223
-
224
- // Count tool_result messages - should be only 1
225
- const toolResults = sentMessages.filter(
226
- (msg: any) => msg.role === "user" && msg.content.some((c: any) => c.type === "tool_result"),
227
- );
228
- expect(toolResults).toHaveLength(1);
229
- });
230
-
231
- it("should filter out invalid result messages without corresponding tool_use", async () => {
232
- const {
233
- TextMessage,
234
- ActionExecutionMessage,
235
- ResultMessage,
236
- } = require("../../../src/graphql/types/converted");
237
-
238
- const systemMessage = new TextMessage("system", "System message");
239
-
240
- // Valid tool execution
241
- const validTool = new ActionExecutionMessage({
242
- id: "valid-tool",
243
- name: "validAction",
244
- arguments: "{}",
245
- });
246
- const validResult = new ResultMessage({
247
- actionExecutionId: "valid-tool",
248
- result: "Valid result",
249
- });
250
-
251
- // Invalid result with no corresponding tool_use
252
- const invalidResult = new ResultMessage({
253
- actionExecutionId: "nonexistent-tool",
254
- result: "Invalid result",
255
- });
256
-
257
- mockAnthropicCreate.mockResolvedValue({
258
- [Symbol.asyncIterator]: async function* () {},
259
- });
260
-
261
- await adapter.process({
262
- threadId: "test-thread",
263
- messages: [systemMessage, validTool, validResult, invalidResult],
264
- actions: [],
265
- eventSource: mockEventSource,
266
- forwardedParameters: {},
267
- });
268
-
269
- const sentMessages = mockAnthropicCreate.mock.calls[0][0].messages;
270
-
271
- // Should only include the valid tool result
272
- const toolResults = sentMessages.filter(
273
- (msg: any) => msg.role === "user" && msg.content.some((c: any) => c.type === "tool_result"),
274
- );
275
- expect(toolResults).toHaveLength(1);
276
- expect(toolResults[0].content[0].tool_use_id).toBe("valid-tool");
277
- });
278
- });
279
-
280
- describe("Fallback Response Logic", () => {
281
- it("should generate contextual fallback when Anthropic returns no content", async () => {
282
- const {
283
- TextMessage,
284
- ActionExecutionMessage,
285
- ResultMessage,
286
- } = require("../../../src/graphql/types/converted");
287
-
288
- const systemMessage = new TextMessage("system", "System message");
289
- const userMessage = new TextMessage("user", "Set theme to orange");
290
-
291
- const toolExecution = new ActionExecutionMessage({
292
- id: "tool-123",
293
- name: "setThemeColor",
294
- arguments: '{"themeColor": "orange"}',
295
- });
296
-
297
- const toolResult = new ResultMessage({
298
- actionExecutionId: "tool-123",
299
- result: "Theme color set to orange",
300
- });
301
-
302
- // Mock Anthropic to return empty stream
303
- mockAnthropicCreate.mockResolvedValue({
304
- [Symbol.asyncIterator]: async function* () {
305
- // No content blocks - simulates Anthropic not responding
306
- },
307
- });
308
-
309
- const mockStream = {
310
- sendTextMessageStart: jest.fn(),
311
- sendTextMessageContent: jest.fn(),
312
- sendTextMessageEnd: jest.fn(),
313
- complete: jest.fn(),
314
- };
315
-
316
- mockEventSource.stream.mockImplementation((callback) => {
317
- callback(mockStream);
318
- return Promise.resolve();
319
- });
320
-
321
- await adapter.process({
322
- threadId: "test-thread",
323
- messages: [systemMessage, userMessage, toolExecution, toolResult],
324
- actions: [],
325
- eventSource: mockEventSource,
326
- forwardedParameters: {},
327
- });
328
-
329
- // Should generate fallback response with the tool result content
330
- expect(mockStream.sendTextMessageStart).toHaveBeenCalled();
331
- expect(mockStream.sendTextMessageContent).toHaveBeenCalledWith({
332
- messageId: expect.any(String),
333
- content: "Theme color set to orange", // Uses the actual result content
334
- });
335
- expect(mockStream.sendTextMessageEnd).toHaveBeenCalled();
336
- });
337
-
338
- it("should use generic fallback when no tool result content available", async () => {
339
- const {
340
- TextMessage,
341
- ActionExecutionMessage,
342
- ResultMessage,
343
- } = require("../../../src/graphql/types/converted");
344
-
345
- const systemMessage = new TextMessage("system", "System message");
346
-
347
- const toolExecution = new ActionExecutionMessage({
348
- id: "tool-123",
349
- name: "someAction",
350
- arguments: "{}",
351
- });
352
-
353
- const toolResult = new ResultMessage({
354
- actionExecutionId: "tool-123",
355
- result: "", // Empty result
356
- });
357
-
358
- mockAnthropicCreate.mockResolvedValue({
359
- [Symbol.asyncIterator]: async function* () {},
360
- });
361
-
362
- const mockStream = {
363
- sendTextMessageStart: jest.fn(),
364
- sendTextMessageContent: jest.fn(),
365
- sendTextMessageEnd: jest.fn(),
366
- complete: jest.fn(),
367
- };
368
-
369
- mockEventSource.stream.mockImplementation((callback) => {
370
- callback(mockStream);
371
- return Promise.resolve();
372
- });
373
-
374
- await adapter.process({
375
- threadId: "test-thread",
376
- messages: [systemMessage, toolExecution, toolResult],
377
- actions: [],
378
- eventSource: mockEventSource,
379
- forwardedParameters: {},
380
- });
381
-
382
- // Should use generic fallback
383
- expect(mockStream.sendTextMessageContent).toHaveBeenCalledWith({
384
- messageId: expect.any(String),
385
- content: "Task completed successfully.",
386
- });
387
- });
388
- });
389
- });
@@ -1,238 +0,0 @@
1
- /**
2
- * @jest-environment node
3
- */
4
-
5
- import { describe, it, expect } from "@jest/globals";
6
-
7
- describe("OpenAI Adapter - Allowlist Approach", () => {
8
- it("should filter out tool_result messages with no corresponding tool_call ID", () => {
9
- // Setup test data
10
- const validToolCallIds = new Set<string>(["valid-id-1", "valid-id-2"]);
11
-
12
- // Messages to filter - valid and invalid ones
13
- const messages = [
14
- { type: "text", role: "user", content: "Hello" },
15
- { type: "tool_result", actionExecutionId: "valid-id-1", result: "result1" },
16
- { type: "tool_result", actionExecutionId: "invalid-id", result: "invalid" },
17
- { type: "tool_result", actionExecutionId: "valid-id-2", result: "result2" },
18
- { type: "tool_result", actionExecutionId: "valid-id-1", result: "duplicate" }, // Duplicate ID
19
- ];
20
-
21
- // Implement the filtering logic, similar to the adapter
22
- const filteredMessages = messages.filter((message) => {
23
- if (message.type === "tool_result") {
24
- // Skip if there's no corresponding tool_call
25
- if (!validToolCallIds.has(message.actionExecutionId)) {
26
- return false;
27
- }
28
-
29
- // Remove this ID from valid IDs so we don't process duplicates
30
- validToolCallIds.delete(message.actionExecutionId);
31
- }
32
-
33
- // Keep all non-tool-result messages
34
- return true;
35
- });
36
-
37
- // Verify results
38
- expect(filteredMessages.length).toBe(3); // text + 2 valid tool results (no duplicates or invalid)
39
-
40
- // Valid results should be included
41
- expect(
42
- filteredMessages.some(
43
- (m) => m.type === "tool_result" && m.actionExecutionId === "valid-id-1",
44
- ),
45
- ).toBe(true);
46
-
47
- expect(
48
- filteredMessages.some(
49
- (m) => m.type === "tool_result" && m.actionExecutionId === "valid-id-2",
50
- ),
51
- ).toBe(true);
52
-
53
- // Invalid result should be excluded
54
- expect(
55
- filteredMessages.some(
56
- (m) => m.type === "tool_result" && m.actionExecutionId === "invalid-id",
57
- ),
58
- ).toBe(false);
59
-
60
- // Duplicate should be excluded - we used a different approach than Anthropic
61
- const validId1Count = filteredMessages.filter(
62
- (m) => m.type === "tool_result" && m.actionExecutionId === "valid-id-1",
63
- ).length;
64
-
65
- expect(validId1Count).toBe(1);
66
- });
67
-
68
- it("should maintain correct order of messages when filtering", () => {
69
- // Setup test data
70
- const validToolCallIds = new Set<string>(["tool-1", "tool-2", "tool-3"]);
71
-
72
- // Test with a complex conversation pattern
73
- const messages = [
74
- { type: "text", role: "user", content: "Initial message" },
75
- { type: "text", role: "assistant", content: "I'll help with that" },
76
- { type: "tool_call", id: "tool-1", name: "firstTool" },
77
- { type: "tool_result", actionExecutionId: "tool-1", result: "result1" },
78
- { type: "text", role: "assistant", content: "Got the first result" },
79
- { type: "tool_call", id: "tool-2", name: "secondTool" },
80
- { type: "tool_result", actionExecutionId: "tool-2", result: "result2" },
81
- { type: "tool_result", actionExecutionId: "invalid-id", result: "invalid-result" },
82
- { type: "tool_call", id: "tool-3", name: "thirdTool" },
83
- { type: "tool_result", actionExecutionId: "tool-1", result: "duplicate-result" }, // Duplicate
84
- { type: "tool_result", actionExecutionId: "tool-3", result: "result3" },
85
- { type: "text", role: "user", content: "Final message" },
86
- ];
87
-
88
- // Apply OpenAI's filter approach (using filter instead of loop)
89
- const filteredMessages = messages.filter((message) => {
90
- if (message.type === "tool_result") {
91
- // Skip if there's no corresponding tool_call
92
- if (!validToolCallIds.has(message.actionExecutionId)) {
93
- return false;
94
- }
95
-
96
- // Remove this ID from valid IDs so we don't process duplicates
97
- validToolCallIds.delete(message.actionExecutionId);
98
- }
99
-
100
- // Keep all non-tool-result messages
101
- return true;
102
- });
103
-
104
- // Verify results
105
- expect(filteredMessages.length).toBe(10); // 12 original - 2 filtered out
106
-
107
- // Check that the message order is preserved
108
- expect(filteredMessages[0].type).toBe("text"); // Initial user message
109
- expect(filteredMessages[0].content).toBe("Initial message");
110
- expect(filteredMessages[1].type).toBe("text"); // Assistant response
111
- expect(filteredMessages[2].type).toBe("tool_call"); // First tool
112
- expect(filteredMessages[3].type).toBe("tool_result"); // First result
113
- expect(filteredMessages[3].actionExecutionId).toBe("tool-1");
114
- expect(filteredMessages[4].type).toBe("text"); // Assistant comment
115
- expect(filteredMessages[5].type).toBe("tool_call"); // Second tool
116
- expect(filteredMessages[6].type).toBe("tool_result"); // Second result
117
- expect(filteredMessages[6].actionExecutionId).toBe("tool-2");
118
- expect(filteredMessages[7].type).toBe("tool_call"); // Third tool
119
- expect(filteredMessages[8].type).toBe("tool_result"); // Third result
120
- expect(filteredMessages[8].actionExecutionId).toBe("tool-3");
121
- expect(filteredMessages[9].type).toBe("text"); // Final user message
122
-
123
- // Each valid tool result should appear exactly once
124
- const toolResultCounts = new Map();
125
- filteredMessages.forEach((message) => {
126
- if (message.type === "tool_result") {
127
- const id = message.actionExecutionId;
128
- toolResultCounts.set(id, (toolResultCounts.get(id) || 0) + 1);
129
- }
130
- });
131
-
132
- expect(toolResultCounts.size).toBe(3); // Should have 3 different tool results
133
- expect(toolResultCounts.get("tool-1")).toBe(1);
134
- expect(toolResultCounts.get("tool-2")).toBe(1);
135
- expect(toolResultCounts.get("tool-3")).toBe(1);
136
- expect(toolResultCounts.has("invalid-id")).toBe(false);
137
- });
138
-
139
- it("should handle empty message array", () => {
140
- const validToolCallIds = new Set<string>(["valid-id-1", "valid-id-2"]);
141
- const messages = [];
142
-
143
- // Apply OpenAI's filter approach
144
- const filteredMessages = messages.filter((message) => {
145
- if (message.type === "tool_result") {
146
- if (!validToolCallIds.has(message.actionExecutionId)) {
147
- return false;
148
- }
149
- validToolCallIds.delete(message.actionExecutionId);
150
- }
151
- return true;
152
- });
153
-
154
- expect(filteredMessages.length).toBe(0);
155
- });
156
-
157
- it("should handle edge cases with mixed message types", () => {
158
- // Setup test data with various message types
159
- const validToolCallIds = new Set<string>(["valid-id-1"]);
160
-
161
- const messages = [
162
- { type: "text", role: "user", content: "Hello" },
163
- { type: "image", url: "https://example.com/image.jpg" }, // Non-tool message type
164
- { type: "tool_result", actionExecutionId: "valid-id-1", result: "result1" },
165
- { type: "custom", data: { key: "value" } }, // Another custom type
166
- { type: "tool_result", actionExecutionId: "valid-id-1", result: "duplicate" }, // Duplicate
167
- { type: "null", value: null }, // Edge case
168
- { type: "undefined" }, // Edge case
169
- ];
170
-
171
- // Apply OpenAI's filter approach
172
- const filteredMessages = messages.filter((message) => {
173
- if (message.type === "tool_result") {
174
- if (!validToolCallIds.has(message.actionExecutionId)) {
175
- return false;
176
- }
177
- validToolCallIds.delete(message.actionExecutionId);
178
- }
179
- return true;
180
- });
181
-
182
- // Should have all non-tool_result messages + 1 valid tool_result
183
- expect(filteredMessages.length).toBe(6); // 7 original - 1 duplicate
184
-
185
- // Valid tool_result should be included exactly once
186
- const toolResults = filteredMessages.filter((m) => m.type === "tool_result");
187
- expect(toolResults.length).toBe(1);
188
- expect(toolResults[0].actionExecutionId).toBe("valid-id-1");
189
-
190
- // All non-tool_result messages should be preserved
191
- expect(filteredMessages.filter((m) => m.type === "text").length).toBe(1);
192
- expect(filteredMessages.filter((m) => m.type === "image").length).toBe(1);
193
- expect(filteredMessages.filter((m) => m.type === "custom").length).toBe(1);
194
- expect(filteredMessages.filter((m) => m.type === "null").length).toBe(1);
195
- expect(filteredMessages.filter((m) => m.type === "undefined").length).toBe(1);
196
- });
197
-
198
- it("should properly handle multiple duplicate tool results", () => {
199
- // Setup test data with multiple duplicates
200
- const validToolCallIds = new Set<string>(["tool-1", "tool-2"]);
201
-
202
- const messages = [
203
- { type: "text", role: "user", content: "Initial prompt" },
204
- { type: "tool_call", id: "tool-1", name: "firstTool" },
205
- { type: "tool_result", actionExecutionId: "tool-1", result: "first-result" },
206
- { type: "tool_result", actionExecutionId: "tool-1", result: "duplicate-1" }, // Duplicate 1
207
- { type: "tool_call", id: "tool-2", name: "secondTool" },
208
- { type: "tool_result", actionExecutionId: "tool-1", result: "duplicate-2" }, // Duplicate 2
209
- { type: "tool_result", actionExecutionId: "tool-2", result: "second-result" },
210
- { type: "tool_result", actionExecutionId: "tool-2", result: "duplicate-3" }, // Duplicate 3
211
- { type: "tool_result", actionExecutionId: "tool-1", result: "duplicate-4" }, // Duplicate 4
212
- ];
213
-
214
- // Apply OpenAI's filter approach
215
- const filteredMessages = messages.filter((message) => {
216
- if (message.type === "tool_result") {
217
- if (!validToolCallIds.has(message.actionExecutionId)) {
218
- return false;
219
- }
220
- validToolCallIds.delete(message.actionExecutionId);
221
- }
222
- return true;
223
- });
224
-
225
- // Should have text + tool calls + only the first occurrence of each tool result
226
- expect(filteredMessages.length).toBe(5);
227
-
228
- // Check that only the first occurrence of each tool result is kept
229
- const toolResults = filteredMessages.filter((m) => m.type === "tool_result");
230
- expect(toolResults.length).toBe(2);
231
-
232
- expect(toolResults[0].actionExecutionId).toBe("tool-1");
233
- expect(toolResults[0].result).toBe("first-result"); // First occurrence should be kept
234
-
235
- expect(toolResults[1].actionExecutionId).toBe("tool-2");
236
- expect(toolResults[1].result).toBe("second-result"); // First occurrence should be kept
237
- });
238
- });