@artinet/sdk 0.5.18 → 0.6.0-preview.2

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 (434) hide show
  1. package/README.md +36 -617
  2. package/dist/browser/browser.d.ts +1 -1
  3. package/dist/browser/browser.js +1 -1
  4. package/dist/browser/client/a2a-client.d.ts +19 -18
  5. package/dist/browser/client/a2a-client.js +20 -8
  6. package/dist/browser/config/index.d.ts +158 -0
  7. package/dist/browser/config/index.js +155 -0
  8. package/dist/browser/config/observability.d.ts +119 -0
  9. package/dist/browser/config/observability.js +35 -0
  10. package/dist/browser/create/agentcard-builder.d.ts +47 -0
  11. package/dist/browser/create/agentcard-builder.js +65 -0
  12. package/dist/browser/create/base.d.ts +4 -0
  13. package/dist/browser/create/describe.d.ts +8 -0
  14. package/dist/browser/create/describe.js +8 -0
  15. package/dist/browser/create/message-builder.d.ts +78 -0
  16. package/dist/browser/create/message-builder.js +108 -0
  17. package/dist/browser/create/part-builder.d.ts +60 -0
  18. package/dist/browser/create/part-builder.js +81 -0
  19. package/dist/browser/create/task-builder.d.ts +251 -0
  20. package/dist/browser/create/task-builder.js +379 -0
  21. package/dist/browser/transport/rpc/parser.d.ts +2 -2
  22. package/dist/browser/transport/rpc/parser.js +7 -6
  23. package/dist/browser/transport/rpc/rpc-client.d.ts +5 -5
  24. package/dist/browser/transport/rpc/rpc-client.js +6 -6
  25. package/dist/browser/transport/streaming/event-stream.d.ts +3 -3
  26. package/dist/browser/transport/streaming/event-stream.js +11 -10
  27. package/dist/browser/types/a2a/a2a.d.ts +382 -0
  28. package/dist/browser/types/a2a/a2a.js +14 -0
  29. package/dist/browser/types/a2a/index.d.ts +5 -0
  30. package/dist/browser/types/a2a/index.js +1 -0
  31. package/dist/browser/types/{interfaces/client.d.ts → client.d.ts} +25 -27
  32. package/dist/browser/types/core/core.d.ts +31 -0
  33. package/dist/browser/types/core/index.d.ts +1 -0
  34. package/dist/browser/types/core/index.js +1 -0
  35. package/dist/browser/types/index.d.ts +6 -3
  36. package/dist/browser/types/index.js +6 -3
  37. package/dist/browser/types/mcp/index.d.ts +1 -0
  38. package/dist/browser/types/mcp/index.js +1 -0
  39. package/dist/{types/interfaces/services/mcp/service.d.ts → browser/types/mcp/mcp.d.ts} +4 -3
  40. package/dist/browser/types/{interfaces/services/a2a/builder.js → mcp/mcp.js} +1 -1
  41. package/dist/browser/types/storage.d.ts +21 -0
  42. package/dist/browser/utils/common/constants.d.ts +2 -7
  43. package/dist/browser/utils/common/constants.js +5 -32
  44. package/dist/browser/utils/common/errors.d.ts +74 -18
  45. package/dist/browser/utils/common/errors.js +81 -28
  46. package/dist/browser/utils/common/utils.d.ts +23 -0
  47. package/dist/browser/utils/common/utils.js +32 -0
  48. package/dist/client/a2a-client.d.ts +19 -18
  49. package/dist/client/a2a-client.js +20 -8
  50. package/dist/config/default.d.ts +50 -0
  51. package/dist/config/default.js +62 -0
  52. package/dist/config/index.d.ts +158 -0
  53. package/dist/config/index.js +155 -0
  54. package/dist/config/observability.d.ts +119 -0
  55. package/dist/config/observability.js +35 -0
  56. package/dist/create/agent-builder.d.ts +77 -0
  57. package/dist/create/agent-builder.js +20 -0
  58. package/dist/create/agentcard-builder.d.ts +47 -0
  59. package/dist/create/agentcard-builder.js +66 -0
  60. package/dist/create/base.d.ts +4 -0
  61. package/dist/create/base.js +1 -0
  62. package/dist/create/create.d.ts +762 -0
  63. package/dist/create/create.js +556 -0
  64. package/dist/create/describe.d.ts +8 -0
  65. package/dist/create/describe.js +8 -0
  66. package/dist/create/index.d.ts +4 -0
  67. package/dist/create/index.js +4 -0
  68. package/dist/create/message-builder.d.ts +78 -0
  69. package/dist/create/message-builder.js +110 -0
  70. package/dist/create/part-builder.d.ts +60 -0
  71. package/dist/create/part-builder.js +84 -0
  72. package/dist/create/status-builder.d.ts +26 -0
  73. package/dist/create/status-builder.js +46 -0
  74. package/dist/create/task-builder.d.ts +251 -0
  75. package/dist/create/task-builder.js +384 -0
  76. package/dist/create/transform.d.ts +16 -0
  77. package/dist/create/transform.js +106 -0
  78. package/dist/extensions/otel.d.ts +98 -0
  79. package/dist/extensions/otel.js +190 -0
  80. package/dist/extensions/pino.d.ts +44 -0
  81. package/dist/extensions/pino.js +107 -0
  82. package/dist/extensions/winston.d.ts +47 -0
  83. package/dist/extensions/winston.js +114 -0
  84. package/dist/index.d.ts +4 -0
  85. package/dist/index.js +4 -0
  86. package/dist/server/express/errors.js +7 -11
  87. package/dist/server/express/middeware.d.ts +2 -2
  88. package/dist/server/express/middeware.js +26 -40
  89. package/dist/server/express/server.d.ts +14 -56
  90. package/dist/server/express/server.js +46 -35
  91. package/dist/services/a2a/execute.d.ts +11 -0
  92. package/dist/services/a2a/execute.js +32 -0
  93. package/dist/services/a2a/factory/context.d.ts +15 -128
  94. package/dist/services/a2a/factory/context.js +30 -136
  95. package/dist/services/a2a/factory/handler.d.ts +6 -0
  96. package/dist/services/a2a/factory/handler.js +14 -0
  97. package/dist/services/a2a/factory/index.d.ts +1 -3
  98. package/dist/services/a2a/factory/index.js +1 -3
  99. package/dist/services/a2a/factory/service.d.ts +20 -7
  100. package/dist/services/a2a/factory/service.js +5 -5
  101. package/dist/services/a2a/factory/state-machine.d.ts +11 -0
  102. package/dist/services/a2a/factory/state-machine.js +88 -0
  103. package/dist/services/a2a/handlers/artifact.d.ts +7 -0
  104. package/dist/services/a2a/handlers/artifact.js +28 -0
  105. package/dist/services/a2a/handlers/cancel-task.d.ts +11 -0
  106. package/dist/services/a2a/handlers/cancel-task.js +35 -0
  107. package/dist/services/a2a/handlers/get-task.d.ts +11 -0
  108. package/dist/services/a2a/handlers/get-task.js +13 -0
  109. package/dist/services/a2a/handlers/resubscribe-task.d.ts +19 -0
  110. package/dist/services/a2a/handlers/resubscribe-task.js +59 -0
  111. package/dist/services/a2a/handlers/send-message.d.ts +11 -0
  112. package/dist/services/a2a/handlers/send-message.js +31 -0
  113. package/dist/services/a2a/handlers/stream-message.d.ts +19 -0
  114. package/dist/services/a2a/handlers/stream-message.js +23 -0
  115. package/dist/services/a2a/handlers/update.d.ts +17 -0
  116. package/dist/services/a2a/handlers/update.js +119 -0
  117. package/dist/services/a2a/helpers/content.d.ts +6 -2
  118. package/dist/services/a2a/helpers/content.js +9 -1
  119. package/dist/services/a2a/helpers/history.d.ts +6 -2
  120. package/dist/services/a2a/helpers/history.js +4 -0
  121. package/dist/services/a2a/helpers/index.d.ts +3 -3
  122. package/dist/services/a2a/helpers/index.js +3 -3
  123. package/dist/services/a2a/helpers/part.d.ts +9 -9
  124. package/dist/services/a2a/helpers/references.d.ts +6 -0
  125. package/dist/services/a2a/helpers/references.js +22 -0
  126. package/dist/services/a2a/index.d.ts +9 -5
  127. package/dist/services/a2a/index.js +8 -5
  128. package/dist/services/a2a/managers.d.ts +23 -0
  129. package/dist/services/a2a/managers.js +101 -0
  130. package/dist/services/a2a/messenger.d.ts +35 -0
  131. package/dist/services/{core/managers/command.js → a2a/messenger.js} +27 -31
  132. package/dist/services/a2a/service.d.ts +45 -372
  133. package/dist/services/a2a/service.js +232 -84
  134. package/dist/services/a2a/state-machine.d.ts +18 -0
  135. package/dist/services/a2a/state-machine.js +78 -0
  136. package/dist/services/a2a/streams.d.ts +22 -0
  137. package/dist/services/a2a/streams.js +98 -0
  138. package/dist/services/core/index.d.ts +1 -2
  139. package/dist/services/core/index.js +1 -2
  140. package/dist/services/core/manager.d.ts +15 -0
  141. package/dist/services/core/manager.js +42 -0
  142. package/dist/services/mcp/service.d.ts +11 -15
  143. package/dist/services/mcp/service.js +16 -15
  144. package/dist/transport/index.d.ts +0 -1
  145. package/dist/transport/index.js +1 -1
  146. package/dist/transport/rpc/parser.d.ts +2 -2
  147. package/dist/transport/rpc/parser.js +7 -6
  148. package/dist/transport/rpc/rpc-client.d.ts +5 -5
  149. package/dist/transport/rpc/rpc-client.js +6 -6
  150. package/dist/transport/streaming/event-stream.d.ts +3 -3
  151. package/dist/transport/streaming/event-stream.js +11 -10
  152. package/dist/transport/trpc/a2a/factory/router.d.ts +479 -871
  153. package/dist/transport/trpc/a2a/factory/router.js +2 -2
  154. package/dist/transport/trpc/a2a/routes/info.d.ts +108 -8
  155. package/dist/transport/trpc/a2a/routes/info.js +6 -2
  156. package/dist/transport/trpc/a2a/routes/message/route.d.ts +113 -162
  157. package/dist/transport/trpc/a2a/routes/message/route.js +7 -13
  158. package/dist/transport/trpc/a2a/routes/tasks/route.d.ts +114 -212
  159. package/dist/transport/trpc/a2a/routes/tasks/route.js +16 -19
  160. package/dist/transport/trpc/a2a/trpc.d.ts +9 -253
  161. package/dist/types/a2a/a2a.d.ts +382 -0
  162. package/dist/types/a2a/a2a.js +14 -0
  163. package/dist/types/a2a/index.d.ts +5 -0
  164. package/dist/types/a2a/index.js +1 -0
  165. package/dist/types/{interfaces/client.d.ts → client.d.ts} +25 -27
  166. package/dist/types/core/core.d.ts +31 -0
  167. package/dist/types/core/core.js +1 -0
  168. package/dist/types/core/index.d.ts +1 -0
  169. package/dist/types/core/index.js +1 -0
  170. package/dist/types/index.d.ts +6 -3
  171. package/dist/types/index.js +6 -3
  172. package/dist/types/mcp/index.d.ts +1 -0
  173. package/dist/types/mcp/index.js +1 -0
  174. package/dist/{browser/types/interfaces/services/mcp/service.d.ts → types/mcp/mcp.d.ts} +4 -3
  175. package/dist/{browser/types/interfaces/services/a2a/context.js → types/mcp/mcp.js} +1 -1
  176. package/dist/types/storage.d.ts +21 -0
  177. package/dist/utils/common/constants.d.ts +2 -7
  178. package/dist/utils/common/constants.js +5 -32
  179. package/dist/utils/common/errors.d.ts +74 -18
  180. package/dist/utils/common/errors.js +81 -28
  181. package/dist/utils/common/parse.d.ts +7 -0
  182. package/dist/utils/common/parse.js +14 -0
  183. package/dist/utils/common/schema-validation.d.ts +2 -2
  184. package/dist/utils/common/schema-validation.js +7 -7
  185. package/dist/utils/common/utils.d.ts +23 -0
  186. package/dist/utils/common/utils.js +32 -0
  187. package/dist/utils/common/zAsyncIterable-v3.d.ts +1 -1
  188. package/dist/utils/common/zAsyncIterable-v3.js +2 -1
  189. package/dist/utils/index.d.ts +2 -3
  190. package/dist/utils/index.js +2 -3
  191. package/dist/utils/storage/file.d.ts +8 -17
  192. package/dist/utils/storage/file.js +44 -73
  193. package/package.json +76 -13
  194. package/dist/browser/services/a2a/helpers/message-builder.d.ts +0 -12
  195. package/dist/browser/services/a2a/helpers/message-builder.js +0 -61
  196. package/dist/browser/types/ext.d.ts +0 -13
  197. package/dist/browser/types/ext.js +0 -10
  198. package/dist/browser/types/interfaces/index.d.ts +0 -3
  199. package/dist/browser/types/interfaces/index.js +0 -3
  200. package/dist/browser/types/interfaces/services/a2a/builder.d.ts +0 -37
  201. package/dist/browser/types/interfaces/services/a2a/context.d.ts +0 -162
  202. package/dist/browser/types/interfaces/services/a2a/engine.d.ts +0 -7
  203. package/dist/browser/types/interfaces/services/a2a/engine.js +0 -5
  204. package/dist/browser/types/interfaces/services/a2a/index.d.ts +0 -5
  205. package/dist/browser/types/interfaces/services/a2a/index.js +0 -5
  206. package/dist/browser/types/interfaces/services/a2a/legacy.d.ts +0 -93
  207. package/dist/browser/types/interfaces/services/a2a/legacy.js +0 -5
  208. package/dist/browser/types/interfaces/services/a2a/service.d.ts +0 -413
  209. package/dist/browser/types/interfaces/services/a2a/service.js +0 -5
  210. package/dist/browser/types/interfaces/services/core/context/command.d.ts +0 -25
  211. package/dist/browser/types/interfaces/services/core/context/command.js +0 -5
  212. package/dist/browser/types/interfaces/services/core/context/context.d.ts +0 -207
  213. package/dist/browser/types/interfaces/services/core/context/context.js +0 -5
  214. package/dist/browser/types/interfaces/services/core/context/index.d.ts +0 -3
  215. package/dist/browser/types/interfaces/services/core/context/index.js +0 -3
  216. package/dist/browser/types/interfaces/services/core/context/types.d.ts +0 -11
  217. package/dist/browser/types/interfaces/services/core/context/types.js +0 -5
  218. package/dist/browser/types/interfaces/services/core/execution/engine.d.ts +0 -106
  219. package/dist/browser/types/interfaces/services/core/execution/engine.js +0 -5
  220. package/dist/browser/types/interfaces/services/core/execution/environment.d.ts +0 -11
  221. package/dist/browser/types/interfaces/services/core/execution/environment.js +0 -5
  222. package/dist/browser/types/interfaces/services/core/execution/execute.d.ts +0 -7
  223. package/dist/browser/types/interfaces/services/core/execution/execute.js +0 -5
  224. package/dist/browser/types/interfaces/services/core/execution/index.d.ts +0 -3
  225. package/dist/browser/types/interfaces/services/core/execution/index.js +0 -3
  226. package/dist/browser/types/interfaces/services/core/index.d.ts +0 -4
  227. package/dist/browser/types/interfaces/services/core/index.js +0 -4
  228. package/dist/browser/types/interfaces/services/core/managers/cancellation.d.ts +0 -9
  229. package/dist/browser/types/interfaces/services/core/managers/cancellation.js +0 -5
  230. package/dist/browser/types/interfaces/services/core/managers/connection.d.ts +0 -9
  231. package/dist/browser/types/interfaces/services/core/managers/connection.js +0 -5
  232. package/dist/browser/types/interfaces/services/core/managers/context.d.ts +0 -17
  233. package/dist/browser/types/interfaces/services/core/managers/context.js +0 -5
  234. package/dist/browser/types/interfaces/services/core/managers/event.d.ts +0 -328
  235. package/dist/browser/types/interfaces/services/core/managers/event.js +0 -5
  236. package/dist/browser/types/interfaces/services/core/managers/index.d.ts +0 -6
  237. package/dist/browser/types/interfaces/services/core/managers/index.js +0 -6
  238. package/dist/browser/types/interfaces/services/core/managers/stream.d.ts +0 -217
  239. package/dist/browser/types/interfaces/services/core/managers/stream.js +0 -5
  240. package/dist/browser/types/interfaces/services/core/managers/task.d.ts +0 -9
  241. package/dist/browser/types/interfaces/services/core/service.d.ts +0 -115
  242. package/dist/browser/types/interfaces/services/core/service.js +0 -5
  243. package/dist/browser/types/interfaces/services/index.d.ts +0 -4
  244. package/dist/browser/types/interfaces/services/index.js +0 -4
  245. package/dist/browser/types/interfaces/services/mcp/index.d.ts +0 -1
  246. package/dist/browser/types/interfaces/services/mcp/index.js +0 -1
  247. package/dist/browser/types/interfaces/services/mcp/service.js +0 -5
  248. package/dist/browser/types/interfaces/storage.d.ts +0 -8
  249. package/dist/browser/types/schemas/a2a/agent.d.ts +0 -2583
  250. package/dist/browser/types/schemas/a2a/agent.js +0 -323
  251. package/dist/browser/types/schemas/a2a/auth.d.ts +0 -908
  252. package/dist/browser/types/schemas/a2a/auth.js +0 -283
  253. package/dist/browser/types/schemas/a2a/error.d.ts +0 -396
  254. package/dist/browser/types/schemas/a2a/error.js +0 -163
  255. package/dist/browser/types/schemas/a2a/index.d.ts +0 -11
  256. package/dist/browser/types/schemas/a2a/index.js +0 -11
  257. package/dist/browser/types/schemas/a2a/kind.d.ts +0 -11
  258. package/dist/browser/types/schemas/a2a/kind.js +0 -20
  259. package/dist/browser/types/schemas/a2a/message.d.ts +0 -10343
  260. package/dist/browser/types/schemas/a2a/message.js +0 -130
  261. package/dist/browser/types/schemas/a2a/notification.d.ts +0 -1517
  262. package/dist/browser/types/schemas/a2a/notification.js +0 -203
  263. package/dist/browser/types/schemas/a2a/parameters.d.ts +0 -956
  264. package/dist/browser/types/schemas/a2a/parameters.js +0 -241
  265. package/dist/browser/types/schemas/a2a/protocol.d.ts +0 -14363
  266. package/dist/browser/types/schemas/a2a/protocol.js +0 -59
  267. package/dist/browser/types/schemas/a2a/rpc.d.ts +0 -182
  268. package/dist/browser/types/schemas/a2a/rpc.js +0 -126
  269. package/dist/browser/types/schemas/a2a/task.d.ts +0 -5886
  270. package/dist/browser/types/schemas/a2a/task.js +0 -134
  271. package/dist/browser/types/schemas/a2a/transport.d.ts +0 -31
  272. package/dist/browser/types/schemas/a2a/transport.js +0 -28
  273. package/dist/browser/types/schemas/index.d.ts +0 -1
  274. package/dist/browser/types/schemas/index.js +0 -1
  275. package/dist/browser/utils/logging/index.d.ts +0 -2
  276. package/dist/browser/utils/logging/index.js +0 -2
  277. package/dist/browser/utils/logging/log.d.ts +0 -33
  278. package/dist/browser/utils/logging/log.js +0 -75
  279. package/dist/browser/utils/logging/logger.d.ts +0 -18
  280. package/dist/browser/utils/logging/logger.js +0 -18
  281. package/dist/services/a2a/factory/builder.d.ts +0 -351
  282. package/dist/services/a2a/factory/builder.js +0 -365
  283. package/dist/services/a2a/factory/event.d.ts +0 -58
  284. package/dist/services/a2a/factory/event.js +0 -177
  285. package/dist/services/a2a/factory/method.d.ts +0 -6
  286. package/dist/services/a2a/factory/method.js +0 -14
  287. package/dist/services/a2a/helpers/agentcard-builder.d.ts +0 -7
  288. package/dist/services/a2a/helpers/agentcard-builder.js +0 -23
  289. package/dist/services/a2a/helpers/message-builder.d.ts +0 -12
  290. package/dist/services/a2a/helpers/message-builder.js +0 -61
  291. package/dist/services/a2a/managers/cancellation.d.ts +0 -11
  292. package/dist/services/a2a/managers/cancellation.js +0 -16
  293. package/dist/services/a2a/managers/connection.d.ts +0 -11
  294. package/dist/services/a2a/managers/connection.js +0 -16
  295. package/dist/services/a2a/managers/context.d.ts +0 -11
  296. package/dist/services/a2a/managers/context.js +0 -16
  297. package/dist/services/a2a/managers/index.d.ts +0 -5
  298. package/dist/services/a2a/managers/index.js +0 -5
  299. package/dist/services/a2a/managers/task.d.ts +0 -11
  300. package/dist/services/a2a/managers/task.js +0 -16
  301. package/dist/services/a2a/methods/cancel-task.d.ts +0 -7
  302. package/dist/services/a2a/methods/cancel-task.js +0 -43
  303. package/dist/services/a2a/methods/get-task.d.ts +0 -112
  304. package/dist/services/a2a/methods/get-task.js +0 -16
  305. package/dist/services/a2a/methods/resubscribe-task.d.ts +0 -7
  306. package/dist/services/a2a/methods/resubscribe-task.js +0 -80
  307. package/dist/services/a2a/methods/send-message.d.ts +0 -7
  308. package/dist/services/a2a/methods/send-message.js +0 -36
  309. package/dist/services/a2a/methods/stream-message.d.ts +0 -8
  310. package/dist/services/a2a/methods/stream-message.js +0 -21
  311. package/dist/services/a2a/state/index.d.ts +0 -3
  312. package/dist/services/a2a/state/index.js +0 -3
  313. package/dist/services/a2a/state/load.d.ts +0 -14
  314. package/dist/services/a2a/state/load.js +0 -71
  315. package/dist/services/a2a/state/process.d.ts +0 -7
  316. package/dist/services/a2a/state/process.js +0 -13
  317. package/dist/services/a2a/state/update/artifact.d.ts +0 -10
  318. package/dist/services/a2a/state/update/artifact.js +0 -39
  319. package/dist/services/a2a/state/update/index.d.ts +0 -2
  320. package/dist/services/a2a/state/update/index.js +0 -2
  321. package/dist/services/a2a/state/update/update.d.ts +0 -23
  322. package/dist/services/a2a/state/update/update.js +0 -123
  323. package/dist/services/core/execution/execute.d.ts +0 -6
  324. package/dist/services/core/execution/execute.js +0 -25
  325. package/dist/services/core/execution/index.d.ts +0 -1
  326. package/dist/services/core/execution/index.js +0 -1
  327. package/dist/services/core/managers/command.d.ts +0 -39
  328. package/dist/services/core/managers/event.d.ts +0 -18
  329. package/dist/services/core/managers/event.js +0 -56
  330. package/dist/services/core/managers/index.d.ts +0 -3
  331. package/dist/services/core/managers/index.js +0 -3
  332. package/dist/services/core/managers/stream.d.ts +0 -20
  333. package/dist/services/core/managers/stream.js +0 -77
  334. package/dist/types/ext.d.ts +0 -13
  335. package/dist/types/ext.js +0 -10
  336. package/dist/types/interfaces/index.d.ts +0 -3
  337. package/dist/types/interfaces/index.js +0 -3
  338. package/dist/types/interfaces/services/a2a/builder.d.ts +0 -37
  339. package/dist/types/interfaces/services/a2a/builder.js +0 -5
  340. package/dist/types/interfaces/services/a2a/context.d.ts +0 -162
  341. package/dist/types/interfaces/services/a2a/context.js +0 -5
  342. package/dist/types/interfaces/services/a2a/engine.d.ts +0 -7
  343. package/dist/types/interfaces/services/a2a/engine.js +0 -5
  344. package/dist/types/interfaces/services/a2a/index.d.ts +0 -5
  345. package/dist/types/interfaces/services/a2a/index.js +0 -5
  346. package/dist/types/interfaces/services/a2a/legacy.d.ts +0 -93
  347. package/dist/types/interfaces/services/a2a/legacy.js +0 -5
  348. package/dist/types/interfaces/services/a2a/service.d.ts +0 -413
  349. package/dist/types/interfaces/services/a2a/service.js +0 -5
  350. package/dist/types/interfaces/services/core/context/command.d.ts +0 -25
  351. package/dist/types/interfaces/services/core/context/command.js +0 -5
  352. package/dist/types/interfaces/services/core/context/context.d.ts +0 -207
  353. package/dist/types/interfaces/services/core/context/context.js +0 -5
  354. package/dist/types/interfaces/services/core/context/index.d.ts +0 -3
  355. package/dist/types/interfaces/services/core/context/index.js +0 -3
  356. package/dist/types/interfaces/services/core/context/types.d.ts +0 -11
  357. package/dist/types/interfaces/services/core/context/types.js +0 -5
  358. package/dist/types/interfaces/services/core/execution/engine.d.ts +0 -106
  359. package/dist/types/interfaces/services/core/execution/engine.js +0 -5
  360. package/dist/types/interfaces/services/core/execution/environment.d.ts +0 -11
  361. package/dist/types/interfaces/services/core/execution/environment.js +0 -5
  362. package/dist/types/interfaces/services/core/execution/execute.d.ts +0 -7
  363. package/dist/types/interfaces/services/core/execution/execute.js +0 -5
  364. package/dist/types/interfaces/services/core/execution/index.d.ts +0 -3
  365. package/dist/types/interfaces/services/core/execution/index.js +0 -3
  366. package/dist/types/interfaces/services/core/index.d.ts +0 -4
  367. package/dist/types/interfaces/services/core/index.js +0 -4
  368. package/dist/types/interfaces/services/core/managers/cancellation.d.ts +0 -9
  369. package/dist/types/interfaces/services/core/managers/cancellation.js +0 -5
  370. package/dist/types/interfaces/services/core/managers/connection.d.ts +0 -9
  371. package/dist/types/interfaces/services/core/managers/connection.js +0 -5
  372. package/dist/types/interfaces/services/core/managers/context.d.ts +0 -17
  373. package/dist/types/interfaces/services/core/managers/context.js +0 -5
  374. package/dist/types/interfaces/services/core/managers/event.d.ts +0 -328
  375. package/dist/types/interfaces/services/core/managers/event.js +0 -5
  376. package/dist/types/interfaces/services/core/managers/index.d.ts +0 -6
  377. package/dist/types/interfaces/services/core/managers/index.js +0 -6
  378. package/dist/types/interfaces/services/core/managers/stream.d.ts +0 -217
  379. package/dist/types/interfaces/services/core/managers/stream.js +0 -5
  380. package/dist/types/interfaces/services/core/managers/task.d.ts +0 -9
  381. package/dist/types/interfaces/services/core/service.d.ts +0 -115
  382. package/dist/types/interfaces/services/core/service.js +0 -5
  383. package/dist/types/interfaces/services/index.d.ts +0 -4
  384. package/dist/types/interfaces/services/index.js +0 -4
  385. package/dist/types/interfaces/services/mcp/index.d.ts +0 -1
  386. package/dist/types/interfaces/services/mcp/index.js +0 -1
  387. package/dist/types/interfaces/services/mcp/service.js +0 -5
  388. package/dist/types/interfaces/storage.d.ts +0 -8
  389. package/dist/types/schemas/a2a/agent.d.ts +0 -2583
  390. package/dist/types/schemas/a2a/agent.js +0 -323
  391. package/dist/types/schemas/a2a/auth.d.ts +0 -908
  392. package/dist/types/schemas/a2a/auth.js +0 -283
  393. package/dist/types/schemas/a2a/error.d.ts +0 -396
  394. package/dist/types/schemas/a2a/error.js +0 -163
  395. package/dist/types/schemas/a2a/index.d.ts +0 -11
  396. package/dist/types/schemas/a2a/index.js +0 -11
  397. package/dist/types/schemas/a2a/kind.d.ts +0 -11
  398. package/dist/types/schemas/a2a/kind.js +0 -20
  399. package/dist/types/schemas/a2a/message.d.ts +0 -10343
  400. package/dist/types/schemas/a2a/message.js +0 -130
  401. package/dist/types/schemas/a2a/notification.d.ts +0 -1517
  402. package/dist/types/schemas/a2a/notification.js +0 -203
  403. package/dist/types/schemas/a2a/parameters.d.ts +0 -956
  404. package/dist/types/schemas/a2a/parameters.js +0 -241
  405. package/dist/types/schemas/a2a/protocol.d.ts +0 -14363
  406. package/dist/types/schemas/a2a/protocol.js +0 -59
  407. package/dist/types/schemas/a2a/rpc.d.ts +0 -182
  408. package/dist/types/schemas/a2a/rpc.js +0 -126
  409. package/dist/types/schemas/a2a/task.d.ts +0 -5886
  410. package/dist/types/schemas/a2a/task.js +0 -134
  411. package/dist/types/schemas/a2a/transport.d.ts +0 -31
  412. package/dist/types/schemas/a2a/transport.js +0 -28
  413. package/dist/types/schemas/index.d.ts +0 -1
  414. package/dist/types/schemas/index.js +0 -1
  415. package/dist/utils/logging/index.d.ts +0 -2
  416. package/dist/utils/logging/index.js +0 -2
  417. package/dist/utils/logging/log.d.ts +0 -33
  418. package/dist/utils/logging/log.js +0 -75
  419. package/dist/utils/logging/logger.d.ts +0 -18
  420. package/dist/utils/logging/logger.js +0 -18
  421. package/dist/utils/storage/memory.d.ts +0 -25
  422. package/dist/utils/storage/memory.js +0 -47
  423. /package/dist/browser/{types/interfaces/services/core/managers/task.js → create/base.js} +0 -0
  424. /package/dist/browser/types/{interfaces/client.js → client.js} +0 -0
  425. /package/dist/{types/interfaces/services/core/managers/task.js → browser/types/core/core.js} +0 -0
  426. /package/dist/browser/types/{interfaces/services/protocol.d.ts → protocol.d.ts} +0 -0
  427. /package/dist/browser/types/{interfaces/services/protocol.js → protocol.js} +0 -0
  428. /package/dist/browser/types/{interfaces/storage.js → storage.js} +0 -0
  429. /package/dist/services/a2a/{methods → handlers}/index.d.ts +0 -0
  430. /package/dist/services/a2a/{methods → handlers}/index.js +0 -0
  431. /package/dist/types/{interfaces/client.js → client.js} +0 -0
  432. /package/dist/types/{interfaces/services/protocol.d.ts → protocol.d.ts} +0 -0
  433. /package/dist/types/{interfaces/services/protocol.js → protocol.js} +0 -0
  434. /package/dist/types/{interfaces/storage.js → storage.js} +0 -0
