@strands-agents/sdk 0.5.0 → 0.7.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 (486) hide show
  1. package/README.md +64 -0
  2. package/dist/src/__fixtures__/agent-helpers.d.ts +37 -4
  3. package/dist/src/__fixtures__/agent-helpers.d.ts.map +1 -1
  4. package/dist/src/__fixtures__/agent-helpers.js +31 -4
  5. package/dist/src/__fixtures__/agent-helpers.js.map +1 -1
  6. package/dist/src/__fixtures__/metrics-helpers.d.ts +55 -0
  7. package/dist/src/__fixtures__/metrics-helpers.d.ts.map +1 -0
  8. package/dist/src/__fixtures__/metrics-helpers.js +57 -0
  9. package/dist/src/__fixtures__/metrics-helpers.js.map +1 -0
  10. package/dist/src/__fixtures__/mock-message-model.d.ts +8 -4
  11. package/dist/src/__fixtures__/mock-message-model.d.ts.map +1 -1
  12. package/dist/src/__fixtures__/mock-message-model.js +25 -7
  13. package/dist/src/__fixtures__/mock-message-model.js.map +1 -1
  14. package/dist/src/__fixtures__/mock-meter.d.ts +32 -0
  15. package/dist/src/__fixtures__/mock-meter.d.ts.map +1 -0
  16. package/dist/src/__fixtures__/mock-meter.js +47 -0
  17. package/dist/src/__fixtures__/mock-meter.js.map +1 -0
  18. package/dist/src/__fixtures__/mock-plugin.d.ts +13 -0
  19. package/dist/src/__fixtures__/mock-plugin.d.ts.map +1 -0
  20. package/dist/src/__fixtures__/{mock-hook-provider.js → mock-plugin.js} +8 -5
  21. package/dist/src/__fixtures__/mock-plugin.js.map +1 -0
  22. package/dist/src/__fixtures__/mock-storage-provider.d.ts +5 -0
  23. package/dist/src/__fixtures__/mock-storage-provider.d.ts.map +1 -1
  24. package/dist/src/__fixtures__/mock-storage-provider.js +23 -6
  25. package/dist/src/__fixtures__/mock-storage-provider.js.map +1 -1
  26. package/dist/src/__fixtures__/slim-types.d.ts +2 -1
  27. package/dist/src/__fixtures__/slim-types.d.ts.map +1 -1
  28. package/dist/src/__fixtures__/tool-helpers.d.ts.map +1 -1
  29. package/dist/src/__fixtures__/tool-helpers.js +5 -2
  30. package/dist/src/__fixtures__/tool-helpers.js.map +1 -1
  31. package/dist/src/__tests__/index.test.js +21 -0
  32. package/dist/src/__tests__/index.test.js.map +1 -1
  33. package/dist/src/__tests__/mcp.test.js +45 -15
  34. package/dist/src/__tests__/mcp.test.js.map +1 -1
  35. package/dist/src/__tests__/mime.test.d.ts +2 -0
  36. package/dist/src/__tests__/mime.test.d.ts.map +1 -0
  37. package/dist/src/__tests__/mime.test.js +83 -0
  38. package/dist/src/__tests__/mime.test.js.map +1 -0
  39. package/dist/src/__tests__/state-store.test.d.ts +2 -0
  40. package/dist/src/__tests__/state-store.test.d.ts.map +1 -0
  41. package/dist/src/__tests__/{app-state.test.js → state-store.test.js} +86 -51
  42. package/dist/src/__tests__/state-store.test.js.map +1 -0
  43. package/dist/src/a2a/__tests__/a2a-agent.test.d.ts +2 -0
  44. package/dist/src/a2a/__tests__/a2a-agent.test.d.ts.map +1 -0
  45. package/dist/src/a2a/__tests__/a2a-agent.test.js +364 -0
  46. package/dist/src/a2a/__tests__/a2a-agent.test.js.map +1 -0
  47. package/dist/src/a2a/__tests__/adapters.test.d.ts +2 -0
  48. package/dist/src/a2a/__tests__/adapters.test.d.ts.map +1 -0
  49. package/dist/src/a2a/__tests__/adapters.test.js +151 -0
  50. package/dist/src/a2a/__tests__/adapters.test.js.map +1 -0
  51. package/dist/src/a2a/__tests__/executor.test.d.ts +2 -0
  52. package/dist/src/a2a/__tests__/executor.test.d.ts.map +1 -0
  53. package/dist/src/a2a/__tests__/executor.test.js +196 -0
  54. package/dist/src/a2a/__tests__/executor.test.js.map +1 -0
  55. package/dist/src/a2a/__tests__/server.test.d.ts +2 -0
  56. package/dist/src/a2a/__tests__/server.test.d.ts.map +1 -0
  57. package/dist/src/a2a/__tests__/server.test.js +51 -0
  58. package/dist/src/a2a/__tests__/server.test.js.map +1 -0
  59. package/dist/src/a2a/__tests__/server.test.node.d.ts +2 -0
  60. package/dist/src/a2a/__tests__/server.test.node.d.ts.map +1 -0
  61. package/dist/src/a2a/__tests__/server.test.node.js +110 -0
  62. package/dist/src/a2a/__tests__/server.test.node.js.map +1 -0
  63. package/dist/src/a2a/a2a-agent.d.ts +132 -0
  64. package/dist/src/a2a/a2a-agent.d.ts.map +1 -0
  65. package/dist/src/a2a/a2a-agent.js +255 -0
  66. package/dist/src/a2a/a2a-agent.js.map +1 -0
  67. package/dist/src/a2a/adapters.d.ts +27 -0
  68. package/dist/src/a2a/adapters.d.ts.map +1 -0
  69. package/dist/src/a2a/adapters.js +175 -0
  70. package/dist/src/a2a/adapters.js.map +1 -0
  71. package/dist/src/a2a/events.d.ts +42 -0
  72. package/dist/src/a2a/events.d.ts.map +1 -0
  73. package/dist/src/a2a/events.js +35 -0
  74. package/dist/src/a2a/events.js.map +1 -0
  75. package/dist/src/a2a/executor.d.ts +57 -0
  76. package/dist/src/a2a/executor.d.ts.map +1 -0
  77. package/dist/src/a2a/executor.js +130 -0
  78. package/dist/src/a2a/executor.js.map +1 -0
  79. package/dist/src/a2a/express-server.d.ts +67 -0
  80. package/dist/src/a2a/express-server.d.ts.map +1 -0
  81. package/dist/src/a2a/express-server.js +95 -0
  82. package/dist/src/a2a/express-server.js.map +1 -0
  83. package/dist/src/a2a/index.d.ts +16 -0
  84. package/dist/src/a2a/index.d.ts.map +1 -0
  85. package/dist/src/a2a/index.js +16 -0
  86. package/dist/src/a2a/index.js.map +1 -0
  87. package/dist/src/a2a/logging.d.ts +8 -0
  88. package/dist/src/a2a/logging.d.ts.map +1 -0
  89. package/dist/src/a2a/logging.js +15 -0
  90. package/dist/src/a2a/logging.js.map +1 -0
  91. package/dist/src/a2a/server.d.ts +67 -0
  92. package/dist/src/a2a/server.d.ts.map +1 -0
  93. package/dist/src/a2a/server.js +67 -0
  94. package/dist/src/a2a/server.js.map +1 -0
  95. package/dist/src/agent/__tests__/agent.hook.test.js +87 -51
  96. package/dist/src/agent/__tests__/agent.hook.test.js.map +1 -1
  97. package/dist/src/agent/__tests__/agent.test.js +176 -101
  98. package/dist/src/agent/__tests__/agent.test.js.map +1 -1
  99. package/dist/src/agent/__tests__/agent.tracer.test.js +10 -10
  100. package/dist/src/agent/__tests__/agent.tracer.test.js.map +1 -1
  101. package/dist/src/agent/__tests__/snapshot.test.js +11 -11
  102. package/dist/src/agent/__tests__/snapshot.test.js.map +1 -1
  103. package/dist/src/agent/agent.d.ts +71 -58
  104. package/dist/src/agent/agent.d.ts.map +1 -1
  105. package/dist/src/agent/agent.js +177 -93
  106. package/dist/src/agent/agent.js.map +1 -1
  107. package/dist/src/agent/snapshot.d.ts.map +1 -1
  108. package/dist/src/agent/snapshot.js +3 -2
  109. package/dist/src/agent/snapshot.js.map +1 -1
  110. package/dist/src/conversation-manager/__tests__/conversation-manager.test.d.ts +2 -0
  111. package/dist/src/conversation-manager/__tests__/conversation-manager.test.d.ts.map +1 -0
  112. package/dist/src/conversation-manager/__tests__/conversation-manager.test.js +100 -0
  113. package/dist/src/conversation-manager/__tests__/conversation-manager.test.js.map +1 -0
  114. package/dist/src/conversation-manager/__tests__/null-conversation-manager.test.js +26 -10
  115. package/dist/src/conversation-manager/__tests__/null-conversation-manager.test.js.map +1 -1
  116. package/dist/src/conversation-manager/__tests__/sliding-window-conversation-manager.test.js +84 -21
  117. package/dist/src/conversation-manager/__tests__/sliding-window-conversation-manager.test.js.map +1 -1
  118. package/dist/src/conversation-manager/conversation-manager.d.ts +87 -0
  119. package/dist/src/conversation-manager/conversation-manager.d.ts.map +1 -0
  120. package/dist/src/conversation-manager/conversation-manager.js +59 -0
  121. package/dist/src/conversation-manager/conversation-manager.js.map +1 -0
  122. package/dist/src/conversation-manager/index.d.ts +1 -0
  123. package/dist/src/conversation-manager/index.d.ts.map +1 -1
  124. package/dist/src/conversation-manager/index.js +1 -0
  125. package/dist/src/conversation-manager/index.js.map +1 -1
  126. package/dist/src/conversation-manager/null-conversation-manager.d.ts +12 -8
  127. package/dist/src/conversation-manager/null-conversation-manager.d.ts.map +1 -1
  128. package/dist/src/conversation-manager/null-conversation-manager.js +13 -7
  129. package/dist/src/conversation-manager/null-conversation-manager.js.map +1 -1
  130. package/dist/src/conversation-manager/sliding-window-conversation-manager.d.ts +28 -19
  131. package/dist/src/conversation-manager/sliding-window-conversation-manager.d.ts.map +1 -1
  132. package/dist/src/conversation-manager/sliding-window-conversation-manager.js +44 -36
  133. package/dist/src/conversation-manager/sliding-window-conversation-manager.js.map +1 -1
  134. package/dist/src/errors.d.ts +6 -0
  135. package/dist/src/errors.d.ts.map +1 -1
  136. package/dist/src/errors.js +9 -0
  137. package/dist/src/errors.js.map +1 -1
  138. package/dist/src/hooks/__tests__/events.test.js +2 -0
  139. package/dist/src/hooks/__tests__/events.test.js.map +1 -1
  140. package/dist/src/hooks/__tests__/registry.test.js +10 -154
  141. package/dist/src/hooks/__tests__/registry.test.js.map +1 -1
  142. package/dist/src/hooks/events.d.ts +60 -44
  143. package/dist/src/hooks/events.d.ts.map +1 -1
  144. package/dist/src/hooks/events.js +11 -11
  145. package/dist/src/hooks/events.js.map +1 -1
  146. package/dist/src/hooks/index.d.ts +4 -4
  147. package/dist/src/hooks/index.d.ts.map +1 -1
  148. package/dist/src/hooks/index.js +2 -2
  149. package/dist/src/hooks/registry.d.ts +1 -32
  150. package/dist/src/hooks/registry.d.ts.map +1 -1
  151. package/dist/src/hooks/registry.js +1 -47
  152. package/dist/src/hooks/registry.js.map +1 -1
  153. package/dist/src/hooks/types.d.ts +0 -31
  154. package/dist/src/hooks/types.d.ts.map +1 -1
  155. package/dist/src/index.d.ts +30 -15
  156. package/dist/src/index.d.ts.map +1 -1
  157. package/dist/src/index.js +21 -8
  158. package/dist/src/index.js.map +1 -1
  159. package/dist/src/mcp.d.ts +38 -0
  160. package/dist/src/mcp.d.ts.map +1 -1
  161. package/dist/src/mcp.js +23 -6
  162. package/dist/src/mcp.js.map +1 -1
  163. package/dist/src/mime.d.ts +24 -0
  164. package/dist/src/mime.d.ts.map +1 -0
  165. package/dist/src/mime.js +82 -0
  166. package/dist/src/mime.js.map +1 -0
  167. package/dist/src/models/__tests__/anthropic.test.js +78 -1
  168. package/dist/src/models/__tests__/anthropic.test.js.map +1 -1
  169. package/dist/src/models/__tests__/bedrock.test.js +2050 -131
  170. package/dist/src/models/__tests__/bedrock.test.js.map +1 -1
  171. package/dist/src/models/__tests__/gemini.test.js +100 -1
  172. package/dist/src/models/__tests__/gemini.test.js.map +1 -1
  173. package/dist/src/models/__tests__/model.test.js +131 -0
  174. package/dist/src/models/__tests__/model.test.js.map +1 -1
  175. package/dist/src/models/__tests__/openai.test.js +184 -32
  176. package/dist/src/models/__tests__/openai.test.js.map +1 -1
  177. package/dist/src/models/__tests__/streaming.test.d.ts +2 -0
  178. package/dist/src/models/__tests__/streaming.test.d.ts.map +1 -0
  179. package/dist/src/models/__tests__/streaming.test.js +50 -0
  180. package/dist/src/models/__tests__/streaming.test.js.map +1 -0
  181. package/dist/src/models/anthropic.d.ts.map +1 -1
  182. package/dist/src/models/anthropic.js +6 -7
  183. package/dist/src/models/anthropic.js.map +1 -1
  184. package/dist/src/models/bedrock.d.ts +144 -11
  185. package/dist/src/models/bedrock.d.ts.map +1 -1
  186. package/dist/src/models/bedrock.js +416 -28
  187. package/dist/src/models/bedrock.js.map +1 -1
  188. package/dist/src/models/gemini/adapters.d.ts.map +1 -1
  189. package/dist/src/models/gemini/adapters.js +65 -14
  190. package/dist/src/models/gemini/adapters.js.map +1 -1
  191. package/dist/src/models/model.d.ts +18 -0
  192. package/dist/src/models/model.d.ts.map +1 -1
  193. package/dist/src/models/model.js +57 -11
  194. package/dist/src/models/model.js.map +1 -1
  195. package/dist/src/models/openai.d.ts +15 -0
  196. package/dist/src/models/openai.d.ts.map +1 -1
  197. package/dist/src/models/openai.js +108 -64
  198. package/dist/src/models/openai.js.map +1 -1
  199. package/dist/src/models/streaming.d.ts +88 -2
  200. package/dist/src/models/streaming.d.ts.map +1 -1
  201. package/dist/src/models/streaming.js +26 -0
  202. package/dist/src/models/streaming.js.map +1 -1
  203. package/dist/src/multiagent/__tests__/events.test.js +41 -8
  204. package/dist/src/multiagent/__tests__/events.test.js.map +1 -1
  205. package/dist/src/multiagent/__tests__/graph.test.d.ts +2 -0
  206. package/dist/src/multiagent/__tests__/graph.test.d.ts.map +1 -0
  207. package/dist/src/multiagent/__tests__/graph.test.js +453 -0
  208. package/dist/src/multiagent/__tests__/graph.test.js.map +1 -0
  209. package/dist/src/multiagent/__tests__/nodes.test.js +34 -16
  210. package/dist/src/multiagent/__tests__/nodes.test.js.map +1 -1
  211. package/dist/src/multiagent/__tests__/queue.test.js +22 -0
  212. package/dist/src/multiagent/__tests__/queue.test.js.map +1 -1
  213. package/dist/src/multiagent/__tests__/swarm.test.d.ts +2 -0
  214. package/dist/src/multiagent/__tests__/swarm.test.d.ts.map +1 -0
  215. package/dist/src/multiagent/__tests__/swarm.test.js +264 -0
  216. package/dist/src/multiagent/__tests__/swarm.test.js.map +1 -0
  217. package/dist/src/multiagent/edge.d.ts +9 -2
  218. package/dist/src/multiagent/edge.d.ts.map +1 -1
  219. package/dist/src/multiagent/events.d.ts +63 -15
  220. package/dist/src/multiagent/events.d.ts.map +1 -1
  221. package/dist/src/multiagent/events.js +28 -3
  222. package/dist/src/multiagent/events.js.map +1 -1
  223. package/dist/src/multiagent/graph.d.ts +135 -0
  224. package/dist/src/multiagent/graph.d.ts.map +1 -0
  225. package/dist/src/multiagent/graph.js +400 -0
  226. package/dist/src/multiagent/graph.js.map +1 -0
  227. package/dist/src/multiagent/index.d.ts +8 -3
  228. package/dist/src/multiagent/index.d.ts.map +1 -1
  229. package/dist/src/multiagent/index.js +3 -1
  230. package/dist/src/multiagent/index.js.map +1 -1
  231. package/dist/src/multiagent/multiagent.d.ts +41 -0
  232. package/dist/src/multiagent/multiagent.d.ts.map +1 -0
  233. package/dist/src/multiagent/multiagent.js +2 -0
  234. package/dist/src/multiagent/multiagent.js.map +1 -0
  235. package/dist/src/multiagent/nodes.d.ts +24 -25
  236. package/dist/src/multiagent/nodes.d.ts.map +1 -1
  237. package/dist/src/multiagent/nodes.js +42 -15
  238. package/dist/src/multiagent/nodes.js.map +1 -1
  239. package/dist/src/multiagent/plugins.d.ts +70 -0
  240. package/dist/src/multiagent/plugins.d.ts.map +1 -0
  241. package/dist/src/multiagent/plugins.js +70 -0
  242. package/dist/src/multiagent/plugins.js.map +1 -0
  243. package/dist/src/multiagent/queue.d.ts +6 -0
  244. package/dist/src/multiagent/queue.d.ts.map +1 -1
  245. package/dist/src/multiagent/queue.js +13 -0
  246. package/dist/src/multiagent/queue.js.map +1 -1
  247. package/dist/src/multiagent/state.d.ts +4 -2
  248. package/dist/src/multiagent/state.d.ts.map +1 -1
  249. package/dist/src/multiagent/state.js +5 -2
  250. package/dist/src/multiagent/state.js.map +1 -1
  251. package/dist/src/multiagent/swarm.d.ts +112 -0
  252. package/dist/src/multiagent/swarm.d.ts.map +1 -0
  253. package/dist/src/multiagent/swarm.js +256 -0
  254. package/dist/src/multiagent/swarm.js.map +1 -0
  255. package/dist/src/plugins/__tests__/plugin.test.d.ts +2 -0
  256. package/dist/src/plugins/__tests__/plugin.test.d.ts.map +1 -0
  257. package/dist/src/plugins/__tests__/plugin.test.js +114 -0
  258. package/dist/src/plugins/__tests__/plugin.test.js.map +1 -0
  259. package/dist/src/plugins/__tests__/registry.test.d.ts +2 -0
  260. package/dist/src/plugins/__tests__/registry.test.d.ts.map +1 -0
  261. package/dist/src/plugins/__tests__/registry.test.js +147 -0
  262. package/dist/src/plugins/__tests__/registry.test.js.map +1 -0
  263. package/dist/src/plugins/index.d.ts +30 -0
  264. package/dist/src/plugins/index.d.ts.map +1 -0
  265. package/dist/src/plugins/index.js +30 -0
  266. package/dist/src/plugins/index.js.map +1 -0
  267. package/dist/src/plugins/plugin.d.ts +74 -0
  268. package/dist/src/plugins/plugin.d.ts.map +1 -0
  269. package/dist/src/plugins/plugin.js +8 -0
  270. package/dist/src/plugins/plugin.js.map +1 -0
  271. package/dist/src/plugins/registry.d.ts +25 -0
  272. package/dist/src/plugins/registry.d.ts.map +1 -0
  273. package/dist/src/plugins/registry.js +41 -0
  274. package/dist/src/plugins/registry.js.map +1 -0
  275. package/dist/src/registry/__tests__/tool-registry.test.d.ts +2 -0
  276. package/dist/src/registry/__tests__/tool-registry.test.d.ts.map +1 -0
  277. package/dist/src/registry/__tests__/tool-registry.test.js +124 -0
  278. package/dist/src/registry/__tests__/tool-registry.test.js.map +1 -0
  279. package/dist/src/registry/tool-registry.d.ts +32 -20
  280. package/dist/src/registry/tool-registry.d.ts.map +1 -1
  281. package/dist/src/registry/tool-registry.js +60 -158
  282. package/dist/src/registry/tool-registry.js.map +1 -1
  283. package/dist/src/session/__tests__/file-storage.test.node.js +75 -15
  284. package/dist/src/session/__tests__/file-storage.test.node.js.map +1 -1
  285. package/dist/src/session/__tests__/s3-storage.test.d.ts +2 -0
  286. package/dist/src/session/__tests__/s3-storage.test.d.ts.map +1 -0
  287. package/dist/src/session/__tests__/{s3-storage.test.node.js → s3-storage.test.js} +161 -75
  288. package/dist/src/session/__tests__/s3-storage.test.js.map +1 -0
  289. package/dist/src/session/__tests__/session-manager.test.d.ts +2 -0
  290. package/dist/src/session/__tests__/session-manager.test.d.ts.map +1 -0
  291. package/dist/src/session/__tests__/session-manager.test.js +443 -0
  292. package/dist/src/session/__tests__/session-manager.test.js.map +1 -0
  293. package/dist/src/session/__tests__/validation.test.js +28 -1
  294. package/dist/src/session/__tests__/validation.test.js.map +1 -1
  295. package/dist/src/session/file-storage.d.ts +53 -27
  296. package/dist/src/session/file-storage.d.ts.map +1 -1
  297. package/dist/src/session/file-storage.js +103 -52
  298. package/dist/src/session/file-storage.js.map +1 -1
  299. package/dist/src/session/index.d.ts +6 -14
  300. package/dist/src/session/index.d.ts.map +1 -1
  301. package/dist/src/session/index.js +4 -13
  302. package/dist/src/session/index.js.map +1 -1
  303. package/dist/src/session/s3-storage.d.ts +49 -20
  304. package/dist/src/session/s3-storage.d.ts.map +1 -1
  305. package/dist/src/session/s3-storage.js +120 -35
  306. package/dist/src/session/s3-storage.js.map +1 -1
  307. package/dist/src/session/session-manager.d.ts +87 -0
  308. package/dist/src/session/session-manager.d.ts.map +1 -0
  309. package/dist/src/session/session-manager.js +128 -0
  310. package/dist/src/session/session-manager.js.map +1 -0
  311. package/dist/src/session/storage.d.ts +20 -12
  312. package/dist/src/session/storage.d.ts.map +1 -1
  313. package/dist/src/session/types.d.ts +8 -20
  314. package/dist/src/session/types.d.ts.map +1 -1
  315. package/dist/src/session/validation.d.ts +7 -0
  316. package/dist/src/session/validation.d.ts.map +1 -1
  317. package/dist/src/session/validation.js +12 -0
  318. package/dist/src/session/validation.js.map +1 -1
  319. package/dist/src/{app-state.d.ts → state-store.d.ts} +11 -11
  320. package/dist/src/state-store.d.ts.map +1 -0
  321. package/dist/src/{app-state.js → state-store.js} +8 -7
  322. package/dist/src/state-store.js.map +1 -0
  323. package/dist/src/structured-output/__tests__/context.test.js +13 -13
  324. package/dist/src/structured-output/__tests__/context.test.js.map +1 -1
  325. package/dist/src/structured-output/context.js +1 -1
  326. package/dist/src/structured-output/context.js.map +1 -1
  327. package/dist/src/telemetry/__tests__/config.test.d.ts +2 -0
  328. package/dist/src/telemetry/__tests__/config.test.d.ts.map +1 -0
  329. package/dist/src/telemetry/__tests__/config.test.js +64 -0
  330. package/dist/src/telemetry/__tests__/config.test.js.map +1 -0
  331. package/dist/src/telemetry/__tests__/config.test.node.js +66 -36
  332. package/dist/src/telemetry/__tests__/config.test.node.js.map +1 -1
  333. package/dist/src/telemetry/__tests__/meter.test.d.ts +2 -0
  334. package/dist/src/telemetry/__tests__/meter.test.d.ts.map +1 -0
  335. package/dist/src/telemetry/__tests__/meter.test.js +624 -0
  336. package/dist/src/telemetry/__tests__/meter.test.js.map +1 -0
  337. package/dist/src/telemetry/__tests__/tracer.test.node.js +123 -2
  338. package/dist/src/telemetry/__tests__/tracer.test.node.js.map +1 -1
  339. package/dist/src/telemetry/config.d.ts +104 -23
  340. package/dist/src/telemetry/config.d.ts.map +1 -1
  341. package/dist/src/telemetry/config.js +152 -43
  342. package/dist/src/telemetry/config.js.map +1 -1
  343. package/dist/src/telemetry/index.d.ts +10 -7
  344. package/dist/src/telemetry/index.d.ts.map +1 -1
  345. package/dist/src/telemetry/index.js +9 -6
  346. package/dist/src/telemetry/index.js.map +1 -1
  347. package/dist/src/telemetry/meter.d.ts +296 -0
  348. package/dist/src/telemetry/meter.d.ts.map +1 -0
  349. package/dist/src/telemetry/meter.js +365 -0
  350. package/dist/src/telemetry/meter.js.map +1 -0
  351. package/dist/src/telemetry/tracer.d.ts +27 -0
  352. package/dist/src/telemetry/tracer.d.ts.map +1 -1
  353. package/dist/src/telemetry/tracer.js +79 -4
  354. package/dist/src/telemetry/tracer.js.map +1 -1
  355. package/dist/src/telemetry/types.d.ts +2 -0
  356. package/dist/src/telemetry/types.d.ts.map +1 -1
  357. package/dist/src/telemetry/utils.d.ts +10 -0
  358. package/dist/src/telemetry/utils.d.ts.map +1 -0
  359. package/dist/src/telemetry/utils.js +13 -0
  360. package/dist/src/telemetry/utils.js.map +1 -0
  361. package/dist/src/tools/__tests__/tool-factory.test.d.ts +2 -0
  362. package/dist/src/tools/__tests__/tool-factory.test.d.ts.map +1 -0
  363. package/dist/src/tools/__tests__/tool-factory.test.js +98 -0
  364. package/dist/src/tools/__tests__/tool-factory.test.js.map +1 -0
  365. package/dist/src/tools/__tests__/tool.test.js +22 -1
  366. package/dist/src/tools/__tests__/tool.test.js.map +1 -1
  367. package/dist/src/tools/__tests__/zod-tool.test-d.js +1 -1
  368. package/dist/src/tools/__tests__/zod-tool.test-d.js.map +1 -1
  369. package/dist/src/tools/__tests__/zod-tool.test.js +3 -4
  370. package/dist/src/tools/__tests__/zod-tool.test.js.map +1 -1
  371. package/dist/src/tools/function-tool.d.ts +26 -3
  372. package/dist/src/tools/function-tool.d.ts.map +1 -1
  373. package/dist/src/tools/function-tool.js +88 -3
  374. package/dist/src/tools/function-tool.js.map +1 -1
  375. package/dist/src/tools/tool-factory.d.ts +22 -0
  376. package/dist/src/tools/tool-factory.d.ts.map +1 -0
  377. package/dist/src/tools/tool-factory.js +55 -0
  378. package/dist/src/tools/tool-factory.js.map +1 -0
  379. package/dist/src/tools/tool.d.ts +2 -2
  380. package/dist/src/tools/tool.d.ts.map +1 -1
  381. package/dist/src/tools/zod-tool.d.ts +55 -52
  382. package/dist/src/tools/zod-tool.d.ts.map +1 -1
  383. package/dist/src/tools/zod-tool.js +7 -61
  384. package/dist/src/tools/zod-tool.js.map +1 -1
  385. package/dist/src/tsconfig.tsbuildinfo +1 -1
  386. package/dist/src/types/__tests__/agent.test.js +11 -0
  387. package/dist/src/types/__tests__/agent.test.js.map +1 -1
  388. package/dist/src/types/__tests__/citations.test.d.ts +2 -0
  389. package/dist/src/types/__tests__/citations.test.d.ts.map +1 -0
  390. package/dist/src/types/__tests__/citations.test.js +104 -0
  391. package/dist/src/types/__tests__/citations.test.js.map +1 -0
  392. package/dist/src/types/__tests__/media.test.js +22 -16
  393. package/dist/src/types/__tests__/media.test.js.map +1 -1
  394. package/dist/src/types/__tests__/messages.test.js +26 -0
  395. package/dist/src/types/__tests__/messages.test.js.map +1 -1
  396. package/dist/src/types/agent.d.ts +82 -7
  397. package/dist/src/types/agent.d.ts.map +1 -1
  398. package/dist/src/types/agent.js +9 -0
  399. package/dist/src/types/agent.js.map +1 -1
  400. package/dist/src/types/citations.d.ts +180 -0
  401. package/dist/src/types/citations.d.ts.map +1 -0
  402. package/dist/src/types/citations.js +45 -0
  403. package/dist/src/types/citations.js.map +1 -0
  404. package/dist/src/types/media.d.ts +27 -30
  405. package/dist/src/types/media.d.ts.map +1 -1
  406. package/dist/src/types/media.js +15 -56
  407. package/dist/src/types/media.js.map +1 -1
  408. package/dist/src/types/messages.d.ts +23 -5
  409. package/dist/src/types/messages.d.ts.map +1 -1
  410. package/dist/src/types/messages.js +26 -26
  411. package/dist/src/types/messages.js.map +1 -1
  412. package/dist/src/types/serializable.d.ts +34 -4
  413. package/dist/src/types/serializable.d.ts.map +1 -1
  414. package/dist/src/types/serializable.js +31 -2
  415. package/dist/src/types/serializable.js.map +1 -1
  416. package/dist/src/vended-tools/bash/__tests__/bash.test.node.js +5 -4
  417. package/dist/src/vended-tools/bash/__tests__/bash.test.node.js.map +1 -1
  418. package/dist/src/vended-tools/bash/bash.d.ts.map +1 -1
  419. package/dist/src/vended-tools/bash/bash.js +1 -2
  420. package/dist/src/vended-tools/bash/bash.js.map +1 -1
  421. package/dist/src/vended-tools/file-editor/__tests__/file-editor.test.node.d.ts.map +1 -0
  422. package/dist/src/vended-tools/{file_editor → file-editor}/__tests__/file-editor.test.node.js +11 -4
  423. package/dist/src/vended-tools/file-editor/__tests__/file-editor.test.node.js.map +1 -0
  424. package/dist/src/vended-tools/{file_editor → file-editor}/file-editor.d.ts +1 -1
  425. package/dist/src/vended-tools/{file_editor → file-editor}/file-editor.d.ts.map +1 -1
  426. package/dist/src/vended-tools/{file_editor → file-editor}/file-editor.js +3 -3
  427. package/dist/src/vended-tools/{file_editor → file-editor}/file-editor.js.map +1 -1
  428. package/dist/src/vended-tools/{file_editor → file-editor}/index.d.ts.map +1 -1
  429. package/dist/src/vended-tools/file-editor/index.js.map +1 -0
  430. package/dist/src/vended-tools/{file_editor → file-editor}/types.d.ts.map +1 -1
  431. package/dist/src/vended-tools/file-editor/types.js.map +1 -0
  432. package/dist/src/vended-tools/http-request/__tests__/http-request.test.d.ts.map +1 -0
  433. package/dist/src/vended-tools/{http_request → http-request}/__tests__/http-request.test.js.map +1 -1
  434. package/dist/src/vended-tools/http-request/http-request.d.ts.map +1 -0
  435. package/dist/src/vended-tools/{http_request → http-request}/http-request.js +1 -2
  436. package/dist/src/vended-tools/http-request/http-request.js.map +1 -0
  437. package/dist/src/vended-tools/{http_request → http-request}/index.d.ts.map +1 -1
  438. package/dist/src/vended-tools/http-request/index.js.map +1 -0
  439. package/dist/src/vended-tools/{http_request → http-request}/types.d.ts.map +1 -1
  440. package/dist/src/vended-tools/http-request/types.js.map +1 -0
  441. package/dist/src/vended-tools/notebook/__tests__/notebook.test.js +5 -4
  442. package/dist/src/vended-tools/notebook/__tests__/notebook.test.js.map +1 -1
  443. package/dist/src/vended-tools/notebook/notebook.d.ts +1 -1
  444. package/dist/src/vended-tools/notebook/notebook.js +2 -2
  445. package/dist/src/vended-tools/notebook/notebook.js.map +1 -1
  446. package/package.json +66 -12
  447. package/dist/src/__fixtures__/mock-hook-provider.d.ts +0 -10
  448. package/dist/src/__fixtures__/mock-hook-provider.d.ts.map +0 -1
  449. package/dist/src/__fixtures__/mock-hook-provider.js.map +0 -1
  450. package/dist/src/__tests__/app-state.test.d.ts +0 -2
  451. package/dist/src/__tests__/app-state.test.d.ts.map +0 -1
  452. package/dist/src/__tests__/app-state.test.js.map +0 -1
  453. package/dist/src/app-state.d.ts.map +0 -1
  454. package/dist/src/app-state.js.map +0 -1
  455. package/dist/src/multiagent/base.d.ts +0 -25
  456. package/dist/src/multiagent/base.d.ts.map +0 -1
  457. package/dist/src/multiagent/base.js +0 -2
  458. package/dist/src/multiagent/base.js.map +0 -1
  459. package/dist/src/registry/registry.d.ts +0 -117
  460. package/dist/src/registry/registry.d.ts.map +0 -1
  461. package/dist/src/registry/registry.js +0 -298
  462. package/dist/src/registry/registry.js.map +0 -1
  463. package/dist/src/session/__tests__/s3-storage.test.node.d.ts +0 -2
  464. package/dist/src/session/__tests__/s3-storage.test.node.d.ts.map +0 -1
  465. package/dist/src/session/__tests__/s3-storage.test.node.js.map +0 -1
  466. package/dist/src/vended-tools/file_editor/__tests__/file-editor.test.node.d.ts.map +0 -1
  467. package/dist/src/vended-tools/file_editor/__tests__/file-editor.test.node.js.map +0 -1
  468. package/dist/src/vended-tools/file_editor/index.js.map +0 -1
  469. package/dist/src/vended-tools/file_editor/types.js.map +0 -1
  470. package/dist/src/vended-tools/http_request/__tests__/http-request.test.d.ts.map +0 -1
  471. package/dist/src/vended-tools/http_request/http-request.d.ts.map +0 -1
  472. package/dist/src/vended-tools/http_request/http-request.js.map +0 -1
  473. package/dist/src/vended-tools/http_request/index.js.map +0 -1
  474. package/dist/src/vended-tools/http_request/types.js.map +0 -1
  475. /package/dist/src/vended-tools/{file_editor → file-editor}/__tests__/file-editor.test.node.d.ts +0 -0
  476. /package/dist/src/vended-tools/{file_editor → file-editor}/index.d.ts +0 -0
  477. /package/dist/src/vended-tools/{file_editor → file-editor}/index.js +0 -0
  478. /package/dist/src/vended-tools/{file_editor → file-editor}/types.d.ts +0 -0
  479. /package/dist/src/vended-tools/{file_editor → file-editor}/types.js +0 -0
  480. /package/dist/src/vended-tools/{http_request → http-request}/__tests__/http-request.test.d.ts +0 -0
  481. /package/dist/src/vended-tools/{http_request → http-request}/__tests__/http-request.test.js +0 -0
  482. /package/dist/src/vended-tools/{http_request → http-request}/http-request.d.ts +0 -0
  483. /package/dist/src/vended-tools/{http_request → http-request}/index.d.ts +0 -0
  484. /package/dist/src/vended-tools/{http_request → http-request}/index.js +0 -0
  485. /package/dist/src/vended-tools/{http_request → http-request}/types.d.ts +0 -0
  486. /package/dist/src/vended-tools/{http_request → http-request}/types.js +0 -0
@@ -1,19 +1,20 @@
1
1
  import { describe, expect, it } from 'vitest';
2
- import { AppState } from '../app-state.js';
3
- describe('AppState', () => {
2
+ import { StateStore } from '../state-store.js';
3
+ import { isStateSerializable, loadStateFromJSONSymbol, loadStateSerializable, serializeStateSerializable, stateToJSONSymbol, } from '../types/serializable.js';
4
+ describe('StateStore', () => {
4
5
  describe('constructor', () => {
5
6
  it('creates empty state when no initial state provided', () => {
6
- const state = new AppState();
7
+ const state = new StateStore();
7
8
  expect(state.keys()).toEqual([]);
8
9
  });
9
10
  it('creates state with initial values', () => {
10
- const state = new AppState({ key1: 'value1', key2: 42 });
11
+ const state = new StateStore({ key1: 'value1', key2: 42 });
11
12
  expect(state.get('key1')).toBe('value1');
12
13
  expect(state.get('key2')).toBe(42);
13
14
  });
14
15
  it('stores deep copy of initial state', () => {
15
16
  const initial = { nested: { value: 'test' } };
16
- const state = new AppState(initial);
17
+ const state = new StateStore(initial);
17
18
  // Mutate original
18
19
  initial.nested.value = 'changed';
19
20
  // State should not be affected
@@ -21,42 +22,42 @@ describe('AppState', () => {
21
22
  });
22
23
  it('throws error for function in initial state', () => {
23
24
  const invalidState = { func: () => 'test', value: 'keep' };
24
- expect(() => new AppState(invalidState)).toThrow('initialState.func contains a function which cannot be serialized');
25
+ expect(() => new StateStore(invalidState)).toThrow('initialState.func contains a function which cannot be serialized');
25
26
  });
26
27
  it('throws error for symbol in initial state', () => {
27
28
  const sym = Symbol('test');
28
29
  const invalidState = { sym, value: 'keep' };
29
- expect(() => new AppState(invalidState)).toThrow('initialState.sym contains a symbol which cannot be serialized');
30
+ expect(() => new StateStore(invalidState)).toThrow('initialState.sym contains a symbol which cannot be serialized');
30
31
  });
31
32
  it('throws error for undefined in initial state', () => {
32
33
  const invalidState = { undef: undefined, value: 'keep' };
33
- expect(() => new AppState(invalidState)).toThrow('initialState.undef is undefined which cannot be serialized');
34
+ expect(() => new StateStore(invalidState)).toThrow('initialState.undef is undefined which cannot be serialized');
34
35
  });
35
36
  it('throws error for nested function in initial state', () => {
36
37
  const invalidState = { nested: { func: () => 'test' } };
37
- expect(() => new AppState(invalidState)).toThrow('initialState.nested.func contains a function which cannot be serialized');
38
+ expect(() => new StateStore(invalidState)).toThrow('initialState.nested.func contains a function which cannot be serialized');
38
39
  });
39
40
  it('throws error for function in array in initial state', () => {
40
41
  const invalidState = { arr: [1, () => 'test', 3] };
41
- expect(() => new AppState(invalidState)).toThrow('initialState.arr[1] contains a function which cannot be serialized');
42
+ expect(() => new StateStore(invalidState)).toThrow('initialState.arr[1] contains a function which cannot be serialized');
42
43
  });
43
44
  });
44
45
  describe('get', () => {
45
46
  it('throws error when key is null or undefined', () => {
46
- const state = new AppState();
47
+ const state = new StateStore();
47
48
  expect(() => state.get(null)).toThrow('key is required');
48
49
  expect(() => state.get(undefined)).toThrow('key is required');
49
50
  });
50
51
  it('returns undefined when key does not exist', () => {
51
- const state = new AppState();
52
+ const state = new StateStore();
52
53
  expect(state.get('nonexistent')).toBeUndefined();
53
54
  });
54
55
  it('returns value when key exists', () => {
55
- const state = new AppState({ key1: 'value1' });
56
+ const state = new StateStore({ key1: 'value1' });
56
57
  expect(state.get('key1')).toBe('value1');
57
58
  });
58
59
  it('returns deep copy that cannot mutate stored state', () => {
59
- const state = new AppState({ nested: { value: 'test' } });
60
+ const state = new StateStore({ nested: { value: 'test' } });
60
61
  const retrieved = state.get('nested');
61
62
  // Mutate retrieved value
62
63
  retrieved.value = 'changed';
@@ -64,7 +65,7 @@ describe('AppState', () => {
64
65
  expect(state.get('nested')).toEqual({ value: 'test' });
65
66
  });
66
67
  it('infers correct type with generic state interface', () => {
67
- const state = new AppState({ user: { name: 'John', age: 30 }, count: 5, items: ['a', 'b'] });
68
+ const state = new StateStore({ user: { name: 'John', age: 30 }, count: 5, items: ['a', 'b'] });
68
69
  // Type inference tests
69
70
  const user = state.get('user');
70
71
  const count = state.get('count');
@@ -74,11 +75,11 @@ describe('AppState', () => {
74
75
  expect(items).toEqual(['a', 'b']);
75
76
  });
76
77
  it('returns undefined for non-existent key with typed interface', () => {
77
- const state = new AppState({ existing: 'value' });
78
+ const state = new StateStore({ existing: 'value' });
78
79
  const result = state.get('existing');
79
80
  expect(result).toBe('value');
80
81
  // Non-existent key
81
- const state2 = new AppState();
82
+ const state2 = new StateStore();
82
83
  const missing = state2.get('existing');
83
84
  expect(missing).toBeUndefined();
84
85
  // @ts-expect-error properties not on the TestsState are an error
@@ -87,42 +88,42 @@ describe('AppState', () => {
87
88
  });
88
89
  describe('set', () => {
89
90
  it('sets string value successfully', () => {
90
- const state = new AppState();
91
+ const state = new StateStore();
91
92
  state.set('key1', 'value1');
92
93
  expect(state.get('key1')).toBe('value1');
93
94
  });
94
95
  it('sets number value successfully', () => {
95
- const state = new AppState();
96
+ const state = new StateStore();
96
97
  state.set('key1', 42);
97
98
  expect(state.get('key1')).toBe(42);
98
99
  });
99
100
  it('sets boolean value successfully', () => {
100
- const state = new AppState();
101
+ const state = new StateStore();
101
102
  state.set('key1', true);
102
103
  expect(state.get('key1')).toBe(true);
103
104
  });
104
105
  it('sets null value successfully', () => {
105
- const state = new AppState();
106
+ const state = new StateStore();
106
107
  state.set('key1', null);
107
108
  expect(state.get('key1')).toBeNull();
108
109
  });
109
110
  it('sets object value successfully', () => {
110
- const state = new AppState();
111
+ const state = new StateStore();
111
112
  state.set('key1', { nested: 'value' });
112
113
  expect(state.get('key1')).toEqual({ nested: 'value' });
113
114
  });
114
115
  it('sets array value successfully', () => {
115
- const state = new AppState();
116
+ const state = new StateStore();
116
117
  state.set('key1', [1, 2, 3]);
117
118
  expect(state.get('key1')).toEqual([1, 2, 3]);
118
119
  });
119
120
  it('overwrites existing value', () => {
120
- const state = new AppState({ key1: 'old' });
121
+ const state = new StateStore({ key1: 'old' });
121
122
  state.set('key1', 'new');
122
123
  expect(state.get('key1')).toBe('new');
123
124
  });
124
125
  it('stores deep copy that cannot mutate stored state', () => {
125
- const state = new AppState();
126
+ const state = new StateStore();
126
127
  const value = { nested: { value: 'test' } };
127
128
  state.set('key1', value);
128
129
  // Mutate original
@@ -131,35 +132,35 @@ describe('AppState', () => {
131
132
  expect(state.get('key1')).toEqual({ nested: { value: 'test' } });
132
133
  });
133
134
  it('throws error for function in value', () => {
134
- const state = new AppState({ existing: 'value' });
135
+ const state = new StateStore({ existing: 'value' });
135
136
  const obj = { func: () => 'test', value: 'keep' };
136
137
  expect(() => state.set('key1', obj)).toThrow('value for key "key1".func contains a function which cannot be serialized');
137
138
  });
138
139
  it('throws error for symbol in value', () => {
139
- const state = new AppState();
140
+ const state = new StateStore();
140
141
  const sym = Symbol('test');
141
142
  expect(() => state.set('key1', { sym })).toThrow('value for key "key1".sym contains a symbol which cannot be serialized');
142
143
  });
143
144
  it('throws error for nested function in value', () => {
144
- const state = new AppState();
145
+ const state = new StateStore();
145
146
  const obj = { nested: { func: () => 'test' } };
146
147
  expect(() => state.set('key1', obj)).toThrow('value for key "key1".nested.func contains a function which cannot be serialized');
147
148
  });
148
149
  it('throws error for function in array', () => {
149
- const state = new AppState();
150
+ const state = new StateStore();
150
151
  const arr = [1, () => 'test', 3];
151
152
  expect(() => state.set('key1', arr)).toThrow('value for key "key1"[1] contains a function which cannot be serialized');
152
153
  });
153
154
  it('throws error for top-level symbol values', () => {
154
- const state = new AppState();
155
+ const state = new StateStore();
155
156
  expect(() => state.set('key1', Symbol('test'))).toThrow('value for key "key1" contains a symbol which cannot be serialized');
156
157
  });
157
158
  it('throws error for top-level undefined values', () => {
158
- const state = new AppState();
159
+ const state = new StateStore();
159
160
  expect(() => state.set('key1', undefined)).toThrow('value for key "key1" is undefined which cannot be serialized');
160
161
  });
161
162
  it('accepts typed value with generic state interface', () => {
162
- const state = new AppState();
163
+ const state = new StateStore();
163
164
  state.set('user', { name: 'Alice', age: 25 });
164
165
  state.set('count', 10);
165
166
  expect(state.get('user')).toEqual({ name: 'Alice', age: 25 });
@@ -170,17 +171,17 @@ describe('AppState', () => {
170
171
  });
171
172
  describe('delete', () => {
172
173
  it('removes existing key', () => {
173
- const state = new AppState({ key1: 'value1', key2: 'value2' });
174
+ const state = new StateStore({ key1: 'value1', key2: 'value2' });
174
175
  state.delete('key1');
175
176
  expect(state.get('key1')).toBeUndefined();
176
177
  expect(state.get('key2')).toBe('value2');
177
178
  });
178
179
  it('does not throw error for non-existent key', () => {
179
- const state = new AppState();
180
+ const state = new StateStore();
180
181
  expect(() => state.delete('nonexistent')).not.toThrow();
181
182
  });
182
183
  it('supports typed usage with generic state interface', () => {
183
- const state = new AppState({ user: { name: 'Alice' }, count: 5 });
184
+ const state = new StateStore({ user: { name: 'Alice' }, count: 5 });
184
185
  // Typed delete
185
186
  state.delete('user');
186
187
  expect(state.get('user')).toBeUndefined();
@@ -189,62 +190,96 @@ describe('AppState', () => {
189
190
  });
190
191
  describe('clear', () => {
191
192
  it('removes all values', () => {
192
- const state = new AppState({ key1: 'value1', key2: 'value2' });
193
+ const state = new StateStore({ key1: 'value1', key2: 'value2' });
193
194
  state.clear();
194
195
  expect(state.keys()).toEqual([]);
195
196
  expect(state.get('key1')).toBeUndefined();
196
197
  expect(state.get('key2')).toBeUndefined();
197
198
  });
198
199
  it('works on empty state', () => {
199
- const state = new AppState();
200
+ const state = new StateStore();
200
201
  expect(() => state.clear()).not.toThrow();
201
202
  expect(state.keys()).toEqual([]);
202
203
  });
203
204
  });
204
205
  describe('getAll', () => {
205
206
  it('returns object with all state', () => {
206
- const state = new AppState({ key1: 'value1', key2: 42 });
207
+ const state = new StateStore({ key1: 'value1', key2: 42 });
207
208
  expect(state.getAll()).toEqual({ key1: 'value1', key2: 42 });
208
209
  });
209
210
  it('returns empty object for empty state', () => {
210
- const state = new AppState();
211
+ const state = new StateStore();
211
212
  expect(state.getAll()).toEqual({});
212
213
  });
213
214
  });
214
215
  describe('keys', () => {
215
216
  it('returns array of all keys', () => {
216
- const state = new AppState({ key1: 'value1', key2: 'value2' });
217
+ const state = new StateStore({ key1: 'value1', key2: 'value2' });
217
218
  expect(state.keys().sort()).toEqual(['key1', 'key2']);
218
219
  });
219
220
  it('returns empty array for empty state', () => {
220
- const state = new AppState();
221
+ const state = new StateStore();
221
222
  expect(state.keys()).toEqual([]);
222
223
  });
223
224
  it('returns new array each time', () => {
224
- const state = new AppState({ key1: 'value1' });
225
+ const state = new StateStore({ key1: 'value1' });
225
226
  const keys1 = state.keys();
226
227
  const keys2 = state.keys();
227
228
  expect(keys1).not.toBe(keys2);
228
229
  });
229
230
  });
230
- describe('toJSON', () => {
231
+ describe('stateToJSONSymbol (via symbol)', () => {
231
232
  it('returns deep copy of state', () => {
232
- const state = new AppState({ key1: 'value1', nested: { deep: true } });
233
- const json = state.toJSON();
233
+ const state = new StateStore({ key1: 'value1', nested: { deep: true } });
234
+ const json = state[stateToJSONSymbol]();
234
235
  expect(json).toEqual({ key1: 'value1', nested: { deep: true } });
235
236
  });
237
+ it('can be accessed via serializeStateSerializable helper', () => {
238
+ const state = new StateStore({ key1: 'value1' });
239
+ const json = serializeStateSerializable(state);
240
+ expect(json).toEqual({ key1: 'value1' });
241
+ });
236
242
  });
237
- describe('loadStateFromJson', () => {
243
+ describe('loadStateFromJSONSymbol (via symbol)', () => {
238
244
  it('replaces state with json data', () => {
239
- const state = new AppState({ old: 'data' });
240
- state.loadStateFromJson({ new: 'data', count: 42 });
245
+ const state = new StateStore({ old: 'data' });
246
+ state[loadStateFromJSONSymbol]({ new: 'data', count: 42 });
241
247
  expect(state.getAll()).toEqual({ new: 'data', count: 42 });
242
248
  });
243
249
  it('clears state when given non-object', () => {
244
- const state = new AppState({ key: 'value' });
245
- state.loadStateFromJson(null);
250
+ const state = new StateStore({ key: 'value' });
251
+ state[loadStateFromJSONSymbol](null);
246
252
  expect(state.getAll()).toEqual({});
247
253
  });
254
+ it('can be accessed via loadStateSerializable helper', () => {
255
+ const state = new StateStore({ old: 'data' });
256
+ loadStateSerializable(state, { new: 'data' });
257
+ expect(state.getAll()).toEqual({ new: 'data' });
258
+ });
259
+ });
260
+ describe('isStateSerializable', () => {
261
+ it('returns true for StateStore instances', () => {
262
+ const state = new StateStore();
263
+ expect(isStateSerializable(state)).toBe(true);
264
+ });
265
+ it('returns false for plain objects', () => {
266
+ const obj = { toJSON: () => ({}), loadStateFromJson: () => { } };
267
+ expect(isStateSerializable(obj)).toBe(false);
268
+ });
269
+ it('returns false for null', () => {
270
+ expect(isStateSerializable(null)).toBe(false);
271
+ });
272
+ it('returns false for objects with only one symbol method', () => {
273
+ const partial = { [stateToJSONSymbol]: () => ({}) };
274
+ expect(isStateSerializable(partial)).toBe(false);
275
+ });
276
+ it('returns true for objects implementing both symbol methods', () => {
277
+ const custom = {
278
+ [stateToJSONSymbol]: () => ({ custom: true }),
279
+ [loadStateFromJSONSymbol]: () => { },
280
+ };
281
+ expect(isStateSerializable(custom)).toBe(true);
282
+ });
248
283
  });
249
284
  });
250
- //# sourceMappingURL=app-state.test.js.map
285
+ //# sourceMappingURL=state-store.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state-store.test.js","sourceRoot":"","sources":["../../../src/__tests__/state-store.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=a2a-agent.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a2a-agent.test.d.ts","sourceRoot":"","sources":["../../../../src/a2a/__tests__/a2a-agent.test.ts"],"names":[],"mappings":""}