@@ -0,0 +1,190 @@
1
+ /**
2
+ * @fileoverview OpenTelemetry integration for Artinet SDK.
3
+ *
4
+ * Lightweight utilities for integrating user-configured OpenTelemetry
5
+ * with the SDK's tracing and logging interfaces.
6
+ *
7
+ * @module @artinet/sdk/otel
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * import { trace } from '@opentelemetry/api';
12
+ * import { configure } from '@artinet/sdk';
13
+ * import { configureOtel, withSpan } from '@artinet/sdk/otel';
14
+ *
15
+ * // User initializes their own OpenTelemetry setup
16
+ * // ... NodeSDK setup, exporters, etc. ...
17
+ *
18
+ * // Get tracer and configure SDK
19
+ * const tracer = trace.getTracer('my-agent');
20
+ * configure({
21
+ * tracer,
22
+ * logger: configureOtel({ level: 'debug' })
23
+ * });
24
+ * ```
25
+ */
26
+ import { trace, context, SpanKind, SpanStatusCode, } from "@opentelemetry/api";
27
+ import { formatError } from "../config/observability.js";
28
+ /**
29
+ * Level priority for filtering.
30
+ */
31
+ const LEVEL_PRIORITY = {
32
+ trace: 0,
33
+ verbose: 1,
34
+ debug: 2,
35
+ info: 3,
36
+ warn: 4,
37
+ error: 5,
38
+ silent: 6,
39
+ };
40
+ /**
41
+ * Create a logger that adds log events to the current span.
42
+ *
43
+ * This logger optionally wraps a base logger and adds all log messages
44
+ * as span events in the current trace context.
45
+ *
46
+ * @param options - Logger options
47
+ * @returns ILogger implementation
48
+ *
49
+ * @example
50
+ * ```typescript
51
+ * import { configure } from '@artinet/sdk';
52
+ * import { configureOtel } from '@artinet/sdk/otel';
53
+ * import { configurePino } from '@artinet/sdk/pino';
54
+ * import pino from 'pino';
55
+ *
56
+ * // Logs go to both Pino AND span events
57
+ * configure({
58
+ * logger: configureOtel({
59
+ * baseLogger: configurePino(pino()),
60
+ * level: 'debug'
61
+ * })
62
+ * });
63
+ * ```
64
+ */
65
+ export function configureOtel(options = {}) {
66
+ let currentLevel = options.level ?? "info";
67
+ const baseLogger = options.baseLogger;
68
+ function shouldLog(level) {
69
+ return LEVEL_PRIORITY[level] >= LEVEL_PRIORITY[currentLevel];
70
+ }
71
+ function addSpanEvent(level, msg, args) {
72
+ const span = trace.getActiveSpan();
73
+ if (!span)
74
+ return;
75
+ const attributes = {
76
+ "log.level": level,
77
+ };
78
+ args.forEach((arg, idx) => {
79
+ if (typeof arg === "object" && arg !== null) {
80
+ Object.entries(arg).forEach(([key, value]) => {
81
+ if (typeof value === "string" ||
82
+ typeof value === "number" ||
83
+ typeof value === "boolean") {
84
+ attributes[key] = value;
85
+ }
86
+ else {
87
+ attributes[key] = JSON.stringify(value);
88
+ }
89
+ });
90
+ }
91
+ else if (arg !== undefined) {
92
+ attributes[`arg${idx}`] = String(arg);
93
+ }
94
+ });
95
+ span.addEvent(msg, attributes);
96
+ }
97
+ return {
98
+ get level() {
99
+ return currentLevel;
100
+ },
101
+ debug(msg, ...args) {
102
+ if (!shouldLog("debug"))
103
+ return;
104
+ addSpanEvent("debug", msg, args);
105
+ baseLogger?.debug(msg, ...args);
106
+ },
107
+ info(msg, ...args) {
108
+ if (!shouldLog("info"))
109
+ return;
110
+ addSpanEvent("info", msg, args);
111
+ baseLogger?.info(msg, ...args);
112
+ },
113
+ warn(msg, ...args) {
114
+ if (!shouldLog("warn"))
115
+ return;
116
+ addSpanEvent("warn", msg, args);
117
+ baseLogger?.warn(msg, ...args);
118
+ },
119
+ error(msg, err) {
120
+ if (!shouldLog("error"))
121
+ return;
122
+ addSpanEvent("error", msg, [formatError(err)]);
123
+ baseLogger?.error(msg, err);
124
+ },
125
+ setLevel(level) {
126
+ currentLevel = level;
127
+ baseLogger?.setLevel?.(level);
128
+ },
129
+ getLevel() {
130
+ return currentLevel;
131
+ },
132
+ child(ctx) {
133
+ return configureOtel({
134
+ baseLogger: baseLogger?.child?.(ctx),
135
+ level: currentLevel,
136
+ });
137
+ },
138
+ };
139
+ }
140
+ /**
141
+ * Execute a function within a new span.
142
+ *
143
+ * @param tracer - User's tracer instance
144
+ * @param name - Span name
145
+ * @param fn - Function to execute
146
+ * @param options - Optional span options
147
+ * @returns Result of the function
148
+ *
149
+ * @example
150
+ * ```typescript
151
+ * import { trace } from '@opentelemetry/api';
152
+ * import { withSpan } from '@artinet/sdk/otel';
153
+ *
154
+ * const tracer = trace.getTracer('my-agent');
155
+ * const result = await withSpan(tracer, 'processTask', async (span) => {
156
+ * span.setAttribute('taskId', '123');
157
+ * return await doWork();
158
+ * });
159
+ * ```
160
+ */
161
+ export async function withSpan(tracer, name, fn, options) {
162
+ return tracer.startActiveSpan(name, { kind: options?.kind ?? SpanKind.INTERNAL }, async (span) => {
163
+ if (options?.attributes) {
164
+ Object.entries(options.attributes).forEach(([key, value]) => {
165
+ span.setAttribute(key, value);
166
+ });
167
+ }
168
+ try {
169
+ const result = await fn(span);
170
+ span.setStatus({ code: SpanStatusCode.OK });
171
+ return result;
172
+ }
173
+ catch (error) {
174
+ span.setStatus({
175
+ code: SpanStatusCode.ERROR,
176
+ message: error instanceof Error ? error.message : String(error),
177
+ });
178
+ span.recordException(error);
179
+ throw error;
180
+ }
181
+ finally {
182
+ span.end();
183
+ }
184
+ });
185
+ }
186
+ /**
187
+ * Re-export OpenTelemetry API types for convenience.
188
+ */
189
+ export { trace, context, SpanKind, SpanStatusCode, };
190
+ export default configureOtel;
@@ -0,0 +1,44 @@
1
+ /**
2
+ * @fileoverview Pino logger adapter for Artinet SDK.
3
+ *
4
+ * Lightweight wrapper that adapts a user-configured Pino instance
5
+ * to the SDK's ILogger interface.
6
+ *
7
+ * @module @artinet/sdk/pino
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * import pino from 'pino';
12
+ * import { configure } from '@artinet/sdk';
13
+ * import { configurePino } from '@artinet/sdk/pino';
14
+ *
15
+ * // User configures their own pino instance
16
+ * const pinoLogger = pino({
17
+ * level: 'debug',
18
+ * transport: { target: 'pino-pretty' }
19
+ * });
20
+ *
21
+ * // Wrap and configure SDK
22
+ * configure({ logger: configurePino(pinoLogger) });
23
+ * ```
24
+ */
25
+ import type { Logger as PinoLogger } from "pino";
26
+ import type { ILogger } from "../config/observability.js";
27
+ /**
28
+ * Wrap a Pino logger instance to implement ILogger.
29
+ *
30
+ * @param pinoLogger - User-configured Pino logger instance
31
+ * @returns ILogger implementation
32
+ *
33
+ * @example
34
+ * ```typescript
35
+ * import pino from 'pino';
36
+ * import { configure } from '@artinet/sdk';
37
+ * import { configurePino } from '@artinet/sdk/pino';
38
+ *
39
+ * const myPino = pino({ level: 'debug' });
40
+ * configure({ logger: configurePino(myPino) });
41
+ * ```
42
+ */
43
+ export declare function configurePino(pinoLogger: PinoLogger): ILogger;
44
+ export default configurePino;
@@ -0,0 +1,107 @@
1
+ /**
2
+ * @fileoverview Pino logger adapter for Artinet SDK.
3
+ *
4
+ * Lightweight wrapper that adapts a user-configured Pino instance
5
+ * to the SDK's ILogger interface.
6
+ *
7
+ * @module @artinet/sdk/pino
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * import pino from 'pino';
12
+ * import { configure } from '@artinet/sdk';
13
+ * import { configurePino } from '@artinet/sdk/pino';
14
+ *
15
+ * // User configures their own pino instance
16
+ * const pinoLogger = pino({
17
+ * level: 'debug',
18
+ * transport: { target: 'pino-pretty' }
19
+ * });
20
+ *
21
+ * // Wrap and configure SDK
22
+ * configure({ logger: configurePino(pinoLogger) });
23
+ * ```
24
+ */
25
+ /**
26
+ * Level mapping from Pino to Artinet.
27
+ */
28
+ const LEVEL_MAP = {
29
+ trace: "trace",
30
+ debug: "debug",
31
+ info: "info",
32
+ warn: "warn",
33
+ error: "error",
34
+ fatal: "error",
35
+ silent: "silent",
36
+ };
37
+ /**
38
+ * Reverse level mapping from Artinet to Pino.
39
+ */
40
+ const ARTINET_TO_PINO = {
41
+ trace: "trace",
42
+ verbose: "debug",
43
+ debug: "debug",
44
+ info: "info",
45
+ warn: "warn",
46
+ error: "error",
47
+ silent: "silent",
48
+ };
49
+ function mergeArgs(args) {
50
+ if (args.length === 0)
51
+ return undefined;
52
+ if (args.length === 1 && typeof args[0] === "object" && args[0] !== null) {
53
+ return args[0];
54
+ }
55
+ return args.reduce((acc, arg, idx) => {
56
+ if (typeof arg === "object" && arg !== null) {
57
+ return { ...acc, [idx]: arg };
58
+ }
59
+ acc[`${idx}`] = arg;
60
+ return acc;
61
+ }, {});
62
+ }
63
+ /**
64
+ * Wrap a Pino logger instance to implement ILogger.
65
+ *
66
+ * @param pinoLogger - User-configured Pino logger instance
67
+ * @returns ILogger implementation
68
+ *
69
+ * @example
70
+ * ```typescript
71
+ * import pino from 'pino';
72
+ * import { configure } from '@artinet/sdk';
73
+ * import { configurePino } from '@artinet/sdk/pino';
74
+ *
75
+ * const myPino = pino({ level: 'debug' });
76
+ * configure({ logger: configurePino(myPino) });
77
+ * ```
78
+ */
79
+ export function configurePino(pinoLogger) {
80
+ return {
81
+ get level() {
82
+ return LEVEL_MAP[pinoLogger.level] ?? "info";
83
+ },
84
+ debug(msg, ...args) {
85
+ pinoLogger.debug(mergeArgs(args), msg);
86
+ },
87
+ info(msg, ...args) {
88
+ pinoLogger.info(mergeArgs(args), msg);
89
+ },
90
+ warn(msg, ...args) {
91
+ pinoLogger.warn(mergeArgs(args), msg);
92
+ },
93
+ error(msg, err) {
94
+ pinoLogger.error(err, msg);
95
+ },
96
+ setLevel(level) {
97
+ pinoLogger.level = ARTINET_TO_PINO[level] ?? "info";
98
+ },
99
+ getLevel() {
100
+ return LEVEL_MAP[pinoLogger.level] ?? "info";
101
+ },
102
+ child(context) {
103
+ return configurePino(pinoLogger.child(context));
104
+ },
105
+ };
106
+ }
107
+ export default configurePino;
@@ -0,0 +1,47 @@
1
+ /**
2
+ * @fileoverview Winston logger adapter for Artinet SDK.
3
+ *
4
+ * Lightweight wrapper that adapts a user-configured Winston instance
5
+ * to the SDK's ILogger interface.
6
+ *
7
+ * @module @artinet/sdk/winston
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * import winston from 'winston';
12
+ * import { configure } from '@artinet/sdk';
13
+ * import { configureWinston } from '@artinet/sdk/winston';
14
+ *
15
+ * // User configures their own winston instance
16
+ * const winstonLogger = winston.createLogger({
17
+ * level: 'debug',
18
+ * transports: [new winston.transports.Console()]
19
+ * });
20
+ *
21
+ * // Wrap and configure SDK
22
+ * configure({ logger: configureWinston(winstonLogger) });
23
+ * ```
24
+ */
25
+ import type { Logger as WinstonLogger } from "winston";
26
+ import type { ILogger } from "../config/observability.js";
27
+ /**
28
+ * Wrap a Winston logger instance to implement ILogger.
29
+ *
30
+ * @param winstonLogger - User-configured Winston logger instance
31
+ * @returns ILogger implementation
32
+ *
33
+ * @example
34
+ * ```typescript
35
+ * import winston from 'winston';
36
+ * import { configure } from '@artinet/sdk';
37
+ * import { configureWinston } from '@artinet/sdk/winston';
38
+ *
39
+ * const myWinston = winston.createLogger({
40
+ * level: 'debug',
41
+ * transports: [new winston.transports.Console()]
42
+ * });
43
+ * configure({ logger: configureWinston(myWinston) });
44
+ * ```
45
+ */
46
+ export declare function configureWinston(winstonLogger: WinstonLogger): ILogger;
47
+ export default configureWinston;
@@ -0,0 +1,114 @@
1
+ /**
2
+ * @fileoverview Winston logger adapter for Artinet SDK.
3
+ *
4
+ * Lightweight wrapper that adapts a user-configured Winston instance
5
+ * to the SDK's ILogger interface.
6
+ *
7
+ * @module @artinet/sdk/winston
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * import winston from 'winston';
12
+ * import { configure } from '@artinet/sdk';
13
+ * import { configureWinston } from '@artinet/sdk/winston';
14
+ *
15
+ * // User configures their own winston instance
16
+ * const winstonLogger = winston.createLogger({
17
+ * level: 'debug',
18
+ * transports: [new winston.transports.Console()]
19
+ * });
20
+ *
21
+ * // Wrap and configure SDK
22
+ * configure({ logger: configureWinston(winstonLogger) });
23
+ * ```
24
+ */
25
+ /**
26
+ * Level mapping from Winston to Artinet.
27
+ */
28
+ const LEVEL_MAP = {
29
+ silly: "trace",
30
+ verbose: "verbose",
31
+ debug: "debug",
32
+ http: "debug",
33
+ info: "info",
34
+ warn: "warn",
35
+ error: "error",
36
+ silent: "silent",
37
+ };
38
+ /**
39
+ * Reverse level mapping from Artinet to Winston.
40
+ */
41
+ const ARTINET_TO_WINSTON = {
42
+ trace: "silly",
43
+ verbose: "verbose",
44
+ debug: "debug",
45
+ info: "info",
46
+ warn: "warn",
47
+ error: "error",
48
+ silent: "silent",
49
+ };
50
+ /**
51
+ * Merge spread args into metadata object for Winston.
52
+ */
53
+ function mergeArgs(args) {
54
+ if (args.length === 0)
55
+ return {};
56
+ if (args.length === 1 && typeof args[0] === "object" && args[0] !== null) {
57
+ return args[0];
58
+ }
59
+ return args.reduce((acc, arg, idx) => {
60
+ if (typeof arg === "object" && arg !== null) {
61
+ return { ...acc, ...arg };
62
+ }
63
+ acc[`arg${idx}`] = arg;
64
+ return acc;
65
+ }, {});
66
+ }
67
+ /**
68
+ * Wrap a Winston logger instance to implement ILogger.
69
+ *
70
+ * @param winstonLogger - User-configured Winston logger instance
71
+ * @returns ILogger implementation
72
+ *
73
+ * @example
74
+ * ```typescript
75
+ * import winston from 'winston';
76
+ * import { configure } from '@artinet/sdk';
77
+ * import { configureWinston } from '@artinet/sdk/winston';
78
+ *
79
+ * const myWinston = winston.createLogger({
80
+ * level: 'debug',
81
+ * transports: [new winston.transports.Console()]
82
+ * });
83
+ * configure({ logger: configureWinston(myWinston) });
84
+ * ```
85
+ */
86
+ export function configureWinston(winstonLogger) {
87
+ return {
88
+ get level() {
89
+ return LEVEL_MAP[winstonLogger.level] ?? "info";
90
+ },
91
+ debug(msg, ...args) {
92
+ winstonLogger.debug(msg, mergeArgs(args));
93
+ },
94
+ info(msg, ...args) {
95
+ winstonLogger.info(msg, mergeArgs(args));
96
+ },
97
+ warn(msg, ...args) {
98
+ winstonLogger.warn(msg, mergeArgs(args));
99
+ },
100
+ error(msg, err) {
101
+ winstonLogger.error(msg, err);
102
+ },
103
+ setLevel(level) {
104
+ winstonLogger.level = ARTINET_TO_WINSTON[level] ?? "info";
105
+ },
106
+ getLevel() {
107
+ return LEVEL_MAP[winstonLogger.level] ?? "info";
108
+ },
109
+ child(context) {
110
+ return configureWinston(winstonLogger.child(context));
111
+ },
112
+ };
113
+ }
114
+ export default configureWinston;
package/dist/index.d.ts CHANGED
@@ -4,3 +4,7 @@ export * from "./server/index.js";
4
4
  export * from "./services/index.js";
5
5
  export * from "./transport/index.js";
6
6
  export * from "./utils/index.js";
7
+ export * from "./config/index.js";
8
+ export * from "./config/default.js";
9
+ export * from "./create/create.js";
10
+ export * from "./create/index.js";
package/dist/index.js CHANGED
@@ -4,3 +4,7 @@ export * from "./server/index.js";
4
4
  export * from "./services/index.js";
5
5
  export * from "./transport/index.js";
6
6
  export * from "./utils/index.js";
7
+ export * from "./config/index.js";
8
+ export * from "./config/default.js";
9
+ export * from "./create/create.js";
10
+ export * from "./create/index.js";
@@ -2,9 +2,10 @@
2
2
  * Copyright 2025 The Artinet Project
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- import { SystemError, INTERNAL_ERROR } from "../../utils/index.js";
6
- import { logError } from "../../utils/logging/index.js";
5
+ import { SystemError } from "../../utils/index.js";
6
+ import { logger } from "../../config/index.js";
7
7
  import escapeHtml from "escape-html";
8
+ import { A2AError } from "@a2a-js/sdk/server";
8
9
  /**
9
10
  * Express error handler middleware.
10
11
  */
@@ -13,7 +14,7 @@ export const errorHandler = (err, req, res, _) => {
13
14
  if (res.headersSent) {
14
15
  headersSent = true;
15
16
  }
16
- logError("errorHandler", JSON.stringify(err, null, 2), err);
17
+ logger.error("errorHandler", err);
17
18
  let reqId = null;
18
19
  try {
19
20
  if (req.body && typeof req.body === "object" && "id" in req.body) {
@@ -21,19 +22,14 @@ export const errorHandler = (err, req, res, _) => {
21
22
  }
22
23
  }
23
24
  catch (e) {
24
- logError("A2AServer", "Error extracting request ID", e);
25
+ logger.error("errorHandler: Error extracting request ID", e);
25
26
  }
26
27
  let jsonRpcError;
27
- if (err instanceof SystemError) {
28
+ if (err instanceof A2AError || err instanceof SystemError) {
28
29
  jsonRpcError = { code: err.code, message: err.message, data: err.data };
29
30
  }
30
31
  else {
31
- const internalError = INTERNAL_ERROR(err.stack);
32
- jsonRpcError = {
33
- code: internalError.code,
34
- message: internalError.message,
35
- data: internalError.data,
36
- };
32
+ jsonRpcError = A2AError.internalError(err.message, err.data).toJSONRPCError();
37
33
  }
38
34
  const errorResponse = {
39
35
  jsonrpc: "2.0",
@@ -3,5 +3,5 @@
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
5
  import { NextFunction, Request, Response } from "express";
6
- import { A2AServiceInterface, AgentCard } from "../../types/index.js";
7
- export declare function jsonRPCMiddleware(service: A2AServiceInterface, req: Request, res: Response, next: NextFunction, extendedAgentCard?: AgentCard): Promise<void>;
6
+ import { A2A } from "../../types/index.js";
7
+ export declare function jsonRPCMiddleware(service: A2A.Service, req: Request, res: Response, next: NextFunction, extendedAgentCard?: A2A.AgentCard): Promise<void>;
@@ -2,8 +2,9 @@
2
2
  * Copyright 2025 The Artinet Project
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- import { PUSH_NOTIFICATION_NOT_SUPPORTED, INVALID_REQUEST, INVALID_PARAMS, METHOD_NOT_FOUND, AUTHENTICATED_EXTENDED_CARD_NOT_CONFIGURED, } from "../../utils/index.js";
6
- import { logError } from "../../utils/logging/index.js";
5
+ import { logger } from "../../config/index.js";
6
+ import { formatJson } from "../../utils/common/utils.js";
7
+ import { A2AError } from "@a2a-js/sdk/server";
7
8
  const isValidMethod = (method) => {
8
9
  return (method &&
9
10
  method !== "" &&
@@ -13,41 +14,35 @@ const isValidMethod = (method) => {
13
14
  };
14
15
  const checkParams = (params, method) => {
15
16
  if (!params || (typeof params !== "object" && !Array.isArray(params))) {
16
- throw INVALID_PARAMS({
17
- data: {
18
- message: "Invalid params",
19
- method,
20
- },
17
+ throw A2AError.invalidParams("Invalid Parameters", {
18
+ params,
19
+ method,
21
20
  });
22
21
  }
23
22
  else if (typeof params === "object" && Object.keys(params).length === 0) {
24
- throw INVALID_PARAMS({
25
- data: {
26
- message: "No params provided",
27
- method,
28
- },
23
+ throw A2AError.invalidParams("Params Required", {
24
+ params,
25
+ method,
29
26
  });
30
27
  }
31
28
  };
32
29
  export async function jsonRPCMiddleware(service, req, res, next, extendedAgentCard) {
33
30
  const { method, params, id, jsonrpc } = req.body;
34
31
  if (jsonrpc !== "2.0" ||
35
- (id && typeof id !== "string" && typeof id !== "number" && id !== null)) {
32
+ (typeof id !== "string" &&
33
+ typeof id === "number" &&
34
+ !Number.isInteger(id) &&
35
+ id !== null)) {
36
36
  res.json({
37
37
  jsonrpc: "2.0",
38
38
  id: id || null,
39
- error: { code: -32600, message: "Invalid Request" },
39
+ error: A2AError.invalidRequest(`Invalid JSONRPC info: ${formatJson({ method, params, id, jsonrpc })}`).toJSONRPCError(),
40
40
  });
41
41
  return;
42
42
  }
43
43
  try {
44
44
  if (!isValidMethod(method)) {
45
- throw INVALID_REQUEST({
46
- data: {
47
- message: "No method provided",
48
- method,
49
- },
50
- });
45
+ throw A2AError.invalidRequest("No method provided");
51
46
  }
52
47
  let result;
53
48
  switch (method) {
@@ -94,42 +89,33 @@ export async function jsonRPCMiddleware(service, req, res, next, extendedAgentCa
94
89
  result = await service.cancelTask(params);
95
90
  break;
96
91
  }
92
+ //todo: Implement push notifications
93
+ //todo: Implement Tasks List
97
94
  case "tasks/pushNotificationConfig/set":
98
95
  case "tasks/pushNotificationConfig/get":
99
96
  case "tasks/pushNotificationConfig/delete":
100
97
  case "task/pushNotificationConfig/list": {
101
- throw PUSH_NOTIFICATION_NOT_SUPPORTED({
102
- data: {
103
- message: "Push notifications not supported",
104
- method,
105
- },
106
- });
98
+ throw A2AError.pushNotificationNotSupported();
107
99
  }
108
100
  case "agent/getAuthenticatedExtendedCard": {
109
101
  if (!extendedAgentCard ||
110
- service.agentCard.supportsAuthenticatedExtendedCard !== true) {
111
- throw AUTHENTICATED_EXTENDED_CARD_NOT_CONFIGURED({
112
- data: {
113
- message: "Authenticated Extended Card is not configured",
114
- method,
115
- },
116
- });
102
+ (await service.getAgentCard()).supportsAuthenticatedExtendedCard !==
103
+ true) {
104
+ throw A2AError.authenticatedExtendedCardNotConfigured();
117
105
  }
118
106
  result = extendedAgentCard;
119
107
  break;
120
108
  }
121
109
  default:
122
- throw METHOD_NOT_FOUND({
123
- data: {
124
- message: "Method not found",
125
- method,
126
- },
127
- });
110
+ throw A2AError.methodNotFound(method);
128
111
  }
129
112
  res.json({ jsonrpc: "2.0", id, result });
130
113
  }
131
114
  catch (error) {
132
- logError("jsonRPCMiddleware", "error detected", error, req.body);
115
+ logger.error("jsonRPCMiddleware[Error]:", error);
116
+ logger.warn("jsonRPCMiddleware[Error]: Request body", {
117
+ request: req.body,
118
+ });
133
119
  return next(error);
134
120
  }
135
121
  }